diff options
Diffstat (limited to 'usr/src')
354 files changed, 55551 insertions, 28736 deletions
diff --git a/usr/src/cmd/cmd-crypto/etc/CA-certs/DigiNotar_Root_CA.pem b/usr/src/cmd/cmd-crypto/etc/CA-certs/DigiNotar_Root_CA.pem deleted file mode 100644 index 579abc2f14..0000000000 --- a/usr/src/cmd/cmd-crypto/etc/CA-certs/DigiNotar_Root_CA.pem +++ /dev/null @@ -1,32 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFijCCA3KgAwIBAgIQDHbanJEMTiye/hXQWJM8TDANBgkqhkiG9w0BAQUFADBf
-MQswCQYDVQQGEwJOTDESMBAGA1UEChMJRGlnaU5vdGFyMRowGAYDVQQDExFEaWdp
-Tm90YXIgUm9vdCBDQTEgMB4GCSqGSIb3DQEJARYRaW5mb0BkaWdpbm90YXIubmww
-HhcNMDcwNTE2MTcxOTM2WhcNMjUwMzMxMTgxOTIxWjBfMQswCQYDVQQGEwJOTDES
-MBAGA1UEChMJRGlnaU5vdGFyMRowGAYDVQQDExFEaWdpTm90YXIgUm9vdCBDQTEg
-MB4GCSqGSIb3DQEJARYRaW5mb0BkaWdpbm90YXIubmwwggIiMA0GCSqGSIb3DQEB
-AQUAA4ICDwAwggIKAoICAQCssFjBAL3YIQgLK5r+blYwBZ8bd5AQQVzDDYcRd46B
-8cp86Yxq7Th0Nbva3/m7wAk3tJZzgX0zGpg595NvlX89ubF1h7pRSOiLcD6VBMXY
-tsMW2YiwsYcdcNqGtA8Ui3rPENF0NqISe3eGSnnme98CEWilToauNFibJBN4ViIl
-HgGLS1Fx+4LMWZZpiFpoU8W5DQI3y0u8ZkqQfioLBQftFl9VkHXYRskbg+IIvvEj
-zJkd1ioPgyAVWCeCLvriIsJJsbkBgWqdbZ1Ad2h2TiEqbYRAhU52mXyC8/O3AlnU
-JgEbjt+tUwbRrhjd4rI6y9eIOI6sWym5GdOY+RgDz0iChmYLG2kPyes4iHomGgVM
-ktck1JbyrFIto0fVUvY//s6EBnCmqj6i8rZWNBhXouSBbefK8GrTx5FrAoNBfBXv
-a5pkXuPQPOWx63tdhvvL5ndJzaNl3Pe5nLjkC1+Tz8wwGjIczhxjlaX56uF0i57p
-K6kwe6AYHw4YC+VbqdPRbB4HZ4+RS6mKvNJmqpMBiLKR+jFc1abBUggJzQpjotMi
-puih2TkGl/VujQKQjBR7P4DNG5y6xFhyI6+2Vp/GekIzKQc/gsnmHwUNzUwoNovT
-yD4cxojvXu6JZOkd69qJfjKmadHdzIif0dDJZiHcBmfFlHqabWJMfczgZICynkeO
-owIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV
-HQ4EFgQUiGi/4I41xDs4a2L3KDuEgcgM100wDQYJKoZIhvcNAQEFBQADggIBADsC
-jcs8MOhuoK3yc7NfniUTBAXT9uOLuwt5zlPe5JbF0a9zvNXD0EBVfEB/zRtfCdXy
-fJ9oHbtdzno5wozWmHvFg1Wo1X1AyuAe94leY12hE8JdiraKfADzI8PthV9xdvBo
-Y6pFITlIYXg23PFDk9Qlx/KAZeFTAnVR/Ho67zerhChXDNjU1JlWbOOi/lmEtDHo
-M/hklJRRl6s5xUvt2t2AC298KQ3EjopyDedTFLJgQT2EkTFoPSdE2+Xe9PpjRchM
-Ppj1P0G6Tss3DbpmmPHdy59c91Q2gmssvBNhl0L4eLvMyKKfyvBovWsdst+Nbwed
-2o5nx0ceyrm/KkKRt2NTZvFCo+H0Wk1Ya7XkpDOtXHAd3ODy63MUkZoDweoAZbwH
-/M8SESIsrqC9OuCiKthZ6SnTGDWkrBFfGbW1G/8iSlzGeuQX7yCpp/Q/rYqnmgQl
-nQ7KN+ZQ/YxCKQSa7LnPS3K94gg2ryMvYuXKAdNw23yCIywWMQzGNgeQerEfZ1jE
-O1hZibCMjFCz2IbLaKPECudpSyDOwR5WS5WpI2jYMNjD67BVUc3l/Su49bsRn1NU
-9jQZjHkJNsphFyUXC4KYcwx3dMPVDceoEkzHp1RxRy4sGn3J4ys7SN4nhKdjNrN9
-j6BkOSQNPXuHr2ZcdBtLc7LljPCGmbjlxd+Ewbfr ------END CERTIFICATE----- diff --git a/usr/src/cmd/cmd-crypto/etc/Makefile.ca-links b/usr/src/cmd/cmd-crypto/etc/Makefile.ca-links index 41fd4ef35a..edbf890e2c 100644 --- a/usr/src/cmd/cmd-crypto/etc/Makefile.ca-links +++ b/usr/src/cmd/cmd-crypto/etc/Makefile.ca-links @@ -64,7 +64,6 @@ CAFILES = ABAecom_sub.,_Am._Bankers_Assn._Root_CA.pem \ DigiCert_Assured_ID_Root_CA.pem \ DigiCert_Global_Root_CA.pem \ DigiCert_High_Assurance_EV_Root_CA.pem \ - DigiNotar_Root_CA.pem \ Digital_Signature_Trust_Co._Global_CA_1.pem \ Digital_Signature_Trust_Co._Global_CA_2.pem \ Digital_Signature_Trust_Co._Global_CA_3.pem \ diff --git a/usr/src/cmd/dis/dis_main.c b/usr/src/cmd/dis/dis_main.c index b62047d8dd..2a01f92cf6 100644 --- a/usr/src/cmd/dis/dis_main.c +++ b/usr/src/cmd/dis/dis_main.c @@ -22,10 +22,10 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2011 Jason King. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <ctype.h> #include <getopt.h> #include <stdio.h> @@ -108,6 +108,7 @@ dis_data(dis_tgt_t *tgt, dis_handle_t *dhp, uint64_t addr, void *data, char buf[BUFSIZE]; char symbuf[BUFSIZE]; const char *symbol; + const char *last_symbol; off_t symoffset; int i; int bytesperline; @@ -125,22 +126,34 @@ dis_data(dis_tgt_t *tgt, dis_handle_t *dhp, uint64_t addr, void *data, if ((bytesperline = dis_max_instrlen(dhp)) > 6) bytesperline = 6; + symbol = NULL; + while (addr < db.db_addr + db.db_size) { if (dis_disassemble(dhp, addr, buf, BUFSIZE) != 0) { +#if defined(__sparc) /* - * If we encounter an invalid opcode, we just - * print "*** invalid opcode ***" at that first bad - * instruction and continue with printing the rest - * of the instruction stream as hex data, - * We then find the next valid symbol in the section, - * and disassemble from there. + * Since sparc instructions are fixed size, we + * always know the address of the next instruction */ + (void) snprintf(buf, sizeof (buf), + "*** invalid opcode ***"); + db.db_nextaddr = addr + 4; + +#else off_t next; (void) snprintf(buf, sizeof (buf), "*** invalid opcode ***"); + /* + * On architectures with variable sized instructions + * we have no way to figure out where the next + * instruction starts if we encounter an invalid + * instruction. Instead we print the rest of the + * instruction stream as hex until we reach the + * next valid symbol in the section. + */ if ((next = dis_tgt_next_symbol(tgt, addr)) == 0) { db.db_nextaddr = db.db_addr + db.db_size; } else { @@ -150,6 +163,7 @@ dis_data(dis_tgt_t *tgt, dis_handle_t *dhp, uint64_t addr, void *data, else db.db_nextaddr = addr + next; } +#endif } /* @@ -168,12 +182,19 @@ dis_data(dis_tgt_t *tgt, dis_handle_t *dhp, uint64_t addr, void *data, * based on the maximum width that the current symbol can be. * This at least produces text aligned within each function. */ + last_symbol = symbol; symbol = dis_tgt_lookup(tgt, addr, &symoffset, 1, &symsize, &isfunc); - /* Get the maximum length for this symbol */ - getsymname(addr, symbol, symsize, symbuf, sizeof (symbuf)); - symwidth = MAX(strlen(symbuf), MINSYMWIDTH); + if (symbol == NULL) { + symbol = dis_find_section(tgt, addr, &symoffset); + symsize = symoffset; + } + if (symbol != last_symbol) + getsymname(addr, symbol, symsize, symbuf, + sizeof (symbuf)); + + symwidth = MAX(symwidth, strlen(symbuf)); getsymname(addr, symbol, symoffset, symbuf, sizeof (symbuf)); /* @@ -472,21 +493,23 @@ dis_file(const char *filename) break; case EM_SPARC32PLUS: + { + uint64_t flags = ehdr.e_flags & EF_SPARC_32PLUS_MASK; + if (ehdr.e_ident[EI_CLASS] != ELFCLASS32 || ehdr.e_ident[EI_DATA] != ELFDATA2MSB) { warn("invalid E_IDENT field for SPARC object"); return; } - switch (ehdr.e_flags & EF_SPARC_32PLUS_MASK) { - case (EF_SPARC_32PLUS | EF_SPARC_SUN_US1 | - EF_SPARC_SUN_US3): - case (EF_SPARC_32PLUS | EF_SPARC_SUN_US1): + if (flags != 0 && + (flags & (EF_SPARC_32PLUS | EF_SPARC_SUN_US1 | + EF_SPARC_SUN_US3)) != EF_SPARC_32PLUS) g_flags |= DIS_SPARC_V9 | DIS_SPARC_V9_SGI; - default: + else g_flags |= DIS_SPARC_V9; - } break; + } case EM_SPARCV9: if (ehdr.e_ident[EI_CLASS] != ELFCLASS64 || diff --git a/usr/src/cmd/dis/dis_target.c b/usr/src/cmd/dis/dis_target.c index 54eb8a3bb5..c509157335 100644 --- a/usr/src/cmd/dis/dis_target.c +++ b/usr/src/cmd/dis/dis_target.c @@ -21,6 +21,8 @@ /* * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. + * + * Copyright 2011 Jason King. All rights reserved. */ #include <assert.h> @@ -34,6 +36,8 @@ #include <sys/fcntl.h> #include <sys/stat.h> +#include <sys/sysmacros.h> +#include <sys/types.h> #include "dis_target.h" #include "dis_util.h" @@ -58,6 +62,19 @@ typedef struct sym_entry { } sym_entry_t; /* + * Create a map of the virtual address ranges of every section. This will + * allow us to create dummpy mappings for unassigned addresses. Otherwise + * multiple sections with unassigned addresses will appear to overlap and + * mess up symbol resolution (which uses the virtual address). + */ +typedef struct dis_shnmap { + const char *dm_name; /* name of section */ + uint64_t dm_start; /* virtual address of section */ + size_t dm_length; /* address length */ + boolean_t dm_mapped; /* did we assign the mapping */ +} dis_shnmap_t; + +/* * Target data structure. This structure keeps track of the ELF file * information, a few bits of pre-processed section index information, and * sorted versions of the symbol table. We also keep track of the last symbol @@ -75,6 +92,8 @@ struct dis_tgt { int dt_symcount; /* # of symbol table entries */ struct dis_tgt *dt_next; /* next target (for archives) */ Elf_Arhdr *dt_arhdr; /* archive header (for archives) */ + dis_shnmap_t *dt_shnmap; /* section address map */ + size_t dt_shncount; /* # of sections in target */ }; /* @@ -105,17 +124,23 @@ struct dis_scn { #define IS_DATA_TYPE(tp) (((1 << (tp)) & DATA_TYPES) != 0) /* - * Pick out the best symbol to used based on the sections available in the - * target. We prefer SHT_SYMTAB over SHT_DYNSYM. + * Save the virtual address range for this section and select the + * best section to use as the symbol table. We prefer SHT_SYMTAB + * over SHT_DYNSYM. */ /* ARGSUSED */ static void -get_symtab(dis_tgt_t *tgt, dis_scn_t *scn, void *data) +tgt_scn_init(dis_tgt_t *tgt, dis_scn_t *scn, void *data) { int *index = data; *index += 1; + tgt->dt_shnmap[*index].dm_name = scn->ds_name; + tgt->dt_shnmap[*index].dm_start = scn->ds_shdr.sh_addr; + tgt->dt_shnmap[*index].dm_length = scn->ds_shdr.sh_size; + tgt->dt_shnmap[*index].dm_mapped = B_FALSE; + /* * Prefer SHT_SYMTAB over SHT_DYNSYM */ @@ -292,6 +317,14 @@ construct_symtab(dis_tgt_t *tgt) continue; } + /* + * If we had to map this section, its symbol value + * also needs to be mapped. + */ + if (tgt->dt_shnmap[sym->se_shndx].dm_mapped) + sym->se_sym.st_value += + tgt->dt_shnmap[sym->se_shndx].dm_start; + sym++; } @@ -304,6 +337,40 @@ construct_symtab(dis_tgt_t *tgt) } /* + * Assign virtual address ranges for sections that need it + */ +static void +create_addrmap(dis_tgt_t *tgt) +{ + uint64_t addr; + int i; + + if (tgt->dt_shnmap == NULL) + return; + + /* find the greatest used address */ + for (addr = 0, i = 1; i < tgt->dt_shncount; i++) + if (tgt->dt_shnmap[i].dm_start > addr) + addr = tgt->dt_shnmap[i].dm_start + + tgt->dt_shnmap[i].dm_length; + + addr = P2ROUNDUP(addr, 0x1000); + + /* + * Assign section a starting address beyond the largest mapped section + * if no address was given. + */ + for (i = 1; i < tgt->dt_shncount; i++) { + if (tgt->dt_shnmap[i].dm_start != 0) + continue; + + tgt->dt_shnmap[i].dm_start = addr; + tgt->dt_shnmap[i].dm_mapped = B_TRUE; + addr = P2ROUNDUP(addr + tgt->dt_shnmap[i].dm_length, 0x1000); + } +} + +/* * Create a target backed by an ELF file. */ dis_tgt_t * @@ -393,9 +460,14 @@ dis_tgt_create(const char *file) return (NULL); } + current->dt_shnmap = safe_malloc(sizeof (dis_shnmap_t) * + ehdr.e_shnum); + current->dt_shncount = ehdr.e_shnum; + idx = 0; - dis_tgt_section_iter(current, get_symtab, &idx); + dis_tgt_section_iter(current, tgt_scn_init, &idx); + create_addrmap(current); if (current->dt_symidx != 0) construct_symtab(current); @@ -488,6 +560,28 @@ dis_tgt_destroy(dis_tgt_t *tgt) } /* + * Given an address, return the section it is in and set the offset within + * the section. + */ +const char * +dis_find_section(dis_tgt_t *tgt, uint64_t addr, off_t *offset) +{ + int i; + + for (i = 1; i < tgt->dt_shncount; i++) { + if ((addr >= tgt->dt_shnmap[i].dm_start) && + (addr < tgt->dt_shnmap[i].dm_start + + tgt->dt_shnmap[i].dm_length)) { + *offset = addr - tgt->dt_shnmap[i].dm_start; + return (tgt->dt_shnmap[i].dm_name); + } + } + + *offset = 0; + return (NULL); +} + +/* * Given an address, returns the name of the corresponding symbol, as well as * the offset within that symbol. If no matching symbol is found, then NULL is * returned. @@ -577,29 +671,20 @@ dis_tgt_lookup(dis_tgt_t *tgt, uint64_t addr, off_t *offset, int cache_result, /* * Given an address, return the starting offset of the next symbol in the file. - * Relies on the fact that this is only used when we encounter a bad instruction - * in the input stream, so we know that the last symbol looked up will be in the - * cache. */ off_t dis_tgt_next_symbol(dis_tgt_t *tgt, uint64_t addr) { - sym_entry_t *sym = tgt->dt_symcache; - uint64_t start; - - /* make sure the cached symbol and address are valid */ - if (sym == NULL || addr < sym->se_sym.st_value || - addr >= sym->se_sym.st_value + sym->se_sym.st_size) - return (0); - - start = sym->se_sym.st_value; + sym_entry_t *sym; - /* find the next symbol */ - while (sym != tgt->dt_symtab + tgt->dt_symcount && - sym->se_sym.st_value == start) - sym++; + for (sym = tgt->dt_symcache; + sym != tgt->dt_symtab + tgt->dt_symcount; + sym++) { + if (sym->se_sym.st_value >= addr) + return (sym->se_sym.st_value - addr); + } - return (sym->se_sym.st_value - addr); + return (0); } /* @@ -635,6 +720,15 @@ dis_tgt_section_iter(dis_tgt_t *tgt, section_iter_f func, void *data) continue; } + /* + * dis_tgt_section_iter is also used before the section map + * is initialized, so only check when we need to. If the + * section map is uninitialized, it will return 0 and have + * no net effect. + */ + if (sdata.ds_shdr.sh_addr == 0) + sdata.ds_shdr.sh_addr = tgt->dt_shnmap[idx].dm_start; + func(tgt, &sdata, data); } } @@ -740,6 +834,9 @@ dis_tgt_function_iter(dis_tgt_t *tgt, function_iter_f func, void *data) continue; } + if (tgt->dt_shnmap[sym->se_shndx].dm_mapped) + shdr.sh_addr = tgt->dt_shnmap[sym->se_shndx].dm_start; + /* * Verify that the address lies within the section that we think * it does. diff --git a/usr/src/cmd/dis/dis_target.h b/usr/src/cmd/dis/dis_target.h index a38914f8a4..fa6c14c378 100644 --- a/usr/src/cmd/dis/dis_target.h +++ b/usr/src/cmd/dis/dis_target.h @@ -22,13 +22,13 @@ /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2011 Jason King. All rights reserved. */ #ifndef _DIS_TARGET_H #define _DIS_TARGET_H -#pragma ident "%Z%%M% %I% %E% SMI" - #ifdef __cplusplus extern "C" { #endif @@ -50,6 +50,7 @@ dis_tgt_t *dis_tgt_create(const char *); void dis_tgt_destroy(dis_tgt_t *); const char *dis_tgt_lookup(dis_tgt_t *, uint64_t, off_t *, int, size_t *, int *); +const char *dis_find_section(dis_tgt_t *, uint64_t, off_t *); const char *dis_tgt_name(dis_tgt_t *); const char *dis_tgt_member(dis_tgt_t *); void dis_tgt_ehdr(dis_tgt_t *, GElf_Ehdr *); diff --git a/usr/src/cmd/dtrace/test/cmd/scripts/Makefile b/usr/src/cmd/dtrace/test/cmd/scripts/Makefile index 0a7b167cd4..d5a14e95d4 100644 --- a/usr/src/cmd/dtrace/test/cmd/scripts/Makefile +++ b/usr/src/cmd/dtrace/test/cmd/scripts/Makefile @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" include $(SRC)/Makefile.master @@ -32,7 +31,7 @@ include $(SRC)/Makefile.master ROOTOPTPKG = $(ROOT)/opt/SUNWdtrt ROOTBIN = $(ROOTOPTPKG)/bin -SRCS = dtest itest dstyle +SRCS = dtest itest dstyle dtfailures CMDS = $(SRCS:%=$(ROOTBIN)/%) $(CMDS) := FILEMODE = 0555 diff --git a/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl b/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl index 3f2442950b..f11cf6916c 100644 --- a/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl +++ b/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl @@ -25,6 +25,9 @@ # Use is subject to license terms. # +# +# Copyright (c) 2011, Joyent, Inc. All rights reserved. +# require 5.8.4; use File::Find; @@ -35,8 +38,8 @@ use Cwd 'abs_path'; $PNAME = $0; $PNAME =~ s:.*/::; -$OPTSTR = 'abd:fghi:jlnqsx:'; -$USAGE = "Usage: $PNAME [-abfghjlnqs] [-d dir] [-i isa] " +$OPTSTR = 'abd:fFghi:jlnqsx:'; +$USAGE = "Usage: $PNAME [-abfFghjlnqs] [-d dir] [-i isa] " . "[-x opt[=arg]] [file | dir ...]\n"; ($MACH = `uname -p`) =~ s/\W*\n//; ($PLATFORM = `uname -i`) =~ s/\W*\n//; @@ -69,6 +72,20 @@ sub dirname { return $i == -1 ? '.' : $i == 0 ? '/' : $s; } +sub inpath +{ + my ($exec) = (@_); + my @path = File::Spec->path(); + + for my $dir (@path) { + if (-x $dir . "/" . $exec) { + return 1; + } + } + + return 0; +} + sub usage { print $USAGE; @@ -77,6 +94,7 @@ sub usage print "\t -d specify directory for test results files and cores\n"; print "\t -g enable libumem debugging when running tests\n"; print "\t -f force bypassed tests to run\n"; + print "\t -F force tests to be run, even if missing dependencies\n"; print "\t -h display verbose usage message\n"; print "\t -i specify ISA to test instead of isaexec(3C) default\n"; print "\t -j execute test suite using jdtrace (Java API) only\n"; @@ -240,8 +258,8 @@ sub run_tests { my($failed) = $errs; my($total) = 0; - die "$PNAME: $dtrace not found\n" unless (-x "$dtrace"); - logmsg($dtrace . "\n"); + die "$PNAME: $dtrace not found; aborting\n" unless (-x "$dtrace"); + logmsg("executing tests using $dtrace ...\n"); load_exceptions($exceptions_path); @@ -546,9 +564,20 @@ $dt_bin = '/opt/SUNWdtrt/bin'; $defdir = -d $dt_tst ? $dt_tst : '.'; $bindir = -d $dt_bin ? $dt_bin : '.'; +if (!$opt_F) { + my @dependencies = ("gcc", "make", "java", "perl"); + + for my $dep (@dependencies) { + if (!inpath($dep)) { + die "$PNAME: '$dep' not found (use -F to force run)\n"; + } + } +} + find(\&wanted, "$defdir/common") if (scalar(@ARGV) == 0); find(\&wanted, "$defdir/$MACH") if (scalar(@ARGV) == 0); find(\&wanted, "$defdir/$PLATFORM") if (scalar(@ARGV) == 0); + die $USAGE if (scalar(@files) == 0); $dtrace_path = '/usr/sbin/dtrace'; @@ -562,7 +591,7 @@ if ($opt_j || $opt_n || $opt_i) { push(@dtrace_cmds, $jdtrace_path) if ($opt_j); push(@dtrace_cmds, "/usr/sbin/$opt_i/dtrace") if ($opt_i); } else { - @dtrace_cmds = ($dtrace_path, $jdtrace_path); + @dtrace_cmds = ($dtrace_path); } if ($opt_d) { @@ -589,12 +618,6 @@ if ($opt_g) { $ENV{'LD_PRELOAD'} = 'libumem.so'; } -# -# Ensure that $PATH contains a cc(1) so that we can execute the -# test programs that require compilation of C code. -# -$ENV{'PATH'} = $ENV{'PATH'} . ':/ws/onnv-tools/SUNWspro/SS11/bin'; - if ($opt_b) { logmsg("badioctl'ing ... "); diff --git a/usr/src/cmd/terminfo/ti.ti b/usr/src/cmd/dtrace/test/cmd/scripts/dtfailures.ksh index 00ba82e00d..89ba955871 100644..100755 --- a/usr/src/cmd/terminfo/ti.ti +++ b/usr/src/cmd/dtrace/test/cmd/scripts/dtfailures.ksh @@ -1,10 +1,10 @@ +#!/usr/bin/ksh -p # # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -19,20 +19,24 @@ # # CDDL HEADER END # -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved +# +# Copyright (c) 2011, Joyent, Inc. All rights reserved. +# + +let failure=0 + +printf "%-3s %-10s %-31s %s\n" "#" "KIND" "TEST" "DETAILS" + +while [[ -d failure.$failure ]]; do + dir=failure.$failure + tst=`cat $dir/README | head -1 | nawk '{ print $2 }'` + kind=`basename $(dirname $tst)` + name=`basename $tst` + cols=$(expr `tput cols` - 47) + details=`tail -1 $dir/*.err | cut -c1-$cols` + printf "%-3d %-10s %-31s " $failure $kind $name + echo $details + let failure=failure+1 +done -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.3 */ -# # -------------------------------- -# -# ti: TEXAS INSTRUMENTS -# -# Manufacturer: TEXAS INSTRUMENTS -# Class: II -ti700|ti733|735|ti735|ti silent 700, - cr=^M$<162>, use=ti745, -ti|ti745|745|743|ti silent 745, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#80, hc, os, -ti800|ti omni 800, - cols#132, use=ti745, diff --git a/usr/src/cmd/dtrace/test/tst/common/aggs/tst.subr.d b/usr/src/cmd/dtrace/test/tst/common/aggs/tst.subr.d index 5ca1f1ef93..bb0739f0d3 100644 --- a/usr/src/cmd/dtrace/test/tst/common/aggs/tst.subr.d +++ b/usr/src/cmd/dtrace/test/tst/common/aggs/tst.subr.d @@ -24,8 +24,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/dtrace.h> #define INTFUNC(x) \ @@ -98,6 +96,8 @@ INTFUNC(ntohll(0x1234567890abcdefL)) STRFUNC(inet_ntoa((ipaddr_t *)alloca(sizeof (ipaddr_t)))) STRFUNC(inet_ntoa6((in6_addr_t *)alloca(sizeof (in6_addr_t)))) STRFUNC(inet_ntop(AF_INET, (void *)alloca(sizeof (ipaddr_t)))) +STRFUNC(toupper("foo")) +STRFUNC(tolower("BAR")) BEGIN /subr == DIF_SUBR_MAX + 1/ diff --git a/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize1.d b/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize1.d index 396a808116..ca8ad44a62 100644 --- a/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize1.d +++ b/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize1.d @@ -24,8 +24,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * ASSERTION: * Checks that setting "bufresize" to "auto" will cause buffer @@ -34,14 +32,8 @@ * SECTION: Buffers and Buffering/Buffer Resizing Policy; * Options and Tunables/bufsize; * Options and Tunables/bufresize - * - * NOTES: - * We use the undocumented "preallocate" option to make sure dtrace(1M) - * has enough space in its heap to allocate a buffer as large as the - * kernel's trace buffer. */ -#pragma D option preallocate=100t #pragma D option bufresize=auto #pragma D option bufsize=100t diff --git a/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize2.d b/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize2.d index 50b814b1bf..ddb97c89ec 100644 --- a/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize2.d +++ b/usr/src/cmd/dtrace/test/tst/common/buffering/tst.resize2.d @@ -24,8 +24,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * ASSERTION: * Checks that setting "bufresize" to "auto" will cause buffer @@ -34,14 +32,8 @@ * SECTION: Buffers and Buffering/Buffer Resizing Policy; * Options and Tunables/aggsize; * Options and Tunables/bufresize - * - * NOTES: - * We use the undocumented "preallocate" option to make sure dtrace(1M) - * has enough space in its heap to allocate a buffer as large as the - * kernel's trace buffer. */ -#pragma D option preallocate=100t #pragma D option bufresize=auto #pragma D option aggsize=100t diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.tolower.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.tolower.d new file mode 100644 index 0000000000..9d4e40b4db --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.tolower.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(tolower(2152006)); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.toupper.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.toupper.d new file mode 100644 index 0000000000..2c1389bdeb --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_ARG.toupper.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(toupper(timestamp)); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolower.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolower.d new file mode 100644 index 0000000000..7d9c27f902 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolower.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(tolower()); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolowertoomany.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolowertoomany.d new file mode 100644 index 0000000000..afaa7f976e --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.tolowertoomany.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(tolower("dory", "eel", "roughy")); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.toupper.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.toupper.d new file mode 100644 index 0000000000..9658f6a754 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.toupper.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(toupper()); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.touppertoomany.d b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.touppertoomany.d new file mode 100644 index 0000000000..bee8697fb2 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/err.D_PROTO_LEN.touppertoomany.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + trace(tolower("haino", "tylo")); + exit(1); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d new file mode 100644 index 0000000000..1afe37dc68 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d @@ -0,0 +1,80 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +#pragma D option quiet + +int64_t val[int]; + +BEGIN +{ + base = -2; + i = 0; + val[i++] = -10; + val[i++] = -1; + val[i++] = 0; + val[i++] = 10; + val[i++] = 100; + val[i++] = 1000; + val[i++] = (1LL << 62); + maxval = i; + i = 0; +} + +tick-1ms +/i < maxval/ +{ + printf("base %2d of %20d: ", base, val[i]); +} + +tick-1ms +/i < maxval/ +{ + printf(" %s\n", lltostr(val[i], base)); +} + +ERROR +{ + printf(" <error>\n"); +} + +tick-1ms +/i < maxval/ +{ + i++; +} + +tick-1ms +/i == maxval/ +{ + i = 0; + base++; +} + +tick-1ms +/base > 40/ +{ + exit(0); +} + diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d.out b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d.out new file mode 100644 index 0000000000..94e2257712 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.lltostrbase.d.out @@ -0,0 +1,302 @@ +base -2 of -10: <error> +base -2 of -1: <error> +base -2 of 0: <error> +base -2 of 10: <error> +base -2 of 100: <error> +base -2 of 1000: <error> +base -2 of 4611686018427387904: <error> +base -1 of -10: <error> +base -1 of -1: <error> +base -1 of 0: <error> +base -1 of 10: <error> +base -1 of 100: <error> +base -1 of 1000: <error> +base -1 of 4611686018427387904: <error> +base 0 of -10: <error> +base 0 of -1: <error> +base 0 of 0: <error> +base 0 of 10: <error> +base 0 of 100: <error> +base 0 of 1000: <error> +base 0 of 4611686018427387904: <error> +base 1 of -10: <error> +base 1 of -1: <error> +base 1 of 0: <error> +base 1 of 10: <error> +base 1 of 100: <error> +base 1 of 1000: <error> +base 1 of 4611686018427387904: <error> +base 2 of -10: 1111111111111111111111111111111111111111111111111111111111110110 +base 2 of -1: 1111111111111111111111111111111111111111111111111111111111111111 +base 2 of 0: 0 +base 2 of 10: 1010 +base 2 of 100: 1100100 +base 2 of 1000: 1111101000 +base 2 of 4611686018427387904: 100000000000000000000000000000000000000000000000000000000000000 +base 3 of -10: 11112220022122120101211020120210210211120 +base 3 of -1: 11112220022122120101211020120210210211220 +base 3 of 0: 0 +base 3 of 10: 101 +base 3 of 100: 10201 +base 3 of 1000: 1101001 +base 3 of 4611686018427387904: 1010201120122220002201001122110012110111 +base 4 of -10: 33333333333333333333333333333312 +base 4 of -1: 33333333333333333333333333333333 +base 4 of 0: 0 +base 4 of 10: 22 +base 4 of 100: 1210 +base 4 of 1000: 33220 +base 4 of 4611686018427387904: 10000000000000000000000000000000 +base 5 of -10: 2214220303114400424121122411 +base 5 of -1: 2214220303114400424121122430 +base 5 of 0: 0 +base 5 of 10: 20 +base 5 of 100: 400 +base 5 of 1000: 13000 +base 5 of 4611686018427387904: 302141200402211214402403104 +base 6 of -10: 3520522010102100444244410 +base 6 of -1: 3520522010102100444244423 +base 6 of 0: 0 +base 6 of 10: 14 +base 6 of 100: 244 +base 6 of 1000: 4344 +base 6 of 4611686018427387904: 550120301313313111041104 +base 7 of -10: 45012021522523134134556 +base 7 of -1: 45012021522523134134601 +base 7 of 0: 0 +base 7 of 10: 13 +base 7 of 100: 202 +base 7 of 1000: 2626 +base 7 of 4611686018427387904: 11154003640456024361134 +base 8 of -10: 01777777777777777777766 +base 8 of -1: 01777777777777777777777 +base 8 of 0: 0 +base 8 of 10: 012 +base 8 of 100: 0144 +base 8 of 1000: 01750 +base 8 of 4611686018427387904: 0400000000000000000000 +base 9 of -10: 145808576354216723746 +base 9 of -1: 145808576354216723756 +base 9 of 0: 0 +base 9 of 10: 11 +base 9 of 100: 121 +base 9 of 1000: 1331 +base 9 of 4611686018427387904: 33646586081048405414 +base 10 of -10: -10 +base 10 of -1: -1 +base 10 of 0: 0 +base 10 of 10: 10 +base 10 of 100: 100 +base 10 of 1000: 1000 +base 10 of 4611686018427387904: 4611686018427387904 +base 11 of -10: 335500516a429071276 +base 11 of -1: 335500516a429071284 +base 11 of 0: 0 +base 11 of 10: a +base 11 of 100: 91 +base 11 of 1000: 82a +base 11 of 4611686018427387904: 9140013181078458a4 +base 12 of -10: 839365134a2a240706 +base 12 of -1: 839365134a2a240713 +base 12 of 0: 0 +base 12 of 10: a +base 12 of 100: 84 +base 12 of 1000: 6b4 +base 12 of 4611686018427387904: 20b3a733a268670194 +base 13 of -10: 219505a9511a867b66 +base 13 of -1: 219505a9511a867b72 +base 13 of 0: 0 +base 13 of 10: a +base 13 of 100: 79 +base 13 of 1000: 5bc +base 13 of 4611686018427387904: 6c1349246a2881c84 +base 14 of -10: 8681049adb03db166 +base 14 of -1: 8681049adb03db171 +base 14 of 0: 0 +base 14 of 10: a +base 14 of 100: 72 +base 14 of 1000: 516 +base 14 of 4611686018427387904: 219038263637dd3c4 +base 15 of -10: 2c1d56b648c6cd106 +base 15 of -1: 2c1d56b648c6cd110 +base 15 of 0: 0 +base 15 of 10: a +base 15 of 100: 6a +base 15 of 1000: 46a +base 15 of 4611686018427387904: a7e8ce189a933404 +base 16 of -10: 0xfffffffffffffff6 +base 16 of -1: 0xffffffffffffffff +base 16 of 0: 0x0 +base 16 of 10: 0xa +base 16 of 100: 0x64 +base 16 of 1000: 0x3e8 +base 16 of 4611686018427387904: 0x4000000000000000 +base 17 of -10: 67979g60f5428008 +base 17 of -1: 67979g60f5428010 +base 17 of 0: 0 +base 17 of 10: a +base 17 of 100: 5f +base 17 of 1000: 37e +base 17 of 4611686018427387904: 1a6a6ca03e10a88d +base 18 of -10: 2d3fgb0b9cg4bd26 +base 18 of -1: 2d3fgb0b9cg4bd2f +base 18 of 0: 0 +base 18 of 10: a +base 18 of 100: 5a +base 18 of 1000: 31a +base 18 of 4611686018427387904: c588bdbfgd12ge4 +base 19 of -10: 141c8786h1ccaag7 +base 19 of -1: 141c8786h1ccaagg +base 19 of 0: 0 +base 19 of 10: a +base 19 of 100: 55 +base 19 of 1000: 2ec +base 19 of 4611686018427387904: 5ecbb6fi9h7ggi9 +base 20 of -10: b53bjh07be4dj06 +base 20 of -1: b53bjh07be4dj0f +base 20 of 0: 0 +base 20 of 10: a +base 20 of 100: 50 +base 20 of 1000: 2a0 +base 20 of 4611686018427387904: 2g5hjj51hib39f4 +base 21 of -10: 5e8g4ggg7g56di6 +base 21 of -1: 5e8g4ggg7g56dif +base 21 of 0: 0 +base 21 of 10: a +base 21 of 100: 4g +base 21 of 1000: 25d +base 21 of 4611686018427387904: 18hjgjjjhebh8f4 +base 22 of -10: 2l4lf104353j8k6 +base 22 of -1: 2l4lf104353j8kf +base 22 of 0: 0 +base 22 of 10: a +base 22 of 100: 4c +base 22 of 1000: 21a +base 22 of 4611686018427387904: g6g95gc0hha7g4 +base 23 of -10: 1ddh88h2782i50j +base 23 of -1: 1ddh88h2782i515 +base 23 of 0: 0 +base 23 of 10: a +base 23 of 100: 48 +base 23 of 1000: 1kb +base 23 of 4611686018427387904: 93a22467dc4chd +base 24 of -10: l12ee5fn0ji1i6 +base 24 of -1: l12ee5fn0ji1if +base 24 of 0: 0 +base 24 of 10: a +base 24 of 100: 44 +base 24 of 1000: 1hg +base 24 of 4611686018427387904: 566ffd9ni4mcag +base 25 of -10: c9c336o0mlb7e6 +base 25 of -1: c9c336o0mlb7ef +base 25 of 0: 0 +base 25 of 10: a +base 25 of 100: 40 +base 25 of 1000: 1f0 +base 25 of 4611686018427387904: 32970kc6bo2kg4 +base 26 of -10: 7b7n2pcniokcg6 +base 26 of -1: 7b7n2pcniokcgf +base 26 of 0: 0 +base 26 of 10: a +base 26 of 100: 3m +base 26 of 1000: 1cc +base 26 of 4611686018427387904: 1m8c769io65344 +base 27 of -10: 4eo8hfam6fllmf +base 27 of -1: 4eo8hfam6fllmo +base 27 of 0: 0 +base 27 of 10: a +base 27 of 100: 3j +base 27 of 1000: 1a1 +base 27 of 4611686018427387904: 13jfho2j1hc5cd +base 28 of -10: 2nc6j26l66rho6 +base 28 of -1: 2nc6j26l66rhof +base 28 of 0: 0 +base 28 of 10: a +base 28 of 100: 3g +base 28 of 1000: 17k +base 28 of 4611686018427387904: jo1ilfj8fkpd4 +base 29 of -10: 1n3rsh11f098re +base 29 of -1: 1n3rsh11f098rn +base 29 of 0: 0 +base 29 of 10: a +base 29 of 100: 3d +base 29 of 1000: 15e +base 29 of 4611686018427387904: d0slim0b029e6 +base 30 of -10: 14l9lkmo30o406 +base 30 of -1: 14l9lkmo30o40f +base 30 of 0: 0 +base 30 of 10: a +base 30 of 100: 3a +base 30 of 1000: 13a +base 30 of 4611686018427387904: 8k9rrkl0ml104 +base 31 of -10: nd075ib45k866 +base 31 of -1: nd075ib45k86f +base 31 of 0: 0 +base 31 of 10: a +base 31 of 100: 37 +base 31 of 1000: 118 +base 31 of 4611686018427387904: 5qfh94i8okhh4 +base 32 of -10: fvvvvvvvvvvvm +base 32 of -1: fvvvvvvvvvvvv +base 32 of 0: 0 +base 32 of 10: a +base 32 of 100: 34 +base 32 of 1000: v8 +base 32 of 4611686018427387904: 4000000000000 +base 33 of -10: b1w8p7j5q9r66 +base 33 of -1: b1w8p7j5q9r6f +base 33 of 0: 0 +base 33 of 10: a +base 33 of 100: 31 +base 33 of 1000: ua +base 33 of 4611686018427387904: 2p826a4q6ivi4 +base 34 of -10: 7orp63sh4dph8 +base 34 of -1: 7orp63sh4dphh +base 34 of 0: 0 +base 34 of 10: a +base 34 of 100: 2w +base 34 of 1000: te +base 34 of 4611686018427387904: 1vnvr0wl9ketu +base 35 of -10: 5g24a25twkwf6 +base 35 of -1: 5g24a25twkwff +base 35 of 0: 0 +base 35 of 10: a +base 35 of 100: 2u +base 35 of 1000: sk +base 35 of 4611686018427387904: 1cqrb9a7gvgu4 +base 36 of -10: 3w5e11264sgs6 +base 36 of -1: 3w5e11264sgsf +base 36 of 0: 0 +base 36 of 10: a +base 36 of 100: 2s +base 36 of 1000: rs +base 36 of 4611686018427387904: z1ci99jj7474 +base 37 of -10: <error> +base 37 of -1: <error> +base 37 of 0: <error> +base 37 of 10: <error> +base 37 of 100: <error> +base 37 of 1000: <error> +base 37 of 4611686018427387904: <error> +base 38 of -10: <error> +base 38 of -1: <error> +base 38 of 0: <error> +base 38 of 10: <error> +base 38 of 100: <error> +base 38 of 1000: <error> +base 38 of 4611686018427387904: <error> +base 39 of -10: <error> +base 39 of -1: <error> +base 39 of 0: <error> +base 39 of 10: <error> +base 39 of 100: <error> +base 39 of 1000: <error> +base 39 of 4611686018427387904: <error> +base 40 of -10: <error> +base 40 of -1: <error> +base 40 of 0: <error> +base 40 of 10: <error> +base 40 of 100: <error> +base 40 of 1000: <error> +base 40 of 4611686018427387904: <error> + diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/tst.tolower.d b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.tolower.d new file mode 100644 index 0000000000..2539630e9d --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.tolower.d @@ -0,0 +1,66 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +#pragma D option quiet + +BEGIN +{ + i = 0; + + input[i] = "ahi"; + expected[i++] = "ahi"; + + input[i] = "MaHi!"; + expected[i++] = "mahi!"; + + input[i] = " Nase-5"; + expected[i++] = " nase-5"; + + input[i] = "!@#$%"; + expected[i++] = "!@#$%"; + + i = 0; +} + +tick-1ms +/input[i] != NULL && (this->out = tolower(input[i])) != expected[i]/ +{ + printf("expected tolower(\"%s\") to be \"%s\"; found \"%s\"\n", + input[i], expected[i], this->out); + exit(1); +} + +tick-1ms +/input[i] != NULL/ +{ + printf("tolower(\"%s\") is \"%s\", as expected\n", + input[i], expected[i]); +} + +tick-1ms +/input[i++] == NULL/ +{ + exit(0); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/funcs/tst.toupper.d b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.toupper.d new file mode 100644 index 0000000000..fd803f2ef0 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/funcs/tst.toupper.d @@ -0,0 +1,66 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +#pragma D option quiet + +BEGIN +{ + i = 0; + + input[i] = "ahi"; + expected[i++] = "AHI"; + + input[i] = "MaHi!"; + expected[i++] = "MAHI!"; + + input[i] = " dace-9"; + expected[i++] = " DACE-9"; + + input[i] = "!@#$%"; + expected[i++] = "!@#$%"; + + i = 0; +} + +tick-1ms +/input[i] != NULL && (this->out = toupper(input[i])) != expected[i]/ +{ + printf("expected toupper(\"%s\") to be \"%s\"; found \"%s\"\n", + input[i], expected[i], this->out); + exit(1); +} + +tick-1ms +/input[i] != NULL/ +{ + printf("toupper(\"%s\") is \"%s\", as expected\n", + input[i], expected[i]); +} + +tick-1ms +/input[i++] == NULL/ +{ + exit(0); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl index fb41255473..d2dc8fdbee 100755 --- a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl +++ b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/perl5/bin/perl -w # # CDDL HEADER START # @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#pragma ident "%Z%%M% %I% %E% SMI" # # get.ipv4remote.pl [tcpport] diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl index 051ab8c3c3..3b1999f62b 100755 --- a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl +++ b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/perl5/bin/perl -w # # CDDL HEADER START # @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#pragma ident "%Z%%M% %I% %E% SMI" # # get.ipv6remote.pl diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh b/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh index 6fa8c35bf3..4527940ebf 100755 --- a/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4localtcp.ksh @@ -75,7 +75,7 @@ cat > test.pl <<-EOPERL close \$s; EOPERL -$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE +$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE BEGIN { ipsend = tcpsend = ipreceive = tcpreceive = 0; diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh b/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh index 89a0cdb95e..33d058b904 100755 --- a/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/ip/tst.ipv4remotetcp.ksh @@ -78,7 +78,7 @@ cat > test.pl <<-EOPERL close \$s; EOPERL -$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE +$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE BEGIN { ipsend = tcpsend = ipreceive = tcpreceive = 0; diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh b/usr/src/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh index 8a65ce6f8d..9f73075495 100644 --- a/usr/src/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/ip/tst.localtcpstate.ksh @@ -81,7 +81,7 @@ cat > test.pl <<-EOPERL close \$s; EOPERL -$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE +$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE BEGIN { ipsend = tcpsend = ipreceive = tcpreceive = 0; diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh b/usr/src/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh index b6b9545d4e..cf6d1dcece 100644 --- a/usr/src/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/ip/tst.remotetcpstate.ksh @@ -86,7 +86,7 @@ cat > test.pl <<-EOPERL close \$s; EOPERL -$dtrace -c '/usr/bin/perl test.pl' -qs /dev/stdin <<EODTRACE +$dtrace -c 'perl test.pl' -qs /dev/stdin <<EODTRACE BEGIN { ipsend = tcpsend = ipreceive = tcpreceive = 0; diff --git a/usr/src/cmd/dtrace/test/tst/common/misc/tst.include.ksh b/usr/src/cmd/dtrace/test/tst/common/misc/tst.include.ksh index 17f12629f5..5b57805d12 100644 --- a/usr/src/cmd/dtrace/test/tst/common/misc/tst.include.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/misc/tst.include.ksh @@ -30,7 +30,7 @@ if [ $# != 1 ]; then fi dtrace=$1 -CC=/usr/sfw/bin/gcc +CC=`which gcc` CFLAGS= doit() @@ -86,10 +86,33 @@ files=/usr/include/sys/*.h # becomes a problem, kindly fix it by reducing the number of bad files! (That # is, fix it by fixing the broken file, not the broken script.) # -badfiles="ctype.h ser_sync.h neti.h hook_event.h \ - bootconf.h bootstat.h dtrace.h dumphdr.h exacct_impl.h fasttrap.h \ - kobj.h kobj_impl.h ksyms.h lockstat.h smedia.h stat.h utsname.h \ - rds.h smbios_impl.h" +badfiles="\ + bootconf.h \ + bootstat.h \ + ctype.h \ + dtrace.h \ + dumphdr.h \ + exacct_impl.h \ + fasttrap.h \ + hook_event.h \ + iscsi_authclient.h \ + kiconv_ja.h \ + kiconv_ja_jis_to_unicode.h \ + kiconv_ja_unicode_to_jis.h \ + kobj.h \ + kobj_impl.h \ + ksyms.h \ + lockstat.h \ + neti.h \ + rds.h \ + ser_sync.h \ + smbios_impl.h \ + smedia.h \ + sockfilter.h \ + stat.h \ + u8_textprep_data.h \ + utsname.h \ + vnic.h" for inc in $files; do file=`basename $inc` diff --git a/usr/src/cmd/dtrace/test/tst/common/misc/tst.schrock.ksh b/usr/src/cmd/dtrace/test/tst/common/misc/tst.schrock.ksh index 494f6f8e66..bc29f714cb 100644 --- a/usr/src/cmd/dtrace/test/tst/common/misc/tst.schrock.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/misc/tst.schrock.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -33,13 +32,12 @@ fi dtrace=$1 # -# /usr/ccs/bin/nm execs a 64-bit version of itself. DTrace uses libproc -# (which uses /proc) to find out when the traced process exits, but a -# 32-bit process can't examine a 64-bit one with libproc. The -# LD_NOEXEC_64 variable prevents nm from re-execing itself. +# Some variants of nm may exec a 64-bit version of themselves. DTrace uses +# libproc (which uses /proc) to find out when the traced process exits, but a +# 32-bit process can't examine a 64-bit one with libproc. The LD_NOEXEC_64 +# variable prevents nm from re-execing itself. # -LD_NOEXEC_64=tomeeisrad $dtrace -F -s /dev/stdin -c \ - '/usr/ccs/bin/nm /bin/ls' stat <<EOF +LD_NOEXEC_64=nono $dtrace -F -s /dev/stdin -c 'nm /bin/ls' stat <<EOF pid\$target::\$1:entry { diff --git a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex1.ksh b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex1.ksh index 892ff3e24d..692a715303 100644 --- a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex1.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex1.ksh @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that specifying a glob in a pid provider name @@ -46,10 +45,10 @@ cat > Makefile <<EOF all: main main: main.o - cc -o main main.o + gcc -o main main.o main.o: main.c - cc -c main.c + gcc -c main.c EOF cat > main.c <<EOF diff --git a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex2.ksh b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex2.ksh index 8d83bddd23..03b6003fed 100644 --- a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex2.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex2.ksh @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that probes will be picked up after a dlopen(3C) @@ -46,16 +45,16 @@ cat > Makefile <<EOF all: main altlib.so main: main.o - cc -o main main.o + gcc -o main main.o main.o: main.c - cc -c main.c + gcc -c main.c altlib.so: altlib.o - cc -z defs -G -o altlib.so altlib.o -lc + gcc -shared -o altlib.so altlib.o -lc altlib.o: altlib.c - cc -c altlib.c + gcc -c altlib.c EOF cat > altlib.c <<EOF diff --git a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh index c9ac6b1dd6..4a74cb050a 100644 --- a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that a regex in the provider name will match @@ -44,13 +43,13 @@ mkdir $DIR cd $DIR cat > Makefile <<EOF - all: main +all: main main: main.o prov.o - cc -o main main.o prov.o + gcc -o main main.o prov.o main.o: main.c prov.h - cc -c main.c + gcc -c main.c prov.h: prov.d $dtrace -h -s prov.d diff --git a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex4.ksh b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex4.ksh index 278ec12813..8d326ad7c1 100644 --- a/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex4.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/pid/tst.provregex4.ksh @@ -24,7 +24,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that USDT probes will be picked up after a dlopen(3C) @@ -47,10 +46,10 @@ cat > Makefile <<EOF all: main altlib.so main: main.o provmain.o - cc -o main main.o provmain.o + gcc -o main main.o provmain.o main.o: main.c prov.h - cc -c main.c + gcc -c main.c prov.h: prov.d $dtrace -h -s prov.d @@ -59,10 +58,10 @@ provmain.o: prov.d main.o $dtrace -G -32 -o provmain.o -s prov.d main.o altlib.so: altlib.o provalt.o - cc -z defs -G -o altlib.so altlib.o provalt.o -lc + gcc -shared -o altlib.so altlib.o provalt.o -lc altlib.o: altlib.c prov.h - cc -c altlib.c + gcc -c altlib.c provalt.o: prov.d altlib.o $dtrace -G -32 -o provalt.o -s prov.d altlib.o diff --git a/usr/src/cmd/dtrace/test/tst/common/printa/tst.largeusersym.ksh b/usr/src/cmd/dtrace/test/tst/common/printa/tst.largeusersym.ksh index ed375fdbf9..4c5df0a1ef 100644 --- a/usr/src/cmd/dtrace/test/tst/common/printa/tst.largeusersym.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/printa/tst.largeusersym.ksh @@ -50,7 +50,7 @@ main(int argc, char *argv[]) } EOF -cc -o test test.c +gcc -o test test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivdrop.ksh b/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivdrop.ksh new file mode 100755 index 0000000000..a5cd18386c --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivdrop.ksh @@ -0,0 +1,72 @@ +# +# CDDL HEADER START +# +# The contents of this file are subject to the terms of the +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. +# +# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE +# or http://www.opensolaris.org/os/licensing. +# See the License for the specific language governing permissions +# and limitations under the License. +# +# When distributing Covered Code, include this CDDL HEADER in each +# file and include the License file at usr/src/OPENSOLARIS.LICENSE. +# If applicable, add the following below this CDDL HEADER, with the +# fields enclosed by brackets "[]" replaced with your own identifying +# information: Portions Copyright [yyyy] [name of copyright owner] +# +# CDDL HEADER END +# + +# +# Copyright (c) 2011, Joyent, Inc. All rights reserved. +# + +ppriv -s A=basic,dtrace_user $$ + +# +# We expect some number of these profile probes to be silently dropped. +# Note that this test will fail if something is stuck on all CPUs that +# whomever is running the test happens to own. +# +count=$(/usr/sbin/dtrace -q -s /dev/stdin <<EOF +BEGIN +{ + start = timestamp; + @ = count(); +} + +ERROR +{ + exit(1); +} + +profile-1000hz +{ + @ = count(); +} + +tick-10ms +{ + ticks++; +} + +tick-10ms +/ticks > 100/ +{ + printa("%@d", @); + exit(0); +} +EOF) + +cpus=`psrinfo | grep -- on-line | wc -l` +max=`expr $cpus \* 500` + +if [[ $count -gt $max ]]; then + echo "count ($count) is greater than allowed max ($max)" + exit 1 +fi + +echo "count ($count) is within allowed max ($max)" +exit 0 diff --git a/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivrestrict.ksh b/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivrestrict.ksh new file mode 100755 index 0000000000..358ed92c6f --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/privs/tst.noprivrestrict.ksh @@ -0,0 +1,61 @@ +# +# CDDL HEADER START +# +# The contents of this file are subject to the terms of the +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. +# +# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE +# or http://www.opensolaris.org/os/licensing. +# See the License for the specific language governing permissions +# and limitations under the License. +# +# When distributing Covered Code, include this CDDL HEADER in each +# file and include the License file at usr/src/OPENSOLARIS.LICENSE. +# If applicable, add the following below this CDDL HEADER, with the +# fields enclosed by brackets "[]" replaced with your own identifying +# information: Portions Copyright [yyyy] [name of copyright owner] +# +# CDDL HEADER END +# + +# +# Copyright (c) 2011, Joyent, Inc. All rights reserved. +# + +ppriv -s A=basic,dtrace_user $$ + +# +# We expect at least one of these tick probes to error out because only +# dtrace_user is set, and we are attempting to access arguments. Note that +# this test will fail if something is stuck on CPU that whomever is running +# the test happens to own. +# +/usr/sbin/dtrace -q -s /dev/stdin <<EOF +BEGIN +{ + start = timestamp; +} + +tick-1000hz +{ + @[arg0] = count(); +} + +ERROR +{ + errcnt++; +} + +tick-10ms +{ + ticks++; +} + +tick-10ms +/ticks > 100/ +{ + printf("error count is %d\n", errcnt); + exit(errcnt != 0 ? 0 : 1); +} +EOF diff --git a/usr/src/cmd/lp/terminfo/45x.ti b/usr/src/cmd/dtrace/test/tst/common/privs/tst.tick.ksh index e4a6c5ab92..eaff59fa94 100644..100755 --- a/usr/src/cmd/lp/terminfo/45x.ti +++ b/usr/src/cmd/dtrace/test/tst/common/privs/tst.tick.ksh @@ -2,9 +2,8 @@ # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -19,24 +18,38 @@ # # CDDL HEADER END # -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### # -# Entries for the AT&T 455, 457, 459 printers +# Copyright (c) 2011, Joyent, Inc. All rights reserved. # -455|att455|AT&T 455 Daisywheel printer, - - use=Gdaisy+basic, +ppriv -s A=basic,dtrace_user $$ -457|att457|458|att458|AT&T 457 Daisy printer, +# +# We expect tick probes to fire if dtrace_user is set +# +/usr/sbin/dtrace -q -s /dev/stdin <<EOF +BEGIN +{ + start = timestamp; +} - bufsz#1024, - use=455, +tick-10ms +{ + ticks++; +} +tick-10ms +/ticks > 10 && (this->ms = (timestamp - start) / 1000000) > 2000/ +{ + printf("expected completion in 100 ms, found %d!\n", this->ms); + exit(1); +} +tick-10ms +/ticks > 10/ +{ + printf("completed in %d ms\n", this->ms); + exit(0); +} +EOF diff --git a/usr/src/cmd/dtrace/test/tst/common/profile-n/tst.umod.ksh b/usr/src/cmd/dtrace/test/tst/common/profile-n/tst.umod.ksh index b4b445056c..fe5649da76 100644 --- a/usr/src/cmd/dtrace/test/tst/common/profile-n/tst.umod.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/profile-n/tst.umod.ksh @@ -61,7 +61,7 @@ child=$! # # The only thing we can be sure of here is that ksh is doing some work. # -script | tee /dev/fd/2 | egrep -w '(ksh|libshell)' > /dev/null +script | tee /dev/fd/2 | egrep '(ksh|libshell)' > /dev/null status=$? kill $child diff --git a/usr/src/cmd/dtrace/test/tst/common/sizeof/err.D_SIZEOF_TYPE.badstruct.d b/usr/src/cmd/dtrace/test/tst/common/sizeof/err.D_SIZEOF_TYPE.badstruct.d new file mode 100644 index 0000000000..c921db88b6 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/sizeof/err.D_SIZEOF_TYPE.badstruct.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent Inc. All rights reserved. + */ + +BEGIN +{ + trace(sizeof (struct suckitlarry)); + exit(0); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_ARGS.d b/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_ARGS.d new file mode 100644 index 0000000000..1eb96be529 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_ARGS.d @@ -0,0 +1,29 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + tracemem(`dtrace_zero, 256, 0, "fishpong"); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_DYNSIZE.d b/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_DYNSIZE.d new file mode 100644 index 0000000000..554bb7dfb4 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_TRACEMEM_DYNSIZE.d @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +BEGIN +{ + tracemem(`dtrace_zero, 256, "fishpong"); + exit(0); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_PROTO_LEN.toomany.d b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.dynsize.d index dfe8e4d229..de530e811c 100644 --- a/usr/src/cmd/dtrace/test/tst/common/tracemem/err.D_PROTO_LEN.toomany.d +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.dynsize.d @@ -20,20 +20,26 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2011, Joyent, Inc. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: - * Test tracemem() with too many arguments. - * - * SECTION: Actions and Subroutines/tracemem() - */ +#pragma D option quiet BEGIN { - tracemem(123, 456, 789); + i = -10; +} + +tick-10ms +/i++ < 150/ +{ + printf("%d:", i); + tracemem(`dtrace_zero, 128, i); + printf("\n"); +} + +tick-10ms +/i >= 150/ +{ + exit(0); } diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.dynsize.d.out b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.dynsize.d.out new file mode 100644 index 0000000000..6415893b8d --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.dynsize.d.out @@ -0,0 +1,1313 @@ +-9: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-8: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-7: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-6: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-5: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-4: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-3: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-2: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +-1: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +0: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +1: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 . + +2: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 .. + +3: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 ... + +4: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 .... + +5: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 ..... + +6: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 ...... + +7: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 ....... + +8: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 ........ + +9: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 ......... + +10: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 .......... + +11: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 ........... + +12: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +13: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +14: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +15: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +16: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +17: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 . + +18: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 .. + +19: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 ... + +20: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 .... + +21: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 ..... + +22: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 ...... + +23: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 ....... + +24: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 ........ + +25: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 ......... + +26: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 .......... + +27: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 ........... + +28: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +29: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +30: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +31: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +32: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +33: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 . + +34: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 .. + +35: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 ... + +36: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 .... + +37: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 ..... + +38: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 ...... + +39: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 ....... + +40: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 ........ + +41: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 ......... + +42: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 .......... + +43: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 ........... + +44: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +45: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +46: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +47: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +48: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +49: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 . + +50: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 .. + +51: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 ... + +52: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 .... + +53: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 ..... + +54: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 ...... + +55: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 ....... + +56: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 ........ + +57: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 ......... + +58: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 .......... + +59: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 ........... + +60: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +61: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +62: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +63: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +64: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +65: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 . + +66: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 .. + +67: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 ... + +68: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 .... + +69: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 ..... + +70: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 ...... + +71: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 ....... + +72: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 ........ + +73: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 ......... + +74: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 .......... + +75: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 ........... + +76: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +77: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +78: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +79: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +80: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +81: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 . + +82: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 .. + +83: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 ... + +84: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 .... + +85: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 ..... + +86: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 ...... + +87: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 ....... + +88: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 ........ + +89: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 ......... + +90: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 .......... + +91: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 ........... + +92: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +93: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +94: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +95: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +96: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +97: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 . + +98: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 .. + +99: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 ... + +100: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 .... + +101: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 ..... + +102: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 ...... + +103: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 ....... + +104: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 ........ + +105: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 ......... + +106: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 .......... + +107: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 ........... + +108: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +109: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +110: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +111: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +112: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +113: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 . + +114: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 .. + +115: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 ... + +116: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 .... + +117: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 ..... + +118: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 ...... + +119: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 ....... + +120: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 ........ + +121: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 ......... + +122: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 .......... + +123: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 ........... + +124: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 ............ + +125: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 ............. + +126: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. + +127: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + +128: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +129: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +130: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +131: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +132: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +133: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +134: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +135: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +136: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +137: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +138: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +139: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +140: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +141: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +142: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +143: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +144: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +145: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +146: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +147: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +148: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +149: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + +150: + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + + diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d new file mode 100644 index 0000000000..ae447709ee --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d @@ -0,0 +1,32 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ + +#pragma D option quiet + +BEGIN +{ + tracemem(`utsname.sysname, 5); + exit(0); +} diff --git a/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d.out b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d.out new file mode 100644 index 0000000000..8cefb58604 --- /dev/null +++ b/usr/src/cmd/dtrace/test/tst/common/tracemem/tst.smallsize.d.out @@ -0,0 +1,4 @@ + + 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef + 0: 53 75 6e 4f 53 SunOS + diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.badguess.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.badguess.ksh index 291fe83fac..3c41f66214 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.badguess.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.badguess.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -61,12 +60,12 @@ main(int argc, char **argv) } EOF -cc -xarch=generic64 -c -o test64.o test.c +gcc -m64 -c -o test64.o test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c 64-bit" exit 1 fi -cc -xarch=generic -c -o test32.o test.c +gcc -m32 -c -o test32.o test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c 32-bit" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.corruptenv.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.corruptenv.ksh index 68dbb03456..c9bcb03e63 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.corruptenv.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.corruptenv.ksh @@ -60,10 +60,10 @@ cat > Makefile <<EOF all: main main: main.o prov.o - \$(CC) -o main main.o prov.o + gcc -o main main.o prov.o main.o: main.c prov.h - \$(CC) -c main.c + gcc -c main.c prov.h: prov.d $dtrace -h -s prov.d diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose1.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose1.ksh index 0a6666628f..ade3a54d48 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose1.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose1.ksh @@ -24,7 +24,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that USDT providers are removed when its associated @@ -46,17 +45,17 @@ cat > Makefile <<EOF all: main livelib.so deadlib.so main: main.o prov.o - cc -o main main.o + gcc -o main main.o main.o: main.c - cc -c main.c + gcc -c main.c livelib.so: livelib.o prov.o - cc -z defs -G -o livelib.so livelib.o prov.o -lc + gcc -shared -o livelib.so livelib.o prov.o -lc livelib.o: livelib.c prov.h - cc -c livelib.c + gcc -c livelib.c prov.o: livelib.o prov.d $dtrace -G -s prov.d livelib.o @@ -66,10 +65,10 @@ prov.h: prov.d deadlib.so: deadlib.o - cc -z defs -G -o deadlib.so deadlib.o -lc + gcc -shared -o deadlib.so deadlib.o -lc deadlib.o: deadlib.c - cc -c deadlib.c + gcc -c deadlib.c clean: rm -f main.o livelib.o prov.o prov.h deadlib.o @@ -125,7 +124,7 @@ main(int argc, char **argv) } EOF -/usr/ccs/bin/make > /dev/null +make > /dev/null if [ $? -ne 0 ]; then print -u2 "failed to build" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose2.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose2.ksh index c83d8bfa86..692c8d9b5c 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose2.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose2.ksh @@ -24,7 +24,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -41,17 +40,17 @@ cat > Makefile <<EOF all: main livelib.so deadlib.so main: main.o prov.o - cc -o main main.o + gcc -o main main.o main.o: main.c - cc -c main.c + gcc -c main.c livelib.so: livelib.o prov.o - cc -z defs -G -o livelib.so livelib.o prov.o -lc + gcc -shared -o livelib.so livelib.o prov.o -lc livelib.o: livelib.c prov.h - cc -c livelib.c + gcc -c livelib.c prov.o: livelib.o prov.d $dtrace -G -s prov.d livelib.o @@ -61,10 +60,10 @@ prov.h: prov.d deadlib.so: deadlib.o - cc -z defs -G -o deadlib.so deadlib.o -lc + gcc -shared -o deadlib.so deadlib.o -lc deadlib.o: deadlib.c - cc -c deadlib.c + gcc -c deadlib.c clean: rm -f main.o livelib.o prov.o prov.h deadlib.o @@ -136,7 +135,7 @@ main(int argc, char **argv) } EOF -/usr/ccs/bin/make > /dev/null +make > /dev/null if [ $? -ne 0 ]; then print -u2 "failed to build" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose3.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose3.ksh index 72f24ce5e3..e950eb4af2 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose3.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.dlclose3.ksh @@ -24,7 +24,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # This test verifies that performing a dlclose(3dl) on a library doesn't @@ -46,17 +45,17 @@ cat > Makefile <<EOF all: main livelib.so deadlib.so main: main.o prov.o - cc -o main main.o + gcc -o main main.o main.o: main.c - cc -c main.c + gcc -c main.c livelib.so: livelib.o prov.o - cc -z defs -G -o livelib.so livelib.o prov.o -lc + gcc -shared -o livelib.so livelib.o prov.o -lc livelib.o: livelib.c prov.h - cc -c livelib.c + gcc -c livelib.c prov.o: livelib.o prov.d $dtrace -G -s prov.d livelib.o @@ -66,10 +65,10 @@ prov.h: prov.d deadlib.so: deadlib.o - cc -z defs -G -o deadlib.so deadlib.o -lc + gcc -shared -o deadlib.so deadlib.o -lc deadlib.o: deadlib.c - cc -c deadlib.c + gcc -c deadlib.c clean: rm -f main.o livelib.o prov.o prov.h deadlib.o @@ -131,7 +130,7 @@ main(int argc, char **argv) } EOF -/usr/ccs/bin/make > /dev/null +make > /dev/null if [ $? -ne 0 ]; then print -u2 "failed to build" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.eliminate.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.eliminate.ksh index 687e435e3f..3d50443370 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.eliminate.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.eliminate.ksh @@ -23,7 +23,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # Make sure temporary symbols generated due to DTrace probes in static @@ -72,7 +71,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -82,7 +81,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled.ksh index ba62be75a4..47ea79f376 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -61,7 +60,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -71,7 +70,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled2.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled2.ksh index 340164847b..9b71ac2637 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled2.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.enabled2.ksh @@ -23,7 +23,6 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" # # This test is primarily intended to verify a fix for SPARC, but there's no @@ -77,7 +76,7 @@ main(int argc, char **argv) } EOF -cc -c -xO2 test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -87,7 +86,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.entryreturn.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.entryreturn.ksh index 9d2646cdf1..79e8266192 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.entryreturn.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.entryreturn.ksh @@ -23,7 +23,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -70,7 +69,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -80,7 +79,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.fork.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.fork.ksh index 9c12e6dea2..1264e3ffb6 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.fork.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.fork.ksh @@ -24,7 +24,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -71,7 +70,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -81,7 +80,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess32.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess32.ksh index 68a8d01607..59339f766c 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess32.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess32.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -61,7 +60,7 @@ main(int argc, char **argv) } EOF -cc -xarch=generic -c test.c +gcc -m32 -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -71,7 +70,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -xarch=generic -o test test.o prov.o +gcc -m32 -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess64.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess64.ksh index 39de8e0d81..e270290e7d 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess64.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.guess64.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -61,7 +60,7 @@ main(int argc, char **argv) } EOF -cc -xarch=generic64 -c test.c +gcc -m64 -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -71,7 +70,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -xarch=generic64 -o test test.o prov.o +gcc -m64 -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.header.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.header.ksh index 08a1912bae..f4679bc3f8 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.header.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.header.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -65,7 +64,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -75,7 +74,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.include.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.include.ksh index 5683f47d42..5576ab81ec 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.include.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.include.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # Make sure <unistd.h> defines _DTRACE_VERSION @@ -46,7 +45,7 @@ main(int argc, char **argv) } EOF -cc -xarch=generic -o test test.c +gcc -m32 -o test test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkpriv.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkpriv.ksh index ec07e057af..bbe1a4acc9 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkpriv.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkpriv.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -62,7 +61,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -72,7 +71,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkunpriv.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkunpriv.ksh index 01b2126c94..35d97afc48 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkunpriv.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.linkunpriv.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -64,7 +63,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -74,7 +73,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.multiple.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.multiple.ksh index 0c8b072cb0..852f5a0b3c 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.multiple.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.multiple.ksh @@ -24,7 +24,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -65,7 +64,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -75,7 +74,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.nodtrace.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.nodtrace.ksh index a911bcdfdf..c0c3465e76 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.nodtrace.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.nodtrace.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # Fake up a scenario where _DTRACE_VERSION is not defined by having our own # <unistd.h>. This tests that dtrace -h will produce a header file which can @@ -70,12 +69,12 @@ main(int argc, char **argv) } EOF -cc -I. -xarch=generic -c test.c +gcc -I. -m32 -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 fi -cc -xarch=generic -o test test.o +gcc -m32 -o test test.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreap.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreap.ksh index 0125d50b80..338dcdf03e 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreap.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreap.ksh @@ -51,7 +51,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -61,7 +61,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreapring.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreapring.ksh index 1260903467..a2e5edee38 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreapring.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.noreapring.ksh @@ -51,7 +51,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -61,7 +61,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.onlyenabled.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.onlyenabled.ksh index 989d6d32af..a1e939c883 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.onlyenabled.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.onlyenabled.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -62,7 +61,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -72,7 +71,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reap.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reap.ksh index e9b96638fc..f18c585ef6 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reap.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reap.ksh @@ -51,7 +51,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -61,7 +61,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reeval.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reeval.ksh index 7fad40156a..2f0ee33f1e 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reeval.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.reeval.ksh @@ -23,7 +23,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -52,7 +51,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -62,7 +61,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static.ksh index 1ebcdb95fd..85b0e553c4 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -63,7 +62,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -73,7 +72,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static2.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static2.ksh index 7cf9004c61..07b765702c 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static2.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.static2.ksh @@ -23,7 +23,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" # Rebuilding an object file containing DOF changes slightly when the object # files containing the probes have already been modified. This tests that @@ -67,7 +66,7 @@ provider test_prov { }; EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -83,7 +82,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create final DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.user.ksh b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.user.ksh index d5d9fdc4d3..f52c1c351e 100644 --- a/usr/src/cmd/dtrace/test/tst/common/usdt/tst.user.ksh +++ b/usr/src/cmd/dtrace/test/tst/common/usdt/tst.user.ksh @@ -24,7 +24,6 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" if [ $# != 1 ]; then echo expected one argument: '<'dtrace-path'>' @@ -62,7 +61,7 @@ main(int argc, char **argv) } EOF -cc -c test.c +gcc -c test.c if [ $? -ne 0 ]; then print -u2 "failed to compile test.c" exit 1 @@ -72,7 +71,7 @@ if [ $? -ne 0 ]; then print -u2 "failed to create DOF" exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh b/usr/src/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh index cfd7a63121..a06f44e42b 100644 --- a/usr/src/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh +++ b/usr/src/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh @@ -23,7 +23,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" # # ASSERTION: Make sure USDT probes work as tail-calls on SPARC. @@ -88,7 +87,7 @@ if [ $? -ne 0 ]; then exit 1 fi -cc -o test test.o prov.o +gcc -o test test.o prov.o if [ $? -ne 0 ]; then print -u2 "failed to link final executable" exit 1 diff --git a/usr/src/cmd/find/find.c b/usr/src/cmd/find/find.c index 6eb97a3e6d..29007bbefc 100644 --- a/usr/src/cmd/find/find.c +++ b/usr/src/cmd/find/find.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ @@ -56,6 +57,8 @@ #include <langinfo.h> #include <ftw.h> #include <libgen.h> +#include <err.h> +#include <regex.h> #include "getresponse.h" #define A_DAY (long)(60*60*24) /* a day full of seconds */ @@ -78,10 +81,12 @@ enum Command { - PRINT, DEPTH, LOCAL, MOUNT, ATIME, MTIME, CTIME, NEWER, - NAME, F_USER, F_GROUP, INUM, SIZE, LINKS, PERM, EXEC, OK, CPIO, NCPIO, - TYPE, AND, OR, NOT, LPAREN, RPAREN, CSIZE, VARARGS, FOLLOW, - PRUNE, NOUSER, NOGRP, FSTYPE, LS, XATTR, ACL, MMIN, AMIN, CMIN + PRINT, + ACL, AMIN, AND, ATIME, CMIN, CPIO, CSIZE, CTIME, DEPTH, EXEC, F_GROUP, + F_GROUPACL, F_USER, F_USERACL, FOLLOW, FSTYPE, INAME, INUM, IREGEX, + LINKS, LOCAL, LPAREN, LS, MAXDEPTH, MINDEPTH, MMIN, MOUNT, MTIME, NAME, + NCPIO, NEWER, NOGRP, NOT, NOUSER, OK, OR, PERM, PRINT0, PRUNE, REGEX, + RPAREN, SIZE, TYPE, VARARGS, XATTR }; enum Type @@ -101,44 +106,53 @@ struct Args */ static struct Args commands[] = { - "!", NOT, Op, - "(", LPAREN, Unary, - ")", RPAREN, Unary, - "-a", AND, Op, - "-amin", AMIN, Num, - "-atime", ATIME, Num, - "-cpio", CPIO, Cpio, - "-cmin", CMIN, Num, - "-ctime", CTIME, Num, - "-depth", DEPTH, Unary, - "-exec", EXEC, Exec, - "-follow", FOLLOW, Unary, + "!", NOT, Op, + "(", LPAREN, Unary, + ")", RPAREN, Unary, + "-a", AND, Op, + "-acl", ACL, Unary, + "-amin", AMIN, Num, + "-and", AND, Op, + "-atime", ATIME, Num, + "-cmin", CMIN, Num, + "-cpio", CPIO, Cpio, + "-ctime", CTIME, Num, + "-depth", DEPTH, Unary, + "-exec", EXEC, Exec, + "-follow", FOLLOW, Unary, + "-fstype", FSTYPE, Str, "-group", F_GROUP, Num, - "-inum", INUM, Num, - "-links", LINKS, Num, - "-local", LOCAL, Unary, - "-mount", MOUNT, Unary, - "-mmin", MMIN, Num, - "-mtime", MTIME, Num, - "-name", NAME, Str, - "-ncpio", NCPIO, Cpio, - "-newer", NEWER, Str, - "-o", OR, Op, - "-ok", OK, Exec, - "-perm", PERM, Num, - "-print", PRINT, Unary, - "-size", SIZE, Num, - "-type", TYPE, Num, - "-xdev", MOUNT, Unary, - "-user", F_USER, Num, - "-prune", PRUNE, Unary, - "-nouser", NOUSER, Unary, - "-nogroup", NOGRP, Unary, - "-fstype", FSTYPE, Str, - "-ls", LS, Unary, - "-xattr", XATTR, Unary, - "-acl", ACL, Unary, - NULL, 0, 0 + "-groupacl", F_GROUPACL, Num, + "-iname", INAME, Str, + "-inum", INUM, Num, + "-iregex", IREGEX, Str, + "-ls", LS, Unary, + "-maxdepth", MAXDEPTH, Num, + "-mindepth", MINDEPTH, Num, + "-mmin", MMIN, Num, + "-mount", MOUNT, Unary, + "-mtime", MTIME, Num, + "-name", NAME, Str, + "-ncpio", NCPIO, Cpio, + "-newer", NEWER, Str, + "-nogroup", NOGRP, Unary, + "-not", NOT, Op, + "-nouser", NOUSER, Unary, + "-o", OR, Op, + "-ok", OK, Exec, + "-or", OR, Op, + "-perm", PERM, Num, + "-print", PRINT, Unary, + "-print0", PRINT0, Unary, + "-prune", PRUNE, Unary, + "-regex", REGEX, Str, + "-size", SIZE, Num, + "-type", TYPE, Num, + "-user", F_USER, Num, + "-useracl", F_USERACL, Num, + "-xattr", XATTR, Unary, + "-xdev", MOUNT, Unary, + NULL, 0, 0 }; union Item @@ -220,10 +234,14 @@ static int fstype_index = 0; static int action_expression = 0; /* -print, -exec, or -ok */ static int error = 0; static int paren_cnt = 0; /* keeps track of parentheses */ +static int Eflag = 0; static int hflag = 0; static int lflag = 0; /* set when doexec()-invoked utility returns non-zero */ static int exec_exitcode = 0; +static regex_t *preg = NULL; +static int npreg = 0; +static int mindepth = -1, maxdepth = -1; extern char **environ; int @@ -246,8 +264,11 @@ main(int argc, char **argv) cmdname, strerror(errno)); exit(1); } - while ((c = getopt(argc, argv, "HL")) != -1) { + while ((c = getopt(argc, argv, "EHL")) != -1) { switch (c) { + case 'E': + Eflag = 1; + break; case 'H': hflag = 1; lflag = 0; @@ -431,6 +452,14 @@ int *actionp; exit(1); } if (argp->type == Num) { + if (((argp->action == MAXDEPTH) || + (argp->action == MINDEPTH)) && + ((int)strtol(b, (char **)NULL, + 10) < 0)) + errx(1, + gettext("%s: value must be positive"), + (argp->action == MAXDEPTH) ? + "maxdepth" : "mindepth"); if ((argp->action != PERM) || (*b != '+')) { if (*b == '+' || *b == '-') { @@ -528,14 +557,17 @@ int *actionp; break; case F_USER: - case F_GROUP: { + case F_GROUP: + case F_USERACL: + case F_GROUPACL: { struct passwd *pw; struct group *gr; long value; char *q; value = -1; - if (argp->action == F_USER) { + if (argp->action == F_USER || + argp->action == F_USERACL) { if ((pw = getpwnam(b)) != 0) value = (long)pw->pw_uid; } else { @@ -586,8 +618,31 @@ int *actionp; break; case NAME: + case INAME: np->first.cp = b; break; + case REGEX: + case IREGEX: { + int error; + size_t errlen; + char *errmsg; + + if ((preg = realloc(preg, (npreg + 1) * + sizeof (regex_t))) == NULL) + err(1, "realloc"); + if ((error = regcomp(&preg[npreg], b, + ((np->action == IREGEX) ? REG_ICASE : 0) | + ((Eflag) ? REG_EXTENDED : 0))) != 0) { + errlen = regerror(error, &preg[npreg], NULL, 0); + if ((errmsg = malloc(errlen)) == NULL) + err(1, "malloc"); + (void) regerror(error, &preg[npreg], errmsg, + errlen); + errx(1, gettext("RE error: %s"), errmsg); + } + npreg++; + break; + } case PERM: if (*b == '-') ++b; @@ -651,6 +706,7 @@ int *actionp; } /*FALLTHROUGH*/ case PRINT: + case PRINT0: (*actionp)++; break; @@ -681,6 +737,12 @@ int *actionp; break; case ACL: break; + case MAXDEPTH: + maxdepth = (int)strtol(b, (char **)NULL, 10); + break; + case MINDEPTH: + mindepth = (int)strtol(b, (char **)NULL, 10); + break; } oldnp = np++; @@ -718,7 +780,7 @@ static void usage(void) { (void) fprintf(stderr, - gettext("%s: [-H | -L] path-list predicate-list\n"), cmdname); + gettext("%s: [-E] [-H | -L] path-list predicate-list\n"), cmdname); exit(1); } @@ -740,6 +802,7 @@ struct FTW *state; long long ll; int not = 1; char *filename; + int cnpreg = 0; if (type == FTW_NS) { (void) fprintf(stderr, gettext("%s: stat() error %s: %s\n"), @@ -762,6 +825,10 @@ struct FTW *state; return (0); } + if ((maxdepth != -1 && state->level > maxdepth) || + (mindepth != -1 && state->level < mindepth)) + return (0); + while (np) { switch (np->action) { case NOT: @@ -923,8 +990,11 @@ struct FTW *state; val = 1; break; - case NAME: { + case NAME: + case INAME: { char *name1; + int fnmflags = (np->action == INAME) ? + FNM_IGNORECASE : 0; /* * basename(3c) may modify name, so @@ -943,13 +1013,10 @@ struct FTW *state; * '.' in a filename, unless '.' is explicitly * specified. */ -#ifdef XPG4 - val = !fnmatch(np->first.cp, - basename(name1), 0); -#else - val = !fnmatch(np->first.cp, - basename(name1), FNM_PERIOD); +#ifndef XPG4 + fnmflags |= FNM_PERIOD; #endif + val = !fnmatch(np->first.cp, basename(name1), fnmflags); free(name1); break; } @@ -974,7 +1041,9 @@ struct FTW *state; val = 1; break; case PRINT: - (void) fprintf(stdout, "%s\n", name); + case PRINT0: + (void) fprintf(stdout, "%s%c", name, + (np->action == PRINT) ? '\n' : '\0'); val = 1; break; case LS: @@ -996,6 +1065,60 @@ struct FTW *state; gettail(name) : name; val = acl_trivial(filename); break; + case F_USERACL: + case F_GROUPACL: { + int i; + acl_t *acl; + void *acl_entry; + aclent_t *p1; + ace_t *p2; + + filename = (walkflags & FTW_CHDIR) ? + gettail(name) : name; + val = 0; + if (acl_get(filename, 0, &acl) != 0) + break; + for (i = 0, acl_entry = acl->acl_aclp; + i != acl->acl_cnt; i++) { + if (acl->acl_type == ACLENT_T) { + p1 = (aclent_t *)acl_entry; + if (p1->a_id == np->first.l) { + val = 1; + acl_free(acl); + break; + } + } else { + p2 = (ace_t *)acl_entry; + if (p2->a_who == np->first.l) { + val = 1; + acl_free(acl); + break; + } + } + acl_entry = ((char *)acl_entry + + acl->acl_entry_size); + } + acl_free(acl); + break; + } + case IREGEX: + case REGEX: { + regmatch_t pmatch; + + val = 0; + if (regexec(&preg[cnpreg], name, 1, &pmatch, NULL) == 0) + val = ((pmatch.rm_so == 0) && + (pmatch.rm_eo == strlen(name))); + cnpreg++; + break; + } + case MAXDEPTH: + if (state->level == maxdepth && type == FTW_D) + state->quit = FTW_PRUNE; + /* FALLTHROUGH */ + case MINDEPTH: + val = 1; + break; } /* * evaluate 'val' and 'not' (exclusive-or) diff --git a/usr/src/cmd/lp/Makefile b/usr/src/cmd/lp/Makefile index 51baf75bc2..e18469f38a 100644 --- a/usr/src/cmd/lp/Makefile +++ b/usr/src/cmd/lp/Makefile @@ -23,10 +23,12 @@ # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # +# Copyright 2011 Nexenta Systems, Inc. All rights reserved. +# include ./Makefile.lp -SUBDIRS = filter crontab terminfo lib cmd model +SUBDIRS = filter crontab lib cmd model MSGSUBDIRS = filter lib cmd model diff --git a/usr/src/cmd/lp/terminfo/40.ti b/usr/src/cmd/lp/terminfo/40.ti deleted file mode 100644 index 2e08ece1ca..0000000000 --- a/usr/src/cmd/lp/terminfo/40.ti +++ /dev/null @@ -1,68 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.4 */ - -###################################################################### -# -# Entries for the AT&T Model 40 line printers -# - - - -40-80-6|att40-80-6|AT&T Model 40 line printer 80 cloumn 6 line per inch, - - daisy, - bufsz#160, - cols#80, - lines#66, - orc#1, - orhi#10, - orl#1, - orvi#6, - cps#400, - - cr=^M, - cuf1=\s, - ff=^L, - -40-80-8|att40-80-8|AT&T Model 40 line printer 80 cloumn 8 line per inch, - - lines#88, - orvi#8, - use=40-80-6, - -40-132-6|att40-132-6|AT&T Model 40 line printer 132 cloumn 6 line per inch, - - bufsz#264, - cols#132, - use=40-80-6, - -40-132-8|att40-132-8|AT&T Model 40 line printer 132 cloumn 8 line per inch, - - lines#88, - orvi#8, - use=40-132-6, - diff --git a/usr/src/cmd/lp/terminfo/44x.ti b/usr/src/cmd/lp/terminfo/44x.ti deleted file mode 100644 index d932bf441e..0000000000 --- a/usr/src/cmd/lp/terminfo/44x.ti +++ /dev/null @@ -1,57 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### -# -# Entries for the AT&T 440 seris line printers -# - - -442|att442|AT&T 442 line printer, - - bufsz#2048, - cols#132, - lines#66, - orc#1, - orhi#10, - orl#1, - orvi#6, - cps#440, - - cr=^M, - cuf1=\s, - ff=^L, - -444|att444|AT&T 444 line printer, - - use=442, - -446|att446|AT&T 446 line printer, - - cps#1100, - use=442, - diff --git a/usr/src/cmd/lp/terminfo/477.ti b/usr/src/cmd/lp/terminfo/477.ti deleted file mode 100644 index 51b808b2ce..0000000000 --- a/usr/src/cmd/lp/terminfo/477.ti +++ /dev/null @@ -1,181 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ - -###################################################################### -# -# Entries for the AT&T 477 printer -# - -# -# Basic capabilities (all emulations): -# -att477+basic1, - - bufsz#8192, - cps#80, - -###################################################################### -# -# Particular printers: -# - -477-470|att477-470|AT&T 477; 470 emulation, - - cols#136, - cpix, - - orc#10, - orhi#100, - orl#30, - orvi#180, - - csnm=%?%p1%{0}%=%tamerican%e%p1%{1}%=%tbritish%e%p1%{2}%=%tswedish%e%p1%{3}%=%tgerman%e%p1%{4}%=%tfrench%e%p1%{5}%=%titalian%e%p1%{6}%=%tspanish%;, - scs=%?%p1%{0}%=%t\EZ^O@\ED^B@%e%p1%{1}%=%t\EZ^O@\ED^C@%e%p1%{2}%=%t\EZ^O@\ED^E@%e%p1%{3}%=%t\EZ^O@\ED^D@%e%p1%{4}%=%t\EZ^O@\ED^A@%e%p1%{5}%=%t\EZ^O@\ED^F@%e%p1%{6}%=%t\EZ^O@\ED^G@%;, - - use=470, - -477ibmc|att477ibmc|AT&T 477 IBM Color printer emulation, - - cols#135, - - orc#15, - orhi#150, - - orl#10, - orvi#60, - - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\EA%p1%c\E2%; - - cpi=%?%p1%{10}%=%t^R%e%p1%{12}%=%t\E:%e%p1%{17}%=%t^O%;, - - - smglp=\EX%p1%{1}%+%c%p2%{2}%+%c, - smgt=\E4, - - - use=att477+basic1, use=Gibmc+basic, use=Gibmc+low+5x6, - use=Gibmc+color, - -477ibmg|att477ibmg|AT&T 477 IBM Graphics printer emulation, - - cols#136, - - orc#10, - orhi#100, - orl#10, - orvi#60, - - is2=\E@, - - smglp=%?%p1%{256}%<%t\El%p1%{1}%+%c, - smgrp=%?%p1%{256}%<%t\EQ%p1%{2}%+%c, - - - use=att477+basic1, use=Gibmg+basic, use=Gibmg+low, - -477qume|att477qume|477-455|att477-455|AT&T 477 qume emulation, - - - cols#136, - - - is2=\E\rP\EW\E.\EL08\EY, - - use=att477+basic1, use=Gdaisy+basic, use=Gdaisy+lowres, - -###################################################################### -# -# In Fujitsu DPL24C mode. This seems to be more like the Epson LQ-2500 -# than the IBM Proprinter XL. -# - -# -# Basic capabilities (Fujitsu emulation only): -# -att477+basic2, - - orc#18, - orhi#180, - orl#30, - orvi#180, - - -# -# The following is not redundant with the cpi capability, because -# the cpi changes the character size as well, so that printing -# looks balanced, while this leaves the character size alone. - chr=%?%p1%{256}%<%t\Eh%p1%c%;, - - - is2=\E@, - - csnm=%?%p1%{0}%=%tcharacter_set_1%e%p1%{1}%=%tcharacter_set_2%e%p1%{2}%=%tusa%e%p1%{3}%=%tfrench%e%p1%{4}%=%tgerman%e%p1%{5}%=%tuk%e%p1%{6}%=%tdanish%e%p1%{7}%=%tswedish%e%p1%{8}%=%titalian%e%p1%{9}%=%tspanish%;, - scs=%?%p1%{0}%=%t\E7%e%p1%{1}%=%t\E6%e%p1%{3}%=%t\ER0%e%p1%{3}%=%t\ER1%e%p1%{4}%=%t\ER2%e%p1%{5}%=%t\ER3%e%p1%{6}%=%t\ER4%e%p1%{7}%=%t\ER5%e%p1%{8}%=%t\ER6%e%p1%{9}%=%t\ER7%;, - - -477-5x6|att477-5x6|AT&T 477 as Fujitsu DPL24C; 5:6 aspect ratio, - - spinh#50, - -# defbi= -# Like the defbi for the epson2500, except: -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 50 dots per inch horizontally this means 5 -# dots per character. -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - -# -# Note that the epson2500 drives a real Epson LQ-2500 at -# 60 dots per inch horizontally; the same control sequences -# drive the Fujitsu DPL24C at 50 dots per inch horixontally. - use=att477+basic1, use=att477+basic2, use=Gep2500+basic, - use=Gep2500+low, use=Gep2500+color, - -477|att477|AT&T 477 as Fujitsu DPL24C; 1:1; low res, - - is1@, - -# -# This mode differs from the 5x6 mode only in sbim and defbi -# (and spinh, of course). However, it is even closer to the -# epson2500, so we use that. - - sdrfq=\EH, - snlq=\EG, - snrmq@, - - sbim=\E*\005%p1%{256}%m%c%p1%{256}%/%c, - - use=att477+basic1, use=att477+basic2, use=Gep2500+basic, - use=Gep2500+low, use=Gep2500+color, - -477-hi|att477-hi|AT&T 477 as Fujitsu DPL24C; 1:1; high res, - - use=att477+basic1, use=att477+basic2, use=Gep2500+basic, - use=Gep2500+high, use=Gep2500+color, diff --git a/usr/src/cmd/lp/terminfo/47x.ti b/usr/src/cmd/lp/terminfo/47x.ti deleted file mode 100644 index a5db8850de..0000000000 --- a/usr/src/cmd/lp/terminfo/47x.ti +++ /dev/null @@ -1,134 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Entries for the AT&T 470, 471, 473, 474, 475, 476, 478, 479 printers -# - -# -# C.Itoh derived printers: -# - -470|att470|AT&T 470; C.Itoh 8510; 8"; parallel matrix printer, - - bufsz#4096, - - cols#80, - cpix, - - sdrfq@, - snlq@, - snrmq@, - ssubm@, - ssupm@, - rsubm@, - rsupm@, - - sgr0=\E"\EY, - -# Reset command does not reset form length - - is2=\Ec1\Ev66, - - csnm=%?%p1%{0}%=%tusa%e%p1%{1}%=%tbritish%e%p1%{2}%=%tdanish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgerman%e%p1%{7}%=%tfrench%e%p1%{8}%=%tfrench2%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tnetherland%e%p1%{12}%=%tafrikaans%e%p1%{13}%=%tbritish2%;, - scs=%?%p1%{0}%=%t\EZ^O@\ED^B@%e%p1%{1}%=%t\EZ^O@\ED^C@%e%p1%{2}%=%t\EZ^O@\ED\b@%e%p1%{3}%=%t\EZ^O@%e%p1%{4}%=%t\EZ^O@\ED\t@%e%p1%{5}%=%t\EZ^O@\ED^E@%e%p1%{6}%=%t\EZ^O@\ED^D@%e%p1%{7}%=%t\EZ^O@\ED^A@%e%p1%{8}%=%t\EZ^O@\ED^N@%e%p1%{9}%=%t\EZ^O@\ED^F@%e%p1%{10}%=%t\EZ^O@\ED^G@%e%p1%{11}%=%t\EZ^O@\ED\n@%e%p1%{12}%=%t\EZ^O@\ED^K@%e%p1%{13}%=%t\ED^O@%;, - - - use=Gcitoh+basic, use=Gcitoh+low, - -471|att471|AT&T 471; C.Itoh 1550; 14"; parallel matrix printer, - - cols#136, - - use=470, - -475|att475|AT&T 475; C.Itoh 8510; 8"; serial matrix printer, - - use=470, - -476|att476|AT&T 475; C.Itoh 1550; 14"; serial matrix printer, - - use=471, - -# -# IBM derived printers: -# - -473|att473|AT&T 473; 8"; C.Itoh 8510EP; IBM Graphics, - - bufsz#4096, - cps#120, - -# -# FIX: The AT&T 473 doesn't seem to have fine-scale horizontal -# motion--the only motion is by columns. - orc#10, - orhi#100, - - - - - use=Gibmg+basic, use=Gibmg+low, - -474|att474|AT&T 474; 14"; C.Itoh 1550EP; IBM Graphics, - - cols#132, - - use=473, - -478|att478|AT&T 478; 8"; parallel matrix printer, - - bufsz#16384, - cps#120, - -# -# FIX: The AT&T 478 doesn't seem to have fine-scale horizontal -# motion--the only motion is by columns. - orc#10, - orhi#100, - - cpi=%?%p1%{10}%=%t^R%e%p1%{12}%=%t\E:%e%p1%{13}%=%p1%{14}%=%O%t\Eh%e%p1%{16}%=%p1%{17}%=%O%t\Em%e%p1%{18}%=%t^O%;, - - is2=^R\EW0\E-0\E_0\EF\EH\EI\ET\EA\014\E2\ER\El\001\Er\120\Et\001\EC\102\E7\EU0\EO, - - sdrfq=\EI^D, - snlq=\EI^B, - - smglp=\El%{1}%p1%+%c, - smgrp=\Er%{1}%p1%+%c, - smgtp=\Et%{1}%p1%+%c, - - use=Gibmg+basic, use=Gibmg+low, - -479|att479|AT&T 479; 14"; IBM parallel; matrix printer, - - cols#132, - is2=^R\EW0\E-0\E_0\EF\EH\EI\004\ET\EA\014\E2\ER\El\001\Er\204\Et\001\EC\102\E7\EU0\EO, - - - use=478, diff --git a/usr/src/cmd/lp/terminfo/495.ti b/usr/src/cmd/lp/terminfo/495.ti deleted file mode 100644 index 562c62b6be..0000000000 --- a/usr/src/cmd/lp/terminfo/495.ti +++ /dev/null @@ -1,78 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### -# -# Entries for the AT&T 495 printer -# - -495ibm|att495ibm|AT&T 495 IBM Graphics emulation, - - bufsz#1024, - cps#800, - - - orc#12, - orhi#120, - - lines#63, - - cpi=%?%p1%{10}%=%t^R%e%p1%{17}%=%t^O%;, - -# Reset defaults, enter IBM Graphics emulation mode - is2=\E[0~\E[12~, - - use=Gibmg+basic, use=Gibmg+low, - -495qume|att495qume|AT&T 495 Qume emulation, - - daisy@, - - bufsz#1024, - cps#800, - - cols#80, - lines#63, - - - chr=%?%p1%{0}%>%p1%{127}%<%&%t\E^_%p1%{1}%+%c%;, - cvr=%?%p1%{0}%>%p1%{127}%<%&%t\E^^%p1%{1}%+%c%;, - - is2=\E[0~\E[11~\E^_\r, - - u9=%?%p1%{128}%<%t\EF%p1%02d%;, - - use=Gdaisy+basic, use=Gdaisy+lowres, - -495hp|att495hp|AT&T 495 HP Laserjet I emulation, - - bufsz#1024, - cps#800, - - is2=\E[0~\E[10~\E&k0S, - - use=Ghplaser+basic, use=Ghplaser+high, diff --git a/usr/src/cmd/lp/terminfo/53x0.ti b/usr/src/cmd/lp/terminfo/53x0.ti deleted file mode 100644 index fc6fb2cef9..0000000000 --- a/usr/src/cmd/lp/terminfo/53x0.ti +++ /dev/null @@ -1,81 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Entries for the AT&T 5310, 5320 printers -# - -53x0+high, - - spinv#72, - spinh#150, - - bitwin#2, - u1=2, - -# defbi= -# X is in 1/150 increments; set char spacing to 1/16.7 -# increments to allow us to get close; column is X*16.7/150. -# Y is in 1/144 increments; set line spacing to 1/12 -# increments to allow us to get close; line is Y/12. -# Note: The 5310/5320 won't move upward with the absolute -# addressing control sequence, so we use the relative motion. -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{1500}%/%d`\E[w\E[3z\E[%p2%{12}%/%de\E[z\EP\035q%;, - defbi=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{1500}%/%d`\E[w\E[3z\E[%p2%{12}%/%de\E[z\EP\035q%;, - - use=Gdec+low, - -5320|att5320|AT&T Model 5320 printer (EMUL set to ANSI), - - bufsz#8192, - cps#120, - - -# -# FIX: The AT&T 5320 doesn't seem to have fine-scale horizontal -# motion--the only motion is by columns. - orc#10, - orhi#100, - -# -# FIX: The AT&T 5320 seems to only have half-line vertical motion -# at best. - orl#12, - orvi#72, - - - - use=53x0+high, use=Gdec+basic, use=Gdec+low, - -5310|att5310|AT&T 5310 matrix printer (EMUL set to ANSI), - - cols#80, - - use=5320, diff --git a/usr/src/cmd/lp/terminfo/57x.ti b/usr/src/cmd/lp/terminfo/57x.ti deleted file mode 100644 index 677090111e..0000000000 --- a/usr/src/cmd/lp/terminfo/57x.ti +++ /dev/null @@ -1,105 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Entries for the AT&T 570 series printers -# - -570eps|att570eps|AT&T 570 Epson emulation, - - bufsz#10000, - cps#250, - cols#80, - orl#36, - orvi#216, - - use=Gepson+basic, - use=Gepson+low, - -570ibm|att570ibm|AT&T 570 IBM ProPrinter emulation, - - bufsz#10000, - cps#250, - - use=Gibmg+basic, - use=Gibmg+low, - -571eps|att571eps|AT&T 571 Epson emulation, - - cols#136, - - use=570eps, - -571ibm|att571ibm|AT&T 571 IBM ProPrinter emulation, - - cols#136, - use=570ibm, - -572|att572|AT&T 572 9-wire Matrix Printer, - - bufsz#10000, - cps#250, - cols#80, - xhpa@, - xvpa@, - - csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tbritish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgerman%e%p1%{7}%=%tfrench%e%p1%{8}%=%tfrench_canadian%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline_drawing%e%p1%{12}%=%tdanish%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tmulti_national%;, - scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(J%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(O%e%p1%{12}%=%t\E(E%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(<%;, - - is3=\E[0"z, - - snlq=\E[2"z, - snrmq=\E[3"z, - sdrfq=\E[0"z, - sshm=\E[1m, - rshm=\E[22m, - smul=\E[4m, - rmul=\E[24m, - -# The following are not supported by 572/573 - - smgbp@, - smgtp@, - smglp@, - smgrp@, - cud@, - cuf@, - cuu1@, - hpa@, - vpa@, - nel@, - - use=Gdec+basic, - use=Gdec+low, - -573|att573|AT&T 573 9-wire Matrix Printer, - - cols#132, - - use=572, diff --git a/usr/src/cmd/lp/terminfo/58x.ti b/usr/src/cmd/lp/terminfo/58x.ti deleted file mode 100644 index bd5b65c663..0000000000 --- a/usr/src/cmd/lp/terminfo/58x.ti +++ /dev/null @@ -1,103 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Generic entry: -# - -att583+basic, - - bufsz#16384, - cps#200, - -###################################################################### -# -# Specific printers: -# - -583ibm|att583ibm|AT&T 583 as IBM Proprinter XL, - - cols#136, - is3=\EX\210, - - use=att583+basic, use=Gibmxl+basic, use=Gibmxl+low+5x6, use=Gibmc+color, - - -583ibm-80|att583ibm-80|AT&T 583 as IBM Proprinter XL;80-col, - - use=att583+basic, use=Gibmxl+basic, use=Gibmxl+low+5x6, use=Gibmc+color, - - -583eps|att583eps|AT&T 583 as Epson LQ-2500; low resolution, - - use=att583+basic, use=Gep2500+basic, use=Gep2500+low, use=Gep2500+color, - -583eps-hi|att583eps-hi|AT&T 583 as Epson LQ-2500; high resolution, - - use=att583+basic, use=Gep2500+basic, use=Gep2500+high, use=Gep2500+color, - -583eps-80|att583eps-80|AT&T 583 as Epson LQ-2500; low resolution; 80-col, - - cols#80, - use=att583+basic, use=Gep2500+basic, use=Gep2500+low, use=Gep2500+color, - -583eps-hi-80|att583eps-hi-80|AT&T 583 as Epson LQ-2500; high resolution; 80-col, - - cols#80, - use=att583+basic, use=Gep2500+basic, use=Gep2500+high, use=Gep2500+color, - - -580ibm|att580ibm|AT&T 580 as IBM Proprinter XL, - - use=att583+basic, use=Gibmxl+basic, use=Gibmxl+low+5x6, - -581ibm|att581ibm|AT&T 581 as IBM Proprinter XL, - - cols#136, - is3=\EX\210, - - use=580ibm, - - -581eps|att581eps|AT&T 581 as Epson LQ-2500; low resolution, - - use=att583+basic, use=Gep2500+basic, use=Gep2500+low, - -581eps-hi|att581eps-hi|AT&T 581 as Epson LQ-2500; high resolution, - - use=att583+basic, use=Gep2500+basic, use=Gep2500+high, - -580eps|att580eps|AT&T 580 as Epson LQ-2500; low resolution, - - cols#80, - use=att583+basic, use=Gep2500+basic, use=Gep2500+low, - -580eps-hi|att580eps-hi|AT&T 580 as Epson LQ-2500; high resolution, - - cols#80, - use=att583+basic, use=Gep2500+basic, use=Gep2500+high, diff --git a/usr/src/cmd/lp/terminfo/593.ti b/usr/src/cmd/lp/terminfo/593.ti deleted file mode 100644 index 3d2a592c47..0000000000 --- a/usr/src/cmd/lp/terminfo/593.ti +++ /dev/null @@ -1,73 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Entries for the AT&T 593 printer -# - -593eps|att593eps|AT&T 593 Epson FX86e emulation, - - bufsz#2000, - cps#480, - cols#80, - lines#62, - orl#36, - orvi#216, - -# Only letter quality for laser printer - snlq@, - snrmq@, - sdrfq@, - - use=Gep2500+basic, - use=Gepson+low, - -593ibm|att593ibm|AT&T 593 IBM ProPrinter XL emulation, - - bufsz#2000, - cps#480, - - lines#62, - -# Only letter quality for laser printer - snlq@, - sdrfq@, - - smglp=\EX%p1%{1}%+%c%p2%{1}%+%c, - - use=Gibmxl+basic, - use=Gibmxl+low+1x1, - - -593hp|att593hp|AT&T 593 HP Laserjet II emulation, - - bufsz#2000, - cps#480, - - - use=Ghplaser+II, diff --git a/usr/src/cmd/lp/terminfo/Makefile b/usr/src/cmd/lp/terminfo/Makefile deleted file mode 100644 index b94f821b6b..0000000000 --- a/usr/src/cmd/lp/terminfo/Makefile +++ /dev/null @@ -1,77 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# cmd/lp/terminfo/Makefile -# - -include ../Makefile.lp - -ROOTTERMINFO = $(ROOT)/usr/share/lib/terminfo - -TIC = tic - -SRCS = PS.ti 40.ti 477.ti 53x0.ti 593.ti daisy.ti hplaser.ti \ - 44x.ti 47x.ti 57x.ti dec.ti ibm.ti 45x.ti 495.ti \ - 58x.ti citoh.ti epson.ti unknown.ti - - -TMPSRC = terminfo.src - -DIRMODE= 755 -FILEMODE= 644 - -.KEEP_STATE: - -all : $(TMPSRC) - -$(TMPSRC) : $(SRCS) - $(RM) $@; cat $(SRCS) > $@ - -# -# Since all entries are created at once, we simply choose one of the -# target files and assume everything will be made at one time. This -# has holes (like if somebody removes P/PSR but not P/PS), but those -# are the breaks. -# -install : all $(ROOTTERMINFO) $(ROOTTERMINFO)/P/PS - -$(ROOTTERMINFO)/P/PS: $(TMPSRC) - TERMINFO=$(ROOTTERMINFO) 2>&1 $(TIC) -v $(TMPSRC) > errs - @$(ECHO) "\n`2>/dev/null cat errs|wc -l` entries have been compiled\n" - @-( 2>/dev/null cat errs|grep -iv "^mkdir"|grep -iv "^create"|grep -iv "^link"|grep -vi $(TMPSRC)|grep -vi touch|grep -vi "working"; \ - if [ $$? -ne 0 ] ; \ - then \ - $(ECHO) "\tNo errors\n"; \ - else \ - $(ECHO) "\n\tErrors can be found in `pwd`/errs\n"; \ - fi \ - ) - -$(ROOTTERMINFO) : - $(INS.dir) - -clean clobber: - $(RM) $(TMPSRC) - -strip lint : - diff --git a/usr/src/cmd/lp/terminfo/PS.ti b/usr/src/cmd/lp/terminfo/PS.ti deleted file mode 100644 index 28a83e988b..0000000000 --- a/usr/src/cmd/lp/terminfo/PS.ti +++ /dev/null @@ -1,36 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -# ident "%Z%%M% %I% %E% SMI" /* SVr4 1.1 */ - -PS|PSR|PS-b|PS-r|PS-br|Fake PostScript entry, - slines=\004, - u9=\004, - csnm=\004, - scs=\004, - cpi=null, - lpi=null, - cols#80, - lines#66, diff --git a/usr/src/cmd/lp/terminfo/citoh.ti b/usr/src/cmd/lp/terminfo/citoh.ti deleted file mode 100644 index c2b584b7c6..0000000000 --- a/usr/src/cmd/lp/terminfo/citoh.ti +++ /dev/null @@ -1,127 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### -# -# Generic entry for the C.Itoh 8510 printer and emulations: -# - -Gcitoh+basic, - -# The 8510 I use only allows 79 columns! - cols#79, - - lines#66, - it#8, - - orc#1, - orhi#10, - orl#24, - orvi#144, - - cr=\r, - cud1=\n, - cuf1=\s, - ff=\f, - ht=\t, - - cpi=%?%p1%{10}%=%t\EN%e%p1%{12}%=%t\EE%e%p1%{16}%=%p1%{17}%=%O%t\EQ%;, - cvr=%?%p1%{0}%>%p1%{100}%<%&%t\ET%p1%02d%;, - - is1=^Q^X, - is2=\Ec1\Ev66., - - smso=\E!, - rmso=\E", - smul=\EX, - rmul=\EY, - bold=\E!, - ssubm=\Es2, - rsubm=\Es0, - ssupm=\Es1, - rsupm=\Es0, - swidm=^N, - rwidm=^O, - sgr0=\E"\EY\Es0^O, - sgr=%?%p1%p6%|%t\E!%e\E"%;%?%p2%t\EX%e\EY%;, - - rep=\ER%p2%03d%p1%c, - - snlq=\Em2, - snrmq=\Em1, - sdrfq=\Em0, - - smglp=\EL%p1%03d, - smgrp=\E/%{1}%p1%+%03d, - -# slines= - u9=\Ev%p1%02d., - slines=\Ev%p1%02d., - -Gcitoh+low, - - npins#8, - spinv#68, - spinh#136, - - porder=8\,7\,6\,5\,4\,3\,2\,1;0, - - sbim=\ES%p1%04d, - -# birep= - u4=\EV%p2%04d%p3%c, - birep=\EV%p2%04d%p3%c, - - bitwin#1, - u1=1, - bitype#1, - u2=1, - -# defbi= -# Set the line spacing to 17/144 inch to get (almost) 68 dots -# per inch vertically (8 * 144/17). -# Set the character spacing to compressed (1/17 inch or 17 -# characters per inch); at 136 dots per inch horizontally this -# means 8 dots per character. -# Set the left margin at the left edge of the image. -# The C.Itoh doesn't have parameterized vertical motion, -# so we simulate it with linefeeds. Assume we never need -# to move more than 63 lines (at 17/144 LPI). -# Set uni-directional motion; bi-directional causes a wavy -# image. -# defbi= - u6=%?%p5%{1}%=%t\ET17\EQ\EL%p1%{8}%/%03d%p2%{8}%/%Py%?%gy%{31}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{32}%-%Py%;%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\E>%;, - defbi=%?%p5%{1}%=%t\ET17\EQ\EL%p1%{8}%/%03d%p2%{8}%/%Py%?%gy%{31}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{32}%-%Py%;%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\E>%;, - -# endbi= - u7=\EA\EP\EL001\E<, - endbi=\EA\EP\EL001\E<, - -# binel= - u5=\n\r\EL%p1%{8}%/%03d, - binel=\n\r\EL%p1%{8}%/%03d, - diff --git a/usr/src/cmd/lp/terminfo/daisy.ti b/usr/src/cmd/lp/terminfo/daisy.ti deleted file mode 100644 index 26c7b31d9f..0000000000 --- a/usr/src/cmd/lp/terminfo/daisy.ti +++ /dev/null @@ -1,126 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Generic entry for the daisy wheel printers and emulations: -# - -# -# Basic capabilities: -# -Gdaisy+basic, - - daisy, - - cols#132, - lines#66, - - bufsz#500, - cps#55, - orc#12, - orhi#120, - orl#8, - orvi#48, - - cr=^M, - cud1=^J, - cuf1=\s, - ff=^L, - ht=^I, - hpa=%?%p1%{100}%<%t\EC%p1%02d%e%p1%{110}%<%t\ECA%p1%{100}%-%d%e%p1%{120}%<%t\ECB%p1%{110}%-%d%e%p1%{130}%<%t\ECC%p1%{120}%-%d%e%p1%{140}%<%t\ECD%p1%{130}%-%d%e%p1%{150}%<%t\ECE%p1%{140}%-%d%e%p1%{160}%<%t\ECF%p1%{150}%-%d%;, - vpa=%?%p1%{100}%<%t\EP%p1%02d%e%p1%{110}%<%t\EPA%p1%{100}%-%d%e%p1%{120}%<%t\EPB%p1%{110}%-%d%e%p1%{130}%<%t\EPC%p1%{120}%-%d%e%p1%{140}%<%t\EPD%p1%{130}%-%d%e%p1%{150}%<%t\EPE%p1%{140}%-%d%e%p1%{160}%<%t\EPF%p1%{150}%-%d%;, - - chr=%?%p1%{100}%<%t\EE%p1%02d%e%p1%{110}%<%t\EEA%p1%{100}%-%d%e%p1%{120}%<%t\EEB%p1%{110}%-%d%e%p1%{130}%<%t\EEC%p1%{120}%-%d%e%p1%{140}%<%t\EED%p1%{130}%-%d%e%p1%{150}%<%t\EEE%p1%{140}%-%d%e%p1%{160}%<%t\EEF%p1%{150}%-%d%;, - cvr=%?%p1%{100}%<%t\EL%p1%02d%e%p1%{110}%<%t\ELA%p1%{100}%-%d%e%p1%{120}%<%t\ELB%p1%{110}%-%d%e%p1%{130}%<%t\ELC%p1%{120}%-%d%e%p1%{140}%<%t\ELD%p1%{130}%-%d%e%p1%{150}%<%t\ELE%p1%{140}%-%d%e%p1%{160}%<%t\ELF%p1%{150}%-%d%;, - - - is2=\E\015P\EW\E.\EL08\EE12\E%\E<, - - smso=\EQ, - rmso=\ER, - smul=\EI, - rmul=\EJ, - bold=\EK3, - sshm=\EQ, - rshm=\ER, - sgr0=\ER\EM\EJ, - sgr=%?%p1%t\EQ%e\ER%;%?%p2%t\EI%e\EJ%;%?%p6%t\EK3%e\EM%;, - - smgb=\E-, - smgl=\E9, - smgr=\E0, - smgt=\E+, - -# slines=, - u9=\EF%p1%02d, - -# -# Graphics capabilities: -# -Gdaisy+lowres, - -# -# We could use the graphics on/graphics off control sequences -# (ESC G/ESC 4) but for these problems: -# -# - graphics mode gets turned off when a \r is received; -# - printing a character doesn't cause motion, which -# means that each ``cell'' must be followed by a space; -# - to get the best aspect ratio, three horizontal dots -# must be sent per ``cell'' (using the ESC 3 graphics mode -# (1/60 instead of 1/120) alleviates this problem but -# gives a worse aspect ratio). -# -# So instead we set the HMI and VMI to 1/40 and 1/48 inch, -# respectively. -# - npins#1, - spinv#48, - spinh#40, - - porder=o\,o\,o\,o\,1\,1\,1\,o;32, - -# bitwin# - u1=1, -# bitype# - u2=1, - -# birep= - u4=%?%p3%{32}%=%t\EH%p2%{3}%*%Px%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c%;, - -# defbi= -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\EL01\EE03%p1%{3}%*%Px\r\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c\EV%p2%{256}%/%{64}%+%c%p2%{256}%m%{16}%/%{64}%+%c%p2%{16}%m%{64}%+%c\E>%;, - -# endbi= - u7=\EL08\EE12\E<, - -# binel= - u5=\n\r%p1%{3}%*%Px\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c, - diff --git a/usr/src/cmd/lp/terminfo/dec.ti b/usr/src/cmd/lp/terminfo/dec.ti deleted file mode 100644 index 5cc0ae6d55..0000000000 --- a/usr/src/cmd/lp/terminfo/dec.ti +++ /dev/null @@ -1,130 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### -# -# Generic entries for the various DEC printers and emulations. -# -# The Gdec+... entries are really for any ANSI X3.64 printer, -# but "ansi" is already used for terminals. It would be more -# work to do "use=ansi" because there are too many screen -# oriented caps that would have to be removed. -# - -# -# Basic capabilities: -# -Gdec+basic, - - cols#132, - lines#66, - it#8, - - cpix, - orc#1, - orhi#10, - orl#2, - orvi#12, - -# -# FIX? Are xhpa and xvpa really needed? - xhpa, - xvpa, - - cr=^M, - ff=^L, - ht=^I, - cud1=^J, - cuf1=\s, - cuu1=\EM, - cud=\E[%p1%de, - cuf=\E[%p1%da, - hpa=\E[%p1%d`, - vpa=\E[%p1%dd, - nel=\EE, - - is1=\Ec, - is2=\E[20l, - - cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, - lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, - - csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, - scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, - - sshm=\E[5m, - rshm=\E[m, - - smgtp=\E[%p1%dr, - smgbp=\E[;%p1%dr, - smglp=\E[%{1}%p1%+%ds, - smgrp=\E[;%{1}%p1%+%ds, - -# slines= - u9=\E[%p1%dt, - slines=\E[%p1%dt, - -# -# Graphics capabilities (low resolution, 6-pin): -# -Gdec+low, - - npins#6, - spinv#72, - spinh#75, - - porder=o\,o\,6\,5\,4\,3\,2\,1;63, - - bitwin#1, - u1=1, - bitype#1, - u2=1, - -# birep= - u4=!%p2%d%p3%c, - birep=!%p2%d%p3%c, - -# defbi= -# X is in 1/75 increments; set char spacing to 1/16.7 -# increments to allow us to get close; column is X*16.7/75. -# Y is in 1/72 increments; set line spacing to 1/12 -# increments to allow us to get close; line is Y/6. - u6=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP0q%;, - defbi=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP0q%;, - -# endbi= - u7=^X, - endbi=^X, - -# binel= - u5=-, - binel=-, - -# bicr= - u3=$, - bicr=$, - diff --git a/usr/src/cmd/lp/terminfo/epson.ti b/usr/src/cmd/lp/terminfo/epson.ti deleted file mode 100644 index 8beceb1e74..0000000000 --- a/usr/src/cmd/lp/terminfo/epson.ti +++ /dev/null @@ -1,301 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Epson -# - -# -# Basic capabilities: -# -Gepson+basic, - - cols#80, - lines#66, - it#8, - - cpix, - orc#6, - orhi#60, - orl#30, - orvi#180, - - cr=^M, - cud1=^J, - cuf1=\s, - cub1=\b, - ff=^L, - ht=^I, - - cpi=%?%p1%{10}%=%t^R\EP%e%p1%{12}%=%t^R\EM%e%p1%{20}%=%t^O\EM%e%p1%{17}%=%t^O\EP%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - is1=^Q^X, - is2=\E@\E%0\EO, - - csnm=%?%p1%{0}%=%tusa%e%p1%{1}%=%tfrench%e%p1%{2}%=%tgerman%e%p1%{3}%=%tbritish%e%p1%{4}%=%tdanish%e%p1%{5}%=%tswedish%e%p1%{6}%=%titalian%e%p1%{7}%=%tspanish%e%p1%{8}%=%tjapanese%e%p1%{9}%=%tnorwegian%e%p1%{10}%=%tdanish2%e%p1%{11}%=%tspanish2%e%p1%{12}%=%tlatin_american%e%p1%{13}%=%tafrikaans%e%p1%{14}%=%tdutch%e%p1%{15}%=%tfrench_canadian%e%p1%{16}%=%tfrench2%e%p1%{17}%=%tbritish2%e%p1%{18}%=%tmulti_national%e%p1%{19}%=%tibmgraphics%;, - scs=%?%p1%{0}%=%t\ER\200%e%p1%{1}%=%t\ER\001%e%p1%{2}%=%t\ER\002%e%p1%{3}%=%t\ER\003%e%p1%{4}%=%t\ER\004%e%p1%{5}%=%t\ER\005%e%p1%{6}%=%t\ER\006%e%p1%{7}%=%t\ER\007%e%p1%{8}%=%t\ER\010%e%p1%{9}%=%t\ER\011%e%p1%{10}%=%t\ER\012%e%p1%{11}%=%t\ER\013%e%p1%{12}%=%t\ER\014%e%p1%{13}%=%t\ER\100%e%p1%{14}%=%t\ERA%e%p1%{15}%=%t\ERB%e%p1%{16}%=%t\ERC%e%p1%{17}%=%t\ERD%e%p1%{18}%=%t\E6%e%p1%{19}%=%t\Et1%;, - - smso=\EE, - rmso=\EF, - smul=\E-1, - rmul=\E-0, - bold=\EG, - sshm=\EE, - rshm=\EF, - ssubm=\ES1, - rsubm=\ET, - ssupm=\ES0, - rsupm=\ET, - swidm=\EW1, - rwidm=\EW0, - sitm=\E4, - ritm=\E5, - sgr0=\EF\E-0\EH\ET\EW0\E5, - sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;, - -# -# For now we can't set the margin in the first (0th) column -# due to limitations in the Curses code. This should be changed -# in the future. For now, shift right 1. Note that the right -# margin is the last USEABLE column in Terminfo, but is 1 -# PAST that for the Epson. - smglp=%?%p1%{256}%<%t\El%p1%{1}%+%c%;, - smgrp=%?%p1%{256}%<%t\EQ%p1%{2}%+%c%;, - -# slines= u9 used for svr3.2 - u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%d%;, - - sdrfq=\Ex0, - snlq=\Ex1, - snrmq=\Ek1, - -# -# Graphics capabilities: -# -Gepson+low, - - npins#8, - spinv#60, - spinh#60, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, - -# u1 - u8 used for svr3.2 - bitwin#1, - u1=1, - bitype#1, - u2=1, - -# defbi= -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 60 dots per inch vertically (7.5 lines/" * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - -# endbi= - u7=\E3\036, - endbi=\E3\036, - -# binel= - u5=\n\r\t, - binel=\n\r\t, - -# bicr= - u3=\r\t, - bicr=\r\t, - -###################################################################### -# -# Epson LQ-2500 -# - -# -# Basic capabilities: -# -Gep2500+basic, - - cols#136, - lines#66, - it#8, - - cpix, - orc#6, - orhi#60, - orl#30, - orvi#180, - - cr=^M, - cud1=^J, - cuf1=\s, - cub1=\b, - ff=^L, - ht=^I, - - cpi=%?%p1%{10}%=%t^R\EP%e%p1%{12}%=%t^R\EM%e%p1%{20}%=%t^O\EM%e%p1%{17}%=%t^O\EP%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - is1=^Q^X, - is2=\E@\E%0\EO, - - - csnm=%?%p1%{0}%=%tusa%e%p1%{1}%=%tfrench%e%p1%{2}%=%tgerman%e%p1%{3}%=%tbritish%e%p1%{4}%=%tdanish%e%p1%{5}%=%tswedish%e%p1%{6}%=%titalian%e%p1%{7}%=%tspanish%e%p1%{8}%=%tjapanese%e%p1%{9}%=%tnorwegian%e%p1%{10}%=%tdanish2%e%p1%{11}%=%tspanish2%e%p1%{12}%=%tlatin_american%e%p1%{13}%=%tibmgraphics%;, - scs=%?%p1%{0}%=%t\ER\200%e%p1%{1}%=%t\ER\001%e%p1%{2}%=%t\ER\002%e%p1%{3}%=%t\ER\003%e%p1%{4}%=%t\ER\004%e%p1%{5}%=%t\ER\005%e%p1%{6}%=%t\ER\006%e%p1%{7}%=%t\ER\007%e%p1%{8}%=%t\ER\010%e%p1%{9}%=%t\ER\011%e%p1%{10}%=%t\ER\012%e%p1%{11}%=%t\ER\013%e%p1%{12}%=%t\ER\014%e%p1%{13}%=%t\Et1%;, - - smso=\EE, - rmso=\EF, - smul=\E-1, - rmul=\E-0, - bold=\EG, - sshm=\EE, - rshm=\EF, - ssubm=\ES1, - rsubm=\ET, - ssupm=\ES0, - rsupm=\ET, - swidm=\EW1, - rwidm=\EW0, - sitm=\E4, - ritm=\E5, - sgr0=\EF\E-0\EH\ET\EW0\E5, - sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;, - -# -# For now we can't set the margin in the first (0th) column -# due to limitations in the Curses code. This should be changed -# in the future. For now, shift right 1. Note that the right -# margin is the last USEABLE column in Terminfo, but is 1 -# PAST that for the Epson. - smglp=%?%p1%{256}%<%t\El%p1%{1}%+%c%;, - smgrp=%?%p1%{256}%<%t\EQ%p1%{2}%+%c%;, - -# slines= - u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - - sdrfq=\Ex0, - snlq=\Ex1, - snrmq=\Ek1, - -# -# Graphics capabilities: -# -Gep2500+low, - - npins#8, - spinv#60, - spinh#60, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, - - bitwin#1, - u1=1, - bitype#1, - u2=1, - -# defbi= -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 60 dots per inch vertically (7.5 lines/" * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - -# endbi= - u7=\E3\036, - endbi=\E3\036, - -# binel= - u5=\n\r\t, - binel=\n\r\t, - -# bicr= - u3=\r\t, - bicr=\r\t, - -# -# Graphics capabilities: -# -Gep2500+high, - - npins#24, - spinv#180, - spinh#180, - - porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, - - sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, - -# defbi= -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 180 dots per inch horizontally this means 18 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - - use=Gep2500+low, - -# -# Color capability: -# -Gep2500+color, - - colors#3, - -# setcolor= - initc=%?%p1%{0}%=%t\Er0%;%?%p1%{1}%=%t\Er2%;%?%p1%{2}%=%t\Er1%;%?%p1%{3}%=%t\Er4%;, - -# colornm= - u8=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - diff --git a/usr/src/cmd/lp/terminfo/hplaser.ti b/usr/src/cmd/lp/terminfo/hplaser.ti deleted file mode 100644 index 4d887f99ab..0000000000 --- a/usr/src/cmd/lp/terminfo/hplaser.ti +++ /dev/null @@ -1,122 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ - -###################################################################### -# -# Generic entry for the HP Laserjet printers and emulations: -# - -# -# Basic capabilities: -# -Ghplaser+basic, - - cols#80, - lines#60, - - orc#12, - orhi#120, - orl#8, - orvi#48, - - cr=^M, - cud1=^J, - cuf1=\s, - cud=\E&a+%p1%dR, - cuf=\E&a+%p1%dC, - ff=^L, - hpa=\E&a%p1%dC, - vpa=\E&a%p1%dR, - - cpi=%?%p1%{10}%=%t\E&k0S%e%p1%{17}%=%t\E&k2S%;, - chr=%?%p1%{0}%>%p1%{127}%<%t\E&k%p1%dH%;, - cvr=%?%p1%{0}%>%p1%{127}%<%t\E&l%p1%dC%;, - lpi=%?%p1%{1}%=%t\E&l1D%e%p1%{2}%=%t\E&l2D%e%p1%{3}%=%t\E&l3D%e%p1%{4}%=%t\E&l4D%e%p1%{6}%=%t\E&l6D%e%p1%{8}%=%t\E&l8D%e%p1%{12}%=%t\E&l12D%e%p1%{16}%=%t\E&l16D%e%p1%{24}%=%t\E&l24D%e%p1%{48}%=%t\E&l48D%;, - - is2=\EE\E&k0G, - mgc=\E9, - - rmul=\E&d\100, - ritm=\E(s0S, - smul=\E&dD, - sitm=\E(s1S, - smgtp=\E&l%p1%{1}%+%dE, - smgbp=\E&l%p1%{1}%+%dF, - smglp=\E&a%p1%dL, - smgrp=\E&a%p1%dM, - -#Set top margin at +2 offset - smgtp=\E&l%p1%dE, - -#Set page length u9 used for 3.2 slines for 4.0 - u9=\E&l%p1P, - slines=\E&l%p1%dF, - -# -# Graphics capabilities: -# -Ghplaser+high, - - npins#8, - spinv#300, - spinh#300, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\E*b%p1%dW, - -# u1 - u7 used for svr3.2 -# bitwin#, - u1=1, - bitwin#1, -# bitype# - u2=2, - bitype#2, - -# defbi= -# X (or Y) * scale * 12/5 == pos in decipoints (12/5 == 720/300) - u6=%?%p5%{0}%>%p5%{5}%<%&%t\E&a%p1%p5%*%{12}%*%{5}%/%dH\E&a%p2%p5%*%{12}%*%{5}%/%dV\E*t%{300}%p5%/%dR\E*r1A%;, - defbi=%?%p5%{0}%>%p5%{5}%<%&%t\E&a%p1%p5%*%{12}%*%{5}%/%dH\E&a%p2%p5%*%{12}%*%{5}%/%dV\E*t%{300}%p5%/%dR\E*r1A%;, - -# endbi= - u7=\E*rB, - endbi=\E*rB, - -Ghplaser+II, - - cpi=%?%p1%{10}%=%t\E(s10H%e%p1%{16}%=%p1%{17}%=%O%t\E(s16.66H%e%;, - - csnm=%?%p1%{0}%=%troman-8%e%p1%{1}%=%tibm-us%e%p1%{2}%=%tibm-dn%e%p1%{3}%=%tgerman%e%p1%{4}%=%tspanish%e%p1%{5}%=%tecma-94%e%p1%{6}%=%tiso2%e%p1%{7}%=%tiso4%e%p1%{8}%=%tiso6%e%p1%{9}%=%tiso10%e%p1%{10}%=%tiso11%e%p1%{11}%=%tiso14%e%p1%{12}%=%tiso15%e%p1%{13}%=%tiso16%e%p1%{14}%=%tiso17%e%p1%{15}%=%tiso21%e%p1%{16}%=%tiso25%e%p1%{17}%=%tiso57%e%p1%{18}%=%tiso60%e%p1%{19}%=%tiso61%e%p1%{20}%=%tiso69%e%p1%{21}%=%tiso84%e%p1%{22}%=%tiso85%;, - - scs=%?%p1%{0}%=%t\E(8U%e%p1%{1}%=%t\E(10U%e%p1%{2}%=%t\E(11U%e%p1%{3}%=%t\E(0G%e%p1%{4}%=%t\E(1S%e%p1%{5}%=%t\E(0N%e%p1%{6}%=%t\E(2U%e%p1%{7}%=%t\E(1E%e%p1%{8}%=%t\E(0U%e%p1%{9}%=%t\E(3S%e%p1%{10}%=%t\E(0S%e%p1%{11}%=%t\E(0K%e%p1%{12}%=%t\E(0I%e%p1%{13}%=%t\E(4S%e%p1%{14}%=%t\E(2S%e%p1%{15}%=%t\E(1G%e%p1%{16}%=%t\E(0F%e%p1%{17}%=%t\E(2K%e%p1%{18}%=%t\E(0D%e%p1%{19}%=%t\E(1D%e%p1%{20}%=%t\E(1F%e%p1%{21}%=%t\E(5S%e%p1%{22}%=%t\E(6S%;, - - use=Ghplaser+basic, use=Ghplaser+high, - diff --git a/usr/src/cmd/lp/terminfo/ibm.ti b/usr/src/cmd/lp/terminfo/ibm.ti deleted file mode 100644 index e58aca21eb..0000000000 --- a/usr/src/cmd/lp/terminfo/ibm.ti +++ /dev/null @@ -1,353 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ - -###################################################################### -# -# Generic entries for the various IBM printers and emulations. -# - -################################### -# -# IBM Graphics -# - -# -# Basic capabilities: -# -Gibmg+basic, - - cols#80, - lines#66, - it#8, - - cpix, - orc#1, - orhi#10, - orl#12, - orvi#72, - - cr=^M, - ff=^L, - ht=^I, - cud1=^J, - cuf1=\s, - - cpi=%?%p1%{10}%=%t^R%e%p1%{16}%=%p1%{17}%=%O%t^O%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\EA%p1%c\E2%;, - - is1=^X, - is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO\ECB, - - csnm=%?%p1%{0}%=%tcharacter_set_1%e%p1%{1}%=%tcharacter_set_2%;, - scs=%?%p1%{0}%=%t\E7%e%p1%{2}%=%t\E6%;, - - smso=\EE, - rmso=\EF, - smul=\E-1, - rmul=\E-0, - bold=\EG, - smacs=\E6, - rmacs=\E7, - sshm=\EE, - rshm=\EF, - ssubm=\ES1, - rsubm=\ET, - ssupm=\ES0, - rsupm=\ET, - swidm=\EW1, - rwidm=\EW0, - sgr0=\EF\E-0\EH\E7\ET\EW0, - sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;%?%p9%t\E6%e\E7%;, - sdrfq=\EH, - snlq=\EG, - -# slines= u9 used for svr3.2 - u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - -# -# Graphics capabilities (low resolution, 9-pin): -# -Gibmg+low, - - npins#8, - spinv#72, - spinh#60, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, - - bitwin#1, - u1=1, - bitype#1, - u2=1, - -# defbi= -# Set the line spacing to 8/72 inch (9 lines per inch) -# to get 72 dots per inch vertically (9 lines/inch * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# The IBM Graphics doesn't have parameterized motion, -# so we simulate it with linefeeds and spaces. -# Assume we never need to move across more than 63 colums -# or down more than 31 lines. -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\EA\010\E2^R%p2%{8}%/%Py%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;%;, - defbi=%?%p5%{1}%=%t\EA\010\E2^R%p2%{8}%/%Py%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;%;, - -# endbi= - u7=\EA\014\E2, - endbi=\EA\014\E2, - -# binel= - u5=\n\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - binel=\n\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - -# bicr= - u3=\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - bicr=\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - -################################### -# -# IBM Color -# - -# -# Basic capabilities: -# -Gibmc+basic, - - cub1=\b, - - is1=^Q^X, - is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO\ER\E50\EM0\EX^A\210\Eb\ECB, - - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - smglp=\EX%p1%{1}%+%c%p2%{1}%+%c, - - use=Gibmg+basic, - -# -# Graphics capabilities (low resolution, 9-pin, 5:6 aspect ratio): -# -Gibmc+low+5x6, - - spinv#84, - spinh#70, - -# defbi= -# Set 5:6 aspect ratio. -# Set the line spacing to 7/72 inch (10.29 lines per inch) -# to get approximately 84 dots per inch vertically -# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 70 dots per inch horizontally this means 7 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\En^B\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{7}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\En^B\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{7}%/%c$<>\013\r\t%;, - -# binel= - u5=\n\r\t, - binel=\n\r\t, - -# bicr= - u3=\r\t, - bicr=\r\t, - - use=Gibmg+low, - -# -# Graphics capabilities (low resolution, 9-pin, 1:1 aspect ratio): -# -Gibmc+low+1x1, - - spinh#84, - -# defbi= -# Set 1:1 aspect ratio. -# Set the line spacing to 7/72 inch (10.29 lines per inch) -# to get approximately 84 dots per inch vertically -# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 84 dots per inch horizontally this means 8.4 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\En^A\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{10}%*%{84}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\En^A\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{10}%*%{84}%/%c$<>\013\r\t%;, - - use=Gibmc+low+5x6, - -# -# Color capability: -# -Gibmc+color, - - colors#3, - -# setcolor= - initc=%?%p1%{0}%=%t\Eb%;%?%p1%{1}%=%t\Ec%;%?%p1%{2}%=%t\Em%;%?%p1%{3}%=%t\Ey%;, - -# colornm= - u8=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - -################################### -# -# IBM Proprinter XL: -# -# This printer appears to be a superset of the IBM Graphics -# and IBM Color printers, with a 24-wire printhead. The entry -# below uses the full capabilities of the superset and printhead. -# The printer has an Alternate Graphics Mode (AGM) that changes -# the vertical resolution from 1/216" to 1/180", and the graphics -# aspect ratio from 5:6 to 1:1. HOWEVER, there does not appear to -# be a control sequence that switches into this mode--it must be -# done by hand! -# - -# -# Basic capabilities (printer not in AGM): -# -Gibmxl+basic, - - orc#12, - orhi#120, - orl#36, - orvi#216, - - cub1=\b, - - cpi=%?%p1%{10}%=%t^R%e%p1%{12}%=%t\E:%e%p1%{17}%=%t^O%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - is1=^Q^X, - is2=^R\EP0\EA\014\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, - is3=\EX\001\120, - - smglp=\EX%p1%{1}%+%c%p2%{1}%+%c, - - use=Gibmg+basic, - -# -# Basic capabilities (printer in AGM): -# -Gibmxlagm+basic, - - orl#30, - orvi#180, - - is2=^R\EP0\EA\012\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, - - use=Gibmxl+basic, - -# -# Graphics capabilities (low resolution, 8-pin, 5:6 aspect ratio): -# -Gibmxl+low+5x6, - - spinv#72, - spinh#60, - -# defbi= -# Set the line spacing to 8/72 inch (9 lines per inch) -# to get 72 dots per inch vertically (9 lines/" * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - - use=Gibmc+low+5x6, - -# -# Graphics capabilities (low resolution, 8-pin, 1:1 aspect ratio): -# -Gibmxl+low+1x1, - - spinv#60, - -# In AGM the "defbi" cap from Gibmxl+low+5x6 will work. The -# line spacing will be 8/60 inch to get 60 dots per inch, using -# the same control sequence. - - use=Gibmxl+low+5x6, - -# -# Graphics capabilities (high resolution, 24-pin, 5:6 aspect ratio): -# -# This doesn't work as the pin spacing doesn't get set to -# 1/216 inch, but stays at 1/180 inch, even out of AGM. -# - -# -# Graphics capabilities (high resolution, 24-pin, 1:1 aspect ratio): -# -Gibmxl+high+1x1, - - npins#24, - spinv#180, - spinh#180, - - porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, - - sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, - -# defbi= -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). -# This requires the printer or emulation in Alternate Graphics Mode. -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 180 dots per inch horizontally this means 18 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - u6=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - - use=Gibmc+low+5x6, - diff --git a/usr/src/cmd/lp/terminfo/unknown.ti b/usr/src/cmd/lp/terminfo/unknown.ti deleted file mode 100644 index 85f95a606e..0000000000 --- a/usr/src/cmd/lp/terminfo/unknown.ti +++ /dev/null @@ -1,30 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1 */ -unknown, - am, gn, - cols#80, - bel=^G, cr=\r, cud1=\n, ind=\n, diff --git a/usr/src/cmd/mdb/Makefile.kmdb b/usr/src/cmd/mdb/Makefile.kmdb index bff02e2cb2..7532739aee 100644 --- a/usr/src/cmd/mdb/Makefile.kmdb +++ b/usr/src/cmd/mdb/Makefile.kmdb @@ -22,6 +22,8 @@ # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # +# Copyright 2011 Nexenta Systems, Inc. All rights reserved. +# .KEEP_STATE: .SUFFIXES: @@ -67,7 +69,6 @@ SUBDIR64 = $(SUBDIR64_$(MACH)) SUPPORTED_TERMS = \ ansi \ at386 \ - AT386 \ dtterm \ h19 \ sun \ diff --git a/usr/src/cmd/nscd/nscd_getentctx.c b/usr/src/cmd/nscd/nscd_getentctx.c index ccf5b79aa0..2fed9a5c82 100644 --- a/usr/src/cmd/nscd/nscd_getentctx.c +++ b/usr/src/cmd/nscd/nscd_getentctx.c @@ -23,11 +23,14 @@ * Use is subject to license terms. */ +#include <sys/ccompile.h> + #include <stdlib.h> #include <assert.h> #include <string.h> #include <errno.h> #include <fcntl.h> + #include "nscd_db.h" #include "nscd_log.h" #include "nscd_switch.h" diff --git a/usr/src/cmd/rpcbind/rpcbind.c b/usr/src/cmd/rpcbind/rpcbind.c index d9dcd1554a..c6016cae92 100644 --- a/usr/src/cmd/rpcbind/rpcbind.c +++ b/usr/src/cmd/rpcbind/rpcbind.c @@ -73,6 +73,7 @@ #include <rpcsvc/daemon_utils.h> #include <priv_utils.h> #include <libscf.h> +#include <sys/ccompile.h> #ifdef PORTMAP extern void pmap_service(struct svc_req *, SVCXPRT *xprt); diff --git a/usr/src/cmd/terminfo/Doc.sed b/usr/src/cmd/terminfo/Doc.sed deleted file mode 100644 index 59bc237187..0000000000 --- a/usr/src/cmd/terminfo/Doc.sed +++ /dev/null @@ -1,48 +0,0 @@ -#ident "%Z%%M% %I% %E% SMI" SVr4.0 1.4 -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# From: SVr4.0 terminfo:Doc.sed 1.4 - -# -# This script is used to strip info from the terminfo -# source files. -# -sed -n ' - /^# \{1,\}Manufacturer:[ ]*\(.*\)/s//.M \1/p - /^# \{1,\}Class:[ ]*\(.*\)/s//.C \1/p - /^# \{1,\}Author:[ ]*\(.*\)/s//.A \1/p - /^# \{1,\}Info:[ ]*/,/^[^#][^ ]/ { - s/^# *Info:/.I/p - /^#[ ]\{1,\}/ { - s/#//p - } - /^#$/ i\ -.IE - } - /^\([^# ][^ ]*\)|\([^|,]*\),[ ]*$/ { - s//Terminal:\ - "\2"\ - \1/ - s/|/, /g - p - } -' $* diff --git a/usr/src/cmd/terminfo/Makefile b/usr/src/cmd/terminfo/Makefile index 553f2ea947..18f8296581 100644 --- a/usr/src/cmd/terminfo/Makefile +++ b/usr/src/cmd/terminfo/Makefile @@ -21,36 +21,24 @@ # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # +# Copyright 2011 Nexenta Systems, Inc. All rights reserved. +# -PROG= terminfo - -TABSETSRC= \ - 3101 beehive hds hds3 std stdcrt teleray vt100 wyse-adds xerox1720 - -TXTS= Doc.sed README ckout cvt.ex cvt.sed $(TABSETSRCS) termcap - -TISRC= adds.ti annarbor.ti ansi.ti att.ti beehive.ti \ - cdc.ti colorscan.ti datamedia.ti dec.ti diablo.ti \ - fortune.ti general.ti hardcopy.ti hazeltine.ti hds.ti \ - heath.ti homebrew.ti hp.ti lsi.ti microterm.ti \ - misc.ti pc.ti perkinelmer.ti print.ti screen.ti special.ti \ - sperry.ti tektronix.ti teleray.ti televideo.ti ti.ti \ - tymshare.ti visual.ti wyse.ti - -PARTS= header $(TISRC) trailer +PROG= terminfo +TABSETSRC= 3101 beehive hds hds3 std stdcrt teleray vt100 wyse-adds xerox1720 +TERMCAPSRC= termcap.src +TERMINFOSRC= terminfo.src -include ../Makefile.cmd +include ../Makefile.cmd -DIRMODE= 0755 FILEMODE= 0644 -TIC= tic -CAT= /usr/bin/cat -ECHO= echo + +TIC= /usr/bin/tic ROOTSHARELIBDIR = $(ROOT)/usr/share/lib ROOTTABDIR = $(ROOTSHARELIBDIR)/tabset ROOTTERMDIR = $(ROOTSHARELIBDIR)/terminfo -DIRS= $(ROOTTERMDIR) $(ROOTTABDIR) +DIRS = $(ROOTTERMDIR) $(ROOTTABDIR) ROOTSYMLINK = $(ROOTETC)/termcap RELROOTETC = ../usr/share/lib @@ -59,51 +47,34 @@ RELROOTLIB = ../share/lib ROOTTABSET = $(TABSETSRC:%=$(ROOTTABDIR)/%) -$(ROOTTABDIR)/% : tabset/% - $(INS.file) - -$(ROOTSHARELIBDIR)/% : % - $(INS.file) +$(ROOTTABDIR)/%: tabset/% + $(INS.file) .KEEP_STATE: -all: $(PROG).src $(TXTS) +all: $(TERMCAPSRC) $(TERMINFOSRC) $(DIRS): - $(INS.dir) - -$(PROG).src: $(PARTS) - @$(CAT) $(PARTS) > $(PROG).src - -$(ROOTTERMDIR)/s/sun: $(PROG).src - TERMINFO=$(ROOTTERMDIR) 2>&1 $(TIC) -v $(PROG).src > errs - @$(ECHO) "\n`2>/dev/null cat errs|wc -l` entries have been compiled\n" - @-( 2>/dev/null cat errs|grep -iv "^mkdir"|grep -iv "^create"|grep -iv "^link"|grep -vi terminfo.src|grep -vi touch|grep -vi "working"; \ - if [ $$? -ne 0 ] ; \ - then \ - $(ECHO) "\tNo errors\n"; \ - else \ - $(ECHO) "\n\tErrors can be found in `pwd`/errs\n"; \ - fi \ - ) + $(INS.dir) + +$(ROOTTERMDIR)/s/sun: $(TERMINFOSRC) + TERMINFO=$(ROOTTERMDIR) $(TIC) $(TERMINFOSRC) 2>/dev/null + +$(ROOTSHARELIBDIR)/termcap: + $(EGREP) -v '^(#|$$)' $(TERMCAPSRC) > $@ -# -# Note that order is significant here. $(ROOTTERMDIR)/s/sun will set the -# entire subtree to ownership root/bin. -# install: all $(ROOTTERMDIR) $(ROOTTERMDIR)/s/sun $(ROOTTABDIR) \ $(ROOTTABSET) $(ROOTSHARELIBDIR)/termcap $(ROOTSYMLINK) \ $(ROOTLIBSYMLINK) $(ROOTSYMLINK): - -$(RM) $@; $(SYMLINK) $(RELROOTETC)/termcap $@ + $(RM) $@; $(SYMLINK) $(RELROOTETC)/termcap $@ $(ROOTLIBSYMLINK): - -$(RM) $@; $(SYMLINK) $(RELROOTLIB)/tabset $@ + $(RM) $@; $(SYMLINK) $(RELROOTLIB)/tabset $@ lint: clean: - $(RM) $(PROG).src errs -clobber: clean +clobber: diff --git a/usr/src/cmd/terminfo/README b/usr/src/cmd/terminfo/README deleted file mode 100644 index d8ff9e070e..0000000000 --- a/usr/src/cmd/terminfo/README +++ /dev/null @@ -1,170 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" SVr4.0 1.6 -# From: SVr4.0 terminfo:README 1.6 - - -1 Within the curses component, exists other conversion tools which are - much more robust than those described below. They are called infocmp, - and captoinfo. The cvt files are provided here only for those possible - cases where a user has the terminfo component without the libcurses - component. - - The captoinfo and infocmp utilities cannot be included here, as they - require the user to have libcurses. Although we know of no instance - when a user would have one and not the other, we have provided the - cvt files (described below) for those limited cases. - - - -2 The files in this directory with the .ti suffix are terminfo sources. - They should be compiled (separately or by catting them together into - terminfo.src) with tic, placing the results in /usr/lib/terminfo. - Please send any updates to AT&T Bell Laboratories UNIX support, - via UNIX mail to attunix!terminfo. - - - -3 The cvt files are useful tools for converting termcap to terminfo. - They are not 100% accurate, but do most of the conversion for you. - cvt.ex is an ex script to convert a termcap description into a - terminfo description. Note that it will not convert padding - specifications, so they must be done by hand. Note also that typical - termcap entries do not give as much information as terminfo, so the - resulting terminfo entry is often incomplete (e.g. won't tell you the - terminal uses xon/xoff handshaking, or what extra function keys send). - You are urged to read the list of terminfo capabilities and augment your - terminfo descriptions accordingly. - - The cvt.h file is useful for a quick hack at converting termcap programs - which use uppercase 2 letter names for capabilities to use terminfo. - Since tget* are provided anyway, this is of questionable value unless - your program barely fits on a pdp-11. - - The cvt.sed script is useful for actually editing the source of the same - class of programs. It requires a sed that understands \< and \>, the - mod is trivial to make if you look at the corresponding code in ex or - grep. - - - -3 There are other incompatibilities at the user level between termcap and - terminfo. A program which creates a termcap description and then - passes it to tgetent (e.g. vi used to do this if no TERM was set) or - which puts such a description in the environment for a child cannot - possibly work, since terminfo puts the parser into the compiler, not - the user program. If you want to give a child a smaller window, set - up the LINES and COLUMNS environment variables or implement the JWINSIZE - ioctl. - - - -4 If you want to edit your own personal terminfo descriptions (and are not - a super user on your system) the method is different. Set - TERMINFO=$HOME/term (or wherever you put the compiled tree) in your - environment, then compile your source with tic. Tic and user programs - will check in $TERMINFO before looking in /usr/lib/terminfo/*/* - - - -5 Philosophy in adding new terminfo capabilities: - - Capabilities were cheap in termcap, since no code supported them - and they need only be documented. In terminfo, they add size to - the structure and the binaries, so don't add them in mass quantities. - - Add a capability only if there is an application that wants to use it. - Lots of terminals have a half duplex forms editing mode, but no UNIX - applications use it, so we don't include it. - - Before you add a capability, try to hold off until there are at least - 2 or 3 different terminals implementing similar features. That way, - you can get a better idea of the general model that the capability - should have, rather than coming up with something that only works - on one kind of terminal. For example, the status line capabilities - were added after we had seen the h19, the tvi950, and the vt100 run - sysline. The original program, called h19sys, only worked on an h19 - and addressed the cursor to line 25. This model doesn't fit other - terminals with a status line. - - Note that capabilities must be added at the end of ../screen/caps. - Furthermore, if you add a private capability, you should check with - someone to make sure your capability goes into the master file, - otherwise someone else will add a different capability and - compatibility between two systems is destroyed. There must be one - master set of capabilities. This list is maintained at AT&T UNIX - Development. Comments should be sent to attunix!terminfo. - - - -6 Current murky areas include: - - Color - there is demand for colors but it isn't clear what to do yet. - Some terminals support only 2 or 4 or 8 or 16 colors, others have a - palette of some huge selection. What are the standard colors? How - does graphics fit into this (terminfo is alphanumeric oriented?) - Curses can have another 16 bits added, or some routine set to decide - which 9 attribute bits have meaning in any given program. An - alternative is that if you just want color alphanumerics for a simple - application, e.g. highlighting certain fields, decide how you would - want your application to behave on a B/W terminal (e.g. a vt100), - using reverse for one thing, blinking for another, bold for another, - invisible for another, etc. - (Invis may be useful for colored fields with no information in them.) - Then make a terminfo entry with blink=xxx, bold=yyy, etc, where xxx - and yyy are sequences to go into the colors you really want. This way - your application also works on B/W terminals. - - Graphics: Giles Billingsley at Berkeley did something called MFBCAP - once, it was like termcap but 3 times as big and handled graphics. - I don't think it was ever finished. I don't know how to do graphics - in curses, one might add it to terminfo at very high cost. - - Input: things that send escape sequences to your program to be decoded - are a hard issue. You have to somehow deal with typeahead and with - terminals that can't do it. This includes "request cursor position", - for which a better solution is to immediately address the cursor to - a known position. (Curses also has filter mode that won't assume - the line but will assume the column.) Mice also fall into this - category. Scanf style strings (tparm is printf style) might be able - to decode these sequences, but I have no experience with them. - - Alternate character set: the vt100 set seems to be becoming a defacto - standard, although it doesn't do much. I almost standardized on the - Teletype 5410, which was a nice superset of the vt100, but then Teletype - updated the 5410 to make it a vt100 duplicate, so now all I've put in - are the vt100 line drawing characters. HP has a more complete set, - but it has some really weird things in it and the mappings are - nonstandard. - Any extension should be able to handle both kinds of terminals, and - handle common programs without assuming an HP (or even a vt100). - - ------------------------------------ - - -7 Additional modules: - - ckout shell script, analyzes file errs for diagnostics - and displays number of entries built - - Doc.sed sed script to be run on ti files. - prints documentation of ti files. diff --git a/usr/src/cmd/terminfo/THIRDPARTYLICENSE b/usr/src/cmd/terminfo/THIRDPARTYLICENSE index 4dedd9d2a7..5656404c5f 100644 --- a/usr/src/cmd/terminfo/THIRDPARTYLICENSE +++ b/usr/src/cmd/terminfo/THIRDPARTYLICENSE @@ -1,32 +1,27 @@ -Copyright (c) 1980 Regents of the University of California. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - 3. All advertising materials mentioning features or use of this - software must display the following acknowledgement: - This product includes software developed by the University - of California, Berkeley and its contributors. - 4. Neither the name of the University nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +############################################################################## +# Copyright (c) 1998-2008,2010,2011 Free Software Foundation, Inc. # +# # +# Permission is hereby granted, free of charge, to any person obtaining a # +# copy of this software and associated documentation files (the "Software"), # +# to deal in the Software without restriction, including without limitation # +# the rights to use, copy, modify, merge, publish, distribute, distribute # +# with modifications, sublicense, and/or sell copies of the Software, and to # +# permit persons to whom the Software is furnished to do so, subject to the # +# following conditions: # +# # +# The above copyright notice and this permission notice shall be included in # +# all copies or substantial portions of the Software. # +# # +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # +# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # +# DEALINGS IN THE SOFTWARE. # +# # +# Except as contained in this notice, the name(s) of the above copyright # +# holders shall not be used in advertising or otherwise to promote the sale, # +# use or other dealings in this Software without prior written # +# authorization. # +############################################################################## diff --git a/usr/src/cmd/terminfo/THIRDPARTYLICENSE.descrip b/usr/src/cmd/terminfo/THIRDPARTYLICENSE.descrip index da69821c82..8dfc1dd90a 100644 --- a/usr/src/cmd/terminfo/THIRDPARTYLICENSE.descrip +++ b/usr/src/cmd/terminfo/THIRDPARTYLICENSE.descrip @@ -1 +1 @@ -PORTIONS OF TERMINFO COMMAND FUNCTIONALITY +TERMCAP AND TERMINFO SOURCE FILES diff --git a/usr/src/cmd/terminfo/adds.ti b/usr/src/cmd/terminfo/adds.ti deleted file mode 100644 index ad8233f316..0000000000 --- a/usr/src/cmd/terminfo/adds.ti +++ /dev/null @@ -1,103 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.10 */ -# # -------------------------------- -# -# Manufacturer: ADDS -# Class: II -# -screwpoint|adds viewpoint with ^O bug, - am, - dl1=\El, - cols#80, lh#0, lines#24, lw#0, nlab#0, - bel=^G, clear=\f$<10.1*>, cr=\r, cub1=\b, cud1=\n, - cuf1=^F, cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c$<6>, cuu1=^Z, - ed=\Ek$<16.1*>, el=\EK$<16>, ind=\n, is2=^G, kcub1=^U, - kcud1=\n, kcuf1=^F, kcuu1=^Z, khome=^A, ll=^A, -fviewpoint|flaky adds viewpoint with ^O bug, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, lines#24, cols#80, - dl1=\El, - cup=\EY%p1%' '%+%c%p2%' '%+%c$<6>, is2=, - ed=\Ek$<16.1*>, el=\EK$<16>, cuf1=^F, cuu1=^Z, clear=^L$<10.1*>, ll=^A, - kcub1=^U, kcuf1=^F, kcud1=^J, kcuu1=^Z, khome=^A, -viewpoint|adds viewpoint, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, lines#24, cols#80, - cup=\EY%p1%' '%+%c%p2%' '%+%c$<6>, is2=^O\E0`, - ed=\Ek$<16.1*>, el=\EK$<16>, cuf1=^F, cuu1=^Z, clear=^L$<10.1*>, ll=^A, - dl1=\El, - kcub1=^U, kcuf1=^F, kcud1=^J, kcuu1=^Z, khome=^A, - kf0=^B1, kf2=^B2, kf3=^B!, kf4=^B", kf5=^B#, - rmso=^O, smso=\E0P^N, rmul=^O, smul=\E0`^N, - cvvis=^O\E0P, cnorm=^O\E0`, -v90|viewpoint-90|ADDS viewpoint 90, - lines#24, cols#80, it#8, am, bw, mir, - clear=^L, ll=^A, cuu1=^Z, cub1=^H, cuf1=^F, cud1=^J, - cr=^M, cud1=^J, ind=^J, bel=^G, ht=^I, - dl1=\El, il1=\EM, ed=\Ek, el=\EK, - cbt=\EO, dch1=\EE, .smir=\EF, .rmir=\EF, - pad=\377, - vpa=^K%p1%' '%+%c, - hpa=^P%p1%{10}%/%{16}%*%p1%{10}%m%+%c, - cup=\EY%p1%' '%+%c%p2%' '%+%c, - kbs=^H, kcud1=^J, khome=^A, kcub1=^U, kcuf1=^F, kcuu1=^Z, - kf0=^B1^M, kf1=^B2^M, kf2=^B3^M, kf3=^B4^M, kf4=^B5^M, kf5=^B6^M, - kf6=^B7^M, kf7=^B8^M, kf8=^B9^M, kf9=^B:^M, kf10=^B;^M, - lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, - lf6=F7, lf7=F8, lf8=F9, lf9=F10, lf10=F11, -regent|Adds Regent Series, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, am, - clear=^L, ll=^A, cuu1=^Z, cub1=^H, cuf1=^F, cud1=^J, -regent100|Adds Regent 100, - kf0=^B1^M, kf1=^B2^M, kf2=^B3^M, kf3=^B4^M, - kf4=^B5^M, kf5=^B6^M, kf6=^B7^M, kf7=^B8^M, - lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, - cup=^K%p1%' '%+%c^P%p2%{10}%/%{16}%*%p2%{10}%m%+%c, - xmc#1, use=regent, -regent20|Adds Regent 20, - ed=\Ek, el=\EK, cup=^K%p1%' '%+%c^P%p2%{10}%/%{16}%*%p2%{10}%m%+%c, - use=regent, -regent25|Adds Regent25, - khome=^A, kcub1=^U, kcuf1=^F, kcuu1=^Z, kcud1=^J, use=regent20, -regent40|Adds Regent 40, - kf0=^B1^M, kf1=^B2^M, kf2=^B3^M, kf3=^B4^M, - kf4=^B5^M, kf5=^B6^M, kf6=^B7^M, kf7=^B8^M, - lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, - il1=2*\EM, dl1=2*\El, smso=\E0P, rmul=\E0@, - smul=\E0`, rmso=\E0@, xmc#1, use=regent25, -regent40-s|regent40+|Adds Regent 40-s, - is2=\EB, use=regent40, -regent60|regent200|Adds Regent 60, - rmso=\ER\E0@\EV, smso=\ER\E0P\EV, - dch1=\EE, rmir=\EF, smir=\EF, is2=\EV\EB, - kdch1=\EE, kich1=\EF, krmir=\EF, use=regent40-s, -regent60-na|regent 60 w/no arrow keys, - kcub1@, kcuf1@, kcuu1@, kcud1@, use=regent60, -a980|adds consul 980, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E^N$<13>, am, cub1=^H, - clear=^L$<1>^K@, cup=^K%p1%'@'%+%c\E^E%p2%02d, cols#80, dl1=\E^O$<13>, - kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, - kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, - lines#24, cuf1=\E^E01, smso=^Y^^^N, rmso=^O, cuu1=$<9>, diff --git a/usr/src/cmd/terminfo/annarbor.ti b/usr/src/cmd/terminfo/annarbor.ti deleted file mode 100644 index ecd58e8710..0000000000 --- a/usr/src/cmd/terminfo/annarbor.ti +++ /dev/null @@ -1,218 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.11 */ -# # -------------------------------- -# -# annarbor: ANN ARBOR -# Manufacturer: ANN ARBOR -# Class: III -# -aa|annarbor|4080|ann arbor 4080, - cr=^M, cud1=^J, ind=^J, bel=^G, ht=^I, tbc=^\^P^P, hts=^]^P1, - cup=^O%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%'@'%+%c, - cols#80, lines#40, cub1=^H, clear=^L$<2>, cuu1=^N, cuf1=^_, - home=^K, am, kbs=^^, kcud1=^J, kcuu1=^N, kcub1=^H, kcuf1=^_, khome=^K, -# -aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly), - am, km, mc5i, mir, xon, - cols#80, it#8, - bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, - clear=\E[H\E[J$<156>, cr=\r, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=^K, 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, dl=\E[%p1%dM, dl1=\E[M, - ed=\E[J, el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, - ht=\t, hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, - il=\E[%p1%dL, il1=\E[L$<3>, ind=^K, invis=\E[8m, - is1=\E[m\E7\E[H\E9\E8, - is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=\b, kcbt=\E[Z, - kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kf1=\EOA, - kf10=\EOJ, kf11=\EOK, kf12=\EOL, kf13=\EOM, kf14=\EON, - kf15=\EOO, kf16=\EOP, kf17=\EOQ, kf18=\EOR, kf19=\EOS, - kf2=\EOB, kf20=\EOT, kf21=\EOU, kf22=\EOV, kf23=\EOW, - kf24=\EOX, kf3=\EOC, kf4=\EOD, kf5=\EOE, kf6=\EOF, - kf7=\EOG, kf8=\EOH, kf9=\EOI, khome=\E[H, kich1=\E[@, - kil1=\E[L, krmir=\E6, mc0=\E[0i, mc4=^C, mc5=\E[v, - mc5p=\E[%p1%dv, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, - rev=\E[7m, - rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\, - rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - sgr0=\E[0m, - smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\, - smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[2g, - vpa=\E[%p1%{1}%+%dd, -# Info: -# .flash=\E7\E[H\E[7m\E9$<200>\E[m\E9\E8, -# -aaa+rv, - bold=\E[1;7m, rev=\E[m, blink=\E[5;7m, invis=\E[7;8m, sgr0=\E[7m^N, - rmul=\E[7m, smul=\E[4;7m, rmso=\E[7m, smso=\E[m, rs1=\E[H\E[7m\E[J$<156>, - sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -# .flash=\E7\E[H\E[m\E9$<200>\E[7m\E9\E8, - is1=\E[7m\E7\E[H\E9\E8, -# Info: -# Ambassador with the DEC option, for partial vt100 compatibility. -# -aaa+dec, - csr=\E[%i%p1%d;%p2%dr, - sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t^O%e^N%;, - enacs=\E(0, smacs=^O, rmacs=^N, - acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz||}}, -aaa-18|ann arbor ambassador/18 lines, - smcup=\E[18;0;0;18p, rmcup=\E[60;0;0;18p\E[60;1H\E[K, - is2=\E7\E[60;0;0;18p\E8, lines#18, use=aaa+unk, -aaa-18-rv|ann arbor ambassador/18 lines+reverse video, - use=aaa+rv, use=aaa-18, -aaa-20|ann arbor ambassador/20 lines, - smcup=\E[20;0;0;20p, rmcup=\E[60;0;0;20p\E[60;1H\E[K, - is2=\E7\E[60;0;0;20p\E8, lines#20, use=aaa+unk, -aaa-22|ann arbor ambassador/22 lines, - smcup=\E[22;0;0;22p, rmcup=\E[60;0;0;22p\E[60;1H\E[K, - is2=\E7\E[60;0;0;22p\E8, lines#22, use=aaa+unk, -aaa-24|ann arbor ambassador/24 lines, - smcup=\E[24;0;0;24p, rmcup=\E[60;0;0;24p\E[60;1H\E[K, - is2=\E7\E[60;0;0;24p\E8, lines#24, use=aaa+unk, -aaa-24-rv|ann arbor ambassador/24 lines+reverse video, - use=aaa+rv, use=aaa-24, -aaa-26|ann arbor ambassador/26 lines, - smcup=\E[H\E[J$<156>\E[26;0;0;26p, rmcup=\E[60;0;0;26p\E[26;1H\E[K, - is2=\E7\E[60;0;0;26p\E8, lines#26, use=aaa+unk, -aaa-28|ann arbor ambassador/28 lines, - smcup=\E[H\E[J$<156>\E[28;0;0;28p, rmcup=\E[60;0;0;28p\E[28;1H\E[K, - is2=\E7\E[60;0;0;28p\E8, lines#28, use=aaa+unk, -aaa-30-s|aaa-s|ann arbor ambassador/30 lines with status line, - smcup=\E[H\E[J$<156>\E[30;1;0;30p\E[30;1H\E[K, - rmcup=\E[60;1;0;30p\E[29;1H\E[K, - is2=\r\n\E[A\E7\E[60;1;0;30p\E8, lines#29, - tsl=\E[>51h\E[1;%p1%dH\E[2K, fsl=\E[>51l, hs, eslok, - dsl=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K, - use=aaa+unk, -aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status line+reverse video, - use=aaa+rv, use=aaa-30-s, -aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines; status line; saving context, - smcup=\E[30;1H\E[K\E[30;1;0;30p, rmcup=\E[60;1;0;30p\E[59;1H\E[K, - use=aaa-30-s, -aaa-s-rv-ctxt|aaa-30-s-rv-ct|aaa-30-srvctxt|ann arbor ambassador/30 lines; status line; saving context, - smcup=\E[30;1H\E[K\E[30;1;0;30p, rmcup=\E[60;1;0;30p\E[59;1H\E[K, - use=aaa-30-s-rv, -aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines, - smcup=\E[H\E[J$<156>\E[30;0;0;30p, rmcup=\E[60;0;0;30p\E[30;1H\E[K, - is2=\E7\E[60;0;0;30p\E8, lines#30, use=aaa+unk, -aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video, - use=aaa+rv, use=aaa-30, -aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context, - smcup=\E[30;0;0;30p, rmcup=\E[60;0;0;30p\E[60;1H\E[K, use=aaa-30, -aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines; saving context, - smcup=\E[30;0;0;30p, rmcup=\E[60;0;0;30p\E[60;1H\E[K, - use=aaa+rv, use=aaa-30, -aaa-36|ann arbor ambassador/36 lines, - smcup=\E[H\E[J$<156>\E[36;0;0;36p, rmcup=\E[60;0;0;36p\E[36;1H\E[K, - is2=\E7\E[60;0;0;36p\E8, lines#36, use=aaa+unk, -aaa-36-rv|ann arbor ambassador/36 lines+reverse video, - use=aaa+rv, use=aaa-36, -aaa-40|ann arbor ambassador/40 lines, - smcup=\E[H\E[J$<156>\E[40;0;0;40p, rmcup=\E[60;0;0;40p\E[40;1H\E[K, - is2=\E7\E[60;0;0;40p\E8, lines#40, use=aaa+unk, -aaa-40-rv|ann arbor ambassador/40 lines+reverse video, - use=aaa+rv, use=aaa-40, -aaa-48|ann arbor ambassador/48 lines, - smcup=\E[H\E[J$<156>\E[48;0;0;48p, rmcup=\E[60;0;0;48p\E[48;1H\E[K, - is2=\E7\E[60;0;0;48p\E8, lines#48, use=aaa+unk, -aaa-48-rv|ann arbor ambassador/48 lines+reverse video, - use=aaa+rv, use=aaa-48, -aaa-60-s|ann arbor ambassador/59 lines plus status line, - is2=\r\n\E[A\E7\E[60;1;0;60p\E8, lines#59, - tsl=\E[>51h\E[1;%p1%dH\E[2K, fsl=\E[>51l, hs, eslok, - dsl=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K, - use=aaa+unk, -aaa-60-s-rv|ann arbor ambassador/59 lines+status line+reverse video, - use=aaa+rv, use=aaa-60-s, -aaa-60-s-rv-de|aaa-60-s-rvdec|ann arbor ambassador/dec mode+59 lines+status line+rev video, - use=aaa+dec, use=aaa+rv, use=aaa-60-s, -aaa-60|ann arbor ambassador/60 lines, - is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8, lines#60, use=aaa+unk, -aaa-60-rv|ann arbor ambassador/60 lines+reverse video, - use=aaa+rv, use=aaa-60, -aaa-db|ann arbor ambassador 30/destructive backspace, - cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30, -# -guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols, - smcup=\E[33p, rmcup=\E[255p\E[255;1H\E[K, - flash=\E[>59h$<100>\E[>59l, - is2=\E7\E[255;0;0;33;80;80p\E8\E[J, is3=\E[>59l, lines#33, use=aaa+unk, -guru+rv|guru changes for reverse video, - flash=\E[>59l$<100>\E[>59h, is3=\E[>59h, -guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video, - use=guru+rv, use=guru-33, -guru+s|changes for status line, - rmcup=\E[255;1p\E[255;1H\E[K, - tsl=\E[>51h\E[1;%p1%dH\E[2K, fsl=\E[>51l, hs, eslok, - dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, -guru-nctxt, - smcup=\E[H\E[J$<156>\E[33p\E[255;1H\E[K, use=guru, -guru-s|guru-33-s|ann arbor guru/33 lines with status line, - smcup=\E[33;1p\E[255;1H\E[K, - is2=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J, lines#32, - use=guru+s, use=guru+unk, -guru-24, - smcup=\E[24p, is2=\E7\E[255;0;0;24;80;80p\E8\E[J, - lines#24, cols#80, use=guru+unk, -guru-44, - smcup=\E[44p, is2=\E7\E[255;0;0;44;97;100p\E8\E[J, - lines#44, cols#97, use=guru+unk, -guru-44-s|ann arbor guru/44 lines with status line, - smcup=\E[44;1p\E[255;1H\E[K, - is2=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J, lines#43, - use=guru+s, use=guru+unk, -guru-76|guru with 76 lines by 89 cols, - smcup=\E[76p, is2=\E7\E[255;0;0;76;89;100p\E8\E[J, - lines#76, cols#89, use=guru+unk, -guru-76-s|ann arbor guru/76 lines with status line, - smcup=\E[76;1p\E[255;1H\E[K, - is2=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J, lines#75, cols#89, - use=guru+s, use=guru+unk, -guru-76-lp|guru-lp|guru with page bigger than line printer, - smcup=\E[76p, is2=\E7\E[255;0;0;76;134;134p\E8\E[J, - lines#76, cols#134, use=guru+unk, -guru-76-w|guru 76 lines by 178 cols, - smcup=\E[76p, is2=\E7\E[255;0;0;76;178;178p\E8\E[J, - lines#76, cols#178, use=guru+unk, -guru-76-w-s|ann arbor guru/76 lines with status line, - smcup=\E[76;1p\E[255;1H\E[K, - is2=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J, lines#75, cols#178, - use=guru+s, use=guru+unk, -guru-76-wm|guru 76 lines by 178 cols with 255 cols memory, - smcup=\E[76p, is2=\E7\E[255;0;0;76;178;255p\E8\E[J, - lines#76, cols#178, use=guru+unk, -aaa-rv-unk, - lh#0, lw#0, nlab#0, - blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m, - is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, - rmul=\E[7m, rs1=\E[H\E[7m\E[J, - sgr=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, - sgr0=\E[7m, smso=\E[m, smul=\E[4;7m, diff --git a/usr/src/cmd/terminfo/ansi.ti b/usr/src/cmd/terminfo/ansi.ti deleted file mode 100644 index 8acb6a3b92..0000000000 --- a/usr/src/cmd/terminfo/ansi.ti +++ /dev/null @@ -1,165 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1995 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # ANSI - standards and other nonexistent terminals emulated in software. -# -# Manufacturer: ANSI - Generic -# Class: III -# -# Info: -# This category is used for terminals people "make up" in software -# that do not represent a particular piece of hardware. This -# includes standards, such as the ANSI standard, as well as -# emulator programs that accept a particular set of escape -# sequences. -# -# ANSI capabilities are broken up into pieces, so that a terminal -# implementing some ANSI subset can use many of them. -# -ansi+local, - cud=\E[%p1%dB, cub=\E[%p1%dD, cuf=\E[%p1%dC, cuu=\E[%p1%dA, -ansi+local1, - cud1=^J, cub1=^H, cuf1=\E[C, cuu1=\E[A, -ansi+tabs, - ht=^I, cbt=\E[Z, hts=\EH, tbc=\E[3g, -ansi+inittabs, - it#8, use=ansi+tabs, -ansi+erase, - ed=\E[J, el=\E[K, clear=\E[H\E[J, -ansi+rca, - hpa=\E[%p1%{1}%+%dG, vpa=\E[%p1%{1}%+%dd, -ansi+cup, - cup=\E[%i%p1%d;%p2%dH, home=\E[H, -ansi+rep, - rep=%p1%c\E[%p2%{1}%-%db, -ansi+idl, - dl=\E[%p1%dM, il=\E[%p1%dL, -ansi+idl1, - dl1=\E[M, il1=\E[L, -ansi+idc, - dch1=\E[P, ich=\E[%p1%d@, ich1=\E[@, -# smir=\E6, rmir=\E6, commented out by ehr3 -ansi+arrows, - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, -ansi+sgr|ansi graphic renditions, - rev=\E[7m, blink=\E[5m, invis=\E[8m, sgr0=\E[0m, -ansi+sgrso|ansi standout only, - rmso=\E[m, smso=\E[7m, -ansi+sgrul|ansi underline only, - rmul=\E[m, smul=\E[4m, -ansi+sgrbold|ansi graphic renditions; assuming terminal has bold; not dim, - bold=\E[1m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul, -ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold, - dim=\E[2m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;m, - use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul, -ansi+pp|ansi printer port, - mc4=\E[4i, mc5=\E[5i, mc0=\E[0i, -# Info: -# ANSI is a vanilla ANSI terminal. This is assumed to implement -# all the normal ANSI stuff with no extensions. It assumes -# insert/delete line/char is there, so it won't work with -# vt100 clones. It assumes video attributes for bold, blink, -# underline, and reverse, which won't matter much if the terminal -# can't do some of those. Padding is assumed to be zero, which -# shouldn't hurt since xon/xoff is assumed. -# -# We assume a 24x80 screen. This entry was derived from the -# Ann Arbor Ambassador, and is untested. -# -ansi|generic ansi standard terminal, - use=vanilla, am, cols#80, lines#24, xon, - use=ansi+cup, use=ansi+rca, - use=ansi+erase, - use=ansi+tabs, - use=ansi+local1, use=ansi+local, - use=ansi+idc, use=ansi+idl1, use=ansi+idl, - use=ansi+rep, - use=ansi+sgrbold, use=ansi+arrows, -# Info: -# Bare minimum ANSI terminal. This should work on anything, but -# beware of screen size problems and memory relative cursor -# addressing. -# -minansi|minimum ansi standard terminal, - am, xon, use=vanilla, cols#80, lines#24, - use=ansi+cup, use=ansi+erase, -# Info: -# This terminal type is for ANSI terminals with ONLY memory -# relative cursor addressing and more than one page of memory. -# It uses local motions instead of direct cursor addressing, -# and makes almost no assumptions. It does assume auto margins, -# no padding and/or xon/xoff, and a 24x80 screen. -# -mransi|mem rel cup ansi, - am, use=vanilla, cols#80, lines#24, xon, - use=ansi+erase, use=ansi+local1, -# Info: -# Columbus UNIX virtual terminal. This terminal also appears in -# UNIX 4.0 and successors as line discipline 1 (?), but is -# undocumented and does not really work quite right. -# -virtual|cbunix|cb-unix|cb-unix virtual terminal, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, clear=\EJ, - cub1=^H, cup=\EG%p2%c%p1%c, cuf1=\EC, cuu1=\EA, el=\EK, - ed=\EL, il1=\EP, dl1=\EN, ich1=\EO, dch1=\EM, lm#0, da, db, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EE, - smso=\Ea\004, rmso=\Eb\004, smul=\Ea\001, rmul=\Eb\001, -# Info: -# This terminal is based on virtual but cleans up a few problems -# with control characters in parameter strings. It is implemented -# in mrh's window manager. -# -pty|4bsd pty terminal, - smso=\Ea$, rmso=\Eb$, smul=\Ea!, rmul=\Eb!, - cup=\EG%p1%' '%+%c%p2%' '%+%c, use=virtual, -# Info: -# A dumb terminal with 1 line which is a fake status line. -# This is useful to run sysline in in a multi-window environment. -# -1line|one_line|one line window, - cr=^M, ind=^J, cols#80, lines#1, am, ht=^I, cub1=^H, - hs, tsl=\n, -# Info: -# 1linepty is like 1line but the 1 line window is smarter, -# with standout, cursor addressing, and clear to eol. -# -1linepty|one_linepty|1 line window in a pty, - smso=\Ea$, rmso=\Eb$, smul=\Ea!, rmul=\Eb!, - cup=\EG%p1%' '%+%c%p2%' '%+%c, tsl=\r\EK\EG %p2%' '%+%c, - eslok, use=1line, -vanilla, - bel=^G, cr=^M, cud1=^J, ind=^J, -datakit, - am, gn, - cols#80, - bel=^G, cr=\r, cud1=\n, ind=\n, diff --git a/usr/src/cmd/terminfo/att.ti b/usr/src/cmd/terminfo/att.ti deleted file mode 100644 index 038eaf5faa..0000000000 --- a/usr/src/cmd/terminfo/att.ti +++ /dev/null @@ -1,3305 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # -------------------------------- -# -# att: AT&T -# -# Manufacturer: AT&T -# Class: I - -2300|att2300|ATT2300|sv80|AT&T 2300 Video Information Terminal 80 column mode @(#)2300.ti 1.1, - am, xon, eo, mir, msgr, - cols#80, lines#24, it#8, - bel=^G, - cub=\E[%p1%dD, cub1=\b, - cuf=\E[%p1%dC, cuf1=\E[C, - cud=\E[%p1%dB, cud1=\n, - cuu=\E[%p1%dA, cuu1=\E[A, - cup=\E[%i%p1%d;%p2%dH, - ich=\E[%p1%d@, - il=\E[%p1%dL, il1=\E[L, - dch=\E[%p1%dP, dch1=\E[P, - dl=\E[%p1%dM, dl1=\E[M, - smso=\E[7m, rmso=\E[0m, rev=\E[7m, - cr=\r, ind=\n, - ht=\t, smir=\E[4h, rmir=\E[4l, - home=\E[H, clear=\E[H\E[J, ed=\E[J, el=\E[K, el1=\E[1K, - kf1=\E[1r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, - kf5=\E[5r, kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, - kf9=\E[9r, kf10=\E[10r, kf11=\E[11r, kf12=\E[12r, - kf13=\E[13r, kf14=\E[14r, kf15=\E[15r, kf16=\E[16r, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - khome=\E[H, kclr=\E[J, kcbt=\E[Z, kbs=\b, - kil1=\E[L, kich1=\E[@, kdl1=\E[M, kdch1=\E[P, - mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, - sgr0=\E[m, -2350|att2350|ATT2350|AT&T 2350 Video Information Terminal 80 column mode @(#)2300.ti 1.1, - mc0@, mc4@, mc5@, use=att2300, -2300-x40|att2300-x40|ATT2300-x40|sv40|AT&T 2300 Video Information Terminal 40 column mode @(#)2300.ti 1.1, - cols#40, lines#23, it#5, il@, il1@, use=att2300, -2350-x40|att2350-x40|ATT2350-x40|AT&T 2350 Video Information Terminal 40 column mode @(#)2300.ti 1.1, - cols#40, lines#23, it#5, il@, il1@, use=att2350, -# -# AT&T 386 monocrome console -# -AT386-M|at386-m|386AT-M|386at-m|at/386 console @(#)386.ti 1.4, - am, bw, eo, xon, - cols#80, lines#25, - bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, - cr=\r, cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, - cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%02d;%p2%02dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[1M, - ed=\E[J, el=\E[K, flash=^G, home=\E[H, ht=\t, - ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, - ind=\E[S, indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10m, - kbs=\b, kcbt=^], kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kend=\E[Y, - kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, - kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, - kf8=\EOW, kf9=\EOX, khome=\E[H, kich1=\E[@, knp=\E[U, - kpp=\E[V, krmir=\E0, pfx=\EQ%p1%{1}%-%d'%p2%s', - rev=\E[7m, rin=\E[S, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, - sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p9%t;12%;%?%p7%t;9%;m, - sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, -# -# AT&T 386 color console -# -AT386|at386|386AT|386at|at/386 console @(#)386.ti 1.4, - colors#8, ncv#3, pairs#64, - op=\E[0m, - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setb=\E[4%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - use=at386-m, - -AT386-DOS-M|at/386 console for 437 codeset @(#)386.ti 1.4, - acsc=``a~ffggjYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, - use=at386-m, - -AT386-DOS|at/386 console for 437 codeset @(#)386.ti 1.4, - acsc=``a~ffggjYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, - use=at386, - -33|tty33|tty|AT&T model 33 teletype @(#)33.ti 1.1, - xon,cr=^M, cud1=^J, ind=^J, bel=^G, cols#72, hc, os, - -35|tty35|AT&T model 35 teletype @(#)35.ti 1.1, - use=tty33, - -37|tty37|AT&T model 37 teletype @(#)37.ti 1.1, - xon,cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, hc, hu=\E8, hd=\E9, cuu1=\E7, os, - -# Info: -# The Dataspeed 40's print a visible newline indicator after -# each newline. The 40-1 is a half duplex terminal. -# and is described here. The 40-4 is a 3270 lookalike -# -# The terminal has blinking standout. It also has visible bell -# but I don't know it - it's null here to prevent it from showing -# the BL character. -# -# I am not sure if the 40 has xmc, it looked like it didn't. -# -# Note also that the control characters have been randomly -# rearranged, for example, to get escape you type control-P and -# cntrol-H generates GS, group separator! -# -# -# \EX will get terminal out of protect mode but there doesn't -# appear to be a mnemonic for it (\EW will put it into protect). -# -# When printer is enabled all received characters are printed - no -# print screen is provided. Most delays are pure guesswork. -# -# Watch out for the visible newline symbol. Note that -# the editing and cursor controls do not work in S/R mode except -# for cursor left arrow which generates the backspace character. -# -# Note also that many control codes echo visibly while the -# corresponding escape sequences do not; for example, both ^K -# and \EC move the cursor right one place, but the former -# prints a VT symbol, too. -# - -40|tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2 @(#)40.ti 1.1, - clear=\EH$<20>\EJ$<80>, ed=\EJ$<75>, il1=\EL$<50>, dl1=\EM$<50>, - dch1=\EP$<50>, ich1=\E\^$<50>, cuf1=\EC, cuu1=\E7, cub1=^H, cr=\EG, - ind=\ES$<20>, cud1=\EB, cols#80, lines#24, smso=\E3, rmso=\E4, - xon,kbs=\035, kcub1=^H, rs2=^S\ER$<60>, hts=\E1, home=\EH$<10>, - ri=\ET$<10>, tbc=\EH\E2$<80>, mc5=^R$<2000>, mc4=^T, ht=\E@$<10>, - -43|tty43|AT&T model 43 teletype @(#)43.ti 1.1, - xon,cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, am, cub1=^H, hc, os, cols#132, - -# Info: -# Must setup RETURN KEY - CR, REC'VD LF - INDEX. -# Seems upward compatible with vt100, plus ins/del line/char. -# On sgr, the protection parameter is ignored. -# No check is made to make sure that only 3 parameters are output. -# standout= reverse + half-intensity = 3 | 5. -# bold= reverse + underline = 2 | 3. -# note that half-bright blinking doesn't look different from -# normal blinking. -# -# NOTE:you must program the function keys first, label second! -# - - -ATT4410v1|ATT5410v1|att5410v1|att4410v1|4410v1|tty5410v1|5410v1|AT&T 4410/5410 terminal in 80 column mode - version 1 @(#)4410.ti 1.4, - am, hs, mir, msgr, xon, - cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, - acsc=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--\,\,.., - is1=\E[?3l\E)0, - is2=\E[0m^O, - bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[H\E[J, - cr=\r, csr=\E[%i%p1%d;%p2%dr, cub1=\b, cud1=\E[B, - cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, - dch1=\E[P, dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, - fsl=\E8, home=\E[H, ht=\t, ich1=\E[@, il1=\E[L, - ind=\n, invis=\E[8m, - is3=\E[1;03q\s\s\sf1\s\s\s\s\s\s\s\s\s\s\s\EOP\E[2;03q\s\s\sf2\s\s\s\s\s\s\s\s\s\s\s\EOQ\E[3;03q\s\s\sf3\s\s\s\s\s\s\s\s\s\s\s\EOR\E[4;03q\s\s\sf4\s\s\s\s\s\s\s\s\s\s\s\EOS\E[5;03q\s\s\sf5\s\s\s\s\s\s\s\s\s\s\s\EOT\E[6;03q\s\s\sf6\s\s\s\s\s\s\s\s\s\s\s\EOU\E[7;03q\s\s\sf7\s\s\s\s\s\s\s\s\s\s\s\EOV\E[8;03q\s\s\sf8\s\s\s\s\s\s\s\s\s\s\s\EOW, - kbs=\b, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, - kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, - khome=\E[H, kll=\E[24;1H, ll=\E[24H, nel=\r\n, - pfx=\E[%p1%1d;%p2%l%2.2dq\s\s\sf%p1%1d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, - rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, - sc=\E7, - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smso=\E[2;7m, smul=\E[4m, - tsl=\E7\E[25;%p1%{1}%+%dH, - -att4410v1-w|ATT4410v1-w|att5410v1-w|ATT5410v1-w|4410v1-w|tty5410v1-w|5410v1-w|AT&T 4410/5410 terminal in 132 column mode - version 1 @(#)4410.ti 1.4, - cols#132,is1=\E[?3h\E)0,rs2=\Ec\E[?3h\E[2;0y,wsl#132,use=4410v1, - -att4410|ATT4410|att5410|ATT5410|4410|tty5410|5410|AT&T 4410/5410 terminal in 80 column mode - version 2 @(#)4410.ti 1.4, - pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s, - use=4410v1, - -ATT4410-nfk|att4410-nfk|att5410-nfk|ATT5410-nfk|4410-nfk|tty5410-nfk|5410-nfk|version 1 AT&T 4410/5410 entry without function keys @(#)4410.ti 1.4, - pln@, is3@, kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4410, - -att5410-w|ATT5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode @(#)4410.ti 1.4, - cols#132, is1=\E[?3h\E)0,rs2=\Ec\E[?3h\E[2;0y, wsl#132, - use=att4410, - - -5410-nsl|att5410-nsl|ATT5410-nsl|4410-nsl|att4410-nsl|ATT4410-nsl|tty5410-nsl|tty5410 entry without pln defined @(#)4410.ti 1.4, - pln@, - use=tty5410, - -otty5410|teletype 5410 for S5R2 curses @(#)4410.ti 1.4, - tsl=\E7\E[25;%p1%{1}%+%dH, - use=tty5410, - -# Info: -# 5410 in terms of a vt100 -# -v5410| 5410 in terms of a vt100 @(#)4410.ti 1.4, - am, mir, msgr, xon, - cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub1=\b, cud1=\n, cuf1=\E[C$<2>, - cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P, - dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, - enacs=\E(B\E)0, home=\E[H, ht=\t, hts=\EH, ich1=\E[@, - il1=\E[L, ind=\n, ka1=\EOq, ka3=\EOs, kb2=\EOr, - kbs=\b, kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, - rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmkx=\E[?1l\E>, - rmso=\E[m$<2>, rmul=\E[m$<2>, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;$<2>, - sgr0=\E[m^O$<2>, smacs=^N$<2>, smkx=\E[?1h\E=, - smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, - -# Info: -# -# Teletype Model 5420 -- A souped up 5410, with multiple windows, -# even! the 5420 has three modes: scroll, window or page mode -# this terminfo should work in scroll or window mode, but doesn't -# take advantage of any of the differences between them. -# -ATT4415|att4415|4415|tty5420|att5420|ATT5420|5420|AT&T 4415/5420 in 80 column mode @(#)4415.ti 1.4, -# Info: -# Memory below (2 lines!) -# - xon,db, mir, -# Info: -# 3 pages of memory (plus some spare) -# - nlab#8, lh#2, lw#8, wsl#55, lm#78, - cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, - cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, cuu=\E[%p1%dA, -# Info: -# The 5410 sequences would work for these, but these -# work in both scroll and window mode... -# - cup=\E[%i%p1%d;%p2%dx, - cvvis=\E[11;1j, dch=\E[%p1%dP, dl=\E[%p1%dM, - ech=\E[%p1%ds\E[%p1%dD, - flash=\E[?5h$<200>\E[?5l, - home=\E[x, hpa=\E[%p1%{1}%+%dG, hts=\EH, -# Info: -# Unset insert character so insert mode works -# - ich1@, ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dE, -# Info: -# set 80 column mode, -# - is1=\E[?3l$<100>, -# is2 escape sequence: -# 1) turn off all fonts -# 2) function keys off, keyboard lock off, control display off, -# insert mode off, erasure mode off, -# 3) full duplex, monitor mode off, send graphics off, nl on lf off -# 4) reset origin mode -# 5) set line wraparound -# 6) exit erasure mode, positional attribute mode, and erasure extent mode -# 7) clear margins -# 8) program ENTER to transmit ^J, -# We use \212 to program the ^J because a bare ^J will get translated by -# UNIX into a CR/LF. The enter key is needed for AT&T uOMS. -# 1 2 3 4 5 6 7 8 -# - is2=\E[0m^O\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212, -# Info: -# set screen color to black, -# - is3=\E[?5l, - kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M, -# info: -# No representation in terminfo for the delete word key -# kdw1=\Ed -# - kel=\E[2K, kend=\Ez, kent=\Eent, -# Info: -# This assumes the power-up send sequence... -# - kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, - kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, - kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, - knp=\E[U, kpp=\E[V, kri=\E[S, - lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, - ll=\Ew, mc0=\E[?2i, mc4=\E[4i, mc5=\E[5i, - mrcup=\E[%i%p1%d;%p2%dt, - pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - rmln=\E|, smln=\E~, prot=\EV, rin=\E[%p1%dF, -# Info: -# This rmcup is not strictly necessary, but it helps maximize -# memory usefulness -# rmcup=\Ez, -# - rmir=\E[4l, rmkx=\E[19;0j\E[21;1j\212, sgr0=\E[0m^O, -# Info: -# sgr0=\E[0m\EW^O, -# - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, -# Info: -# sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;, -# - smir=\E[4h, -# Info: -# This programs the SYS PF keys to send a set sequence. -# It also sets up labels f1, f2, ..., f8, and sends edit keys. -# This string causes them to send the strings kf1-kf8 -# when pressed in SYS PF mode. -# - smkx=\E[19;1j\E[21;4j\Eent, tbc=\E[3g, - tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, - use=att4410, - -ATT4415-w|att4415-w|4415-w|tty5420-w|att5420-w|ATT5420-w|5420-w|AT&T model 4415/5420 in 132 column mode @(#)4415.ti 1.4, - lm#54, cols#132, wsl#97, -# Info: -# set 132 column mode, -# - is1=\E[?3h$<100>, - use=att4415, - -ATT4415-rv|att4415-rv|4415-rv|tty5420-rv|att5420-rv|ATT5420-rv|5420-rv|AT&T model 4415/5420 80 columns in reverse video @(#)4415.ti 1.4, - flash=\E[?5l$<200>\E[?5h, -# Info: -# set screen color to white, -# - is3=\E[?5h, - use=att4415, - -ATT4415-w-rv|att4415-w-rv|4415-w-rv|tty5420-w-rv|att5420-w-rv|ATT5420-w-rv|5420-w-rv|AT&T model 4415/5420 132 columns in reverse video @(#)4415.ti 1.4, - lm#54, cols#132, wsl#97, - flash=\E[?5l$<200>\E[?5h, -# Info: -# set 132 column mode, -# - is1=\E[?3h$<100>, -# Info: -# set screen color to white, -# - is3=\E[?5h, - use=att4415, - -# Info: -# Note that this mode permits programming USER PF KEYS and labels -# However, when you program user pf labels you have to reselect -# user pf keys to make them appear! -# -ATT4415+nl|att4415+nl|4415+nl|tty5420+nl|att5420+nl|ATT5420+nl|5420+nl|generic AT&T 4415/5420 changes for not changing labels @(#)4415.ti 1.4, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s, - pln=\E[%p1%d;0;0;1q%p2%:-16.16s, - -ATT4415-nl|att4415-nl|4415-nl|tty5420-nl|att5420-nl|ATT5420-nl|5420-nl|AT&T 4415/5420 without changing labels @(#)4415.ti 1.4, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - use=att4415+nl, use=att4415, - -ATT4415-rv-nl|att4415-rv-nl|4415-rv-nl|tty5420-rv-nl|5420-rv-nl|ATT5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels @(#)4415.ti 1.4, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - use=att4415+nl, use=att4415-rv, - -ATT4415-w-nl|att4415-w-nl|4415-w-nl|tty5420-w-nl|5420-w-nl|att5420-w-nl|ATT5420-w-nl|AT&T 4415/5420 132 cols without changing labels @(#)4415.ti 1.4, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - use=att4415+nl, use=att4415-w, - -ATT4415-w-rv-n|att4415-w-rv-n|4415-w-rv-nl|tty5420-w-rv-n|5420-w-rv-nl|att5420-w-rv-n|ATT5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels @(#)4415.ti 1.4, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - use=att4415+nl, use=att4415-w-rv, - -otty5420|teletype 5420 for SVR2 curses on the 3B-20's @(#)4415.ti 1.4, - hpa=\E[%p1%{1}%+%dG, - vpa=\E[%p1%{1}%+%dd, - use=tty5420, - -att5420_2|ATT5420_2|5420_2|AT&T 5420 model 2 in 80 column mode @(#)4415.ti 1.4, - am, db, hs, mir, msgr, xon, - cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, - wsl#55, - blink=\E[5m, bold=\E[4;7m, cbt=\E[1Z, clear=\EH\EJ, - cnorm=\E[11;0j, cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, - cub1=\b, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cvvis=\E[11;1j, - dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, - dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J, el=\E[0K, - el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8, - home=\E[0;0H, hpa=\E[%p1%{1}%+%dG, ht=\t, hts=\EH, - ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, - ind=\n, indn=\E[%p1%dE, invis=\E[8m, - is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, - kbeg=\Et, kbs=\b, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, - kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, - kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\n, kf1=\EOc, - kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, - kf7=\EOi, kf8=\EOj, khome=\E[H, kich1=\E[4h, - kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, kpp=\E[V, - kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, - lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, - mc4=\E[4i, mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, - nel=\r\n, - pfx=\E[%p1%d;%p2%l%02dq\s\s\sF%p1%d\s\s\s\s\s\s\s\s\s\s\s%p2%s\E~, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8, - rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, - rmkx=\E[19;0j, rmln=\E|, rmso=\E[m, rmul=\E[m, - rs2=\Ec\E[?3l\E[2;0y, sc=\E7, - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[0m^O, smacs=^N, smkx=\E[19;1j, - smln=\E~, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, - tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, -att5420_2-w|ATT5420_2-w|5420_2-w|AT&T 5420 model 2 in 132 column mode @(#)4415.ti 1.4, - cols#132, - is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, - use=5420_2, - -4418|att4418|ATT4418|5418|att5418|ATT5418|AT&T 5418 in 80 column mode @(#)4418.ti 1.2, - am, xon, - cols#80, lines#24, - bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=\r, - cub=\E[%p1%dD, cub1=\E[D, 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[1P, - dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, - home=\E[H, ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, - il1=\E[1L, ind=\n, is1=\E[?3l, is2=\E)0\E?6l\E?5l, - kclr=\E[%, kcub1=\E@, kcud1=\EU, kcuf1=\EA, kcuu1=\ES, - khome=\Ec, kent=\E[, kf1=\E[h, kf10=\E[m, kf11=\E[n, kf12=\E[o, - kf13=\E[H, kf14=\E[I, kf15=\E[J, kf18=\E[K, kf19=\E[L, - kf2=\E[i, kf20=\E[E, kf21=\E[_, kf22=\E[M, kf23=\E[N, - kf24=\E[O, kf3=\E[j, kf6=\E[k, kf7=\E[l, kf8=\E[f, - kf9=\E[w, rc=\E8, rev=\E[7m, rmacs=^O, rmso=\E[0m, - rmul=\E[0m, sc=\E7, sgr0=\E[0m^O, smacs=^N, smso=\E[7m, - smul=\E[4m, -4418-w|att4418-w|ATT4418-w|5418-w|att5418-w|ATT5418-w|AT&T 5418 in 132 column mode @(#)4418.ti 1.2, - cols#132,is1=\E[?3h,use=5418, - -4420|tty4420|teletype 4420 @(#)4420.ti 1.1, - xon,da, db, eo, msgr, ul,lm#72, - cols#80, lines#24, - bel=^G, clear=\EH\EJ, cr=\EG, - cuu1=\EA, cud1=\EB,cuf1=\EC,cub1=\ED, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, - dch1=\EP, dl1=\EM, ed=\EJ, el=\Ez, il1=\EL, - home=\EH, - ind=\EH\EM\EY7 , kcub1=\b, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, - kf0=\EU, kf3=\E@, - lf0=segment advance, lf3=cursor tab, - kind=\ES, kri=\ET, kcbt=\EO, kclr=\EJ, - kil1=\EL, kdl1=\EM, kich1=\E\^, kdch1=\EP, khome=\EH, - rmdc@, rmso=\E~, rmul=\EZ, smdc@, smso=\E}, smul=\E\\, - -# Info: -# The following is a termcap entry for the Teletype 4424 -# asyncronous keyboard-display terminal. It supports -# the vi editor. The terminal must be "set up" as follows, -# -# HIGHLIGHT DEFINITION 3-TONE -# DISPLAY FUNCTION GROUP III -# -# The second entry below provides limited (a la adm3a) -# operation under GROUP II. -# -# This must be used with DISPLAY FUNCTION GROUP I or III -# and HIGHLIGHT DEFINITION 3-TONE -# -4424|att4424|ATT4424|tty4424|4424-3|teletype 4424 @(#)4424.ti 1.7, - xon,cr=^M, ind=^J, bel=^G, cols#80, lines#24, am, - smso=\E[7m, rmso=\E~, rev=\E[7m, smul=\E[4m, rmul=\EZ, ri=\ET, -# Info: -# The terminal has either bold or blink, depending on options -# - xon,bold=\E[1m, blink=\E[5m, - ht=^I, cbt=\EO, home=\E[H, cuu1=\EA, cuu=\E[%p1%dA, - cud1=\EB, cud=\E[%p1%dB, cuf1=\EC, cuf=\E[%p1%dC, - smcup=\E[1m, - cub1=^H, cub=\E[%p1%dD, cup=\E[%i%p1%d;%p2%dH, - clear=\E[H\E[2J, ed=\EJ, el=\Ez, nel=\EE, hts=\EH, tbc=\EF, - smacs=\E(0, rmacs=\E(B, is2=\E[20l\E[?7h, csr=\E[%i%p1%d;%p2%dr, - il1=\EL, il=\E[%p1%dL, dl1=\EM, dl=\E[%p1%dM, - ich1=\E\^, ich=\E[%p1%d@, dch1=\EP, dch=\E[%p1%dP, - sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p6%t;1%;%?%p4%t;5%;m, - sgr0=\EX\E~\EZ\E4\E(B, - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, kclr=\EJ, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - -4424-1|att4424-1|ATT4424-1|tty4424-1|teletype 4424 in display function group I @(#)4424.ti 1.7, - kclr@,kcub1=\ED,kcud1=\EB,kcuf1=\EC,kcuu1=\EA,khome@,use=4424, - -# Info: -# The Teletype 5425 is really version 2 of the Teletype 5420. It -# is quite similar, except for some minor differences. No page -# mode, for example, so all of the cup sequences used above have -# to change back to what's being used for the 5410. Many of the -# option settings have changed their numbering as well. -# -# This has been tested on a preliminary model. -# - -ATT4425|ATT5425|att5425|4425|5425|tty5425|att4425|AT&T 4425/5425 @(#)4425.ti 1.4, - am, da, db, hs, mir, msgr, xenl, xon, - cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, - wsl#55, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[4;7m, cbt=\E[Z, - clear=\E[H\E[J, cnorm=\E[12;0j, cr=\r, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, - dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, - ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, - flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, - hpa=\E[%p1%{1}%+%dG, ht=\t, hts=\EH, ich=\E[%p1%d@, - il=\E[%p1%dL, il1=\E[L, ind=\n, indn=\E[%p1%dE, - invis=\E[8m, is1=\E<\E[?3l$<100>, - is2=\E[0m^O\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212, - is3=\E[?5l, kbeg=\Et, kbs=\b, kcbt=\E[Z, kclr=\E[J, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kdch1=\E[P, kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, - kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, - kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H, kich1=\E[4h, - kil1=\E[L, kind=\E[T, kri=\E[S, ll=\E[24H, mc0=\E[?2i, - mc4=\E[4i, mc5=\E[5i, nel=\r\n, - pfx=\E[%p1%d;%p2%l%02dq\s\s\sF%p1%1d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8, - rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, - rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|, rmso=\E[m, - rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7, - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smir=\E[4h, smkx=\E[21;1j\E[25;4j\Eent\E~, - smln=\E~, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, - tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, - -ATT4425-nl|ATT5425-nl|att5425-nl|4425-nl|5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 without label change 80 column mode @(#)4425.ti 1.4, - smkx=\E[21;1j\E[25;4j\Eent,use=4425, - -ATT4425-nl-w|ATT5425-nl-w|att5425-nl-w|4425-nl-w|5425-nl-w|tty5425-nl-w|att4425-nl-w|AT&T 4425/5425 without label change 132 column mode @(#)4425.ti 1.4, - smkx=\E[21;1j\E[25;4j\Eent,use=4425-w, - -4425-fk|5425-fk|tty5425-fk|att4425-fk|AT&T 4425/5425 without function keys @(#)4425.ti 1.4, - smkx@,rmkx@,use=5425, - -ATT4425-w|att5425-w|ATT5425-w|att4425-w|4425-w|5425-w|tty5425-w|teletype 4425/5425 in 132 column mode @(#)4425.ti 1.4, - lm#54, cols#132, wsl#97, -# Info: -# set 132 column mode, -# - is1=\E[?3h$<100>, - use=tty5425, - -4425-w-fk|5425-w-fk|tty5425-w-fk|att4425-w-fk|ATT4425-w-fk|att5425-w-fk|ATT5425-w-fk|AT&T 4425/5425 without function keys in wide mode @(#)4425.ti 1.4, - smkx@,rmkx@,use=5425-w, - -4426|att4426|ATT4426|tty4426|teletype 4426S @(#)4426.ti 1.2, - am,xon, - is1=\Ec\E[?7h, - bel=^G, - bold=\E[5m, - clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V, - cols#80, - cr=^M, - cub1=\E[D, - cub=\E[%p1%dD, - cud1=\E[B, - cud=\E[%p1%dB, - cuf1=\E[C, - cuf=\E[%p1%dC, - cup=\E[%i%p1%d;%p2%dH, - cuu1=\EA, - cuu=\E[%p1%dA, - dch1=\EP, - dch=\E[%p1%dP, - dl1=\E[M, - dl=\E[%p1%dM, - ed=\E[J, - el=\E[0K, - home=\E[H, - hpa=\E[%p1%dG, - hts=\E1, - ht=\t, - ich1=\E\^, - ich=\E[%p1%d@, - il1=\EL, - il=\E[%p1%dL, - ind=\ES, - ind=^J, - indn=\E[%p1%dS, - is2=\E[m\E[1;24r, - kbs=^H, - kcbt=\EO, - kclr=\E[2J, - kcub1=\ED, - kcud1=\EB, - kcuf1=\EC, - kcuu1=\EA, - kf1=\EOP, - kf2=\EOQ, - kf3=\EOR, - kf4=\EOS, - kf5=\EOT, - kf6=\EOU, - kf7=\EOV, - kf8=\EOW, - khome=\E[H, - kll=\E[24;1H, - lines#24, - ll=\E[24H, - nel=^M^J, - rc=\E8, - rev=\E[7m, - ri=\EM, - ri=\ET, - ri=\E[1U, - rin=\E[%p1%dT, - rmacs=\E(B, - rmso=\E[0m, - rmul=\E[0m, - rmul=\E[m, - rs2=\Ec\E[?3l\E[2;0y, - sc=\E7, - sgr0=\E[0m\E(B, - smacs=\E(0, - smso=\E[5m, - smul=\E[4m, - smul=\E[4m, - tbc=\E[3g, - lm#48,da,db, - vpa=\E[%p1%dd, - - -# Terminfo entry for the AT&T 510 A Personal Terminal -# Function keys 9 - 16 are available only after the -# screen labeled (soft keys/action blocks) are labeled. Function key -# 9 corresponds to the leftmost touch target on the screen, -# function key 16 corresponds to the rightmost. -# -# -# This entry is based on one done by Ernie Rice at Summit, NJ and -# changed by Anne Gallup, Skokie, IL, ttrdc!anne -# -att510a|510a|bct510a|510A|AT&T 510A Personal Terminal @(#)510a.ti 1.3, - am, - xenl, - mir, - msgr, - xon, - cols#80, - lines#24, - nlab#8, - lh#2, - lw#7, - cbt=\E[Z, - bel=^G, - cr=^M, - tbc=\E[3g, - clear=\E[H\E[J, - el=\E[0K, - ed=\E[0J, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[1B, - home=\E[H, - cub1=^H, - cnorm=\E[11;3|, - cuf1=\E[C, - cuu1=\E[A, - civis=\E[11;0|, - cvvis=\E[11;2|, - dch1=\E[P, - dl1=\E[M, - smacs=^N, - blink=\E[5m, - bold=\E[2;7m, - dim=\E[2m, - rev=\E[7m, - smso=\E[7m, - smul=\E[4m, - rmacs=^O, - sgr0=\E[m^O, - rmso=\E[m, - rmul=\E[m, - ff=^L, - is3=\E[21;1|\212, - il1=\E[L, - kbs=^H, - kcud1=\E[B, - kf1=\EOm, - kf2=\EOV, - kf3=\EOu, - kf4=\ENj, - kf5=\ENe, - kf6=\ENf, - kf7=\ENh, - kf8=\E[H, - kf9=\EOc, - kf10=\EOd, - kf11=\EOe, - kf12=\EOf, - kf13=\EOg, - kf14=\EOh, - kf15=\EOi, - kf16=\EOj, - kcub1=\E[D, - kcuf1=\E[C, - kind=\E[S, - kri=\E[T, - kcuu1=\E[A, - nel=\EE, - dch=\E[%p1%dP, - dl=\E[%p1%dM, - cud=\E[%p1%dB, - il=\E[%p1%dL, - cub=\E[%p1%dD, - cuf=\E[%p1%dC, - cuu=\E[%p1%dA, - mc0=\E[0i, - mc4=\E[?8i, - mc5=\E[?4i, - rc=\E8, - sc=\E7, - ind=^J, - ri=\EM, - sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t^N%e^O%;, - hts=\EH, - ht=\t, - acsc=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\,h.e+g`b, - pln=\E[%p1%dp%p2%:-16s, - kcbt=\E[Z, - enacs=\E(B\E)1, - kLFT=\E[u, - kRIT=\E[v, - el1=\E[1K, - is1=\E(B\E)1\E[2l, - -# Terminfo entry for the AT&T 510 D Personal Terminal -# Function keys 9 through 16 are accessed by bringing up the -# system blocks. -# Function key 9 corresponds to the leftmost touch target on the screen, -# function key 16 corresponds to the rightmost. -# -# There are problems with soft key labeling. These are due to -# strangenesses in the native terminal that are impossible to -# describe in a terminfo. -# -# -att510d|510d|bct510d|510D|AT&T 510D Personal Terminal @(#)510d.ti 1.2, - am, - da, - db, - mir, - msgr, - xenl, - xon, - cols#80, - lh#2, - lines#24, - lm#48, - lw#7, - nlab#8, - acsc=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\,h.e+g`b, - bel=^G, - blink=\E[5m, - bold=\E[2;7m, - cbt=\E[Z, - clear=\E[H\E[J, - cnorm=\E[11;3|, - cr=^M, - cub1=^H, - cub=\E[%p1%dD, - cud1=\E[1B, - cud=\E[%p1%dB, - cuf1=\E[C, - cuf=\E[%p1%dC, - cup=\E[%i%p1%d;%p2%dH, - cuu1=\E[A, - cuu=\E[%p1%dA, - cvvis=\E[11;2|, - dch1=\E[P, - dch=\E[%p1%dP, - dim=\E[2m, - dl1=\E[M, - dl=\E[%p1%dM, - ed=\E[0J, - el1=\E[1K, - el=\E[0K, - enacs=\E(B\E)1, - ff=^L, - home=\E[H, - hpa=\E[%p1%{1}%+%dG, - hts=\EH, - ht=\t, - ich=\E[%p1%d@, - il1=\E[L, - il=\E[%p1%dL, - ind=^J, - indn=\E[%p1%dS, - invis=\E[8m, - is1=\E(B\E)1\E[5;0|, - is3=\E[21;1|\212, - kbs=^H, - kcbt=\E[Z, - kcub1=\E[D, - kcud1=\E[B, - kcuf1=\E[C, - kcuu1=\E[A, - kf10=\EOd, - kf11=\EOe, - kf12=\EOf, - kf13=\EOg, - kf14=\EOh, - kf15=\EOi, - kf16=\EOj, - kf1=\EOm, - kf2=\EOV, - kf3=\EOu, - kf4=\ENj, - kf5=\ENe, - kf6=\ENf, - kf7=\ENh, - kf8=\E[H, - kf9=\EOc, - kind=\E[S, - kLFT=\E[u, - kri=\E[T, - kRIT=\E[v, - ll=\E#2, - mc0=\E[0i, - mc4=\E[?8i, - mc5=\E[?4i, - mgc=\E:, - nel=\EE, - pln=\E[%p1%dp%p2%:-16s, - rc=\E8, - rep=%p1%c\E[%p2%{1}%-%db, - rev=\E[7m, - ri=\EM, - rin=\E[%p1%dT, - rmacs=^O, - rmir=\E[4l, - rmkx=\E[19;0|, - rmln=\E<, - rmso=\E[m, - rmul=\E[m, - rmxon=\E[29;1|, - rs2=\E[5;0|, - sc=\E7, - sgr0=\E[m^O, - sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - smacs=^N, - smgl=\E4, - smgr=\E5, - smir=\E[4h, - smkx=\E[19;1|, - smln=\E?, - smso=\E[7m, - smul=\E[4m, - smxon=\E[29;0|, - tbc=\E[3g, - vpa=\E[%p1%{1}%+%dd, - - -ATT513|att513|513|att513-page|513-page|attis513-pfk|513bct|AT&T 513 Terminal using page mode @(#)513.ti 1.3, - am, chts, mir, msgr, xenl, xon, - cols#80, lh#2, lines#24, lw#8, nlab#8, - acsc=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\,h.e+g`b, - bel=^G, blink=\E[5m, bold=\E[4;7m, cbt=\E[Z, - clear=\E[H\E[J, cnorm=\E[11;0|, cr=\r, - csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, - dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, - el1=\E[1K, enacs=\E(B\E)1, home=\E[H, - hpa=\E[%p1%{1}%+%dG, ht=\t, hts=\EH, ich=\E[%p1%d@, - il=\E[%p1%dL, il1=\E[L, ind=\n, indn=\E[%p1%dE, - invis=\E[8m, - is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l, - kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, - kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, - kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK, - kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ, - kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY, - kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=\b, - kcan=\EOw, kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, - kcpy=\ENd, kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf, kdl1=\ENe, - kel=\EOa, kend=\E0, kent=\Eent, kext=\EOk, kf1=\EOc, - kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, - kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm, khome=\E[H, - kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi, - kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, - kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, - kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB, - ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2, - mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, - mc5=\E[?98l\E[?4i, nel=\EE, - pfkey=\E[%p1%d;%p2%l%d;3;0p\s\s\sF%p1%d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pfloc=\E[%p1%d;%p2%l%d;2;0p\s\s\sF%p1%d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pfx=\E[%p1%d;%p2%l%d;1;0p\s\s\sF%p1%d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pln=\E[%p1%dp%p2%:-16s, rc=\E8, - rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, - rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l, rmkx=\E[19;0|\E[21;1|\212, - rmln=\E<, rmso=\E[m, rmul=\E[m, - rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l, - rs2=\E[5;0|, sc=\E7, - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smir=\E[4h, smkx=\E[19;1|\E[21;4|\Eent, - smln=\E?, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, - vpa=\E[%p1%{1}%+%dd, - -ATT500|att500|bct500|500|BCT500|AT&T-IS 500 terminal @(#)513.ti 1.3, - use=att513, - -# Info: -# 5620 terminfo (2.0 or later ROMS with char attributes) -# -# assumptions: -# ind (scroll forward one line) is only done at screen bottom -# -att5620|ATT5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns @(#)5620.ti 1.3, - npc,xon,am, cols#88, lines#70, it#8, - bel=^G, cr=^M, clear=\E[H\E[J, - ht=^I, nel=^J, -# Info: -# clear to end of line, screen -# - el=\E[K, ed=\E[J, -# Info: -# scroll screen up/down one/many lines -# - ind=\E[S, indn=\E[%p1%dS, ri=\E[T, rin=\E[%p1%dT, -# Info: -# cursor arbitrarily, down, home, left, right, up -# cup=\E[%i%p1%d;%p2%dH, home=\E[H, -# - cup=\E[%i%p1%d;%p2%dH, cud1=\E[B, home=\E[H, - cub1=^H, cuf1=\E[C, cuu1=\E[A, -# Info: -# delete/insert one/many characters/lines -# - dch1=\E[P, dch=\E[%p1%dP, dl1=\E[M, dl=\E[%p1%dM, - ich1=\E[@, ich=\E[%p1%d@, il1=\E[L, il=\E[%p1%dL, -# Info: -# sequences sent by keys: backspace, clear, down-arrow, -# home-arrow, left-arrow, home-down, right-arrow, up-arrow -# - kbs=^H, kclr=\E[2J, kcud1=\E[B, khome=\E[H, - kcub1=\E[D, kll=\E[70;1H, kcuf1=\E[C, kcuu1=\E[A, -# Info: -# program function keys, reset terminal, restore/store cursor -# position (padding in pfx cannot be used, since terminal doesn't -# have a padding character, but it is needed and FMLI extracts -# and uses this information -# - pfx=\E[%p1%d;%p2%l%dq%p2%s$<230/>, - rs1=\Ec, rc=\E8, sc=\E7, -# Info: -# set/clear underline/standout character attributes -# - smul=\E[4m, rmul=\E[0m, - smso=\E[7m, rmso=\E[0m, -# Info: -# reverse video, reset character attributes, pseudo-dim, -# pseudo-bold -# - rev=\E[7m, sgr0=\E[0m, - dim=\E[2m, bold=\E[2m, - -att5620-24|ATT5620-24|5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer @(#)5620.ti 1.3, - lines#24, use=5620, - -att5620-34|ATT5620-34|5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer @(#)5620.ti 1.3, - lines#34, use=5620, - - -#Info: -# Entries for kf15 thru kf28 refer to the shifted system pf keys. -# -# Entries for kf29 thru kf46 refer to the alternate keypad mode -# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER - - -605|705|605bct|ATT605|att605|AT&T 605 80 column 102key keyboard @(#)605.ti 1.5, - am, - xenl, - hs, - eslok, - mir, - msgr, - xon, - cols#80, - it#8, - lh#2, - lines#24, - lw#8, - nlab#8, - wsl#80, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, - blink=\E[5m, - bold=\E[1m, - cbt=\E[Z, - civis=\E[?25l, - clear=\E[H\E[J, - cnorm=\E[?25h\E[?12l, - cr=^M, - csr=\E[%i%p1%d;%p2%dr, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[B, - cub=\E[%p1%dD, - cub1=^H, - cud=\E[%p1%dB, - cuf=\E[%p1%dC, - cuf1=\E[C, - cuu=\E[%p1%dA, - cuu1=\E[A, - cvvis=\E[?12;25h, - dch1=\E[P, - dch=\E[%p1%dP, - dim=\E[2m, - dl=\E[%p1%dM, - dl1=\E[M, - ed=\E[J, - el=\E[K, - el1=\E[1K, - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - home=\E[H, - ht=\t, - ich=\E[%p1%d@, - il=\E[%p1%dL, - il1=\E[L, - ind=\ED, - invis=\E[8m, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, - is2=\E[0m^O, - is3=\E(B\E)0, - kbs=^H, - kcbt=\E[Z, - kclr=\E[2J, - kcub1=\E[D, - kcud1=\E[B, - kcuf1=\E[C, - kcuu1=\E[A, - kdch1=\E[P, - kdl1=\E[M, - kend=\E[24;1H, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - kf15=\EOC, - kf16=\EOD, - kf17=\EOE, - kf18=\EOF, - kf19=\EOG, - kf20=\EOH, - kf21=\EOI, - kf22=\EOJ, - kf23=\ENO, - kf24=\ENP, - kf25=\ENQ, - kf26=\ENR, - kf27=\ENS, - kf28=\ENT, - kf29=\EOP, - kf30=\EOQ, - kf31=\EOR, - kf32=\EOS, - kf33=\EOw, - kf34=\EOx, - kf35=\EOy, - kf36=\EOm, - kf37=\EOt, - kf38=\EOu, - kf39=\EOv, - kf40=\EOl, - kf41=\EOq, - kf42=\EOr, - kf43=\EOs, - kf44=\EOp, - kf45=\EOn, - kf46=\EOM, - khome=\E[H, - kil1=\E[L, - kind=\E[S, - kich1=\E[@, - kpp=\E[V, - knp=\E[U, - kri=\E[T, - kLFT=\E[ A, - kRIT=\E[ @, - ll=\E[24H, - mc4=\E[?4i, - mc5=\E[?5i, - nel=\EE, - pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - rev=\E[7m, - ri=\EM, - rmacs=^O, - rmir=\E[4l, - rs2=\Ec\E[?3l, - rc=\E8, - rmso=\E[m, - rmln=\E[2p, - rmul=\E[m, - sgr0=\E[m^O, - sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - smacs=^N, - smir=\E[4h, - smso=\E[7m, - smul=\E[4m, - smln=\E[p, - sc=\E7, - tsl=\E7\E[25;%i%p1%dx, - -605-w|605bct-w|ATT605-w|att605-w|AT&T 605-w 132 column 102 key keyboard @(#)605.ti 1.5, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, - wsl#132, - use=605, -#Info: -# Entries for kf15 thru kf28 refer to the shifted system pf keys. -# -# Entries for kf29 thru kf46 refer to the alternate keypad mode -# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER -605V2|605V2bct|ATT605V2|att605V2|AT&T 605V2 80 column 102key keyboard @(#)605V2.ti 1.5, - am, - xenl, - hs, - eslok, - mir, - msgr, - xon, - cols#80, - it#8, - lh#2, - lines#24, - lw#8, - nlab#8, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, - blink=\E[5m, - bold=\E[1m, - cbt=\E[Z, - civis=\E[?25l, - clear=\E[H\E[J, - cnorm=\E[?25h\E[?12l, - cr=^M, - csr=\E[%i%p1%d;%p2%dr, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[B, - cub=\E[%p1%dD, - cub1=^H, - cud=\E[%p1%dB, - cuf=\E[%p1%dC, - cuf1=\E[C, - cuu=\E[%p1%dA, - cuu1=\E[A, - cvvis=\E[?12;25h, - dch1=\E[P, - dch=\E[%p1%dP, - dim=\E[2m, - dl=\E[%p1%dM, - dl1=\E[M, - ed=\E[J, - el=\E[K, - el1=\E[1K, - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - home=\E[H, - ht=\t, - ich=\E[%p1%d@, - il=\E[%p1%dL, - il1=\E[L, - ind=\ED, - invis=\E[8m, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, - is2=\E[0m^O, - is3=\E(B\E)0, - kbs=^H, - kcbt=\E[Z, - kclr=\E[2J, - kcub1=\E[D, - kcud1=\E[B, - kcuf1=\E[C, - kcuu1=\E[A, - kdch1=\E[P, - kdl1=\E[M, - kend=\E[24;1H, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - kf15=\EOC, - kf16=\EOD, - kf17=\EOE, - kf18=\EOF, - kf19=\EOG, - kf20=\EOH, - kf21=\EOI, - kf22=\EOJ, - kf23=\ENO, - kf24=\ENP, - kf25=\ENQ, - kf26=\ENR, - kf27=\ENS, - kf28=\ENT, - kf29=\EOP, - kf30=\EOQ, - kf31=\EOR, - kf32=\EOS, - kf33=\EOw, - kf34=\EOx, - kf35=\EOy, - kf36=\EOm, - kf37=\EOt, - kf38=\EOu, - kf39=\EOv, - kf40=\EOl, - kf41=\EOq, - kf42=\EOr, - kf43=\EOs, - kf44=\EOp, - kf45=\EOn, - kf46=\EOM, - khome=\E[H, - kil1=\E[L, - kich1=\E[@, - kpp=\E[V, - knp=\E[U, - kLFT=\E[ A, - kRIT=\E[ @, - ll=\E[24H, - nel=\EE, - pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - rev=\E[7m, - ri=\EM, - rmacs=\E)B^O, - rmir=\E[4l, - rs2=\Ec\E[?3l, - rc=\E8, - rmso=\E[m, - rmln=\E[2p, - rmul=\E[m, - sgr0=\E[m^O, - sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - smacs=\E)0^N, - smir=\E[4h, - smso=\E[7m, - smul=\E[4m, - smln=\E[p, - sc=\E7, - tsl=\E7\E[25;%i%p1%dx, - tbc=\E[3g, - fln=4\,4, - hts=\EH, - swidm=\E#6, - mc0=\E[i, - mc4=\E[?4i, - mc5=\E[?5i, -605V2-w|605V2bct-w|ATT605V2-w|att605V2-w|AT&T 605V2-w 132 column 102 key keyboard @(#)605V2.ti 1.5, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, - use=605V2, -610|610bct|ATT610|att610|AT&T 610; 80 column; 98key keyboard @(#)610.ti 1.8, - am, - xenl, - hs, - eslok, - mir, - msgr, - xon, - cols#80, - it#8, - lh#2, - lines#24, - lw#8, - nlab#8, - wsl#80, - cbt=\E[Z, - bel=^G, - cr=^M, - csr=\E[%i%p1%d;%p2%dr, - clear=\E[H\E[J, - el=\E[K, - ed=\E[J, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[B, - home=\E[H, - civis=\E[?25l, - cub1=^H, - cnorm=\E[?25h\E[?12l, - cuf1=\E[C, - ll=\E[24H, - cuu1=\E[A, - cvvis=\E[?12;25h, - dch1=\E[P, - dl1=\E[M, - smacs=^N, - blink=\E[5m, - bold=\E[1m, - dim=\E[2m, - smir=\E[4h, - ich=\E[%p1%d@, - invis=\E[8m, - rev=\E[7m, - smso=\E[7m, - smul=\E[4m, - rmacs=^O, - sgr0=\E[m^O, - rmir=\E[4l, - rmso=\E[m, - rmul=\E[m, - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, - is2=\E[0m^O, - is3=\E(B\E)0, - il1=\E[L, - kbs=^H, - kclr=\E[2J, - kcud1=\E[B, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - khome=\E[H, - kcub1=\E[D, - kcuf1=\E[C, - kind=\E[S, - kri=\E[T, - kcuu1=\E[A, - nel=\EE, - dch=\E[%p1%dP, - dl=\E[%p1%dM, - cud=\E[%p1%dB, - il=\E[%p1%dL, - cub=\E[%p1%dD, - cuf=\E[%p1%dC, - cuu=\E[%p1%dA, - pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - mc4=\E[?4i, - mc5=\E[?5i, - rs2=\Ec\E[?3l, - rc=\E8, - sc=\E7, - ind=\ED, - ri=\EM, - sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - ht=\t, - tsl=\E7\E[25;%i%p1%dx, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - kcbt=\E[Z, - smln=\E[p, - rmln=\E[2p, - kLFT=\E[ @, - kRIT=\E[ A, - el1=\E[1K, -610-w|610bct-w|ATT610-w|att610-w|AT&T 610; 132 column; 98key keyboard @(#)610.ti 1.8, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=610, -610-103k|610bct-103k|ATT610-103k|att610-103k|AT&T 610; 80 column; 103key keyboard @(#)610.ti 1.8, - kf9@, - kf10@, - kf11@, - kf12@, - kf13@, - kf14@, - kdch1=\ENf, - kdl1=\ENe, - kel=\EOa, - kich1=\ENj, - krmir=\ENj, - knp=\E[U, - kpp=\E[V, - kbeg=\E9, - kcan=\EOw, - kclo=\EOV, - kcmd=\EOu, - kcpy=\ENd, - kcrt=\EOn, - kend=\E0, - kext=\EOk, - kfnd=\EOx, - khlp=\EOm, - kmrk=\ENi, - kmsg=\EOl, - kmov=\ENc, - knxt=\ENh, - kopn=\EOv, - kopt=\EOr, - kprt=\EOz, - kprv=\ENg, - krdo=\EOt, - kref=\EOb, - krfr=\ENa, - krpl=\EOy, - krst=\EOB, - kres=\EOq, - ksav=\EOo, - kspd=\EOp, - kund=\EOs, - kBEG=\ENB, - kCAN=\EOW, - kCMD=\EOU, - kCPY=\END, - kCRT=\EON, - kDC=\ENF, - kDL=\ENE, - kslt=\ENI, - kEND=\ENN, - kEOL=\EOA, - kEXT=\EOK, - kFND=\EOX, - kHLP=\EOM, - kMSG=\EOL, - kMOV=\ENC, - kNXT=\ENH, - kOPT=\EOR, - kPRT=\EOZ, - kPRV=\ENG, - kRDO=\EOT, - kRPL=\EOY, - kRES=\EOQ, - kSAV=\EOO, - kSPD=\EOP, - kUND=\EOS, - use=610, -610-103k-w|610bct-103k-w|ATT610-103k-w|att610-103k-w|AT&T 610; 132 column; 103key keyboard @(#)610.ti 1.8, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=610-103k, -615|615mt|ATT615|att615|AT&T 615; 80 column; 98key keyboard @(#)615.ti 1.4, -# add sequences for changing flow control setting - smxon=\E[?21;29h, - rmxon=\E[?21l, -# modify initialization string font setting to match terminal on power-up - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, -# add print screen not in previous versions of 615 MT - mc0=\E[i, -# add shifted HOME key - kHOM=\ENM, - kLFT=\E[ A, - kRIT=\E[ @, - kf15=\EOC, - kf16=\EOD, - kf17=\EOE, - kf18=\EOF, - kf19=\EOG, - kf20=\EOH, - kf21=\EOI, - kf22=\EOJ, - kf23=\ENO, - kf24=\ENP, - kf25=\ENQ, - kf26=\ENR, - kf27=\ENS, - kf28=\ENT, - kf29=\EOP, - kf30=\EOQ, - kf31=\EOR, - kf32=\EOS, - kf33=\EOw, - kf34=\EOx, - kf35=\EOy, - kf36=\EOm, - kf37=\EOt, - kf38=\EOu, - kf39=\EOv, - kf40=\EOl, - kf41=\EOq, - kf42=\EOr, - kf43=\EOs, - kf44=\EOp, - kf45=\EOn, - kf46=\EOM, - use=610, -615-w|615mt-w|ATT615-w|att615-w|AT&T 615; 132 column; 98key keyboard @(#)615.ti 1.4, -# add sequences for changing flow control setting - smxon=\E[?21;29h, - rmxon=\E[?21l, -# modify initialization string font setting to match terminal on power-up - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)B, -# add print screen not in previous versions of 615 MT - mc0=\E[i, -# add shifted HOME key - kHOM=\ENM, - kLFT=\E[ A, - kRIT=\E[ @, - kf15=\EOC, - kf16=\EOD, - kf17=\EOE, - kf18=\EOF, - kf19=\EOG, - kf20=\EOH, - kf21=\EOI, - kf22=\EOJ, - kf23=\ENO, - kf24=\ENP, - kf25=\ENQ, - kf26=\ENR, - kf27=\ENS, - kf28=\ENT, - kf29=\EOP, - kf30=\EOQ, - kf31=\EOR, - kf32=\EOS, - kf33=\EOw, - kf34=\EOx, - kf35=\EOy, - kf36=\EOm, - kf37=\EOt, - kf38=\EOu, - kf39=\EOv, - kf40=\EOl, - kf41=\EOq, - kf42=\EOr, - kf43=\EOs, - kf44=\EOp, - kf45=\EOn, - kf46=\EOM, - use=610-w, -615-103k|615mt-103k|ATT615-103k|att615-103k|AT&T 615; 80 column; 103key keyboard @(#)615.ti 1.4, -# add sequences for changing flow control setting - smxon=\E[?21;29h, - rmxon=\E[?21l, -# modify initialization string font setting to match terminal on power-up - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, -# add print screen not in previous versions of 615 MT - mc0=\E[i, -# remove shifted HOME key added for 615 with 98-key keyboard - kHOM@, - kLFT=\E[ A, - kRIT=\E[ @, - use=610-103k, -615-103k-w|615mt-103k-w|ATT615-103k-w|att615-103k-w|AT&T 615; 132 column; 103key keyboard @(#)615.ti 1.4, -# add sequences for changing flow control setting - smxon=\E[?21;29h, - rmxon=\E[?21l, -# modify initialization string font setting to match terminal on power-up - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)B, -# add print screen not in previous versions of 615 MT - mc0=\E[i, -# remove shifted HOME key added for 615 with 98-key keyboard - kHOM@, - kLFT=\E[ A, - kRIT=\E[ @, - use=610-103k-w, -# -# AT&T 615CMT - Color Multitasking Terminal - default is 102 keyboard -# -615CMT-102k|615cmt-102k|A615CMT-102k|a615CMT-102k|AT&T 615 CMT color multitasking terminal; 80 column; 102 key keyboard @(#)615CMT.ti 1.5, - colors#8,pairs#64, -# all attributes supported except protect -# with bold mapped to cyan, dim to blue, and standout as for the 615 MT -# -# color terminfo escape sequence parameters -# parameters foreground background -# -# black 0 30 40 -# blue 1 34 44 -# green 2 32 42 -# cyan 3 36 46 -# red 4 31 41 -# magenta 5 35 45 -# yellow 6 33 43 -# white 7 37 47 -# default - 39 49 -# -# initial color always white foreground on black background - op=\E[37;40m, - sgr0=\E[m^O, -# set for foreground and background color variable - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%{7}%>%t9%e%p1%d%;m, - setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%{7}%>%t9%e%p1%d%;m, -# -# attribute terminfo parameter escape sequence parameter - -# none 0 0 -# standout 1 7 (reverse) -# underline 2 4 -# reverse 3 7 -# blink 4 5 -# dim 5 34 (blue) -# bold 6 36 (cyan) -# invisible 7 8 -# protect 8 not supported -# altcharset 9 no sequence - SO for on, SI for off -# -# modify sgr from 615 MT for dim and bold - sgr=\E[0%?%p6%t;36%;%?%p5%t;34%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - bold=\E[36m, - dim=\E[34m, -# add keys for 102 key keyboard not on 98 key keyboard - kdch1=\E[P, - kdl1=\E[M, - kend=\E[24;1H, - kich1=\E[@, - kil1=\E[L, - knp=\E[U, - kpp=\E[V, -# remove key for 98 key keyboard not on 102 key keyboard - kHOM@, -# add sequences for changing flow control setting - smxon=\E[?21;29h, - rmxon=\E[?21l, -# modify initialization string font setting - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, -# add some enhancements not in previous versions for 615 MT - mc0=\E[i, -# all other controls are the same as the 615 MT - use=att615, -# -# AT&T 615CMT - Color Multitasking Terminal - default is 98 keyboard -# -615CMT-98k|615cmt-98k|A615CMT-98k|a615CMT-98k|AT&T 615 CMT color multitasking terminal; 80 column; 98 key keyboard @(#)615CMT.ti 1.5, - kHOM=\ENM, - kdch1@, - kdl1@, - kend@, - kich1@, - kil1@, - knp@, - kpp@, - use=615CMT-102k, -# -# AT&T 615CMT - Color Multitasking Terminal - default is 102 keyboard -# and wide columns -# -615CMT-102k-w|615cmt-102k-w|A615CMT-102k-w|a615CMT-102k-w|AT&T 615 CMT color multitasking terminal; 132 column; 102 key keyboard @(#)615CMT.ti 1.5, - cols#132, - wsl#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)B, - use=615CMT-102k, -# -# AT&T 615CMT - Color Multitasking Terminal - default is 98 keyboard -# and wide columns -# -615CMT-98k-w|615cmt-98k-w|A615CMT-98k-w|a615CMT-98k-w|AT&T 615 CMT color multitasking terminal; 132 column; 98 key keyboard @(#)615CMT.ti 1.5, - cols#132, - wsl#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)B, - kHOM=\ENM, - kdch1@, - kdl1@, - kend@, - kich1@, - kil1@, - knp@, - kpp@, - use=615CMT-102k, -620|620mtg|ATT620|att620|AT&T 620; 80 column; 98key keyboard @(#)620.ti 1.8, - am, - xenl, - hs, - eslok, - mir, - msgr, - xon, - cols#80, - it#8, - lh#2, - lines#24, - lw#8, - nlab#8, - wsl#80, - cbt=\E[Z, - bel=^G, - cr=^M, - csr=\E[%i%p1%d;%p2%dr, - clear=\E[H\E[J, - el=\E[K, - ed=\E[J, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[B, - home=\E[H, - civis=\E[?25l, - cub1=^H, - cnorm=\E[?25h\E[?12l, - cuf1=\E[C, - ll=\E[24H, - cuu1=\E[A, - cvvis=\E[?12;25h, - dch1=\E[P, - dl1=\E[M, - smacs=^N, - blink=\E[5m, - bold=\E[1m, - smir=\E[4h, - ich=\E[%p1%d@, - invis=\E[8m, - rev=\E[7m, - smso=\E[7m, - smul=\E[4m, - rmacs=^O, - sgr0=\E[m^O, - rmir=\E[4l, - rmso=\E[m, - rmul=\E[m, - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h, - is2=\E[0m^O, - is3=\E(B\E)0, - il1=\E[L, - kbs=^H, - kclr=\E[2J, - kcud1=\E[B, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - kf15=\EOC, - kf16=\EOD, - kf17=\EOE, - kf18=\EOF, - kf19=\EOG, - kf20=\EOH, - kf21=\EOI, - kf22=\EOJ, - kf23=\ENO, - kf24=\ENP, - kf25=\ENQ, - kf26=\ENR, - kf27=\ENS, - kf28=\ENT, - kf29=\EOP, - kf30=\EOQ, - kf31=\EOR, - kf32=\EOS, - kf33=\EOw, - kf34=\EOx, - kf35=\EOy, - kf36=\EOm, - kf37=\EOt, - kf38=\EOu, - kf39=\EOv, - kf40=\EOl, - kf41=\EOq, - kf42=\EOr, - kf43=\EOs, - kf44=\EOp, - kf45=\EOn, - kf46=\EOM, - khome=\E[H, - kcub1=\E[D, - kcuf1=\E[C, - kind=\E[S, - kri=\E[T, - kcuu1=\E[A, - nel=\EE, - dch=\E[%p1%dP, - dl=\E[%p1%dM, - cud=\E[%p1%dB, - il=\E[%p1%dL, - cub=\E[%p1%dD, - cuf=\E[%p1%dC, - cuu=\E[%p1%dA, - pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - mc4=\E[?4i, - mc5=\E[?5i, - rs2=\Ec\E[?3l, - rc=\E8, - sc=\E7, - ind=\ED, - ri=\EM, - sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - ht=\t, - tsl=\E7\E[25;%i%p1%dx, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - kcbt=\E[Z, - smln=\E[p, - rmln=\E[2p, - kLFT=\E[ A, - kRIT=\E[ @, - el1=\E[1K, -620-w|620mtg-w|ATT620-w|att620-w|AT&T 620; 132 column; 98key keyboard @(#)620.ti 1.8, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=620, -620-103k|620mtg-103k|ATT620-103k|att620-103k|AT&T 620; 80 column; 103key keyboard @(#)620.ti 1.8, - kf9@, - kf10@, - kf11@, - kf12@, - kf13@, - kf14@, - kf15@, - kf16@, - kf17@, - kf18@, - kf19@, - kf20@, - kf21@, - kf22@, - kf23@, - kf24@, - kf25@, - kf26@, - kf27@, - kf28@, - kf29@, - kf30@, - kf31@, - kf32@, - kf33@, - kf34@, - kf35@, - kf36@, - kf37@, - kf38@, - kf39@, - kf40@, - kf41@, - kf42@, - kf43@, - kf44@, - kf45@, - kf46@, - kdch1=\ENf, - kdl1=\ENe, - kel=\EOa, - kich1=\ENj, - krmir=\ENj, - knp=\E[U, - kpp=\E[V, - kbeg=\E9, - kcan=\EOw, - kclo=\EOV, - kcmd=\EOu, - kcpy=\ENd, - kcrt=\EOn, - kend=\E0, - kext=\EOk, - kfnd=\EOx, - khlp=\EOm, - kmrk=\ENi, - kmsg=\EOl, - kmov=\ENc, - knxt=\ENh, - kopn=\EOv, - kopt=\EOr, - kprt=\EOz, - kprv=\ENg, - krdo=\EOt, - kref=\EOb, - krfr=\ENa, - krpl=\EOy, - krst=\EOB, - kres=\EOq, - ksav=\EOo, - kspd=\EOp, - kund=\EOs, - kBEG=\ENB, - kCAN=\EOW, - kCMD=\EOU, - kCPY=\END, - kCRT=\EON, - kDC=\ENF, - kDL=\ENE, - kslt=\ENI, - kEND=\ENN, - kEOL=\EOA, - kEXT=\EOK, - kFND=\EOX, - kHLP=\EOM, - kMSG=\EOL, - kMOV=\ENC, - kNXT=\ENH, - kOPT=\EOR, - kPRT=\EOZ, - kPRV=\ENG, - kRDO=\EOT, - kRPL=\EOY, - kRES=\EOQ, - kSAV=\EOO, - kSPD=\EOP, - kUND=\EOS, - use=620, -620-103k-w|620mtg-103k-w|ATT620-103k-w|att620-103k-w|AT&T 620; 132 column; 103key keyboard @(#)620.ti 1.8, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=620-103k, - -############################################################## -# -# 630 terminfo -# -# -630|att630|5630|5630DMD|630MTG|AT&T 630 windowing terminal @(#)630.ti 1.5, - am, da, db, mir, msgr, npc, xon, - cols#80, it#8, lines#60, lm#0, -# -# short descriptions without \E -# - bel=^G, cr=\r, ht=\t, nel=\r\n, -# -# cursor movement -# - cuu1=\E[A, cud1=\E[B, cuf1=\E[C, cub1=\b, - cuu=\E[%p1%dA, cud=\E[%p1%dB, cuf=\E[%p1%dC, cub=\E[%p1%dD, - cup=\E[%i%p1%d;%p2%dH, - home=\E[H, - cbt=\E[Z, -# -# scrolling -# - ind=\ED, ri=\EM, - indn=\E[%p1%dS, rin=\E[%p1%dT, -# -# character attributes -# - smul=\E[4m, rmul=\E[m, - smso=\E[7m, rmso=\E[m, - rev=\E[7m, - sgr=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m, - sgr0=\E[m, -# -# clear -# - el=\E[K, el1=\E[1K, ed=\E[J, clear=\E[H\E[J, -# -# insert/delete -# - dch1=\E[P, dl1=\E[M, il1=\E[L, - dch=\E[%p1%dP, dl=\E[%p1%dM, il=\E[%p1%dL, ich=\E[%p1%d@, - smir=\E[4h, rmir=\E[4l, -# -# pf string -# - pfx=\E[%p1%d;%p2%l%dq%p2%s, -# -# set/reset -# - sc=\E7, rc=\E8, - is2=\E[m, rs2=\Ec, -# -# printer -# - mc4=\E[?4i, mc5=\E[?5i, -# -# keyboard definitions -# - kbs=\b, kclr=\E[2J, khome=\E[H, kcbt=\E[Z, - kcuu1=\E[A, kcud1=\E[B, kcuf1=\E[C, kcub1=\E[D, - kf9=\ENo, kf10=\ENp, kf11=\ENq, - kf12=\ENr, kf13=\ENs, kf14=\ENt, -# -# the following keys are used only by the 122 key keyboard -# - kdch1=\E[P, kdl1=\E[M, - kich1=\E[@, kil1=\E[L, - kf15=\ENu, kf16=\ENv, kf17=\ENw, - kf18=\ENx, kf19=\ENy, kf20=\ENz, - kf21=\EN{, kf22=\EN|, kf23=\EN}, - kf24=\EN~, - - -630-24|att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines @(#)630.ti 1.5, - lines#24, use=630, - - -6300+|PC6300PLUS|pc6300plus|6300plus|6300PLUS|AT&T-IS PC 6300 PLUS Personal Computer @(#)6300+.ti 1.1, - am, - cols#80, lines#24, - bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, - cr=\r, cub1=\b, cud1=\E[B, cuf1=\E[C, - cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, dch1=\E[1P, - dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K, home=\E[H, - hts=\EH, ich1=\E[1@, il1=\E[1L, ind=\n, invis=\E[9m, - kbs=\b, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe, - kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, - kf9=\EOk, nel=\r\n, rev=\E[7m, rmso=\E[m, rmul=\E[m, - smso=\E[7m, smul=\E[4m, tbc=\E[3g, -730|att730|730MTG|AT&T 730 windowing terminal Version @(#)730.ti 1.3, - -# has status line of 80 chars - - hs, - wsl#80, - tsl=\E7\E[;%i%p1%dx, - -# support \E on the status line (status_line_esc_ok) - - eslok, - -# screen dimension - - cols#80, - lines#60, - -# label information - - lw#8, - lh#2, - nlab#24, - rmln=\E[?13h, - smln=\E[?13l, - -# mapping of alternate character set to ASCII - - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - -# change the scrolling region - - csr=\E[%i%p1%d;%p2%dr, - -# cursor visibility control - - civis=\E[?25l, - cnorm=\E[?25h\E[?12l, - cvvis=\E[?12;25h, - -# character set mode - - smacs=^N, - rmacs=^O, - - am, - da, - db, - xenl, - mir, - msgr, - npc, - xon, - it#8, - lm#0, - -# short descriptions without \E - - bel=^G, - cr=^M, - ht=\t, - -# cursor movement - - cud1=\E[B, - cuf1=\E[C, - cuu1=\E[A, - cub1=^H, - cud=\E[%p1%dB, - cuu=\E[%p1%dA, - cuf=\E[%p1%dC, - cub=\E[%p1%dD, - cup=\E[%i%p1%d;%p2%dH, - home=\E[H, - cbt=\E[Z, - -# scrolling - - ind=\ED, - ri=\EM, -# indn=\E[%p1%dS, -# rin=\E[%p1%dT, - -# character attributes - - smul=\E[4m, - rmul=\E[24m, - smso=\E[7m, - rmso=\E[27m, - rev=\E[7m, - sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, - -# character attribute mode - - blink=\E[5m, - bold=\E[1m, - dim=\E[2m, - invis=\E[8m, - -# line attribute - - swidm=\E#6, - -# clear - - el=\E[K, - el1=\E[1K, - ed=\E[J, - clear=\E[H\E[J, - -# insert/delete - - dch1=\E[P, - dl1=\E[M, - il1=\E[L, - dch=\E[%p1%dP, - dl=\E[%p1%dM, - il=\E[%p1%dL, - ich=\E[%p1%d@, - smir=\E[4h, - rmir=\E[4l, - -# pf string -# the escape sequences are different to program -# system function keys 1-24 -# shifted system function keys (numbers 25-48, but no label) -# <25: ESC [ pf# ; string-length q 16-char-label up-to-8-char-str -# >24: ESC [ pf#-24 ; string-length ; 0 ; 3 q up-to-8-char-str - pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\sSYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s, - -# set/reset - - sc=\E7, - rc=\E8, - is2=\E[0m^O, - rs2=\Ec\E[?3l, - -# printer - - mc0=\E[?19h\E[0i, - mc4=\E[?4i, - mc5=\E[?5i, - -# keyboard definition - - kich1=\E[@, - kil1=\E[L, - - kbs=^H, - kclr=\E[2J, - khome=\E[H, - kcbt=\E[Z, - kcuu1=\E[A, - kcud1=\E[B, - kcuf1=\E[C, - kcub1=\E[D, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - kf15=\ENu, - kf16=\ENv, - kf17=\ENw, - kf18=\ENx, - kf19=\ENy, - kf20=\ENz, - kf21=\EN{, - kf22=\EN|, - kf23=\EN}, - kf24=\EN~, - -# the following keys are used for shifted system Fkeys - - kf25=\EOC, - kf26=\EOD, - kf27=\EOE, - kf28=\EOF, - kf29=\EOG, - kf30=\EOH, - kf31=\EOI, - kf32=\EOJ, - kf33=\ENO, - kf34=\ENP, - kf35=\ENQ, - kf36=\ENR, - kf37=\ENS, - kf38=\ENT, - kf39=\EOU, - kf40=\EOV, - kf41=\EOW, - kf42=\EOX, - kf43=\EOY, - kf44=\EOZ, - kf45=\EO[, - kf46=\EO\s, - kf47=\EO], - kf48=\EO\^, - - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, - is3=\E(B\E)0, - kind=\E[S, - kri=\E[T, - nel=\EE, - - - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, - kLFT=\E[\s@, - kRIT=\E[\sA, - -# add sequences for changing flow control setting - - smxon=\E[?21h, - rmxon=\E[?21l, - -# add shifted HOME key - - kHOM=\E[2J, - -# repeat char - - rep=%p1%c\E[%p2%1%-$db, - - -730-41|att730-41|730MTG-41|AT&T 730-41 windowing terminal Version @(#)730.ti 1.3, - - lines#41, - use=730, - -730-24|att730-24|730MTG-24|AT&T 730-24 windowing terminal Version @(#)730.ti 1.3, - - lines#24, - use=730, - -730r|att730r|730MTGr|AT&T 730 rev video windowing terminal Version @(#)730.ti 1.3, - - flash=\E[?5l$<200>\E[?5h, - is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B, - use=730, - -730r-41|att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version @(#)730.ti 1.3, - - lines#41, - use=730r, - -730r-24|att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version @(#)730.ti 1.3, - - lines#24, - use=730r, - -# -# Info: -# TERMINFO entry for the AT&T Unix PC 7300 -# from escape(7) in Unix PC 7300 Manual. -# Somewhat similar to a vt100-am (but different enough -# to redo this from scratch.) -# Info: -# /*************************************************************** -# * -# * FONT LOADING PROGRAM FOR THE UNIX PC -# * -# * This routine loads a font defined in the file ALTFONT -# * into font memory slot #1. Once the font has been loaded, -# * it can be used as an alternative character set. -# * -# * The call to ioctl with the argument WIOCLFONT is the key -# * to this routine. For more information, see window(7) in -# * the PC 7300 documentation. -# ***************************************************************/ -# #include <string.h> /* needed for strcpy call */ -# #include <sys/window.h> /* needed for ioctl call */ -# #define FNSIZE 60 /* font name size */ -# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */ -# /* -# * The file /usr/lib/wfont/special.8.ft comes with the -# * standard PC software. It defines a graphics character set -# * similar to that of the Teletype 5425 terminal. To view -# * this or other fonts in /usr/lib/wfont, use the command -# * cfont <filename>. For further information on fonts see -# * cfont(1) in the PC 7300 documentation. -# */ -# -# struct altfdata /* structure for alt font data */ -# { -# short altf_slot; /* memory slot number */ -# char altf_name[FNSIZE]; /* font name (file name) */ -# }; -# ldfont() -# { -# int wd; /* window in which altfont will be */ -# struct altfdata altf; -# altf.altf_slot=1; -# strcpy(altf.altf_name,ALTFONT); -# for (wd =1; wd < 12; wd++) { -# ioctl(wd, WIOCLFONT,&altf); -# } -# } -# -7300|unixpc|pc7300|PC7300|unix_pc|AT&T UNIX PC Model 7300 @(#)7300.ti 1.5, - am, xon, - cols#80, lines#24, - bel=^G, bold=\E[7m, clear=\E[2J\E[H, 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, dim=\E[2m, dl=\E[%p1%dM, - dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H, il=\E[%p1%dL, - il1=\E[L, ind=\n, kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, - kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE, kEND=\ENN, - kEOL=\EOA, kEXT=\EOK, kFND=\EOX, kHLP=\EOM, kHOM=\ENM, - kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, - kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, - kRIT=\ENL, kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, - kbeg=\E9, kbs=\b, kcan=\EOw, kclo=\EOV, kclr=\E[J, - kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, kcub1=\E[D, - kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf, - kdl1=\ENe, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, - kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, - kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm, khome=\E[H, - kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi, - kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, - kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, - kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB, - ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, nel=\EE, - rev=\E[7m, ri=\EM, rmacs=\E[10m, rmso=\E[0m, - rmul=\E[0m, sgr0=\E[0;10m, smacs=\E[11m, smso=\E[7m, - smul=\E[4m, -SYS75|sys75|AT&T System 75 Cartridge; 80 column; 98key keyboard @(#)SYS75.ti 1.2, - am, - xenl, - hs, - eslok, - mir, - msgr, - xon, - cols#80, - it#8, - lh#2, - lines#24, - lw#8, - nlab#8, - wsl#80, - cbt=\E[Z, - bel=^G, - cr=^M, - csr=\E[%i%p1%d;%p2%dr, - clear=\E[H\E[J, - el=\E[K, - ed=\E[J, - cup=\E[%i%p1%d;%p2%dH, - cud1=\E[B, - home=\E[H, - civis=\E[?25l, - cub1=^H, - cnorm=\E[?25h\E[?12l, - cuf1=\E[C, - ll=\E[24H, - cuu1=\E[A, - cvvis=\E[?12;25h, - dch1=\E[P, - dl1=\E[M, - smacs=^N, - blink=\E[5m, - bold=\E[1m, - dim=\E[2m, - smir=\E[4h, - ich=\E[%p1%d@, - invis=\E[8m, - rev=\E[7m, - smso=\E[7m, - smul=\E[4m, - rmacs=^O, - sgr0=\E[m^O, - rmir=\E[4l, - rmso=\E[m, - rmul=\E[m, - flash=\E[?5h$<200>\E[?5l, - fsl=\E8, - is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, - is2=\E[0m^O, - is3=\E(B\E)0, - il1=\E[L, - kbs=^H, - kcud1=\E[B, - kf1=\EOc, - kf2=\EOd, - kf3=\EOe, - kf4=\EOf, - kf5=\EOg, - kf6=\EOh, - kf7=\EOi, - kf8=\EOj, - kf9=\ENo, - kf10=\ENp, - kf11=\ENq, - kf12=\ENr, - kf13=\ENs, - kf14=\ENt, - khome=\E[H, - kcub1=\E[D, - kcuf1=\E[C, - kind=\E[S, - kri=\E[T, - kcuu1=\E[A, - nel=\EE, - dch=\E[%p1%dP, - dl=\E[%p1%dM, - cud=\E[%p1%dB, - il=\E[%p1%dL, - cub=\E[%p1%dD, - cuf=\E[%p1%dC, - cuu=\E[%p1%dA, - rs2=\Ec\E[?3l, - rc=\E8, - sc=\E7, - ind=\ED, - ri=\EM, - sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - ht=\t, - tsl=\E7\E[25;%i%p1%dx, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - pln=\E[%p1%d;0;0;0p%p2%:-16.16s, - kcbt=\E[Z, - smln=\E?, - rmln=\E<, - el1=\E[1K, - kclr=\E[J, - pfxl=\E[%p1%d;%p2%l%02dp%?%p1%{9}%<%t F%p1%1d %;%p2%s, - mc0=\E[?0i, - mc4=\E[?8i, - mc5=\E[?4i, - kLFT=\ENK, - kRIT=\ENL, - kHOM=\ENM, - hpa=\E[%p1%dG, -SYS75-w|sys75-w|AT&T System 75 Cartridge; 132 column; 98key keyboard @(#)SYS75.ti 1.2, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=SYS75, -SYS75-103k|sys75-103k|AT&T System 75 Cartridge; 80 column; 103key keyboard @(#)SYS75.ti 1.2, - kf9@, - kf10@, - kf11@, - kf12@, - kf13@, - kf14@, - kdch1=\ENf, - kdl1=\ENe, - kel=\EOa, - kich1=\ENj, - krmir=\ENj, - knp=\E[U, - kpp=\E[V, - kbeg=\E9, - kcan=\EOw, - kclo=\EOV, - kcmd=\EOu, - kcpy=\ENd, - kcrt=\EOn, - kend=\E0, - kext=\EOk, - kfnd=\EOx, - khlp=\EOm, - kmrk=\ENi, - kmsg=\EOl, - kmov=\ENc, - knxt=\ENh, - kopn=\EOv, - kopt=\EOr, - kprt=\EOz, - kprv=\ENg, - krdo=\EOt, - kref=\EOb, - krfr=\ENa, - krpl=\EOy, - krst=\EOB, - kres=\EOq, - ksav=\EOo, - kspd=\EOp, - kund=\EOs, - kBEG=\ENB, - kCAN=\EOW, - kCMD=\EOU, - kCPY=\END, - kCRT=\EON, - kDC=\ENF, - kDL=\ENE, - kslt=\ENI, - kEND=\ENN, - kEOL=\EOA, - kEXT=\EOK, - kFND=\EOX, - kHLP=\EOM, - kMSG=\EOL, - kMOV=\ENC, - kNXT=\ENH, - kOPT=\EOR, - kPRT=\EOZ, - kPRV=\ENG, - kRDO=\EOT, - kRPL=\EOY, - kRES=\EOQ, - kSAV=\EOO, - kSPD=\EOP, - kUND=\EOS, - use=SYS75, -SYS75-103k-w|sys75-103k-w|AT&T System 75 Cartridge; 132 column; 103key keyboard @(#)SYS75.ti 1.2, - cols#132, - is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, - wsl#132, - use=SYS75-103k, - -blit|jerq|blit running teletype rom @(#)blit.ti 1.1, - xon,cr=^M, ind=^J, bel=^G, am, ht=^I, it#8, ul, eo, - cud1=^J, cuf1=\EC, cuu1=\EA, cub1=\ED, - cols#87, lines#72, clear=^L, el=\EK, - cup=\EY%p2%' '%+%c%p1%' '%+%c, - il1=\EF!, dl1=\EE!, ich1=\Ef!, dch1=\Ee!, - il=\EF%p1%' '%+%c, dl=\EE%p1%' '%+%c, - ich=\Ef%p1%' '%+%c, dch=\Ee%p1%' '%+%c, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, kbs=^H, - kf1=\Ex, kf2=\Ey, kf3=\Ez, - -cbblit|fixterm|blit running columbus code @(#)blit.ti 1.1, - smso=\EU!, rmso=\EV!, smul=\EU", rmul=\EV", - flash=\E^G, ed=\EJ, smir=\EQ, rmir=\ER, ich1@, cols#88, - mc5=^R, mc4=^T, mc5p=\EP%p1%03d, use=blit, - -oblit|ojerq|first version of blit rom @(#)blit.ti 1.1, - xon,cr=^M, cud1=^J, ind=^J, bel=^G, cols#88, lines#72, it#8, ht=^I, - am, ul, eo, mir, il=\Ef%p1%' '%+%c, dl=\Ee%p1%' '%+%c, - dl1=\EE, rmir=\ER, smir=\EQ, dch1=\EO, cub1=\ED, da, db, - il1=\EF, ed=\EJ, el=\EK, clear=^L, cup=\EY%p2%' '%+%c%p1%' '%+%c, - cuf1=\EC, cuu1=\EA, flash=\E^G, kbs=^H, - -# Info: -# This is an old version of vitty reentered. It is used when -# running the vitty program outside a blit layer. -# - -blitlayer|vitty| @(#)blit.ti 1.1, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#87, lines#72, it#8, ht=^I, - am, clear=^L, cup=\EY%p2%' '%+%c%p1%' '%+%c, el=\EK, il1=\EI, dl1=\ED, - flash=\E^G, cuu1=^K, - -# Info: -# -# This is a generic terminal for the new AT&T terminals that is not -# really for use by itself, but was created to help make the -# support for the other new terminals easier by defining the -# common entry fields only once. There are several things -# that weren't defined here but were common to 2 or more terminal -# entries because they were different in at least 2 of the other -# entries (e.g. clear, cols, cud1, ht, ind, and lines). -# Unfortunately the 4424 has almost completely different data -# for the fields than what the newer ones have and so hasn't been -# included as one of the terminals using this common entry. -# -attgeneric| AT&T generic terminal description @(#)generic.ti 1.2, - am, hs, mir, msgr, xenl, xon, - cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, - wsl#55, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[4;7m, cbt=\E[Z, - clear=\E[H\E[J, cnorm=\E[12;0j, cr=\r, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, - dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, - ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, - flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, - ht=\t, hts=\EH, ich=\E[%p1%d@, - il=\E[%p1%dL, il1=\E[L, ind=\n, indn=\E[%p1%dE, - invis=\E[8m, is1=\E<\E[?3l$<100>, - is2=\E[0m^O\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212, - is3=\E[?5l, kbeg=\Et, kbs=\b, kcbt=\E[Z, kclr=\E[2J, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kdch1=\E[P, kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\n, - kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, - kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H, kich1=\E[4h, - kil1=\E[L, kind=\E[T, kprt=\EOe, kri=\E[S, ll=\E[24H, - mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i, nel=\r\n, - pfx=\E[%p1%d;%p2%l%02dq\s\s\sF%p1%1d\s\s\s\s\s\s\s\s\s\s\s%p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8, - rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, - rmir=\E[4l, rmkx=\E[21;0j, rmln=\E|, rmso=\E[m, - rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7, - sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smir=\E[4h, smkx=\E[21;1j\E~, - smln=\E~, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, - tsl=\E7\E[25;%p1%{8}%+%dH, - -netty| @(#)netty.ti 1.2, - smcup=\EC@\EI@\EU@\ER@\EW@\EP@\E{A\E[@\E#A\EXA, rmcup=\E{@\E#@\EX@, - use=netty-Tabs, - -netty-vi| @(#)netty.ti 1.2, - smcup=\EC@\EI@\EU@\ER@\EW@\EP@\E{A\E[A\E#B\EX@, rmcup=\E{@\E[@\E#@, - use=netty-Tabs, - -netty-Tabs| @(#)netty.ti 1.2, - am, - hs, - mir, - msgr, - it#8, - acsc=jjkkllmmqqxx, - bel=^G, - cr=^M, - clear=^L, - el=\EZ, - cup=\EY%p2%?%p2%{95}%>%t^A%{96}%-%;%' '%+%c%p1%?%p1%{95}%>%t^A%{96}%-%;%' '%+%c, - home=\EY\s\s, - cub1=^H, - cud1=^J, - cuu1=\EA, - dch1=\Ed, - dl1=\ED!, - fsl=^A, - smacs=\ECA, rmacs=\EC@, - smcup=\EC@\EI@\EU@\ER@\EW@\EP@\E{A\E[@\EX@\E#C\EM@!!, rmcup=\E{@\E#@, - smcup=\E{A, rmcup=\E{@, - smir=\EIA, rmir=\EI@, - smul=\EUA, rmul=\EU@, - smso=\ERA, rmso=\ER@, - sgr0=\EC@\EI@\EU@\ER@, - il1=\EO!, - is3=\EF@^A^XOE^A\EFA^A^XOF^A\EFB^A^XOG^A\EFC^A^XOH^A\EFD^A^XOI^A\EFE^A^XOJ^A\EFF^A^XOK^A\EFG^A^XOL^A\EFH^A^XOM^A\EFI^A^XON^A\EFK^A^XOO^A, - kcud1=^XOB, - kf1=^XOE, - kf2=^XOF, - kf3=^XOG, - kf4=^XOH, - kf5=^XOI, - kf6=^XOJ, - kf7=^XOK, - kf8=^XOL, - kclr=^XOM, - khome=^XON, - kll=^XOO, - kcub1=^XOC, - kcuf1=^XOD, - kcuu1=^XOA, - dl=\ED%p1%' '%+%c, - indn=\ES%p1%' '%+%c, - ind=\n, - il=\EO%p1%' '%+%c, - ht=\t, - cols#80, - lines#24, -# Info: -# wind=\Ev%p1%' '%+%c%p3%' '%+%c%p2%' '%+%c%p4%' '%+%c, loses bad -# rev=^N, standout seems to work better -# - tsl=\Eb^A, - -# -# The following Terminfo entry describes functions which are supported by -# the AT&T 5430/pt505 terminal software version 2 and later. -# -# The following represents the screen layout along with the associated -# bezel buttons for the 5430/pt505 terminal. The "kf" designations do -# not appear on the screen but are shown to reference the bezel buttons. -# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate -# position relative to the screen. -# -# -# -# +----------------------------------------------------------------+ -# | | -# XXXX | kf0 kf24 | XXXX -# | | -# | | -# XXXX | kf1 kf23 | XXXX -# | | -# | | -# XXXX | kf2 kf22 | XXXX -# | | -# | | -# XXXX | kf3 kf21 | XXXX -# | | -# | | -# XXXX | kf4 kf20 | XXXX -# | | -# | | -# XXXX | kf5 kf19 | XXXX -# | | -# | | -# XXXX | kf6 kf18 | XXXX -# | | -# | | -# XXXX | | XXXX -# | | -# | | -# +----------------------------------------------------------------+ -# -# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX -# -# Note: XXXX represents the screen buttons -# CMD REDRAW -# -# MAIL -# -# Depression of the "CMD" key sends \E! (kcmd) -# Depression of the "MAIL" key sends \E[26s (kf26) -# "REDRAW" same as "REFRESH" (krfr) -# -# -# "kf" functions adds carriage return to output string if terminal is in -# 'new line' mode. -# -# The following are functions not covered in the table above: -# -# Set keyboard character (SKC): -# -# \EPn1;Pn2w -# -# Pn1= 0 Back Space key -# Pn1= 1 Break key -# Pn2= Program char (hex) -# -# Screen Definition (SDF): -# -# \E[Pn1;Pn2;Pn3;Pn4;Pn5t -# -# Pn1= Window number (1-39) -# Pn2-Pn5= Y;X;Y;X coordinates -# -# Screen Selection (SSL): -# -# \E[Pnu -# -# Pn= Window number -# -# Set Terminal Modes (SM): -# -# \E[Pnh -# -# Pn= 3 Graphics mode -# Pn= > Cursor blink -# Pn= < Enter new line mode -# Pn= = Enter reverse insert/replace mode -# Pn= ? Enter no scroll mode -# -# Reset Terminal Mode (RM): -# -# \E[Pnl -# -# Pn= 3 Exit graphics mode -# Pn= > Exit cursor blink -# Pn= < Exit new line mode -# Pn= = Exit reverse insert/replace mode -# Pn= ? Exit no scroll mode -# -# Screen Status Report (SSR): -# -# \E[Pnp -# -# Pn= 0 Request current window number -# Pn= 1 Request current window dimensions -# -# Device Status Report (DSR): -# -# \E[6n Request cursor position -# -# Call Status Report (CSR): -# -# \E[Pnv -# -# Pn= 0 Call failed -# Pn= 1 Call successful -# -# Transparent Button String (TBS): -# -# \E[Pn1;Pn2;Pn3;{string -# -# Pn1= Button number to be loaded -# Pn2= Character count of "string" -# Pn3= Key mode being loaded: -# 0= Unshifted -# 1= Shifted -# 2= Control -# String= Text string (15 chars max) -# -# Screen Number Report (SNR): -# -# \E[Pnp -# -# Pn= Screen number -# -# Screen Dimension Report (SDR): -# -# \E[Pn1;Pn2r -# -# Pn1= Number of rows available in window -# Pn2= Number of columns available in window -# -# Cursor Position Report (CPR): -# -# \E[Pn1;Pn2R -# -# Pn1= "Y" Position of cousor -# Pn2= "X" Position of cursor -# -# Request Answer Back (RAB): -# -# \E[c -# -# Answer Back Response (ABR): -# -# \E[?;*;30;VSV -# -# *= 0 No printer available -# *= 2 Printer available -# V= Software version number -# SV= Software sub version number -# -# Screen Alingment Aid: -# -# \En -# -# Bell (lower pitch): -# -# \E[x -# -# Dial Phone Number: -# -# \EPdstring\ -# -# string= Phone number to be dialed -# -# Set Phone Labels: -# -# \EPpstring\ -# -# string= Label for phone buttons -# -# Set Clock: -# -# \EPchour;minute;second\ -# -# Position Clock: -# -# \EPsY;X\ -# -# Y= "Y" coordinate -# X= "X" coordinate -# -# Delete Clock: -# -# \Epr\ -# -# Programming The Function Buttons: -# -# \EPfPn;string\ -# -# Pn= Button number (00-06, 18-24) -# (kf00-kf06, kf18-kf24) -# -# string= Text to sent on button depression -# -# Request For Local Directory Data: -# -# \EPp12;\ -# -# Local Directory Data to host: -# -# \EPp11;LOCAL...DIRECTORY...DATA\ -# -# Request for Local Directory Data in print format: -# -# \EPp13;\ -# -# Enable 'Prt on Line' mode: -# -# \022 (DC2) -# -# Disable 'Prt on Line' mode: -# -# \024 (DC4) -# -# -# -# 05-Aug-86 -# -# -505|pt505|5430|gs5430| AT&T Personal Terminal 505 or 5430 GETSET terminal @(#)pt505.ti 1.4, - am, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, cnorm=\E[>l, - cols#80, cr=\r, cub1=\E[D, cub=\E[%p1%dD, cud=\E[%p1%dB, cud1=\E[B, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, - el=\E[0K, el1=\E2K, home=\E[H, ht=\t, il=\E[%p1%dL, il1=\E[L, ind=\n, - is1=\EPr\\E[0u\E[2J\E[0;0H\E[0m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l, - it#8, kbs=\b, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kf0=\E[00s, kf1=\E[01s, kf2=\E[02s, kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, - kf6=\E[06s, kf18=\E[18s, kf19=\E[19s, kf20=\E[20s, kf21=\E[21s, - kf22=\E[22s, kf23=\E[23s, kf24=\E24s, kf26=\E26s, krfr=\E[27s, - lines#24, mc4=\E[4i, mc5=\E[5i, rc=\E8, - rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, - sc=\E7, sgr0=\E[0m, smacs=\E[11m, smir=\E[4h, smso=\E[1m, smul=\E[4m, - xon, rmam=\E[11;1j, smam=\E[11;0j, - -# -# The following Terminfo entry describes functions which are supported by -# the AT&T 5430/pt505 terminal software version 1. -# -# The following represents the screen layout along with the associated -# bezel buttons for the 5430/pt505 terminal. The "kf" designations do -# not appear on the screen but are shown to reference the bezel buttons. -# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate -# position relative to the screen. -# -# -# -# +----------------------------------------------------------------+ -# | | -# XXXX | kf0 kf24 | XXXX -# | | -# | | -# XXXX | kf1 kf23 | XXXX -# | | -# | | -# XXXX | kf2 kf22 | XXXX -# | | -# | | -# XXXX | kf3 kf21 | XXXX -# | | -# | | -# XXXX | kf4 kf20 | XXXX -# | | -# | | -# XXXX | kf5 kf19 | XXXX -# | | -# | | -# XXXX | kf6 kf18 | XXXX -# | | -# | | -# XXXX | | XXXX -# | | -# | | -# +----------------------------------------------------------------+ -# -# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX -# -# Note: XXXX represents the screen buttons -# CMD REDRAW -# -# MAIL -# -# Depression of the "CMD" key sends \E! (kcmd) -# Depression of the "MAIL" key sends (note) (kf26) -# "REDRAW" same as "REFRESH" (krfr) (note) -# -# note: The character string sent by key 'kf26' may be user programmable -# to send either \E[16s, or \E[26s. -# The character string sent by key 'krfr' may be user programmable -# to send either \E[17s, or \E[27s. -# -# "kf" functions adds carriage return to output string if terminal is in -# 'new line' mode. -# -# The following are functions not covered in the table above: -# -# Set keyboard character (SKC): -# -# \EPn1;Pn2w -# -# Pn1= 0 Back Space key -# Pn1= 1 Break key -# Pn2= Program char (hex) -# -# Screen Definition (SDF): -# -# \E[Pn1;Pn2;Pn3;Pn4;Pn5t -# -# Pn1= Window number (1-39) -# Pn2-Pn5= Y;X;Y;X coordinates -# -# Screen Selection (SSL): -# -# \E[Pnu -# -# Pn= Window number -# -# Set Terminal Modes (SM): -# -# \E[Pnh -# -# Pn= 3 Graphics mode -# Pn= > Cursor blink -# Pn= < Enter new line mode -# Pn= = Enter reverse insert/replace mode -# Pn= ? Enter no scroll mode -# -# Reset Terminal Mode (RM): -# -# \E[Pnl -# -# Pn= 3 Exit graphics mode -# Pn= > Exit cursor blink -# Pn= < Exit new line mode -# Pn= = Exit reverse insert/replace mode -# Pn= ? Exit no scroll mode -# -# Screen Status Report (SSR): -# -# \E[Pnp -# -# Pn= 0 Request current window number -# Pn= 1 Request current window dimensions -# -# Device Status Report (DSR): -# -# \E[6n Request cursor position -# -# Call Status Report (CSR): -# -# \E[Pnv -# -# Pn= 0 Call failed -# Pn= 1 Call successful -# -# Transparent Button String (TBS): -# -# \E[Pn1;Pn2;Pn3;{string -# -# Pn1= Button number to be loaded -# Pn2= Character count of "string" -# Pn3= Key mode being loaded: -# 0= Unshifted -# 1= Shifted -# 2= Control -# String= Text string (15 chars max) -# -# Screen Number Report (SNR): -# -# \E[Pnp -# -# Pn= Screen number -# -# Screen Dimension Report (SDR): -# -# \E[Pn1;Pn2r -# -# Pn1= Number of rows available in window -# Pn2= Number of columns available in window -# -# Cursor Position Report (CPR): -# -# \E[Pn1;Pn2R -# -# Pn1= "Y" Position of cousor -# Pn2= "X" Position of cursor -# -# Request Answer Back (RAB): -# -# \E[c -# -# Answer Back Response (ABR): -# -# \E[?;0;30;VSV -# -# V= Software version number -# SV= Software sub version number -# -# Screen Alingment Aid: -# -# \En -# -# Bell (lower pitch): -# -# \E[x -# -# Dial Phone Number: -# -# \EPdstring\ -# -# string= Phone number to be dialed -# -# Set Phone Labels: -# -# \EPpstring\ -# -# string= Label for phone buttons -# -# Set Clock: -# -# \EPchour;minute;second\ -# -# Position Clock: -# -# \EPsY;X\ -# -# Y= "Y" coordinate -# X= "X" coordinate -# -# Delete Clock: -# -# \Epr\ -# -# Programming The Function Buttons: -# -# \EPfPn;string\ -# -# Pn= Button number (00-06, 18-24) -# (kf00-kf06, kf18-kf24) -# -# string= Text to sent on button depression -# -# -# -# 05-Aug-86 -# -# -505-24|pt505-24|5430-24|gs5430-24| AT&T PT505 or 5430 GETSET version 1 24 lines @(#)pt505v1.ti 1.2, - am, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, cnorm=\E[>l, - cols#80, cr=\r, cub1=\E[D, cub=\E[%p1%dD, cud=\E[%p1%dB, cud1=\E[B, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, - el=\E[0K, el1=\E2K, home=\E[H, ht=\t, il=\E[%p1%dL, il1=\E[L, ind=\n, - is1=\EPr\\E[0u\E[2J\E[0;0H\E[0m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l, - it#8, kbs=\b, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kf0=\E[00s, kf1=\E[01s, kf2=\E[02s, kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, - kf6=\E[06s, kf18=\E[18s, kf19=\E[19s, kf20=\E[20s, kf21=\E[21s, - kf22=\E[22s, kf23=\E[23s, kf24=\E24s, kf26=\E26s, krfr=\E[27s, - lines#24, - rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, - sgr0=\E[0m, smacs=\E[11m, smir=\E[4h, smso=\E[1m, smul=\E[4m, - xon, -505-22|pt505-22|5430-22|gs5430-22| AT&T PT505 or 5430 GETSET version 1 22 lines @(#)pt505v1.ti 1.2, - lines#22, use=5430-24, - -# Reconstructed via infocmp from file: /usr/lib/terminfo/7/705 -705c|ATT705C|att705c|4000awtc|AT&T 705 Color 24x80 column display w/102key keyboard @(#)705.ti 1.3, - am, da, db, eslok, hs, mir, msgr, xenl, xon, - colors#8, cols#80, lh#2, lines#24, lm#0, lw#8, - pairs#64, nlab#8, wsl#80, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[36m, cbt=\E[Z, - civis=\E[?25l, clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, - cr=\r, csr=\E[%i%p1%d;%p2%dr, 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, - cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[34m, - dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, - enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4, - fsl=\E8, home=\E[H, ht=\t, hts=\EH, ich=\E[%p1%d@, - il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m, - is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m^O, - is3=\E(B\E)0, kLFT=\E[\sA, kRIT=\E[\s@, kbs=\b, - kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, - kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq, - kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, - kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, - kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, - kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, - kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, - kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, - kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, - kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, - kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@, - kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H, mc0=\E[i, - mc4=\E[?4i, mc5=\E[?5i, nel=\EE, - op=\E[37;40m, - pfx=\E[%p1%d;%p2%l%02d;0;4q%p2%s, - pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, - rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, - rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m, - rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, - s0ds=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s, sc=\E7, - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%{7}%>%t9%e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%{7}%>%t9%e%p1%d%;m, - sgr=\E[0%?%p6%t;36%;%?%p5%t;34%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smir=\E[4h, smln=\E[p, - smso=\E[7m, smul=\E[4m, smxon=\E[53;0|, tbc=\E[3g, - tsl=\E7\E[99;%i%p1%dx, - -# -# xterm: terminal emulator for XWIN system. -# -xtermm|xterm terminal emulator (monocrome) @(#)xterm.ti 1.3, - am, km, mir, msgr, xenl, - cols#80, it#8, lines#24, btns#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=@, bold=\E[1m, clear=\E[H\E[2J, cr=\r, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[1D, - cud=\E[%p1%dB, cud1=\n, 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, dl=\E[%p1%dM, dl1=\E[M, - ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, - home=\E[H, ht=\t, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, - il=\E[%p1%dL, il1=\E[L, ind=\n, ka1=\EOq, ka3=\EOs, - kb2=\EOr, kbs=\b, kc1=\EOp, kc3=\EOn, kcub1=\EOD, - kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, - kend=\E[Y, khome=\E[H, knp=\E[U, kpp=\E[V, - kf0=\EOy, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, - kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, - kf7=\EOV, kf8=\EOW, kf9=\EOX, rc=\E8, - rev=\E[7m, ri=\EM, rmacs=^O, rmcup=\E[2J\E[?47l\E8, - rmso=\E[m, rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O, smacs=^N, smcup=\E7\E[?47h, - smso=\E[7m, tbc=\E[3g, - getm=\E[%p1%dY, kmous=\E[^_, reqmp=\E[492Z, - smkx=\E[?1h\E=, rmkx=\E[?1l\E>, - -# -# color xterm -# -xtermc|xterm-color|xterm terminal emulator (color) @(#)xterm.ti 1.3, - colors#8, ncv#7, pairs#64, - op=\E[100m, - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setb=\E[4%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - use=xtermm, - - diff --git a/usr/src/cmd/terminfo/beehive.ti b/usr/src/cmd/terminfo/beehive.ti deleted file mode 100644 index f6c7a980bb..0000000000 --- a/usr/src/cmd/terminfo/beehive.ti +++ /dev/null @@ -1,136 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.10 */ -# # -------------------------------- -# -# beehive: BEEHIVE -# -# Manufacturer: BEEHIVE -# Class: II -# -# Info: -# Beehive documentation is undated -# (Preliminary) and has no figures so we must have early Superbee2 -# (Model 600, according to phone conversation with mfr.). It has -# proved reliable except for some missing padding requirements -# (notably after \EK and nl at bottom of screen). -# -# The key idea is that AEP mode is poison for cm & that US's in -# the local memory should be avoided like the plague. That means -# that the 2048 character local buffer is used as 25 lines of 80 -# characters, period. No scrolling local memory, folks. It also -# appears that we cannot use naked INS LINE feature since it uses -# US. The sbi fakes al with an 80-space insert that may be too -# slow at low speeds; also spaces get converted to \040 which is -# too long for some programs (not vi). DEL LINE is ok but slow. -# -# The nl string is designed for last line of screen ONLY; cm to -# 25th line corrects the motion inherent in scrolling to Page 1. -# -# There is one understood bug. It is that the screen appears to -# pop to a new (blank) page after a nl, or leave a half-line -# elipsis to a quad that is the extra 48 memory locations. The -# data received is dumped into memory but not displayed. Not to -# worry if cm is being used; the lines not displayed will be, -# whenever the cursor is moved up there. Since cm is addressed -# relative to MEMORY of window, nothing is lost; but beware of -# relative cursor motion (up,do,nd,bs). Recommended, therefore, -# is setenv MORE -c . -# -# WARNING: Not all features tested. -# -# Timings are assembled from 3 sources. Some timings may reflect -# SB2/Model 300 that were used if more conservative. -# Tested on a Model 600 at 1200 and 9600 bd. -# -# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly -# placed on the keyboard and useless because of AEP, is made -# into a backspace key. In use ESC must be pressed twice (to send) -# and sending ^C must be prefixed by ESC to avoid that wierd -# transmit mode associated with ENTER key. -# -# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across -# the screen, then it has dropped into ENTER mode; hit -# RESET--ONLINE--!tset. -# -# As delivered this machine has a FATAL feature that will throw -# it into that strange transmit state (SPOW) if the space bar is -# hit after a CR is received, but before receiving a LF (or a -# few others). -# -# The circuits MUST be modified to eliminate the SPOW latch. -# This is done by strapping on chip A46 of the I/O board; cut -# the p.c. connection to Pin 5 and Strap Pin 5 to Pin 8 of that -# chip. This mod has been checked out on a Mod 600 of Superbee II. -# With this modification absurdly high timings on cr are -# unnecessary. -# -# NOTE WELL that the rear panel switch should be set to CR/LF, -# not AEP! -# -sb|sb1|sbg|Beehive superbee, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, cbt=\E`$<650>, bw, cols#80, - il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>, - ed=\EJ$<3>, el=\EK$<3>, clear=\EH$<1>\EJ$<3>, cup=\EF%p2%03d%p1%03d, - ht=\t, hts=\E1, tbc=\E3, lines#25, cub1=\b$<1>, cr=$<1>\r, da, - db, dch1=\EP$<3>, dl1=\EM$<100>, cud1=\EB$<3>, rmir=\ER, - home=\EH$<1>, smir=\EQ\EO, - is2=\EE$<3>\EX\EZ\EO\Eb\Eg\ER, kf0=\E2, kf1=\Ep, - kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, - kf9=\E1, lf0=TAB CLEAR, lf9=TAB SET, - kbs=^_, kcud1=\EB, - kel=\EK, ked=\EJ, kdl1=\EM, kich1=\EQ\EO, krmir=\ER, - khome=\EH, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, mir, - cuf1=\EC$<3>, rmso=\E_3, xmc#1, smso=\E_1, - smcup=\EO, rmul=\E_3, ul, cuu1=\EA$<3>, - smul=\E_0, -sb2|sb3|fixed superbee, - xsb@, use=superbee, -sbi|superbee|beehive superbee at Indiana U., - xsb, cr=^M$<1>, il1=1\EN\EL$<9>\EQ \EP$<9> \EO\ER\EA, use=sbg, -# Info: -# Does this entry make xmc when it doesn't have to? -# Look at those spaces in rmso/smso. Seems strange to me. -# However, not having one to test changes on, I'll just leave it be... -# -bh3m|beehiveIIIm|, - if=/usr/share/lib/tabset/beehive, - cr=^M, cud1=^J, ind=^J, bel=^G, - il1=^S$<160>, am, cub1=^H, ed=^R, el=^P, clear=^E^R, - cols#80, dl1=^Q$<350>, home=^E, lines#20, ll=^E^K, - cuf1=^L, ht=^I, rmso= ^_, smso=^] , cuu1=^K, -microb|microbee|micro bee series, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ, el=\EK, clear=\EE, cols#80, cup=\EF%p1%' '%+%c%p2%' '%+%c, - kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, - kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, - kcud1=\EB, khome=\EH, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, - lines#24, cuf1=\EC, ht=^I, cuu1=\EA, - rmso=\Ed@ , smso= \EdP, rmul=\Ed@, smul=\Ed`, -bh4|beehive4|beehive 4, - cr=^M, cud1=^J, ind=^J, bel=^G, - cols#80, lines#24, am, cub1=^H, ed=\EJ, el=\EK, clear=\EE, - home=\EH, cuu1=\EA, cuf1=\EC, cub1=\ED, diff --git a/usr/src/cmd/terminfo/cdc.ti b/usr/src/cmd/terminfo/cdc.ti deleted file mode 100644 index d11826db26..0000000000 --- a/usr/src/cmd/terminfo/cdc.ti +++ /dev/null @@ -1,40 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.3 */ -# # -------------------------------- -# -# cdc: CONTROL DATA -# -# Manufacturer: CONTROL DATA -# Class: II -# -cdc456|cdc, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, clear=^Y^X, - cuf1=^L, cuu1=^Z, cub1=^H, cup=\E1%p1%' '%+%c%p2%' '%+%c, home=^Y, - il1=\E\114, dl1=\E\112, el=^V, ed=^X, am, -cdc456tst, - cr=^M, cud1=^J, ind=^J, bel=^G, - lines#24, cols#80, clear=^y^x, cub1=^H, cup=\E1%p1%' '%+%c%p2%' '%+%c, am, diff --git a/usr/src/cmd/terminfo/ckout b/usr/src/cmd/terminfo/ckout deleted file mode 100644 index 0f868cb03e..0000000000 --- a/usr/src/cmd/terminfo/ckout +++ /dev/null @@ -1,32 +0,0 @@ -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.6 */ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -echo "`2>/dev/null cat errs|wc -l` entries have been compiled" -echo -2>/dev/null cat errs|grep -iv "^mkdir"|grep -iv "^create"|grep -iv "^link"|grep -vi terminfo.src|grep -vi touch|grep -vi "working" -if [ $? -ne 0 ] ; - then - echo "\tNo Errors" - else - echo "\tErrors can be found in /tmp/terminfo.errs" - cp errs /tmp/terminfo.errs -fi diff --git a/usr/src/cmd/terminfo/colorscan.ti b/usr/src/cmd/terminfo/colorscan.ti deleted file mode 100644 index 275b814613..0000000000 --- a/usr/src/cmd/terminfo/colorscan.ti +++ /dev/null @@ -1,42 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# Manufacturer: DATAMEDIA -# Class: III -# -cs10|colorscan|Datamedia Color Scan 10, - msgr, - cols#80, lines#24, - bel=^G, clear=\E[;H\E[J, cr=\r, cub1=\b, cud1=\n, cuf1=\E[C, - cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K, ind=\n, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - rmso=\E[m, rmul=\E[m, smso=\E[7m, smul=\E[4m, - -cs10-w|Datamedia Color Scan 10 with 132 columns, - cols#132, - cup=\E[%i%p1%02d;%p2%03dH, - use=cs10, diff --git a/usr/src/cmd/terminfo/cvt.ex b/usr/src/cmd/terminfo/cvt.ex deleted file mode 100644 index ed9eb5bd13..0000000000 --- a/usr/src/cmd/terminfo/cvt.ex +++ /dev/null @@ -1,186 +0,0 @@ -" #ident "@(#)terminfo:cvt.ex 1.2" -" -" CDDL HEADER START -" -" The contents of this file are subject to the terms of the -" Common Development and Distribution License, Version 1.0 only -" (the "License"). You may not use this file except in compliance -" with the License. -" -" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -" or http://www.opensolaris.org/os/licensing. -" See the License for the specific language governing permissions -" and limitations under the License. -" -" When distributing Covered Code, include this CDDL HEADER in each -" file and include the License file at usr/src/OPENSOLARIS.LICENSE. -" If applicable, add the following below this CDDL HEADER, with the -" fields enclosed by brackets "[]" replaced with your own identifying -" information: Portions Copyright [yyyy] [name of copyright owner] -" -" CDDL HEADER END -" -" Defend against files with spaces instead of tabs -g/^ *:/s/^ */ / -" Clean out all junk lines, making them into comments. -v/^[# A-Za-z]/s/^/# / -g/^[ A-Za-z].*[^\\:]$/s/^/# / -" Get rid of capabilities on the first line. -g/^[a-zA-Z].|.*:.*:/s/:/:\\\ - / -" Change colons to commas, with appropriate white space -v/^#/s/,/\\054/g -v/^#/s/:/, /g -v/^#/s/^ , / / -v/^#/s/, \\$/,/ -" Get rid of two letter codes -g/^[a-zA-Z].|/s///|s/$/HEADER/ -" Change names of capabilities - this list to be updated from caps -v/^#/s/\<mi\>/mir/g -v/^#/s/\<ms\>/msgr/g -v/^#/s/\<pt\>/ht=^I/g -v/^#/s/\<xb\>/xsb/g -v/^#/s/\<xn\>/xenl/g -v/^#/s/\<xo\>/xon/g -v/^#/s/\<xs\>/xhp/g -v/^#/s/\<co\>/cols/g -v/^#/s/\<li\>/lines/g -v/^#/s/\<sg\>/xmc/g -v/^#/s/\<AL\>/il/g -v/^#/s/\<CC\>/CC/g -v/^#/s/\<DL\>/dl/g -v/^#/s/\<DO\>/cud/g -v/^#/s/\<LE\>/cub/g -v/^#/s/\<RI\>/cuf/g -v/^#/s/\<UP\>/cuu/g -v/^#/s/\<ae\>/smacs/g -v/^#/s/\<al\>/il1/g -v/^#/s/\<as\>/rmacs/g -v/^#/s/\<bl\>/bel/g -v/^#/s/\<bt\>/cbt/g -v/^#/s/\<ce\>/el/g -v/^#/s/\<ch\>/hpa/g -v/^#/s/\<cl\>/clear/g -v/^#/s/\<cm\>/cup/g -v/^#/s/\<cs\>/csr/g -v/^#/s/\<ct\>/tbc/g -v/^#/s/\<cv\>/vpa/g -v/^#/s/\<dc\>/dch1/g -v/^#/s/\<dl\>/dl1/g -v/^#/s/\<dm\>/smdc/g -v/^#/s/\<do\>/cud1/g -v/^#/s/\<ed\>/rmdc/g -v/^#/s/\<cd\>/ed/g -v/^#/s/\<ei\>/rmir/g -v/^#/s/\<fs\>/fsl/g -v/^#/s/\<ho\>/home/g -v/^#/s/\<is\>/is2/g -v/^#/s/\<ic\>/ich1/g -v/^#/s/\<im\>/smir/g -v/^#/s/\<k0\>/kf0/g -v/^#/s/\<k1\>/kf1/g -v/^#/s/\<k2\>/kf2/g -v/^#/s/\<k3\>/kf3/g -v/^#/s/\<k4\>/kf4/g -v/^#/s/\<k5\>/kf5/g -v/^#/s/\<k6\>/kf6/g -v/^#/s/\<k7\>/kf7/g -v/^#/s/\<k8\>/kf8/g -v/^#/s/\<k9\>/kf9/g -v/^#/s/\<kA\>/kil1/g -v/^#/s/\<kC\>/kclr/g -v/^#/s/\<kD\>/kdch/g -v/^#/s/\<kE\>/kel/g -v/^#/s/\<kF\>/kind/g -v/^#/s/\<kI\>/kich1/g -v/^#/s/\<kL\>/kdl1/g -v/^#/s/\<kM\>/krmir/g -v/^#/s/\<kN\>/knp/g -v/^#/s/\<kP\>/kpp/g -v/^#/s/\<kR\>/kri/g -v/^#/s/\<kS\>/ked/g -v/^#/s/\<kT\>/khts/g -v/^#/s/\<ka\>/ktbc/g -v/^#/s/\<kb\>/kbs/g -v/^#/s/\<kd\>/kcud1/g -v/^#/s/\<ke\>/rmkx/g -v/^#/s/\<kh\>/khome/g -v/^#/s/\<kl\>/kcub1/g -v/^#/s/\<kr\>/kcuf1/g -v/^#/s/\<ks\>/smkx/g -v/^#/s/\<kt\>/kctab/g -v/^#/s/\<ku\>/kcuu1/g -v/^#/s/\<l0\>/lf0/g -v/^#/s/\<l1\>/lf1/g -v/^#/s/\<l2\>/lf2/g -v/^#/s/\<l3\>/lf3/g -v/^#/s/\<l4\>/lf4/g -v/^#/s/\<l5\>/lf5/g -v/^#/s/\<l6\>/lf6/g -v/^#/s/\<l7\>/lf7/g -v/^#/s/\<l8\>/lf8/g -v/^#/s/\<l9\>/lf9/g -v/^#/s/\<bs\>/cub1=^H/g -v/^#/s/\<bc\>/cub1/g -v/^#/s/\<mb\>/blink/g -v/^#/s/\<md\>/bold/g -v/^#/s/\<me\>/sgr0/g -v/^#/s/\<mh\>/dim/g -v/^#/s/\<mk\>/blank/g -v/^#/s/\<mp\>/prot/g -v/^#/s/\<mr\>/rev/g -v/^#/s/\<nd\>/cuf1/g -v/^#/s/\<nw\>/nel/g -v/^#/s/\<pc\>/pad/g -v/^#/s/\<pf\>/mc4/g -v/^#/s/\<po\>/mc5/g -v/^#/s/\<ps\>/mc0/g -v/^#/s/\<rs\>/rs2/g -v/^#/s/\<rp\>/rep/g -v/^#/s/\<ri\>/cuf1/g -v/^#/s/\<sa\>/sgr/g -v/^#/s/\<se\>/rmso/g -v/^#/s/\<sf\>/ind/g -v/^#/s/\<so\>/smso/g -v/^#/s/\<sr\>/ri/g -v/^#/s/\<st\>/hts/g -v/^#/s/\<ta\>/ht/g -v/^#/s/\<te\>/rmcup/g -v/^#/s/\<ti\>/smcup/g -v/^#/s/\<ts\>/tsl/g -v/^#/s/\<ue\>/rmul/g -v/^#/s/\<up\>/cuu1/g -v/^#/s/\<us\>/smul/g -v/^#/s/\<vb\>/flash/g -v/^#/s/\<ve\>/cnorm/g -v/^#/s/\<vi\>/civis/g -v/^#/s/\<vs\>/cvvis/g -v/^#/s/\<wi\>/wind/g -" Deal with changes in default rules -g/HEADER/s/$/\ - cr=^M, cud1=^J, ind=^J, bel=^G, -$a -# junk -. -g/HEADER/+,/^[^ ]/-!fmt -g/HEADER/s/// -g/\<nc\>,/s///|?cr=^M, ?s/// -g/\<ns\>,/s///|?ind=^J, ?s/// -" Still should do something about the cr=, nl=, tab= capabilities. -" Change parameterized strings -v/^#/s/%\./%p1%c/ -v/^#/s/%\./%p2%c/ -v/^#/s/%\./%p1%c/ -v/^#/s/%\./%p2%c/ -v/^#/s/%d/%p1%DECIMAL/ -v/^#/s/%d/%p2%DECIMAL/ -v/^#/s/%d/%p1%DECIMAL/ -v/^#/s/%d/%p2%DECIMAL/ -v/^#/s/DECIMAL/d/g -v/^#/s/%+\([^%]\)/%p1%'\1'%+%c/ -v/^#/s/%+\([^%]\)/%p2%'\1'%+%c/ -v/^#/s/%+\([^%]\)/%p1%'\1'%+%c/ -v/^#/s/%+\([^%]\)/%p2%'\1'%+%c/ -$g/^# junk$/d -w -q diff --git a/usr/src/cmd/terminfo/cvt.sed b/usr/src/cmd/terminfo/cvt.sed deleted file mode 100644 index 1ffbc5a38b..0000000000 --- a/usr/src/cmd/terminfo/cvt.sed +++ /dev/null @@ -1,124 +0,0 @@ -s/\<mi\>/mir/g -s/\<ms\>/msgr/g -s/\<pt\>/tabs/g -s/\<xb\>/xsb/g -s/\<xn\>/xenl/g -s/\<xo\>/xon/g -s/\<xs\>/xhp/g -s/\<co\>/cols/g -s/\<dB\>/bsdly/g -s/\<dC\>/crdly/g -s/\<dF\>/ffdly/g -s/\<dN\>/nldly/g -s/\<dT\>/tbdly/g -s/\<li\>/lines/g -s/\<sg\>/xmc/g -s/\<AL\>/il/g -s/\<CC\>/CC/g -s/\<DL\>/dl/g -s/\<DO\>/cud/g -s/\<LE\>/cub/g -s/\<RI\>/cuf/g -s/\<UP\>/cuu/g -s/\<ae\>/smacs/g -s/\<al\>/il1/g -s/\<as\>/rmacs/g -s/\<bl\>/bel/g -s/\<bt\>/cbt/g -s/\<ce\>/el/g -s/\<ch\>/hpa/g -s/\<cl\>/clear/g -s/\<cm\>/cup/g -s/\<cs\>/csr/g -s/\<ct\>/tbc/g -s/\<cv\>/vpa/g -s/\<dc\>/dch1/g -s/\<dl\>/dl1/g -s/\<dm\>/smdc/g -s/\<do\>/cud1/g -s/\<ed\>/rmdc/g -s/\<cd\>/ed/g -s/\<ei\>/rmir/g -s/\<fs\>/fsl/g -s/\<ho\>/home/g -s/\<is\>/is2/g -s/\<ic\>/ich1/g -s/\<im\>/smir/g -s/\<k0\>/kf0/g -s/\<k1\>/kf1/g -s/\<k2\>/kf2/g -s/\<k3\>/kf3/g -s/\<k4\>/kf4/g -s/\<k5\>/kf5/g -s/\<k6\>/kf6/g -s/\<k7\>/kf7/g -s/\<k8\>/kf8/g -s/\<k9\>/kf9/g -s/\<kA\>/kil1/g -s/\<kC\>/kclr/g -s/\<kD\>/kdch/g -s/\<kE\>/kel/g -s/\<kF\>/kind/g -s/\<kI\>/kich1/g -s/\<kL\>/kdl1/g -s/\<kM\>/krmir/g -s/\<kN\>/knp/g -s/\<kP\>/kpp/g -s/\<kR\>/kri/g -s/\<kS\>/ked/g -s/\<kT\>/khts/g -s/\<ka\>/ktbc/g -s/\<kb\>/kbs/g -s/\<kd\>/kcud1/g -s/\<ke\>/rmkx/g -s/\<kh\>/khome/g -s/\<kl\>/kcub1/g -s/\<kr\>/kcuf1/g -s/\<ks\>/smkx/g -s/\<kt\>/kctab/g -s/\<ku\>/kcuu1/g -s/\<l0\>/lf0/g -s/\<l1\>/lf1/g -s/\<l2\>/lf2/g -s/\<l3\>/lf3/g -s/\<l4\>/lf4/g -s/\<l5\>/lf5/g -s/\<l6\>/lf6/g -s/\<l7\>/lf7/g -s/\<l8\>/lf8/g -s/\<l9\>/lf9/g -s/\<le\>/cub1/g -s/\<mb\>/blink/g -s/\<md\>/bold/g -s/\<me\>/sgr0/g -s/\<mh\>/dim/g -s/\<mk\>/blank/g -s/\<mp\>/prot/g -s/\<mr\>/rev/g -s/\<nd\>/cuf1/g -s/\<nw\>/nel/g -s/\<pc\>/pad/g -s/\<pf\>/mc4/g -s/\<po\>/mc5/g -s/\<ps\>/mc0/g -s/\<rs\>/rs2/g -s/\<rp\>/rep/g -s/\<ri\>/cuf1/g -s/\<sa\>/sgr/g -s/\<se\>/rmso/g -s/\<sf\>/ind/g -s/\<so\>/smso/g -s/\<sr\>/ri/g -s/\<st\>/hts/g -s/\<ta\>/ht/g -s/\<te\>/rmcup/g -s/\<ti\>/smcup/g -s/\<ts\>/tsl/g -s/\<ue\>/rmul/g -s/\<up\>/cuu1/g -s/\<us\>/smul/g -s/\<vb\>/flash/g -s/\<ve\>/cnorm/g -s/\<vi\>/civis/g -s/\<vs\>/cvvis/g -s/\<wi\>/wind/g diff --git a/usr/src/cmd/terminfo/datamedia.ti b/usr/src/cmd/terminfo/datamedia.ti deleted file mode 100644 index 9ccd11f255..0000000000 --- a/usr/src/cmd/terminfo/datamedia.ti +++ /dev/null @@ -1,101 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1994 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # -------------------------------- -# -# datamedia: DATAMEDIA -# -# Manufacturer: DATAMEDIA -# Class: II -# -dm1520|dm1521|1521|1520|datamedia 1520, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^K, el=^], clear=^L, - cup=^^%p2%' '%+%c%p1%' '%+%c, cols#80, home=^Y, - kcuu1=^_, kcud1=^J, kcub1=^H, kcuf1=^\, khome=^Y, - lines#24, cuf1=^\, cuu1=^_, xenl, ht=^I, -dm2500|datamedia2500|2500|datamedia 2500, - xon, - cols#80, lines#24, - bel=^G, clear=^^^^^_, cub1=\b, cud1=\n, cuf1=^\, - cup=%p1%Pa%p2%Pb\f%ga%'`'%\^%Pa%gb%'`'%\^%Pb%gb%c%ga%c, - cuu1=^Z, dch1=\b$<10*>, dl1=^P^Z^X^]$<10*>, el=^W, - home=^B, il1=^P\n^X^]^X^]$<15>, ind=\n, pad=\377, - rmdc=^X^], rmir=\377\377^X^]$<10>, rmso=^X^], smdc=^P, - smir=^P, smso=^N, -dm3025|datamedia 3025a, - is2=\EQ\EU\EV, cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\EP\n\EQ$<130>, cub1=^H, ed=\EJ$<2>, el=\EK, clear=\EM$<2>, - cup=\EY%p2%' '%+%c%p1%' '%+%c, cols#80, dch1=\b$<6>, - dl1=\EP\EA\EQ$<130>, smdc=\EP, rmdc=\EQ, rmir=\EQ, home=\EH, - smir=\EP, lines#24, cuf1=\EC, ht=^I, - smso=\EOA, rmso=\EO@, cuu1=\EA, -3045|dm3045|datamedia 3045a, - is2=\EU\EV, cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ$<2>, el=\EK, clear=\EM$<2>, cup=\EY%p2%' '%+%c%p1%' '%+%c, - cols#80, dch1=\EB$<6>, rmir=\EP, home=\EH, - smir=\EP, ip=$<6>, - kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, - kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r, - khome=\EH, kcuu1=\EA, kcuf1=\EC, lines#24, cuf1=\EC, pad=\177, ht=^I, - eo, ul, cuu1=\EA, xenl, -# Info: -# dt80/1 is2 a vt100 lookalike, but it doesn't seem to need -# any padding. -# -dt80|dmdt80|dm80|datamedia dt80/1, - am, mir, msgr, xenl, xon, - cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[2J\E[H, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, - cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J, el=\E[K, - el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=\t, - hts=\EH, ind=\n, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=\b, - kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, mc0=\E[0i, - mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m$<2>, ri=\EM, - rmacs=^O, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O$<2>, smacs=^N, smkx=\E[?1h\E=, smso=\E[7m, - smul=\E[4m, tbc=\E[3g, -# Info: -# In 132 column mode it needs a little padding. -# This is2 still less padding than the vt100, and you can always -# turn on the ^S/^Q handshaking, smso you can use vt100 flavors -# for things like reverse video. -# -dt80-w|dmdt80-w|dm80-w|datamedia dt80/1 in 132 char mode, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\E[0J$<20>, cols#132, el=\E[0K$<20>, - cup=\E[%i%p1%d;%p2%dH$<5>, clear=\E[H\E[2J$<50>, cuu1=\E[A$<5>, use=dmdt80, diff --git a/usr/src/cmd/terminfo/dec.ti b/usr/src/cmd/terminfo/dec.ti deleted file mode 100644 index 4f764889e2..0000000000 --- a/usr/src/cmd/terminfo/dec.ti +++ /dev/null @@ -1,264 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1993 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # -------------------------------- -# -# dec: DEC (DIGITAL EQUIPMENT CORPORATION) -# -# Manufacturer: DEC (DIGITAL EQUIPTMENT CORP.) -# Class: II -# -# Info: -# Note that xenl glitch in vt100 is not quite the same as concept, -# since the cursor is left in a different position while in the -# weird state (concept at beginning of next line, vt100 at end -# of this line) so all versions of vi before 3.7 don't handle -# xenl right on vt100. The correct way to handle xenl is when -# you output the char in column 80, immediately output CR LF -# and then assume you are in column 1 of the next line. If xenl -# is on, am should be on too. -# -# I assume you have smooth scroll off or are at a slow enough baud -# rate that it doesn't matter (1200? or less). Also this assumes -# that you set auto-nl to "on", if you set it off use vt100-nam -# below. -# -# The padding requirements listed here are guesses. It is strongly -# recommended that xon/xoff be enabled, as this is assumed here. -# -# The vt100 uses rs2 and rf rather than is2/tbc/hts because the -# tab settings are in non-volatile memory and don't need to be -# reset upon login. Also setting the number of columns glitches -# the screen annoyingly. You can type "reset" to get them set. -# -vt100|vt100-am|dec vt100 (w/advanced video), - mir, msgr, cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, it#8, - clear=\E[H\E[J$<50>, cub1=^H, am, cup=\E[%i%p1%d;%p2%dH$<5>, - cuf1=\E[C$<2>, cuu1=\E[A$<2>, el=\E[K$<3>, el1=\E[1K$<3>, ed=\E[J$<50>, - cud=\E[%p1%dB, cuu=\E[%p1%dA, cub=\E[%p1%dD, cuf=\E[%p1%dC, - smso=\E[1;7m$<2>, rmso=\E[m$<2>, smul=\E[4m$<2>, rmul=\E[m$<2>, - bold=\E[1m$<2>, rev=\E[7m$<2>, blink=\E[5m$<2>, sgr0=\E[m^O$<2>, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, smkx=\E[?1h\E=, rmkx=\E[?1l\E>, - enacs=\E(B\E)0, smacs=^N, rmacs=^O, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - tbc=\E[3g, hts=\EH, home=\E[H, ht=^I, ri=\EM$<5>, - kcuu1=\EOA, kcud1=\EOB, kcuf1=\EOC, kcub1=\EOD, kbs=^H, - -# Info: -# This is how the keypad gets assigned. -# PF1 PF2 PF3 PF4 - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -# 7 8 9 '-' does not send anything on my terminal. - kf9=\EOw, kf10=\EOx, kf0=\EOy, -# 4 5 6 , - kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, -# 1 2 3 - ka1=\EOq, kb2=\EOr, ka3=\EOs, -# 0 . ENTER - kc1=\EOp, kc3=\EOn, kent=\EOM, -# - - - vt#3, xenl, xon, sc=\E7, rc=\E8, csr=\E[%i%p1%d;%p2%dr, -vt100-nam|vt100 w/no am (w/advanced video), - am@, xenl@, use=vt100-am, -# Info: -# Ordinary vt100 in 132 column ("wide") mode. -# -vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video), - cols#132, lines#24, rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am, -vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video), - cols#132, lines#14, rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, vt@, use=vt100-nam, -# Info: -# vt100's with no advanced video. -# -vt100-nav|vt100 without advanced video option, - sgr@, smso=\E[7m , rmso=\E[m , xmc#1, - smul@, rmul@, bold@, rev@, blink@, sgr0@, use=vt100, -vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option), - lines#14, cols#132, use=vt100-nav, -# Info: -# vt100's with one of the 24 lines used as a status line. -# We put the status line on the top. -# -vt100-s|vt100-s-top|vt100-top-s|vt100 for use with sysline, - lines#23, is2=\E7\E[2;24r\E8, clear=\E[2;1H\E[J$<50>, home=\E[2;1H, - dsl=\E7\E[1;24r\E8, - cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, csr=\E[%i%i%p1%d;%p2%dr, - hs, eslok, tsl=\E7\E[1;%p1%dH\E[1K, fsl=\E8, use=vt100-am, -# Info: -# Status line at bottom. -# Clearing the screen will clobber status line. -# -vt100-s-bot|vt100-bot-s|vt100 for use with sysline, - lines#23, is2=\E[1;23r\E[23;1H, dsl=\E7\E[1;24r\E8, - hs, eslok, tsl=\E7\E[24;%p1%dH\E[1K, fsl=\E8, use=vt100-am, -# vt 102 -vt102|vt-102|dec vt102, - xon, - cols#80, lines#24, vt#3, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[;H\E[2J$<50>, cnorm=\E[?7h, cr=\r, - csr=\E[%i%p1%d;%p2%dr, cub1=\b, cud1=\n, - cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, - cuu1=\E[A$<2>, cvvis=\E[?7l, ed=\E[J$<50>, - el=\E[K$<3>, home=\E[H, ht=\t, ind=\n, - is2=\E[1;24r\E[24;1H, kbs=\b, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, - kf4=\EOS, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, - rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr0=\E[m$<2>, smkx=\E[?1h\E=, smso=\E[7m$<2>, - smul=\E[4m$<2>, -# Info: -# vt132 - like vt100 but slower and has ins/del line and such. -# I'm told that smir/rmir are backwards in the terminal from the -# manual and from the ANSI standard, this describes the actual -# terminal. I've never actually used a vt132 myself, so this -# is untested. -# -# The smir/rmir are now reveresed (corrected) -# -vt132|DEC vt132, - il1=\E[L$<99>, dl1=\E[M$<99>, ip=$<7>, dch1=\E[P$<7>, rmir=\E[4l, - smir=\E[4h, xenl, ind=^J$<30>, use=vt100, -# Info: -# Older DEC CRT's -# -vt50|dec vt50, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, clear=\EH\EJ, - cols#80, lines#12, cuf1=\EC, ht=^I, cuu1=\EA, -vt50h|dec vt50h, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\EH\EJ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, lines#12, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, -vt52|dec vt52, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\EH\EJ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, - cuf1=\EC, ht=^I, it#8, ri=\EI, cuu1=\EA, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, kbs=^H, -# Info: -# A VT62 can be made to think that it is a VT61 by moving 6 -# soldered-in jumpers on the i/o board. -# The keyboard must be relabeled, also. -# -vt61|vt-61|vt61.5|dec vt61, - cr=^M$<20>, cud1=^J, ind=^J$<20>, bel=^G, cub1=^H, - ed=\EJ$<120>, el=\EK$<70>, clear=\EH\EJ$<120>, - cup=\EY%p1%' '%+%c%p2%' '%+%c$<20>, cols#80, lines#24, - cuf1=\EC$<20>, ht=^I, ri=\E$<20>I, cuu1=\EA$<20>, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, -# Info: -# Graphics CRT's. -# clear screen also erases graphics -# -vt125|vt125 graphics terminal, - clear=\E[;H\E[2J\EPpS(E)\E\\$<50>, use=vt100, -gt40|dec gt40, - cr=^M, cud1=^J, bel=^G, - cub1=^H, cols#72, lines#30, os, -gt42|dec gt42, - cr=^M, cud1=^J, bel=^G, - cub1=^H, cols#72, lines#40, os, -# Info: -# The gigi does standout with red! -# -gigi|vk100|dec gigi graphics terminal, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#84, lines#24, am, - clear=\E[;H\E[2J, cub1=^H, cup=\E[%i%p1%d;%p2%dH, cuf1=\E[C, - cuu1=\E[A, el=\E[K, ed=\E[J, smso=\E[7;31m, rmso=\E[m, - smul=\E[4m, rmul=\E[m, - is2=\E>\E[?3l\E[?4l\E[?5l\E[?20l\E[?7h\E[?8h, smkx=\E[?1h\E=, - rmkx=\E[?1l\E>, kcuu1=\EOA, - kcud1=\EOB, kcuf1=\EOC, kcub1=\EOD, khome=\E[H, kf1=\EOP, - kf2=\EOQ, kf3=\EOR, kf4=\EOS, ht=^I, ri=\EM, xenl, cud=\E[%p1%dB, - cuu=\E[%p1%dA, cub=\E[%p2%dD, cuf=\E[%p1%dC, -# Info: -# Hard copy (decwriter) dec terminals. -# -dw1|decwriter I, - cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, cols#72, hc, os, -dw2|decwriter|dw|decwriter II, - cr=^M, cud1=^J, ind=^J, bel=^G, kbs=^H, cub1=^H, cols#132, hc, os, -# Info: -# \E(B Use U.S. character set (otherwise # => british pound !) -# \E[20l Disable "linefeed newline" mode (otherwise puts \r after \n,\f,\(vt ) -# \E[w 10 char/in pitch -# \E[1;132 full width horizontal margins -# \E[2g clear all tab stops -# \E[z 6 lines/in -# \E[66t 66 lines/page (for \f) -# \E[1;66r full vertical page can be printed -# \E[4g clear vertical tab stops -# \E> disable alternate keypad mode (so it transmits numbers!) -# \E[%i%du set tab stop at column %d (origin == 1) -# (Full syntax is \E[n;n;n;n;n;...;nu where each 'n' is -# a tab stop) -# -# The dw3 does standout with wide characters. -# -dw3|la120|decwriter III, - cr=^M, cud1=^J, ind=^J, bel=^G, kbs=^h, cub1=^H, cols#132, hc, - os, smso=\E[6w, rmso=\E[w, ht=^I, - is1=\E(B\E[20l\E[w\E[0;132s\E[2g\E[z\E[66t\E[1;66r\E[4g\E>, - is2=\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u\r, -dw4|decwriter IV, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#132, hc, os, am, - ht=^I, is2=\Ec, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, kbs=^H, -vt220|dec vt220 8 bit terminal, - am, mc5i, mir, msgr, xenl, xon, - cols#80, it#8, lines#24, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, - cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\n, 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, dl=\E[%p1%dM, dl1=\E[M, - ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, - enacs=\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H, - ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, - ind=\ED, is2=\E[?7h\E[>\E[?1h\E\sF\E[?4l, kbs=\b, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, - kf13=\E[25~, kf14=\E[26~, kf17=\E[31~, kf18=\E[32~, - kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, - kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, - kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, - knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, - lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[i, - mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, - ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, - rmso=\E[27m, rmul=\E[24m, rs1=\E[?3l, sc=\E7, - sgr0=\E[0m, smacs=^N, smam=\E[?7h, smir=\E[4h, - smso=\E[7m, smul=\E[4m, tbc=\E[3g, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - diff --git a/usr/src/cmd/terminfo/diablo.ti b/usr/src/cmd/terminfo/diablo.ti deleted file mode 100644 index 99df7be968..0000000000 --- a/usr/src/cmd/terminfo/diablo.ti +++ /dev/null @@ -1,100 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# # -------------------------------- -# -# diablo: DAISY WHEEL PRINTERS -# -# Manufacturer: Generic DAISY WHEEL PRINTERS -# Class: II -# -# Info: -# The A manufacturer represents Diablo, DTC, Xerox, Qume, and -# other Daisy wheel terminals until such time as terminfo -# distinguishes between them enough to justify separate codes. -# -diablo|1620|1640|450|diablo 1620, - cr=^M, cud1=^J, ind=^J, bel=^G, tbc=\E2, hts=\E1, hpa=\E\t%p1%{1}%+%c, - kbs=^H, cub1=^H, cols#132, ff=^L, hc, hu=\EU, hd=\ED, os, - ht=^I, cuu1=\E\n, -diablo-m8|1620-m8|1640-m8|diablo 1620 w/8 column left margin, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#124, is2=\r \E9, use=1620, -# Info: -# DTC 382 with VDU. Has no ed so we fake it with el. Standout -# works but won't go away without dynamite. -# -# If no tab is set or the terminal's in a bad mood, it glitches -# the screen around all of memory. Note that return puts a blank -# ("a return character") in the space the cursor was at, so we -# use ^P return (and thus ^P newline for newline). -# -# I have been unable to get tabs set in all 96 lines - -# it always leaves at least one line with no tabs in it, and -# once you tab through that line, it completely weirds out. -# -ps|dtc382|382|DTC 382, - bel=^G, .cud1=^J, ind=^J, il1=^P^Z, am, cub1=^H, - cols#80, el=^P^U, clear=^P^]$<20>, cup=^P^Q%p2%c%p1%c, dch1=^X, - dl1=^P^S, rmir=^Pi, home=^P^R, smir=^PI, cnorm=^Pb, cvvis=^PB, pad=\177, - rmcup=^P^]$<20>, lines#24, cuf1=^PR, .rmso=^P \200, .smso=^P \002^PF, - smul=^P \020, rmul=^P \200, cuu1=^P^L, xhp, lm#96, - da, db, cr=^P^M, ed=^P^U^P^S^P^S, -dtc300s|300|300s|dtc|dtc 300s, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, kbs=^h, - cub1=^H, cols#132, ff=^L, hc, hu=\EH, hd=\Eh, os, ht=^I, cuu1=^Z, -gsi, - cub1=^H, cols#132, hc, hd=\Eh, hu=\EH, os, ht=^I, cuu1=^Z, - cr=^M, cud1=^J, ind=^J, bel=^G, -aj830|aj832|aj|anderson jacobson, - cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, hc, hd=\E9, hu=\E8, os, cuu1=\E7, -# Info: -# This is incomplete, but it's a start. -# -5520|nec|spinwriter|nec 5520, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#132, ff=^L, hc, hu=\E]s\E9\E]W, hd=\E]s\n\E]W, - os, ht=^I, cuu1=\E9, -qume5|qume sprint 5, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#80, ff=^L, hc, hu=\EH, hd=\Eh, os, ht=^I, cuu1=^Z, -# Info: -# I suspect the xerox1720 is the same as the diablo 1620. -# -x1720|x1700|1700|x1750|xerox 1720, - cols#132, cub1=^H, ff=^L, hc, os, ht=^I, - cr=^M, cud1=^J, ind=^J, bel=^G, - tbc=\E2, hts=\E1, -# Info: -# This is an "experimental" entry for the SRI Agiles. -# -# It has been tried in a minimal way -- the Agile did not blow up! -# However, it has not been exhaustively tested. -# -agile|agiles|sri agiles, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, hc, os, cols#132, - ht=^I, kbs=^H, cuu1=\E\n, hu=\E0, hd=\E9, hts=\E1, tbc=\E2, - is2=\EE\EF\EJ, diff --git a/usr/src/cmd/terminfo/fortune.ti b/usr/src/cmd/terminfo/fortune.ti deleted file mode 100644 index defe8ddcc2..0000000000 --- a/usr/src/cmd/terminfo/fortune.ti +++ /dev/null @@ -1,105 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.3 */ -# Manufacturer: FORTUNE -# Class: III -# Info: -# This is the original fortune entry, probably outdated -# -ofos|ofortune|fortune system, - is2=^_.., - lines#25, cols#80, - am, bw, - clear=^L$<20>, ed=^\Y$<3*>, - ich1=^\Q$<5>, dch1=^\W$<5>, - cup=^\C%p1%' '%+%c%p2%' '%+%c, - ht=^Z, - home=^^$<10>, cud1=^J$<3>, cuu1=^K$<3>, cub1=^H, - kbs=^H, kcud1=^Ay\r, khome=^A?\r, kcub1=^Aw\r, kcuf1=^Az\r, kcuu1=^Ax\r, - ind=^J$<5>, - smso=^\H`, rmso=^\I`, xmc#0, - smul=^\HP, rmul=^\IP, - el=^\Z, - rev=\EH, .sgr0=\EI, - -fortune|Fortune Systems 32:16 terminal, - am, - bel=^G, - blink=\EN, - bw, - civis=\E], - clear=^L$<20>, - cnorm=\E\\, - cols#80, - cr=\r, - cub1=^H, - cud1=^J$<3>, - cuf1=^I, - cup=^\C%p1%' '%+%c%p2%' '%+%c$<1>, - cuu1=^K$<3>, - cvvis=\E[, - dch1=^\W$<5>, -# dl1=^\R$<15>, - dl1=^\r$<15>, - ed=^\Y$<3*>, - el=^\Z, - flash=^Y^G, - home=^^$<10>, - ht=^Z, - ich1=^\Q$<5>, -# il1=^\E$<15>, - il1=^\g$<15>, - ind=^J\r$<5>, -# Info: -# not sure about is1! -# - is1=^_.., - kbs=^H, - kcub1=^Aw\r, - kcud1=^Ay\r, - kcuf1=^Az\r, - kcuu1=^Ax\r, - khome=^A?\r, - lines#25, - nel=\r\n, - rep=%p1%c\EF%p2%'?'%+%c, - rev=\EH, - ri=^K\r$<5>, - rmso=^\I`, -# rmul=^\I\20, or -# rmul=^\I, - rmul=\EZ, - sgr0=\EI\E\^\EZ, - smso=^\H`, -# smul=^\H\20, or -# smul=^\HO, - smul=\EY, - xmc#0, -# Info: -# Other stuff: -# bs=^H, ns, -# bs=^H: nl=5^J: ug=0 -# diff --git a/usr/src/cmd/terminfo/general.ti b/usr/src/cmd/terminfo/general.ti deleted file mode 100644 index 1d85e43b3e..0000000000 --- a/usr/src/cmd/terminfo/general.ti +++ /dev/null @@ -1,64 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# # -------------------------------- -# -# general: GENERAL TERMINAL (formerly INFOTON) -# -# Manufacturer: GENERAL TERMINAL -# Class: I -# -# Info: -# Infoton is now called General Terminal Corp. -# -i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100), - cr=^M, cud1=^J, ind=^J, bel=^G, clear=^L, ed=\EJ, el=\EK, - lines#24, cols#80, il1=\EL, dl1=\EM, cuu1=\EA, cuf1=\EC, - home=\EH, cup=\Ef%p2%' '%+%c%p1%' '%+%c, - flash=\Eb\Ea, am, cub1=^H, smso=\Eb, rmso=\Ea, -infoton, - am, - cols#80, lh#0, lines#24, lw#0, nlab#0, - bel=^G, clear=\f, cr=\r, cub1=^Z, cud1=\n, cuf1=^Y, - cuu1=^\, ed=^K, ind=\n, ll=\b^\, -# Info: -# Looks like an ANSI terminal, but look at dch1! I bet smdc/rmdc -# could be used. -# -# But you would think being ANSI they would do \E[P differently. -# -i400|400|infoton 400, - cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\E[L, am, cub1=^H, el=\E[N, clear=\E[2J, cup=\E[%i%p1%03d;%p2%03dH, - cols#80, dl1=\E[M, lines#25, cuf1=\E[C, cuu1=\E[A, - smir=\E[4h\E[2Q, rmir=\E[4l\E[0Q, dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, -addrinfo, - cr=^M, cud1=^J, ind=^J, bel=^G, - lines#24, cols#80, clear=^L, home=^H, cuf1=^Y, ed=^K, - cuu1=^\, am, cub1=^Z, cup=\037%i%p1%{1}%-%c%p2%{1}%-%c, ll=^H^\, -infotonKAS, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^Z, - ed=^K, clear=^L, cols#80, lines#24, cuf1=^Y, cuu1=^\, ll=^H^\, diff --git a/usr/src/cmd/terminfo/hardcopy.ti b/usr/src/cmd/terminfo/hardcopy.ti deleted file mode 100644 index b6182e9696..0000000000 --- a/usr/src/cmd/terminfo/hardcopy.ti +++ /dev/null @@ -1,45 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.5 */ -# # HARDCOPY - various hard copy terminals. -# -# Manufacturer: Generic Hard copy Terminals -# Class: I -# -cdi|cdi1203|, - am, cub1=^H, hc, os, cols#80, - cr=^M$<200>, cud1=^J, ind=^J, bel=^G, -ep48|ep4080|execuport 4080, - am, cub1=^H, os, cols#80, hu=\036, hd=\034, - cr=^M, cud1=^J, ind=^J, bel=^G, -ep40|ep4000|execuport 4000, - am, cub1=^H, os, cols#136, hu=\036, hd=\034, - cr=^M, cud1=^J, ind=^J, bel=^G, -mw2|multiwriter 2, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#132, hc, os, -terminet1200|terminet300|tn1200|tn300|terminet|ge terminet 1200, - cols#120, hc, os, - cr=^M, cud1=^J, ind=^J, bel=^G, diff --git a/usr/src/cmd/terminfo/hazeltine.ti b/usr/src/cmd/terminfo/hazeltine.ti deleted file mode 100644 index d0942f77fd..0000000000 --- a/usr/src/cmd/terminfo/hazeltine.ti +++ /dev/null @@ -1,161 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.6 */ -# # -------------------------------- -# -# hazeltine: HAZELTINE -# -# Manufacturer: HAZELTINE -# Class: II -# -# Info: -# Since cuf1 is blank, when you want to erase something you -# are out of luck. You will have to do ^L's a lot to -# redraw the screen. h1000 is untested. It doesn't work in -# vi - (The code is there but it isn't debugged for this case.) -# -h1000|hazeltine 1000, - cub1=^H, home=^K, clear=^L, cuf1= , - cols#80, lines#12, cr=^M, cud1=^J, ind=^J, bel=^G, -h1420|hazeltine 1420, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, am, lines#24, cols#80, - il1=\E^Z, dl1=\E^S, ed=\E^X, clear=\E\034, cuu1=\E^L, cuf1=^P, - el=\E^O, ht=^N, cup=\E^Q%p2%c%p1%' '%+%c, smso=\E\037, rmso=\E^Y, -h1500|hazeltine 1500, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=~^Z$<40>, hz, am, - cub1=^H, ed=~^X$<10>, - el=~^O, clear=~^\, cup=~^Q%p2%c%p1%c, cols#80, dl1=~^S$<40>, - cud1=~^K, lines#24, cuf1=^P, smso=~^_, rmso=~^Y, cuu1=~^L, -# Info: -# This is a Fluke special to work around the comm gear -# intercepting ^S -# -s1500|hazeltine 1500 thru comm system that see's ^S , - cr=^M, ind=^J, cud1=^J, bel=^G, - il1=~^Z$<40>, am, cub1=^H, ed=~^X$<10>, el=~^O, - clear=~^\, cup=~^Q%p2%c%p1%c, cols#80, - cud1=~^K, hz, lines#24, cuf1=^P, cuu1=~^L, -# Info: -# h1510 assumed to be in escape mode. Else use h1510t. -# -h1510|hazeltine 1510 using escape escapes, - cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\E^Z, am, cub1=^H, ed=\E^X, el=\E^O, clear=\E^\, - cup=\E^Q%p2%c%p1%c, cols#80, dl1=\E^S, cud1=\E^K, - lines#24, cuf1=^P, .rmso=\E^_, .smso=\E^Y, cuu1=\E^L, -h1510t|Hazeltine 1510 with tilde escapes, - am, - home=~^R, - khome=~^R, - cuu1=~^L, - kcuu1=~^L, - cud1=~^K, - kcud1=~^K, - cub1=\b, - bel=^G, - cbt=~, - clear=~, - cols#80, - cr=
, - cuf1=^P, - cup=~^Q%p2%c%p1%c, - dl1=~^S$<40>, - ed=~^X$<10>, - el=~^O, - hz, - il1=~^Z$<40>, - ind=^J, - kbs=, - kcbt=~, - kclr=~, - kcub1=\b, - kcuf1=^P, - kf0=~0\r, - kf1=~1\r, - kf2=~2\r, - kf3=~3\r, - kf4=~4\r, - kf5=~5\r, - kf6=~6\r, - kf7=~7\r, - kf8=~8\r, - kf9=~9\r, - ktbc=~.\r, - lines#24, - rmso=~^Y, - sc=~^E, - smso=~^_, - - -h1520|hazeltine 1520, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=~^Z, am, cub1=^H, - ed=~^X, el=~^O, clear=~\034, cup=~^Q%p2%c%p1%c$<1>, cols#80, - dl1=~^S, cud1=~^K, hz, lines#24, cuf1=^P, - rmso=~^Y, smso=~\037, cuu1=~^L, home=~^R, -# Info: -# The h1552 has tildes and backprimes and everything! -# Be sure the auto lf/cr switch is set to cr. -# -h1552|hazeltine 1552, - cols#80, it#8, lines#24, - bel=^G, clear=\EH\EJ, cr=\r, cub1=\b, cud1=\n, - cuf1=\EC, cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=\EA, - dl1=\EO, ed=\EJ, el=\EK, ht=\t, il1=\EE, ind=\n, - kbs=\b, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, - kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue, lf2=red, - lf3=green, ri=\EI, -h1552-rv|hazeltine 1552 reverse video, - cr=^M, cud1=^J, ind=^J, bel=^G, - smso=\ES, rmso=\ET, use=h1552, -# Info: -# h2000 won't work well because of a clash between upper case -# and ~'s. -# -h2000|hazeltine 2000, - cud1=^J, ind=^J, bel=^G, - il1=~^z$<6>, am, cub1=^H, clear=~^\$<6>, cup=~^q%p2%c%p1%c, cols#74, - dl1=~^s$<6>, home=~^r, lines#27, pad=\177, -# Info: -# Date: Fri Jul 23 10:27:53 1982 -# I tested this termcap entry for the Hazeltine Esprit with vi. It -# seems to work ok. There is one problem though if one types a -# lot of garbage characters very fast vi seems not able to keep -# up and hangs while trying to insert. That's in insert mode -# while trying to insert in the middle of a line. It might be -# because the Esprit doesn't have insert char and delete char as -# a built in function. Vi has to delete to end of line and then -# redraw the rest of the line. -# -esprit|Hazeltine Esprit I, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E^Z, am, cub1=^H, - cbt=\E^T, bw, ed=\E^W, el=\E^O, clear=\E\034, cup=\E^Q%p2%c%p1%c, - cols#80, dl1=\E^S, cud1=\E^K, home=\E^R, is2=\E\077, - kf0=^B\060\n, kf1=^B\061\n, kf2=^B\062\n, kf3=^B\063\n, - kf4=^B\064\n, kf5=^B\065\n, kf6=^B\066\n, kf7=^B\067\n, - kf8=^B\070\n, kf9=^B\071\n, kbs=^H, kcud1=\E^K, rmkx=\E\076, - khome=\E^R, kcub1=^H, kcuf1=^P, smkx=\E\074, kcuu1=\E^L, lf0=0, - lf1=1, lf2=2, lf3=3, lf4=4, lf5=5, lf6=6, lf7=7, lf8=8, lf9=9, - lines#24, cuf1=^P, rmso=\E^Y, smso=\E^_, cuu1=\E^L, diff --git a/usr/src/cmd/terminfo/hds.ti b/usr/src/cmd/terminfo/hds.ti deleted file mode 100644 index ba2855fdf7..0000000000 --- a/usr/src/cmd/terminfo/hds.ti +++ /dev/null @@ -1,313 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.11 */ -# # -------------------------------- -# -# concept: (HUMAN DESIGNED SYSTEMS) -# -# Manufacturer: HUMAN DESIGNED SYSTEMS -# Class: III -# -# Info: -# There seem to be a number of different versions of the C108 PROMS -# (with bug fixes in its Z-80 program). -# -# The first one that we had would lock out the keyboard of you -# sent lots of short lines (like /usr/dict/words) at 9600 baud. -# Try that on your C108 and see if it sends a ^S when you type it. -# If so, you have an old version of the PROMs. -# -# You should configure the C108 to send ^S/^Q before running this. -# It is much faster (at 9600 baud) than the c100 because the delays -# are not fixed. -# new status line display entries for c108-8p: -# is3 - init str #3 - setup term for status display - -# set programmer mode, select window 2, define window at last -# line of memory, set bkgnd stat mesg there, select window 0. -# -# tsl - to status line - select window 2, home cursor, erase to -# end-of-window, 1/2 bright on, goto(line#0, col#?) -# -# fsl - from status line - 1/2 bright off, select window 0 -# -# dsl - disable status display - set bkgnd status mesg with -# illegal window # -# -# There are probably more function keys that should be added but -# I don't know what they are. -# -c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages, - is3=\EU\E z"\Ev^A\177 !p\E ;"\E z \Ev ^A\177p\Ep\n, - rmcup=\Ev ^A\177p\Ep\r\n, use=c108-4p, -c108+acs|alternate charset defns for c108, - acsc=l\\qLkTxUmMjE, rmacs=\Ej , smacs=\Ej!, -c108-4p-acs|c108-4p w/ acs, - use=c108+acs, use=c108-4p, -c108-8p-acs|c108-8p w/ acs, - use=c108+acs, use=c108-8p, -c108-rv-8p-acs|c108-rv-8p w/ acs, - use=c108+acs, use=c108-rv-8p, -c108-4p|concept108-4p|concept 108 w/4 pages, - hs, eslok, dch1=\E\s1$<16*>, - tsl=\E z"\E?\E^E\EE\Ea %+ , fsl=\Ee\E z , dsl=\E ;\177, - is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev ^A p\Ep\n, - xon, is1=\EK\E!\E F, - smcup=\EU\Ev 8p\Ep\r\E^U, rmcup=\Ev ^A p\Ep\r\n, - cvvis=\EW, cnorm=\Ew, -# Info: -# No delays needed on c108 because of ^S/^Q handshaking -# - pb@, cr=^M, ind=^J, - cup=\Ea%p1%?%p1%{95}%>%t^A%{96}%-%;%' '%+%c%p2%?%p2%{95}%>%t^A%{96}%-%;%' '%+%c, - use=c100, -c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video, - smcup=\EU\Ev 8p\Ep\r, rmcup=\Ev ^B p\Ep\r\n, use=c108-rv-4p, -c108-rv-4p|concept108-rv-|concept108rv4p|concept 108 w/4 pages in reverse video, - flash=\EK$<50>\Ek, is1=\Ek, smso=\EE, rmso=\Ee, - use=c108-4p, -c108-rv-4p-acs|c108-rv-4p w/ acs, - use=c108+acs, use=c108-rv-4p, -c108-na|c108-na-8p|c108-8p-na|concept108-na-|concept108na8p|concept 108 w/8 pages no arrows, - kf7=\E;, kf8=\E<, kf9=\E=, - smkx@, rmkx@, use=c108-8p, -c108-na-acs|c108-na w/ acs, - use=c108+acs, use=c108-na, -c108-rv-na|c108-rv-na-8p|c108-8p-rv-na|concept 108 8 pages no arrows rev video, - kf7=\E;, kf8=\E<, kf9=\E=, - smkx@, rmkx@, use=c108-rv-8p, -c108-rv-na-acs|c108-na w/ acs, - use=c108+acs, use=c108-rv-na, -c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode, - is1=\E F\E", - smcup=\EU\Ev 8^AD\Ep\r, rmcup=\Ev ^A0^AD\Ep\r\n, - cols#132, use=c108-8p, -c108-w-acs|c108-w w/ acs, - use=c108+acs, use=c108-w, -# Info: -# Concept 100: -# These have only window relative cursor addressing, not screen -# relative. To get it to work right here, smcup/rmcup (which -# were invented for the # concept) lock you into a one page -# window for screen style programs. -# -# To get out of the one page window, we use a clever trick: -# we set the window size to zero ("\Ev " in rmcup) which the -# terminal recognizes as an error and resets the window to all -# of memory. -# -# This trick works on c100 but does not on c108, sigh. -# -# Some tty drivers use cr3 for concept, others use nl3, hence -# the delays on cr and ind below. This padding is only needed at -# 9600 baud. One or the other is commented out depending on -# local conventions. -# -# 2 ms padding on rmcup isn't always enough. 6 works fine. Maybe -# less than 6 but more than 2 will work. -# -# Note: can't use function keys f7-f10 because they are -# indistinguishable from arrow keys (!), also, del char and -# clear eol use xon/xoff so they probably won't work very well. -# -# Also note that we don't define insrt/del char/delline/eop/send -# because they don't transmit unless we reset them - I figured -# it was a bad idea to clobber their definitions. -# -# The mc5 sequence changes the escape character to ^^ so that -# escapes will be passed through to the printer. Only trouble -# is that ^^ won't be - ^^ was chosen to be unlikely. -# Unfortunately, if you're sending raster bits through to be -# plotted, any character you choose will be likely, so we lose. -# -c100|concept100|concept|c104|c100-4p|hds concept 100, - 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, - is1=\EK, is3=\Ev $<6>\Ep\n, -# cr=^M, ind=^J$<9>, - cr=$<9>^M, ind=^J, - bel=^G, cud1=^J, clear=\E?\E^E$<2*>, - smcup=\EU\Ev 8p\Ep\r\E^U$<16>, rmcup=\Ev $<6>\Ep\r\n, - il1=\E^R$<3*>, am, cub1=^H, ed=\E^E$<16*>, el=\E^U$<16>, - cup=\Ea%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\E^Q$<16*>, dl1=\E^B$<3*>, - rmir=\E\s\s, eo, smir=\E^P, ip=$<16*>, lines#24, mir, cuf1=\E=, - ht=\t$<8>, kbs=^h, ul, cuu1=\E;, smul=\EG, rmul=\Eg, - xenl, flash=\Ek$<20>\EK, pb#9600, vt#8, - smul=\EG, rmul=\Eg, smso=\ED, rmso=\Ed, - dim=\EE, rev=\ED, blink=\EC, prot=\EI, invis=\EH, sgr0=\EN@, - rep=\Er%p1%c%p2%' '%+%c$<.2*>, smkx=\EX, rmkx=\Ex, - kcuu1=\E;, kcud1=\E<, kcub1=\E>, kcuf1=\E=, khome=\E?, kcbt=\E', - kf1=\E5, kf2=\E6, kf3=\E7, kf4=\E8, kf5=\E9, - kf6=\E:a, kf7=\E:b, kf8=\E:c, - kich1=\E^P, krmir=\E\0, kdch1=\E^Q, kil1=\E^R, kdl1=\E^B, - kel=\E^S, ked=\E^C, kpp=\E., knp=\E-, kind=\E[, kri=\E\\, - khts=\E], kctab=\E_, -# Info: -# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) -# cannot be # in is2 because it will hang a c100 with no printer -# if sent twice. -# - mc5=\EQ"\EY(^W\EYD\Eo ^^, mc4=^^o \E\EQ!\EYP^W, -c100-rv|c100-rv-4p|c100-rv-4p-pp|concept100-rv|c100 rev video, - is1=\Ek, flash=\EK$<20>\Ek, cvvis@, cnorm@, - smso=\EE, rmso=\Ee, use=c100, -c100-rv-na|c100-rv-4p-na|c100 with no arrows, - smkx@, rmkx@, use=c100-rv, -oc100|oconcept|c100-1p|old 1 page concept 100, - in, is3@, use=c100, -# Info: -# -# ht through el included to specify padding needed in raw mode. -# -avt-ns|concept avt with status lins disabled, - am, eo, mir, ul, xenl, xon, - cols#80, it#8, lines#24, lm#192, - bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, - clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=\r, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, - dl=\E[%p1%dM$<4*>, dl1=\E[M$<4>, ed=\E[J$<96>, - el=\E[K$<6>, home=\E[H, hpa=\E[%p1%{1}%+%dG, - ht=\t$<4>, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, - il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>, - invis=\E8m, ip=$<4>, is1=\E[=103l\E[=205l, - 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, - kbs=\b, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, - kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, - kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H, mc0=\E[0i, - mc4=\E[4i, mc5=\E[5i, pfloc=\E[%p1%d;0u#%p2%s#, - pfx=\E[%p1%d;1u#%p2%s#, prot=\E[99m, rc=\E8, - rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM$<4>, - rmacs=^N$<1>, rmcup=\E[w\E2\r\n, rmir=\E4l, - rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{, sc=\E7, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - sgr0=\E[m, smacs=^O$<1>, smcup=\E[=4l\E[1;24w\E2\r, - smir=\E1, smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, - tbc=\E[2g, vpa=\E[%p1%{1}%+%dd, -avt-rv-ns|concept avt in reverse video mode/no status line, - is1=\E[=103l\E[=205h, flash=\E[=205l$<50>\E[=205h, use=avt-ns, -avt-w-ns|concept avt in 132 column mode/no status line, - is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, use=avt-ns, -avt-w-rv-ns|concept avt in 132 column mode/no status line, - is1=\E[=103h\E[=205h, smcup=\E[H\E[1;24;1;132w, - flash=\E[=205l$<50>\E[=205h, use=avt-ns, -# Info: -# Concept AVT with status line. We get the status line using the -# "Background status line" feature of the terminal. We swipe the -# first line of memory in window 2 for the status line, keeping -# 191 lines of memory and 24 screen lines for regular use. -# The first line is used instead of the last so that this works -# on both 4 and 8 page AVT's. (Note the lm#191 or 192 - this -# assumes an 8 page AVT but lm isn't currently used anywhere.) -# -avt+s|concept avt status line changes, - is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n, - tsl=\E[2;1!w\E[;%p1%dH\E[2K, fsl=\E[1;1!w, eslok, hs, - dsl=\E[0*w, lm#191, smcup=\E[2;25w\E2\r, rmcup=\E[2w\E2\r\n, - .wind=\E[%i%p1%{1}%+%d;%p2%d;%p3%{01}%+%d;%p4%{01}%+%dw, -avt|c5|avt-s|conceptavt|concept-avt| avt w/4 or 8 pages/80 columns, - use=avt+s, use=avt-ns, -avt-rv|avt-s-rv|avt-rv-s|concept avt in reverse video w/status line, - is1=\E[=103l\E[=205h, flash=\E[=205l$<50>\E[=205h, - use=avt+s, use=avt-ns, -avt-w|avt-w-s|concept avt in 132 column mode w/with status line, - is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, - use=avt+s, use=avt-ns, -avt-w-rv|avt-rv-w|avt-w-s-rv|avt-w-rv-s|avt 132 cols w/status line, - is1=\E[=103h\E[=205h, smcup=\E[H\E[1;24;1;132w, - flash=\E[=205l$<50>\E[=205h, - use=avt+s, use=avt-ns, -# HDS 200 terminals -# -# if=hds give 3 screens of 24 lines each -# sets up for 3 inputs. F10 selects input channel 1 -# F11 selects input channel 2 -# F12 selects input channel 3 -# if=hds3 give 3 screens-> F10 17 lines F12 has 7 lines and F11 has 24 lines -# sets up for 3 inputs. F10 selects input channel 1 -# F11 selects input channel 3 -# F12 selects input channel 2 -# -# -hds200|generic hds 200, - am, xenl, mir, ul, xon, km, nxon, hs, - cols#80, lines#24, xmc#1, it#8, wsl#60, - bel=^G, cr=\r, clear=\E[H\E[J, - el=\E[K, ed=\E[J, cup=\E[%i%p1%02d;%p2%02dH, - cud1=\n, home=$<8*>\E[H, cub1=\b, - cnorm=\E[=119l, cuf1=\E[C, cuu1=\E[A, - cvvis=\E[=119h, dch1=\E[P, dl1=\E[M, - smir=\E1, smso=\E[7m, smul=\E[4m, - rmir=\E1, rmso=\E[m, rmul=\E[m, - 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, - kbs=\b, nel=\r\n, ind=\n, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, khome=\E[H, -# -# -hds17|hds 17, - lines#17, - bel=^G, cr=\r, cud1=\n, - cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, - kcud1=\n, kcub1=\b, nel=\r\n, - ind=\n, use=hds200, -hds24|hds 24, - lines#24, - bel=^G, cr=\r, cud1=\n, - cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, - kcud1=\n, kcub1=\b, nel=\r\n, - ind=\n, use=hds200, -hds7|hds 7, - lines#7, - bel=^G, cr=\r, cud1=\n, - cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, - kcud1=\n, kcub1=\b, nel=\r\n, - ind=\n, use=hds200, -hds-w|hds wide, - cols#132, - bel=^G, cr=\r, cud1=\n, - cub1=\b, kbs=\b, kcud1=\n, - kcub1=\b, nel=\r\n, ind=\n, - use=hds200, -hds17-w| hds 17 wide, - cols#132, - bel=^G, cr=\r, cud1=\n, - cub1=\b, kbs=\b, kcud1=\n, - kcub1=\b, nel=\r\n, ind=\n, - use=hds17, -hds24-w|hds 24 wide, - cols#132, - bel=^G, cr=\r, cud1=\n, - cub1=\b, kbs=\b, kcud1=\n, - kcub1=\b, nel=\r\n, ind=\n, - use=hds24, -hds7-w|hds 7 wide, - cols#132, - bel=^G, cr=\r, cud1=\n, - cub1=\b, kbs=\b, kcud1=\n, - kcub1=\b, nel=\r\n, ind=\n, - use=hds7, diff --git a/usr/src/cmd/terminfo/header b/usr/src/cmd/terminfo/header deleted file mode 100644 index 7770f60d72..0000000000 --- a/usr/src/cmd/terminfo/header +++ /dev/null @@ -1,68 +0,0 @@ -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.5 */ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# ------------------------ -# -# This file describes capabilities of various terminals, as needed by -# software such as screen editors. It does not attempt to describe -# printing terminals very well, nor graphics terminals. Someday. -# See terminfo(5) in the Unix Programmers Manual for documentation. -# -# Conventions: First entry is two chars, first char is manufacturer, -# second char is canonical name for model or mode. -# Third entry is the one the editor will print with "set" command. -# Last entry is verbose description. -# Others are mnemonic synonyms for the terminal. -# -# Terminal naming conventions: -# Terminal names look like <manufacturer> <model> - <modes/options> -# Certain abbreviations (e.g. c100 for concept100) are also allowed -# for upward compatibility. The part to the left of the dash, if a -# dash is present, describes the particular hardware of the terminal. -# The part to the right can be used for flags indicating special ROM's, -# extra memory, particular terminal modes, or user preferences. -# All names are always in lower case, for consistency in typing. -# Because of file naming restrictions, terminal names should not contain -# period or slash, in fact, entirely alphanumeric characters plus dash are -# highly recommended. These restrictions do not apply to the verbose name. -# -# The following are conventionally used flags: -# rv Terminal in reverse video mode (black on white) -# 2p Has two pages of memory. Likewise 4p, 8p, etc. -# w Wide - in 132 column mode. -# pp Has a printer port which is used. -# na No arrow keys - terminfo ignores arrow keys which are -# actually there on the terminal, so the user can use -# the arrow keys locally. -# # The number of lines on the screen. -# s With a status line. -# -# There are some cases where the same name is used for two different -# terminals, e.g. "teleray" or "2621" or "vt100". In these cases, -# if a site has one of these, they should choose a local default and -# bring that terminal to the front in the reorder script. This works -# because setupterm() picks the first match in /usr/share/lib/terminfo/*/*. -# -# If you absolutely MUST check for a specific terminal (this is discouraged) -# check for the 1st entry (the canonical form) since all other codes are -# subject to change. We would much rather put in special capabilities to -# describe your terminal rather than having you key on the name. diff --git a/usr/src/cmd/terminfo/heath.ti b/usr/src/cmd/terminfo/heath.ti deleted file mode 100644 index a25a5522b3..0000000000 --- a/usr/src/cmd/terminfo/heath.ti +++ /dev/null @@ -1,126 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.6 */ -# # -------------------------------- -# -# heath: HEATHKIT and ZENITH -# -# Manufacturer: HEATHKIT and ZENITH -# Class: I -h19-a|heath-ansi|heathkit-a|heathkit h19 ansi mode, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E[1L$<1*>, am, cub1=^H, ed=\E[J, - el=\E[K, clear=\E[2J, cup=\E[%i%p1%d;%p2%dH, cols#80, - dch1=\E[1P, dl1=\E[1M$<1*>, cud1=\E[1B, - rmir=\E[4l, home=\E[H, smir=\E[4h, lines#24, mir, - cuf1=\E[1C, smacs=\E[10m, rmacs=\E[11m, msgr, ht=^I, it#8, - rmso=\E[0m, smso=\E[7m, cuu1=\E[1A, cvvis=\E[>4h, cnorm=\E[>4l, - kbs=^h, kcuu1=\E[1A, kcud1=\E[1B, kcub1=\E[1D, kcuf1=\E[1C, - khome=\E[H, - kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, lf6=blue, - lf7=red, lf8=white, kf6=\EOP, kf7=\EOQ, kf8=\EOR, - ri=\EM, is2=\E<\E[>1;2;3;4;5;6;7;8;9l\E[0m\E[11m\E[?7h, -h19-bs|heathkit w/keypad shifted, - smkx=\Et, rmkx=\Eu, use=h19-b, -h19-smul|heathkit w/keypad shifted/underscore cursor, - smkx=\Et, rmkx=\Eu, use=h19-u, -h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<1*>, am, cub1=^H, - ed=\EJ, el=\EK, clear=\EE, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\EN, dl1=\EM$<1*>, cud1=\EB, rmir=\EO, home=\EH, smir=\E@, - lines#24, mir, cuf1=\EC, smacs=\EF, rmacs=\EG, msgr, ht=^I, it#8, - ri=\EI, rmso=\Eq, smso=\Ep, cuu1=\EA, cvvis=\Ex4, cnorm=\Ey4, - kbs=^h, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, - kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, - lf6=blue, lf7=red, lf8=white, kf6=\EP, kf7=\EQ, kf8=\ER, - hs, eslok, tsl=\Ej\Ex5\EY8%p1%' '%+%c\Eo\Eo, fsl=\Ek\Ey5, -h19-u|heathkit with underscore cursor, - cvvis@, cnorm@, use=h19-b, -# Info: -# This still doesn't work right - something funny is going on -# with return # and linefeed in the reach program. Apparently -# cr acts like crlf and lf is ignored. There is a "literal end -# of line mode" which works right, but this will cause cr's to -# appear in files that are spooled. This description assumes -# "normal end of line mode". -# -reach|h89|h89 running reach, - cr@, cud1=\EB, ind=\r\l, is2=\Ey3\Ev, use=h19-b, -alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19, - lines#60, il1=\EL, dl1=\EM, use=h19, -# Info: -# The major problem with the Z29 is that it requires more -# padding than the Z19. Once again, here's a little termcap -# entry for it that will do the trick. -# -# The problem declaring an H19 to be synonomous with a Z29 is that -# it needs more padding. It especially loses if a program attempts -# to put the Z29 into insert mode and insert text at 9600 baud. It -# even loses worse if the program attempts to insert tabs at 9600 -# baud. Adding padding to text that is inserted loses because in -# order to make the Z29 not die, one must add so much padding that -# whenever the program tries to use insert mode, the effective -# rate is about 110 baud. -# -# What program would want to put the terminal into insert mode -# and shove stuff at it at 9600 baud you ask? -# -# Emacs. Emacs seems to want to do the mathematically optimal -# thing in doing a redisplay rather than the practical thing. -# When it is about to output a line on top of a line that is -# already on the screen, instead of just killing to the end of -# the line and outputing the new line, it compares the old line -# and the new line and if there are any similarities, it -# constructs the new line by deleting the text on the old line -# on the terminal that is already there and then inserting new -# text into the line to transform it into the new line that is -# to be displayed. The Z29 does not act kindly to this. -# -# But don't cry for too long.... There is a solution. You can make -# a termcap entry for the Z29 that says the Z29 has no insert mode. -# Then Emacs cannot use it. "Oh, no, but now inserting into a -# line will be really slow", you say. Well there is a sort of a -# solution to that too. There is an insert character option on -# the Z29 that will insert one character. Unfortunately, it -# involves putting the terminal into ansi mode, inserting the -# character, and changing it back to H19 mode. All this takes 12 -# characters. Pretty expensive to insert one character, but it -# works. Either Emacs doesn't try to use its inserting hack when -# it's only given an insert character ability or the Z29 doesn't -# require padding with this (the former is probably more likely, -# but I haven't checked it out). -# -z29|zenith29|z29b|, - cr=^M, cud1=^J, ind=^J, bel=^G, is2=\E<\E[?2h\Ev, il1=\EL$<1>, am, - cub1=^H, ed=\EJ$<14>, el=\EK$<1>, clear=\EE$<14>, - cup=\EY%p1%' '%+%c%p2%' '%+%c, - cols#80, dch1=\EN$<0.1*>, dl1=\EM$<1>, cud1=\EB, home=\EH, - ich1=\E<\E[1@\E[?2h$<1>, lines#24, cuf1=\EC, - rmacs=\EF, smacs=\EG, ind=\n$<2>, msgr, ht=^I, ri=\EI$<2>, rmso=\Eq, - smso=\Ep, cuu1=\E$<1>A, cvvis=\Ex4, cnorm=\Ey4, kbs=^h, kcuu1=\EA, - kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, kf1=\ES, - kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, - kf9=\E0I, kf0=\E~, lf0=home, - cbt=\E-, smul=\Es8, rmul=\Es0, diff --git a/usr/src/cmd/terminfo/homebrew.ti b/usr/src/cmd/terminfo/homebrew.ti deleted file mode 100644 index f6b32baf82..0000000000 --- a/usr/src/cmd/terminfo/homebrew.ti +++ /dev/null @@ -1,93 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# # -------------------------------- -# -# homebrew: HOME MADE TERMINALS -# -# Manufacturer: HOME MADE TERMINALS -# Class: III -# -bc|bill croft homebrew, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z, cols#96, home=^^, lines#72, - cuf1=^L, cuu1=^K, -nucterm|rayterm|nuc|nuc homebrew, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, clear=^L$<1>, - lines#24, cols#80, cuf1=^C, cuu1=^N, home=^B, ll=^K, el=^A, ed=^E, -carlock|klc|, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^E, am, el=^U, clear=^Z$<100>, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\177, dl1=^D, - rmir=^T, home=^^, smir=^T, lines#24, cuf1=^L, rmso=^V, smso=^V, - cuu1=^K, flash=\EV\EV, -# Info: -# EXIDY -# -ex3000, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, home=^Q, -exidy|exidy2500|exidy sorcerer as dm2500, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^P^J^X, am, cub1=^H, - el=^W, clear=^^, cup=^L%p2%'`'%^%c%p1%'`'%^%c, cols#64, - dch1=\b, dl1=^P^Z^X, smdc=^P, ed=^X, rmir=^X, home=^B, ich1=^\, - smir=^P, lines#30, cuf1=^\, ht=^I, smso=^N, rmso=^X, cuu1=^Z, -sexidy|exidy smart, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#64, clear=^L, home=^Q, - cuf1=^S, cuu1=^W, cub1=^H, cub1=^A, kcud1=^S, -# Info: -# netx and xitex are almost identical, except for the padding -# on clear screen. Hmm. -# -xitex|xitex sct-100, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=^F^E$<2000>, el=^E$<1600>, - clear=^L$<400>, cup=\E=%p1%'@'%+%c%p2%'@'%+%c, cols#64, home=^D, - lines#16, cuf1=\E+@A, ri=\E=@@^K, cuu1=^K, -# NETRONICS -netx|netronics|, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=^F^E$<2000>, el=^E$<1600>, - clear=^L$<466>, cup=\E=%p1%'@'%+%c%p2%'@'%+%c, cols#64, home=^D, - lines#16, cuf1=\E+@A, ri=\E=@@^K, cuu1=^K, -smartvid|Netronics Smartvid 80, - cr=^M, cud1=^J, ind=^J, bel=^G, smacs=\EG@, am, rmacs=\EGB, - cub1=^H, cbt=\EI, bw, ed=\EY, el=\ET, clear=^L, - cup=\E=%p1%' '%+%c%p2%' '%+%c, - cols#80, dch1=\EW, dl1=\ER, cud1=^J, rmir=\ED, eo, home=^Z, - ich1=\EQ, smir=\EC, lines#24, ll=^Z^K, msgr, cuf1=^A, - rmso=\EG@, xmc#1, smso=\EGC, ri=^K, ht=\Ei, rmcup=^Z^K, - rmul=\EG@, cuu1=^K, smul=\EGA, cnorm=^Z^K, xhp, -smarterm|smarterm-s|netronics smarterm 80x24 naked terminal, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, cbt=\EI, - ed=\EY, el=\ET, clear=^L, cup=\E=%p1%' '%+%c%p2%' '%+%c$<6>, - cols#80, lines#24, - dch1=\EW, dl1=\ER, cud1=^J, rmir=\ED, home=^Z, ich1=\EQ, - smir=\EC, cuf1=^A, ht=^I, rmul=\EG@, xmc#1, ul, - smul=\EGA, -ubell|ubellchar|, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ht=^I, el=\Ed, - clear=^Z, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, cuf1=^L, - cuu1=^K, home=^^, -ttywilliams, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#12, - cub1=^Y, cud1=^K, cuu1=^Z, clear=^^, el=^_, am, home=^], cuf1=^X, diff --git a/usr/src/cmd/terminfo/hp.ti b/usr/src/cmd/terminfo/hp.ti deleted file mode 100644 index 1d18467dbc..0000000000 --- a/usr/src/cmd/terminfo/hp.ti +++ /dev/null @@ -1,515 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.21 */ -# # -------------------------------- -# -# hp: HEWLETT PACKARD -# -# Manufacturer: HEWLETT PACKARD -# Class: I -# -# Info: -# Generic HP terminal - this should (hopefully) work on any HP -# terminal. -# -hp|hewlett-packar|hewlettpackard, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL, am, - cub1=^H, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, clear=\EH\EJ, - cup=\E&a%p2%dc%p1%dY$<6>, cols#80, vpa=\E&a%p1%dY, lm#0, da, db, - dch1=\EP, dl1=\EM, rmir=\ER, smir=\EQ, kbs=^H, lines#24, mir, - cuf1=\EC, ht=^I, rmso=\E&d@, smso=\E&dJ, - smul=\E&dD, rmul=\E&d@, cuu1=\EA, xhp, vt#6, kcbt=\Ei, - -hp110|hewlett-packard model 110 portable, - lines#16,use=hp, - -hp+pfk+cr|hp function keys with CR, - kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, - kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, - -hp+pfk-cr|hp function keys w/o CR, - kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, - kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, - -# Info: -# The 2621's use the same keys for the arrows and function keys, -# but not separate escape sequences. These definitions allow the -# user to use those keys as arrow keys rather than as function -# keys. -# -hp+pfk+arrows|hp alternate arrow definitions, - khome=\Ep\r, kll=\Eq\r, kind=\Er\r, kri=\Es\r, - kcuu1=\Et\r, kcub1=\Eu\r, kcuf1=\Ev\r, kcud1=\Ew\r, - kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, - -hp+arrows|hp arrow definitions, - kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, - khome=\Eh, kll=\EF, kind=\ES, kri=\ET, - -# Info: -# Generic stuff from the HP 262x series -# -hp262x, - dch1=\EP$<2>, ip=$<2>, rmso=\E&d@, smso=\E&dB, ed=\ED\EJ$<500>\EC, - rev=\E&dB, smul=\E&dD, blink=\E&dA, invis=\E&dS, sgr0=\E&d@, rmul=\E&d@, - sgr=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%c, - khome=\Eh, kcuu1=\EA, kcub1=\ED, kcuf1=\EC, kcud1=\EB, - smkx=\E&s1A, rmkx=\E&s0A, knp=\EU, kpp=\EV, kri=\ET, - kind=\ES, kil1=\EL, kdl1=\EM, kich1=\EQ, kdch1=\EP, - kel=\EK, ked=\EJ, krmir=\ER, - ind=\ES, ht=^I$<2>, xhp, - ed=\EJ, -# Info: -# Note: no "home" on HP's since that homes to top of memory, not -# screen. -# -# The only way to get the arrow keys to transmit anything at all -# is to turn on the function key labels (f1-f8) with smkx, and -# even then the user has to hold down shift! -# -# The default 2621 turns off the labels except when it has to to -# enable the function keys. If your installation prefers labels -# on all the time, or off all the time (at the "expense" of the -# function keys) move the # 2621-nl or 2621-wl labels to the -# front using reorder. -# -# Note: there are newer ROM's for 2621's that allow you to set -# strap A so the regular arrow keys xmit \EA, etc, as with the -# 2645. However, even with this strap set, the terminal stops -# xmitting if you reset it, until you unset and reset the strap! -# Since there is no way to set/unset the strap with an escape -# sequence, we don't use it in the default. -# -# If you like, you can use 2621-ba (bad arrow keys). -# -hp2621-ba|2621-ba|2621 w/new rom and strap A set, - smkx@, rmkx@, - use=hp+arrows, - use=hp2621, - -# Info: -# 2621 with function labels. Most of the time they are off, -# but inside vi, the function key labels appear. You have to -# hold down shift to get them to xmit. -# -hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels, - is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl, - -# Info: -# 2621 with function labels. Most of the time they are off, -# but inside vi, the function key labels appear. You have to -# hold down shift to get them to xmit. -# -hp2621-fl|2621-fl|hp 2621, - is2=\E&j@\r, cbt=\Ei, cup=\E&a%p2%dc%p1%dY, - dch1=\EP$<2>, ip=$<2>, pb#19200, - smso=\E&dD, rmso=\E&d@, smul=\E&dD, rmul=\E&d@, sgr0=\E&d@, xhp@, - use=hp+pfk+cr, smkx=\E&jB, rmkx=\E&j@, ht=^I$<2>, xon, use=hp, - -# Info: -# To use 2621p printer, setenv TERM=2621p, PRINTER=2612p -# -hp2621p|2621p|2621P|hp 2621 with printer, - mc5=\E&p11C, mc4=\E&p13C, use=hp2621, - -hp2621p-a|2621p-a|hp2621p with fn as arrows, - use=hp+pfk+arrows, use=hp2621p, - -# Info: -# hp2621 with k45 keyboard -# -hp2621-k45|hp2621k45|2621k45|k45|hp 2621 with 45 keyboard, - kbs=^H, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\Eh, - smkx=\E&s1A, rmkx=\E&s0A, use=hp2621, - -# Info: -# This terminal should be used at 4800 baud or less. It needs -# padding for plain characters at 9600, I guessed at an -# appropriate cr delay. -# -# It really wants ^E/^F handshaking, but that doesn't work well -# even if you write software to support it. -# -2645|hp2645|hp45|hp 264x series, - dim=\E&dH, rev=\E&dB, smul=\E&dD, blink=\E&dA, sgr0=\E&d@, - sgr=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%?%p5%t%'H'%|%;%?%p6%t%'B'%|%;%c, - kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\Eh, - kctab=\E2, khts=\E1, - smkx=\E&s1A, rmkx=\E&s0A, knp=\EU, kpp=\EV, kri=\ET, kind=\ES, - kil1=\EL, kdl1=\EM, kich1=\EQ, kdch1=\EP, - kel=\EK, ked=\EJ, krmir=\ER, pb#9600, cr=^M$<20>, use=hp, - -# Info: -# Hp 2624 B with 4 or 10 pages of memory. -# -# Some assumptions are made with this entry. These settings are -# NOT set up by the initialization strings. -# -# Port Configuration -# RecvPace=Xon/Xoff -# XmitPace=Xon/Xoff -# StripNulDel=Yes -# -# Terminal Configuration -# InhHndShk=Yes -# InhDC2=Yes -# XmitFnctn(A)=No -# InhEolWrp=No -# -# Note: the 2624 DOES have a true "home," believe it or not! -# -# The 2624 has an "error line" to which messages can be sent. -# This is CLOSE to what is expected for a "status line". However, -# after a message is sent to the "error line", the next carriage -# return is EATEN and the "error line" is turned back off again! -# So I guess we can't define hs, eslok, wsl, dsl, fsl, tsl -# -# This entry supports emacs (and any other program that uses raw -# mode) at 4800 baud and less. I couldn't get the padding right -# for 9.6. -# - -hp2624|hp2624a|hp2624b|hp2624b-4p|2624-4p|2624|2624a|2624b|Hewlett Packard 2624 B, - da, db, lm#96, - flash=\E&w13F\200\200\200\200\E&w12F\200\200\200\200\E&w13F\200\200\200\200\E&w12F, - use=hp+labels, - use=scrhp, - -# Info: -# These attributes are not set above: -# -# civis, cmdch, cnorm, csr, cub, cud, cuf, cuu, cvvis, dch, dl, -# ech, eo, eslok, fsl, gn, hc, hd, hu, hz, ich, ich1, if, il, in, -# indn, iprog, is2, is3, it, ka1, ka3, kb2, kc1, kc3, kclr, kf0, -# kf10, khts, km, ktbc, lf0, lf1, lf10, lf2, lf3, lf4, lf5, lf6, -# lf7, lf8, lf9, mc5p, os, pad, pfkey*, pfloc*, pfx*, prot, rc, -# rep, rin, rmcup, rmdc, rmm, rs2, rs3, sc, smcup, smdc, smm, tsl, -# uc, ul, vt, wind, wsl, xenl, xmc, xsb, xt -# -# not needed if tset is used: -# if=/usr/share/lib/tabset/std, -# -# This 2626 entry does not use any of the fancy windowing stuff -# of the 2626. -# -# Indeed, terminfo does not yet handle such stuff. Since changing -# any window clears memory, it is probably not possible to use -# this for screen opt. -# -# ed is incredibly slow most of the time - I am guessing at the -# exact padding. Since the terminal uses xoff/xon this is intended -# only for cost computation, so that the terminal will prefer el -# or even dl1 which is probably faster! -# -# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only -# extra slow # on the last line of the window. -# -# The padding probably should be changed. -# -hp2626|hp2626a|hp2626p|2626|2626a|2626p|2626A|2626P|hp 2626, - ed=\ED\EJ$<500>\EC, - ip=$<4>, - is2=\E&j@\r, - pb#19200, - da, db, lm#0, - indn=\E&r%p1%dD, - rin=\E&r%p1%dU, - use=hp+pfk+cr, - use=hp+labels, - use=scrhp, - -# Info: -# This entry is for sysline. It allocates a 23 line window with -# a 115 line workspace for regular use, and a 1 line window for -# the status line. -# -# This assumes port 2 is being used. -# Turn off horizontal line, Create ws #1 with 115 lines, -# Create ws #2 with 1 line, Create window #1 lines 1-23, -# Create window #2 lines 24-24, Attach cursor to workspace #1. -# Note that this clears the tabs so it must be done by tset before -# it sets the tabs. -# -hp2626-s|2626-s|hp 2626 using only 23 lines, - tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, - fsl=\E&d@\E&w7f2p1I\E&w4f1I, eslok, hs, - is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I - \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r, - lines#23, use=2626, -# Info: -# Force terminal back to 24 lines after being 23. -# -hp2626-ns|2626-ns|hp 2626 using all 24 lines, - is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I - \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r, - use=2626, -# Info: -# Various entries useful for small windows on 2626. -# -hp2626-12|2626-12, - lines#12, use=2626, -hp2626-12x40|2626-12x40, - cols#40, lines#12, use=2626, -hp2626-x40|2626-x40, - cols#40, use=2626, -hp2626-12-s|2626-12-s, - lines#11, use=2626-s, -# Info: -# You should use this terminal at 4800 baud or less. -# -hp2648|hp2648a|2648a|2648A|2648|HP 2648a graphics terminal, - clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>, - dch1=\EP$<7>, ip=$<5>, use=2645, - -# Info: -# 2640a doesn't have the Y cursor addressing feature, and C is -# memory relative instead of screen relative, as we need. -# -2640|hp2640a|2640a|hp 2640a, - cup@, smkx@, rmkx@, use=2645, - -2640b|hp2640b|2644a|hp2644a|hp 264x series, - smkx@, rmkx@, use=2645, - -# Info: -# 2621 using all 48 lines of memory, only 24 visible at any time. -# -hp2621-48|2621-48|48 line 2621, - vpa=\E&a%p1%dR, lines#48, home=\EH, cup=\E&a%p2%dc%p1%dR, use=hp2621, - -# Info: -# 2621 with no labels ever. Also prevents vi delays on escape. -# -hp2621-nl|2621-nl|hp 2621 with no labels, - smkx@, rmkx@, khome@, kcuu1@, kcub1@, kcuf1@, kcud1@, use=hp2621-fl, - -# Info: -# Needed for UCB ARPAVAX console, since lsi-11 expands tabs -# (wrong). -# -hp2621-nt|2621-nt|hp 2621 w/no tabs, - ht@, use=hp2621, - -# Info: -# The HP 150 terminal is a fairly vanilla HP terminal, with the -# clreol standout problem. It also has graphics capabilities and -# a touch screen, which we don't describe here. -# -hp150|Hewlett Packard Model 150, - use=2622, - -# Info: -# Hp 2382a terminals, "the little ones." They don't have any -# alternate character set support and sending out ^N/^O will -# leave the screen blank. -# -hp2382a|hp2382|Hewlett Packard 2382a, - da, db, lm#48, - pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, - lh#1, use=hp+labels, - rmacs@, smacs@, acsc@, - sgr0=\E&d@, - sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%'@'%+%e%'S'%;%e%?%ga%t%ga%'@'%+%e%'@'%;%;%c, - use=scrhp, - -hp2621-a|hp2621a-a|2621-a|hp2621 with fn as arrows, - use=hp+pfk+arrows, use=hp2621-fl, - -# Info: -# new Hewlett Packard terminals -# -# This entry supports emacs (and any other program that uses raw -# mode) at 4800 baud and less. I couldn't get the padding right -# for >=9.6. -# - -newhpkeyboard|generic entry for HP extended keyboard, - kbs=^H, kcbt=\Ei, kclr=\EJ, - kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, - kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, - use=hp+pfk-cr, - khome=\Eh, kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, - knp=\EU, kpp=\EV, kri=\ES, krmir=\ER, - rmkx=\E&s0A, smkx=\E&s1A, - -newhp|generic entry for new Hewlett Packard terminals, - am, bw, mir, xhp, xon, - cols#80, lines#24, pb#4800, - acsc=T1R!U2S"W3O#V4P$t5u6w7v8:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X:4>q\,x.n/, - bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, - cub1=^H, cud1=^J, cuf1=\EC, cuu1=\EA, -# cub1=\ED, cud1=\EB, - dch1=\EP$<2>, dim=\E&dH, dl1=\EM, - ed=\EJ, el=\EK, ht=^I$<2>, - hts=\E1, il1=\EL, ind=^J, invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, -# ind=\ES, - nel=^M^J, - pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s, - pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s, - pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, - rev=\E&dB, ri=\ET, rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, - rs1=\Eg, - sgr0=\E&d@^O, -# Info: -# sgr is figured out as follows: -# tparm parameters -# 1=standout, 2=underlining, 3=reverse video, 4=blinking, 5=dim, -# 6=bold, 7=blank, 8=protection, 9=alternate character set -# The protection parameter is ignored. -# combination parameters -# standout = reverse + half-intensity = 3 | 5. -# bold = reverse + underline = 2 | 3. -# - sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%'@'%+%e%'S'%;%e%?%ga%t%ga%'@'%+%e%'@'%;%;%c%?%p9%t^N%e^O%;, - smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD, - tbc=\E3, - use=newhpkeyboard, - -memhp|memory relative addressing for new HP ttys, - vt#6, - clear=\EH\EJ$<40>, - cub=\E&a-%p1%dC, cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC, cuu=\E&a-%p1%dR, - cup=\E&a%p1%dr%p2%dC, mrcup=\E&a%p1%dr%p2%dC, - home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R^M, vpa=\E&a%p1%dR, - use=newhp, - -scrhp|screen relative addressing for new HP ttys, - clear=\E&a0x0Y\EJ$<40>, - cub=\E&a-%p1%dC, cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC, cuu=\E&a-%p1%dR, - cup=\E&a%p1%dy%p2%dX$<10>, mrcup=\E&a%p1%dr%p2%dC, - home=\E&a0y0X, hpa=\E&a%p1%dC, ll=\E&a0y0X\EA, vpa=\E&a%p1%dY, - use=newhp, - -hp+labels|"standard" label info for new HP ttys, - lh#2, lw#8, nlab#8, - pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, - smln=\E&jB, - -hp+printer| "standard" printer info for HP ttys, - ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C, - - -# Info: -# The new hp2621b is kind of a cross between the old 2621 and the -# new 262x series of machines. It has dip-switched options. -# The firmware has a bug in it such that if you give it a null -# length label, the following character is eaten! -# - -hp2621b|2621b|hp 2621b with old style keyboard, - lm#48, lh#1, lw#8, nlab#8, - pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%' '%c%;%p2%s\E%'o'%p1%+%c\r, - smln=\E&jB, - khome=\Eh, kll=\EF, kri=\ES, kind=\ET, - kcuu1=\EA, kcub1=\ED, kcuf1=\EC, kcud1=\EB, - use=hp2621, - -hp2621b-p|2621b-p|hp 2621b with printer, - use=hp+printer, - use=hp2621b, - -# Info: -# hp2621b - new 2621b's with new extended keyboard -# these are closer to the new 26xx series than the other 2621b -# -hp2621b-kx|2621b-kx|hp 2621b with extended keyboard, - use=newhpkeyboard, - use=hp2621b, - -hp2621b-kx-p|2621b-kx-p|hp 2621b with new keyboard & printer, - use=hp+printer, - use=hp2621b-kx, - -# Info: -# Some assumptions are made in the following entries. -# These settings are NOT set up by the initialization strings. -# -# Port Configuration -# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes -# -# Terminal Configuration -# InhHndShk(G)=Yes InhDC2(H)=Yes -# XmitFnctn(A)=No InhEolWrp=No -# -# -# Hp 2622a & hp2623a display and graphics terminals -# -hp2622|hp2622a|2622|2622a|hp 2622, - use=hp+pfk+cr, - is2=\E&dj@\r, - pb#19200, - da, db, lm#0, - use=hp+labels, - use=scrhp, - -# Info: -# The 2623 is a 2622 with extra graphics hardware. -# -hp2623|hp2623a|2623|2623a|hp 2623, - use=hp2622, - - -hp2624b-p|hp2624b-4p-p|Hewlett Packard 2624 B with printer, - use=hp+printer, - use=hp2624b, - -# Info: -# The Hewlett Packard B can have an optional extra 6 pages of -# memory. -# - -hp2624-10p|hp2624a-10p|hp2624b-10p|2624-10p|2624a-10p|2624b-10p|Hewlett Packard 2624 B w/ 10 pages of memory, - lm#240, use=hp2624b, - -hp2624b-10p-p|Hewlett Packard 2624 B w/ extra memory & printer, - lm#240, use=hp2624b-p, - -# Info: -# Color manipulations for HP terminals - -hp+color|hp with colors, - ccc, - pairs#8, colors#16, ncv#17, - scp=\E&v%p1%dS, - initp=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a - %?%p3%{1000}%=%t1%e.%p3%d%;b - %?%p4%{1000}%=%t1%e.%p4%d%;c - %?%p5%{1000}%=%t1%e.%p5%d%;x - %?%p6%{1000}%=%t1%e.%p6%d%;y - %?%p7%{1000}%=%t1%e.%p7%d%;z - %p1%dI, - oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I, - op=\E&v0S, - -# Info: -# is2 disables the dispay, set screen to be 80 columns wide, -# set all function keys to transmit default strings, clears -# the screen and then enables the display. -# - -hp2397|2397|2397a|hp2397a|HP 2397A, - is2=\E*dF\E&w6f80X\E&f0a1k2d2Lf1\Ep\E&f0a2k2d2Lf2\Eq\E&f0a3k2d2Lf3\Er\E&f0a4k2d2Lf4\Es\E&f0a5k2d2Lf5\Et\E&f0a6k2d2Lf6\Eu\E&f0a7k2d2Lf7\Ev\E&f0a8k2d2Lf8\Ew\EH\EJ$<40>\E*dE, - use=scrhp, use=hp+labels, use=hp+color, diff --git a/usr/src/cmd/terminfo/lsi.ti b/usr/src/cmd/terminfo/lsi.ti deleted file mode 100644 index 455847ae0f..0000000000 --- a/usr/src/cmd/terminfo/lsi.ti +++ /dev/null @@ -1,108 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.5 */ -# # -------------------------------- -# -# lsi: LEAR SIEGLER (ADM) -# -# Manufacturer: LEAR SIEGLER -# Class: III -# -adm1a|adm1|lsi adm1a, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=\E;$<1>, - cols#80, home=^^, lines#24, cuf1=^L, cuu1=^K, -adm2|lsi adm2, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, ed=\EY, el=\ET, - clear=\E;, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\EW, dl1=\ER, - home=^^, ich1=\EQ, kcud1=^J, khome=^^, kcub1=^H, kcuf1=^L, kcuu1=^K, - lines#24, cuf1=^L, cuu1=^K, -adm3|lsi adm3, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, clear=^Z, lines#24, cols#80, -adm3a|3a|lsi adm3a, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z$<1>, - cols#80, home=^^, lines#24, cuf1=^L, cuu1=^K, -adm3a+|3a+|adm3aplus|lsi adm3a+, - kcub1=^H, kcud1=^J, kcuu1=^K, kcuf1=^L, use=adm3a, -adm5|lsi adm5, - cr=^M, cud1=^J, ind=^J, bel=^G, - ed=\EY, el=\ET, cud1=^J, kbs=^H, khome=^^, - rmso=\EG, xmc#1, smso=\EG, use=adm3aplus, -adm21|lear siegler adm21, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\EY, el=\ET, il1=30*\EE, - dl1=30*\ER, ich1=\EQ, dch1=\EW, smul=\EG8, - rmul=\EG0, xmc#1, smso=\EG4, rmso=\EG0, kbs=^H, kcub1=^H, - kcuf1=^L, kcuu1=^K, kcud1=^J, khome=^^, use=adm3a, -# Info: -# If the adm31 gives you trouble with standout mode, check the -# DIP switch in position 6, bank @c11, 25% from back end of pad. -# Should be OFF. -# -# If there is no such switch, you have an old adm31 and must use -# oadm31 -# -adm31|31|lsi adm31, - is2=\Eu\E0, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, - el=\ET, cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=\E*, ed=\EY, cols#80, - dch1=\EW, dl1=\ER, rmir=\Er, home=^^, smir=\Eq, - kf0=^A0\r, kf1=^A1\r, kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, - kf5=^A5\r, kf6=^A6\r, kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, - kcud1=^J, kcub1=^H, kcuf1=^L, kcuu1=^K, - lines#24, mir, cuf1=^L, - rmso=\EG0, smso=\EG1, cuu1=^K, smul=\EG1, rmul=\EG0, -oadm31|o31|old adm31, - smso=\EG4, smul@, rmul@, use=adm31, -# Info: -# I had an ADM36 at home for a month and setup the following -# termcap entry for it. The entry is not fancy (doesn`t set tabs, -# doesn't implement Highlighting or reverse video, etc.), but -# works well with vi. It uses the terminal in ADM36 mode not the -# alternate vt52 emulation mode. -# -36|adm36|lsi adm36, - el=\E[0K, ed=\E[0J, cup=\E[%i%p1%d;%p2%dH, - cuf1=\E[D, cuu1=\E[A, cols#80, lines#24, am, cub1=^H, - clear=\E[H\E[2J, il1=\E[1L$<100>, dl1=\E[1M, - smir=\E[4h, rmir=\E[4l, mir, - kcuu1=\E[A, kcud1=\EB, kcuf1=\EC, kcub1=\ED, - is2=\E[6;?7h\E[4;20;?1;?3;?6;?4l\E(B\E)B\E>, -adm42|42|lsi adm42, - cvvis=\EC\E3 \E3(, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE$<270>, - am, cub1=^H, ed=\EY, el=\ET, clear=\E;, cup=\E=%p1%' '%+%c%p2%' '%+%c, - cols#80, dch1=\EW, dl1=\ER, rmir=\Er, smir=\Eq, ip=$<6*>, lines#24, - cbt=\EI, cuf1=^L, rmso=\EG0, smso=\EG4, ht=\t, cuu1=^k, - pad=\177, kcud1=^J, kcuf1=^L, kcuu1=^K, kcub1=^H, khome=^^, -# Info: -# The following termcap for the Lear Siegler ADM-42 leaves the -# "system line" at the bottom of the screen blank (for those who -# find it distracting otherwise) -# -adm42-nl|42-nl|lsi adm-42 with no system line, - il1=\EE\EF ^I, cbt=\EI\EF ^I, ed=\EY\EF ^I, el=\ET\EF ^I, clear=\E;\EF ^I, - cup=\E=%p1%' '%+%c%p2%' '%+%c$<6>\EF ^I, dch1=\EW\EF ^I, dl1=\ER\EF ^I, - rmir=\Er\EF ^I, smir=\Eq\EF ^I, use=adm42, diff --git a/usr/src/cmd/terminfo/microterm.ti b/usr/src/cmd/terminfo/microterm.ti deleted file mode 100644 index 796ce3a653..0000000000 --- a/usr/src/cmd/terminfo/microterm.ti +++ /dev/null @@ -1,133 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.6 */ -# # -------------------------------- -# -# microterm: MICROTERM -# -# Manufacturer: MICROTERM -# Class: III -microterm|act4|microterm act iv, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^_, el=^^, clear=^L, - cup=^T%p1%c%p2%c, cols#80, lines#24, cuf1=^X, cuu1=^Z, home=^], -# Info: -# The padding on cuf1 for act5 and mime is a guess and not final. -# The act5 has hardware tabs, but in cols 8, 16, 24, 32, 41 (!), 49, ... -# -microterm5|act5|microterm act v, - uc=\EA, ri=\EH$<3>, kcuu1=^Z, kcud1=^K, kcub1=^H, kcuf1=^X, use=act4, -# Info: -# Act V in split screen mode. act5-s is not tested and said not -# to work. -# Could have been because of the funny tabs - it might work now. -# -act5-s|act5s|act 5 in split screen mode, - smcup=\EP, rmcup=\EQ, lines#48, cols#39, use=act5, -# Info: -# These mime1 entries refer to the Microterm Mime I or Mime II. -# The default mime is assumed to be in enhanced act iv mode. -# There is a ^Q in is2 to unwedge any lines that wedge on ^S. -# -mime|mime1|mime2|mimei|mimeii|microterm mime1, - cup=^T%p1%{24}%+%c%p2%?%p2%{32}%>%t%{48}%+%;%{80}%+%c, cols#80, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<80>, am, cub1=^H, - ed=^_, el=^^, clear=\035^C, dl1=^W$<80>, ht=^I, lines#24, - cuf1=^X, it#8, uc=^U, cuu1=^z, home=\035, cud1=^K, is2=\E^S^Q, - kcuu1=^Z, kcud1=^K, kcub1=^H, kcuf1=^X, ri=^R$<3>, vt#9, -mime-na|mime with no arrow keys, - kcuu1@, kcud1@, kcuf1@, use=mime, -mime-3a|mime-adm3a|mime1 emulating adm3a, - cols#80, lines#24, - bel=^G, clear=^Z$<1>, cr=\r, cub1=\b, cud1=\n, - cuf1=\f, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - home=^^, ind=\n, kcub1=\b, kcud1=^K, kcuf1=^X, - kcuu1=^Z, -mime-3ax|mime-adm3ax|mime1 emulating enhanced adm3a, - il1=^A$<80>, dl1=^W$<80>, ht=^I$<3>, it#8, el=^X, ed=^_, use=mime-3a, -# Info: -# Mimes using brightness for standout. Half bright is very dim -# unless you turn up the brightness so far that lines show up on -# the screen. -# -mime-fb|full bright mime1, - smso=^Y, rmso=^S, is2=^S\E^Q, use=mime, -mime-hb|half bright mime1, - smso=^S, rmso=^Y, is2=^Y\E, use=mime, -# Info: -# These entries (for mime 2a) put the terminal in low intensity -# mode since high intensity mode is so obnoxious. -# This is the preferred mode (but ^X can't be used as a kill -# character (?)) -# -mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52), - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<20*>, cub1=^H, ed=\EQ$<20*>, - cols#80, el=\EP, clear=\EL, cup=\EY%p1%' '%+%c%p2%' '%+%c, is2=^Y, - dch1=^N, dl1=^W$<20*>, ip=$<2>, rmir=^Z, home=\EH, smir=^O, cuu1=\EA, - ri=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, lines#24, - cuf1=\EC, ht=^I, it#8, rmso=\E9, smso=\E8, smul=\E4, rmul=\E5, -mime2a-s|microterm mime2a (emulating an enhanced soroc iq120), - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<20*>, am, cub1=^H, ed=\EJ$<20*>, - el=\EK, clear=\EL, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\ED, - dl1=^W$<20*>, kcub1=^H, kcuf1=^L, kcuu1=^K, kcud1=^J, home=^^, is2=\E), - ri=\EI, smir=\EE, rmir=^Z, ip=$<2>, lines#24, cuf1=^L, cuu1=\EI, - smso=\E:, rmso=\E;, smul=\E6, rmul=\E7, -# Info: -# Wed Mar 9 18:53:21 1983 -# We run our terminals at 2400 Baud, so there might be some timing -# problems at higher speeds. -# The major improvements in this mod are the terminal now -# scrolls down and insert mode works without redrawing the rest -# of the line to the right of the cursor. This is done with a -# bit of a kludge using the exit graphics mode to get out of -# insert, but it does not appear to hurt anything when using -# vi at least. If you have some users using act4's with programs -# that use curses and graphics mode this could be a problem. -# -mm3|mime314|mm314|mime 314, - am, cub1=^H, ht=^I, ed=^_, el=^^, clear=^L, cup=^T%p1%c%p2%c, - cols#80, lines#24, cuf1=^X, cuu1=^Z, - home=^], kcud1=^K, kcub1=^H, kcuf1=^X, kcuu1=^Z, - il1=^A, dch1=^D, dl1=^W, smir=^S, rmir=^V, -# Info: -# Fri Aug 5 08:11:57 1983 -# this entry works for ergo 4000's with the following setups: -# ansi,wraparound,newline disabled, xon/xoff disabled in both -# setup a & c -# -# WARNING!!! There are multiple versions of ERGO 4000 microcode -# Be advised that very early versions DO NOT WORK RIGHT !! -# Microterm does have a ROM exchange program- use it or lose big -# -m8|ergo4000|microterm ergo 4000, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\E[0J$<15>, el=\E[0K$<13>, - clear=\E[H\E[2J$<80>, cub1=^H, cuf1=\E[C, cuu1=\E[A, cud1=\E[B, - cup=\E[%i%p1%d;%p2%dH, cols#80, lines#66, da, db, dch1=\E[1P$<80>, - il=\E[1L$<5*>, dl1=\E[1M$<5*>, smir=\E[4h$<6>, rmir=\E[4l, - is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>, kf1=\EOP, - kf2=\EOQ, kf3=\EOR, kf4=\EOS, kcud1=\E[B, rmkx=\E=$<4>, - kcub1=\E[D, kcuf1=\E[C, smkx=\E=$<4>, kcuu1=\E[A, lf1=pf1, - lf2=pf2, lf3=pf3, lf4=pf4, msgr, ht=^I, rmso=\E[0m$<20>, - smso=\E[7m$<20>, ri=\EM$<20*>, ind=\ED$<20*>, diff --git a/usr/src/cmd/terminfo/misc.ti b/usr/src/cmd/terminfo/misc.ti deleted file mode 100644 index 8b30afc5bd..0000000000 --- a/usr/src/cmd/terminfo/misc.ti +++ /dev/null @@ -1,780 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1996 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # -------------------------------- -# -# misc: MISCELLANEOUS TERMINALS -# -# Manufacturer: MISCELLANEOUS TERMINALS -# Class: III -# -# Info: -# This file is for manufacturers with only a few terminals. -# They are included alphabetically by manufacturer. Hard copy -# terminals, personal computers, special "made up" terminals -# and homemade terminals go in separate files. -# -aed512|aed|AED 512, - cr=^M, cud1=^J, bel=^G, - cols#64, lines#40, clear=^L, - cub1=^H, cuf1=\Ei0800\001, - cnorm=\E\072004=000200??\001, - flash=\EK0001??0000K0001202080\001, - smso=\E\07200>8000140[80C00\001, rmso=\E[00C80\001, - smul=\E\07200>8000140\001, rmul=\E\07200>8000100\001, - uc=\Ei???>l0800i0102\001, - smcup=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001, - rmcup=\E\07200>8000100{804<0??00001000L80\072004=000200??\001, - ind=\E;1100\072004=000200??;1300\047\200\001\n\E\072004=0002??00;1200\001\n, - cuu1=^K, .cup=\E;1300%p1%c%p2%c\001, -ampex|d80|dialogue|dialogue80|ampex dialogue 80, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\EA, ul, smul=\El, rmul=\Em, - am, bw, cub1=^H, ht=^I, clear=\E*$<75>, cup=\E=%p1%' '%+%c%p2%' '%+%c, - il1=\EE$<5*>, cbt=\EI, ich1=\EQ, dl1=\ER$<5*>, dch1=\EW, - el=\Et, ed=\Ey, smso=\Ej, rmso=\Ek, lines#24, cols#80, cuf1=^L, cuu1=^K, -# Info: -# Tue Aug 9 20:11:37 1983 -# No backspace key in the main QWERTY cluster. Fortunately, -# it has a NEWLINE/PAGE key just above RETURN that sends a strange -# single-character code. Given a suitable Unix (one that lets you -# set an echo-erase-as-BS-SP-BS mode), this key can be used as -# the erase key; I find I like this. Because some people and -# some systems may not, there is another termcap ("ax175e") that -# suppresses this little eccentricity by omitting the relevant -# capability. -# -# Problems: -# - I haven't done tab-setting yet. -# - The initialization sequence doesn't use the terminal's -# reset-everything code because it would require a delay -# in the middle of the is sequence. -# -ampex175|ampex d175, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, - ed=\Ey, el=\Et, clear=\E+, cup=\E=%p1%' '%+%c%p2%' '%+%c, - cols#80, dch1=\EW, dl1=\ER, - home=\036, ich1=\EQ, is2=\EX\EA\EF, - kcud1=^J, khome=\036, kcub1=^H, kcuf1=^L, - kcuu1=^K, kil1=\EE, kdl1=\ER, kich1=\EQ, kdch1=\EW, - lines#24, ll=\036^K, cuf1=^L, - rmso=\Ek, smso=\Ej, rmcup=\EF, smcup=\EN, rmul=\Em, cuu1=^K, - smul=\El, -ampex175-b|ampex d175 using left arrow for erase, - kbs=^_, use=ampex175, -# Info: -# Below are the termcap entries I've been using. The problem -# with scrolling in vi can only be fixed by getting BBN to put -# smarter scroll logic in the terminal or changing vi or padding -# scrolls with about 500 ms delay. -# -# I always thought the problem was related to the terminal -# counting newlines in its input buffer before scrolling and -# then moving the screen that much. Then vi comes along and -# paints lines in on the bottom line of the screen, so you get -# this big white gap. -# -# We have not had sufficient demand for vi (most use emacs or -# rand) here to fix this problem. -# -# [Sounds like the BitGraph should stop looking ahead when it -# sees escape - ] -# -bitgraph|bbn bitgraph, - use=bg3.10rv, -bg3.10rv|bgrv|bbn bitgraph (reverse video), - use=bg2.0rv, -bg3.10nv|bgnv|bbn bitgraph (normal video), - use=bg2.0nv, -bg3.10|bgn|bbn bitgraph (no init), - use=bg2.0, -bg2.0rv|bbn bitgraph (reverse video), - is2=\E>\E[?5h\E[?7h, flash=\E[?5l\E[?5h, use=bg2.0, -bg2.0nv|bbn bitgraph (normal video), - is2=\E>\E[?5l\E[?7h, flash=\E[?5h\E[?5l, use=bg2.0, -bg2.0|bbn bitgraph (no init), - cr=^M, cud1=^J, bel=^G, - il1=\E[L$<2*>, cub1=^H, ed=\E[J$<150>, el=\E[K$<2>, - clear=\E[H\E[J$<150>, cup=%i\E[%p1%d;%p2%dH, cols#85, csr=\E[%i%p1%d;%p2%dr, - dl1=\E[M$<2*>, cud1=\E[B, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - kcud1=\E[B, rmkx=\E>, kcub1=\E[D, kcuf1=\E[C, smkx=\E=, - kcuu1=\E[A, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, lines#64, - cuf1=\E[C, ht=^I, rc=\E8, sc=\E7, rmso=\E[0m, ind=\n$<280>, - smso=\E[7m, cuu1=\E[A, xenl, -bg1.25rv|bbn bitgraph (reverse video), - flash=\E[?5l\E[?5h, is2=\E>\E[?5h\E[?7h, use=bg1.25, -bg1.25nv|bbn bitgraph (normal video), - is2=\E>\E[?5l\E[?7h, flash=\E[?5h\E[?5l, use=bg1.25, -bg1.25|bbn bitgraph, - cr=^M, cud1=^J, bel=^G, il1=\E[L$<2*>, cub1=^H, - ed=\E[J$<150>, el=\E[K$<2>, clear=\E[H\E[J$<150>, cup=%i\E[%p1%d;%p2%dH, - cols#85, dl1=\E[M$<2*>, cud1=\E[B, kf1=\EP, kf2=\EQ, kf3=\ER, - kf4=\ES, kcud1=\EB, rmkx=\E>, kcub1=\ED, kcuf1=\EC, smkx=\E=, - kcuu1=\EA, lines#64, ll=\E[64;1H, lf1=PF1, lf2=PF2, lf3=PF3, - lf4=PF4, cuf1=\E[C, ht=^I, rmso=\E[0m, ind=\n$<280>, - smso=\E[7m, cuu1=\E[A, -ca22851|computer automation 22851, - cr=^M, cud1=^J, ind=^J, bel=^G, cup=\02%i%p1%c%p2%c, cols#80, - lines#24, clear=^L$<8>, am, cub1=\025, cuu1=\026, home=\036, - el=\035, ed=\034, cuf1=\011, kcub1=\025, kcuu1=\026, - kcud1=\027, khome=\036, -# Info: -# CHROMATICS -# Following is revised version. As I mentioned, I recompiled -# curses in order to accomadate the large amount of definition. -# I have put the long strings in ti/te. Ti sets up a window -# that is smaller than the screen, and puts up a warning message -# outside the window. Te erases the warning message, puts the -# window back to be the whole screen, and puts the cursor at just -# below the small window. A defined vs and ve to really turn -# the cursor on and off, but I have taken this out since I don't -# like the cursor being turned off when vi exits. -# -cg7900|chromatics|chromatics 7900, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#40, am, - clear=^L, cub1=^H, cup=^AM%p2%d\,%p1%d\,, cuf1=\035, cuu1=^K, - home=\034, ll=^A|, el=^A`, ed=^Al, il1=^A>2, dl1=^A<2, - ich1=^A>1, dch1=^A<1, - smso=^AC4\,^Ac7\,, rmso=^AC1\,^Ac2\,, uc=^A^A_^A\0, - smcup=^AP0^AO1^AR1^AC4\,^Ac0\,^L^AM0\,42\,WARNING DOUBLE ENTER ESCAPE and ^U^AC1\,^Ac2\,^AW0\,0\,79\,39\,, - rmcup=^AW0\,40\,85\,48\,^L^AW0\,0\,85\,48\,^AM0\,40\,, -cops10|cops|cops-10|, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, bw, ed=^w, el=^v, - clear=30^x, cup=^p%p1%' '%+%c%p2%' '%+%c, cols#80, cud1=\n, kbs=^h, kcud1=\n, - khome=^y, kcub1=^h, kcuf1=^l, kcuu1=^k, lines#24, cuf1=^l, - cuu1=^k, -# Info: -# CYBERNEX -# We recently discovered (it wasn't clearly documented) that the -# Cybernex XL-83 terminal has a reverse-scroll capability; I -# enclose a revised termcap entry with "sr" added. -# -xl83|cybernex XL-83, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^P$<62>, el=^O$<3>, - clear=^L$<62>, cup=^W%p1%' '%+%c%p2%' '%+%c, cols#80, home=^K, - kcud1=^J, kcub1=^H, kcuf1=^I, kcuu1=^N, - lines#24, cuu1=^N, cuf1=^I, ri=^N, -mdl110|cybernex mdl-110, - cup=^P%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, am, clear=^X$<70>, - cub1=^H, cr=^M, cud1=^J, ind=^J, bel=^G, cuf1=^U, cuu1=^Z, home=^Y, - el=^N@^V$<145>, ed=^NA^W$<145>, il1=^NA^N^]$<65>, dl1=^NA^N^^$<40>, - ich1=^NA^]$<3.5>, dch1=^NA^^$<3.5>, smso=^NF, rmso=^NG, - ht=\t$<43>, ed=^N@^V$<6>, -# Info: -# DATA GENERAL -# -# It has one or two quirks, though; in vi you have to use <cr> to -# advance to the next line instead of just hitting the big NEWLINE -# key (which is cursor down to vi). -# -# One pain with using the dasher on unix though is the fact -# that they use # ^H for home cursor. This causes problems with -# reading news and help files on the system that assume ^H is -# backspace. -# -# The trouble with this terminal is that you can't give it a -# linefeed without having it add a carriage return. And there -# isn't any switch that will turn off auto carriage return -# on receipt of linefeed. -# -# Is there any way around this? [I used cud1=^Z to try to -# describe this -] -# -d200|d100|data general dasher 200, - am, bel=^G, bw, clear=^L, cols#80, cr=^M, - cub1=^Y, cud1=^Z, cuf1=^X, cup=^P%p2%c%p1%c, cuu1=^W, - el=^K, home=^H, ind=^J, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, - kf0=^^z, kf1=^^q, kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, - kf8=^^x, kf9=^^y, khome=^H, lf0=f10, - lines#24, nel=^J, rmso=^^E, rmul=^U, smso=^^D, smul=^T, -dg|dg6053|data general 6053, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cup=^P%p2%c%p1%c, clear=^L, home=^H, cuf1=^S, - cuu1=^W, el=^K, cols#80, lines#24, -d132|datagraphix|datagraphix 132a, - cr=^M, cud1=^J, ind=^J, bel=^G, - cols#80, lines#30, clear=^l, home=\Et, da, db, ind=\Ev, ri=\Ew, - cuu1=\Ek, cuf1=\El, cvvis=\Ex, cnorm=\Em\En, - il1=\E3, ich1=\E5, dch1=\E6, in, ich1=\E5, -# Info: -# DATAPOINT (see also pc) -# -datapoint|dp3|dp3360|datapoint 3360, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=^_, el=^^, clear=^]^_, cols#82, home=^], lines#25, cuf1=^x, cuu1=^z, -# Info: -# DELTA DATA -# This is untested. The cup sequence is hairy enough that it -# probably needs work. The idea is ctrl(O), dd(row), dd(col), -# where dd(x) is x - 2*(x%16) + '9' -# -delta|dd5000|delta data 5000, - cud1=^J, ind=^J, bel=^G, am, cub1=^H, clear=^NR, - cup=^O%p1%p1%{16}%m%{2}%*%-%'9'%+%c%p2%p2%{16}%m%{2}%*%-%'9'%+%c, - cols#80, lines#27, home=^NQ, cuf1=^Y, cuu1=^Z, el=^NU, dch1=^NV, -digilog|333|digilog 333, - cub1=^H, cols#80, el=\030, home=^n, lines#16, cuf1=^i, cuu1=^o, - cr=^M, cud1=^J, ind=^J, bel=^G, -# Info: -# DIRECT -# I think the direct is supposed to be vt100 compatible, so all -# this should probably be replaced by a use=vt100, but I can't -# test it. -# -d800|direct|direct800|direct 800/a, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, - clear=\E[1;1H\E[2J, cub1=^H, cup=\E[%i%p1%d;%p2%dH, - cuf1=\E[C, cuu1=\E[A, el=\E[K, ed=\E[J, smso=\E[7m, rmso=\E[0m, - smul=\E[4m, rmul=\E[0m, xhp, cvvis=\E[>12l, cnorm=\E[>12h, - ind=\ED, ri=\EM, da, db, smacs=\E[1m, rmacs=\E[0m, msgr, ht=^I, - kcub1=\E[D, kcuf1=\E[C, kcuu1=\E[A, kcud1=\E[B, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -env230|envision230|envision 230 graphics terminal, - am, mir, msgr, xon, - cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C$<2>, - cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, - cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, - el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=\t, - hts=\EH, ind=\n, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=\b, - kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, mc0=\E[0i, - mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m$<2>, - ri=\EM$<5>, rmacs=^O, rmkx=\E[?1l\E>, rmso=\E[0m<2>, - rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, - sc=\E7, - sgr=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, - sgr0=\E[m^O$<2>, smacs=^N, smkx=\E[?1h\E=, smso=\E[1m<2>, - smul=\E[4m$<2>, tbc=\E[3g, -falco|ts1|ts-1|falco ts-1, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, ht=^I, - is2=\Eu\E3, il1=\EE, am, el=\ET\EG0^H, cup=\E=%p1%' '%+%c%p2%' '%+%c, - clear=\E*, ed=\EY, dch1=\EW, cub1=^H, dl1=\ER, rmir=\Er, smir=\Eq, - home=^^, kf0=^A0\r, kcud1=^J, kcub1=^H, kcuf1=^L, kcuu1=^K, cuf1=^L, - rmso=\Eg0, smso=\Eg1, cuu1=^K, smul=\Eg1, rmul=\Eg0, -# Info: -# For falcos with the paging option (very nice it turns out - -# they can store several hundred lines of text, as well as have -# a separate screen for vi and other such programs usage)... -# -falco-p|falco-tsl-1sp|falco with paging option, - cr=^M, cud1=^J, ind=^J, bel=^G, is2=\EZ\E3\E_c, il1=\EE, am, - cub1=^H, el=\ET\EG0^H\Eg0, clear=\E*, ed=\EY, cols#80, - dch1=\EW, dl1=\ER, kcud1=\E[B, kcub1=\E[D, rmir=\Er, smir=\Eq, - ht=^I, db, kcuf1=\E[C, kcuu1=\E[A, lines#24, cuf1=\E[C, - rmso=\Eg0, smso=\Eg4, cuu1=\E[A, smul=\Eg1, smcup=\E_d, - rmcup=\E_b, rmul=\Eg0, cud1=\E[B, cup=\E=%p1%' '%+%c%p2%' '%+%c, - msgr, ul, khome=\E[H, da, mir, cbt=\EI, -ts100|ts100-sp|falco ts100-sp, - am, mir, msgr, xenl, xon, - cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C$<2>, - cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, - cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>, - el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, - ht=\t, hts=\EH, ich1=\E~Q, il1=\E~E, ind=\n, - is1=\E~)\E~ea, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=\b, - kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, - rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmkx=\E[?1l\E>, - rmso=\E[m$<2>, rmul=\E[m$<2>, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O$<2>, smacs=^N, smkx=\E[?1h\E=, - smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -ts100-ctxt|falco ts-100 saving context, - smcup=\E~_d\E[2J, rmcup=\E~_b, use=ts100, -# Info: -# FLUKE -# The 1720a differences from ANSI: no auto margin, destructive -# tabs, # of lines, funny highlighting and underlining -# -f1720|f1720a|fluke 1720A, - cr=^M, ind=^J, cud1=^J, bel=^G, - is2=\E[;H\E[2J, cols#80, lines#16, - cuu1=\E[A, cud1=\E[B, cuf1=\E[C, cub1=^H, cup=\E[%i%p1%d;%p2%dH, - ind=\ED, ri=\EM, - kcuu1=\034, kcud1=\035, kcuf1=\036, kcub1=\037, - smso=\E[7m, rmso=\E[m, xmc#1, - smul=\E[4m, rmul=\E[m, - el=\E[K, ed=\E[J, - xt, clear=\E[;H\E[2J, -# Info: -# INTERTEC -# Intertec: I can't tell if these are the same terminal or not. -# the cup entries are different. The it2 looks suspiciously -# like an an Adds Regent 100, complete with the bug [mrh]. -# -it|intertube|intertec|Intertec InterTube, - cr=^M, ind=^J, cud1=^J, bel=^G, cub1=^H, am, - clear=^L, home=^A, cuu1=^Z, cuf1=^F, - cup=\EY%p1%' '%+%c%p2%' '%+%c$<50>, - smso=\E0P, rmso=\E0@, cols#80, lines#25, -# Info: -# The intertube 2 has the "full duplex" problem like the tek -# 4025: if you are typing and a command comes in, the keystrokes -# you type get interspersed with the command and it messes up. -# -it2|intertube2|intertec data systems intertube 2, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - clear=^L, cols#80, home=^A, lines#25, cuu1=^Z, el=\EK, - hpa=^P%p1%{10}%/%{16}%*%p1%{10}%m%+%c, vpa=^K%p1%c, - cup=^N%p1%c^P%p2%{10}%/%{16}%*%p2%{10}%m%+%c, - cuf1=^F, cud1=\n, ll=^K^X\r, smso=\E0P, rmso=\E0@, -superbrain|intertec superbrain, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=\E~k<10*>, - el=\E~K$<15>, bw, clear=\f$<5*>, - cup=\EY%p1%' '%+%c%p2%' '%+%c$<20>, cols#80, - kcud1=^J, kcub1=^U, kcuf1=^F, kcuu1=^K, lines#24, - cuf1=^F, ht=^I, rmcup=\f, smcup=\f, cuu1=^k, -# FREEDOM 100 by Liberty Electronics USA, SF. -f100|freedom|freedom100|freedom model 100, - am, bw, hs, mir, msgr, xon, - cols#80, lines#24, - acsc=+.'\,.-jHkGlFmEqKxJ, bel=^G, cbt=\EI, clear=^Z, - cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, dch1=\EW, - dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET, - flash=\Eb$<50>\Ed, fsl=\r, home=^^, - hpa=\E]%p1%'\s'%+%c, ht=\t, hts=\E1, il1=\EE$<8.5*>, - ind=\n, ip=$<6>, is2=\Eg\Ef\r\Ed, kbs=\b, kcub1=\b, - kcud1=^V, kcuf1=\f, kcuu1=^K, kf0=^AI\r, kf1=^A@\r, - kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, - kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, - rmacs=\E%, rmir=\Er, rmso=\EG0, rmul=\EG0, smacs=\E$, - smir=\Eq, smso=\EG4, smul=\EG8, tbc=\E3, tsl=\Eg\Ef, - vpa=\E[%p1%'\s'%+%c, -f100-rv|freedom-rv|freedom 100 in reverse video, - is2=\Eg\Ef\r\Eb, flash=\Ed$<50>\Eb, use=f100, -# -# Problem with vi(1). Liberty terminals use the ^V -# code for the down cursor key. When kcud1 is defined in terminfo -# as ^V, the Control Character Quoting capability (^V in insert mode) -# is lost! It cannot be remapped in vi because it is necessary to enter -# a ^V to to quote the ^V that is being remapped!!! -# -# f110 users will have to decide whether -# to lose the down cursor key or the quoting capability. We will opt -# initially for leaving the quoting capability out, since use of VI -# is not generally applicable to most interactive applications -# -# The same applies to f200 users, except that another option exists. -# This option has been chosen locally. It will not be distributed unless -# a user runs into this problem and requests assistance. Very few users, -# if any, should run into this problem. The local solution is in -# vifix.local.ti. The f200 has the ability to reprogram the down cursor -# key. The key is reprogrammed to ^J (linefeed). This value is remembered -# in non-volatile RAM, so powering the terminal off and on will not cause -# the change to be lost. The terminfo definition for the f200 is changed -# to identify kcud1 as ^J instead of ^V. -# -# -f110|freedom110|Liberty Freedom 110, - am, bel=^G, cols#80, lines#24, cr=^M, hs, mir, msgr, - eslok, xon, it#8, wsl#80, cbt=\EI, - tbc=\e3, clear=^Z, - el=\ET, ed=\EY, hpa=\E]%p1%' '%+%c, vpa=\E[%p1%' '%+%c, - cup=\e=%p1%' '%+%c%p2%' '%+%c, cud1=^V, home=^^, - cub1=\b, cuf1=^L, cuu1=^K, dch1=\eW, - dl1=\eR, dsl=\ef\r, smacs=\e$, rmacs=\e%%, blink=\eG2, - bold=\eG0, dim=\EG@, rev=\EG4, rmul=\eG0, - invis=\eG1, smso=\eG<, smul=\eG8, rmso=\eG0, sgr0=\eG0, - flash=\Eb\0\0\0\0\Ed, fsl=\r, - il1=\eE, kbs=\b, kclr=^^, kdch1=\eW, kdl1=\eR, - kel=\eT, ked=\eY, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, - kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, - kf0=^AI\r, kich1=\eQ, kil1=\eE, kcub1=\b, kcuf1=^L, kcuu1=^K, - mc4=\ea, mc5=\e`, hts=\e1, tsl=\ef, ind=\n, ri=\eJ - smir=\eO\eq, rmir=\er\eO, kcud1=^V, - cnorm=\e.2, cvvis=\e.2, civis=\e.1, -f110-14|Liberty Freedom 110 14inch, - dch1@,use=f110, -f110-w|Liberty Freedom 110 - 132 cols, - cols#132, use=f110, -f110-14w|Liberty Freedom 110 14in/132 cols, - cols#132, dch1@, use=f110, -f200|freedom200|Liberty Freedom 200, - am, bel=^G, cols#80, lines#24, cr=^M, hs, mir, msgr, - eslok, xon, it#8, wsl#80, cbt=\EI, - csr=\em0%p1%' '%+%c%p2%' '%+%c, tbc=\e3, clear=^Z, - el=\ET, ed=\EY, hpa=\E]%p1%' '%+%c, vpa=\E[%p1%' '%+%c, - cup=\e=%p1%' '%+%c%p2%' '%+%c, cud1=^V, home=^^, civis=\e.0, - cub1=\b, cnorm=\e.1, cuf1=^L, cuu1=^K, cvvis=\e.1, dch1=\eW, - dl1=\eR, dsl=\ef\r, smacs=\e$, rmacs=\e%%, blink=\eG2, - bold=\eG0, dim=\EG@, smir=\eq, rmir=\er, rev=\EG4, rmul=\eG0, - invis=\eG1, smso=\eG<, smul=\eG8, rmso=\eG0, sgr0=\eG0, - flash=\Eo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\en, fsl=\r, - il1=\eE, kbs=\b, kclr=^^, kdch1=\eW, kdl1=\eR, kcud1=^V, - kel=\eT, ked=\eY, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, - kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, - kf0=^AI\r, kich1=\eQ, kil1=\eE, kcub1=\b, kcuf1=^L, kcuu1=^K, - mc4=\ea, mc5=\e`, hts=\e1, tsl=\ef, ind=\n, ri=\eJ, -f200-w|Liberty Freedom 200 - 132 cols, - cols#132, use=f200, -f200vi|Liberty Freedom 200 for vi, - am, bel=^G, cols#80, lines#24, cr=^M, hs, mir, msgr, - eslok, xon, it#8, wsl#80, cbt=\EI, - csr=\em0%p1%' '%+%c%p2%' '%+%c, tbc=\e3, clear=^Z, - el=\ET, ed=\EY, hpa=\E]%p1%' '%+%c, vpa=\E[%p1%' '%+%c, - cup=\e=%p1%' '%+%c%p2%' '%+%c, cud1=^V, home=^^, civis=\e.0, - cub1=\b, cnorm=\e.1, cuf1=^L, cuu1=^K, cvvis=\e.1, dch1=\eW, - dl1=\eR, dsl=\ef\r, smacs=\e$, rmacs=\e%%, blink=\eG2, - bold=\eG0, dim=\EG@, smir=\eq, rmir=\er, rev=\EG4, rmul=\eG0, - invis=\eG1, smso=\eG<, smul=\eG8, rmso=\eG0, sgr0=\eG0, - flash=\Eb\0\0\0\0\Ed, fsl=\r, - il1=\eE, kbs=\b, kclr=^^, kdch1=\eW, kdl1=\eR, kcud1=^J, - kel=\eT, ked=\eY, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, - kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, - kf0=^AI\r, kich1=\eQ, kil1=\eE, kcub1=\b, kcuf1=^L, kcuu1=^K, - mc4=\ea, mc5=\e`, hts=\e1, tsl=\ef, ind=\n, ri=\eJ, -f200vi-w|Liberty Freedom 200 - 132 cols for vi, - cols#132, use=f200vi, -omron|omron 8025AG, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL, am, cub1=^H, ed=\ER, - cols#80, el=\EK, clear=\EJ, da, db, dch1=\EP, dl1=\EM, home=\EH, - lines#24, cuf1=\EC, rmso=\E4, ind=\ES, smso=\Ef, ri=\ET, - cuu1=\EA, cvvis=\EN, -plasma|plasma panel, - am, cub1=^H, clear=^L, cols#85, home=^^, lines#45, cuf1=\030, - cuu1=\026, cr=^M, cud1=^J, ind=^J, bel=^G, -ramtek|ramtek 6000, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#78, am, - clear=[alpha]\n[erase]\n, cub1=^H, -soroc|iq120|soroc 120, - am, - cols#80, lines#24, - bel=^G, clear=\E*$<2>, cr=\r, cub1=\b, cud1=\n, - cuf1=\f, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - ed=\EY, el=\ET, home=^^, ind=\n, kcub1=\b, kcud1=\n, - kcuf1=\f, kcuu1=^K, -# Info: -# Note standout and underline are really sg#1, but when you -# backspace up the whole screen does standout or underline! -# The solution is to not specify sg#1 and live with it. -# -# iq140 standout and underline are confused. What we have -# included here are reasonable possiblities for these two. -# Neither are really correct. -# -iq140|soroc 140, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, - clear=\E+, cub1=^H, cup=\E=%p1%' '%+%c%p2%' '%+%c, cuf1=^L, cuu1=^K, - home=^^, ll=^^^K, el=\Et, ed=\Ey, il1=\Ee$<1*>, dl1=\Er$<.7*>, - smir=\E9, cbt=\EI, rmir=\E8, mir, dch1=\Ew, smso=\E\177, rmso=\E\177, - kbs=^H, kcuf1=^L, khome=^^, kcuu1=^K, kf0=^A0\r, - kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, - kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, smul=\E^A, - rmul=\E^A, -swtp|ct82|southwest technical products ct82, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, il1=^\^y, - ed=^v, el=^F, clear=^L, cup=^k%p2%c%p1%c, cols#82, lines#20, dl1=^z, - cuf1=^s, cuu1=^a, smso=^^^v, rmso=^^^F, dch1=^\^h, ich1=^\^x, home=^p, - ind=^n, ri=^o, ll=^c, - is2=^\^r^^^s^^^d^]^w^i^s^^^]^^^o^]^w^r^i, -# Info: -# Another new terminal, tested, seems to work fine with vi. -# -synertek|ktm|380|Synertek KTM 3/80 tubeless terminal, - am, cub1=^H, cols#80, lines#24, ed=\EJ, el=\EK, clear=^Z, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, cuf1=^L, -# Info: -# TAB -# The tab 132 uses xon/xoff, so no padding needed. -# smkx/rmkx have nothing to do with arrow keys. -# is2 sets 80 col mode, normal video, autowrap on (for am). -# Seems to be no way to get rid of status line. -# -tab132|tab|tab 132/15, - am, da, db, mir, msgr, xenl, xon, - cols#80, it#8, lines#24, lm#96, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH, - cuu=\E[%p1%dA, cuu1=\E[A$<2>, dch1=\E[P, dl1=\E[M, - ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, - enacs=\E(B\E)0, home=\E[H, ht=\t, hts=\EH, il1=\E[L, - ind=\n, is2=\E[?7h\E[?3l\E[?5l, ka1=\EOq, ka3=\EOs, - kb2=\EOr, kbs=\b, kc1=\EOp, kc3=\EOn, kcub1=\E[D, - kcud1=\E[B, kcuf1=\EOC, kcuu1=\E[A, kent=\EOM, - kf0=\EOy, kf1=\EOP, kf10=\EOx, kf2=\EOQ, kf3=\EOR, - kf4=\EOS, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, - kf9=\EOw, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, - rmir=\E[4l, rmso=\E[m$<2>, rmul=\E[m$<2>, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O$<2>, smacs=^N, smir=\E[4h, - smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -tab132-w, - cols#132, is2=\E[?7h\E[?3h\E[?5l, use=tab132, -tab132-rv, - is2=\E[?7h\E[?3l\E[?5h, use=tab132, -tab132-w-rv, - is2=\E[?7h\E[?3h\E[?5h, use=tab132-w, -# Info: -# TEC (various terminals labelled "tec" - manufacturers unknown) -# tec is untested, and taken from CB/Unix virtual terminal driver. -# Upper case terminal, uses lower case for control sequences!!! -# The driver shows the C ~ operator used on CM coordinates. -# -tec400|tec scope, - cr=^M, cud1=^J, ind=^J, bel=^G, cup=l%p2%~%c%p1%~%c, - cuu1=x, cud1=h, cuf1=g, cub1=w, home=i, smso={, rmso=|, - xmc#1, clear=f, il1=e, dl1=u, ich1=d, dch1=t, el=c, ed=s, -tec500|tec 500, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z$<20>, - cols#80, home=^^, lines#24, cuf1=^L, cuu1=^K, smso=^], rmso=^\, -tec, - lines#24, cols#80, clear=^l, cuu1=^k, cuf1=\037, am, - cub1=^H, home=\036, cr=^M, cud1=^J, ind=^J, bel=^G, -teletec|teletec datascreen, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cols#80, clear=^l, home=^^, lines#24, cuf1=^_, cuu1=^k, -vc404|volker-craig 404, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^W$<40>, el=^V$<20>, - clear=^X$<40>, cup=^P%p1%' '%+%c%p2%' '%+%c, cols#80, home=^Y$<40>, - kcud1=^J, kcub1=^H, kcuf1=^U, kcuu1=^Z, lines#24, cuf1=^U, cuu1=^Z, -vc404-s|volker-craig 404 w/standout mode, - rmso=^O, smso=^N, use=vc404, -vc404-na|volker-craig 404 w/no arrow keys, - kcuf1@, kcuu1@, use=vc404, -vc404-s-na|volker-craig 404 w/standout mode and no arrow keys, - rmso=^O, smso=^N, use=vc404-na, -vc415|volker-craig 415, - clear=^L, use=vc404, -# Info: -# Missing in vc303a and vc303 descriptions: they scroll 2 lines -# at a time every other linefeed. -# -vc303-a|vc403a|volker-craig 303a, - cr=^M, cud1=^J, bel=^G, am, cub1=^H, el=^V$<20>, clear=^X$<40>, - cols#80, home=^Y$<40>, kcud1=^J, kcub1=^H, kcuf1=^U, - kcuu1=^Z, lines#24, ll=^P^@W, cuf1=^U, cuu1=^Z, -vc303|vc103|vc203|volker-craig 303, - cr=^M, cud1=^J, bel=^G, am, cub1=^H, clear=^L$<40>, cols#80, - home=^K$<40>, kcud1=^J, kcub1=^H, kcuf1=^I, kcuu1=^N, lines#24, - ll=^O$<1>W, cuf1=^I, cuu1=^N, -zen30|z30|zentec 30, - cr=^M, cud1=^J, ind=^J, bel=^G, mir, cols#80, lines#24, - ul, il1=\EE$<1.5*>, cub1=^H, el=\ET$<1.0*>, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=\E*, home=^^, cuf1=^L, - rmso=\EG0, smso=\EG6, cuu1=^K, smir=\Eq, rmir=\Er, - am, dch1=\EW, dl1=\ER$<1.5*>, ed=\EY, -# Info: -# COMPUCOLOR, ISC, INTECOLOR (?) -# These compucolors appear similar, but they at least have -# different sized screens. I don't know what's going on here. -# -# There is further confusion since intecolor seems to call -# themselves isc too. -# -# The following termcap for the Intelligent Systems Corporation -# 8001 color terminal with lower-case and 48-line options -# disallows global motion to get around the 2-lines-at-a-time -# scrolling problem. It has been tested and works fine except -# when indented lines are scrolled in from the bottom of the -# screen. The latter problem originates with firmware which -# interprets NL as NL-CR when the cursor is on the bottom line -# of the screen. -# -8001|isc|isc8001|compucolor 8001, - cr=^M$<1>, cud1=^J$<1>, ind=^J$<1>, bel=^G, am, cols#80, lines#47, - il1=\EU$<5*>, dl1=\EV^\$<5*>, clear=^L$<31>, smir=^S\EQ$<1>, - rmir=^R\EK$<1>, kcub1=^Z, kcuf1=^Y, kcuu1=^\, kcud1=^J, khome=^H, - cub1=^Z$<1>, cuf1=^Y$<1>, cuu1=^\$<1>, smul=^Q$<1>, rmul=^R$<1>, -# cup=^C%p2%c%p1%c, -compucolor2|compucolorii|compucolor 2, - cr=^M, cud1=^J, ind=^J, bel=^G, - ht=^I, am, cup=^C%p2%c%p1%c, cub1=^Z, lines#32, cols#64, - clear=^L, home=^H, cuf1=^Y, cuu1=^\, -# Info: -# INTERACTIVE SYSTEMS -# smkx/rmkx from dgc, to make insert mode key work in Rand Editor. -# probably needs more keys defined. -# -intext|Interactive Systems Corporation modified owl 1200, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\020$<5.5*>, am, cub1=^_, - cub1=^H, cbt=^Y, ed=\026J$<5.5*>, el=^K\160^R, - clear=\014$<132>, cup=\017%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\022$<5.5*>, dl1=\021$<5.5*>, rmir=\026\074, - smir=\026\073, ip=$<5.5*>, lines#24, cuf1=\036, ht=^I, - cuu1=\034, rmso=^V# , xmc#1, smso=^V$\054, - smkx=\036\072\264\026%, rmkx=\269, - kcub1=^_, kcud1=^J, kcuf1=^^, kcuu1=\034, kbs=^H, khome=^Z, - kf1=^VA\r, kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, - kf6=^VF\r, kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, kf0=^VJ\r, -intext2|intextii|INTERACTIVE modified owl 1251, - am, bw, ul, cols#80, lines#24, - bel=^G, blink=\E[10\sD, bold=\E[22\sD, cbt=\E[Z, - clear=\E[H\E[2J, cr=\r, cub=\E[%p1%dD, cub1=\E[D, - cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%?%p1%t%p1%{1}%+%d%;%?%p2%t%p2%{1}%+;%d%;H, - cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, - dim=\E[0\sD, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, - flash=\E[;;;;;;;;;2;;u\E[;;;;;;;;;1;;u, home=\E[H, - hpa=\E[%?%p1%t%p1%{1}%+%d%;G, ht=\t, ich=\E[%p1%d@, - ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, - indn=\E[%p1%dS, kbs=\b, kcub1=\ED\r, kcud1=\EB\r, - kcuf1=\EC\r, kcuu1=\EA\r, kf0=\E@\r, kf1=\EP\r, - kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r, kf5=\EU\r, kf6=\EV\r, - kf7=\EW\r, kf8=\EX\r, kf9=\EY\r, khome=\ER\r, - lf0=REFRSH, lf1=DEL\sCH, lf2=TABSET, lf3=GOTO, - lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT, - lf9=RIGHT, rev=\E[6\sD, ri=\E[T, rin=\E[%p1%dT, - rmso=\E[2\sD, rmul=\E[2\sD, - sgr=\E[%?%p5%t%{0}%e%{2}%;%?%p1%p3%|%p6%|%t%{4}%e%{0}%;%|%?%p4%t%{8}%e%{0}%;%|%?%p2%p6%|%t%{16}%e%{0}%;%|%d\sD, - sgr0=\E[2\sD, smso=\E[6\sD, smul=\E[18\sD, -# ncr: NCR -# -# The 7900 model 1 is the default 7900 type terminal, so ``7900'' refers to it. -# 7900 is not used by other terminals, so there is no name clash. -ncr7900i|7900i|ncr7900|7900|ncr 7900 model 1, - am, bel=^G, bw, clear=^L, cols#80, cr=^M, - cub1=^H, cud1=^J, cuf1=^F, cuu1=^Z, - ind=^J, ll=^A, - cup=\E1%p2%c%p1%c, - ed=\Ek, el=\EK, - kcud1=^J, kcub1=^U, kcuf1=^F, kcuu1=^Z, khome=^A, - is2=\E0@\E3\E4, lines#24, - rmso=\E0@, xmc#1, smso=\E0Q, - blink=\E0B, dim=\E0A, rev=\E0P, - smul=\E0`, rmul=\E0@, ul, sgr0=\E0@, -# Since each attribute paramter is 0 or 1, we shift each attribute (standout, -# reverse, blink, dim, and underline) the appropriate number of bits (by -# multiplying the 0 or 1 by a coorect factor to shift) so the bias character, -# '@' is (effectively) "or"ed with each attribute to generate the proper third -# character in the <ESC>0 sequence. The "sgr" string implements the following -# equation: -# -# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) => -# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17)) -# -# Where: P1 <==> Standout attribute parameter -# P2 <==> Underline attribute parameter -# P3 <==> Reverse attribute parameter -# P4 <==> Blink attribute parameter -# P5 <==> Dim attribute parameter - sgr=\E0%p5%'@'%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c, - mc4=^T, mc5=^R, -# It seem users have a couple odd problems with ``vi'' when we define arrows, -# since the arrow character has an otherwise special meaning to ``vi''. -7900i-na|ncr7900i-na|ncr7900-na|7900-na|ncr 7900 model 1 with no arrows, - kcud1@, kcub1@, kcuf1@, kcuu1@, use=ncr7900i, -# The entry for the model 4 is mostly untested. People seem to prefer -# other models. This is a pretty outdated model. -7900iv|ncr7900iv|ncr 7900 model 4, - am, bw, hs, eslok, - cols#80, lines#24, - bel=^G, cr=\r, clear=\f, - cup=^K%p1%'@'%+%c\E^E%p2%02d, cud1=\n, home=^K@\E^E00, - cub1=\b, dl1=\E^O, dsl=\Ey1, - fsl=\Ek\Ey5, il1=\E^N, kbs=\b, - kcud1=\EB, kf1=\ES, kf2=\ET, - kf3=\EU, kf4=\EV, kf5=\EW, - kf6=\EP, kf7=\EQ, kf8=\ER, - khome=\EH, kcub1=\ED, kcuf1=\EC, - kcuu1=\EA, lf6=blue, lf7=red, - lf8=white, nel=\r\n, ind=\n, - tsl=\Ej\Ex5\Ex1\EY8%p1%' '%+%c\Eo, - ind=^J, -# Warning: This terminal will lock out the keyboard when it receives a CTRL-D. -# The user can enter a CTRL-B to get out of this locked state. -ncr7901|7901|ncr 7901 model, - cols#80, lines#24, - am, bel=^G, bw, clear=^L, cr=^M, - cub1=^H, cud1=^J, cuf1=^F, cuu1=^Z, - ind=^J, ll=^A, - ed=\Ek, el=\EK, - civis=^W, cnorm=^X, - mc4=^T, mc5=^R, - kcud1=^J, kcub1=^U, kcuf1=^F, kcuu1=^Z, kclr=^L, khome=^A, - is2=^X, - .is2=\E4^O^X, - cup=\EY%p1%' '%+%c%p2%' '%+%c, - vpa=^K%p1%'@'%+%c, -# We want to output the character given by the formula: -# ((col / 10) * 16) + (col % 10) where "col" is "p1" - hpa=^P%p1%{10}%/%{16}%*%p1%{10}%m%+%c, - sgr=\E0%p5%'@'%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c^N, - blink=\E0B, dim=\E0A, rev=\E0P, - smso=\E0Q^N, rmso=^O, .msgr, - smul=\E0`^N, rmul=^O, sgr0=^O, ul, -# -# -# -t88|Synco T88 terminal, - am, xon, - cols#80, lines#24, xmc#0, - bel=^G, clear=^Z, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, dch1=\EW, - dl1=\ER$<1*>, el=\ET, home=^^, ht=\t, ich1=\EQ, - if=/usr/share/lib/tabset/stdcrt, il1=\EE$<1*>, ind=\n, - kbs=\b, kcub1=\b, kcud1=\n, kcuf1=\f, kcuu1=^K, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, - kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, - rmso=\E(, rmul=\Em, smso=\E), smul=\El, -# -# -t88-nr|Synco T88 terminal without rev video, - am, xon, - cols#80, lines#24, - bel=^G, clear=^Z, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, dch1=\EW, - dl1=\ER$<1*>, el=\ET, home=^^, ht=\t, ich1=\EQ, - if=/usr/share/lib/tabset/stdcrt, il1=\EE$<1*>, ind=\n, - kbs=\b, kcub1=\b, kcud1=\n, kcuf1=\f, kcuu1=^K, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, - kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, - rmul=\Em, smul=\El, -i279|Intel SBX279, - cols#80, lines#25, -#### acsc=''aaffggj\343k\341l\340m\342n\352q\350t\346u\345v\347w\344x\351, - bel=^G, clear=\E+, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, dl1=\ER, - ed=\EY, el=\ET, home=^^, il1=\EE, ind=\n, is2=\Er\E+, - kcub1=\b, kcud1=\n, kcuf1=\f, kcuu1=^K, kdl1=\ER, - khome=^^, kil1=\EE, - smso=\Ej, rmso=\Ek, - sgr0=\Ek$<2>, diff --git a/usr/src/cmd/terminfo/pc.ti b/usr/src/cmd/terminfo/pc.ti deleted file mode 100644 index 39c320fd4e..0000000000 --- a/usr/src/cmd/terminfo/pc.ti +++ /dev/null @@ -1,881 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -#pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.15 */ -# # PC - Personal Computers and Workstations emulating terminals. -# -# Manufacturer: PERSONAL COMPUTER TERMINALS -# Class: III -# -# Info: -# This category is strange. The typical personal computer offers -# a program to emulate a "terminal" without documenting any -# escape sequences. -# -# I don't have any direct personal experience with these, but -# my impression is that the terminal emulator emulates an -# ultra-dumb terminal, with the cursor cemented to the bottom -# line, and no escape sequences. -# -# Many of the entries below were found in random places with -# no indication of who they came from or how. In many cases, I -# believe what has happened is that someone wrote their own -# terminal emulator program, which understood some control -# characters or escape sequences, and made their own entries. -# -# GENERIC PERSONAL COMPUTER -# -pc|any personal computer emulating a terminal, - am, - cols#40, - bel=^G, cr=\r, cud1=\n, ind=\n, -apple-soroc|apple emulating soroc 120, - am, - cols#80, lines#24, - bel=^G, clear=\E*$<300>, cr=\r, cub1=\b, cud1=\n, - cuf1=\f, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - ed=\EY, el=\ET, home=^^, ind=\n, kcub1=\b, kcud1=\n, - kcuf1=\f, kcuu1=^K, -# Info: -# For those of you with either Programma's Pie or Hayden's Pie, -# I'm including a patch for DOS which allows them to function -# interactively as a terminal, with data transfer. -# -# The following termcap entry works only with an Apple ][+ that is -# equipped with a Videx 80 collumn card in slot 3. A special -# routine must be installed at the apple end to enable scroll -# down, here indicated with a ^U. The Videx card must have -# inverse char set. -# -apple|apple-v80|Apple][+ w/Videx80 & custom scroll down, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, cub1=^H$<10>, - smacs=^z2, rmacs=^z3, cup=\015\036%r%p1%' '%+%c%p2%' '%+%c$<6>, - el=\035$<6>, home=\031$<50>, smso=^z3, rmso=^z2, - cuf1=\034, cud1=\012, cuu1=\037, clear=\014$<40*>, - xenl, am, ri=\020, ed=\013$<20*>, -# Info: -# -------------------------------------------------------------- -# -# Pieterm is written using Lisa 2.5. If any of the opcodes used -# are confusing, refer to hex values in the left most column. -# -# -# 1 TTL "PIETERM 1.0 -# 2 NLS -# 3 ; -# 4 ; PIETERM: A program which patches 48k DOS 3.3 to allow -# 5 ; Programma Pie, and Hayden Pie to function in -# 6 ; a terminal mode. -# 7 ; -# 8 ; ASSUMES: Videx 80 collumn Videoterm in slot 3. -# 9 ; 1200 baud Serial Card in slot 2. -# 10 ; DOS 3.3 unmodified at $9D00 (master or slave) -# 11 ; -# 12 ; TO USE: Either from the Command level of Pie, or in a -# 13 ; "HELLO" program, "BRUN PIETERM,A$6000". -# 14 ; To enter terminal mode, from the Command level -# 15 ; of Pie, enter "TERM" or "TERM ". -# 16 ; "TERM" Sends a carriage return before entering terminal -# 17 ; mode. Best for reentering csh. -# 18 ; "TERM " Sends a ^D character before entering -# 19 ; terminal mode. For example, "TERM " should be -# 20 ; entered if returning to a cat>filename. -# 21 ; -# 22 ; RETURN: To return to the command level of Pie from the -# 23 ; terminal mode, enter "^@". With an upper case -# 24 ; locked keyboard, that is control-shift-P. With -# 25 ; and Enhanser II lower case keyboard, that is ^0. -# 26 ; -# 27 ; SENDING: From the Command level of Pie, indicated by -# 28 ; "Command:" (csh indicated by %), enter: -# 29 ; -# 30 ; Command:TERM -# 31 ; % stty -echo;cat>filename;stty echo -# 32 ; % ^@ -# 33 ; Command:>#2 -# 34 ; Command:TERM -# 35 ; ^__space -# 36 ; -# 37 ; RECEIVING: % wc filename -# 38 ; 46 123 4567 filename -# 39 ; % sleep 20;cat filename -# 40 ; ^@ -# 41 ; Command:(1,46)<#2 -# 42 ; -# 43 ; BUGS: Extra linefeeds are sent both ways. A filter program -# 44 ; at the UN*X end is required to strip every other \n. -# 45 ; Arg "^J" Arg "" ^W^X will globally illiminate them -# 46 ; within Pie. -# 47 ; -# 48 ; Since the Patch program overwrites the INIT portion -# 49 ; of DOS, it must be brun every boot. A zap utility -# 50 ; may be used to modify DOS directly on the disk. -# 51 ; -# 52 ; Pie gives no indication of what is going on. This -# 53 ; takes a little getting used to. It is possible to -# 54 ; get so involved with what you are doing in Pie, that -# 55 ; you forget you are logged on. -# 56 ; -# 57 ; Because of the limitation of Pie's buffer, large -# 58 ; file need to be transfered in chunks. -# 59 ; -# 60 ; -------------------------------- -# 61 ; -# 62 ; -# 0800 63 ; -# 06F8 64 NO EQU $6F8 ; address specific to videx -# 0638 65 START EQU NO-$C0 ; card in slot 3. See -# C080 66 DEV0 EQU $C080 ; reference manual. -# C081 67 DEV1 EQU $C081 -# 03B8 68 BASEL EQU $478-$C0 -# CA2E 69 BASCLC1 EQU $CA2E -# 0438 70 BASEH EQU $4F8-$C0 -# 0800 71 ; -# C0AE 72 STATUS EQU $C0AE ; Serial card specific to -# C0AF 73 DATAPORT EQU $C0AF ; slot 2. Adjust as needed. -# 0800 74 ; -# FDED 75 COUT EQU $FDED ; Stdout -# 0800 76 ; -# A884 77 PUTNAME EQU $A884 ; DOS patch addresses -# A909 78 PUTTOKEN EQU $A909 -# 9D1E 79 PUTADR EQU $9D1E -# AE8E 80 PUTPATCH EQU $AE8E -# 0800 81 ; -# 6000 82 ORG $6000 -# 6000 83 OBJ $800 -# 6000 84 ; -# 6000 4C 0B 60 85 JMP MAIN -# 6003 86 ; -# 6003 54 45 52 87 NAME DCI 'TERM' ; hi-bit off except last -# 6006 CD -# 6007 40 70 88 TOKEN HEX 4070 ; need-filename optional -# 6009 8D AE 89 ADRESS ADR PUTPATCH-1 -# 600B 90 ; -# 600B 91 MAIN: -# 600B A2 04 92 LDX 4 -# 600D BD 02 60 93 ^1 LDA NAME-1,X -# 6010 9D 83 A8 94 STA PUTNAME-1,X -# 6013 CA 95 DEX -# 6014 D0 F7 96 BNE <1 -# 6016 E8 97 INX -# 6017 BD 07 60 98 ^2 LDA TOKEN,X -# 601A 9D 09 A9 99 STA PUTTOKEN,X -# 601D BD 09 60 100 LDA ADRESS,X -# 6020 9D 1E 9D 101 STA PUTADR,X -# 6023 CA 102 DEX -# 6024 10 F1 103 BPL <2 -# 6026 A2 73 104 LDX #ENDPATCH-PATCH+1 -# 6028 BD 32 60 105 ^3 LDA PATCH,X -# 602B 9D 8E AE 106 STA PUTPATCH,X -# 602E CA 107 DEX -# 602F 10 F7 108 BPL <3 -# 6031 60 109 RTS -# 6032 110 ; -# 6032 111 PATCH: -# 6032 112 PHS PUTPATCH -# AE8E 113 ; -# AE8E A2 8D 114 LDX #$8D -# AE90 AD 04 02 115 LDA INBUFF+4 -# AE93 C9 A0 116 CMP #" " -# AE95 D0 02 117 BNE >0 -# AE97 A2 84 118 LDX #$84 -# AE99 8A 119 ^0 TXA -# AE9A 4C BD AE 120 JMP SENDIT -# AE9D AD AE C0 121 RECEIVE LDA STATUS -# AEA0 29 01 122 AND #$01 -# AEA2 F0 0C 123 BEQ SEND -# AEA4 AD AF C0 124 LDA DATAPORT -# AEA7 29 7F 125 AND #$7F -# AEA9 C9 10 126 CMP #$10 -# AEAB F0 1F 127 BEQ SCROLLD -# AEAD 20 ED FD 128 PRINTIT JSR COUT -# AEB0 AD 00 C0 129 SEND LDA $C000 -# AEB3 10 E8 130 BPL RECEIVE -# AEB5 8D 10 C0 131 STA $C010 -# AEB8 29 7F 132 AND #$7F -# AEBA D0 01 133 BNE SENDIT -# AEBC 60 134 RTS -# AEBD 48 135 SENDIT PHA -# AEBE AD AE C0 136 S0 LDA STATUS -# AEC1 29 02 137 AND #$02 -# AEC3 F0 F9 138 BEQ S0 -# AEC5 68 139 PLA -# AEC6 8D AF C0 140 STA DATAPORT -# AEC9 4C 9D AE 141 JMP RECEIVE -# AECC 38 142 SCROLLD SEC -# AECD A2 C3 143 LDX #$C3 ; for slot 3 -# AECF AC F8 06 144 LDY NO -# AED2 BD 38 06 145 LDA START,X -# AED5 E9 05 146 SBC #$05 -# AED7 29 7F 147 AND #$7F -# AED9 9D 38 06 148 STA START,X -# AEDC 20 2E CA 149 JSR BASCLC1 -# AEDF A9 0D 150 LDA #$0D -# AEE1 99 80 C0 151 STA DEV0,Y -# AEE4 BD B8 03 152 LDA BASEL,X -# AEE7 99 81 C0 153 STA DEV1,Y -# AEEA A9 0C 154 LDA #$0C -# AEEC 99 80 C0 155 STA DEV0,Y -# AEEF BD 38 04 156 LDA BASEH,X -# AEF2 99 81 C0 157 STA DEV1,Y -# AEF5 A9 19 158 LDA #$19 ; home cursor -# AEF7 20 ED FD 159 JSR COUT -# AEFA A9 1D 160 LDA #$1D ; ceol -# AEFC 20 ED FD 161 JSR COUT -# AEFF 4C 9D AE 162 JMP RECEIVE -# AF02 163 ; -# AF02 164 DPH -# 60A6 165 ORG $6000+*-$800 -# 60A6 166 OBJ * -# 60A6 167 ; -# 60A6 168 ENDPATCH: -# 60A6 169 END -# ATT -# -# Info: -# The official PC terminal emulator program of the AT&T Product -# Centers. -# -# Note - insert mode commented out - doesn't seem to work on -# AT&T PC. -# -simterm|attpc running simterm, - am, - cols#80, lines#24, - bel=^G, clear=\EH\EJ, cr=\r, cub1=\b, cud1=\EB, - cuf1=\EC, cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, - dch1=\ER, dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, - ind=\n, rmcup=\EVE, .rmir=\EE, .rmso=\E&d@, smcup=\EVS, - smir=\EQ, smso=\E&dB, -# Info: -# -vic20|vic|vic Personal Computer, - cr=^M, cud1=^J, ind=^J, bel=^G, am, clear=^K^L, home=^L, - lines#20, cuu1=^^, cuf1=^\, cols#22, -# Info: -# (Dan Ingold) -# -# Following is a TERMCAP entry for the Datapoint UNITRM18 -# asynchronous terminal emulation program. It has only been -# tested out at 1200 baud, however, so I don't know if the -# delays are correct. -# -# [what is control "="? keys send different codes from functions? - mrh] -# -unitrm18|datapoint 'UNITRM18' terminal emulator, - cr=^M, ind=^J, cud1=^J, bel=^G, am, cub1=^y, - ed=^?, el=^>, clear=^=^?$<12.5>, cols#80, cud1=^k, home=^=, - kcuu1=^x, kcud1=^r, kcub1=^t, kcuf1=^v, lines#24, cuf1=^x, cuu1=^z, -# Info: -# FLORIDA COMPUTER GRAPHICS -# Florida Computer Graphics Beacon System, using terminal emulator -# program "host.com", as provided by FCG. Entry provided by -# David Bryant (cbosg!djb) 1/7/83. -# This description is for an early release of the "host" program. -# Known bug: ed clears the whole screen, so it's commented out. -# -beacon|FCG Beacon System, - cr=^M, cud1=^J, ind=^J, cols#80, lines#32, clear=\EZ$<10>, - cub1=^H, cup=\E=%p1%' '%+%c%p2%' '%+%c$<20>, cuf1=\EV, cuu1=\EU, el=\ET, - .ed=\EY, dch1=\EW, ich1=\EQ, dl1=\ER, il1=\EE, - smcup=\ESTART^M\E2\0540^M\E12^M\EEND^M$<10>, - bel=\ESTART^M\E37^M\EEND^M$<1>, home=\EH$<10>, - am, da, db, - rev=\ESTART^M\E59\0541^M\EEND^M, - smso=\ESTART^M\E70\0546^M\EEND^M$<20>, - rmso=\ESTART^M\E70\0540^M\EEND^M$<20>, - smul=\ESTART^M\E60\0541^M\EEND^M, - rmul=\ESTART^M\E60\0540^M\EEND^M, - blink=\ESTART^M\E61\0541^M\EEND^M, - sgr0=\ESTART^M\E78^M\E70\0540^M\EEND^M$<20>, -# Info: -# This doesn't work because the cursor position isn't saved -# with the window. -# -beacon-s|FCG Beacon System with status line, - lines#31, eslok, hs, - tsl=\ESTART^M\E45\0541^M\E41\054%p1%d\0541^M\EEND^M$<10>, - fsl=\ESTART^M\E45\0540^M\EEND^M$<10>, - is2=\ESTART^M\E45\0540^M\E65\05431^M\E66\05445^M\E45\0541^M\E65\0541^M\E66\0541^M\E45\0540^M\EEND^M$<30>, - use=beacon, -# Info: -# Here is the xtalk termcap. I mostly use the terminfo (curses) -# version myself since I am working at BTL where they have a -# certain bias. I am sending the terminfo version too, so that -# you can compare them if there are any undiscovered glitches -# in the termcap version due to insufficient testing. -# -# First the termcap version -- -# -# d0|vt100|vt100-am|vt100|dec vt100:\ -# :cr=^M:do=^J:nl=^J:bl=^G:co#80:li#24:cl=50\E[;H\E[2J:\ -# :le=^H:bs:am:cm=5\E[i2252;787036H:nd=2\E[C:up=2\E[A:\ -# :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\ -# :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:\ -# :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ -# :rf=/usr/share/lib/tabset/vt100:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ -# :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:ta=^I:pt:sr=5\EM:vt#3:xn:\ -# :sc=\E7:rc=\E8:cs=\E[i2252;787036r: -# d1|xtalk|IBM PC with xtalk:\ -# :sc@:rc@:cs@:am@:xn@:al=99\E[L:dl=99\E[M:tc=vt100-am: -# -# The problem is in the "xtalk" entry. The "am" auto-margin -# flag should not be turned off as shown above. The following -# is the corrected "xtalk" entry. -# -# d1|xtalk|IBM PC with xtalk:\ -# :sc@:rc@:cs@:xn@:al=99\E[L:dl=99\E[M:tc=vt100-am: -# -# This is the shell script that I execute from my profile when I -# login from xtalk -- -# -# # set auto margins -# echo '\033[?7h\c' -# #set up tab stops -# stty -tabs -# echo '\033[3g' -# for i in 1 2 3 4 5 6 7 8 9 -# do -# echo ' \033H\c' -# done -# stty tabs -# echo -# -# -# Now the terminfo version (This is the input to the 'tic' -# compiler) -- -# -# Vanilla vt100 definitions. -# vt100|vt100-am|dec vt100, -# cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, it#8, -# clear=\E[H\E[2J$<50>, cub1=^H, am, cup=\E[ip12252;p2787036H$<5>, -# cuf1=\E[C$<2>, cuu1=\E[A$<2>, el=\E[K$<3>, ed=\E[J$<50>, -# cud=\E[p12252B, cuu=\E[p1787036A, cub=\E[p1787088D, cuf=\E[p1787036C, -# smso=\E[7m$<2>, rmso=\E[m$<2>, smul=\E[4m$<2>, rmul=\E[m$<2>, -# bold=\E[1m$<2>, rev=\E[7m$<2>, blink=\E[5m$<2>, sgr0=\E[m$<2>, -# sgr=\E[?p1t;7;?p2t;4;?p3t;7;?p4t;5;?p6t;1;m, -# rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, smkx=\E[?1h\E=, rmkx=\E[?1l\E>, -# tbc=\E[3g, hts=\EH, home=\E[H, -# kcuu1=\EOA, kcud1=\EOB, kcuf1=\EOC, kcub1=\EOD, kbs=^H, -# kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ht=^I, ri=\EM$<5>, -# vt#3, xenl, xon, sc=\E7, rc=\E8, csr=\E[ip12252;p2787036r, -# -# -# ibm xtalk terminal simulator -- similar to but dumber than -# vanilla vt100 -# Enjoy! -# Rick Thomas -# ihnp4!btlunix!rbt -# (201)-522-6062 -# -# PS -- I just got word that there is a new revision of xtalk -# (3.5 I think they said) that is supposed to fix the vt100 -# emulation problems. -# -xtalk|IBM PC with xtalk communication program, - am, mir, msgr, xon, - cols#80, it#8, lines#24, vt#3, xmc#1, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, clear=\E[H\E[J$<50>, cr=\r, cub=\E[%p1%dD, - cub1=\b, cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, - cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, - cuu=\E[%p1%dA, cuu1=\E[A$<2>, dl1=\E[M$<99>, - ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, - enacs=\E(B\E)0, home=\E[H, ht=\t, hts=\EH, - il1=\E[L$<99>, ind=\n, ka1=\EOq, ka3=\EOs, kb2=\EOr, - kbs=\b, kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, ri=\EM$<5>, - rmacs=^O, rmkx=\E[?1l\E>, rmso=\E[m\s, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, smacs=^N, - smkx=\E[?1h\E=, smso=\E[7m\s, tbc=\E[3g, -# -# Info: -# \EI gets you out of inverse video mode. -# -# Info: -# IBM -# Thu May 5 19:35:27 1983 -# -ibmpc|ibm-pc|ibm5051|5051|IBM Personal Computer, - cud1=^J, ind=^J$<10>, bel=^G, smir=\200R, am, cub1=^], - kcud1=^_, clear=^L^K, cr=^M^^, home=^K, lines#24, cuu1=^^, - cuf1=^\, cols#80, -# Info: -# According to the Coherent 2.3 manual, the PC console is similar -# to a z19. The differences seem to be (1) 25 lines, (2) no status -# line, (3) standout is broken, (4) ins/del line is broken, (5) -# has blinking and bold. -# -pc-coherent|pcz19|coherent|IBM PC console running Coherent, - cr=^M, cud1=^J, ind=^J, bel=^G, .il1=\EL$<1*>, am, cub1=^H, - ed=\EJ, el=\EK, clear=\EE, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\EN, .dl1=\EM$<1*>, cud1=\EB, rmir=\EO, home=\EH, smir=\E@, - lines#25, mir, cuf1=\EC, ht=^I, it#8, - ri=\EI, rmso=\Eq, smso=\Ep, cuu1=\EA, - kbs=^h, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, -# Info: -# According to the Venix 1.1 manual, the PC console is similar -# to a DEC vt52. Differences seem to be (1) arrow keys send -# different strings, (2) enhanced standout, (3) added -# insert/delete line. -# -# Note in particular that it doesn't have automatic margins (ick). -# There are other keys (f1-f10, pgup, pgdn, backtab, insch,delch) -# which I don't have time to add now. -# -pc-venix|venix|IBM PC console running Venix, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\EH\EJ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, lines#25, - cuf1=\EC, ht=^I, it#8, ri=\EI, cuu1=\EA, - kcuu1=\EH, kcud1=\EP, kcuf1=\EM, kcub1=\EK, kbs=^H, - il1=\EL, dl1=\EM, khome=\EG, -ibm|ibm3101|3101|i3101|IBM 3101-10, - am, - cols#80, lines#24, - bel=^G, clear=\EK, cr=\r, cub1=\b, cud1=\n, cuf1=\EC, - cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=\EA, ed=\EJ, - el=\EI, home=\EH, ht=\t, hts=\E0, tbc=\EH, - ind=\n, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -ibm-system1|system1|ibm system/1 computer, - ind=^J, bel=^G, xt, am, cub1=^H, - cup=^E%p1%' '%+%c%p2%' '%+%c, clear=^Z, - cols#80, home=^K, lines#24, cuf1=^\, cuu1=^^, -megatek|Pegasus Work Station Terminal Emulator, - cols#83, lines#60, os, am, -# Info: -# sol and Microkit are for Corey - 6/11/82 - NS -# -microkit|mkt|microkit terminal computer, - cr=^M, ind=^J, cud1=^J, bel=^G, - il1=\El, am, cub1=^H, ed=\Ej, el=\Ek, clear=\Ee, - cup=\Ey%p1%' '%+%c%p2%' '%+%c, cols#40, dch1=\En, dl1=\Em, - rmir=\Eo, home=\Eh, smir=\E@, lines#23, mir, - cuf1=\Ec, cuu1=\Ea, ht=^I, cvvis=^N^Lzv, cnorm=\Ex, - kcuu1=\Eu, kcud1=\Ed, kcub1=\El, kcuf1=\Er, khome=\Eh, xenl, -# Info: -# OSBORNE -# Thu Jul 7 03:55:16 1983 -# -# As an aside, be careful; it may sound like an anomaly on the -# Osborne, but with the 80-column upgrade, it's too easy to -# enter lines >80 columns! -# -# I've already had several comments... -# The Osborne-1 with the 80-col option is capable of being -# 52,80, or 104 characters wide; default to 80 for compatibility -# with most systems. -# -# The tab is destructive on the Ozzie; make sure to 'stty -tabs'. -# -ozzie|osborne|osborne1|osborne 1, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, cub1=^H, el=\ET, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z, cols#104, dch1=\EW, dl1=\ER, - kcuu1=^K, kcud1=^J, kcub1=^H, kcuf1=^L, cud1=^J, cuf1=^L, - ich1=\EQ, lines#24, cuu1=^K, msgr, smso=\E), rmso=\E(, - ul, smul=\El, rmul=\Em, xt, -# Info: -# SOL -# I don't know which, if either, of these sol's to believe. -# ^S is an arrow key! -# -sol|sol1|, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, cup=\E^1%p1%c\E^2%p2%c, - clear=^K, home=^N, cols#64, lines#16, cuf1=^S, cuu1=^W, - kcub1=^A, kcuf1=^S, kcuu1=^W, kcud1=^Z, -# Info: -# sol and Microkit are for Corey - 6/11/82 - NS -# -sol2|sol terminal computer, - cr=^M, ind=^J$<20>, cud1=^J, bel=^G, - il1=20\EL, am, cub1=^H, ed=20\EJ, el=\EK, clear=20\EE, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#64, dch1=\EN, dl1=20\EM, - rmir=\EO, home=\EH, smir=\E@, lines#16, mir, cuf1=\EC, - cuu1=\EA, ht=^I, cvvis=^N^Lv, cnorm=\EX, - kcuu1=\EU, kcud1=\ED, kcub1=\EL, kcuf1=\ER, khome=\EH, xenl, -# Info: -# SUN -# smcup/rmcup control # lines scrolled on linefeed. The sun 2 -# seems to handle this well with it set to 1, so both force this. -# rmcup could use 0 or 3 just as well, I suppose. -# -sun|sun1|sun2|Sun Microsystems Inc. workstation, - cr=^M, cud1=^J, ind=^J, bel=^G, am, km, cub1=^H, clear=^L, - lines#34, cols#80, cup=\E[%i%p1%d;%p2%dH, cuf1=\E[C, cuu1=\E[A, - el=\E[K, ed=\E[J, il=\E[%p1%dL, dl=\E[%p1%dM, ich=\E[%p1%d@, - dch=\E[%p1%dP, kcub1=\E[D, kcud1=\E[B, kcuu1=\E[A, kcuf1=\E[C, - kf1=\E[224z, kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, - kf5=\E[228z, kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, - kf9=\E[232z, ht=^I, il1=\E[L, dl1=\E[M, rs2=\E[s, - smso=\E[7m, rmso=\E[m, smul=\E[4m, rmul=\E[m, bold=\E[1m, - rev=\E[7m, sgr0=\E[m, - sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, - msgr, ich1=\E[@, dch1=\E[P, home=\E[H, -sun-s|Sun Microsystems Workstation window with status line, - hs, tsl=\E]l, fsl=\E\\, dsl=\E]l\E\\, use=sun, -sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs, - hs, tsl=\E]l, fsl=\E\\, dsl=\E]l\E\\, use=sun-e, -sun-48|Sun 48-line window, - lines#48, cols#80, use=sun, -sun-34|Sun 34-line window, - lines#34, cols#80, use=sun, -sun-24|Sun 24-line window, - lines#24, cols#80, use=sun, -sun-17|Sun 17-line window, - lines#17, cols#80, use=sun, -sun-12|Sun 12-line window, - lines#12, cols#80, use=sun, -sun-1|Sun 1-line window for sysline, - lines#1, cols#80, eslok, hs, tsl=\r, fsl=\E[K, dsl=^L, use=sun, -# emacs runs faster without insert character -sun-nic|sune|sun-e|Sun Microsystems Workstation console without insert character, - ich1@, use=sun, -sun-cmd|Sun Microsystems Workstation console with scrollable history, - rmcup=\E[>4h, smcup=\E[>4l, use=sun, -sun-na|Sun Microsystems Workstation console with no arrow keys, - kcuu1@, kcud1@, kcub1@, kcuf1@, use=sun, -sun-color|Sun Workstation console with color text support, - colors#8, ncv#3, pairs#64, - op=\E[0m, - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setb=\E[4%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - use=sun, -# Info: -# X -# Latest and greatest "xterm" entry from X11R5 -# -xterm|vs100|xterm terminal emulator, - ind=^J, cols#80, lines#65, - clear=\E[H\E[2J, cub1=^H, am, cup=\E[%i%p1%d;%p2%dH, - cuf1=\E[C, cuu1=\E[A, el=\E[K, ed=\E[J, - cud=\E[%p1%dB, cuu=\E[%p1%dA, cub=\E[%p1%dD, - cuf=\E[%p1%dC, km, - smso=\E[7m, rmso=\E[m, smul=\E[4m, rmul=\E[m, - bold=\E[1m, rev=\E[7m, blink=\E[5m, sgr0=\E[m, - rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, rs2=@, - kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, - kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kf0=\E[21~, - ht=^I, ri=\EM, vt@, xon@, csr=\E[%i%p1%d;%p2%dr, - il=\E[%p1%dL, dl=\E[%p1%dM, il1=\E[L, dl1=\E[M, - ich=\E[%p1%d@, dch=\E[%p1%dP, ich1=\E[@, dch1=\E[P, - rmcup=\E[2J\E[?47l\E8, smcup=\E7\E[?47h, - use=vt100-am, -xterms|vs100s|xterm terminal emulator (small screen 24x80), - cols#80, lines#24, - use=xterm, -xpcterm|X PC-compatible terminal, - am, xon, cols#80, lines#25, colors#8, pairs#64, ncv#3, - cbt=^], bel=^G, cr=^M, clear=\e[2J\e[H, el=\e[K, ed=\e[J, - cup=\e[%i%p1%d;%p2%dH, cud1=\e[B, home=\e[H, cub1=\e[D, cuf1=\e[C, - cuu1=\e[A, dch1=\e[P, dl1=\e[M, smacs=\e[12m, blink=\e[5m, - bold=\e[1m, invis=\e[8m, rev=\e[7m, smso=\e[7m, smul=\e[4m, - rmacs=\e[10m, sgr0=\e[0;10m, rmso=\e[m, rmul=\e[m, is2=\e[0;10;39m, - ich1=\e[@, il1=\e[L, kbs=^H, kdch1=\177, kcud1=\e[B, - kf1=\eOP, kf2=\eOQ, kf3=\eOR, kf4=\eOS, kf5=\eOT, - kf6=\eOU, kf7=\eOV, kf8=\eOW, kf9=\eOX, kf10=\eOY, - khome=\e[H, kich1=\e[@, kcub1=\e[D, knp=\e[U, kpp=\e[V, - kcuf1=\e[C, kcuu1=\e[A, dch=\e[%p1%dP, dl=\e[%p1%dM, - cud=\e[%p1%dB, ich=\e[%p1%d@, indn=\e[%p1%dS, il=\e[%p1%dL, - cub=\e[%p1%dD, cuf=\e[%p1%dC, rin=\e[%p1%dT, cuu=\e[%p1%dA, - ind=\e[S, ri=\e[T, - sgr=\e[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%e;10%;m, - ht=^I, - acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, - kcbt=^], kend=\e[Y, kf11=\eOZ, kf12=\eOA, op=\e[0m, - setf=\e[%?%p1%{0}%=%t30m%e%p1%{1}%=%t34m%e%p1%{2}%=%t32m%e%p1%{3}%=%t36m%e%p1%{4}%=%t31m%e%p1%{5}%=%t35m%e%p1%{6}%=%t33m%e%p1%{6}%=%t33m%e%p1%{7}%=%t37m%;, - setb=\e[%?%p1%{0}%=%t40m%e%p1%{1}%=%t44m%e%p1%{2}%=%t42m%e%p1%{3}%=%t46m%e%p1%{4}%=%t41m%e%p1%{5}%=%t45m%e%p1%{6}%=%t43m%e%p1%{7}%=%t47m%;, -xpcterms|X PC-compatible terminal (small) (X Window System), - lines#25, use=xpcterm, - -terak|Terak emulating Datamedia 1520, - am, xenl, - cols#80, lines#24, - bel=^G, clear=\f, cr=\r, cub1=\b, cud1=\n, cuf1=^\, - cup=^^%p2%'\s'%+%c%p1%'\s'%+%c, cuu1=^_, ed=^K, el=^], - home=^Y, ht=\t, ind=\n, kcub1=\b, kcud1=\n, kcuf1=^\, - kcuu1=^_, khome=^Y, -trs80|trs-80|trs80-1|Radio Shack TRS-80 model I, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cols#64, lines#16, -# Info: -# -trs16|trs80-16|trs-80 model 16 console, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL, am, cub1=^H, ed=\EJ, - el=\EK, clear=^L, cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, - cols#80, dch1=\EQ, dl1=\EM, - cud1=\EB, ich1=\EP, home=\EH, kbs=^H, kcud1=\EB, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kf0=^A, kf1=^B, - lines#24, cuf1=\EC, ht=^I, rmso=\ER@, xmc#0, smso=\ERD, - kf2=^D, kf3=^L, kf4=^U, kf5=^P, kf6=^N, kf7=^S, -# Info: -# Radio Shack model 100 running standard TELCOM Rom program -# hacking by <and flames to> Yerazuws@RPI, Bownesrm@RPI 1/8/84 -# tested at 300 baud (foneline), remember to set the 100's RS-232 -# to ignore parity (eg. config to 37I1N) if you want to -# run Emacs (which this termcap description will, quite nicely!) -# -# From: jgc@sunrise.UUCP Mon, 11-Jul-83 17:33:49 EDT -# esc A - cursor up -# esc B - cursor down -# esc C - cursor right -# esc D - cursor left -# esc E - clear screen and home cursor -# esc H - home cursor -# esc J - erase to end of screen -# esc K - erase to end of line -# esc L - insert line -# esc M - delete line -# esc P - turn on cursor -# esc Q - turn off cursor -# esc T - sets system line (?) -# esc U - resets system line (?) -# esc V - turn off LCD (?) -# esc W - turn on LCD (?) -# esc Y row column - cursor motion (:cm=\EY%+ %+ :) -# esc j - clear screen, don't move cursor -# esc l - erase line, don't move cursor -# esc p - begin reverse video -# esc q - end reverse video -# esc del - change char under cursor to space -# -trs80-100|trs100|trs-100|MZ|m-100|m100| Radio Shack Model 100, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\EJ, el=\EK, cub1=^H, am, - dl1=\EM$<5>, il1=\EL$<7>, cuu1=\EA, cuf1=\EC, - cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, - lines#8, cols#40, smso=\Ep, rmso=\Eq, - kcuu1=^^, kcud1=^_, kcub1=^], kcuf1=^\, kbs=^H, - home=\EH, clear=\EE, civis=\EQ, cnorm=\EP, -trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M, - am, msgr, cols#80, lines#24, - bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^_, cuf1=^], - cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, dl1=^K, ed=^B, el=^A, - home=^F, ht=^I, il1=^D, ind=^_, kbs=^H, kcub1=^\, - kcud1=^_, kcuf1=^], kcuu1=^^, rmso=^O, smso=^N, -# XEROX -x820|820|820-2|Xerox 820, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, - clear=1^Z, ed=^Q, el=^X, cols#80, home=^^, lines#24, - cuf1=^L, cuu1=^K, - -# COLOR EMULATORS - -gs6300|emots|AT&T PC6300 with EMOTS Terminal Emulator, - -# background color erase - - am, msgr, xon, bce, - cols#80, it#8, lines#24, colors#8, pairs#64, - acsc=\,\,..--++``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, - cr=\r, cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - 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, - dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, .el1=\E[1K, - home=\E[H, ht=\t, ich=\E[%p1%d@, ich1=\E[@, - il=\E[%p1%dL, il1=\E[L, ind=\n, is2=\E[0m, kbs=\b, - kcbt=^R\t, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kf1=\E[0s, kf2=\E[24s, kf3=\E[1s, - kf4=\E[23s, kf5=\E[2s, kf6=\E[22s, kf7=\E[3s, - kf8=\E[21s, khome=\E[H, mc4=\E[4i, mc5=\E[5i, - rev=\E[7m, ri=\E[L, rmacs=\E[10m, rmln=\E|, rs1=\Ec, - sgr0=\E[m\E[10m, smacs=\E[11m, smso=\E[1m, smul=\E[4m, - -# color information. blue foreground is simulated with cyan - - op=\E[?;m, - setf=\E[?%?%p1%{0}%=%t0 - %e%p1%{1}%=%t2 - %e%p1%{1}%-%d%;m, - setb=\E[?;%p1%dm, - - -pc52|dec vt52 for PC, - -# background color erase - - am, msgr, bce, - cols#80, it#8, lines#25, - -# bold means: white on black bold, so it not allowed with colors -# rev meand: black on white, also not allowed -# smso and dim are simulated with colors, ditto -# smul is allowed, even though it always means white foreground: -# it is too important. - - colors#8, pairs#64, ncv#53, - bel=^G, blink=\Eo, bold=\Ebo\Ec0, clear=\EH\EJ, cr=\r, - cub1=\b, cud1=\n, cuf1=\EC, - cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=\EA, - dim=\Eb3\Ec0, dl1=\EM, ed=\EJ, el=\EK, ht=\t, il1=\EL, - ind=\n, kbs=\b, kcub1=\EL, kcud1=\ED, kcuf1=\ER, - kcuu1=\EU, kf1=\Ea, kf10=\Ej, kf2=\Eb, kf3=\Ec, - kf4=\Ed, kf5=\Ee, kf6=\Ef, kf7=\Eg, kf8=\Eh, kf9=\Ei, - rev=\Ep, ri=\EI, rmso=\Eb7\Ec0, sgr0=\Eb7\Ec0\Et, smso=\Eb6\Ec4, - smul=\Es, - -# color information. blue foreground is simulated with cyan - - op=\Eb7\Ec0, - setf=\Eb%?%p1%{1}%=%t3 - %e%p1%d%;, - setb=\Ec%p1%d, - - -# CTRM terminal emulator - -ctrm|C terminal emulator, - - am, xon, - -# back_color_erase -# underlining is not allowed with colors: first, is is simulated by -# black on white, second, it disables background color manipulations. - - bce, - cols#80, lh#0, lines#24, lm#0, lw#0, nlab#0, colors#8, pairs#64, - pb#19200, vt#6, ncv#2, - bel=^G, cbt=\Ei, clear=\EH\EJ, cr=\r, cub1=\b, - cud1=\n, cuf1=\EC, cup=\E&a%p2%dc%p1%dY, cuu1=\EA, - dch1=\EP$<2>, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, - ht=\t$<2>, hts=\E1, il1=\EL, ind=\n, ip=$<2>, - is2=\E&jA\r, kbs=\b, kcub1=\Eu\r, kcud1=\Ew\r, - kcuf1=\Ev\r, kcuu1=\Et\r, kf1=\Ep\r, kf2=\Eq\r, - kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, - kf8=\Ew\r, khome=\Ep\r, rmir=\ER, rmkx=\E&jA, smir=\EQ, - smkx=\E&jB, smso=\E&dD, smul=\E&dD, tbc=\E3, - vpa=\E&a%p1%dY, - -# BLINKING, REVERSE and BOLD are allowed with colors, -# so we have to save their status in the static registers A, B and H -# respectively, to be able to restore them when color changes -# (because any color change turns off ALL attributes) - - blink=\E&dA%{1}%PA, - -# "enter_bold_mode" and "enter_reverse_mode" sequences alternates modes, -# rather then simply entering them. Thus we have to check the -# static register B and H to determine the status, before sending the -# escape sequence. - - rev=%?%gB%{0}%=%t\E&dB%{1}%PB%;, - bold=%?%gH%{0}%=%t\E&dH%{1}%PH%;, - - smul=\E&dD, - -# sgr0 now must set the status of all 3 register (A,B,H) to zero -# and then reset colors - - sgr0=\E&d@%{0}%PA%{0}%PB%{0}%PH, - -# implementation of the protect mode would badly penalize the performance. -# we would have to use \E&bn sequence to turn off colors (as well as all -# other attributes), and keep the status of protect mode in yet another -# static variable. If someone really need this mode, they would have to -# create another terminfo entry. - - sgr=\E&d@%{0}%PA%{0}%PB%{0}%PD%{0}%PH - %?%p1%p3%p5%|%|%t\E&dB%{1}%PB%; - %?%p4%t\E&dA%{1}%PA%; - %?%p6%t\E&dH%{1}%PH%; - %?%p2%t\E&dD%;, - -# original color-pair: white on black. -# store the information about colors into static registers - - op=\E&bn\E&bB\E&bG\E&bR - %{0}%PX%{0}%PY%{0}%PZ - %{1}%PW%{1}%PV%{1}%PU, - -# set foreground color. it performs the following steps. -# 1) turn off all attributes -# 2) turn on the background and video attribues that have been turned -# on before (this information is stored in static registers X,Y,Z,A,B,H,D). -# 3) turn on foreground attributes -# 4) store information about foreground into U,V,W static registers - - setf=\E&bn - %?%gA%t\E&dA%; - %?%gB%t\E&dB%; - %?%gH%t\E&dH%; - %?%gX%t\E&br%; - %?%gY%t\E&bg%; - %?%gZ%t\E&bb%; - - %?%p1%{1}%&%t\E&bB%{1}%e%{0}%;%PW - %?%p1%{2}%&%t\E&bG%{1}%e%{0}%;%PV - %?%p1%{4}%&%t\E&bR%{1}%e%{0}%;%PU, - -# turn on background: similar to turn on foreground above - - setb=\E&bn - %?%gA%t\E&dA%; - %?%gB%t\E&dB%; - %?%gH%t\E&dH%; - %?%gU%t\E&bR%; - %?%gV%t\E&bG%; - %?%gW%t\E&bB%; - - %?%p1%{1}%&%t\E&bb%{1}%e%{0}%;%PZ - %?%p1%{2}%&%t\E&bg%{1}%e%{0}%;%PY - %?%p1%{4}%&%t\E&br%{1}%e%{0}%;%PX, - -# Info: -# CDE's dtterm terminal emulator entry from Martin Knutson -# -dtterm|CDE terminal emulator, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, am, bel=^G, - blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, cnorm=\E[?25h, - colors#8, cols#80, cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, - cub1=\b, cud=\E[%p1%dB, cud1=\n, 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[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, - el=\E[K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, home=\E[H, ht=\t, - hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m, - is2=\E\sF\E>\E[?1l\E[?7h\E[?45l, it#8, kbs=\b, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\E[11~, kf2=\E[12~, - kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, - kf8=\E[19~, kf9=\E[20~, 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~, kf20=\E[34~, kfnd=\E[1~, khlp=\E[28~, - kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lines#24, lm#0, mir, - msgr, nel=\EE, op=\E[39;49m, pairs#8, rc=\E8, rev=\E[7m, ri=\EM, - rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m, - sc=\E7, setab=\E[%p1%{40}%+%dm, setaf=\E[%p1%{30}%+%dm, - sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t^N%e^O%;, - sgr0=\E[0m, smacs=^N, smam=\E[?7h, smir=\E[4h, smso=\E[2;7m, - smul=\E[4m, tbc=\E[3g, xenl, xon, diff --git a/usr/src/cmd/terminfo/perkinelmer.ti b/usr/src/cmd/terminfo/perkinelmer.ti deleted file mode 100644 index 01335ba557..0000000000 --- a/usr/src/cmd/terminfo/perkinelmer.ti +++ /dev/null @@ -1,97 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.10 */ -# # -------------------------------- -# -# perkinelmer: PERKIN ELMER -# -# Manufacturer: PERKIN ELMER -# Class: II -# -# Following this message is a copy of our TERMINFO file for -# Perkin-Elmer terminals. Please be aware that we are in the -# process of revising it and will supply you a new version as -# soon as its ready. In the mean time, though, this should get -# you started. -# -# -# perkinelmer: PERKIN ELMER -# -bantam|pe550|pe6100|perkin elmer 550, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#80, el=\EI$<20>, - clear=\EK$<20>, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, home=\EH, - lines#24, ll=\EH\EA, cuf1=\EC, cuu1=\EA, -fox|pe1100|perkin elmer 1100, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ$<5.5*>, el=\EI, clear=\EH\EJ$<132>, cols#80, home=\EH, lines#24, - ll=\EH\EA, cuf1=\EC, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, - cuu1=\EA, flash=^P^B^P^C, -owl|pe1200|perkin elmer 1200, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<5.5*>, - am, cub1=^H, ed=\EJ$<5.5*>, el=\EI$<5.5>, clear=\EH\EJ$<132>, home=\EH, - ll=\EH\EA, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, cols#80, dch1=\EO$<5.5*>, - dl1=\EM$<5.5*>, ich1=\EN, ip=$<5.5*>, kbs=^h, in, lines#24, - cuf1=\EC, cuu1=\EA, rmso=\E!\200, smso=\E!^H, flash=^P^B^P^C, - kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, kf5=\ERE, kf6=\ERF, - kf7=\ERG, kf8=\ERH, kf9=\ERI, kf0=\ERJ, -pe1251|pe6300|pe6312|perkin elmer 1251, - am, cols#80, it#8, lines#24, xmc#1, pb#300, vt#8, - bel=^G, cr=^M, clear=\EK$<332>, el=\EI$<10*>, ed=\EJ$<20*>, - cud1=\EB, home=\EH, cub1=\ED, cuf1=\EC, cuu1=\EA, - cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, ind=^J, hts=\E1, kf0=\ERA, - kf1=\ERB, kf2=\ERC, kf3=\ERD, kf4=\ERE, kf5=\ERF, kf6=\ERG, - kf7=\ERH, kf8=\ERI, kf9=\ERJ, kf10=\ERK, tbc=\E3, -pe7000m|perkin elmer 7000 series monochrome monitor, - am, cols#80, lines#24, - bel=^G, cr=^M, clear=\EK, el=\EI, ed=\EJ, - cud1=\EB, home=\EH, cub1=\ED, cuf1=\EC, cuu1=\EA, - cup=\ES%p1%' '%+%c%p2%' '%+%c,ind=^J, - is1=\E!\0\EW 7o\Egf\ES7 , - smso=\E!\010, rmso=\E!\0, - cbt=\E!Y, - kf0=\E!\0, kf1=\E!\001, kf2=\E!\002, kf3=\E!\003, - kf4=\E!\004, kf5=\E!\005, kf6=\E!\006, kf7=\E!\007, - kf8=\E!\010, kf9=\E!\011, kf10=\E!\012, - kbs=^H, kcud1=\E!U, khome=\E!S, kcub1=\E!V, kcuf1=\E!W, - kcuu1=\E!T, ll=\ES7 , ri=\ER, - rmul=\E!\0, smul=\E!\040, -pe7000c|perkin elmer 7000 series colour monitor, - am, cols#80, lines#24, - bel=^G, cr=^M, clear=\EK, el=\EI, ed=\EJ, - cud1=\EB, home=\EH, cub1=\ED, cuf1=\EC, cuu1=\EA, - cup=\ES%p1%' '%+%c%p2%' '%+%c,ind=^J, - is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7 , - smso=\Eb2, rmso=\Eb0, - cbt=\E!Y, - kf0=\E!\0, kf1=\E!\001, kf2=\E!\002, kf3=\E!\003, - kf4=\E!\004, kf5=\E!\005, kf6=\E!\006, kf7=\E!\007, - kf8=\E!\010, kf9=\E!\011, kf10=\E!\012, - kbs=^H, kcud1=\E!U, khome=\E!S, kcub1=\E!V, kcuf1=\E!W, - kcuu1=\E!T, ll=\ES7 , ri=\ER, - rmul=\E!\0, smul=\E!\040, - - - diff --git a/usr/src/cmd/terminfo/print.ti b/usr/src/cmd/terminfo/print.ti deleted file mode 100644 index f2ab4c8f84..0000000000 --- a/usr/src/cmd/terminfo/print.ti +++ /dev/null @@ -1,947 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1993 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" - -###################################################################### -# -# Generic entry for the C.Itoh 8510 printer and emulations: -# - -citoh+basic, - -# The 8510 I use only allows 79 columns! - cols#79, - - lines#66, - it#8, - - orc#1, - orhi#10, - orl#24, - orvi#144, - - cr=\r, - cud1=\n, - cuf1=\s, - ff=\f, - ht=\t, - - cpi=%?%p1%{10}%=%t\EN%e%p1%{12}%=%t\EE%e%p1%{16}%=%p1%{17}%=%O%t\EQ%;, - cvr=%?%p1%{0}%>%p1%{100}%<%&%t\ET%p1%02d%;, - - is1=^Q^X, - is2=\Ec1\Ev66., - - smso=\E!, - rmso=\E", - smul=\EX, - rmul=\EY, - bold=\E!, - ssubm=\Es2, - rsubm=\Es0, - ssupm=\Es1, - rsupm=\Es0, - swidm=^N, - rwidm=^O, - sgr0=\E"\EY\Es0^O, - sgr=%?%p1%p6%|%t\E!%e\E"%;%?%p2%t\EX%e\EY%;, - - rep=\ER%p2%03d%p1%c, - - snlq=\Em2, - snrmq=\Em1, - sdrfq=\Em0, - - smglp=\EL%p1%03d, - smgrp=\E/%{1}%p1%+%03d, - - slines=\Ev%p1%02d., - u9=\Ev%p1%02d., - -citoh+low, - - npins#8, - spinv#68, - spinh#136, - - porder=8\,7\,6\,5\,4\,3\,2\,1;0, - - sbim=\ES%p1%04d, - - birep=\EV%p2%04d%p3%c, - - bitwin#1, - bitype#1, - -# Set the line spacing to 17/144 inch to get (almost) 68 dots -# per inch vertically (8 * 144/17). -# Set the character spacing to compressed (1/17 inch or 17 -# characters per inch); at 136 dots per inch horizontally this -# means 8 dots per character. -# Set the left margin at the left edge of the image. -# The C.Itoh doesn't have parameterized vertical motion, -# so we simulate it with linefeeds. Assume we never need -# to move more than 63 lines (at 17/144 LPI). -# Set uni-directional motion; bi-directional causes a wavy -# image. - defbi=%?%p5%{1}%=%t\ET17\EQ\EL%p1%{8}%/%03d%p2%{8}%/%Py%?%gy%{31}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{32}%-%Py%;%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\E>%;, - - endbi=\EA\EP\EL001\E<, - - binel=\n\r\EL%p1%{8}%/%03d, - -###################################################################### -# -# Specific printers: -# - -citoh|8510|C.Itoh 8510 printer, - - bufsz#1024, - cps#120, - - use=citoh+basic, use=citoh+low, - -###################################################################### -# -# Generic entry for the daisy wheel printers and emulations: -# - -# -# Basic capabilities: -# -daisy+basic, - - daisy, - - cols#132, - lines#66, - - orc#12, - orhi#120, - orl#8, - orvi#48, - - cr=^M, - cud1=^J, - cuf1=\s, - ff=^L, - ht=^I, - hpa=%?%p1%{100}%<%t\EC%p1%02d%e%p1%{110}%<%t\ECA%p1%{100}%-%d%e%p1%{120}%<%t\ECB%p1%{110}%-%d%e%p1%{130}%<%t\ECC%p1%{120}%-%d%e%p1%{140}%<%t\ECD%p1%{130}%-%d%e%p1%{150}%<%t\ECE%p1%{140}%-%d%e%p1%{160}%<%t\ECF%p1%{150}%-%d%;, - vpa=%?%p1%{100}%<%t\EP%p1%02d%e%p1%{110}%<%t\EPA%p1%{100}%-%d%e%p1%{120}%<%t\EPB%p1%{110}%-%d%e%p1%{130}%<%t\EPC%p1%{120}%-%d%e%p1%{140}%<%t\EPD%p1%{130}%-%d%e%p1%{150}%<%t\EPE%p1%{140}%-%d%e%p1%{160}%<%t\EPF%p1%{150}%-%d%;, - - chr=%?%p1%{100}%<%t\EE%p1%02d%e%p1%{110}%<%t\EEA%p1%{100}%-%d%e%p1%{120}%<%t\EEB%p1%{110}%-%d%e%p1%{130}%<%t\EEC%p1%{120}%-%d%e%p1%{140}%<%t\EED%p1%{130}%-%d%e%p1%{150}%<%t\EEE%p1%{140}%-%d%e%p1%{160}%<%t\EEF%p1%{150}%-%d%;, - cvr=%?%p1%{100}%<%t\EL%p1%02d%e%p1%{110}%<%t\ELA%p1%{100}%-%d%e%p1%{120}%<%t\ELB%p1%{110}%-%d%e%p1%{130}%<%t\ELC%p1%{120}%-%d%e%p1%{140}%<%t\ELD%p1%{130}%-%d%e%p1%{150}%<%t\ELE%p1%{140}%-%d%e%p1%{160}%<%t\ELF%p1%{150}%-%d%;, - - is2=\E\rP\EW\E.\EL08\EE12\E%\E<, - - smso=\EQ, - rmso=\ER, - smul=\EI, - rmul=\EJ, - bold=\EKd, - sshm=\EQ, - rshm=\ER, - sgr0=\ER\EM\EJ, - sgr=%?%p1%t\EQ%e\ER%;%?%p2%t\EI%e\EJ%;%?%p6%t\EKd%e\EM%;, - - smgb=\E-, - smgl=\E9, - smgr=\E0, - smgt=\E+, - - slines=\EF%p1%02d, - u9=\EF%p1%02d, - -# -# Graphics capabilities: -# -daisy+lowres, - -# -# We could use the graphics on/graphics off control sequences -# (ESC G/ESC 4) but for these problems: -# -# - graphics mode gets turned off when a \r is received; -# - printing a character doesn't cause motion, which -# means that each ``cell'' must be followed by a space; -# - to get the best aspect ratio, three horizontal dots -# must be sent per ``cell'' (using the ESC 3 graphics mode -# (1/60 instead of 1/120) alleviates this problem but -# gives a worse aspect ratio). -# -# So instead we set the HMI and VMI to 1/40 and 1/48 inch, -# respectively. -# - npins#1, - spinv#48, - spinh#40, - - porder=o\,o\,o\,o\,1\,1\,1\,o;32, - - bitwin#1, - bitype#1, - - birep=%?%p3%{32}%=%t\EH%p2%{3}%*%Px%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c%;, - -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\EL01\EE03%p1%{3}%*%Px\r\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c\EV%p2%{256}%/%{64}%+%c%p2%{256}%m%{16}%/%{64}%+%c%p2%{16}%m%{64}%+%c\E>%;, - - endbi=\EL08\EE12\E<, - - binel=\n\r%p1%{3}%*%Px\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c, - -###################################################################### -# -# Specific printers: -# - -daisy, - - use=daisy+basic, use=daisy+lowres, - -qume|sprint11|Qume Sprint 11, - - bufsz#500, - cps#55, - - use=daisy, - -###################################################################### -# -# Generic entries for the various DEC printers and emulations. -# -# The dec+... entries are really for any ANSI X3.64 printer, -# but "ansi" is already used for terminals. It would be more -# work to do "use=ansi" because there are too many screen -# oriented caps that would have to be removed. -# - -# -# Basic capabilities: -# -dec+basic, - - cols#132, - lines#66, - it#8, - - cpix, - orc#1, - orhi#10, - orl#2, - orvi#12, - -# -# FIX? Are xhpa and xvpa really needed? - xhpa, - xvpa, - - cr=^M, - ff=^L, - ht=^I, - cud1=^J, - cuf1=\s, - cuu1=\EM, - cud=\E[%p1%de, - cuf=\E[%p1%da, - hpa=\E[%p1%d`, - vpa=\E[%p1%dd, - nel=\EE, - - is1=\Ec, - is2=\E[20l, - - cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, - lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, - - csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, - scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, - - sshm=\E[5m, - rshm=\E[m, - - smgtp=\E[%p1%dr, - smgbp=\E[;%p1%dr, - smglp=\E[%{1}%p1%+%ds, - smgrp=\E[;%{1}%p1%+%ds, - - slines=\E[%p1%dt, - u9=\E[%p1%dt, - -# -# Graphics capabilities (low resolution, 6-pin): -# -dec+low, - - npins#6, - spinv#72, - spinh#75, - - porder=o\,o\,6\,5\,4\,3\,2\,1;63, - - bitwin#1, - bitype#1, - - birep=!%p2%d%p3%c, - -# X is in 1/75 increments; set char spacing to 1/16.7 -# increments to allow us to get close; column is X*16.7/75. -# Y is in 1/72 increments; set line spacing to 1/12 -# increments to allow us to get close; line is Y/6. - defbi=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP0q%;, - - endbi=^X, - - binel=-, - - bicr=$, - -###################################################################### -# -# Specific printers: -# - -la100|DEC LA100 Printer, - - use=dec+basic, use=dec+low, - -ln03|DEC LN03 Laser Printer, - -# I'm guessing here. I think the ln03 can scale up to 6. -# X is in 1/75 increments; set char spacing to 1/16.7 -# increments to allow us to get close; column is X*16.7/75. -# Y is in 1/72 increments; set line spacing to 1/12 -# increments to allow us to get close; line is Y/6. - defbi=%?%p5%{0}%>%p5%{7}%<%&%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP9;0;%p5%dq"1;1%;, - - use=dec+basic, use=dec+low, - -###################################################################### -# -# Epson LQ-2500 -# - -# -# Basic capabilities: -# -ep2500+basic, - - cols#136, - lines#66, - it#8, - - cpix, - orc#6, - orhi#60, - orl#30, - orvi#180, - - cr=^M, - cud1=^J, - cuf1=\s, - cub1=\b, - ff=^L, - ht=^I, - - cpi=%?%p1%{10}%=%t^R\EP%e%p1%{12}%=%t^R\EM%e%p1%{20}%=%t^O\EM%e%p1%{17}%=%t^O\EP%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - is1=^Q^X, - is2=\E@\E%0\EO, - - csnm=%?%p1%{0}%=%tcharacter_set_1%e%p1%{1}%=%tcharacter_set_2%e%p1%{2}%=%tusa%e%p1%{3}%=%tfrench%e%p1%{4}%=%tgerman%e%p1%{5}%=%tuk%e%p1%{6}%=%tdanish1%e%p1%{7}%=%tswedish%e%p1%{8}%=%titalian%e%p1%{9}%=%tspanish1%e%p1%{10}%=%tjapanese%e%p1%{11}%=%tnorwegian%e%p1%{12}%=%tdanish2%e%p1%{13}%=%tspanish2%e%p1%{14}%=%tlatin_american%;, - scs=%?%p1%{0}%=%t\E7%e%p1%{1}%=%t\E6%e%p1%{1}%>%p1%{15}%<%&%t\ER%p1%{126}%+%c%; - - smso=\EE, - rmso=\EF, - smul=\E-1, - rmul=\E-0, - bold=\EG, - sshm=\EE, - rshm=\EF, - ssubm=\ES1, - rsubm=\ET, - ssupm=\ES0, - rsupm=\ET, - swidm=\EW1, - rwidm=\EW0, - sitm=\E4, - ritm=\E5, - sgr0=\EF\E-0\EH\ET\EW0\E5, - sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;, - -# -# For now we can't set the margin in the first (0th) column -# due to limitations in the Curses code. This should be changed -# in the future. For now, shift right 1. Note that the right -# margin is the last USEABLE column in Terminfo, but is 1 -# PAST that for the Epson. - smglp=%?%p1%{256}%<%t\El%p1%{1}%+%c%;, - smgrp=%?%p1%{256}%<%t\EQ%p1%{2}%+%c%;, - - slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - - snrmq=\Ex0, - snlq=\Ex1, - -# -# Graphics capabilities: -# -ep2500+low, - - npins#8, - spinv#60, - spinh#60, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, - - bitwin#1, - bitype#1, - -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 60 dots per inch vertically (7.5 lines/" * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - - endbi=\E3\036, - - binel=\n\r\t, - - bicr=\r\t, - -# -# Graphics capabilities: -# -ep2500+high, - - npins#24, - spinv#180, - spinh#180, - - porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, - - sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, - -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 180 dots per inch horizontally this means 18 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - - use=ep2500+low, - -# -# Color capability: -# -ep2500+color, - - colors#3, - - setcolor=%?%p1%{0}%=%t\Er0%;%?%p1%{1}%=%t\Er2%;%?%p1%{2}%=%t\Er1%;%?%p1%{3}%=%t\Er4%;, - - colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - -###################################################################### -# -# Specific printers: -# - -epson2500|Epson LQ-2500; low resolution, - - use=ep2500+basic, use=ep2500+low, use=ep2500+color, - -epson2500-hi|Epson LQ-2500; high resolution, - - use=ep2500+basic, use=ep2500+high, use=ep2500+color, - -epson2500-80|Epson LQ-2500; low resolution; 80-col, - - cols#80, - use=ep2500+basic, use=ep2500+low, use=ep2500+color, - -epson2500-hi80|Epson LQ-2500; high resolution; 80-col, - - cols#80, - use=ep2500+basic, use=ep2500+high, use=ep2500+color, - -###################################################################### -# -# Generic entry for the HP Laserjet printers and emulations: -# - -# -# Basic capabilities: -# -hplaser+basic, - - cols#80, - lines#60, - - orc#12, - orhi#120, - orl#8, - orvi#48, - - cr=^M, - cud1=^J, - cuf1=\s, - cud=\E&a+%p1%dR, - cuf=\E&a+%p1%dC, - ff=^L, - hpa=\E&a%p1%dC, - vpa=\E&a%p1%dR, - - cpi=%?%p1%{10}%=%t\E&k0S%e%p1%{17}%=%t\E&k2S%;, - chr=%?%p1%{0}%>%p1%{127}%<%t\E&k%p1%dH%;, - cvr=%?%p1%{0}%>%p1%{127}%<%t\E&l%p1%dC%;, - lpi=%?%p1%{1}%=%t\E&l1D%e%p1%{2}%=%t\E&l2D%e%p1%{3}%=%t\E&l3D%e%p1%{4}%=%t\E&l4D%e%p1%{6}%=%t\E&l6D%e%p1%{8}%=%t\E&l8D%e%p1%{12}%=%t\E&l12D%e%p1%{16}%=%t\E&l16D%e%p1%{24}%=%t\E&l24D%e%p1%{48}%=%t\E&l48D%;, - -# Reset printer and set how EOL is handled. -# \E&k0G is cr=cr, lf=lf, ff=ff -# \E&k1G is cr=cr+lf, lf=lf, ff=ff -# \E&k2G is cr=cr, lf=cr+lf, ff=cr+ff (this is what UNIX uses) -# \E&k3G is cr=cr+lf, lf=cr+lf, ff=cr+ff - - is2=\EE\E&k2G, - mgc=\E9, - - rmul=\E&d\100, - ritm=\E(s0S, - smul=\E&dD, - sitm=\E(s1S, - smgtp=\E&l%p1%{1}%+%dE, - smgbp=\E&l%p1%{1}%+%dF, - smglp=\E&a%p1%dL, - smgrp=\E&a%p1%dM, - -#Set top margin at +2 offset - smgtp=\E&l%p1%dE, - -#Set page length - slines=\E&l%p1P, - u9=\E&l%p1P, - -# -# Graphics capabilities: -# -hplaser+high, - - npins#8, - spinv#300, - spinh#300, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\E*b%p1%dW, - - bitwin#1, - bitype#2, - -# X (or Y) * scale * 12/5 == pos in decipoints (12/5 == 720/300) - defbi=%?%p5%{0}%>%p5%{5}%<%&%t\E&a%p1%p5%*%{12}%*%{5}%/%dH\E&a%p2%p5%*%{12}%*%{5}%/%dV\E*t%{300}%p5%/%dR\E*r1A%;, - - endbi=\E*rB, - -###################################################################### -# -# Specific printers: -# - -hplaserjet|hplaser|HP Laserjet I, - - use=hplaser+basic, use=hplaser+high, - -###################################################################### -# -# Generic entries for the various IBM printers and emulations. -# - -################################### -# -# IBM Graphics -# - -# -# Basic capabilities: -# -ibmg+basic, - - cols#80, - lines#66, - it#8, - - cpix, - orc#1, - orhi#10, - orl#12, - orvi#72, - - cr=^M, - ff=^L, - ht=^I, - cud1=^J, - cuf1=\s, - - cpi=%?%p1%{10}%=%t^R%e%p1%{16}%=%p1%{17}%=%O%t^O%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\EA%p1%c\E2%;, - - is1=^X, - is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO, - - csnm=%?%p1%{0}%=%p1%{1}%=%O%tcharacter_set_1%e%p1%{2}%=%tcharacter_set_2%;, - scs=%?%p1%{0}%=%p1%{1}%=%O%t\E7%e%p1%{2}%=%t\E6%;, - - smso=\EE, - rmso=\EF, - smul=\E-1, - rmul=\E-0, - bold=\EG, - smacs=\E6, - rmacs=\E7, - sshm=\EE, - rshm=\EF, - ssubm=\ES1, - rsubm=\ET, - ssupm=\ES0, - rsupm=\ET, - swidm=\EW1, - rwidm=\EW0, - sgr0=\EF\E-0\EH\E7\ET\EW0, - sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;%?%p9%t\E6%e\E7%;, - - slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, - -# -# Graphics capabilities (low resolution, 9-pin): -# -ibmg+low, - - npins#8, - spinv#72, - spinh#60, - - porder=1\,2\,3\,4\,5\,6\,7\,8;0, - - sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, - - bitwin#1, - bitype#1, - -# Set the line spacing to 8/72 inch (9 lines per inch) -# to get 72 dots per inch vertically (9 lines/inch * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# The IBM Graphics doesn't have parameterized motion, -# so we simulate it with linefeeds and spaces. -# Assume we never need to move across more than 63 colums -# or down more than 31 lines. -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\EA\010\E2^R%p2%{8}%/%Py%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;%;, - - endbi=\EA\014\E2, - - binel=\n\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - - bicr=\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, - -################################### -# -# IBM Color -# - -# -# Basic capabilities: -# -ibmc+basic, - - cub1=\b, - - is1=^Q^X, - is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO\ER\E50\EM0\EX^A\210\Eb\ECB, - - smglp=\EX%p1%{1}%+%c%p2%{1}%+%c, - - use=ibmg+basic, - -# -# Graphics capabilities (low resolution, 9-pin, 5:6 aspect ratio): -# -ibmc+low+5x6, - - spinv#84, - spinh#70, - -# Set 5:6 aspect ratio. -# Set the line spacing to 7/72 inch (10.29 lines per inch) -# to get approximately 84 dots per inch vertically -# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 70 dots per inch horizontally this means 7 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\En^B\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{7}%/%c$<>\013\r\t%;, - - binel=\n\r\t, - - bicr=\r\t, - - use=ibmg+low, - -# -# Graphics capabilities (low resolution, 9-pin, 1:1 aspect ratio): -# -ibmc+low+1x1, - - spinh#84, - -# Set 1:1 aspect ratio. -# Set the line spacing to 7/72 inch (10.29 lines per inch) -# to get approximately 84 dots per inch vertically -# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 84 dots per inch horizontally this means 8.4 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\En^A\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{10}%*%{84}%/%c$<>\013\r\t%;, - - use=ibmc+low+5x6, - -# -# Color capability: -# -ibmc+color, - - colors#3, - - setcolor=%?%p1%{0}%=%t\Eb%;%?%p1%{1}%=%t\Ec%;%?%p1%{2}%=%t\Em%;%?%p1%{3}%=%t\Ey%;, - - colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, - -################################### -# -# IBM Proprinter XL: -# -# This printer appears to be a superset of the IBM Graphics -# and IBM Color printers, with a 24-wire printhead. The entry -# below uses the full capabilities of the superset and printhead. -# The printer has an Alternate Graphics Mode (AGM) that changes -# the vertical resolution from 1/216" to 1/180", and the graphics -# aspect ratio from 5:6 to 1:1. HOWEVER, there does not appear to -# be a control sequence that switches into this mode--it must be -# done by hand! -# - -# -# Basic capabilities (printer not in AGM): -# -ibmxl+basic, - - orc#12, - orhi#120, - orl#36, - orvi#216, - - cub1=\b, - - cpi=%?%p1%{10}%=%t^R%e%p1%{12}%=%t\E:%e%p1%{17}%=%t^O%;, - cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, - - is1=^Q^X, - is2=^R\EP0\EA\014\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, - is3=\EX\001\120, - - use=ibmg+basic, - -# -# Basic capabilities (printer in AGM): -# -ibmxlagm+basic, - - orl#30, - orvi#180, - - is2=^R\EP0\EA\012\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, - - use=ibmxl+basic, - -# -# Graphics capabilities (low resolution, 8-pin, 5:6 aspect ratio): -# -ibmxl+low+5x6, - - spinv#72, - spinh#60, - -# Set the line spacing to 8/72 inch (9 lines per inch) -# to get 72 dots per inch vertically (9 lines/" * 8 pins/line). -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 60 dots per inch horizontally this means 6 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, - - use=ibmc+low+5x6, - -# -# Graphics capabilities (low resolution, 8-pin, 1:1 aspect ratio): -# -ibmxl+low+1x1, - - spinv#60, - -# In AGM the "defbi" cap from ibmxl+low+5x6 will work. The -# line spacing will be 8/60 inch to get 60 dots per inch, using -# the same control sequence. - - use=ibmxl+low+5x6, - -# -# Graphics capabilities (high resolution, 24-pin, 5:6 aspect ratio): -# -# This doesn't work as the pin spacing doesn't get set to -# 1/216 inch, but stays at 1/180 inch, even out of AGM. -# - -# -# Graphics capabilities (high resolution, 24-pin, 1:1 aspect ratio): -# -ibmxl+high+1x1, - - npins#24, - spinv#180, - spinh#180, - - porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, - - sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, - -# Set the line spacing to 8/60 inch (7.5 lines per inch) -# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). -# This requires the printer or emulation in Alternate Graphics Mode. -# Set the character spacing to pica (1/10 inch or 10 characters -# per inch); at 180 dots per inch horizontally this means 18 -# dots per character. -# Set vertical and horizontal tab stops at the upper left corner -# of the image, then tab to the upper left corner. -# Note: $<> is a true null (only works with special Curses routine). -# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although -# maybe not in the first column.) - defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, - - use=ibmc+low+5x6, - -###################################################################### -# -# Specific printers: -# - -ibmgraphics|ibmproprinter|proprinter|IBM Graphics printer, - - use=ibmg+basic, use=ibmg+low, - -ibmcolor|IBM Color printer; 5:6 aspect ratio, - - use=ibmc+basic, use=ibmc+low+5x6, use=ibmc+color, - -ibmcolor-1x1|IBM Color printer; 1:1 aspect ratio, - - use=ibmc+basic, use=ibmc+low+1x1, use=ibmc+color, - -ibmxl|IBM Proprinter XL; 5:6 aspect ratio; low resolution, - - cols#136, - is3=\EX\001\210, - use=ibmxl+basic, use=ibmxl+low+5x6, use=ibmc+color, - -ibmxl-1x1|IBM Proprinter XL in AGM; 1:1 aspect ratio; low resolution, - - cols#136, - is3=\EX\001\210, - use=ibmxlagm+basic, use=ibmxl+low+1x1, use=ibmc+color, - -ibmxl-1x1-hi|IBM Proprinter XL in AGM; 1:1 aspect ratio; high resolution, - - cols#136, - is3=\EX\001\210, - use=ibmxlagm+basic, use=ibmxl+high+1x1, use=ibmc+color, - -ibmxl-80|IBM Proprinter XL; 5:6 aspect ratio; low resolution; 80-col, - - use=ibmxl+basic, use=ibmxl+low+5x6, use=ibmc+color, - -ibmxl-1x1-80|IBM Proprinter XL in AGM; 1:1 aspect ratio; low res; 80-col, - - use=ibmxlagm+basic, use=ibmxl+low+1x1, use=ibmc+color, - -ibmxl-1x1-hi80|IBM Proprinter XL in AGM; 1:1 aspect ratio; high res; 80-col, - - use=ibmxlagm+basic, use=ibmxl+high+1x1, use=ibmc+color, - -############################################################## -# -# HP plotter: -# - -7550|hp7550|HP7550|Hewlett Packard 7550A, - bufsz#5000, - is2=.@5000;2:.I81;;17:.NO;19:.P;1:.(, diff --git a/usr/src/cmd/terminfo/screen.ti b/usr/src/cmd/terminfo/screen.ti deleted file mode 100644 index 04f8f80856..0000000000 --- a/usr/src/cmd/terminfo/screen.ti +++ /dev/null @@ -1,79 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -#ident "%Z%%M% %I% %E% SMI" -# ^L# -------------------------------- -# -# screen: SCREEN -# -# Screen is a curses based virtual terminal multiplexor. -screen|VT 100/ANSI X3.64 virtual terminal, - am, km, mir, msgr, xenl, - cols#80, it#8, lines#24, colors#8, pairs#64, - bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, - clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, - cuu=\E[%p1%dA, cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, - dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, - enacs=\E(B\E)0, home=\E[H, - ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, - ind=\n, is2=\E)0, kbs=\b, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kf1=\EOP, - kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, - kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~, - kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kend=\E[4~, - kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE, - rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>, - rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m, - smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, - tbc=\E[3g, smacs=^N, rmacs=^O, flash=\Eg, - civis=\E[?25l, cnorm=\E[34h\E[?25h, cvvis=\E[34l, - op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00, -screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols, - am, km, mir, msgr, xenl, - cols#132, it#8, lines#24, colors#8, pairs#64, - bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, - clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, - cuu=\E[%p1%dA, cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, - dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, - enacs=\E(B\E)0, home=\E[H, - ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, - ind=\n, is2=\E)0, kbs=\b, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kf1=\EOP, - kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, - kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~, - kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kend=\E[4~, - kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE, - rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>, - rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m, - smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, - tbc=\E[3g, smacs=^N, rmacs=^O, flash=\Eg, - civis=\E[?25l, cnorm=\E[34h\E[?25h, cvvis=\E[34l, - op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00, diff --git a/usr/src/cmd/terminfo/special.ti b/usr/src/cmd/terminfo/special.ti deleted file mode 100644 index 23d72472b1..0000000000 --- a/usr/src/cmd/terminfo/special.ti +++ /dev/null @@ -1,54 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.5 */ -# # -------------------------------- -# -# special: SPECIALS -# -# Manufacturer: SPECIAL GENERIC TERMINALS -# Class: III -# Info: -# Generic "terminals". These are used to label tty lines when -# you don't # know what kind of terminal is on it. The -# characteristics of an unknown terminal are the lowest common -# denominator - they look about like a ti 700. -# -arpanet|network|net|, - use=unknown, -bussiplexer, - use=unknown, -dialup, - use=unknown, -ethernet, - use=unknown, -plugboard|patch|patchboard|, - use=unknown, -dumb, - am, bel=^G, cols#80, cr=^M, cud1=^J, ind=^J, -unknown, - gn, use=dumb, -switch|intelligent switch, - use=unknown, diff --git a/usr/src/cmd/terminfo/sperry.ti b/usr/src/cmd/terminfo/sperry.ti deleted file mode 100644 index 0d55798eeb..0000000000 --- a/usr/src/cmd/terminfo/sperry.ti +++ /dev/null @@ -1,65 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.9 */ -# # -------------------------------- -# -# sperry: SPERRY -# -# Manufacturer: SPERRY -# Class: III -# Info: -# This is a terminal that is (going to be) used with increasing -# frequency here, internally at sperry. It is also similar, i -# believe, to the terminal that comes with the sperry pcs that -# have recenty made an entry into the micro market. -# It doesn't have everything that the uts30 has to offer, i'm -# sure (read hope), but its a start. -# -# -# This entry is for the Sperry UTS30 terminal running the TTY -# utility under control of CP/M Plus 1R1. The functionality -# provided is comparable to the DEC vt100. -# -# -uts30|sperry uts30 with cp/m@1R1, - am, bw, hs, - cols#80, lines#24, wsl#40, - bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=\f, cnorm=\ES, - cr=\r, csr=\EU%p1%' '%+%c%p2%' '%+%c, cub=\E[%p1%dD, cub1=\b, - cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC, - cup=\E[%i%p1%d;%p2%dH, - cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\EM, dl=\E[%p1%dM, - dl1=\EL, - ed=\E[J, el=\E[K, fsl=\r, home=\E[H, ht=\t, ich=\E[%p1%d@, ich1=\EO, - il=\E[%p1%dL, il1=\EN, - kbs=\b, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H, - ind=\l, indn=\E[%p1%dB, - is2=\E[U 7\E[24;1H, rc=\EX, rev=\E[7m, - rf=/usr/share/lib/tabset/vt100, ri=\EI, rin=\E[%p1%dA, - rmacs=\Ed, rmso=\E[m, - rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, - sc=\EW, sgr0=\E[m, smacs=\EF, smso=\E[7m, smul=\E[4m, - tsl=\E], uc=\EPB, diff --git a/usr/src/cmd/terminfo/tektronix.ti b/usr/src/cmd/terminfo/tektronix.ti deleted file mode 100644 index f71c2b33b0..0000000000 --- a/usr/src/cmd/terminfo/tektronix.ti +++ /dev/null @@ -1,320 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.16 */ -# # -------------------------------- -# -# tektronix: TEKTRONIX -# -# Manufacturer: TEKTRONIX -# Class: III -tek4107|tek4109|4107|4109|tektronix terminals 4107 4109, - am, mir, msgr, ul, xenl, xt, - cvvis=\E%!3, - cnorm=\E%!0, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\ELZ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#79, lines#29, - cuf1=\EC, ht=^I, it#8, ri=\EI, cuu1=\EA, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, kbs=^H, - smso=\E%!1\E[7;5m$<2>\E%!0, - rmso=\E%!1\E[m$<2>\E%!0, - smul=\E%!1\E[4m$<2>\E%!0, - rmul=\E%!1\E[m$<2>\E%!0, - bold=\E%!1\E[1m$<2>\E%!0, - rev=\E%!1\E[7m$<2>\E%0, - blink=\E%!1\E[5m$<2>\E%!0, - dim=\E%!1\E[<0m$<2>\E%!0, - sgr0=\E%!1\E[m$<2>\E%!0, - sgr=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m\E%%!0, -tek4105|4105|tektronix 4105, - am, il1=\E[1L, ed=\E[J, el=\E[K, clear=\E[2J\E[H, - cup=\E[%i%p1%2d;%p2%2dH, - cols#79, lines#29, - dch1=\E[1P, dl1=\E[1M, - home=\E[H, smir=\E[4h, rmir=\E[4l, mir, - cuf1=\E[1C, cud1=\E[1B, cuu1=\E[1A, - smacs=\E[1m, rmacs=\E[0m, msgr, - rmso=\E[=0;<1m, smso=\E[=2;<3m, - ul, smul=\E[=5;<2m, rmul=\E[=0;<1m, - is1=\E%!1\E[0m, - rev=\E[=1;<3m, bold=\E[=7;<4m, invis=\E[=6;<5, dim=\E[=1;<6m, - blink=\E[=3;<7m, sgr0=\E[=0;<1m, - smcup=\E%!1\E[?6l\E[2J, xenl, xt, - msgr, mir, kbs=^h, kcuu1=\E[1A, kcud1=\E[1B, - kcub1=\E[1D, kcuf1=\E[1C, - is2=\E%!1\E[?6141\E[0m, - cbt=\E[Z, cr=^M, ri=\E[T, ind=\E[S, it#8, - tbc=\E[1g, ht=^I, bel=^G, - -tek|tek4012|4012|tektronix 4012, - cr=^M, cud1=^J, bel=^G, ff=^L$<1000>, - is2=\E^O, cub1=^H, clear=\E^L$<1000>, cols#75, lines#35, os, -tek4013|4013|tektronix 4013, - smacs=\E^N, rmacs=\E^O, use=4012, -tek4014|4014|tektronix 4014, - is2=\E^O\E9, cols#81, lines#38, use=tek4012, -tek4015|4015|tektronix 4015, - smacs=\E^N, rmacs=\E^O, use=4014, -tek4014-sm|4014-sm|tektronix 4014 in small font, - is2=\E^O\E\072, cols#121, lines#58, use=tek4014, -tek4015-sm|4015-sm|tektronix 4015 in small font, - smacs=\E^N, rmacs=\E^O, use=4014-sm, -tek4023|4023|tex|tektronix 4023, - cr=^M, cud1=^J, ind=^J, bel=^G, smso=^_P, rmso=^_@, - cup=\034%p2%' '%+%c%p1%' '%+%c, cuf1=\t, cub1=^H, - clear=\E^L$<4>, cols#80, lines#24, am, vt#4, -# Info: -# It is recommended that you run the 4025 at 4800 baud or less; -# various bugs in the terminal appear at 9600. It wedges at the -# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed -# on keyboard don't work. You have to hit BREAK twice to get -# one break at any speed - this is a documented feature. -# Can't use cursor motion because it's memory relative, and -# because it only works in the workspace, not the monitor. -# Same for home. Likewise, standout only works in the workspace. -# -# el was commented out since vi and rogue seem to work better -# simulating it with lots of spaces! -# -# il1 and il had 145ms of padding, but that slowed down vi's ^U -# and didn't seem necessary. -# -4025|4027|4024|tek4025|tek4027|tek4024|4025cu|4027cu|tektronix 4024/4025/4027, - cr=^M, ind=^F^J, cud1=^F^J, bel=^G, am, da, db, ht=^I, it#8, - cub1=^H, lm#0, lines#34, cols#80, clear=^_era\r\n\n, - is2=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r, - smkx=^_lea p4 /h/\r^_lea p8 /k/\r^_lea p6 / /\r^_lea p2 /j/\r^_lea f5 /H/\r, - rmkx=^_lea p2\r^_lea p4\r^_lea p6\r^_lea p8\r^_lea f5\r, - cuu1=^K, cuf1=^_rig\r, - ed=^_dli 50\r, cmdch=^_, - dch1=^_dch\r, ich1=^_ich\r ^H, - il1=^_up\r^_ili\r, dl1=^_dli\r^F, - il=^_up\r^_ili %p1%d\r, dl=^_dli %p1%d\r^F, - cuu=^_up %p1%d\r, cud=^_dow %p1%d\r, - cub=^_lef %p1%d\r, cuf=^_rig %p1%d\r, -tek4025-17|4025-17|4027-17|tek 4025 17 line window, - lines#17, use=4025, -tek4025-17-ws|4025-17-ws|4025-17ws|4027-17-ws|tek 4025 17 line window in workspace, - is2=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r^_wor 17\r^_mon 17\r, - smcup=^_wor h\r, rmcup=^_mon h\r, smso=^_att e\r, rmso=^_att s\r, use=4025-17, -tek4025-ex|4025-ex|4025ex|4027-ex|tek 4025 w/!, - smcup=\41com 31\r, rmcup=^_com 33\r, - is2=^_com 33\r\n\41sto 9 17 25 33 41 49 57 65 73\r, use=4025, -tek4105-30|4105-30|4015 emulating 30 line vt100, - am, mir, msgr, xenl, xon, - cols#80, it#8, lines#30, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - cuf=\E[%p1%dC, cuf1=\E[C$<2>, - cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, - cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, - el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=\t, - hts=\EH, ind=\n, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=\b, - kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, - kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, - kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, - kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, - rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmkx=\E[?1l\E>, - rmso=\E[m$<2>, rmul=\E[m$<2>, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;, - sgr0=\E[m^O$<2>, smacs=^N, smkx=\E[?1h\E=, - smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -# Info: -# The 4110 series may be a wonderful graphics series, but they -# make the 4025 look good for screen editing. -# -# In the dialog area, you can't move the cursor off the bottom -# line. -# -# Out of the dialog area, ^K moves it up, but there is no way -# to scroll. -# -# Note that there is a floppy for free from Tek that makes the -# 4112 emulate the vt52 (use the vt52 termcap). There is also -# an expected enhancement that will use ANSI standard sequences. -# -# 4112 in non-dialog area pretending to scroll. It really wraps -# but vi is said to work (more or less) in this mode. -# -# 'vi' works reasonably well with this entry. -# -4112|4112-nd|4113|4114|tek4112|tektronix 4110 series, - cr=^M, cud1=^J, ind=^J, bel=^G, cuu1=^K, cub1=^H, - am, clear=\E^L, lines#34, cols#80, - smcup=\EKA0\ELV0\EMG0, rmcup=\EKA1\ELV1, -tek4112-d|4112-d|tek 4112 in dialog area, - am, clear=\ELZ, lines#34, cols#80, cuu1=^K, -tek4112-5|4112-5|4112 in 5 line dialog area, - lines#5, use=4112, -tek4115|4115|tektronix 4115, - am, xon, - cols#80, lines#34, - 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=\n, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, - home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=\t, hts=\EH, - ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, - ind=\n, invis=\E[8m, kbs=\b, kcub1=\E[D, kcud1=\E[B, - kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, - rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmso=\E[m, - rmul=\E[m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - sgr0=\E[0m, smso=\E[7m, smul=\E[4m, tbc=\E[2g, - vpa=\E[%p1%{1}%+%dd, -# Info: -# t500 is a local entry for the oddball Tek 500 owned by Fluke -# Labs -# -t500|Tek series 500, - cr=^M, ind=^J, cud1=^J, bel=^G, - lines#25, cols#80, cub1=^H, cup=\E=%p1%p1%' '%+%c%p2%' '%+%c, - clear=^E$<20>, home=^T, bw, am, -# Info: -# I added the is string - straight Unix has ESC ; in the login -# string which sets a ct8500 into monitor mode (aka 4025 snoopy -# mode). The is string here cleans up a few things (but not -# everything). -# -ct8500|tektronix ct8500, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\E^L, am, cub1=^H, cbt=\E^I, bw, ed=\E^U, el=\E^T, - clear=\E^E, cup=\E|%p1%' '%+%c%p2%' '%+%c, cols#80, - da, db, dch1=\E^], - dl1=\E^M, ich1=\E^\, lines#25, cuf1=\ES, ht=^I, ri=\E^A, rmso=\E , - smso=\E$, rmul=\E , cuu1=\ER, smul=\E\041, is2=^_\EZ\Ek, - sgr0=\E\s, - -# -# Tektronix 4205 terminal. This entry contains information required -# by color curses -# - -tek4205|4205|tektronix 4205, - -# am is not defined because the wrap around occurs not when the char. -# is placed in the 80'th column, but when we are attempting to type -# the 81'st character on the line. - -# bold, dim, and standout are simulated by colors and thus not allowed -# with colors - - am, xenl, msgr, mir, ccc, - cols#80, lines#30, it#8, colors#8, pairs#64, ncv#49, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - il1=\E[1L, ed=\E[J, el=\E[K, clear=\E[2J\E[H, - il=\E[%p1%dL, - cup=\E[%i%p1%d;%p2%dH, - dch1=\E[1P, dl1=\E[1M, - home=\E[H, smir=\E[4h, rmir=\E[4l, - cuf1=\E[C, cud1=\E[B, cuu1=\E[A, cub1=\E[D, - cuf=\E[%p1%dC, cud=\E[%p1%dB, cuu=\E[%p1%dA, cub=\E[%p1%dD, - ech=\E%p1%dX, el1=\E[1K, ich=\E[%p1%d@, - smacs=, rmacs=, enacs=\E)0, - rmso=\E[=0;<1m, smso=\E[=2;<3m, - smul=\E[4m, rmul=\E[24m, - is1=\E%!0\ETM1\E%!1\E[0m, - rev=\E[7m, bold=\E[=7;<4m, invis=\E[=6;<5, dim=\E[=1;<6m, - blink=\E[5m, sgr0=\E[=0;<1m\E[24;25;27m, - smcup=\E%%!1\E[?6l\E[2J, - kbs=^h, kcuu1=\E[A, kcud1=\E[B, - kcub1=\E[D, kcuf1=\E[C, - .is2=\E%%!1\E[?6141\E[0m, - cbt=\E[Z, cr=^M, ind=\ED, ri=\EM, - tbc=\E[1g, ht=^I, bel=^G, - -# tektroinix color table is mapped into the RGB color table - - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - setb=\E[4%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4 - %e%p1%{3}%=%t6 - %e%p1%{4}%=%t1 - %e%p1%{6}%=%t3 - %e%p1%d%;m, -# All colors are reset to factory specifications - - oc=\E%!0 - \ETFB0 - 0000 - 1F4F4F4 - 2F400 - 30F40 - 4A4C<F4 - 50F4F4 - 6F40F4 - 7F4F40 - \E%!1, - op=\E[39;40m, - -# using RGB notation to define colors. for arguments 1-3 the interval -# (0-1000) is broken into 8 smaller sub-intervals (125). Each sub- -# interval then maps into pre-defined value. - - initc=\E%%!0 - \ETF4 - %?%p1%{0}%=%t0 - %e%p1%{1}%=%t4 - %e%p1%{2}%=%t3 - %e%p1%{3}%=%t5 - %e%p1%{4}%=%t2 - %e%p1%{5}%=%t6 - %e%p1%{6}%=%t7 - %e1%; - %?%p2%{125}%<%t0 - %e%p2%{250}%<%tA2 - %e%p2%{375}%<%tA? - %e%p2%{500}%<%tC8 - %e%p2%{625}%<%tD4 - %e%p2%{750}%<%tE1 - %e%p2%{875}%<%tE: - %eF4%; - %?%p3%{125}%<%t0 - %e%p3%{250}%<%tA2 - %e%p3%{375}%<%tA? - %e%p3%{500}%<%tC8 - %e%p3%{625}%<%tD4 - %e%p3%{750}%<%tE1 - %e%p3%{875}%<%tE: - %eF4%; - %?%p4%{125}%<%t0 - %e%p4%{250}%<%tA2 - %e%p4%{375}%<%tA? - %e%p4%{500}%<%tC8 - %e%p4%{625}%<%tD4 - %e%p4%{750}%<%tE1 - %e%p4%{875}%<%tE: - %eF4%; - \E%%!1, - kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, - kf4=\EP, kf5=\EQ, kf6=\ER, kf7=\ES, diff --git a/usr/src/cmd/terminfo/teleray.ti b/usr/src/cmd/terminfo/teleray.ti deleted file mode 100644 index 948c619337..0000000000 --- a/usr/src/cmd/terminfo/teleray.ti +++ /dev/null @@ -1,71 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.8 */ -# # -------------------------------- -# -# teleray: TELERAY -# -# Manufacturer: TELERAY -# Class: III -# Info: -# A dumb teleray with the cursor stuck on the bottom and no -# obvious model number is probably a 3700. -# -t3700|teleray3700|dumb teleray 3700, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, clear=^L, cols#80, lines#24, -t3800|teleray 3800 series, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, clear=^L, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - cud1=\n, home=\EH, lines#24, ll=\EY7 , cuf1=\EC, ht=^I, cuu1=^K, -t1061|t10|teleray|teleray 1061, - tbc=\EG, hts=\EF, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<2*>, - am, cub1=^H, ed=\EJ$<1>, el=\EK, clear=^L$<1>, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\EQ, dl1=\EM$<2*>, home=\EH, ich1=\EP, ip=$<0.4*>, - kf1=^Z1, kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, kf6=^Z6, kf7=^Z7, kf8=^Z8, - lines#24, cuf1=\EC, ht=^I, rmso=\ER@, smso= \ERD, km, - is2=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef, - cuu1=\EA, smul=\ERH, rmul=\ER@, xhp, xt, xmc#1, -t1061f|teleray 1061 with fast PROMs, - il1=\EL, ip@, dl1=\EM, use=t1061, -# Info: -# teleray 16 - map the arrow keys for vi/rogue, shifted to -# up/down page, and back/forth words. Put the function keys -# (f1-f10) where they can be found, and turn off the other magic -# keys along the top row, except for line/local. Do the magic -# appropriate to make the page shifts work. -# Also toggle ^S/^Q for those of us who use Emacs. -# -ya|t16|teleray 16, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\E[L, am, cub1=^H, ed=\E[0J, - el=\E[0K, clear=\E[H\E[2J, cup=%i\E[%p1%d;%p2%df, cols#80, kf1=^Z1, - kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, kf6=^Z6, kf7=^Z7, kf8=^Z8, - kf9=^Z9, kf10=^Z0, dch1=\E[P, dl1=\E[M, home=\E[H, - smcup=\E[U\E[?38l, rmcup=\E[V\E[24;1f\E[?38h, smir=\E[4h, - rmir=\E[4l, lines#24, cuf1=\E[C, ht=^I, rmso=\E[m, smso=\E[7m, - dch1=\E[P, cud1=\E[B, cuu1=\E[A, smul=\E[4m, - rmul=\E[m, xhp, xt, ri=\E[T, da, db, mir, diff --git a/usr/src/cmd/terminfo/televideo.ti b/usr/src/cmd/terminfo/televideo.ti deleted file mode 100644 index 614bcd9708..0000000000 --- a/usr/src/cmd/terminfo/televideo.ti +++ /dev/null @@ -1,321 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1993 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# # -------------------------------- -# -# televideo: TELEVIDEO -# -# Manufacturer: TELEVIDEO -# Class: III -tvi803, - clear=\E*$<10>, use=tvi950, -# -tvi910|910|old televideo 910, - am, msgr, xenl, xon, - cols#80, lines#24, xmc#1, - bel=^G, cbt=\EI, clear=\E+^Z, cr=\r, cub1=\b, cud1=\n, - cuf1=\f, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - ed=\EY, el=\ET, home=^^, hpa=\E]%p1%'\s'%+%c, ht=\t, - if=/usr/share/lib/tabset/stdcrt, ind=\n, kbs=\b, - kcub1=\b, kcud1=\n, kcuf1=\f, kcuu1=^K, kf0=^A@\r, - kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, - kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, khome=^^, - rmso=\E(, rmul=\EG0, smso=\E), smul=\EG8, - vpa=\E[%p1%'\s'%+%c, -tvi910+|910+|televideo 910 PLUS, - dch1=\EW, dl1=\ER$<5*>, dsl=\E(, ich1=\EQ, - il1=\EE$<5*>, - use=tvi910, -# -# Info: -# There are some tvi's that require incredible amounts of padding -# and some that don't. I'm assuming 912 and 920 are the old slow -# ones, and 912b, 912c, 920b, 920c are the new ones that don't -# need padding. -# -tvi912|912|920|tvi920|old televideo, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE$<33*>, am, - cub1=^H, el=\ET, cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z, - cols#80, dch1=\EW, dl1=\ER$<33*>, - kbs=^h, kcuu1=^K, kcud1=^J, kcub1=^H, kcuf1=^L, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, - kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, - home=^^, ich1=\EQ, lines#24, ht=^I, - rmso=\Ek, smso=\Ej, cuu1=^K, smul=\El, rmul=\Em, xmc#1, -# Info: -# the 912 has a <funct> key that's like shift: <funct>8 xmits -# "^A8\r". The 920 has this plus real function keys that xmit -# different things. -# Terminfo makes you use the funct key on the 912 but the real -# keys on the 920. -# -912b|912c|tvi912b|tvi912c|tvi|new televideo 912, - il1=\EE$<5*>, dl1=\ER$<5*>, use=tvi912, -920b|920c|tvi920b|tvi920c|new televideo 920, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, - kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, use=tvi912b, -# Info: -# We got some new tvi912c' that act really weird on the regular -# termcap, so one of our gurus worked this up. Seems that cursor -# addressing is broken. -# -912cc|tvi912cc|tvi912 at cowell college, - cup@, use=tvi912c, -# Info: -# Two page TVI 912/920. -# set to page 1 when entering ex (\E-17 ) -# reset to page 0 when exiting ex (\E-07 ) -# -tvi912-2p|tvi920-2p|912-2p|920-2p|tvi-2p|televideo w/2 pages, - smcup=\E-17 , rmcup=\E-07 , use=tvi912, -tvi950-ap|tvi 950 w/alt pages, - is2=\E\\1, smcup=\E-06 , rmcup=\E-16 , use=tvi950, -tvi950-b|bare tvi950 no is2, - is2@, use=tvi950, -tvi950-ns|tvi950 w/no standout, - smso@, rmso@, smul@, rmul@, use=tvi950, -# Info: -# Now that we have is1, is2, and is3, these should be factored. -# -# is2 for all 950's. It sets the following attributes: -# -# full duplex (\EDF) write protect off (\E() -# -# conversation mode (\EC) graphics mode off (\E%) -# -# white on black (\Ed) auto page flip off (\Ew) -# -# turn off status line (\Eg) clear status line (\Ef\r) -# -# normal video (\E0) monitor mode off (\EX or \Eu) -# -# edit mode (\Er) load blank char to space (\Ee\040) -# -# line edit mode (\EO) enable buffer control (^O) -# -# protect mode off (\E\047) duplex edit keys (\El) -# -# program unshifted send key to send line all (\E016) -# -# program shifted send key to send line unprotected (\E004) -# -# set the following to nulls: -# field delimiter (\Ex0\0\0) -# line delimiter (\Ex1\0\0) -# start-protected field delimiter (\Ex2\0\0) -# end-protected field delimiter (\Ex3\0\0) -# -# -tvi950|950|televideo950, - am, hs, mir, msgr, xenl, xon, - cols#80, lh#0, lines#24, lw#0, nlab#0, xmc#1, - acsc=mExJlFtMjHqKvOkGuLwNnI, bel=^G, cbt=\EI, - clear=\E*, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, dch1=\EW, - dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, - flash=\Eb$<20>\Ed, fsl=\r, home=^^, ht=\t, hts=\E1, - il1=\EE, ind=\n, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%%\Ew\EX\Ee\s^O\El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\Ex3\200\200\Ex4\r\200\Ef\r, - kbs=\b, kcub1=\b, kcud1=^V, kcuf1=\f, kcuu1=^K, - kf0=^A0\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, - kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, - khome=^^, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=\E%%, - rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG4, smul=\EG8, - tbc=\E3, tsl=\Eg\Ef, -# Info: -# is2 for 950 with two pages adds the following: -# set 48 line page (\E\\2) -# -# place cursor at page 0, line 24, column 1 (\E-07 ) -# -# set local (no send) edit keys (\Ek) -# -# two page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 48 line page (\E\\2) -# place cursor at 0,24,1 (\E-07 ) -# -# set duplex (send) edit keys (\El) when entering vi -# set local (no send) edit keys (\Ek) when exiting vi -# -tvi950-2p|950-2p|televideo950 w/2 pages, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\2\E-07 , - rmcup=\E\\2\E-07 , smcup=\E\\1\E-07 , - smkx=\El, rmkx=\Ek, use=tvi950, -# Info: -# is2 for 950 with four pages adds the following: -# set 96 line page (\E\\3) -# place cursor at page 0, line 24, column 1 (\E-07 ) -# -# four page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 96 line page (\E\\3) -# place cursor at 0,24,1 (\E-07 ) -# -tvi950-4p|950-4p|televideo950 w/4 pages, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\3\E-07 , - rmcup=\E\\3\E-07 , smcup=\E\\1\E-07 , - smkx=\El, rmkx=\Ek, use=tvi950, -# Info: -# is2 for reverse video 950 changes the following: -# set reverse video (\Ed) -# -# set flash accordingly (\Ed ...nulls... \Eb) -# -tvi950-rv|950-rv|televideo950 rev video, - tbc=\E3, hts=\E1, - is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0, flash=\Ed$<20>\Eb, use=tvi950, -# Info: -# uses the appropriate entries from 950-2p and 950-rv -# -tvi950-rv-2p|950-rv-2p|televideo950 rev video w/2 pages, - is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\2\E-07 , - rmcup=\E\\2\E-07 , smcup=\E\\1\E-07 , - smkx=\El, rmkx=\Ek, use=tvi950-rv, -# Info: -# uses the appropriate entries from 950-4p and 950-rv -# -tvi950-rv-4p|950-rv-4p|televideo950 rev video w/4 pages, - is2=\EDF\EC\Eb\EG0\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\3\E-07 , - rmcup=\E\\3\E-07 , smcup=\E\\1\E-07 , - smkx=\El, rmkx=\Ek, use=tvi950-rv, -# Terminal Configuration Assumptions: -# 1) Edit keys transmit (DUPE on S2 bit 1 down) -# 2) Actually a 925 (not in 912/920 emulation) -# 3) Visual Bell assumes a default of white on black -# 4) Page attributes for special display -# 5) This uses a solid underscore cursor when not in vi. -# Solid Block cursor in vi. -# 6) No function key definitions are given -# 7) Only one page of memory is available -# -tvi925|925|televideo 925, - am, bel=^G, bw, cbt=\EI, clear=^Z, cnorm=\E.4, cols#80, - cr=^M, cub1=^H, cud1=^J, cud1=^V, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, cvvis=\E.2, - dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, - flash=\Eb$<20>\Ed, fsl=\r\Eg, home=^^, hs, - ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J, - kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, - kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, - kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, - khome=^^, kich1=\EQ, kdch1=\EW, kil1=\EE, kdl1=\ER, - kclr=^Z, kel=\ET, ked=\EY, - lines#24, rmso=\EG0, rmul=\EG0, smso=\EG4, smul=\EG8, - tbc=\E3, tsl=\Eh\Ef, ul, xmc#1, -# -# -# -tvi914|old televideo, - am, xon, - cols#80, lines#24, xmc#1, - bel=^G, cbt=\EI, clear=^Z, cr=\r, cub1=\b, cud1=^V, - cuf1=\f, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - dch1=\EW, dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, - il1=\EE, ind=\n, kbs=\b, kcub1=\b, kcud1=^V, kcuf1=\f, - kcuu1=^K, khome=\b, rmso=\EG0, rmul=\EG0, smso=\EG4, - smul=\EG8, -# -# -tvi970|970|televideo 970, - da, db, mir, msgr, ul, xon, - cols#80, lines#24, - bel=^G, bold=\E[1m, cbt=\E[1Z, clear=\E[;H\E[2J, - cnorm=\E[?7h\E[1V, cr=\r, csr=\E[%p1%2.2d;%p2%2.2dr, - cub1=\b, cud1=\E[B, cuf1=\E[C, - cup=\E[%i%p1%2.2d;%p2%2.2dH, cuu1=\E[A, - cvvis=\E[?7l\E[1U, dch1=\E[1P, dl1=\E[1M, ed=\E[J, - el=\E[K, flash=\E[?5h\E[?5l, home=\E[1;1H, - hpa=\E[%p1%2.2dG, il1=\E[1L, ind=\n, kbs=\b, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - khome=\E[H, ll=\E[24;1H, rev=\E[7m, rmir=\E[4l, - rmso=\E[0m, rmul=\E[0m, sgr0=\E[m, smir=\E[4h, - smso=\E[7m, smul=\E[4m, vpa=\E[%p1%2.2dd, -# The terminal should be set up with the following configuration -# for televideo 970's: -# under MAIN COMM: comm - cnv; duplx - fdx; send/rcv - no echo; -# parity -no;stop bit - 1; data bits- 8; -# rcv ctrl - xon/off; xmit ctrl - no; -# under EDIT: ins/rpl - rpl; ctrl rep - proc; matopg - single; -# autowrap - wrap; edit bound - pg; editing ext - ln; -# horz edit - rt; vert edit - dwn; autotab - move; -# under STATUS 1: guarded xfer - ungrd; multi-area xfer - all; -# xfer term - part; ln xfer - pg; xfer exec - immed; -# pg xfer - pg; -# -tvi970-ns|970-ns|televideo 970 with no standout, - mir, xon, - cols#80, lines#24, - bel=^G, clear=\E[;H\E[2J, cr=\r, cub1=\b, cud1=\E[B, - cuf1=\E[C, cup=\E[%i%p1%2.2d;%p2%2.2dH, cuu1=\E[A, - dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, - hpa=\E[%p1%dG, ht=\t, il1=\E[L, ind=\n, - is2=^O\E[m\E[?3l\E[?5l\E[?7h\E[?8h, kbs=\b, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - rmir=\E[4l, rmso=\E[m, rmul=\E[m, smir=\E[4h, - smso=\E[7m, smul=\E[4m, -tvi970-r|970-r|televideo970 reverse video, - da, db, mir, msgr, ul, xon, - cols#80, lines#24, - bel=^G, bold=\E[1m, cbt=\E[1Z, clear=\E[;H\E[2J, - cnorm=\E[?7h\E[1V, cr=\r, csr=\E[%p1%2.2d;%p2%2.2dr, - cub1=\b, cud1=\E[B, cuf1=\E[C, - cup=\E[%i%p1%2.2d;%p2%2.2dH$<5>, cuu1=\E[A, - cvvis=\E[?7l\E[1U, dch1=\E[1P, dl1=\E[1M, ed=\E[J, - el=\E[K, flash=\E[?5l\E[?5h, home=\E[1;1H, - hpa=\E[%p1%2.2dG, il1=\E[1L, ind=\n, kbs=\b, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - khome=\E[H, ll=\E[24;1H, rev=\E[7m, rmir=\E[4l, - rmso=\E[0m, rmul=\E[0m, sgr0=\E[m, smir=\E[4h, - smso=\E[7m, smul=\E[4m, vpa=\E[%p1%2.2dd, -tvi970-rw|970-rw|televideo970 reverse video 132 col, - da, db, mir, msgr, ul, xon, - cols#132, lines#24, - bel=^G, bold=\E[1m, cbt=\E[1Z, clear=\E[;H\E[2J, - cnorm=\E[?7h\E[1V, cr=\r, csr=\E[%p1%2.2d;%p2%2.2dr, - cub1=\b, cud1=\E[B, cuf1=\E[C, - cup=\E[%i%p1%2.2d;%p2%2.2dH$<5>, cuu1=\E[A, - cvvis=\E[?7l\E[1U, dch1=\E[1P, dl1=\E[1M, ed=\E[J, - el=\E[K, flash=\E[?5l\E[?5h, home=\E[1;1H, - hpa=\E[%p1%2.2dG, il1=\E[1L, ind=\n, kbs=\b, - kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, - khome=\E[H, ll=\E[24;1H, rev=\E[7m, rmir=\E[4l, - rmso=\E[0m, rmul=\E[0m, sgr0=\E[m, smir=\E[4h, - smso=\E[7m, smul=\E[4m, vpa=\E[%p1%2.2dd, diff --git a/usr/src/cmd/terminfo/termcap b/usr/src/cmd/terminfo/termcap deleted file mode 100644 index ef5eb39a8c..0000000000 --- a/usr/src/cmd/terminfo/termcap +++ /dev/null @@ -1,2831 +0,0 @@ -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# ------------------------ -# -#Termcap source file @(#)termcap.src 1.33 89/03/22 SMI; from UCB 5.28 6/7/86 -# Kevin Layer, Berkeley -# Craig Leres, Berkeley -# Mark Horton, Berkeley -# -# Please mail changes to (arpanet): termcap@berkeley -# -# Copyright (c) 1980 Regents of the University of California. -# All rights reserved. The Berkeley software License Agreement -# specifies the terms and conditions for redistribution. -# -# This file describes capabilities of various terminals, as needed by -# software such as screen editors. It does not attempt to describe -# printing terminals very well, nor graphics terminals. Someday. -# See termcap(5) in the Unix Programmers Manual for documentation. -# -# Conventions: First entry is two chars, first char is manufacturer, -# second char is canonical name for model or mode. -# Third entry is the one the editor will print with "set" command. -# Last entry is verbose description. -# Others are mnemonic synonyms for the terminal. -# -# Terminal naming conventions: -# Terminal names look like <manufacturer> <model> - <modes/options> -# Certain abbreviations (e.g. c100 for concept100) are also allowed -# for upward compatibility. The part to the left of the dash, if a -# dash is present, describes the particular hardware of the terminal. -# The part to the right can be used for flags indicating special ROM's, -# extra memory, particular terminal modes, or user preferences. -# All names are always in lower case, for consistency in typing. -# -# The following are conventionally used flags: -# rv Terminal in reverse video mode (black on white) -# 2p Has two pages of memory. Likewise 4p, 8p, etc. -# w Wide - in 132 column mode. -# pp Has a printer port which is used. -# na No arrow keys - termcap ignores arrow keys which are -# actually there on the terminal, so the user can use -# the arrow keys locally. -# -# There are some cases where the same name is used for two different -# terminals, e.g. "teleray" or "2621" or "vt100". In these cases, -# if a site has one of these, they should choose a local default and -# bring that terminal to the front in the reorder script. This works -# because tgetent picks the first match in /etc/termcap. -# The list of names intentionally duplicated is: -# 2621, c108, dtc, hp2621, teleray, tvi, vt100. -# -# If you absolutely MUST check for a specific terminal (this is discouraged) -# check for the 2nd entry (the canonical form) since all other codes are -# subject to change. The two letter codes are there for version 6 and are -# EXTREMELY subject to change, or even to go away if version 6 becomes for -# all practical purposes obsolete. We would much rather put in special -# capabilities to describe your terminal rather than having you key on the -# name. -# -# Special manufacturer codes: -# A: hardcopy daisy wheel terminals -# M: Misc. (with only a few terminals) -# q: Homemade -# s: special (dialup, etc.) -# -# Comments in this file begin with # - they cannot appear in the middle -# of a termcap entry. Individual entries are commented out by -# placing a period between the colon and the capability name. -# -# This file is to be installed with an editor script (reorder) -# that moves the most common terminals to the front of the file. -# If the source is not available, it can be constructed by sorting -# the above entries by the 2 char initial code. -# # -------------------------------- -# -# A: DAISY WHEEL PRINTERS and APPLE -# -# The A manufacturer represents Diablo, DTC, Xerox, Qume, and other Daisy -# wheel terminals until such time as termcap distinguishes between them -# enough to justify separate codes. -# This is an "experimental" entry for the SRI Agiles. -# It has been tried in a minimal way -- the Agile did not blow up! -# However, it has not been exhaustively tested. -# Anyone who tries it and finds it wanting should get in touch with: -# Ralph Keirstead (ralph@sri-unix); -# EK352; SRI International; 333 Ravenswood Avenue; Menlo Park, CA 94025 -Aa|agile|agiles|sri agiles:\ - :bs:hc:os:pl:co#132:do=^J:kb=^H:up=\E\n:\ - :hu=\E0:hd=\E9:if=/usr/share/lib/tabset/std:is=\EE\EF\EJ: -A6|1620|1720|450|ipsi|diablo 1620:\ - :do=^J:ct=\E2:st=\E1:ch=\E\t%i%.:\ - :if=/usr/share/lib/tabset/xerox1720:\ - :kb=^H:le=^H:bs:co#132:hc:hu=\EU:hd=\ED:os:pt:up=\E\n: -A7|1620-m8|1640-m8|diablo 1620 w/8 column left margin:\ - :do=^J:co#124:is=\r \E9:tc=1620: -A8|1640|1740|630|1730|x1730|diablo|xerox|diablo 1640:\ - :if=/usr/share/lib/tabset/xerox1730:\ - :us=\EE:ue=\ER:so=\EW:se=\E&:tc=1620: -Am|1640-lm|1740-lm|630-lm|1730-lm|x1730-lm|diablo-lm|xerox-lm|\ - diablo 1640 with idented left margin:\ - :if=/usr/share/lib/tabset/xerox1730-lm:\ - :co#124:us=\EE:ue=\ER:so=\EW:se=\E&:tc=1620: -# DTC 382 with VDU. Has no cd so we fake it with ce. Standout works but -# won't go away without dynamite. The terminal has tabs, but I'm getting -# tired of fighting the braindamage. If no tab is set or the terminal's -# in a bad mood, it glitches the screen around all of memory. Note that -# return puts a blank ("a return character") in the space the cursor was -# at, so we use ^P return (and thus ^P newline for newline). Note also -# that if you turn off pt and let Unix expand tabs, curses won't work -# (current version) because it doesn't turn off this bit, and cursor -# addressing sends a tab for row/column 9. What a losing terminal! I -# have been unable to get tabs set in all 96 lines - it always leaves at -# least one line with no tabs in it, and once you tab through that line, -# it completely weirds out. -Ac|dtc|ps|dtc382|382:\ - :do=^J:al=^P^Z:am:le=^H:\ - :bs:co#80:ce=^P^U:cl=20^P^]:cm=%r^P^Q%.%.:dc=^X:\ - :dl=^P^S:ei=^Pi:ho=^P^R:im=^PI:ve=^Pb:vs=^PB:pc=\177:te=20^P^]:\ - :li#24:nd=^PR:.se=^P \200:.so=^P \002^PF:us=^P \020:ue=^P \200:\ - :up=^P^L:nc:xr:xs:da:db:.pt:cr=^P^M:cd=^P^U^P^S^P^S:\ - :if=/usr/share/lib/tabset/dtc382: -Ad|dtc300s|300|300s|dtc 300s:\ - :ct=\E3:st=\E1:do=^J:\ - :kb=^h:le=^H:bs:co#132:hc:hu=\EH:hd=\Eh:os:pt:up=^Z: -Ag|gsi:\ - :le=^H:bs:co#132:hc:hd=\Eh:hu=\EH:os:pt:up=^Z:do=^J: -# This used to have :pl: - maybe they meant :pt:? -Aj|aj830|aj832|aj|anderson jacobson:\ - :do=^J:le=^H:bs:hc:hd=\E9:hu=\E8:os:up=\E7: -# From Chris Torek <chris@gyre.umd.edu> Thu, 7 Nov 85 18:21:58 EST -AJ|aj510|AJ510|Anderson-Jacobson model 510:\ - :ic=:ip=.1*:so=\E"I:us=\E"U:cd=\E'P:ce=\E'L:cl=^L:cm=\E#%+ %+ :\ - :dl=2*\E&D:ue=\E"U:co#80:li#24:se=\E"I:al=2*\E&I:im=\E'I:ei=\E'J:\ - :dc=.1*\E'D:up=\EY:nd=\EX:bs:am:mi:ti=\E"N:te=\E"N:\ - :ku=\EY:kd=\EZ:kl=\EW:kr=\EX:pc=\177: -# -# From cbosg!ucbvax!pur-ee!cincy!chris Thu Aug 20 09:09:18 1981 -# This is incomplete, but it's a start. -An|5520|nec|spinwriter|nec 5520:\ - :ct=\E3:st=\E1:do=^J:kb=^h:le=^H:bs:co#132:hc:hu=\E]s\E9\E]W:\ - :hd=\E]s\n\E]W:os:pt:up=\E9: -Aq|qume5|qume|Qume Sprint 5:\ - :ct=\E3:st=\E1:do=^J:\ - :kb=^h:le=^H:bs:co#80:hc:hu=\EH:hd=\Eh:os:pt:up=^Z: -Ar|q102|qume102|Qume 102:\ - :al=\EE:am:bs:bt=\EI:\ - :cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :co#80:ct=\E3:\ - :dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:\ - :k0=^A@\r:k1=^AA\r:k2=^AB\r:k3=^AC\r:kd=^J:kl=^H:kr=^L:ku=^K:\ - :le=^H:li#24:ma=^K^P^L :nd=^L:\ - :se=\EG0:sg#1:so=\EG4:st=\E1:\ - :ue=\EG0:ug#1:ul:up=^K:us=\EG8: -# From ucbvax!mtxinu!sybase!tim (Tim Wood) Fri Sep 27 10:25:24 PDT 1985 -# This entry supports line and character insert and delete, scroll up and -# down and the arrow keys. To use it, perform the following on your qvt-101 -# 1) enter SET-UP mode, select the SET 3 line; -# 2) move the cursor to the EMULATION item and hit SPACE -# until QVT-101B appears -# 3) enter SHIFT-S -# 4) exit SET-UP - the terminal is now configured -As|q101|qvt101|qvt-101|Qume 101 $310 special:\ - :al=\EE:am:bt=\EI:ce=\Et:cl=\E*:dc=\EW:\ - :dl=\ER:do=^J:ic=\EQ:ei=:im=:md=\E(:me=\EG0:mh=\E):\ - :le=^H:bs:cm=\E=%+ %+ :cl=1^Z:co#80:ho=^^:li#24:ma=^K^P:nd=^L:ku=^K:\ - :vs=\EM4\040\200\200\200:mr=\EG4:ms:so=\EG4:se=\EG1: -Bh|AT386|at386|at/386 console:\ - :am:bw:eo:xo:xt:bs:\ - :co#80:li#25:kn#4:\ - :ae=^P:al=\E[1L:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[H:\ - :cm=\E[%i%2;%2H:ct=\E[3g:dc=\E[1P:dl=\E[1M:ho=\E[H:\ - :ic=\E[1@:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\ - :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX: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:st=\EH:ue=\E[m:up=\E[A:us=\E[4m:nl=\E[B:\ - :ko=do,nd,up,ho: -Bi|AT386-M|at386-m|386AT-M|386at-m|SCOCONSOLE|scoconsole|at/386 console:\ - :am:bw:eo:xo:xt:pt:\ - :co#80:li#25:kn#6:\ - :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ - :LE=\E[%dD:RI=\E[%dC:\ - :.SF=!!! MUST CHANGE BY HAND !!!\E[%P1%dS:SR=\E[S:\ - :UP=\E[%dA:ae=\E[10m:al=\E[1L:as=\E[12m:cd=\E[J:\ - :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%2;%2H:dc=\E[P:dl=\E[1M:\ - :ho=\E[H:ic=\E[1@:is=\E[0;10;38m:k1=\EOP:k2=\EOQ:\ - :k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\ - :k9=\EOX: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:ue=\E[m:up=\E[A:\ - :us=\E[4m:vb=^G:bc=\E[D:nl=\E[B:ko=le,do,nd,up,dc,ho: -# I suspect the xerox1720 is the same as the diablo 1620. -Ax|x1720|x1700|1700|x1750|xerox 1720:\ - :co#132:le=^H:bs:hc:os:pt:do=^J:ct=\E2:st=\E1: -# # -------------------------------- -# -# C: CONTROL DATA -# -Ca|cdc456|cdc:\ - :do=^J:li#24:co#80:cl=^Y^X:nd=^L:up=^Z:le=^H:bs:\ - :cm=\E1%+ %+ :ho=^Y:al=\E\114:dl=\E\112:ce=^V:cd=^X:am: -Cc|cdc456tst:\ - :do=^J:li#24:co#80:cl=^y^x:le=^H:bs:cm=\E1%+ %+ :am: -# # -------------------------------- -# -# D: DATAMEDIA -# -D0|dm1520|dm1521|1521|1520|datamedia 1520:\ - :do=^J:am:le=^H:bs:cd=^K:ce=^]:cl=^L:cm=^^%r%+ %+ :co#80:ho=^Y:\ - :ku=^_:kd=^J:kl=^H:kr=^\:kh=^Y:\ - :li#24:nd=^\:up=^_:xn:ma=^\ ^_^P^YH:pt: -D2|dm2500|datamedia2500|2500|datamedia 2500:\ - :do=^J:al=15^P\n^X^]^X^]:le=^H:bs:ce=^W:cl=^^^^\177:\ - :cm=^L%r%n%.%.:co#80:dc=10*^P\b^X^]:dl=10*^P^Z^X^]:\ - :dm=^P:ed=^X^]:ei=10\377\377^X^]:ho=^B:ic=10*^P^\^X^]:\ - :im=^P:li#24:nc:nd=^\:pc=\377:so@=^N:se=^X^]:up=^Z: -D3|dm3025|datamedia 3025a:\ - :MT:is=\EQ\EU\EV:do=^J:\ - :al=130\EP\n\EQ:le=^H:bs:cd=2\EJ:ce=\EK:cl=2\EM:cm=\EY%r%+ %+ :\ - :co#80:dc=6\b:dl=130\EP\EA\EQ:dm=\EP:ed=\EQ:ei=\EQ:ho=\EH:\ - :im=\EP:ip=6:li#24:nd=\EC:pt:so=\EO1:se=\EO0:up=\EA: -D4|3045|dm3045|datamedia 3045a:\ - :is=\EU\EV:do=^J:\ - :am:le=^H:bs:cd=2\EJ:ce=\EK:cl=2\EM:cm=\EY%r%+ %+ :co#80:\ - :dc=6\EB:dm=:ed=:ei=\EP:ho=\EH:ic=:im=\EP:ip=6:\ - :k0=\Ey\r:k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:\ - :k5=\Et\r:k6=\Eu\r:k7=\Ev\r:k8=\Ew\r:k9=\Ex\r:\ - :kh=\EH:ku=\EA:kr=\EC:li#24:nd=\EC:pc=\177:pt:eo:ul:up=\EA:xn: -# dt80/1 is a vt100 lookalike, but it doesn't seem to need any padding. -D5|dt80|dmdt80|dm80|datamedia dt80/1:\ - :do=^J:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=%i\E[%d;%dH:ho=\E[H:\ - :nd=\E[C:sr=\EM:so=\E[7m:se=\E[m:up=\E[A:us=\E[4m:ue=\E[m:tc=vt100: -# except in 132 column mode, where it needs a little padding. -# This is still less padding than the vt100, and you can always turn on -# the ^S/^Q handshaking, so you can use vt100 flavors for things like -# reverse video. -D6|dt80w|dmdt80w|dm80w|datamedia dt80/1 in 132 char mode:\ - :do=^J:cd=20\E[0J:co#132:ce=20\E[0K:\ - :cm=5\E[%i%d;%dH:cl=50\E[H\E[2J:up=5\E[A:tc=dmdt80: -# # -------------------------------- -# -# H: HAZELTINE -# -# Since nd is blank, when you want to erase something you -# are out of luck. You will have to do ^L's a lot to -# redraw the screen. h1000 is untested. It doesn't work in -# vi - this terminal is too dumb for even vi. (The code is -# there but it isn't debugged for this case.) -H1|h1000|hazeltine 1000:\ - :le=^H:bs:ho=^K:cl=^L:nd= :co#80:li#12:do=^J: -# Note: the h1552 appears to be the first Hazeltine terminal which -# is not braindamaged. It has tildes and backprimes and everything! -# Be sure the auto lf/cr switch is set to cr. -H2|h1552|hazeltine 1552:\ - :do=^J:al=\EE:dl=\EO:k1=\EP:l1=blue:k2=\EQ:\ - :l2=red:k3=\ER:l3=green:tc=vt52: -H3|h1552rv|hazeltine 1552 reverse video:\ - :do=^J:so=\ES:se=\ET:tc=h1552: -# From cbosg!ucbvax!pur-ee!cincy!chris Thu Aug 20 09:09:18 1981 -H4|h1420|hazeltine 1420:\ - :do=^J:le=^H:bs:am:li#24:co#80:al=\E^Z:dl=\E^S:cd=\E^X:cl=\E\034:\ - :up=\E^L:nd=^P:ce=\E^O:ta=^N:cm=\E^Q%r%.%+ :so=\E\037:se=\E^Y: -H5|h1500|hazeltine 1500:\ - :do=^J:al=40~^Z:am:le=^H:bs:cd=10~^X:ce=~^O:cl=~^\:cm=~^Q%r%.%.:\ - :co#80:dl=40~^S:do=~^K:li#24:nd=^P:.se=~^_:.so=~^Y:up=~^L: -# h1510 assumed to be in sane escape mode. Else use h1500. -H6|h1510|hazeltine 1510:\ - :do=^J:al=\E^Z:am:le=^H:bs:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E^Q%r%.%.:\ - :co#80:dl=\E^S:do=\E^K:li#24:nd=^P:.se=\E^_:.so=\E^Y:up=\E^L: -H8|h1520|hazeltine 1520:\ - :do=^J:al=~^Z:am:le=^H:bs:cd=~^X:ce=~^O:cl=~\034:cm=~^Q%r%.%.\200:\ - :co#80:dl=~^S:do=~^K:hz:li#24:nd=^P:se=~^Y:so=~\037:up=~^L:ho=~^R: -# Note: h2000 won't work well because of a clash between upper case and ~'s. -H7|h2000|hazeltine 2000:\ - :do=^J:al=6~^z:am:le=^H:bs:cl=6~^\:cm=~^q%r%.%.:co#74:\ - :dl=6~^s:ho=~^r:li#27:nc:pc=\177: -# Hazeltine esprit entries from Univ of Utah Tue Feb 1 06:39:37 1983 -# J.Lepreau, lepreau@utah-cs, harpo!utah-cs!lepreau -HE|esprit|hazeltine esprit:\ - :al=40\E^Z:bs:cd=5\E^X:ce=\E^O:cl=\E^\:cm=\E^Q%r%>^^ %+`%+`:co#80:\ - :dl=40\E^S:do=\E^K:ho=\E^R:li#24:nd=^P:se=\E^Y:so=\E^_:up=\E^L: -HF|esprit-am|hazeltine esprit auto-margin:\ - :am:tc=esprit: -# # -------------------------------- -# -# I: IBM, INTERACTIVE SYSTEMS, and INTECOLOR -# -# Some of these should go in the misc category, IBM, ISC, and ISC can't -# all have I. I will wait to see who comes out with more terminals. -# These compucolors appear similar, but they at least have different -# sized screens. I don't know what's going on here. -I8|8001|ISC8001|compucolor|intecolor:\ - :do=^J:al=\EU:am:le=^Z:bc=^Z:cl=3*^L:cm=^C%r%.%.:\ - :co#80:cd=\EQ:dm=\EQ:ed=\EF:dc=\177:dl=\EV:ei=\EF:\ - :im=\EQ:li#40:nd=1^Y:ta=8\t:up=^\:ho=1^H:pc=^@: -IG|compucolor2|compucolorII:\ - :do=^J:pt:am:cm=%r^C%.%.:le=^Z:bc=^Z:li#32:co#64:\ - :cl=^L:ho=^H:nd=^Y:up=^\: -# From cithep!eric Wed Sep 16 08:06:44 1981 -It|intext|Interactive Systems Corporation modified owl 1200:\ - :do=^J:al=5.5*\020:am:le=^_:bc=^_:le=^H:bs:bt=^Y:cd=5.5*\026J:\ - :ce=^K\160^R:cl=132\014:cm=\017%+ %+ :co#80:dc=5.5*\022:dl=5.5*\021:\ - :ei=\026\074:im=\026\073:ip=5.5*:li#24:nd=\036:pt:up=\034:\ - :se=^V# :sg#1:so=^V$,:ma=^K^P^R^L^L :\ - :kl=^_:kd=^J:kr=^^:ku=\034:kb=^H:kh=^Z:\ - :k1=^VA\r:k2=^VB\r:k3=^VC\r:k4=^VD\r:k5=^VE\r:\ - :k6=^VF\r:k7=^VG\r:k8=^VH\r:k9=^VI\r:k0=^VJ\r: -I9|ibm|ibm3101|3101|i3101|IBM 3101-10:\ - :do=^J:ct=\EH:st=\E0:\ - :if=/usr/share/lib/tabset/ibm3101:\ - :am:le=^H:bs:cl=\EK:li#24:co#80:nd=\EC:up=\EA:cd=\EJ:ce=\EI:\ - :kd=\EB:kl=\ED:kr=\EC:ku=\EA:ho=\EH:cm=\EY%+\40%+\40:pt: -Ia|ibm-apl|apl|IBM apl terminal simulator:\ - :li#25:tc=dm1520: -# -# M: MISCELLANEOUS TERMINALS -# -# The tab 132 uses xon/xoff, so no padding needed. -# ks/ke have nothing to do with arrow keys. -# is sets 80 col mode, normal video, autowrap on (for am). -# Seems to be no way to get rid of status line. -M0|abm80|amtek business machines 80:\ - :do=^J:al=\E^Z:am:le=^H:bs:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E^Q%r%+ %+ :\ - :co#80:dl=\E^S:do=\E^K:li#24:nd=^P:.so=\E^_:.se=\E^Y:up=\E^L:\ - :bw:bt=^T:ho=\E^R: -M1|tab132|tab|tab132/15|tab 132/15:\ - :is=\E[?7h\E[?3l\E[?5l:dN@:ks@:ke@:do=^J:\ - :da:db:al=\E[L:dl=\E[M:dc=\E[P:ei=\E[4l:im=\E[4h:cm=\E[%i%d;%dH:\ - :ku=\E[A:kd=\E[B:kl=\E[D:tc=vt100: -M2|tab132w:\ - :co#132:is=\E[?7h\E[?3h\E[?5l:tc=tab132: -M3|tab132rv:\ - :is=\E[?7h\E[?3l\E[?5h:tc=tab132: -M4|tab132wrv:\ - :is=\E[?7h\E[?3h\E[?5h:tc=tab132w: -# This used to say "de#001202" which presumably refers to the stty bits -# that need to be set for some version of Unix. We need the real delay -# requirements in MS. -M5|mw2|Multiwriter 2:\ - :do=^J:co#132:hc:os: -M6|trs80|trs-80|radio shack trs-80 Model I:\ - :do=^J:am:le=^H:bs:co#64:li#16: -M7|d800|Direct 800/A:\ - :do=^J:co#80:li#24:am:cl=\E[1;1H\E[2J:le=^H:bs:cm=\E[%i%d;%dH:\ - :nd=\E[C:up=\E[A:ce=\E[K:cd=\E[J:\ - :so=\E[7m:se=\E[0m:us=\E[4m:ue=\E[0m:xs:vs=\E[>12l:ve=\E[>12h:\ - :sf=\ED:sr=\EM:da:db:as=\E[1m:ae=\E[0m:ms:pt:\ - :kl=\E[D:kr=\E[C:ku=\E[A:kd=\E[B:\ - :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ - :k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW: -M8|vc404|volker-craig 404:\ - :do=^J:am:le=^H:bs:cd=40^W:ce=20^V:cl=40^X:cm=^P%+ %+ :co#80:\ - :ho=40^Y:kd=^J:kl=^H:kr=^U:ku=^Z:li#24:ma=^Z^P^U :nd=^U:up=^Z: -M9|vc404-s|volker-craig 404 w/standout mode:\ - :do=^J:se=^O:so=^N:tc=vc404: -MA|vc404-na|volker-craig 404 w/no arrow keys:\ - :ma@:kr@:ku@:tc=vc404: -MB|vc404-s-na|volker-craig 404 w/standout mode and no arrow keys:\ - :se=^O:so=^N:tc=vc404-na: -# missing in vc303a and vc303 descriptions: they scroll 2 lines at a time -MC|vc303a|vc403a|volker-craig 303a:\ - :do=^J:am:le=^H:bs:ce=20^V:cl=40^X:co#80:ho=40^Y:kd=^J:kl=^H::kr=^U:\ - :ku=^Z:li#24:ll=^P^@W:nd=^U:ns:up=^Z: -MD|vc303|vc103|vc203|volker-craig 303:\ - :do=^J:am:le=^H:bs:cl=40^L:co#80:ho=40^K:kd=^J:kl=^H:\ - :kr=^I:ku=^N:li#24:ll=^O\200W:nd=^I:ns:up=^N: -# Test version for Falco ts-1. See "arpavax.hickman@ucb" for info -ME|falco|ts1|ts-1|falco ts-1:is=\Eu\E3:\ - :do=^J:al=\EE:am:bs:ce=\ET\EG0^h:cm=\E=%+ %+ :cl=\E*:cd=\EY:co#80:\ - :dc=\EW:dl=\ER:ei=\Er:ho=^^:im=\Eq:k0=^A0\r:kd=^J:kl=^H:pt:\ - :kr=^L:ku=^K:li#24:nd=^L:se=\Eg0:so=\Eg1:up=^K:us=\Eg1:ue=\Eg0: -MF|falco-p|falco ts-1sp|falco with paging option:\ - :is=\EZ\E3\E_c:\ - :al=\EE:am:bs:ce=\ET\EG0^H\Eg0:cl=\E*:cd=\EY:co#80:dc=\EW:\ - :dl=\ER:kd=\E[B:kl=\E[D:ei=\Er:im=\Eq:pt:db:\ - :kr=\E[C:ku=\E[A:li#24:nd=\E[C:se=\Eg0:so=\Eg4:\ - :up=\E[A:us=\Eg1:ti=\E_d:te=\E_b:\ - :ue=\Eg0:do=\E[B:cm=\E=%+ %+ :ms:ul:kh=\E[H:da:mi:bt=\EI: -#NOTE: bg can scroll, it just would rather not (ns) - rwells 3/13/81. -# (Shouldn't you take out ns and put in an nl instead? - mrh) -MG|bg|bitgraph|BBN BitGraph terminal:\ - :do=^J:al=2*\E[L:bs:cd=150\E[J:ce=2\E[K:\ - :cl=150\E[H\E[J:cm=%i\E[%d;%dH:co#85:\ - :dl=2*\E[M:k0=\EP:k1=\EQ:k2=\ER:k3=\ES:kd=\EB:ke=\E>:kl=\ED:kr=\EC:\ - :ks=\E=:ku=\EA:li#64:nd=\E[C:ns:pt:se=\E[0m:so=\E[7m:up=\E[A:sf=280\n: -MH|d132|datagraphix|datagraphix 132a:\ - :do=^J:co#80:li#30:cl=^l:ho=\Et:da:db:sf=\Ev:sr=\Ew:\ - :up=\Ek:nd=\El:vs=\ex:ve=\Em\En:\ - :al=\E3:ic=\E5:dc=\E6:in:ic=\E5: -MI|soroc|Soroc 120:\ - :do=^J:cd=\EY:ce=\ET:cl=2\E*:ma=^K^P^R^L^L :\ - :kl=^H:ku=^K:kr=^L:kd=^J:tc=adm3a: -# From: ma179abu%sdcc3@sdcsvax.ucsd.edu (Bill Houle) -MI|iq140|soroc140|Soroc IQ140 with inverse & dim:\ - :ic=\EQ:dc=\EW:al=\EE:dl=\ER:ce=\ET:cd=\EY:cl=\E+:cm=\E=%+ %+ :\ - :up=^K:do=^J:le=^H:nd=^L:ho=^^:ta=\Ei:ma=^Kk^Jj^Hh^Ll^^h:am:bs:\ - :co#80:li#24:ei=:im=:kb=^H:kh=^^:ku=^K:kd=^J:kl=^H:kr=^L:\ - :k0=^AI:k1=^A@:k2=^AA:k3=^AB:k4=^AC:k5=^AD:k6=^AE:k7=^AF:\ - :k8=^AG:k9=^AH:se=\E\177:so=\E\177:us=\E):ue=\E(: -# tec is untested, and taken from CB/Unix virtual terminal driver. -# Upper case terminal, uses lower case for control sequences!!! -# The driver shows the C ~ operator used on CM coordinates. -# Without the terminal in front of me, I can't figure out what's -# going on, so I've dotted out the cm. Note there is no ~ in tgoto. -MJ|tec400|tec scope:\ - :do=^J:.cm=l%r%.%.:up=x:do=h:nd=g:le=w:ho=i:so={:se=|:sg#1:\ - :cl=f:al=e:dl=u:ic=d:dc=t:ce=c:cd=s: -# From ucbvax!geoff Mon Sep 21 21:15:45 1981 -# This entry has been tested. -MK|tec500|tec 500:\ - :do=^J:am:le=^H:bs:cm=\E=%+ %+ :cl=20^Z:\ - :co#80:ho=^^:li#24:nd=^L:up=^K:so=^]:se=^\: -# I would appreciate more information on this terminal, such as the -# manufacturer and the model number. There is too many tecs in here. -ML|tec:\ - :li#24:co#80:cl=^l:up=^k:nd=\037:\ - :am:le=^H:bs:ho=\036:ma=^K^P^_ :do=^J: -MM|teletec|Teletec Datascreen:\ - :do=^J:am:le=^H:bs:co#80:cl=^l:ho=^^:li#24:nd=^_:up=^k: -# From cbosg!ucbvax!SRC:george Fri Sep 11 22:38:32 1981 -MN|ampex|d80|dialogue|dialogue80|ampex dialogue 80:\ - :ct=\E3:st=\E1:do=^J:is=\EA:us=\El:ue=\Em:\ - :am:le=^H:bs:pt:cl=75\E*:cm=\E=%+ %+ :\ - :al=5*\EE:bt=\EI:ic=\EQ:im=:ei=:dl=5*\ER:dc=\EW:\ - :ce=\Et:cd=\Ey:so=\Ej:se=\Ek:li#24:co#80:nd=^L:up=^K: -# From: atd!dsd!rcb@ucbvax.berkeley.edu (Richard Bascove) -A2|a210|210|ampex210|ampex a210:\ - :am:bs:cl=\E*:cm=\E=%+ %+ :al=\EE:bt=\EI:ic=\EQ:im=:ei=:\ - :dl=\ER:dc=\EW:ho=^^:xn:ce=\Et:cd=\Ey:li#24:co#80:nd=^L:up=^K:\ - :pt:if=/usr/share/lib/tabset/std:is=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En:\ - :kl=^H:kr=^L:kd=^V:ku=^K:kh=^^:hs:ts=\E.0\Eg\E}\Ef:fs=\E.2:\ - :kn#10:k0=^A0^M:k1=^A1^M:k2=^A2^M:k3=^A3^M:k4=^A4^M:k5=^A5^M:\ - :vb=\EU\EX\EU\EX\EU\EX\EU\EX:k6=^A6^M:k7=^A7^M:k8=^A8^M:k9=^A9^M:\ - :so=\EG4:se=\EG0:us=\EG8:ue=\EG0:ug#1:sg#1: -MO|digilog|333|digilog 333:\ - :le=^H:bs:co#80:ce=\030:ho=^n:li#16:nd=^i:up=^o:do=^J: -MP|ep48|ep4080|execuport 4080:\ - :am:le=^H:bs:os:co#80:hu=\036:hd=\034:do=^J: -MQ|ep40|ep4000|execuport 4000:\ - :am:le=^H:bs:os:co#136:hu=\036:hd=\034:do=^J: -MR|terminet1200|terminet300|tn1200|tn300|terminet|GE terminet 1200:\ - :co#120:hc:os:do=^J: -# AED 512 -# by giles Billingsley (gilesb%ucbcad@berkeley) -# rewritten 8/82 for newer AEDs and better operation of vi,etc. -MS|aed|AED|aed512|AED512|aed 512:\ - :db:co#64:li#40:cl=^L:bs:nd=\Ei0800\001:\ - :up=^K:ve=\E\E\E\E\E\E\E\072004=000200??\001:\ - :vb=\EK0001??0000K0001202080\001:\ - :us=\E\07200>8000140\001:ue=\E\07200>8000100\001:\ - :uc=\Ei???>l0800i0102\001:\ - :ti=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001:\ - :te=\E\07200>8000100{804<0??00001000L80\072004=000200??\001:\ - :so=\E\07200>8000140[80C00\001:se=\E[00C80\001:\ - :is=\EG1MMM.`40K0001202080K8001????00^L\EC80L80{80^L\EK010100????K0601??0000c818100\EG1HHH.\07210000019A27FD006A280D002A200A52429FE8524861086118612861360N031B4C3F3F1800N041B0C1B4C38301800N001B3B313030301800N011B3B313030341800N021B3B313030381800N050800N061B3B313335301800\07211000015A58E8D5011A58F8D5111A5908D5211A5918D531160\07212000015AD5011858EAD5111858FAD52118590AD5311859160\0721300004B2071C5858E0A18658E0A0A858EA900858F268FA5278590A50A29018591A9F51865908590A90165918591A59038E58E8590A591E58F290185912071C5180A0A0A0901858EA900858F268F60\0721350000BA9472031DEA9502031DE60\E\E\E\EG1MMM.^A: -zL|aed-ucb|AED-UCB|aed512-ucb|AED512-UCB|aed 512 w/o UCB ROM:\ - :db:co#64:li#40:cl=^L:bs:nd=\Ei0800\001:up=^K:\ - :ve=\E\E\E\E\E\E\E\072004=000200??\001:\ - :vb=\EK0001??0000K0001202080\001:\ - :us=\E\07200>8000140\001:ue=\E\07200>8000100\001:\ - :uc=\Ei???>l0800i0102\001:\ - :ti=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001:\ - :te=\E\07200>8000100{804<0??00001000L80\072004=000200??\001:\ - :so=\E\07200>8000140[80C00\001:se=\E[00C80\001:\ - :if=/usr/share/lib/tabset/aed512: -# CIT 80 - vt 100 emulator, the termcap has been modified to remove -# the delay times and do an auto tab set rather than the indirect -# file used in vt100. -MT|cit80|cit 80|Citoh 80:\ - :co#80:li#24:am:cl=\E[;H\EJ:bs:cm=\E[%i%2;%2H:nd=\E[C:up=\E[A:\ - :ce=\EK:cd=\EJ:is=\E>:ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD: -# From mtxinu!sybase!tim (Tim Wood) Fri Sep 27 09:39:12 PDT 1985 -# Alternate cit101 (vt100 em) file used in vt100. -# Uses 23 lines so can run citsys (like h19sys). -# 24 May 85 (mtxinu!sybase!tim) - removed 2-byte limit on 'cm' cursor -# coordinates otherwise there is garbling on long lines in -# co#132 mode; also added support for multipage memory on the Itoh. -MU|citc|Citoh fast vt100:\ - :co#80:li#23:am:cl=\E[;H\E[2J:bs:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\ - :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l:\ - :dc=\E[P:al=\E[L:im=:ei=:dl=\E[M:ic=\E[@:vs=\E7\E[U:ve=\E[V\E8:xn: -MV|cita|:\ - :co#80:li#23:am:cl=\E[;H\E[2J:bs:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:vs=\E7\E[U:ve=\E[V\E8:\ - :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l:xn: -MW|cit101:li#24:vb@:tc=citc -MX|cit101b:li#24:tc=citc -Mh|cit500|cit-500|cit 500:\ - :co#80:li#40:cl=50\E[;H\E[2J:bs:am:cm=5\E[%i%2;%2H:nd=2\E[C:up=2\E[A:\ - :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\ - :is=\E(B\E)0\E>\E[?3l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :if=/usr/share/lib/tabset/vt100:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\ - :kh=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:xn:\ - :do=\ED:al=\E[L:dc=\E[P:dl=\E[M: -# Note several versions of blit. I don't know exactly what is what -# so please send me any corrections to this -- mrh -# From research!ikeya!rob Tue Aug 31 23:41 EDT 1982 -MY|blit|jerq|blit-pb|blit running teletype rom:\ - :do=^J:IC=\Ef%+ :DC=\Ee%+ :AL=\EF%+ :DL=\EE%+ :\ - :mi:dl=\EE!:ic=\Ef!:dc=\Ee!:al=\EF!:\ - :ce=\EK:cl=^L:cm=\EY%r%+ %+ :co#87:li#72:nd=\EC:\ - :up=\EA:ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:am:ul:pt:eo: -MZ|cbblit|columbus enhanced tty blit:\ - :vb=\E^G:so=\EU!:se=\EV!:us=\EU":ue=\EV":cd=\EJ:\ - :im=\EQ:ei=\ER:ic@:co#88:sf=\EG:tc=blit: -Ma|oblit|ojerq|first version of blit rom:\ - :do=^J:AL=\Ef%+ :DL=\Ee%+ :mi:dl=\EE:ei=\ER:im=\EQ:dc=\EO:da:db:\ - :al=\EF:cd=\EJ:ce=\EK:cl=^L:cm=\EY%r%+ %+ :co#88:li#72:nd=\EC:\ - :up=\EA:vb=\E^G:am:ul:pt:eo: -Mb|daleblit|daleterm|blit running Dale DeJager's ROM:\ - :ku=\EA:kd=\EB:kr=\EC:kl=\ED:so=\EU!:se=\EV!:us=\EU":ue=\EV":\ - :da@:db@:tc=oblit: -Mc|datapoint|dp3|dp3360|datapoint 3360:\ - :do=^J:am:le=^H:bs:cd=^_:ce=^^:cl=^]^_:co#82:ho=^]:li#25:nd=^x:up=^z: -#From: cbosgd!utcs!romwa@ucbvax.berkeley.edu (mark dornfeld) -# This termcap is for the LANPAR Technologies VISION 3220 -# terminal. The function key definitions k0-k5 represent the -# edit keypad: FIND, INSERT HERE, REMOVE, SELECT, PREV SCREEN, -# NEXT SCREEN. The key definitions k6-k9 represent the PF1 to -# PF4 keys. -v0|v3220|LANPAR Vision II model 3220/3221/3222:\ - :co#80:li#24:cl=\E[H\E[J:bs:am:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :is=\E>\E[?3l\E[?7h\E[?8h\E[p:ks=\E=:ke=\E>:\ - :kn#10:k0=\E[1~:k1=\E[2~:k2=\E[3~:k3=\E[4~:k4=\E[5~:k5=\E[6~:\ - :k6=\E[OP:k7=\E[OQ:k8=\E[OR:k9=\E[OS:\ - :ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:\ - :kh=\E[H:pt:sr=\EM:xn:\ - :dl=\E[M:dc=\E[P:ei=\E[4l:al=\E[L:im=\E[4h:mi: -# From ucbvax!faletti (Faletti@Berkeley) -# FREEDOM 100 by Liberty Electronics USA, SF. -# :kh=^^: left out because it precludes using change-to-alternate-file in vi. -# Basic Freedom 100 entry, works with VI at 1200 baud. -Md|f100|freedom100|freedom|freedom 100 no padding:\ - :am:bs:bw:mi:ms:pt:co#80:kn#20:li#24:\ - :ct=\E3:st=\E1:is=\Eg\Ef\r\Ed:kr=^L:\ - :cl=^Z:do=^J:ho=^^:kb=^H:kl=^H:kd=^V:\ - :ko=dc,al,dl,cl,bt,ce,cd:ku=^K:le=^H:nd=^L:\ - :ch=\E]%+ :cm=\E=%+ %+ :cv=\E[%+ :sr=\Ej:up=^K:\ - :al=\EE:bt=\EI:cd=\EY:ce=\ET:dc=\EW:dl=\ER:ei=\Er:im=\Eq:\ - :se=\EG0:so=\EG4:ue=\EG0:us=\EG8:as=\E$:ae=\E%:\ - :vb=\Eb\200\200\Ed:\ - :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ - :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k0=^AI\r:\ - :hs:ts=\Eg\Ef:fs=\r:ds=\Eg\Ef\r: -Me|f100-rv|freedom100-rv|freedom-rv|freedom100 with reverse video at 1200:\ - :is=\Eg\Ef\r\Eb:vb=\Ed\200\200\Eb:tc=freedom100: -# VI at 9600 baud (or EMACS at 1200 -- but may be more than is needed for emacs) -Mf|f100-v|freedom100-v|freedom-v|freedom100 for 9600 vi or 1200 emacs:\ - :al=6.5*\EE:dl=11.5*\ER:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=freedom100: -Mx|f100-v-rv|freedom100-v-rv|freedom-v-rv|freedom100 rev. vid. for 9600 vi:\ - :al=6.5*\EE:dl=11.5*\ER:is=\Eg\Ef\r\Eb:\ - :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:\ - :tc=freedom100: -# EMACS at 9600 baud -- this still needs some more work on the padding -My|f100-e|freedom100-e|freedom-e|freedom100 for 9600 emacs:\ - :al=8.5*\EE:dl=11.5*\ER:ip=6:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=freedom100: -Mz|f100-e-rv|freedom100-e-rv|freedom-e-rv|freedom100 rev. vid. for emacs 9600:\ - :al=8.5*\EE:dl=11.5*\ER:ip=6:is=\Eg\Ef\r\Eb:\ - :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:\ - :tc=freedom100: -zM|f110-v|freedom110-v|freedom110 for 9600 vi or 1200 emacs:\ - :is=\Eg\Ef\r\Ed\EO:dc=\EO\EW:im=\EO\Eq:\ - :al=6.5*\EE:dl=11.5*\ER:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=freedom100: -# (from kerch@lll-crg) -L1|f200|freedom200| Freedom 200 VDT by Liberty Electronics :\ - :if=/usr/share/lib/tabset/stdcrt:al=\EE:am:bs:bt=\EI:cd=\EY:\ - :ce=\ET:cl=^Z:cm=\E=%+ %+ :co#80:dc=\EW:dl=\ER:do=^V:\ - :ds=\Eh:ei=\Er:im=\Eq:is=\Eg\El\E\041\062:\ - :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ - :k6=^AE\r:k7=^AE\r:k8=^AF\r:k9=^AG\r:kd=^V:kr=L:\ - :ku=^K:li#24:ms:nd=^L:se=\EG0:so=\EG4:sr=\Ej:\ - :te=\EJ\E\\2\E|\041\061^L^Y:ti=\E\\1\EK\E|\041\061L^Y:\ - :ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:hs:i2=\E^O\Eg:\ - :ts=\Ef:fs=^M:ds=\E^N: -#From: Wayne Throop at Data General, RTP, NC, mcnc!rti-sel!rtp47!throopw -#Note that the cursor-down is ^Z. This means that to use DG terminals with -#the cshell or with system V shl, you must map the escape character to -#something other than ^Z. -#It ought to work for a D210 as well as a 605x. -Mg|605x|6053|dg6053|data general 6053:\ - :am:bc=^y:cl=^l:cm=4^p%r%.%.:nd=^x:up=^w:ce=^k:us=^t:\ - :ue=^u:so=^\:se=^]:kl=^y:kr=^x:ku=^w:kd=^z:kh=^h:ho=^h:\ - :ko=cl,ce:li#24:co#80:is=^r:do=^z:ul:nl=^m^j:k0=\036q:k1=\036r:\ - :k2=\036s:k3=\036t:k4=\036u:k5=\036v:k6=\036w:k7=\036x:k8=\036y:\ - :k9=\036z: -Mi|cdi|cdi1203:\ - :am:le=^H:bs:hc:os:co#80:dC#200:do=^J: -# ^S is an arrow key! Boy is this guy in for a surprise on v7! -Ml|sol:\ - :do=^J:am:le=^Y:ho=^H:bs:cm=\E^1%.\E^2%.:cl=^K:ho=^N:co#64:li#16:\ - :nd=^S:up=^W:kl=^A:kr=^S:ku=^W:kd=^Z:ma=^A^H^S ^W^P^Z^N: -Mn|xl83|Cybernex XL-83:\ - :do=^J:am:le=^H:bs:cd=62^P:ce=3^O:cl=62^L:cm=^W%+ %+ :co#80:ho=^K:\ - :kd=^J:kl=^H:ku=^N:li#24:up=^N:nd=^I: -Mo|omron|Omron 8025AG:\ - :do=^J:al=\EL:am:le=^H:bs:cd=\ER:co#80:ce=\EK:cl=\EJ:\ - :da:db:dc=\EP:dl=\EM:ho=\EH:li#24:nd=\EC:se=\E4:sf=\ES:\ - :so=\Ef:sr=\ET:up=\EA:ve=:vs=\EN: -Mp|plasma|plasma panel:\ - :am:le=^H:bs:cl=^L:co#85:ho=^^:li#45:nd=\030:up=\026:do=^J: -Mq|pty|psuedo teletype:\ - :do=^J:co#80:li#24:am:cl=\EJ:le=^H:bs:cm=\EG%+ %+ :nd=\EC:\ - :up=\EA:ce=\EK:cd=\EL:al=\EP:dl=\EN:ic=\EO:\ - :so=\Ea$:se=\Eb$:us=\Ea!:ue=\Eb!: -Mr|remote|virtual remote terminal:\ - :co#79:am@:nl@:tc=virtual: -Ms|swtp|ct82|southwest technical products ct82:\ - :do=^J:am:le=^d:bc=^d:\ - :al=^\^y:cd=^v:ce=^F:cl=^L:cm=%r^k%.%.:co#82:li#20:\ - :dl=^z:nd=^s:up=^a:so=^^^v:se=^^^F:dc=^\^h:ic=^\^x:ho=^p:\ - :ei=:sf=^n:sr=^o:ll=^c:im=:\ - :is=^\^r^^^s^^^d^]^w^i^s^^^]^^^o^]^w^r^i: -Mt|terak|Terak emulating Datamedia 1520:\ - :tc=dm1520: -Mu|sun|sun-color|Sun Microsystems Workstation console:\ - :am:bs:km:mi:ms:pt:li#34:co#80:cl=^L:cm=\E[%i%d;%dH:\ - :ce=\E[K:cd=\E[J:\ - :so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:rs=\E[s:\ - :md=\E[1m:mr=\E[7m:me=\E[m:\ - :al=\E[L:dl=\E[M:im=:ei=:ic=\E[@:dc=\E[P:\ - :AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP:\ - :up=\E[A:nd=\E[C:ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:\ - :k1=\E[224z:k2=\E[225z:k3=\E[226z:k4=\E[227z:k5=\E[228z:\ - :k6=\E[229z:k7=\E[230z:k8=\E[231z:k9=\E[232z: -M<|sun1|old Sun Microsystems Workstation console:\ - :am:bs:km:mi:ms:pt:li#34:co#80:cl=^L:cm=\E[%i%d;%dH:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:rs=\E[s:\ - :al=\E[L:dl=\E[M:im=:ei=:ic=\E[@:dc=\E[P:\ - :AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP:\ - :up=\E[A:nd=\E[C:ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:kh=\E[H:\ - :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: -# From john@ucbrenoir Tue Sep 24 13:14:44 1985 -Mu|sun-s|Sun Microsystems Workstation window with status line:\ - :hs:ts=\E]l:fs=\E\\:ds=\E]l\E\\:tc=sun: -Mu|sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs:\ - :hs:ts=\E]l:fs=\E\\:ds=\E]l\E\\:tc=sun-e: -M0|sun-48|Sun 48-line window:\ - :li#48:co#80:tc=sun: -M1|sun-34|Sun 34-line window:\ - :li#34:co#80:tc=sun: -M2|sun-24|Sun 24-line window:\ - :li#24:co#80:tc=sun: -M3|sun-17|Sun 17-line window:\ - :li#17:co#80:tc=sun: -M4|sun-12|Sun 12-line window:\ - :li#12:co#80:tc=sun: -M5|sun-1|Sun 1-line window for sysline:\ - :li#1:co#80:es:hs:ts=\r:fs=\E[K:ds=^L:tc=sun: -# emacs runs faster without insert character -M-|sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character:\ - :ic@:im@:ei@:tc=sun: -M+|sun-cmd|Sun Microsystems Workstation console with scrollable history:\ - :te=\E[>4h:ti=\E[>4l:tc=sun: -M=|sun-na|Sun Microsystems Workstation console with no arrow keys:\ - :ku@:kd@:kr@:kl@:tc=sun: -Mv|virtual|VIRTUAL|cb unix virtual terminal:\ - :do=^J:co#80:li#24:am:cl=\E\112:le=^H:bs:cm=\E\107%r%.%.:nd=\E\103:\ - :up=\E\101:ce=\E\113:cd=\E\114:al=\E\120:dl=\E\116:im=:ei=:ic=\E\117:\ - :da:db:kl=\E\104:kr=\E\103:ku=\E\101:kd=\E\102:kh=\E\105:\ - :so=\E\141\004:se=\E\142\004:us=\E\141\001:ue=\E\142\001: -Mw|it2|intertube2|intertec data systems intertube 2:\ - :do=^J:am:bs:cl=^L:co#80:ho=^A:li#25:up=^Z:ce=\EK:\ - :cm=^N%+ %+ :ch=^P%\102%.:cv=^K%.:nd=^F:do=\n:ll=^K^X\r:\ - :so=\E0P:se=\E0@: -Mx|delta|dd5000|delta data 5000:\ - :do=^J:am:le=^H:bs:cl=^NR:cm=^O%\068%+9%\068%+9:co#80:li#27:\ - :ho=^NQ:nc:nd=^Y:up=^Z:ce=^NU:dc=^NV:ma=^K^J^Z^P^Y :xr: -My|mdl110|cybernex mdl-110:\ - :cm=^P%+ %+ :co#80:li#24:am:cl=70^X:le=^H:bs:do=^J:\ - :nd=^U:up=^Z:ho=^Y:ce=145^N@^V:cd=145^NA^W:al=65^NA^N^]:\ - :dl=40^NA^N^^:im=:ei=:ic=3.5^NA^]:dm=:ed=:dc=3.5^NA^^:\ - :so=^NF:se=^NG:ta=43\t:ma=^Z^P:cd=6^N@^V -Mz|zen30|z30|zentec 30:\ - :do=^J:mi:co#80:li#24:ma=^L ^R^L^K^P:ul:\ - :al=1.5*\EE:le=^H:bs:ce=1.0*\ET:cm=\E=%+ %+ :cl=\E*:\ - :ho=^^:nd=^L:se=\EG0:so=\EG6:up=^K:im=\Eq:ei=\Er:\ - :am:dc=\EW:dl=1.5*\ER:cd=\EY: -m0|modgraph|mod|Modgraph terminal emulating vt100, 24x80:\ - :xn@:rf@:sr=5\EM\E[K:vs=\E\^9;0s\E\^7;1s:\ - :is=\E\^9;0s\E\^7;1s\E[3g\E\^11;9s\E\^11;17s\E\^11;25s\E\^11;33s\E\^11;41s\E\^11;49s\E\^11;57s\E\^11;65s\E\^11;73s\E\^11;81s\E\^11;89s:\ - :tc=vt100: -# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82) -# also, has a meta-key (MT) -# from goldberger@su-csli.arpa -MX|dmchat|dmchat version of datamedia 2500:\ - :al=1*^P\n^X^]^X^]:\ - :MT:km:\ - :dl=2^P^Z^X^]:\ - :tc=dm2500: -# # -------------------------------- -# -# N: ANN ARBOR -# -# Needs function keys added. -# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs. -# Highly modified 6/22 by Mike O'Brien. -# split out into several for the various screen sizes by dave-yost@rand -# Modifications made 3/82 by Mark Horton -# Modified by Tom Quarles at UCB for greater efficiency and more diversity -# status line moved to top of screen, vb removed 5/82 -# -# assumes the following setup: -# A: 0000 1010 0001 0000 -# B: 9600 0100 1000 0000 0000 1000 0000 17 19 -# C: 56 66 0 0 9600 0110 1100 -# D: 0110 1001 1 0 -# -# Briefly, the settings are for the following modes: -# (values are for bit set/clear with * indicating our preference -# and the value used to test these termcaps) -# Note that many of these settings are irrelevant to the termcap -# and are just set to the default mode of the terminal as shipped -# by the factory. -# -# A menu: 0000 1010 0001 0000 -# Block/underline cursor* -# blinking/nonblinking cursor* -# key click/no key click* -# bell/no bell at column 72* -# -# key pad is cursor control*/key pad is numeric -# return and line feed/return for <cr> key * -# repeat after .5 sec*/no repeat -# repeat at 25/15 chars per sec. * -# -# hold data until pause pressed/process data unless pause pressed* -# slow scroll/no slow scroll* -# Hold in area/don't hold in area* -# functions keys have default*/function keys disabled on powerup -# -# show/don't show position of cursor during page transmit* -# unused -# unused -# unused -# -# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 -# Baud rate (9600*) -# -# 2 bits of parity - 00=odd,01=even*,10=space,11=mark -# 1 stop bit*/2 stop bits -# parity error detection off*/on -# -# keyboard local/on line* -# half/full duplex* -# disable/do not disable keyboard after data transmission* -# -# transmit entire page/stop transmission at cursor* -# transfer/do not transfer protected characters* -# transmit all characters/transmit only selected characters* -# transmit all selected areas/transmit only 1 selected area* -# -# transmit/do not transmit line seperators to host* -# transmit/do not transmit page tab stops tabs to host* -# transmit/do not transmit column tab stop tabs to host* -# transmit/do not transmit graphics control (underline,inverse..)* -# -# enable*/disable auto XON/XOFF control -# require/do not require receipt of a DC1 from host after each LF* -# pause key acts as a meta key/pause key is pause* -# unused -# -# unused -# unused -# unused -# unused -# -# XON character (17*) -# XOFF character (19*) -# -# C menu: 56 66 0 0 9600 0110 1100 -# number of lines to print data on (printer) (56*) -# -# number of lines on a sheet of paper (printer) (66*) -# -# left margin (printer) (0*) -# -# number of pad chars on new line to printer (0*) -# -# printer baud rate (9600*) -# -# printer parity: 00=odd,01=even*,10=space,11=mark -# printer stop bits: 2*/1 -# print/do not print guarded areas* -# -# new line is: 01=LF,10=CR,11=CRLF* -# unused -# unused -# -# D menu: 0110 1001 1 0 -# LF is newline/LF is down one line, same column* -# wrap to preceeding line if move left from col 1*/don't wrap -# wrap to next line if move right from col 80*/don't wrap -# backspace is/is not destructive* -# -# display*/ignore DEL character -# display will not/will scroll* -# page/column tab stops* -# erase everything*/erase unprotected only -# -# editing extent: 0=display,1=line*,2=field,3=area -# -# unused -# -N0|aaa-29-np|aaa-29 with no padding (for psl):\ - :al=\E[L:ce=\E[K:cl=\E[H\E[J:dc=\E[P:dl=\E[M:ic=\E[@:tc=aaa-29: -NA|aaa-unk|ann arbor ambassador (internal - don't use this directly):\ - :do=^J:al=3\E[L:am:le=^H:bs:\ - :cd=\E[J:ce=5\E[K:cl=156\E[H\E[J:cm=\E[%i%d;%dH:co#80:\ - :dc=4\E[P:dl=3\E[M:ho=\E[H:ic=4\E[@:\ - :md=\E[1m:mr=\E[7m:mb=\E[5m:mk=\E[8m:me=\E[m:\ - :ku=\EM:kd=\ED:kl=\E[D:kr=\E[C:kh=\E[H:ko=cl,dc,dl,ce,cd:\ - :ks=\EP`?z~[H~[[J`>z~[[J`8xz~[M`4xz~[[D`6xz~[[C`2xz~[D\E\\:\ - :ke=\EP`?y~[H~[[J`>y~[[2J`8xy~[M`4xy~[[D`6xy~[[C`2xy~[D\E\\:\ - :ch=\E[%i%d`:ul:ei=:im=:pt:bw:bt=\E[Z:\ - :mi:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:up=\EM: -NB|aaa-18|ann arbor ambassador/18 lines:\ - :ti=\E[2J\E[18;0;0;18p:te=\E[60;0;0;18p\E[18;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;18p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#18:tc=aaa-unk: -NC|aaa-20|ann arbor ambassador/20 lines:\ - :ti=\E[2J\E[20;0;0;20p:te=\E[60;0;0;20p\E[20;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;20p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#20:tc=aaa-unk: -ND|aaa-22|ann arbor ambassador/22 lines:\ - :ti=\E[2J\E[22;0;0;22p:te=\E[60;0;0;22p\E[22;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;22p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#22:tc=aaa-unk: -NE|aaa-24|ann arbor ambassador/24 lines:\ - :ti=\E[2J\E[24;0;0;24p:te=\E[60;0;0;24p\E[24;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;24p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#24:tc=aaa-unk: -NF|aaa-26|ann arbor ambassador/26 lines:\ - :ti=\E[2J\E[26;0;0;26p:te=\E[60;0;0;26p\E[26;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;26p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#26:tc=aaa-unk: -NG|aaa-28|ann arbor ambassador/28 lines:\ - :ti=\E[2J\E[28;0;0;28p:te=\E[60;0;0;28p\E[28;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;28p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#28:tc=aaa-unk: -NH|aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines:\ - :ti=\E[2J\E[30;0;0;30p:te=\E[60;0;0;30p\E[30;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#30:tc=aaa-unk: -NI|aaa-36|ann arbor ambassador/36 lines:\ - :ti=\E[2J\E[36;0;0;36p:te=\E[60;0;0;36p\E[36;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;36p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#36:tc=aaa-unk: -NJ|aaa-40|ann arbor ambassador/40 lines:\ - :ti=\E[2J\E[40;0;0;40p:te=\E[60;0;0;40p\E[40;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;40p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#40:tc=aaa-unk: -NK|aaa-48|ann arbor ambassador/48 lines:\ - :ti=\E[2J\E[48;0;0;48p:te=\E[60;0;0;48p\E[48;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;48p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#48:tc=aaa-unk: -NL|aaa-60|ann arbor ambassador/60 lines:\ - :ti=\E[2J\E[60;0;0;60p:te=\E[60;0;0;60p\E[60;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;0;0;60p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#60:tc=aaa-unk: -NS|aaa-unk-s|ann arbor ambassador unknown with/status:\ - :es:hs:i2=\E7\E[>51h\E[H\E[2K\E[>51l\E8:\ - :ts=\E7\E[>51h\E[H\E[2K\E[%i%d`:fs=\E[>51l\E8:\ - :ds=\E7\E[>51h\E[H\E[2K\E[>51l\E8:\ - :tc=aaa-unk: -NM|aaa-18-s|ambassador|ann arbor ambassador/18 lines + status line:\ - :ti=\E[2J\E[18;1;0;18p:\ - :te=\E[60;1;0;18p\E[17;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;18p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#17:tc=aaa-unk-s: -NN|aaa-20-s|ambassador|ann arbor ambassador/20 lines + status line:\ - :ti=\E[2J\E[20;1;0;20p:\ - :te=\E[60;1;0;20p\E[19;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;20p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#19:tc=aaa-unk-s: -NO|aaa-22-s|ambassador|ann arbor ambassador/22 lines + status line:\ - :ti=\E[2J\E[22;1;0;22p:\ - :te=\E[60;1;0;22p\E[21;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;22p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#21:tc=aaa-unk-s: -NP|aaa-24-s|ambassador|ann arbor ambassador/24 lines + status line:\ - :ti=\E[2J\E[24;1;0;24p:\ - :te=\E[60;1;0;24p\E[23;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;24p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#23:tc=aaa-unk-s: -NQ|aaa-26-s|ambassador|ann arbor ambassador/26 lines + status line:\ - :ti=\E[2J\E[26;1;0;26p:\ - :te=\E[60;1;0;26p\E[25;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;26p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#25:tc=aaa-unk-s: -NR|aaa-28-s|ambassador|ann arbor ambassador/28 lines + status line:\ - :ti=\E[2J\E[28;1;0;28p:\ - :te=\E[60;1;0;28p\E[27;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;28p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#27:tc=aaa-unk-s: -NT|aaa-30-s|ambassador|ann arbor ambassador/30 lines + status line:\ - :ti=\E[2J\E[30;1;0;30p:\ - :te=\E[60;1;0;30p\E[29;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#29:tc=aaa-unk-s: -NU|aaa-36-s|ambassador|ann arbor ambassador/36 lines + status line:\ - :ti=\E[2J\E[36;1;0;36p:\ - :te=\E[60;1;0;36p\E[35;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;36p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#35:tc=aaa-unk-s: -NV|aaa-40-s|ambassador|ann arbor ambassador/40 lines + status line:\ - :ti=\E[2J\E[40;1;0;40p:\ - :te=\E[60;1;0;40p\E[39;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;40p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#39:tc=aaa-unk-s: -NW|aaa-48-s|ann arbor ambassador/48 lines+sl:\ - :ti=\E[2J\E[48;1;0;48p:te=\E[60;1;0;48p\E[47;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\EP`?y~[[2J~[[H\E7\E[60;1;0;48p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#47:tc=aaa-unk-s: -NX|aaa-60-s|ambassador|ann arbor ambassador/60 lines + status line:\ - :ti=\E[2J\E[60;1;0;60p:te=\E[60;1;0;60p\E[59;1H\E[J:\ - :is=\EP`+x~M\E\\\E[m\E7\E[60;1;0;60p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#59:tc=aaa-unk-s: -NY|aaa-18-rv|ambassador/18 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;18p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-18: -NZ|aaa-20-rv|ambassador/20 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;20p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-20: -Na|aaa-22-rv|ambassador/22 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;22p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-22: -Nb|aaa-24-rv|ambassador/24 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;24p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-24: -Nc|aaa-26-rv|ambassador/26 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;26p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-26: -Nd|aaa-28-rv|ambassador/28 lines+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;28p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-28: -Ne|aaa-30-rv|ann arbor ambassador/30 lines in reverse video:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-30: -Nf|aaa-36-rv|ann arbor ambassador/36 lines in reverse video:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;36p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-36: -Ng|aaa-40-rv|ann arbor ambassador/40 lines in reverse video:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;40p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-40: -Nh|aaa-48-rv|ann arbor ambassador/48 lines in reverse video:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;48p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-48: -Ni|aaa-60-rv|ann arbor ambassador/60 lines in reverse video:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;60p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-60: -Nj|aaa-18-rv-s|aaa-18-s-rv|ambassador/18 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[18;1;0;18p:te=\E[60;1;0;18p\E[17;1H\E[J:li#17:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;18p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nk|aaa-20-rv-s|aaa-20-s-rv|ambassador/20 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[20;1;0;20p:te=\E[60;1;0;20p\E[19;1H\E[J:li#19:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;20p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nl|aaa-22-rv-s|aaa-22-s-rv|ambassador/22 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[22;1;0;22p:te=\E[60;1;0;22p\E[21;1H\E[J:li#21:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;22p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nm|aaa-24-rv-s|aaa-24-s-rv|ambassador/24 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[24;1;0;24p:te=\E[60;1;0;24p\E[23;1H\E[J:li#23:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;24p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nn|aaa-26-rv-s|aaa-26-s-rv|ambassador/26 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[26;1;0;26p:te=\E[60;1;0;26p\E[25;1H\E[J:li#25:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;26p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -No|aaa-28-rv-s|aaa-28-s-rv|ambassador/28 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[28;1;0;28p:te=\E[60;1;0;28p\E[27;1H\E[J:li#27:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;28p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Np|aaa-rv|aaa-30-rv-s|aaa-30-s-rv|ambassador/30 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[30;1;0;30p:te=\E[60;1;0;30p\E[29;1H\E[J:li#29:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nq|aaa-36-rv-s|aaa-36-s-rv|ambassador/36 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[36;1;0;36p:te=\E[60;1;0;36p\E[35;1H\E[J:li#35:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;36p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nr|aaa-40-rv-s|aaa-40-s-rv|ambassador/40 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[40;1;0;40p:te=\E[60;1;0;40p\E[39;1H\E[J:li#39:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;40p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Ns|aaa-48-rv-s|aaa-48-s-rv|ambassador/48 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[48;1;0;48p:te=\E[60;1;0;48p\E[47;1H\E[J:li#47:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;48p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -Nt|aaa-60-rv-s|aaa-60-s-rv|ambassador/60 lines+sl+rv:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :ti=\E[2J\E[60;1;0;60p:te=\E[60;1;0;60p\E[59;1H\E[J:li#59:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;60p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :tc=aaa-unk-s: -NL|aaa-24-ctxt|ann arbor ambassador/24 lines:\ - :ti=\E[30;1H\E[K\E[24;0;0;24p:te=\E[60;1;0;24p\E[60;1H\E[K:tc=aaa-24: -NL|aaa-24-rv-ctxt|ambassador/24+rv:\ - :ti=\E[30;1H\E[K\E[24;0;0;24p:te=\E[60;1;0;24p\E[60;1H\E[K:tc=aaa-24-rv: -NL|aaa-s-ctxt|aaa-30-s-ctxt|hairy aaa:\ - :ti=\E[30;1H\E[K\E[30;1;0;30p:te=\E[60;1;0;30p\E[59;1H\E[K:tc=aaa-30-s: -NL|aaa-s-rv-ctxt|aaa-30-s-rv-ctxt|hairy aaa:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;1;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :ti=\E[30;1H\E[K\E[30;1;0;30p:te=\E[60;1;0;30p\E[59;1H\E[K:\ - :li#29:tc=aaa-unk-s: -NH|aaa-ctxt|aaa-30-ctxt|ann arbor ambassador/30 lines:\ - :ti=\E[30;0;0;30p:te=\E[60;0;0;30p\E[60;1H\E[K:tc=aaa-30: -NH|aaa-rv-ctxt|aaa-30-rv-ctxt|ann arbor ambassador/30 lines:\ - :ti=\E[30;0;0;30p:te=\E[60;0;0;30p\E[60;1H\E[K:\ - :md=\E[1;7m:mr=\E[m:mb=\E[5;7m:mk=\E[7;8m:me=\E[7m:\ - :us=\E[4;7m:ue=\E[7m:se=\E[7m:so=\E[m:\ - :is=\EP`+x~M\E\\\E[7m\E7\E[60;0;0;30p\E[3g\E[f\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E[8a\EH\E8\E[>6h\E[1Q:\ - :li#30:tc=aaa-unk: -Nd|aaa-db|ann arbor ambassador 30/destructive backspace:\ - :ti=\E[H\E[J\E[30;0;0;30p:te=\E7\E[60;0;0;30p\E8:li#30:\ - :is=\E[60;0;0;30p\E[H\E[J\E[1Q\E[m\E[20l\E[>30h:le=\E[D:bc=\E[D:bs@:\ - :tc=aaa-unk: -N1|aa|annarbor|4080|ann arbor 4080:\ - :do=^J:pt:ct=^\^P^P:st=^]^P1:cm=^O%r%\066%.%>^S^L%+@:\ - :co#80:li#40:le=^H:bs:cl=2^L:up=^N:nd=^_:ho=^K:am:\ - :kb=^^:kd=^J:ku=^N:kl=^H:kr=^_:kh=^K:ma=^_ ^N^P: -# ^L# -------------------------------- -# -# S: SCREEN -# -# Screen is a curses based virtual terminal multiplexor. -SC|screen|VT 100/ANSI X3.64 virtual terminal:\ - :am:xn:ms:mi:G0:km:\ - :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bs:bt=\E[Z:\ - :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:ct=\E[3g:\ - :do=^J:nd=\E[C:pt:rc=\E8:rs=\Ec:sc=\E7:st=\EH:up=\EM:\ - :le=^H:bl=^G:cr=^M:it#8:ho=\E[H:nw=\EE:ta=^I:is=\E)0:\ - :li#24:co#80:us=\E[4m:ue=\E[24m:so=\E[3m:se=\E[23m:\ - :mb=\E[5m:md=\E[1m:mr=\E[7m:me=\E[m:sr=\EM:al=\E[L:\ - :AL=\E[%dL:dl=\E[M:DL=\E[%dM:cs=\E[%i%d;%dr:dc=\E[P:\ - :DC=\E[%dP:im=\E[4h:ei=\E[4l:IC=\E[%d@:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:vb=\Eg:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ - :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:\ - :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:F1=\E[23~:F2=\E[24~:\ - :kh=\E[1~:kI=\E[2~:kD=\E[3~:kH=\E[4~:@7=\E[4~:kP=\E[5~:\ - :kN=\E[6~:eA=\E(B\E)0:as=^N:ae=^O:\ - :vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l:\ - :Co#8:pa#64:AF=\E[3%dm:AB=\E[4%dm:op=\E[39;49m:AX:\ - :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++,,hhII00: -SW|screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols:\ - :co#132:tc=screen: -# # -------------------------------- -# -# T: TELETYPE -# -# We need descriptions for the model 40. There are known to be at least three -# flavors of the 40, both seem more like IBM half duplex forms fillers than -# ASCII terminals. They have lots of awful braindamage, such as printing -# a visible newline indicator after each newline. The 40-1 is a half duplex -# terminal and is hopeless. The 40-2 is braindamaged but has hope and is -# described here. The 40-4 is a 3270 lookalike and beyond hope. -# The terminal has visible bell but I don't know it - it's -# null here to prevent it from showing the BL character. -# There is an \EG in nl because of a bug in vi (if stty says you have -# a "newline" style terminal (-crmode) vi figures all it needs is nl -# to get crlf, even if cr is not ^M.) -T0|40|tty40|ds40|ds40/2|ds40-2|dataspeed40|teletype dataspeed 40/2:\ - :cl=160\ER:cd=160\EJ:al=160\EL:dl=160\EM:dc=50\EP:im=:ei=:ic=50\E\^:\ - :nd=\EC:up=\E7:bs:cr=\EG:nl=\EG\EB:do=\EB:co#80:li#24:vb=:\ - :so=\E3:se=\E4: -T3|33|tty33|tty|model 33 teletype:\ - :do=^J:co#72:hc:os: -T4|43|tty43|model 43 teletype:\ - :do=^J:kb=^h:am:le=^H:bs:hc:os:co#132: -T7|37|tty37|model 37 teletype:\ - :do=^J:le=^H:bs:hc:hu=\E8:hd=\E9:up=\E7:os: -# From jwb Wed Mar 31 13:25:09 1982 remote from ihuxp -# This entry appears to avoid the top line - I have no idea why. -TT|4424|tty4424|teletype 4424M:\ - :al=\EL:da:db:ip=2:im=:ei=:ic=\E\^:dc=\EP:dl=\EM:\ - :co#80:li#23:am:cl=\E[2;H\E[J:bs:cm=\E[%i%2;%2H\E[B:\ - :nd=\E[C:up=\E[A:pt:mi:sr=\ET:\ - :ce=\E[K:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :is=\E[m\E[2;24r:\ - :kd=\E[B:kl=\E[D:ku=\E[A:kr=\E[C:\ - :kh=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: -# Teletype blit. -TD|dmd|5620|ttydmd|tty5620|5620 terminal 88 columns:\ - :co#88:li#70:am:bs:pt:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :cl=\E[H\E[J:cd=\E[J:ce=\E[K:al=\E[L:dl=\E[M:do=^J:\ - :im=:ei=:ic=\E[@:dc=\E[P:sr=\E[T:sf=\E[S:le=^H:kb=^H:\ - :kl=\E[D:kr=\E[C:ku=\E[A:kd=\E[B:kh=\E[H:ho=\E[H:ll=\E[70;1H:\ - :AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP:rc=\E8:rs=\Ec:sc=\E7:\ - :so=\E[7m:se=\E[0m:us=\E[4m:ue=\E[0m:ms:me=\E[0m:mr=\E[7m: -# # -------------------------------- -# -# V: VISUAL -# -# The Visual 200 beeps when you type a character in insert mode. -# This is a horribly obnoxious misfeature, and some of the entries -# below try to get around the problem by ignoring the feature or -# turning it off when inputting a character. They are said not to -# work well at 300 baud. (You could always cut the wire to the bell!) -#From mike@brl-vgr Mon Nov 14 08:34:29 1983 -V2|vi200|vis200|visual 200 with function keys:\ - :so=\E4:se=\E3:ms:do=^J:\ - :al=\EL:am:le=^H:bs:cd=\Ey:ce=\Ex:cl=\Ev:\ - :cm=\EY%+ %+ :co#80:dc=\EO:dl=\EM:ho=\EH:\ - :im=:ei=:ic=\Ei \b\Ej:\ - :is=\E3\Eb\Ej\E\\\El\EG\Ec\Ek:\ - :k0=\EP:k1=\EQ:k2=\ER:k3=\E :k4=\E!:k5=\E":k6=\E#:\ - :k7=\E$:k8=\E%:k9=\E&:kl=\ED:kr=\EC:ku=\EA:kd=\EB:kh=\EH:\ - :li#24:nd=\EC:pt:sr=\EI:up=\EA:vs=\Ed:ve=\Ec: -VR|vi200-rv-ic|visual 200 reverse video using insert char:\ - :ei=\Ej:im=\Ei:ic@:tc=vi200-rv: -# The older Visuals didn't come with function keys. This entry uses -# ks and ke so that the keypad keys can be used as function keys. -# If your version of vi doesn't support function keys you may want -# to use V2. -Vf|vi200-f|visual|visual 200 no function keys:\ - :do=^J:al=\EL:am:le=^H:bs:cd=\Ey:ce=4*\Ex:cl=\Ev:\ - :cm=\EY%+ %+ :co#80:dc=4*\EO:dl=4*\EM:ho=\EH:\ - :im=:ei=:ic=\Ei \b\Ej:\ - :is=\E3\Eb\Ej\E\\\El\EG\Ed\Ek:ks=\E=:ke=\E>:\ - :k0=\E?p:k1=\E?q:k2=\E?r:k3=\E?s:k4=\E?t:k5=\E?u:k6=\E?v:\ - :k7=\E?w:k8=\E?x:k9=\E?y:kl=\ED:kr=\EC:ku=\EA:kd=\EB:kh=\EH:\ - :li#24:nd=\EC:pt:sr=\EI:up=\EA:vs=\Ed:ve=\Ec: -Vr|vi200-rv|visual 200 reverse video:\ - :so=\E4:se=\E3:sr@:vs@:ve@:tc=vi200: -Vt|vi200-ic|visual 200 using insert char:\ - :ei=\Ej:im=\Ei:ic@:tc=vi200: -# From: jbs@athena.mit.edu Jeff Siegal -V5|vi55|Visual 55:\ - :im=\Ea:ei=\Eb:mi:dc=\Ew:dm=:ed=:al=\EL:dl=\EM:cs=\E_%+A%+A:\ - :ho=\EH:cl=\Ev:is=\Ev\E_AX\Eb\EW\E9P\ET:so=\EU:se=\ET:ms:\ - :do=^J:le=^H:bs:cd=\EJ:ce=\EK:cm=\EY%+ %+ :co#80:li#24:\ - :nd=\EC:pt:sr=\EI:up=\EA:ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: -# # -------------------------------- -# -# X: TEKTRONIX -# -Xa|tek|tek4012|4012|tektronix 4012:\ - :do=^J:is=\E^O:le=^H:bs:cl=1000\E^L:co#75:ns:li#35:os: -Xb|tek4013|4013|tektronix 4013:\ - :as=\E^N:ae=\E^O:dF#1000:tc=4012: -Xc|tek4014|4014|tektronix 4014:\ - :is=\E^O\E9:co#81:li#38:dF#1000:tc=tek4012: -Xd|tek4015|4015|tektronix 4015:\ - :as=\E^N:ae=\E^O:tc=4014: -Xe|tek4014-sm|4014-sm|tektronix 4014 in small font:\ - :is=\E^O\E\072:co#121:li#58:tc=tek4014: -Xf|tek4015-sm|4015-sm|tektronix 4015 in small font:\ - :as=\E^N:ae=\E^O:tc=4014-sm: -# I think the 1000UP is supposed to be so expensive it never happens. -X4|tek4023|4023|tex|tektronix 4023:\ - :do=^J:so=^_P:se=^_@:cm=\034%r%+ %+ :nd=\t:le=^H:\ - :bs:cl=4\E^L:co#80:li#24:am:up=1000UP:vt#4: -# Can't use cursor motion because it's memory relative, and because -# it only works in the workspace, not the monitor. Same for home. -# Likewise, standout only works in the workspace. -# 145 ms padding on al and AL taken out since it doesn't seem to be needed much. -X5|4025|4027|4024|tek4025|tek4027|tek4024|4025cu|4027cu|tektronix 4024/4025/4027:\ - :sf=^F^J:do=^F^J:is=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r:\ - :ks=^_lea p4 /h/\r^_lea p8 /k/\r^_lea p6 / /\r^_lea p2 /j/\r^_lea f5 /H/\r^_lea p5 /H/\r:\ - :ke=^_lea p2\r^_lea p4\r^_lea p6\r^_lea p8\r^_lea p5\r^_lea f5\r:\ - :am:le=^H:bs:da:db:pt:li#34:co#80:cl=^_era\r\n\n:up=^K:nd=^_rig\r:\ - :al=^_up\r^_ili\r:dl=^_dli\r^F:\ - :dc=^_dch\r:im=^_ich\r:ei=^F^_dow\r^K:nl=^F\n:\ - :cd=^_dli 50\r:CC=^_:AL=^_up\r^_ili %d\r:DL=^_dli %d\r^F:\ - :UP=^_up %d\r:DO=^_dow %d\r:LE=^_lef %d\r:RI=^_rig %d\r: -X7|4025-17|4027-17|tek 4025 17 line window:\ - :li#17:tc=4025: -X8|4025-17ws|4027-17ws|tek 4025 17 line window in workspace:\ - :is=\41com 31\r\n^_sto 9,17,25,33,41,49,57,65,73\r^_wor 17\r^_mon 17\r:\ - :ti=^_wor h\r:te=^_mon h\r:so=^_att e\r:se=^_att s\r:tc=4025-17: -X9|4025ex|4027ex|tek 4025 w/!:\ - :ti=\41com 31\r:te=^_com 33\r:\ - :is=^_com 33\r\n\41sto 9,17,25,33,41,49,57,65,73\r:tc=4025: -# From jcoker @ ucbic -Xp|4107|tek4107|Tektronix 4107 graphics terminal with memory:\ - :ti=\E[?6l\E[H\E[J:te=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f:\ - :is=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\ - :li#32:do=^J:al=3\E[L:xn:am:le=^H:bs:cd=\E[J:\ - :ce=5\E[K:cl=156\E[H\E[J:cm=\E[%i%d;%dH:co#80:dc=4\E[P:dl=3\E[M:\ - :ho=\E[H:ic=4\E[@:md=\E[1m:mr=\E[7m:mb=\E[5m:me=\E[m:ku=\EM:\ - :kd=\ED:kl=\E[D:kr=\E[C:kh=\E[H:\ - :ul:ei=:im=:pt:bw:bt=\E[Z:mi:nd=\E[C:se=\E[m:so=\E[7m:\ - :ue=\E[m:us=\E[4m:up=\EM: -# Tektronix 4107 with sysline -Xq|4107-s|tek4107-s|Tektronix 4107 with sysline but no memory:\ - :is=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\ - :es:hs:i2=\E7\E[?6l\E[2K\E[?6h\E8:ts=\E7\E[?6l\E[2K\E[;%i%df:\ - :fs=\E[?6h\E8:ds=\E7\E[?6l\E[2K\E[?6h\E8:tc=4107: -# From cbosg!teklabs!davem Wed Sep 16 21:11:41 1981 -# Here's the comamnd file that I use to get rogue to work on the 4025. -# It should work with any program using the old curses (e.g. it better -# not try to scroll, or cursor addressing won't work. Also, you can't -# see the cursor.) -# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh) -Xr|4025-cr|tek 4025 for curses and rogue:\ - :is=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r:\ - :am:le=^H:bs:pt:li#33:co#80:cm=^_jum%i%d,%d;:up=^K:\ - :do=^F^J:cl=^_era;:nd=^_rig;:nl=^F\n:ti=^_wor 33h:te=^_wor 0: -# next two lines commented out since curses only allows 128 chars, sigh. -# :ti=^_lea p1/b/^_lea p2/j/^_lea p3/n/^_lea p4/h/^_lea p5/ /^_lea p6/l/^_lea p7/y/^_lea p8/k/^_lea p9/u/^_lea p./f/^_lea pt/`era w/13^_lea p0/s/^_wor 33h:\ -# :te=^_lea p1^_lea p2^_lea p3^_lea p4^_lea pt^_lea p5^_lea p6^_lea p7^_lea p8^_lea p9/la/13^_lea p.^_lea p0^_wor 0: -# The 4110 series may be a wonderful graphics series, but they make the 4025 -# look good for screen editing. In the dialog area, you can't move the cursor -# off the bottom line. Out of the dialog area, ^K moves it up, but there -# is no way to scroll. -Xs|4112|4114|tek4112|tektronix 4110 series:\ - :is=\E3!1:li#34:co#80:am:al=\E[L:bs:bt=\E[Z:\ - :cd=\E[0J:ce=\E[0K:cl=\E[2J\E[0;0H:cm=\E[%i%d;%dH:\ - :db:dc=\E[P:dl=\E[M:ic=\E[@:im=:nd=\E[C:se=\E[m:\ - :so=\E[7m:ue=\E[m:up=\EM:us=\E[4m:vs=:ve=:\ - :sr=\E7\E[0;0H\E[L\E8:sf=\E7\E[0;0H\E[M\E8: -Xt|4112-nd|4112 not in dialog area:up=^K:ns:tc=4112: -Xu|4112-5|4112 in 5 line dialog area:li#5:tc=4112: -Xv|4113|tek4113|tektronix 4113 color graphics, 5 line dialog area:\ - :le=^H:do=^J:eo:da:bs:am:li#5:co#80:is=\EKA1\ELL5\ELV0\ELV1:\ - :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0:\ - :cl=\ELZ:uc=^H\ELM1_\ELM0:nd=\LM1 \LM0:\ - :.as=\E^N:.ae=\E^O: -Xw|4113-34|tek4113-34|tektronix 4113 color graphics, 34 line dialog area:\ - :is=\EKA1\ELLB2\ELV0\ELV1:li#34:tc=tek4113: -# ns hidden from vi to allow visual mode. APL font (as, ae) not supported here. -# uc is slow, but looks nice. Suggest setenv MORE -up . vb needs enough delay -# to let you see the background color being toggled. -Xy|4113-nd|tek4113-nd|tektronix 4113 color graphics, no dialog area:\ - :le=^H:do=^J:nd=\t:up=^K:ll=\ELF hl @:ho=\ELF7l\177 @:\ - :eo:bs:am:li#34:co#80:is=\ELZ\EKA0\ELF7l\177 @:vs=\ELZ\EKA0:\ - :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0:\ - :cl=\E\f:uc=^H\EMG1_\EMG0:so=\EMT2:se=\EMT1:\ - :.ns:.as=\E^N:.ae=\E^O: -Xz|4105|tek4105:\ - :al=\E[1L:am:bs:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%2;%2H:co#80:\ - :dc=\E[1P:dl=\E[1M:do=\E[1B:ho=\E[H:im=\E[4h:li#30:mi:nd=\E[1C:\ - :as=\E[1m:ae=\E[0m:ms:pt:se=\E[0m:so=\E[7m:up=\E[1A:kb=^h:ku=\E[1A:\ - :kd=\E[1B:kl=\E[1D:kr=\E[1C:ul:us=\E[4m:ue=\E[0m:is=\E%!1\E[?6l\E[0m:\ - :mr=\E[<3m:md=\E[<4m:mh=\E[<6m:mb=\E[<7m:me=\E[<1m:ti=\E%!1\E[?6l:xt: -# This entry is from Tek. Inc. (Brian Biehl) -Xz|4115|tek4115|Tektronix 4115:\ - :co#80:li#34:\ - :al=\E[L:am:bc=\E[D:bs:bt=\E[Z:cd=\E[J:ce=\E[K:\ - :cl=\E[;H\E[2J:cm=\E[%i%d;%dH:da:db:dc=\E[P:dl=\E[M:do=\E[B:\ - :ei=\E[4l:eo:ho=\E[;H:im=\E[4h:if=/usr/share/lib/tabset/vt100:\ - :is=\E%\0410\E%\014\ELV0\EKA1\ELBB2\ENU@\075\ELLB2\ELM0\ELV1\EKYA?\E%\0411\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[0m:\ - :kb=^H:ke=\E>:ks=\E=:nd=\E[C:pt:se=\E[m:so=\E[7m:sr=\EM:\ - :te=\E%\0410\ELBG8\E%\0411\E[34;1H\E[J: - :ti=\E%\0410\ELBB2\E%\0411:\ - :ue=\E[m:up=\E[A:us=\E[4m:\ - :ve=\E%\0410\ELBG8\E%\0411\E[34;1H:\ - :vs=\E%\0410\ELBB2\E%\0411: -# The tek4125 emulates a vt100 incorrectly - the scrolling region -# command is ignored. The following entry replaces the cs with the -# needed al, dl, and im; removes some cursor pad commands that the tek4125 -# chokes on; and adds a lot of initialization for the tek dialog area. -# Note that this entry uses all 34 lines and sets the cursor color to green -# Steve Jacobson 8/85 -XB|tek4125:\ - :ks=\E=:li#34:\ - :is=\EQD1\EUX03\E%\!0\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:dl=\E[1M:\ - :al=\E[1L:cs@:sc@:rc@:im=\E1:tc=vt100: -# From carolyn@dali.berkeley.edu Thu Oct 31 12:54:27 1985 -XA|4404|tek4404:\ - :al=\E[1L:bs:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:co#80:\ - :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[1M:do=^J:ei=\E[4l:ho=\E[H:im=\E[4h:\ - :kd=\E[B:ke=\E[?1h:kl=\E[D:kr=\E[C:ks=\E[?1l:ku=\E[A:li#32::mb=\E[5m:\ - :md=\E[1m:me=\E[m:nd=\E[C:pt:rc=\E8:sc=\E7:se=\E[27m:so=\E[7m:\ - :ta=\E[2I:ti=\E%\!1\E[1;32r\E[?6l\E>:te=\E[1;1H\E[0J\E[?6h\E[?1l:\ - :ue=\E[m:up=\E[A:us=\E[4m: -# # -------------------------------- -# -# a: ADDS -# -# Regent: lowest common denominator, works on all regents. -a0|regent|Adds Regent Series:li#24:co#80:am:cl=^L:ll=^A:up=^Z:\ - :bs:bc=^U:nd=^F:do=^J:ho=\EY : -# Regent 100 has a bug where if computer sends escape when user is holding -# down shift key it gets confused, so we avoid escape. -a1|regent100|Adds Regent 100:k0=^B1^M:k1=^B2^M:k2=^B3^M:k3=^B4^M:\ - :k4=^B5^M:k5=^B6^M:k6=^B7^M:k7=^B8^M:\ - :l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:\ - :so=\E0P:ue=\E0@:us=\E0`:se=\E0@:\ - :cm=^K%+ %B^P%.:ug#1:sg#1:tc=regent: -a2|regent20|Adds Regent 20:cd=\Ek:ce=\EK:cm=\EY%+ %+ :tc=regent: -a3|regent25|Adds Regent 25:kh=^A:kl=^U:kr=^F:ku=^Z:kd=^J:tc=regent20: -a4|regent40|Adds Regent 40:k0=^B1^M:k1=^B2^M:k2=^B3^M:k3=^B4^M:\ - :k4=^B5^M:k5=^B6^M:k6=^B7^M:k7=^B8^M:\ - :l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:\ - :al=2*\EM:dl=2*\El:\ - :so=\E0P:ue=\E0@:us=\E0`:se=\E0@:ug#1:sg#1:tc=regent25: -a5|regent40+|Adds Regent 40+:is=\EB:tc=regent40: -a6|regent60|regent200|Adds Regent 60:se=\ER\E0@\EV:so=\ER\E0P\EV:dc=\EE:ei=\EF:\ - :im=\EF:is=\EV\EB:ko=dc,im,ei:tc=regent40+: -a7|regent60na|regent 60 w/no arrow keys:\ - kl@:kr@:ku@:kd@:tc=regent60: -# Note: if return acts weird on a980, check internal switch #2 -# on the top chip on the CONTROL pc board. -ac|a980|adds consul 980:\ - :do=^J:al=13\E^N:am:le=^H:bs:cl=^L\200^K@:cm=^K%+@\E^E%2:co#80:\ - :dl=13\E^O:k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:\ - :k8=\E8:k9=\E9:li#24:nd=\E^E01:so=^Y^^^N:se=^O:up=9: -as|viewpt60|viewpoint60|addsviewpoint60|adds viewpoint60:\ - :tc=regent40: -# From Onyx:edward Thu Jul 9 09:27:33 1981 -av|viewpoint|addsviewpoint|adds viewpoint:\ - :do=^J:am:le=^H:bs:li#24:co#80:cm=\EY%+ %+ :cd=\Ek:ce=\EK:\ - :up=^Z:cl=^L:ll=^A:kl=^U:kd=^J:ku=^Z:kh=^A:\ - :so=^N:se=^O:us=^N:ue=^O:is=^O\E0`:vs=^O\E0P:ve=^O\E0`: -# # -------------------------------- -# -# b: BEEHIVE -# -# Reports are that most of these Beehive entries (except superbee) have not been -# tested and do not work right. se is a trouble spot. Be warned. -b2|sb2|sb3|fixed superbee:\ - :xb@:tc=superbee: -# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. -# good grief - does this entry make sg/ug when it doesn't have to? -# look at those spaces in se/so. Seems strange to me... -bh|bh3m|beehiveIIIm:\ - :if=/usr/share/lib/tabset/beehive:do=^J:\ - :al=160^S:am:le=^H:bs:cd=^R:ce=^P:cl=^E^R:\ - :co#80:dl=350^Q:ho=^E:li#20:ll=^E^K:\ - :nd=^L:pt:se= ^_:so=^] :up=^K: -# This loses on lines > 80 chars long, use at your own risk -bi|superbeeic|super bee with insert char:\ - :ic=:im=\EQ:ei=\ER:tc=superbee: -bm|microb|microbee|micro bee series:\ - :do=^J:am:le=^H:bs:cd=\EJ:ce=\EK:cl=\EE:co#80:cm=\EF%+ %+ :\ - :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:k9=\Ex:\ - :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:\ - :li#24:nd=\EC:pt:se=\Ed@ :so= \EdP:ue=\Ed@:up=\EA:us=\Ed`: -# Superbee - f1=escape, f2=^C. -# Note: there are at least 3 kinds of superbees in the world. The sb1 -# holds onto escapes and botches ^C's. The sb2 is the best of the 3. -# The sb3 puts garbage on the bottom of the screen when you scroll with -# the switch in the back set to CRLF instead of AEP. This description -# is tested on the sb2 but should work on all with either switch setting. -# The f1/f2 business is for the sb1 and the :xb: can be taken out for -# the other two if you want to try to hit that tiny escape key. -# This description is tricky: being able to use cm depends on there being -# 2048 bytes of memory and the hairy nl string. -bs|sb1|superbee|superb|beehive super bee:\ - :ct=\E3:st=\E1:is=\EH\EJ:do=^J:\ - :sf=\n\200\200\200\n\200\200\200\EA\EK\200\200\200\ET\ET:\ - :am:le=^H:bs:cd=3\EJ:ce=3\EK:cl=3\EH\EJ:co#80:cm=\EF%r%3%3:cr=1000\r:\ - :dC#10:da:db:xb:dc=3\EP:dl=100\EM:so=\E_1:se=\E_3:\ - :li#25:nl=\n\200\200\200\n\200\200\200\EA\EK\200\200\200\ET\ET:\ - :nd=\EC:pt:up=\EA:ho=\EH:ve=\n:\ - :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ - :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA: -# # -------------------------------- -# -# c: CONCEPT (HUMAN DESIGNED SYSTEMS) -# -# From vax135!hpk Sat Jun 27 07:41:20 1981 -# Extensive changes to c108 by arpavax:eric Feb 1982 -# -# There seem to be a number of different versions of the C108 PROMS -# (with bug fixes in its Z-80 program). -# The first one that we had would lock out the keyboard of you -# sent lots of short lines (like /usr/dict/words) at 9600 baud. -# Try that on your C108 and see if it sends a ^S when you type it. -# If so, you have an old version of the PROMs. -# The old one also messed up running vi with a 132-character line-length. -# You should configure the C108 to send ^S/^Q before running this. -# It is much faster (at 9600 baud) than the c100 because the delays -# are not fixed. -# new status line display entries for c108: -# hs - has status capability -# es - escape sequences are OK on status line -# i2 - second init str - setup term for status display - set programmer mode, -# select window 2, define window at last line of memory, -# set bkgnd stat mesg there, select window 0. -# ts - to status line - select window 2, home cursor, erase to end-of-window, -# 1/2 bright on, goto(line#0, col#?) -# fs - from status line - 1/2 bright off, select window 0 -# ds - disable status display - set bkgnd status mesg with illegal window # -# -# the following two entries are for emacs -- they are just like the regular -# entries except that they have buffer overflow control OFF -c0|e108-8p:\ - :i2=\EU\E z"\Ev^A\177 !p\E ;"\E z \Ev ^A\177p\Ep\n:\ - :te=\Ev ^A\177p\Ep\r\n:tc=e108-4p: -c1|e108-4p:\ - :is=\EU\E f\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E!\E^G!\E^HA@ :\ - :tc=c108-4p: -c2|c108|c108-8p|concept108-8p|concept 108 w/8 pages:\ - :i2=\EU\E z"\Ev^A\177 !p\E ;"\E z \Ev ^A\177p\Ep\n:\ - :te=\Ev ^A\177p\Ep\r\n:tc=c108-4p: -c3|c108-4p|concept108-4p|concept 108 w/4 pages:\ - :es:hs:ts=\E z"\E?\E^C\Ea %+ :fs=\E z :ds=\E ;\177:\ - :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \177p\Ep\n:do=^J:pt:\ - :is=\EU\E F\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E!\E^G!\E^HA@ :\ - :ti=\EU\Ev 8p\Ep\r:te=\Ev \177p\Ep\r\n:\ - :al=\E^R:le=^H:bs:cd=\E^C:ce=\E^S:cl=\E?\E^E:cm=\Ea%+ %+ :co#80:\ - :dc=\E^Q:dl=\E^B:ei=\E\200:eo:im=\E^P:li#24:mi:nd=\E=:\ - :kb=^h:ul:up=\E;:db:us=\EG:ue=\Eg:vs=\EW:ve=\Ew:am:xn:\ - :vb=\Ek\200\200\200\200\200\200\200\200\200\200\200\200\200\200\EK:\ - :ks=\EX:ke=\Ex:ku=\E;:kd=\E<:kl=\E>:kr=\E=:kh=\E?:\ - :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\72:\ - :so=\ED:se=\Ed:mh=\EE:md=\ED:mr=\ED:me=\Ee\Ed\Eg\Ec: -c4|c108-rv-8p|concept108-rv-8p|concept 108 w/8 pages, in reverse video:\ - :vb=\EK\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ek:\ - :is=\EU\E F\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\47\E\E!\E^G!\E^HA@ :\ - :ts=\E z"\E?\E^C\EE\Ea %+ :fs=\Ee\E z :tc=c108-8p: -c5|c108-rv-4p|concept108-rv-4p|concept 108 w/4 pages, in reverse video:\ - :vb=\EK\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ek:\ - :is=\EU\E F\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\47\E\E!\E^G!\E^HA@ :\ - :ts=\E z"\E?\E^C\EE\Ea %+ :fs=\Ee\E z :tc=c108-4p: -c6|c108-na|c108-na-8p|concept108-na-8p|concept 108 w/8 pages, no arrows:\ - :ks@:ke@:k7=\E;:k8=\E<:k9=\E=:tc=c108-8p -c7|c108-rv-na|c108-rv-na-8p|concept 108 w/8 pages, no arrows in rev video:\ - :ts=\E z"\E?\E^C\EE\Ea %+ :fs=\Ee\E z :\ - :ks@:ke@:k7=\E;:k8=\E<:k9=\E=:tc=c108-rv-8p -# this needs new frotz in the cm capability for 2-char addrs when > 95.... -c8|c108-w|c108-w-8p|concept108-w-8p|concept 108 w/8 pages in wide mode:\ - :is=\EU\E F\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E"\E^G!\E^HA@ :\ - :ti=\EU\Ev 8^AD\Ep\r:te=\Ev ^A0^AD\Ep\r\n:pt@:cm@:\ - :co#132:tc=c108-8p -cA|avt-w|avtw|HDS concept avt w/4 or 8 pages; 132 columns:\ - :is=\E[1*q\E[2!t\E[7!t\E[=4;101;119l\E[=103;107;118;207h\E)1\E[1Q\EW\E[7!y\E[0\0720\07232!r\E[w\E2\r\n:\ - :ch=\E[%i%3G:cm=\E[%i%2;%3H:co#132:tc=avt: -cB|avt-8p-s|concept avt w/8 pages & 80 cols running sysline:\ - :is=\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!y\E[0\0720\07232!r\E[2!w\E[192w\E[2*w\E[!w\E[1;191w\E2\r\n:\ - :hs:es:ts=\E[2!w\E[H\E[J\E[%i%dG:fs=\E[!w:\ - :ds=\E[2!w\E[2J\E[!w\E[*w:te=\E[1;191w\E2\n:tc=avt: -cC|avt-4p-s|concept avt w/4 pages & 80 cols running sysline:\ - :is=\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!y\E[0\0720\07232!r\E[2!w\E[96w\E[2*w\E[!w\E[1;95w\E2\r\n:\ - :hs:es:ts=\E[2!w\E[H\E[J\E[%i%dG:fs=\E[!w:\ - :ds=\E[2!w\E[2J\E[!w\E[*w:te=\E[1;95w\E2\n:tc=avt: -cD|avt-rv|HDS concept avt w/4 or 8 pages, 80 columns, reverse video:\ - :is=\E[1*q\E[2!t\E[7!t\E[=4;101;103;119l\E[=107;118;205;207h\E)1\E[1Q\EW\E[0!y\E[0\0720\07232!r\E[w\E2\r\n:\ - :ve=\E[4l:vs=\E[4l:tc=avt -cE|avt|HDS concept avt w/4 or 8 pages, 80 columns:\ - :is=\E[1*q\E[2!t\E[7!t\E[=4;101;103;119;205l\E[=107;118;207h\E)1\E[1Q\EW\E[0!y\E[0\0720\07232!r\E[w\E2\r\n\E[*w:\ - :ae=^O:al=\E[L:am:as=^N:bs:bt=\E[Z:cd=\E[J:ce=\E[K:\ - :ch=\E[%i%2G:cl=\E[H\E[J:cm=\E[%i%2;%2H:co#80:cv=\E[%i%2d:\ - :dc=\E[P:dl=\E[M:do=\E[B:ei=\E1:eo:ho=\E[H:im=\E1:kb=^H:kd=\E[B:\ - :kh=\E[H:kl=\E[D:ko=do,ho,nd,up:kr=\E[C:\ - :ks=\E[1;4!z\E[1;8!z\E[1;10!z\E[1;11!z\E[1;12!z\E[1;14!z\E[3;7!z\E[3;9!z:\ - :ke=\E[;4!z\E[;8!z\E[;10!z\E[;11!z\E[;12!z\E[3;14!z\E[;7!z\E[;9!z:\ - :ku=\E[A:li#24:mi:nd=\E[C:pt:se=\E[7!{:so=\E[7m:\ - :te=\E[w\E2\n:ti=\E[1;24w\E2\n:ue=\E[4!{:ul:\ - :up=\E[A:us=\E[4m:ve=\E[=4;119l:vs=\E[4l\E[=119h:xn: -# -# Concepts have only window relative cursor addressing, not screen relative. -# To get it to work right here, ti/te (which were invented for the concept) -# lock you into a one page window for screen style programs. To get out of -# the one page window, we use a clever trick: we set the window size to zero -# ("\Ev " in te) which the terminal recognizes as an error and resets the -# window to all of memory. -# -# Some tty drivers use cr3 for concept, others use nl3, hence dN/dC below. -# This padding is only needed at 9600 baud. -# 2 nulls padding on te isn't always enough. 6 works fine. Maybe less -# than 6 but more than 2 will work. -ca|c100|concept|c1004p|c100-4p|concept100|concept 100:\ - :is=\EU\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E^G\041\E^HA@ :\ - :ti=\EU\Ev 8p\Ep\r:te=\Ev \200\200\200\200\200\200\Ep\r\n:\ - :al=3*\E^R:am:le=^H:bs:cd=16*\E^C:ce=16\E^U:cl=2*^L:cm=\Ea%+ %+ :co#80:\ - :dc=16\E^Q:dl=3*\E^B:ei=\E\200:eo:im=\E^P:ip=16*:li#24:mi:nd=\E=:\ - :pt:kb=^h:ta=8\t:ul:up=\E;:db:us=\EG:ue=\Eg:xn:\ - :vb=\Ek\200\200\200\200\200\200\200\200\200\200\200\200\200\200\EK:\ - :.dN#9:dC#9:pb#9600:vt#8:us=\EG:ue=\Eg:so=\EE\ED:se=\Ed\Ee:\ - :mh=\EE:mr=\ED:mb=\EC:mp=\EI:mk=\EH:me=\EN\200:do=^J:\ - :ks=\EX:ke=\Ex:ku=\E;:kd=\E<:kl=\E>:kr=\E=:kh=\E?:k1=\E5:k2=\E6:k3=\E7: -cb|c100-rv-pp|c100-rv-4p-pp|concept100-rv-pp|c100rv4ppp|w/ printer port:\ - :is=\EU\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\041\200\EQ"\EY(^W\Eo\47\E\E^G\041\E^HA@ :\ - :tc=c100-rv: -cc|c100-rv-na|c100-rv-4p-na|concept100-rv-na|c100rv4pna|c100 with no arrows:\ - :ks@:ke@:tc=c100-rv: -cd|c100-rv|c100-rv-4p|concept100-rv|c100rv4p|c100rv|c100 rev video:\ - :is=\EU\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\47\E\E^G\041\E^HA@ :\ - :vb=\EK\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ek:\ - :so=\EE:se=\Ee:tc=c100: -# This is useful at 1200 baud. -ce|c100-s|concept-s|concept100-s|slow concept 100:\ - :vb=\Ek\200\EK:pt:dC@:dN@:tc=c100: -cf|c100-rv-s|concept-rv-s|concept100-rv-s|c100rvs|slow reverse concept 100:\ - :vb=\EK\200\Ek:pt:dC@:dN@:tc=c100-rv: -# # -------------------------------- -# -# d: DEC (DIGITAL EQUIPMENT CORPORATION) -# -# Note that xn glitch in vt100 is not quite the same as concept, since -# the cursor is left in a different position while in the weird state -# (concept at beginning of next line, vt100 at end of this line) so -# all versions of vi before 3.7 don't handle xn right on vt100. -# I assume you have smooth scroll off or are at a slow enough baud -# rate that it doesn't matter (1200? or less). Also this assumes -# that you set auto-nl to "on", if you set it off use vt100-nam below. -# -# Since there are two things here called vt100, the installer can make -# a local decision to make either one standard "vt100" by including -# it in the list of terminals in reorder, since the first vt100 in -# /etc/termcap is the one that it will find. The choice is between -# nam (no automatic margins) and am (automatic margins), as determined -# by the wrapline switch (group 3 #2). I presonally recommend turning -# on the bit and using vt100-am, since having stuff hammer on the right -# margin is sort of hard to read. However, the xn glitch does not occur -# if you turn the bit off. -# -# I am unsure about the padding requirements listed here. I have heard -# a claim that the vt100 needs no padding. It's possible that it needs -# padding only if the xon/xoff switch is off. For UNIX, this switch -# should probably be on. -# -# The vt100 uses rs and rf rather than is/ct/st because the tab settings -# are in non-volatile memory and don't need to be reset upon login. -# You can type "reset" to get them set. -dp|vt100-np|vt100 with no padding (for psl games):\ - :cl=\E[H\E[2J:sr=\EM:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :md=\E[1m:mr=\E[7m:mb=\E[5m:me=\E[m:tc=vt100: -d0|vt100|vt100-am|vt100am|dec vt100:\ - :do=^J:co#80:li#24:cl=50\E[;H\E[2J:sf=5\ED:\ - :le=^H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\ - :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\ - :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:\ - :rf=/usr/share/lib/tabset/vt100:\ - :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ - :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:vt#3:xn:\ - :sc=\E7:rc=\E8:cs=\E[%i%d;%dr: -d1|vt100-nam|vt100nam|vt100 w/no am:\ - :am@:xn@:\ - :is=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :tc=vt100-am: -d2|gt42|dec gt42:\ - :do=^J:le=^H:bs:co#72:ns:li#40:os: -d3|vt132|dec vt132:\ - :al=99\E[L:dl=99\E[M:ip=7:dc=7\E[P:ei=\E[4l:im=\E[4h:xn:dN#30:tc=vt100: -d4|gt40|dec gt40:\ - :do=^J:le=^H:bs:co#72:ns:li#30:os: -d5|vt50|dec vt50:\ - :do=^J:le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:co#80:li#12:nd=\EC:pt:up=\EA: -d6|vt125|vt125-am|DEC vt125:\ - :xn:do=^J:co#80:li#24:cl=50\E[H\E[2J:\ - :le=^H:am:bs:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:ce=3\E[K:cd=50\E[J:\ - :so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:md=2\E[1m:mr=2\E[7m:mb=2\E[5m:\ - :me=2\E[m:is=\E[1;24r\E[24;1H\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:if=/usr/share/lib/tabset/vt100:ku=\EOA:kd=\EOB:\ - :kr=\EOC:kl=\EOD:kb=^H:ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ - :pt:sr=5\EM:vt#3:sc=\E7:rc=\E8:cs=\E[%i%d;%dr: -d9|vt125-nam|DEC vt125 no automatic margin:\ - :am@:tc=vt125-am: -# DEC gigi color graphic terminal , same as vt52 -d7|gigi|dec gigi terminal:\ - :co#80:is=200\E>\E[?4l\E[?5l\E[?7h\E[?8h:\ - :li#24:cl=100\E[;H\E[2J:bs:cm=50\E[%i%2;%2H:nd=200\E[C:up=100\E[A:\ - :ce=120\E[K:cd=100\E[J:so=20\E[7m:se=20\E[m:us=20\E[4m:ue=20\E[m:\ - :ks=200\E[?1h\E=:ke=200\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\ - :kh=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=200\EM:\ - :dC#50:dF#200:dN#50:dT#50: -dI|dw1|decwriter I:\ - :do=^J:le=^H:bs:co#72:hc:os: -# From tut@Topaz.CC Thu May 12 14:49:02 1983 -dJ|dw3|la120|decwriter III:\ - :bs:kb=^H:co#132:hc:os:pt:\ - :is=\E(B\E[20l\E[w\E[1;132s\E[2g\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u\E[z\E[66t\E[1;66r\E[4g\E>\r: -# From tut@topaz.CC Thu Sep 24 22:10:46 1981 -df|dw4|decwriter IV:\ - :do=^J:le=^H:bs:co#132:hc:os:am:\ - :pt:is=\Ec:k0=\EOP:k1=\EOQ:k2=\EOR:k3=\EOS:kb=^H: -dh|vt50h|dec vt50h:\ - :do=^J:le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :\ - :co#80:li#12:nd=\EC:pt:sr=\EI:up=\EA: -di|vt100-s|vt100 with status line at top:\ - :li#23:i2=\E[2;24r\E[24;1H:cm@:ho=\E[H^J:cl=50\E[;H^J\E[0J:\ - :hs:es:ts=\E7\E[1;%dH\E[1K:fs=\E8:tc=vt100-am: -dj|vt100-s-bot|vt100 with status line at bottom:\ - :li#23:i2=\E[1;23r\E[23;1H:\ - :hs:es:ts=\E7\E[24;%dH\E[1K:fs=\E8:tc=vt100-am: -ds|vt100-nav|dec vt100 132 cols 14 lines (w/o advanced video option):\ - :li#14:tc=vt100-w: -dt|vt100-w|dec vt100 132 cols (w/advanced video):\ - :co#132:li#24:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am: -dv|vt100-w-nam|dec vt100 132 cols (w/advanced video), no am:\ - :co#132:li#24:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:vt@:tc=vt100-nam: -# vt 102 (from lai@decwrl) -dy|vt102|vt-102|dec vt102:\ - :do=^J:co#80:li#24:cl=50\E[;H\E[2J:\ - :le=^H:bs:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\ - :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\ - :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:\ - :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ - :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:vt#3:\ - :sc=\E7:rc=\E8:cs=\E[%i%d;%dr:vs=\E[?7l:ve=\E[?7h: -dw|vt52|dec vt52:\ - :do=^J:le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :co#80:li#24:\ - :nd=\EC:pt:sr=\EI:up=\EA:ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: -# vt61 created by Roger Sacilotto Massachusetts Computer Associates, Inc -# Similar to vt52 but add al and dl -# -dq|vt61|dec vt61:\ - :al=\EPf:dl=\EPd:tc=vt52: -dx|dw2|decwriter II:\ - :do=^J:kb=^h:le=^H:bs:co#132:hc:os: -# DEC PRO-350 console (VT220-style) -dP|pro350|decpro|dec pro console:\ - :bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\ - :cm=\EY%+ %+ :co#80:ho=\EH:\ - :kl=\ED:kr=\EC:ku=\EA:kd=\EB:kh=\EH:\ - :k0=\EE:k1=\EF:k2=\EG:k3=\EH:k4=\EI:k5=\EJ:k6=\Ei:k7=\Ej:\ - :li#24:nd=\EC:pt:sr=\EI:up=\EA:do=\EB:\ - :se=\E^N:so=\E^H:us=\E^D:ue=\E^C:\ - :ae=\EG:as=\EF: -# -# From: Bracy H. Elton <elton@lll-crg> -dl|vt200|vt220|vt200-js|vt220-js|dec vt200 series with jump scroll:\ - :im=\E[4h:ei=\E[4l:mi:dc=\E[P:dm=:ed=:al=\E[L:dl=\E[M:\ - :cs=\E[%i%d;%dr:sf=\ED:sr=\EM:sb=\EM:\ - :ce=\E[K:cl=\E[H\E[J:cd=\E[J:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :so=\E[7m:se=\E[27m:us=\E[4m:ue=\E[24m:\ - :md=\E[1m:mr=\E[7m:mb=\E[5m:me=\E[m:\ - :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ - :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ - :tc=vt100: -dm|vt200-ss|vt220-ss|dec vt200 series with smooth scroll:\ - :is=\E>\E[?3l\E[?4h\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ - :rs=\E>\E[?3l\E[?4h\E[?5l\E[?7h\E[?8h:\ - :tc=vt200: -dn|vt200-w|vt220-w|vt200-wj|vt220-wj|dec vt200 series; 132 col.; jump scroll:\ - :is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ - :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ - :co#132:tc=vt200: -do|vt200-ws|vt220-ws|dec vt200 series; 132 col.; smooth scroll:\ - :is=\E>\E[?3h\E[?4h\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ - :rs=\E>\E[?3h\E[?4h\E[?5l\E[?7h\E[?8h:\ - :co#132:tc=vt200: -# $XConsortium: termcap,v 1.6 91/06/24 15:08:52 gildea Exp $ -# -x1|xterm|vs100|xterm terminal emulator (X Window System):\ - :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:UP=\E[%dA:\ - :al=\E[L:am:\ - :bs:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:co#80:\ - :cs=\E[%i%d;%dr:ct=\E[3k:\ - :dc=\E[P:dl=\E[M:\ - :im=\E[4h:ei=\E[4l:mi:\ - :ho=\E[H:\ - :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ - :rs=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<:\ - :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:\ - :kl=\EOD:km:kn#4:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:\ - :li#65:md=\E[1m:me=\E[m:mr=\E[7m:ms:nd=\E[C:pt:\ - :sc=\E7:rc=\E8:sf=\n:so=\E[7m:se=\E[m:sr=\EM:\ - :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:\ - :up=\E[A:us=\E[4m:ue=\E[m:xn: -x2|xterms|vs100s|xterm terminal emulator, small window (X Window System):\ - :co#80:li#24:tc=xterm: -x3|xterm-bold|xterm with bold instead of underline:\ - :us=\E[1m:tc=xterm: -# vs100 emulator using tsim (from lai@decwrl) -vt|vs100t|tsim|vs100-tsim:\ - :bs:cm=\EM%+ %+ :ho=\EH:do=^J:up=^K:cl=\EE:ce=\EL:cs=\ES%+ %+ :\ - :so=\Eh:se=\Er:us=\Eu:ue=\Ev:al=\EI:AL=\E+%+ :dl=\ED:DL=\E-%+ :\ - :ic=\Ei:dc=\Ed:is=\ER:rs=\ER:am:cd=\EQ:pt:nd=\En:li#24:co#80: -# -# vi may work better with this termcap, because vi -# doesn't use insert mode much -x4|xterm-ic|xterm-vi|xterm with insert character instead of insert mode:\ - :im=:ei=:mi@:ic=\E[@:tc=xterm: -x5|xpcterm|X PC-compatible terminal:\ - :am:xo:bs:pt:\ - :co#80:li#65:kn#4:\ - :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ - :RI=\E[%dC:UP=\E[%dA:al=\E[L:bt=\E[Z:cd=\E[J:ce=\E[K:\ - :up=\E[A:do=^J:le=^H:ri=\E[C:\ - :cl=\E[H\E[J:cm=\E[%i%d;%dH:ct=\E[2g:dc=\E[P:dl=\E[M:\ - :ho=\E[H:ic=\E[@:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ - :k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX: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:st=\EH:ue=\E[m:up=\E[A:us=\E[4m:\ - :ko=nd,up,ho,ic: -x6|xpcterms|X PC-compatible terminal (small):\ - :co#80:li#25:tc=xpcterm: -x7|xtermc|xterm-color|xterm terminal emulator (color):\ - :Co#8:NC#7:pa#64:\ - :AB=\E[4%dm:AF=\E[3%dm:ac=:op=\E[100m:tc=xterm: - -# # -------------------------------- -# -# h: HEWLETT PACKARD -# -# Note: no "ho" on HP's since that homes to top of memory, not screen. -# Due to severe 2621 braindamage, the only way to get the arrow keys to -# transmit anything at all is to turn on the function key labels -# (f1-f8) with ks, and even then the poor user has to hold down shift! -# The default 2621 turns off the labels except when it has to to enable -# the function keys. If your installation prefers labels on all the time, -# or off all the time (at the "expense" of the function keys) move the -# 2621-nl or 2621-wl labels to the front using reorder. -# Note: there are newer ROM's for 2621's that allow you to set strap A -# so the regular arrow keys xmit \EA, etc, as with the 2645. However, -# even with this strap set, the terminal stops xmitting if you reset it, -# until you unset and reset the strap! Since there is no way to set/unset -# the strap with an escape sequence, we don't use it in the default. -# If you like, you can use 2621-ba (braindamaged arrow keys). -h1|2621-ba|2621 w/new rom, strap A set:\ - :ks@:ke@:ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\Eh:tc=hp2621: -# 2621 with function labels. Most of the time they are off, -# but inside vi, the function key labels appear. You have to -# hold down shift to get them to xmit. -h2|2621|hp2621|hp2621a|hp2621p|2621a|2621p|2621-pb|hp2621-fl|hp 2621:\ - :is=\E&j@\r:bt=\Ei:cm=\E&a%r%dc%dY:dc=2\EP:ip=2:pb#19200:\ - :so=\E&dD:se=\E&d@:us=\E&dD:ue=\E&d@:me=\E&d@:\ - :kh=\Ep\r:ku=\Et\r:kl=\Eu\r:kr=\Ev\r:kd=\Ew\r:\ - :kn#8:k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:k7=\Ev\r:\ - :k8=\Ew\r:ks=\E&jB:ke=\E&j@:ta=2^I:tc=hp: -# 2621k45: untested -# 2622: unsure if this is quite it, have only heard about the terminal. -h3|2621k45|hp2621k45|k45|2622|hp2622|hp 2621 with 45 keyboard:\ - :kb=^H:ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\Eh:ks=\E&s1A:ke=\E&s0A:tc=2621: -h4|hp2645|2645|hp45:\ - :mh=\E&dH:mr=\E&dB:us=\E&dD:mb=\E&dA:me=\E&d@:\ - :ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\Eh:ks=\E&s1A:ke=\E&s0A:tc=hp: -h5|hp|hewlett-packard:\ - :ct=\E3:st=\E1:do=^J:al=\EL:am:le=^H:bs:\ - :cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:cm=6\E&a%r%dc%dY:\ - :co#80:cv=\E&a%dY:da:db:dc=\EP:dl=\EM:ei=\ER:im=\EQ:\ - :kb=^H:li#24:mi:nd=\EC:pt:se=\E&d@:so=\E&dJ:\ - :us=\E&dD:ue=\E&d@:up=\EA:xs:vt#6:pb#9600: -# This entry does not use any of the fancy windowing stuff of the 2621. -# Indeed, termcap does not yet handle such stuff. We are looking at it. -h6|hp2626|hp2626a|hp2626p|2626|2626a|2626p|hp 2626:\ - :dc=2\EP:ip=2:se=\E&d@:so=\E&dB:cd=500\EJ:\ - :mr=\E&dB:us=\E&dD:mb=\E&dA:mk=\E&dS:me=\E&d@:ue=\E&d@:\ - :kh=\Eh:ku=\EA:kl=\ED:kr=\EC:kd=\EB:ks=\E&s1A:ke=\E&s0A:\ - :sf=\ES:ta=2^I:xs:tc=2621: -# cD is a pain - but it only screws up at 9600 baud. -# You should use this terminal at 4800 baud or less. -h8|hp2648|hp2648a|2648a|2648|HP 2648a graphics terminal:\ - :cl=50\EH\EJ:cm=20\E&a%r%dc%dY:dc=7\EP:ip=5:tc=2645: -# This terminal should be used at 4800 baud or less. -h9|hp2645-np|2645 w/no padding:cm=\E&a%r%dc%dY:tc=hp2645: -# 2640a doesn't have the Y cursor addressing feature, and C is memory relative -# instead of screen relative, as we need. -ha|2640|hp2640a|2640a|hp 2640a:\ - :cm@:ks@:ke@:tc=2645: -hb|2640b|hp2640b|2644a|hp2644a|hp 264x series:\ - :ks@:ke@:tc=2645: -# 2621 using all 48 lines of memory, only 24 visible at any time. Untested. -hl|2621-48|48 line 2621:\ - :li#48:ho=\EH:cm=\E&a%r%dc%dR:tc=2621: -# Hp 110 computer is the same as 2621 except has 16 lines -hm|hp110|110|hp 110 computer:\ - :li#16:tc=2621: -# 2621 with no labels ever. Also prevents vi delays on escape. -hn|2621-nl|hp2621nl|2621nl|hp2621-nl|hp 2621 with no labels:\ - :ks@:ke@:kh@:ku@:kl@:kr@:kd@:tc=hp2621-fl: -# Needed for UCB ARPAVAX console, since lsi-11 expands tabs (wrong). -ht|hp2621-nt|2621nt|2621-nt|hp2621nt|hp 2621 w/no tabs:\ - :pt@:tc=hp2621: -# 2621 with labels on all the time - normal outside vi, function inside vi. -hw|hp2621wl|2621wl|2621-wl|hp2621-wl|hp 2621 w/labels:\ - :is=\E&jA\r:ke=\E&jA:tc=hp2621-fl: -# 2392 (from haddix@arpa?) -hz|2392|hp2392|hp2392a:\ - :bt=\Ei:ip=2:is=\E&j@\E3\r:if=/usr/share/lib/tabset/stdcrt:\ - :ml=\El:MT:mu=\Em:km:\ - :mh=\E&dH:mr=\E&dB:us=\E&dD:mb=\E&dA:me=\E&d@:\ - :ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\Eh:ks=\E&s1A:ke=\E&s0A:tc=hp: -#HP 236 console running 4.3 BSD -#from ddavis@ic.berkeley.edu -h7|236|hp236|HP236 internal terminal emulator:\ - :am:bs:li#24:co#80:cl=\EF:cm=\EE%+ %+ :\ - :dc=\EJ:dl=\EH:ic=\EI:al=\EG:up=^K:im=:ei=:\ - :so=\EBI:se=\ECI:vs=\EDB:ve=\EDE: -# hp150 from ddavis@ic.berkeley.edu -h0|150|hp150|hp150a|150a:\ - :is=\E&s1A\E&f0a1k2L\Ep\r\E&k0K\E&f0a2k2L\Eq\r\E&f0a3k2L\Er\r\E&f0a4k2L\Es\r\E&f0a5k2L\Et\r\E&f0a6k2L\Eu\r\E&f0a7k2L\Ev\r\E&f0a8k2L\Ew\r\E&k0D\E&s0A:\ - :bt=\Ei:li#24:cm=\E&a%r%dc%dY:dc=2\EP:ip=2:pb#19200:so=\E&dJ:\ - :se=\E&d@:us=\E&dD:ue=\E&d@:me=\E&d@:kh=\Eh:ku=\EA:kl=\ED:kr=\EC:\ - :kd=\EB:kn#8:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:\ - :k8=\Ew:ta=2^I:ct=\E3:st=\E1:do=^J:al=\EL:am:le=^H:\ - :bs:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\Eh\EJ:co#80:cv=\E&a%dY:da:db:dl=\EM:\ - :ei=\ER:im=\EQ:kb=^H:mi:nd=\EC:pt:up=\EA:xs:vt#6:sf=\ES:sr=\ET:\ - :vs=\E&s1A:ve=\E&s0A:ks=\E&jB\E&j@:ke=\E&j@: -# # -------------------------------- -# -# i: INFOTON (GENERAL TERMINAL) -# -# Infoton is now called General Terminal Corp. or some such thing. -# gt100 sounds like something DEC would come out with. Lets hope they don't. -i1|i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100):\ - :do=^J:cl=^L:cd=\EJ:ce=\EK:li#24:co#80:\ - :al=\EL:dl=\EM:up=\EA:nd=\EC:ho=\EH:cm=\Ef%r%+ %+ :vb=\Eb\Ea:\ - :am:le=^H:bs:so=\Eb:se=\Ea: -i4|i400|400|infoton 400:\ - :do=^J:al=\E[L:am:le=^H:bs:ce=\E[N:cl=\E[2J:cm=%i\E[%3;%3H:co#80:\ - :dl=\E[M:li#25:nd=\E[C:up=\E[A:im=\E[4h\E[2Q:ei=\E[4l\E[0Q:\ - :dc=\E[4h\E[2Q\E[P\E[4l\E[0Q: -ia|addrinfo:\ - :do=^J:li#24:co#80:cl=^L:ho=^H:nd=^Y:cd=^K:\ - :up=^\:am:le=^Z:bc=^Z:cm=\037%+\377%+\377:ll=^H^\: -ik|infotonKAS:\ - :do=^J:am:le=^Z:bc=^Z:cd=^K:cl=^L:co#80:li#24:nd=^Y:up=^\:ll=^H^\: -# # -------------------------------- -# -# k: HEATHKIT (ZENITH) -# -kA|h19-a|h19a|heath-ansi|heathkit-a|heathkit h19 ansi mode:\ - :al=1*\E[1L:am:le=^H:bs:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%2;%2H:co#80:\ - :dc=\E[1P:dl=1*\E[1M:do=\E[1B:ei=\E[4l:ho=\E[H:im=\E[4h:li#24:mi:\ - :nd=\E[1C:as=\E[10m:ae=\E[11m:ms:pt:se=\E[0m:so=\E[7m:up=\E[1A:\ - :vs=\E[>4h:ve=\E[>4l:kb=^h:ku=\E[1A:kd=\E[1B:kl=\E[1D:kr=\E[1C:\ - :kh=\E[H:kn#8:k1=\EOS:k2=\EOT:k3=\EOU:k4=\EOV:k5=\EOW:l6=blue:\ - :l7=red:l8=white:k6=\EOP:k7=\EOQ:k8=\EOR:\ - :sr=\EM:is=\E<\E[>1;2;3;4;5;6;7;8;9l\E[0m\E[11m\E[?7h: -kB|h19-bs|h19bs|heathkit w/keypad shifted:\ - :ks=\Et:ke=\Eu:tc=h19-b: -#written by David Shewmake, UCSF Medical Information Science -#ucbvax!ucsfmis!shewmake -kC|h29|heath-29|z29|zenith-29:\ - :am:bc=\ED:bt=\E-:do=^J:\ - :al=\EL:le=^H:bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:dc=\EN:\ - :dl=1*\EM:do=\EB:ei=\EO:ho=\EH:im=\E@:li#24:mi:nd=\EC:as=\EF:ae=\EG:\ - :ms:pt:sr=\EI:se=\Eq:so=\Ep:up=\EA:vs=\Ex4:ve=\Ey4:\ - :kb=^H:ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\EH:kn#1:k0=\E~:l0=HOME:\ - :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:k9=\E0I:\ - :es:hs:ts=\Ej\Ex5\Ex1\EY8%+ \Eo:fs=\Ek\Ey5:ds=\Ey1:us=\Es8:ue=\Es0: -#the z29-e entry sucks...but it works with emacs -kD|z29-e|zenith 29 hacked for emacs:\ - :ip=1.5:ks=\Et:ke=\Eu:vs@:ve@:al=1*\EL:am:le=^H:\ - :bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:dc=\EN:dl=1*\EM:\ - :do=\EB:ho=\EH:li#24:nd=\EC:as=\EF:ae=\EG:ms:\ - :pt:sr=\EI:se=\Eq:so=\Ep:up=\EA:vs=\Ex4:ve=\Ey4:kb=^h:\ - :ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\EH:kn#8:k1=\ES:k2=\ET:k3=\EU:\ - :k4=\EV:k5=\EW:l6=blue:l7=red:l8=white:k6=\EP:k7=\EQ:k8=\ER:es:hs:\ - :ts=\Ej\Ex5\Ex1\EY8%+ \Eo:fs=\Ek\Ey5:ds=\Ey1: -# z29 in ansi mode. Assumes that the cursor is in the correct state, and that -# the world is stable. `rs' causes the terminal to be reset to the state -# indicated by the name. kc -> key click, nkc -> no key click, uc -> underscore -# cursor, bc -> block cursor. -# from Mike Meyers -kF|z29a|z29a-kc-bc|h29a-kc-bc|heath/zenith 29 in ansi mode:\ - :do=^J:co#80:li#24:cl=\E[2J:pt:ho=\E[H:\ - :le=^H:bs:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:mb=\E[5m:mr=\E7m:\ - :ce=\E[K:cd=\E[J:so=\E[7;2m:se=\E[m:us=\E[4m:ue=\E[m:mh=\E[2m:\ - :md=\E[2m:mr=\E[7m:mb=\E[5m:me=\E[m:\ - :rs=\E<\E[1;24r\E[24;1H\E[?7h\E[>4h\E[>1;2;3;5;6;7;8;9l\E[m\E[11m:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ - :k1=\EOS:k2=\EOT:k3=\EOU:k4=\EOV:k5=\EOW:k6=\EOP:k7=\EOQ:k8=\EOR:\ - :k9=\EOX:k0=\E[~:l0=help:kn#2:ko=ho,cd:if=/usr/share/lib/tabset/zenith29:\ - :es:hs:ts=\E[s\E[>5;1h\E[25;%i%dH\E[1K:fs=\E[u\E[>5l:ds=\E[>1l:\ - :cs=\E[%i%d;%dr:sr=\EM:sf=\ED:DO=\E[%dB:UP=\E[%dA:LE=\E[%dD:\ - :RI=\E[%dC:AL=\E[%dL:DL=\E[%dM:sc=\E[s:rc=\E[r:dc=\E[1P:DC=\E[%dP:\ - :kC=\E[J:ct=\E[3g:st=\EH:ti=\E[?7l:te=\E[?7h:ps=\E#7: -kG|z29a-kc-uc|h29a-kc-uc|heath/zenith 29 in ansi mode:\ - :rs=\E<\E[1;24r\E[24;1H\E[?7h\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11m:\ - :tc=z29a: -kH|z29a-nkc-bc|h29a-nkc-bc|heath/zenith 29 in ansi mode:\ - :rs=\E<\E[1;24r\E[24;1H\E[?7h\E[>2;4h\E[>1;3;5;6;7;8;9l\E[m\E[11m:\ - :tc=z29a: -kI|z29a-nkc-uc|h29a-nkc-uc|heath/zenith 29 in ansi mode:\ - :rs=\E<\E[1;24r\E[24;1H\E[?7h\E[>2h\E[>1;3;4;5;6;7;8;9l\E[m\E[11m:\ - :tc=z29a: -#z100 entry from Brad Brahms at TRW (Brahms@USC-ECLC) -# usenet: {decvax,ucbvax}!trwrb!trwspp!brahms -kc|z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor:\ - :vs=\Ex4\Em71:ve=\Ey4\Em70:tc=z100bw: -kY|z100bw|h100bw|z110bw|z-100bw|h-100bw|heath/zenith z-100 pc:\ - :al=5*\EL:bs:cd=\EJ:ce=\EK:cl=5*\EE:cm=1*\EY%+ %+ :co#80:dc=1*\EN:\ - :dl=5*\EM:do=\EB:ei=\EO:ho=\EH:im=\E@:li#24:mi:nd=\EC:as=\EF:ae=\EG:\ - :ms:pt:sr=\EI:se=\Eq:so=\Ep:up=\EA:vs=\Ex4:ve=\Ey4:\ - :kb=^h:ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\EH:kn#10:\ - :k0=\EJ:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ - :k8=\ER:k9=\EOI: -kp|p19:\ - :al=2*\EL:dl=2*\EM:tc=h19-b: -kU|h19-us|h19us|heathkit w/keypad shifted/underscore cursor:\ - :ks=\Et:ke=\Eu:tc=h19-u: -kb|h19|heath|h19-b|h19b|heathkit|heath-19|z19|zenith|heathkit h19:\ - :al=1*\EL:am:le=^H:bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:dc=\EN:\ - :dl=1*\EM:do=\EB:ei=\EO:ho=\EH:im=\E@:li#24:mi:nd=\EC:as=\EF:ae=\EG:\ - :ms:pt:sr=\EI:se=\Eq:so=\Ep:up=\EA:vs=\Ex4:ve=\Ey4:\ - :kb=^h:ku=\EA:kd=\EB:kl=\ED:kr=\EC:kh=\EH:kn#8:ke=\E>:ks=\E=:\ - :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:\ - :l6=blue:l7=red:l8=white:k6=\EP:k7=\EQ:k8=\ER:\ - :es:hs:ts=\Ej\Ex5\Ex1\EY8%+ \Eo:fs=\Ek\Ey5:ds=\Ey1: -ke|h19-e|h19e|h19 for emacs:ip=1.5:tc=h19-us: -ku|h19-u|h19u|heathkit with underscore cursor:\ - :vs@:ve@:tc=h19-b: -kg|h19-g|h19g|heathkit w/block cursor:\ - :ve=\Ex4:tc=h19-b: -# from ucscc!B.fiatlux@ucbvax.berkeley.edu -zx|ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10/11:\ - :al=\EL:am:bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:\ - :dl=\EM:do=^J:ho=\EH:is=\Ej\EH\Eq\Ek\Ev\Ey1\Ey5\EG\Ey8\Ey9\Ey>:\ - :k0=\ES:k1=\EB:k2=\EU:k3=\EV:k4=\EW:k5=\EP:k6=\EQ:k7=\ER:kb=^H:kd=\EB:\ - :kl=\ED:kr=\EC:ku=\EA:le=^H:li#24:nd=\EC:pt:se=\Eq:so=\Es5:\ - :sr=\EI:sr=\EI:ue=\Eq:up=\EA:us=\Es2:\ - :es:hs:ts=\Ej\Ex5\Ex1\EY8%+ \Eo:fs=\Ek\Ey5:ds=\Ey1: -# # -------------------------------- -# -# l: LEAR SIEGLER (ADM) -# -# If the adm31 gives you trouble with standout mode, check the DIP switch -# in position 6, bank @c11, 25% from back end of pc. Should be OFF. -# If there is no such switch, you have an old adm31 and must use oadm31 -l1|adm31|31|lsi adm31:\ - :is=\Eu\E0:do=^J:al=\EE:am:le=^H:bs:ce=\ET:cm=\E=%+ %+ :\ - :cl=\E*:cd=\EY:co#80:dc=\EW:dl=\ER:ei=\Er:ho=^^:im=\Eq:\ - :k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:\ - :k5=^A5\r:k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^J:kl=^H:kr=^L:ku=^K:\ - :li#24:ma=j^Jk^P^K^Pl ^R^L^L :mi:nd=^L:\ - :se=\EG0:so=\EG1:up=^K:us=\EG1:ue=\EG0: -l2|adm2|lsi adm2:\ - :do=^J:al=\EE:am:le=^H:bs:cd=\EY:ce=\ET:cl=\E;:\ - :cm=\E=%+ %+ :co#80:dc=\EW:dl=\ER:\ - :ei=:ho=^^:ic=\EQ:im=:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:li#24:nd=^L:up=^K: -l3|adm3|3|lsi adm3:\ - :do=^J:am:le=^H:bs:cl=^Z:li#24:ma=^K^P:co#80: -l4|adm42|42|lsi adm42:\ - :vs=\EC\E3 \E3(:do=^J:al=270\EE:am:le=^H:bs:cd=\EY:ce=\ET:cl=\E;:\ - :cm=\E=%+ %+ :co#80:dc=\EW:dl=\ER:ei=\Er:im=\Eq:ip=6*:li#24:\ - :bt=\EI:nd=^L:se=\EG0:so=\EG4:up=^k:ma=^K^P:pc=\177: -l5|adm5|5|lsi adm5:\ - :do=^J:cd=\EY:ce=\ET:do=^J:kb=^H:kh=^^:\ - :ma=^Hh^Jj^Kk^Ll^^H:se=\EG:sg#1:so=\EG:tc=adm3aplus: -l7|adm20|lear siegler adm20:\ - :am:li#24:co#80:bs:cl=^Z:cm=\E=%i%r%+^_%+^_:nd=^L:up=^K:ho=^^:ce=\ET:\ - :cd=\EY:al=\EE:dl=\ER:im=:ei=:ic=\EQ:dm=:ed=:dc=\EW:so=\E):se=\E(:\ - :bt=\EI:pt:kn#7:k1=^A:k2=^B:k3=^W:k4=^D:k5=^E:k6=^X:k7=^Z: -# From Andrew Scott Beals <bandy@lll-crg.ARPA> -l8|adm12|12|lsi adm12:\ - :is=\Eq:do=^J:al=\EE:am:le=^H:bs:ce=\ET:cm=\E=%+ %+ :cl=^Z:cd=\EY:\ - :co#80:dc=\EW:dl=\ER:ei=\Er:ho=^^:im=\Eq:\ - :k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:\ - :k5=^A5\r:k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^J:kl=^H:kr=^L:ku=^K:\ - :li#24:ma=j^Jk^P^K^Pl ^R^L^L :mi:nd=^L:\ - :se=\EG0:so=\EG4:up=^K:us=\EG1:ue=\EG0: -la|adm3a|3a|lsi adm3a:\ - :am:do=^J:le=^H:bs:cm=\E=%+ %+ :cl=1^Z:co#80:ho=^^:\ - :li#24:ma=^K^P:nd=^L:up=^K: -lb|adm3a+|3a+|adm3aplus:\ - :kl=^H:kd=^J:ku=^K:kr=^L:tc=adm3a: -lc|adm22|22|lsi adm22:\ - :is=\E%\014\014\014\016\003\000\003\002\003\002\000\000\000\000\000\000\000\000\000\000\000:\ - :al=\EE:am:bs:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:cm=\000\E=%+ %+ :co#80:\ - :dc=\EW:dl=\ER:do=^J:em=:ho=^^:ic=\EQ:im=:\ - :k1=\001@\015:k2=\001A\015:k3=\001B\015:k4=\001C\015:\ - :k5=\001D\015:k6=\001E\015:k7=\001F\015:kn#7:\ - :ko=ho:l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:\ - :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:li#24:\ - :ma=j^Jk^P^K^Pl ^R^L^L :nd=^L:se=\E(:so=\E):ta=\Ei:up=^K: -#From: stephen%comp.lancs.ac.uk@ucl-cs.arpa -le|adm11|lsi adm11:\ - :do=^J:bs:\ - :cd=\EY:ce=\ET:kb=^H:kh=^^:\ - :ma=^Hh^Jj^Kk^Ll^^H:so=\E):se=\E(:\ - :kl=^H:kd=^J:ku=^K:kr=^L:\ - :am:cm=\E=%+ %+ :cl=^Z:co#80:li#24:nd=^L:up=^K:\ - :hs:ts=\EF\E):fs=\E(^M:ds=\Eh: -# # -------------------------------- -# -# m: MICROTERM -# -# These mime1 entries refer to the Microterm Mime I or Mime II. -# The default mime is assumed to be in enhanced act iv mode. -m3|mime3a|mime1 emulating 3a:\ - :am@:ma=^X ^K^J^Z^P:ku=^Z:kd=^K:kl=^H:kr=^X:tc=adm3a: -m4|microterm|act4|microterm act iv:\ - :am:do=^J:le=^H:bs:cd=^_:ce=^^:cl=^L:cm=^T%.%.:\ - :co#80:li#24:nd=^X:up=^Z:ho=^]: -# The padding on sr and ta for act5 and mime is a guess and not final. -# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)... -m5|microterm5|act5|microterm act v:\ - :uc=^H\EA:sr=3\EH:ku=^Z:kd=^K:kl=^H:kr=^X:ma=^Z^P^Xl^Kj:tc=act4: -# Act V in split screen mode. act5s is not tested and said not to work. -mS|act5s|skinny act5:\ - :ti=\EP:te=\EQ:li#48:co#39:tc=act5: -# Mimes using brightness for standout. Half bright is really dim unless -# you turn up the brightness so far that lines show up on the screen. -# uc is disabled to get around a curses bug, should be put back in someday. -mf|mime-fb|full bright mime1:\ - :so=^Y:se=^S:is=^S\E:tc=mime: -mh|mime-hb|half bright mime1:\ - :so=^S:se=^Y:is=^Y\E:tc=mime: -mm|mime|mime1|mime2|mimei|mimeii|microterm mime1:\ - :do=^J:al=80^A:am:le=^H:bs:cd=^_:ce=^^:cl=\035^C:cm=^T%+^X%> 0%+P:\ - :co#80:dl=80^W:ta=2^I:li#24:nd=^X:pt:uc=^U:up=^z:ho=\035:do=^K:\ - :is=^S\E^Q:ma=^X ^K^J^Z^P:ku=^Z:kd=^K:kl=^H:kr=^X:sr=3^R:vt#9: -# These termcaps (for mime 2a) put the terminal in low intensity mode -# since high intensity mode is so obnoxious. -ms|mime2a-s|microterm mime2a (emulating an enhanced soroc iq120):\ - :do=^J:\ - :al=20*^A:am:le=^H:bs:cd=20*\EJ:ce=\EK:cl=\EL:cm=\E=%+ %+ :co#80:dc=\ED:\ - :dl=20*^W:kl=^H:kr=^L:ku=^K:kd=^J:ho=^^:is=\E):sr=\EI\ - :im=\EE:ei=^Z:ip=2:li#24:nd=^L:so=\E\072:se=\E;:up=\EI:\ - :us=\E6:ue=\E7: -# This is the preferred mode (but ^X can't be used as a kill character) -mv|mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52):\ - :do=^J:al=20*^A:le=^H:bs:cd=20*\EQ:co#80:ce=\EP:cl=\EL:cm=\EY%+ %+ :\ - :is=^Y:dc=^N:dl=20*^W:ip=2:ei=^Z:ho=\EH:im=^O:kd=\EB:kl=\ED:kr=\EC:\ - :ku=\EA:li#24:nd=\EC:pt:se=\E9:so=\E8:up=\EA:sr=\EA:us=\E4:ue=\E5: -mx|mime-3ax|mime1 emulating enhanced 3a:\ - :al=80^A:dl=80^W:pt:ce=^X:cd=^_:tc=mime3a: -# # -------------------------------- -# -# p: PERKIN ELMER -# -pe|pe550|bantam|perkin elmer 550:\ - :do=^J:le=^H:bs:co#80:ce=20\EI:cl=20\EK:cm=\EX%+ \EY%+ :\ - :ho=\EH:li#24:ll=\EH\EA:nd=\EC:up=\EA:ma=^Z^P:cd=6^N@^V: -pf|fox|perkin elmer 1100:\ - :ct=\E3:st=\E1:do=^J:\ - :am:le=^H:bs:cd=5.5*\EJ:ce=\EI:cl=132\EH\EJ:co#80:ho=\EH:li#24:\ - :ll=\EH\EA:nd=\EC:cm=\EX%+ \EY%+ :up=\EA:vb=^P^B^P^C: -po|owl|perkin elmer 1200:\ - :ct=\E3:st=\E1:do=^J:al=5.5*\EL:am:le=^H:\ - :bs:cd=5.5*\EJ:ce=5.5\EI:cl=132\EH\EJ:ho=\EH:ll=\EH\EA:\ - :cm=\EX%+ \EY%+ :co#80:dc=5.5*\EO:dl=5.5*\EM:ei=:ic=\EN:im=:ip=5.5*:\ - :kb=^h:in:li#24:nd=\EC:up=\EA:se=\E!\200:so=\E!^H:vb=^P^B^P^C:\ - :k1=\ERA:k2=\ERB:k3=\ERC:k4=\ERD:k5=\ERE:k6=\ERF:\ - :k7=\ERG:k8=\ERH:k9=\ERI:k0=\ERJ: -# # -------------------------------- -# -# q: HOME MADE TERMINALS -# -qB|bc|bill croft homebrew:\ - :do=^J:am:le=^H:bs:cm=\E=%+ %+ :cl=^Z:co#96:ho=^^:li#72:\ - :nd=^L:up=^K:vb=: -qN|nucterm|rayterm|NUC homebrew:\ - :do=^J:am:le=^H:bs:cl=1^L:li#24:co#80:nd=^C:\ - :up=^N:ho=^B:ll=^K:ce=^A:cd=^E: -qb|ex3000:\ - :do=^J:li#24:co#80:ho=^Q: -qc|carlock|klc:\ - :do=^J:al=^E:am:bs:ce=^U:cl=100^Z:cm=\E=%+ %+ :co#80:dc=\177:dl=^D:\ - :dm=:ed=:ei=^T:ho=^^:im=^T:li#24:nd=^L:se=^V:so=^V:up=^K:vb=\EV\EV: -qe|exidy|exidy2500|exidy sorcerer as dm2500:\ - :do=^J:al=^P^J^X:am:le=^H:bs:ce=^W:cl=^^:cm=^L%r%n%.%.:co#64:\ - :dc=\b:dl=^P^Z^X:dm=^P:ed=^X:ei=^X:ho=^B:ic=^\:\ - :im=^P:li#30:nd=^\:pt:so=^N:se=^X:up=^Z: -qn|netx|netronics:\ - :do=^J:le=^H:bs:cd=2000^F^E:ce=1600^E:cl=466^L:cm=\E=%+@%+@:\ - :co#64:ho=^D:li#16:ma=j^Jk^Pl :nd=\E+@A:pc=\200:sr=\E=@@^K:up=^K: -# This came from the comp ctr who got it from some user. Smart indeed! -qs|sexidy|exidy smart:\ - :do=^J:li#24:co#64:cl=^l:ho=^q:nd=^s:\ - :up=^w:le=^H:bs:le=^a:bc=^a:ma=^x^J:kd=^S: -qu|ubell|ubellchar:\ - :if=/usr/share/lib/tabset/ubell:do=^J:am:le=^H:bs:pt:ce=\Ed:cl=^Z:\ - :cm=\E=%+ %+ :co#80:li#24:nd=^L:up=^K:ma=j^Jk^P^K^Pl :ho=^^: -qw|ttyWilliams:\ - :do=^J:co#80:li#12:le=^Y:bc=^Y:do=^K:up=^Z:cl=^^:ce=^_:am:ho=^]:nd=^X: -qx|xitex|xitex sct-100:\ - :do=^J:le=^H:bs:cd=2000^F^E:ce=1600^E:cl=400^L:cm=\E=%+@%+@:co#64:\ - :ho=^D:li#16:ma=j^Jk^Pl :nd=\E+@A:pc=\200:sr=\E=@@^K:up=^K: -# # -------------------------------- -# -# s: SPECIALS -# -# Special "terminals". These are used to label tty lines when you don't -# know what kind of terminal is on it. The characteristics of an unknown -# terminal are the lowest common denominator - they look about like a ti 700. -sa|network:\ - :tc=unknown: -sb|arpanet:\ - :tc=unknown: -sc|bussiplexer:\ - :tc=unknown: -sd|du|dialup:\ - :tc=unknown: -se|ethernet:\ - :tc=unknown: -sl|lpr|printer|print|printing|line printer:\ - :do=^J:le=^H:bs:co#132:hc:os: -sp|plugboard|patch|patchboard:\ - :tc=unknown: -su|dumb|un|unknown:\ - :am:co#80:do=^J: -sw|switch|intelligent switch:\ - :tc=unknown: -sx|ansi|any ansi terminal with pessimistic assumptions:\ - :co#80:li#24:cl=50\E[;H\E[2J:bs:am:cm=\E[%i%d;%dH:\ - :nd=\E[C:up=\E[A:ce=\E[K:ho=\E[H:pt: -# # -------------------------------- -# -# t: TEXAS INSTRUMENTS -# -t3|ti|ti700|ti733|735|ti735|ti silent 700:\ - :do=^J:le=^H:bs:co#80:hc:os:dC#162: -t4|ti745|745|743|ti silent 745:\ - :do=^J:le=^H:bs:co#80:hc:os: -t8|ti800|ti omni 800:\ - :do=^J:le=^H:bs:co#132:hc:os: -# # -------------------------------- -# -# v: TELEVIDEO -# -# There are some tvi's that require incredible amounts of padding and -# some that don't. I'm assuming 912 and 920 are the old slow ones, -# and 912b, 912c, 920b, 920c are the new ones that don't need padding. -v1|tvi912|912|920|tvi920|old televideo:\ - :ct=\E3:st=\E1:do=^J:\ - :al=33*\EE:le=^H:ce=\ET:cm=\E=%+ %+ :cl=^Z:co#80:dc=\EW:dl=33*\ER:ei=:\ - :kb=^H:ku=^K:kd=^J:kl=^H:kr=^L:k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:\ - :bs:am:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ - :ho=^^:im=:ic=\EQ:li#24:nd=^L:pt:se=\Ek:so=\Ej:up=^K:us=\El:ue=\Em:\ - :ma=^K^P^L :sg#1:ug#1:if=/usr/share/lib/tabset/stdcrt -# the 912 has a <funct> key that's like shift: <funct>8 xmits "^A8\r". -# The 920 has this plus real function keys that xmit different things. -# Termcap makes you use the funct key on the 912 but the real keys on the 920. -v2|912b|912c|tvi912b|tvi912c|tvi|new televideo 912:\ - :al=5*\EE:dl=5*\ER:tc=tvi912: -v3|920b|920c|tvi920b|tvi920c|new televideo 920:\ - :k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ - :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:tc=tvi912b: -# set to page 1 when entering ex (\E-17 ) -# reset to page 0 when exiting ex (\E-07 ) -v4|tvi912-2p|tvi920-2p|912-2p|920-2p|tvi-2p|televideo w/2 pages:\ - :ti=\E-17 :te=\E-07 :tc=tvi912: -v5|tvi950-ap|tvi 950 w/alt pages:\ - :is=\E\\1:ti=\E-06 :te=\E-16 :tc=tvi950: -v6|tvi950-b|bare tvi950 no is:\ - :is@:tc=tvi950: -v7|tvi950-ns|tvi950 w/no standout:\ - :so@:se@:us@:ue@:tc=tvi950: -v8|vi|tvi925|925|televideo model 925:\ - :hs:am:bs:co#80:li#24:cm=\E=%+ %+ :cl=\E*:cd=\Ey:ce=\Et:is=\El\E":\ - :al=\EE:dl=\ER:im=:ei=:ic=\EQ:dc=\EW:if=/usr/share/lib/tabset/stdcrt:\ - :ho=^^:nd=^L:bt=\EI:pt:so=\EG4:se=\EG0:sg#1:us=\EG8:ue=\EG0:ug#1:\ - :up=^K:do=^V:kb=^H:ku=^K:kd=^V:kl=^H:kr=^L:kh=^^:ma=^V^J^L :\ - :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:\ - :k8=^AG\r:k9=^AH\r:k0=^AI\r:ko=ic,dc,al,dl,cl,ce,cd,bt:\ - :ts=\Ef:fs=\Eg:ds=\Eh:sr=\Ej:xn: -vg|tvi925hi|925hi|televideo model 925 with half intensity standout mode:\ - :so=\E):se=\E(:tc=tvi925: -vj|tvi925vb|925vb|televideo model 925 visual bells:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=tvi925: -# Since the 925's uses a character position to store the escape sequences to go -# in and out of both stand out and underline modes, screen positioning is -# difficult. The following 925 entries don't use these modes. -vn|tvi925n|925n|televideo model 925 no standout or underline:\ - :so@:se@:us@:ue@:tc=tvi925: -vk|tvi925vbn|925vbn|televideo model 925 visual bells no so or ul:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=tvi925n: -# entry by Tim Curry 5/21/82 Univ. of Central Fla. duke!ucf-cs!tim -v9|925a|tvi925a|TeleVideo Model 925:\ - :al=\EE:am:bs:bt=\EI:bw:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :co#80:dc=\EW:\ - :dl=\ER:do=^V:ei=:ic=\EQ:if=/usr/share/lib/tabset/std:im=:kb=^H:kd=^V:\ - :kh=^^:kl=^H:kn#12:kr=^L:ku=^K:li#24:nd=^L:pt:se=\EG0:sg#1:so=\EG4:\ - :ue=\EG0:ug#1:ul:up=^K:us=\EG8:is=\El\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :ve=\E.4:vs=\E.2: -# The following tvi descriptions from B:pjphar and virus!mike -# is for all 950's. It sets the following attributes: -# full duplex (\EDF) write protect off (\E() -# conversation mode (\EC) graphics mode off (\E%) -# white on black (\Ed) auto page flip off (\Ew) -# turn off status line (\Eg) clear status line (\Ef\r) -# normal video (\E0) monitor mode off (\EX or \Eu) -# edit mode (\Er) load blank char to space (\Ee\040) -# line edit mode (\EO) enable buffer control (^O) -# protect mode off (\E\047) duplex edit keys (\El) -# program unshifted send key to send line all (\E016) -# program shifted send key to send line unprotected (\E004) -# set the following to nulls: -# field delimiter (\Ex0\200\200) -# line delimiter (\Ex1\200\200) -# start-protected field delimiter (\Ex2\200\200) -# end-protected field delimiter (\Ex3\200\200) -# set end of text delimiter to carriage return/null (\Ex4\r\200) -# -va|tvi950|950|televideo950:\ - :ct=\E3:st=\E1:do=^J:\ - :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200\Ef\r:\ - :al=\EE:am:le=^H:bs:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ - :co#80:dc=\EW:dl=\ER:do=^V:ei=\Er:ho=^^:im=\Eq:k0=^A0\r:\ - :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ - :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^V:kh=^^:kl=^H:\ - :ko=ic\054dc\054al\054dl\054cl\054bt\054ce\054cd:kr=^L:\ - :ku=^K:li#24:ma=^Vj^Kk^Hh^Ll^^H:mi:ms:nd=^L:pt:se=\EG0:\ - :sg#1:so=\EG4:sr=\Ej:ue=\EG0:ug#1:up=^K:us=\EG8:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :xn:hs:ts=\Eg\Ef:fs=\r:ds=\Eg\Ef\r: -# -# is for 950 with two pages adds the following: -# set 48 line page (\E\\2) -# place cursor at page 0, line 24, column 1 (\E-07 ) -# set local (no send) edit keys (\Ek) -# -# two page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 48 line page (\E\\2) -# place cursor at 0,24,1 (\E-07 ) -# set duplex (send) edit keys (\El) when entering vi -# set local (no send) edit keys (\Ek) when exiting vi -# -vb|tvi950-2p|950-2p|televideo950 w/2 pages:\ - :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200\E\\2\E-07 \ - :te=\E\\2\E-07 :ti=\E\\1\E-07 :ks=\El:ke=\Ek:tc=tvi950: -# -# is for 950 with four pages adds the following: -# set 96 line page (\E\\3) -# place cursor at page 0, line 24, column 1 (\E-07 ) -# -# four page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 96 line page (\E\\3) -# place cursor at 0,24,1 (\E-07 ) -# -vc|tvi950-4p|950-4p|televideo950 w/4 pages:\ - :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200\E\\3\E-07 \ - :te=\E\\3\E-07 :ti=\E\\1\E-07 :ks=\El:ke=\Ek:tc=tvi950: -# -# is for reverse video 950 changes the following: -# set reverse video (\Ed) -# -# set vb accordingly (\Ed ...nulls... \Eb) -# -vd|tvi950-rv|950-rv|televideo950 rev video:\ - :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200:\ - :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:\ - :tc=tvi950: -# -# uses the appropriate entries from 950-2p and 950-rv -# -ve|tvi950-rv-2p|950-rv-2p|televideo950 rev video w/2 pages:\ - :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200\E\\2\E-07 :\ - :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:\ - :te=\E\\2\E-07 :ti=\E\\1\E-07 :ks=\El:ke=\Ek:tc=tvi950: -# -# uses the appropriate entries from 950-4p and 950-rv -# -vf|tvi950-rv-4p|950-rv-4p|televideo950 rev video w/4 pages:\ - :is=\EDF\EC\Eb\EG0\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O\ - \Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\ - \Ex3\200\200\Ex4\r\200\E\\3\E-07 :\ - :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:\ - :te=\E\\3\E-07 :ti=\E\\1\E-07 :ks=\El:ke=\Ek:tc=tvi950: -vi|tvi924|924|televideo model 924:\ - :am:bs:xn:co#80:li#24:cm=\E=%+ %+ :cl=\E*0:cd=\Ey:ce=\Et:is=\Ek0\E"^O:\ - :al=\EE:dl=\ER:im=:ei=:ic=\EQ:dc=\EW:if=/usr/share/lib/tabset/stdcrt:ho=^^:\ - :nd=^L:bt=\EI:pt:so=\EG4:se=\EG0:us=\EG8:ue=\EG0:up=^K:do=^V:kb=^H:\ - :ku=^K:kd=^V:kl=^H:kr=^L:kh=^^:ma=^Vj^Kk^Ll^^H^R^L:k1=^A@\r:k2=^AA\r:\ - :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ - :k0=^AI\r:ko=ic,dc,al,dl,cl,ce,cd,bt:sr=\Ej:\ - :hs:fs=^Y\Es1:ts=\Ef:ds=\Es0\Ef^Y: -vo|tvi924vb|924vb|televideo model 924 visual bells:\ - :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\ - :tc=tvi924: -# tvipt termcap from armsis@amber (Gene Rochlin), 9/19/84. Works with vi and -# rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 char/line (rather than -# 40), Esc K chooses the normal character set. Not sure padding is needed, but -# adapted from the tvi920c termcap. so and us are klutzy, but at least use no -# screen space. -vp|tvipt|televideopt:if=/usr/share/lib/tabset/stdcrt:\ - :is=\Ev\Eu\EK:al=5*\EE:am:bs:bt=\EI:ce=\ET:cm=\E=%+ %+ :cl=^Z:co#80:\ - :dl=5*\ER:kb=^H:ku=^K:kd=^J:kl=^H:kr=^L:ho=^^:li#24:nd=^L:se=\EF:\ - :so=\EG1@A\EH:ue=\EF:us=\EG1B@\EH:up=^K:ma=^Kk^Ll^R^L: -# from Alan R. Rogers (rogers%albany@csnet-relay) -vm|tvi910|910|old televideo 910:\ - :if=/usr/share/lib/tabset/stdcrt:\ - :am:bs:bt=\EI:cd=\EY:ce=\ET:ch=\E]%+ :cl=\E+^Z:cm=\E=%+ %+ :co#80:\ - :cv=\E[%+ :do=^J:ho=^^:k0=^A\100^M:k1=^AA^M:k2=^AB^M:k3=^AC^M:\ - :k4=^AD^M:k5=^AE^M:k6=^AF^M:k7=^AG^M:k8=^AH^M:k9=^AI^M:kn#10:kb=^H:\ - :ku=^K:kd=^J:kh=^^:kl=^H:kr=^L:li#24:ms:nd=^L:se=\E(:sg#1:\ - :so=\E):up=^K:ma=^Jj^Kk^Hh^Ll^^H:pt:ue=\EG0:us=\EG8:xn: -vh|tvi910+|910+|televideo 910+:\ - :al=5*\EE:am:bs:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+\040%+\040:\ - :co#80:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:\ - :if=/usr/share/lib/tabset/stdcrt:im=:k0=^A@\r:k1=^AA\r:k2=^AB\r:k3=^AC\r:\ - :k4=^AD\r:k5=^AE\r:k6=^AF\r:k7=^AG\r:k8=^AH\r:k9=^AI\r:kb=^H:\ - :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:li#24:ll=\E=7\040:ma=^K^P^L\040:\ - :nd=^L:pt:se=\EG0:sg#1:so=\EG4:ue=\EG0:up=^K:us=\EG8:xn: -# From fair@ucbarpa Sun Oct 27 07:21:05 1985 -v6|ims950-b|bare ims950 no is:\ - :is@:tc=ims950: -v7|ims950-ns|ims950 w/no standout:\ - :so@:se@:us@:ue@:tc=ims950: -va|ims950|ims televideo 950 emulation:\ - :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:kl@:ko@:kr@:ku@:\ - :vb@:xn@:tc=tvi950: -vd|ims950-rv|ims tvi950 rev video:\ - :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:kl@:ko@:kr@:ku@:\ - :vb@:xn@:tc=tvi950-rv: -vx|ims-ansi|ultima2|ultimaII|IMS Ultima II:\ - :pt:am:bs:co#80:li#24:\ - :is=\E[0m\E[>14l\E[?1;?5;20l\E>\E[1m^M:if=/usr/share/lib/tabset/vt100:\ - :cl=\E[;H\E[2J:cd=\E[0J:ce=\E[0K:cm=\E[%i%2;%2H:up=\EM:do=\ED:\ - :ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:kh=\E[H:\ - :so=\E[7m:se=\E[0m\E[1m:us=\E[4m:ue=\E[0m\E[1m:sr=\EM: -# # -------------------------------- -# -# x: XEROX -# -# Xerox 820 description by Mitch Bradley (sun!wmb) -x8|xerox820|820|820-2|Xerox 820:\ - :al=\EE:ce=^X:dc=\EW:dl=\ER:ic=\EQ:me=\E(:mh=\E8\E):mr=\E7\E):\ - :se=\E(:so=\E7\E):tc=adm3a: -# # -------------------------------- -# -# y: TELERAY -# -# Note two things called "teleray". Reorder should move the common one -# to the front if you have either. A dumb teleray with the cursor stuck -# on the bottom and no obvious model number is probably a 3700. -y1|t3700|teleray|dumb teleray 3700:\ - :do=^J:le=^H:bs:cl=^L:co#80:li#24: -y3|t3800|teleray 3800 series:\ - :do=^J:le=^H:bs:cd=\EJ:ce=\EK:cl=^L:cm=\EY%+ %+ :co#80: \ - :do=\n:ho=\EH:li#24:ll=\EY7 :nd=\EC:pt:up=^K: -y6|t1061|teleray 1061:\ - :if=/usr/share/lib/tabset/teleray:\ - :ct=\EG:st=\EF:do=^J:\ - :al=2*\EL:am:le=^H:bs:cd=1\EJ:ce=\EK:cl=1^L:cm=\EY%+ %+ :co#80:\ - :dc=\EQ:dl=2*\EM:ei=:ho=\EH:ic=\EP:im=:ip=0.4*:\ - :k1=^Z1:k2=^Z2:k3=^Z3:k4=^Z4:k5=^Z5:k6=^Z6:k7=^Z7:k8=^Z8:\ - :li#24:nd=\EC:pt:se=\ER@:so= \ERD:\ - :is=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef:\ - :up=\EA:us=\ERH:ue=\ER@:xs:xt:sg#2:ug#1: -# "Teleray Arpa Special", offically designated as -# "Teleray Arpa network model 10" with "Special feature 720". -# This is the new (1981) fast microcode updating the older "arpa" proms -# (which gave meta-key and pgmmable-fxn keys). 720 is much much faster, -# converts the keypad to programmable function keys, and has other goodies. -# Standout mode is still broken (magic cookie, etc) so is suppressed as no -# programs handle such lossage properly. -# Note: this is NOT the old termcap's "t1061f with fast proms." -# From Univ of Utah, J.Lepreau Tue Feb 1 06:39:37 1983 -# lepreau@utah-cs, harpo!utah-cs!lepreau -# -y7|t10|teleray 10 special:\ - :so@:se@:us@:ue@:\ - :al=\EL:bs:cd=\EJ:ce=\EK:cl=30\Ej:cm=\EY%+ %+ :co#80:\ - :dc=\EQ:dl=\EM:ei=:ho=\EH:ic=\EP:im=:km:li#24:nd=\EC:pc=\200:pt:\ - :se=\ER@:so=\ERD:sf=\Eq:sg#2:sr=\Ep:up=\EA:ug#1:ue=\ER@:us=\ERH:\ - :xs:xt: -yf|t1061f|teleray 1061 with fast PROMs:\ - :al=\EL:ip@:dl=\EM:tc=t1061: -# # -------------------------------- -# -# w: Wyse (although some are "y" entries instead) -# -# This one is here just in case anyone ever finds a use for it. Emacs gets -# confused drawing mode lines when the terminal is in Wyse mode. --tpm -# The problem with mode lines is that EMACS assume 1) that video attributes -# are in effect to the end of the line, not the end of the display, and 2) -# that the "ce" capability will, on any terminal with the standout glitch, -# turn off standout mode to the end of the line. Neither are true of the -# Wyse-50 (or Wyse-30) in Wyse mode. --gh -# This entry comes from Steve Hartwell. I think he got it from Pyramid's -# UNIX. It has subsequently been merged with the 4.3BSD entry by Toni -# Guttman, extended by Jeff Anton. The trick of using protected mode for -# standout mode has been observed to well and truly hang the terminal up, -# so that "feature" of the 4.3BSD entry has not been incorporated. -ye|w50|wyse50|wyse-50|Wyse 50 in Wyse mode:\ - :al=\EE:am:bs:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :co#80:\ - :da:db:dc=\EW:dl=\ER:ei=\Er:im=\Eq:is=\E`\072\200\EC\EDF\E'\E(:\ - :kd=^J:kl=^H:kr=^L:ku=^K:li#24:nd=^L:up=^K:us=\EG8:ue=\EG0:\ - :so=\EG4:se=\EG0:sg#1:sr=\Ej:ho=^^:ug#1:\ - :if=/usr/share/lib/tabset/stdcrt: -# it is not known if the status line works with sysline -yh|w50-s|wyse50-s|Wyse 50 for sysline:\ - :hs:ts=\Ef:fs=\r:ds=\Ef\r:es:tc=w50: -yg|w50-w|w50-132|wyse50-132|Wyse 50-132:\ - :cm=\Ea%i%dR%dC:co#132:is=\E`;\200\EC\EDF\E'\E(:tc=w50: -# The following seems to be the best mode to run a Wyse-50 in. It works -# with Emacs using this termcap entry. Wyse mode seems to be a loser. -# Note that you have to manually set emulation mode to ADDSVP and turn -# ENHANCE on. --tpm -# Tab support, better is and rs, and wyse-nk added Jan85 by sun!gnu -wv|wyse-vp|wyse|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on:\ - :am:do=^J:if=/usr/share/lib/tabset/wyse-adds:\ - :le=^H:bs:li#24:co#80:cm=\EY%+ %+ :cd=\Ek:ce=\EK:nd=^F:\ - :up=^Z:cl=^L:ho=^A:ll=^A^Z:kl=^U:kr=^F:kd=^J:ku=^Z:kh=^A:\ - :pt:so=^N:se=^O:us=^N:ue=^O:dl=\El:al=\EM:im=\Eq:ei=\Er:dc=\EW:\ - :is=\E`\072\E`9^O\Er:rs=\E`\072\E`9^O\Er: -# This is the same as above, but with no keys. This makes vi ^F, ^B, work. -wk|wyse-vp-nk|wyse-nk|Wyse 50 in ADDS Viewpoint enhanced mode with cursor keys gone:\ - :kl@:kr@:kd@:ku@:kh@:tc=wyse-vp: -# The Wyse-50 does not correctly emulate a Televideo 925. -vw|w9|wyse925|wyse-925|Wyse-50 emulating tvi925:\ - :xn@:tc=tvi925: -# wyse 75 series from JLarson.pa@xerox.arpa -wx|wyse75|wy75|wyse 75 terminal :\ - :co#80:li#24:cl=50\E[H\E[2J:bs:cm=5\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :al=3\E[L:dl=3\E[M:ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:do=\E[B:\ - :ic=\E[@:ei=:im=:pt:bw:dc=\E[P:ce=3\E[K:ho=10\E[H:pt:\ - :mi:nd=\E[C:bt=\E[Z:us=\E[8p:ue=\E[p:so=\E[5m:se=\E[m:\ - :md=\E[1p:mr=\E[16p:mb=\E[2p:mk=\E[4p:me=\E[0p:hs:ll=\E[24;1H:\ - :cd=50\E[J:cs=9\E[%i%d;%dr:ae=\E(B:as=\E(0:kh=\E[H:kb=^H:\ - :k0=\EOP:k1=\EOQ:k2=\EOR:k3=\EOS:k4=\E[M:\ - :k5=\E[17~:k6=\E[31~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kn#10:\ - :l0=PF1:l1=PF2:l2=PF3:l3=PF4:l4=F5:\ - :l5=F6:l6=F7:l7=F8:l8=F9:l9=F10:\ - :is=\E[1;24r\E[?10;3;1l\E[4l\E[?25h\E[m\E(B\E>:\ - :ds=\E7\E[>,//\E8:ts=\E7\E[>,^A:fs=^A\E8: -wx|wyse75-80|wy75-80|wyse 75 terminal with 80-column initialization:\ - :is=\E[?3l:tc=wy75: -wl|wyse75-132|wy75-132|wyse 75 terminal with 132 columns :\ - :is=\E[?3h:co#132:tc=wy75: -# -# Wyse WY75 utilizing keypad -# -w5|wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad:\ - :is=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=:\ - :kd=\EOB:ke=10\E[?1l\E>:kh=\EOH:kl=\EOD:kr=\EOC:\ - :ks=10\E[?1h\E=:ku=\EOA:\ - :tc=wyse75: -# from ucbvax!ucsfmis!shewmake -Wc|wy85|wyse85|wyse-85:\ - :do=^J:co#80:li#24:cl=\E[;H\E[2J:\ - :le=^H:bs:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[0K:cd=\E[0J:so=\E[7m:se=\E[27m:\ - :us=\E[4m:ue=\E[24m:\ - :is=\E[1;24r\E[24;1H\E[0m:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ - :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kh=\E[H":pt:sr=\EM:\ - :sc=\E7:rc=\E8:cs=\E[%i%d;%dr:as=^N:ae=^O:bt=\E[Z:\ - :dc=\E[P:dl=\E[M:al=\E[L:ei=\E[4l:im=\E[4h:\ - :vb=\E[?5h\E[?5l:\ - :hs:es:ts=\E7\E[?25l\E[40h\E[25;%dH\E[2K:fs=\E[1;24r\E8\E[?25h: -# -# # -------------------------------- -# -# z: MISC (cont) -# -z0|wind:\ - :bs:cm=\Ep%r%.%.:cl=\En\120\030\Eo:co#80:\ - :ho=\Ep\200\200:li#24:nd=^L:up=^K:nl=\035:\ - :kl=\E3:kr=\E4:ku=\E1:kd=\E2:k1=\E5:k2=\E6:k3=\E7:k4=\E8:\ - :so=\Em\014:se=\Em\003: -z1|wind16:\ - :bs:cm=\Ep%r%.%.:cl=\En\120\020\Eo:co#80:\ - :ho=\Ep\200\200:li#16:nd=^L:up=^K:nl=\035:\ - :so=\Em\014:se=\Em\003: -z2|wind40:\ - :bs:cm=\Ep%r%.%.:cl=\En\120\050\Eo:co#80:\ - :ho=\Ep\200\200:li#40:nd=^L:up=^K:nl=\035:\ - :so=\Em\014:se=\Em\003: -z3|wind50:\ - :bs:cm=\Ep%r%.%.:cl=\En\128\062\Eo:co#88:\ - :ho=\Ep\200\200:li#50:nd=^L:up=^K:nl=\035:\ - :kl=\E3:kr=\E4:ku=\E1:kd=\E2:k1=\E5:k2=\E6:k3=\E7:k4=\E8:\ - :so=\Em\014:se=\Em\003: -z4|cad68-3|cgc3|cad68 basic monitor transparent mode size 3 chars:\ - :am:bs:cl=^Z:co#73:ho=\036:li#36:nd=^L:up=^K: -z5|cad68-2|cgc2|cad68 basic monitor transparent mode size 2 chars:\ - :am:bs:cl=^Z:co#85:ho=\036:li#39:nd=^L:up=^K:\ - :kl=\E3:kr=\E4:ku=\E1:kd=\E2:k1=\E5:k2=\E6:k3=\E7:k4=\E8:\ - :so=\Em\014:se=\Em\003: -z6|v50|visual 50:\ - :am:bs:al=\EL:dl=\EM:\ - :cd=\Ek:ce=\EK:cl=^Z:cm=\E=%+\040%+\040:co#80:do=^J:ho=\EH:\ - :kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:li#24:ms:nd=^L:pt:\ - :so=\EU:se=\ET:up=^K: -z7|trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M:\ - :nl=^_:al=^D:am:bs:cd=^B:ce=^A:cl=^L:cm=\EY%+ %+ :co#80:\ - :dl=^K:do=^_:ho=^F:li#24:nd=^]:ms:pt:se=^O:so=^N:up=^^:\ - :kb=^H:kd=^_:kl=^\:kr=^]:ku=^^: -z8|apollo:\ - :al=\EI:am:bs:cd=\EJ:ce=\EK:ch=\EN%d:cl=^L:cm=\EM%+ %d):\ - :cv=\EO+ :dc=\EP:dl=\EL:do=\EB:ei=\ER:im=\EQ:mi:nd=\EC:se=\ET:sf=\EE:\ - :so=\ES:sr=\ED:te=\EX:ti=\EW:ue=\EV:ul:up=\EA:us=\EU:co#88:li#53: -z9|ps300|Picture System 300:us@:ue@:so@:se@:xt:pt@:tc=vt100: -za|masscomp2:co#64:li#21:tc=masscomp: -zb|masscomp1:co#104:li#36:tc=masscomp: -zc|masscomp:\ - :al=\E[L:bs:cd=\E[J:ce=\E[K:co#80:dc=\E[P:dl=\E[M:do=\E[B:\ - :ei=\E[4l:im=\E[4h:is=\EGc\EGb\EGw:li#24:mi:MT:nd=\E[C:pt:se=\E[0m:\ - :sg#0:so=\E[7m:cm=\E[%i%d;%dH:ue=\EGau:us=\EGu:up=\E[A:\ - :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^h:cl=\E[2J: -# Kimtron TC entries include (undocumented) codes for: enter dim mode (mh), -# enter bold mode (md), enter reverse mode (mr), turn off all attributes (me) -# Kimtron ABM 85 added by Dual Systems -zd|abm85|Kimtron ABM 85:\ - :is=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq:if=/usr/share/lib/tabset/stdcrt:\ - :li#24:co#80:am:bs:bw:ms:pt:\ - :cl=\E*:cd=\Ey:dl=\ER:al=\EE:ce=\Et:dc=\EW:im=\EQ:ei=\Er:\ - :cm=\E=%+ %+ :do=^J:nd=^L:up=^K:bt=\EI:\ - :kh=^^:kb=^H:kd=^J:ku=^K:kd=^J:kl=^H:kr=^L:\ - :so=\Ej:se=\Ek:sg#1:us=\El:ue=\Em:ug#1: -# Kimtron ABM 85H added by Dual Systems. -# Some notes about the 85h entries: -# 1) there are several firmware revs of 85H in the world. Use o85h for -# firmware revs prior to SP51 -# 2) Make sure to use 85h entry if the terminal is in 85H mode and the -# 85e entry if it is in 920 emulation mode. They are incompatible in -# some places and NOT software settable i.e., `is' can't fix change it) -# 3) In 85h mode, the arrow keys and special functions transmit when -# the terminal is in dup-edit, and work only locally in local-edit. -# Vi won't swallow `del char' for instance, but `vs' turns on -# dup-edit anyway so that the arrow keys will work right. If the -# arrow keys don't work the way you like, change `vs', `ve', and `is'. -# 920E mode does not have software commands to toggle between dup -# and local edit, so you get whatever was set last on the terminal. -# 4) vb attribute is nice, but seems too slow to work correctly (\Eb<pad>\Ed) -# 5) Make sure `hidden' attributes are selected. If `embedded' attributes -# are selected, the entries :sg@: and :ug@: should be removed. -# 6) auto new-line should be on (selectable from setup mode only) -# -# From fair@ucbarpa Sun Oct 27 07:21:05 1985 -ze|85h|85H|abm85h|Kimtron ABM 85H, 85H mode:\ - :is=\EC\EN\EX^T^N\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef^M\EG0\Ed\E.4\El:\ - :im=\EZ:kd=^V:so=\EG4:se=\EG0:us=\EG8:ue=\EG0:vb@:vs=\E.2:ve=\E.4:\ - :mh=\E):mr=\EG4:me=\E(\EG0:sg@:ug@:ds=\Ee:fs=^M:hs:ts=\Eg\Ef:tc=abm85: -zf|85e|85E|abm85e|Kimtron ABM 85H, 920E mode:\ - :is=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef^M\Ek\Eq\Em:\ - :mh=\E):mr=\Ej:me=\E(\Ek:im=\EZ:sg@:ug@:vb@:tc=abm85: -zg|o85h|oabm85h|Kimtron ABM 85H, old firmware rev.:\ - :is=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF:\ - :im=\EZ:sg@:ug@:vb=\200\200\200^G\200\200\200:\ - :mh=\E):mr=\Ej:me=\E(\Ek:tc=abm85: -#from malman@bbn-vax.arpa -zE|kt7|kimtron model kt-7:\ - :am:bs:co#80:li#24:cm=\E=%+ %+ :cl=^Z:cd=\EY:ce=\ET:is=\El\E":\ - :al=\EE:dl=\ER:im=:ei=:ic=\EQ:dc=\EW:if=/usr/share/lib/tabset/stdcrt:\ - :ho=^^:nd=^L:bt=\EI:pt:so=\EG4:se=\EG0:sg#0:us=\EG8:ue=\EG0:ug#0:\ - :up=^K:do=^V:kb=^H:ku=^K:kd=^V:kl=^H:kr=^L:kh=^^:ma=^V^J^L :\ - :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:\ - :k8=^AG\r:k9=^AH\r:k0=^AI\r:ko=ic,dc,al,dl,cl,ce,cd,bt:\ - :ts=\Ef:fs=\Eg: -zh|appleII|apple ii plus:vs=\024\103\066:ve=\024\103\062:\ - :am:co#80:ce=\035:li#24:cl=\014:bs:nd=\034:up=\037:ho=\E\031:pt:\ - :cd=\013:so=\017:se=\016:cm=\036%r%+ %+ :is=\024T1\016:do=^J:kd=^J:\ - :vb=\024G1\024T1:kr=^U: -# Gary Ford 21NOV83 -# New version from ee178aci%sdcc7@SDCSVAX.ARPA Fri Oct 11 21:27:00 1985 -zi|apple-80|apple II with smarterm 80 col:\ - :am:bs:bt=^R:bw:cd=10*^K:ce=10^]:cl=10*^L:cm=^^%r%+ %+ :\ - :co#80:cr=10*^M:do=^J:ho=^Y:le=^H:li#24:nd=^\\:up=^_: -# -zj|lisa|apple lisa xenix console display (white on black):\ - :al=\E[L:am:bs:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:co#88:\ - :dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:li#32:\ - :nd=\E[C:ms:pt:so=\E[m:se=\E[7m:us=\E[4m:ue=\E[7m:up=\E[A:\ - :kb=^h:ku=\E[A:kd=\E[B:kl=\E[D:kr=\E[C:eo:\ - :is=\E[7m^L:GS=\E[11m:GE=\E[10m:GV=\140:GH=a:G1=c:\ - :G2=f:G3=e:G4=d:GU=u:GD=s:GC=b:GL=v:GR=t: -# The following is a version of the ibm-pc entry distributed with PC/IX, -# (Interactive Systems' System 3 for the Big Blue), modified by Richard -# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original, -# (the former is untrue, and the latter failed under UCB/man); standout and -# underline modes have been added. Note: this entry describes the "native" -# capabilities of the PC monochrome display, without ANY emulation; most -# communications packages (but NOT PC/IX connect) do some kind of emulation. -pc|ibmpc|ibm pc PC/IX:\ - :li#24:co#80:am:bs:bw:eo:\ - :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[;H:\ - :nd=\E[C:up=\E[A:so=\E[7m:se=\E[0m:us=\E[4m:ue=\E[0m: -zk|ibmx|ibmpcx|IBM PC xenix console display:\ - :al=\E[L:am:bs:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%d;%dH:co#80:\ - :dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:li#25:\ - :nd=\E[C:ms:se=\E[0m:so=\E[7m:us=\E[4m:\ - :ue=\E[m:up=\E[A:MR=\E[0m:\ - :kb=^h:kh=\E[Y:ku=\E[A:kd=\E[B:kl=\E[D:kr=\E[C:eo:\ - :GS=\E[11m:GE=\E[10m:\ - :GC=b:GL=v:GR=t:RT=^J:\ - :GH=\E[196g:GV=\E[179g:\ - :GU=\E[193g:GD=\E[194g:\ - :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\ - :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\ - :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\ - :HM=\E[Y:EN=\E[d:PU=\E[Z:PD=\E[e: -zl|ibmc|ibmcpc|IBM PC xenix color console display:\ - :tc=ibm: -zl|ibmcx|ibmcpcx|IBM PC xenix color console display:\ - :tc=ibmx: -zm|kaypro|kaypro2|kaypro II:\ - :am:bs:cm=\E=%+ %+ :cl=1^Z:co#80:ho=^^:li#24:ma=^K^P:nd=^L:up=^K:\ - :kr=^L:kl=^H:ku=^K:kd=^J: -# From Suk Lee ..!{decvax,linus,allegra,ihnp4}!utcsrgv!spoo -zn|trs100|Radio Shack Model 100:\ - :am:bs:le=^H:li#8:co#40:ku=^^:kd=^_:kl=^]:kr=^\:up=\EA:\ - :nd=\EC:ho=\EH:ce=\EK:cd=\EJ:cl=\EE:xt:cm=\EY%+ %+ :\ - :so=\Ep:se=\Eq:al=\EL:dl=\EM: -zt|mac|macintosh|Macintosh with MacTerminal:\ - :al=20\E[L:dl=20\E[M:ip=7:dc=7\E[P:ic=9\E[@:xn:dN#30:tc=vt100: -zs|zen50|z50|zephyr:\ - :cm=\E=%+ %+ :cd=\EY:co#80:li#24:\ - :am:al=\EE:ce=\ET:dc=\EW:dl=\ER:ic=\EQ:im=:ei=:\ - :cl=\E+:bs:ma=^Hh^Ll^Jj^Kk:sg#1:se=\EGO:so=\EG4:\ - :kl=^H:kr=^L:ku=^K:kd=^J:kh=\036:up=^K:\ - :BS=^U:CL=^V:CR=^B:RK=^L:UK=^K:LK=^H:DK=^J:HM=\036: -zu|go140|graphon go-140:\ - :co#80:li#24:cl=10\E[;H\E[2J:bs:cm=\E[%i%2;%2H:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=10\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ - :is=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q:\ - :dl=\E[M:al=\E[L:dc=\E[P:im=\E[4h:ei=\E[4l:\ - :ks=\E[?1h\E=:ke=\E[?1l\E>:\ - :if=/usr/share/lib/tabset/vt100:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\ - :kh=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=\EM: -zv|go140w|graphon go-140 in 132 column mode:\ - :co#132:is=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q:\ - :tc=go140: -zw|sanyo55|sanyo|sanyo mbc-55x pc compatible:\ - :co#80:li#25:am:cl=\E[H\E[J:bs:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m: -#From: Simson L. Garfinkel <simsong@media-lab.mit.edu> -st|ST|atari st:\ - :bs:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :co#80:li#25:nd=\EC:\ - :pt:sr=\EI:up=\EA:ku=\EA:kd=\EB:kr=\EC:kl=\ED:\ - :do=\EB:\ - :so=\Ep:se=\Eq:dl=\EM:al=\EL:am: -# YTERM standard version 1.0. (gts 9-25-84) -# Straight old ascii keyboard except function keys are Yale (e.g.,ASCII.KBD). -# Only 80 tab columns (else yterm 1.1 bug). No :xn: in 1.0. -# Cannot use termcap :sr=\EM: because vi will not work, too bad. -# vi string is given so that yterm is reset each vi startup. -Y0|yterm10|yterm 1.0 UCB ascii.kbd:\ - :am:bs:cd=^K:ce=^]:cl=^L:cm=^^%r%+ %+ :co#80:EP:ho=^Y:li#24:nd=^\:pt:\ - :rc=\E8:sc=\E7:so=\E[7m:se=\E[m:up=^_:us=\E[4m:ue=\E[m:\ - :is=^O\E[7i\E[m\E[?7h\E[?3g\r\EHY0 for \EHYTERM 1.\EH0 with A\EHSCII.KBD\EH 9-13-84\EH \EH \EH \EH \EH\n:\ - :ku=^K:kd=^J:kl=^H:kr=^L:kh=^^:ma=^Hh^Jj^Kk^Ll^^H:\ - :k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:\ - :vs=^O\E[7i\E[m\E[?7h\E[?3g\r\EHY0 \EH \EH \EH \EH \EH \EH \EH \EH \EH\r: -# YTERM varient version 1.1. (gts 9-13-84) Version 1.1 has :xn:. -Y1|yterm11|yterm 1.1 UCB ascii.kbd:\ - :xn:is=^O\E[7i\E[m\E[?7h\E[?3g\r\EHY1 for \EHYTERM 1.\EH1 with A\EHSCII.KBD\EH 9-13-84\EH \EH \EH \EH \EH\n:\ - :tc=yterm10 -# YTERM 1.0 varient no autowrap or tabs -# X does not remember autowrap or tabs when T is deleted and restarted. -Y2|yterm10nat|yterm 1.0 UCB ascii.kbd no autowrap or tabs:\ - :am@:pt@:vs=^O\E[7i\E[m\E[?7l\E[?3g\rY2\r:\ - :is=^O\E[7i\E[m\E[?7l\E[?3g\rY2 for YTERM 1.0 with ASCII.KBD 9-20-84 no autowrap or tabs\n:\ - :tc=yterm10 -# KERMIT standard all versions. (gts 9-25-84) -# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. -K0|kermit|standard kermit:\ - :bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:ho=\EH:li#24:nd=\EC:up=\EA:\ - :ku=^K:kd=^J:kl=^H:kr=^L:kh=^^:ma=^Hh\012j^Kk^Ll^^H:\ - :is=K0 Standard Kermit 9-25-84\n: -K1|kermitam|standard kermit plus am:\ - :am:is=K1 Standard Kermit plus Automatic Margins\n:tc=kermit: -# IBMPC Kermit 1.2. (gts 8-30-84) -# Bugs :cd:ce: do not work except at beginning of line! :cl: does not work, -# but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of line). -K2|pckermit|pckermit12|UCB IBMPC Kermit 1.2:\ - :am:li#25:cd@:ce@:cl=\EH\EJ:\ - :is=K2 UCB IBMPC Kermit 1.2 8-30-84\n:tc=kermit: -# IBMPC Kermit 1.20 (gts 12-19-84) -# Cannot use line 25, now acts funny like ansi special scrolling region. -# Initialization must escape from that region by cursor position to line 24. -# Cannot use character insert because 1.20 goes crazy if insert at col 80. -# Does not use am: because autowrap mode lost when kermit dropped and restarted. -K3|pckermit120|UCB IBMPC Kermit 1.20:\ - :al=\EL:am@:dc=\EN:dl=\EM:do=\EB:ei@:im@:li#24:pt:se=\Eq:so=\Ep:\ - :is=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n:\ - :vs=\EO\Eq\EEK3:tc=kermit: -# MS-DOS Kermit 2.27 for the IBMPC (UCB gts 3-17-85) -# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. -# Cannot use line 25, now acts funny like ansi special scrolling region. -# Initialization must escape from that region by cursor position to line 24. -# Does not use am: because autowrap mode lost when kermit dropped and restarted. -# Reverse video for standout like H19. -K4|mskermit227|msk227|MS-DOS Kermit 2.27 for the IBMPC:\ - :al=\EL:am@:bs:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :co#80:\ - :dc=\EN:dl=\EM:do=\EB:ei=\EO:im=\E@:\ - :ho=\EH:li#24:nd=\EC:up=\EA:pt:rc=\Ek:sc=\Ej:se=\Eq:so=\Ep:\ - :ku=^K:kd=^J:kl=^H:kr=^L:kh=^^:ma=^Hh\012j^Kk^Ll^^H:\ - :is=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n:\ - :vs=\EO\Eq\EG\EwK4: -# MS-DOS Kermit 2.27 with automatic margins (UCB gts 3-17-85) -K5|mskermit227am|msk227am|UCB MS-DOS Kermit 2.27 with automatic margins:\ - :am:\ - :is=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n:\ - :vs=\EO\Eq\EG\EvK5:tc=mskermit227: -# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC (UCB gts 3-17-85) -# Automatic margins now default. Use ansi set graphic rendition for standout, -# underline and ul codes (md,me,mr). Define function keys. -K6|mskermit22714|msk22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC:\ - :am:kn#10:\ - :k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:\ - :md=\E[1m:me=\E[m:mr=\E[7m:se=\E[m:so=\E[1m:ue=\E[m:us=\E[4m:\ - :is=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n:\ - :vs=\EO\Eq\EG\EvK6:tc=mskermit227: -# From earle@smeagol.UUCP 29 Oct 85 05:40:18 GMT -# MS-Kermit with Heath-19 emulation mode enabled -Kh|h19kermit|h19k|heathkit emulation provided by Kermit (no auto margin):\ - :am@:ta@:pt@:xt:da:db:tc=h19-u: -# rough draft of Amiga termcap by Mike Meyer -AA|amiga|Amiga ANSI:\ - :co#80:li#25:am:do=\E[B:ce=\E[K:cd=\E[J:\ - :cl=\E[H\E[J:ku=\E[A:kd=\E[B:kl=\E[C:kr=\E[D:kb=^H:\ - :al=\E[L:dl=\E[M:le=^H:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\ - :ce=\E[K:ho=\E[H:dc=\E[P:ic=\E[@:\ - :so=\E[2m:se=\E[m:us=\E[4m:ue=\E[m:mr=\E[7m:mb=\E[7;2m:me=\E[m: -# The pcplot IBM-PC terminal emulation program is really messed up. It is -# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly, -# doesn't support scrolling regions, ignores add line commands, and ignores -# delete line commands. Consequently, the resulting behavior looks like a -# crude adm3a-type terminal. -# Steve Jacobson 8/85 -pp|pcplot:\ - :cs@:sc@:rc@:xn@:tc=vt100: -# From Joel Rubin, jmrubin@coral, a preliminary TERMCAP for VIDTEX, -# a terminal program sold by Compuserve. Line and column numbers are -# computer-dependent (I have a Commodore '64); you should use the meta-B -# option to shut off clean-breaking of lines. No key codes included -# since some of them are programmable and most are machine-specific. -# Works on vi if you don't use clean-breaking. Very similar to the IBM 3101 -# termcap. Escape-D used for backspace because control-H is destructive -# backspace. There seem to be a few weirdnesses (especially at the beginning -# of a wrapped line), and the cursor does not, unfortunately, flash. -zQ|vid|vidtex|Compuserve vidtex program:\ - :am:bc=\ED:cl=^L:li#25:co#40:nd=\EC:up=\EA:cd=\EJ:ce=\EK:\ - :ho=\EH:cm=\EY%+\40%+\40:pt: -# Fortune from c160-3bp@Coral (Robert Nathanson) via tut Wed Oct 5, 1983 -zK|fos|fortune|Fortune system:\ - :is=^_..:li#25:co#80:am:bs:bw:cl=20^L:cd=3*^\Y:\ - :ic=5^\Q:dc=5^\W:dl=15^\R:al=15^\E:cm=^\C%+ %+ :ta=^Z:ho=10^^:do=3^J:\ - :up=3^K:kb=^H:kd=^Ay\r:kh=^A?\r:kl=^Aw\r:kr=^Az\r:ku=^Ax\r:\ - :nl=5^J:so=^\H`:se=^\I`:sg#0:us=^\HP:ue=^\IP:ug#0:ce=^\Z:rv=\EH:re=\EI:\ - :rg=0:GS=\Eo:GE=^O:GG=0:GV=-:GH=&:GU=%:GD=#:G1=(:G2= :G3=":G4=*:CF=\E]:\ - :CO=\E\\:WL=^Aa\r:WR=^Ab\r:CL=^Ac\r:CR=^Ad\r:DL=^Ae\r:RF=^Af\r:\ - :RC=^Ag\r:CW=^Ah\r:NU=^Aj\r:EN=^Ak\r:HM=^Al:PL=^Am\r:PU=^An\r:PD=^Ao\r:\ - :PR=^Ap\r:HP=^A@\r:RT=^Aq\r:TB=\r:CN=\177:MP=\E+F: -# basis from Peter Harrison, Computer Graphics Lab, San Francisco -# ucbvax!ucsfmis!harrison ...uucp / ucbvax!ucsfmis!harrison@BERKELEY ...ARPA -ba|basis|BASIS108 computer with terminal translation table active:\ - :do=5000^J:nl=5000*^J:\ - :cd=\EY:ce=\ET:cl=300\E*:ma=^K^P^R^L^L :\ - :kb=^H:kl=^H:ku=^K:kr=^L:kd=^J:so=\E(:se=\E):tc=adm3a: -# From Peter Harrison, Computer Graphics Lab, San Francisco -# ucbvax!ucsfmis!harrison .....uucp -# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA -# "These two work. If you don't have the inverse video chip for the -# Apple with videx then remove the so and se fields." -zO|DaleApple|Apple with videx videoterm 80 column board with inverse video:\ - :do=^J:am:le=^H:bs:cd=^K:ce=^]:cl=300^L:cm=^^%r%+ %+ :co#80:ho=^Y:\ - :kd=^J:kl=^H:kr=^U:kh=^Y:\ - :li#24:nd=^\:pt:so=^Z3:se=^Z2:up=^_:xn: -zJ|ibmaed|IBM Experimental display:\ - :al=\EN:am:bs:cd=\EJ:ce=\EI:cl=\EH\EK:cm=\EY%+\40%+\40:co#80:\ - :dc=\EQ:dl=\EO:do=\EB:ei=:ho=\EH:ic=\EP:im=:li#52:\ - :nd=\EC:ms:so=\E0:se=\E0:us=:ue=:up=\EA:\ - :kb=^h:ku=\EA:kd=\EB:kl=\ED:kr=\EC:eo:vb=\EG:pt: -# funny terminal that the TANDEM uses. -zA|653|t653x|Tandem 653x multipage terminal:\ - :li#24:co#80:ho=\EH:cm=\023%+ %+ :cl=\EI:cd=\EJ:ce=\EK:am:bs:\ - :if=/usr/share/lib/tabset/tandem653:sb=\ES:sr=\ET:da:db:so=\E6$:se=\E6 :\ - :us=\E60:ue=\E6 :sg#1:ug#1:up=\EA:do=\012:le=\010:nd=\EC:\ - :hs:ts=\Eo:fs=\r:ds=\Eo\r:ws#64: -# Constructed dtterm entry from file /usr/share/lib/terminfo/d/dtterm -# via "infocmp -C dtterm", and preceded the entry with a 2 letter field -# as required by the tset command. -zp|dtterm|CDE terminal emulator:\ - :am:mi:ms:xn:xo:bs:pt:\ - :co#80:li#24:kn#2:\ - :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ - :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:\ - :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ - :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:ei=\E[4l:\ - :ho=\E[H:im=\E[4h:is=\E F\E>\E[?1l\E[?7h\E[?45l:\ - :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ - :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kb=\b:\ - :kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:nd=\E[C:rc=\E8:\ - :sc=\E7:se=\E[22;27m:so=\E[2;7m:sr=\EM:st=\EH:\ - :ue=\E[24m:up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:\ - :ve=\E[?25h:vi=\E[?25l:ko=nd,up: -# -# END OF TERMCAP -# ------------------------ diff --git a/usr/src/cmd/terminfo/termcap.src b/usr/src/cmd/terminfo/termcap.src new file mode 100644 index 0000000000..ba9fa1b3df --- /dev/null +++ b/usr/src/cmd/terminfo/termcap.src @@ -0,0 +1,20360 @@ +######## TERMINAL TYPE DESCRIPTIONS SOURCE FILE +# +# This version of terminfo.src is distributed with ncurses and is maintained +# by Thomas E. Dickey (TD). +# +# Report bugs and new terminal descriptions to +# bug-ncurses@gnu.org +# +# $Revision: 1.162 $ +# $Date: 2011/08/20 20:52:51 $ +# +# The original header is preserved below for reference. It is noted that there +# is a "newer" version which differs in some cosmetic details (but actually +# stopped updates several years ago); we have decided to not change the header +# unless there is also a change in content. +# +# To further muddy the waters, it is noted that changes to this file as part of +# maintenance of ncurses (since 1996) are generally conceded to be copyright +# under the ncurses MIT-style license. That was the effect of the agreement +# which the principal authors of ncurses made in 1998. However, since much of +# the file itself is of unknown authorship (and the disclaimer below makes it +# obvious that Raymond cannot or will not convey rights over those parts), +# there is no explicit copyright notice on the file itself. +# +# It would also be a nuisance to split the file into unknown/known authorship +# and move pieces as they are maintained, since many of the maintenance changes +# have been small corrections to Raymond's translations to/from termcap format, +# correcting the data but not the accompanying annotations. +# +# In any case, note that almost half of this file is not data but annotations +# which reflect creative effort. Furthermore, the structure of entries to +# reuse common chunks also is creative (and subject to copyright). Finally, +# some portions of the data are derivative work under a compatible MIT-style +# license from xterm. +# +#------------------------------------------------------------------------------ +# Version 10.2.1 +# terminfo syntax +# +# Eric S. Raymond (current maintainer) +# John Kunze, Berkeley +# Craig Leres, Berkeley +# +# Please e-mail changes to terminfo@thyrsus.com; the old termcap@berkeley.edu +# address is no longer valid. The latest version can always be found at +# <http://www.tuxedo.org/terminfo>. +# +# PURPOSE OF THIS FILE: +# +# This file describes the capabilities of various character-cell terminals, +# as needed by software such as screen-oriented editors. +# +# Other terminfo and termcap files exist, supported by various OS vendors +# or as relics of various older versions of UNIX. This one is the longest +# and most comprehensive one in existence. It subsumes not only the entirety +# of the historical 4.4BSD, GNU, System V and SCO termcap files and the BRL +# termcap file, but also large numbers of vendor-maintained termcap and +# terminfo entries more complete and carefully tested than those in historical +# termcap/terminfo versions. +# +# Pointers to related resources (including the ncurses distribution) may +# be found at <http://www.tuxedo.org/terminfo>. +# +# INTERNATIONALIZATION: +# +# This file uses only the US-ASCII character set (no ISO8859 characters). +# +# This file assumes a US-ASCII character set. If you need to fix this, start +# by global-replacing \E(B and \E)B with the appropriate ISO 6429 enablers +# for your character set. \E(A and \E)A enables the British character set +# with the pound sign at position 2/3. +# +# In a Japanese-processing environment using EUC/Japanese or Shift-JIS, +# C1 characters are considered the first-byte set of the Japanese encodings, +# so \E)0 should be avoided in <enacs> and initialization strings. +# +# FILE FORMAT: +# +# The version you are looking at may be in any of three formats: master +# (terminfo with OT capabilities), stock terminfo, or termcap. You can tell +# which by the format given in the header above. +# +# The master format is accepted and generated by the terminfo tools in the +# ncurses suite; it differs from stock (System V-compatible) terminfo only +# in that it admits a group of capabilities (prefixed `OT') equivalent to +# various obsolete termcap capabilities. You can, thus, convert from master +# to stock terminfo simply by filtering with `sed "/OT[^,]*,/s///"'; but if +# you have ncurses `tic -I' is nicer (among other things, it automatically +# outputs entries in a canonical form). +# +# The termcap version is generated automatically from the master version +# using tic -C. This filtering leaves in the OT capabilities under their +# original termcap names. All translated entries fit within the 1023-byte +# string-table limit of archaic termcap libraries except where explicitly +# noted below. Note that the termcap translation assumes that your termcap +# library can handle multiple tc capabilities in an entry. 4.4BSD has this +# capability. Older versions of GNU termcap, through 1.3, do not. +# +# For details on these formats, see terminfo(5) in the ncurses distribution, +# and termcap(5) in the 4.4BSD Unix Programmer's Manual. Be aware that 4.4BSD +# curses has been declared obsolete by the caretakers of the 4.4BSD sources +# as of June 1995; they are encouraging everyone to migrate to ncurses. +# +# Note: unlike some other distributed terminfo files (Novell Unix & SCO's), +# no entry in this file has embedded comments. This is so source translation +# to termcap only has to carry over leading comments. Also, no name field +# contains embedded whitespace (such whitespace confuses rdist). +# +# Further note: older versions of this file were often installed with an editor +# script (reorder) that moved the most common terminal types to the front of +# the file. This should no longer be necessary, as the file is now ordered +# roughly by type frequency with ANSI/VT100 and other common types up front. +# +# Some information has been merged in from terminfo files distributed by +# USL and SCO (see COPYRIGHTS AND OTHER DELUSIONS below). Much information +# comes from vendors who maintain official terminfos for their hardware +# (notably DEC and Wyse). +# +# A detailed change history is included at the end of this file. +# +# FILE ORGANIZATION: +# +# Comments in this file begin with # - they cannot appear in the middle +# of a terminfo/termcap entry (this feature had to be sacrificed in order +# to allow standard terminfo and termcap syntax to be generated cleanly from +# the master format). Individual capabilities are commented out by +# placing a period between the colon and the capability name. +# +# The file is divided up into major sections (headed by lines beginning with +# the string "########") and minor sections (beginning with "####"); do +# +# grep "^####" <file> | more +# +# to see a listing of section headings. The intent of the divisions is +# (a) to make it easier to find things, and (b) to order the database so +# that important and frequently-encountered terminal types are near the +# front (so that you'll get reasonable search efficiency from a linear +# search of the termcap form even if you don't use reorder). Minor sections +# usually correspond to manufacturers or standard terminal classes. +# Parenthesized words following manufacturer names are type prefixes or +# product line names used by that manufacturers. +# +# HOW TO READ THE ENTRIES: +# +# The first name in an entry is the canonical name for the model or +# type, last entry is a verbose description. Others are mnemonic synonyms for +# the terminal. +# +# Terminal names look like <manufacturer> <model> - <modes/options> +# The part to the left of the dash, if a dash is present, describes the +# particular hardware of the terminal. The part to the right may be used +# for flags indicating special ROMs, extra memory, particular terminal modes, +# or user preferences. +# +# All names should be in lower case, for consistency in typing. +# +# The following are conventionally used suffixes: +# -2p Has two pages of memory. Likewise 4p, 8p, etc. +# -am Enable auto-margin. +# -m Monochrome. Suppress color support +# -mc Magic-cookie. Some terminals (notably older Wyses) can +# only support one attribute without magic-cookie lossage. +# Their base entry is usually paired with another that +# uses magic cookies to support multiple attributes. +# -nam No auto-margin - suppress :am: capability +# -nl No labels - suppress soft labels +# -ns No status line - suppress status line +# -rv Terminal in reverse video mode (black on white) +# -s Enable status line. +# -vb Use visible bell (:vb:) rather than :bl:. +# -w Wide - in 132 column mode. +# If a name has multiple suffixes and one is a line height, that one should +# go first. Thus `aaa-30-s-rv' is recommended over `aaa-s-rv-30'. +# +# Entries with embedded plus signs are designed to be included through use/tc +# capabilities, not used as standalone entries. +# +# To avoid search clashes, some older all-numeric names for terminals have +# been removed (i.e., "33" for the Model 33 Teletype, "2621" for the HP2621). +# All primary names of terminals now have alphanumeric prefixes. +# +# Comments marked "esr" are mostly results of applying the termcap-compiler +# code packaged with ncurses and contemplating the resulting error messages. +# In many cases, these indicated obvious fixes to syntax garbled by the +# composers. In a few cases, I was able to deduce corrected forms for garbled +# capabilities by looking at context. All the information in the original +# entries is preserved in the comments. +# +# In the comments, terminfo capability names are bracketed with <> (angle +# brackets). Termcap capability names are bracketed with :: (colons). +# +# INTERPRETATION OF USER CAPABILITIES +# +# The System V Release 4 and XPG4 terminfo format defines ten string +# capabilities for use by applications, <u0>...<u9>. In this file, we use +# certain of these capabilities to describe functions which are not covered +# by terminfo. The mapping is as follows: +# +# u9 terminal enquire string (equiv. to ANSI/ECMA-48 DA) +# u8 terminal answerback description +# u7 cursor position request (equiv. to VT100/ANSI/ECMA-48 DSR 6) +# u6 cursor position report (equiv. to ANSI/ECMA-48 CPR) +# +# The terminal enquire string <u9> should elicit an answerback response +# from the terminal. Common values for <u9> will be ^E (on older ASCII +# terminals) or \E[c (on newer VT100/ANSI/ECMA-48-compatible terminals). +# +# The cursor position request (<u7>) string should elicit a cursor position +# report. A typical value (for VT100 terminals) is \E[6n. +# +# The terminal answerback description (u8) must consist of an expected +# answerback string. The string may contain the following scanf(3)-like +# escapes: +# +# %c Accept any character +# %[...] Accept any number of characters in the given set +# +# The cursor position report (<u6>) string must contain two scanf(3)-style +# %d format elements. The first of these must correspond to the Y coordinate +# and the second to the %d. If the string contains the sequence %i, it is +# taken as an instruction to decrement each value after reading it (this is +# the inverse sense from the cup string). The typical CPR value is +# \E[%i%d;%dR (on VT100/ANSI/ECMA-48-compatible terminals). +# +# These capabilities are used by tack(1m), the terminfo action checker +# (distributed with ncurses 5.0). +# +# TABSET FILES +# +# All the entries in this file have been edited to assume that the tabset +# files directory is /usr/share/tabset, in conformance with the File Hierarchy +# Standard for Linux and open-source BSD systems. Some vendors (notably Sun) +# use /usr/lib/tabset or (more recently) /usr/share/lib/tabset. +# +# No curses package we know of actually uses these files. If their location +# is an issue, you will have to hand-patch the file locations before compiling +# this file. +# +# REQUEST FOR CONTACT INFORMATION AND HISTORICAL MATERIAL +# +# As the ANSI/ECMA-48 standard and variants take firmer hold, and as +# character-cell terminals are increasingly replaced by X displays, much of +# this file is becoming a historical document (this is part of the reason for +# the new organization, which puts ANSI types, xterm, Unix consoles, +# and vt100 up front in confidence that this will catch 95% of new hardware). +# +# For the terminal types still alive, I'd like to have manufacturer's +# contact data (Internet address and/or snail-mail + phone). +# +# I'm also interested in enriching the comments so that the latter portions of +# the file do in fact become a potted history of VDT technology as seen by +# UNIX hackers. Ideally, I'd like the headers for each manufacturer to +# include its live/dead/out-of-the-business status, and for as many +# terminal types as possible to be tagged with information like years +# of heaviest use, popularity, and interesting features. +# +# I'm especially interested in identifying the obscure entries listed under +# `Miscellaneous obsolete terminals, manufacturers unknown' before the tribal +# wisdom about them gets lost. If you know a lot about obscure old terminals, +# please go to the terminfo resource page, grab the UFO file (ufo.ti), and +# eyeball it for things you can identify and describe. +# +# If you have been around long enough to contribute, please read the file +# with this in mind and send me your annotations. +# +# COPYRIGHTS AND OTHER DELUSIONS +# +# The BSD ancestor of this file had a standard Regents of the University of +# California copyright with dates from 1980 to 1993. +# +# Some information has been merged in from a terminfo file SCO distributes. +# It has an obnoxious boilerplate copyright which I'm ignoring because they +# took so much of the content from the ancestral BSD versions of this file +# and didn't attribute it, thereby violating the BSD Regents' copyright. +# +# Not that anyone should care. However many valid functions copyrights may +# serve, putting one on a termcap/terminfo file with hundreds of anonymous +# contributors makes about as much sense as copyrighting a wall-full of +# graffiti -- it's legally dubious, ethically bogus, and patently ridiculous. +# +# This file deliberately has no copyright. It belongs to no one and everyone. +# If you claim you own it, you will merely succeed in looking like a fool. +# Use it as you like. Use it at your own risk. Copy and redistribute freely. +# There are no guarantees anywhere. Svaha! +# + +######## ANSI, UNIX CONSOLE, AND SPECIAL TYPES +# +# This section describes terminal classes and brands that are still +# quite common. +# + +#### Specials +# +# Special "terminals". These are used to label tty lines when you don't +# know what kind of terminal is on it. The characteristics of an unknown +# terminal are the lowest common denominator - they look about like a ti 700. +# + +dumb|80-column dumb tty:\ + :am:\ + :co#80:\ + :bl=^G:cr=^M:do=^J:sf=^J: +unknown|unknown terminal type:\ + :gn:tc=dumb: +lpr|printer|line printer:\ + :bs:hc:os:\ + :co#132:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J: +glasstty|classic glass tty interpreting ASCII control characters:\ + :am:bs:\ + :co#80:\ + :bl=^G:cl=^L:cr=^M:do=^J:kd=^J:kl=^H:le=^H:nw=^M^J:ta=^I: + +vanilla|dumb tty:\ + :bs:\ + :bl=^G:cr=^M:do=^J:sf=^J: + +# This is almost the same as "dumb", but with no prespecified width. +# DEL and ^C are hardcoded to act as kill characters. +# ^D acts as a line break (just like newline). +# It also interprets +# \033];xxx\007 +# for compatibility with xterm -TD +9term|Plan9 terminal emulator for X:\ + :am:\ + :bl=^G:do=^J:nl=^J: + +#### ANSI.SYS/ISO 6429/ECMA-48 Capabilities +# +# See the end-of-file comment for more on these. +# + +# ANSI capabilities are broken up into pieces, so that a terminal +# implementing some ANSI subset can use many of them. +ansi+local1:\ + :do=\E[B:le=\E[D:nd=\E[C:up=\E[A: +ansi+local:\ + :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:tc=ansi+local1: +ansi+tabs:\ + :bt=\E[Z:ct=\E[3g:st=\EH:ta=^I: +ansi+inittabs:\ + :it#8:tc=ansi+tabs: +ansi+erase:\ + :cd=\E[J:ce=\E[K:cl=\E[H\E[J: +ansi+rca:\ + :ch=\E[%+^AG:cv=\E[%+^Ad: +ansi+cup:\ + :cm=\E[%i%d;%dH:ho=\E[H: +ansi+rep: +ansi+idl1:\ + :al=\E[L:dl=\E[M: +ansi+idl:\ + :AL=\E[%dL:DL=\E[%dM:tc=ansi+idl1: +ansi+idc:\ + :IC=\E[%d@:dc=\E[P:ei=\E6:ic=\E[@:im=\E6: +ansi+arrows:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A: +ansi+sgr|ansi graphic renditions:\ + :mb=\E[5m:me=\E[0m:mk=\E[8m:mr=\E[7m: +ansi+sgrso|ansi standout only:\ + :se=\E[m:so=\E[7m: +ansi+sgrul|ansi underline only:\ + :ue=\E[m:us=\E[4m: +ansi+sgrbold|ansi graphic renditions; assuming terminal has bold; not dim:\ + :md=\E[1m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul: +ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold:\ + :mh=\E[2m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul: +ansi+pp|ansi printer port:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i: +ansi+csr|ansi scroll-region plus cursor save & restore:\ + :cs=\E[%i%d;%dr:rc=\E8:sc=\E7: + +# The IBM PC alternate character set. Plug this into any Intel console entry. +# We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the +# ROM graphics for control characters such as the diamond, up- and down-arrow. +# This works with the System V, Linux, and BSDI consoles. It's a safe bet this +# will work with any Intel console, they all seem to have inherited \E[11m +# from the ANSI.SYS de-facto standard. +klone+acs|alternate character set for ansi.sys displays:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :ae=\E[10m:as=\E[11m: + +# Highlight controls corresponding to the ANSI.SYS standard. Most +# console drivers for Intel boxes obey these. Makes the same assumption +# about \E[11m as klone+acs. True ANSI/ECMA-48 would have :se=\E[27m:, +# :ue=\E[24m:, but this isn't a documented feature of ANSI.SYS. +klone+sgr|attribute control for ansi.sys displays:\ + :S2=\E[11m:S3=\E[10m:mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:tc=klone+acs: + +# Most Intel boxes do not treat "invis" (invisible) text. +klone+sgr8|attribute control for ansi.sys displays:\ + :mk=\E[8m:tc=klone+sgr: + +# Highlight controls corresponding to the ANSI.SYS standard. *All* +# console drivers for Intel boxes obey these. Does not assume \E[11m will +# work; uses \E[12m instead, which is pretty bulletproof but loses you the ACS +# diamond and arrow characters under curses. +klone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m):\ + :as=\E[12m:mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:mr=\E[7m:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:tc=klone+acs: + +# KOI8-R (RFC1489) acs (alternate character set) +# From: Qing Long <qinglong@Bolizm.ihep.su>, 24 Feb 1996. +klone+koi8acs|alternate character set for ansi.sys displays with KOI8 charset:\ + :ac=+\020,\021-\036.^_0\215`\004a\237f\234g\232h\222i\220j\205k\203l\202m\204n\212o\213p\216q\200r\217s\214t\206u\207v\210w\211x\201y\230z\231{\267|\274}L~\225:\ + :ae=\E[10m:as=\E[11m: + +# ANSI.SYS color control. The setab/setaf caps depend on the coincidence +# between SVr4/XPG4's color numbers and ANSI.SYS attributes. Here are longer +# but equivalent strings that don't rely on that coincidence: +# setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, +# setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, +# The DOS 5 manual asserts that these sequences meet the ISO 6429 standard. +# They match a subset of ECMA-48. +klone+color|color control for ansi.sys and ISO6429-compatible displays:\ + :Co#8:NC#3:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[37;40m: + +# This is better than klone+color, it doesn't assume white-on-black as the +# default color pair, but many `ANSI' terminals don't grok the <op> cap. +ecma+color|color control for ECMA-48-compatible terminals:\ + :AX:\ + :Co#8:NC#3:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[39;49m: + +# Attribute control for ECMA-48-compatible terminals +ecma+sgr|attribute capabilities for true ECMA-48 terminals:\ + :se=\E[27m:ue=\E[24m:tc=klone+sgr8: + +# For comparison, here are all the capabilities implied by the Intel +# Binary Compatibility Standard (level 2) that fit within terminfo. +# For more detail on this rather pathetic standard, see the comments +# near the end of this file. +ibcs2|Intel Binary Compatibility Standard prescriptions:\ + :AL=\E[%dL:DC=\E[%dP:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:S1=\E=%dg:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:bt=\E[Z:ch=\E[%i%dG:cl=\Ec:\ + :cm=\E[%i%d;%dH:ct=\E[g:cv=\E[%i%dd:do=\E[1B:ec=\E[%dX:\ + :ei=:im=:le=\E[1D:nd=\E[1C:rc=\E7:sc=\E7:st=\EH:up=\E[1A: + +#### ANSI/ECMA-48 terminals and terminal emulators +# +# See near the end of this file for details on ANSI conformance. +# Don't mess with these entries! Lots of other entries depend on them! +# +# This section lists entries in a least-capable to most-capable order. +# if you're in doubt about what `ANSI' matches yours, try them in that +# order and back off from the first that breaks. + +# ansi-mr is for ANSI terminals with ONLY relative cursor addressing +# and more than one page of memory. It uses local motions instead of +# direct cursor addressing, and makes almost no assumptions. It does +# assume auto margins, no padding and/or xon/xoff, and a 24x80 screen. +ansi-mr|mem rel cup ansi:\ + :am:xo:\ + :co#80:li#24:tc=vanilla:tc=ansi+erase:tc=ansi+local1: + +# ansi-mini is a bare minimum ANSI terminal. This should work on anything, but +# beware of screen size problems and memory relative cursor addressing. +ansi-mini|any ansi terminal with pessimistic assumptions:\ + :am:xo:\ + :co#80:li#24:tc=vanilla:tc=ansi+cup:tc=ansi+erase: + +# ansi-mtabs adds relative addressing and minimal tab support +ansi-mtabs|any ansi terminal with pessimistic assumptions:\ + :it#8:\ + :ta=^I:tc=ansi+local1:tc=ansi-mini: + +# ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL +# +# The following is an entry for the full ANSI 3.64 (1977). It lacks +# padding, but most terminals using the standard are "fast" enough +# not to require any -- even at 9600 bps. If you encounter problems, +# try including the padding specifications. +# +# Note: the :as: and :ae: specifications are not implemented here, for +# the available termcap documentation does not make clear WHICH alternate +# character set to specify. ANSI 3.64 seems to make allowances for several. +# Please make the appropriate adjustments to fit your needs -- that is +# if you will be using alternate character sets. +# +# There are very few terminals running the full ANSI 3.64 standard, +# so I could only test this entry on one verified terminal (Visual 102). +# I would appreciate the results on other terminals sent to me. +# +# Please report comments, changes, and problems to: +# +# U.S. MAIL: Hugh Hansard +# Box: 22830 +# Emory University +# Atlanta, GA. 30322. +# +# USENET {akgua,msdc,sb1,sb6,gatech}!emory!mlhhh. +# +# (Added vt100 :rc:,:sc: to quiet a tic warning --esr) +ansi77|ansi 3.64 standard 1977 version:\ + :am:bs:mi:\ + :co#80:it#8:li#24:\ + :al=5*\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=5*\E[M:\ + :do=\E[B:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOR:k4=\EOS:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :nd=\E[C:nw=^M\ED:rc=\E8:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:\ + :sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: + +# Procomm and some other ANSI emulations don't recognize all of the ANSI- +# standard capabilities. This entry deletes :UP:, :RI:, :DO:, :LE:, and +# <vpa>/<hpa> capabilities, forcing curses to use repetitions of :up:, +# :nd:, :do: and :le:. Also deleted :IC: and :ic:, as QModem up to +# 5.03 doesn't recognize these. Finally, we delete :rp: and :sr:, which seem +# to confuse many emulators. On the other hand, we can count on these programs +# doing :ae:/:as:/:sa:. Older versions of this entry featured +# <invis=\E[9m>, but <invis=\E[8m> now seems to be more common under +# ANSI.SYS influence. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Oct 30 1995 +pcansi-m|pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:\ + :ho=\E[H:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=\E[D:nd=\E[C:sf=^J:st=\EH:ta=^I:up=\E[A:\ + :tc=klone+sgr-dumb: +pcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode):\ + :li#25:tc=pcansi-m: +pcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode):\ + :li#33:tc=pcansi-m: +pcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode):\ + :li#43:tc=pcansi-m: +# The color versions. All PC emulators do color... +pcansi|ibm-pc terminal programs claiming to be ansi:\ + :tc=klone+color:tc=pcansi-m: +pcansi-25|pcansi25|ibm-pc terminal programs with 25 lines:\ + :li#25:tc=pcansi: +pcansi-33|pcansi33|ibm-pc terminal programs with 33 lines:\ + :li#33:tc=pcansi: +pcansi-43|pcansi43|ibm-pc terminal programs with 43 lines:\ + :li#43:tc=pcansi: + +# ansi-m -- full ANSI X3.64 with ANSI.SYS-compatible attributes, no color. +# If you want pound signs rather than dollars, replace `B' with `A' +# in the <s0ds>, <s1ds>, <s2ds>, and <s3ds> capabilities. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995 +ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\ + :5i:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :cb=\E[1K:ch=\E[%i%dG:ct=\E[3g:cv=\E[%i%dd:ec=\E[%dX:ei=:\ + :im=:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\ + :nw=\r\E[S:pf=\E[4i:po=\E[5i:s0=\E(B:s1=\E)B:s2=\E*B:\ + :s3=\E+B:ta=\E[I:tc=pcansi-m: + +ansi+enq|ncurses extension for ANSI ENQ:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u9=\E[c: + +# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in +# standard terminfo. Assumes ANSI.SYS-compatible attributes and color. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995 +ansi|ansi/pc-term compatible with color:\ + :tc=ansi+enq:tc=ecma+color:tc=klone+sgr8:tc=ansi-m: + +# ansi-generic is a vanilla ANSI terminal. This is assumed to implement +# all the normal ANSI stuff with no extensions. It assumes +# insert/delete line/char is there, so it won't work with +# vt100 clones. It assumes video attributes for bold, blink, +# underline, and reverse, which won't matter much if the terminal +# can't do some of those. Padding is assumed to be zero, which +# shouldn't hurt since xon/xoff is assumed. +ansi-generic|generic ansi standard terminal:\ + :am:xo:\ + :co#80:li#24:tc=vanilla:tc=ansi+csr:tc=ansi+cup:\ + :tc=ansi+rca:tc=ansi+erase:tc=ansi+tabs:tc=ansi+local:\ + :tc=ansi+idc:tc=ansi+idl:tc=ansi+rep:tc=ansi+sgrbold:\ + :tc=ansi+arrows: + +#### DOS ANSI.SYS variants +# +# This completely describes the sequences specified in the DOS 2.1 ANSI.SYS +# documentation (except for the keyboard key reassignment feature, which +# doesn't fit the <pfkey> model well). The klone+acs sequences were valid +# though undocumented. The <pfkey> capability is untested but should work for +# keys F1-F10 (%p1 values outside this range will yield unpredictable results). +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 7 1995 +ansi.sys-old|ANSI.SYS under PC-DOS 2.1:\ + :am:bs:mi:ms:xo:\ + :co#80:li#25:\ + :RA=\E[?7l:SA=\E[?7h:ce=\E[k:cl=\E[2J:cm=\E[%i%d;%dH:\ + :do=\E[B:ho=\E[H:is=\E[m\E[?7h:kd=^J:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:nd=\E[C:rc=\E[u:sc=\E[s:u6=\E[%i%d;%dR:\ + :u7=\E[6n:up=\E[A:tc=klone+color:tc=klone+sgr8: + +# Keypad: Home=\0G Up=\0H PrPag=\0I +# ka1,kh kcuu1 kpp,ka3 +# +# Left=\0K 5=\0L Right=\0M +# kcub1 kb2 kcuf1 +# +# End=\0O Down=\0P NxPag=\0Q +# kc1,kend kcud1 kc3,knp +# +# Ins=\0R Del=\0S +# kich1 kdch1 +# +# On keyboard with 12 function keys, +# shifted f-keys: F13-F24 +# control f-keys: F25-F36 +# alt f-keys: F37-F48 +# The shift/control/alt keys do not modify each other, but alt overrides both, +# and control overrides shift. +# +# <pfkey> capability for F1-F48 -TD +ansi.sys|ANSI.SYS 3.1 and later versions:\ + :@7=\200O:F1=\200\205:F2=\200\206:F3=\200T:F4=\200U:\ + :F5=\200V:F6=\200W:F7=\200X:F8=\200Y:F9=\200Z:FA=\200[:\ + :FB=\200\\:FC=\200]:FD=\200\207:FE=\200\210:FF=\200\136:\ + :FG=\200_:FH=\200`:FI=\200a:FJ=\200b:FK=\200c:FL=\200d:\ + :FM=\200e:FN=\200f:FO=\200g:FP=\200\211:FQ=\200\212:\ + :FR=\200h:FS=\200i:FT=\200j:FU=\200k:FV=\200l:FW=\200m:\ + :FX=\200n:FY=\200o:FZ=\200p:Fa=\200q:Fb=\200\213:\ + :Fc=\200\214:K1=\200G:K2=\200L:K3=\200I:K4=\200O:K5=\200Q:\ + :ce=\E[K:k1=\200;:k2=\200<:k3=\200=:k4=\200>:k5=\200?:\ + :k6=\200@:k7=\200A:k8=\200B:k9=\200C:k;=\200D:kB=\200^O:\ + :kD=\200S:kI=\200R:kN=\200Q:kP=\200I:kb=^H:kd=\200P:\ + :kh=\200G:kl=\200K:kr=\200M:ku=\200H:tc=ansi.sys-old: + +# +# Define IBM PC keypad keys for vi as per MS-Kermit while using ANSI.SYS. +# This should only be used when the terminal emulator cannot redefine the keys. +# Since redefining keys with ansi.sys also affects PC-DOS programs, the key +# definitions must be restored. If the terminal emulator is quit while in vi +# or others using :ks:/:ke:, the keypad will not be defined as per PC-DOS. +# The PgUp and PgDn are prefixed with ESC so that tn3270 can be used on Unix +# (^U and ^D are already defined for tn3270). The ESC is safe for vi but it +# does "beep". ESC ESC i is used for Ins to avoid tn3270 ESC i for coltab. +# Note that :kl: is always BS, because PC-dos can tolerate this change. +# Caution: vi is limited to 256 string bytes, longer crashes or weirds out vi. +# Consequently the End keypad key could not be set (it is relatively safe and +# actually useful because it sends ^@ O, which beeps and opens a line above). +ansi.sysk|ansisysk|PC-DOS 3.1 ANSI.SYS with keypad redefined for vi:\ + :is=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\ + :ke=\E[;71;0;71p\E[;72;0;72p\E[;73;0;73p\E[;77;0;77p\E[;80;0;80p\E[;81;0;81p\E[;82;0;82p\E[;83;0;83p:\ + :ks=\E[;71;30p\E[;72;11p\E[;73;27;21p\E[;77;12p\E[;80;10p\E[;81;27;4p\E[;82;27;27;105p\E[;83;127p:\ + :tc=ansi.sys: +# +# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer. +nansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS:\ + :al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\ + :is=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n:\ + :tc=ansi.sys: +# +# See ansi.sysk and nansi.sys above. +nansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi:\ + :al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\ + :is=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\ + :tc=ansi.sysk: + +#### ANSI console types + +# +# Atari ST terminals. +# From Guido Flohr <gufl0000@stud.uni-sb.de>. +# +tw52|tw52-color|Toswin window manager with color:\ + :ut:\ + :Co#16:pa#256:\ + :oc=\Eb?\Ec0:op=\Eb?\Ec0:tc=tw52-m: +tw52-m|Toswin window manager monochrome:\ + :ul:\ + :ma#999:\ + :dc=\Ea:is=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0:md=\Eya:me=\Ez_:\ + :mh=\EyB:mr=\EyP:rs=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0:se=\EzQ:\ + :so=\EyQ:ue=\EzH:us=\EyH:tc=at-m: +tt52|Atari TT medium and high resolution:\ + :li#30:tc=at-color: +st52-color|at-color|atari-color|atari_st-color|Atari ST with color:\ + :ut:\ + :Co#16:pa#256:\ + :is=\Ev\Eq\Ee\Eb1\Ec0:rs=\Ev\Eq\Ee\Eb1\Ec0:tc=st52: +st52|st52-m|at|at-m|atari|atari-m|atari_st|atarist-m|Atari ST:\ + :NP:am:eo:mi:\ + :co#80:it#8:li#24:\ + :#4=\Ed:%1=\EH:%i=\Ec:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:\ + :F5=\Et:F6=\Eu:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:al=\EL:bl=^G:\ + :cb=\Eo:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:dl=\EM:\ + :do=\EB:ho=\EH:is=\Ev\Eq\Ee:k1=\EP:k2=\EQ:k3=\ER:k4=\ES:\ + :k5=\ET:k6=\EU:k7=\EV:k8=\EW:k9=\EX:k;=\EY:kD=\177:kI=\EI:\ + :kN=\Eb:kP=\Ea:kb=^H:kd=\EB:kh=\EE:kl=\ED:kr=\EC:ku=\EA:\ + :le=\ED:me=\Eq:mr=\Ep:nd=\EC:nw=^M^J:rc=\Ek:rs=\Ev\Eq\Ee:\ + :sc=\Ej:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:up=\EA:ve=\Ee:\ + :vi=\Ef: +tw100|toswin vt100 window mgr:\ + :eo:mi:ms:xo:\ + :Co#8:co#80:it#8:li#24:pa#64:vt#3:\ + :%1=\EH:&8=\EK:DL=\E[%dM:DO=\E[%dB:F1=\Ep:F2=\Eq:F3=\Er:\ + :F4=\Es:F5=\Et:F6=\Eu:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=++,,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\EL:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\Ea:dl=\E[M:do=\EB:ei=\Ei:ho=\E[H:im=\Eh:\ + :is=\E<\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\ + :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:k;=\EOY:kD=\177:kI=\EI:\ + :kN=\Eb:kP=\E\Ea:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E\EE:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[2m:mr=\E[7m:nd=\EC:nw=\EE:\ + :oc=\E[30;47m:op=\E[30;47m:\ + :r1=\E<\E[20l\E[?3;6;9l\E[r\Eq\E(B\017\E)0\E>:rc=\E8:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?7h:ti=\E[?7l:ue=\E[m:up=\EA:us=\E[4m:ve=\Ee:vi=\Ef: +# The entries for stv52 and stv52pc probably need a revision. +stv52|MiNT virtual console:\ + :am:ms:\ + :co#80:it#8:li#30:\ + :%1=\EH:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:F5=\Et:F6=\Eu:\ + :F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:al=\EL:bl=^G:cd=\EJ:ce=\EK:\ + :cl=\EE:cm=\EY%+ %+ :cr=^M:dl=\EM:do=\EB:ho=\EH:k1=\EP:\ + :k2=\EQ:k3=\ER:k4=\ES:k5=\ET:k6=\EU:k7=\EV:k8=\EW:k9=\EX:\ + :k;=\EY:kD=\177:kI=\EI:kN=\Eb:kP=\Ea:kb=^H:kd=\EB:kh=\EE:\ + :kl=\ED:kr=\EC:ku=\EA:le=^H:mb=\Er:md=\EyA:me=\Ez_:mh=\Em:\ + :mr=\Ep:nd=\EC:nw=2*\r\n:op=\Eb@\EcO:r1=\Ez_\Eb@\EcA:\ + :se=\Eq:sf=2*\n:so=\Ep:sr=2*\EI:ta=^I:te=\Ev\E. \Ee\Ez_:\ + :ti=\Ev\Ee\Ez_:ue=\EzH:up=\EA:us=\EyH:ve=\E. \Ee:vi=\Ef:\ + :vs=\E.": +stv52pc|MiNT virtual console with PC charset:\ + :am:ms:\ + :co#80:it#8:li#30:\ + :%1=\EH:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:F5=\Et:F6=\Eu:\ + :F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:\ + :ac=+\257,\256-\136.v0\333I\374`\177a\260f\370g\361h\261j\331k\277l\332m\300n\305o\377p-q\304r-s_t+u+v+w+x\263y\363z\362{\343|\366}\234~\371:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\ + :dl=\EM:do=\EB:ho=\EH:k1=\EP:k2=\EQ:k3=\ER:k4=\ES:k5=\ET:\ + :k6=\EU:k7=\EV:k8=\EW:k9=\EX:k;=\EY:kD=\177:kI=\EI:kN=\Eb:\ + :kP=\Ea:kb=^H:kd=\EB:kh=\EE:kl=\ED:kr=\EC:ku=\EA:le=^H:\ + :mb=\Er:md=\EyA:me=\Ez_:mh=\Em:mr=\Ep:nd=\EC:nw=2*\r\n:\ + :r1=\Ez_\Eb@\EcA:se=\Eq:sf=2*\n:so=\Ep:sr=2*\EI:ta=^I:\ + :te=\Ev\E. \Ee\Ez_:ti=\Ev\Ee\Ez_:ue=\EzH:up=\EA:us=\EyH:\ + :ve=\E. \Ee:vi=\Ef:vs=\E.": + +#### Atari ST +# + +# From: Simson L. Garfinkel <simsong@media-lab.mit.edu> +atari-old|atari st:\ + :am:bs:\ + :co#80:it#8:li#25:\ + :al=\EL:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :dl=\EM:do=\EB:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:me=\Eq:nd=\EC:se=\Eq:\ + :so=\Ep:sr=\EI:ta=^I:up=\EA: +# UniTerm terminal program for the Atari ST: 49-line VT220 emulation mode +# From: Paul M. Aoki <aoki@ucbvax.berkeley.edu> +uniterm|uniterm49|UniTerm VT220 emulator with 49 lines:\ + :li#49:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H:\ + :tc=vt220: +# MiNT VT52 emulation. 80 columns, 25 rows. +# MiNT is Now TOS, the operating system which comes with all Ataris now +# (mainly Atari Falcon). This termcap is for the VT52 emulation you get +# under tcsh/zsh/bash/sh/ksh/ash/csh when you run MiNT in `console' mode +# From: Per Persson <pp@gnu.ai.mit.edu>, 27 Feb 1996 +st52-old|Atari ST with VT52 emulation:\ + :am:km:\ + :co#80:li#25:\ + :K1=\E#7:K2=\E#9:K3=\E#5:K4=\E#1:K5=\E#3:al=\EL:bl=^G:\ + :cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:dl=\EM:do=\EB:\ + :ho=\EH:k0=\E#D:k1=\E#;:k2=\E#<:k3=\E#=:k4=\E#>:k5=\E#?:\ + :k6=\E#@:k7=\E#A:k8=\E#B:k9=\E#C:kA=\E#R:kC=\E#7:kF=\E#2:\ + :kR=\E#8:kb=^H:kd=\E#P:kh=\E#G:kl=\E#K:kr=\E#M:ku=\E#H:\ + :l0=f10:le=\ED:me=\Eq:nd=\EC:nw=^M^J:r1=\Ez_\Eb@\EcA:\ + :rc=\Ek:sc=\Ej:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:te=:ti=\Ee:\ + :up=\EA:ve=\Ee:vi=\Ef: + +#### BeOS +# +# BeOS entry for Terminal program Seems to be almost ANSI +beterm|BeOS Terminal:\ + :am:eo:mi:ms:xn:xo:\ + :Co#8:NC#5:co#80:it#8:li#25:pa#64:\ + :&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\E[21~:F2=\E[22~:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:Sb=\E[%+(m:Sf=\E[%+^^m:UP=\E[%dA:\ + :al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%dG:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:\ + :ho=\E[H:ic=\E[@:im=\E[4h:k1=\E[11~:k2=\E[12~:k3=\E[13~:\ + :k4=\E[14~:k5=\E[15~:k6=\E[16~:k7=\E[17~:k8=\E[18~:\ + :k9=\E[19~:k;=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:ke=\E[?4l:kh=\E[1~:kl=\E[D:kr=\E[C:\ + :ks=\E[?4h:ku=\E[A:le=^H:md=\E[1m:me=\E[0;10m:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:op=\E[m:r1=\Ec:rc=\E8:sc=\E7:se=\E[m:sf=^J:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:u6=\E[%i%d;%dR:u7=\E[6n:\ + :ue=\E[24m:up=\E[A:us=\E[4m: + +#### Linux consoles +# + +# This entry is good for the 1.2.13 or later version of the Linux console. +# +# *************************************************************************** +# * * +# * WARNING: * +# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in * +# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab * +# * character. Here are the keymap replacement lines that will set this up: * +# * * +# keycode 15 = Tab Tab +# alt keycode 15 = Meta_Tab +# shift keycode 15 = F26 +# string F26 ="\033[Z" +# * * +# * This has to use a key slot which is unfortunate (any unused one will * +# * do, F26 is the higher-numbered one). The change ought to be built * +# * into the kernel tables. * +# * * +# *************************************************************************** +# +# All linux kernels since 1.2.13 (at least) set the screen size +# themselves; this entry assumes that capability. +# +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +linux-basic|linux console:\ + :am:eo:mi:ms:ut:xn:xo:\ + :NC#18:it#8:U8#1:\ + :&7=^Z:@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\ + :IC=\E[%d@:K2=\E[G:Km=\E[M:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:\ + :ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:\ + :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\E[B:kh=\E[1~:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:r1=\Ec\E]R:rc=\E8:sc=\E7:se=\E[27m:sf=^J:sr=\EM:\ + :st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=200\E[?5h\E[?5l:tc=vt102+enq:tc=klone+sgr:\ + :tc=ecma+color: + +linux-m|Linux console no color:\ + :Co@:pa@:\ + :AB@:AF@:Sb@:Sf@:tc=linux: + +# The 1.3.x kernels add color-change capabilities; if yours doesn't have this +# and it matters, turn off <ccc>. The %02x escape used to implement this is +# not supposedly back-portable to older SV curses (although it has worked fine +# on Solaris for several years) and not supported in ncurses versions before +# 1.9.9. +linux-c-nc|linux console with color-change:\ + :cc:\ + :oc=\E]R:tc=linux-basic: +# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996 +linux-c|linux console 1.3.6+ for older ncurses:\ + :cc:\ + :oc=\E]R:tc=linux-basic: + +# The 2.2.x kernels add a private mode that sets the cursor type; use that to +# get a block cursor for cvvis. +# reported by Frank Heckenbach <frank@g-n-u.de>. +linux2.2|linux 2.2.x console:\ + :ve=\E[?25h\E[?0c:vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c:\ + :tc=linux-c-nc: + +# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here: +# http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html +# Using SI/SO has the drawback that it confuses screen. SCS would work. +# However, SCS is buggy (see comment in Debian #515609) -TD +linux2.6|linux 2.6.x console:\ + :ae=^O:as=^N:me=\E[m\017:tc=linux2.2: + +# The 3.0 kernel adds support for clearing scrollback buffer (capability E3). +linux3.0|linux 3.0 kernels:\ + :E3=\E[3;J:tc=linux2.6: + +linux|linux console:\ + :tc=linux3.0: + +# Subject: linux 2.6.26 vt back_color_erase +# Changes to the Linux console driver broke bce model as reported in +# https://bugzilla.novell.com/show_bug.cgi?id=418613 +# apparently from +# http://lkml.org/lkml/2008/4/26/305 +# http://groups.google.com/group/fa.linux.kernel/browse_thread/thread/87f98338f0d636bb/aa96e8b86cee0d1e?lnk=st&q=#aa96e8b86cee0d1e +linux2.6.26|linux console w/o bce:\ + :ut@:tc=linux2.6: + +# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file +linux-nic|linux with ich/ich1 suppressed for non-curses programs:\ + :IC@:ic@:tc=linux: + +# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts. +# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997. +linux-koi8|linux with koi8 alternate character set:\ + :ac=+\020,\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\200q\200r\200s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224:\ + :tc=linux:tc=klone+koi8acs: + +# Another entry for KOI8-r with Qing Long's acsc. +# (which one better complies with the standard?) +linux-koi8r|linux with koi8-r alternate character set:\ + :tc=linux:tc=klone+koi8acs: + +# Entry for the latin1 and latin2 fonts +linux-lat|linux with latin1 or latin2 alternate character set:\ + :ac=+\020,\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376:\ + :tc=linux: + +# This uses graphics from VT codeset instead of from cp437. +# reason: cp437 (aka "straight to font") is not functional under luit. +# from: Andrey V Lukyanov <land@long.yar.ru>. +linux-vt|linux console using VT codes for graphics:\ + :S2@:S3@:\ + :ac=++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\ + :ae=\E(K:as=\E(0:me=\E[0m\E(K\017:sa@:tc=linux: + +# This is based on the Linux console (relies on the console to perform some +# of the functionality), but does not recognize as many control sequences. +# The program comes bundled with an old (circa 1998) copy of the Linux +# console terminfo. It recognizes some non-ANSI/VT100 sequences such as +# \E* move cursor to home, as as \E[H +# \E,X same as \E(X +# \EE move cursor to beginning of row +# \E[y,xf same as \E[y,xH +# +# Note: The status-line support is buggy (dsl does not work). +kon|kon2|jfbterm|Kanji ON Linux console:\ + :cc@:hs:\ + :Ic@:Ip@:ds=\E[?H:fs=\E[?F:kB@:oc@:op=\E[37;40m:r1=\Ec:\ + :ts=\E[?T:vb@:ve@:vi@:vs@:tc=linux: + +# 16-color linux console entry; this works with a 256-character +# console font but bright background colors turn into dim ones when +# you use a 512-character console font. This uses bold for bright +# foreground colors and blink for bright background colors. +linux-16color|linux console with 16 colors:\ + :Co#16:NC#54:pa#256:tc=linux: + +# bterm (bogl 0.1.18) +# Implementation is in bogl-term.c +# Key capabilities from linux terminfo entry +# +# Notes: +# bterm only supports acs using wide-characters, has case for these: qjxamlkut +# bterm does not support sgr, since it only processes one parameter -TD +bterm|bogl virtual terminal:\ + :am:ut:\ + :Co#8:co#80:li#24:pa#64:\ + :&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:F1=\E[23~:F2=\E[24~:\ + :F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:K2=\E[G:Km=\E[M:\ + :ac=aajjkkllmmqqttuuxx:ae=^O:as=^N:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:do=^J:ho=\E[H:k1=\E[[A:\ + :k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kI=\E[2~:\ + :kN=\E[6~:kP=\E[5~:kb=\177:kd=\E[B:kh=\E[1~:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[0m:mr=\E[7m:nw=^M^J:\ + :op=\E49;39m:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:ue=\E[24m:\ + :us=\E[4m:ve=\E[?25h:vi=\E[?25l: + +#### Mach +# + +# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk> +mach|Mach Console:\ + :am:km:\ + :co#80:it#8:li#25:\ + :@7=\E[Y:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\ + :cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\ + :k9=\EOX:k;=\EOY:kD=\E[9:kH=\E[F:kI=\E[@:kN=\E[U:kP=\E[V:\ + :kb=\177:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:se=\E[0m:\ + :sf=^J:so=\E[7m:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m: +mach-bold|Mach Console with bold instead of underline:\ + :ue=\E[0m:us=\E[1m:tc=mach: +mach-color|Mach Console with ANSI color:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:mh=\E[2m:mk=\E[8m:op=\E[37;40m:\ + :se=\E[27m:tc=mach: + +# From: Marcus Brinkmann +# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/ +# +# Comments in the original are summarized here: +# +# hurd uses 8-bit characters (km). +# +# Although it doesn't do XON/XOFF, we don't want padding characters (xon). +# +# Regarding compatibility to vt100: hurd doesn't specify :xn:, as we don't +# have the eat_newline_glitch. It doesn't support setting or removing tab +# stops (hts/tbc). +# +# hurd uses ^H instead of \E[D for cub1, as only ^H implements :bw: and it is +# one byte instead three. +# +# :ic: is not included because hurd has insert mode. +# +# hurd doesn't use ^J for scrolling, because this could put things into the +# scrollback buffer. +# +# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode. +# This is a GNU extension. +# +# The original has commented-out ncv, but is restored here. +# +# Reading the source, RIS resets cnorm, but not xmous. +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +hurd|The GNU Hurd console server:\ + :am:bw:eo:km:mi:ms:xo:\ + :it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K2=\E[G:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:bt=\E[Z:\ + :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ec=\E[%dX:\ + :ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\ + :kh=\E[1~:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\Eg:ve=\E[?25h:vi=\E[?25l:vs=\E[34l: + +#### OSF Unix +# + +# OSF/1 1.1 Snapshot 2 +pmcons|pmconsole|PMAX console:\ + :am:\ + :co#128:li#57:\ + :bl=^G:cl=^L:cr=^M:do=^J:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:sf=^J:ta=^I:up=^K: + +# 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 :as:=\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 +# +# hpa/vpa work in the console, but not in scoterm: +# hpa=\E[%p1%dG, +# vpa=\E[%p1%dd, +# +# SCO's terminfo uses +# kLFT=\E[d, +# kRIT=\E[c, +# which do not work (console or scoterm). +# +# Console documents only 3 attributes can be set with SGR (so we don't use sgr). +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +scoansi-old|SCO Extended ANSI standard crt (5.0.5):\ + :am:bs:eo:xo:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[m\E[J:ce=\E[m\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:ic=\E[@:im=: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:kD=\177:kI=\E[L:\ + :kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:mr=\E[7m:\ + :nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=10;12C:\ + :vi=\E[=14;12C:vs=\E[=0;12C: +scoansi-new|SCO Extended ANSI standard crt (5.0.6):\ + :km:\ + :MC=\E[=r:MR=\E[=3;0m:Zk=\E[=1;0m:Zl=\E[=1;%i%dm:\ + :Zm=\E[=2;%i%dm:Zn=\E[=3;%i%dm:Zo=\E[=0;0m:\ + :Zp=\E[=0;%i%dm:cs=\E[%i%d;%dr:mm=\E[=10L:mo=\E[=11L:\ + :oc=\E[51m:op=\E[50m:rp=\E[%d;%db:ve=\E[=1c:vi=\E[=0c:\ + :vs=\E[=2c:tc=scoansi-old: +# make this easy to change... +scoansi|SCO Extended ANSI standard crt:\ + :tc=scoansi-old: + +# This actually describes the generic SVr4 display driver for Intel boxes. +# The :mh=\E[2m: isn't documented and therefore may not be reliable. +# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995 +att6386|at386|386at|AT&T WGS 6386 console:\ + :am:bw:eo:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[Y:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOZ:\ + :F2=\EOA:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~:\ + :ae=\E[10m:al=\E[1L:as=\E[12m:bl=^G:bt=\E[Z:cd=\E[J:\ + :ce=\E[K:ch=\E[%i%dG:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[1M:do=\E[B:ec=\E[%dX:\ + :ei=:ho=\E[H:ic=\E[1@:im=:is=\E[0;10;39m:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\ + :k;=\EOY:kB=^]:kD=\E[P:kI=\E[@:kM=\E0:kN=\E[U:kP=\E[V:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[0;10m:mh=\E[2m:mk=\E[9m:mr=\E[7m:nd=\E[C:\ + :nw=\r\E[S:rc=\E8:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=1C:vi=\E[=C:\ + :tc=klone+color: +# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr) +pc6300plus|AT&T 6300 plus:\ + :am:bs:xo:\ + :co#80:li#24:\ + :al=\E[1L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[H:\ + :cm=\E[%i%2;%2H:cr=^M:ct=\E[3g:dc=\E[1P:dl=\E[1M:do=\E[B:\ + :ei=:ho=\E[H:ic=\E[1@:im=:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:\ + :k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\EOk:k;=\EOu:kb=^H:\ + :kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mh=\E[2m:mk=\E[9m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=1C:vi=\E[=C: + +# From: Benjamin C. W. Sittler <bsittler@nmt.edu> +# +# I have a UNIX PC which I use as a terminal attached to my Linux PC. +# Unfortunately, the UNIX PC terminfo entry that comes with ncurses +# is broken. All the special key sequences are broken, making it unusable +# with Emacs. The problem stems from the following: +# +# The UNIX PC has a plethora of keys (103 of them, and there's no numeric +# keypad!), loadable fonts, and strange highlighting modes ("dithered" +# half-intensity, "smeared" bold, and real strike-out, for example.) It also +# uses resizable terminal windows, but the bundled terminal program always +# uses an 80x24 window (and doesn't support seem to support a 132-column +# mode.) +# +# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a +# library which was a superset of SVr3.5 curses (called tam, for "terminal +# access method".) tam includes support for real, overlapping windows, +# onscreen function key labels, and bitmap graphics. But since the primary +# user interface on the UNIX PC was a GUI program (ua, for "user +# assistant",) and remote administration was considered important for the +# machine, tam also supported VT100-compatible terminals attached to the +# serial port or used across the StarLan network. To simulate the extra keys +# not present on a VT100, users could press ESC and a two-letter sequence, +# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences, +# however, were not the same as those sent by the actual Undo key. The +# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example. +# (If you're interested in adding some of the tam calls to ncurses, btw, I +# have the full documentation and several programs which use tam. It also +# used an extended terminfo format to describe key sequences, special +# highlighting modes, etc.) +# +# KEYS: This means that ncurses would quite painful on the UNIX PC, since +# there are two sequences for every key-modifier combination (local keyboard +# sequence and remote "VT100" sequence.) But I doubt many people are trying +# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the +# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume) +# seem to have been built from the manual describing the VT100 sequences. +# This means it doesn't work for a real live UNIX PC. +# +# FONTS: The UNIX PC also has a strange interpretation of "alternate +# character set". Rather than the VT100 graphics you might expect, it allows +# up to 8 custom fonts to be loaded at any given time. This means that +# programs expecting VT100 graphics will usually be disappointed. For this +# reason I have disabled the smacs/rmacs sequences, but they could easily be +# re-enabled. Here are the relevant control sequences (from the ESCAPE(7) +# manpage), should you wish to do so: +# +# SGR10 - Select font 0 - ESC [ 10 m or SO +# SGR11 - Select font 1 - ESC [ 11 m or SI +# SGR12 - Select font 2 - ESC [ 12 m +# ... (etc.) +# SGR17 - Select font 7 - ESC [ 17 m +# +# Graphics for line drawing are not reliably found at *any* character +# location because the UNIX PC has dynamically reloadable fonts. I use font +# 0 for regular text and font 1 for italics, but this is by no means +# universal. So ASCII line drawing is in order if smacs/rmacs are enabled. +# +# MISC: The cursor visible/cursor invisible sequences were swapped in the +# distributed terminfo. +# +# To ameliorate these problems (and fix a few highlighting bugs) I rewrote +# the UNIX PC terminfo entry. The modified version works great with Lynx, +# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC +# attached by serial cable. In Emacs, even the Undo key works, and many +# applications can now use the F1-F8 keys. +# +# esr's notes: +# Terminfo entry for the AT&T Unix PC 7300 +# from escape(7) in Unix PC 7300 Manual. +# Somewhat similar to a vt100-am (but different enough +# to redo this from scratch.) +# +# /*************************************************************** +# * +# * FONT LOADING PROGRAM FOR THE UNIX PC +# * +# * This routine loads a font defined in the file ALTFONT +# * into font memory slot #1. Once the font has been loaded, +# * it can be used as an alternative character set. +# * +# * The call to ioctl with the argument WIOCLFONT is the key +# * to this routine. For more information, see window(7) in +# * the PC 7300 documentation. +# ***************************************************************/ +# #include <string.h> /* needed for strcpy call */ +# #include <sys/window.h> /* needed for ioctl call */ +# #define FNSIZE 60 /* font name size */ +# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */ +# /* +# * The file /usr/lib/wfont/special.8.ft comes with the +# * standard PC software. It defines a graphics character set +# * similar to that of the Teletype 5425 terminal. To view +# * this or other fonts in /usr/lib/wfont, use the command +# * cfont <filename>. For further information on fonts see +# * cfont(1) in the PC 7300 documentation. +# */ +# +# struct altfdata /* structure for alt font data */ +# { +# short altf_slot; /* memory slot number */ +# char altf_name[FNSIZE]; /* font name (file name) */ +# }; +# ldfont() +# { +# int wd; /* window in which altfont will be */ +# struct altfdata altf; +# altf.altf_slot=1; +# strcpy(altf.altf_name,ALTFONT); +# for (wd =1; wd < 12; wd++) { +# ioctl(wd, WIOCLFONT,&altf); +# } +# } +# +# (att7300: added :vi:/:ve:/:ic:/<invis> from the BSDI entry, +# they're confirmed by the man page for the System V display---esr) +# +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300:\ + :am:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:al=\E[L:bl=^G:bt=\E^I:cd=\E[0J:ce=\E[0K:\ + :cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=:ho=\E[H:i1=\017\E[=1w:ic=\E[@:im=:k1=\EOc:\ + :k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\ + :kD=\ENf:kI=\ENj:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[9m:md=\E[1m:\ + :me=\E[0;10m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:se=\E[m:\ + :sf=^J:so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=0C:\ + :vi=\E[=1C: + +# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is +# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes +# for the application keypad mode. We have added iris-ansi-ap rather than +# change the original to keypad mode. +# +# (iris-ansi: added rmam/smam based on init string -- esr) +# +# This entry, and those derived from it, is used in xwsh (also known as +# winterm). Some capabilities that do not fit into the terminfo model +# include the shift- and control-functionkeys: +# +# F1-F12 generate different codes when shift or control modifiers are used. +# For example: +# F1 \E[001q +# shift F1 \E[013q +# control-F1 \E[025q +# +# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e., +# \EOP to \EOS. The shifted and control modifiers still do the same thing. +# +# The cursor keys also have different codes: +# control-up \E[162q +# control-down \E[165q +# control-left \E[159q +# control-right \E[168q +# +# shift-up \E[161q +# shift-down \E[164q +# shift-left \E[158q +# shift-right \E[167q +# +# control-tab \[072q +# +iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100):\ + :am:\ + :co#80:it#8:li#40:\ + :!2=\E[218q:#2=\E[143q:#4=\E[158q:%9=\E[209q:%f=\E[210q:\ + :%i=\E[167q:&7=\E[217q:*4=\E[P:*7=\E[147q:@7=\E[146q:\ + :@8=^M:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dl=\E[M:do=^J:\ + :ho=\E[H:is=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8:\ + :k1=\E[001q:k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\ + :k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\E[009q:k;=\E[010q:\ + :kB=\E[Z:kD=\177:kI=\E[139q:kM=\E[146q:kN=\E[154q:\ + :kP=\E[150q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=\E[D:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[9/y\E[12/y\E[=6l:\ + :vs=\E[10/y\E[=1h\E[=2l\E[=6h: +iris-ansi-ap|IRIS ANSI in application-keypad mode:\ + :@8=\EOM:F1=\E[011q:F2=\E[012q:is=\E[?1l\E=\E[?7h:\ + :k9=\E[009q:k;=\E[010q:tc=iris-ansi: + +# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX +# (T.Dickey 98/1/24) +iris-color|xwsh|IRIX ANSI with color:\ + :NC#33:\ + :DC=\E[%dP:IC=\E[%d@:ZH=\E[3m:ZR=\E[23m:cs=\E[%i%d;%dr:\ + :ec=\E[%dX:ei=:im=:mh=\E[2m:r1=\Ec:\ + :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\ + :ue=\E[24m:tc=vt100+enq:tc=klone+color:tc=iris-ansi-ap: + +# The following is a version of the ibm-pc entry distributed with PC/IX, +# (Interactive Systems' System 3 for the Big Blue), modified by Richard +# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original, +# (the former is untrue, and the latter failed under UCB/man); standout and +# underline modes have been added. Note: this entry describes the "native" +# capabilities of the PC monochrome display, without ANY emulation; most +# communications packages (but NOT PC/IX connect) do some kind of emulation. +pcix|PC/IX console:\ + :am:bw:eo:\ + :co#80:li#24:\ + :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\ + :le=^H:me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# (ibmpcx: this entry used to be known as ibmx. +# It formerly included the following extension capabilities: +# :GC=b:GL=v:GR=t:RT=^J:\ +# :GH=\E[196g:GV=\E[179g:\ +# :GU=\E[193g:GD=\E[194g:\ +# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\ +# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\ +# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\ +# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate +# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match +# what was there before. -- esr) +ibmpcx|xenix|ibmx|IBM PC xenix console display:\ + :am:bs:ms:\ + :co#80:li#25:\ + :@7=\E[d:al=\E[L:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%d;%dH:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[K:\ + :k2=\E[L:k3=\E[M:k4=\E[N:kN=\E[e:kP=\E[Z:kb=^H:kd=\E[B:\ + :kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:up=\E[A:\ + :tc=klone+acs:tc=klone+sgr8: + +#### QNX +# + +# QNX 4.0 Console +# Michael's original version of this entry had <am@>, :ti=\Ei:, +# :te=\Eh\ER:; this was so terminfo applications could write the lower +# right corner without triggering a scroll. The ncurses terminfo library can +# handle this case with the :ic: capability, and prefers :am: for better +# optimization. Bug: The <op> capability resets attributes. +# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996 +# (removed: :sa=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,:) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +qnx|qnx4|qnx console:\ + :km:mi:ms:xt:\ + :co#80:it#4:li#25:\ + :al=\EE:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\ + :dc=\Ef:dl=\EF:do=^J:ei=:ho=\EH:ic=\Ee:im=:k1=\377\201:\ + :k2=\377\202:k3=\377\203:k4=\377\204:k5=\377\205:\ + :k6=\377\206:k7=\377\207:k8=\377\210:k9=\377\211:\ + :kD=\377\254:kI=\377\253:kN=\377\252:kP=\377\242:\ + :kd=\377\251:kh=\377\240:kl=\377\244:kr=\377\246:\ + :ku=\377\241:le=^H:mb=\E{:md=\E<:me=\E}\E]\E>\E):mr=\E(:\ + :nd=\EC:rp=\Eg%r%+ %.:se=\E):sf=^J:so=\E(:sr=\EI:ta=^I:\ + :te=\Eh\ER:ti=\Ei:ue=\E]:up=\EA:us=\E[:ve=\Ey1:vi=\Ey0:\ + :vs=\Ey2: +# +# +qnxt|qnxt4|QNX4 terminal:\ + :YB:tc=qnx4: +# +qnxm|QNX4 with mouse events:\ + :Yd#1:\ + :ZC=\E/:ZD=\E":ZJ=\E/>2h:ZT=\E/>2l:ZZ=\E/>1l\E/>9h:\ + :Za=\E/>7h:Zb=\E/>7l:Zd=\E/>6l:Zf=\E/>1h:Zg=\E/>1h:\ + :Zh=\E/>1h\E/>9l:Zi=\E/>6h:i1=\E/0t:tc=qnx4: +# +qnxw|QNX4 windows:\ + :YD:tc=qnxm: +# +# Monochrome QNX4 terminal or console. Setting this terminal type will +# allow an application running on a color console to behave as if it +# were a monochrome terminal. Output will be through stdout instead of +# console writes because the term routines will recognize that the +# terminal name starts with 'qnxt'. +# +qnxtmono|Monochrome QNX4 terminal or console:\ + :Co@:pa@:\ + :sp@:tc=qnx4: + +# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998 +# (esr: commented out <scp> and :te: to avoid warnings.) +# (TD: derive from original qnx4 entry) +qnxt2|qnx 2.15 serial terminal:\ + :am:\ + :!3@:%h@:%j@:&7@:Sb@:Sf@:dc@:ic@:rp@:se=\E>:so=\E<:te@:ti@:ve@:vi@:\ + :vs@:tc=qnx4: + +# QNX ANSI terminal definition +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +qansi-g|QNX ANSI:\ + :am:es:hs:xo:\ + :co#80:it#8:li#25:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:\ + :al=\E[1L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[1M:do=\E[B:ds=\E[r:ec=\E[%dX:ei=:fs=\E[?6h\E8:\ + :ho=\E[H:i2=\E(B\E)0:ic=\E[1@:im=:\ + :is=\E>\E[?1l\E[?7h\E[0;10;39;49m:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\ + :kD=\E[P:kI=\E[@:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:ll=\E[99H:mb=\E[5m:\ + :md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :se=\E[27m:sf=\E[S:so=\E[7m:sr=\E[T:st=\EH:ta=^I:\ + :ts=\E7\E1;24r\E[?6l\E[25;%i%dH:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h: +# +qansi|QNX ansi with console writes:\ + :YA:YC:tc=qansi-g: +# +qansi-t|QNX ansi without console writes:\ + :YB:tc=qansi: +# +qansi-m|QNX ansi with mouse:\ + :Yd#1:\ + :ZC=\E[:ZD=\E]:ZJ=\E[>2h:ZT=\E[>2l:ZZ=\E[>1l\E[>9h:\ + :Za=\E[>7h:Zb=\E[>7l:Zd=\E[>6l:Zf=\E[>1h:Zg=\E[>1h:\ + :Zh=\E[>1h\E[>9l:Zi=\E[>6h:i1=\E[0t:tc=qansi: +# +qansi-w|QNX ansi for windows:\ + :YD:tc=qansi-m: + +#### NetBSD consoles +# +# pcvt termcap database entries (corresponding to release 3.31) +# Author's last edit-date: [Fri Sep 15 20:29:10 1995] +# +# (For the terminfo master file, I translated these into terminfo syntax. +# Then I dropped all the pseudo-HP entries. we don't want and can't use +# the :Xs: flag. Then I split :is: into a size-independent :i1: and a +# size-dependent :is:. Finally, I added <rmam>/<smam> -- esr) + +# NOTE: :ic: has been taken out of this entry. for reference, it should +# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below. +# (esr: added :vi: and :ve: to resolve NetBSD Problem Report #4583) +pcvtXX|pcvt vt200 emulator (DEC VT220):\ + :am:km:mi:ms:xn:\ + :it#8:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\ + :i1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:im=\E[4h:\ + :k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\ + :k6=\E[23~:k7=\E[24~:k8=\E[25~:kD=\E[3~:kH=\E[4~:kI=\E[2~:\ + :kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :r1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\ + :rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[?25h:vi=\E[?25l: + +# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) +# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and +# 50 lines entries; 80 columns +pcvt25|dec vt220 emulation with 25 lines:\ + :co#80:li#25:\ + :is=\E[1;25r\E[25;1H:tc=pcvtXX: +pcvt28|dec vt220 emulation with 28 lines:\ + :co#80:li#28:\ + :is=\E[1;28r\E[28;1H:tc=pcvtXX: +pcvt35|dec vt220 emulation with 35 lines:\ + :co#80:li#35:\ + :is=\E[1;35r\E[35;1H:tc=pcvtXX: +pcvt40|dec vt220 emulation with 40 lines:\ + :co#80:li#40:\ + :is=\E[1;40r\E[40;1H:tc=pcvtXX: +pcvt43|dec vt220 emulation with 43 lines:\ + :co#80:li#43:\ + :is=\E[1;43r\E[43;1H:tc=pcvtXX: +pcvt50|dec vt220 emulation with 50 lines:\ + :co#80:li#50:\ + :is=\E[1;50r\E[50;1H:tc=pcvtXX: + +# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) +# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and +# 50 lines entries; 132 columns +pcvt25w|dec vt220 emulation with 25 lines and 132 cols:\ + :co#132:li#25:\ + :is=\E[1;25r\E[25;1H:tc=pcvtXX: +pcvt28w|dec vt220 emulation with 28 lines and 132 cols:\ + :co#132:li#28:\ + :is=\E[1;28r\E[28;1H:tc=pcvtXX: +pcvt35w|dec vt220 emulation with 35 lines and 132 cols:\ + :co#132:li#35:\ + :is=\E[1;35r\E[35;1H:tc=pcvtXX: +pcvt40w|dec vt220 emulation with 40 lines and 132 cols:\ + :co#132:li#40:\ + :is=\E[1;40r\E[40;1H:tc=pcvtXX: +pcvt43w|dec vt220 emulation with 43 lines and 132 cols:\ + :co#132:li#43:\ + :is=\E[1;43r\E[43;1H:tc=pcvtXX: +pcvt50w|dec vt220 emulation with 50 lines and 132 cols:\ + :co#132:li#50:\ + :is=\E[1;50r\E[50;1H:tc=pcvtXX: + +# OpenBSD implements a color variation +pcvt25-color|dec vt220 emulation with 25 lines and color:\ + :co#80:li#25:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\ + :is=\E[1;25r\E[25;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\ + :k;=\E[29~:tc=pcvtXX:tc=ecma+color: + +# Terminfo entries to enable the use of the ncurses library in colour on a +# NetBSD-arm32 console (only tested on a RiscPC). +# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98 +# modified codes for setf/setb to setaf/setab, then to klone+color, corrected +# typo in invis - TD +arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480):\ + :am:ms:ut:xn:xo:\ + :co#80:it#8:li#30:\ + :@8=\E[M:DO=\E[%dB:K1=\E[q:K2=\E[r:K3=\E[s:K4=\E[p:K5=\E[n:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:k0=\E[y:k1=\E[P:\ + :k2=\E[Q:k3=\E[R:k4=\E[S:k5=\E[t:k6=\E[u:k7=\E[v:k8=\E[l:\ + :k9=\E[w:k;=\E[x:kb=^H:kd=\E[B:ke=\E[?1l\E>:kl=\E[D:\ + :kr=\E[C:ks=\E[?1h\E=:ku=\E[A:le=^H:mb=2\E[5m:md=2\E[1m:\ + :me=2\E[0m:mk=2\E[8m:mr=2\E[7m:nd=2\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m:tc=ecma+sgr:tc=klone+color: + +arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768):\ + :co#132:li#50:tc=arm100: + +# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine +# manufactured by Sharp for the Japenese market. +# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996 +x68k|x68k-ite|NetBSD/x68k ITE:\ + :co#96:li#32:\ + :%1=\E[28~:kC=\E[9~:tc=vt220: + +# <tv@pobox.com>: +# Entry for the DNARD OpenFirmware console, close to ANSI but not quite. +# +# (still unfinished, but good enough so far.) +ofcons|DNARD OpenFirmware console:\ + :bw:\ + :co#80:li#30:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\ + :LE=\233%dD:RI=\233%dC:UP=\233%dA:al=\233L:bl=^G:cd=\233J:\ + :ce=\233K:cl=^L:cm=\233%i%d;%dH:cr=^M:dc=\233P:dl=\233M:\ + :do=\233B:ei=:ic=\233@:im=:k1=\2330P:k2=\2330Q:k3=\2330W:\ + :k4=\2330x:k5=\2330t:k6=\2330u:k7=\2330q:k8=\2330r:\ + :k9=\2330p:k;=\2330M:kD=\233P:kN=\233/:kP=\233?:kb=^H:\ + :kd=\233B:kl=\233D:kr=\233C:ku=\233A:le=\233D:mb=\2337;2m:\ + :md=\2331m:me=\2330m:mh=\2332m:mk=\2338m:mr=\2337m:\ + :nd=\233C:nw=^M^J:se=\2330m:sf=^J:ta=^I:ue=\2330m:up=\233A:\ + :vb=^G: + +# NetBSD "wscons" emulator in vt220 mode. +# This entry is based on the NetBSD termcap entry, correcting the ncv value. +# The emulator renders underlined text in red. Colors are otherwise usable. +# +# Testing the emulator and reading the source code (NetBSD 2.0), it appears +# that "vt220" is inaccurate. There are a few vt220-features, but most of the +# vt220 screens in vttest do not work with this emulator. For instance, it +# identifies itself (primary DA response) as a vt220 with selective erase. But +# the selective erase feature does not work. The secondary response is copied +# from Kermit's emulation of vt220, does not correspond to actual vt220. At +# the level of detail in a termcap, it is a passable emulator, since ECH does +# work. Don't use it on a VMS system -TD +wsvt25|NetBSD wscons in 25 line DEC VT220 mode:\ + :ms:ut:\ + :Co#8:NC#2:co#80:it#8:li#25:pa#64:\ + :@7=\E[8~:AB=\E[4%dm:AF=\E[3%dm:F1=\E[23~:F2=\E[24~:\ + :is=\E[r\E[25;1H:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kh=\E[7~:op=\E[m:r1=\Ec:tc=vt220: + +wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta:\ + :km:tc=wsvt25: + +# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and +# DECstation/pmax. +rcons|BSD rasterconsole:\ + :tc=sun-il: +# Color version of above. Color currently only provided by NetBSD. +rcons-color|BSD rasterconsole with ANSI color:\ + :ut:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[m:tc=rcons: + +# mgterm -- MGL/MGL2, MobileGear Graphic Library +# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k} +# -- the setf/setb are probably incorrect, more likely setaf/setab -TD +# -- compare with cons25w +mgterm:\ + :NP:am:bs:bw:eo:km:ms:pt:ut:\ + :Co#8:co#80:it#8:li#18:pa#64:\ + :@7=\E[F:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[W:\ + :F2=\E[X:IC=\E[%d@:K2=\E[E:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:Sb=\E[4%dm:Sf=\E[3%dm:UP=\E[%dA:al=\E[L:bl=^G:\ + :bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:cv=\E[%i%dd:dc=\E[P:\ + :dl=\E[M:do=\E[B:ec=\E[%dX:ei=:ho=\E[H:ic=\E[@:im=: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:k;=\E[V:kB=\E[Z:kD=\177:kI=\E[L:kN=\E[G:kP=\E[I:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[30;1m:mr=\E[7m:nd=\E[C:\ + :nw=\E[E:op=\E[x:rc=\E8:rs=\E[x\E[m\Ec:sc=\E7:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:up=\E[A: + +#### FreeBSD console entries +# +# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996 +# Andrey Chernov maintains the FreeBSD termcap distributions. +# +# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade +# or comment out the :cb: capability in the console entry. +# +# Alexander Lukyanov reports: +# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there. +# Now el1 clears not only to the line beginning, but also a large chunk +# of previous line. But there is another bug - ech does not work at all. +# + +# for syscons +# common entry without semigraphics +# Bug: The <op> capability resets attributes. +# Bug? The ech and el1 attributes appear to move the cursor in some cases; for +# instance el1 does if the cursor is moved to the right margin first. Removed +# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K) +# +# Setting colors turns off reverse; we cannot guarantee order, so use ncv. +# Note that this disables standout with color. +# +# The emulator sends difference strings based on shift- and control-keys, +# like scoansi: +# F13-F24 are shifted F1-F12 +# F25-F36 are control F1-F12 +# F37-F48 are shift+control F1-F12 +# (sgr removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode):\ + :am:bw:eo:ms:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K2=\E[E:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:\ + :ec=\E[%dX:ei=:ho=\E[H:ic=\E[@:im=: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:kD=\177:\ + :kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mh=\E[30;1m:mr=\E[7m:nd=\E[C:nw=\E[E:rc=\E8:\ + :rs=\E[x\E[m\Ec:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons25|ansis|ansi80x25|freebsd console (25-line ansi mode):\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :tc=cons25w: +cons25-debian|freebsd console with debian backspace (25-line ansi mode):\ + :kD=\E[3~:kb=\177:tc=cons25: +cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode):\ + :Co@:pa@:\ + :AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25: +cons30|ansi80x30|freebsd console (30-line ansi mode):\ + :li#30:tc=cons25: +cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode):\ + :li#30:tc=cons25-m: +cons43|ansi80x43|freebsd console (43-line ansi mode):\ + :li#43:tc=cons25: +cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode):\ + :li#43:tc=cons25-m: +cons50|ansil|ansi80x50|freebsd console (50-line ansi mode):\ + :li#50:tc=cons25: +cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode):\ + :li#50:tc=cons25-m: +cons60|ansi80x60|freebsd console (60-line ansi mode):\ + :li#60:tc=cons25: +cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode):\ + :li#60:tc=cons25-m: +cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\200t\206u\207v\211w\210x\201y\230z\231~\225:\ + :tc=cons25w: +cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono):\ + :Co@:pa@:\ + :AB@:AF@:op@:ue=\E[m:us=\E[4m:tc=cons25r: +cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines):\ + :li#50:tc=cons25r: +cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono):\ + :li#50:tc=cons25r-m: +cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines):\ + :li#60:tc=cons25r: +cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono):\ + :li#60:tc=cons25r-m: +# ISO 8859-1 FreeBSD console +cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars:\ + :ac=+\253,\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237:\ + :tc=cons25w: +cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono):\ + :Co@:pa@:\ + :AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25l1: +cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines):\ + :li#50:tc=cons25l1: +cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono):\ + :li#50:tc=cons25l1-m: +cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines):\ + :li#60:tc=cons25l1: +cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono):\ + :li#60:tc=cons25l1-m: + +#### 386BSD and BSD/OS Consoles +# + +# This was the original 386BSD console entry (I think). +# Some places it's named oldpc3|oldibmpc3. +# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu> +origpc3|origibmpc3|IBM PC 386BSD Console:\ + :am:bs:bw:eo:xo:\ + :co#80:li#25:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\ + :kd=\E[B:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[7m:\ + :me=\E[m\E[1;0x\E[2;7x:nd=\E[C:se=\E[1;0x\E[2;7x:\ + :sf=\E[S:so=\E[1;7x\E[2;0x:sr=\E[T:ue=\E[1;0x\E[2;7x:\ + :up=\E[A:us=\E[1;7x\E[2;0x: + +# description of BSD/386 console emulator in version 1.0 (supplied by BSDI) +oldpc3|oldibmpc3|old IBM PC BSD/386 Console:\ + :bs:km:\ + :li#25:\ + :al=\E[L:bl=^G:cr=^M:dl=\E[M:do=^J:kH=\E[F:kI=\E[L:kN=\E[G:\ + :kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :md=\E[=15F:me=\E[=R:mh=\E[=8F:nw=^M^J:sf=^J:ta=^I: + +# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1 +# Note, the emulator supports many of the additional console features +# listed in the iBCS2 (e.g. character-set selection) though not all +# are described here. This entry really ought to be upgraded. +# Also note, the console will also work with fewer lines after doing +# "stty rows NN", e.g. to use 24 lines. +# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996) +# Bug: The <op> capability resets attributes. +bsdos-pc|IBM PC BSD/OS Console:\ + :tc=bsdos-pc-nobold: + +bsdos-pc-nobold|BSD/OS PC console w/o bold:\ + :tc=klone+color:tc=bsdos-pc-m: + +bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono:\ + :am:bs:eo:km:xo:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\ + :cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:kH=\E[F:\ + :kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:sf=^J:\ + :ta=^I:up=\E[A:tc=klone+sgr8: + +# Old names for BSD/OS PC console used in releases before 4.1. +pc3|BSD/OS on the PC Console:\ + :tc=bsdos-pc-nobold: +ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline:\ + :tc=bsdos-pc: + +# BSD/OS on the SPARC +bsdos-sparc|Sun SPARC BSD/OS Console:\ + :tc=sun: + +# BSD/OS on the PowerPC +bsdos-ppc|PowerPC BSD/OS Console:\ + :tc=bsdos-pc: + +#### DEC VT52 +# (<acsc>/:ae:/:as: capabilities aren't in DEC's official entry -- esr) +# +# Actually (TD pointed this out at the time the acsc string was added): +# vt52 shouldn't define full acsc since most of the cells don't match. +# see vt100 manual page A-31. This is the list that does match: +# f degree +# g plus/minus +# h right-arrow +# k down-arrow +# m scan-1 +# o scan-3 +# q scan-5 +# s scan-7 +# The line-drawing happens to work in several terminal emulators, but should +# not be used as a guide to the capabilities of the vt52. Note in particular +# that vt52 does not support line-drawing characters (the scan-X values refer +# to a crude plotting feature) -TD +vt52|dec vt52:\ + :bs:\ + :co#80:it#8:li#24:\ + :ac=+h.k0affggolpnqprrss:ae=\EG:as=\EF:bl=^G:cd=\EJ:\ + :ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:do=\EB:ho=\EH:kb=^H:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:nd=\EC:nw=^M^J:sf=^J:\ + :sr=\EI:ta=^I:up=\EA: + +#### DEC VT100 and compatibles +# +# DEC terminals from the vt100 forward are collected here. Older DEC terminals +# and micro consoles can be found in the `obsolete' section. More details on +# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be +# found near the end of this file. +# +# Except where noted, these entries are DEC's official terminfos. +# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support +# Engineering for more information. Updated terminfos and termcaps +# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. +# +# In October 1995 DEC sold its terminals business, including the VT and Dorio +# line and trademark, to SunRiver Data Systems. SunRiver has since changed +# its name to Boundless Technologies; see http://www.boundless.com. +# + +# NOTE: Any VT100 emulation, whether in hardware or software, almost +# certainly includes what DEC called the `Level 1 editing extension' codes; +# only the very oldest VT100s lacked these and there probably aren't any of +# those left alive. To capture these, use one of the VT102 entries. +# +# Note that the :xn: glitch in vt100 is not quite the same as on the Concept, +# since the cursor is left in a different position while in the +# weird state (concept at beginning of next line, vt100 at end +# of this line) so all versions of vi before 3.7 don't handle +# :xn: right on vt100. The correct way to handle :xn: is when +# you output the char in column 80, immediately output CR LF +# and then assume you are in column 1 of the next line. If :xn: +# is on, am should be on too. +# +# I assume you have smooth scroll off or are at a slow enough baud +# rate that it doesn't matter (1200? or less). Also this assumes +# that you set auto-nl to "on", if you set it off use vt100-nam +# below. +# +# The padding requirements listed here are guesses. It is strongly +# recommended that xon/xoff be enabled, as this is assumed here. +# +# The vt100 uses <rs2> and <rf> rather than :is:/:ct:/:st: because the +# tab settings are in non-volatile memory and don't need to be +# reset upon login. Also setting the number of columns glitches +# the screen annoyingly. You can type "reset" to get them set. +# +# The VT100 series terminals have cursor ("arrows") keys which can operate +# in two different modes: Cursor Mode and Application Mode. Cursor Mode +# is the reset state, and is assumed to be the normal state. Application +# Mode is the "set" state. In Cursor Mode, the cursor keys transmit +# "Esc [ {code}" sequences, conforming to ANSI standards. In Application +# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode +# was provided primarily as an aid to the porting of VT52 applications. It is +# assumed that the cursor keys are normally in Cursor Mode, and expected that +# applications such as vi will always transmit the :ks: string. Therefore, +# the definitions for the cursor keys are made to match what the terminal +# transmits after the :ks: string is transmitted. If the :ks: string +# is a null string or is not defined, then cursor keys are assumed to be in +# "Cursor Mode", and the cursor keys definitions should match that assumption, +# else the application may fail. It is also expected that applications will +# always transmit the :ke: string to the terminal before they exit. +# +# The VT100 series terminals have an auxiliary keypad, commonly referred to as +# the "Numeric Keypad", because it is a cluster of numeric and function keys. +# The Numeric Keypad which can operate in two different modes: Numeric Mode and +# Application Mode. Numeric Mode is the reset state, and is assumed to be +# the normal state. Application Mode is the "set" state. In Numeric Mode, +# the numeric and punctuation keys transmit ASCII 7-bit characters, and the +# Enter key transmits the same as the Return key (Note: the Return key +# can be configured to send either LF (\015) or CR LF). In Application Mode, +# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys +# always send the same "Esc O {code}" sequences. It is assumed that the keypad +# is normally in Numeric Mode. If an application requires that the keypad be +# in Application Mode then it is expected that the user, or the application, +# will set the TERM environment variable to point to a terminfo entry which has +# defined the :ks: string to include the codes that switch the keypad into +# Application Mode, and the terminfo entry will also define function key +# fields to match the Application Mode control codes. If the :ks: string +# is a null string or is not defined, then the keypad is assumed to be in +# Numeric Mode. If the :ks: string switches the keypad into Application +# Mode, it is expected that the :ke: string will contain the control codes +# necessary to reset the keypad to "Normal" mode, and it is also expected that +# applications which transmit the :ks: string will also always transmit the +# :ke: string to the terminal before they exit. +# +# Here's a diagram of the VT100 keypad keys with their bindings. +# The top line is the name of the key (some DEC keyboards have the keys +# labelled somewhat differently, like GOLD instead of PF1, but this is +# the most "official" name). The second line is the escape sequence it +# generates in Application Keypad mode (where "$" means the ESC +# character). The third line contains two items, first the mapping of +# the key in terminfo, and then in termcap. +# _______________________________________ +# | PF1 | PF2 | PF3 | PF4 | +# | $OP | $OQ | $OR | $OS | +# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| +# | 7 8 9 - | +# | $Ow | $Ox | $Oy | $Om | +# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________| +# | 4 | 5 | 6 | , | +# | $Ot | $Ou | $Ov | $Ol | +# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_| +# | 1 | 2 | 3 | | +# | $Oq | $Or | $Os | enter | +# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM | +# | 0 | . | | +# | $Op | $On | | +# |___kc1_______K4____|_kc3__K5_|_kent_@8_| +# +# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the +# terminfo guidelines. That is a compromise used to assign the remaining +# keys on the keypad to kf5-kf0, used on older systems with legacy termcap +# support: +vt100+keypad|dec vt100 numeric keypad no fkeys:\ + :K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn: +vt100+pfkeys|dec vt100 numeric keypad:\ + :@8=\EOM:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:tc=vt100+keypad: +vt100+fnkeys|dec vt100 numeric keypad:\ + :k0=\EOy:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:k9=\EOw:k;=\EOx:\ + :tc=vt100+pfkeys: +# +# A better adaptation to modern keyboards such as the PC's, which have a dozen +# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to +# use the 5-key arrangement to model the arrow keys as suggested in the +# terminfo guidelines: +# _______________________________________ +# | PF1 | PF2 | PF3 | PF4 | +# | $OP | $OQ | $OR | $OS | +# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| +# | 7 8 9 - | +# | $Ow | $Ox | $Oy | $Om | +# |_ka1__K1_|_________|_ka3__K3_|_________| +# | 4 | 5 | 6 | , | +# | $Ot | $Ou | $Ov | $Ol | +# |_________|_kb2__K2_|_________|_________| +# | 1 | 2 | 3 | | +# | $Oq | $Or | $Os | enter | +# |_kc1__K4_|_________|_kc3__K5_| $OM | +# | 0 | . | | +# | $Op | $On | | +# |___________________|_________|_kent_@8_| +# +vt220+keypad|dec vt220 numeric keypad:\ + :@8=\EOM:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS: +# +vt100+enq|ncurses extension for vt100-style ENQ:\ + :u8=\E[?1;2c:tc=ansi+enq: +vt102+enq|ncurses extension for vt102-style ENQ:\ + :u8=\E[?6c:tc=ansi+enq: +# +# And here, for those of you with orphaned VT100s lacking documentation, is +# a description of the soft switches invoked when you do `Set Up'. +# +# Scroll 0-Jump Shifted 3 0-# +# | 1-Smooth | 1-British pound sign +# | Autorepeat 0-Off | Wrap Around 0-Off +# | | 1-On | | 1-On +# | | Screen 0-Dark Bkg | | New Line 0-Off +# | | | 1-Light Bkg | | | 1-On +# | | | Cursor 0-Underline | | | Interlace 0-Off +# | | | | 1-Block | | | | 1-On +# | | | | | | | | +# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings +# | | | | | | | | +# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz +# | | | 1-On | | | 1-50 Hz +# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits +# | | 1-ANSI | | 1-8 Bits +# | Keyclick 0-Off | Parity 0-Off +# | 1-On | 1-On +# Margin Bell 0-Off Parity Sense 0-Odd +# 1-On 1-Even +# +# The following SET-UP modes are assumed for normal operation: +# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS +# WRAP_AROUND_ON JUMP_SCROLL_OFF +# Other SET-UP modes may be set for operator convenience or communication +# requirements; I recommend +# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_# +# Unless you have a graphics add-on such as Digital Engineering's VT640 +# (and even then, whenever it can be arranged!) you should set +# INTERLACE_OFF +# +# (vt100: I added <rmam>/<smam> based on the init string, also :bs:. -- esr) +vt100|vt100-am|dec vt100 (w/advanced video):\ + :5i:am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:\ + :l2=pf2:l3=pf3:l4=pf4:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[0m:\ + :mr=2\E[7m:nd=2\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m:tc=vt100+fnkeys: +vt100nam|vt100-nam|vt100 no automargins:\ + :am@:xn@:tc=vt100-am: +vt100-vb|dec vt100 (w/advanced video) & no beep:\ + :bl@:vb=\E[?5h\E[?5l:tc=vt100: + +# Ordinary vt100 in 132 column ("wide") mode. +vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\ + :co#132:li#24:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am: +vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin):\ + :co#132:li#14:vt@:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-nam: + +# vt100 with no advanced video. +vt100-nav|vt100 without advanced video option:\ + :sg#1:\ + :mb@:md@:me@:mr@:sa@:se=\E[m:so=\E[7m:ue@:us@:tc=vt100: +vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\ + :co#132:li#14:tc=vt100-nav: + +# vt100 with one of the 24 lines used as a status line. +# We put the status line on the top. +vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline:\ + :es:hs:\ + :li#23:\ + :cl=50\E[2;1H\E[J:cm=5\E[%i%+^A;%dH:cs=\E[%i%i%d;%dr:\ + :ds=\E7\E[1;24r\E8:fs=\E8:ho=\E[2;1H:is=\E7\E[2;24r\E8:\ + :ts=\E7\E[1;%dH\E[1K:tc=vt100-am: + +# Status line at bottom. +# Clearing the screen will clobber status line. +vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline:\ + :es:hs:\ + :li#23:\ + :ds=\E7\E[1;24r\E8:fs=\E8:is=\E[1;23r\E[23;1H:\ + :ts=\E7\E[24;%dH\E[1K:tc=vt100-am: + +# Most of the `vt100' emulators out there actually emulate a vt102 +# This entry (or vt102-nsgr) is probably the right thing to use for +# these. +vt102|dec vt102:\ + :al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:tc=vt100: +vt102-w|dec vt102 in wide mode:\ + :co#132:\ + :r3=\E[?3h:tc=vt102: + +# Many brain-dead PC comm programs that pretend to be `vt100-compatible' +# fail to interpret the ^O and ^N escapes properly. Symptom: the :me: +# string in the canonical vt100 entry above leaves the screen littered +# with little snowflake or star characters (IBM PC ROM character \017 = ^O) +# after highlight turnoffs. This entry should fix that, and even leave +# ACS support working, at the cost of making multiple-highlight changes +# slightly more expensive. +# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995 +vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes):\ + :me=\E[m:sa@:tc=vt102: + +# VT125 Graphics CRT. Clear screen also erases graphics +# Some vt125's came configured with vt102 support. +vt125|vt125 graphics terminal:\ + :mi:\ + :cl=50\E[H\E[2J\EPpS(E)\E\\:tc=vt100: + +# This isn't a DEC entry, it came from University of Wisconsin. +# (vt131: I added <rmam>/<smam> based on the init string, also :bs: -- esr) +vt131|dec vt131:\ + :am:bs:xn:\ + :co#80:it#8:li#24:vt#3:\ + :RA=\E[?7h:SA=\E[?7h:bl=^G:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[;H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :do=^J:ho=\E[H:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:\ + :me=2\E[m:mr=2\E[7m:nd=2\E[C:nw=^M^J:\ + :r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\ + :se=2\E[m:so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m: + +# vt132 - like vt100 but slower and has ins/del line and such. +# I'm told that :im:/:ei: are backwards in the terminal from the +# manual and from the ANSI standard, this describes the actual +# terminal. I've never actually used a vt132 myself, so this +# is untested. +# +vt132|DEC vt132:\ + :xn:\ + :al=99\E[L:dc=7\E[P:dl=99\E[M:ei=\E[4h:im=\E[4l:ip=7:\ + :sf=30\n:tc=vt100: + +# This vt220 description maps F5--F9 to the second block of function keys +# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict +# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping. +# PF1--PF4 are used as F1--F4. +# +vt220-old|vt200-old|DEC VT220 in vt100 emulation mode:\ + :am:bs:mi:pt:xn:xo:\ + :co#80:li#24:vt#3:\ + :@7=\E[4~:RA=\E[?7l:SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[2J:cm=10\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\ + :k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\ + :kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=2\E[5m:\ + :md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=\E[C:nl=^J:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[27m:\ + :sf=20\ED:so=\E[7m:sr=14\EM:ta=^I:ue=\E[24m:up=\E[A:\ + :us=\E[4m:ve=\E[?25h:vi=\E[?25l: + +# A much better description of the VT200/220; used to be vt220-8 +# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1 +# designation to accommodate bug in pcvt -TD +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +vt220|vt200|dec vt220:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\ + :F3=\E[25~:F4=\E[26~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\ + :FA=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E[?7h\E[>\E[?1h\E F\E[?4l:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:\ + :kl=\E[D:kr=\E[C:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[?3l:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l: +vt220-w|vt200-w|DEC vt220 in wide mode:\ + :co#132:\ + :r3=\E[?3h:tc=vt220: +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode:\ + :am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\ + :LE=\233%dD:RI=\233%dC:UP=\233%dA:ae=\E(B:al=\233L:\ + :as=\E(0:bl=^G:cd=\233J:ce=\233K:cl=\233H\233J:\ + :cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:ct=\2333g:\ + :dc=\233P:dl=\233M:do=^J:ec=\233%dX:ei=\2334l:ho=\233H:\ + :if=/usr/share/tabset/vt100:im=\2334h:\ + :is=\233?7h\233>\233?1h\E F\233?4l:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k6=\23317~:k7=\23318~:k8=\23319~:\ + :k9=\23320~:kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\ + :kh=\233H:kl=\233D:kr=\233C:ku=\233A:le=^H:mb=\2335m:\ + :md=\2331m:me=2\2330m:mr=\2337m:nd=\233C:nw=\EE:rc=\E8:\ + :sc=\E7:se=\23327m:sf=\ED:so=\2337m:sr=\EM:st=\EH:ta=^I:\ + :ue=\23324m:up=\233A:us=\2334m:vb=\233?5h\233?5l: + +# vt220d: +# This vt220 description regards F6--F10 as the second block of function keys +# at the top of the keyboard. This mapping follows the description given +# in the VT220 Programmer Reference Manual and agrees with the labeling +# on some terminals that emulate the vt220. There is no support for an F5. +# See vt220 for an alternate mapping. +# +vt220d|DEC VT220 in vt100 mode with DEC function key labeling:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:k5@:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :tc=vt220-old: + +vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins:\ + :am@:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220: + +# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko +# (not an official DEC entry!) +# The problem with real vt220 terminals is they don't send escapes when in +# in vt220 mode. This can be gotten around two ways. 1> don't send +# escapes or 2> put the vt220 into vt100 mode and use all the nifty +# features of vt100 advanced video which it then has. +# +# This entry takes the view of putting a vt220 into vt100 mode so +# you can use the escape key in emacs and everything else which needs it. +# +# You probably don't want to use this on a VMS machine since VMS will think +# it has a vt220 and will get fouled up coming out of emacs +# +# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996 +# (Added vt100 :rc:,:sc: to quiet a tic warning -- esr) +vt200-js|vt220-js|dec vt200 series with jump scroll:\ + :am:\ + :co#80:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:dm=:do=^J:ed=:\ + :ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[61"p\E[H\E[?3l\E[?4l\E[?1l\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :nd=\E[C:nw=^M\ED:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :rc=\E8:rf=/usr/share/tabset/vt100:sc=\E7:se=5\E[27m:\ + :sf=\ED:so=5\E[7m:sr=\EM:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m: + +# This was DEC's vt320. Use the purpose-built one below instead +#vt320|DEC VT320 in vt100 emulation mode, +# use=vt220, + +# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam. +# +vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode:\ + :am@:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220: + +# These entries are not DEC's official ones, they were purpose-built for the +# VT320. Here are the designer's notes: +# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to +# 'Erase to End of Field'... since nothing seems to use 'end' anyways... +# khome is Home on a PC kbd. Actually 'FIND' on a VT. +# Things that use <knxt> usually use tab anyways... and things that don't use +# tab usually use <knxt> instead... +# kprv is same as tab - Backtab is useless... +# I left out :sa: because of its RIDICULOUS complexity, +# and the resulting fact that it causes the termcap translation of the entry +# to SMASH the 1k-barrier... +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +# (vt320: uncommented :fs: --esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +vt320|vt300|dec vt320 7 bit terminal:\ + :am:es:hs:mi:ms:xn:\ + :co#80:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\ + :ei=\E[4l:fs=\E[0$}:ho=\E[H:im=\E[4h:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ + :kh=\E[1~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[1$}\E[H\E[K:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l:tc=vt220+keypad: +vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy:\ + :am@:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\ + :tc=vt320: +# We have to init 132-col mode, not 80-col mode. +vt320-w|vt300-w|dec vt320 wide 7 bit terminal:\ + :co#132:ws#132:\ + :is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :tc=vt320: +vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am:\ + :am@:\ + :is=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\ + :tc=vt320-w: + +# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals +# which are pretty much a superset of the VT320. They have the +# host writable status line, yet another different DRCS matrix size, +# and such, but they add the DEC Technical character set, Multiple text +# pages, selectable length pages, and the like. The difference between +# the vt330 and vt340 is that the latter has only 2 planes and a monochrome +# monitor, the former has 4 planes and a color monitor. These terminals +# support VT131 and ANSI block mode, but as with much of these things, +# termcap/terminfo doesn't deal with these features. +# +# Note that this entry is are set up in what was the standard way for GNU +# Emacs v18 terminal modes to deal with the cursor keys in that the arrow +# keys were switched into application mode at the same time the numeric pad +# is switched into application mode. This changes the definitions of the +# arrow keys. Emacs v19 is smarter and mines its keys directly out of +# your termcap or terminfo entry, +# +# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 +# (vt340: string capability "sb=\E[M" corrected to "sr"; +# also, added <rmam>/<smam> based on the init string -- esr) +vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\E[L:as=\E(0:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ds=\E[2$~\r\E[1$}\E[K\E[$}:ei=\E[4l:\ + :fs=\E[$}:ho=\E[H:im=\E[4h:\ + :is=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:\ + :nw=^M\ED:r1=\E[?3l:rc=\E8:rf=/usr/share/tabset/vt300:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}\E[1;%dH:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=200\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: + +# DEC doesn't supply a vt400 description, so we add Daniel Glasser's +# (originally written with vt420 as its primary name, and usable for it). +# +# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple +# text pages and long text pages with selectable length of the vt340, along +# with left and right margins, rectangular area text copy, fill, and erase +# operations, selected region character attribute change operations, +# page memory and rectangle checksums, insert/delete column, reception +# macros, and other features too numerous to remember right now. TERMCAP +# can only take advantage of a few of these added features. +# +# Note that this entry is are set up in what was the standard way for GNU +# Emacs v18 terminal modes to deal with the cursor keys in that the arrow +# keys were switched into application mode at the same time the numeric pad +# is switched into application mode. This changes the definitions of the +# arrow keys. Emacs v19 is smarter and mines its keys directly out of +# your termcap entry, +# +# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 +# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:"; +# also, added <rmam>/<smam> based on the init string -- esr) +vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\E[L:as=\E(0:cd=10\E[J:ce=4\E[K:cl=10\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ds=\E[2$~\r\E[1$}\E[K\E[$}:ei=\E[4l:\ + :fs=\E[$}:ho=\E[H:ic=\E[@:im=\E[4h:\ + :is=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:\ + :nw=^M\ED:r1=\E<\E[?3l\E[!p\E[?7h:rc=\E8:\ + :rf=/usr/share/tabset/vt300:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:ts=\E[2$~\E[1$}\E[1;%dH:\ + :ue=\E[24m:up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:\ + :ve=\E[?25h:vi=\E[?25l: + +# (vt420: I removed :k0:, it collided with <kf10>. I also restored +# a missing :sc: -- esr) +vt420|DEC VT420:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*6=\E[4~:@0=\E[1~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[2J:cm=10\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\ + :i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\ + :im=\E[4h:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\ + :k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:ke=\E>:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=^H:\ + :mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# DEC VT220 and up support DECUDK (user-defined keys). DECUDK (i.e., pfx) +# takes two parameters, the key and the string. Translating the key is +# straightforward (keys 1-5 are not defined on real terminals, though some +# emulators define these): +# +# if (key < 16) then value = key; +# else if (key < 21) then value = key + 1; +# else if (key < 25) then value = key + 2; +# else if (key < 27) then value = key + 3; +# else if (key < 30) then value = key + 4; +# else value = key + 5; +# +# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT". +# There's no provision in terminfo for emitting a string in this format, so the +# application has to know it. +# +vt420pc|DEC VT420 w/PC keyboard:\ + :@7=\E[4~:F1=\E[23~:F2=\E[24~:F3=\E[11;2~:F4=\E[12;2~:\ + :F5=\E[13;2~:F6=\E[14;2~:F7=\E[15;2~:F8=\E[17;2~:\ + :F9=\E[18;2~:FA=\E[19;2~:FB=\E[20;2~:FC=\E[21;2~:\ + :FD=\E[23;2~:FE=\E[24;2~:FF=\E[23~:FG=\E[24~:FH=\E[25~:\ + :FI=\E[26~:FJ=\E[28~:FK=\E[29~:FL=\E[31~:FM=\E[32~:\ + :FN=\E[33~:FO=\E[34~:FP=\E[35~:FQ=\E[36~:FR=\E[23;2~:\ + :FS=\E[24;2~:FT=\E[25;2~:FU=\E[26;2~:FV=\E[28;2~:\ + :FW=\E[29;2~:FX=\E[31;2~:FY=\E[32;2~:FZ=\E[33;2~:\ + :Fa=\E[34;2~:Fb=\E[35;2~:Fc=\E[36;2~:\ + :S6=USR_TERM\072vt420pcdos\072:k1=\E[11~:k2=\E[12~:\ + :k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\177:kh=\E[H:tc=vt420: + +vt420pcdos|DEC VT420 w/PC for DOS Merge:\ + :li#25:\ + :S4=\E[?1;2r\E[34h:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:S6@:\ + :me=\E[m:sa@:tc=vt420pc: + +vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :kD=\177:kh=\E[H:l1=\EOP:l2=\EOQ:l3=\EOR:l4=\EOS:tc=vt420: + +vt510|DEC VT510:\ + :tc=vt420: +vt510pc|DEC VT510 w/PC keyboard:\ + :tc=vt420pc: +vt510pcdos|DEC VT510 w/PC for DOS Merge:\ + :tc=vt420pcdos: + +# VT520/VT525 +# +# The VT520 is a monochrome text terminal capable of managing up to +# four independent sessions in the terminal. It has multiple ANSI +# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console) +# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950, +# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only. +# +# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or +# [Alt]/[Print Screen] depending upon which keyboard and which +# terminal mode is being used. If Set-Up has been disabled or +# assigned to an unknown key, Set-Up may be entered by pressing +# [F3] as the first key after power up, regardless of keyboard type. +# (vt520: I added <rmam>/<smam> based on the init string, also :sc: -- esr) +vt520|DEC VT520:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*6=\E[4~:@0=\E[1~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[2J:cm=10\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\ + :i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\ + :im=\E[4h:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\ + :k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=2\E[5m:\ + :md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# (vt525: I added <rmam>/<smam> based on the init string; +# removed :se:=\E[m, :ue:=\E[m, added :sc: -- esr) +vt525|DEC VT525:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*6=\E[4~:@0=\E[1~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[2J:cm=10\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\ + :i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\ + :im=\E[4h:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\ + :k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=2\E[5m:\ + :md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### VT100 emulations +# + +# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows +# (the best Windows telnet as of September 1995) presents the name `dec-vt100' +# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us +# that this works best with a stock vt100 entry. +dec-vt100|EWAN telnet's vt100 emulation:\ + :tc=vt100: + +# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996 +dec-vt220|DOS tnvt200 terminal emulator:\ + :am@:tc=vt220: + +# Zstem340 is an (IMHO) excellent VT emulator for PC's. I recommend it to +# anyone who needs PC VT340 emulation. (or anything below that level, for +# that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's +# RDBM systems, it includes ReGIS and SiXel support! I'm impressed... +# I can send the address if requested. +# (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr) +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +z340|zstem vt340 terminal emulator 132col 42line:\ + :li#42:\ + :is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H:\ + :tc=vt320-w: +z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins):\ + :am@:\ + :is=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H:\ + :tc=z340: + +# CRT is shareware. It implements some xterm features, including mouse. +crt|crt-vt220|CRT 2.3 emulating VT220:\ + :ms:ut:\ + :NC@:\ + :st=\EH:tc=vt100+enq:tc=vt220:tc=ecma+color: + +# PuTTY 0.55 (released 3 August 2004) +# http://www.chiark.greenend.org.uk/~sgtatham/putty/ +# +# Comparing with 0.51, vttest is much better (only a few problems with the +# cursor position reports and wrapping). +# +# PuTTY 0.51 (released 14 December 2000) +# +# This emulates vt100 + vt52 (plus a few vt220 features: ech, SRM, DECTCEM, as +# well as SCO and Atari, color palettes from Linux console). Reading the code, +# it is intended to be VT102 plus selected features. By default, it sets $TERM +# to xterm, which is incorrect, since several features are misimplemented: +# +# Alt+key always sends ESC+key, so 'km' capability is removed. +# +# Control responses, wrapping and tabs are buggy, failing a couple of +# screens in vttest. +# +# xterm mouse support is not implemented (unrelease version may). +# +# Several features such as backspace/delete are optional; this entry documents +# the default behavior -TD + +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +putty|PuTTY terminal emulator:\ + :am:bw:hs:mi:ms:xn:xo:\ + :it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:K2=\E[G:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:\ + :al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=\ED:ds=\E]0;\007:ec=\E[%dX:ei=\E[4l:fs=^G:\ + :ho=\E[H:im=\E[4h:\ + :is=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\E[B:kh=\E[1~:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:\ + :rs=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l:sc=\E7:\ + :se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E[?47l:ti=\E[?47h:ts=\E]0;:ue=\E[24m:up=\EM:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :tc=vt102+enq: +vt100-putty|Reset PuTTY to pure vt100:\ + :rs=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p:\ + :tc=vt100: +# palette is hardcoded... +putty-256color|PuTTY 0.58 with xterm 256-colors:\ + :Ic@:tc=xterm+256color:tc=putty: + +# One of the keyboard selections is "VT100+". +# pterm (the X11 port) uses shifted F1-F10 as F11-F20 +putty-vt100|VT100+ keyboard layout:\ + :F1=\EOZ:F2=\EO[:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\ + :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:k;=\EOY:tc=putty: + +# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by +# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator +# (communication program) which supports: +# +# - Serial port connections. +# - TCP/IP (telnet) connections. +# - VT100 emulation, and selected VT200/300 emulation. +# - TEK4010 emulation. +# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and +# Quick-VAN). +# - Scripts using the "Tera Term Language". +# - Japanese and Russian character sets. +# +# The program does not come with terminfo or termcap entries. However, the +# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no +# vt52 or doublesize character support; blinking is done with color). Besides +# the HPA, VPA extensions it also implements CPL and CNL. +# +# All of the function keys can be remapped. This description shows the default +# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys +# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad +# is laid out like vt220, rather than the face codes on the PC keyboard, i.e, +# kfnd Insert +# kslt Delete +# kich1 Home +# kdch1 PageUp +# kpp End +# knp PageDown +# +# ANSI colors are implemented, but cannot be combined with video attributes +# except for reverse. +# +# No fonts are supplied with the program, so the acsc string is chosen to +# correspond with the default Microsoft terminal font. +# +# Tera Term recognizes some xterm sequences, including those for setting and +# retrieving the window title, and for setting the window size (i.e., using +# "resize -s"), though it does not pass SIGWINCH to the application if the +# user resizes the window with the mouse. +teraterm2.3|Tera Term Pro:\ + :km:xo@:\ + :NC#43:vt@:\ + :*6=\E[4~:@0=\E[1~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :al=\E[L:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cv=\E[%i%dd:dc=\E[P:dl=\E[M:ec=\E[%dX:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:mb=\E[5m:md=\E[1m:\ + :me=\E[0m\017:mr=\E[7m:nd=\E[C:op=\E[100m:se=\E[27m:\ + :so=\E[7m:sr=\EM:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=200\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:tc=vt100+enq:\ + :tc=klone+color:tc=vt100: + +# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary +# to choose a Windows OEM font). +# +# Testing with tack: +# - it does not have xenl (suppress that) +# - underline seems to work with color (modify ncv). +# Testing with vttest: +# - wrapping differs from vt100 (menu 1). +# - it recognizes xterm's X10 and normal mouse tracking, but none of the +# other flavors. +# - it recognizes the dtterm window controls for reporting size in +# characters and pixels. +# - it passes SIGWINCH. +teraterm4.59|Tera Term Pro:\ + :ut:xn@:\ + :NC#41:\ + :Km=\E[M:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :tc=teraterm2.3: + +teraterm|Tera Term:\ + :tc=teraterm4.59: + +# Tested with WinNT 4.0, the telnet application assumes the screensize is +# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters. +# +# Other notes: +# a) Fails tack's cup (cursor-addressing) test, though cup works well enough +# for casual (occasional) use. Also fails several of the vttest screens, +# but that is not unusual for vt100 "emulators". +# b) Does not implement vt100 keypad +# c) Recognizes a subset of vt52 controls. +ms-vt100|MS telnet imitating dec vt100:\ + :li#25:\ + :@8@:K1@:K2@:K3@:K4@:K5@:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :ct@:k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:k;@:tc=vt102+enq:\ + :tc=vt100: + +# Tested with Windows 2000, the telnet application runs in a console window, +# also using 'Terminal' font. +# +# Other notes: +# a) This version has no function keys or numeric keypad. Unlike the older +# version, the numeric keypad is entirely ignored. +# b) The program sets $TERM to "ansi", which of course is inaccurate. +ms-vt100-color|vtnt|windows 2000 ansi (sic):\ + :ut:\ + :DC=\E[%dP:IC=\E[%d@:ei=:im=:tc=ecma+color:tc=ms-vt100: + +# Based on comments from Federico Bianchi: +# +# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different +# scheme for PF keys. +# +# and PuTTY wishlist: +# +# The modifiers are represented as the codes listed above, prefixed to +# the normal sequences. If the modifier is pressed alone, its sequence +# is transmitted twice in succession. If multiple modifiers apply, +# they're transmitted in the order shift, control, alt. +# +# Shift \E^S +# Alt \E^A, +# Ctrl \E^C, +ms-vt100+|vt100+|windows XP vt100+ (sic):\ + :@7=\Ek:F1=\E!:F2=\E@:F3=\E\023\E1:F4=\E\023\E2:\ + :F5=\E\023\E3:F6=\E\023\E4:F7=\E\023\E5:F8=\E\023\E6:\ + :F9=\E\023\E7:FA=\E\023\E8:FB=\E\023\E9:FC=\E\023\E0:\ + :FD=\E\023\E!:FE=\E\023\E@:FF=\E\003\E1:FG=\E\003\E2:\ + :FH=\E\003\E3:FI=\E\003\E4:FJ=\E\003\E5:FK=\E\003\E6:\ + :FL=\E\003\E7:FM=\E\003\E8:FN=\E\003\E9:FO=\E\003\E0:\ + :FP=\E\003\E!:FQ=\E\003\E@:FR=\E\001\E1:FS=\E\001\E2:\ + :FT=\E\001\E3:FU=\E\001\E4:FV=\E\001\E5:FW=\E\001\E6:\ + :FX=\E\001\E7:FY=\E\001\E8:FZ=\E\001\E9:Fa=\E\001\E0:\ + :Fb=\E\001\E!:Fc=\E\001\E@:k1=\E1:k2=\E2:k3=\E3:k4=\E4:\ + :k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:k;=\E0:kD=\E-:kI=\E+:\ + :kN=\E/:kP=\E?:kh=\Eh:tc=ms-vt100-color: + +ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+:\ + :tc=ms-vt100+: + +# expect-5.44.1.15/example/tkterm +# a minimal subset of a vt100 (compare with "news-unk). +# +# The missing "=" in smkx is not a typo (here), but an error in tkterm. +tt|tkterm|Don Libes' tk text widget terminal emulator:\ + :cl=\E[H\E[J:cm=\E[%d;%dH:cr=^M:do=^J:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\ + :ke=\E[?1l\E>:ks=\E[?1h\E:le=^H:nd=\E[C:se=\E[m:sf=^J:\ + :so=\E[7m:up=\E[A: + +######## X TERMINAL EMULATORS +#### XTERM +# +# You can add the following line to your .Xdefaults to change the terminal type +# set by the xterms you start up to my-xterm: +# +# *termName: my-xterm +# +# System administrators can change the default entry for xterm instances +# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either +# case, xterm will detect and reject an invalid terminal type, falling back +# to the default of xterm. +# + +# X10/6.6 11/7/86, minus alternate screen, plus (csr) +# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string; +# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E) +# as these seem not to work -- esr) +x10term|vs100-x10|xterm terminal emulator (X10 window system):\ + :am:bs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#65:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:RA=\E[?7l:SA=\E[?7h:\ + :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\ + :im=\E[4h:is=\E\E[m\E[?7h\E[?1;4l:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: +# Compatible with the R5 xterm +# (from the XFree86 3.2 distribution, <blink=@> removed) +# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD +# corrected typos in rs2 string - TD +# added u6-u9 -TD +xterm-r5|xterm R5 version:\ + :am:bs:km:ms:xn:\ + :co#80:it#8:li#24:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[23~:F2=\E[24~:IC=\E[%d@:Km=\E[M:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:ic=\E[@:\ + :im=\E[4h:k0=\EOq:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kA=\E[30~:kD=\E[3~:kE=\E[8~:kI=\E[2~:kL=\E[31~:\ + :kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m:tc=vt100+enq: +# Compatible with the R6 xterm +# (from XFree86 3.2 distribution, <acsc> and :it: added, <blink@> removed) +# added khome/kend, hts based on the R6 xterm code - TD +# (khome/kend do not actually work in X11R5 or X11R6, but many people use this +# for compatibility with other emulators). +xterm-r6|xterm-old|xterm X11R6 version:\ + :am:bs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :*6=\E[4~:@0=\E[1~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\ + :FA=\E[34~:Km=\E[M:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:eA=\E)0:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :md=\E[1m:me=\E[m:ml=\El:mr=\E[7m:mu=\Em:nd=\E[C:rc=\E8:\ + :rs=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:ue=\E[m:up=\E[A:\ + :us=\E[4m:tc=vt100+enq: +# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up. +# The name has been changed and some aliases have been removed. +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System):\ + :am:bs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ec=\E[%dX:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:\ + :is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\177:kI=\E[2~:\ + :kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\EOH:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:md=\E[1m:\ + :me=\E[0m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=^J:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:tc=vt100+enq:\ + :tc=ecma+color:tc=vt220+keypad: + +# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100 +# codes for F1-F4 except while in VT220 mode. +xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System):\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:tc=xterm-xf86-v32: + +# This version was released in XFree86 3.3.3 (November 1998). +# Besides providing printer support, it exploits a new feature that allows +# xterm to use terminfo-based descriptions with the titeInhibit resource. +# -- the distribution contained incorrect khome/kend values -TD +xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System):\ + :5i:\ + :*6@:@0@:ic@:is=\E[!p\E[?3;4l\E[4l\E>:kD=\E[3~:mb=\E[5m:\ + :mk=\E[8m:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec:\ + :r2=\E[!p\E[?3;4l\E[4l\E>:te=\E[?1047l\E[?1048l:\ + :ti=\E[?1048h\E[?1047h:tc=xterm-xf86-v33: + +# This version was released in XFree86 4.0. +xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System):\ + :NP:\ + :#2=\EO5H:#3=\E[2;5~:#4=\EO5D:%c=\E[6;5~:%e=\E[5;5~:\ + :%i=\EO5C:*4=\E[3;5~:*7=\EO5F:@7=\EOF:F3=\EO2P:F4=\EO2Q:\ + :F5=\EO2R:F6=\EO2S:F7=\E[15;2~:F8=\E[17;2~:F9=\E[18;2~:\ + :FA=\E[19;2~:FB=\E[20;2~:FC=\E[21;2~:FD=\E[23;2~:\ + :FE=\E[24;2~:FF=\EO5P:FG=\EO5Q:FH=\EO5R:FI=\EO5S:\ + :FJ=\E[15;5~:FK=\E[17;5~:FL=\E[18;5~:FM=\E[19;5~:\ + :FN=\E[20;5~:FO=\E[21;5~:FP=\E[23;5~:FQ=\E[24;5~:\ + :FR=\EO6P:FS=\EO6Q:FT=\EO6R:FU=\EO6S:FV=\E[15;6~:\ + :FW=\E[17;6~:FX=\E[18;6~:FY=\E[19;6~:FZ=\E[20;6~:\ + :Fa=\E[21;6~:Fb=\E[23;6~:Fc=\E[24;6~:K1@:K2=\EOE:K3@:K4@:\ + :K5@:kB=\E[Z:kD=\E[3~:kh=\EOH:te=\E[?1049l:ti=\E[?1049h:\ + :tc=xterm-xf86-v333: + +# This version was released in XFree86 4.3. +xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System):\ + :#2=\E[1;2H:#3=\E[2;2~:#4=\E[1;2D:%c=\E[6;2~:%e=\E[5;2~:\ + :%i=\E[1;2C:*4=\E[3;2~:*7=\E[1;2F:@1@:tc=xterm-xf86-v40: + +# This version was released in XFree86 4.4. +xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System):\ + :SF=\E[%dS:SR=\E[%dT:ve=\E[?12l\E[?25h:vs=\E[?12;25h:\ + :tc=xterm-xf86-v43: + +xterm-xfree86|xterm terminal emulator (XFree86):\ + :tc=xterm-xf86-v44: + +# This version reflects the current xterm features. +xterm-new|modern xterm terminal emulator:\ + :NP:\ + :@8=\EOM:K2=\EOE:SF=\E[%dS:SR=\E[%dT:kB=\E[Z:\ + :tc=xterm+pcfkeys:tc=xterm+tmux:tc=xterm-basic: +# +# This fragment describes as much of XFree86 xterm's "pc-style" function +# keys as will fit into terminfo's 60 function keys. +# From ctlseqs.ms: +# Code Modifiers +# --------------------------------- +# 2 Shift +# 3 Alt +# 4 Shift + Alt +# 5 Control +# 6 Shift + Control +# 7 Alt + Control +# 8 Shift + Alt + Control +# --------------------------------- +# The meta key may also be used as a modifier in this scheme, adding another +# bit to the parameter. +xterm+pcfkeys|fragment for PC-style fkeys:\ + :tc=xterm+app:tc=xterm+pcf2:tc=xterm+pcc2:tc=xterm+pce2: +# +xterm+noapp|fragment with cursor keys in normal mode:\ + :@7=\E[F:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A: + +xterm+app|fragment with cursor keys in application mode:\ + :@7=\EOF:kd=\EOB:kh=\EOH:kl=\EOD:kr=\EOC:ku=\EOA: +# +# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27) +# and revised in patch #167 (2002/8/24). Some other terminal emulators copied +# the earlier scheme, as noted in the "use=" clauses in this file. +# +# The original assignments from patch #94 for cursor-keys had some technical +# issues: +# +# A parameter for a function-key to represent a modifier is just more +# bits. But for a cursor-key it may change the behavior of the +# application. For instance, emacs decodes the first parameter of a +# cursor-key as a repeat count. +# +# A parameterized string should (really) not begin with SS3 (\EO). +# Rather, CSI (\E[) should be used. +# +# For these reasons, the original assignments were deprecated. For +# compatibility reasons, they are still available as a setting of xterm's +# modifyCursorKeys resource. These fragments list the modified cursor-keys +# that might apply to xterm+pcfkeys with different values of that resource. +xterm+pcc3|fragment with modifyCursorKeys=3:\ + :#4=\E[>1;2D:%i=\E[>1;2C:kF=\E[>1;2B:kR=\E[>1;2A: + +xterm+pcc2|fragment with modifyCursorKeys=2:\ + :#4=\E[1;2D:%i=\E[1;2C:kF=\E[1;2B:kR=\E[1;2A: + +xterm+pcc1|fragment with modifyCursorKeys=1:\ + :#4=\E[2D:%i=\E[2C:kF=\E[2B:kR=\E[2A: + +xterm+pcc0|fragment with modifyCursorKeys=0:\ + :#4=\EO2D:%i=\EO2C:kF=\EO2B:kR=\EO2A: + +# +# Here are corresponding fragments from xterm patch #216: +# +xterm+pcf0|fragment with modifyFunctionKeys=0:\ + :F1=\E[23~:F2=\E[24~:F3=\EO2P:F4=\EO2Q:F5=\EO2R:F6=\EO2S:\ + :F7=\E[15;2~:F8=\E[17;2~:F9=\E[18;2~:FA=\E[19;2~:\ + :FB=\E[20;2~:FC=\E[21;2~:FD=\E[23;2~:FE=\E[24;2~:\ + :FF=\EO5P:FG=\EO5Q:FH=\EO5R:FI=\EO5S:FJ=\E[15;5~:\ + :FK=\E[17;5~:FL=\E[18;5~:FM=\E[19;5~:FN=\E[20;5~:\ + :FO=\E[21;5~:FP=\E[23;5~:FQ=\E[24;5~:FR=\EO6P:FS=\EO6Q:\ + :FT=\EO6R:FU=\EO6S:FV=\E[15;6~:FW=\E[17;6~:FX=\E[18;6~:\ + :FY=\E[19;6~:FZ=\E[20;6~:Fa=\E[21;6~:Fb=\E[23;6~:\ + :Fc=\E[24;6~:Fd=\EO3P:Fe=\EO3Q:Ff=\EO3R:Fg=\EO3S:\ + :Fh=\E[15;3~:Fi=\E[17;3~:Fj=\E[18;3~:Fk=\E[19;3~:\ + :Fl=\E[20;3~:Fm=\E[21;3~:Fn=\E[23;3~:Fo=\E[24;3~:\ + :Fp=\EO4P:Fq=\EO4Q:Fr=\EO4R:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:k;=\E[21~: +# +xterm+pcf2|fragment with modifyFunctionKeys=2:\ + :F1=\E[23~:F2=\E[24~:F3=\E[1;2P:F4=\E[1;2Q:F5=\E[1;2R:\ + :F6=\E[1;2S:F7=\E[15;2~:F8=\E[17;2~:F9=\E[18;2~:\ + :FA=\E[19;2~:FB=\E[20;2~:FC=\E[21;2~:FD=\E[23;2~:\ + :FE=\E[24;2~:FF=\E[1;5P:FG=\E[1;5Q:FH=\E[1;5R:FI=\E[1;5S:\ + :FJ=\E[15;5~:FK=\E[17;5~:FL=\E[18;5~:FM=\E[19;5~:\ + :FN=\E[20;5~:FO=\E[21;5~:FP=\E[23;5~:FQ=\E[24;5~:\ + :FR=\E[1;6P:FS=\E[1;6Q:FT=\E[1;6R:FU=\E[1;6S:FV=\E[15;6~:\ + :FW=\E[17;6~:FX=\E[18;6~:FY=\E[19;6~:FZ=\E[20;6~:\ + :Fa=\E[21;6~:Fb=\E[23;6~:Fc=\E[24;6~:Fd=\E[1;3P:\ + :Fe=\E[1;3Q:Ff=\E[1;3R:Fg=\E[1;3S:Fh=\E[15;3~:\ + :Fi=\E[17;3~:Fj=\E[18;3~:Fk=\E[19;3~:Fl=\E[20;3~:\ + :Fm=\E[21;3~:Fn=\E[23;3~:Fo=\E[24;3~:Fp=\E[1;4P:\ + :Fq=\E[1;4Q:Fr=\E[1;4R:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~: +# +# Chunks from xterm #230: +xterm+pce2|fragment with modifyCursorKeys=2:\ + :#2=\E[1;2H:#3=\E[2;2~:%c=\E[6;2~:%e=\E[5;2~:*4=\E[3;2~:\ + :*7=\E[1;2F:kI=\E[2~:kN=\E[6~:kP=\E[5~:tc=xterm+edit: + +xterm+edit|fragment for 6-key editing-keypad:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:tc=xterm+pc+edit: + +xterm+pc+edit|fragment for pc-style editing keypad:\ + :@7=\E[4~:kh=\E[1~: + +xterm+vt+edit|fragment for vt220-style editing keypad:\ + :*6=\E[4~:@0=\E[1~: + +# +# Those chunks use the new-style (the xterm oldFunctionKeys resource is false). +# Alternatively, the same scheme with old-style function keys as in xterm-r6 +# is shown here (because that is used in mrxvt and mlterm): +xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys=2:\ + :F3=\E[11;2~:F4=\E[12;2~:F5=\E[13;2~:F6=\E[14;2~:\ + :FF=\E[11;5~:FG=\E[12;5~:FH=\E[13;5~:FI=\E[14;5~:\ + :FR=\E[11;6~:FS=\E[12;6~:FT=\E[13;6~:FU=\E[14;6~:\ + :Fd=\E[11;3~:Fe=\E[12;3~:Ff=\E[13;3~:Fg=\E[14;3~:\ + :Fp=\E[11;4~:Fq=\E[12;4~:Fr=\E[13;4~:k1=\E[11~:k2=\E[12~:\ + :k3=\E[13~:k4=\E[14~:tc=xterm+pcf2: +# +# This chunk is used for building the VT220/Sun/PC keyboard variants. +xterm-basic|modern xterm terminal emulator - common:\ + :5i:am:bs:km:mi:ms:ut:xn:AX:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:IC=\E[%d@:Km=\E[M:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;4l\E[4l\E>:kb=^H:ke=\E[?1l\E>:\ + :ks=\E[?1h\E=:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:\ + :ml=\El:mm=\E[?1034h:mo=\E[?1034l:mr=\E[7m:mu=\Em:nd=\E[C:\ + :op=\E[39;49m:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec:\ + :r2=\E[!p\E[?3;4l\E[4l\E>:rc=\E8:sc=\E7:se=\E[27m:sf=^J:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[?1049l:ti=\E[?1049h:\ + :ue=\E[24m:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:\ + :ve=\E[?12l\E[?25h:vi=\E[?25l:vs=\E[?12;25h:\ + :tc=vt100+enq: + +# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997 +# In retrospect, something like xterm-r6 was intended here -TD +xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1:\ + :se=\E[m:ue=\E[m:tc=xterm-xf86-v33: + +# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey) +# If configured to support 88- or 256-colors (which is fairly common in 2009), +# xterm also recognizes the control sequences for initc -TD +xterm-16color|xterm with 16 colors like aixterm:\ + :cc:tc=ibm+16color:tc=xterm-new: + +# 256-colors is a compile-time feature of XFree86 xterm beginning with +# patch #111 (1999/7/10) -TD +xterm+256color|xterm 256-color feature:\ + :cc:\ + :Co#256:pa#32767:\ + :AB=\E[48;5;%dm:AF=\E[38;5;%dm:Sb@:Sf@: + +# 88-colors is a compile-time feature of XFree86 xterm beginning with +# patch #115 (1999/9/18) -TD +# +# Note that the escape sequences used are the same as for 256-colors - xterm +# has a different table of default color resource values. If built for +# 256-colors, it can still handle an 88-color palette by using the initc +# capability. +# +# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals +# which support the xterm+256color feature support the associated initc +# capability. So it is cancelled in the entries which use this and/or the +# xterm+256color block. +# +# The default color palette for the 256- and 88-colors are different. A +# given executable will have one palette (perhaps compiled-in). If the program +# supports xterm's control sequence, it can be programmed using initc. +xterm+88color|xterm 88-color feature:\ + :Co#88:pa#7744:tc=xterm+256color: + +# These variants of XFree86 3.9.16 xterm are built as a configure option. +xterm-256color|xterm with 256 colors:\ + :tc=xterm+256color:tc=xterm-new: +xterm-88color|xterm with 88 colors:\ + :tc=xterm+88color:tc=xterm-256color: + +# These two are used to demonstrate the any-event mouse support, i.e., by +# using an extended name "XM" which tells ncurses to put the terminal into +# a special mode when initializing the xterm mouse. +xterm-1002|testing xterm-mouse:\ + :XM=\E[?1002%?%p1%{1}%=%th%el%;:tc=xterm-new: +xterm-1003|testing xterm-mouse:\ + :XM=\E[?1003%?%p1%{1}%=%th%el%;:tc=xterm-new: + +# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who +# asked for some of xterm's advanced features to be added to its terminfo +# entry. It defines extended capabilities not found in standard terminfo or +# termcap. These are useful in tmux, for instance, hence the name. +# +# One caveat in adding extended capabilities in ncurses is that if the names +# are longer than two characters, then they will not be visible through the +# termcap interface. +# +# Ms modifies the selection/clipboard. Its parameters are +# p1 = the storage unit (clipboard, selection or cut buffer) +# p2 = the base64-encoded clipboard content. +# +# Ss is used to set the cursor style as described by the DECSCUSR +# function to a block or underline. +# Se resets the cursor style to the terminal power-on default. +# +# Cs and Ce set and reset the cursor colour. +xterm+tmux|advanced xterm features used in tmux:\ + :Cr=\E]112\007:Cs=\E]12;%p1%s\007:\ + :Ms=\E]52;%p1%s;%p2%s\007:Se=\E[2 q:Ss=\E[%p1%d q: + +# This is another variant, for XFree86 4.0 xterm (T.Dickey) +# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color. +# To use it, your decTerminalID resource must be set to 200 or above. +# +# HTS \E H \210 +# RI \E M \215 +# SS3 \E O \217 +# CSI \E [ \233 +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +xterm-8bit|xterm terminal emulator 8-bit controls (X Window System):\ + :am:bs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\ + :K1=\217w:K2=\217y:K3=\217u:K4=\217q:K5=\217s:LE=\233%dD:\ + :RI=\233%dC:UP=\233%dA:ae=\E(B:al=\233L:as=\E(0:bl=^G:\ + :bt=\233Z:cd=\233J:ce=\233K:cl=\233H\2332J:\ + :cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:ct=\2333g:\ + :dc=\233P:dl=\233M:do=^J:ec=\233%dX:ei=\2334l:ho=\233H:\ + :im=\2334h:\ + :is=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8:\ + :k1=\23311~:k2=\23312~:k3=\23313~:k4=\23314~:k5=\23315~:\ + :k6=\23317~:k7=\23318~:k8=\23319~:k9=\23320~:kD=\2333~:\ + :kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\217B:\ + :ke=\233?1l\E>:kh=\2331~:kl=\217D:kr=\217C:ks=\233?1h\E=:\ + :ku=\217A:le=^H:mb=\2335m:md=\2331m:me=\2330m:mr=\2337m:\ + :nd=\233C:rc=\E8:sc=\E7:se=\23327m:sf=^J:so=\2337m:sr=\215:\ + :st=\210:ta=^I:te=\233?1049l:ti=\233?1049h:ue=\23324m:\ + :up=\233A:us=\2334m:vb=\233?5h\233?5l:\ + :ve=\233?25l\233?25h:vi=\233?25l:vs=\233?12;25h: + +xterm-hp|xterm with hpterm function keys:\ + :@7=\EF:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:\ + :k8=\Ew:kC=\EJ:kD=\EP:kI=\EQ:kN=\ES:kP=\ET:kd=\EB:kh=\Eh:\ + :kl=\ED:kr=\EC:ku=\EA:tc=xterm-basic: + +xterm-sco|xterm with SCO function keys:\ + :@1=\E[E:@7=\E[F:F1=\E[W:F2=\E[X:F3=\E[Y:F4=\E[Z:F5=\E[a:\ + :F6=\E[b:F7=\E[c:F8=\E[d:F9=\E[e:FA=\E[f:FB=\E[g:FC=\E[h:\ + :FD=\E[i:FE=\E[j:FF=\E[k:FG=\E[l:FH=\E[m:FI=\E[n:FJ=\E[o:\ + :FK=\E[p:FL=\E[q:FM=\E[r:FN=\E[s:FO=\E[t:FP=\E[u:FQ=\E[v:\ + :FR=\E[w:FS=\E[x:FT=\E[y:FU=\E[z:FV=\E[@:FW=\E[[:FX=\E[\\:\ + :FY=\E[]:FZ=\E[\136:Fa=\E[_:Fb=\E[`:Fc=\E[{:Km=\E[>M:\ + :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:k;=\E[V:kD=\177:kI=\E[L:kN=\E[G:kP=\E[I:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:tc=xterm-basic: + +# The xterm-new description has all of the features, but is not completely +# compatible with vt220. If you are using a Sun or PC keyboard, set the +# sunKeyboard resource to true: +# + maps the editing keypad +# + interprets control-function-key as a second array of keys, so a +# 12-fkey keyboard can support vt220's 20-fkeys. +# + maps numeric keypad "+" to ",". +# + uses DEC-style control sequences for the application keypad. +# +xterm-vt220|xterm emulating vt220:\ + :@7=\E[4~:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\ + :FA=\E[34~:Km=\E[M:k5=\E[15~:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kd=\EOB:kh=\E[1~:kl=\EOD:kr=\EOC:ku=\EOA:\ + :tc=xterm+app:tc=xterm+edit:tc=xterm-basic:\ + :tc=vt220+keypad: + +xterm-vt52|xterm emulating dec vt52:\ + :co#80:it#8:li#24:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\EG:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :\ + :cr=^M:do=\EB:ho=\EH:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:\ + :le=\ED:nd=\EC:nw=^M^J:sf=^J:sr=\EI:ta=^I:up=\EA: + +xterm-noapp|xterm with cursor keys in normal mode:\ + :ke=\E>:ks=\E=:te@:ti@:tc=xterm+noapp:tc=xterm: + +xterm-24|vs100|xterms|xterm terminal emulator (X Window System):\ + :li#24:tc=xterm-old: + +# This is xterm for ncurses. +xterm|xterm terminal emulator (X Window System):\ + :tc=xterm-new: + +# This entry assumes that xterm's handling of VT100 SI/SO is disabled by +# setting the vt100Graphics resource to false. +xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode:\ + :U8#1:tc=xterm: + +# These entries allow access to the X titlebar and icon name as a status line. +# Note that twm (and possibly window managers descended from it such as tvtwm, +# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess +# with it. +xterm+sl|access X title line and icon name:\ + :hs:\ + :ws#40:\ + :ds=\E]0;\007:fs=^G:ts=\E]0;:tc=xterm: +xterm+sl-twm|access X title line (pacify twm-descended window managers):\ + :hs:\ + :ws#40:\ + :ds=\E]2;\007:fs=^G:ts=\E]2;:tc=xterm: + +# +# The following xterm variants don't depend on your base version +# +# xterm with bold instead of underline +xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold:\ + :so=\E[7m:us=\E[1m:tc=xterm-old: + +# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file +xterm-nic|xterm with ich/ich1 suppressed for non-curses programs:\ + :IC@:ic@:tc=xterm: +# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996 +xterm1|xterm terminal emulator ignoring the alternate screen buffer:\ + :te@:ti@:tc=xterm: + +#### KTERM +# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr) +# (kterm should not invoke DEC Graphics as the alternate character set +# -- Kenji Rikitake) +# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics +# -- MATSUMOTO Shoji) +# kterm implements acsc via built-in table of X Drawable's +kterm|kterm kanji terminal emulator (X window system):\ + :es:hs:XT:\ + :NC@:\ + :Km=\E[M:RA=\E[?7l:SA=\E[?7h:\ + :ac=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~:ae=\E(B:\ + :as=\E(0:cs=\E[%i%d;%dr:ds=\E[?H:eA=:fs=\E[?F:me=\E[0m:\ + :rc=\E8:sc=\E7:ts=\E[?E\E[?%i%dT:tc=xterm-r6:\ + :tc=ecma+color: +kterm-color|kterm-co|kterm with ANSI colors:\ + :NC@:tc=kterm:tc=ecma+color: + +#### Other XTERM +# These (xtermc and xtermm) are distributed with Solaris. They refer to a +# variant of xterm which is apparently no longer supported, but are interesting +# because they illustrate SVr4 curses mouse controls - T.Dickey +xtermm|xterm terminal emulator (monocrome):\ + :am:bs:km:mi:ms:xn:\ + :BT#3:co#80:it#8:li#24:\ + :@7=\E[Y:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOZ:\ + :F2=\EOA:Gm=\E[%dY:IC=\E[%d@:Km=\E[^_:LE=\E[%dD:RI=\E[%dC:\ + :RQ=\E[492Z:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=3\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :ic=\E[@:im=:k0=\EOy:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\ + :k9=\EOX:k;=\EOY:kN=\E[U:kP=\E[V:kb=^H:kd=\EOB:kh=\E[H:\ + :kl=\EOD:kr=\EOC:ku=\EOA:le=\E[D:mb@:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:\ + :r1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H:\ + :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E@0\E[?4r:\ + :ti=\E@0\E[?4s\E[?4h\E@1:up=\E[A:tc=vt100+fnkeys: + +xtermc|xterm terminal emulator (color):\ + :Co#8:NC#7:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[100m:tc=xtermm: + +# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995 +# Here's a termcap entry I've been using for xterm_color, which comes +# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the +# color stuff, I also have a status line defined as the window manager +# title bar. [I have translated it to terminfo -- ESR] +xterm-pcolor|xterm with color used for highlights and status line:\ + :md=\E[1m\E[43m:mr=\E[7m\E[34m:so=\E[7m\E[31m:\ + :us=\E[4m\E[42m:tc=xterm+sl:tc=xterm-r6: + +# This describes the capabilities of color_xterm, an xterm variant from +# before ECMA-64 color support was folded into the main-line xterm release. +# This entry is straight from color_xterm's maintainer. +# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996 +# The README's with the distribution also say that it supports SGR 21, 24, 25 +# and 27, but they are not present in the terminfo or termcap. +color_xterm|cx|cx100|color_xterm color terminal emulator for X:\ + :am:bs:km:mi:ms:xn:XT:\ + :NC@:co#80:it#8:li#65:\ + :@7=\E[8~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[23~:F2=\E[24~:IC=\E[%d@:Km=\E[M:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=\E[4l:ho=\E[H:\ + :i1=\E[r\E[m\E[?7h\E[?4;6l\E[4l:im=\E[4h:k1=\E[11~:\ + :k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kI=\E[2~:\ + :kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:kh=\E[7~:kl=\EOD:kr=\EOC:\ + :ku=\EOA:le=^H:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:\ + :r1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<:\ + :rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\ + :te=\E>\E[?41;1r:ti=\E[?1;41s\E[?1;41h\E=:ue=\E[24m:\ + :up=\E[A:us=\E[4m:tc=ecma+color:tc=vt220+keypad: + +# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of +# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support +# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This +# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except +# that each of those implements the home, end, delete keys differently. +# +# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce +# colors; note that this is not compatible with the 5.2 version. +# csw (2002-05-15): make xterm-color primary instead of nxterm, to +# match XFree86's xterm.terminfo usage and prevent circular links +xterm-color|nxterm|generic color xterm:\ + :NC@:\ + :op=\E[m:tc=xterm-r6:tc=klone+color: + +# This entry describes an xterm with Sun-style function keys enabled +# via the X resource setting "xterm*sunFunctionKeys:true" +# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same. +# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z> +# because we want it to be seen as <kcpy>. +# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance +# with their Sun keyboard labels instead. +# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996 +xterm-sun|xterm with sunFunctionKeys true:\ + :%1=\E[196z:&8=\E[195z:@0=\E[200z:@5=\E[197z:@7=\E[220z:\ + :@8=\EOM:F1=\E[192z:F2=\E[193z:F3=\E[194z:F4=\E[195z:\ + :F5=\E[196z:F7=\E[198z:F8=\E[199z:F9=\E[200z:FA=\E[201z:\ + :FL=\E[208z:FM=\E[209z:FN=\E[210z:FO=\E[211z:FP=\E[212z:\ + :FQ=\E[213z:FS=\E[215z:FU=\E[217z:FW=\E[219z:FY=\E[221z:\ + :FZ=\E[222z:Fa=\E[234z:Fb=\E[235z:K2=\E[218z:k1=\E[224z:\ + :k2=\E[225z:k3=\E[226z:k4=\E[227z:k5=\E[228z:k6=\E[229z:\ + :k7=\E[230z:k8=\E[231z:k9=\E[232z:k;=\E[233z:kD=\E[3z:\ + :kI=\E[2z:kN=\E[222z:kP=\E[216z:kd=\EOB:kh=\E[214z:\ + :kl=\EOD:kr=\EOC:ku=\EOA:tc=xterm-basic: +xterms-sun|small (80x24) xterm with sunFunctionKeys true:\ + :co#80:li#24:tc=xterm-sun: + +#### GNOME (VTE) +# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0 +gnome-rh62|Gnome terminal:\ + :ut:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kD=\177:tc=xterm-color: + +# GNOME Terminal 1.4.0.4 (Redhat 7.2) +# +# This implements a subset of vt102 with a random selection of features from +# other terminals such as color and function-keys. +# +# shift-f1 to shift-f10 are f11 to f20 +# +# NumLock changes the application keypad to approximate vt100 keypad, except +# that there is no escape sequence matching comma (,). +# +# Other defects observed: +# vt100 LNM mode is not implemented. +# vt100 80/132 column mode is not implemented. +# vt100 DECALN is not implemented. +# vt100 DECSCNM mode is not implemented, so flash does not work. +# vt100 TBC (tab reset) is not implemented. +# xterm alternate screen controls do not restore cursor position properly +# it hangs in tack after running function-keys test. +gnome-rh72|GNOME Terminal:\ + :km@:ut:\ + :RA=\E[?7l:SA=\E[?7h:ct@:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kD=\E[3~:me=\E[0m\017:ve=\E[?25h:vi=\E[?25l:\ + :tc=xterm-color: + +# GNOME Terminal 2.0.1 (Redhat 8.0) +# +# Documentation now claims it implements vt220 (which is demonstrably false). +# However, it does implement ECH, which is a vt220 feature. And there are +# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display +# more of its bugs using vttest. +# +# However, note that bce and msgr are broken in this release. Tabs (tbc and +# hts) are broken as well. Sometimes flash (as in xterm-new) works. +# +# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu +# operations. Shift-tab generates a distinct sequence so it can be argued +# that it implements kcbt. +gnome-rh80|GNOME Terminal:\ + :ms@:ut@:\ + :ec=\E[%dX:kB=\E^I:kb=\177:op=\E[39;49m:vb=\E[?5h\E[?5l:\ + :tc=gnome-rh72: + +# GNOME Terminal 2.2.1 (Redhat 9.0) +# +# bce and msgr are repaired. +gnome-rh90|GNOME Terminal:\ + :ms:ut:\ + :#4=\EO2D:%i=\EO2C:*4=\E[3;2~:@7=\EOF:K2=\E[E:ch=\E[%i%dG:\ + :ct=\E[3g:cv=\E[%i%dd:kB=\E[Z:kh=\EOH:tc=xterm+pcf0:\ + :tc=xterm+pcfkeys:tc=gnome-rh80: + +# GNOME Terminal 2.14.2 (Fedora Core 5) +# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002. +gnome-fc5|GNOME Terminal:\ + :r1=\Ec:\ + :r2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h:\ + :tc=ansi+enq:tc=xterm+pcc0:tc=gnome-rh90: + +# GNOME Terminal 2.18.1 (2007 snapshot) +# +# For any "recent" version of gnome-terminal, it is futile to attempt to +# support modifiers on cursor- and keypad keys because the program usually +# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset +# of the keys (which more/less correspond to the termcap values), and will +# interpret those according to the $TERM value, but others not in the +# terminfo according to some constantly changing set of hacker guidelines -TD +vte-2007|VTE in GNOME Terminal snapshot 2.18.1:\ + :tc=xterm+pcc2:tc=gnome-fc5: +gnome-2007|GNOME Terminal snapshot 2.18.1:\ + :tc=vte-2007: + +# GNOME Terminal 2.22.3 (2008 snapshot) +# +# In vttest, it claims to be a vt220 with national replacement character-sets, +# but aside from the identifier string, implements only a small fraction of +# vt220's behavior, which will make it less usable on a VMS system (unclear +# what the intent of the developer is, since the NRC feature exposed in vttest +# by this change does not work). +vte-2008|VTE in GNOME Terminal snapshot 2.22.3:\ + :tc=vte+pcfkeys:tc=vte-2007: +gnome-2008|GNOME Terminal snapshot 2.22.3:\ + :tc=vte-2008: + +# GNOME terminal may automatically use the contents of the "xterm" terminfo to +# supply key information which is not built into the program. With 2.22.3, +# this list is built into the program (which addresses the inadvertant use of +# random terminfo data, though using a set of values which does not correspond +# to any that xterm produces - still not solving the problem that GNOME +# terminal hardcodes the $TERM variable as "xterm"). +# +# terminfo modifier code keys +# kf13-kf24 shift 2 F1 to F12 +# kf25-kf36 control 5 F1 to F12 +# kf37-kf48 shift/control 6 F1 to F12 +# kf49-kf60 alt 3 F1 to F12 +# kf61-kf63 shift-alt 4 F1 to F3 +# +# The parameters with \EO (SS3) are technically an error, since SS3 should have +# no parameters. This appears to be rote copying based on xterm+pcc0. +vte+pcfkeys|VTE's variation on xterm+pcfkeys:\ + :F3=\EO1;2P:F4=\EO1;2Q:F5=\EO1;2R:F6=\EO1;2S:FF=\EO1;5P:\ + :FG=\EO1;5Q:FH=\EO1;5R:FI=\EO1;5S:FR=\EO1;6P:FS=\EO1;6Q:\ + :FT=\EO1;6R:FU=\EO1;6S:Fd=\EO1;3P:Fe=\EO1;3Q:Ff=\EO1;3R:\ + :Fg=\EO1;3S:Fp=\EO1;4P:Fq=\EO1;4Q:Fr=\EO1;4R:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:tc=xterm+pcfkeys: +gnome+pcfkeys|VTE's variation on xterm+pcfkeys:\ + :tc=vte+pcfkeys: + +vte|VTE aka GNOME Terminal:\ + :tc=vte-2008: +gnome|GNOME Terminal:\ + :tc=vte: + +# palette is hardcoded... +vte-256color|VTE with xterm 256-colors:\ + :Ic@:tc=xterm+256color:tc=vte: +gnome-256color|GNOME Terminal with xterm 256-colors:\ + :tc=vte-256color: + +# XFCE Terminal 0.2.5.4beta2 +# +# This is based on some of the same source code, e.g., the VTE library, as +# gnome-terminal, but has fewer features, fails more screens in vttest. +# Since most of the terminfo-related behavior is due to the VTE library, +# the terminfo is the same as gnome-terminal. +xfce|Xfce Terminal:\ + :tc=vte: + +#### Other GNOME +# Multi-Gnome-Terminal 1.6.2 +# +# This does not use VTE, and does have different behavior (compare xfce and +# gnome). +mgt|Multi GNOME Terminal:\ + :SF=\E[%dS:SR=\E[%dT:tc=xterm-xf86-v333: + +#### KDE +# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce +# or not is debatable). +kvt|KDE terminal:\ + :km@:ut:\ + :@7=\E[F:kD=\177:kh=\E[H:tc=xterm-color: + +# Konsole 1.0.1 +# (formerly known as kvt) +# +# This program hardcodes $TERM to 'xterm', which is not accurate. However, to +# simplify this entry (and point out why konsole isn't xterm), we base this on +# xterm-r6. The default keyboard appears to be 'linux'. +# +# Notes: +# a) konsole implements several features from XFree86 xterm, though none of +# that is documented - except of course in its source code - apparently +# because its implementors are unaccustomed to reading documentation - as +# evidenced by the sparse and poorly edited documentation distributed with +# konsole. Some features such as the 1049 private mode are recognized but +# incorrectly implemented as a duplicate of the 47 private mode. +# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad +# sends PC-style escapes rather than vt100. +# c) fails vttest menu 3 (Test of character sets) because it does not properly +# parse some control sequences. Also fails vttest Primary Device Attributes +# by sending a bogus code (in the source it says it's supposed to be a +# vt220, which is doubly incorrect because it does not implement vt220 +# control sequences except for a few special cases). Treat it as a +# mildly-broken vt102. +# +# Update for konsole 1.3.2: +# The 1049 private mode works (but see the other xterm screens in vttest). +# Primary Device Attributes now returns the code for a vt100 with advanced +# video option. Perhaps that's intended to be a "mildly-broken vt102". +# +# Updated for konsole 1.6.4: +# add konsole-solaris +# +# Updated for konsole 1.6.6: +# add control-key modifiers for function-keys, etc. +# +# vttest menu 1 shows that both konsole and gnome terminal do wrapping +# different from xterm (and vt100's). They have the same behavior in this +# detail, but it is unclear which copies the other. +konsole-base|KDE console window:\ + :NP:km@:ut:XT:\ + :NC@:\ + :*6@:@0@:@7=\E[4~:F1@:F2@:F3@:F4@:F5@:F6@:F7@:F8@:F9@:FA@:\ + :RA=\E[?7l:SA=\E[?7h:SF=\E[%dS:SR=\E[%dT:bl@:ch=\E[%i%dG:\ + :cv=\E[%i%dd:ec=\E[%dX:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:k;@:\ + :kD@:kb=\177:kh=\E[1~:mb=\E[5m:me=\E[0m\017:\ + :rs=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h:\ + :se=\E[27m:ue=\E[24m:vb=\E[?5h\E[?5l:ve=\E[?25h:\ + :vi=\E[?25l:tc=ecma+color:tc=xterm-r6: +konsole-linux|KDE console window with linux keyboard:\ + :F1=\E[23~:F2=\E[24~:F3@:F4@:F5@:F6@:F7@:F8@:F9@:FA@:k1=\E[[A:\ + :k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:tc=konsole-base: +konsole-solaris|KDE console window with Solaris keyboard:\ + :@7=\E[4~:kb=^H:kh=\E[1~:tc=konsole-vt100: +# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather +# than testing the code. +konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm:\ + :@7=\E[4~:kh=\E[1~:tc=konsole-vt100: +# The value for kbs reflects local customization rather than the settings used +# for XFree86 xterm. +konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm:\ + :@7=\EOF:kh=\EOH:tc=konsole+pcfkeys:tc=konsole-vt100: +# Konsole does not implement shifted cursor-keys. +konsole+pcfkeys|konsole subset of xterm+pcfkeys:\ + :#4@:%i@:kB=\E[Z:kF@:kR@:tc=xterm+pcc2:tc=xterm+pcf0: +# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but +# it is still useful for deriving the other entries. +konsole-vt100|KDE console window with vt100 (sic) keyboard:\ + :@7=\E[F:F1=\E[23~:F2=\E[24~:F3@:F4@:F5@:F6@:F7@:F8@:F9@:FA@:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :kD=\E[3~:kb=\177:kh=\E[H:tc=konsole-base: +konsole-vt420pc|KDE console window with vt420 pc keyboard:\ + :kD=\177:kb=^H:tc=konsole-vt100: +konsole-16color|klone of xterm-16color:\ + :NC#32:tc=ibm+16color:tc=konsole: +# make a default entry for konsole +konsole|KDE console window:\ + :tc=konsole-xf4x: + +# palette is hardcoded... +konsole-256color|KDE console window with xterm 256-colors:\ + :Ic@:tc=xterm+256color:tc=konsole: + +#### MLTERM +# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD +# +# It is nominally a vt102 emulator, with features borrowed from rxvt and +# xterm. +# +# The function keys are numbered based on shift/control/alt modifiers, except +# that the control-modifier itself is used to spawn a new copy of mlterm (the +# "-P" option). So control/F1 to control/F12 may not be usable, depending on +# how it is configured. +# +# kf1 to kf12 \E[11~ to \E[24~ +# shift kf1 to kf12 \E[11;2~ to \E[24;2~ +# alt kf1 to kf12 \E[11;3~ to \E[24;3~ +# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~ +# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe) +# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~ +# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~ +# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~ +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +mlterm|multi lingual terminal emulator:\ + :am:es:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ + :ic=\E[@:im=\E[4h:\ + :is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ + :kh=\EOH:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[?25h:vi=\E[?25l:tc=mlterm+pcfkeys:tc=xterm+r6f2: + +# The insert/delete/home/end keys do not respond to modifiers because mlterm +# looks in its termcap to decide which string to send. If it used terminfo +# (when available), it could use the extended names introduced for xterm. +mlterm+pcfkeys|fragment for PC-style fkeys:\ + :#4=\EO1;2D:%c=\E[6;2~:%e=\E[5;2~:%i=\EO1;2C: + +mlterm-256color|mlterm 3.0 with xterm 256-colors:\ + :tc=xterm+256color:tc=rxvt: + +#### RXVT +# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997 +# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997 +# Notes: +# rxvt 2.21b uses +# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O, +# but some applications don't work with that. +# It also has an AIX extension +# box2=lqkxjmwuvtn, +# and +# ech=\E[%p1%dX, +# but the latter does not work correctly. +# +# The distributed terminfo says it implements hpa and vpa, but they are not +# implemented correctly, using relative rather than absolute positioning. +# +# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM. +# Since rxvt is not really compatible with xterm, it should be configured as +# "rxvt" or "rxvt-color". +# +# removed dch/dch1 because they are inconsistent with bce/ech -TD +# remove km as per tack test -TD +rxvt-basic|rxvt terminal base (X Window System):\ + :am:bs:eo:mi:ms:ut:xn:xo:XT:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:Km=\E[M:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dl=\E[M:do=^J:eA=\E(B\E)0:ei=\E[4l:ho=\E[H:\ + :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\ + :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:kB=\E[Z:\ + :kb=^H:ke=\E>:ks=\E=:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:\ + :r1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H:\ + :r2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h:\ + :rc=\E8:s0=\E(B:s1=\E(0:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:\ + :sr=\EM:st=\EH:ta=^I:te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:\ + :ue=\E[24m:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:\ + :vi=\E[?25l:tc=vt100+enq:tc=rxvt+pcfkeys:\ + :tc=vt220+keypad: +# Key Codes from rxvt reference: +# +# Note: Shift + F1-F10 generates F11-F20 +# +# For the keypad, use Shift to temporarily override Application-Keypad +# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock +# is off, escape sequences toggle Application-Keypad setting. +# Also note that values of Home, End, Delete may have been compiled +# differently on your system. +# +# Normal Shift Control Ctrl+Shift +# Tab ^I ESC [ Z ^I ESC [ Z +# BackSpace ^H ^? ^? ^? +# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @ +# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @ +# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ +# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @ +# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @ +# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @ +# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @ +# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @ +# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ +# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^ +# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^ +# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^ +# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^ +# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^ +# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^ +# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^ +# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^ +# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^ +# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^ +# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @ +# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @ +# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @ +# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @ +# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @ +# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @ +# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @ +# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @ +# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @ +# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @ +# +# Application +# Up ESC [ A ESC [ a ESC O a ESC O A +# Down ESC [ B ESC [ b ESC O b ESC O B +# Right ESC [ C ESC [ c ESC O c ESC O C +# Left ESC [ D ESC [ d ESC O d ESC O D +# KP_Enter ^M ESC O M +# KP_F1 ESC O P ESC O P +# KP_F2 ESC O Q ESC O Q +# KP_F3 ESC O R ESC O R +# KP_F4 ESC O S ESC O S +# XK_KP_Multiply * ESC O j +# XK_KP_Add + ESC O k +# XK_KP_Separator , ESC O l +# XK_KP_Subtract - ESC O m +# XK_KP_Decimal . ESC O n +# XK_KP_Divide / ESC O o +# XK_KP_0 0 ESC O p +# XK_KP_1 1 ESC O q +# XK_KP_2 2 ESC O r +# XK_KP_3 3 ESC O s +# XK_KP_4 4 ESC O t +# XK_KP_5 5 ESC O u +# XK_KP_6 6 ESC O v +# XK_KP_7 7 ESC O w +# XK_KP_8 8 ESC O x +# XK_KP_9 9 ESC O y +# +# The source-code for rxvt actually defines mappings for F21-F35, using +# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys +# are rare, so this entry uses the shift- and control-modifiers as in +# xterm+pcfkeys to define keys past F12. +# +# kIC is normally not used, since rxvt performs a paste for that (shifted +# insert), unless private mode 35 is set. +# +# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD +# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD +rxvt+pcfkeys|fragment for PC-style fkeys:\ + :#2=\E[7$:#3=\E[2$:#4=\E[d:%c=\E[6$:%e=\E[5$:%i=\E[c:\ + :*4=\E[3$:*6=\E[4~:*7=\E[8$:@0=\E[1~:@7=\E[8~:F1=\E[23~:\ + :F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:\ + :F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:FB=\E[23$:\ + :FC=\E[24$:FD=\E[11\136:FE=\E[12\136:FF=\E[13\136:\ + :FG=\E[14\136:FH=\E[15\136:FI=\E[17\136:FJ=\E[18\136:\ + :FK=\E[19\136:FL=\E[20\136:FM=\E[21\136:FN=\E[23\136:\ + :FO=\E[24\136:FP=\E[25\136:FQ=\E[26\136:FR=\E[28\136:\ + :FS=\E[29\136:FT=\E[31\136:FU=\E[32\136:FV=\E[33\136:\ + :FW=\E[34\136:FX=\E[23@:FY=\E[24@:k1=\E[11~:k2=\E[12~:\ + :k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kE=\E[8\136:\ + :kF=\E[a:kI=\E[2~:kN=\E[6~:kP=\E[5~:kR=\E[b:kd=\E[B:\ + :kh=\E[7~:kl=\E[D:kr=\E[C:ku=\E[A: + +rxvt|rxvt terminal emulator (X Window System):\ + :NC@:\ + :ch=\E[%i%dG:cv=\E[%i%dd:k0=\E[21~:me=\E[m\017:\ + :tc=rxvt-basic:tc=ecma+color: +rxvt-color|rxvt terminal emulator (X Window System):\ + :tc=rxvt: +rxvt-256color|rxvt 2.7.9 with xterm 256-colors:\ + :tc=xterm+256color:tc=rxvt: +rxvt-88color|rxvt 2.7.9 with xterm 88-colors:\ + :tc=xterm+88color:tc=rxvt: +rxvt-xpm|rxvt terminal emulator (X Window System):\ + :tc=rxvt: +rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin:\ + :ac=+\257,\256-\1360\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :tc=rxvt: +rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin:\ + :ac=+\257,\256-\1360\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376:\ + :tc=rxvt-cygwin: + +# This variant is supposed to work with rxvt 2.7.7 when compiled with +# NO_BRIGHTCOLOR defined. rxvt needs more work... +rxvt-16color|xterm with 16 colors like aixterm:\ + :NC#32:tc=ibm+16color:tc=rxvt: + +#### MRXVT +# mrxvt 0.5.4 +# +# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which +# makes its function-keys different from other flavors of rxvt -TD +mrxvt|multitabbed rxvt:\ + :XT:\ + :#2=\E[7;2~:*7=\E[8;2~:@7=\E[8~:kd=\E[B:kh=\E[7~:kl=\E[D:\ + :kr=\E[C:ku=\E[A:tc=xterm+r6f2:tc=xterm+pcfkeys:tc=rxvt: + +mrxvt-256color|multitabbed rxvt with 256 colors:\ + :tc=xterm+256color:tc=mrxvt: + +#### ETERM +# From: Michael Jennings <mej@valinux.com> +# +# Eterm 0.9.3 +# +# removed kf0 which conflicts with kf10 -TD +# remove cvvis which conflicts with cnorm -TD +# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT +# but does otherwise follow the rxvt+pcfkeys model -TD +# remove nonworking flash -TD +# remove km as per tack test -TD +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +Eterm|Eterm-color|Eterm with xterm-style color support (X Window System):\ + :5i:am:bw:eo:mi:ms:ut:xn:xo:XT:\ + :BT#5:NC@:co#80:it#8:li#24:lm#0:\ + :%1=\E[28~:%c@:%e@:@1=\EOu:@8=\EOM:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=\E[7~:K2=\EOu:K3=\E[5~:\ + :K4=\E[8~:K5=\E[6~:Km=\E[M:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:\ + :cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ + :i1=\E[?47l\E>\E[?1l:ic=\E[@:im=\E[4h:\ + :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:kb=^H:ke=:\ + :ks=:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:\ + :r1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H:\ + :r2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h:\ + :rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:ue=\E[24m:up=\E[A:\ + :us=\E[4m:ve=\E[?25h:vi=\E[?25l:tc=vt100+enq:\ + :tc=rxvt+pcfkeys:tc=ecma+color: + +Eterm-256color|Eterm with xterm 256-colors:\ + :tc=xterm+256color:tc=Eterm: + +Eterm-88color|Eterm with 88 colors:\ + :tc=xterm+88color:tc=Eterm: + +#### ATERM +# Based on rxvt 2.4.8, it has a few differences in key bindings +aterm|AfterStep terminal:\ + :XT:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=\177:tc=rxvt: + +#### XITERM +# xiterm 0.5-5.2 +# This is not based on xterm's source... +# vttest shows several problems with keyboard, cursor-movements. +# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm +xiterm|internationalized terminal emulator for X:\ + :km@:\ + :kD=\E[3~:kb=\177:tc=klone+color:tc=xterm-r6: + + +#### HPTERM +# HP ships this (HPUX 9 and 10), except for the pb#9600 which was merged in +# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS +# chars look like --esr) +hpterm|X-hpterm|hp X11 terminal emulator:\ + :am:da:db:mi:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#9600:sg#0:ug#0:\ + :LF=\E&j@:LO=\E&jB:ac=:ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:\ + :cd=1\EJ:ce=\EK:ch=\E&a%dC:cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:\ + :cr=^M:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:do=\EB:ei=\ER:im=\EQ:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :kA=\EL:kC=\EJ:kD=\EP:kE=\EK:kF=\ES:kH=\EF:kI=\EQ:kL=\EM:\ + :kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:ka=\E3:kb=^H:\ + :kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:\ + :ku=\EA:le=^H:md=\E&dB:me=\E&d@:mh=\E&dH:ml=\El:mr=\E&dB:\ + :mu=\Em:nd=\EC:se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=^I:\ + :ue=\E&d@:up=\EA:us=\E&dD: +# HPUX 11 provides a color version. +hpterm-color|HP X11 terminal emulator with color:\ + :cc:\ + :Co#64:pa#8:\ + :ho=\E&a0y0C:op=\E&v0S:sp=\E&v%dS:tc=hpterm: + +#### EMU +# This is for the extensible terminal emulator on the X11R6 contrib tape. +# It corresponds to emu's internal emulation: +# emu -term emu +# emu's default sets TERM to "xterm", but that doesn't work well -TD +# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD +# fixes: add civis, cnorm, sgr -TD +emu|emu native mode:\ + :am:mi:ms:ut:xo:\ + :Co#15:co#80:it#8:li#24:pa#64:vt#200:\ + :*6=\Esel:@0=\Efind:@8=^M:AB=\Es%i%d;:AF=\Er%i%d;:\ + :AL=\EQ%d;:DC=\EI%d;:DL=\ER%d;:DO=\Ep%d;:F1=\EF11:\ + :F2=\EF12:F3=\EF13:F4=\EF14:F5=\EF15:F6=\EF16:F7=\EF17:\ + :F8=\EF18:F9=\EF19:FA=\EF20:LE=\Eq-%d;:RI=\Eq%d;:\ + :UP=\Ep-%d;:\ + :ac=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244:\ + :al=\EQ1;:bl=^G:cb=\EL:cd=\EN:ce=\EK:cl=\EP\EE0;0;:\ + :cm=\EE%d;%d;:cr=^M:cs=\Ek%d;%d;:ct=\Ej:dc=\EI1;:dl=\ER1;:\ + :do=\EB:ec=\Ej%d;:ei=\EX:ho=\EE0;0;:im=\EY:\ + :is=\ES\Er0;\Es0;:k0=\EF00:k1=\EF01:k2=\EF02:k3=\EF03:\ + :k4=\EF04:k5=\EF05:k6=\EF06:k7=\EF07:k8=\EF08:k9=\EF09:\ + :k;=\EF10:kD=\177:kI=\Eins:kN=\Enext:kP=\Eprior:kb=^H:\ + :kd=\EB:kl=\EC:kr=\ED:ku=\EA:le=^H:mb=\EW:md=\EU:me=\ES:\ + :mr=\ET:nd=\EC:op=\Es0;\Er0;:rs=\ES\Es0;\Er0;:se=\ES:\ + :sf=\EG:so=\ET:sr=\EF:st=\Eh:ta=^I:ue=\ES:up=\EA:us=\EV:\ + :ve=\Ea:vi=\EZ: + +# vt220 Terminfo entry for the Emu emulation, corresponds to +# emu -term vt220 +# with NumLock set (to make the keypad transmit kf0-kf9). +# fixes: add am, xenl, corrected sgr0 -TD +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +emu-220|Emu-220 (vt200-7bit mode):\ + :am:xn:xo:\ + :co#80:it#8:li#24:vt#200:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[1L:as=^N:bl=^G:cd=\E[0J:\ + :ce=\E[0K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[1P:dl=\E[1M:do=\E[1B:\ + :ho=\E[H:if=/usr/share/tabset/vt300:\ + :is=\E>\E[?1l\E[?3l\E[4l\E[?7h:k0=\EOp:k1=\EOq:k2=\EOr:\ + :k3=\EOs:k4=\EOt:k5=\EOu:k6=\EOv:k7=\EOw:k8=\EOx:k9=\EOy:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:\ + :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=\E[1D:mb=\E[0;5m:\ + :md=\E[0;1m:me=\E[0m:mr=\E[0;7m:nd=\E[1C:rc=\E8:\ + :rs=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h:sc=\E7:se=\E[m:\ + :sf=\ED:so=\E[0;7m:sr=\EM:st=\EH:ta=^I:te=\E>:ti=\E[?1l\E=:\ + :ue=\E[m:up=\E[1A:us=\E[0;4m:ve=\E[?25h:vi=\E[?25l: + +#### MVTERM +# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI, +# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings +# indicate that it emulates more than one terminal, but incompletely. +# +# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net> +# It is based on vt102's entry, with some subtle differences, but also +# has status line +# supports ANSI colors (except for 'op' string) +# apparently implements alternate screen like xterm +# does not use padding, of course. +mvterm|vv100|SwitchTerm aka mvTERM:\ + :am:es:hs:km:mi:ms:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=3\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ds=\E[?E:eA=\E(B\E)0:ei=:\ + :fs=\E[?F:ho=\E[H:ic=\E[@:im=:k0=\EOy:k5=\EOt:k6=\EOu:\ + :k7=\EOv:k8=\EOl:k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:op=\E[100m:\ + :rc=\E8:\ + :rs=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:ts=\E[?E\E[?%i%dT:\ + :ue=\E[m:up=\E[A:us=\E[4m:tc=vt100+fnkeys: + +#### MTERM +# +# This application is available by email from <mouse@Rodents.Montreal.QC.CA>. +# +# "mterm -type ansi" sets $TERM to "ansi" +mterm-ansi|ANSI emulation:\ + :am:bw:mi:ms:\ + :it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%d`:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cv=\E[%i%dd:dc=\E[P:\ + :dl=\E[M:do=\E[B:ec=\E[%dX:ei=\E[4l:ho=\E[H:ic=:im=\E[4h:\ + :is=\E)0\017:kb=^H:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:se=\E[27m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m: +# mterm normally sets $TERM to "mterm" +mterm|mouse-sun|Der Mouse term:\ + :am:bw:mi:\ + :it#8:\ + :al=^A:bl=^G:cd=^B:ce=^C:cl=^L:cm=\006%d.%d.:cr=^M:dc=^Y:\ + :dl=^K:do=^N:ei=^O:ho=^P:im=^Q:kb=^H:le=^H:ll=^R:nd=^S:\ + :nw=^M^U:se=^T:sf=^U:so=^V:sr=^W:ta=^I:up=^X: +# "mterm -type decansi" sets $TERM to "decansi" +# +# note: kdch1, kfnd, kslt are in the source code, but do not work -TD +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +decansi|ANSI emulation with DEC compatibility hacks:\ + :am:mi:ms:xn:\ + :it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ec=\E[%dX:\ + :ei=\E[4l:ho=\E[H:ic=:im=\E[4h:is=\E)0\E[r\017:k1=\E[11~:\ + :k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:sc=\E7:se=\E[27m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[?25h:vi=\E[?25l: + +#### VWM +# +# vwmterm is a terminal emulator written for the VWM console window manager +# +vwmterm|(vwm term):\ + :NP:am:cc:mi:ms:ut:xn:xo:\ + :Co#8:pa#64:\ + :@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:DO=\E[%dB:F1=\E[22~:\ + :F2=\E[23~:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:do=\E[B:ho=\E[H:\ + :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:\ + :kN=\E[6~:kP=\E[5~:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:\ + :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:r1=\E[H\E[J\E[m\Ec:sf=^J:\ + :so=\E[3m:te=\E[?1049l:ti=\E[?1049h:up=\E[A:us=\E[4m:\ + :ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +#### MGR +# +# MGR is a Bell Labs window system lighter-weight than X. +# These entries describe MGR's xterm-equivalent. +# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997 +# + +mgr|Bellcore MGR (non X) window system terminal emulation:\ + :am:km:\ + :AL=3*\E%da:DC=5\E%dE:DL=3*\E%dd:IC=5\E%dA:RA=\E5S:\ + :SA=\E5s:al=3\Ea:bl=^G:cd=\EC:ce=\Ec:cl=^L:cm=\E%r%d;%dM:\ + :cr=^M:cs=\E%d;%dt:dc=\EE:dl=3\Ed:do=\Ef:ei=:hd=\E1;2f:\ + :hu=\E1;2u:ic=\EA:im=:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:md=\E2n:me=\E0n:mr=\E1n:nd=\Er:nw=^M^J:se=\E0n:sf=^J:\ + :so=\E1n:ta=^I:ue=\E0n:up=\Eu:us=\E4n:ve=\Eh:vi=\E9h:\ + :vs=\E0h: +mgr-sun|Mgr window with Sun keyboard:\ + :%1=\E[207z:%6=\E[198z:&8=\E[195z:@0=\E[200z:@5=\E[197z:\ + :@7=\E[220z:@8=\E[250z:F1=\E[234z:F2=\E[235z:K1=\E[214z:\ + :K2=\E[218z:K3=\E[216z:K4=\E[220z:K5=\E[222z:k1=\E[224z:\ + :k2=\E[225z:k3=\E[226z:k4=\E[227z:k5=\E[228z:k6=\E[229z:\ + :k7=\E[230z:k8=\E[231z:k9=\E[232z:k;=\E[233z:kN=\E[222z:\ + :kP=\E[216z:kh=\E[214z:tc=mgr: +mgr-linux|Mgr window with Linux keyboard:\ + :@7=\E[4~:F1=\E[23~:F2=\E[24~:K1=\E[H:K2=\E[G:K3=\E[5~:\ + :K4=\E[Y:K5=\E[6~:k0=\E[[J:k1=\E[[A:k2=\E[[B:k3=\E[[C:\ + :k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:k;=\E[21~:kD=\E[3~:kN=\E[6~:kP=\E[5~:kh=\E[1~:\ + :tc=mgr: + +#### SIMPLETERM +# st.suckless.org +# st-0.1.1 +# +# Note: the original terminfo description uses leading blank to persuade +# ncurses to use "st" as its name. Proper fix for that is to use "st" as an +# alias. +# +# Reading the code shows it should work for aixterm 16-colors +# - added st-16color +# +# Using tack: +# - set eo (erase-overstrike) +# - set xenl +# - tbc doesn't work +# - hts works +# - cbt doesn't work +# - shifted cursor-keys send sequences like rxvt +# - sgr referred to unimplemented "invis" mode. +# Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis +simpleterm|st| simpleterm:\ + :am:eo:mi:ms:ul:xn:\ + :Co#8:NC#3:co#80:it#8:li#24:pa#64:\ + :@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DO=\E[%dB:\ + :F1=\E[23~:F2=\E[24~:IC=\E[%d@:RI=\E[%dC:SF=\E[%dS:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=^J:ei=:ho=\E[H:im=:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:k;=\E[21~:kD=\E[3~:kN=\E[6~:kP=\E[5~:kb=\177:\ + :kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:\ + :me=\E[0m:mr=\E[7m:nd=\E[C:op=\E[37;40m:rc=\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[?12l\E[?25h:vi=\E[?25l: +st-16color|simpleterm with 16-colors:\ + :tc=ibm+16color:tc=simpleterm: +# 256 colors "works", but when running xterm's test-scripts, some garbage is +# shown in the titlebar. +st-256color|simpleterm with 256 colors:\ + :cc@:\ + :Ic@:tc=simpleterm:tc=xterm+256color: + +### TERMINATOR +# http://software.jessies.org/terminator/ +# Tested using their Debian package org.jessies.terminator 6.104.3256 on 64-bit +# Debian/current -TD (2011/8/20) +# +# There are some packaging problems: +# a) using Java, the program starts off using 50Mb, and climbs from there, +# up to 114Mb after testing (no scrollback). +# b) it insists on reinstalling its terminal description in $HOME/.terminfo +# (two copies, just in case the host happens to be Mac OS X). +# I deleted this after testing with tack. +# +# Issues/features found with tack: +# a) tbc does not work (implying that hts also is broken). +# Comparing with the tabs utility shows a problem with the last tabstop on +# a line. +# b) has xterm-style shifted function-key strings +# meta also is used, but control is ignored. +# c) has xterm-style modifiers for cursor keys (shift, control, shift+control, meta) +# d) some combinations of shift/control send xterm-style sequences for +# insert/delete/home/end. +# e) numeric keypad sends only numbers (compare with vttest). +# f) meta mode (km) is not implemented. +# +# Issues found with ncurses test-program: +# a) bce is inconsistently implemented +# b) widths of Unicode values above 256 do not always agree with wcwidth. +# +# Checked with vttest, found low degree of compatibility there. +# +# Checked with xterm's scripts, found that the 256-color palette is fixed. +# +# Fixes: +# a) add sgr string +# b) corrected sgr0 to reset alternate character set +# c) modified smacs/rmacs to use SCS rather than SI/SO +# d) removed bce +# e) removed km +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +terminator|Terminator no line wrap:\ + :eo:mi:ms:xn:xo:\ + :co#80:it#8:li#24:lm#0:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E]2;\007:ei=\E[4l:fs=^G:ho=\E[H:i1=\E[?47l\E=\E[?1l:\ + :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?47l\E8:ti=\E7\E[?47h:ts=\E]2;:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=^G:ve=\E[?25h:vi=\E[?25l: + +######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS +# + +# Columbus UNIX virtual terminal. This terminal also appears in +# UNIX 4.0 and successors as line discipline 1 (?), but is +# undocumented and does not really work quite right. +cbunix|cb unix virtual terminal:\ + :am:bs:da:db:\ + :co#80:li#24:lm#0:\ + :al=\EP:bl=^G:cd=\EL:ce=\EK:cl=\EL:cm=\EG%r%.%.:cr=^M:\ + :dc=\EM:dl=\EN:do=^J:ei=:ic=\EO:im=:kd=\EB:kh=\EE:kl=\ED:\ + :kr=\EC:ku=\EA:le=^H:nd=\EC:se=\Eb^D:sf=^J:so=\Ea^D:\ + :ue=\Eb^A:up=\EA:us=\Ea^A: +# (vremote: removed obsolete ":nl@:" -- esr) +vremote|virtual remote terminal:\ + :am@:\ + :co#79:tc=cbunix: + +pty|4bsd pseudo teletype:\ + :cm=\EG%+ %+ :se=\Eb$:so=\Ea$:ue=\Eb!:us=\Ea!:tc=cbunix: + +# The codes supported by the term.el terminal emulation in GNU Emacs 19.30 +eterm|gnu emacs term.el terminal emulation:\ + :am:mi:xn:\ + :co#80:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:\ + :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\ + :im=\E[4h:le=^H:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:se=\E[m:\ + :sf=^J:so=\E[7m:ta=^I:te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +# The codes supported by the term.el terminal emulation in GNU Emacs 22.2 +eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96:\ + :am:mi:ms:xn:\ + :Co#8:co#80:li#24:pa#64:\ + :@7=\E[4~:AB=\E[%+(m:AF=\E[%+^^m:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:\ + :dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:im=\E[4h:kD=\E[3~:kI=\E[2~:\ + :kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:kh=\E[1~:kl=\EOD:\ + :kr=\EOC:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:op=\E[39;49m:r1=\Ec:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=^J:so=\E[7m:sr=\EM:ta=^I:u6=\E[%i%d;%dR:\ + :u7=\E[6n:ue=\E[24m:up=\E[A:us=\E[4m: + +# Entries for use by the `screen' program by Juergen Weigert, +# Michael Schroeder, Oliver Laumann. The screen and +# screen-w entries came with version 3.7.1. The screen2 and screen3 entries +# come from University of Wisconsin and may be older. +# (screen: added :ve: on ANSI model -- esr) +# +# 'screen' defines extensions to termcap. Some are used in its terminal +# description: +# G0 (bool) Terminal can deal with ISO 2022 font selection sequences. +# AX (bool) Does understand ANSI set default fg/bg color +# (\E[39m / \E[49m). +# S0 (str) Switch charset 'G0' to the specified charset. +# E0 (str) Switch charset 'G0' back to standard charset. +# +# tested with screen 3.09.08 +screen|VT 100/ANSI X3.64 virtual terminal:\ + :am:bs:km:mi:ms:pt:xn:G0:\ + :Co#8:NC@:co#80:it#8:li#24:pa#64:U8#1:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[23~:F2=\E[24~:IC=\E[%d@:Km=\E[M:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kB=\E[Z:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:rs=\Ec\E[?1000l\E[?25h:\ + :sc=\E7:se=\E[23m:sf=^J:so=\E[3m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\EM:us=\E[4m:\ + :vb=\Eg:ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[34l:E0=\E(B:\ + :S0=\E(%p1%c:tc=ecma+color: +# The bce and status-line entries are from screen 3.9.13 (and require some +# changes to .screenrc). +screen-bce|VT 100/ANSI X3.64 virtual terminal with bce:\ + :ut:\ + :ec@:tc=screen: +screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line:\ + :ds=\E_\E\\:fs=\E\\:ts=\E_:tc=screen: + +# ====================================================================== +# Entries for GNU Screen with 16 colors. +# Those variations permit to benefit from 16 colors palette, and from +# bold font and blink attribute separated from bright colors. But they +# are less portable than the generic "screen" 8 color entries: Their +# usage makes real sense only if the terminals you attach and reattach +# do all support 16 color palette. + +screen-16color|GNU Screen with 16 colors:\ + :tc=ibm+16color:tc=screen: + +screen-16color-s|GNU Screen with 16 colors and status line:\ + :tc=ibm+16color:tc=screen-s: + +screen-16color-bce|GNU Screen with 16 colors and BCE:\ + :tc=ibm+16color:tc=screen-bce: + +screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line:\ + :ut:tc=ibm+16color:tc=screen-s: + +# ====================================================================== +# Entries for GNU Screen 4.02 with --enable-colors256. + +screen-256color|GNU Screen with 256 colors:\ + :cc@:\ + :Ic@:tc=xterm+256color:tc=screen: + +screen-256color-s|GNU Screen with 256 colors and status line:\ + :cc@:\ + :Ic@:tc=xterm+256color:tc=screen-s: + +screen-256color-bce|GNU Screen with 256 colors and BCE:\ + :cc@:\ + :Ic@:tc=xterm+256color:tc=screen-bce: + +screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line:\ + :cc@:ut:\ + :Ic@:tc=xterm+256color:tc=screen-s: + +# ====================================================================== + +# Read the fine manpage: +# When screen tries to figure out a terminal name for +# itself, it first looks for an entry named "screen.<term>", +# where <term> is the contents of your $TERM variable. If +# no such entry exists, screen tries "screen" (or "screen-w" +# if the terminal is wide (132 cols or more)). If even this +# entry cannot be found, "vt100" is used as a substitute. +# +# Notwithstanding the manpage, screen uses its own notion of the termcap +# and some keys from "screen.<term>" are ignored. Here is an entry which +# covers those (tested with screen 4.00.02) -TD +screen+fkeys|function-keys according to screen:\ + :*6@:@0@:@7=\E[4~:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kh=\E[1~: +# +# Here are a few customized entries which are useful -TD +# +# Notes: +# (a) screen does not support invis. +# (b) screen's implementation of bw is incorrect according to tack. +# (c) screen appears to hardcode the strings for khome/kend, making it +# necessary to override the "use=" clause's values (screen+fkeys). +# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry, +# which is NOT the same as the terminfo screen.<term>. +# (e) when screen finds one of these customized entries, it sets $TERM to +# match. Hence, no "screen.xterm" entry is provided, since that would +# create heartburn for people running remote xterm's. +# +# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV +# since the default translations override the built-in keycode +# translation. They are suppressed here to show what is tested by tack. +screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm:\ + :bw:ut@:\ + :#3@:%c@:%e@:mk@:ml@:mu@:tc=screen+fkeys:tc=xterm-new: +# xterm-r6 does not really support khome/kend unless it is propped up by +# the translations resource. +screen.xterm-r6|screen customized for X11R6 xterm:\ + :bw:tc=screen+fkeys:tc=xterm-r6: +# Color applications running in screen and TeraTerm do not play well together +# on Solaris because Sun's curses implementation gets confused. +screen.teraterm|disable ncv in teraterm:\ + :NC#127:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :tc=screen+fkeys:tc=screen: +# Other terminals +screen.rxvt|screen in rxvt:\ + :bw:XT:\ + :kd=\EOB:kl=\EOD:kr=\EOC:ku=\EOA:vb@:vs@:tc=screen+fkeys:\ + :tc=vt100+enq:tc=rxvt+pcfkeys:tc=vt220+keypad:tc=screen: +screen.Eterm|screen in Eterm:\ + :tc=screen+fkeys:tc=Eterm: +screen.mrxvt|screen in mrxvt:\ + :tc=screen+fkeys:tc=mrxvt: +screen.vte|screen in any VTE-based terminal:\ + :tc=screen+fkeys:tc=vte: +screen.gnome|screen in GNOME Terminal:\ + :tc=screen+fkeys:tc=gnome: +screen.konsole|screen in KDE console window:\ + :tc=screen+fkeys:tc=konsole: +# fix the backspace key +screen.linux|screen in linux console:\ + :bw:\ + :kB@:kb=\177:tc=screen+fkeys:tc=screen: +screen.mlterm|screen in mlterm:\ + :tc=screen+fkeys:tc=mlterm: + +# The default "screen" entry is reasonably portable, but not optimal for the +# most widely-used terminal emulators. The "bce" capability is supported in +# screen since 3.9.13, and when used, will require fewer characters to be sent +# to the terminal for updates. +# +# If you are using only terminals which support bce, then you can use this +# feature in your screen configuration. +# +# Adding these lines to your ".screenrc" file will allow using these customized +# entries: +# term screen-bce +# bce on +# defbce on +screen-bce.xterm-new|screen optimized for modern xterm:\ + :ut:\ + :ec@:tc=screen.xterm-new: +screen-bce.rxvt|screen optimized for rxvt:\ + :ut:\ + :ec@:tc=screen.rxvt: +screen-bce.Eterm|screen optimized for Eterm:\ + :ut:\ + :ec@:tc=screen.Eterm: +screen-bce.mrxvt|screen optimized for mrxvt:\ + :ut:\ + :ec@:tc=screen.mrxvt: +screen-bce.gnome|screen optimized for GNOME-Terminal:\ + :ut:\ + :ec@:tc=screen.gnome: +screen-bce.konsole|screen optimized for KDE console window:\ + :ut:\ + :ec@:tc=screen.konsole: +screen-bce.linux|screen optimized for linux console:\ + :ut:\ + :ec@:tc=screen.linux: +screen-bce.mlterm|screen optimized for mlterm:\ + :ut:\ + :ec@:tc=screen.mlterm: + +screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols:\ + :co#132:tc=screen: + +screen2|old VT 100/ANSI X3.64 virtual terminal:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bt=\E[Z:cd=\E[J:\ + :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ic=:im=\E[4h:k0=\E~:\ + :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:\ + :k9=\E0I:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:\ + :me=\E[m:nd=\E[C:nw=^M^J:r1=\Ec:rc=\E8:sc=\E7:se=\E[23m:\ + :sf=^J:so=\E[3m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:\ + :us=\E[4m: +# (screen3: removed unknown ":xv:LP:G0:" -- esr) +screen3|older VT 100/ANSI X3.64 virtual terminal:\ + :km:mi:ms:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:\ + :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kb=^H:kd=\EOB:ke=\E>:kl=\EOD:kr=\EOC:ks=\E=:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:r1=\Ec:\ + :rc=\E8:sc=\E7:se=\E[23m:sf=^J:so=\E[3m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[24m:up=\EM:us=\E[4m: + +# Francesco Potorti <F.Potorti@cnuce.cnr.it>: +# NCSA telnet is one of the most used telnet clients for the Macintosh. It has +# been maintained until recently by the National Center for Supercomputer +# Applications, and it is feature rich, stable and free. It can be downloaded +# from www.ncsa.edu. This terminfo description file is based on xterm-vt220, +# xterm+sl, and the docs at NCSA. It works well. +# +# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode +# The terminal options should be set as follows: +# Xterm sequences ON +# use VT wrap mode ON +# use Emacs arrow keys OFF +# CTRL-COMND is Emacs meta ON +# 8 bit mode ON +# answerback string: "ncsa-vt220-8" +# setup keys: all disabled +# +# Application mode is not used. +# +# Other special mappings: +# Apple VT220 +# HELP Find +# HOME Insert here +# PAGEUP Remove +# DEL Select +# END Prev Screen +# PAGEDOWN Next Screen +# +# Though it supports ANSI color, NCSA Telnet uses color to represent blinking +# text. +# +# The status-line manipulation is a mapping of the xterm-compatible control +# sequences for setting the window-title. So you must use tsl and fsl in +# pairs, since the latter ends the string that is loaded to the window-title. +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode:\ + :am:hs:km:mi:ms:xn:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E]0;\007:ei=\E[4l:fs=^G:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:k1=\E[17~:\ + :k2=\E[18:k3=\E[19~:k4=\E[20~:k5=\E[21~:k6=\E[23~:\ + :k7=\E[24~:k8=\E[25~:k9=\E[26~:kD=\E[4~:kN=\E[6~:kP=\E[3~:\ + :kb=^H:kd=\E[B:kh=\E[2~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>:sc=\E7:\ + :se=\E[27m:sf=150*\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:ts=\E]0;:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:tc=ansi+enq: +ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode:\ + :tc=ncsa-m:tc=klone+color: +ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode:\ + :hs@:\ + :ds@:fs@:ts@:tc=ncsa: +ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode:\ + :hs@:\ + :ds@:fs@:ts@:tc=ncsa-m: +# alternate -TD: +# The documented function-key mapping refers to the Apple Extended Keyboard +# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style +# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on +# some keyboards and many applications require these as F1-F4. +# +ncsa-vt220|NCSA Telnet using vt220-compatible function keys:\ + :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\ + :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:tc=ncsa: + +#### Pilot Pro Palm-Top +# +# Termcap for Top Gun Telnet and SSH on the Palm Pilot. +# http://www.ai/~iang/TGssh/ +pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional:\ + :am:bs:xn:\ + :co#39:li#16:\ + :bl=^G:cl=\Ec:cm=\Em%+ %+ :cr=^M:do=^J:ho=\Em\040\040:\ + :kN=^L:kP=^K:kb=^H:kd=^J:kl=^H:le=^H:nw=\Em~\040:se=\EB:\ + :sf=^J:so=\Eb:ta=^I: + +# From: Federico Bianchi <bianchi@www.arte.unipi.it> +# These entries are for the Embeddable Linux Kernel System (ELKS) +# project - an heavily stripped down Linux to be run on 16 bit +# boxes or, eventually, to be used in embedded systems - and have been +# adapted from the stock ELKS termcap. The project itself looks stalled, +# and the latest improvements I know of date back to March 2000. +# +# To cope with the ELKS dumb console I added an "elks-glasstty" entry; +# as an added bonus, this deals with all the capabilities common to +# both VT52 and ANSI (or, eventually, "special") modes. + +elks-glasstty|ELKS glass-TTY capabilities:\ + :am:bs:\ + :co#80:it#8:li#25:\ + :bl=^G:cr=^M:kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I: + +elks-vt52|ELKS vt52 console:\ + :ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :do=\EB:ho=\EH:le=\ED:nd=\EC:\ + :up=\EA:tc=elks-glasstty: + +elks-ansi|ELKS ANSI console:\ + :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:do=\E[B:ho=\E[H:\ + :le=\E[D:nd=\E[C:se=\E[m:so=\E[7m:up=\E[A:\ + :tc=elks-glasstty: + +# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation +# instead of VT52, but the "elks" entry still refers to the latter. + +elks|default ELKS console:\ + :tc=elks-vt52: + +# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS +# one but in screen size + +sibo|ELKS SIBO console:\ + :co#61:it#8:li#20:tc=elks-vt52: + +######## COMMERCIAL WORKSTATION CONSOLES +# + +#### Alpha consoles +# + +# This is from the OSF/1 Release 1.0 termcap file +pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation:\ + :am:xo:\ + :co#80:li#25:\ + :al=\E[L:bl=^G:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=^J:ei=:ho=\E[H:ic=\E[@:im=:kb=^H:kd=\E[B:\ + :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:se=\E[m:so=\E[7m:ta=^I:up=\E[A: + +#### Sun consoles +# + +# :is1: resets scrolling region in case a previous user had used "tset vt100" +oldsun|Sun Microsystems Workstation console:\ + :am:bs:km:mi:ms:\ + :co#80:it#8:li#34:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=:i1=\E[1r:ic=\E[@:im=:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\E[m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:ta=^I:up=\E[A: +# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995 +# :li: capability later corrected by J.T. Conklin <jtc@cygnus.com> +# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998) +sun-il|Sun Microsystems console with working insert-line:\ + :am:km:ms:\ + :co#80:li#34:\ + :%7=\E[194z:&5=\E[193z:&8=\E[195z:@7=\E[220z:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:F1=\E[234z:F2=\E[235z:IC=\E[%d@:\ + :K2=\E[218z:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=:ic=\E[@:im=:\ + :k1=\E[224z:k2=\E[225z:k3=\E[226z:k4=\E[227z:k5=\E[228z:\ + :k6=\E[229z:k7=\E[230z:k8=\E[231z:k9=\E[232z:k;=\E[233z:\ + :kD=\177:kI=\E[247z:kN=\E[222z:kP=\E[216z:kb=^H:kd=\E[B:\ + :kh=\E[214z:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:mr=\E[7m:\ + :nd=\E[C:rs=\E[s:se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:\ + :u9=\E[11t:ue@:up=\E[A: +# On some versions of CGSIX framebuffer firmware (SparcStation 5), :al:/:AL: +# flake out on the last line. Unfortunately, without them the terminal has no +# way to scroll. +sun-cgsix|sun-ss5|Sun SparcStation 5 console:\ + :AL@:al@:tc=sun-il: +# If you are using an SS5, change the sun definition to use sun-ss5. +sun|sun1|sun2|Sun Microsystems Inc. workstation console:\ + :tc=sun-il: + +# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985 +sun-s|Sun Microsystems Workstation window with status line:\ + :hs:\ + :ds=\E]l\E\\:fs=\E\\:ts=\E]l:tc=sun: +sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs:\ + :hs:\ + :ds=\E]l\E\\:fs=\E\\:ts=\E]l:tc=sun-e: +sun-48|Sun 48-line window:\ + :co#80:li#48:tc=sun: +sun-34|Sun 34-line window:\ + :co#80:li#34:tc=sun: +sun-24|Sun 24-line window:\ + :co#80:li#24:tc=sun: +sun-17|Sun 17-line window:\ + :co#80:li#17:tc=sun: +sun-12|Sun 12-line window:\ + :co#80:li#12:tc=sun: +sun-1|Sun 1-line window for sysline:\ + :es:hs:\ + :co#80:li#1:\ + :ds=^L:fs=\E[K:ts=^M:tc=sun: +sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character:\ + :ei@:ic@:im@:tc=sun: +sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history:\ + :li#35:\ + :te=\E[>4h:ti=\E[>4l:tc=sun: +sun-type4|Sun Workstation console with type 4 keyboard:\ + :kd=\E[221z:kl=\E[217z:kr=\E[219z:ku=\E[215z:tc=sun-il: + +# Most of the current references to sun-color are from users wondering why this +# is the default on install. Details from reading the wscons manpage, adding +# cub, etc., here (rather than in the base sun-il entry) since it is not clear +# when those were added -TD (2005-05-28) +# +# According to wscons manpage, color is supported only on IA systems. +# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons +# does not list these. It also sets ncv#3, however that corresponds to +# underline and standout. +# +# Since the documentation and terminfo do not agree, see also current code at +# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c +# +# That (actually a different driver which "supports" sun-color) also supports +# these features: +# vpa=\E[%i%p1%dd +# hpa=\E[%i%p1%d` +# cbt=\E[Z +# dim=\E[2m +# blink=\E[5m +# It supports bold, but not underline -TD (2009-09-19) +sun-color|Sun Microsystems Workstation console with color support (IA systems):\ + :Co#8:NC#3:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ho=\E[H:op=\E[0m:so=\E[1m:tc=sun: + +#### Iris consoles +# + +# (wsiris: this had extension capabilities +# :HS=\E7F2:HE=\E7F7:\ +# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite: +# See the note on Iris extensions near the end of this file. +# Finally, removed suboptimal :cl:=\EH\EJ and added :do: & +# :vb: from BRL -- esr) +wsiris|iris40|iris emulating a 40 line visual 50 (approximately):\ + :am:bs:nc:pt:\ + :co#80:it#8:kn#3:li#40:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\Ev:cm=\EY%+ %+ :dl=\EM:\ + :do=\EB:ho=\EH:is=\E7B0\E7F7\E7C2\E7R3:k0=\E0:k1=\E1:\ + :k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:me=\E7F7:mh=\E7F2:nd=\EC:\ + :nl=\EB:se=\E0@:sf=^J:so=\E9P:sr=\EI:ta=^I:ue=\E7R3\E0@:\ + :up=\EA:us=\E7R2\E9P:vb=\E7F4\E7B1\013\E7F7\E7B0:ve=\E>:\ + :vs=\E;: + +#### NeWS consoles +# +# Console terminal windows under the NeWS (Sun's Display Postscript windowing +# environment). Note: these have nothing to do with Sony's News workstation +# line. +# + +# Entry for NeWS's psterm from Eric Messick & Hugh Daniel +# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr) +psterm|psterm-basic|NeWS psterm-80x34:\ + :am:bs:hs:km:ul:\ + :co#80:it#8:li#34:\ + :al=\EA:cd=\EB:ce=\EC:cl=^L:cm=\E%d;%d;:cs=\EE%d;%d;:\ + :dc=\EF:dl=\EK:do=\EP:ei=\ENi:fs=\ENl:ho=\ER:i1=\EN*:\ + :im=\EOi:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=\ET:ll=\EU:\ + :mb=\EOb:md=\EOd:me=\EN*:mr=\EOr:nd=\EV:rc=^\:sc=^]:se=\ENo:\ + :sf=\EW:so=\EOo:sr=\EX:ta=^I:te=\ENt:ti=\EOt:ts=\EOl:\ + :ue=\ENu:up=\EY:us=\EOu:vb=\EZ: +psterm-96x48|NeWS psterm 96x48:\ + :co#96:li#48:tc=psterm: +psterm-90x28|NeWS psterm 90x28:\ + :co#90:li#28:tc=psterm: +psterm-80x24|NeWS psterm 80x24:\ + :co#80:li#24:tc=psterm: +# This is a faster termcap for psterm. Warning: if you use this termcap, +# some control characters you type will do strange things to the screen. +# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr) +psterm-fast|NeWS psterm fast version (flaky ctrl chars):\ + :am:bs:hs:km:ul:\ + :co#80:it#8:li#34:\ + :al=^A:cd=^B:ce=^C:cl=^L:cm=\004%d;%d;:cs=\005%d;%d;:dc=^F:\ + :dl=^K:do=^P:ei=^Ni:fs=^Nl:ho=^R:i1=^N*:im=^Oi:kd=\E[B:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^T:ll=^U:mb=^Ob:md=^Od:me=^N*:\ + :mr=^Or:nd=^V:rc=^\:sc=^]:se=^No:sf=^W:so=^Oo:sr=^X:ta=^I:\ + :te=^Nt:ti=^Ot:ts=^Ol:ue=^Nu:up=^Y:us=^Ou:vb=^Z: + +#### NeXT consoles +# +# Use `glasstty' for the Workspace application +# + +# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995 +next|NeXT console:\ + :am:xt:\ + :co#80:it#8:li#24:\ + :bl=^G:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:cr=^M:do=^J:ho=\E[H:\ + :kb=^H:kd=^J:kl=^H:le=^H:me=\E[m:nd=\E[C:nw=^M^J:se=\E[4;1m:\ + :sf=^J:so=\E[4;2m:ta=^I:up=\E[A: +nextshell|NeXT Shell application:\ + :am:\ + :co#80:\ + :bl=^G:cr=^M:do=^J:kb=^H:kd=^J:kl=^H:le=^H:nw=^M^J:ta=^I: + +#### Sony NEWS workstations +# + +# (news-unk: this had :KB=news: -- esr) +news-unk|SONY NEWS vt100 emulator common entry:\ + :am:bs:pt:xn:\ + :co#80:\ + :AL=\E[%dL:DL=\E[%dM:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dl=\E[M:do=^J:ho=\E[H:if=/usr/share/tabset/vt100:\ + :is=\E[?7h\E[?1l\E[?3l\E7\E8:k0=\EOY:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\ + :kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\ + :ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :nl=^J:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r:\ + :sc=\E7:se=\E[m:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +# +# (news-29: this had :TY=ascii: --esr) +news-29:\ + :li#29:tc=news-unk: +# (news-29-euc: this had :TY=euc: --esr) +news-29-euc:\ + :tc=news-29: +# (news-29-sjis: this had :TY=sjis: --esr) +news-29-sjis:\ + :tc=news-29: +# +# (news-33: this had :TY=ascii: --esr) +news-33:\ + :li#33:tc=news-unk: +# (news-33-euc: this had :TY=euc: --esr) +news-33-euc:\ + :tc=news-33: +# (news-33-sjis: this had :TY=sjis: --esr) +news-33-sjis:\ + :tc=news-33: +# +# (news-42: this had :TY=ascii: --esr) +news-42:\ + :li#42:tc=news-unk: +# (news-42-euc: this had :TY=euc: --esr) +news-42-euc:\ + :tc=news-42: +# (news-42-sjis: this had :TY=sjis: --esr) +news-42-sjis:\ + :tc=news-42: +# +# NEWS-OS old termcap entry +# +# (news-old-unk: this had :KB=news:TY=sjis: --esr) +news-old-unk|SONY NEWS vt100 emulator common entry:\ + :am:bs:pt:xn:\ + :co#80:vt#3:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:do=^J:ho=\E[H:\ + :if=/usr/share/tabset/vt100:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:nl=^J:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[m:\ + :so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: +# +# (nwp512: this had :DE=^H:, which I think means :bs: --esr) +nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines:\ + :bs:\ + :li#40:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8:\ + :tc=news-old-unk: +# +# (nwp512-a: this had :TY=ascii: and the alias vt100-bm --esr) +nwp512-a|nwp514-a|news-a|news42|news40-a|sony vt100 emulator 42 line:\ + :li#42:\ + :is=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8:tc=news-old-unk: +# +# (nwp-512-o: this had :KB=nwp410:DE=^H: I interpret the latter as :bs:. --esr) +nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines:\ + :bs:\ + :li#40:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8:\ + :tc=news-old-unk: +# +# (nwp513: this had :DE=^H: and the alias vt100-bm --esr) +nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines:\ + :bs:\ + :li#31:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8:\ + :tc=news-old-unk: +# +# (nwp513-a: this had :TY=ascii: and :DE=^H:, which I interpret as :bs:; --esr) +# also the alias vt100-bm. +nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony vt100 emulator 33 lines:\ + :bs:\ + :li#33:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8:\ + :tc=news-old-unk: +# +# (nwp513-o: had :DE=^H:, I think that's :bs:; also the alias vt100-bm --esr) +nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 33 lines:\ + :bs:\ + :li#31:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8:\ + :tc=news-old-unk: +# +# (news28: this had :DE=^H:, I think that's :bs:, and :KB=nws1200: --esr) +news28|sony vt100 emulator 28 lines:\ + :bs:\ + :li#28:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28r\E8:\ + :tc=news-old-unk: +# +# (news29: this had :TY=ascii:KB=nws1200:\ --esr) +news29|news28-a|sony vt100 emulator 29 lines:\ + :li#29:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29r\E8:\ + :tc=news-old-unk: +# +# (news511: this had :TY=sjis: --esr) +nwp511|nwp-511|nwp-511 vt100:\ + :am:bs:pt:xn:\ + :co#80:li#24:\ + :al=\E[L:cd=30\E[J:ce=3\E[K:cl=20\E[;H\E[2J:\ + :cm=\E[%i%d;%dH:dl=\E[M:do=\E[B:\ + :is=\E[?5l\E[?1l\E>\E[?7h\E[?8h:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\EOT:k6=\E#W:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ku=\E[A:le=\E[D:nd=\E[C:\ + :rs=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h:se=2\E[m:\ + :so=2\E[7m:sr=5\EM:ue=2\E[m:up=2\E[A:us=2\E[4m:\ + :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l: +# (news517: this had :TY=sjis:. --esr) +nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows:\ + :es:hs:\ + :co#80:li#30:\ + :ds=\E[1$~:fs=\E[0$}:i2=\E[2$~\n:\ + :is=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :ts=\E[1$}\E[;%df:tc=vt200: +# (news517-w: this had :TY=sjis:. --esr) +nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows:\ + :es:hs:\ + :co#132:li#50:\ + :ds=\E[1$~:fs=\E[0$}:i2=\E[2$~\n:\ + :is=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ + :ts=\E[1$}\E[;%df:tc=vt200: + +#### Common Desktop Environment +# + +# This ships with Sun's CDE in Solaris 2.5 +# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net> +dtterm|CDE desktop terminal:\ + :am:mi:ms:xn:xo:\ + :NC@:co#80:it#8:li#24:lm#0:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:\ + :F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:\ + :F9=\E[33~:FA=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ec=\E[%dX:\ + :ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E F\E>\E[?1l\E[?7h\E[?45l:k1=\E[11~:k2=\E[12~:\ + :k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:rc=\E8:sc=\E7:se=\E[22;27m:sf=\ED:\ + :so=\E[2;7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:tc=ecma+color: + +#### Non-Unix Consoles +# + +#### EMX termcap.dat compatibility modes +# +# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the +# no_color_video to inform the application that standout(1), underline(2) +# reverse(4) and invisible(64) don't work with color. +emx-base|DOS special keys:\ + :bw:ut:\ + :NC#71:it#8:\ + :bl=^G:tc=ansi.sys: + +# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b, +# a Unix-style environment used on OS/2. (Note that the suffix makes some +# names longer than 14 characters, the nominal maximum). +# +# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs. +ansi-emx|ANSI.SYS color:\ + :am:eo:mi:ms:ut:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :&7=^Z:AB=\E[4%dm:AF=\E[3%dm:DC=\E[%dp:IC=\E[%d@:K2=\E[G:\ + :S2=\E[11m:S3=\E[10m:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[1;33;44m\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:\ + :do=^J:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:k0=\200D:kH=\200O:\ + :kb=^H:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m\E[1;33;44m:\ + :mr=\E[5;37;41m:nd=\E[C:nw=^M^J:r1=\Ec:\ + :se=\E[0;44m\E[1;33m:sf=^J:so=\E[0;31;47m:st=\EH:ta=^I:\ + :u8=\E[?6c:u9=\E[c:ue=\E[0;44m\E[1;33m:up=\E[A:\ + :us=\E[1;31;44m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :tc=emx-base: +# nice colors for Emacs (white on blue, mode line white on cyan) +ansi-color-2-emx|ANSI.SYS color 2:\ + :AF=\E[3%dm:cl=\E[0;37;44m\E[H\E[J:me=\E[0;37;44m:\ + :mr=\E[1;37;46m:r1=\Ec:se=\E[0;37;44m:so=\E[1;37;46m:\ + :ue=\E[0;37;44m:us=\E[1;36;44m:tc=ansi-emx: +# nice colors for Emacs (white on black, mode line black on cyan) +ansi-color-3-emx|ANSI.SYS color 3:\ + :AF=\E[3%dm:cl=\E[0;37;40m\E[H\E[J:me=\E[0;10m:\ + :mr=\E[1;37;46m:r1=\Ec:se=\E[0;37;40m:so=\E[1;37;46m:\ + :ue=\E[0;37;40m:us=\E[0;36;40m:tc=ansi-emx: +mono-emx|stupid monochrome ansi terminal with only one kind of emphasis:\ + :am:\ + :co#80:it#8:li#24:\ + :K2=\E[G:ce=\E[K:cl=50\E[H\E[2J:cm=\E[%i%d;%dH:do=\E[B:\ + :ho=\E[H:k0=\200D:k1=\200;:k2=\200<:k3=\200=:k4=\200>:\ + :k5=\200?:k6=\200@:k7=\200A:k8=\200B:k9=\200C:kH=\200O:\ + :kI=\200R:kN=\200Q:kP=\200I:kb=^H:kd=\200P:kh=\200G:\ + :kl=\200K:kr=\200M:ku=\200H:le=\E[D:me=\E[0m:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:ta=^I:up=\E[A: + +# Use this for cygwin32 (tested with beta 19.1) +# underline is colored bright magenta +# shifted kf1-kf12 are kf11-kf22 +cygwinB19|ansi emulation for cygwin32:\ + :@7=\E[4~:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\ + :FA=\E[34~:RA@:SA@:k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:\ + :k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kd=\E[B:\ + :kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:tc=ansi.sys: + +# Use this for cygwin (tested with version 1.1.0). +# I've combined pcansi and linux. Some values of course were different and +# I've indicated which of these were and which I used. +# Cheers, earnie_boyd@yahoo.com +# several changes based on running with tack and comparing with older entry -TD +# more changes from csw: +# add cbt [backtab] +# remove eo [erase overstrike with blank] +# change clear was \E[H\E[J now \E[2J (faster?) +# remove cols +# remove lines +# remove ncv#3 [colors collide with highlights, bitmask] not applicable +# to MSDOS box? +# add cub [cursor back param] +# add cuf [cursor forward param] +# add cuu [cursor up param] +# add cud [cursor down param] +# add hs [has status line] +# add fsl [return from status line] +# add tsl [go to status line] +# add smacs [Start alt charset] (not sure if this works) +# add rmacs [End alt charset] (ditto) +# add smcup [enter_ca_mode] (save console; thanks Corinna) +# add rmcup [exit_ca_mode] (restore console; thanks Corinna) +# add kb2 [center of keypad] +# add u8 [user string 8] \E[?6c +# add el [clear to end of line] \E[K +# Notes: +# cnorm [make cursor normal] not implemented +# flash [flash] not implemented +# blink [blink] not implemented very usefully in cygwin? \E[5m +# dim [dim] not implemented very usefully in cygwin? \E[2m +# cub1 [cursor back 1] typically \E[D, but ^H is faster? +# kNXT [shifted next key] not implemented +# kPRV [shifted prev key] not implemented +# khome [home key] really is \E[1~ NOT \E[H +# tbc [clear tab stops] not implemented +# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni +# smpch [Start PC charset] is \E[11m, same as smacs +# rmpch [End PC charset] is \E[10m, same as rmacs +# mir [move in insert mode] fails in tack? +# bce [back color erase] causes problems with change background color? +# cvvis [make cursor very visible] causes a stackdump when testing with +# testcurs using the output option? \E[?25h\E[?8c +# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c +# ech [erase characters param] broken \E[%p1%dX +# kcbt [back-tab key] not implemented in cygwin? \E[Z +# +# 2005/11/12 -TD +# Remove cbt since it does not work in current cygwin +# Add 'mir' and 'in' flags based on tack +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +cygwin|ansi emulation for Cygwin:\ + :am:hs:mi:ms:xo:\ + :Co#8:it#8:pa#64:\ + :&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:\ + :F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:\ + :F9=\E[33~:FA=\E[34~:IC=\E[%d@:K2=\E[G:LE=\E[%dD:\ + :RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:al=\E[L:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=\E[B:\ + :ei=\E[4l:fs=^G:ho=\E[H:ic=\E[@:im=\E[4h:k1=\E[[A:k2=\E[[B:\ + :k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :md=\E[1m:me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :op=\E[39;49m:r1=\Ec\E]R:rc=\E8:sc=\E7:se=\E[27m:sf=^J:\ + :so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:\ + :ts=\E];:ue=\E[24m:up=\E[A:us=\E[4m:tc=vt102+enq: + +# I've supplied this so that you can help test new values and add other +# features. Cheers, earnie_boyd@yahoo.com. +# +# Some features are from pcansi. The op value is from linux. Function-keys +# are from linux. These have been tested not to cause problems. xenl was in +# this list, but DOES cause problems so it has been removed +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +cygwinDBG|Debug Version for Cygwin:\ + :am:eo:mi:ms:xo:\ + :Co#8:NC#3:co#80:it#8:li#24:pa#64:\ + :%c=\E[6$:%e=\E[5$:&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:\ + :F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:\ + :F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:\ + :K2=\E[G:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:\ + :bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:\ + :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[39;49m:\ + :r1=\Ec\E]R:rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:\ + :st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:\ + :ve=\E[?25h:tc=vt102+enq: + +# Key definitions: +# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the +# encodings used by other x86 environments. All others are invented for DJGPP. +# Oddly enough, while several combinations of modifiers are tabulated, there is +# none for shifted cursor keys. +# +# F1 \E[[A +# F2 \E[[B +# F3 \E[[C +# F4 \E[[D +# F5 \E[[E +# F6 \E[17~ +# F7 \E[18~ +# F8 \E[19~ +# F9 \E[20~ +# F10 \E[21~ +# F11 \E[23~ +# F12 \E[24~ +# +# Delete \E[3~ +# Down Arrow \E[B +# End \E[4~ +# Home \E[1~ +# Insert \E[2~ +# Left Arrow \E[D +# Page Down \E[6~ +# Page Up \E[5~ +# Right Arrow \E[C +# Up Arrow \E[A +# +# Shift-F1 \E[25~ +# Shift-F2 \E[26~ +# Shift-F3 \E[27~ +# Shift-F4 \E[28~ +# Shift-F5 \E[29~ +# Shift-F6 \E[30~ +# Shift-F7 \E[31~ +# Shift-F8 \E[32~ +# Shift-F9 \E[33~ +# Shift-F10 \E[34~ +# Shift-F11 \E[35~ +# Shift-F12 \E[36~ +# +# Ctrl-F1 \E[47~ +# Ctrl-F2 \E[48~ +# Ctrl-F3 \E[49~ +# Ctrl-F4 \E[50~ +# Ctrl-F5 \E[51~ +# Ctrl-F6 \E[52~ +# Ctrl-F7 \E[53~ +# Ctrl-F8 \E[54~ +# Ctrl-F9 \E[55~ +# Ctrl-F10 \E[56~ +# Ctrl-F11 \E[57~ +# Ctrl-F12 \E[58~ +# +# Ctrl-Delete \E[43~ +# Ctrl-Down Arrow \E[38~ +# Ctrl-End \E[44~ +# Ctrl-Home \E[41~ +# Ctrl-Insert \E[42~ +# Ctrl-Left Arrow \E[39~ +# Ctrl-Page Down \E[46~ +# Ctrl-Page Up \E[45~ +# Ctrl-Right Arrow \E[40~ +# Ctrl-Up Arrow \E[37~ +# +# Alt-F1 \E[59~ +# Alt-F2 \E[60~ +# Alt-F3 \E[61~ +# Alt-F4 \E[62~ +# Alt-F5 \E[63~ +# Alt-F6 \E[64~ +# Alt-F7 \E[65~ +# Alt-F8 \E[66~ +# Alt-F9 \E[67~ +# Alt-F10 \E[68~ +# Alt-F11 \E[79~ +# Alt-F12 \E[80~ +# +# Alt-Delete \E[65~ +# Alt-Down Arrow \E[60~ +# Alt-End \E[66~ +# Alt-Home \E[41~ +# Alt-Insert \E[64~ +# Alt-Left Arrow \E[61~ +# Alt-Page Down \E[68~ +# Alt-Page Up \E[67~ +# Alt-Right Arrow \E[62~ +# Alt-Up Arrow \E[59~ +# +# Also: +# Alt-A \E[82~ +# Alt-B \E[82~ +# Alt-C \E[83~ +# Alt-D \E[84~ +# Alt-E \E[85~ +# Alt-F \E[86~ +# Alt-G \E[87~ +# Alt-H \E[88~ +# Alt-I \E[89~ +# Alt-J \E[90~ +# Alt-K \E[91~ +# Alt-L \E[92~ +# Alt-M \E[93~ +# Alt-N \E[94~ +# Alt-O \E[95~ +# Alt-P \E[96~ +# Alt-Q \E[97~ +# Alt-R \E[98~ +# Alt-S \E[99~ +# Alt-T \E[100~ +# Alt-U \E[101~ +# Alt-V \E[102~ +# Alt-W \E[103~ +# Alt-X \E[104~ +# Alt-Y \E[105~ +# Alt-Z \E[106~ +djgpp|ansi emulation for DJGPP alpha:\ + :am:ms:ut:xo:xs:xt:\ + :Co#8:it#8:pa#64:\ + :@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :al=\E[L:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :ch=\E[%i%dG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=\E[B:ec=\E[%dX:ei=:ho=\E[H:\ + :ic=\E[@:im=:k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:\ + :kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:\ + :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:up=\E[A:us=\E[4m:\ + :ve=\E[v:vi=\E[1v:vs=\E[2v: + +djgpp203|Entry for DJGPP 2.03:\ + :am:bs:\ + :co#80:it#8:li#25:\ + :bl=^G:cr=^M:do=^J:kb=^H:kd=^J:kl=^H:le=^H:nw=^M^J:sf=^J:\ + :ta=^I: + +djgpp204|Entry for DJGPP 2.04:\ + :am:bs:AX:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%dX:ei=:ho=\E[H:ic=\E[@:im=:k0=\E[21~:\ + :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:\ + :kH=\E[4~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:\ + :kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:up=\E[A:us=\E[4m:\ + :ve=\E[v:vi=\E[1v:vs=\E[2v: + +# This is tested using U/Win's telnet. Scrolling is omitted because it is +# buggy. Another odd bug appears when displaying "~" in alternate character +# set (the emulator spits out error messages). Compare with att6386 -TD +uwin|U/Win 3.2 console:\ + :am:eo:in:ms:xn:xo:\ + :Co#8:NC#58:it#8:pa#64:\ + :@7=\E[Y:AB=\E[4%dm:AF=\E[3%dm:DC=\E[%dP:F1=\EOZ:F2=\EOA:\ + :IC=\E[%d@:S2=\E[11m:S3=\E[10m:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :ae=\E[10m:as=\E[11m:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dc=\E[P:do=^J:\ + :ec=\E[%dX:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\ + :k9=\EOX:k;=\EOY:kD=\177:kI=\E[@:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :op=\E[39;49m:r1=\Ec\E]R:rc=\E8:sc=\E7:se=\E[27m:so=\E[7m:\ + :st=\EH:ta=^I:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:up=\E[A:\ + :us=\E[4m:ve=\E[?25h:vi=\E[?25l: + +# This entry fits the Windows NT console when the _POSIX_TERM environment +# variable is set to 'on'. While the Windows NT POSIX console is seldom used, +# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP +# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating +# systems is not, and (surprise!) they match very well. +# +# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up +# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only +# are the installation instructions a pile of mind-numbing bureaucratese, +# but the termcap entry is actually broken and unusable as given; the :do: +# capability is misspelled "d". +# +# To use this, you need to a bunch of environment variables: +# +# SET _POSIX_TERM=on +# SET TERM=ansi +# SET TERMCAP=location of termcap file in POSIX file format +# which is case-sensitive. +# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap +# SET TMP=//C/TEMP +# +# Important note: setting the TMP environment variable in POSIX style renders +# it incompatible with a lot of other applications, including Visual C++. So +# you should have a separate command window just for vi. All the other +# variables may be permanently set in the Control Panel\System applet. +# +# You can find out more about the restrictions of this facility at +# <http://www.nentug.org/unix-to-nt/ntposix.htm>. +# +# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997 +ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode:\ + :am:bw:ms:\ + :co#80:it#8:li#25:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:do=^J:\ + :ho=\E[H:kb=^H:kd=\E[V:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :me=\E[0m:mr=\E[7m:nd=\E[C:nw=\r\E[S:rc=\E[u:sc=\E[s:\ + :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:up=\E[A: +# From: jew@venus.sunquest.com +# Date: 19 Feb 93 23:41:07 GMT +# Here's a combination of ansi and vt100 termcap +# entries that works nearly perfectly for me +# (Gateway 2000 Handbook and Microsoft Works 3.0): +pcmw|PC running Microsoft Works:\ + :am:xn:\ + :co#80:it#8:li#24:vt#3:\ + :bl=^G:cd=50\E[J:ce=3\E[K:cl=50\E[;H\E[2J:\ + :cm=5\E[%i%d;%dH:cr=^M:ct=2\E[3g:do=^J:ho=\E[H:\ + :is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kb=^H:kd=\EOB:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:mb=2\E[5m:\ + :md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=2\E[C:nw=5\r\ED:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=5\ED:so=2\E[7m:sr=5\EM:st=2\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m: + +# From: Federico Bianchi +# This is the entry for the OpenNT terminal. +# The ntconsole name is for backward compatability. +# This is for OpenNT 2.0 and later. +# Later OpenNT was renamed to Interix. +# +# Presently it is distributed by Microsoft as Services For Unix (SFU). +# The 3.5 beta contains ncurses 4.2 (that is header files and executables, +# the documentation dates from 1.9.9e) -TD + +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color:\ + :am:bw:ms:\ + :co#80:li#25:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:\ + :cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:dl=\E[M:do=^J:\ + :ho=\E[H:k0=\EFA:k1=\EF1:k2=\EF2:k3=\EF3:k4=\EF4:k5=\EF5:\ + :k6=\EF6:k7=\EF7:k8=\EF8:k9=\EF9:kD=\E[M:kH=\E[U:kI=\E[L:\ + :kN=\E[T:kP=\E[S:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=\E[D:ll=\E[U:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:rc=\E[u:sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:te=\E[2b\E[u\r\E[K:ti=\E[s\E[1b:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +opennt-35|ntconsole-35|OpenNT-term35 compatible with color:\ + :li#35:tc=opennt: + +opennt-50|ntconsole-50|OpenNT-term50 compatible with color:\ + :li#50:tc=opennt: + +opennt-60|ntconsole-60|OpenNT-term60 compatible with color:\ + :li#60:tc=opennt: + +opennt-100|ntconsole-100|OpenNT-term100 compatible with color:\ + :li#100:tc=opennt: + +# OpenNT wide terminals +opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color:\ + :co#125:tc=opennt: + +opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color:\ + :li#35:tc=opennt-w: + +opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color:\ + :li#50:tc=opennt-w: + +opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color:\ + :li#60:tc=opennt-w: + +opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color:\ + :co#132:tc=opennt: + +# OpenNT terminals with no smcup/rmcup (names match termcap entries) +interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color:\ + :te@:ti@:tc=opennt: + +opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color:\ + :li#35:tc=opennt-nti: + +opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color:\ + :li#50:tc=opennt-nti: + +opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color:\ + :li#60:tc=opennt-nti: + +opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color:\ + :li#100:tc=opennt-nti: + +######## COMMON TERMINAL TYPES +# +# This section describes terminal classes and maker brands that are still +# quite common, but have proprietary command sets not blessed by ANSI. +# + +#### Altos +# +# Altos made a moderately successful line of UNIX boxes. In 1990 they were +# bought out by Acer, a major Taiwanese manufacturer of PC-clones. +# Acer has a web site at http://www.acer.com. +# +# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993 +# His comments suggest they were shipped with the system. +# + +# (altos2: had extension capabilities +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ +# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\ +# :HL=^AP\r:SP=\E[i:\ +# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\ +# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\ +# Comparison with the k* capabilities makes it obvious that the c* things are +# shift keys. I have renamed them to keys 32 and up accordingly. Also, +# :sr: was given as a boolean-- esr) +altos2|alt2|altos-2|altos II:\ + :co#80:it#8:li#24:sg#0:ug#0:\ + :*5=^Am\r:*8=^An\r:FM=^A`\r:FN=^Aa\r:FO=^Ab\r:FP=^Ac\r:\ + :FQ=^Ad\r:FR=^Ae\r:FS=^Af\r:FT=^Ag\r:FU=^Ah\r:FV=^Ai\r:\ + :FW=^Aj\r:FX=^Ak\r:RA=\E[?7l:SA=\E[?7h:al=\E[L:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:\ + :dl=\E[M:do=\E[1B:ei=:ho=\E[H:ic=\E[@:\ + :if=/usr/share/tabset/vt100:im=:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k0=^AI\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=^AJ\r:kB=^AK\r:kC=^AL\r:\ + :kD=^AM\r:kE=^AN\r:kF=^AO\r:kb=^H:kd=\E[B:kh=\E[f:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:me=\E[m:nd=\E[1C:nw=^M^J:se=\E[m:\ + :sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[1A:us=\E[4m: +# (altos3: had extension capabilities +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ +# :HL=^AP\r:SP=\E[i:\ +# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T: +altos3|altos5|alt3|alt5|altos-3|altos-5|altos III or V:\ + :mb=\E[5p:me=\E[p:sr=\EM:tc=altos2: +altos4|alt4|altos-4|altos IV:\ + :tc=wy50: +# (altos7: had extension capabilities: +# :GG#0:GI=\EH8:GF=\EH7:\ +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# Comparison with the k* capabilities makes it obvious that the c* things are +# shift keys. I have renamed them to keys 32 and up accordingly. I have +# also made this entry relative to adm12 in order to give it an :sa:. The +# <invis> imported by use=adm+sgr may work, let me know. -- esr) +altos7|alt7|altos VII:\ + :am:mi:\ + :co#80:li#24:sg#0:\ + :*5=^Am\r:*8=^An\r:FM=^A`\r:FN=^Aa\r:FO=^Ab\r:FP=^Ac\r:\ + :FQ=^Ad\r:FR=^Ae\r:FS=^Af\r:FT=^Ag\r:FU=^Ah\r:FV=^Ai\r:\ + :FW=^Aj\r:FX=^Ak\r:ac=j5k3l2m1n8q\072t4u9v=w0x6:al=\EE:\ + :cd=\EY:ce=\ET:cl=\E+^^:cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:\ + :do=^J:ei=\Er:ho=^^:im=\Eq:\ + :is=\E`\072\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2:k0=^AI\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=^AJ\r:kB=^AK\r:kC=^AL\r:\ + :kD=^AM\r:kE=^AN\r:kF=^AO\r:kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:md=\EGt:mh=\EGp:mk=\EG1:\ + :nd=^L:nw=^M^J:pf=\EJ:po=\Ed#:sf=^J:sr=\Ej:ta=^I:up=^K:\ + :tc=adm+sgr: +altos7pc|alt7pc|altos PC VII:\ + :@7=\ET:tc=altos7: + +#### Hewlett-Packard (hp) +# +# Hewlett-Packard +# 8000 Foothills Blvd +# Roseville, CA 95747 +# Vox: 1-(916)-785-4363 (Technical response line for VDTs) +# 1-(800)-633-3600 (General customer support) +# +# +# As of March 1998, HP no longer has any terminals in production. +# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being +# supported (they still have parts). So are the 2392a and 2394a. +# See the WORKSTATION CONSOLES section for the 700s. +# + +# Generic HP terminal - this should (hopefully) work on any HP terminal. +hpgeneric|hp|hewlett-packard generic terminal:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#24:lm#0:vt#6:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=6\E&a%r%dc%dY:cr=^M:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:kB=\Ei:kb=^H:le=^H:me=\E&d@:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +hp110|hewlett-packard model 110 portable:\ + :li#16:tc=hpgeneric: + +hp+pfk+cr|hp function keys with CR:\ + :k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:\ + :k7=\Ev\r:k8=\Ew\r: + +hp+pfk-cr|hp function keys w/o CR:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew: + +# The hp2621s use the same keys for the arrows and function keys, +# but not separate escape sequences. These definitions allow the +# user to use those keys as arrow keys rather than as function +# keys. +hp+pfk+arrows|hp alternate arrow definitions:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:kF=\Er\r:kH=\Eq\r:kR=\Es\r:\ + :kd=\Ew\r:kh=\Ep\r:kl=\Eu\r:kr=\Ev\r:ku=\Et\r: + +hp+arrows|hp arrow definitions:\ + :kF=\ES:kH=\EF:kR=\ET:kd=\EB:kh=\Eh:kl=\ED:kr=\EC:ku=\EA: + +# Generic stuff from the HP 262x series +# +hp262x|HP 262x terminals:\ + :xs:\ + :cd=\EJ:dc=2\EP:ip=2:kA=\EL:kD=\EP:kE=\EK:kF=\ES:kI=\EQ:\ + :kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kd=\EB:ke=\E&s0A:\ + :kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:ku=\EA:mb=\E&dA:me=\E&d@:\ + :mk=\E&dS:mr=\E&dB:se=\E&d@:sf=\ES:so=\E&dB:ta=2\011:\ + :ue=\E&d@:us=\E&dD: + +# Note: no :ho: on HPs since that homes to top of memory, not screen. +# Due to severe 2621 braindamage, the only way to get the arrow keys to +# transmit anything at all is to turn on the function key labels +# with :ks:, and even then the user has to hold down shift! +# The default 2621 turns off the labels except when it has to to +# enable the function keys. If your installation prefers labels +# on all the time, or off all the time (at the "expense" of the +# function keys), use 2621-nl or 2621-wl. +# +# Note: there are newer ROMs for 2621's that allow you to set +# strap A so the regular arrow keys xmit \EA, etc, as with the +# 2645. However, even with this strap set, the terminal stops +# xmitting if you reset it, until you unset and reset the strap! +# Since there is no way to set/unset the strap with an escape +# sequence, we don't use it in the default. +# If you like, you can use 2621-ba (brain-damaged arrow keys). +hp2621-ba|2621 w/new rom and strap A set:\ + :ke@:ks@:tc=hp+arrows:tc=hp2621: + +# hp2621 with function labels. Most of the time they are off, +# but inside vi, the function key labels appear. You have to +# hold down shift to get them to xmit. +hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels:\ + :is=\E&jA\r:ke=\E&jA:tc=hp2621-fl: +hp2621-fl|hp 2621:\ + :xo:xs@:\ + :pb#19200:\ + :bt=\Ei:cm=\E&a%r%dc%dY:dc=2\EP:ip=2:is=\E&j@\r:ke=\E&j@:\ + :ks=\E&jB:me=\E&d@:se=\E&d@:so=\E&dD:ta=2\011:ue=\E&d@:\ + :us=\E&dD:tc=hp+pfk+cr:tc=hpgeneric: + +# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p +hp2621p|hp 2621 with printer:\ + :pf=\E&p13C:po=\E&p11C:tc=hp2621: + +hp2621p-a|hp2621p with fn as arrows:\ + :tc=hp+pfk+arrows:tc=hp2621p: + +# hp2621 with k45 keyboard +hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard:\ + :kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:\ + :ku=\EA:tc=hp2621: + +# 2621 using all 48 lines of memory, only 24 visible at any time. +hp2621-48|48 line 2621:\ + :li#48:\ + :cm=\E&a%r%dc%dR:cv=\E&a%dR:ho=\EH:tc=hp2621: + +# 2621 with no labels ever. Also prevents vi delays on escape. +hp2621-nl|hp 2621 with no labels:\ + :kd@:ke@:kh@:kl@:kr@:ks@:ku@:tc=hp2621-fl: + +# Needed for UCB ARPAVAX console, since lsi-11 expands tabs +# (wrong). +# +hp2621-nt|hp 2621 w/no tabs:\ + :ta@:tc=hp2621: + +# Hp 2624 B with 4 or 10 pages of memory. +# +# Some assumptions are made with this entry. These settings are +# NOT set up by the initialization strings. +# +# Port Configuration +# RecvPace=Xon/Xoff +# XmitPace=Xon/Xoff +# StripNulDel=Yes +# +# Terminal Configuration +# InhHndShk=Yes +# InhDC2=Yes +# XmitFnctn(A)=No +# InhEolWrp=No +# +# Note: the 2624 DOES have a true :ho:, believe it or not! +# +# The 2624 has an "error line" to which messages can be sent. +# This is CLOSE to what is expected for a "status line". However, +# after a message is sent to the "error line", the next carriage +# return is EATEN and the "error line" is turned back off again! +# So I guess we can't define :hs:, :es:, :ws:, :ds:, :fs:, :ts:. +# +# This entry supports emacs (and any other program that uses raw +# mode) at 4800 baud and less. I couldn't get the padding right +# for 9600. +# +# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr) +hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B:\ + :da:db:\ + :lm#96:\ + :vb=\E&w13F\E&w12F\E&w13F\E&w12F:tc=hp+labels:tc=scrhp: + +# This hp2626 entry does not use any of the fancy windowing stuff +# of the 2626. +# +# Indeed, terminfo does not yet handle such stuff. Since changing +# any window clears memory, it is probably not possible to use +# this for screen opt. +# +# ed is incredibly slow most of the time - I am guessing at the +# exact padding. Since the terminal uses xoff/xon this is intended +# only for cost computation, so that the terminal will prefer el +# or even dl1 which is probably faster! +# +# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only +# extra slow on the last line of the window. +# +# The padding probably should be changed. +# +hp2626|hp2626a|hp2626p|hp 2626:\ + :da:db:\ + :lm#0:pb#19200:\ + :SF=\E&r%dD:SR=\E&r%dU:cd=\ED\EJ\EC:ip=4:is=\E&j@\r:\ + :tc=hp+pfk+cr:tc=hp+labels:tc=scrhp: + +# This entry is for sysline. It allocates a 23 line window with +# a 115 line workspace for regular use, and a 1 line window for +# the status line. +# +# This assumes port 2 is being used. +# Turn off horizontal line, Create ws #1 with 115 lines, +# Create ws #2 with 1 line, Create window #1 lines 1-23, +# Create window #2 lines 24-24, Attach cursor to workspace #1. +# Note that this clears the tabs so it must be done by tset before +# it sets the tabs. +# +hp2626-s|hp 2626 using only 23 lines:\ + :es:hs:\ + :li#23:\ + :fs=\E&d@\E&w7f2p1I\E&w4f1I:\ + :i1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r:\ + :ts=\E&w7f2p2I\E&w4f2I\r\EK\E&a%dC:tc=hp2626: +# Force terminal back to 24 lines after being 23. +hp2626-ns|hp 2626 using all 24 lines:\ + :i1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r:\ + :tc=hp2626: +# Various entries useful for small windows on 2626. +hp2626-12|hewlett-packard 2626 12 lines:\ + :li#12:tc=hp2626: +hp2626-12x40|hewlett-packard 2626 12 lines 40 columns:\ + :co#40:li#12:tc=hp2626: +hp2626-x40|hewlett-packard 2626 40 columns:\ + :co#40:tc=hp2626: +hp2626-12-s|hewlett-packard 2626 11 lines plus status:\ + :li#11:tc=hp2626-s: + +# +# hp2627 color tubes from University of Wisconsin +# +hp2627a-rev|hp 2627 with reverse video colors:\ + :cr=^M:do=^J:\ + :is=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r:\ + :kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:ue=\E&v0S\E&d@:\ + :us=\E&dD\E&v1S:tc=hp2621-nl: +hp2627a|hp 2627 color terminal with no labels:\ + :cr=^M:do=^J:\ + :is=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r:\ + :kb=^H:kd=^J:kl=^H:nw=^M^J:se=\E&v0S:sf=^J:so=\E&v2S:ta=^I:\ + :ue=\E&v0S\E&d@:us=\E&dD\E&v1S:tc=hp2621-nl: +hp2627c|hp 2627 color (cyan) terminal with no labels:\ + :cr=^M:do=^J:\ + :is=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r:\ + :kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:tc=hp2627a: + +# hp2640a doesn't have the Y cursor addressing feature, and C is +# memory relative instead of screen relative, as we need. +# +hp2640a|hp 2640a:\ + :cm@:ke@:ks@:tc=hp2645: + +hp2640b|hp2644a|hp 264x series:\ + :ke@:ks@:tc=hp2645: + +# (hp2641a: removed unknown :gu: -- esr) +hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry:\ + :am:da:db:mi:xs:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%2C:cl=\EH\EJ:\ + :cm=\E&a%r%2c%2Y:cr=^M:cv=\E&a%2Y:dc=\EP:dl=\EM:do=^J:\ + :ei=\ER:if=/usr/share/tabset/std:im=\EQ:is=500\EE:kb=^H:\ + :kd=^J:kl=^H:le=^H:nd=\EC:nw=^M^J:se=\E&d@:sf=^J:so=\E&dB:\ + :ta=^I:up=\EA: + +# This terminal should be used at 4800 baud or less. It needs padding for +# plain characters at 9600, I guessed at an appropriate cr delay. It really +# wants ^E/^F handshaking, but that doesn't work well even if you write +# software to support it. +hp2645|hp45|HP 2645 series:\ + :pb#9600:\ + :cr=20\r:kA=\EL:kD=\EP:kE=\EK:kF=\ES:kI=\EQ:kL=\EM:kM=\ER:\ + :kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:kd=\EB:ke=\E&s0A:kh=\Eh:\ + :kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:ku=\EA:mb=\E&dA:me=\E&d@:\ + :mh=\E&dH:mr=\E&dB:us=\E&dD:tc=hpgeneric: +# You should use this terminal at 4800 baud or less. +hp2648|hp2648a|HP 2648a graphics terminal:\ + :cl=50\EH\EJ:cm=20\E&a%r%dc%dY:dc=7\EP:ip=5:tc=hp2645: + +# The HP 150 terminal is a fairly vanilla HP terminal, with the +# clreol standout problem. It also has graphics capabilities and +# a touch screen, which we don't describe here. +hp150|hewlett packard Model 150:\ + :bs:tc=hp2622: + +# HP 2382a terminals, "the little ones." They don't have any +# alternate character set support and sending out ^N/^O will +# leave the screen blank. +hp2382a|hp2382|hewlett packard 2382a:\ + :da:db:\ + :lh#1:lm#48:\ + :ac@:ae@:as@:me=\E&d@:tc=hp+labels:tc=scrhp: + +hp2621-a|hp2621a-a|hp2621 with fn as arrows:\ + :tc=hp+pfk+arrows:tc=hp2621-fl: + +# newer hewlett packard terminals + +newhpkeyboard|generic entry for HP extended keyboard:\ + :kA=\EL:kB=\Ei:kC=\EJ:kD=\EP:kE=\EK:kF=\ET:kH=\EF:kI=\EQ:\ + :kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ES:kS=\EJ:kb=^H:kd=\EB:\ + :ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:ku=\EA:\ + :tc=hp+pfk-cr: + +newhp|generic entry for new hewlett packard terminals:\ + :am:bw:mi:xo:xs:\ + :co#80:li#24:pb#4800:\ + :ac=2[3@4>5I9(\072'JSKWLQMAO#P$Q;R!S"T1U2V4W3X\072Y+Z*dHjGkTlRmFn/q,t5u6v8w7x.:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:cr=^M:ct=\E3:\ + :dc=2\EP:dl=\EM:do=^J:ei=\ER:i1=8\E&jB:im=\EQ:ip=2:le=^H:\ + :mb=\E&dA:md=\E&dF:me=\E&d@:mh=\E&dH:mk=\E&dS:mr=\E&dB:\ + :nd=\EC:nw=^M^J:r1=\Eg:se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:\ + :st=\E1:ta=2\011:ue=\E&d@:up=\EA:us=\E&dD:\ + :tc=newhpkeyboard: + +memhp|memory relative addressing for new HP ttys:\ + :vt#6:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:RI=\E&a+%dC:\ + :UP=\E&a-%dR:ch=\E&a%dC:cl=40\EH\EJ:cm=\E&a%dr%dC:\ + :cv=\E&a%dR:ho=\EH:ll=\E&a23R\r:tc=newhp: + +scrhp|screen relative addressing for new HP ttys:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:RI=\E&a+%dC:\ + :UP=\E&a-%dR:ch=\E&a%dC:cl=40\E&a0c0Y\EJ:\ + :cm=10\E&a%dy%dC:cv=\E&a%dY:ho=\E&a0y0C:ll=\E&a0y0C\EA:\ + :tc=newhp: + +# (hp+labels: added label values from a BRL termcap -- esr) +hp+labels|"standard" label info for new HP ttys:\ + :Nl#8:lh#2:lw#8:\ + :LF=\E&j@:LO=\E&jB:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8: + +hp+printer|"standard" printer info for HP ttys:\ + :ff=\E&p4u0C:pf=\E&p13C:po=\E&p11C:ps=\EH\E&p4dF: + + +# The new hp2621b is kind of a cross between the old 2621 and the +# new 262x series of machines. It has dip-switched options. +# The firmware has a bug in it such that if you give it a null +# length label, the following character is eaten! +hp2621b|hp 2621b with old style keyboard:\ + :Nl#8:lh#1:lm#48:lw#8:\ + :LO=\E&jB:kF=\ET:kH=\EF:kR=\ES:kd=\EB:kh=\Eh:kl=\ED:kr=\EC:\ + :ku=\EA:tc=hp2621: + +hp2621b-p|hp 2621b with printer:\ + :tc=hp+printer:tc=hp2621b: + +# hp2621b - new 2621b with new extended keyboard +# these are closer to the new 26xx series than the other 2621b +hp2621b-kx|hp 2621b with extended keyboard:\ + :tc=newhpkeyboard:tc=hp2621b: + +hp2621b-kx-p|hp 2621b with new keyboard & printer:\ + :tc=hp+printer:tc=hp2621b-kx: + +# Some assumptions are made in the following entries. +# These settings are NOT set up by the initialization strings. +# +# Port Configuration +# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes +# +# Terminal Configuration +# InhHndShk(G)=Yes InhDC2(H)=Yes +# XmitFnctn(A)=No InhEolWrp=No +# +# +# Hp 2622a & hp2623a display and graphics terminals +# +hp2622|hp2622a|hp 2622:\ + :da:db:\ + :lm#0:pb#19200:\ + :is=\E&dj@\r:tc=hp+pfk+cr:tc=hp+labels:tc=scrhp: + +# The 2623 is a 2622 with extra graphics hardware. +hp2623|hp2623a|hp 2623:\ + :tc=hp2622: + +hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer:\ + :tc=hp+printer:tc=hp2624: + +# The hewlett packard B can have an optional extra 6 pages of memory. +hp2624-10p|hp2624a-10p|hp2624b-10p|hewlett packard 2624 B w/ 10 pages of memory:\ + :lm#240:tc=hp2624: + +hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer:\ + :lm#240:tc=hp2624b-p: + +# Color manipulations for HP terminals +hp+color|hp with colors:\ + :cc:\ + :Co#16:NC#17:pa#7:\ + :oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I:\ + :op=\E&v0S:sp=\E&v%dS: + +# :is: sets the screen to be 80 columns wide +hp2397a|hp2397|hewlett packard 2397A color terminal:\ + :is=\E&w6f80X:tc=memhp:tc=hp+labels:tc=hp+color: + +# HP 700/44 Setup parameters: +# Terminal Mode HP-PCterm +# Inhibit Auto Wrap NO +# Status Line Host Writable +# PC Character Set YES +# Twenty-Five Line Mode YES +# XON/XOFF @128 or 64 (sc) +# Keycode Mode NO or YES (sc) +# Backspace Key BS or BS/DEL +# +# :is: sets pcterm; autowrap; 25 lines; pc char set; prog DEL key; +# \E\\? does not turn off keycode mode +# <smsc> sets alternate start/stop; keycode on +hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode:\ + :am:eo:xn:xo:\ + :co#80:li#25:\ + :@7=\E[4~:RA=\E[?7l:S4=250\E[>11h\EPO**x0/65;1/67\E\\:\ + :S5=\E[>11l\EP1**x0/11;1/13\E[m\E\\:SA=\E[?7h:XF=g:XN=e:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\ + :ic=\E[@:im=:\ + :is=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\:\ + :k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\ + :k6=\E[23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~:\ + :kB=\E[Z:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=\E[D:me=\E[m:nd=\E[C:se=\E[m:sf=^J:\ + :so=\E[7m:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# +# (hp2392: copied :ei: here from hpex -- esr) +hp2392|239x series:\ + :co#80:\ + :bt=\Ei:cm=\E&a%dy%dC:cv=\E&a%dY:ei=\ER:im=\EQ:k1=\Ep\r:\ + :k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:k7=\Ev\r:\ + :k8=\Ew\r:kF=\EU:kN=\Eu:kP=\Ev:kR=\EV:kh=\Eh:ue=\E&d@:\ + :us=\E&dD:tc=hpsub: + +hpsub|hp terminals -- capability subset:\ + :am:da:db:mi:xo:xs:\ + :li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:cr=^M:\ + :dc=\EP:dl=\EM:do=\EB:if=/usr/share/tabset/stdcrt:\ + :is=\E&s1A\E<\E&k0\\:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:\ + :kr=\EC:ks=\E&s1A:ku=\EA:le=^H:me=\E&d@:nd=\EC:se=\E&d@:\ + :sf=^J:so=\E&dB:ta=^I:up=\EA: + +# hpex: +# May be used for most 24 x 80 hp terminals, +# but has no padding added, so may allow runover in some terminals at high +# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and +# hp98x5 terminal emulators or hp98x6 consoles. +# Adds xy-cursor addressing, vertical cursor addressing, home, +# last line, and underline capabilities. +# +# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:", +# moved :ei: here from hpsub -- esr) +hpex|hp extended capabilites:\ + :cm=\E&a%dy%dC:cr=^M:cv=\E&a%dY:do=^J:ei=\ER:im=\EQ:kb=^H:\ + :kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:ue=\E&d@:us=\E&dD:tc=hpsub: + +# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996 +hp2|hpex2|hewlett-packard extended capabilities newer version:\ + :am:da:db:mi:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:sg#0:ug#0:\ + :LF=\E&j@:LO=\E&jB:al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=\EB:ei=\ER:im=\EQ:k1=\Ep:k2=\Eq:k3=\Er:\ + :k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kA=\EL:kC=\EJ:kD=\EP:\ + :kE=\EK:kF=\ES:kH=\EF:kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:\ + :kR=\ET:kS=\EJ:kT=\E1:ka=\E3:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:\ + :kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:ku=\EA:le=^H:me=\E&d@\017:\ + :ml=\El:mu=\Em:nd=\EC:se=\E&d@:sf=^J:so=\E&dB:st=\E1:ta=^I:\ + :ue=\E&d@:up=\EA:us=\E&dD: + +# HP 236 console +# From: <ddavis@ic.berkeley.edu> +hp236|hp236 internal terminal emulator:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EG:ce=\EK:cl=\EF:cm=\EE%+ %+ :dc=\EJ:dl=\EH:ei=:ic=\EI:\ + :im=:le=^H:me=\ECI:se=\ECI:so=\EBI:up=^K:ve=\EDE:vs=\EDB: + +# This works on a hp300 console running Utah 4.3 BSD +# From: Craig Leres <leres@okeeffe.berkeley.edu> +hp300h|HP Catseye console:\ + :am:bs:da:db:mi:xs:\ + :co#128:li#51:lm#0:sg#0:ug#0:\ + :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=\EB:ei=\ER:if=/usr/share/tabset/stdcrt:\ + :im=\EQ:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:\ + :ks=\E&s1A:ku=\EA:le=^H:me=\E&d@:nd=\EC:se=\E&d@:sf=^J:\ + :so=\E&dB:ta=^I:ue=\E&d@:up=\EA:us=\E&dD: +# From: Greg Couch <gregc@ernie.berkeley.edu> +hp9837|hp98720|hp98721|HP 9000/300 workstations:\ + :am:bs:da:db:mi:xs:\ + :co#128:it#8:li#46:lm#0:\ + :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:ct=\E3:cv=\E&a%dY:dc=\EP:\ + :dl=\EM:do=\EB:ei=\ER:im=\EQ:is=\E&v0m1b0i&j@:kA=\EL:\ + :kD=\EP:kE=\EK:kI=\EQ:kL=\EM:kN=\EU:kP=\EV:kS=\EJ:kb=^H:\ + :kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:ku=\EA:\ + :le=^H:me=\E&d@:nd=\EC:se=\E&v0S:sf=^J:so=\E&v5S:st=\E1:\ + :ta=^I:ue=\E&d@:up=\EA:us=\E&dD: +# HP 9845 desktop computer from BRL +# (hp9845: removed unknown capability :gu: -- esr) +hp9845|HP 9845:\ + :am:bs:da:db:eo:mi:xs:\ + :co#80:li#21:\ + :al=\EL:bc=\ED:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\E&a%r%2c%2Y:\ + :dc=\EP:dl=\EM:do=\EB:ei=\ER:if=/usr/share/tabset/std:\ + :im=\EQ:le=\ED:nd=\EC:se=\E&d@:so=\E&dB:up=\EA: +# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90 +# (hp98550: replaced /usr/share/tabset/9837 with std because :it#8:,:st=\E1:; +# added empty <acsc> to avoid warnings re :as:/:ae: --esr) +hp98550|hp98550a|HP 9000 Series 300 color console:\ + :am:bs:da:db:mi:xs:\ + :co#128:it#8:li#49:lm#0:\ + :ac=:ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:\ + :ch=\E&a%dC:cl=\EH\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:\ + :if=/usr/share/tabset/std:im=\EQ:k1=\Ep:k2=\Eq:k3=\Er:\ + :k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kA=\EL:kC=\EJ:kD=\EP:\ + :kE=\EK:kF=\ES:kH=\EF:kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:\ + :kR=\ET:kS=\EJ:kT=\E1:ka=\E3:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:\ + :kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:ku=\EA:le=^H:mb=\E&dA:\ + :md=\E&dJ:me=\E&d@:mh=\E&dH:mk=\E&ds:mr=\E&dJ:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD:ve=\E*dQ:vi=\E*dR: +# From: Victor Duchovni <vic@fine.princeton.edu> +# (hp700-wy: removed obsolete ":nl=^J:"; +# replaced /usr/share/tabset/hp700-wy with std because :it#8:,:st=\E1: -- esr) +hp700-wy|HP700/41 emulating wyse30:\ + :am:bs:bw:mi:ms:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=0.7*\EE:bt=\EI:cd=\EY:ce=10\ET:cl=^Z:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:cv=\E[%+ :dc=\EW:dl=\ER:do=^V:ei=\Er:ho=^^:\ + :i1=\E~"\EC\Er\E(\EG0\003\E`9\E`1:\ + :if=/usr/share/tabset/stdcrt:im=\Eq:kB=\EI:kC=^Z:kE=\ET:\ + :kI=\Eq:kM=\Er:kS=\EY:kT=\EI:kb=\177:kd=^V:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:ll=^^^K:me=10\EG0:nd=^L:se=10\EG0:so=10\EG4:\ + :sr=\Ej:st=\E1:ta=^I:ue=10\EG0:up=^K:us=10\EG8: +hp70092|hp70092a|hp70092A|HP 700/92:\ + :am:da:db:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:\ + :LF=\E&j@:LO=\E&jB:ac=0cjgktlrmfn/q,t5u6v8w7x.:ae=^O:\ + :al=\EL:as=^N:bl=^G:bt=\Ei:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=\EB:ei=\ER:im=\EQ:k1=\Ep:k2=\Eq:k3=\Er:\ + :k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kA=\EL:kC=\EJ:kD=\EP:\ + :kE=\EK:kF=\ES:kH=\EF:kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:\ + :kR=\ET:kS=\EJ:kT=\E1:ka=\E3:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:\ + :kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:ku=\EA:le=^H:mb=\E&dA:\ + :md=\E&dB:me=\E&d@:mh=\E&dH:mr=\E&dB:nd=\EC:se=\E&d@:\ + :so=\E&dJ:sr=\ET:st=\E1:ta=^I:ue=\E&d@:up=\EA:us=\E&dD: + +bobcat|sbobcat|HP 9000 model 300 console:\ + :am:da:db:mi:xs:\ + :co#128:it#8:li#47:sg#0:ug#0:\ + :al=10*\EL:bt=\Ei:cd=\EJ:ce=\EK:ch=6\E&a%dC:cl=\EH\EJ:\ + :cm=6\E&a%dy%dC:cr=^M:cv=6\E&a%dY:dc=\EP:dl=10*\EM:do=\EB:\ + :ei=\ER:im=\EQ:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:\ + :ks=\E&s1A:ku=\EA:le=^H:me=\E&d@:nd=\EC:nw=^M^J:se=\E&d@:\ + :sf=^J:so=\E&dB:ta=^I:ue=\E&d@:up=\EA:us=\E&dD: +gator-t|HP 9000 model 237 emulating extra-tall AAA:\ + :li#94:tc=gator: +gator|HP 9000 model 237 emulating AAA:\ + :bw:km:mi:ul:\ + :co#128:it#8:li#47:\ + :AL=1*\E[%dL:DC=4\E[%dP:DL=1*\E[%dM:IC=4\E[%d@:al=\E[L:\ + :bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=:ho=\E[H:\ + :ic=\E[@:im=:kb=^H:kd=^J:kl=^H:le=^H:me=\E[m:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:rp=1*%.\E[%db:se=\E[m:so=\E[7m:ta=^I:\ + :ue=\E[m:up=\EM:us=\E[4m: +gator-52|HP 9000 model 237 emulating VT52:\ + :co#128:li#47:tc=vt52: +gator-52t|HP 9000 model 237 emulating extra-tall VT52:\ + :li#94:tc=gator-52: + +#### Honeywell-Bull +# +# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93 +# + +# Honeywell Bull terminal. Its cursor and function keys send single +# control characters and it has standout/underline glitch. Most programs +# do not like these features/bugs. Visual bell is realized by flashing the +# "keyboard locked" LED. +dku7003-dumb|Honeywell Bull DKU 7003 dumb mode:\ + :co#80:li#25:\ + :cd=^_:ce=\E[K:cl=^]^_:cm=\E[%i%d;%dH:cr=^M:do=^K:ho=^]:\ + :kb=^H:kd=^K:kh=^]:kl=^Y:kr=^X:ku=^Z:le=^Y:nd=^X:nw=^M^J:\ + :sf=^J:ta=^I:up=^Z:vb=\E[2h\E[2l: +dku7003|Honeywell Bull DKU 7003 all features described:\ + :ms:\ + :sg#1:ug#1:\ + :mb=\E[5m:md=\E[7m:me=\E[m:mh=\E[2m:mr=\E[7m:se=\E[m:\ + :so=\E[7m:ue=\E[m:us=\E[4m:tc=dku7003-dumb: + +#### Lear-Siegler (adm) +# +# These guys are long since out of the terminals business, but +# in 1995 many current terminals still have an adm type as one of their +# emulations (usually their stupidest, and usually labeled adm3, though +# these `adm3' emulations normally have adm3a+ capabilities). +# +# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a +# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator') +# was being held to ground would trigger a send of the top line on the screen. +# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22 +# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>, +# for clearing up this point.) + +adm1a|adm1|lsi adm1a:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cl=1\E;:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:le=^H:nd=^L:\ + :sf=^J:up=^K: +adm2|lsi adm2:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :cr=^M:\ + :dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:kd=^J:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:nd=^L:sf=^J:up=^K: +# (adm3: removed obsolete ":ma=^K^P:" -- esr) +adm3|lsi adm3:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=^Z:cr=^M:do=^J:le=^H:sf=^J: +# The following ADM-3A switch settings are assumed for normal operation: +# SPACE U/L_DISP CLR_SCRN 24_LINE +# CUR_CTL LC_EN AUTO_NL FDX +# Other switches may be set for operator convenience or communication +# requirements. I recommend +# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF +# ETX_OFF EOT_OFF +# Most of these terminals required an option ROM to support lower case display. +# Open the case and look at the motherboard; if you see an open 24-pin DIP +# socket, you may be out of luck. +# +# (adm3a: some capabilities merged in from BRl entry -- esr) +adm3a|lsi adm3a:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=1\032:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:kd=^J:kl=^H:\ + :kr=^L:ku=^K:le=^H:ma=^K^P:nd=^L:nl=^J:rs=^N:sf=^J:up=^K: +adm3a+|adm3a plus:\ + :kb=^H:tc=adm3a: +# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr) +adm5|lsi adm5:\ + :sg#1:\ + :bl=^G:cd=\EY:ce=\ET:cr=^M:do=^J:kb=^H:kh=^^:se=\EG:so=\EG:\ + :tc=adm3a+: +# A lot of terminals other than adm11s use these. Wherever you see +# use=adm+sgr with some of its capabilities disabled, try the +# disabled ones. They may well work but not have been documented or +# expressed in the using entry. We'd like to cook up an :sa: but the +# :ae:/:as: sequences of the using entries vary too much. +adm+sgr|adm style highlight capabilities:\ + :me=\EG0:mk=\EG1:mr=\EG4:se=\EG0:so=\EG4:ue=\EG0:us=\EG8: +# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL +# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs> +# :kh: from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. :cl: could also +# be ^Z, according to his entry. +# (adm11: :us:=\EG4 was obviously erroneous because it also said +# :mr:=\EG4. Looking at other ADMs confirms this -- esr) +adm11|LSI ADM-11:\ + :am:bs:hs:\ + :co#80:kn#8:li#24:\ + :bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:do=^J:ds=\Eh:\ + :fs=\E(\r:ho=^^:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\ + :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:nd=^L:nl=^J:nw=^M^J:ta=^I:\ + :ts=\EF\E):up=^K:tc=adm+sgr: +# From: Andrew Scott Beals <bandy@lll-crg.ARPA> +# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995 +# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996 +# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had +# :is:=\Eq but that looked wrong; this :is: is from Dave Yost <esquire!yost> +# via BRL. That entry asserted :sg#1:, but I've left that out because +# neither earlier nor later ADMSs have it -- esr) +# +# You will need to get into the supervisor setup before you can set +# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should +# see a lot more setup options. +# +# While in supervisor setup you can also use following codes: +# +# Ctrl-P Personality character selections (configure for example what +# arrow keys send, if I recall correctly) +# Ctrl-T tabs 1-80 use left&right to move and up to set and +# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor +# Ctrl-B Binary setup (probably not needed. I think that everything can +# be set using normal setup) +# Ctrl-A Answerback mode (enter answerback message) +# Ctrl-U User friendly mode (normal setup) +# Ctrl-D Defaults entire setup and function keys from EPROM tables +# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds. +# Ctrl-R Reads both setup and functions keys from NVM. +# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status +# +# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to +# RTS/CTS used nowadays with virtually every modem and computer. 19200 +# bps works fine with hardware flow control. +# +# The following null-modem cable should fix this and enable you to use +# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also +# set ADM-12+ for DTR handshaking from supervisor setup. +# +# PC Serial ADM-12+ +# -------- ------- +# 2 - 3 +# 3 - 2 +# 4 - 5 +# 5 - 20 +# 6,8 - 4 +# 7 - 7 +# 20 - 6,8 +# +adm12|lsi adm12:\ + :am:bs:mi:pt:\ + :co#80:it#8:li#24:ug#1:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E0:\ + :dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:ic=\EQ:im=\Eq:\ + :is=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1:\ + :k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:k5=^A5\r:\ + :k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^J:kl=^H:kr=^L:\ + :ku=^K:le=^H:nd=^L:st=\E1:up=^K:tc=adm+sgr: +# (adm20: removed obsolete ":kn#7:" -- esr) +adm20|lear siegler adm20:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:\ + :cm=\E=%i%r%+^_%+^_:cr=^M:dc=\EW:dl=\ER:ei=:ho=^^:ic=\EQ:\ + :im=:k1=^A:k2=^B:k3=^W:k4=^D:k5=^E:k6=^X:k7=^Z:le=^H:me=\E(:\ + :nd=^L:se=\E(:so=\E):ta=^I:up=^K: +adm21|lear siegler adm21:\ + :sg#1:\ + :al=30*\EE:bl=^G:cd=\EY:ce=\ET:cr=^M:dc=\EW:dl=30*\ER:do=^J:\ + :ei=:ic=\EQ:im=:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:mk@:sf=^J:\ + :tc=adm+sgr:tc=adm3a: +# (adm22: ":em=:" was an obvious typo for ":ei=:"; also, +# removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :"; +# removed bogus-looking \200 from before :cm:. -- esr) +adm22|lsi adm22:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:\ + :is=\E%\014\014\014\016\003\200\003\002\003\002\200\200\200\200\200\200\200\200\200\200\200:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:l1=F1:l2=F2:\ + :l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:le=^H:me=\E(:nd=^L:se=\E(:\ + :so=\E):ta=\Ei:up=^K: +# ADM 31 DIP Switches +# +# This information comes from two versions of the manual for the +# Lear-Siegler ADM 31. +# +# Main board: +# rear of case +# +-||||-------------------------------------+ +# + S1S2 ||S + +# + ||3 + +# + + +# + ||S + +# + ||4 + +# + + +# + + +# + + +# + + +# + + +# +-+ +-+ +# + + +# + S5 S6 S7 + +# + == == == + +# +----------------------------------------------+ +# front of case (keyboard) +# +# S1 - Data Rate - Modem +# S2 - Data Rate - Printer +# ------------------------ +# Data Rate Setting +# ------------------- +# 50 0 0 0 0 +# 75 1 0 0 0 +# 110 0 1 0 0 +# 134.5 1 1 0 0 +# 150 0 0 1 0 +# 300 1 0 1 0 +# 600 0 1 1 0 +# 1200 1 1 1 0 +# 1800 0 0 0 1 +# 2000 1 0 0 1 +# 2400 0 1 0 1 +# 3600 1 1 0 1 +# 4800 0 0 1 1 +# 7200 1 0 1 1 +# 9600 0 1 1 1 +# x 1 1 1 1 +# +# S3 - Interface/Printer/Attributes +# --------------------------------- +# Printer Busy Control +# sw1 sw2 sw3 +# --------------- +# off off off Busy not active, CD disabled +# off off on Busy not active, CD enabled +# off on off Busy active on J5-20, CD disabled +# on off off Busy active on J5-19, CD disabled - Factory Set. +# on off on Busy active on J5-19, CD enabled +# +# sw4 Used in conjuction with S4 for comm interface control - Fact 0 +# +# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0 +# +# sw6 ON enables printer BUSY active LOW - Factory Setting +# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses +# +# sw7 ON - steady cursor - Factory Setting +# OFF - blinking cursor +# +# sw8 ON causes selected attribute character to be displayed +# OFF causes SPACE to be displayed instead - Factory Setting +# +# S4 - Interface +# -------------- +# Modem Interface +# S3 S4 S4 S4 S4 +# sw4 sw1 sw2 sw3 sw4 +# --------------------------- +# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and +# Current Loop disabled - Factory Setting +# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect +# disabled +# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and +# Current Loop Disabled +# +# sw5 ON disables dot stretching mode - Factory Setting +# OFF enables dot stretching mode +# sw6 ON enables blanking function +# OFF enables underline function - Factory Setting +# sw7 ON causes NULLS to be displayed as NULLS +# OFF causes NULLS to be displayed as SPACES - Factory Setting +# +# S5 - Word Structure +# ------------------- +# sw1 ON enables BREAK key - Factory Setting +# OFF disables BREAK key +# sw2 ON selects 50Hz monitor refresh rate +# OFF selects 60Hz monitor refresh rate - Factory Setting +# +# Modem Port Selection +# sw3 sw4 sw5 +# --------------- +# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits +# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits +# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set. +# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit +# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits +# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit +# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit +# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit +# +# sw6 ON sends bit 8 a 1 (mark) +# OFF sends bit 8 as 0 (space) - Factory Setting +# sw7 ON selects Block Mode +# OFF selects Conversation Mode - Factory Setting +# sw8 ON selects Full Duplex operation +# OFF selects Half Duplex operation - Factory Setting +# +# S6 - Printer +# ------------ +# sw1, sw2, sw6, sw7 Reserved - Factory 0 +# +# Printer Port Selection +# same as Modem above, bit 8 (when 8 DATA bits) is always = 0 +# +# sw8 ON enables Printer Port +# OFF disables Printer Port - Factory Setting +# +# S7 - Polling Address +# -------------------- +# sw1-7 Establish ASCII character which designates terminal polling address +# ON = logic 0 +# OFF = logic 1 - Factory Setting +# sw8 ON enables Polling Option +# OFF disables Polling Option - Factory Setting +# +# +# On some older adm31s, S4 does not exist, and S5-sw6 is not defined. +# +# This adm31 entry uses underline as the standout mode. +# If the adm31 gives you trouble with standout mode, check the DIP switch in +# position 6, bank @c11, 25% from back end of the circuit board. Should be +# OFF. If there is no such switch, you have an old adm31 and must use oadm31. +# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr) +adm31|lsi adm31 with sw6 set for underline mode:\ + :am:bs:mi:\ + :co#80:li#24:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:\ + :dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:is=\Eu\E0:k0=^A0\r:\ + :k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:k5=^A5\r:k6=^A6\r:\ + :k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:\ + :me=\EG0:nd=^L:se=\EG0:sf=^J:so=\EG1:ue=\EG0:up=^K:us=\EG1: +adm31-old|o31|old adm31:\ + :so=\EG4:ue@:us@:tc=adm31: +# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL +adm36|LSI ADM36:\ + :bs:pt:\ + :kn#4:\ + :if=/usr/share/tabset/vt100:\ + :is=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l:\ + :tc=vt100: +# (adm42: removed obsolete ":ma=^K^P:" -- esr) +adm42|lsi adm42:\ + :am:bs:\ + :co#80:li#24:\ + :al=270\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:im=\Eq:ip=6*:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:mk@:nd=^L:pc=\177:sf=^J:ta=^I:ue@:\ + :up=^K:us@:vs=\EC\E3 \E3(:tc=adm+sgr: +# The following termcap for the Lear Siegler ADM-42 leaves the +# "system line" at the bottom of the screen blank (for those who +# find it distracting otherwise) +adm42-ns|lsi adm-42 with no system line:\ + :al=\EE\EF \011:bt=\EI\EF \011:cd=\EY\EF \011:\ + :ce=\ET\EF \011:cl=\E;\EF \011:cm=\E=%+ %+ \EF \011:\ + :dc=\EW\EF \011:dl=\ER\EF \011:ei=\Er\EF \011:\ + :im=\Eq\EF \011:tc=adm42: +# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985. +# The insert mode of this terminal is commented out because it's broken for our +# purposes in that it will shift the position of every character on the page, +# not just the cursor line! +# From: Michael Driscoll <fenris@lightspeed.net> 10 July 1996 +adm1178|1178|lsi adm1178:\ + :am:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=\ER:do=^J:ho=^^:ip=6*:kb=^H:kd=^J:kl=^H:\ + :le=^H:md=\E(:me=\E):mr=\EG4:nd=^L:nw=^M^J:pc=\177:se=\EG0:\ + :sf=^J:so=\EG4:ta=^I:ue=\EG0:up=^K:us=\EG1:vs=\EC\E3 \E3(: + +#### Prime +# +# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings +# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr. +# Prime merged with ComputerVision in the late 1980s; you can reach them at: +# +# ComputerVision Services +# 500 Old Connecticut Path +# Framingham, Mass. +# + +# Standout mode is dim reverse-video. +pt100|pt200|wren|fenix|prime pt100/pt200:\ + :am:bw:mi:ms:\ + :co#80:it#8:li#24:\ + :DC=\E[%dP:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :al=\E[L\E[t:bt=\E[Z:cd=\E[J\E[r:ce=\E[K\E[t:cl=\E?:\ + :cm=\E0%+!%+!:cr=^M:dc=\E[P:dl=\E[M:do=\ED:ei=\E[4l:\ + :ho=\E$B:im=\E[4h:kb=^H:kd=\E[B:ke=\E[>13l:kh=\E$A:kl=\E[D:\ + :kr=\E[C:ks=\E[>13h:ku=\E[A:le=^H:me=\E[m:mh=\E[2m:nd=\E[C:\ + :nw=^M^J:se=\E[m:sf=^J:so=\E[2;7m:ta=^I:te=:\ + :ti=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\E[1Q:\ + :ue=\E[m:up=\EM:us=\E[4m:vb=\E$\E$P: +pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode:\ + :co#132:\ + :cm=\E[%i%d;%dH:tc=pt100: +pt250|Prime PT250:\ + :se@:so@:tc=pt100: +pt250w|Prime PT250 in 132-column mode:\ + :se@:so@:tc=pt100w: + +#### Qume (qvt) +# +# Qume, Inc. +# 3475-A North 1st Street +# San Jose CA 95134 +# Vox: (800)-457-4447 +# Fax: (408)-473-1510 +# Net: josed@techsupp.wyse.com (Jose D'Oliveira) +# +# Qume was bought by Wyse, but still (as of early 1995) has its own support +# group and production division. +# +# Discontinued Qume models: +# +# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+ +# built to replace them, and a qvt119+ which was a 101+ with available wide +# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations +# and an ANSI-compatible qvt203 that replaced it. Qume started producing +# ANSI-compatible terminals with the qvt323 and qvt61. +# +# Current Qume models (as of February 1995): +# +# All current Qume terminals have ANSI-compatible operation modes. +# Qume is still producing the qvt62, which features emulations for other +# popular lines such as ADDS, and dual-host capabilities. The qvt82 is +# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal +# with many emulations including Wyse370, Wyse 325, etc. Their newest +# model is the qvt520, which is vt420-compatible. +# +# There are some ancient printing Qume terminals under `Daisy Wheel Printers' +# +# If you inherit a Qume without docs, try Ctrl-Shift-Setup to enter its +# setup mode. Shift-s should be a configuration save to NVRAM. + +qvt101|qvt108|qume qvt 101 and QVT 108:\ + :sg#1:tc=qvt101+: + +# This used to have :vs=\E.2: but no :ve: or :vi:. The BSD termcap +# file had :vs=\EM4 \200\200\200:. I've done the safe thing and yanked +# both. The :mr: is from BSD, which also claimed bold=\E( and dim=\E). +# What seems to be going on here is that this entry was designed so that +# the normal highlight is bold and standout is dim plus something else +# (reverse-video maybe? But then, are there two :mr: sequences?) +qvt101+|qvt101p|qume qvt 101 PLUS product:\ + :am:bw:hs:ul:\ + :co#80:li#24:sg#0:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\ + :ct=\E3:dc=\EW:dl=\ER:do=^J:ds=\Eg\Ef\r:ei=:fs=^M:ho=^^:\ + :ic=\EQ:im=:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ + :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\ + :kB=\EI:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:mk@:nd=^L:pf=\EA:po=\E@:se=\E(:sf=^J:\ + :so=\E0P\E):st=\E1:ta=^I:ts=\Eg\Ef:up=^K:vb=\Eb\Ed:ve=\E.4:\ + :tc=adm+sgr: +qvt102|qume qvt 102:\ + :ve=\E.:tc=qvt101: +# (qvt103: added <rmam>/<smam> based on init string -- esr) +qvt103|qume qvt 103:\ + :am:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:bl=^G:cd=50\E[J:ce=3\E[K:cl=50\E[H\E[2J:\ + :cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:\ + :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=2\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m: +qvt103-w|qume qvt103 132 cols:\ + :co#132:li#24:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=qvt103: +qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals:\ + :am:hs:mi:ms:\ + :co#80:li#24:sg#0:ug#0:\ + :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*1:cm=\E=%+ %+ :\ + :cr=^M:ct=\E3:dc=\EW:dl=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:\ + :ho=^^:im=\Eq:is=\EDF\EC\EG0\Er\E(\E%EX:k0=^AI\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:nd=^L:pf=\EA:po=\E@:sf=^J:sr=\EJ:st=\E1:ta=^I:\ + :ts=\Eg\Ef:up=^K:us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2:\ + :tc=adm+sgr: +qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines:\ + :li#25:tc=qvt119+: +qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode:\ + :co#132:\ + :is=\EDF\EC\EG0\Er\E(\E%\EX\En4:tc=qvt119+: +qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25:\ + :li#25:tc=qvt119+: +qvt203|qvt203+|qume qvt 203 Plus:\ + :al=99\E[L:dc=7\E[P:dl=99\E[M:ei=\E[4l:im=\E[4h:ip=7:\ + :k0=\E[29~:k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:\ + :k5=\E[21~:k6=\E[23~:k7=\E[24~:k8=\E[25~:k9=\E[28~:\ + :sf=30\n:tc=qvt103: +qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video):\ + :co#132:li#24:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=qvt203: +# +# Since a command is present for enabling 25 data lines, +# a specific terminfo entry may be generated for the 203. +# If one is desired for the QVT 119 PLUS then 25 lines must +# be selected in the status line (setup line 9). +# +qvt203-25|QVT 203 PLUS with 25 by 80 column mode:\ + :co#80:li#25:\ + :is=\E[=40h\E[?3l:tc=qvt203: +qvt203-25-w|QVT 203 PLUS with 25 by 132 columns:\ + :co#132:li#25:\ + :rs=\E[?3h\E[=40h:tc=qvt203: + +#### Televideo (tvi) +# +# TeleVideo +# 550 East Brokaw Road +# PO Box 49048 95161 +# San Jose CA 95112 +# Vox: (408)-954-8333 +# Fax: (408)-954-0623 +# +# +# These require incredible amounts of padding. +# +# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer +# Televideo terminals are ANSI and PC-ANSI compatible. + +tvi803|televideo 803:\ + :cl=10\E*:tc=tvi950: + +# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86 +# Switch settings are: +# +# S1 1 2 3 4 +# D D D D 9600 +# D D D U 50 +# D D U D 75 +# D D U U 110 +# D U D D 135 +# D U D U 150 +# D U U D 300 +# D U U U 600 +# U D D D 1200 +# U D D U 1800 +# U D U D 2400 +# U D U U 3600 +# U U D D 4800 +# U U D U 7200 +# U U U D 9600 +# U U U U 19200 +# +# S1 5 6 7 8 +# U D X D 7N1 (data bits, parity, stop bits) (X means ignored) +# U D X U 7N2 +# U U D D 7O1 +# U U D U 7O2 +# U U U D 7E1 +# U U U U 7E2 +# D D X D 8N1 +# D D X U 8N2 +# D U D D 8O1 +# D U U U 8E2 +# +# S1 9 Autowrap +# U on +# D off +# +# S1 10 CR/LF +# U do CR/LF when CR received +# D do CR when CR received +# +# S2 1 Mode +# U block +# D conversational +# +# S2 2 Duplex +# U half +# D full +# +# S2 3 Hertz +# U 50 +# D 60 +# +# S2 4 Edit mode +# U local +# D duplex +# +# S2 5 Cursor type +# U underline +# D block +# +# S2 6 Cursor down key +# U send ^J +# D send ^V +# +# S2 7 Screen colour +# U green on black +# D black on green +# +# S2 8 DSR status (pin 6) +# U disconnected +# D connected +# +# S2 9 DCD status (pin 8) +# U disconnected +# D duplex +# +# S2 10 DTR status (pin 20) +# U disconnected +# D duplex +# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:"; added :kh:, :le:, :do:, +# :sf:, <hpa>, <vpa>, :am:, :ms: from SCO entry -- esr) +tvi910|televideo model 910:\ + :am:bs:ms:\ + :co#80:it#8:li#24:sg#1:\ + :bl=^G:bt=\EI:cd=\EY:ce=\ET:ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :\ + :cr=^M:cv=\E[%+ :do=^J:ho=\E=\001\001:\ + :if=/usr/share/tabset/stdcrt:k0=^AI\r:k1=^A@\r:k2=^AA\r:\ + :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:\ + :k9=^AH\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mk@:nd=^L:\ + :sf=^J:ta=^I:up=^K:tc=adm+sgr: +# From: Alan R. Rogers <rogers%albany@csnet-relay> +# as subsequently hacked over by someone at SCO +# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr) +# +# Here are the 910+'s DIP switches (U = up, D = down, X = don't care): +# +# S1 1 2 3 4: +# D D D D 9600 D D D U 50 D D U D 75 D D U U 110 +# D U D D 135 D U D U 150 D U U D 300 D U U U 600 +# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600 +# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200 +# +# S1 5 6 7 8: +# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2 +# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2 +# D U D D 8O1 D U U U 8E2 +# +# S1 9 Autowrap (U = on, D = off) +# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received) +# S2 1 Mode (U = block, D = conversational) +# S2 2 Duplex (U = half, D = full) +# S2 3 Hertz (U = 50, D = 60) +# S2 4 Edit mode (U = local, D = duplex) +# S2 5 Cursor type (U = underline, D = block) +# S2 6 Cursor down key (U = send ^J, D = send ^V) +# S2 7 Screen colour (U = green on black, D = black on green) +# S2 8 DSR status (pin 6) (U = disconnected, D = connected) +# S2 9 DCD status (pin 8) (U = disconnected, D = connected) +# S2 10 DTR status (pin 20) (U = disconnected, D = connected) +# +tvi910+|televideo 910+:\ + :al=33*\EE:dc=\EW:dl=33*\ER:ei=:ho=^^:ic=\EQ:im=:k0=^A@\r:\ + :k1=^AA\r:k2=^AB\r:k3=^AC\r:k4=^AD\r:k5=^AE\r:k6=^AF\r:\ + :k7=^AG\r:k8=^AH\r:k9=^AI\r:ll=\E=7\040:tc=tvi910: + +# (tvi912: removed obsolete ":ma=^K^P^L :", added :vb: and +# :kh: from BRL entry -- esr) +tvi912|tvi914|tvi920|old televideo 912/914/920:\ + :am:bs:ms:pt:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=33*\EE:bl=^G:cd=\Ey:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\ + :ct=\E3:dc=\EW:dl=33*\ER:do=^J:ei=:ho=^^:ic=\EQ:\ + :if=/usr/share/tabset/stdcrt:im=:k0=^AI\r:k1=^A@\r:\ + :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:\ + :k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\ + :nd=^L:se=\Ek:sf=^J:so=\Ej:st=\E1:ta=^I:ue=\Em:up=^K:us=\El:\ + :vb=\Eb\Ed: +# We got some new tvi912c terminals that act really weird on the regular +# termcap, so one of our gurus worked this up. Seems that cursor +# addressing is broken. +tvi912cc|tvi912 at cowell college:\ + :cm@:tc=tvi912c: + +# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C +# From: Benjamin C. W. Sittler +# +# Someone has put a scanned copy of the manual online at: +# http://vt100.net/televideo/912b-om/ +# +# These terminals were produced ca. 1979, and had a 12" monochrome +# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit +# ASCII, and were generally similar to adm3a but with attributes +# (including some with magic cookies), fancy half-duplex mode, and +# different bugs. +# +# Some operations reqire truly incredible amounts of padding. The +# insert_line (:al:) and delete_line (:dl:) operations in particular +# are so slow as to be nearly unusable. +# +# There may or may not have been a separate, earlier series of 912/920 +# terminals (without the "B" and "C" suffix); I have never seen one, +# and the manual only describes the "B" and "C" series. The 912 and 920 +# are quite distinct from the 914 and 924, which were much nicer non- +# magic-cookie terminals similar to the 950. +# +# This is a new description for the following TeleVideo terminals, +# distinguished chiefly by their keyboards: +# +# TVI-912B - very odd layout, no function keys (84 keys) +# TVI-920B - typewriter layout, no function keys (103 keys) +# TVI-912C - very odd layout, function keys F1-F11 (82 keys) +# TVI-920C - typewriter layout, function keys F1-F11 (101 keys) +# +# To choose a setting for the TERM variable, start with the model: +# +# Model || base name +# ----------||----------- +# TVI-912B || tvi912b +# TVI-912C || tvi912c +# TVI-920B || tvi920b +# TVI-920C || tvi920c +# +# Then add a suffix from the following table describing installed options +# and how you'd like to use the terminal: +# +# Use Video | Second | Visual | Magic | Page || feature +# Attributes | Page | Bell | Cookies | Print || suffix +# ------------|--------|--------|---------|-------||--------- +# No | No | N/A | N/A | No || -unk +# No | No | N/A | N/A | Yes || -p +# No | Yes | No | N/A | No || -2p-unk +# No | Yes | No | N/A | Yes || -2p-p +# No | Yes | Yes | N/A | No || -vb-unk +# No | Yes | Yes | N/A | Yes || -vb-p +# Yes | No | N/A | No | N/A || +# Yes | No | N/A | Yes | N/A || -mc +# Yes | Yes | No | No | N/A || -2p +# Yes | Yes | No | Yes | N/A || -2p-mc +# Yes | Yes | Yes | No | N/A || -vb +# Yes | Yes | Yes | Yes | N/A || -vb-mc +# +# So e.g. a model 920 C with second page memory option, visual bell +# and no magic cookies would be tvi920c-vb; a model 912 B without the +# second page memory option and using magic cookies would be +# tvi912b-mc +# +# PADDING +# +# At 9600 baud, the terminal is prone to overflow its input buffer +# during complex operations (insert/delete +# character/line/screen/page), and it does not signal this over the +# RS232 cable. The typical symptom of an overrun is that the terminal +# starts beeping, and output becomes garbled. +# +# The padding delays in this terminfo were derived using tack(1) +# running on a Linux box connected to a TVI-920C with a later-model +# (A49C1-style) ROM running at 9600 baud, so your mileage may +# vary. The numbers below seem to give the terminal enough time so +# that it doesn't overflow its input buffer and start losing +# characters. +# +# KEYS +# +# If you want to use the FUNCT key on a tvi912[bc], use the +# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from +# the following table (these also work on the 920 series): +# +# Unshifted Function Keys: +# +# Key | capname|| Equivalent +# -----|--------||------------ +# F1 | :k1: || FUNCT + @ +# F2 | :k2: || FUNCT + A +# F3 | :k3: || FUNCT + B +# F4 | :k4: || FUNCT + C +# F5 | :k5: || FUNCT + D +# F6 | :k6: || FUNCT + E +# F7 | :k7: || FUNCT + F +# F8 | :k8: || FUNCT + G +# F9 | :k9: || FUNCT + H +# F10 | <kf10> || FUNCT + I +# F11 | <kf11> || FUNCT + J +# +# Shifted Function Keys: +# +# SHIFT + Key | capname|| Equivalent +# -------------|--------||------------ +# SHIFT + F1 | <kf12> || FUNCT + ` +# SHIFT + F2 | <kf13> || FUNCT + a +# SHIFT + F3 | <kf14> || FUNCT + b +# SHIFT + F4 | <kf15> || FUNCT + c +# SHIFT + F5 | <kf16> || FUNCT + d +# SHIFT + F6 | <kf17> || FUNCT + e +# SHIFT + F7 | <kf18> || FUNCT + f +# SHIFT + F8 | <kf19> || FUNCT + g +# SHIFT + F9 | <kf20> || FUNCT + h +# SHIFT + F10 | <kf21> || FUNCT + i +# SHIFT + F11 | <kf22> || FUNCT + j +# +# PORTS AND SWITCH SETTINGS +# +# Here are the switch settings for the TVI-912B/TVI-920B and +# TVI-912C/TVI-920C: +# +# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down: +# 2: 9600 3: 4800 4: 2400 5: 1200 +# 6: 600 7: 300 8: 150 9: 75 +# 10: 110 +# +# S2 UART/Terminal options: +# Up Down +# 1: Not used Not allowed +# 2: Alternate character set Standard character set +# 3: Full duplex Half duplex +# 4: 50 Hz refresh 60 Hz refresh +# 5: No parity Send parity +# 6: 2 stop bits 1 stop bit +# 7: 8 data bits 7 data bits +# 8: Not used Not allowed on Rev E or lower +# 9: Even parity Odd parity +# 10: Steady cursor Blinking cursor +# (On Rev E or lower, use W25 instead of switch 10.) +# +# S5 UART/Terminal options: +# Open Closed +# 1: P3-6 Not connected DSR received on P3-6 +# 2: P3-8 Not connected DCD received on P3-8 +# +# 3 Open, 4 Open: P3-20 Not connected +# 3 Open, 4 Closed: DTR on when terminal is on +# 3 Closed, 4 Open: DTR is connected to RTS +# 3 Closed, 4 Closed: Not allowed +# +# 5 Closed: HDX printer (hardware control) Rev. K with extension port off, +# all data transmitted out of the modem port (P3) will also be +# transmitted out of the printer port (P4). +# +# 6 Open, 7 Open: Not allowed +# 6 Open, 7 Closed: 20ma current loop input +# 6 Closed, 7 Open: RS232 input +# 6 Closed, 7 Closed: Not allowed +# +# Jumper options: +# If the jumper is installed, the effect will occur (the next time the terminal +# is switched on). +# +# S4/W31: Enables automatic LF upon receipt of CR from +# remote or keyboard. +# S4/W32: Enables transmission of EOT at the end of Send. If not +# installed, a carriage return is sent. +# S4/W33: Disables automatic carriage return in column 80. +# S4/W34: Selects Page Print Mode as initial condition. If not +# installed, Extension Mode is selected. +# +# NON-STANDARD CAPABILITIES +# +# Sending <u9> or <u7> returns a cursor position report in the format +# YX\r, where Y and X are as in :cm:. This format is described in +# <u8> and <u6>, but it's not clear how one should write an +# appropriate scanf string, since we need to subtract %' ' from the +# character after reading it. The <u9> capability is used by tack(1) +# to synchronize during padding tests, and seems to work for that +# purpose. +# +# This description also includes the obsolete termcap capabilities +# has_hardware_tabs (:pt:) and backspaces_with_bs (:bs:). +# +# FEATURES NOT YET DESCRIBED IN THIS TERMINFO +# +# The FUNCT modifier actually works with every normal key by sending +# ^AX\r, where X is the sequence normally sent by that key. This is a +# sort of meta key not currently describable in terminfo. +# +# There are quite a few other keys (especially on the 920 models,) but +# they are for the most part only useful in block mode. +# +# These terminals have lots of forms manipulation features, mainly +# useful in block mode, including "clear X to nulls" (vs. "clear X to +# spaces"; nulls are sentinels for "send X" operations); "send X" +# operations for uploading all or part of the screen; and block-mode +# editing keys (they don't send escape sequences, but manipulate video +# memory directly). Block mode is used for local editing, and protect +# mode (in conjunction with the "write protect" attribute, +# a.k.a. half-intensity outside of protect mode) is used to control +# which parts of the screen are edited/sent/printed (by <mc0>). +# +# There are at least two major families of ROM, "early" and +# A49B1/A49C1; the major difference seems to be that the latter ROMs +# support a few extra escape sequences for manipulating the off-screen +# memory page, and for sending whole pages back to the host (mainly +# useful in block mode.) The descriptions in this file don't use any +# of those sequences: set cursor position including page (\E-PYX, +# where P is \s for page 0 and ! for page 1 [actually only the LSB of +# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are +# as in :cm:); read cursor position (\E/), which is analogous to <u9> +# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX +# are as in :cm:, and some "send page" features mainly useful for +# forms manipulation. +# +# The keyboard enable (\E") and disable (\E#) sequences are unused, +# except that a terminal reset (:is:) enables the keyboard. +# +# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew) +# enabled in :is:, but auto-flip is very jarring so we don't use it. +# +# BUGS +# +# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed +# sequences (I infer that in some TeleVideo terminal they may invert +# and uninvert the display) so the :vb: sequence given here is a +# cheesy page-flip instead. +# +# The back_tab (:bt:) sequence (\EI) doesn't work according to +# tack(1), so it is not included in the descriptions below. +# +# It's not clear whether auto_left_margin (:bw:) flag should be set +# for these terminals; tack says yes, so it is set here, but this +# differs from other descriptions I've seen. +# +# Extension print mode (<mc5>) echoes all characters to the printer +# port [in addition to displaying them] except for the page print mode +# sequence (<mc4>); this is a slight violation of the terminfo +# definition for <mc5> but I don't expect it to cause problems. We +# reset to page print mode in <rs1> since it may have been enabled +# accidentally. +# +# The descriptions with plus signs (+) are building blocks. + +tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes):\ + :am:bs:bw:pt:\ + :co#80:it#8:li#24:\ + :@8=^M:al=100\EE:bl=^G:cd=10\Ey:ce=15\ET:cl=50\032:\ + :cm=\E=%+ %+ :cr=^M:ct=\E3:dc=30\EW:dl=100\ER:do=^J:ei=:\ + :ho=^^:ic=30\EQ:if=/usr/share/tabset/stdcrt:im=:\ + :is=\Ew\EA\E'\E"\E(:kD=\177:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:\ + :le=^H:nd=^L:pf=\EA:po=\E@:r1=\Ek\010\Em\010\Eq\032:\ + :sf=10\n:st=\E1:ta=^I:u6=%.%.\r:u7=\E?:u8=%.%.\r:u9=\E?:\ + :up=^K: + +# This isn't included in the basic capabilities because it is +# typically unusable in combination with the full range of video +# attributes, since the magic cookie attributes turn into ASCII +# control characters, and the half-intensity ("protected") attribute +# converts all affected characters to spaces. + +tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support:\ + :ps=\EP: + +# This uses half-intensity mode (:mh:) for standout (:so:), and +# exposes no other attributes (half-intensity is the only attribute +# that does not generate a magic cookie.) + +tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support:\ + :ms:\ + :me=\E(:mh=\E):se=\E(:so=\E): + +# Full magic-cookie attribute support, with half-intensity reverse +# video for standout. Note that we add a space in the :mh: sequence +# to give a consistent magic-cookie count. Also note that :sa: uses +# backspacing (in the TVI-supported order) to apply all requested +# attributes with only a single magic cookie. + +tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support:\ + :sg#1:ug#1:\ + :mb=\E\136:me=\E(\Ek\010\Em\010\Eq:mh=\E)\040:mk=\E_:\ + :mr=\Ej:se=\E(\Ek:so=\E)\Ej:ue=\Em:us=\El: + +# This uses the second page memory option to save & restore screen +# contents. If your terminal is missing the option, this description +# should still work, but that has not been tested. + +tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support:\ + :te=\032\EK\E=7\040:\ + :ti=50\EK\032\E(\Ek\010\Em\010\Eq\032:vb=\EK\EK: + +# This simulates flashing by briefly toggling to the other page +# (kludge!) + +tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support:\ + :bl=\EK\EK:tc=tvi912b+2p: + +# Function keys (<kf12> .. <kf22> are shifted :k1: .. <kf11>) + +tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support:\ + :F1=^AJ\r:F2=^A`\r:F3=^Aa\r:F4=^Ab\r:F5=^Ac\r:F6=^Ad\r:\ + :F7=^Ae\r:F8=^Af\r:F9=^Ag\r:FA=^Ah\r:FB=^Ai\r:FC=^Aj\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r: + +# Combinations of the basic building blocks + +tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes):\ + :tc=tvi912b+2p:tc=tvi912b-unk: + +tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes):\ + :tc=tvi912b+vb:tc=tvi912b-unk: + +tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print):\ + :tc=tvi912b+printer:tc=tvi912b-unk: + +tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print):\ + :tc=tvi912b+2p:tc=tvi912b+printer:tc=tvi912b-unk: + +tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print):\ + :tc=tvi912b+vb:tc=tvi912b+printer:tc=tvi912b-unk: + +tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute):\ + :tc=tvi912b+2p:tc=tvi912b+dim:tc=tvi912b-unk: + +tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies):\ + :tc=tvi912b+2p:tc=tvi912b+mc:tc=tvi912b-unk: + +tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute):\ + :tc=tvi912b+vb:tc=tvi912b+dim:tc=tvi912b-unk: + +tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies):\ + :tc=tvi912b+vb:tc=tvi912b+mc:tc=tvi912b-unk: + +tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute):\ + :tc=tvi912b+dim:tc=tvi912b-unk: + +tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies):\ + :tc=tvi912b+mc:tc=tvi912b-unk: + +tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes):\ + :tc=tvi920b+fn:tc=tvi912b-unk: + +tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes):\ + :tc=tvi920b+fn:tc=tvi912b+2p:tc=tvi912b-unk: + +tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes):\ + :tc=tvi920b+fn:tc=tvi912b+vb:tc=tvi912b-unk: + +tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print):\ + :tc=tvi920b+fn:tc=tvi912b+printer:tc=tvi912b-unk: + +tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print):\ + :tc=tvi920b+fn:tc=tvi912b+2p:tc=tvi912b+printer:\ + :tc=tvi912b-unk: + +tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print):\ + :tc=tvi920b+fn:tc=tvi912b+vb:tc=tvi912b+printer:\ + :tc=tvi912b-unk: + +tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute):\ + :tc=tvi920b+fn:tc=tvi912b+2p:tc=tvi912b+dim:\ + :tc=tvi912b-unk: + +tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies):\ + :tc=tvi920b+fn:tc=tvi912b+2p:tc=tvi912b+mc:\ + :tc=tvi912b-unk: + +tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute):\ + :tc=tvi920b+fn:tc=tvi912b+vb:tc=tvi912b+dim:\ + :tc=tvi912b-unk: + +tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies):\ + :tc=tvi920b+fn:tc=tvi912b+vb:tc=tvi912b+mc:\ + :tc=tvi912b-unk: + +tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute):\ + :tc=tvi920b+fn:tc=tvi912b+dim:tc=tvi912b-unk: + +tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies):\ + :tc=tvi920b+fn:tc=tvi912b+mc:tc=tvi912b-unk: + +# Televideo 921 and variants +# From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995 +# (tvi921: removed :ko=bt: before translation, I see no backtab cap; +# also added empty <acsc> to suppress tic warning -- esr) +tvi921|televideo model 921 with sysline same as page & real vi function:\ + :am:bs:hs:pt:xn:xs:\ + :co#80:li#24:sg#0:\ + :ac=:ae=\E%%:al=\EE:as=\E$:cd=\EY:ce=\ET:cl=^Z:\ + :cm=3\E=%+ %+ :cr=^M:dc=\EW:dl=1*\ER:do=^V:ds=\Ef\r\Eg:ei=:\ + :fs=\Eg:ho=^^:ic=\EQ:if=/usr/share/tabset/stdcrt:im=:\ + :is=\El\E"\EF1\E.3\017\EA\E<:kA=\EE:kC=^Z:kD=\EW:kE=\ET:\ + :kI=\EQ:kL=1*\ER:kS=\EY:kb=^H:kd=^V:kl=^H:kr=^L:ku=^K:le=^H:\ + :mk@:nd=^L:nw=^M^J:sf=^J:ta=^I:ts=\Ef\EG0:up=^K:ve=\E.3:\ + :vs=\E.2:tc=adm+sgr: +# without the beeper +# (tvi92B: removed :ko=bt: before translation, I see no backtab cap; +# also added empty <acsc> to suppress tic warning -- esr) +tvi92B|televideo model 921 with sysline same as page & real vi function & no beeper:\ + :am:hs:xn:xs:\ + :co#80:li#24:sg#0:\ + :ac=:ae=\E%%:al=\EE:as=\E$:cd=\EY:ce=\ET:cl=^Z:\ + :cm=3\E=%+ %+ :cr=^M:dc=\EW:dl=1*\ER:do=^V:ds=\Ef\r\Eg:ei=:\ + :fs=\Eg:ho=^^:ic=\EQ:if=/usr/share/tabset/stdcrt:im=:\ + :is=\El\E"\EF1\E.3\017\EA\E<:kA=\EE:kC=^Z:kD=\EW:kE=\ET:\ + :kI=\EQ:kL=1*\ER:kS=\EY:kb=^H:kd=^V:kl=^H:kr=^L:ku=^K:le=^H:\ + :mk@:nd=^L:nw=^M^J:sf=^J:ta=^I:ts=\Ef\EG0:up=^K:vb=\Eb\Ed:\ + :ve=\E.3:vs=\E.2:tc=adm+sgr: +# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr) +tvi92D|tvi92B with DTR instead of XON/XOFF & better padding:\ + :al=2*\EE:dl=2*\ER:is=\El\E"\EF1\E.3\016\EA\E<:kA=2*\EE:\ + :kL=2*\ER:tc=tvi92B: + +# (tvi924: This used to have :ds=\Es0:, :fs=\031:. I put the new strings +# in from a BSD termcap file because it looks like they do something the +# old ones skip -- esr) +tvi924|televideo tvi924:\ + :am:bw:hs:in:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#0:ws#80:\ + :F1=^AK\r:F2=^AL\r:F3=^AM\r:F4=^AN\r:F5=^AO\r:al=\EE:bl=^G:\ + :bt=\EI:cd=\Ey:ce=\Et:cl=\E*0:cm=\E=%+ %+ :cr=^M:\ + :cs=\E_%+ %+ :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Es0\Ef\031:\ + :ei=:fs=\031\Es1:ho=^^:\ + :i1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0:ic=\EQ:\ + :if=/usr/share/tabset/stdcrt:im=:k0=^A@\r:k1=^AA\r:\ + :k2=^AB\r:k3=^AC\r:k4=^AD\r:k5=^AE\r:k6=^AF\r:k7=^AG\r:\ + :k8=^AH\r:k9=^AI\r:k;=^AJ\r:kA=\EE:kC=\E*0:kD=\EW:kE=\Et:\ + :kI=\EQ:kL=\ER:kS=\Ey:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:\ + :l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:l8=F9:l9=F10:\ + :la=F11:le=^H:mb=\EG2:mk@:nd=^L:sf=^J:sr=\Ej:st=\E1:ta=^I:\ + :ts=\Ef:up=^K:vb=\Eb\Ed:ve=\E.3:vi=\E.0:vs=\E.1:tc=adm+sgr: + +# TVI925 DIP switches. In each of these, D = Down and U = Up, +# +# Here are the settings for the external (baud) switches (S1): +# +# Position Baud +# 7 8 9 10 [Printer] +# 1 2 3 4 [Main RS232] +# ----------------------------------------------------- +# D D D D 9600 +# D D D U 50 +# D D U D 75 +# D D U U 110 +# D U D D 135 +# D U D U 150 +# D U U D 300 +# D U U U 600 +# U D D D 1200 +# U D D U 1800 +# U D U D 2400 +# U D U U 3600 +# U U D D 4800 +# U U D U 7200 +# U U U D 9600 +# U U U U 19200 +# +# +# Settings for word length and stop-bits (S1) +# +# Position Description +# 5 6 +# --------------------------- +# U - 7-bit word +# D - 8-bit word +# - U 2 stop bits +# - D 1 stop bit +# +# +# S2 (external) settings +# +# Position Up Dn Description +# -------------------------------------------- +# 1 X Local edit +# X Duplex edit (transmit editing keys) +# -------------------------------------------- +# 2 X 912/920 emulation +# X 925 +# -------------------------------------------- +# 3 X +# 4 X No parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Odd parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Even parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Mark parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Space parity +# 5 X +# -------------------------------------------- +# 6 X White on black display +# X Black on white display +# -------------------------------------------- +# 7 X Half Duplex +# 8 X +# -------------------------------------------- +# 7 X Full Duplex +# 8 X +# -------------------------------------------- +# 7 X Block mode +# 8 X +# -------------------------------------------- +# 9 X 50 Hz +# X 60 Hz +# -------------------------------------------- +# 10 X CR/LF (Auto LF) +# X CR only +# +# S3 (internal switch) settings: +# +# Position Up Dn Description +# -------------------------------------------- +# 1 X Keyclick off +# X Keyclick on +# -------------------------------------------- +# 2 X English +# 3 X +# -------------------------------------------- +# 2 X German +# 3 X +# -------------------------------------------- +# 2 X French +# 3 X +# -------------------------------------------- +# 2 X Spanish +# 3 X +# -------------------------------------------- +# 4 X Blinking block cursor +# 5 X +# -------------------------------------------- +# 4 X Blinking underline cursor +# 5 X +# -------------------------------------------- +# 4 X Steady block cursor +# 5 X +# -------------------------------------------- +# 4 X Steady underline cursor +# 5 X +# -------------------------------------------- +# 6 X Screen blanking timer (ON) +# X Screen blanking timer (OFF) +# -------------------------------------------- +# 7 X Page attributes +# X Line attributes +# -------------------------------------------- +# 8 X DCD disconnected +# X DCD connected +# -------------------------------------------- +# 9 X DSR disconnected +# X DSR connected +# -------------------------------------------- +# 10 X DTR Disconnected +# X DTR connected +# -------------------------------------------- +# +# (tvi925: BSD has :cl=\E*:. I got :is: and :sr: from there -- esr) +tvi925|televideo 925:\ + :am:bs:bw:hs:ul:\ + :co#80:li#24:sg#1:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\ + :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Eh:ei=:fs=^M\Eg:ho=^^:ic=\EQ:\ + :im=:is=\El\E":k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:\ + :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ + :kA=\EE:kC=^Z:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mk@:nd=^L:sf=^J:sr=\Ej:st=\E1:\ + :ta=^I:ts=\Eh\Ef:up=^K:vb=\Eb\Ed:ve=\E.4:vs=\E.2:\ + :tc=adm+sgr: +# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL +# to avoid "magic cookie" standout glitch: +tvi925-hi|TeleVideo Model 925 with half intensity standout mode:\ + :sg@:\ + :kb=^H:kd=^J:kl=^H:se=\E(:so=\E):tc=tvi925: + +# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993 +# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82 +# for additional capabilities, +# The following tvi descriptions from B:pjphar and virus!mike +# is for all 950s. It sets the following attributes: +# full duplex (\EDF) write protect off (\E() +# conversation mode (\EC) graphics mode off (\E%) +# white on black (\Ed) auto page flip off (\Ew) +# turn off status line (\Eg) clear status line (\Ef\r) +# normal video (\E0) monitor mode off (\EX or \Eu) +# edit mode (\Er) load blank char to space (\Ee\040) +# line edit mode (\EO) enable buffer control (^O) +# protect mode off (\E\047) duplex edit keys (\El) +# program unshifted send key to send line all (\E016) +# program shifted send key to send line unprotected (\E004) +# set the following to nulls: +# field delimiter (\Ex0\200\200) +# line delimiter (\Ex1\200\200) +# start-protected field delimiter (\Ex2\200\200) +# end-protected field delimiter (\Ex3\200\200) +# set end of text delimiter to carriage return/null (\Ex4\r\200) +# +# TVI 950 Switch Setting Reference Charts +# +# TABLE 1: +# +# S1 1 2 3 4 5 6 7 8 9 10 +# +-----------------------+-----+-----+-----------------------+ +# | Computer Baud Rate |Data |Stop | Printer Baud Rate | +# | |Bits |Bits | | +# +------+-----------------------+-----+-----+-----------------------+ +# | Up | See | 7 | 2 | See | +# +------+-----------------------+-----+-----+-----------------------+ +# | Down | TABLE 2 | 8 | 1 | TABLE 2 | +# +------+-----------------------+-----+-----+-----------------------+ +# +# +# S2 1 2 3 4 5 6 7 8 9 10 +# +-----+-----+-----------------+-----+-----------+-----+-----+ +# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click| +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# | Up | Dplx|Blink| See |GonBk| See | 60 | Off | +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On | +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# +# TABLE 2: +# +# +-----------+-----+-----+-----+-----+-----------+ +# | Display | 1 | 2 | 3 | 4 | Baud | +# +-----------+-----+-----+-----+-----+ | +# | Printer | 7 | 8 | 9 | 10 | Rate | +# +-----------+-----+-----+-----+-----+-----------+ +# | D | D | D | D | 9600 | +# | U | D | D | D | 50 | +# | D | U | D | D | 75 | +# | U | U | D | D | 110 | +# | D | D | U | D | 135 | +# | U | D | U | D | 150 | +# | D | U | U | D | 300 | +# | U | U | U | D | 600 | +# | D | D | D | U | 1200 | +# | U | D | D | U | 1800 | +# | D | U | D | U | 2400 | +# | U | U | D | U | 3600 | +# | D | D | U | U | 4800 | +# | U | D | U | U | 7200 | +# | D | U | U | U | 9600 | +# | U | U | U | U | 19200 | +# +-----+-----+-----+-----+-----------+ +# +# TABLE 3: +# +-----+-----+-----+-----------+ +# | 3 | 4 | 5 | Parity | +# +-----+-----+-----+-----------+ +# | X | X | D | None | +# | D | D | U | Odd | +# | D | U | U | Even | +# | U | D | U | Mark | +# | U | U | U | Space | +# +-----+-----+-----+-----------+ +# X = don't care +# +# CHART: +# +-----+-----+-----------------+ +# | 7 | 8 | Communication | +# +-----+-----+-----------------+ +# | D | D | Half Duplex | +# | D | U | Full Duplex | +# | U | D | Block | +# | U | U | Local | +# +-----+-----+-----------------+ +# +# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:". +# I also inserted :ic: and :kI:; the :ko: string indicated that :IC: +# should be present and all tvi native modes use the same string for this. +# Finally, note that BSD has cud1=^V. -- esr) +tvi950|televideo 950:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:\ + :ac=b\011c\014d\re\ni\013:ae=^X:al=\EE:as=^U:bl=^G:bt=\EI:\ + :cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :cr=^M:ct=\E3:dc=\EW:\ + :dl=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:ic=\EQ:im=\Eq:\ + :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\Ef\r:\ + :k0=^A0\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ + :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kB=\EI:kC=\E*:\ + :kD=\EW:kE=\Et:kI=\EQ:kL=\ER:kS=\Ey:kb=^H:kd=^V:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:mk@:nd=^L:pf=\Ea:po=\E`:sf=^J:sr=\Ej:\ + :st=\E1:ta=^I:ts=\Eg\Ef:up=^K:vb=\Eb\Ed:tc=adm+sgr: +# +# is for 950 with two pages adds the following: +# set 48 line page (\E\\2) +# place cursor at page 0, line 24, column 1 (\E-07 ) +# set local (no send) edit keys (\Ek) +# +# two page 950 adds the following: +# when entering ex, set 24 line page (\E\\1) +# when exiting ex, reset 48 line page (\E\\2) +# place cursor at 0,24,1 (\E-07 ) +# set duplex (send) edit keys (\El) when entering vi +# set local (no send) edit keys (\Ek) when exiting vi +# +tvi950-2p|televideo950 w/2 pages:\ + :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\2\E-07 \011:\ + :ke=\Ek:ks=\El:te=\E\\2\E-07\040:ti=\E\\1\E-07\040:\ + :tc=tvi950: +# +# is for 950 with four pages adds the following: +# set 96 line page (\E\\3) +# place cursor at page 0, line 24, column 1 (\E-07 ) +# +# four page 950 adds the following: +# when entering ex, set 24 line page (\E\\1) +# when exiting ex, reset 96 line page (\E\\3) +# place cursor at 0,24,1 (\E-07 ) +# +tvi950-4p|televideo950 w/4 pages:\ + :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\3\E-07 \011:\ + :ke=\Ek:ks=\El:te=\E\\3\E-07\040:ti=\E\\1\E-07\040:\ + :tc=tvi950: +# +# :is: for reverse video 950 changes the following: +# set reverse video (\Ed) +# +# set vb accordingly (\Ed ...delay... \Eb) +# +tvi950-rv|televideo950 rev video:\ + :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200:\ + :vb=\Ed\Eb:tc=tvi950: + +# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv +tvi950-rv-2p|televideo950 rev video w/2 pages:\ + :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\2\E-07\040:\ + :ke=\Ek:ks=\El:te=\E\\2\E-07\040:ti=\E\\1\E-07\040:\ + :vb=\Ed\Eb:tc=tvi950: + +# tvi950-rv uses the appropriate entries from 950-4p and 950-rv +tvi950-rv-4p|televideo950 rev video w/4 pages:\ + :is=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\3\E-07\040:\ + :ke=\Ek:ks=\El:te=\E\\3\E-07\040:ti=\E\\1\E-07\040:\ + :vb=\Ed\Eb:tc=tvi950: +# From: Andreas Stolcke <stolcke@icsi.berkeley.edu> +# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H"; +# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in +# the :rs: string, inserted the :IC: implied by the termcap :ko: string. Note +# the :ko: string had :cl: in it, which means that one of the original +# :cl=\E*:, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what +# the 950 has. Finally, corrected the <kel> string to match the 950 and what +# ko implies -- esr) +# If the BSD termcap file was right, :cm=\E=%p1%{32}%+%c%p2%{32}%+%c: would +# also work. +tvi955|televideo 955:\ + :5i:bs:ms@:\ + :it#8:sg@:\ + :RA=\E[=7l:RX=^N:SA=\E[=7h:SX=^O:\ + :ac=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ:ae=\E%%:as=\E$:\ + :cm=\E[%i%d;%dH:do=^V:is=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El:\ + :kM=\EQ:kN=\EK:kP=\EJ:kT=\E1:ka=\E3:kt=\E2:mb=\EG2:\ + :me=\EG0\E[=5l:mh=\E[=5h:mk=\EG1:ps=\EP:\ + :r1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\200\E0p\E4\200\Ef\r:\ + :sf@:ve=\E.2:vi=\E.0:vs=\E.1:tc=tvi950: +tvi955-w|955-w|televideo955 w/132 cols:\ + :co#132:\ + :is=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El:tc=tvi955: +# use half-intensity as normal mode, full intensity as :md: +tvi955-hb|955-hb|televideo955 half-bright:\ + :is=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El:md=\E[=5l:\ + :me=\EG0\E[=5h:mh@:tc=tvi955: +# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin +# (tvi970: removed ":sg#0:"; removed :se:=\E[m, :ue:=\E[m; +# added :am:/:cs:/:ho:/<hpa>/<vpa>/:ti:/:te: from BRL. +# According to BRL we could have :ke:=\E>, :ks:=\E= but I'm not sure what +# it does to the function keys. I deduced <rmam>/<smam>. +# also added empty <acsc> to suppress tic warning, -- esr) +tvi970|televideo 970:\ + :am:bs:da:db:mi:ms:pt:\ + :co#80:it#8:li#24:\ + :RA=\E[?7h:SA=\E[?7l:ac=:ae=\E(B:al=\E[L:as=\E(B:bt=\E[Z:\ + :cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:cm=\E[%i%d;%df:\ + :cs=\E[%i%d;%dr:cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=\ED:\ + :ds=\Eg\Ef\r:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J:k1=\E?a:\ + :k2=\E?b:k3=\E?c:k4=\E?d:k5=\E?e:k6=\E?f:k7=\E?g:k8=\E?h:\ + :k9=\E?i:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:sr=\EM:ta=^I:te=:\ + :ti=\E[?20l\E[?7h\E[1Q:ue=\E[m:up=\EM:us=\E[4m:\ + :vb=\E[5m\E[m:vs=\E[1Q: +tvi970-vb|televideo 970 with visual bell:\ + :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l:\ + :tc=tvi970: +tvi970-2p|televideo 970 with using 2 pages of memory:\ + :te=\E[H\E[J\E[V:ti=\E[U\E[?20l\E[?7h\E[1Q:tc=tvi970: +# Works with vi and rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 chars +# per line (rather than 40), Esc K chooses the normal character set. Not sure +# padding is needed, but adapted from the tvi920c termcap. The :so: and +# :us: strings are klutzy, but at least use no screen space. +# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>, +# its absence means <smam>=\Ev isn't safe to use. -- esr) +# From: Gene Rochlin <armsis@amber.berkeley.edu> 9/19/84. +# The :cd:/:k0:/:k1:/:kh:/<mc4>, and <mc5> caps are from BRL, which says: +# F1 and F2 should be programmed as ^A and ^B; required for UNIFY. +tvipt|televideo personal terminal:\ + :am:bs:\ + :co#80:li#24:\ + :al=5*\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :dl=5*\ER:\ + :ho=^^:if=/usr/share/tabset/stdcrt:is=\Ev\Eu\EK:k0=^A:\ + :k1=^B:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:pf=^T:\ + :po=^R:se=\EF:so=\EG1@A\EH:ue=\EF:up=^K:us=\EG1B@\EH: +# From: Nathan Peterson <nathan@sco.com>, 03 Sep 1996 +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +tvi9065|televideo 9065:\ + :am:bw:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#25:lm#0:ma#4:vt#0:ws#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:al=\EE:\ + :bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E3:dc=\EW:dl=\ER:dm=\Er:do=^V:\ + :ds=\E_30\r:ec=\E[%d@:ed=\200:ei=\Er:fs=^M:ho=^^:\ + :i1=\E"\E%\E'\E(\EG@\EO\EX\E[=5l\E[=6l\E[=7h\Ed\Er:\ + :i2=\E<\E[=4l\E[=8h:if=/usr/share/tabset/stdcrt:im=\Eq:\ + :ip=3:is=\EF2\EG0\E\\L:k1=^A@\r:k2=^AA\r:k3=^AB\r:\ + :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ + :kD=\EW:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\ + :ll=\E[25;1H:mb=\EG2:md=\EG,:me=\EG0\E%:mh=\EGp:mr=\EG4:\ + :nd=^L:nw=^M^J:rp=\E[%r%db%.:se=\EG0:sf=^J:so=\EGt:sr=\Ej:\ + :st=\E1:ta=^I:te=\E.3\Er\E[1;25r\E[25;0H:ti=\E.2:\ + :ts=\E[4;1v\E_30:uc=\EG8\EG0:ue=\EG0:up=^K:us=\EG8:\ + :vb=\Eb\Ed:ve=\E.3:vi=\E.0:vs=\E.2: + +#### Visual (vi) +# +# In September 1993, Visual Technology of Westboro, Massachusetts, +# merged with White Pine Software of Nashua, New Hampshire. +# +# White Pine Software may be contacted at +1 603/886-9050. +# Or visit White Pine on the World Wide Web at URL http://www.wpine.com. +# + +# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs> +# Recently I hacked together the following termcap for Visual +# Technology's Visual 50 terminal. It's a slight modification of +# the vt52 termcap. +# It's intended to run when the Visual 50 is in vt52 emulation mode +# (I know what you're thinking; if it's emulating a vt52, then why +# another termcap? Well, it turns out that the Visual 50 can handle +# :dl: and db(?) among other things, which the vt52 can't) +# The termcap works OK for the most part. The only problem is on +# character inserts. The whole line gets painfully redrawn for each +# character typed. Any suggestions? +# Beau's entry is combined with the vi50 entry from University of Wisconsin. +# Note especially the :al: function. :k4:-:k6: are really l4-l6 in +# disguise; :k7:-:k9: are really l1-l3. +vi50|visual 50:\ + :am:bs:da:db:ms:pt:\ + :co#80:it#8:li#24:\ + :al=\EL:bl=^G:bt=4\Ez:cd=\EJ:ce=16\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :cr=^M:dl=3*\EM:do=\EB:ho=\EH:k1=\EP:k2=\EQ:\ + :k3=\ER:k4=\EV:k5=\EE:k6=\E]:k7=\EL:k8=\Ev:k9=\EM:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:nl=^J:\ + :nw=^M^J:se=\ET:sf=^J:so=\EU:sr=\EI:ta=^I:ue=\EW:up=\EA:\ + :us=\ES: +# this one was BSD & SCO's vi50 +vi50adm|visual 50 in adm3a mode:\ + :am:ms:\ + :co#80:it#8:li#24:\ + :al=\EL:bl=^G:cd=\Ek:ce=\EK:cl=^Z:cm=\E=%+ %+ :cr=^M:dl=\EM:\ + :do=^J:ho=\EH:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:\ + :nd=^L:se=\ET:sf=^J:so=\EU:ta=^I:up=^K: +# From: Jeff Siegal <jbs@quiotix.com> +vi55|Visual 55:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :al=\EL:cd=\EJ:ce=\EK:cl=\Ev:cm=\EY%+ %+ :cs=\E_%+A%+A:\ + :dc=\Ew:dl=\EM:do=^J:ei=\Eb:ho=\EH:im=\Ea:\ + :is=\Ev\E_AX\Eb\EW\E9P\ET:kb=^H:kd=\EB:kl=\ED:kr=\EC:\ + :ku=\EA:le=^H:nd=\EC:se=\ET:so=\EU:sr=\EI:ta=^I:up=\EA: + +# Visual 200 from BRL +# The following switch settings are assumed for normal operation: +# FULL_DUPLEX SCROLL CR +# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE +# Other switches may be set for operator convenience or communication +# requirements. +# Character insertion is kludged in order to get around the "beep" misfeature. +# (This cap is commented out because :im:/:ei: is more efficient -- esr) +# Supposedly "4*" delays should be used for :al:, :cd:, :cl:, :dc:, +# and :dl: strings, but we seem to get along fine without them. +vi200|visual 200:\ + :am:bs:mi:ms:pt:\ + :co#80:it#8:kn#10:li#24:\ + :ac=:ae=\EG:al=\EL:as=\EF:bl=^G:bt=\Ez:cd=\Ey:ce=\Ex:cl=\Ev:\ + :cm=\EY%+ %+ :cr=^M:ct=\Eg:dc=\EO:dl=\EM:do=^J:ho=\EH:\ + :k0=\E?p:k1=\E?q:k2=\E?r:k3=\E?s:k4=\E?t:k5=\E?u:k6=\E?v:\ + :k7=\E?w:k8=\E?x:k9=\E?y:kA=\EL:kC=\Ev:kD=\EO:kE=\Et:kI=\Ei:\ + :kL=\EM:kM=\Ej:kS=\EJ:kT=\E1:kb=^H:kd=\EB:ke=\E>:kh=\EH:\ + :kl=\ED:kr=\EC:ks=\E=:kt=\E2:ku=\EA:le=^H:me=\E3\Eb:mh=\E4:\ + :mk=\Ea:nd=\EC:pf=\EX:po=\EW:ps=\EH\E]:\ + :r1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX:se=\E3:sf=^J:so=\E4:\ + :sr=\EI:st=\E1:ta=^I:up=\EA:ve=\Ec:vs=\Ed: +# The older Visuals didn't come with function keys. This entry uses +# :ks: and :ke: so that the keypad keys can be used as function keys. +# If your version of vi doesn't support function keys you may want +# to use vi200-f. +vi200-f|visual 200 no function keys:\ + :is=\E3\Eb\Ej\E\\\El\EG\Ed\Ek:k0=\E?p:k1=\E?q:k2=\E?r:\ + :k3=\E?s:k4=\E?t:k5=\E?u:k6=\E?v:k7=\E?w:k8=\E?x:k9=\E?y:\ + :ke=\E>:ks=\E=:se@:so@:tc=vi200: +vi200-rv|visual 200 reverse video:\ + :se=\E3:so=\E4:sr@:ve@:vs@:tc=vi200: + +# the function keys are programmable but we don't reprogram them to their +# default values with :is: because programming them is very verbose. maybe +# an initialization file should be made for the 300 and they could be stuck +# in it. +# (vi300: added <rmam>/<smam> based on init string -- esr) +vi300|visual 300 ansi x3.64:\ + :am:bw:mi:xn:\ + :co#80:li#24:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=40\E[P:dl=\E[M:\ + :do=\E[B:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s:\ + :k1=\E_A\E\\:k2=\E_B\E\\:k3=\E_C\E\\:k4=\E_D\E\\:\ + :k5=\E_E\E\\:k6=\E_F\E\\:k7=\E_G\E\\:k8=\E_H\E\\:\ + :k9=\E_I\E\\:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :me=\E[m:nd=\E[C:se=\E[m:sf=^J:so=\E[1m:sr=\EM:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: +# some of the vi300s have older firmware that has the command +# sequence for setting editing extent reversed. +vi300-old|visual 300 with old firmware (set edit extent reversed):\ + :is=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s:\ + :tc=vi300: + +# Visual 500 prototype entry from University of Wisconsin. +# The best place to look for the escape sequences is page A1-1 of the +# Visual 500 manual. The initialization sequence given here may be +# overkill, but it does leave out some of the initializations which can +# be done with the menus in set-up mode. +# The :xp: line below is so that emacs can understand the padding requirements +# of this slow terminal. :xp: is 10 time the padding factor. +# (vi500: removed unknown :xp#4: termcap; +# also added empty <acsc> to suppress tic warning -- esr) +vi500|visual 500:\ + :am:mi:ms:\ + :co#80:it#8:li#33:\ + :ac=:ae=^O:al=3*\EL\Ex:as=^N:bt=4\Ez:cd=3*\Ey:ce=16\Ex:\ + :cl=6*\Ev:cm=\EY%+ %+ :cr=^M:cs=\E(%+ %+ :dc=3*\EO:\ + :dl=3*\EM:do=\EB:ei=\Ej:ho=\EH:im=\Ei:\ + :is=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\:\ + :kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\ + :nw=^M^J:se=\E^G:sf=^J:so=\E^H:ta=8\011:ue=\E^C:up=\EA:\ + :us=\E^D: + +# The visual 550 is a visual 300 with tektronix graphics, +# and with 33 lines. clear screen is modified here to +# also clear the graphics. +vi550|visual 550 ansi x3.64:\ + :li#33:\ + :cl=\030\E[H\E[2J:tc=vi300: + +vi603|visual603|visual 603:\ + :hs:mi:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:ds=\EP2;1~\E\\:ei=\E[4l:\ + :fs=\E\\:i1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r:\ + :im=\E[4h:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:ts=\EP2~:ue=\E[24m:\ + :up=\E[A:us=\E[4m:tc=vt100: + +#### Wyse (wy) +# +# Wyse Technology +# 3471 North First Street +# San Jose, CA 95134 +# Vox: (408)-473-1200 +# Fax: (408) 473-1222 +# Web: http://www.wyse.com +# +# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at +# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the +# obvious address, <http://www.wyse.com>. They keep terminfo entries at +# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>. +# +# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995. +# They now own the Qume and Amdek brands, too. So these are the people to +# talk with about all Link, Qume, and Amdek terminals. +# +# These entries include a few small fixes. +# I canceled the bel capacities in the vb entries. +# I made two trivial syntax fixes in the wyse30 entry. +# I made some entries relative to adm+sgr. +# +# +# Note: The wyse75, wyse85, and wyse99 have been discontinued. + +# Although the Wyse 30 can support more than one attribute +# it requires magic cookies to do so. Many applications do not +# function well with magic cookies. The following terminfo uses +# the protect mode to support one attribute (dim) without cookies. +# If more than one attribute is needed then the wy30-mc terminfo +# should be used. +# +wy30|wyse30|Wyse 30:\ + :5i:am:bw:hs:mi:ms:xo:\ + :Nl#8:co#80:lh#1:li#24:lw#8:ma#1:ws#45:\ + :#2=\E{:&3=\Er:@8=\E7:LF=\EA11:LO=\EA10:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=2\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=80\EY:ce=\ET:cl=80\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=10\EW:dl=1\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:im=\Eq:ip=2:\ + :is=\E'\E(\E\1363\E`9\016\024:k1=^A@\r:k2=^AA\r:\ + :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:\ + :kA=\EE:kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\ + :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:\ + :me=\E(:mh=\E`7\E):mp=\E`7\E):nd=^L:nw=^M^J:pf=^T:po=^X:\ + :ps=\EP:se=\E(:sf=2\n:so=\E`7\E):sr=3\Ej:st=\E1:ta=1\011:\ + :ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +# (wy30-mc: added :ti: to suppress tic warning --esr) +wy30-mc|wyse30-mc|wyse 30 with magic cookies:\ + :ms@:\ + :ma@:sg#1:\ + :ae=\EG0\EH\003:as=\EG0\EH\002:mb=\EG2:\ + :me=\EG0\E(\EH\003:mh=\EGp:mp=\EG0\E):se=\EG0:so=\EG4:\ + :te=\EG0:ti=:tc=wy30:tc=adm+sgr: +# The mandatory pause used by :vb: does not work with +# older versions of terminfo. If you see this effect then +# unset xon and delete the / from the delay. +# i.e. change $<100/> to $<100> +wy30-vb|wyse30-vb|wyse 30 visible bell:\ + :bl@:tc=wy30: +# +# The Wyse 50 can support one attribute (e.g. Dim, Inverse, +# Normal) without magic cookies by using the protect mode. +# The following description uses this feature, but when more +# than one attribute is put on the screen at once, all attributes +# will be changed to be the same as the last attribute given. +# The Wyse 50 can support more attributes when used with magic +# cookies. The wy50-mc terminal description uses magic cookies +# to correctly handle multiple attributes on a screen. +# +wy50|wyse50|Wyse 50:\ + :5i:am:bw:hs:mi:ms:xo:\ + :Nl#8:co#80:lh#1:li#24:lw#8:ma#1:ws#45:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:F3=^AL\r:\ + :F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=20\EY:ce=\ET:cl=20\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=1\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=30\E`\072\E`9:im=\Eq:ip=1:\ + :is=\016\024\E'\E(:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\ + :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:\ + :kA=\EE:kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\ + :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:\ + :me=\E(:mh=\E`7\E):mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:\ + :pf=^T:po=^X:ps=\EP:se=\E(:sf=2\n:so=\E`6\E):sr=\Ej:st=\E1:\ + :ta=^I:ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +# The mandatory pause used by flash does not work with some +# older versions of terminfo. If you see this effect then +# unset :xo: and delete the / from the delay. +# i.e. change $<100/> to $<100> +# (wy50-mc: added :ti: to suppress tic warning --esr) +wy50-mc|wyse50-mc|wyse 50 with magic cookies:\ + :ms@:\ + :ma@:sg#1:\ + :ae=\EG0\EH\003:as=\EG0\EH\002:mb=\EG2:\ + :me=\EG0\E(\EH\003:mh=\EGp:mp=\EG0\E):mr=\EG4:se=\EG0:\ + :so=\EGt:te=\EG0:ti=:tc=wy50:tc=adm+sgr: +wy50-vb|wyse50-vb|wyse 50 visible bell:\ + :bl@:tc=wy50: +wy50-w|wyse50-w|wyse 50 132-column:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cm=\Ea%i%dR%dC:dc=2\EW:i1=30\E`;\E`9:tc=wy50: +wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell:\ + :bl@:tc=wy50-w: + +# +# The Wyse 350 is a Wyse 50 with color. +# Unfortunately this means that it has magic cookies. +# The color attributes are designed to overlap the reverse, dim and +# underline attributes. This is nice for monochrome applications +# because you can make underline stuff green (or any other color) +# but for true color applications it's not so hot because you cannot +# mix color with reverse, dim or underline. +# To further complicate things one of the attributes must be +# black (either the foreground or the background). In reverse video +# the background changes color with black letters. In normal video +# the foreground changes colors on a black background. +# This terminfo uses some of the more advanced features of curses +# to display both color and blink. In the final analysis I am not +# sure that the wy350 runs better with this terminfo than it does +# with the wy50 terminfo (with user adjusted colors). +# +# The mandatory pause used by flash does not work with +# older versions of terminfo. If you see this effect then +# unset xon and delete the / from the delay. +# i.e. change $<100/> to $<100> +# +# Bug: The <op> capability resets attributes. +wy350|wyse350|Wyse 350:\ + :5i:am:bw:hs:mi:xo:\ + :Co#8:NC#55:Nl#8:co#80:lh#1:li#24:lw#8:pa#8:sg#1:ws#45:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:F3=^AL\r:\ + :F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:Sb=:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bl=^G:bt=\EI:cd=20\EY:ce=\ET:cl=20\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=1\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=30\E`\072\E`9:i2=\E%?:im=\Eq:ip=1:\ + :is=\016\024\E'\E(:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\ + :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:\ + :kA=\EE:kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\ + :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:\ + :mb=\EG2:me=%{0}%PA%{0}%PC:mh=\EGp:mp=\EG0\E):nd=^L:\ + :nw=^M^J:oc=\E%?:op=\EG0:pf=^T:po=^X:ps=\EP:sf=2\n:sr=\Ej:\ + :st=\E1:ta=^I:ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0:\ + :tc=adm+sgr: +wy350-vb|wyse350-vb|wyse 350 visible bell:\ + :bl@:tc=wy350: +wy350-w|wyse350-w|wyse 350 132-column:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cm=\Ea%i%dR%dC:dc=2\EW:i1=30\E`;\E`9:tc=wy350: +wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell:\ + :bl@:tc=wy350-w: +# +# This terminfo description is untested. +# The wyse100 emulates an adm31, so the adm31 entry should work. +# +wy100|wyse 100:\ + :hs:mi:\ + :co#80:li#24:sg#1:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :cr=^M:\ + :dc=\EW:dl=\ER:do=^J:ds=\EA31:ei=\Er:fs=^M:im=\Eq:is=\Eu\E0:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:kb=^H:kd=^J:kh=\E{:kl=^H:kr=^L:ku=^K:\ + :le=^H:mk@:nd=^L:sf=^J:ts=\EF:up=^K:tc=adm+sgr: +# +# The Wyse 120/150 has most of the features of the Wyse 60. +# This terminal does not need padding up to 9600 baud! +# :ms: should be set but the clear screen fails when in +# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear +# then set :ms:. +# +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +wy120|wyse120|wy150|wyse150|Wyse 120/150:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#1:li#24:lw#8:pb#9601:ws#45:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:F3=^AL\r:\ + :F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:RA=\Ed.:\ + :RX=\Ec20:SA=\Ed/:SX=\Ec21:al=3\EE:bl=^G:bt=\EI:cd=50\EY:\ + :ce=4\ET:cl=50\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=7\EW:\ + :dl=3\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:\ + :i2=150\EwJ\Ew1:im=\Eq:ip=2:\ + :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:kD=\EW:\ + :kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:mb=\EG2:\ + :me=\E(\EH\003\EG0\EcD:mh=\EGp:mp=\E):nd=^L:nw=3\r\n:\ + :pf=^T:po=\Ed#:ps=\EP:r1=30\E~!\E~4:r2=70\EeF\E`\072:\ + :r3=100\EwG\Ee(:sf=3\n:so=\EGt:sr=2\Ej:st=\E1:ta=1\011:\ + :te=\Ew1:ti=\Ew0:ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0:\ + :tc=adm+sgr: +# +wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cm=\Ea%i%dR%dC:dc=12\EW:ip=4:rs=70\E`;:tc=wy120: +# +wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy120: +# +wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy120-w: +# +wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell:\ + :bl@:tc=wy120: +# +wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell:\ + :bl@:tc=wy120-w: +# +# The Wyse 60 is like the Wyse 50 but with more padding. +# The reset strings are slow and the pad times very depending +# on other parameters such as font loading. I have tried +# to follow the following outline: +# +# <rs1> -> set personality +# <rs2> -> set number of columns +# <rs3> -> set number of lines +# :i1: -> select the proper font +# :is: -> do the initialization +# :i3: -> set up display memory (2 pages) +# +# The Wyse 60's that have vt100 emulation are slower than the +# older Wyse 60's. This change happened mid-1987. +# The capabilities effected are :dc: :dl: :al: :sf: :sr: +# +# The meta key is only half right. This terminal will return the +# high order bit set when you hit CTRL-function_key +# +# It may be useful to assign two function keys with the +# values \E=(\s look at old data in page 1 +# \E=W, look at bottom of page 1 +# where \s is a space ( ). +# +# Note: +# The Wyse 60 runs faster when the XON/XOFF +# handshake is turned off. +# +# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid +# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) +wy60|wyse60|Wyse 60:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#8:co#80:lh#1:li#24:lw#8:ws#45:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:DK=\E`b:F1=^AJ\r:F2=^AK\r:\ + :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:\ + :RA=\Ed.:RC=\E`c:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=+/,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=4\EE:as=\EcE:bl=^G:bt=\EI:cd=100\EY:ce=\ET:\ + :cl=100\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=11\EW:dl=5\ER:\ + :do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:\ + :i2=150\EwJ\Ew1:im=\Eq:ip=3:\ + :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:kD=\EW:\ + :kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:ll=\E{^K:mb=\EG2:\ + :me=\E(\EH\003\EG0\EcD:mh=\EGp:mp=\E):nd=^L:nw=3\r\n:\ + :pf=^T:po=\Ed#:ps=\EP:r1=150\E~!\E~4:r2=150\EeG:\ + :r3=200\EwG\Ee(:sf=5\n:so=\EGt:sr=7\Ej:st=\E1:ta=1\011:\ + :te=\Ew1:ti=\Ew0:ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0:\ + :tc=adm+sgr: +# +wy60-w|wyse60-w|wyse 60 132-column:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cm=\Ea%i%dR%dC:dc=16\EW:ip=5:rs=150\EeF\E`;:tc=wy60: +# +wy60-25|wyse60-25|wyse 60 80-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=200\EwG\Ee):tc=wy60: +wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=200\EwG\Ee):tc=wy60-w: +# +wy60-42|wyse60-42|wyse 60 80-column 42-lines:\ + :li#42:\ + :al=11\EE:cd=260\Ey:cl=260\E+:cm=2\E=%+ %+ :dc=16\EW:\ + :dl=11\ER:i1=\EcB2\EcC3:ip=5:nw=6\r\n:r3=150\Ee*:sf=9\n:\ + :sr=10\Ej:tc=wy60: +wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cd=260\Ey:cl=260\E+:cm=2\Ea%i%dR%dC:dc=19\EW:ho=2\036:\ + :ip=6:nw=11\r\n:rs=150\EeF\E`;:tc=wy60-42: +# +wy60-43|wyse60-43|wyse 60 80-column 43-lines:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:r3=150\Ee+:tc=wy60-42: +wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:r3=150\Ee+:tc=wy60-42-w: +# +wy60-vb|wyse60-vb|Wyse 60 visible bell:\ + :bl@:tc=wy60: +wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell:\ + :bl@:tc=wy60-w: + +# The Wyse-99GT looks at lot like the Wyse 60 except that it +# does not have the 42/43 line mode. In the Wyse-60 the "lines" +# setup parameter controls the number of lines on the screen. +# For the Wyse 99GT the "lines" setup parameter controls the +# number of lines in a page. The screen can display 25 lines max. +# The Wyse-99GT also has personalities for the VT220 and +# Tektronix 4014. But this has no bearing on the native mode. +# +# (msgr) should be set but the clear screen fails when in +# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear +# then set msgr, else use msgr@. +# +# u0 -> enter Tektronix mode +# u1 -> exit Tektronix mode +# +wy99gt|wyse99gt|Wyse 99gt:\ + :ms@:\ + :al=4\EE:cd=130\Ey:ce=5\Et:cl=130\E+:dc=7\EW:dl=4\ER:\ + :i2=20\Ew0:ip=2:nw@:rs=150\E`\072:sf=4\n:sr=3\Ej:ta=1\011:\ + :te=\Ew0:ti=\Ew1:u0=\E~>\E8:u1=\E[42h:vb=\E`8\E`9:tc=wy60: +# +wy99gt-w|wyse99gt-w|wyse 99gt 132-column:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cd=160\Ey:cl=160\E+:cm=2\Ea%i%dR%dC:dc=9\EW:ip=4:\ + :rs=150\E`;:tc=wy99gt: +# +wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r2=150\E`\072:r3=200\EwG\Ee):tc=wy99gt: +# +wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:rs=150\E`;:tc=wy99gt-w: +# +wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell:\ + :bl@:tc=wy99gt: +# +wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell:\ + :bl@:tc=wy99gt-w: + +# Can't set tabs! Other bugs (ANSI mode only): +# - can't redefine function keys (anyway, key redefinition in ANSI mode +# is too much complex to be described); +# - meta key can't be described (the terminal forgets it when reset); +# The xon-xoff handshaking can't be disabled while in ansi personality, so +# emacs can't work at speed greater than 9600 baud. No padding is needed at +# this speed. +# dch1 has been commented out because it causes annoying glittering when +# vi deletes one character at the beginning of a line with tabs in it. +# dch makes sysgen(1M) have a horrible behaviour when deleting +# a screen and makes screen(1) behave badly, so it is disabled too. The nice +# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are +# not, so smir and rmir are commented out as well. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard):\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#25:vt#3:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=1\E[%dD:\ + :RI=1\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:\ + :cd=8*\E[J:ce=1\E[K:cl=200\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dl=\E[M:do=\ED:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ + :im=\E[4h:\ + :is=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[M:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h:ku=\EOA:le=1\010:ll=\E[24E:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017\E["q:mh=\E[2m:mr=\E[7m:\ + :nd=1\E[C:nw=\EE:rc=\E8:\ + :rs=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i:\ + :sc=\E7:se=\E[27m:sf=1\n:so=\E[7m:sr=\EM:ta=^I:ue=\E[24m:\ + :up=\EM:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[34l\E[?25h: + +# This is the american terminal. Here tabs work fine. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard):\ + :ct=\E[3g:i2=\E[?5l:r3=\E[?5l:st=\EH:tc=wy99-ansi: + +# This terminal (firmware version 02) has a lot of bugs: +# - can't set tabs; +# - other bugs in ANSI modes (see above). +# This description disables handshaking when using cup. This is because +# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal +# cannot be used at speeds greater than 9600 baud, because at greater +# speeds handshaking is needed even for character sending. If you use +# DTR handshaking, you can use even greater speeds. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard):\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:it#8:li#25:ws#46:\ + :K1=^^:K3=\EJ:K4=\ET:K5=\EK:al=\EE:bl=^G:bt=\EI:cd=8*\EY:\ + :ce=8\ET:cl=\E'\E(\032:cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:\ + :do=\Ej:ds=\EF\r:ei=\Er:fs=^M:ho=^^:im=\Eq:\ + :is=\Eu\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\1360\E`1\E`4\Ee.\E`\072\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\EcD\024:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kl=^H:kr=^L:ku=^K:\ + :le=^H:mb=\EG2:me=\E(\EG0\EcD:mh=\EGp:mr=\EG4:nd=^L:nw=^_:\ + :rs=\Eu\E~4\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\1360\E`1\E`4\Ee.\E`\072\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\Ec@0B\EcD\024:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:ta=^I:te=\Ec21\Ec31:\ + :ti=\Ec20\Ec30:ts=\EF:up=^K:vb=\E\1361\E\1360:\ + :ve=\E`4\E`1:vi=\E`0:vs=\E`2\E`1: + +# This is the american terminal. Here tabs work. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard):\ + :ct=\E0:st=\E1:tc=wy99f: + +# +# The Wyse 160 is combination of the WY-60 and the WY-99gt. +# The reset strings are slow and the pad times very depending +# on other parameters such as font loading. I have tried +# to follow the following outline: +# +# <rs1> -> set personality +# <rs2> -> set number of columns +# <rs3> -> set number of lines +# :i1: -> select the proper font +# :is: -> do the initialization +# :i3: -> set up display memory (2 pages) +# +# The display memory may be used for either text or graphics. +# When "Display Memory = Shared" the terminal will have more pages +# but garbage may be left on the screen when you switch from +# graphics to text. If "Display Memory = Unshared" then the +# text area will be only one page long. +# +# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid +# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) +wy160|wyse160|Wyse 160:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#8:co#80:lh#1:li#24:lw#8:ws#38:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:DK=\E`b:F1=^AJ\r:F2=^AK\r:\ + :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:\ + :RA=\Ed.:RC=\E`c:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=+/,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=1\EE:as=\EcE:bl=^G:bt=\EI:cd=30\EY:ce=5\ET:\ + :cl=30\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=5\EW:dl=1\ER:do=^J:\ + :ds=\EF\r:ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=100\Ew0:\ + :im=\Eq:ip=2:\ + :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:kD=\EW:\ + :kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:ll=\E{^K:mb=\EG2:\ + :me=\E(\EH\003\EG0\EcD:mh=\EGp:mp=\E):nd=^L:nw=1\r\n:\ + :pf=^T:po=\Ed#:ps=\EP:r1=70\E~!\E~4:r2=100\E`\072:\ + :r3=140\EwG\Ee(:sf=1\n:so=\EGt:sr=1\Ej:st=\E1:ta=^I:\ + :te=\Ew0:ti=\Ew1:ts=\EF:up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0:\ + :tc=adm+sgr: +# +wy160-w|wyse160-w|wyse 160 132-column:\ + :Nl#16:co#132:lw#7:ws#90:\ + :cm=\Ea%i%dR%dC:dc=9\EW:rs=150\EeF\E`;:tc=wy160: +# +wy160-25|wyse160-25|wyse 160 80-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=200\EwG\Ee):tc=wy160: +wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=200\EwG\Ee):tc=wy160-w: +# +wy160-42|wyse160-42|wyse 160 80-column 42-lines:\ + :li#42:\ + :al=2\EE:cd=50\Ey:cl=50\E+:dl=2\ER:i1=\EcB2\EcC3:nw=2\r\n:\ + :r3=150\Ee*:sf=2\n:sr=2\Ej:tc=wy160: +wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines:\ + :Nl#16:co#132:lw#7:ws#90:\ + :cm=\Ea%i%dR%dC:dc=8\EW:ip=3:rs=150\EeF\E`;:tc=wy160-42: +# +wy160-43|wyse160-43|wyse 160 80-column 43-lines:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:r3=150\Ee+:tc=wy160-42: +wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:r3=150\Ee+:tc=wy160-42-w: +# +wy160-vb|wyse160-vb|Wyse 160 visible bell:\ + :bl@:tc=wy160: +wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell:\ + :bl@:tc=wy160-w: +# +# The Wyse 75 is a vt100 lookalike without advanced video. +# +# The Wyse 75 can support one attribute (e.g. Dim, Inverse, +# Underline) without magic cookies. The following description +# uses this capability, but when more than one attribute is +# put on the screen at once, all attributes will be changed +# to be the same as the last attribute given. +# The Wyse 75 can support more attributes when used with magic +# cookies. The wy75-mc terminal description uses magic cookies +# to correctly handle multiple attributes on a screen. +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy75|wyse75|wyse 75:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:li#24:ma#1:pb#1201:ws#78:\ + :AL=2*\E[%dL:DC=3*\E[%dP:DL=1*\E[%dM:DO=\E[%dB:\ + :IC=1*\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=2\E[L:\ + :as=^N:bl=^G:bt=\E[Z:cd=30\E[J:ce=3\E[K:cl=30\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=2\E[%i%d;%dr:ct=\E[3g:dc=3\E[P:\ + :dl=\E[M:do=^J:ds=\E[>,\001\001\E[>-\001\001:ec=\E[%dX:\ + :ei=\E[4l:fs=^A:ho=\E[H:\ + :i1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h:i2=\E[m:\ + :im=\E[4h:ip=1:is=\E>\E(B\E)0\017:k1=\E[?5i:k2=\E[?3i:\ + :k3=\E[2i:k4=\E[@:k5=\E[M:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:kI=\E[@:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:\ + :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E[?7h\E=:ku=\E[A:le=^H:\ + :me=\E[m:mh=\E[0t\E[2m:mr=\E[1t\E[7m:nd=\E[C:rc=\E8:\ + :sc=\E7:se=\E[m:sf=2\n:so=\E[1t\E[7m:sr=2\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=250\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l:\ + :tc=vt220+keypad: +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +wy75-mc|wyse75-mc|wyse 75 with magic cookies:\ + :ms@:\ + :ma@:sg#1:ug#1:\ + :ae=\E[0p\017:as=\E[0p\016:i2=\E[m\E[p:mb=\E[2p:\ + :me=\E[0p\017:mh=\E[1p:mk=\E[4p:mr=\E[16p:se=\E[0p:\ + :so=\E[17p:ue=\E[0p:us=\E[8p:tc=wy75: +wy75-vb|wyse75-vb|wyse 75 with visible bell:\ + :pb@:\ + :bl@:tc=wy75: +wy75-w|wyse75-w|wyse 75 in 132 column mode:\ + :co#132:ws#130:\ + :rs=80\E[35h\E[?3h:tc=wy75: +wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns:\ + :pb@:\ + :bl@:tc=wy75-w: +# +# Wyse 85 emulating a vt220 7 bit mode. +# 24 line screen with status line. +# +# The vt220 mode permits more function keys but it wipes out +# the escape key. I strongly recommend that <f11> be set to +# escape (esc). +# The terminal may have to be set for 8 data bits and 2 stop +# bits for the arrow keys to work. +# The Wyse 85 runs faster with XON/XOFF enabled. Also the +# :DC: and :IC: work best when XON/XOFF is set. :IC: and +# :DC: leave trash on the screen when used without XON/XOFF. +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy85|wyse85|wyse 85:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=5*\E[%dL:DC=3*\E[%dP:DL=3*\E[%dM:DO=\E[%dB:\ + :IC=4*\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=5\E[L:\ + :as=^N:bl=^G:bt=\E[Z:cd=110\E[J:ce=1\E[K:cl=110\E[H\E[J:\ + :cm=1\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=3\E[P:\ + :dl=3\E[M:do=^J:ds=\E[40l:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[62;1"p\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=3:\ + :is=16\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:kh=\E[26~:\ + :kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:\ + :se=\E[m:sf=3\n:so=\E[7m:sr=3\EM:st=\EH:ta=1\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=300\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l:\ + :tc=vt220+keypad: +# +# Wyse 85 with visual bell. +wy85-vb|wyse85-vb|wyse 85 with visible bell:\ + :bl@:vb=300\E[30h\E,\E[30l:tc=wy85: +# +# Wyse 85 in 132-column mode. +wy85-w|wyse85-w|wyse 85 in 132-column mode:\ + :co#132:ws#132:\ + :rs=70\E[35h\E[?3h:tc=wy85: +# +# Wyse 85 in 132-column mode with visual bell. +wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns:\ + :bl@:tc=wy85-w: + +# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998 +# This copes with an apparent firmware bug in the wy85. He writes: +# "What I did was change leave the terminal cursor keys set to Normal +# (instead of application), and change \E[ to \233 for all the keys in +# terminfo. At one point, I found some reference indicating that this +# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just +# me), but I can't find that and the server under my bookmark to "Wyse +# Technical" isn't responding. So there's the question of wether the wy85 +# terminfo should reflect the manufactuer's intended behaviour of the terminal +# or the actual." +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=5*\E[%dL:DC=3*\E[%dP:DL=3*\E[%dM:DO=\E[%dB:\ + :IC=4*\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=5\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=110\E[J:ce=1\E[K:cl=110\E[H\E[J:\ + :cm=1\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=3\E[P:\ + :dl=3\E[M:do=^J:ds=\E[40l:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[62;1"p\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=3:\ + :is=16\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\23317~:k7=\23318~:\ + :k8=\23319~:k9=\23320~:kD=\2333~:kI=\2332~:kN=\2336~:\ + :kP=\2335~:kb=^H:kd=\233B:ke=\E>:kh=\23326~:kl=\233D:\ + :kr=\233C:ks=\E[?1l\E=:ku=\233A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m\017:mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:\ + :se=\E[m:sf=3\n:so=\E[7m:sr=3\EM:st=\EH:ta=1\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=300\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# Wyse 185 emulating a vt320 7 bit mode. +# +# This terminal always displays 25 lines. These lines may be used +# as 24 data lines and a terminal status line (top or bottom) or +# 25 data lines. The 48 and 50 line modes change the page size +# and not the number of lines on the screen. +# +# The Compose Character key can be used as a meta key if changed +# by set-up. +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy185|wyse185|wyse 185:\ + :am:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=3*\E[%dL:DC=3\E[%dP:DL=2*\E[%dM:DO=\E[%dB:IC=2\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=3\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=40\E[J:ce=\E[K:cl=40\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=20\E[%i%d;%dr:ct=\E[3g:dc=3\E[P:dl=2\E[M:do=^J:\ + :ds=\E7\E[99;0H\E[K\E8:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=4:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:ke=\E>:kh=\E[26~:kl=\E[D:kr=\E[C:\ + :ks=\E[?1l\E=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=2\n:\ + :so=\E[7m:sr=2\EM:st=\EH:ta=^I:te=\E[ R:ti=\E[ Q:\ + :ts=\E7\E[99;%i%dH:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=100\E[30h\E,\E[30l:ve=\E[34h\E[?25h:vi=\E[?25l:\ + :vs=\E[?25h\E[34l:tc=vt220+keypad: +# +# Wyse 185 with 24 data lines and top status (terminal status) +wy185-24|wyse185-24|wyse 185 with 24 data lines:\ + :hs@:\ + :ds@:fs@:r3=\E[?5l\E[47h\E[40l\E[1;24r:ts@:tc=wy185: +# +# Wyse 185 with visual bell. +wy185-vb|wyse185-vb|wyse 185+flash:\ + :bl@:tc=wy185: +# +# Wyse 185 in 132-column mode. +wy185-w|wyse185-w|wyse 185 in 132-column mode:\ + :co#132:ws#132:\ + :DC=7\E[%dP:IC=7\E[%d@:dc=7\E[P:ei=:im=:ip=7:\ + :rs=\E[35h\E[?3h:tc=wy185: +# +# Wyse 185 in 132-column mode with visual bell. +wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols:\ + :bl@:tc=wy185-w: + +# wy325 terminfo entries +# Done by Joe H. Davis 3-9-92 + +# lines 25 columns 80 +# +wy325|wyse325|Wyse epc:\ + :5i:am:bw:hs:mi:\ + :Nl#8:co#80:lh#1:li#24:lw#8:pb#9601:ws#45:\ + :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:F3=^AL\r:\ + :F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:LO=\EA10:RA=\Ed.:\ + :SA=\Ed/:\ + :ac=+/,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=3\EE:as=\EcE:bl=^G:bt=\EI:cd=50\EY:ce=4\ET:\ + :cl=50\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=7\EW:dl=3\ER:do=^J:\ + :ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=16\Ew0:\ + :im=\Eq:ip=2:\ + :is=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:kD=\EW:\ + :kE=\ET:kI=\Eq:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:mb=\EG2:\ + :me=\E(\EH\003\EG0\EcD:mh=\EGp:mp=\E):nd=^L:pf=^T:po=\Ed#:\ + :ps=\EP:r1=30\E~!\E~4:r2=70\EeF\E`\072:r3=100\EwG\Ee(:\ + :sf=3\n:so=\EGt:sr=2\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:ts=\EF:\ + :up=^K:vb=\E`8\E`9:ve=\E`1:vi=\E`0:tc=adm+sgr: + +# +# lines 24 columns 80 vb +# +wy325-vb|wyse325-vb|wyse-325 with visual bell:\ + :bl@:tc=wy325: + +# +# lines 24 columns 132 +# +wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode:\ + :Nl#16:co#132:lw#7:ws#97:\ + :cm=\Ea%i%dR%dC:dc=12\EW:ip=4:rs=70\E`;:tc=wy325: +# +# lines 25 columns 80 +# +wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy325: +# +# lines 25 columns 132 +# +wy325-25w|wyse325-25w|wy325 132 columns:\ + :Nl@:lh@:li#25:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy325-w: +# +# lines 25 columns 132 vb +# +wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video:\ + :bl@:tc=wy325-w: + +# +# lines 42 columns 80 +# +wy325-42|wyse325-42|wyse-325 42 lines:\ + :Nl@:lh@:li#42:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy325: +# +# lines 42 columns 132 +# +wy325-42w|wyse325-42w|wyse-325 42 lines wide mode:\ + :Nl@:lh@:li#42:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy325-w: +# +# lines 42 columns 132 vb +# +wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell:\ + :bl@:tc=wy325-w: +# +# lines 43 columns 80 +# +wy325-43|wyse325-43|wyse-325 43 lines:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:tc=wy325: +# +# lines 43 columns 132 +# +wy325-43w|wyse325-43w|wyse-325 43 lines wide mode:\ + :Nl@:lh@:li#43:lw@:\ + :pn@:r3=100\EwG\Ee):tc=wy325-w: +# +# lines 43 columns 132 vb +# +wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell:\ + :bl@:tc=wy325-w: + +# Wyse 370 -- 24 line screen with status line. +# +# The terminal may have to be set for 8 data bits and 2 stop +# bits for the arrow keys to work. +# +# If you change keyboards the terminal will send different +# escape sequences. +# The following definition is for the basic terminal without +# function keys. +# +# <u0> -> enter Tektronix 4010/4014 mode +# <u1> -> exit Tektronix 4010/4014 mode +# <u2> -> enter ASCII mode (from any ANSI mode) +# <u3> -> exit ASCII mode (goto native ANSI mode) +# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode) +# <u5> -> exit Tek 4207 mode (goto native ANSI mode) +# +# Bug: The <op> capability resets attributes. +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy370-nk|wyse 370 without function keys:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=2*\E[%dL:DC=1*\E[%dP:DL=2*\E[%dM:DO=\E[%dB:\ + :IC=1*\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=2\E[L:\ + :as=^N:bl=^G:bt=\E[Z:cd=40\E[J:ce=10\E[K:cl=40\E[H\E[J:\ + :cm=1\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=1\E[P:\ + :dl=2\E[M:do=^J:ds=\E[40l:ec=.1*\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=6\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=1:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :ke=\E>:ks=\E[?1l\E=:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=2\n:\ + :so=\E[7m:sr=2\EM:st=\EH:ta=1\011:te=\E[ R:ti=\E[ Q:\ + :ts=\E[40l\E[40h\E7\E[99;%i%dH:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=300\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Function key set for the ASCII (wy-50 compatible) keyboard +# This is the default 370. +# +wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard:\ + :@8=\EOM:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:k1=\E[?4i:k2=\E[?3i:k3=\E[2i:k4=\E[@:\ + :k5=\E[M:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kA=\EOP:kB=\E[Z:kD=\EOQ:kI=\EOP:kL=\EOQ:kN=\E[U:\ + :kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :tc=wy370-nk: +# +# Function key set for the VT-320 (and wy85) compatible keyboard +# +wy370-105k|Wyse 370 with 105 key keyboard:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:F1=\E[23~:F2=\E[24~:\ + :F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:kh=\E[26~:kl=\E[D:kr=\E[C:ku=\E[A:\ + :l1=PF1:l2=PF2:l3=PF3:l4=PF4:tc=wy370-nk:tc=vt220+keypad: +# +# Function key set for the PC compatible keyboard +# +wy370-EPC|Wyse 370 with 102 key keyboard:\ + :@7=\E[1~:@8=\EOM:F1=\E[23~:F2=\E[24~:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:k5=\E[M:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:k;=\E[21~:kB=\E[Z:kI=\E[2~:kN=\E[U:kP=\E[V:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:tc=wy370-nk: +# +# Wyse 370 with visual bell. +wy370-vb|Wyse 370 with visible bell:\ + :bl@:tc=wy370: +# +# Wyse 370 in 132-column mode. +wy370-w|Wyse 370 in 132-column mode:\ + :co#132:ws#132:\ + :rs=70\E[35h\E[?3h:tc=wy370: +# +# Wyse 370 in 132-column mode with visual bell. +wy370-wvb|Wyse 370 with visible bell 132-columns:\ + :vb=300\E[30h\E,\E[30l:tc=wy370-w: +wy370-rv|Wyse 370 reverse video:\ + :r3=\E[32h\E[?5h:tc=wy370: +# +# Wyse 99gt Tektronix 4010/4014 emulator, +# +wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator:\ + :am:os:\ + :co#74:li#35:\ + :bl=^G:cl=\E^L:cr=^M:do=^J:ff=^L:\ + :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\ + :ho=^]7`x @\037:\ + :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\ + :is=\E8:le=^H:nd=\040:nw=^M^J:u0=\E~>\E8:u1=\E[42h:up=^K: +# +# Wyse 160 Tektronix 4010/4014 emulator, +# +wy160-tek|Wyse 160 Tektronix 4010/4014 emulator:\ + :ho=^]8`g @\037:tc=wy99gt-tek: +# +# Wyse 370 Tektronix 4010/4014 emulator, +# +wy370-tek|Wyse 370 Tektronix 4010/4014 emulator:\ + :am:os:\ + :co#80:li#36:\ + :bl=^G:cl=\E^L:cr=^M:do=^J:ff=^L:\ + :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\ + :ho=^]8g @\037:\ + :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\ + :is=\E8:kb=^H:kd=^J:kl=^H:kr=^I:ku=^K:le=^H:nd=\040:nw=^M^J:\ + :u0=\E[?38h\E8:u1=\E[?38l\E)0:up=^K: + +# Vendor-supplied Wyse entries end here. + +# +#TITLE: TERMINFO ENTRY WY520 +#DATE: 8/5/93 +# The WY520 terminfo is based on the WY285 entry published on the WYSE +# BBS with the addition of more function keys and special keys. +# +# rs1 -> set personality +# rs2 -> set number of columns +# rs3 -> set number of lines +# is1 -> select the proper font +# is2 -> do the initialization +# is3 -> If this string is empty then rs3 gets sent. +# +# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard +# - The BS key is programmed to generate BS in smcup since +# is2 doesn't seem to work. +# - Remove and shift/Remove: delete a character +# - Insert : enter insert mode +# - Find : delete to end of file +# - Select : clear a line +# - F11, F12, F13: send default sequences (not ESC, BS, LF) +# - F14 : Home key +# - Bottom status line (host writable line) is used. +# - smkx,rmkx are removed because this would put the numeric +# keypad in Dec application mode which doesn't seem to work +# with SCO applications. +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +wy520|wyse520|wyse 520:\ + :am:hs:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=3*\E[%dL:DC=3\E[%dP:DL=2*\E[%dM:DO=\E[%dB:IC=2\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=3\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=40\E[J:ce=\E[K:cl=40\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=20\E[%i%d;%dr:ct=\E[3g:dc=30\E[P:dl=2\E[M:do=^J:\ + :ds=\E[0$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=4:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[26~:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=2\n:\ + :so=\E[7m:sr=2\EM:st=\EH:ta=^I:te=\E[ R:ti=\E[ Q\E[?67;8h:\ + :ts=\E[2$~\E[1$}\E[%i%d`:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l:\ + :tc=vt220+keypad: +# +# Wyse 520 with 24 data lines and status (terminal status) +wy520-24|wyse520-24|wyse 520 with 24 data lines:\ + :hs@:\ + :ds@:fs@:r3=\E[?5l\E[47h\E[40l\E[1;24r:ts@:tc=wy520: +# +# Wyse 520 with visual bell. +wy520-vb|wyse520-vb|wyse 520 with visible bell:\ + :vb=100\E[30h\E,\E[30l:tc=wy520: +# +# Wyse 520 in 132-column mode. +wy520-w|wyse520-w|wyse 520 in 132-column mode:\ + :co#132:ws#132:\ + :DC=7\E[%dP:IC=7\E[%d@:dc=7\E[P:ei=:im=:ip=7:\ + :rs=\E[35h\E[?3h:tc=wy520: +# +# Wyse 520 in 132-column mode with visual bell. +wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns:\ + :vb=100\E[30h\E,\E[30l:tc=wy520-w: +# +# +# Wyse 520 emulating a vt420 7 bit mode. +# The DEL key is programmed to generate BS in is2. +# With EPC keyboard. +# - 'End' key will clear till end of line on EPC keyboard +# - Shift/End : ignored. +# - Insert : enter insert mode. +# - Delete : delete a character (have to change interrupt character +# to CTRL-C: stty intr '^c') for it to work since the +# Delete key sends 7FH. +wy520-epc|wyse520-epc|wyse 520 with EPC keyboard:\ + :@7=\E[4~:k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:\ + :k4=\E[14~:k5=\E[15~:kD=\177:kE=\E[4~:kh=\E[H:tc=wy520: +# +# Wyse 520 with 24 data lines and status (terminal status) +# with EPC keyboard. +wy520-epc-24|wyse520-pc-24|wyse 520 with 24 data lines and EPC keyboard:\ + :hs@:\ + :ds@:fs@:r3=\E[?5l\E[47h\E[40l\E[1;24r:ts@:tc=wy520-epc: +# +# Wyse 520 with visual bell. +wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard:\ + :vb=100\E[30h\E,\E[30l:tc=wy520-epc: +# +# Wyse 520 in 132-column mode. +wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard:\ + :co#132:ws#132:\ + :DC=7\E[%dP:IC=7\E[%d@:dc=7\E[P:ei=:im=:ip=7:\ + :rs=\E[35h\E[?3h:tc=wy520-epc: +# +# Wyse 520 in 132-column mode with visual bell. +wy520-epc-wvb|wyse520-p-wvb|wyse 520 with visible bell 132-columns and EPC keyboard:\ + :vb=100\E[30h\E,\E[30l:tc=wy520-epc-w: +# +# Wyse 520 in 80-column, 36 lines +wy520-36|wyse520-36|wyse 520 with 36 data lines:\ + :hs@:\ + :li#36:\ + :ds@:fs@:r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r:ts@:\ + :tc=wy520: +# +# Wyse 520 in 80-column, 48 lines +wy520-48|wyse520-48|wyse 520 with 48 data lines:\ + :hs@:\ + :li#48:\ + :ds@:fs@:r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r:ts@:\ + :tc=wy520: +# +# Wyse 520 in 132-column, 36 lines +wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines:\ + :co#132:ws#132:\ + :r2=\E[?3h:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|:\ + :tc=wy520-36: +# +# Wyse 520 in 132-column, 48 lines +wy520-48w|wyse520-48w|wyse 520 with 48 data lines:\ + :co#132:ws#132:\ + :r2=\E[?3h:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|:\ + :tc=wy520-48: +# +# +# Wyse 520 in 80-column, 36 lines with EPC keyboard +wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard:\ + :hs@:\ + :li#36:\ + :ds@:fs@:r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r:ts@:\ + :tc=wy520-epc: +# +# Wyse 520 in 80-column, 48 lines with EPC keyboard +wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard:\ + :hs@:\ + :li#48:\ + :ds@:fs@:r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r:ts@:\ + :tc=wy520-epc: +# +# Wyse 520 in 132-column, 36 lines with EPC keyboard +wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard:\ + :co#132:ws#132:\ + :r2=\E[?3h:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|:\ + :tc=wy520-36pc: +# +# Wyse 520 in 132-column, 48 lines with EPC keyboard +wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard:\ + :co#132:ws#132:\ + :r2=\E[?3h:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|:\ + :tc=wy520-48pc: + +# From: John Gilmore <hoptoad!gnu@lll-crg.arpa> +# (wyse-vp: removed :if=/usr/share/tabset/wyse-adds:, there's no such +# file and we don't know what :st: is -- esr) +wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :al=\EM:bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dc=\EW:\ + :dl=\El:do=^J:ei=\Er:ho=^A:im=\Eq:is=\E`\072\E`9\017\Er:\ + :kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=^H:ll=^A^Z:me=^O:\ + :nd=^F:nw=^M^J:r1=\E`\072\E`9\017\Er:se=^O:sf=^J:so=^N:\ + :ta=^I:ue=^O:up=^Z:us=^N: + +wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad:\ + :is=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=:kb=^H:\ + :kd=\EOB:ke=10\E[?1l\E>:kh=\EOH:kl=\EOD:kr=\EOC:\ + :ks=10\E[?1h\E=:ku=\EOA:tc=wy75: + +# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu> +wy100q|Wyse 100 for Quotron:\ + :bs:\ + :co#80:li#24:sg#1:\ + :al=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :dc=\EW:\ + :dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:\ + :is=\E`\072\200\EC\EDF\E0\E'\E(\EA21:kd=^J:kl=^H:kr=^L:\ + :ku=^K:le=^H:mk@:nd=^L:sr=\Ej:up=^K:tc=adm+sgr: + +#### Kermit terminal emulations +# +# Obsolete Kermit versions may be listed in the section describing obsolete +# non-ANSI terminal emulators later in the file. +# + +# KERMIT standard all versions. +# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. +# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 9-25-84 +kermit|standard kermit:\ + :bs:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :do=\EB:ho=\EH:\ + :is=K0 Standard Kermit 9-25-84\n:kd=^J:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:nd=\EC:up=\EA: +kermit-am|standard kermit plus auto-margin:\ + :am:\ + :is=K1 Standard Kermit plus Automatic Margins\n:\ + :tc=kermit: +# IBMPC Kermit 1.2. +# Bugs: :cd:, :ce:: do not work except at beginning of line! :cl: does +# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of +# line). +# From: greg small <gts@populi.berkeley.edu> 8-30-84 +pckermit|pckermit12|UCB IBMPC Kermit 1.2:\ + :am:\ + :li#25:\ + :cd@:ce@:cl=\EH\EJ:\ + :is=K2 UCB IBMPC Kermit 1.2 8-30-84\n:tc=kermit: +# IBMPC Kermit 1.20 +# Cannot use line 25, now acts funny like ansi special scrolling region. +# Initialization must escape from that region by cursor position to line 24. +# Cannot use character insert because 1.20 goes crazy if insert at col 80. +# Does not use :am: because autowrap is lost when kermit dropped and restarted. +# From: greg small <gts@populi.berkeley.edu> 12-19-84 +pckermit120|UCB IBMPC Kermit 1.20:\ + :it#8:li#24:\ + :al=\EL:dc=\EN:dl=\EM:do=\EB:ei@:im@:\ + :is=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n:\ + :se=\Eq:so=\Ep:ta=^I:vs=\EO\Eq\EEK3:tc=kermit: +# MS-DOS Kermit 2.27 for the IBMPC +# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. +# Cannot use line 25, now acts funny like ansi special scrolling region. +# Initialization must escape from that region by cursor position to line 24. +# Does not use am: because autowrap is lost when kermit dropped and restarted. +# Reverse video for standout like H19. +# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC:\ + :am@:bs:\ + :co#80:it#8:li#24:\ + :al=\EL:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :dc=\EN:dl=\EM:\ + :do=\EB:ei=\EO:ho=\EH:im=\E@:\ + :is=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n:\ + :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=\EC:rc=\Ek:sc=\Ej:\ + :se=\Eq:so=\Ep:ta=^I:up=\EA:vs=\EO\Eq\EG\EwK4: +# MS-DOS Kermit 2.27 with automatic margins +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins:\ + :am:\ + :is=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n:\ + :vs=\EO\Eq\EG\EvK5:tc=msk227: +# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC +# Automatic margins now default. Use ansi :sa: for highlights. +# Define function keys. +# (msk22714: removed obsolete ":kn#10:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC:\ + :am:\ + :is=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n:\ + :k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:\ + :k8=\E8:k9=\E9:md=\E[1m:me=\E[m:mr=\E[7m:se=\E[m:so=\E[1m:\ + :ue=\E[m:us=\E[4m:vs=\EO\Eq\EG\EvK6:tc=mskermit227: +# This was designed for a VT320 emulator, but it is probably a good start +# at support for the VT320 itself. +# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu. +# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +vt320-k3|MS-Kermit 3.00's vt320 emulation:\ + :am:es:hs:km:mi:ms:xn:\ + :co#80:it#8:li#49:pb#9600:vt#3:\ + :AL=\E[%dL:CC=\E:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SR=\E[%dL:UP=\E[%dA:ae=\E(B:al=\E[L:\ + :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[0$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:im=\E[4h:\ + :is=\E>\E F\E[?1l\E[?7h\E[r\E[2$~:k0=\E[21~:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[1$}\r\E[K:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l:ve=\E[?25h:\ + :vi=\E[?25l: +# From: Joseph Gil <yogi@cs.ubc.ca> 13 Dec 1991 +# ACS capabilities from Philippe De Muyter <phdm@info.ucl.ac.be> 30 May 1996 +# (I removed a bogus boolean :mo: and added :ms:, <smam>, <rmam> -- esr) +vt320-k311|dec vt320 series as defined by kermit 3.11:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=3\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ds=\E[2$~\r\E[1$}\E[K\E[$}:ei=\E[4l:\ + :fs=\E[$}:ho=\E[H:im=\E[4h:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M\ED:\ + :r1=\E[?3l:rc=\E8:rf=/usr/share/tabset/vt100:sc=\E7:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}\E[1;%dH:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: + +######## NON-ANSI TERMINAL EMULATIONS +# + +#### Avatar +# +# These entries attempt to describe Avatar, a terminal emulation used with +# MS-DOS bulletin-board systems. It was designed to give ANSI-like +# capabilities, but with cheaper (shorter) control sequences. Messy design, +# excessively dependent on PC idiosyncracies, but apparently rather popular +# in the BBS world. +# +# No color support. Avatar doesn't fit either of the Tektronix or HP color +# models that terminfo knows about. An Avatar color attribute is the +# low 7 bits of the IBM-PC display-memory attribute. Bletch. +# +# I wrote these entries while looking at the Avatar spec. I don't have +# the facilities to test them. Let me know if they work, or don't. +# +# Avatar escapes not used by these entries (because maybe you're smarter +# and more motivated than I am and can figure out how to wrap terminfo +# around some of them, and because they are weird enough to be funny): +# level 0: +# ^L -- clear window/reset current attribute to default +# ^V^A%p1%c -- set current color attribute, parameter decodes as follows: +# +# bit: 6 5 4 3 2 1 0 +# | | | | | +# +---+---+ | +---+---+ +# | | | +# | | foreground color +# | foreground intensity +# background color +# level 0+: +# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines +# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines +# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1 +# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1 +# (^V^L and ^V^M set the current attribute as a side-effect.) +# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes +# in the pattern, <c> the number of times the pattern +# should be repeated. If either value is 0, no-op. +# The pattern can contain Avatar console codes, +# including other ^V ^Y patterns. +# level 1: +# ^V^O -- clockwise mode on; turn print direction right each time you +# hit a window edge (yes, really). Turned off by CR +# ^V^P -- no-op +# ^V^Q%c -- query the driver +# ^V^R -- driver reset +# ^V^S -- Sound tone (PC-specific) +# ^V^T -- change highlight at current cursor poition to %c +# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b> +# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c +# -- define window +# +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +# (The :mb:/:md:/:mr:/:as:/:us:/:so: capabilities exist only to +# tell ncurses that the corresponding highlights exist; it should use :sa:, +# which is the only method that will actually work for multiple highlights.) +# +# Update by TD - 2004: half of this was inconsistent. Found documentation +# and repaired most of the damage. sgr0 is probably incorrect, but the +# available documentation gives no clues for a workable string. +avatar0|avatar terminal emulator level 0:\ + :am:ms:ut:\ + :co#80:it#8:li#25:\ + :ae@:as@:ce=^V^G:cm=\026\010%.%.:cr=^M:do=^V^D:le=^V^E:\ + :mb=^V^B:md=^V^A^P:me=^V^A^G:mk=^V^A\200:mr=^V^Ap:nd=^V^F:\ + :rp=\031%.%.:rs=^L:sf=^J:so=^V^Ap:up=^V^C:us=^V^A^A:\ + :tc=klone+acs: +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +avatar0+|avatar terminal emulator level 0+:\ + :dc=^V^N:ei=\026\n\200\200\200\200:im=^V^I:tc=avatar0: +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +avatar|avatar1|avatar terminal emulator level 1:\ + :RA=^V":SA=^V$:al=^V+:dl=^V-:ei=^V^P:ve=^V'^A:vi=^V'^B:\ + :vs=^V^C:tc=avatar0+: + +#### RBcomm +# +# RBComm is a lean and mean terminal emulator written by the Interrupt List +# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early +# '90s), especially in the BBS world, and still has some loyal users due to +# its very small memory footprint and to a cute macro language. +rbcomm|IBM PC with RBcomm and EMACS keybindings:\ + :am:bw:mi:ms:xn:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DL=\E[%dM:al=^K:bl=^G:bt=\E[Z:cd=^F5:ce=^P^P:\ + :cl=^L:cm=\037%r%+ %+ :cr=^M:cs=\E[%i%d;%dr:dc=^W:dl=^Z:\ + :dm=:do=^C:ec=\E[%dX:ed=:ei=^]:im=^\:\ + :is=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g:kb=^H:kd=^N:\ + :ke=\E>:kh=^A:kl=^B:kr=^F:ks=\E=:ku=^P:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mk=\E[8m:mr=^R:nd=^B:nw=^M\ED:\ + :r1=\017\E(B\E)0\025\E[?3l\E[>8g:rc=\E8:rp=\030%.%.:\ + :sc=\E7:se=^U:sf=\ED:so=^R:sr=\EM:ta=^I:te=:ti=:ue=^U:up=^^:\ + :us=^T:ve=\E[?25h:vi=\E[?25l: +rbcomm-nam|IBM PC with RBcomm without autowrap:\ + :am@:\ + :bl=^G:cr=^M:do=^J:\ + :is=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g:kb=^H:kd=^J:\ + :kl=^H:nw=^M^J:sf=^J:ta=^I:tc=rbcomm: +rbcomm-w|IBM PC with RBcomm in 132 column mode:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:\ + :is=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g:kb=^H:kd=^J:\ + :kl=^H:nw=^M^J:sf=^J:ta=^I:tc=rbcomm: + +######## LCD DISPLAYS +# + +#### Matrix Orbital +# from: Eric Z. Ayers (eric@ale.org) +# +# Matrix Orbital 20x4 LCD display +# Command Character is 0xFE (decimal 254, octal 376) +# +# On this device, cursor addressability isn't possible. The LCD expects: +# 0xfe G <col> <row> +# for cup: %p1 == row and %p2 is column +# +# This line: +# cup=\376G%p2%c%p1%c +# LOOKS like it will work, but sometimes only one of the two numbers is sent. +# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'. +# +# Alas, there is no cursor upline capability on this display. +# +# These entries add some 'sanity stuff' to the clear function. That is, it +# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping, +# and turns off the cursor blinking and stuff like that. +# +# NOTE: calling 'beep' turns on the backlight (bell) +# NOTE: calling 'flash' turns it on and back off (visual bell) +# +MtxOrb|Generic Matrix Orbital LCD display:\ + :bl=\376B^A:cl=\376X\376C\376R\376K\376T:ho=\376H:\ + :le=\376L:nd=\376M:vb=\376B\001\376F:ve=\376K\376T: +MtxOrb204|20x4 Matrix Orbital LCD display:\ + :co#20:li#4:tc=MtxOrb: +MtxOrb162|16x2 Matrix Orbital LCD display:\ + :co#16:li#2:tc=MtxOrb: +# The end + +######## OLDER TERMINAL TYPES +# +# This section is devoted to older commercial terminal brands that are now +# discontinued, but known to be still in use or represented by emulations. +# + +#### AT&T (att, tty) +# +# This section also includes Teletype-branded VDTs. +# +# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now +# Boundless Technologies); for details, see the header comment on the ADDS +# section. +# +# These are AT&T's official terminfo entries. All-caps aliases have been +# removed. +# +att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode:\ + :am:eo:mi:ms:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[11r:\ + :F2=\E[12r:F3=\E[13r:F4=\E[14r:F5=\E[15r:F6=\E[16r:\ + :IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :k1=\E[1r:k2=\E[2r:k3=\E[3r:k4=\E[4r:k5=\E[5r:k6=\E[6r:\ + :k7=\E[7r:k8=\E[8r:k9=\E[9r:k;=\E[10r:kA=\E[L:kB=\E[Z:\ + :kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:se=\E[m:sf=^J:so=\E[7m:ta=^I:\ + :up=\E[A: +att2350|AT&T 2350 Video Information Terminal 80 column mode:\ + :pf@:po@:ps@:tc=att2300: + +# Must setup RETURN KEY - CR, REC'VD LF - INDEX. +# Seems upward compatible with vt100, plus ins/del line/char. +# On sgr, the protection parameter is ignored. +# No check is made to make sure that only 3 parameters are output. +# standout= reverse + half-intensity = 3 | 5. +# bold= reverse + underline = 2 | 3. +# note that half-bright blinking doesn't look different from normal blinking. +# NOTE:you must program the function keys first, label second! +# (att4410: a BSD entry has been seen with the following capabilities: +# :is=\E[?6l:, :k1=\EOc:, :k2=\EOd:, :k3=\EOe:, :k4=\EOg:, +# :k6=\EOh:, :k7=\EOi:, :k8=\EOj:, -- esr) +att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1:\ + :am:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :ac=++,,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=:fs=\E8:ho=\E[H:i1=\E[?3l\E)0:\ + :i2=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW:\ + :ic=\E[@:im=:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\ + :k6=\EOU:k7=\EOV:k8=\EOW:kC=\E[2J:kH=\E[24;1H:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[2;7m:me=\E[0m:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:rc=\E8:rs=\Ec\E[?3l\E[2;0y:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:ts=\E7\E[25;%+^AH:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1:\ + :co#132:ws#132:\ + :i1=\E[?3h\E)0:rs=\Ec\E[?3h\E[2;0y:tc=att5410v1: + +att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2:\ + :bs:tc=att5410v1: + +att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode:\ + :co#132:ws#132:\ + :i1=\E[?3h\E)0:rs=\Ec\E[?3h\E[2;0y:tc=att4410: + +# 5410 in terms of a vt100 +# (v5410: added <rmam>/<smam> based on init string -- esr) +v5410|att5410 in terms of a vt100:\ + :am:mi:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :RA=\E[?7l:SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :ic=\E[@:im=:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[0m:\ + :mr=2\E[7m:nd=2\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[1;7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m:tc=vt100+fnkeys: + +# +# Teletype Model 5420 -- A souped up 5410, with multiple windows, +# even! the 5420 has three modes: scroll, window or page mode +# this terminfo should work in scroll or window mode, but doesn't +# take advantage of any of the differences between them. +# +# Has memory below (2 lines!) +# 3 pages of memory (plus some spare) +# The 5410 sequences for :cm:, :vs:, :DC:, :DL:, :ec:, :vb:, :ho:, +# <hpa>, :st: would work for these, but these work in both scroll and window +# mode... Unset insert character so insert mode works +# :i1: sets 80 column mode, +# :is: escape sequence: +# 1) turn off all fonts +# 2) function keys off, keyboard lock off, control display off, +# insert mode off, erasure mode off, +# 3) full duplex, monitor mode off, send graphics off, nl on lf off +# 4) reset origin mode +# 5) set line wraparound +# 6) exit erasure mode, positional attribute mode, and erasure extent mode +# 7) clear margins +# 8) program ENTER to transmit ^J, +# We use \212 to program the ^J because a bare ^J will get translated by +# UNIX into a CR/LF. The enter key is needed for AT&T uOMS. +# 1 2 3 4 5 6 7 8 +# :i3: set screen color to black, +# No representation in terminfo for the delete word key: kdw1=\Ed +# Key capabilities assume the power-up send sequence... +# This :te: is not strictly necessary, but it helps maximize +# memory usefulness: :te=\Ez:, +# Alternate sgr0: :me=\E[m\EW^O:, +# Alternate sgr: :sa=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;:, +# smkx programs the SYS PF keys to send a set sequence. +# It also sets up labels f1, f2, ..., f8, and sends edit keys. +# This string causes them to send the strings :k1:-:k8: +# when pressed in SYS PF mode. +# (att4415: I added <rmam>/<smam> based on the init string -- esr) +att4415|tty5420|att5420|AT&T 4415/5420 80 cols:\ + :bs:db:mi:xo:\ + :Nl#8:lh#2:lm#78:lw#8:ws#55:\ + :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL:CM=\E[%i%d;%dt:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:LF=\E|:\ + :LO=\E~:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dE:SR=\E[%dF:\ + :UP=\E[%dA:bt=\E[Z:ch=\E[%+^AG:cl=\E[x\E[J:\ + :cm=\E[%i%d;%dx:ct=\E[3g:cv=\E[%+^Ad:ec=\E[%ds\E[%dD:\ + :ei=\E[4l:ho=\E[x:i1=100\E[?3l:i2=\E[?5l:ic@:im=\E[4h:\ + :is=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212:\ + :k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:\ + :k8=\EOj:kA=\E[L:kB=\E[Z:kD=\E[P:kE=\E[2K:kF=\E[T:kH=\Eu:\ + :kI=\E[4h:kL=\E[M:kN=\E[U:kP=\E[V:kR=\E[S:\ + :ke=\E[19;0j\E[21;1j\212:ks=\E[19;1j\E[21;4j\Eent:\ + :l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:l8=F8:ll=\Ew:\ + :me=\E[0m\017:mp=\EV:pf=\E[?9i:po=\E[?4i:ps=\E[?2i:st=\EH:\ + :ts=\E7\E[25;%+^HH:vb=\E[?5h\E[?5l:ve=\E[11;0j:\ + :vs=\E[11;1j:tc=att4410: + +att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols:\ + :co#132:lm#54:ws#97:\ + :i1=100\E[?3h:tc=att4415: + +att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv:\ + :i2=\E[?5h:vb=\E[?5l\E[?5h:tc=att4415: + +att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv:\ + :co#132:lm#54:ws#97:\ + :i1=100\E[?3h:i2=\E[?5h:vb=\E[?5l\E[?5h:tc=att4415: + +# Note that this mode permits programming USER PF KEYS and labels +# However, when you program user pf labels you have to reselect +# user pf keys to make them appear! +att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@: + +att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415: + +att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415-rv: + +att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415-w: + +att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels:\ + :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:\ + :tc=att4415-w-rv: + +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att5420_2|AT&T 5420 model 2 80 cols:\ + :am:db:hs:mi:ms:xo:\ + :co#80:it#8:li#24:lm#78:ws#55:\ + :AL=\E[%dL:CM=\E[%i%d;%dt:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:\ + :UP=\E[%dA:ae=^O:al=\E[L:as=^N:bt=\E[1Z:cd=\E[0J:ce=\E[0K:\ + :cl=\EH\EJ:cm=\E[%i%d;%dH:cr=\EG:cs=\E[%i%d;%dr:ct=\E[3g:\ + :dc=\E[P:dl=\E[M:do=\E[1B:ec=\E[%ds\E[%dD:ei=:fs=\E8:\ + :ho=\E[H:\ + :i1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r:\ + :ic=\E[@:im=:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:\ + :k6=\EOh:k7=\EOi:k8=\EOj:kD=\E[P:kH=\Eu:kI=\E[4h:kN=\E[U:\ + :kP=\E[V:kb=^H:kd=\E[B:ke=\E[19;0j:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j:ku=\E[A:le=^H:ll=\Ew:mb=\E[5m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[1C:nw=^M^J:rc=\E8:\ + :rs=\Ec\E[?3l\E[2;0y:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:\ + :st=\EH:ta=^I:ts=\E7\E[25;%+^HH:ue=\E[m:up=\E[1A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[11;0j:vs=\E[11;1j: +att5420_2-w|AT&T 5420 model 2 in 132 column mode:\ + :co#132:\ + :i1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r:\ + :tc=att5420_2: + +att4418|att5418|AT&T 5418 80 cols:\ + :am:xo:\ + :co#80:li#24:\ + :@8=\E[:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[n:\ + :F2=\E[o:F3=\E[H:F4=\E[I:F5=\E[J:F8=\E[K:F9=\E[L:FA=\E[E:\ + :FB=\E[_:FC=\E[M:FD=\E[N:FE=\E[O:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[1L:as=^N:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[1P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\ + :i1=\E[?3l:ic=\E[1@:im=:is=\E)0\E?6l\E?5l:k1=\E[h:k2=\E[i:\ + :k3=\E[j:k6=\E[k:k7=\E[l:k8=\E[f:k9=\E[w:k;=\E[m:kC=\E[%%:\ + :kd=\EU:kh=\Ec:kl=\E@:kr=\EA:ku=\ES:le=\E[D:mb=\E[5m:\ + :me=\E[m\017:mh=\E[2m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m: +att4418-w|att5418-w|AT&T 5418 132 cols:\ + :co#132:\ + :i1=\E[?3h:tc=att5418: + +att4420|tty4420|teletype 4420:\ + :bs:da:db:eo:ms:ul:xo:\ + :co#80:li#24:lm#72:\ + :al=\EL:bl=^G:cd=\EJ:ce=\Ez:cl=\EH\EJ:cm=\EY%+ %+ :cr=\EG:\ + :dc=\EP:dl=\EM:dm@:do=\EB:ed@:ho=\EH:k0=\EU:k3=\E@:kA=\EL:\ + :kB=\EO:kC=\EJ:kD=\EP:kF=\ES:kI=\E\136:kL=\EM:kR=\ET:kd=\EB:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=segment advance:\ + :l3=cursor tab:le=\ED:nd=\EC:se=\E~:sf=\EH\EM\EY7\040:\ + :so=\E}:ue=\EZ:up=\EA:us=\E\\: + +# The following is a terminfo entry for the Teletype 4424 +# asynchronous keyboard-display terminal. It supports +# the vi editor. The terminal must be set up as follows, +# +# HIGHLIGHT DEFINITION 3-TONE +# DISPLAY FUNCTION GROUP III +# +# The second entry below provides limited (a la adm3a) +# operation under GROUP II. +# +# This must be used with DISPLAY FUNCTION GROUP I or III +# and HIGHLIGHT DEFINITION 3-TONE +# The terminal has either bold or blink, depending on options +# +# (att4424: commented out :ti:=\E[1m, we don't need bright locked on -- esr) +att4424|tty4424|teletype 4424:\ + :am:bs:xo:\ + :co#80:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\EL:as=\E(0:bl=^G:bt=\EO:cd=\EJ:ce=\Ez:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\EF:\ + :dc=\EP:dl=\EM:do=\EB:ei=:ho=\E[H:ic=\E\136:im=:\ + :is=\E[20l\E[?7h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kC=\EJ:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E3:\ + :md=\E3:me=\EX\E~\EZ\E4\E(B:mh=\EW:mr=\E}:nd=\EC:nw=\EE:\ + :se=\E~:sf=^J:so=\E}:sr=\ET:st=\EH:ta=^I:ue=\EZ:up=\EA:\ + :us=\E\\: + +att4424-1|tty4424-1|teletype 4424 in display function group I:\ + :kC@:kd=\EB:kh@:kl=\ED:kr=\EC:ku=\EA:tc=att4424: + +# This entry is not one of AT&T's official ones, it was translated from the +# 4.4BSD termcap file. The highlight strings are different from att4424. +# I have no idea why this is -- older firmware version, maybe? +# The following two lines are the comment originally attached to the entry: +# This entry appears to avoid the top line - I have no idea why. +# From: jwb Wed Mar 31 13:25:09 1982 remote from ihuxp +att4424m|tty4424m|teletype 4424M:\ + :am:da:db:mi:\ + :co#80:it#8:li#23:\ + :al=\EL:bl=^G:ce=\E[K:cl=\E[2;H\E[J:cm=\E[%i%2;%2H\E[B:\ + :cr=^M:dc=\EP:dl=\EM:do=^J:ei=:ic=\E\136:im=:ip=2:\ + :is=\E[m\E[2;24r:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:\ + :nd=\E[C:nw=^M^J:se=\E[m:sf=^J:so=\E[7m:sr=\ET:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +# The Teletype 5425 is really version 2 of the Teletype 5420. It +# is quite similar, except for some minor differences. No page +# mode, for example, so all of the :cm: sequences used above have +# to change back to what's being used for the 5410. Many of the +# option settings have changed their numbering as well. +# +# This has been tested on a preliminary model. +# +# (att5425: added <rmam>/<smam> based on the init string -- esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att5425|tty5425|att4425|AT&T 4425/5425:\ + :am:da:db:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:lm#78:ws#55:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:ae=^O:\ + :al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=100\E<\E[?3l:i2=\E[?5l:im=\E[4h:\ + :is=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212:\ + :k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:\ + :k8=\EOj:kD=\E[P:kI=\E[4h:kb=^H:kd=\E[B:\ + :ke=\E[21;0j\E[25;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[21;1j\E[25;4j\Eent\E~:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[2;7m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:rc=\E8:rs=\Ec\E[?3l\E[2;0y:sc=\E7:se=\E[m:sf=^J:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:ts=\E7\E[25;%+^HH:ue=\E[m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[12;0j:\ + :vs=\E[12;1j: + +att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels:\ + :ks=\E[21;1j\E[25;4j\Eent:tc=att4425: + +att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode:\ + :co#132:lm#54:ws#97:\ + :i1=100\E[?3h:tc=tty5425: + +# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:. +# I also added <rmam>/<smam> -- esr) +att4426|tty4426|teletype 4426S:\ + :am:da:db:xo:\ + :co#80:li#24:lm#48:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B:al=\EL:as=\E(0:bl=^G:cd=\E[J:ce=\E[0K:ch=\E[%dG:\ + :cl=\E[H\E[2J\E[1U\E[H\E[2J\E[1V:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E[3g:cv=\E[%dd:dc=\EP:dl=\E[M:do=\E[B:ei=:ho=\E[H:\ + :i1=\Ec\E[?7h:ic=\E\136:im=:is=\E[m\E[1;24r:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\ + :kB=\EO:kC=\E[2J:kH=\E[24;1H:kb=^H:kd=\EB:kh=\E[H:kl=\ED:\ + :kr=\EC:ku=\EA:le=\E[D:ll=\E[24H:md=\E[5m:me=\E[m\E(B:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[5m:sr=\ET:st=\E1:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# Terminfo entry for the AT&T 510 A Personal Terminal +# Function keys 9 - 16 are available only after the +# screen labeled (soft keys/action blocks) are labeled. Function key +# 9 corresponds to the leftmost touch target on the screen, +# function key 16 corresponds to the rightmost. +# +# This entry is based on one done by Ernie Rice at Summit, NJ and +# changed by Anne Gallup, Skokie, IL, ttrdc!anne +att510a|bct510a|AT&T 510A Personal Terminal:\ + :am:mi:ms:xn:xo:\ + :Nl#8:co#80:lh#2:li#24:lw#7:\ + :#4=\E[u:%i=\E[v:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\EOe:F2=\EOf:F3=\EOg:F4=\EOh:F5=\EOi:F6=\EOj:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=+g,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[0J:\ + :ce=\E[0K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E(B\E)1:ff=^L:ho=\E[H:\ + :i1=\E(B\E)1\E[2l:i2=\E[21;1|\212:k1=\EOm:k2=\EOV:\ + :k3=\EOu:k4=\ENj:k5=\ENe:k6=\ENf:k7=\ENh:k8=\E[H:k9=\EOc:\ + :k;=\EOd:kB=\E[Z:kF=\E[S:kR=\E[T:kb=^H:kd=\E[B:ke=\E[19;0|:\ + :kl=\E[D:kr=\E[C:ks=\E[19;1|:ku=\E[A:le=^H:mb=\E[5m:\ + :md=\E[2;7m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?8i:po=\E[?4i:ps=\E[0i:rc=\E8:sc=\E7:se=\E[m:sf=^J:\ + :so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[11;3|:vi=\E[11;0|:vs=\E[11;2|: + +# Terminfo entry for the AT&T 510 D Personal Terminal +# Function keys 9 through 16 are accessed by bringing up the +# system blocks. +# Function key 9 corresponds to the leftmost touch target on the screen, +# function key 16 corresponds to the rightmost. +# +# There are problems with soft key labeling. These are due to +# strangenesses in the native terminal that are impossible to +# describe in a terminfo. +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +att510d|bct510d|AT&T 510D Personal Terminal:\ + :am:da:db:mi:ms:xn:xo:\ + :Nl#8:co#80:lh#2:li#24:lm#48:lw#7:\ + :#4=\E[u:%i=\E[v:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\EOe:F2=\EOf:F3=\EOg:F4=\EOh:F5=\EOi:F6=\EOj:IC=\E[%d@:\ + :LE=\E[%dD:LF=\E<:LO=\E?:MC=\E\072:ML=\E4:MR=\E5:RI=\E[%dC:\ + :RX=\E[29;1|:SF=\E[%dS:SR=\E[%dT:SX=\E[29;0|:UP=\E[%dA:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[0J:\ + :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=\E[B:eA=\E(B\E)1:\ + :ei=\E[4l:ff=^L:ho=\E[H:i1=\E(B\E)1\E[5;0|:\ + :i2=\E[21;1|\212:im=\E[4h:k1=\EOm:k2=\EOV:k3=\EOu:k4=\ENj:\ + :k5=\ENe:k6=\ENf:k7=\ENh:k8=\E[H:k9=\EOc:k;=\EOd:kB=\E[Z:\ + :kF=\E[S:kR=\E[T:kb=^H:kd=\E[B:ke=\E[19;0|:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1|:ku=\E[A:le=^H:ll=\E#2:mb=\E[5m:md=\E[2;7m:\ + :me=\E[0m:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?8i:po=\E[?4i:ps=\E[0i:rc=\E8:rs=\E[5;0|:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m:ve=\E[11;3|:vs=\E[11;2|: + +# (att500: I merged this with the att513 entry, att500 just used att513 -- esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att500|att513|AT&T 513 using page mode:\ + :am:mi:ms:xn:xo:\ + :co#80:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:ae=^O:\ + :al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:dc=1\E[P:\ + :dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\ + :i1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l:\ + :im=\E[4h:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:\ + :k7=\EOi:k8=\EOj:kD=\ENf:kI=\ENj:kN=\E[U:kP=\E[V:kb=^H:\ + :kd=\E[B:ke=\E[19;0|\E[21;1|\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1|\E[21;4|\Eent:ku=\E[A:le=^H:ll=\E#2:mb=\E[5m:\ + :md=\E[2;7m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[11;0|:vs=\E[11;1|: + +# 01-07-88 +# printer must be set to EMUL ANSI to accept ESC codes +# :up: stops at top margin +# :i1: sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font +# and alt font ascii,wrap on,tabs cleared +# :is: disables newline on LF,Emphasized off +# The <u0> capability sets form length +att5310|att5320|AT&T Model 53210 or 5320 matrix printer:\ + :YA:YD:\ + :Ya#8192:Yi#10:Yj#12:Yk#100:Yl#72:Ym#120:co#132:it#8:li#66:\ + :DO=\E[%de:RI=\E[%da:ZM=\E[5m:ZU=\E[m:Zl=\E[;%dr:\ + :Zm=\E[%+^As:Zn=\E[;%+^As:Zp=\E[%dr:ch=\E[%d`:cr=^M:\ + :cv=\E[%dd:do=^J:ff=^L:i1=\Ec:is=\E[20l\r:nd=\040:ta=^I:\ + :u0=\E[%dt:up=\EM: + +# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL +# The following SET-UP modes are assumed for normal operation: +# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL +# Other SET-UP modes may be set for operator convenience or communication +# requirements. This termcap description is for the Resident Terminal Mode. +# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# The BRL entry also said: UNSAFE :ll=\E[70H: +att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs:\ + :am:xo:\ + :co#88:it#8:li#70:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:SF=\E[%dS:\ + :SR=\E[%dT:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=:ho=\E[H:\ + :ic=\E[@:im=:kC=\E[2J:kH=\E[70;1H:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:nw=^M^J:r1=\Ec:\ + :rc=\E8:sc=\E7:sf=^J:sr=\E[T:ta=^I:up=\E[A: + +# 5620 terminfo (2.0 or later ROMS with char attributes) +# The following SET-UP modes are assumed for normal operation: +# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR +# Other SET-UP modes may be set for operator convenience or communication +# requirements. This termcap description is for Resident Terminal Mode. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# assumptions: :sf: (scroll forward one line) is only done at screen bottom +# Be aware that older versions of the dmd have a firmware bug that affects +# parameter defaulting; for this terminal, the 0 in \E[0m is not optional. +# :ms: is from an otherwise inferior BRL for this terminal. That entry +# also has :ll:=\E[70H commented out and marked unsafe. +# For more, see the 5620 FAQ maintained by David Breneman <daveb@dgtl.com>. +att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns:\ + :NL:NP:am:bs:ms:xo:\ + :co#88:it#8:li#70:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:SF=\E[%dS:\ + :SR=\E[%dT:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\ + :ic=\E[@:im=:kC=\E[2J:kH=\E[70;1H:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[2m:me=\E[0m:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:r1=\Ec:rc=\E8:sc=\E7:se=\E[0m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[0m:up=\E[A:us=\E[4m: +att5620-24|tty5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer:\ + :li#24:tc=att5620: +att5620-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer:\ + :li#34:tc=att5620: +# 5620 layer running the "S" system's downloaded graphics handler: +att5620-s|tty5620-s|layer|vitty|5620 S layer:\ + :am:bs:pt:\ + :co#80:it#8:li#72:\ + :al=\EI:bl=^G:ce=\EK:cl=^L:cm=\EY%r%+ %+ :cr=^M:dl=\ED:\ + :do=^J:kC=\E[2J:kH=\E[70;1H:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:sf=^J:ta=^I:up=^K:vb=\E^G: + +# Entries for <kf15> thru <kf28> refer to the shifted system pf keys. +# +# Entries for <kf29> thru <kf46> refer to the alternate keypad mode +# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att605|AT&T 605 80 column 102key keyboard:\ + :am:eo:xo:\ + :co#80:li#24:ws#80:\ + :DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:ae=^O:al=\E[L:as=\E)0\016:\ + :bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:\ + :i1=\E[8;0|\E[?\E[13;20l\E[?\E[12h:ic=\E[@:im=\E[4h:\ + :is=\E[m\017:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:\ + :k6=\EOh:k7=\EOi:k8=\EOj:k9=\ENo:kD=\E[P:kI=\E[@:kN=\E[U:\ + :kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:rs=\Ec\E[?3l:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:ts=\E7\E[25;%i%dx:ue=\E[m:\ + :up=\E[A:us=\E[4m: +att605-pc|ATT 605 in pc term mode:\ + :@7=\E[F:S4=250\E[?11l\E[50;1|:S5=400\E[50;0|:XF=g:XN=e:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bt=\E[Z:dc=\E[P:dl=\E[M:do=\E[B:ei=:ic=\E[@:im=:\ + :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:k;=\E[V:kB=\E[Z:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kN=\E[G:kP=\E[I:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=\E[D:nd=\E[C:up=\E[A:tc=att605: +att605-w|AT&T 605-w 132 column 102 key keyboard:\ + :co#132:ws#132:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0:\ + :tc=att605: +# (att610: I added <rmam>/<smam> based on the init string. I also +# added :SF: and :SR: because the BSD file says the att615s have them, +# and the 615 is like a 610 with a big keyboard, and most of their other +# smart terminals support the same sequence -- esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att610|AT&T 610; 80 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:\ + :al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0:\ + :i2=\E(B\E)0:im=\E[4h:is=\E[m\017:k1=\EOc:k2=\EOd:k3=\EOe:\ + :k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\ENo:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:rs=\Ec\E[?3l:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:\ + :sr=\EM:ta=^I:ts=\E7\E[25;%i%dx:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h: +att610-w|AT&T 610; 132 column; 98key keyboard:\ + :co#132:ws#132:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:\ + :tc=att610: + +att610-103k|AT&T 610; 80 column; 103key keyboard:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:%0=\EOt:%1=\EOm:%2=\ENi:\ + :%3=\EOl:%4=\ENc:%5=\ENh:%6=\EOv:%7=\EOr:%8=\ENg:%9=\EOz:\ + :%a=\EOL:%b=\ENC:%c=\ENH:%d=\EOR:%e=\ENG:%f=\EOZ:%g=\EOT:\ + :%h=\EOY:%j=\EOQ:&0=\EOW:&1=\EOb:&2=\ENa:&3=\EOy:&4=\EOB:\ + :&5=\EOq:&6=\EOo:&7=\EOp:&8=\EOs:&9=\ENB:*0=\EOX:*1=\EOU:\ + :*2=\END:*3=\EON:*4=\ENF:*5=\ENE:*6=\ENI:*7=\ENN:*8=\EOA:\ + :*9=\EOK:@0=\EOx:@1=\E9:@2=\EOw:@3=\EOV:@4=\EOu:@5=\ENd:\ + :@6=\EOn:@7=\E0:@8=^M:@9=\EOk:F1@:F2@:F3@:F4@:k9@:k;@:kD=\ENf:\ + :kE=\EOa:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:kP=\E[V:tc=att610: +att610-103k-w|AT&T 610; 132 column; 103key keyboard:\ + :co#132:ws#132:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:\ + :tc=att610-103k: +att615|AT&T 615; 80 column; 98key keyboard:\ + :#4=\E[ A:%i=\E[ @:F5=\EOC:F6=\EOD:F7=\EOE:F8=\EOF:F9=\EOG:\ + :FA=\EOH:FB=\EOI:FC=\EOJ:FD=\ENO:FE=\ENP:FF=\ENQ:FG=\ENR:\ + :FH=\ENS:FI=\ENT:FJ=\EOP:FK=\EOQ:FL=\EOR:FM=\EOS:FN=\EOw:\ + :FO=\EOx:FP=\EOy:FQ=\EOm:FR=\EOt:FS=\EOu:FT=\EOv:FU=\EOl:\ + :FV=\EOq:FW=\EOr:FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:tc=att610: +att615-w|AT&T 615; 132 column; 98key keyboard:\ + :#4=\E[ A:%i=\E[ @:F5=\EOC:F6=\EOD:F7=\EOE:F8=\EOF:F9=\EOG:\ + :FA=\EOH:FB=\EOI:FC=\EOJ:FD=\ENO:FE=\ENP:FF=\ENQ:FG=\ENR:\ + :FH=\ENS:FI=\ENT:FJ=\EOP:FK=\EOQ:FL=\EOR:FM=\EOS:FN=\EOw:\ + :FO=\EOx:FP=\EOy:FQ=\EOm:FR=\EOt:FS=\EOu:FT=\EOv:FU=\EOl:\ + :FV=\EOq:FW=\EOr:FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:\ + :tc=att610-w: +att615-103k|AT&T 615; 80 column; 103key keyboard:\ + :#4=\E[ A:%i=\E[ @:tc=att610-103k: +att615-103k-w|AT&T 615; 132 column; 103key keyboard:\ + :#4=\E[ A:%i=\E[ @:tc=att610-103k-w: +# (att620: I added <rmam>/<smam> based on the init string and +# :SR:/:SF: from a BSD termcap -- esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att620|AT&T 620; 80 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ae=\E(B\017:al=\E[L:as=\E)0\016:bl=^G:bt=\E[Z:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h:\ + :i2=\E(B\E)0:im=\E[4h:is=\E[m\017:k1=\EOc:k2=\EOd:k3=\EOe:\ + :k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\ENo:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\E(B\017:mh=\E[2m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:rc=\E8:rs=\Ec\E[?3l:sc=\E7:se=\E[m:sf=\ED:\ + :so=\E[7m:sr=\EM:ta=^I:ts=\E7\E[25;%i%dx:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h: +att620-w|AT&T 620; 132 column; 98key keyboard:\ + :co#132:ws#132:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:\ + :tc=att620: +att620-103k|AT&T 620; 80 column; 103key keyboard:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:%0=\EOt:%1=\EOm:%2=\ENi:\ + :%3=\EOl:%4=\ENc:%5=\ENh:%6=\EOv:%7=\EOr:%8=\ENg:%9=\EOz:\ + :%a=\EOL:%b=\ENC:%c=\ENH:%d=\EOR:%e=\ENG:%f=\EOZ:%g=\EOT:\ + :%h=\EOY:%j=\EOQ:&0=\EOW:&1=\EOb:&2=\ENa:&3=\EOy:&4=\EOB:\ + :&5=\EOq:&6=\EOo:&7=\EOp:&8=\EOs:&9=\ENB:*0=\EOX:*1=\EOU:\ + :*2=\END:*3=\EON:*4=\ENF:*5=\ENE:*6=\ENI:*7=\ENN:*8=\EOA:\ + :*9=\EOK:@0=\EOx:@1=\E9:@2=\EOw:@3=\EOV:@4=\EOu:@5=\ENd:\ + :@6=\EOn:@7=\E0:@8=^M:@9=\EOk:F1@:F2@:F3@:F4@:F5@:F6@:F7@:F8@:\ + :F9@:FA@:FB@:FC@:FD@:FE@:FF@:FG@:FH@:FI@:FJ@:FK@:FL@:FM@:FN@:FO@:FP@:\ + :FQ@:FR@:FS@:FT@:FU@:FV@:FW@:FX@:FY@:FZ@:Fa@:k9@:k;@:kD=\ENf:\ + :kE=\EOa:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:kP=\E[V:tc=att620: + +att620-103k-w|AT&T 620; 132 column; 103key keyboard:\ + :co#132:ws#132:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:\ + :tc=att620-103k: + +# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal +# The following SETUP modes are assumed for normal operation: +# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF +# Font_Size=Large Non-Layers_Window_Cols=80 +# Non-Layers_Window_Rows=60 +# Other SETUP modes may be set for operator convenience or communication +# requirements. Some capabilities assume a printer attached to the Aux EIA +# port. This termcap description is for the Fixed Non-Layers Window. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# (att630: added :ic:, :mb: and :mh: from a BSD termcap file -- esr) +att630|AT&T 630 windowing terminal:\ + :NP:am:bs:da:db:mi:ms:xo:\ + :co#80:it#8:li#60:lm#0:\ + :@8=^M:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\ENq:\ + :F2=\ENr:F3=\ENs:F4=\ENt:F5=\ENu:F6=\ENv:F7=\ENw:F8=\ENx:\ + :F9=\ENy:FA=\ENz:FB=\EN{:FC=\EN|:FD=\EN}:FE=\EN~:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :al=\E[L:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:\ + :ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:is=\E[m:k9=\ENo:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kD=\E[P:kI=\E[@:kL=\E[M:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\ + :me=\E[m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?4i:\ + :po=\E[?5i:rc=\E8:rs=\Ec:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:\ + :sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: +att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines:\ + :li#24:tc=att630: + +# This is the att700 entry for 700 native emulation of the AT&T 700 +# terminal. Comments are relative to changes from the 605V2 entry and +# att730 on which the entry is based. Comments show the terminfo +# capability name, termcap name, and description. +# +# Here is what's going onm in the init string: +# ESC [ 50;4| set 700 native mode (really is 605) +# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line) +# ESC [ 53;0| set GenFlow to Xon/Xoff +# ESC [ 8 ;0| set CR on NL +# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h) +# ESC [ ? 4 l jump scroll +# ESC [ ? 5 l/h video: normal (l); reverse (h) +# ESC [ ?13 l Labels on +# ESC [ ?15 l parity check = no +# ESC [ 13 l monitor mode off +# ESC [ 20 l LF on NL (not CRLF on NL) +# ESC [ ? 7 h autowrap on +# ESC [ 12 h local echo off +# ESC ( B GO = ASCII +# ESC ) 0 G1 = Special Char & Line Drawing +# ESC [ ? 31 l Set 7 bit controls +# +# Note: Most terminals, especially the 600 family use Reverse Video for +# standout mode. DEC also uses reverse video. The VT100 uses bold in addition +# Assume we should stay with reverse video for 70.. However, the 605V2 exits +# standout mode with \E[m (all normal attributes). The 730 entry simply +# exits reverse video which would leave other current attributes intact. It +# was assumed the 730 entry to be more correct so rmso has changed. The +# 605V2 has no sequences to turn individual attributes off, thus its setting +# and the rmso/smso settings from the 730. +# +# Note: For the same reason as above in rmso I changed exit under-score mode +# to specifically turn off underscore, rather than return to all normal +# attributes +# +# Note: The following pkey_xmit is taken from the 605V2 which contained the +# capability as pfxl. It was changed here to pfx since pfxl +# will only compile successfully with Unix 4.0 tic. Also note that pfx only +# allows strings to be parameters and label values must be programmed as +# constant strings. Supposedly the pfxl of Version 4.0 allows both labels +# and strings to be parameters. The 605V2 pfx entry should be examined later +# in this regard. For reference the 730 pfxl entry is shown here for comparison +# 730 pfx entry: +# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s +# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s, +# +# (for 4.0 tic) +# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, +# +# (for <4.0 tic) +# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, +# +# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9 +# +# Port1 Interface +# +# modular 10 pin Connector +# Left side Right side +# Pin 1 2 3 4 5 6 7 8 9 10 +# +# Key (notch) at bottom +# +# Pin 1 DSR +# 3 DCD +# 4 DTR +# 5 Sig Ground +# 6 RD +# 7 SD +# 8 CTS +# 9 RTS +# 10 Frame Ground +# +# The manual is 189 pages and is loaded with details about the escape codes, +# etc..... Available from AT&T CIC 800-432-6600... +# ask for Document number 999-300-660.. +# +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att700|AT&T 700 24x80 column display w/102key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\ + :fs=\E8:ho=\E[H:i2=\E(B\E)0:im=\E[4h:\ + :is=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017:\ + :k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:\ + :k8=\EOj:k9=\ENo:kD=\E[P:kI=\E[@:kN=\E[U:kP=\E[V:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:\ + :st=\EH:ta=^I:ts=\E7\E[99;%i%dx:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h: + +# This entry was modified 3/13/90 by JWE. +# fixes include additions of <enacs>, correcting :rp:, and modification +# of <kHOM>. (See comments below) +# att730 has status line of 80 chars +# These were commented out: :SF=\E[%p1%dS:, :SR=\E[%p1%dT:, +# the <kf25> and up keys are used for shifted system Fkeys +# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is +# currently the same as :kh: (unshifted HOME or \E[H). On the 102, 102+1 +# and 122 key keyboards, the 730's translation is \E[2J. For consistency +# <kHOM> has been commented out. The user can uncomment <kHOM> if using the +# 102, 102+1, or 122 key keyboards +# kHOM=\E[2J, +# (att730: I added <rmam>/<smam> based on the init string -- esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +att730|AT&T 730 windowing terminal:\ + :am:da:db:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#60:lm#0:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:\ + :ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B:\ + :i2=\E(B\E)0:im=\E[4h:is=\E[m\017:k1=\EOc:k2=\EOd:k3=\EOe:\ + :k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\ENo:kI=\E[@:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:rs=\Ec\E[?3l:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:ta=^I:ts=\E7\E[;%i%dx:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h: +att730-41|730MTG-41|AT&T 730-41 windowing terminal Version:\ + :li#41:tc=att730: +att730-24|730MTG-24|AT&T 730-24 windowing terminal Version:\ + :li#24:tc=att730: +att730r|730MTGr|AT&T 730 rev video windowing terminal Version:\ + :i1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B:\ + :vb=\E[?5l\E[?5h:tc=att730: +att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version:\ + :li#41:tc=att730r: +att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version:\ + :li#24:tc=att730r: + +# The following represents the screen layout along with the associated +# bezel buttons for the 5430/pt505 terminal. The "kf" designations do +# not appear on the screen but are shown to reference the bezel buttons. +# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate +# position relative to the screen. +# +# +# +# +----------------------------------------------------------------+ +# | | +# XXXX | kf0 kf24 | XXXX +# | | +# | | +# XXXX | kf1 kf23 | XXXX +# | | +# | | +# XXXX | kf2 kf22 | XXXX +# | | +# | | +# XXXX | kf3 kf21 | XXXX +# | | +# | | +# XXXX | kf4 kf20 | XXXX +# | | +# | | +# XXXX | kf5 kf19 | XXXX +# | | +# | | +# XXXX | kf6 kf18 | XXXX +# | | +# | | +# XXXX | | XXXX +# | | +# | | +# +----------------------------------------------------------------+ +# +# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX +# +# Note: XXXX represents the screen buttons +# CMD REDRAW +# +# MAIL +# +# version 1 note: +# The character string sent by key 'kf26' may be user programmable +# to send either \E[16s, or \E[26s. +# The character string sent by key 'krfr' may be user programmable +# to send either \E[17s, or \E[27s. +# +# Depression of the "CMD" key sends \E! (kcmd) +# Depression of the "MAIL" key sends \E[26s (kf26) +# "REDRAW" same as "REFRESH" (krfr) +# +# "kf" functions adds carriage return to output string if terminal is in +# 'new line' mode. +# +# The following are functions not covered in the table above: +# +# Set keyboard character (SKC): \EPn1;Pn2w +# Pn1= 0 Back Space key +# Pn1= 1 Break key +# Pn2= Program char (hex) +# +# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t +# Pn1= Window number (1-39) +# Pn2-Pn5= Y;X;Y;X coordinates +# +# Screen Selection (SSL): \E[Pnu +# Pn= Window number +# +# Set Terminal Modes (SM): \E[Pnh +# Pn= 3 Graphics mode +# Pn= > Cursor blink +# Pn= < Enter new line mode +# Pn= = Enter reverse insert/replace mode +# Pn= ? Enter no scroll mode +# +# Reset Terminal Mode (RM): \E[Pnl +# Pn= 3 Exit graphics mode +# Pn= > Exit cursor blink +# Pn= < Exit new line mode +# Pn= = Exit reverse insert/replace mode +# Pn= ? Exit no scroll mode +# +# Screen Status Report (SSR): \E[Pnp +# Pn= 0 Request current window number +# Pn= 1 Request current window dimensions +# +# Device Status Report (DSR): \E[6n Request cursor position +# +# Call Status Report (CSR): \E[Pnv +# Pn= 0 Call failed +# Pn= 1 Call successful +# +# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string +# Pn1= Button number to be loaded +# Pn2= Character count of "string" +# Pn3= Key mode being loaded: +# 0= Unshifted +# 1= Shifted +# 2= Control +# String= Text string (15 chars max) +# +# Screen Number Report (SNR): \E[Pnp +# Pn= Screen number +# +# Screen Dimension Report (SDR): \E[Pn1;Pn2r +# Pn1= Number of rows available in window +# Pn2= Number of columns available in window +# +# Cursor Position Report (CPR): \E[Pn1;Pn2R +# Pn1= "Y" Position of cursor +# Pn2= "X" Position of cursor +# +# Request Answer Back (RAB): \E[c +# +# Answer Back Response (ABR): \E[?;*;30;VSV +# *= 0 No printer available +# *= 2 Printer available +# V= Software version number +# SV= Software sub version number +# (printer-available field not documented in v1) +# +# Screen Alignment Aid: \En +# +# Bell (lower pitch): \E[x +# +# Dial Phone Number: \EPdstring\ +# string= Phone number to be dialed +# +# Set Phone Labels: \EPpstring\ +# string= Label for phone buttons +# +# Set Clock: \EPchour;minute;second\ +# +# Position Clock: \EPsY;X\ +# Y= "Y" coordinate +# X= "X" coordinate +# +# Delete Clock: \Epr\ +# +# Programming The Function Buttons: \EPfPn;string\ +# Pn= Button number (00-06, 18-24) +# (kf00-kf06, kf18-kf24) +# string= Text to sent on button depression +# +# The following in version 2 only: +# +# Request For Local Directory Data: \EPp12;\ +# +# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\ +# +# Request for Local Directory Data in print format: \EPp13;\ +# +# Enable 'Prt on Line' mode: \022 (DC2) +# +# Disable 'Prt on Line' mode: \024 (DC4) +# + +# 05-Aug-86: +# The following Terminfo entry describes functions which are supported by +# the AT&T 5430/pt505 terminal software version 2 and later. +att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal:\ + :am:xo:\ + :co#80:it#8:li#24:\ + :&2=\E[27s:@4=\E!:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F8=\E[18s:F9=\E[19s:FA=\E[20s:FB=\E[21s:FC=\E[22s:\ + :FD=\E[23s:FE=\E[24s:FG=\E[26s:LE=\E[%dD:RA=\E[11;1j:\ + :RI=\E[%dC:SA=\E[11;0j:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cb=\E[2K:cd=\E[0J:\ + :ce=\E[0K:cl=\E[2J\E[H:cm=\E[%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=\E[4l:ho=\E[H:\ + :i1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l:\ + :im=\E[4h:k0=\E[00s:k1=\E[01s:k2=\E[02s:k3=\E[03s:\ + :k4=\E[04s:k5=\E[05s:k6=\E[06s:kb=^H:kd=\E[B:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:r1=\Ec:rc=\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[1m:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[>l:vs=\E[>h: + +# The following Terminfo entry describes functions which are supported by +# the AT&T 5430/pt505 terminal software version 1. +att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines:\ + :li#24:\ + :RA@:SA@:pf@:po@:rc@:sc@:tc=att505: +tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines:\ + :li#22:tc=att505: +# +#### ------------------ TERMINFO FILE CAN BE SPLIT HERE --------------------- +# This cut mark helps make life less painful for people running ncurses tic +# on machines with relatively little RAM. The file can be broken in half here +# cleanly and compiled in sections -- no `use' references cross this cut +# going forward. +# + +#### Ampex (Dialogue) +# +# Yes, these are the same people who are better-known for making audio- and +# videotape. I'm told they are located in Redwood City, CA. +# + +# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981 +# (ampex80: some capabilities merged in from SCO's entry -- esr) +ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80:\ + :am:bs:bw:ul:\ + :co#80:it#8:li#24:\ + :al=5*\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=75\E*:cm=\E=%+ %+ :\ + :cr=^M:ct=\E3:dc=\EW:dl=5*\ER:do=^J:ei=:ic=\EQ:im=:is=\EA:\ + :le=^H:nd=^L:se=\Ek:sf=^J:so=\Ej:st=\E1:ta=^I:ue=\Em:up=^K:\ + :us=\El: +# This entry was from somebody anonymous, Tue Aug 9 20:11:37 1983, who wrote: +ampex175|ampex d175:\ + :am:\ + :co#80:li#24:\ + :al=\EE:bl=^G:cd=\Ey:ce=\Et:cl=\E+:cm=\E=%+ %+ :cr=^M:\ + :dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:is=\EX\EA\EF:\ + :kA=\EE:kD=\EW:kI=\EQ:kL=\ER:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:\ + :le=^H:ll=^^^K:nd=^L:se=\Ek:sf=^J:so=\Ej:te=\EF:ti=\EN:\ + :ue=\Em:up=^K:us=\El: +# No backspace key in the main QWERTY cluster. Fortunately, it has a +# NEWLINE/PAGE key just above RETURN that sends a strange single-character +# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS +# mode), this key can be used as the erase key; I find I like this. Because +# some people and some systems may not, there is another termcap ("ampex175") +# that suppresses this little eccentricity by omitting the relevant capability. +ampex175-b|ampex d175 using left arrow for erase:\ + :kb=^_:tc=ampex175: +# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu> +# (ampex210: removed obsolete ":kn#10:" -- esr) +ampex210|a210|ampex a210:\ + :am:bs:hs:xn:\ + :co#80:it#8:li#24:sg#1:\ + :al=\EE:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :dc=\EW:\ + :dl=\ER:ei=:fs=\E.2:ho=^^:ic=\EQ:if=/usr/share/tabset/std:\ + :im=:is=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En:\ + :k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:k5=^A5\r:\ + :k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^V:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:mk@:nd=^L:ta=^I:ts=\E.0\Eg\E}\Ef:up=^K:\ + :vb=\EU\EX\EU\EX\EU\EX\EU\EX:tc=adm+sgr: +# (ampex219: I added <rmam>/<smam> based on the init string, added :vs: +# from ampex219w, added :ve:=\E[?3l, irresistibly suggested by :vs:, +# and moved the padding to be *after* the caps -- esr) +ampex219|ampex-219|amp219|Ampex with Automargins:\ + :hs:xn:\ + :co#80:it#8:li#24:\ + :RA=\E[?7l:SA=\E[?7h:bl=^G:bt=\E[Z:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=%i\E[%2;%2r:\ + :do=\E[B:ho=\E[H:\ + :is=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k0=\E[21~:\ + :k1=\E[7~:k2=\E[8~:k3=\E[9~:k4=\E[10~:k5=\E[11~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:kd=\E[B:ke=\E>:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=^H:mb=2\E[5m:md=2\E[1m:\ + :me=2\E[m:mh=\E[1m:mr=\E[7m:nd=2\E[C:se=2\E[m:sf=^J:\ + :so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:us=2\E[4m:\ + :ve=\E[?3l:vs=\E[?3h: +ampex219w|ampex-219w|amp219w|Ampex 132 cols:\ + :co#132:li#24:\ + :bl=^G:cr=^M:do=^J:is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ + :sf=^J:tc=ampex219: +# (ampex232: removed :if=/usr/share/tabset/ampex:, no file and no :st: --esr) +ampex232|ampex-232|Ampex Model 232:\ + :am:\ + :co#80:li#24:sg#1:\ + :al=5*\EE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :dc=\EW:\ + :dl=5*\ER:do=^V:ei=:ic=\EQ:im=:is=\Eg\El:k0=^A@\r:k1=^AA\r:\ + :k2=^AB\r:k3=^AC\r:k4=^AD\r:k5=^AE\r:k6=^AF\r:k7=^AG\r:\ + :k8=^AH\r:k9=^AI\r:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\ + :mk@:nd=^L:ta=^I:up=^K:vb=\Eb\Ed:ve=\E.4:vi=\E.0:tc=adm+sgr: +# (ampex: removed :if=/usr/share/tabset/amp-132:, no file and no :st: -- esr) +ampex232w|Ampex Model 232 / 132 columns:\ + :co#132:li#24:\ + :is=\E\034Eg\El:tc=ampex232: + +#### Ann Arbor (aa) +# +# Ann Arbor made dream terminals for hackers -- large screen sizes and huge +# numbers of function keys. At least some used monitors in portrait mode, +# allowing up to 76-character screen heights! They were reachable at: +# +# Ann Arbor Terminals +# 6175 Jackson Road +# Ann Arbor, MI 48103 +# (313)-663-8000 +# +# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor +# can't be found on the Web; I fear they're long dead. R.I.P. +# + + +# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs. +# Highly modified 6/22 by Mike O'Brien. +# split out into several for the various screen sizes by dave-yost@rand +# Modifications made 3/82 by Mark Horton +# Modified by Tom Quarles at UCB for greater efficiency and more diversity +# status line moved to top of screen, :vb: removed 5/82 +# Some unknown person at SCO then hacked the init strings to make them more +# efficient. +# +# assumes the following setup: +# A menu: 0000 1010 0001 0000 +# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 +# C menu: 56 66 0 0 9600 0110 1100 +# D menu: 0110 1001 1 0 +# +# Briefly, the settings are for the following modes: +# (values are for bit set/clear with * indicating our preference +# and the value used to test these termcaps) +# Note that many of these settings are irrelevent to the terminfo +# and are just set to the default mode of the terminal as shipped +# by the factory. +# +# A menu: 0000 1010 0001 0000 +# Block/underline cursor* +# blinking/nonblinking cursor* +# key click/no key click* +# bell/no bell at column 72* +# +# key pad is cursor control*/key pad is numeric +# return and line feed/return for :cr: key * +# repeat after .5 sec*/no repeat +# repeat at 25/15 chars per sec. * +# +# hold data until pause pressed/process data unless pause pressed* +# slow scroll/no slow scroll* +# Hold in area/don't hold in area* +# functions keys have default*/function keys disabled on powerup +# +# show/don't show position of cursor during page transmit* +# unused +# unused +# unused +# +# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 +# Baud rate (9600*) +# +# 2 bits of parity - 00=odd,01=even*,10=space,11=mark +# 1 stop bit*/2 stop bits +# parity error detection off*/on +# +# keyboard local/on line* +# half/full duplex* +# disable/do not disable keyboard after data transmission* +# +# transmit entire page/stop transmission at cursor* +# transfer/do not transfer protected characters* +# transmit all characters/transmit only selected characters* +# transmit all selected areas/transmit only 1 selected area* +# +# transmit/do not transmit line separators to host* +# transmit/do not transmit page tab stops tabs to host* +# transmit/do not transmit column tab stop tabs to host* +# transmit/do not transmit graphics control (underline,inverse..)* +# +# enable*/disable auto XON/XOFF control +# require/do not require receipt of a DC1 from host after each LF* +# pause key acts as a meta key/pause key is pause* +# unused +# +# unused +# unused +# unused +# unused +# +# XON character (17*) +# XOFF character (19*) +# +# C menu: 56 66 0 0 9600 0110 1100 +# number of lines to print data on (printer) (56*) +# +# number of lines on a sheet of paper (printer) (66*) +# +# left margin (printer) (0*) +# +# number of pad chars on new line to printer (0*) +# +# printer baud rate (9600*) +# +# printer parity: 00=odd,01=even*,10=space,11=mark +# printer stop bits: 2*/1 +# print/do not print guarded areas* +# +# new line is: 01=LF,10=CR,11=CRLF* +# unused +# unused +# +# D menu: 0110 1001 1 0 +# LF is newline/LF is down one line, same column* +# wrap to preceding line if move left from col 1*/don't wrap +# wrap to next line if move right from col 80*/don't wrap +# backspace is/is not destructive* +# +# display*/ignore DEL character +# display will not/will scroll* +# page/column tab stops* +# erase everything*/erase unprotected only +# +# editing extent: 0=display,1=line*,2=field,3=area +# +# unused +# + +annarbor4080|aa4080|ann arbor 4080:\ + :am:bs:\ + :co#80:li#40:\ + :bl=^G:cl=2\014:cr=^M:ct=^\^P^P:do=^J:ho=^K:kb=^^:kd=^J:\ + :kh=^K:kl=^H:kr=^_:ku=^N:le=^H:nd=^_:sf=^J:st=^]^P1:ta=^I:\ + :up=^N: + +# Strange Ann Arbor terminal from BRL +aas1901|Ann Arbor K4080 w/S1901 mod:\ + :am:\ + :co#80:li#40:\ + :bl=^G:cl=^L:cr=^M:do=^J:ho=^K:kb=^H:kd=^J:kl=^H:le=^H:\ + :ll=^O\200c:nd=^_:nw=^M^J:sf=^J:ta=^I:up=^N: + +# If you're using the GNU termcap library, add +# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp: +# to these capabilities. This is the nonstandard GNU termcap scrolling +# capability, arguments are: +# 1. Total number of lines on the screen. +# 2. Number of lines above desired scroll region. +# 3. Number of lines below (outside of) desired scroll region. +# 4. Total number of lines on the screen, the same as the first parameter. +# The generic Ann Arbor entry is the only one that uses this. +# (sgr removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly):\ + :am:bs:km:mi:xo:\ + :co#80:it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=4*\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=3\E[L:bl=^G:bt=\E[Z:\ + :cd=\E[J:ce=5\E[K:cl=156\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=^K:ei=:ho=\E[H:\ + :i1=\E[m\E7\E[H\E9\E8:i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:\ + :ic=4\E[@:im=:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:\ + :k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:kD=\E[P:kI=\E[@:kb=^H:\ + :kd=\E[B:\ + :ke=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\:\ + :kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\:\ + :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mm=\E[>52h:\ + :mo=\E[>52l:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=^K:\ + :so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: + +aaa+rv|ann arbor ambassador in reverse video:\ + :i1=\E[7m\E7\E[H\E9\E8:mb=\E[5;7m:md=\E[1;7m:\ + :me=\E[7m\016:mk=\E[7;8m:mr=\E[m:r1=156\E[H\E[7m\E[J:\ + :se=\E[7m:so=\E[m:ue=\E[7m:us=\E[4;7m: +# Ambassador with the DEC option, for partial vt100 compatibility. +aaa+dec|ann arbor ambassador in dec vt100 mode:\ + :ac=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}:\ + :ae=^N:as=^O:cs=\E[%i%d;%dr:eA=\E(0: +aaa-18|ann arbor ambassador/18 lines:\ + :li#18:\ + :is=\E7\E[60;0;0;18p\E8:te=\E[60;0;0;18p\E[60;1H\E[K:\ + :ti=\E[18;0;0;18p:tc=aaa+unk: +aaa-18-rv|ann arbor ambassador/18 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-18: +aaa-20|ann arbor ambassador/20 lines:\ + :li#20:\ + :is=\E7\E[60;0;0;20p\E8:te=\E[60;0;0;20p\E[60;1H\E[K:\ + :ti=\E[20;0;0;20p:tc=aaa+unk: +aaa-22|ann arbor ambassador/22 lines:\ + :li#22:\ + :is=\E7\E[60;0;0;22p\E8:te=\E[60;0;0;22p\E[60;1H\E[K:\ + :ti=\E[22;0;0;22p:tc=aaa+unk: +aaa-24|ann arbor ambassador/24 lines:\ + :li#24:\ + :is=\E7\E[60;0;0;24p\E8:te=\E[60;0;0;24p\E[60;1H\E[K:\ + :ti=\E[24;0;0;24p:tc=aaa+unk: +aaa-24-rv|ann arbor ambassador/24 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-24: +aaa-26|ann arbor ambassador/26 lines:\ + :li#26:\ + :is=\E7\E[60;0;0;26p\E8:te=\E[60;0;0;26p\E[26;1H\E[K:\ + :ti=\E[H\E[J\E[26;0;0;26p:tc=aaa+unk: +aaa-28|ann arbor ambassador/28 lines:\ + :li#28:\ + :is=\E7\E[60;0;0;28p\E8:te=\E[60;0;0;28p\E[28;1H\E[K:\ + :ti=\E[H\E[J\E[28;0;0;28p:tc=aaa+unk: +aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status:\ + :es:hs:\ + :li#29:\ + :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:\ + :fs=\E[>51l:is=\r\n\E[A\E7\E[60;1;0;30p\E8:\ + :te=\E[60;1;0;30p\E[29;1H\E[K:\ + :ti=\E[H\E[J\E[30;1;0;30p\E[30;1H\E[K:\ + :ts=\E[>51h\E[1;%dH\E[2K:tc=aaa+unk: +aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video:\ + :tc=aaa+rv:tc=aaa-30-s: +aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context:\ + :te=\E[60;1;0;30p\E[59;1H\E[K:\ + :ti=\E[30;1H\E[K\E[30;1;0;30p:tc=aaa-30-s: +aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video:\ + :te=\E[60;1;0;30p\E[59;1H\E[K:\ + :ti=\E[30;1H\E[K\E[30;1;0;30p:tc=aaa-30-s-rv: +aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines:\ + :li#30:\ + :is=\E7\E[60;0;0;30p\E8:te=\E[60;0;0;30p\E[30;1H\E[K:\ + :ti=\E[H\E[J\E[30;0;0;30p:tc=aaa+unk: +aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video:\ + :tc=aaa+rv:tc=aaa-30: +aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context:\ + :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:\ + :tc=aaa-30: +aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context:\ + :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:\ + :tc=aaa+rv:tc=aaa-30: +aaa-36|ann arbor ambassador/36 lines:\ + :li#36:\ + :is=\E7\E[60;0;0;36p\E8:te=\E[60;0;0;36p\E[36;1H\E[K:\ + :ti=\E[H\E[J\E[36;0;0;36p:tc=aaa+unk: +aaa-36-rv|ann arbor ambassador/36 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-36: +aaa-40|ann arbor ambassador/40 lines:\ + :li#40:\ + :is=\E7\E[60;0;0;40p\E8:te=\E[60;0;0;40p\E[40;1H\E[K:\ + :ti=\E[H\E[J\E[40;0;0;40p:tc=aaa+unk: +aaa-40-rv|ann arbor ambassador/40 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-40: +aaa-48|ann arbor ambassador/48 lines:\ + :li#48:\ + :is=\E7\E[60;0;0;48p\E8:te=\E[60;0;0;48p\E[48;1H\E[K:\ + :ti=\E[H\E[J\E[48;0;0;48p:tc=aaa+unk: +aaa-48-rv|ann arbor ambassador/48 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-48: +aaa-60-s|ann arbor ambassador/59 lines+status:\ + :es:hs:\ + :li#59:\ + :ds=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K:\ + :fs=\E[>51l:is=\r\n\E[A\E7\E[60;1;0;60p\E8:\ + :ts=\E[>51h\E[1;%dH\E[2K:tc=aaa+unk: +aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video:\ + :tc=aaa+rv:tc=aaa-60-s: +aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video:\ + :tc=aaa+dec:tc=aaa+rv:tc=aaa-60-s: +aaa-60|ann arbor ambassador/60 lines:\ + :li#60:\ + :is=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8:tc=aaa+unk: +aaa-60-rv|ann arbor ambassador/60 lines+reverse video:\ + :tc=aaa+rv:tc=aaa-60: +aaa-db|ann arbor ambassador 30/destructive backspace:\ + :bs@:\ + :i2=\E[1Q\E[m\E[>20l\E[>30h:le=\E[D:tc=aaa-30: + +guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols:\ + :li#33:\ + :i2=\E[>59l:is=\E7\E[255;0;0;33;80;80p\E8\E[J:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[33p:vb=\E[>59h\E[>59l:\ + :tc=aaa+unk: +guru+rv|guru changes for reverse video:\ + :i2=\E[>59h:vb=\E[>59l\E[>59h: +guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video:\ + :tc=guru+rv:tc=guru-33: +guru+s|guru status line:\ + :es:hs:\ + :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:fs=\E[>51l:\ + :te=\E[255;1p\E[255;1H\E[K:ti=:ts=\E[>51h\E[1;%dH\E[2K: +guru-nctxt|guru with no saved context:\ + :ti=\E[H\E[J\E[33p\E[255;1H\E[K:tc=guru: +guru-s|guru-33-s|ann arbor guru/33 lines+status:\ + :li#32:\ + :is=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J:\ + :ti=\E[33;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk: +guru-24|ann arbor guru 24 lines:\ + :co#80:li#24:\ + :is=\E7\E[255;0;0;24;80;80p\E8\E[J:ti=\E[24p:\ + :tc=guru+unk: +guru-44|ann arbor guru 44 lines:\ + :co#97:li#44:\ + :is=\E7\E[255;0;0;44;97;100p\E8\E[J:ti=\E[44p:\ + :tc=guru+unk: +guru-44-s|ann arbor guru/44 lines+status:\ + :li#43:\ + :is=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J:\ + :ti=\E[44;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk: +guru-76|guru with 76 lines by 89 cols:\ + :co#89:li#76:\ + :is=\E7\E[255;0;0;76;89;100p\E8\E[J:ti=\E[76p:\ + :tc=guru+unk: +guru-76-s|ann arbor guru/76 lines+status:\ + :co#89:li#75:\ + :is=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J:\ + :ti=\E[76;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk: +guru-76-lp|guru-lp|guru with page bigger than line printer:\ + :co#134:li#76:\ + :is=\E7\E[255;0;0;76;134;134p\E8\E[J:ti=\E[76p:\ + :tc=guru+unk: +guru-76-w|guru 76 lines by 178 cols:\ + :co#178:li#76:\ + :is=\E7\E[255;0;0;76;178;178p\E8\E[J:ti=\E[76p:\ + :tc=guru+unk: +guru-76-w-s|ann arbor guru/76 lines+status+wide:\ + :co#178:li#75:\ + :is=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J:\ + :ti=\E[76;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk: +guru-76-wm|guru 76 lines by 178 cols with 255 cols memory:\ + :co#178:li#76:\ + :is=\E7\E[255;0;0;76;178;255p\E8\E[J:ti=\E[76p:\ + :tc=guru+unk: +aaa-rv-unk|ann arbor unknown type:\ + :Nl#0:lh#0:lw#0:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:mb=\E[5;7m:md=\E[1;7m:\ + :me=\E[7m:mk=\E[7;8m:mr=\E[m:r1=\E[H\E[7m\E[J:se=\E[7m:\ + :so=\E[m:ue=\E[7m:us=\E[4;7m: + +#### Applied Digital Data Systems (adds) +# +# ADDS itself is long gone. ADDS was bought by NCR, and the same group made +# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for +# terminals was merged again. Then AT&T sold the terminal business to +# SunRiver, which later changed its name to Boundless Technologies. The +# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there +# as of early 1995) are at: +# +# Boundless Technologies +# 100 Marcus Boulevard +# Hauppauge, NY 11788-3762 +# Vox: (800)-231-5445 +# Fax: (516)-342-7378 +# Web: http://boundless.com +# +# Their voice mail used to describe the place as "SunRiver (formerly ADDS)". +# In 1995 Boundless acquired DEC's terminals business. +# + +# Regent: lowest common denominator, works on all regents. +# (regent: renamed ":bc:" to ":le:" -- esr) +regent|Adds Regent Series:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=^L:cr=^M:do=^J:ho=\EY\040\040:le=^U:ll=^A:nd=^F:\ + :sf=^J:up=^Z: +# Regent 100 has a bug where if computer sends escape when user is holding +# down shift key it gets confused, so we avoid escape. +regent100|Adds Regent 100:\ + :sg#1:ug#1:\ + :bl=^G:cm=\013%+ \020%B%.:k0=^B1\r:k1=^B2\r:k2=^B3\r:\ + :k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r:l0=F1:l1=F2:\ + :l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:me=\E0@:se=\E0@:so=\E0P:\ + :ue=\E0@:us=\E0`:tc=regent: +regent20|Adds Regent 20:\ + :bl=^G:cd=\Ek:ce=\EK:cm=\EY%+ %+ :tc=regent: +regent25|Adds Regent 25:\ + :bl=^G:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:tc=regent20: +regent40|Adds Regent 40:\ + :sg#1:ug#1:\ + :al=2*\EM:bl=^G:dl=2*\El:k0=^B1\r:k1=^B2\r:k2=^B3\r:\ + :k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r:l0=F1:l1=F2:\ + :l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:me=\E0@:se=\E0@:so=\E0P:\ + :ue=\E0@:us=\E0`:tc=regent25: +regent40+|Adds Regent 40+:\ + :is=\EB:tc=regent40: +regent60|regent200|Adds Regent 60:\ + :dc=\EE:ei=\EF:im=\EF:is=\EV\EB:kD=\EE:kI=\EF:kM=\EF:\ + :se=\ER\E0@\EV:so=\ER\E0P\EV:tc=regent40+: +# From: <edward@onyx.berkeley.edu> Thu Jul 9 09:27:33 1981 +# (viewpoint: added :kr:, function key, and :dl: capabilities -- esr) +viewpoint|addsviewpoint|adds viewpoint:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=16.1*\Ek:ce=16\EK:cl=^L:cm=\EY%+ %+ :cr=^M:\ + :dl=\El:do=^J:is=\017\E0`:k0=^B1:k2=^B2:k3=^B!:k4=^B":\ + :k5=^B#:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=^H:ll=^A:me=^O:nd=^F:\ + :se=^O:sf=^J:so=^N:ue=^O:up=^Z:us=^N:ve=\017\E0`:\ + :vs=\017\E0P: +# Some viewpoints have bad ROMs that foo up on ^O +screwpoint|adds viewpoint with ^O bug:\ + :se@:so@:ue@:us@:vs@:tc=viewpoint: + +# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92 +# The :vi:/:ve:/:sa:/:me: strings were added by ESR from specs. +# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000, +# underline=01100000, rev=01010000, blink=01000010,dim=01000001, +# invis=01000100 and %c is the logical or of desired attributes. +# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(. +# +# Update by TD - 2004: +# Adapted from +# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt +# +# COMMANDS ASCII CODE +# +# Address, Absolute ESC,=,row,column +# Beep BEL +# Aux Port Enable ESC,@ +# Aux Port Disable ESC,A +# Backspace BS +# Cursor back BS +# Cursor down LF +# Cursor forward FF +# Cursor home RS +# Cursor up VT +# Cursor supress ETB +# Cursor enable CAN +# Erase to end of line ESC,T +# Erase to end of page ESC,Y +# Erase screen SUB +# Keyboard lock SI +# Keyboard unlock SO +# Read current cursor position ESC,? +# Set Attribute ESC,0,x (see below for values of x) +# Tag bit reset ESC,( +# Tag bit set ESC,) +# Transparent Print on ESC,3 +# Transparent Print off ESC,4 +# +# +# ATTRIBUTES +# +# Normal @ 0100 +# Half Intensity A 0101 +# Blinking B 0102 +# Half Intensity Blinking C 0103 +# Reverse Video P 0120 +# Reverse Video Half Intensity Q 0121 +# Reverse Video Blinking R 0122 +# Reverse Video Half Intensity +# Blinking S 0123 +# Underlined ` 0140 +# Underlined Half Intensity a 0141 +# Underlined Blinking b 0142 +# Underlined Half Intensity +# Blinking c 0143 +# Video suppress D 0104 +vp3a+|viewpoint3a+|adds viewpoint 3a+:\ + :am:bw:\ + :co#80:it#8:li#24:\ + :cd=80\EY:ce=\ET:cl=80\E*:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mb=\E0B\E):me=\E(:\ + :mh=\E0A\E):mk=\E0D\E):mr=\E0P\E):nd=^L:nw=^M^J:se=\E(:\ + :sf=^J:so=\E0Q\E):ta=^I:up=^K:us=\E0`\E):ve=^X:vi=^W: +vp60|viewpoint60|addsvp60|adds viewpoint60:\ + :tc=regent40: +# +# adds viewpoint 90 - from cornell +# Note: emacs sends ei occasionally to insure the terminal is out of +# insert mode. This unfortunately puts the viewpoint90 IN insert +# mode. A hack to get around this is :ic=\EF\s\EF^U:. (Also, +# - :ei=:im=: must be present in the termcap translation.) +# - :xs: indicates glitch that attributes stick to location +# - :ms: means it's safe to move in standout mode +# - :cl=\EG\Ek:: clears screen and visual attributes without affecting +# the status line +# Function key and label capabilities merged in from SCO. +vp90|viewpoint90|adds viewpoint 90:\ + :bs:bw:ms:xs:\ + :co#80:li#24:\ + :cd=\Ek:ce=\EK:cl=\EG\Ek:cm=\EY%+ %+ :dc=\EE:dl=\El:do=^J:\ + :ei=:ho=\EY\040\040:ic=\EF \EF\025:im=:k0=^B1\r:k1=^B2\r:\ + :k2=^B3\r:k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r:\ + :k8=^B9\r:k9=^B\072\r:k;=^B;\r:kb=^H:kd=^J:kh=^A:kl=^U:\ + :kr=^F:ku=^Z:l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:\ + :l8=F9:l9=F10:la=F11:le=^H:ll=^A:me=\ER\E0@\EV:nd=^F:\ + :se=\ER\E0@\EV:sf=^J:so=\ER\E0Q\EV:ta=^I:ue=\ER\E0@\EV:\ + :up=^Z:us=\ER\E0`\EV: +# Note: if return acts weird on a980, check internal switch #2 +# on the top chip on the CONTROL pc board. +adds980|a980|adds consul 980:\ + :am:bs:\ + :co#80:li#24:\ + :al=13\E\016:bl=^G:cl=\014\013@:cm=\013%+@\E\005%2:cr=^M:\ + :dl=13\E\017:do=^J:k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:\ + :k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:le=^H:me=^O:nd=\E^E01:\ + :se=^O:sf=^J:so=^Y^^^N: + +#### C. Itoh Electronics +# +# As of 1995 these people no longer make terminals (they're still in the +# printer business). Their terminals were all clones of the DEC VT series. +# They're located in Orange County, CA. +# + +# CIT 80 - vt-52 emulator, the termcap has been modified to remove +# the delay times and do an auto tab set rather than the indirect +# file used in vt100. +cit80|cit-80|citoh 80:\ + :am:bs:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=\E[H\EJ:cm=\E[%i%2;%2H:cr=^M:do=\E[B:\ + :ff=^L:is=\E>:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=^H:nd=\E[C:sf=^J:up=\E[A: +# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985 +# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr) +cit101|citc|C.itoh fast vt100:\ + :am:bs:xn:\ + :co#80:li#24:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ic=\E[@:im=:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g:\ + :kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\ + :ku=\EOA:le=^H:me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[V\E8:vs=\E7\E[U: +# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL +# The following termcap entry was created from the Callan cd100 entry. The +# last two lines (with the capabilities in caps) are used by RM-cobol to allow +# full selection of combinations of reverse video, underline, and blink. +# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\ +# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\ +# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr) +cit101e|C. Itoh CIT-101e:\ + :am:bs:mi:ms:pt:\ + :co#80:it#8:li#24:\ + :ac=:ae=^O:al=\E[L:as=^N:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%2;%2H:cs=\E[%i%2;%2r:dc=\E[P:dl=\E[M:do=\E[B:\ + :ei=\E[4l:if=/usr/share/tabset/vt100:im=\E[4h:k0=\EOT:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOm:k6=\EOl:k7=\EOM:\ + :k8=\EOn:kd=\E[B:ke=\E>:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:\ + :le=\E[D:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:so=\E[7m:sr=\EM:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=:vs=\E[?1l\E[?4l\E[?7h: +# From: David S. Lawyer, June 1997: +# The CIT 101-e was made in Japan in 1983-4 and imported by CIE +# Terminals in Irvine, CA. It was part of CITOH Electronics. In the +# late 1980's CIT Terminals went out of business. +# There is no need to use the initialization string is=... (by invoking +# tset or setterm etc.) provided that the terminal has been manually set +# up (and the setup saved with ^S) to be compatible with this termcap. To be +# compatible it should be in ANSI mode (not VT52). A set-up that +# works is to set all the manually setable stuff to factory defaults +# by pressing ^D in set-up mode. Then increse the brighness with the +# up-arrow key since the factory default will likely be dim on an old +# terminal. Then change any options you want (provided that they are +# compatible with the termcap). For my terminal I set: Screen +# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver: +# on. I also set up mine for parity (but you may not need it). Then +# save the setup with ^S. +# (cit101e-rv: added empty :te: to suppress a tic warning. --esr) +cit101e-rv|Citoh CIT-101e (sets reverse video):\ + :am:eo:mi:ms:xn:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%dG:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:ic=\E[@:\ + :im=\E[4h:\ + :is=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=\177:kd=\E[B:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:\ + :nd=\E[C:nl=\EM:nw=\EE:r1=\Ec\E[?7h\E[>5g:rc=\E8:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=:\ + :ti=\E[>5g\E[?7h\E[?5h:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?6c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=200\E[?5l\E[?5h:ve=\E[0;3;4v:vi=\E[1v:vs=\E[3;5v: +cit101e-n|CIT-101e w/o am:\ + :am@:\ + :kb=^H:kd=^J:kl=^H:vs=\E[?1l\E[?4l\E[?7l:tc=cit101e: +cit101e-132|CIT-101e with 132 cols:\ + :co#132:\ + :kb=^H:kd=^J:kl=^H:tc=cit101e: +cit101e-n132|CIT-101e with 132 cols w/o am:\ + :am@:\ + :co#132:\ + :kb=^H:kd=^J:kl=^H:vs=\E[?1l\E[?4l\E[?7l:tc=cit101e: +# CIE Terminals CIT-500 from BRL +# The following SET-UP modes are assumed for normal operation: +# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF +# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES +# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF +# Other SET-UP modes may be set for operator convenience or communication +# requirements. +# Hardware tabs are assumed to be set every 8 columns; they can be set up +# by the "reset", "tset", or "tabs" utilities. No delays are specified; use +# "stty ixon -ixany" to enable DC3/DC1 flow control! +# (cit500: I added <rmam>/<smam> based on the init string -- esr) +cit500|CIE Terminals CIT-500:\ + :bs:mi:ms:pt:xo:\ + :co#80:it#8:kn#10:li#64:vt#3:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:ac=:ae=^O:al=\E[L:as=^N:\ + :bl=^G:bt=\E[Z:cd=\EJ:ce=\EK:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ei=\E[4l:ho=\E[H:im=\E[4h:is=\E<\E)0:k0=\EOP:k1=\EOQ:\ + :k2=\EOR:k3=\EOS:k4=\EOU:k5=\EOV:k6=\EOW:k7=\EOX:k8=\EOY:\ + :k9=\EOZ:kA=\E[L:kB=\E[Z:kD=\E[P:kE=\EK:kI=\E[4h:kL=\E[M:\ + :kM=\E[4l:kS=\EJ:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E[H:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l0=PF1:l1=PF2:l2=PF3:\ + :l3=PF4:l4=F15:l5=F16:l6=F17:l7=F18:l8=F19:l9=F20:le=^H:\ + :ll=\E[64H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:\ + :r1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>:\ + :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\EM:us=\E[4m: + +# C. Itoh printers begin here +citoh|ci8510|8510|c.itoh 8510a:\ + :co#80:it#8:\ + :is=\E(009,017,025,033,041,049,057,065,073.:le@:md=\E!:\ + :me=\E"\EY:rp=\ER%r%3%.:sr=\Er:ue=\EY:us=\EX:tc=lpr: +citoh-pica|citoh in pica:\ + :i1=\EN:tc=citoh: +citoh-elite|citoh in elite:\ + :co#96:\ + :i1=\EE:\ + :is=\E(009,017,025,033,041,049,057,065,073,081,089.:\ + :tc=citoh: +citoh-comp|citoh in compressed:\ + :co#136:\ + :i1=\EQ:\ + :is=\E(009,017,025,033,041,049,057,065,073,081,089,097,105,113,121,129.:\ + :tc=citoh: +# citoh has infinite cols because we don't want lp ever inserting \n\t**. +citoh-prop|citoh-ps|ips|citoh in proportional spacing mode:\ + :co#32767:\ + :i1=\EP:tc=citoh: +citoh-6lpi|citoh in 6 lines per inch mode:\ + :i2=\EA:tc=citoh: +citoh-8lpi|citoh in 8 lines per inch mode:\ + :li#88:\ + :i2=\EB:tc=citoh: + +#### Control Data (cdc) +# + +cdc456|cdc 456 terminal:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=^X:ce=^V:cl=^Y^X:cm=\E1%+ %+ :cr=^M:dl=\EJ:\ + :do=^J:ho=^Y:le=^H:nd=^L:sf=^J:up=^Z: + +# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick) +cdc721|CDC Viking:\ + :am:bs:\ + :co#80:li#24:\ + :ce=^K:cl=^L:cm=\002%r%+ %+ :ho=^Y:kd=^J:kh=^Y:kl=^H:kr=^I:\ + :ku=^W:nd=^X:up=^W: +cdc721ll|CDC Vikingll:\ + :am:bs:\ + :co#132:li#24:\ + :ce=^K:cl=^L:cm=\002%r%+ %+ :ho=^Y:kd=^J:kh=^Y:kl=^H:kr=^I:\ + :ku=^W:nd=^X:up=^W: +# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out +cdc752|CDC 752:\ + :am:bs:bw:xs:\ + :co#80:li#24:\ + :bl=^G:ce=^V:cl=\030\E1\040\040:cm=\E1%r%+ %+ :cr=^M:\ + :do=^J:ho=\E1\040\040:le=^H:ll=^Y:nd=^U:\ + :r1=\E1 \030\002\003\017:sf=^J:up=^Z: +# CDC 756 +# The following switch/key settings are assumed for normal operation: +# 96 chars SCROLL FULL duplex not BLOCK +# Other switches may be set according to communication requirements. +# Insert/delete-character cannot be used, as the whole display is affected. +# "so" & "se" are commented out until jove handles "sg" correctly. +cdc756|CDC 756:\ + :am:bs:bw:\ + :co#80:kn#10:li#24:\ + :al=6*\EL:bl=^G:cd=^X:ce=^V:cl=^Y^X:cm=\E1%r%+ %+ :cr=^M:\ + :dl=6*\EJ:do=^J:ho=^Y:k0=\EA:k1=\EB:k2=\EC:k3=\ED:k4=\EE:\ + :k5=\EF:k6=\EG:k7=\EH:k8=\Ea:k9=\Eb:kA=\EL:kD=\EI:kE=^V:\ + :kI=\EK:kL=\EL:kS=^X:kT=^O:kb=^H:kd=^J:kh=^Y:kl=^H:kr=^U:\ + :ku=^Z:l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:l8=F9:\ + :l9=F10:le=^H:ll=^Y^Z:nd=^U:r1=\031\030\002\003\017:sf=^J:\ + :up=^Z: +# +# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL. +# +# Part of the long initialization string defines the "DOWN" key to the left +# of the tab key to send an ESC. The real ESC key is positioned way out +# in right field. +# +# The termcap won't work in 132 column mode due to the way it it moves the +# cursor. Termcap doesn't have the capability (as far as I could tell) to +# handle the 721 in 132 column mode. +# +# (cdc721: changed :ri: to :sr: -- esr) +cdc721-esc|Control Data 721:\ + :am:bs:bw:ms:pt:xo:\ + :co#80:it#8:kn#10:li#30:\ + :al=^^R:bl=^G:bt=^^^K:cd=^^P:ce=^K:cl=^L:cm=\002%r%+ %+ :\ + :ct=^^^RY:dc=^^N:dl=^^Q:do=^Z:ei=:ho=^Y:ic=^^O:im=:\ + :is=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\136\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o:\ + :k0=^^q:k1=^^r:k2=^^s:k3=^^t:k4=^^u:k5=^^v:k6=^^w:k7=^^x:\ + :k8=^^y:k9=^^z:kb=^H:kd=^Z:ke=^^^Rl:kh=^Y:kl=^H:kr=^X:\ + :ks=^^^Rk:ku=^W:le=^H:ll=^B =:mb=^N:\ + :me=\017\025\035\036E\036\022\\:mh=^\:mk=^^^R[:mr=^^D:\ + :nd=^X:se=^^E:sf=\036W =\036U:so=^^D:sr=\036W =\036V:\ + :st=^^^RW:ue=^]:up=^W:us=^\: + +#### Getronics +# +# Getronics is a Dutch electronics company that at one time was called +# `Geveke' and made async terminals; but (according to the company itself!) +# they've lost all their documentation on the command set. The hardware +# documentation suggests the terminals were actually manufactured by a +# Taiwanese electronics company named Cal-Comp. There are known +# to have been at least two models, the 33 and the 50. +# + +# The 50 seems to be a top end vt220 clone, with the addition of a higher +# screen resolution, a larger screen, at least 1 page of memory above and +# below the screen, apparently pages of memory right and left of the screen +# which can be panned, and about 75 function keys (15 function keys x normal, +# shift, control, func A, func B). It also has more setup possibilities than +# the vt220. The monitor case is dated November 1978 and the keyboard case is +# May 1982. +# +# The vt100 emulation works as is. The entry below describes the rather +# non-conformant (but more featureful) ANSI mode. +# +# From: Stephen Peterson <stv@utrecht.ow.nl>, 27 May 1995 +# (acsc removed to fit entry within 1023 bytes) +visa50|geveke visa 50 terminal in ansi 80 character mode:\ + :bw:mi:ms:\ + :co#80:li#25:\ + :AL=\E[%dL:DC=\E[%dX:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\E[f:K2=\EOP:K3=\EOQ:K4=\EOR:K5=\EOS:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E?7h:UP=\E[%dA:ae=\E[3l:al=\E[L:\ + :as=\E3h:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%dG:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:cv=\E[%i%dd:dc=\E[X:dl=\E[M:do=\E[B:ei=\E[4l:\ + :ho=\E[H:ic=\E[@:im=\E[4h:\ + :is=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h:k0=\E010:\ + :k1=\E001:k2=\E002:k3=\E003:k4=\E004:k5=\E005:k6=\E006:\ + :k7=\E007:k8=\E008:k9=\E009:k;=\E011:kD=\177:kL=\EOS:kb=^H:\ + :kd=\E[A:ke=\E>:kh=\E[f:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:\ + :l2=A delete char:l3=A insert line:l4=A delete line:\ + :l5=A clear:l6=A ce of/cf gn:l7=A print:l8=A on-line:\ + :l9=A funcl0=A send:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0;2m:\ + :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:se=\E[0;2m:\ + :sf=^J:so=\E[2;7m:ta=^I:ue=\E[0m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l: + +#### Human Designed Systems (Concept) +# +# Human Designed Systems +# 400 Fehley Drive +# King of Prussia, PA 19406 +# Vox: (610)-277-8300 +# Fax: (610)-275-5739 +# Net: support@hds.com +# +# John Martin <john@hds.com> is their termcap expert. They're mostly out of +# the character-terminal business now (1995) and making X terminals. In +# particular, the whole `Concept' line described here was discontinued long +# ago. +# + +# From: <vax135!hpk> Sat Jun 27 07:41:20 1981 +# Extensive changes to c108 by arpavax:eric Feb 1982 +# Some unknown person at SCO then translated it to terminfo. +# +# There seem to be a number of different versions of the C108 PROMS +# (with bug fixes in its Z-80 program). +# +# The first one that we had would lock out the keyboard of you +# sent lots of short lines (like /usr/dict/words) at 9600 baud. +# Try that on your C108 and see if it sends a ^S when you type it. +# If so, you have an old version of the PROMs. +# +# You should configure the C108 to send ^S/^Q before running this. +# It is much faster (at 9600 baud) than the c100 because the delays +# are not fixed. +# new status line display entries for c108-8p: +# :i3: - init str #3 - setup term for status display - +# set programmer mode, select window 2, define window at last +# line of memory, set bkgnd stat mesg there, select window 0. +# +# :ts: - to status line - select window 2, home cursor, erase to +# end-of-window, 1/2 bright on, goto(line#0, col#?) +# +# :fs: - from status line - 1/2 bright off, select window 0 +# +# :ds: - disable status display - set bkgnd status mesg with +# illegal window # +# +# There are probably more function keys that should be added but +# I don't know what they are. +# +# No delays needed on c108 because of ^S/^Q handshaking +# +c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages:\ + :i2=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n:\ + :te=\Ev \001\177p\Ep\r\n:tc=c108-4p: +c108-4p|concept108-4p|concept 108 w/4 pages:\ + :bs:es:hs:xo:\ + :pb@:\ + :ac=jEkTl\\mMqLxU:ae=\Ej\040:as=\Ej!:cr=^M:dc=16*\E 1:\ + :ds=\E ;\177:fs=\Ee\E z\040:i1=\EK\E!\E F:\ + :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n:\ + :sf=^J:te=\Ev \001 p\Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:\ + :ve=\Ew:vs=\EW:tc=c100: +c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video:\ + :te=\Ev \002 p\Ep\r\n:ti=\EU\Ev 8p\Ep\r:\ + :tc=c108-rv-4p: +c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video:\ + :i1=\Ek:se=\Ee:so=\EE:vb=\EK\Ek:tc=c108-4p: +c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode:\ + :co#132:\ + :i1=\E F\E":te=\Ev ^A0\001D\Ep\r\n:\ + :ti=\EU\Ev 8\001D\Ep\r:tc=c108-8p: + +# Concept 100: +# These have only window relative cursor addressing, not screen +# relative. To get it to work right here, smcup/rmcup (which +# were invented for the concept) lock you into a one page +# window for screen style programs. +# +# To get out of the one page window, we use a clever trick: +# we set the window size to zero ("\Ev " in rmcup) which the +# terminal recognizes as an error and resets the window to all +# of memory. +# +# This trick works on c100 but does not on c108, sigh. +# +# Some tty drivers use cr3 for concept, others use nl3, hence +# the delays on cr and ind below. This padding is only needed at +# 9600 baud and up. One or the other is commented out depending on +# local conventions. +# +# 2 ms padding on :te: isn't always enough. 6 works fine. Maybe +# less than 6 but more than 2 will work. +# +# Note: can't use function keys f7-f10 because they are +# indistinguishable from arrow keys (!), also, del char and +# clear eol use xon/xoff so they probably won't work very well. +# +# Also note that we don't define insrt/del char/delline/eop/send +# because they don't transmit unless we reset them - I figured +# it was a bad idea to clobber their definitions. +# +# The <mc5> sequence changes the escape character to ^^ so that +# escapes will be passed through to the printer. Only trouble +# is that ^^ won't be - ^^ was chosen to be unlikely. +# Unfortunately, if you're sending raster bits through to be +# plotted, any character you choose will be likely, so we lose. +# +# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) +# cannot be # in is2 because it will hang a c100 with no printer +# if sent twice. +c100|concept100|concept|c104|c100-4p|hds concept 100:\ + :am:bs:eo:mi:ul:xn:\ + :co#80:li#24:pb#9600:vt#8:\ + :al=3*\E\022:bl=^G:cd=16*\E\005:ce=16\E\025:\ + :cl=2*\E?\E\005:cm=\Ea%+ %+ :cr=\r:dc=16*\E\021:\ + :dl=3*\E\002:do=^J:ei=\E\040\040:i1=\EK:i2=\Ev \Ep\n:\ + :im=\E^P:ip=16*:\ + :is=\EU\Ef\E7\E5\E8\El\ENH\E\200\Eo&\200\Eo'\E\Eo!\200\E\007!\E\010A@ \E4#\072"\E\072a\E4#;"\E\072b\E4#<"\E\072c:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\072a:k7=\E\072b:\ + :k8=\E\072c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\200:kN=\E-:kP=\E.:kR=\E\\:kS=\E^C:kT=\E]:\ + :kb=^H:kd=\E<:ke=\Ex:kh=\E?:kl=\E>:kr=\E=:ks=\EX:kt=\E_:\ + :ku=\E;:le=^H:mb=\EC:me=\EN@:mh=\EE:mk=\EH:mp=\EI:mr=\ED:\ + :nd=\E=:pf=\036o \E\EQ!\EYP\027:\ + :po=\EQ"\EY(\027\EYD\Eo \036:rp=.2*\Er%.%+ :se=\Ed:\ + :sf=^J:so=\ED:ta=8\011:te=\Ev \Ep\r\n:\ + :ti=16\EU\Ev 8p\Ep\r\E\025:ue=\Eg:up=\E;:us=\EG:\ + :vb=\Ek\EK: +c100-rv|c100-rv-4p|concept100-rv|c100 rev video:\ + :i1=\Ek:se=\Ee:so=\EE:vb=\EK\Ek:ve@:vs@:tc=c100: +oc100|oconcept|c100-1p|old 1 page concept 100:\ + :in:\ + :i3@:tc=c100: + +# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996. +# Lots of notes, originally inline, but ncurses doesn't grok that. +# +# am: not available in power on mode, but turned on with \E[=107;207h in +# is2=. Also, \E=124l in is2= could have been used to prevent needing +# to specify xenl:, but that would have rendered the last space on the +# last line useless. +# bw: Not available in power on mode, but turned on with \E[=107;207h in +# is2=. +# clear: Could be done with \E[2J alone, except that vi (and probably most +# other programs) assume that this also homes the cursor. +# dsl: Go to window 2, go to the beginning of the line, use a line feed to +# scroll the window, and go back to window 1. +# is2: the string may cause a warning to be issued by tic that it +# found a very long line and that it suspects that a comma is missing +# somewhere. This warning can be ignored (unless it comes up more than +# once). The initialization string contains the following commands: +# +# [Setup mode items changed from factory defaults:] +# \E)0 set alternate character set to +# graphics +# ^O set character set to default +# [In case it wasn't] +# \E[m turn off all attributes +# [In case they weren't off] +# \E[=107; cursor wrap and +# 207h character wrap on +# \E[90;3u set Fkey definitions to "transmit" +# defaults +# \E[92;3u set cursor key definitions to +# "transmit" defaults +# \E[43;1u set shift F13 to transmit... +# \177\E$P\177 +# \E[44;1u set shift F14 to transmit... +# \177\E$Q\177 +# \E[45;1u set shift F15 to transmit... +# \177\E$R\177 +# \E[46;1u set shift F16 to transmit... +# \177\E$S\177 +# \E[200;1u set shift up to transmit... +# \177\E$A\177 +# \E[201;1u set shift down to transmit... +# \177\E$B\177 +# \E[202;1u set shift right to transmit... +# \177\E$C\177 +# \E[203;1u set shift left to transmit... +# \177\E$D\177 +# \E[204;1u set shift home to transmit... +# \177\E$H\177 +# \E[212;1u set backtab to transmit... +# \177\E$I\177 +# \E[213;1u set shift backspace to transmit... +# \177\E$^H\177 +# \E[214;1u set shift del to transmit... +# "\E$\177" +# [Necessary items not mentioned in setup mode:] +# \E[2!w move to window 2 +# \E[25;25w define window as line 25 of memory +# \E[!w move to window 1 +# \E[2*w show current line of window 2 as +# status line +# \E[2+x set meta key to use high bit +# \E[;3+} move underline to bottom of character +# +# All Fkeys are set to their default transmit definitions with \E[90;3u +# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty +# setting MUST be redefined or deactivated, because the default is +# contained in almost all of this terminal's Fkey strings! If for some +# reason "quit" cannot be altered, the Fkeys can, but it would be +# necessary to change ^| to ^] in all of these definitions, and add +# \E[2;029!t to is2. +# lines: is set to 24 because this terminal refuses to treat the 25th +# line normally. +# ll: Not available in power on mode, but turned on with \E[=107;207h in +# is2=. +# lm: Pointless, given that this definition locks a single screen of +# memory into view, but what the hey... +# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any +# other attributes alone), but some programs expect this to turn off +# everything. +# rmul: Could use \E[4!{ to turn off only underline (leaving any other +# attributes alone), but some programs expect this to turn off +# everything. +# sgr: Attributes are set on this terminal with the string \E[ followed by +# a list of attribute code numbers (in decimal, separated by +# semicolons), followed by the character m. The attribute code +# numbers are: +# 1 for bold; +# 2 for dim (which is ignored in power on mode); +# 4 for underline; +# 5 for blinking; +# 7 for inverse; +# 8 for not displayable; and +# =99 for protected (except that there are strange side +# effects to protected characters which make them inadvisable). +# The mapping of terminfo parameters to attributes is as follows: +# %p1 (standout) = bold and inverse together; +# %p2 (underline) = underline; +# %p3 (reverse) = inverse; +# %p4 (blink) = blinking; +# %p5 (dim) is ignored; +# %p6 (bold) = bold; +# %p7 (invisible) = not displayable; +# %p8 (protected) is ignored; and +# %p9 (alt char set) = alt char set. +# The code to do this is: +# \E[0 OUTPUT \E[0 +# %?%p1%p6%O IF (standout; bold) OR +# %t;1 THEN OUTPUT ;1 +# %; ENDIF +# %?%p2 IF underline +# %t;4 THEN OUTPUT ;4 +# %; ENDIF +# %?%p4 IF blink +# %t;5 THEN OUTPUT ;5 +# %; ENDIF +# %?%p1%p3%O IF (standout; reverse) OR +# %t;7 THEN OUTPUT ;7 +# %; ENDIF +# %?%p7 IF invisible +# %t;8 THEN OUTPUT ;8 +# %; ENDIF +# m OUTPUT m +# %?%p9 IF altcharset +# %t^N THEN OUTPUT ^N +# %e^O ELSE OUTPUT ^O +# %; ENDIF +# sgr0: Everything is turned off (including alternate character set), since +# there is no way of knowing what it is that the program wants turned +# off. +# smul: The "underline" attribute is reconfigurable to an overline or +# strikethru, or (as done with \E[;3+} in is2=), to a line at the true +# bottom of the character cell. This was done to allow for more readable +# underlined characters, and to be able to distinguish between an +# underlined space, an underscore, and an underlined underscore. +# xenl: Terminal can be configured to not need this, but this "glitch" +# behavior is actually preferable with autowrap terminals. +# +# Parameters kf31= thru kf53= actually contain the strings sent by the shifted +# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2 +# string modifies the 'O' in kf43 to kf46 to a '$'. +# +# kcbt was originally ^I but redefined in is2=. +# kHOM was \E[H originally but redefined in is2=, as were a number of +# other keys. +# kDC was originally \177 but redefined in is2=. +# +# kbs: Shift was also ^H originally but redefined as \E$^H in is2=. +# tsl: Go to window 2, then do an hpa=. +# +#------- flash=\E[8;3!}^G\E[3;3!} +#------- flash=\E[?5h$<100>\E[?5l +# There are two ways to flash the screen, both of which have their drawbacks. +# The first is to set the bell mode to video, transmit a bell character, and +# set the bell mode back - but to what? There is no way of knowing what the +# user's old bell setting was before we messed with it. Worse, the command to +# set the bell mode also sets the key click volume, and there is no way to say +# "leave that alone", or to know what it's set to, either. +# The second way to do a flash is to set the screen to inverse video, pad for a +# tenth of a second, and set it back - but like before, there's no way to know +# that the screen wasn't ALREADY in inverse video, or that the user may prefer +# it that way. The point is moot anyway, since vi (and probably other +# programs) assume that by defining flash=, you want the computer to use it +# INSTEAD of bel=, rather than as a secondary type of signal. +# +#------- cvvis=\E[+{ +# The is the power on setting, which is also as visible as the cursor +# gets. +#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw +# Windowing is possible, but not defined here because it is also used to +# emulate status line functions. Allowing a program to set a window could +# clobber the status line or render it unusable. There is additional memory, +# but screen scroll functions are destructive and do not make use of it. +# +#------- dim= Not available in power on mode. +# You have a choice of defining low intensity characters as "half bright" and +# high intensity as "normal", or defining low as "normal" and high as "bold". +# No matter which you choose, only one of either "half bright" or "bold" is +# available at any time, so taking the time to override the default is +# pointless. +# +#------- prot=\E[=0;99m +# Not defined, because it appears to have some strange side effects. +#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; +#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; +#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%; +# Available, but making them available to programs is inadvisable. +# The code to do this is: +# %?%p1%{24}%< IF ((key; 24) <; +# %p1%{30}%> ((key; 30) >; +# %p1%{54}%< (key; 54) < +# %A ) AND +# %O ) OR +# [that is, "IF key < 24 OR (key > 30 AND key < 54)",] +# %t\E[ THEN OUTPUT \E[ +# %p1%d OUTPUT (key) as decimal +# [next line applies to pfx only] +# ;1 OUTPUT ;1 +# u OUTPUT u +# \177 OUTPUT \177 +# %p2%s OUTPUT (string) as string +# \177 OUTPUT \177 +# [DEL chosen as delimiter, but could be any character] +# [implied: ELSE do nothing] +# %; ENDIF +# +#------- rs2= +# Not defined since anything it might do could be done faster and easier with +# either Meta-Shift-Reset or the main power switch. +# +#------- smkx=\E[1!z +#------- rmkx=\E[!z +# These sequences apply to the cursor and setup keys only, not to the +# numeric keypad. But it doesn't matter anyway, since making these +# available to programs is inadvisable. +# For the key definitions below, all sequences beginning with \E$ are +# custom and programmed into the terminal via is2. \E$ also has no +# meaning to any other terminal. +# +#------- cmdch=\E[;%p1%d!t +# Available, but making it available to programs is inadvisable. +#------- smxon=\E[1*q +# Available, but making it available to programs is inadvisable. +# Terminal will send XON/XOFF on buffer overflow. +#------- rmxon=\E[*q +# Available, but making it available to programs is inadvisable. +# Terminal will not notify on buffer overflow. +#------- smm=\E[2+x +#------- rmm=\E[+x +# Available, but making them available to programs is inadvisable. +# +# Printing: +# It's not made clear in the manuals, but based on other ansi/vt type +# terminals, it's a good guess that this terminal is capable of both +# "transparent print" (which doesn't copy data to the screen, and +# therefore needs mc5i: specified to say so) and "auxilliary print" +# (which does duplicate printed data on the screen, in which case mc4= +# and mc5= should use the \E[?4i and \E[?5i strings instead). + +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +# (some function-key capabilities suppressed to fit entry within 1023 bytes) +hds200|Human Designed Systems HDS200:\ + :am:bw:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:lm#0:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:\ + :bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:\ + :ds=\E[2!w\r\n\E[!w:ei=\E[4l:fs=\E[!w:ho=\E[H:im=\E[4h:\ + :is=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+}:\ + :kD=\177:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=\E[D:ll=\E[H\E[A:mb=\E[0;5m:\ + :md=\E[0;1m:me=\E[0m:mr=\E[0;7m:nd=\E[C:nw=\E[E:rc=\E8:\ + :sc=\E7:se=\E[m\017:sf=\ED:so=\E[0;1;7m:sr=\EM:st=\EH:\ + :ta=^I:ts=\E[2!w\E[%i%dG:ue=\E[m\017:up=\E[A:us=\E[0;4m:\ + :ve=\E[+{:vi=\E[6+{: + +# :ta: through :ce: included to specify padding needed in raw mode. +# (avt-ns: added empty <acsc> to suppress a tic warning --esr) +avt-ns|concept avt no status line:\ + :am:bs:eo:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#192:\ + :AL=4*\E[%dL:DL=4*\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=1\016:al=4\E[L:as=1\017:bl=^G:\ + :bt=\E[Z:cd=96\E[J:ce=6\E[K:ch=\E[%+^AG:cl=38\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=4\E[M:do=^J:ei=\E[4l:ho=\E[H:\ + :i1=\E[=103l\E[=205l:ic=\E[@:im=\E[4h:ip=4:\ + :is=\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\0720\07232!r\E[0*w\E[w\E2\r\n\E[2;27!t:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kA=\E^C\r:kD=\E^B\r:\ + :kI=\E^A\r:kS=\E^D\r:kb=^H:kd=\E[B:ke=\E[!z\E[0;2u:\ + :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[1!z\E[0;3u:ku=\E[A:le=^H:\ + :ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[1!{:mk=\E[8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :rc=\E8:sc=\E7:se=\E[7!{:sf=8\n:so=\E[7m:sr=4\EM:st=\EH:\ + :ta=4\011:te=\E[w\E2\r\n:ti=\E[=4l\E[1;24w\E2\r:\ + :ue=\E[4!{:up=\E[A:us=\E[4m:ve=\E[=119l:vs=\E[=119h: +avt-rv-ns|concept avt in reverse video mode/no status line:\ + :i1=\E[=103l\E[=205h:vb=\E[=205l\E[=205h:tc=avt-ns: +avt-w-ns|concept avt in 132 column mode/no status line:\ + :i1=\E[=103h\E[=205l:ti=\E[H\E[1;24;1;132w:tc=avt-ns: +avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video:\ + :i1=\E[=103h\E[=205h:ti=\E[H\E[1;24;1;132w:\ + :vb=\E[=205l\E[=205h:tc=avt-ns: + +# Concept AVT with status line. We get the status line using the +# "Background status line" feature of the terminal. We swipe the +# first line of memory in window 2 for the status line, keeping +# 191 lines of memory and 24 screen lines for regular use. +# The first line is used instead of the last so that this works +# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this +# assumes an 8 page AVT but lm isn't currently used anywhere.) +# +avt+s|concept avt status line changes:\ + :es:hs:\ + :lm#191:\ + :ds=\E[0*w:fs=\E[1;1!w:\ + :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\ + :te=\E[2w\E2\r\n:ti=\E[2;25w\E2\r:\ + :ts=\E[2;1!w\E[;%dH\E[2K: +avt|avt-s|concept-avt|avt w/80 columns:\ + :tc=avt+s:tc=avt-ns: +avt-rv|avt-rv-s|avt reverse video w/sl:\ + :i1=\E[=103l\E[=205h:vb=\E[=205l\E[=205h:tc=avt+s:\ + :tc=avt-ns: +avt-w|avt-w-s|concept avt 132 cols+status:\ + :i1=\E[=103h\E[=205l:ti=\E[H\E[1;24;1;132w:tc=avt+s:\ + :tc=avt-ns: +avt-w-rv|avt-w-rv-s|avt wide+status+rv:\ + :i1=\E[=103h\E[=205h:ti=\E[H\E[1;24;1;132w:\ + :vb=\E[=205l\E[=205h:tc=avt+s:tc=avt-ns: + +#### Contel Business Systems. +# + +# Contel c300 and c320 terminals. +contel300|contel320|c300|Contel Business Systems C-300 or C-320:\ + :am:in:xo:\ + :co#80:li#24:sg#1:\ + :al=5.5*\EL:bl=^G:cd=5.5*\EJ:ce=5.5\EI:cl=\EK:\ + :cm=\EX%+ \EY%+ :cr=^M:ct=\E3:dc=5.5*\EO:dl=5.5*\EM:do=^J:\ + :ei=:ho=\EH:ic=\EN:im=:ip=5.5*:k0=\ERJ:k1=\ERA:k2=\ERB:\ + :k3=\ERC:k4=\ERD:k5=\ERE:k6=\ERF:k7=\ERG:k8=\ERH:k9=\ERI:\ + :kb=^H:le=^H:ll=\EH\EA:me=\E!\200:nd=\EC:se=\E!\200:sf=^J:\ + :so=\E!\r:st=\E1:up=\EA:vb=\020\002\020\003: +# Contel c301 and c321 terminals. +contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321:\ + :ic@:ip@:se=20\E!\200:so=20\E!\r:vb@:tc=contel300: + +#### Data General (dg) +# +# According to James Carlson <carlson@xylogics.com> writing in January 1995, +# the terminals group at Data General was shut down in 1991; all these +# terminals have thus been discontinued. +# +# DG terminals have function keys that respond to the SHIFT and CTRL keys, +# e.g., SHIFT-F1 generates a different code from F1. To number the keys +# sequentially, first the unmodified key codes are listed as F1 through F15. +# Then their SHIFT versions are listed as F16 through F30, their CTRL versions +# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as +# F46 through F60. This is done in the private "includes" below whose names +# start with "dgkeys+". +# +# DG terminals generally support 8 bit characters. For each of these terminals +# two descriptions are supplied: +# 1) A default description for 8 bits/character communications, which +# uses the default DG international character set and keyboard codes. +# 2) A description with suffix "-7b" for 7 bits/character communications. +# This description must use the NON-DEFAULT native keyboard language. + +# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33), +# Ctrl/Shift fdkeys (kf34-kf44). + +dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys:\ + :%9=\233i:F1=\233011z:F2=\233012z:F3=\233013z:\ + :F4=\233014z:F5=\233000z:F6=\233101z:F7=\233102z:\ + :F8=\233103z:F9=\233104z:FA=\233105z:FB=\233106z:\ + :FC=\233107z:FD=\233108z:FE=\233109z:FF=\233110z:\ + :FG=\233111z:FH=\233112z:FI=\233113z:FJ=\233114z:\ + :FK=\233100z:FL=\233201z:FM=\233202z:FN=\233203z:\ + :FO=\233204z:FP=\233205z:FQ=\233206z:FR=\233207z:\ + :FS=\233208z:FT=\233209z:FU=\233210z:FV=\233211z:\ + :FW=\233212z:FX=\233213z:FY=\233214z:FZ=\233200z:\ + :Fa=\233301z:Fb=\233302z:Fc=\233303z:Fd=\233304z:\ + :Fe=\233305z:Ff=\233306z:Fg=\233307z:Fh=\233308z:\ + :Fi=\233309z:Fj=\233310z:Fk=\233311z:Fl=\233312z:\ + :Fm=\233313z:Fn=\233314z:Fo=\233300z:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:k1=\233001z:\ + :k2=\233002z:k3=\233003z:k4=\233004z:k5=\233005z:\ + :k6=\233006z:k7=\233007z:k8=\233008z:k9=\233009z:\ + :k;=\233010z:kC=\2332J:kE=\233K:kd=\233B:kh=\233H:\ + :kl=\233D:kr=\233C:ku=\233A: + +dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys:\ + :%9=\E[i:F1=\E[011z:F2=\E[012z:F3=\E[013z:F4=\E[014z:\ + :F5=\E[000z:F6=\E[101z:F7=\E[102z:F8=\E[103z:F9=\E[104z:\ + :FA=\E[105z:FB=\E[106z:FC=\E[107z:FD=\E[108z:FE=\E[109z:\ + :FF=\E[110z:FG=\E[111z:FH=\E[112z:FI=\E[113z:FJ=\E[114z:\ + :FK=\E[100z:FL=\E[201z:FM=\E[202z:FN=\E[203z:FO=\E[204z:\ + :FP=\E[205z:FQ=\E[206z:FR=\E[207z:FS=\E[208z:FT=\E[209z:\ + :FU=\E[210z:FV=\E[211z:FW=\E[212z:FX=\E[213z:FY=\E[214z:\ + :FZ=\E[200z:Fa=\E[301z:Fb=\E[302z:Fc=\E[303z:Fd=\E[304z:\ + :Fe=\E[305z:Ff=\E[306z:Fg=\E[307z:Fh=\E[308z:Fi=\E[309z:\ + :Fj=\E[310z:Fk=\E[311z:Fl=\E[312z:Fm=\E[313z:Fn=\E[314z:\ + :Fo=\E[300z:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :k1=\E[001z:k2=\E[002z:k3=\E[003z:k4=\E[004z:k5=\E[005z:\ + :k6=\E[006z:k7=\E[007z:k8=\E[008z:k9=\E[009z:k;=\E[010z:\ + :kC=\E[2J:kE=\E[K:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A: + +dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys:\ + :F1=^^{:F2=^^a:F3=^^b:F4=^^c:F5=^^d:F6=^^e:F7=^^f:F8=^^g:\ + :F9=^^h:FA=^^i:FB=^^j:FC=^^k:FD=^^1:FE=^^2:FF=^^3:FG=^^4:\ + :FH=^^5:FI=^^6:FJ=^^7:FK=^^8:FL=^^9:FM=^^\072:FN=^^;:FO=^^!:\ + :FP=^^":FQ=^^#:FR=^^$:FS=^^%%:FT=^^&:FU=^^':FV=^^(:FW=^^):\ + :FX=^^*:FY=^^+:k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:\ + :k7=^^w:k8=^^x:k9=^^y:k;=^^z:kC=^L:kE=^K:kd=^Z:kh=^H:kl=^Y:\ + :kr=^X:ku=^W: + +dgkeys+15|Private entry describing 15 DG mode special keys:\ + :#2=^^^H:#4=^^^Y:%i=^^^X:F1=^^{:F2=^^|:F3=^^}:F4=^^~:F5=^^p:\ + :F6=^^a:F7=^^b:F8=^^c:F9=^^d:FA=^^e:FB=^^f:FC=^^g:FD=^^h:\ + :FE=^^i:FF=^^j:FG=^^k:FH=^^l:FI=^^m:FJ=^^n:FK=^^`:FL=^^1:\ + :FM=^^2:FN=^^3:FO=^^4:FP=^^5:FQ=^^6:FR=^^7:FS=^^8:FT=^^9:\ + :FU=^^\072:FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\040:K1=^^\\:K3=^^]:\ + :K4=^^\136:K5=^^_:k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:\ + :k7=^^w:k8=^^x:k9=^^y:k;=^^z: + +# Data General color terminals use the "Tektronix" color model. The total +# number of colors varies with the terminal model, as does support for +# attributes used in conjunction with color. + +# Removed u7, u8 definitions since they conflict with tack: +# Preserve user-defined colors in at least some cases. +# u7=^^Fh, +# Default is ACM mode. +# u8=^^F}20^^Fi^^F}21, +# +dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode:\ + :ut:\ + :Co#16:NC#53:pa#256:\ + :Sb=\036B%+0:Sf=\036A%+0:op=\036Ad\036Bd: + +dg+fixed|Fixed color info for DG D430C terminals in DG mode:\ + :tc=dgunix+fixed: + +# Video attributes are coordinated using static variables set by "sgr", then +# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings. +# (D=dim, U=underline, B=blink, R=reverse.) +dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode:\ + :ut:\ + :Co#8:NC#16:pa#64:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m: + +dg+color|Color info for Data General D470C terminals in ANSI mode:\ + :Co#16:NC#53:pa#256:tc=dg+color8: + +dgmode+color8|Color info for Data General D220/D230C terminals in DG mode:\ + :ut:\ + :Co#8:NC#16:pa#64:\ + :AB=\036B%+^B:AF=\036A%+^B:Sb=\036B%+0:Sf=\036A%+0:\ + :op=\036Ad\036Bd: + +dgmode+color|Color info for Data General D470C terminals in DG mode:\ + :Co#16:pa#256:tc=dgmode+color8: + +dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode:\ + :cc:ut:\ + :Co#52:NC#53:pa#26:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D: + +# Colors are in the order: normal, reverse, dim, dim + reverse. +dg+ccc|Configurable color info for DG D430C terminals in DG mode:\ + :cc:ut:\ + :Co#52:NC#53:pa#26:\ + :oc=\036RG01\07200??00000000\036RG01;00000000??00\036RG01<007?00000000\036RG01=000000007?00:\ + :op=\036RF4831\072\036RF2>31;\036RF1=31<\036RF3?31=:\ + :sp=\036RG2%+^P%+^P: + +# The generic DG terminal type (an 8-bit-clean subset of the 6053) +# Initialization string 1 sets: +# ^R - vertical scrolling enabled +# ^C - blinking enabled +dg-generic|Generic Data General terminal in DG mode:\ + :NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:i1=^R^C:le=^Y:\ + :mb=^N:me=^O^U^]:mh=^\:nd=^X:nw=^J:ps=^Q:se=^]:sf=^J:so=^\:\ + :ue=^U:up=^W:us=^T:tc=dgkeys+11: + +# According to the 4.4BSD termcap file, the dg200 :cm: should be the +# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap +# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious, +# maybe they were originally nuls (which would fit). + +dg200|data general dasher 200:\ + :NL:am:bs:bw:\ + :co#80:li#24:\ + :bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:k0=^^z:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:l0=f10:le=^Y:nd=^X:\ + :nw=^J:se=^^E:sf=^J:so=^^D:ue=^U:up=^W:us=^T: + +# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL +dg210|dg-ansi|Data General 210/211:\ + :am:\ + :co#80:li#24:\ + :cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:do=\E[B:ho=\E[H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:nd=\E[C:\ + :nl=\E[B:nw=\r\E[H\E[A\n:se=\E[0;m:so=\E[7;m:ue=\E[0;m:\ + :up=\E[A:us=\E[4;m: +# From: Peter N. Wan <ihnp4!gatech!gacsr!wan> +# courtesy of Carlos Rucalde of Vantage Software, Inc. +# (dg211: this had :cm=\020%r%.%:., which was an ancient termcap hangover. +# I suspect the d200 function keys actually work on the dg211, check it out.) +dg211|Data General d211:\ + :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb=^Y:l0@:nw=^M^Z:\ + :se=\036E\200/>:sf@:so=5\036D:ta=^I:te=^L:ti=^L^R:ve=^L:\ + :vs=^L^R:tc=dg200: + +# dg450 from Cornell (not official) +dg450|dg6134|data general 6134:\ + :le@:nd=^X:tc=dg200: + +# Not official... +# Note: lesser Dasher terminals will not work with vi because vi insists upon +# having a command to move straight down from any position on the bottom line +# and scroll the screen up, or a direct vertical scroll command. The 460 and +# above have both, the D210/211, for instance, has neither. We must use ANSI +# mode rather than DG mode because standard UNIX tty drivers assume that ^H is +# backspace on all terminals. This is not so in DG mode. +# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the +# grounds that there is no matching ":ml:" +dg460-ansi|Data General Dasher 460 in ANSI-mode:\ + :am:bs:ms:ul:\ + :co#80:it#8:li#24:\ + :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%2;%2H:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:is=^^F@:k0=\E[001z:\ + :k1=\E[002z:k2=\E[003z:k3=\E[004z:k4=\E[005z:k5=\E[006z:\ + :k6=\E[007z:k7=\E[008z:k8=\E[009z:k9=\E[00\072z:kb=\E[D:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:l0=f1:l1=f2:l2=f3:\ + :l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:l9=f10:le=^H:mb=\E[5m:\ + :me=\E(B\E[m:mh=\E[2m:mr=\E[7m:nd=\E[C:nl=\ED:ps=\E[i:\ + :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:u6=\E[%d;%dR:\ + :u7=\E[6n:u8=\E[5n:u9=\E[0n:ue=\E[05:up=\E[A:us=\E[4m: +# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official) +# Data General 605x +# Ought to work for a Model 6242, Type D210 as well as a 605x. +# Note that the cursor-down key transmits ^Z. Job control users, beware! +# This also matches a posted description of something called a `Dasher 100' +# so there's a dg100 alias here. +# (dg6053: the 4.4BSD file had :le=^H:, :do=^J:, :nd=^S:. -- esr) +dg6053-old|dg100|data general 6053:\ + :am:bs:bw:ul:\ + :co#80:li#24:\ + :bc=^Y:bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:\ + :is=^R:k0=^^q:k1=^^r:k2=^^s:k3=^^t:k4=^^u:k5=^^v:k6=^^w:\ + :k7=^^x:k8=^^y:k9=^^z:kb=^Y:kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:\ + :le=^Y:nd=^X:se=\200^^E:so=\200\200\200\200\200\036D:\ + :ta=^I:te=^L:ti=^L^R:ue=^U:up=^W:us=^T:ve=^L:vs=^L^R: + +# (Some performance can be gained over the generic DG terminal type) +dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053:\ + :xo@:\ + :ho=^P\200\200:ll=^P\200^W:tc=dg-generic: + +# Like 6053, but adds reverse video and more keypad and function keys. +d200|d200-dg|Data General DASHER D200:\ + :ho@:ll@:md=^^D^T:me=\017\025\035\036E:mr=^^D:se=^^E^]:\ + :so=^^D^\:tc=dgkeys+15:tc=dg6053: + +# DASHER D210 series terminals in ANSI mode. +# Reverse video, no insert/delete character/line, 7 bits/character only. +# +# Initialization string 1 sets: +# <0 - scrolling enabled +# <1 - blink enabled +# <4 - print characters regardless of attributes +d210|d214|Data General DASHER D210 series:\ + :NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bl=^G:cb=\E[1K:\ + :cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:do=\E[B:\ + :ho=\E[H:i1=\E[<0;<1;<4l:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^J:\ + :se=\E[m:sf=^J:so=\E[2;7m:ue=\E[m:up=\E[A:us=\E[4m:\ + :tc=dgkeys+7b: + +# DASHER D210 series terminals in DG mode. +# Like D200, but adds clear to end-of-screen and needs XON/XOFF. +d210-dg|d214-dg|Data General DASHER D210 series in DG mode:\ + :xo:\ + :cd=^^FF:tc=d200-dg: + +# DASHER D211 series terminals in ANSI mode. +# Like the D210, but with 8-bit characters and local printer support. +# +# Initialization string 2 sets: +# \E[2;1;1;1v +# 2;1 - 8 bit operations +# 1;1 - 8 bit (international) keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# ^O - primary character set +# +d211|d215|Data General DASHER D211 series:\ + :km:\ + :is=\E[2;1;1;1v\E(B\E)4\017:ps=\E[i:tc=dgkeys+8b:\ + :tc=d210: + +# Initialization string 2 sets: +# \E[2;0;1;0v +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# ^O - primary character set +d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode:\ + :km@:\ + :is=\E[2;0;1;0v\E(0\017:tc=dgkeys+7b:tc=d211: + +# Like the D210 series, but adds support for 8-bit characters. +# +# Reset string 2 sets: +# ^^N - secondary character set +# ^^FS0> - 8 bit international character set +# ^^O - primary character set +# ^^FS00 - default character set (matching the native keyboard language) +# +d211-dg|d215-dg|Data General DASHER D211 series in DG mode:\ + :km:\ + :rs=\036N\036FS0>\036O\036FS00:tc=d210-dg: + +d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode:\ + :tc=d211-dg: + +# Enhanced DG mode with changes to be more UNIX compatible. +d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode:\ + :5i:\ + :it#8:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:ce=^^PE:ch=\020%.\177:cl=^^PH:cv=\020\177%.:\ + :do=^^PB:ho=^^PF:i1=\022\003\036P@1:i2=\036Fz0:kC=^^PH:\ + :kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:kr=^^PC:ku=^^PA:le=^^PD:\ + :mb=^^PI:me=\036PJ\025\035\036E\036FS00:nd=^^PC:pf=^^Fa:\ + :po=^^F`:ps=\036F?9:rs=\036N\036FS0E\036O\036FS00:sf=^J:\ + :ta=^I:up=^^PA:tc=dgkeys+15:tc=d216-dg: +d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines:\ + :li#25:\ + :i2=\036Fz2:tc=d216+: + +d217-unix|Data General DASHER D217 in DG-UNIX mode:\ + :tc=d216-unix: +d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines:\ + :tc=d216-unix-25: + +# DASHER D220 color terminal in ANSI mode. +# Like the D470C but with fewer colors and screen editing features. +# +# Initialization string 1 sets: +# \E[<0;<1;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <4 - print characters regardless of attributes +# \E[m - all attributes off +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# +d220|Data General DASHER D220:\ + :5i@:\ + :AL@:DL@:al@:dl@:i1=\E[<0;<1;<4l\E[m:pf@:po@:r1=\Ec:\ + :tc=dg+color8:tc=d470c: + +d220-7b|Data General DASHER D220 in 7 bit mode:\ + :5i@:\ + :AL@:DL@:al@:dl@:i1=\E[<0;<1;<4l\E[m:pf@:po@:r1=\Ec:\ + :tc=dg+color8:tc=d470c-7b: + +# Initialization string 3 sets: +# - default cursor (solid rectangle) +# Reset string 2 sets: +# ^^N - secondary character set +# ^^FS0> - 8 bit international character set +# ^^O - primary character set +# ^^FS00 - default character set (matching the native keyboard language) +# +d220-dg|Data General DASHER D220 color terminal in DG mode:\ + :5i@:\ + :al@:dl@:ho@:i2=\036FQ2:is@:ll@:pf@:po@:r1@:\ + :rs=\036N\036FS0>\036O\036FS00:tc=dgmode+color8:\ + :tc=d470c-dg: + +# DASHER D230C color terminal in ANSI mode. +# Like the D220 but with minor ANSI compatibility improvements. +# +d230c|d230|Data General DASHER D230C:\ + :ke=\E[2;1v:ks=\E[2;0v:mb=\E[5;50m:md=\E[4;7;50m:\ + :me=\E[50m\E)4\017:mh=\E[2;50m:mr=\E[7;50m:nw=^M^J:\ + :se=\E[50m:so=\E[2;7;50m:ue=\E[50m:us=\E[4;50m:\ + :tc=dgkeys+7b:tc=d220: + +d230c-dg|d230-dg|Data General DASHER D230C in DG mode:\ + :tc=d220-dg: + +# DASHER D400/D450 series terminals. +# These add intelligent features like insert/delete to the D200 series. +# +# Initialization string 2 sets: +# ^^FQ2 - default cursor (solid rectangle) +# ^^FW - character protection disabled +# ^^FJ - normal (80 column) mode +# ^^F\^ - horizontal scrolling enabled (for alignment) +# ^^FX004? - margins at columns 0 and 79 +# ^^F] - horizontal scrolling disabled +# ^^O - primary character set +# ^^FS00 - default character set (the keyboard native language) +# - (should reset scrolling regions, but that glitches the screen) +# Reset string 1 sets: +# ^^FA - all terminal defaults except scroll rate +# Reset string 2 sets: +# ^^F] - horizontal scrolling disabled +# ^^FT0 - jump scrolling +# +d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series:\ + :5i:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^^O:al=^^FH:as=^^N:\ + :ch=\020%.\177:cv=\020\177%.:dc=^^K:dl=^^FI:\ + :eA=\036N\036FS11\036O:ei=:ho=^^FG:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F\136\036FX004?\036F]\036O\036FS00:\ + :ll=\036FG\027:me=\017\025\035\036E\036O:pf=^^Fa:\ + :po=^^F`:r1=^^FA:r2=\036F]\036FT0:sr=^^I:ve=\036FQ2:\ + :vi=\036FQ0:tc=d210-dg: + +# DASHER D410/D460 series terminals in ANSI mode. +# These add a large number of intelligent terminal features. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[5;0v - normal (80 column) mode +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +# Initialization string 2 sets: +# \E[3;2;2;1;1;1v +# 3;2 - default cursor (solid rectangle) +# 2;1 - 8 bit operations +# 1;1 - international keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# ^O - primary character set +# +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# \E[<2h - horizontal scrolling disabled +# +# Reset string 2 sets: +# \E[4;0;2;1;1;1v +# 4;0 - jump scrolling +# 2;1 - 8 bit operations +# 1;1 - 8 bit (international) keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# +d410|d411|d460|d461|Data General DASHER D410/D460 series:\ + :5i:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:al=\E[L:\ + :as=\E)6\016:dc=\E[P:dl=\E[M:ei=:\ + :i1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017:me=\E[m:\ + :pf=\E[4i:po=\E[5i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:sr=\EM:ve=\E[3;2v:\ + :vi=\E[3;0v:tc=d211: + +# Initialization string 2 sets: +# \E[3;2;2;0;1;0v +# 3;2 - default cursor (solid rectangle) +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# ^O - primary character set +# +# Reset string 2 sets: +# \E[4;0;2;0;1;0v +# 4;0 - jump scrolling +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# +d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode:\ + :km@:\ + :ae=^O:as=^N:eA=\E)6:is=\E[3;2;2;0;1;0v\E(0\017:me=\E[m:\ + :rs=\E[4;0;2;0;1;0v\E(0:tc=dgkeys+7b:tc=d410: + +d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode:\ + :km:\ + :ae=\036FS00:as=\036FS11:eA@:\ + :me=\017\025\035\036E\036FS00:tc=d400-dg: + +# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[5;1v - compressed (135 column) mode +# \E[1;1;126 - margins at columns 1 and 126 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# \E[5;1v - compressed (135 column) mode +# \E[1;1;126w - margins at columns 1 and 126 +# \E[<2h - horizontal scrolling disabled +# +d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode:\ + :co#126:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:tc=d410: + +d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode:\ + :co#126:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:tc=d410-7b: + +d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode:\ + :tc=d410-dg: + +# These add intelligent features like scrolling regions. +d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode:\ + :al=^^FH:cl=^^FE:dc=^^K:dl=^^FI:ei=:ho=^^FG:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F\136\036FX004F\036O\036FS00:\ + :ll=\036FG\036PA:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:sc=\036F}10:sr=^^I:ve=\036FQ5:vi=\036FQ0:\ + :tc=d216+: +d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode:\ + :co#132:\ + :is=\036FQ5\036FW\036FK\036F\136\036FX0083\036O\036FS00:\ + :rs=\036P@1\036FK\036FX0083:tc=d412-unix: +d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines:\ + :li#25:\ + :i2=\036Fz2:tc=d462+: +d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line:\ + :es:hs:\ + :cl=\036FG\036PH:fs=\036F}01\022:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ll@:tc=d462+: + +# Relative cursor motions are confined to the current window, +# which is not what the scrolling region specification expects. +# Thus, relative vertical cursor positioning must be deleted. +d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region:\ + :do@:ll@:up@:tc=d462+: + +d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode:\ + :tc=d412-unix: +d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode:\ + :tc=d412-unix-w: +d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines:\ + :tc=d412-unix-25: +d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line:\ + :tc=d412-unix-s: +d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region:\ + :tc=d412-unix-sr: + +d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode:\ + :tc=d413-unix: +d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode:\ + :tc=d413-unix-w: +d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines:\ + :tc=d413-unix-25: +d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line:\ + :tc=d413-unix-s: +d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region:\ + :tc=d413-unix-sr: + +d430c-dg|d430-dg|Data General D430C in DG mode:\ + :tc=d413-dg:tc=dg+fixed: +d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors:\ + :tc=d413-dg:tc=dg+ccc: + +d430c-unix|d430-unix|Data General D430C in DG-UNIX mode:\ + :tc=d413-unix:tc=dgunix+fixed: +d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode:\ + :tc=d413-unix-w:tc=dgunix+fixed: +d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines:\ + :tc=d413-unix-25:tc=dgunix+fixed: +d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line:\ + :tc=d413-unix-s:tc=dgunix+fixed: +d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region:\ + :tc=d413-unix-sr:tc=dgunix+fixed: +d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors:\ + :tc=d413-unix:tc=dgunix+ccc: +d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors:\ + :tc=d413-unix-w:tc=dgunix+ccc: +d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors:\ + :tc=d413-unix-25:tc=dgunix+ccc: +d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors:\ + :tc=d413-unix-s:tc=dgunix+ccc: +d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors:\ + :tc=d413-unix-sr:tc=dgunix+ccc: + +# DASHER D470C color terminal in ANSI mode. +# Like the D460 but with 16 colors and without a compressed mode. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +d470c|d470|Data General DASHER D470C:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:tc=dg+color:\ + :tc=d460: + +d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:tc=dg+color:\ + :tc=d460-7b: + +# Initialization string 2 sets: +# ^^FQ2 - default cursor (solid rectangle) +# ^^FW - character protection disabled +# ^^F\^ - horizontal scrolling enabled (for alignment) +# ^^FX004? - margins at columns 0 and 79 +# ^^F] - horizontal scrolling disabled +# ^^O - primary character set +# ^^FS00 - default character set (the keyboard native language) +# - (should reset scrolling regions, but that glitches the screen) +# +d470c-dg|d470-dg|Data General DASHER D470C in DG mode:\ + :is=\036FQ2\036FW\036F\136\036FX004?\036F]\036O\036FS00:\ + :tc=dgmode+color:tc=d460-dg: + +# DASHER D555 terminal in ANSI mode. +# Like a D411, but has an integrated phone. +d555|Data General DASHER D555:\ + :tc=d411: +d555-7b|Data General DASHER D555 in 7-bit mode:\ + :tc=d411-7b: +d555-w|Data General DASHER D555 in wide mode:\ + :tc=d411-w: +d555-7b-w|Data General DASHER D555 in wide 7-bit mode:\ + :tc=d411-7b-w: +d555-dg|Data General DASHER D555 series in DG mode:\ + :tc=d411-dg: + +# DASHER D577 terminal in ANSI mode. +# Like a D411, but acts as a keyboard for serial printers ("KSR" modes). +d577|Data General DASHER D577:\ + :tc=d411: +d577-7b|Data General DASHER D577 in 7-bit mode:\ + :tc=d411-7b: +d577-w|Data General DASHER D577 in wide mode:\ + :tc=d411-w: +d577-7b-w|Data General DASHER D577 in wide 7-bit mode:\ + :tc=d411-7b-w: + +d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode:\ + :tc=d411-dg: + +# DASHER D578 terminal. +# Like a D577, but without compressed mode; like a D470C in this respect. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +d578|Data General DASHER D578:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:tc=d577: +d578-7b|Data General DASHER D578 in 7-bit mode:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:tc=d577-7b: + +#### Datamedia (dm) +# +# Datamedia was headquartered in Nashua, New Hampshire until it went +# out of business in 1993, but the ID plates on the terminals referred +# to the factory in Pennsauken, NJ. The factory was sold to a PCB board +# manufacturer which threw out all information about the terminals. +# + +cs10|colorscan|Datamedia Color Scan 10:\ + :ms:\ + :co#80:li#24:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%2;%2H:cr=^M:\ + :do=^J:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:me=\E[m:nd=\E[C:se=\E[m:sf=^J:\ + :so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m: +cs10-w|Datamedia Color Scan 10 with 132 columns:\ + :co#132:\ + :cm=\E[%i%2;%3H:tc=cs10: + +# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr) +dm1520|dm1521|datamedia 1520:\ + :am:bs:xn:\ + :co#80:it#8:li#24:\ + :bl=^G:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :cr=^M:do=^J:ho=^Y:\ + :kd=^J:kh=^Y:kl=^H:kr=^\:ku=^_:le=^H:nd=^\:sf=^J:ta=^I:up=^_: +# dm2500: this terminal has both :IC: and :im:. Applications using +# termcap/terminfo directly (rather than through ncurses) might be confused. +dm2500|datamedia2500|datamedia 2500:\ + :bs:nc:\ + :co#80:li#24:\ + :al=15\020\n\030\035\030\035:bl=^G:ce=^W:cl=^^^^\177:\ + :cm=\014%r%n%.%.:dc=10*\020\010\030\035:\ + :dl=10*\020\032\030\035:dm=^P:do=^J:ed=^X^]:\ + :ei=10\377\377\030\035:ho=^B:ic=10*\020\034\030\035:\ + :im=^P:le=^H:nd=^\:pc=\377:se=^X^]:sf=^J:so=^N:up=^Z: +# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82) +# also, has a meta-key. +# From: <goldberger@su-csli.arpa> +# (dmchat: ":MT:" changed to ":km:" -- esr) +dmchat|dmchat version of datamedia 2500:\ + :km:\ + :al=1*\020\n\030\035\030\035:dl=2\020\032\030\035:\ + :tc=dm2500: +# (dm3025: ":MT:" changed to ":km:" -- esr) +dm3025|datamedia 3025a:\ + :bs:km:\ + :co#80:it#8:li#24:\ + :al=130\EP\n\EQ:bl=^G:cd=2\EJ:ce=\EK:cl=2\EM:\ + :cm=\EY%r%+ %+ :cr=^M:dc=6\010:dl=130\EP\EA\EQ:dm=\EP:\ + :do=^J:ed=\EQ:ei=\EQ:ho=\EH:im=\EP:ip=6:is=\EQ\EU\EV:le=^H:\ + :nd=\EC:se=\EO0:sf=^J:so=\EO1:ta=^I:up=\EA: +dm3045|datamedia 3045a:\ + :am:bs:eo:km@:ul:xn:\ + :al@:dc=6\EB:dl@:dm@:ed@:ei=\EP:is=\EU\EV:k0=\Ey\r:k1=\Ep\r:\ + :k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:k7=\Ev\r:\ + :k8=\Ew\r:k9=\Ex\r:kh=\EH:kr=\EC:ku=\EA:pc=\177:se@:so@:\ + :tc=dm3025: +# Datamedia DT80 soft switches: +# 1 0=Jump 1=Smooth +# Autorepeat 0=off 1=on +# Screen 0=Dark 1=light +# Cursor 0=u/l 1=block +# +# 2 Margin Bell 0=off 1=on +# Keyclick 0=off 1=on +# Ansi/VT52 0=VT52 1=Ansi +# Xon/Xoff 0=Off 1=On +# +# 3 Shift3 0=Hash 1=UK Pound +# Wrap 0=Off 1=On +# Newline 0=Off 1=On +# Interlace 0=Off 1=On +# +# 4 Parity 0=Odd 1=Even +# Parity 0=Off 1=On +# Bits/Char 0=7 1=8 +# Power 0=60Hz 1=50Hz +# +# 5 Line Interface 0=EIA 1=Loop +# Aux Interface 0=EIA 1=Loop +# Local Copy 0=Off 1=On +# Spare +# +# 6 Aux Parity 0=Odd 1=Even +# Aux Parity 0=Off 1=On +# Aux Bits/Char 0=7 1=8 +# CRT Saver 0=Off 1=On +# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding. +dm80|dmdt80|dt80|datamedia dt80/1:\ + :cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=%i\E[%d;%dH:do=^J:\ + :ho=\E[H:me=\E[m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :se=\E[m:so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:tc=vt100: +# except in 132 column mode, where it needs a little padding. +# This is still less padding than the vt100, and you can always turn on +# the ^S/^Q handshaking, so you can use vt100 flavors for things like +# reverse video. +dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode:\ + :co#132:\ + :cd=20\E[0J:ce=20\E[0K:cl=50\E[H\E[2J:cm=5\E[%i%d;%dH:\ + :do=^J:up=5\E[A:tc=dm80: +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +dt80-sas|Datamedia DT803/DTX for SAS usage:\ + :am:bw:\ + :co#80:li#24:\ + :ac=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~:\ + :ae=\EG:al=\EL:as=\EF:bl=^G:cd=^K:ce=^]:cl=^L:\ + :cm=\E=%r%+ %+ :cr=^M:ct=\E'0:dl=\EM:do=\EB:ff=^L:ho=^Y:\ + :is=\E)0\E<\EP\E'0\E$2:kC=^L:kE=^]:kS=^K:kd=^J:kh=^Y:kl=^H:\ + :kr=^\:ku=^_:le=^H:me=^X:mr=\E$2\004:nd=^\:pf=^O:po=^N:se=^X:\ + :sf=\EB:so=\E$2\004:sr=\EI:st=\E'1:ta=^I:up=^_: + +# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL +# These aren't end-all Excel termcaps; but do insert/delete char/line +# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman) +# The naming convention has been bent somewhat, with the use of E? (where +# E is for 'Excel') as # a name. This was done to distinguish the entries +# from the other Datamedias in use here, and yet to associate a model of +# the Excel terminals with the regular datamedia terminals that share +# major characteristics. +excel62|excel64|datamedia Excel 62:\ + :dc=\E[P:ei=\E[4l:im=\E[4h:k5=\EOu:k6=\EOv:k7=\EOw:k8=\EOx:\ + :k9=\EOy:kb=^H:kd=^J:kl=^H:tc=dt80: +excel62-w|excel64-w|datamedia Excel 62 in 132 char mode:\ + :dc=\E[P:ei=\E[4l:im=\E[4h:k5=\EOu:k6=\EOv:k7=\EOw:k8=\EOx:\ + :k9=\EOy:kb=^H:kd=^J:kl=^H:tc=dt80w: +excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode:\ + :dc=\E[P:ei=\E[4l:im=\E[4h:k5=\EOu:k6=\EOv:k7=\EOw:k8=\EOx:\ + :k9=\EOy:kb=^H:kd=^J:kl=^H:vb=\E[?5l\E[?5h:tc=dt80: + +#### Falco +# +# Falco Data Products +# 440 Potrero Avenue +# Sunnyvale, CA 940864-196 +# Vox: (800)-325-2648 +# Fax: (408)-745-7860 +# Net: techsup@charm.sys.falco.com +# +# Current Falco models as of 1995 are generally ANSI-compatible and support +# emulations of DEC VT-series, Wyse, and Televideo types. +# + +# Test version for Falco ts-1. See <arpavax.hickman@ucb> for info +# This terminal was released around 1983 and was discontinued long ago. +# The standout and underline highlights are the same. +falco|ts1|ts-1|falco ts-1:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET\EG0\010:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:is=\Eu\E3:\ + :k0=^A0\r:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:me=\Eg0:nd=^L:\ + :se=\Eg0:sf=^J:so=\Eg1:ta=^I:ue=\Eg0:up=^K:us=\Eg1: +falco-p|ts1p|ts-1p|falco ts-1 with paging option:\ + :am:bs:da:db:mi:ms:ul:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET\EG0\010\Eg0:cl=\E*:\ + :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=\E[B:ei=\Er:im=\Eq:\ + :is=\EZ\E3\E_c:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\Eg0:nd=\E[C:se=\Eg0:sf=^J:so=\Eg4:ta=^I:te=\E_b:\ + :ti=\E_d:ue=\Eg0:up=\E[A:us=\Eg1: +# (ts100: I added <rmam>/<smam> based on the init string -- esr) +ts100|ts100-sp|falco ts100-sp:\ + :am:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E~E:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E~W:dl=\E~R:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :i1=\E~)\E~ea:ic=\E~Q:im=:kb=^H:kd=\EOB:ke=\E[?1l\E>:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:\ + :md=2\E[1m:me=2\E[0m:mr=2\E[7m:nd=2\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[1;7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m:tc=vt100+fnkeys: +ts100-ctxt|falco ts-100 saving context:\ + :te=\E~_b:ti=\E~_d\E[2J:tc=ts100: + +#### Florida Computer Graphics +# + +# Florida Computer Graphics Beacon System, using terminal emulator program +# "host.com", as provided by FCG. This description is for an early release +# of the "host" program. Known bug: :cd: clears the whole screen, so it's +# commented out. + +# From: David Bryant <cbosg!djb> 1/7/83 +beacon|FCG Beacon System:\ + :am:da:db:\ + :co#80:li#32:\ + :al=\EE:bl=1\ESTART\r\E37\r\EEND\r:ce=\ET:cl=10\EZ:\ + :cm=20\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=10\EH:\ + :ic=\EQ:im=:le=^H:mb=\ESTART\r\E61,1\r\EEND\r:\ + :me=20\ESTART\r\E78\r\E70,0\r\EEND\r:\ + :mr=\ESTART\r\E59,1\r\EEND\r:nd=\EV:\ + :se=20\ESTART\r\E70,0\r\EEND\r:sf=^J:\ + :so=20\ESTART\r\E70,6\r\EEND\r:te=:\ + :ti=10\ESTART\r\E2,0\r\E12\r\EEND\r:\ + :ue=\ESTART\r\E60,0\r\EEND\r:up=\EU:\ + :us=\ESTART\r\E60,1\r\EEND\r: + +#### Fluke +# + +# The f1720a differences from ANSI: no auto margin, destructive +# tabs, # of lines, funny highlighting and underlining +f1720|f1720a|fluke 1720A:\ + :xt:\ + :co#80:li#16:sg#1:ug#1:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :do=\E[B:is=\E[H\E[2J:kd=^]:kl=^_:kr=^^:ku=^\:le=^H:me=\E[m:\ + :nd=\E[C:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +#### Liberty Electronics (Freedom) +# +# Liberty Electronics +# 48089 Fremont Blvd +# Fremont CA 94538 +# Vox: (510)-623-6000 +# Fax: (510)-623-7021 + +# From: <faletti@berkeley.edu> +# (f100: added empty <acsc> to suppress a tic warning; +# made this relative to adm+sgr -- note that <invis> isn't +# known to work for f100 but does on the f110. --esr) +f100|freedom|freedom100|freedom model 100:\ + :am:bs:bw:hs:mi:ms:xo:\ + :co#80:li#24:\ + :ac=:ae=\E$:al=8.5*\EE:as=\E%%:bl=^G:bt=\EI:cd=\EY:ce=\ET:\ + :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E3:cv=\E[%+ :\ + :dc=\EW:dl=11.5*\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:\ + :im=\Eq:ip=6:is=\Eg\Ef\r\Ed:k1=^A@\r:k2=^AA\r:k3=^AB\r:\ + :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ + :k;=^AI\r:kB=\EI:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\ + :nd=^L:sf=^J:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:up=^K:vb=\Eb\Ed:\ + :tc=adm+sgr: +f100-rv|freedom-rv|freedom 100 in reverse video:\ + :is=\Eg\Ef\r\Eb:vb=\Ed\Eb:tc=f100: +# The f110 and f200 have problems with vi(1). They use the ^V +# code for the down cursor key. When kcud1 is defined in terminfo +# as ^V, the Control Character Quoting capability (^V in insert mode) +# is lost! It cannot be remapped in vi because it is necessary to enter +# a ^V to to quote the ^V that is being remapped!!! +# +# f110/f200 users will have to decide whether +# to lose the down cursor key or the quoting capability. We will opt +# initially for leaving the quoting capability out, since use of VI +# is not generally applicable to most interactive applications +# (f110: added :ta:, :kh: & <kcbt> from f100 -- esr) +f110|freedom110|Liberty Freedom 110:\ + :bw@:es:\ + :it#8:ws#80:\ + :ae=\E%%:al=\EE:as=\E$:dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:\ + :im=\EO\Eq:ip@:is@:k0=^AI\r:k;@:kA=\EE:kC=^^:kD=\EW:kE=\ET:\ + :kI=\EQ:kL=\ER:kS=\EY:mb=\EG2:md=\EG0:mh=\EG@:pf=\Ea:po=\E`:\ + :so=\EG<:sr=\EJ:ts=\Ef:vb=\Eb\Ed:ve=\E.2:vi=\E.1:tc=f100: +f110-14|Liberty Freedom 110 14inch:\ + :dc@:tc=f110: +f110-w|Liberty Freedom 110 - 132 cols:\ + :co#132:tc=f110: +f110-14w|Liberty Freedom 110 14in/132 cols:\ + :co#132:\ + :dc@:tc=f110: +# (f200: added <acsc> to suppress tic warnings re :as:/:ae: --esr) +f200|freedom200|Liberty Freedom 200:\ + :am:bs:es:hs:mi:ms:xo:\ + :co#80:it#8:li#24:ws#80:\ + :ac=:ae=\E%%:al=\EE:as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:\ + :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:cs=\Em0%+ %+ :ct=\E3:\ + :cv=\E[%+ :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:ei=\Er:fs=^M:ho=^^:\ + :im=\Eq:k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\ + :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kC=^^:\ + :kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:kl=^H:kr=^L:\ + :ku=^K:le=^H:mb=\EG2:md=\EG0:mh=\EG@:nd=^L:pf=\Ea:po=\E`:\ + :sf=^J:so=\EG<:sr=\EJ:st=\E1:ts=\Ef:up=^K:vb=\Eo\En:ve=\E.1:\ + :vi=\E.0:tc=adm+sgr: +f200-w|Liberty Freedom 200 - 132 cols:\ + :co#132:tc=f200: +# The f200 has the ability to reprogram the down cursor key. The key is +# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM, +# so powering the terminal off and on will not cause the change to be lost. +f200vi|Liberty Freedom 200 for vi:\ + :kd=^J:vb=\Eb\Ed:tc=f200: +f200vi-w|Liberty Freedom 200 - 132 cols for vi:\ + :co#132:tc=f200vi: + +#### GraphOn (go) +# +# Graphon Corporation +# 544 Division Street +# Campbell, CA 95008 +# Vox: (408)-370-4080 +# Fax: (408)-370-5047 +# Net: troy@graphon.com (Troy Morrison) +# +# +# The go140 and go225 have been discontinued. GraphOn now makes X terminals, +# including one odd hybrid that starts out life on power-up as a character +# terminal, than can be switched to X graphics mode (driven over the serial +# line) by an escape sequence. No info on this beast yet. +# (go140: I added <rmam>/<smam> based on the init string -- esr) +go140|graphon go-140:\ + :bs:\ + :co#80:it#8:li#24:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:cd=10\E[J:ce=\E[K:\ + :cl=10\E[H\E[2J:cm=\E[%i%2;%2H:dc=\E[P:dl=\E[M:do=\E[B:\ + :ei=\E[4l:if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\EOB:ke=\E[?1l\E>:\ + :kh=\E[H:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +go140w|graphon go-140 in 132 column mode:\ + :am:\ + :co#132:\ + :is=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q:\ + :tc=go140: +# Hacked up vt200 termcap to handle GO-225/VT220 +# From: <edm@nwnexus.WA.COM> +# (go225: I added <rmam>/<smam> based on the init string -- esr) +go225|go-225|Graphon 225:\ + :am:bs:mi:xn:\ + :co#80:it#8:li#25:vt#3:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=^J:\ + :ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ks=\E=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:r1=\E[!p\E[?7h\E[2;1;1#w:rc=\E8:\ + :rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:ta=^I:te=\E[!p\E[?7h\E[2;1;1#w:\ + :ti=\E[2;0#w\E[1;25r:ue=\E[24m:up=\E[A:us=\E[4m: + +#### Harris (Beehive) +# +# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine. +# Their terminal group is ancient history now (1995) though the parent +# company is still in business. +# + +# Beehive documentation is undated and marked Preliminary and has no figures +# so we must have early Superbee2 (Model 600, according to phone conversation +# with mfr.). It has proved reliable except for some missing padding +# (notably after \EK and <nl> at bottom of screen). +# +# The key idea is that AEP mode is poison for :cm: & that US's in +# the local memory should be avoided like the plague. That means +# that the 2048 character local buffer is used as 25 lines of 80 +# characters, period. No scrolling local memory, folks. It also +# appears that we cannot use naked INS LINE feature since it uses +# US. The sbi fakes :al: with an 80-space insert that may be too +# slow at low speeds; also spaces get converted to \040 which is +# too long for some programs (not vi). DEL LINE is ok but slow. +# +# The <nl> string is designed for last line of screen ONLY; cup to +# 25th line corrects the motion inherent in scrolling to Page 1. +# +# There is one understood bug. It is that the screen appears to +# pop to a new (blank) page after a :nw:, or leave a half-line +# ellipsis to a quad that is the extra 48 memory locations. The +# data received is dumped into memory but not displayed. Not to +# worry if :cm: is being used; the lines not displayed will be, +# whenever the cursor is moved up there. Since :cm: is addressed +# relative to MEMORY of window, nothing is lost; but beware of +# relative cursor motion (:up:,:do:,:nd:,:le:). Recommended, +# therefore, is setenv MORE -c . +# +# WARNING: Not all features tested. +# +# Timings are assembled from 3 sources. Some timings may reflect +# SB2/Model 300 that were used if more conservative. +# Tested on a Model 600 at 1200 and 9600 bd. +# +# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly +# placed on the keyboard and useless because of AEP, is made +# into a backspace key. In use ESC must be pressed twice (to send) +# and sending ^C must be prefixed by ESC to avoid that weird +# transmit mode associated with ENTER key. +# +# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across +# the screen, then it has dropped into ENTER mode; hit +# RESET--ONLINE--!tset. +# +# As delivered this machine has a FATAL feature that will throw +# it into that strange transmit state (SPOW) if the space bar is +# hit after a CR is received, but before receiving a LF (or a +# few others). +# +# The circuits MUST be modified to eliminate the SPOW latch. +# This is done by strapping on chip A46 of the I/O board; cut +# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that +# chip. This mod has been checked out on a Mod 600 of Superbee II. +# With this modification absurdly high timings on cr are +# unnecessary. +# +# NOTE WELL that the rear panel switch should be set to CR/LF, +# not AEP! +# +sb1|beehive superbee:\ + :am:bs:bw:da:db:mi:ul:xb:\ + :co#80:li#25:sg#1:ug#1:\ + :al=3\EN\EL\EQ \EP \EO\ER\EA:\ + :bl=^G:bt=650\E`:cd=3\EJ:ce=3\EK:cl=3\EH\EJ:cm=\EF%r%3%3:\ + :cr=\r:ct=\E3:dc=3\EP:dl=100\EM:do=^J:ei=\ER:ho=1\EH:\ + :im=\EQ\EO:is=\EE\EX\EZ\EO\Eb\Eg\ER:k0=\E2:k1=\Ep:k2=\Eq:\ + :k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:k9=\E1:kE=\EK:\ + :kI=\EQ\EO:kL=\EM:kM=\ER:kS=\EJ:kb=^_:kd=\EB:kh=\EH:kl=\ED:\ + :kr=\EC:ku=\EA:l0=TAB CLEAR:l9=TAB SET:le=^H:me=\E_3:\ + :nd=3\EC:se=\E_3:sf=^J:so=\E_1:st=\E1:ta=^I:te=:ti=\EO:\ + :ue=\E_3:up=3\EA:us=\E_0: +sbi|superbee|beehive superbee at Indiana U.:\ + :xb:\ + :al=1\EN\EL\EQ \EP \EO\ER\EA:cr=1\r:tc=sb1: +# Alternate (older) description of Superbee - f1=escape, f2=^C. +# Note: there are at least 3 kinds of superbees in the world. The sb1 +# holds onto escapes and botches ^C's. The sb2 is the best of the 3. +# The sb3 puts garbage on the bottom of the screen when you scroll with +# the switch in the back set to CRLF instead of AEP. This description +# is tested on the sb2 but should work on all with either switch setting. +# The f1/f2 business is for the sb1 and the :xb: can be taken out for +# the other two if you want to try to hit that tiny escape key. +# This description is tricky: being able to use cup depends on there being +# 2048 bytes of memory and the hairy <nl> string. +superbee-xsb|beehive super bee:\ + :am:da:db:xb:\ + :co#80:it#8:li#25:\ + :cd=3\EJ:ce=3\EK:cl=3\EH\EJ:cm=\EF%r%3%3:cr=1000\r:ct=\E3:\ + :dc=3\EP:dl=100\EM:do=^J:ho=\EH:is=\EH\EJ:k1=\Ep:k2=\Eq:\ + :k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kd=\EB:kh=\EH:\ + :kl=\ED:kr=\EC:ku=\EA:le=^H:me=\E_3:nd=\EC:se=\E_3:\ + :sf=\n\200\200\200\n\200\200\200\EA\EK\200\200\200\ET\ET:\ + :so=\E_1:st=\E1:ta=^I:up=3\EA:ve=^J: +# This loses on lines > 80 chars long, use at your own risk +superbeeic|super bee with insert char:\ + :ei=\ER:ic=:im=\EQ:tc=superbee-xsb: +sb2|sb3|fixed superbee:\ + :xb@:tc=superbee: + +#### Beehive Medical Electronics +# +# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999): +# Regarding your question though; Beehive terminals weren't made by Harris. +# They were made by Beehive Medical Electronics in Utah. They went out of +# business in the early '80s. +# +# (OK, then, I don't know why a couple of these say "harris beehive".) +# + +# Reports are that most of these Beehive entries (except superbee) have not +# been tested and do not work right. :se: is a trouble spot. Be warned. + +# (bee: :ic: was empty, which is obviously bogus -- esr) +beehive|bee|harris beehive:\ + :am:bs:mi:\ + :co#80:li#24:\ + :al=\EL:bt=\E>:cd=\EJ:ce=\EK:cl=\EE:cm=\EF%+ %+ :dc=\EP:\ + :dl=\EM:do=\EB:ei=\E@:ho=\EH:im=\EQ:kA=\EL:kB=\E>:kC=\EE:\ + :kD=\EP:kE=\EK:kI=\EQ:kL=\EM:kM=\E@:kb=^H:kd=\EB:kh=\EH:\ + :kl=\ED:kr=\EC:ku=\EA:le=^H:me=\Ed@:nd=\EC:se=\Ed@:so=\EdP:\ + :ue=\Ed@:up=\EA:us=\Ed`: +# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. +# good grief - does this entry make :sg:/:ug: when it doesn't have to? +# look at those spaces in :se:/:so:. Seems strange to me... +# (beehive: :if=/usr/share/tabset/beehive: removed, no such file. If you +# really care, cook up one using ^F -- esr) +beehive3|bh3m|beehiveIIIm|harris beehive 3m:\ + :am:bs:\ + :co#80:it#8:li#20:\ + :al=160\023:bl=^G:cd=^R:ce=^P:cl=^E^R:cr=^M:dl=350\021:\ + :do=^J:ho=^E:le=^H:ll=^E^K:nd=^L:se=\040^_:sf=^J:so=^]\040:\ + :st=^F:ta=^I:up=^K: +beehive4|bh4|beehive 4:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cr=^M:do=^J:ho=\EH:le=\ED:nd=\EC:\ + :sf=^J:up=\EA: +# There was an early Australian kit-built computer called a "Microbee". +# It's not clear whether this is for one of those or for a relative +# of the Beehive. +microb|microbee|micro bee series:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EF%+ %+ :cr=^M:do=^J:k1=\Ep:\ + :k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:k9=\Ex:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:me=\Ed@:nd=\EC:\ + :se=\Ed@:sf=^J:so=\040\EdP:ta=^I:ue=\Ed@:up=\EA:us=\Ed`: + +# 8675, 8686, and bee from Cyrus Rahman +# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr) +ha8675|harris 8675:\ + :F1=^W:F2=\ER:F3=\EE:F4=\EI:F5=\Ei:F6=\Eg:\ + :is=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU:k1=^F:k2=^P:k3=^N:\ + :k4=^V:k5=^J:k6=^T:k7=^H:k8=\177:k9=\Ee:k;=\Ed:tc=bee: +# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation +# in :is: -- esr) +ha8686|harris 8686:\ + :F1=\EW:F2=\002\E{\003:F3=\002\E|\003:F4=\002\E}\003:\ + :F5=\002\E~\003:F6=\002\E\177\003:\ + :is=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#:\ + :k1=\002\Ep\003:k2=\002\Eq\003:k3=\002\Er\003:\ + :k4=\002\Es\003:k5=\E3:k6=\EI:k7=\ER:k8=\EJ:k9=\E(:k;=\Ej:\ + :tc=bee: + +#### Hazeltine +# +# Hazeltine appears to be out of the terminal business as of 1995. These +# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with +# Harris. They have a hazeltine.com domain (but no web page there ) and can +# be reached at: +# +# Hazeltine +# 450 East Pulaski Road +# Greenlawn, New York 11740 +# +# As late as 1993, manuals for the terminal product line could still be +# purchased from: +# +# TRW Customer Service Division +# 15 Law Drive +# P.O. Box 2076 +# Fairfield, NJ 07007-2078 +# +# They're now (1998) a subsidiary of General Electric, operating under the +# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page +# at <http://www.gec.com/cpd/1ncpd.htm#1.55>. +# + +# Since :nd: is blank, when you want to erase something you +# are out of luck. You will have to do ^L's a lot to +# redraw the screen. h1000 is untested. It doesn't work in +# vi - this terminal is too dumb for even vi. (The code is +# there but it isn't debugged for this case.) +hz1000|hazeltine 1000:\ + :bs:\ + :co#80:li#12:\ + :bl=^G:cl=^L:cr=^M:do=^J:ho=^K:le=^H:nd=\040:sf=^J: +# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 +hz1420|hazeltine 1420:\ + :am:bs:\ + :co#80:li#24:\ + :al=\E^Z:bl=^G:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E\021%r%.%+ :\ + :cr=^M:dl=\E^S:do=^J:le=^H:nd=^P:se=\E^Y:sf=^J:so=\E^_:ta=^N:\ + :up=\E^L: +# New "safe" cursor movement (11/87) from <cgs@umd5.umd.edu>. Prevents +# freakout with out-of-range args and tn3270. No hz since it needs to +# receive tildes. +hz1500|hazeltine 1500:\ + :am:bs:hz:\ + :co#80:li#24:\ + :al=40~\032:bl=^G:cd=10~\030:ce=~^O:cl=~^\:\ + :cm=~\021%r%>^^ %+`%+`:cr=^M:dl=40~\023:do=~^K:ho=~^R:\ + :kd=^J:kh=~^R:kl=^H:kr=^P:ku=~^L:le=^H:nd=^P:se=~^Y:sf=^J:\ + :so=~^_:up=~^L: +# h1510 assumed to be in sane escape mode. Else use h1500. +# (h1510: early versions of this entry apparently had ":se=\E^_:, +# :so=\E^Y:, but these caps were commented out in 8.3; also, +# removed incorrect and overridden ":do=^J:" -- esr) +hz1510|hazeltine 1510:\ + :am:bs:\ + :co#80:li#24:\ + :al=\E^Z:bl=^G:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E\021%r%.%.:\ + :cr=^M:dl=\E^S:do=\E^K:le=^H:nd=^P:sf=^J:up=\E^L: +# Hazeltine 1520 +# The following switch settings are assumed for normal operation: +# FULL CR U/L_CASE ESCAPE +# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON +# Other switches may be set for operator convenience or communication +# requirements. +hz1520|Hazeltine 1520:\ + :am:bs:bw:ms:\ + :co#80:li#24:\ + :al=\E^Z:bl=^G:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E\021%r%.%.:\ + :cr=^M:dl=\E^S:do=^J:ho=\E^R:kA=\E^Z:kC=\E^\:kE=\E^O:\ + :kL=\E^S:kS=\E^X:kb=^H:kd=\E^K:kh=\E^R:kl=^H:kr=^P:ku=\E^L:\ + :le=^H:md=\E^_:me=\E^Y:nd=^P:r1=\E$\E\005\E?\E\031:\ + :se=\E^Y:sf=^J:so=\E^_:up=\E^L: +# This version works with the escape switch off +# (h1520: removed incorrect and overridden ":do=^J:" -- esr) +hz1520-noesc|hazeltine 1520:\ + :am:hz:\ + :co#80:li#24:\ + :al=~^Z:bl=^G:cd=~^X:ce=~^O:cl=~^\:cm=1~\021%r%.%.:cr=^M:\ + :dl=~^S:do=~^K:ho=~^R:le=^H:nd=^P:se=~^Y:sf=^J:so=~^_:up=~^L: +# Note: the h1552 appears to be the first Hazeltine terminal which +# is not braindamaged. It has tildes and backprimes and everything! +# Be sure the auto lf/cr switch is set to cr. +hz1552|hazeltine 1552:\ + :bs:\ + :al=\EE:dl=\EO:do=^J:k1=\EP:k2=\EQ:k3=\ER:l1=blue:l2=red:\ + :l3=green:tc=vt52: +hz1552-rv|hazeltine 1552 reverse video:\ + :do=^J:se=\ET:so=\ES:tc=hz1552: +# Note: h2000 won't work well because of a clash between upper case and ~'s. +hz2000|hazeltine 2000:\ + :am:bs:nc:\ + :co#74:li#27:\ + :al=6~\032:bl=^G:cl=6~\034:cm=~\021%r%.%.:dl=6~\023:do=^J:\ + :ho=~^R:le=^H:pc=\177:sf=^J: +# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote: +# I tested this termcap entry for the Hazeltine Esprit with vi. It seems +# to work ok. There is one problem though if one types a lot of garbage +# characters very fast vi seems not able to keep up and hangs while trying +# to insert. That's in insert mode while trying to insert in the middle of +# a line. It might be because the Esprit doesn't have insert char and delete +# char as a built in function. Vi has to delete to end of line and then +# redraw the rest of the line. +esprit|Hazeltine Esprit I:\ + :am:bs:bw:\ + :co#80:li#24:\ + :al=\E^Z:bl=^G:bt=\E^T:cd=\E^W:ce=\E^O:cl=\E^\:\ + :cm=\E\021%r%.%.:cr=^M:dl=\E^S:do=\E^K:ho=\E^R:is=\E?:\ + :k0=^B0^J:k1=^B1^J:k2=^B2^J:k3=^B3^J:k4=^B4^J:k5=^B5^J:\ + :k6=^B6^J:k7=^B7^J:k8=^B8^J:k9=^B9^J:kb=^H:kd=\E^K:ke=\E>:\ + :kh=\E^R:kl=^H:kr=^P:ks=\E<:ku=\E^L:l0=0:l1=1:l2=2:l3=3:l4=4:\ + :l5=5:l6=6:l7=7:l8=8:l9=9:le=^H:nd=^P:se=\E^Y:sf=^J:so=\E^_:\ + :up=\E^L: +esprit-am|hazeltine esprit auto-margin:\ + :am:tc=esprit: +# Hazeltine Modular-1 from Cliff Shackelton <ittvax!ittral!shackelt> via BRL +# Vi it seems always wants to send a control J for "do" and it turned out +# that the terminal would work somewhat if the auto LF/CR was turned off. +# (hmod1: removed :dn=~^K: -- esr) +hmod1|Hazeltine Modular 1:\ + :am:bs:hz:\ + :co#80:li#24:\ + :al=~^Z:bl=^G:bt=~^T:cl=~^\:cm=~\021%r%.%.:cr=^M:dl=~^S:\ + :do=~^K:ho=~^R:kd=~^K:kh=~^R:kl=^H:kr=^P:ku=~^L:le=^H:me=~^Y:\ + :nd=^P:rc=~^Q:sc=~^E:se=~^Y:sf=^J:so=~^_:up=~^L: +# +# Hazeltine Executive 80 Model 30 (1554?) +# from Will Martin <control@ALMSA-1.ARPA> via BRL +# Like VT100, except for different "am" behavior. +hazel|exec80|h80|he80|Hazeltine Executive 80:\ + :am:bs:pt:\ + :co#80:it#8:li#24:vt#3:\ + :bl=^G:cd=50\E[J:ce=3\E[K:cl=50\E[;H\E[2J:\ + :cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:do=^J:ho=\E[H:\ + :is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\ + :ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:\ + :nd=2\E[C:nl=^J:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :rc=\E8:rf=/usr/share/tabset/vt100:sc=\E7:se=2\E[m:\ + :so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:us=2\E[4m: + +#### IBM +# + +ibm327x|line mode IBM 3270 style:\ + :gn:\ + :ce=^M:cl=^M^J:ho=^M: + +ibm3101|i3101|IBM 3101-10:\ + :am:bs:xo:\ + :co#80:li#24:\ + :bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:ct=\EH:do=^J:\ + :ho=\EH:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:nw=^M^J:\ + :sf=^J:st=\E0:up=\EA: +ibm3151|IBM 3151 display:\ + :ae=\E>B:as=\E>A:is=\E S:me=\E4@:rs=\E S:s0=\E>B:te=\E>B:\ + :ti=\E>B:tc=ibm3162: +# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992 +# removed kend, knp, kpp -TD +ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :F1=\Ek\r:F2=\El\r:F3=\E!a\r:F4=\E!b\r:F5=\E!c\r:\ + :F6=\E!d\r:F7=\E!e\r:F8=\E!f\r:F9=\E!g\r:FA=\E!h\r:\ + :FB=\E!i\r:FC=\E!j\r:FD=\E!k\r:FE=\E!l\r:\ + :ac=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370:\ + :bl=^G:cd=\EJ:ce=\EI:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:dc=\EQ:\ + :dl=\EO:do=\EB:ho=\EH:k1=\Ea\r:k2=\Eb\r:k3=\Ec\r:k4=\Ed\r:\ + :k5=\Ee\r:k6=\Ef\r:k7=\Eg\r:k8=\Eh\r:k9=\Ei\r:k;=\Ej\r:\ + :kA=\EN:kB=\E2:kC=\EL\r:kD=\EQ:kE=\EI:kI=\EP \010:kL=\EO:\ + :kS=\EJ:kT=\E0:ka=\E 1:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\ + :kt=\E1:ku=\EA:le=\ED:mb=\E4D:md=\E4H:me=\E4@\E<@:mk=\E4P:\ + :mr=\E4A:nd=\EC:pf=^P^T:po=^P^R:se=\E4@:sf=^J:so=\E4A:\ + :te=\E>A:ti=\E>A:ue=\E4@:up=\EA:us=\E4B: + +ibm3161-C|IBM 3161-C NLS terminal using cartridge:\ + :s0=\E>B:s1=\E>A:te=\E>B:ti=\E>B:tc=ibm3161: +ibm3162|IBM 3162 display:\ + :al=\EN:mb=\E4$a:md=\E4(a:me=\E4@:mk=\E40a:mr=\E4!a:\ + :se=\E4>b:so=\E4!a:ue=\E4=b:us=\E4"a:tc=ibm3161-C: + +# This really should not use setab/setaf, but it is clear that the +# original terminfo does not toggle red/blue colors as in setb/setf. +ibm3164|i3164|IBM 3164:\ + :ms:\ + :Co#8:pa#64:\ + :AB=\E4 %+@:op=\E4 "@:s0=\E>B:s1=\E>A:te=\E!9(N\E>B:\ + :ti=\E!9/N\E>B:tc=ibm3161: + +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\ + :do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:is=\Ec:\ + :k1=\E[001q:k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\ + :k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\E[009q:kD=\E[P:\ + :kI=\E[139q:kN=\E[154q:kP=\E[150q:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:rs=\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +ibmaed|IBM Experimental display:\ + :am:bs:eo:ms:\ + :co#80:it#8:li#52:\ + :al=\EN:cd=\EJ:ce=\EI:cl=\EH\EK:cm=\EY%+ %+ :dc=\EQ:dl=\EO:\ + :do=\EB:ei=:ho=\EH:ic=\EP:im=:kb=^H:kd=\EB:kl=\ED:kr=\EC:\ + :ku=\EA:le=^H:me=\E0:nd=\EC:se=\E0:so=\E0:ta=^I:up=\EA:\ + :vb=\EG: +ibm-apl|apl|IBM apl terminal simulator:\ + :li#25:tc=dm1520: +# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'. +# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr) +ibmmono|IBM workstation monochrome:\ + :es:hs:\ + :al=\EL:dl=\EM:ds=\Ej\EY8 \EI\Ek:fs=\Ek:k0=\E<:k1=\ES:\ + :k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:k9=\EY:\ + :kF=\EE:kI=\200:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kh=\EH:l0=f10:\ + :md=\EZ:me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:se=\Ez:\ + :so=\EZ:sr=\EA:ue=\Ew:us=\EW:tc=ibm3101: +ibmega|IBM Enhanced Color Display:\ + :cr=^M:do=^J:kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:\ + :tc=ibmmono: +# This color scheme is assumed in some recent IBM terminal descriptions +# (green on black, emulated on a 16-color terminal). +ibm+color|IBM color definitions:\ + :Co#8:NC#3:pa#64:\ + :op=\E[32m\E[40m: +ibm+16color|IBM aixterm color definitions:\ + :Co#16:pa#256: +ibm5154|IBM 5154 Color display:\ + :Co#8:NC@:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:md@:tc=ibm5151:tc=ibm+color: +ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline:\ + :se=\EB:so=\EF\Ef3;:ue=\EB:us=\EF\Ef2;:tc=ibmmono: +ibmvga-c|IBM VGA display color termcap:\ + :cr=^M:do=^J:kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:\ + :tc=ibmega-c: +ibmvga|IBM VGA display:\ + :cr=^M:do=^J:kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:tc=ibmega: +# ibmapa* and ibmmono entries come from ACIS 4.3 distribution +rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display:\ + :li#32:\ + :ds=\Ej\EY@ \EI\Ek:tc=ibmmono: +ibm6155|IBM 6155 Black & White display:\ + :mb@:md@:tc=ibm5151: +# Advanced Monochrome (6153) and Color (6154) Graphics Display: +ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display:\ + :li#31:\ + :ds=\Ej\EY? \EI\Ek:tc=ibmmono: +ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display:\ + :li#31:\ + :ds=\Ej\EY? \EI\Ek:mh=\EF\Ef7;:tc=ibmega-c: +ibm6154|IBM 6154 Color displays:\ + :mb@:md=\E[12m:me=\E[0;10m:s0=\E[10m:s1=\E[11m:s2=\E[12m:\ + :tc=ibm5154: +ibm6153|IBM 6153 Black & White display:\ + :mb@:md=\E[12m:me=\E[0;10m:s0=\E[10m:s1=\E[11m:s2=\E[12m:\ + :tc=ibm5151: +ibm6153-90|IBM 6153 Black & White display:\ + :co#90:li#36:\ + :mb@:md@:tc=ibm5151: +ibm6153-40|IBM 6153 Black & White display:\ + :co#40:li#12:tc=ibm6153-90: +ibm8512|ibm8513|IBM color VGA Terminal:\ + :am:mi:ms:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DL=\E[%dM:RA=\E[?7l:SA=\E[?7h:\ + :ac=jjkkllmmnnqqttuuvvwwxx:ae=^O:al=\E[L:as=^N:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:dl=\E[M:dm=\E[4h:\ + :do=^J:ec=\E[%dX:ed=\E[4l:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\Eb\E[m\017\E[?7h:k0=\E[010q:k1=\E[001q:k2=\E[002q:\ + :k3=\E[003q:k4=\E[004q:k5=\E[005q:k6=\E[006q:k7=\E[007q:\ + :k8=\E[008q:k9=\E[009q:kd=\E[B:kh=\E[H:ku=\E[A:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :r1=\Eb\E[m\017\E[?7h\E[H\E[J:rc=\E[u:sc=\E[s:se=\E[m:\ + :so=\E[7m:te=\E[20h:ti=\E[20;4l\E[?7h\Eb:ue=\E[m:up=\E[A:\ + :us=\E[4m:tc=ibm8503: +hft-c|HFT with Color:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:ac=jjkkllmmnnqqttuuvvwwxx:\ + :me=\E[0m\E(B:s0=\E(B:s1=\E(0:tc=ibm5151:tc=ibm+color: +hft-c-old|HFT with Color PC850:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:tc=ibm5151:tc=ibm+color: +hft-old|AIWS High Function Terminal:\ + :am:xo:\ + :co#80:li#25:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=\E6:ho=\E[H:ic=\E[@:im=\E6:\ + :k1=\E[001q:k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\ + :k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\E[009q:kN=\E[153q:\ + :kP=\E[159q:ka=\E[010q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m:tc=ibm+color: +ibm-system1|system1|ibm system/1 computer:\ + :am:xt:\ + :co#80:li#24:\ + :bl=^G:cl=^Z:cm=\005%+ %+ :ho=^K:le=^H:nd=^\:sf=^J:up=^^: +# lft-pc850 : IBM Low Function Terminal Device +# lft "supports" underline, bold, and blink in the sense that the lft code +# sets all the right bits. HOWEVER, depending upon the adapter, these +# attributes may or may not be supported by the device driver. +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[2J:ce=\E[0K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:is=\Ec:k1=\E[001q:\ + :k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:k6=\E[006q:\ + :k7=\E[007q:k8=\E[008q:k9=\E[009q:kD=\E[P:kI=\E[139q:\ + :kN=\E[154q:kP=\E[150q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\E(B:\ + :mr=\E[7m:nd=\E[C:rs=\Ec:se=\E[0m:sf=\ED:so=\E[7m:sr=\EL:\ + :ue=\E[0m:up=\E[A:us=\E[4m: +ibm5081|hft|IBM Megapel Color display:\ + :ac=jjkkllmmnnqqttuuvvwwxx:mb@:md@:me=\E[0m\E(B:s0=\E(B:\ + :s1=\E(0:tc=ibm5154: +ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display:\ + :es:hs:\ + :li#33:\ + :ds=\Ej\EYA \EI\Ek:fs=\Ek:tc=ibmega-c: +ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display:\ + :tc=hft-c: +ibm8514|IBM 8514/a color VGA display:\ + :es:hs:\ + :ds=\Ej\EYI \EI\Ek:fs=\Ek:tc=hft: +ibm8514-c|IBM 8514 color display with standout and underline:\ + :es:hs:\ + :li#41:\ + :cr=^M:do=^J:ds=\Ej\EYI \EI\Ek:fs=\Ek:kb=^H:kd=^J:kl=^H:\ + :nw=^M^J:sf=^J:ta=^I:tc=ibmega-c: + +# +# AIX entries. IBM ships these with AIX 3.2.5. +# -- added rc, sc based on manpage -TD +# Note that we could use ibm+16color, but that is not how IBM defines this one. +aixterm|IBM Aixterm Terminal Emulator:\ + :es:hs:\ + :ac=jjkkllmmnnqqttuuvvwwxx:ds=\E[?E:fs=\E[?F:md=\E[1m:\ + :me=\E[0;10m\E(B:rc=\E8:s0=\E(B:s1=\E(0:sc=\E7:sr@:\ + :ts=\E[?%dT:tc=ibm6154: +aixterm-m|IBM AIXterm Monochrome Terminal Emulator:\ + :es:hs:\ + :ac=jjkkllmmnnqqttuuvvwwxx:ds=\E[?E:fs=\E[?F:md=\E[1m:\ + :me=\E[0;10m\E(B:s0=\E(B:s1=\E(0:sr@:ts=\E[?%dT:\ + :tc=ibm6153: +aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator:\ + :es:hs:\ + :ds=\E[?E:fs=\E[?F:md=\E[1m:sr@:ts=\E[?%dT:tc=ibm6153: +jaixterm|IBM Kanji Aixterm Terminal Eemulator:\ + :ac@:tc=aixterm: +jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator:\ + :ac@:tc=aixterm-m: + +# This flavor is adapted from xterm, in turn from aixterm documentation -TD +aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors:\ + :tc=ibm+16color:tc=aixterm: + +#### Infoton/General Terminal Corp. +# + +# gt100 sounds like something DEC would come out with. Let's hope they don't. +i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100):\ + :am:bs:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=^L:cm=\Ef%r%+ %+ :cr=^M:\ + :dl=\EM:do=^J:ho=\EH:le=^H:nd=\EC:se=\Ea:sf=^J:so=\Eb:up=\EA:\ + :vb=\Eb\Ea: +i400|infoton 400:\ + :am:bs:\ + :co#80:li#25:\ + :al=\E[L:bl=^G:ce=\E[N:cl=\E[2J:cm=\E[%i%3;%3H:cr=^M:\ + :dc=\E[4h\E[2Q\E[P\E[4l\E[0Q:dl=\E[M:do=^J:\ + :ei=\E[4l\E[0Q:im=\E[4h\E[2Q:le=^H:nd=\E[C:sf=^J:up=\E[A: +# (addrinfo: removed obsolete ":bc=^Z:" -- esr) +addrinfo:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=^K:cl=^L:cm=\037%.%.:cr=^M:do=^J:ho=^H:le=^Z:\ + :ll=^H^\:nd=^Y:sf=^J:up=^\: +# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr) +infoton:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=^K:cl=^L:cr=^M:do=^J:le=^Z:ll=^H^\:nd=^Y:sf=^J:\ + :up=^\: + +# The ICL6402 was actually the Kokusai Display System 6402. +# The 6404 was the KDS7372 (color version of the 6402). +# +# ICL6404 control codes follow: +# +#code function +#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#ctrl-A set SOM position at cursor position +#ctrl-G Bell +#ctrl-H Backspace +#ctrl-I Horiz tab +#ctrl-J Linefeed +#ctrl-K Cursor up +#ctrl-L Cursor right +#ctrl-M Carriage return +#ctrl-N Disable xon/xoff to host +#ctrl-O Enable xon/xoff to host +#ctrl-R Enable bidirectional mode +#ctrl-T Disable bidirectional mode +#ctrl-V Cursor down +#ctrl-Z Clear unprotected data to insert char +#ctrl-^ Cursor home +#ctrl-_ Newline +# +#ESC lead-in char for multiple character command +# +#ESC space R execute power on sequence +#ESC ! p1 p2 define scroll region: +# p1 = scroll top line: 20h - 37h +# p1 = scroll bottom line: 20h - 37h +#ESC " unlock keyboard +#ESC # lock keyboard +#ESC $ Semi-graphics mode on +#ESC % Semi-graphics mode off +#ESC & protect mode on +#ESC ' protect mode off +#ESC ( write protect mode off (full intensity) +#ESC ) write protect mode on (half intensity) +# +#ESC * clear screen +#ESC + clear unprotected data to insert char +#ESC , clear unprotected data to half intensity spaces +#ESC - p1 p2 p3 p4 address cursor to page, row, column: +# p1 = page number 0 - 3 +# p2 = row 20h - 7fh +# p3 = column (lo) 20h - 7fh +# p4 = column (hi) 20h - 21h (only 132 col) +#ESC . p1 set cursor style: +# p1 = 0 invisible cursor +# p1 = 1 block blinking cursor +# p1 = 2 block steady cursor +# p1 = 3 underline blinking cursor +# p1 = 4 underline steady cursor +#ESC / transmit cursor location (page, row, column) +#ESC 0 p1 p2 p3 p4 program edit key: +# p1 = edit key code: '@'-'S', '`'-'s' +# p2 p3 p4 = program data (3 bytes) +# +#ESC 1 set tab +#ESC 2 clear tab at cursor +#ESC 3 clear all tabs +#ESC 4 send unprotect line to cursor +#ESC 5 send unprotect page to cursor +#ESC 6 send line to cursor +#ESC 7 send page to cursor +#ESC 8 n set scroll mode: +# n = 0 set jump scroll +# n = 1 set smooth scroll +#ESC 9 n control display: +# n = 0 display off +# n = 1 display on +#ESC : clear unprotected data to null +#ESC ; clear unprotected data to insert char +# +#ESC < keyclick on +#ESC = p1 p2 address cursor to row, column +# p1 = row 20h - 7fh +# p2 = column (lo) 20h - 7fh +# p3 = column (hi) 20h - 21h (only 132 col) +#ESC > keyclick off +#ESC ? transmit cursor location (row, column) +# +#ESC @ copy print mode on +#ESC A copy print mode off +#ESC B block mode on +#ESC C block mode off (conversation mode) +#ESC D F set full duplex +#ESC D H set half duplex +#ESC E line insert +#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd) +# 0 = black, 1 = red, 2 = green, 3 = yellow +# 4 = blue, 5 = magenta, 6 = cyan, 7 = white +#ESC G n set serial field attribute (n = 30h - 3Fh) +#ESC H n full graphics mode: +# n = 0 exit full graphics mode +# n = 1 enter full graphics mode +#ESC I back tab +#ESC J back page +#ESC K forward page +# +#ESC L unformatted page print +#ESC M L move window left (132 col mode only) +#ESC M R move window right (132 col mode only) +#ESC N set page edit (clear line edit) +#ESC O set line edit (clear page edit) +#ESC P formatted page print +#ESC Q character insert +#ESC R line delete +#ESC S send message unprotected only +#ESC T erase line to insert char +#ESC U set monitor mode (see ESC X, ESC u) +# +#ESC V n select video attribute mode: +# n = 0 serial field attribute mode +# n = 1 parallel character attribute mode +#ESC V 2 n define line attribute: +# n = 0 single width single height +# n = 1 single width double height +# n = 2 double width single height +# n = 3 double width double height +#ESC V 3 n select character font: +# n = 0 system font +# n = 1 user defined font +#ESC V 4 n select screen mode: +# n = 0 page screen mode +# n = 1 virtual screen mode +#ESC V 5 n control mouse mode: +# n = 0 disable mouse +# n = 1 enable sample mode +# n = 2 send mouse information +# n = 3 enable request mode +#ESC W character delete +#ESC X clear monitor mode (see ESC U, ESC u) +#ESC Y erase page to insert char +# +#ESC Z n send user/status line: +# n = 0 send user line +# n = 1 send status line +# n = 2 send terminal ID +#ESC [ p1 p2 p3 set character attribute (parallel char mode): +# p1: 0 = normal +# 1 = blank +# 2 = blink +# 3 = blink blank (= blank) +# 4 = reverse +# 5 = reverse blank +# 6 = reverse blink +# 7 = reverse blink blank (= reverse blank) +# 8 = underline +# 9 = underline blank +# : = underline blink +# ; = underline blink blank +# < = reverse underline +# = = reverse underline blank +# > = reverse underline blink +# ? = reverse underline blink blank +# p2, p3: f/grnd, b/grnd colour +# (see ESC F for colours) +# use ZZ for mono, eg. +# ESC [ 0 Z Z for normal +# ESC [ 4 Z Z for inverse etc. +# +#ESC \ n set page size: +# n = 1 24 lines/page +# n = 2 48 lines/page +# n = 3 72 lines/page +# n = 4 96 lines/page +#ESC ] n set Wordstar mode: +# n = 0 normal (KDS7372) mode +# n = 1 Wordstar mode +# +#ESC b set foreground colour screen +# +#ESC c n enter self-test mode: +# n = 0 exit self test mode +# n = 1 ROM test +# n = 2 RAM test +# n = 3 NVRAM test +# n = 4 screen display test +# n = 5 main/printer port test +# n = 6 mouse port test +# n = 7 graphics board test +# n = 8 graphics memory test +# n = 9 display all 'E' +# n = : display all 'H' +#ESC d set background colour screen +# +#ESC e n program insert char (n = insert char) +#ESC f text CR load user status line with 'text' +# +#ESC g display user status line on 25th line +#ESC h display system status line on 25th line +#ESC i tab +#ESC j reverse linefeed +#ESC k n duplex/local edit mode: +# n = 0 duplex edit mode +# n = 1 local edit mode +#ESC l n select virtual screen: +# n = 0 screen 1 +# n = 1 screen 2 +#ESC m save current config to NVRAM +#ESC n p1 select display screen: +# p1 = 0 screen 1 +# p1 = 1 screen 2 +# p1 = 2 screen 3 +# p1 = 3 screen 4 +#ESC o p1 p2 set characters/line and attribute: +# p1 = 0 80 chars/line +# +#ESC o p1 p2 set characters/line and attribute: +# p1 = 0 80 chars/line +# p1 = 1 132 chars/line +# p2 = 0 single width single height +# p2 = 1 single width double height +# p2 = 2 double width single height +# p2 = 3 double width double height +# +#ESC q insert mode on +#ESC r edit mode on +#ESC s send message all +#ESC t erase line to null +#ESC u clear monitor mode (see ESC U, ESC X) +#ESC v autopage mode on +#ESC w autopage mode off +#ESC x p1 p2 p3 define delimiter code... +#ESC y erase page to null +# +#ESC z 2 p1 p2 p3 p4 draw quadrangle: +# p1 = starting row +# p2 = starting column +# p3 = end row +# p4 = end column +# +#ESC { p1 p2 p3 p4 configure main port +# (baud, stop bits, parity, word length) +# +#ESC | p1 p2 text Ctrl-Y program function key with 'text': +# p1 = function key code: +# '1' - ';' normal f1- f11 +# '<' - 'F' shifted f1 - f11 +# p2 = program mode: +# 1 = FDX +# 2 = LOC +# 3 = HDX +# Ctrl-Y = terminator +# (use Ctrl-P to escape ^P, ^Y ) +# +#ESC } p1 p2 p3 p4 configure printer port +# (baud, stop bits, parity, word length) +#ESC ~ send system status +# +# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997 +# +# Entry is by esr going solely on above information and is UNTESTED. +# This actually looks a lot like a Televideo 9xx. +# This entry uses page 0 and is monochrome; I'm not brave enough to try +# to make color work without a test terminal. The :am: capability is a guess. +# The initialization string sets conversation mode, blinking underline cursor, +# full duplex, parallel attribute mode, display user status line, white +# foreground, black background, normal highlight. +# +icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372:\ + :am:bs:hs:\ + :co#80:li#24:\ + :al=\EE:bl=^G:bt=\EI:cl=\E*:cm=\E=%+ %+P%+P:cr=^M:ct=\E3:\ + :dc=\EW:dl=\ER:ei=\Er:ho=^^:i1=\EC\E.3\EDF\EV1\Eg\E[0ZZ:\ + :im=\Eq:mb=\E[2ZZ:me=\E[0ZZ:mk=\E[1ZZ:mr=\E[4ZZ:nd=^L:\ + :nw=^_:rs=\Eo1:se=\E[%gh%{4}%^%Ph%gh%dZZ:so=\E[8ZZ:\ + :st=\E1:ta=^I:ue=\E[%gh%{8}%^%Ph%gh%dZZ:up=^K:us=\E[8ZZ:\ + :ve=\E.3:vi=\E.0:vs=\E.1: +icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols:\ + :rs=\Eo1:tc=icl6404: + +#### Interactive Systems Corp +# +# ISC used to sell OEMed and customized hardware to support ISC UNIX. +# ISC UNIX still exists in 1995, but ISC itself is no more; they got +# bought out by Sun. +# + +# From: <cithep!eric> Wed Sep 16 08:06:44 1981 +# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the +# ":le=^_:" later overridden -- esr) +intext|Interactive Systems Corporation modified owl 1200:\ + :am:bs:\ + :co#80:it#8:li#24:sg#1:\ + :al=5.5*\020:bl=^G:bt=^Y:cd=5.5*\026J:ce=^Kp^R:cl=132\014:\ + :cm=\017%+ %+ :cr=^M:dc=5.5*\022:dl=5.5*\021:do=^J:ei=^V<:\ + :im=^V;:ip=5.5*:k0=^VJ\r:k1=^VA\r:k2=^VB\r:k3=^VC\r:\ + :k4=^VD\r:k5=^VE\r:k6=^VF\r:k7=^VG\r:k8=^VH\r:k9=^VI\r:\ + :kb=^H:kd=^J:ke=^V9:kh=^Z:kl=^_:kr=^^:\ + :ks=\036\072\264\026%%:ku=^\:le=^H:nd=^^:se=^V#\040:sf=^J:\ + :so=^V$,:ta=^I:up=^\: +intext2|intextii|INTERACTIVE modified owl 1251:\ + :am:bw:ul:\ + :co#80:li#24:sg#0:ug#0:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%+^AG:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=:ic=\E[@:im=:k0=\E@\r:k1=\EP\r:k2=\EQ\r:\ + :k3=\ES\r:k4=\ET\r:k5=\EU\r:k6=\EV\r:k7=\EW\r:k8=\EX\r:\ + :k9=\EY\r:kb=^H:kd=\EB\r:kh=\ER\r:kl=\ED\r:kr=\EC\r:\ + :ku=\EA\r:l0=REFRSH:l1=DEL CH:l2=TABSET:l3=GOTO:l4=+PAGE:\ + :l5=+SRCH:l6=-PAGE:l7=-SRCH:l8=LEFT:l9=RIGHT:le=\E[D:\ + :nd=\E[C:se=\E[2 D:sf=\E[S:so=\E[6 D:sr=\E[T:ta=^I:\ + :ue=\E[2 D:up=\E[A:us=\E[18 D:\ + :vb=\E[;;;;;;;;;2;;u\E[;;;;;;;;;1;;u: + +#### Kimtron (abm, kt) +# +# Kimtron seems to be history, but as March 1998 these people are still +# offering repair services for Kimtron equipment: +# +# Com/Pair Monitor Service +# 1105 N. Cliff Ave. +# Sioux Falls, South Dakota 57103 +# +# WATS voice: 1-800/398-4946 +# POTS fax: +1 605/338-8709 +# POTS voice: +1 605/338-9650 +# Email: <compair@sd.cybernex.net> +# Internet/Web: <http://www.com-pair.com> +# +# Kimtron entries include (undocumented) codes for: enter dim mode, +# enter bold mode, enter reverse mode, turn off all attributes. +# + +# Kimtron ABM 85 added by Dual Systems +# (abm85: removed duplicated ":kd=^J:" -- esr) +abm85|Kimtron ABM 85:\ + :am:bs:bw:ms:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=\EE:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :dc=\EW:\ + :dl=\ER:do=^J:ei=\Er:if=/usr/share/tabset/stdcrt:im=\EQ:\ + :is=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq:kb=^H:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\Ek:so=\Ej:ta=^I:ue=\Em:\ + :up=^K:us=\El: +# Kimtron ABM 85H added by Dual Systems. +# Some notes about the abm85h entries: +# 1) there are several firmware revs of 85H in the world. Use abm85h-old for +# firmware revs prior to SP51 +# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the +# abm85e entry if it is in tvi920 emulation mode. They are incompatible +# in some places and NOT software settable i.e., :is: can't fix it) +# 3) In 85h mode, the arrow keys and special functions transmit when +# the terminal is in dup-edit, and work only locally in local-edit. +# Vi won't swallow `del char' for instance, but :ti: turns on +# dup-edit anyway so that the arrow keys will work right. If the +# arrow keys don't work the way you like, change :ti:, :te:, and +# :is:. Note that 920E mode does not have software commands to toggle +# between dup and local edit, so you get whatever was set last on the +# terminal. +# 4) :vb: attribute is nice, but seems too slow to work correctly +# (\Eb:pc:\Ed) +# 5) Make sure `hidden' attributes are selected. If `embedded' attributes +# are selected, the <xmc@> entry should be removed. +# 6) auto new-line should be on (selectable from setup mode only) +# +# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985 +abm85h|Kimtron ABM 85H native mode:\ + :hs:\ + :sg@:\ + :bl=^G:ds=\Ee:fs=^M:im=\EZ:\ + :is=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El:\ + :kd=^V:me=\E(\EG0:mh=\E):mk@:ts=\Eg\Ef:vb@:ve=\E.4:vs=\E.2:\ + :tc=adm+sgr:tc=abm85: +abm85e|Kimtron ABM 85H in 920E mode:\ + :sg@:\ + :bl=^G:im=\EZ:\ + :is=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em:\ + :me=\E(\Ek:mh=\E):mr=\Ej:vb@:tc=abm85: +abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev.:\ + :sg@:\ + :bl=^G:im=\EZ:\ + :is=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF:\ + :me=\E(\Ek:mh=\E):mr=\Ej:tc=abm85: +# From: <malman@bbn-vax.arpa> +# (kt7: removed obsolete :ma=^V^J^L :" -- esr) +kt7|kimtron model kt-7:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :al=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :dc=\EW:\ + :dl=\ER:do=^V:ei=:fs=\Eg:ho=^^:ic=\EQ:\ + :if=/usr/share/tabset/stdcrt:im=:is=\El\E":k0=^AI\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kB=\EI:kC=^Z:kD=\EW:\ + :kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:mk@:nd=^L:ta=^I:ts=\Ef:up=^K:tc=adm+sgr: +# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the +# other kt7 entry and the adjacent key capabilities). Removed EE which is +# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight +# but we can't figure out what. +kt7ix|kimtron model kt-7 or 70 in IX mode:\ + :am:bw:\ + :co#80:it#8:li#25:\ + :@7=\EY:PU=\EK:ac=jYk?lZm@nEqDt4uCvAwBx3:ae=\E%%:al=\EE:\ + :as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=\ER:do=^V:ds=\Ef\r:ei=:fs=^M:ho=^^:ic=\EQ:\ + :im=:is=\EG0\E s\017\E~:k0=^AI\r:k1=^A@\r:k2=^AA\r:\ + :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:\ + :k9=^AH\r:kA=\EE:kB=\EI:kC=\E*:kE=\ET:kI=\EQ:kL=\ER:kN=\EJ:\ + :kS=\EY:kb=^H:kd=\E[B:kh=^^:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\EG2:me=\EG0:mh=\EG@:nd=^L:nw=^M^J:se=\EG0:sf=^J:\ + :so=\EG4:ta=^I:ts=\Ef:ue=\EG0:up=^K:us=\EG8:ve=\E.3:vi=\E.0: + +#### Microdata/MDIS +# +# This was a line of terminals made by McDonnell-Douglas Information Systems. +# These entries come direct from MDIS documentation. I have edited them only +# to move primary names of the form p[0-9] * to aliases, and to comment out +# :ae:/:as: in a couple of entries without <acsc> strings. I have +# also removed the change history; the last version indicates this is +# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989). +# + +# McDonnell Information Systems Terminal Family History +# ========================================= +# +# Prism-1, Prism-2 and P99: +# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25. +# +# Prism-4 and Prism-5: +# Slightly less ancient range of Microdata terminals. Follow-on from +# Prism-2, but with many enhancements. P5 has eight display pages. +# +# Prism-6: +# A special terminal for use with library systems, primarily in Germany. +# Limited numbers. Similar functionality to P5 (except attributes?). +# +# Prism-7, Prism-8 and Prism-9: +# More recent range of MDIS terminals, in which P7 and P8 +# replace the P4 & P5, with added functionality, and P9 is the flagship. +# The P9 has two emulation modes - P8 and ANSI - and includes a +# large number of the DEC VT220 control sequences. Both +# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats. +# +# Prism-12 and Prism-14: +# Latest range, functionally very similar to the P9. The P14 has a +# black-on-white overscanning screen. +# +# The terminfo definitions given here are: +# +# p2 - Prism-2 (or Prism-1 or P99). +# +# p4 - Prism-4 (and older P7s & P8s). +# p5 - Prism-5 (or Prism-6). +# +# p7 - Prism-7. +# p8 - Prism-8 (in national or multinational mode). +# p8-w - 132 column version of p8. +# p9 - Prism-9 in ANSI mode. +# p9-w - 132 column version of p9. +# p9-8 - Prism-9 in Prism-8 emulation mode. +# p9-8-w - As p9-8, but with 132 columns. +# +# p12 - Prism-12 in ANSI mode. +# p12-w - 132 column version of p12. +# p12-m - Prism-12 in MDC emulation mode. +# p12-m-w - As p12-m, but with 132 columns. +# p14 - Prism-14 in ANSI mode. +# p14-w - 132 column version of p14. +# p14-m - Prism-14 in MDC emulation mode. +# p14-m-w - As p14-m, but with 132 columns. +# +# p2: Prism-2 +# ----------- +# +# Includes Prism-1 and basic P99 without SP or MP loaded. +# The simplest form of Prism-type terminal. +# Basic cursor movement and clearing operations only. +# No video attributes. +# Notes: +# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next +# value up, followed by backspace. +# +prism2|MDC Prism-2:\ + :am:bw:ms:\ + :co#80:li#24:\ + :bl=^G:cd=\EJ:ce=\EK:cl=20\014:cr=^M:cv=\013%+ :do=^J:ho=^A:\ + :kb=^H:kh=^A:le=^H:nd=^F:sf=^J:up=^Z: + +# p4: Prism-4 +# ----------- +# +# Includes early versions of P7 & P8. +# Basic family definition for most Prisms (except P2 and P9 ANSI). +# Notes: +# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next +# value up, followed by backspace. +# Cursor key definitions removed because they interfere with vi and csh keys. +# +prism4|p4|P4|MDC Prism-4:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :bl=^G:cd=\EJ:ce=\EK:cl=20\014:cr=^M:cv=\013%+ :do=^J:\ + :ds=\035\343\035\345:fs=^]\345:ho=^A:kb=^H:kh=^A:le=^H:\ + :mb=^CB:me=^C\040:mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:po=\ER:\ + :ps=\EU:se=^C\040:sf=^J:so=^CD:ts=^]\343:ue=^C\040:up=^Z:\ + :us=^CP:ve=^]\342:vi=^]\344: + +# p5: Prism-5 +# ----------- +# +# Same definition as p4. Includes Prism-6 (not tested!). +# Does not use any multi-page features. +# +prism5|p5|P5|MDC Prism-5:\ + :tc=p4: + +# p7: Prism-7 +# ----------- +# +# Similar definition to p4. Uses ANSI cursor motion to avoid network problems. +# Notes: +# Use p4 for very early models of P7. +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# +prism7|p7|P7|MDC Prism-7:\ + :ch@:cm=\E[%i%d;%dH:cv@:tc=p4: + +# p8: Prism-8 +# ----------- +# +# Similar definition to p7. Uses ANSI cursor motion to avoid network problems. +# Supports national and multinational character sets. +# Notes: +# Alternate char set operations only work in multinational mode. +# Use p4 for very early models of P8. +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# (esr: commented out :as:/:ae: because there's no <acsc>) +# +prism8|p8|P8|MDC Prism-8:\ + :ch=\E[%i%d`:cm=\E[%i%d;%dH:cv=\E[%i%dd:is=\E[<12h:tc=p4: + +# p8-w: Prism-8 in 132 column mode +# -------------------------------- +# +# 'Wide' version of p8. +# Notes: +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# +prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode:\ + :co#132:\ + :is=\E[<12h\E[<14h:tc=p8: + +# p9: Prism-9 in ANSI mode +# ------------------------- +# +# The "flagship" model of this generation of terminals. +# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones. +# Notes: +# Tabs only reset by "reset". Otherwise assumes default (8 cols). +# Fixes to deal with terminal firmware bugs: +# . 'ri' uses insert-line since rev index doesn't always +# . 'sgr0' has extra '0' since esc[m fails +# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25 +# Not covered in the current definition: +# . Labels +# . Programming Fn keys +# . Graphic characters (defaults correctly to vt100) +# . Padding values (sets xon) +# (esr: commented out :as:/:ae: because there's no <acsc>) +# +prism9|p9|P9|MDC Prism-9 in ANSII mode:\ + :5i:am:bw:hs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:\ + :F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:\ + :F7=\E[31~:F8=\E[32~:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :al=\E[L:bl=^G:bt=\E[Z:cd=10\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%d%%v:ct=\E[3g:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\E[%}\024:ec=\E[%dX:\ + :ei=\E[4l:fs=^T:ho=\E[H:im=\E[4h:is=\E[&p\E[<12l\E F:\ + :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kC=^L:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mp=\E[32%{:mr=\E[7m:\ + :nd=\E[C:nw=^M^J:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E[%z:\ + :rp=\E[%r%db%.:\ + :rs=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :ts=\E[%i%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# p9-w: Prism-9 in 132 column mode +# -------------------------------- +# +# 'Wide' version of p9. +# +prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode:\ + :co#132:\ + :is=\E[&p\E[<12l\E F\E[<14h:\ + :rs=\E[&p\E[<12l\E F\E[<14h:tc=p9: + +# p9-8: Prism-9 in P8 mode +# ------------------------ +# +# P9 terminal in P8 emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:dc=\E[P:\ + :dl=\E[M:ei=:ic=\E[@:im=:tc=p8: + +# p9-8-w: Prism-9 in P8 and 132 column modes +# ------------------------------------------ +# +# P9 terminal in P8 emulation mode and 132 column mode. +# +prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:dc=\E[P:\ + :dl=\E[M:ei=:ic=\E[@:im=:tc=p8-w: + +# p12: Prism-12 in ANSI mode +# --------------------------- +# +# See p9 definition. +# +prism12|p12|P12|MDC Prism-12 in ANSI mode:\ + :tc=p9: + +# p12-w: Prism-12 in 132 column mode +# ---------------------------------- +# +# 'Wide' version of p12. +# +prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode:\ + :tc=p9-w: + +# p12-m: Prism-12 in MDC emulation mode +# ------------------------------------- +# +# P12 terminal in MDC emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode:\ + :tc=p9-8: + +# p12-m-w: Prism-12 in MDC emulation and 132 column modes +# ------------------------------------------------------- +# +# P12 terminal in MDC emulation mode and 132 column mode. +# +prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode:\ + :tc=p9-8-w: + +# p14: Prism-14 in ANSII mode +# --------------------------- +# +# See p9 definition. +# +prism14|p14|P14|MDC Prism-14 in ANSII mode:\ + :tc=p9: + +# p14-w: Prism-14 in 132 column mode +# ---------------------------------- +# +# 'Wide' version of p14. +# +prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode:\ + :tc=p9-w: + +# p14-m: Prism-14 in MDC emulation mode +# ------------------------------------- +# +# P14 terminal in MDC emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode:\ + :tc=p9-8: + +# p14-m-w: Prism-14 in MDC emulation and 132 column modes +# ------------------------------------------------------- +# +# P14 terminal in MDC emulation mode and 132 column mode. +# +prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode:\ + :tc=p9-8-w: + +# End of McDonnell Information Systems Prism definitions + +# These things were popular in the Pick database community at one time +# From: George Land <georgeland@aol.com> 24 Sep 1996 +p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition:\ + :am:bw:hs:mi:\ + :co#80:li#24:ma#1:sg#1:ug#1:ws#78:\ + :F2=^AJ\r:F3=^AK\r:F4=^AL\r:F5=^AM\r:F6=^AN\r:F7=^AO\r:\ + :bl=^G:cd=\EJ:ce=\EK:cl=^L:cm=\E[%i%d;%dH:cr=^M:dc=\040^H:\ + :dl=^P:do=^J:ho=^A:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\ + :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:\ + :kD=\040^H:kE=\EK:kL=^P:kS=\EJ:kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:\ + :ku=^Z:l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:l8=F8:l9=F9:\ + :la=F10:le=^U:mb=^CB:me=^C\040:mh=^CA:mk=^CH:mr=^CD:nd=^F:\ + :nw=^J^M:pc=\200:se=^C\040:sf=^J:so=^CE:ue=^C\040:up=^Z:\ + :us=^C0: + +#### Microterm (act, mime) +# +# The mime1 entries refer to the Microterm Mime I or Mime II. +# The default mime is assumed to be in enhanced act iv mode. +# + +# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents +# freakout with out-of-range args on Sytek multiplexors. No :so=^N: and +# :se=^N: since it gets confused and it's too dim anyway. No :ic: +# since Sytek insists ^S means xoff. +# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr) +act4|microterm|microterm act iv:\ + :am:bs:\ + :co#80:li#24:\ + :al=2.3*\001<2.3*/>:bl=^G:cd=2.2*\037:ce=.1*\036:\ + :cl=12\014:cm=\024%+^X%>/0%+P:cr=^M:dc=.1*\004:\ + :dl=2.3*\027:do=^K:ho=^]:kd=^K:kl=^H:kr=^X:ku=^Z:le=^H:nd=^X:\ + :sf=^J:up=^Z: +# The padding on :sr: and :ta: for act5 and mime is a guess and not final. +# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)... +# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr) +act5|microterm5|microterm act v:\ + :kd=^K:kl=^H:kr=^X:ku=^Z:sr=3\EH:uc=^H\EA:tc=act4: +# Mimes using brightness for standout. Half bright is really dim unless +# you turn up the brightness so far that lines show up on the screen. +mime-fb|full bright mime1:\ + :is=^S\E:se=^S:so=^Y:tc=mime: +mime-hb|half bright mime1:\ + :is=^Y\E:se=^Y:so=^S:tc=mime: +# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode +# the more plausible ":do=^J:" -- esr) +# uc was at one time disabled to get around a curses bug, be wary of it +mime|mime1|mime2|mimei|mimeii|microterm mime1:\ + :am:bs:\ + :co#80:it#8:li#24:vt#9:\ + :al=80\001:bl=^G:cd=^_:ce=^^:cl=^]^C:cm=\024%+^X%> 0%+P:\ + :cr=^M:dl=80\027:do=^J:ho=^]:is=^S\E^Q:kd=^K:kl=^H:kr=^X:\ + :ku=^Z:le=^H:nd=^X:sf=^J:sr=3\022:ta=2\011:uc=^U:up=^Z: +# These termcaps (for mime2a) put the terminal in low intensity mode +# since high intensity mode is so obnoxious. +mime2a-s|microterm mime2a (emulating an enhanced soroc iq120):\ + :am:bs:\ + :co#80:li#24:\ + :al=20*\001:bl=^G:cd=20*\EJ:ce=\EK:cl=\EL:cm=\E=%+ %+ :\ + :cr=^M:dc=\ED:dl=20*\027:do=^J:ei=^Z:ho=^^:im=\EE:ip=2:\ + :is=\E):kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\E;:sf=^J:\ + :so=\E\072:sr=\EI:ue=\E7:up=\EI:us=\E6: +# This is the preferred mode (but ^X can't be used as a kill character) +mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52):\ + :bs:\ + :co#80:it#8:li#24:\ + :al=20*\001:bl=^G:cd=20*\EQ:ce=\EP:cl=\EL:cm=\EY%+ %+ :\ + :cr=^M:dc=^N:dl=20*\027:do=^J:ei=^Z:ho=\EH:im=^O:ip=2:is=^Y:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:se=\E9:sf=^J:\ + :so=\E8:sr=\EA:ta=^I:ue=\E5:up=\EA:us=\E4: +# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr) +mime3a|mime1 emulating 3a:\ + :am@:\ + :kd=^K:kl=^H:kr=^X:ku=^Z:tc=adm3a: +mime3ax|mime-3ax|mime1 emulating enhanced 3a:\ + :it#8:\ + :al=80\001:cd=^_:ce=^X:dl=80\027:ta=3\011:tc=mime3a: +# Wed Mar 9 18:53:21 1983 +# We run our terminals at 2400 baud, so there might be some timing problems at +# higher speeds. The major improvements in this model are the terminal now +# scrolls down and insert mode works without redrawing the rest of the line +# to the right of the cursor. This is done with a bit of a kludge using the +# exit graphics mode to get out of insert, but it does not appear to hurt +# anything when using vi at least. If you have some users using act4s with +# programs that use curses and graphics mode this could be a problem. +mime314|mm314|mime 314:\ + :am:\ + :co#80:li#24:\ + :al=^A:cd=^_:ce=^^:cl=^L:cm=\024%.%.:dc=^D:dl=^W:ei=^V:ho=^]:\ + :im=^S:kd=^K:kl=^H:kr=^X:ku=^Z:le=^H:nd=^X:ta=^I:up=^Z: +# Microterm mime 340 from University of Wisconsin +mm340|mime340|mime 340:\ + :co#80:li#24:\ + :al=46\EU:cd=2*\037:ce=2.1\EL:cl=12\032:cm=\E=%+ %+ :\ + :cr=^M:dc=2.1*\E#:dl=49.6\EV:do=^J:is=\E,:kb=^H:kd=^J:kl=^H:\ + :ku=^K:le=^H:nd=^L:nw=^M^J:sf=^J:ta=^I:up=^K: +# This came from University of Wisconsin marked "astro termcap for jooss". +# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:"; +# also added <rmam>/<smam> based on the init string -- esr) +mt4520-rv|micro-term 4520 reverse video:\ + :am:hs:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[g:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :fs=\E[?5l\E[?5h:ho=\E[H:ic=\E[@:im=:\ + :is=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:ll=\E[24;1H:me=\E[m:\ + :nd=\E[C:nw=\EE:\ + :r1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J:\ + :rc=\E8:rf=/usr/share/tabset/vt100:sc=\E7:se=\E[0m:\ + :sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:ts=\E[25;1H:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\E[?5l\E[?5h:ve=\E[0V\E8:\ + :vs=\E7\E[0U: + +# Fri Aug 5 08:11:57 1983 +# This entry works for the ergo 4000 with the following setups: +# ansi,wraparound,newline disabled, xon/xoff disabled in both +# setup a & c. +# +# WARNING!!! There are multiple versions of ERGO 4000 microcode +# Be advised that very early versions DO NOT WORK RIGHT !! +# Microterm does have a ROM exchange program- use it or lose big +# (ergo400: added <rmam>/<smam> based on the init string -- esr) +ergo4000|microterm ergo 4000:\ + :da:db:ms:\ + :co#80:li#66:\ + :RA=\E[?7l:SA=\E[?7m:al=5*\E[1L:bl=^G:cd=15\E[0J:\ + :ce=13\E[0K:cl=80\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=80\E[1P:dl=5*\E[1M:do=\E[B:ei=\E[4l:im=6\E[4h:\ + :is=300\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:ke=4\E=:kl=\E[D:kr=\E[C:\ + :ks=4\E=:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:\ + :me=20\E[m:nd=\E[C:se=20\E[m:sf=20*\ED:so=20\E[7m:\ + :sr=20*\EM:ta=^I:up=\E[A: + +#### NCR +# +# NCR's terminal group was merged with AT&T's when AT&T bought the company. +# For what happened to that group, see the ADDS section. +# +# There is an NCR4103 terminal that's just a re-badged Wyse-50. +# + +# The following vendor-supplied termcaps were captured from the Boundless +# Technologies site, 8 March 1998. I removed all-upper-case names that were +# identical, except for case, to lower-case ones. I also uncommented the acsc +# capabilities.X +# +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[0m:tc=ncr260vt300an: +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[0m:tc=ncr260vt300wan: +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[0m:tc=ncr260vt300pp: +# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a +# DEC vt200/300 with color capabilities added. +ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode:\ + :Co#8:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[0m:tc=ncr260vt300wpp: +# This definition for ViewPoint supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260vppp|NCR 2900_260 viewpoint:\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:li#24:sg#1:ug#1:\ + :K1=^A:K3=\EJ:K4=\ET:K5=\EJ:al=2\EM:bl=^G:bt=\EI:cd=2\Ek:\ + :ce=2\EK:cl=40\014:cm=5\EY%+ %+ :cr=2\r:dc=2\EW:dl=2\El:\ + :do=2\n:ds=\E`c:ei=\Er:fs=^M:ho=2\036:im=\Eq:\ + :is=100\Ee6\E~%\E+\E`\072\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :k1=^B1\r:k2=^B2\r:k3=^B3\r:k4=^B4\r:k5=^B5\r:k6=^B6\r:\ + :k7=^B7\r:k8=^B8\r:k9=^B9\r:kD=\EW:kI=\Eq:kN=\EJ:kP=\EJ:\ + :kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=2\010:ll=5\001:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mr=\EG4:nd=2\006:nw=2\037:\ + :rs=100\Ee6\E~%\E+\E`\072\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :se=\EG0:sf=2\n:so=\EG4:sr=2\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=2\032:us=\EG8:ve=\E`5:vi=\E`0: +ncr260vpwpp|NCR 2900_260 viewpoint wide mode:\ + :co#132:\ + :cm=30\Ea%i%dR%dC:\ + :is=100\Ee6\E~%\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :rs=100\Ee6\E~%\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :tc=ncr260vppp: +ncr260vt100an|NCR 2900_260 vt100 with ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#80:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:AL=5\E[%dL:\ + :DC=5\E[%dP:DL=5\E[%dM:DO=5\E[%dB:IC=5\E[%d@:LE=5\E[%dD:\ + :RI=5\E[%dC:SF=5\E[%dE:UP=5\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=^O:\ + :al=5\E[L:as=^N:bl=^G:cb=3\E[1K:cd=5\E[0J:ce=3\E[0K:\ + :ch=40\E[%dG:cl=20\E[2J\E[1;1H:cm=10\E[%i%d;%dH:cr=1\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=40\E[%dd:dc=5\E[1P:dl=5\E[M:\ + :do=5\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=1\E[H:im=\E[4h:\ + :is=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:\ + :le=5\E[D:mb=\E[5m:md=\E[1m:me=20\E[0m:mk=\E[8m:mr=\E[7m:\ + :nd=5\E[C:nw=5\EE:rc=\E8:\ + :rs=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :sc=\E7:se=\E[0m:sf=5\ED:so=\E[1;7m:sr=5\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=5\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l:tc=vt220+keypad: +ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :tc=ncr260vt100an: +ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd:\ + :@7=\E[5~:K1=\E[H:K2=\E[V:K3=\EOu:K5=\E[U:\ + :is=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :kD=\E[4~:kI=\E[1~:kN=\E[6~:kP=\E[3~:kd=\E[B:ke=\E>:\ + :kh=\E[2~:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:l1=pf1:l2=pf2:\ + :l3=pf3:l4=pf4:\ + :rs=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :tc=ncr260vt100an: +ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :tc=ncr260vt100pp: +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260vt200an|NCR 2900_260 vt200 with ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:li#24:\ + :AL=5\E[%dL:DC=5\E[%dP:DL=5\E[%dM:DO=5\E[%dB:IC=5\E[%d@:\ + :LE=5\E[%dD:RI=5\E[%dC:SF=5\E[%dE:UP=5\E[%dA:ae=20\017:\ + :al=5\E[L:as=20\016:bl=^G:cd=\E[0J:ce=5\E[0K:\ + :cl=20\E[2J\E[1;1H:cm=10\E[%i%d;%dH:cr=1\r:\ + :cs=5\E[%i%d;%dr:ct=\E[3g:dc=5\E[1P:dl=5\E[M:do=5\E[B:\ + :ds=\E[0$~\E[1$~:ec=5\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[M:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=5\E[D:mb=\E[5m:md=\E[1m:\ + :me=20\E[0m:mr=\E[7m:nd=5\E[C:nw=\EE:rc=\E8:\ + :rs=200\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :sc=\E7:se=\E[27m:sf=5\ED:so=\E[7m:sr=5\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=5\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l:tc=vt220+keypad: +ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :tc=ncr260vt200an: +ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd:\ + :@7=\E[1~:K1=\E[H:K2=\E[V:K3=\EOu:K5=\E[U:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ks=\E=:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\ + :tc=ncr260vt200an: +ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :tc=ncr260vt200pp: +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260vt300an|NCR 2900_260 vt300 with ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :co#80:li#24:\ + :AL=5\E[%dL:DC=5\E[%dP:DL=5\E[%dM:DO=5\E[%dB:IC=5\E[%d@:\ + :LE=5\E[%dD:RI=5\E[%dC:SF=5\E[%dE:UP=5\E[%dA:ae=20\017:\ + :al=5\E[L:as=20\016:bl=^G:cd=\E[0J:ce=5\E[0K:\ + :cl=20\E[2J\E[1;1H:cm=10\E[%i%d;%dH:cr=1\r:\ + :cs=5\E[%i%d;%dr:ct=\E[3g:dc=5\E[1P:dl=5\E[M:do=5\E[B:\ + :ds=\E[0$~\E[1$~:ec=5\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=200\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy:k5=\E[M:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:\ + :le=5\E[D:mb=\E[5m:md=\E[1m:me=20\E[0m:mr=\E[7m:nd=5\E[C:\ + :nw=\EE:rc=\E8:\ + :rs=200\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :sc=\E7:se=\E[27m:sf=5\ED:so=\E[7m:sr=5\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=5\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l:tc=vt220+keypad: +ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :tc=ncr260vt300an: +ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd:\ + :@7=\E[1~:K1=\E[H:K2=\E[V:K3=\EOu:K5=\E[U:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ks=\E=:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\ + :tc=ncr260vt300an: +NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd:\ + :co#132:\ + :cm=30\E[%i%d;%dH:\ + :is=200\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :rs=200\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :tc=ncr260vt300pp: +# This terminfo file contains color capabilities for the Wyse325 emulation of +# the NCR 2900/260C color terminal. Because of the structure of the command +# (escape sequence) used to set color attributes, one of the fore/background +# colors must be preset to a given value. I have set the background color to +# black. The user can change this setup by altering the last section of the +# 'setf' definition. The escape sequence to set color attributes is +# ESC d y <foreground_color> <background_color> 1 +# In addition, the background color can be changed through the desk accessories. +# The capablitiy 'op' sets colors to green on black (default combination). +# +# NOTE: The NCR Unix System Administrator's Shell will not function properly +# if the 'pairs' capability is defined. Un-Comment the 'pairs' +# capability and recompile if you wish to have it included. +# +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260wy325pp|NCR 2900_260 wyse 325:\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:li#24:\ + :K1=^^:K2=\EJ:K4=\ET:K5=\EK:al=5\EE:bl=^G:bt=\EI:cd=5\Ey:\ + :ce=5\Et:cl=10\E*:cm=10\E=%+ %+ :cr=^M:ct=\E0:dc=50\EW:\ + :dl=5\ER:do=5\n:ds=\E`c:ei=\Er:fs=^M:ho=5\036:im=\Eq:\ + :is=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kD=\EW:kI=\Eq:kN=\EK:kP=\EJ:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=5\010:mb=\EG2:\ + :me=15\EG0\EcB0\EcD:mr=\EG4:nd=5\014:nw=5\037:\ + :rs=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=5\n:so=\EGt:sr=5\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=5\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode:\ + :co#132:\ + :cm=30\Ea%i%dR%dC:\ + :is=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :rs=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :tc=ncr260wy325pp: +# This definition for Wyse 350 supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +# In addition, color capabilities have been added to this file. The drawback, +# however, is that the background color has to be black. The foreground colors +# are numbered 0 through 15. +# +# NOTE: The NCR Unix System Administrator's Shell does not function properly +# with the 'pairs' capability defined as below. If you wish to +# have it included, Un-comment it and recompile (using 'tic'). +# +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260wy350pp|NCR 2900_260 wyse 350:\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:li#24:sg#1:ug#1:\ + :K1=^^:K4=\ET:K5=\EK:al=5\EE:bl=^G:bt=\EI:cd=5\Ey:ce=5\Et:\ + :cl=20\E+:cm=40\E=%+ %+ :cr=^M:ct=\E0:dc=50\EW:dl=5\ER:\ + :do=5\n:ds=\E`c:ei=\Er:fs=^M:ho=10\036:im=\Eq:\ + :is=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kD=\EW:kI=\Eq:kN=\EK:kP=\EJ:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=5\010:mb=\EG2:\ + :me=\EG0\EH\003\EcD:mh=\EGp:mr=\EG4:nd=5\014:nw=5\037:\ + :rs=100\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=5\n:so=\EGt:sr=5\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=5\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode:\ + :co#132:\ + :cm=30\Ea%i%dR%dC:\ + :is=200\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :rs=200\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :tc=ncr260wy350pp: +# This definition for Wyse 50+ supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +# (ncr260wy50+pp: originally contained commented-out +# <acsc=j5k3l2m1n8q:t4u9v=w0x6>, as well as the commented-out one there -- esr) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260wy50+pp|NCR 2900_260 wyse 50+:\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:li#24:sg#1:ug#1:\ + :K1=^^:K4=\ET:K5=\EK:al=5\EE:bl=^G:bt=5\EI:cd=5\EY:ce=5\ET:\ + :cl=20\E+:cm=30\E=%+ %+ :cr=^M:ct=5\E0:dc=50\EW:dl=5\ER:\ + :do=5\n:ds=\E`c:ei=\Er:fs=^M:ho=10\036:im=\Eq:\ + :is=100\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kD=\EW:kI=\Eq:kN=\EK:kP=\EJ:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=5\010:mb=\EG2:\ + :me=15\EG0\EH\003:mh=\EGp:mr=\EG4:nd=5\014:nw=5\037:\ + :rs=100\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=5\n:so=\EGt:sr=5\Ej:st=5\E1:ta=5\011:ts=\EF:\ + :ue=\EG0:up=5\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode:\ + :co#132:\ + :cm=30\Ea%i%dR%dC:\ + :is=200\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :rs=200\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :tc=ncr260wy50+pp: +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +ncr260wy60pp|NCR 2900_260 wyse 60:\ + :am:bw:hs:km:mi:ms:xo:\ + :co#80:li#24:\ + :K1=^^:K2=\EJ:K4=\ET:K5=\EK:al=5\EE:bl=^G:bt=15\EI:cd=5\Ey:\ + :ce=5\Et:cl=100\E*:cm=10\E=%+ %+ :cr=^M:ct=15\E0:dc=50\EW:\ + :dl=5\ER:do=5\n:ds=\E`c:ei=\Er:fs=^M:ho=25\036:im=\Eq:\ + :is=100\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kD=\EW:kI=\Eq:kN=\EK:kP=\EJ:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=5\010:mb=\EG2:\ + :me=15\EG0\EcB0\EcD:mr=\EG4:nd=5\014:nw=5\037:\ + :rs=100\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\072\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=5\n:so=\EGt:sr=5\Ej:st=15\E1:ta=15\011:ts=\EF:\ + :ue=\EG0:up=5\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode:\ + :co#132:\ + :cm=30\Ea%i%dR%dC:\ + :is=100\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :rs=100\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :tc=ncr260wy60pp: +ncr160vppp|NCR 2900_160 viewpoint:\ + :tc=ncr260vppp: +ncr160vpwpp|NCR 2900_160 viewpoint wide mode:\ + :tc=ncr260vpwpp: +ncr160vt100an|NCR 2900_160 vt100 with ansi kybd:\ + :tc=ncr260vt100an: +ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd:\ + :tc=ncr260vt100pp: +ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd:\ + :tc=ncr260vt100wan: +ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd:\ + :tc=ncr260vt100wpp: +ncr160vt200an|NCR 2900_160 vt200 with ansi kybd:\ + :tc=ncr260vt200an: +ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd:\ + :tc=ncr260vt200pp: +ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd:\ + :tc=ncr260vt200wan: +ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd:\ + :tc=ncr260vt200wpp: +ncr160vt300an|NCR 2900_160 vt300 with ansi kybd:\ + :tc=ncr260vt300an: +ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd:\ + :tc=ncr260vt300pp: +ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd:\ + :tc=ncr260vt300wan: +ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd:\ + :tc=ncr260vt300wpp: +ncr160wy50+pp|NCR 2900_160 wyse 50+:\ + :tc=ncr260wy50+pp: +ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode:\ + :tc=ncr260wy50+wpp: +ncr160wy60pp|NCR 2900_160 wyse 60:\ + :tc=ncr260wy60pp: +ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode:\ + :tc=ncr260wy60wpp: +ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal:\ + :5i:am:hs:mi:ms:xo:\ + :Nl#32:co#80:it#8:li#24:\ + :#4=\E[D:%i=\E[C:@8=^M:AL=80\E[%dL:DC=40\E[%dP:\ + :DL=70\E[%dM:DO=30\E[%dB:K1=\E[H:LE=30\E[%dD:RI=30\E[%dC:\ + :UP=30\E[%dA:\ + :ac=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~:\ + :ae=90\017:al=80\E[B\E[L:as=90\016:bl=^G:cb=30\E[1K:\ + :cd=300\E[0J:ce=30\E[0K:cl=300\E[2J\E[1;1H:\ + :cm=100\E[%i%d;%dH:cr=^M:cs=100\E[%i%d;%dr:ct=40\E[3g:\ + :dc=10\E[1P:dl=40\E[M:do=2\E[B:ds=25\E[31l:eA=40\E(B\E)0:\ + :ei=80\E[4l:fs=101:ho=80\E[H:im=80\E[4h:\ + :is=200\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=2\E[D:mb=30\E[5m:md=30\E[1m:\ + :me=120\017\E[0m:mr=30\E[7m:nd=2\E[C:nw=\EE:ps=100\E[i:\ + :rc=\E8:\ + :rs=200\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031:\ + :sc=\E7:se=30\E[0m:sf=\ED:so=30\E[7m:sr=50\EM:st=\EH:ta=^I:\ + :ts=70\E[>+1:ue=30\E[0m:up=2\E[A:us=30\E[4m: +ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal:\ + :co#132:\ + :is=200\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0:\ + :rs=200\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031:\ + :tc=ncrvt100an: +# +# Vendor-supplied NCR termcaps end here + +# NCR7900 DIP switches: +# +# Switch A: +# 1-4 - Baud Rate +# 5 - Parity (Odd/Even) +# 6 - Don't Send or Do Send Spaces +# 7 - Parity Enable +# 8 - Stop Bits (One/Two) +# +# Switch B: +# 1 - Upper/Lower Shift +# 2 - Typewriter Shift +# 3 - Half Duplex / Full Duplex +# 4 - Light/Dark Background +# 5-6 - Carriage Return Without / With Line Feed +# 7 - Extended Mode +# 8 - Suppress Keyboard Display +# +# Switch C: +# 1 - End of line entry disabled/enabled +# 2 - Conversational mode / (Local?) Mode +# 3 - Control characters displayed / not displayed +# 4 - (2-wire?) / 4-wire communications +# 5 - RTS on and off for each character +# 6 - (50Hz?) / 60 Hz +# 7 - Exit after level zero diagnostics +# 8 - RS-232 interface +# +# Switch D: +# 1 - Reverse Channel (yes / no) +# 2 - Manual answer (no / yes) +# 3-4 - Cursor appearance +# 5 - Communication Rate +# 6 - Enable / Disable EXT turnoff +# 7 - Enable / Disable CR turnoff +# 8 - Enable / Disable backspace +# +# Since each attribute parameter is 0 or 1, we shift each attribute (standout, +# reverse, blink, dim, and underline) the appropriate number of bits (by +# multiplying the 0 or 1 by a correct factor to shift) so the bias character, +# '@' is (effectively) "or"ed with each attribute to generate the proper third +# character in the <ESC>0 sequence. The :sa: string implements the following +# equation: +# +# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) => +# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17)) +# +# Where: P1 <==> Standout attribute parameter +# P2 <==> Underline attribute parameter +# P3 <==> Reverse attribute parameter +# P4 <==> Blink attribute parameter +# P5 <==> Dim attribute parameter +# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO. +ncr7900i|ncr7900|ncr 7900 model 1:\ + :am:bw:ul:\ + :co#80:li#24:sg#1:ug#1:\ + :bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\E1%r%.%.:cr=^M:do=^J:\ + :is=\E0@\010\E3\E4\E7:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=^H:\ + :ll=^A:mb=\E0B:me=\E0@:mh=\E0A:mr=\E0P:nd=^F:pf=^T:po=^R:\ + :se=\E0@:sf=^J:so=\E0Q:ue=\E0@:up=^Z:us=\E0`: +ncr7900iv|ncr 7900 model 4:\ + :am:bw:es:hs:\ + :co#80:li#24:\ + :al=\E^N:bl=^G:cl=^L:cm=\013%+@\E\005%2:cr=^M:dl=\E^O:\ + :do=^J:ds=\Ey1:fs=\Ek\Ey5:ho=\013@\E^E00:k1=\ES:k2=\ET:\ + :k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:kb=^H:kd=\EB:\ + :kh=\EH:kl=\ED:kr=\EC:ku=\EA:l6=blue:l7=red:l8=white:le=^H:\ + :nw=^M^J:sf=^J:ts=\Ej\Ex5\Ex1\EY8%+ \Eo: +# Warning: This terminal will lock out the keyboard when it receives a CTRL-D. +# The user can enter a CTRL-B to get out of this locked state. +# In <hpa>, we want to output the character given by the formula: +# ((col / 10) * 16) + (col % 10) where "col" is "p1" +ncr7901|ncr 7901 model:\ + :am:bw:ul:\ + :co#80:li#24:\ + :bl=^G:cd=\Ek:ce=\EK:ch=\020%B%.:cl=^L:cm=\EY%+ %+ :cr=^M:\ + :cv=\013%+@:do=^J:is=\E4^O:kC=^L:kd=^J:kh=^H:kl=^U:kr=^F:\ + :ku=^Z:le=^H:ll=^A:mb=\E0B:me=^O:mh=\E0A:mr=\E0P:nd=^F:pf=^T:\ + :po=^R:se=^O:sf=^J:so=\E0Q\016:ue=^O:up=^Z:us=\E0`\016:\ + :ve=^X:vi=^W: + +# Newbury Data Recording Limited (Newbury Data) +# +# Have been manufacturing and reselling various peripherals for a long time +# They don't make terminals anymore, but are still in business (in 2007). +# Their e-mail address is at ndsales@newburydata.co.uk +# and their post address is: +# +# Newbury Data Recording Ltd, +# Premier Park, Road One, +# Winsford, Cheshire, CW7 3PT +# +# Their technical support is still good, they sent me for free a printed copy +# of the 9500 user manual and I got it just 1 week after I first contacted them +# (in 2005)! + +# NDR 9500 +# Manufactured in the early/mid eighties, behaves almost the same as a +# Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but +# keep the same keyboard layout), add an optional 25-line mode, replace the DIP +# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC ! +# 2), here is the NDR 9500. Even the line-lock, albeit disabled, is +# recognized: if you type in "ESC !", the next (third) character is not +# echoed, showing that the terminal was actually waiting for a parameter! +ndr9500|nd9500|Newbury Data 9500:\ + :5i:am:bw:hs:mi:ms:ul:xo:\ + :co#80:li#24:ws#79:\ + :#3=\Eq:%9=\EP:*4=\Er:*5=\EO:*8=\Et:@8=^M:F1=^AJ\r:F2=^A`\r:\ + :F3=^Aa\r:F4=^Ab\r:F5=^Ac\r:F6=^Ad\r:F7=^Ae\r:F8=^Af\r:\ + :F9=^Ag\r:FA=^Ah\r:FB=^Ai\r:FC=^Aj\r:RX=^N:SX=^O:\ + :ac=jDkClBmAnIqKtMuLvOwNxJ:ae=\E%%:al=\EE:as=\E$:bl=^G:\ + :bt=\EI:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :cr=^M:ct=\E3:\ + :dc=\EW:dl=\ER:do=^V:ds=\Eh:ei=\Er:fs=^M:ho=^^:ic=\EQ:im=\Eq:\ + :is=\Ew\E'\EDF\El\Er\EO:k1=^A@\r:k2=^AA\r:k3=^AB\r:\ + :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:\ + :k;=^AI\r:kA=\EE:kB=\EI:kC=^Z:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:\ + :kS=\EY:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\EG0\E%%\E(:\ + :mh=\E):mp=\E):nd=^L:nw=^_:pf=\Ea:pl=\E|%+02%r\031:po=\E`:\ + :px=\E|%+01%r\031:se=\E(:sf=^J:so=\E):sr=\Ej:st=\E1:ta=^I:\ + :ts=\Eg\Ef\011%+ :up=^K:vb=\Eb\Ed:ve=\E.1:vi=\E.0: + +ndr9500-nl|NDR 9500 with no status line:\ + :hs@:\ + :ws@:\ + :ds@:fs@:ts@:tc=ndr9500: + +ndr9500-25|NDR 9500 with 25th line enabled:\ + :li#25:tc=ndr9500: + +ndr9500-25-nl|NDR 9500 with 25 lines and no status line:\ + :li#25:tc=ndr9500-nl: + +ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisible and blink):\ + :ms@:\ + :sg#1:ug#1:\ + :mb=\EG2:me=\EG0\E%%\E(:mk=\EG1:mr=\EG4:se=\EG0:so=\EG4:\ + :ue=\EG0:us=\EG8:tc=ndr9500: + +ndr9500-25-mc|NDR 500 with 25 lines and magic cookies:\ + :li#25:tc=ndr9500-mc: + +ndr9500-mc-nl|NDR 9500 with magic cookies and no status line:\ + :hs@:\ + :ws@:\ + :ds@:fs@:ts@:tc=ndr9500-mc: + +ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line:\ + :li#25:tc=ndr9500-mc-nl: + +#### Perkin-Elmer (Owl) +# +# These are official terminfo entries from within Perkin-Elmer. +# + +bantam|pe550|pe6100|perkin elmer 550:\ + :bs:\ + :co#80:li#24:\ + :bl=^G:ce=20\EI:cl=20\EK:cm=\EX%+ \EY%+ :cr=^M:do=^J:\ + :ho=\EH:le=^H:ll=\EH\EA:nd=\EC:sf=^J:up=\EA: +fox|pe1100|perkin elmer 1100:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=5.5*\EJ:ce=\EI:cl=132\EH\EJ:cm=\EX%+ \EY%+ :\ + :cr=^M:ct=\E3:do=^J:ho=\EH:le=^H:ll=\EH\EA:nd=\EC:sf=^J:\ + :st=\E1:up=\EA:vb=\020\002\020\003: +owl|pe1200|perkin elmer 1200:\ + :am:bs:in:\ + :co#80:li#24:\ + :al=5.5*\EL:bl=^G:cd=5.5*\EJ:ce=5.5\EI:cl=132\EH\EJ:\ + :cm=\EX%+ \EY%+ :cr=^M:ct=\E3:dc=5.5*\EO:dl=5.5*\EM:do=^J:\ + :ei=:ho=\EH:ic=\EN:im=:ip=5.5*:k0=\ERJ:k1=\ERA:k2=\ERB:\ + :k3=\ERC:k4=\ERD:k5=\ERE:k6=\ERF:k7=\ERG:k8=\ERH:k9=\ERI:\ + :kb=^H:le=^H:ll=\EH\EA:me=\E!\200:nd=\EC:se=\E!\200:sf=^J:\ + :so=\E!^H:st=\E1:up=\EA:vb=\020\002\020\003: +pe1251|pe6300|pe6312|perkin elmer 1251:\ + :am:\ + :co#80:it#8:li#24:pb#300:sg#1:vt#8:\ + :bl=^G:cd=20*\EJ:ce=10*\EI:cl=332\EK:cm=\EX%+ \EY%+ :\ + :cr=^M:ct=\E3:do=\EB:ho=\EH:k0=\ERA:k1=\ERB:k2=\ERC:k3=\ERD:\ + :k4=\ERE:k5=\ERF:k6=\ERG:k7=\ERH:k8=\ERI:k9=\ERJ:k;=\ERK:\ + :le=\ED:nd=\EC:sf=^J:st=\E1:up=\EA: +# (pe7000m: this had +# rmul=\E!\0, smul=\E!\040, +# which is probably wrong, it collides with kf0 +pe7000m|perkin elmer 7000 series monochrome monitor:\ + :am:\ + :co#80:li#24:\ + :bl=^G:bt=\E!Y:cd=\EJ:ce=\EI:cl=\EK:cm=\ES%+ %+ :cr=^M:\ + :do=\EB:ho=\EH:i1=\E!\200\EW 7o\Egf\ES7\040:k0=\E!\200:\ + :k1=\E!^A:k2=\E!^B:k3=\E!^C:k4=\E!^D:k5=\E!^E:k6=\E!^F:\ + :k7=\E!^G:k8=\E!^H:k9=\E!^I:k;=\E!^J:kb=^H:kd=\E!U:kh=\E!S:\ + :kl=\E!V:kr=\E!W:ku=\E!T:le=\ED:ll=\ES7\040:nd=\EC:sf=^J:\ + :sr=\ER:up=\EA: +pe7000c|perkin elmer 7000 series colour monitor:\ + :i1=\E!\200\EW 7o\Egf\Eb0\Ec7\ES7\040:se=\Eb0:so=\Eb2:\ + :ue=\E!\200:us=\E!\040:tc=pe7000m: + +#### Sperry Univac +# +# Sperry Univac has merged with Burroughs to form Unisys. +# + +# This entry is for the Sperry UTS30 terminal running the TTY +# utility under control of CP/M Plus 1R1. The functionality +# provided is comparable to the DEC vt100. +# (uts30: I added <rmam>/<smam> based on the init string -- esr) +uts30|sperry uts30 with cp/m@1R1:\ + :am:bw:hs:\ + :co#80:li#24:ws#40:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7m:SF=\E[%dB:\ + :SR=\E[%dA:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\Ed:al=\EN:as=\EF:bl=^G:cd=\E[J:ce=\E[K:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\EU%+ %+ :dc=\EM:dl=\EL:do=\E[B:\ + :ei=:fs=^M:ho=\E[H:ic=\EO:im=:is=\E[U 7\E[24;1H:kb=^H:\ + :kd=\EOB:kh=\E[H:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:rc=\EX:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\EW:se=\E[m:\ + :sf=^J:so=\E[7m:sr=\EI:ta=^I:ts=\E]:uc=\EPB:ue=\E[m:up=\E[A:\ + :us=\E[4m:ve=\ES:vi=\ER: + +#### Tandem +# +# Tandem builds these things for use with its line of fault-tolerant +# transaction-processing computers. They aren't generally available +# on the merchant market, and so are fairly uncommon. +# + +tandem6510|adm3a repackaged by Tandem:\ + :tc=adm3a: + +# A funny series of terminal that TANDEM uses. The actual model numbers +# have a fourth digit after 653 that designates minor variants. These are +# natively block-mode and rather ugly, but they have a character mode which +# this doubtless(?) exploits. There is a 6520 that is slightly dumber. +# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also, +# removed :if=/usr/share/tabset/tandem653:, no such file -- esr) +tandem653|t653x|Tandem 653x multipage terminal:\ + :am:bs:da:db:hs:\ + :co#80:li#24:sg#1:ug#1:ws#64:\ + :cd=\EJ:ce=\EK:cl=\EI:cm=\023%+ %+ :do=^J:ds=\Eo\r:fs=^M:\ + :ho=\EH:le=^H:me=\E6\040:nd=\EC:se=\E6\040:sf=\ES:so=\E6$:\ + :sr=\ET:ts=\Eo:ue=\E6\040:up=\EA:us=\E60: + +#### Tandy/Radio Shack +# +# Tandy has a line of VDTs distinct from its microcomputers. +# + +dmterm|deskmate terminal:\ + :am:bw:\ + :co#80:li#24:\ + :al=\EP:bl=^G:cd=\EJ:ce=\EK:cl=\Ej:cm=\EY%+ %+ :cr=^M:\ + :dc=\ES:dl=\ER:do=\EB:ei=:ho=\EH:ic=\EQ:im=:k0=\E1:k1=\E2:\ + :k2=\E3:k3=\E4:k4=\E5:k5=\E6:k6=\E7:k7=\E8:k8=\E9:k9=\E0:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f1:l1=f2:l2=f3:l3=f4:\ + :l4=f5:l5=f6:l6=f7:l7=f8:l8=f9:l9=f10:le=^H:ll=\EE:mk@:nd=\EC:\ + :sf=\EX:ta=^I:ue@:up=\EA:us@:ve=\EG6:vi=\EG5:tc=adm+sgr: +dt100|dt-100|Tandy DT-100 terminal:\ + :xo:\ + :co#80:li#24:sg#1:ug#1:\ + :ac=jjkkllmmnnqqttuuvvwwxx:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\010\E[%i%d;%dH:cr=^M:\ + :cs=\E[%2;%2r:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:\ + :im=:is=\E[?3l\E)0\E(B:k1=\E[?3i:k2=\E[2i:k3=\E[@:k4=\E[M:\ + :k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\ + :k;=\E[?5i:kN=\E[29~:kP=\E[28~:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:l1=f1:l2=f2:l3=f3:l4=f4:l5=f5:l6=f6:l7=f7:\ + :l8=f8:le=^H:me=\E[m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\EM:\ + :ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l: +dt100w|dt-100w|Tandy DT-100 terminal (wide mode):\ + :co#132:tc=dt100: +dt110|Tandy DT-110 emulating ansi:\ + :xo:\ + :co#80:li#24:\ + :@7=\E[K:ac=jjkkllmmnnqqttuuvvwwxx:ae=^O:al=\E[0L:as=^N:\ + :bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:cm=\010\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dc=\E[0P:dl=\E[0M:do=\E[B:\ + :eA=\E(B\E)0:ei=:ho=\E[H:ic=\E[0@:im=:is=\E[?3l\E)0\E(B:\ + :k1=\E[1~:k2=\E[2~:k3=\E[3~:k4=\E[4~:k5=\E[5~:k6=\E[6~:\ + :k7=\E[7~:k8=\E[8~:k9=\E[9~:k;=\E[10~:kI=\E[@:kN=\E[26~:\ + :kP=\E[25~:kd=\E[B:kh=\E[G:kl=\E[D:kr=\E[C:ku=\E[A:l0=f1:\ + :l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:l8=f9:l9=f10:le=^H:\ + :me=\E[m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l: +pt210|TRS-80 PT-210 printing terminal:\ + :hc:os:\ + :co#80:\ + :bl=^G:cr=^M:do=^J:sf=^J: + +#### Tektronix (tek) +# +# Tektronix tubes are graphics terminals. Most of them use modified +# oscilloscope technology incorporating a long-persistence green phosphor, +# and support vector graphics on a main screen with an attached "dialogue +# area" for interactive text. +# + +tek|tek4012|tektronix 4012:\ + :bs:os:\ + :co#75:li#35:\ + :bl=^G:cl=1000\E\014:cr=^M:do=^J:ff=1000\014:is=\E^O:le=^H: +# (tek4013: added <acsc> to suppress tic warnings re :as:/:ae: --esr) +tek4013|tektronix 4013:\ + :ac=:ae=\E^O:as=\E^N:tc=tek4012: +tek4014|tektronix 4014:\ + :co#81:li#38:\ + :is=\E\017\E9:tc=tek4012: +# (tek4015: added <acsc> to suppress tic warnings re :as:/:ae: --esr) +tek4015|tektronix 4015:\ + :ac=:ae=\E^O:as=\E^N:tc=tek4014: +tek4014-sm|tektronix 4014 in small font:\ + :co#121:li#58:\ + :is=\E\017\E\072:tc=tek4014: +# (tek4015-sm: added <acsc> to suppress tic warnings re :as:/:ae: --esr) +tek4015-sm|tektronix 4015 in small font:\ + :ac=:ae=\E^O:as=\E^N:tc=tek4014-sm: +# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay> +# +# You need to have "stty nl2" in effect. Some versions of tset(1) know +# how to set it for you. +# +# It's got the Magic Cookie problem around stand-out mode. If you can't +# live with Magic Cookie, remove the :so: and :se: fields and do without +# reverse video. If you like reverse video stand-out mode but don't want +# it to flash, change the letter 'H' to 'P' in the :so: field. +tek4023|tektronix 4023:\ + :am:bs:\ + :co#80:dN#4:li#24:sg#1:vt#4:\ + :bl=^G:cl=4\E\014:cm=\034%r%+ %+ :cr=^M:do=^J:kb=^H:le=^H:\ + :nd=^I:nl=^J:se=^_@:so=^_P: +# It is recommended that you run the 4025 at 4800 baud or less; +# various bugs in the terminal appear at 9600. It wedges at the +# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed +# on keyboard don't work. You have to hit BREAK twice to get +# one break at any speed - this is a documented feature. +# Can't use cursor motion because it's memory relative, and +# because it only works in the workspace, not the monitor. +# Same for home. Likewise, standout only works in the workspace. +# +# :ce: was commented out since vi and rogue seem to work better +# simulating it with lots of spaces! +# +# :al: and :AL: had 145ms of padding, but that slowed down vi's ^U +# and didn't seem necessary. +# +tek4024|tek4025|tek4027|tektronix 4024/4025/4027:\ + :am:bs:da:db:\ + :co#80:it#8:li#34:lm#0:\ + :AL=\037up\r\037ili %d\r:CC=^_:DL=\037dli %d\r\006:\ + :DO=\037dow %d\r:LE=\037lef %d\r:RI=\037rig %d\r:\ + :UP=\037up %d\r:al=\037up\r\037ili\r:bl=^G:\ + :cd=\037dli 50\r:cl=\037era\r\n\n:cr=^M:dc=\037dch\r:\ + :dl=\037dli\r\006:do=^F^J:ei=:ic=\037ich\r \010:im=:\ + :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r:\ + :ke=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r:\ + :ks=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r:\ + :le=^H:nd=\037rig\r:sf=^F^J:ta=^I:up=^K: +tek4025-17|tek 4025 17 line window:\ + :li#17:tc=tek4025: +tek4025-17-ws|tek 4025 17 line window in workspace:\ + :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\r:\ + :se=\037att s\r:so=\037att e\r:te=\037mon h\r:\ + :ti=\037wor h\r:tc=tek4025-17: +tek4025-ex|tek4027-ex|tek 4025/4027 w/!:\ + :is=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r:\ + :te=\037com 33\r:ti=!com 31\r:tc=tek4025: +# Tektronix 4025a +# From: Doug Gwyn <gwyn@brl-smoke.ARPA> +# The following status modes are assumed for normal operation (replace the +# initial "!" by whatever the current command character is): +# !COM 29 # NOTE: changes command character to GS (^]) +# ^]DUP +# ^]ECH R +# ^]EOL +# ^]RSS T +# ^]SNO N +# ^]STO 9 17 25 33 41 49 57 65 73 +# Other modes may be set according to communication requirements. +# If the command character is inadvertently changed, termcap can't restore it. +# Insert-character cannot be made to work on both top and bottom rows. +# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas. +# There also seems to be a problem with vertical motion, perhaps involving +# delete/insert-line, following a typed carriage return. This terminal sucks. +# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't +# work any more. -- esr) +tek4025a|Tektronix 4025A:\ + :am:bs:bw:da:db:pt:xo:\ + :co#80:it#8:li#34:\ + :CC=^]:DC=\035dch %d;:DL=\035dli %d;:DO=\035dow %d;:\ + :LE=\035lef %d;:RI=\035rig %d;:SF=\035dow %d;:\ + :UP=\035up %d;:al=\013\035ili;:bl=^G:bt=\035bac;:\ + :ce=\035dch 80;:ch=\r\035rig %d;:cl=\035era;\n\035rup;:\ + :cr=^M:ct=\035sto;:dc=\035dch;:dl=\035dli;:do=^J:le=^H:\ + :nd=\035rig;:\ + :rs=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;:\ + :sf=^J:ta=^I:up=^K: +# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981 +# Here's the command file that I use to get rogue to work on the 4025. +# It should work with any program using the old curses (e.g. it better +# not try to scroll, or cursor addressing won't work. Also, you can't +# see the cursor.) +# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh) +tek4025-cr|tek 4025 for curses and rogue:\ + :am:bs:\ + :co#80:it#8:li#33:\ + :cl=\037era;:cm=\037jum%i%d,%d;:do=^F^J:\ + :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r:\ + :le=^H:nd=\037rig;:sf=^F^J:ta=^I:te=\037wor 0:\ + :ti=\037wor 33h:up=^K: +# next two lines commented out since curses only allows 128 chars, sigh. +# :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\ +# :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0: +tek4025ex|4025ex|4027ex|tek 4025 w/!:\ + :is=\037com 33\r\n!sto 9,17,25,33,41,49,57,65,73\r:\ + :te=\037com 33\r:ti=!com 31\r:tc=tek4025: +tek4105|tektronix 4105:\ + :am:bs:mi:ms:ul:xn:xt:\ + :co#79:it#8:li#29:\ + :ac=:ae=\E[m:al=\E[1L:as=\E[1m:bl=^G:bt=\E[Z:cd=\E[J:\ + :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%2;%2H:cr=^M:ct=\E[1g:\ + :dc=\E[1P:dl=\E[1M:do=\E[1B:ei=\E[4l:ho=\E[H:i1=\E%!1\E[m:\ + :im=\E[4h:is=\E%!1\E[?6141\E[m:kb=^H:kd=\E[1B:kl=\E[1D:\ + :kr=\E[1C:ku=\E[1A:le=\E[1D:mb=\E[=3;<7m:md=\E[=7;<4m:\ + :me=\E[=0;<1m:mh=\E[=1;<6m:mk=\E[=6;<5:mr=\E[=1;<3m:\ + :nd=\E[1C:se=\E[=0;<1m:sf=\E[S:so=\E[=2;<3m:sr=\E[T:ta=^I:\ + :te=:ti=\E%!1\E[?6l\E[2J:ue=\E[=0;<1m:up=\E[1A:\ + :us=\E[=5;<2m: + +# (tek4105-30: I added <rmam>/<smam> based on the init string -- esr) +tek4105-30|4015 emulating 30 line vt100:\ + :am:mi:ms:xn:xo:\ + :co#80:it#8:li#30:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ + :mb=2\E[5m:md=2\E[1m:me=2\E[0m:mr=2\E[7m:nd=2\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\ + :sf=^J:so=2\E[1;7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\ + :us=2\E[4m:tc=vt100+fnkeys: + +# Tektronix 4105 from BRL +# The following setup modes are assumed for normal operation: +# CODE ansi CRLF no DABUFFER 141 +# DAENABLE yes DALINES 30 DAMODE replace +# DAVISIBILITY yes ECHO no EDITMARGINS 1 30 +# FLAGGING input INSERTREPLACE replace LFCR no +# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B +# SELECTCHARSET G1 0 TABS -2 +# Other setup modes may be set for operator convenience or communication +# requirements; I recommend +# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes +# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1 +# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" +# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132 +# XMTDELAY 0 +# and factory color maps. After setting these modes, save them with NVSAVE. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# "IC" cannot be used in combination with "im" & "ei". +# "tek4105a" is just a guess: +tek4105a|Tektronix 4105:\ + :bs:ms:pt:xo:\ + :co#80:it#8:kn#8:li#30:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ac=:ae=^O:al=\E[L:\ + :as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E%!1:k0=\EOA:k1=\EOB:k2=\EOC:k3=\EOD:k4=\EOP:k5=\EOQ:\ + :k6=\EOR:k7=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:\ + :l5=F6:l6=F8:le=^H:ll=\E[30;H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E%!0\ELBH=\E%!1:ti=\E[?6l:ue=\E[m:up=\EM:us=\E[4m:\ + :ve=\E%!0\ETD10\E%!1:vi=\E%!0\ETD00\E%!1:\ + :vs=\E%!0\ETD70\E%!1: + +# +# Tektronix 4106/4107/4109 from BRL +# The following setup modes are assumed for normal operation: +# CODE ansi COLUMNMODE 80 CRLF no +# DABUFFER 141 DAENABLE yes DALINES 32 +# DAMODE replace DAVISIBILITY yes ECHO no +# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace +# LFCR no LOCKKEYBOARD no ORIGINMODE relative +# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0 +# TABS -2 +# Other setup modes may be set for operator convenience or communication +# requirements; I recommend +# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes +# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3 +# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" +# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132 +# XMTDELAY 0 +# and factory color maps. After setting these modes, save them with NVSAVE. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# "IC" cannot be used in combination with "im" & "ei". +tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109:\ + :ms:xo:\ + :co#80:it#8:li#32:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ac=:ae=^O:al=\E[L:\ + :as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E%!1:k0=\EOA:k1=\EOB:k2=\EOC:k3=\EOD:k4=\EOP:k5=\EOQ:\ + :k6=\EOR:k7=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l0=F1:l1=F2:l2=F3:l3=F4:l4=F5:\ + :l5=F6:l6=F8:le=^H:ll=\E[32;H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:\ + :r1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>:\ + :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7;42m:sr=\EM:st=\EH:\ + :ta=^I:te=\E%!0\ELBH=\E%!1:ti=\E[?6l:ue=\E[m:up=\EM:\ + :us=\E[4m:ve=\E%!0\ETD10\E%!1:vi=\E%!0\ETD00\E%!1:\ + :vs=\E%!0\ETD70\E%!1: + +# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code: +# 0 selects Tek mode, i.e., \E%!0 +# 1 selects ANSI mode +# 2 selects ANSI edit-mode +# 3 selects VT52 mode +# +# One odd thing about the description (which has been unchanged since the 90s) +# is that the cursor addressing is using VT52 mode, and a few others use the +# VT52's non-CSI versions of ANSI, e.g., \EJ. +tek4107|tek4109|tektronix terminals 4107 4109:\ + :am:bs:mi:ms:ul:xn:xt:\ + :co#79:it#8:li#29:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\ELZ:cm=\EY%+ %+ :cr=^M:do=^J:kb=^H:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:mb=\E%!1\E[5m\E%!0:\ + :md=\E%!1\E[1m\E%!0:me=\E%!1\E[m\E%!0:\ + :mh=\E%!1\E[<0m\E%!0:mr=\E%!1\E[7m\E%!0:nd=\EC:\ + :se=\E%!1\E[m\E%!0:sf=^J:so=\E%!1\E[7;5m\E%!0:sr=\EI:\ + :ta=^I:ue=\E%!1\E[m\E%!0:up=\EA:us=\E%!1\E[4m\E%!0:\ + :ve=\E%!0:vs=\E%!3: +# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s; +# see the note attached to tek4207. +tek4207-s|Tektronix 4207 with sysline but no memory:\ + :es:hs:\ + :ds=\E7\E[?6l\E[2K\E[?6h\E8:fs=\E[?6h\E8:\ + :i1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\ + :is=\E7\E[?6l\E[2K\E[?6h\E8:\ + :ts=\E7\E[?6l\E[2K\E[;%i%df:tc=tek4107: + +# The 4110 series may be a wonderful graphics series, but they make the 4025 +# look good for screen editing. In the dialog area, you can't move the cursor +# off the bottom line. Out of the dialog area, ^K moves it up, but there +# is no way to scroll. +# +# Note that there is a floppy for free from Tek that makes the +# 4112 emulate the vt52 (use the vt52 termcap). There is also +# an expected enhancement that will use ANSI standard sequences. +# +# 4112 in non-dialog area pretending to scroll. It really wraps +# but vi is said to work (more or less) in this mode. +# +# 'vi' works reasonably well with this entry. +# +otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series:\ + :am:\ + :co#80:li#34:\ + :bl=^G:cl=\E^L:cr=^M:do=^J:le=^H:sf=^J:te=\EKA1\ELV1:\ + :ti=\EKA0\ELV0\EMG0:up=^K: +# The 4112 with the ANSI compatibility enhancement +tek4112|tek4114|tektronix 4110 series:\ + :am:bs:db:\ + :co#80:li#34:\ + :al=\E[L:bt=\E[Z:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[0;0H:\ + :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:ic=\E[@:im=:\ + :is=\E3!1:le=^H:me=\E[m:nd=\E[C:se=\E[m:\ + :sf=\E7\E[0;0H\E[M\E8:so=\E[7m:sr=\E7\E[0;0H\E[L\E8:\ + :ue=\E[m:up=\EM:us=\E[4m: +tek4112-nd|4112 not in dialog area:\ + :ns:\ + :up=^K:tc=tek4112: +tek4112-5|4112 in 5 line dialog area:\ + :li#5:tc=tek4112: +# (tek4113: this used to have ":nd=\LM1\s\LM0:", someone's mistake; +# removed ":as=\E^N:, :ae=\E^O:", which had been commented out in 8.3. +# Note, the !0 and !1 sequences in :te:/:ti:/:ve:/:vi: were +# previously \0410 and \0411 sequences...I don't *think* they were supposed +# to be 4-digit octal -- esr) +tek4113|tektronix 4113 color graphics with 5 line dialog area:\ + :am:bs:da:eo:\ + :co#80:li#5:\ + :cl=\ELZ:do=^J:is=\EKA1\ELL5\ELV0\ELV1:le=^H:\ + :nd=\ELM1 \ELM0:uc=\010\ELM1_\ELM0:\ + :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0: +tek4113-34|tektronix 4113 color graphics with 34 line dialog area:\ + :li#34:\ + :is=\EKA1\ELLB2\ELV0\ELV1:tc=tek4113: +# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not +# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up . +# :vb: needs enough delay to let you see the background color being toggled. +tek4113-nd|tektronix 4113 color graphics with no dialog area:\ + :am:bs:eo:\ + :co#80:it#8:li#34:\ + :cl=\E^L:do=^J:ho=\ELF7l\177 @:is=\ELZ\EKA0\ELF7l\177 @:\ + :le=^H:ll=\ELF hl @:nd=^I:se=\EMT1:so=\EMT2:ta=^I:\ + :uc=\010\EMG1_\EMG0:up=^K:\ + :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0:\ + :vs=\ELZ\EKA0: +# This entry is from Tek. Inc. (Brian Biehl) +# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr) +otek4115|Tektronix 4115:\ + :am:bs:da:db:eo:\ + :co#80:it#8:li#34:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:\ + :ei=\E[4l:ho=\E[H:if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m:\ + :kb=^H:ke=\E>:ks=\E=:le=\E[D:me=\E[m:nd=\E[C:se=\E[m:\ + :so=\E[7m:sr=\EM:ta=^I:te=\E%!0\ELBG8\E%!1\E[34;1H\E[J:\ + :ti=\E%!0\ELBB2\E%!1:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E%!0\ELBG8\E%!1\E[34;1H:vs=\E%!0\ELBB2\E%!1: +tek4115|newer tektronix 4115 entry with more ANSI capabilities:\ + :am:xo:\ + :co#80:li#34:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:al=\E[L:bl=^G:\ + :bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%+^AG:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:\ + :dl=\E[M:do=^J:ei=:ho=\E[H:ic=\E[@:im=:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:st=\EH:\ + :ta=^I:ue=\E[m:up=\E[A:us=\E[4m: +# The tek4125 emulates a vt100 incorrectly - the scrolling region +# command is ignored. The following entry replaces :cs: with the needed +# :AL:, :AL:, and :im:; removes some cursor pad commands that the tek4125 +# chokes on; and adds a lot of initialization for the tek dialog area. +# Note that this entry uses all 34 lines and sets the cursor color to green. +# Steve Jacobson 8/85 +# (tek4125: there were two "\!"s in the is that I replaced with "\E!"; +# commented out, :im:=\E1 because there's no :ei: -- esr) +tek4125|tektronix 4125:\ + :li#34:\ + :al=\E[1L:cs@:dl=\E[1M:\ + :is=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :ks=\E=:rc@:sc@:tc=vt100: + +# From: <jcoker@ucbic> +# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO +# supplied another, less capable 4107 entry. So we'll use that for 4107 and +# note that if jcoker wasn't confused you may be able to use this one. +# I merged in :ms:,:sf:,:sr:,<invis>,:ct: from a BRL entry -- esr) +tek4207|Tektronix 4207 graphics terminal with memory:\ + :am:bw:mi:ms:ul:xn:\ + :co#80:it#8:li#32:\ + :al=3\E[L:bt=\E[Z:cd=\E[J:ce=5\E[K:cl=156\E[H\E[J:\ + :cm=\E[%i%d;%dH:ct=\E[1g:dc=4\E[P:dl=3\E[M:do=^J:ei=:\ + :ho=\E[H:ic=4\E[@:im=:\ + :is=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\ + :kd=\ED:kh=\E[H:kl=\E[D:kr=\E[C:ku=\EM:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mk=\E[=6;<5:mr=\E[7m:nd=\E[C:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:\ + :te=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f:ti=\E[?6l\E[H\E[J:\ + :ue=\E[m:up=\EM:us=\E[4m: + +# From: <carolyn@dali.berkeley.edu> Thu Oct 31 12:54:27 1985 +# (tek4404: There was a "\!" in :ti: that I replaced with "\E!". +# Tab had been given as \E2I,that must be the tab-set capability -- esr) +tek4404|tektronix 4404:\ + :bs:\ + :co#80:it#8:li#32:\ + :al=\E[1L:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[1M:do=^J:ei=\E[4l:ho=\E[H:\ + :im=\E[4h:kd=\E[B:ke=\E[?1h:kl=\E[D:kr=\E[C:ks=\E[?1l:\ + :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:nd=\E[C:rc=\E8:\ + :sc=\E7:se=\E[27m:so=\E[7m:st=\E[2I:ta=^I:\ + :te=\E[1;1H\E[0J\E[?6h\E[?1l:\ + :ti=\E%\E!1\E[1;32r\E[?6l\E>:ue=\E[m:up=\E[A:us=\E[4m: +# Some unknown person wrote: +# I added the is string - straight Unix has ESC ; in the login +# string which sets a ct8500 into monitor mode (aka 4025 snoopy +# mode). The is string here cleans up a few things (but not +# everything). +ct8500|tektronix ct8500:\ + :am:bw:da:db:\ + :co#80:li#25:\ + :al=\E^L:bl=^G:bt=\E^I:cd=\E^U:ce=\E^T:cl=\E^E:\ + :cm=\E|%+ %+ :cr=^M:dc=\E^]:dl=\E^M:do=^J:ei=:ic=\E^\:im=:\ + :is=\037\EZ\Ek:le=^H:me=\E\040:nd=\ES:se=\E\040:sf=^J:\ + :so=\E$:sr=\E^A:ta=^I:ue=\E\040:up=\ER:us=\E!: + +# Tektronix 4205 terminal. +# +# am is not defined because the wrap around occurs not when the char. +# is placed in the 80'th column, but when we are attempting to type +# the 81'st character on the line. (esr: hmm, this is like the vt100 +# version of xenl, perhaps am + xenl would work!) +# +# Bold, dim, and standout are simulated by colors and thus not allowed +# with colors. The tektronix color table is mapped into the RGB color +# table by setf/setb. All colors are reset to factory specifications by oc. +# The <initc> cap uses RGB notation to define colors. for arguments 1-3 the +# interval (0-1000) is broken into 8 smaller sub-intervals (125). Each sub- +# interval then maps into pre-defined value. +tek4205|tektronix 4205:\ + :cc:mi:ms:\ + :Co#8:NC#49:co#80:it#8:li#30:pa#63:\ + :AL=\E[%dL:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[1L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:ct=\E[1g:\ + :dc=\E[1P:dl=\E[1M:do=\E[B:eA=\E)0:ec=\E%dX:ei=\E[4l:\ + :ho=\E[H:i1=\E%!0\ETM1\E%!1\E[m:im=\E[4h:k0=\EOA:k1=\EOB:\ + :k2=\EOC:k3=\EOD:k4=\EP:k5=\EQ:k6=\ER:k7=\ES:kb=^H:kd=\E[B:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[=7;<4m:\ + :me=\E[=0;<1m\E[24;25;27m\017:mh=\E[=1;<6m:mk=\E[=6;<5:\ + :mr=\E[7m:nd=\E[C:\ + :oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1:\ + :op=\E[39;40m:se=\E[=0;<1m:sf=\ED:so=\E[=2;<3m:sr=\EM:\ + :ta=^I:te=:ti=\E%%!1\E[?6l\E[2J:ue=\E[24m:up=\E[A:\ + :us=\E[4m: + +#### Teletype (tty) +# +# These are the hardcopy Teletypes from before AT&T bought the company, +# clattering electromechanical dinosaurs in Bakelite cases that printed on +# pulpy yellow roll paper. If you remember these you go back a ways. +# Teletype-branded VDTs are listed in the AT&T section. +# +# The earliest UNIXes were designed to use these clunkers; nroff and a few +# other programs still default to emitting codes for the Model 37. +# + +tty33|tty35|model 33 or 35 teletype:\ + :hc:os:xo:\ + :co#72:\ + :bl=^G:cr=^M:do=^J:sf=^J: +tty37|model 37 teletype:\ + :bs:hc:os:xo:\ + :bl=^G:cr=^M:do=^J:hd=\E9:hu=\E8:le=^H:sf=^J:up=\E7: + +# There are known to be at least three flavors of the tty40, all seem more +# like IBM half duplex forms fillers than ASCII terminals. They have lots of +# awful braindamage, such as printing a visible newline indicator after each +# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is +# braindamaged but has hope and is described here. The 40-4 is a 3270 +# lookalike and beyond hope. The terminal has visible bell but I don't know +# it - it's null here to prevent it from showing the BL character. +# There is an \EG in <nl> because of a bug in old vi (if stty says you have +# a "newline" style terminal (-crmode) vi figures all it needs is nl +# to get crlf, even if :cr: is not ^M.) +# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr) +tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2:\ + :bs:xo:\ + :co#80:li#24:\ + :al=50\EL:cd=75\EJ:cl=80\EH\EJ:cr=\EG:ct=80\EH\E2:\ + :dc=50\EP:dl=50\EM:do=\EB:ei=:ho=10\EH:ic=50\E\136:im=:\ + :kb=^]:kl=^H:le=^H:nd=\EC:pf=^T:po=2000\022:rs=60\023\ER:\ + :se=\E4:sf=20\ES:so=\E3:sr=10\ET:st=\E1:ta=10\E@:up=\E7: +tty43|model 43 teletype:\ + :am:bs:hc:os:xo:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:kb=^H:le=^H:sf=^J: + +#### Tymshare +# + +# You can add :is=\E<: to put this 40-column mode, though I can't +# for the life of me think why anyone would want to. +scanset|sc410|sc415|Tymshare Scan Set:\ + :am:bw:ms:\ + :co#80:li#24:\ + :ac=j%k4l<m-q,x5:ae=^O:as=^N:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :cr=^M:do=^J:ho=\EH:kd=\EB:kl=\ED:kr=\EC:\ + :ku=\EA:le=^H:nd=^I:pf=\E;0:po=\E;0:ps=\E;3:r1=\E>:rc=^C:\ + :sc=^B:sf=^J:up=^K: + +#### Volker-Craig (vc) +# +# If you saw a Byte Magazine cover with a terminal on it during the early +# 1980s, it was probably one of these. Carl Helmers liked them because +# they could crank 19.2 and were cheap (that is, he liked them until he tried +# to program one...) +# + +# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time +# every other linefeed. +vc303|vc103|vc203|volker-craig 303:\ + :am:bs:ns:\ + :co#80:li#24:\ + :bl=^G:cl=40\014:cr=^M:do=^J:ho=40\013:kd=^J:kl=^H:kr=^I:\ + :ku=^N:le=^H:ll=\017W:nd=^I:up=^N: +vc303a|vc403a|volker-craig 303a:\ + :ce=20\026:cl=40\030:ho=40\031:kr=^U:ku=^Z:ll=^P:nd=^U:\ + :up=^Z:tc=vc303: +# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr) +vc404|volker-craig 404:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=40\027:ce=20\026:cl=40\030:cm=\020%+ %+ :cr=^M:\ + :do=^J:ho=40\031:kd=^J:kl=^H:kr=^U:ku=^Z:le=^H:nd=^U:sf=^J:\ + :up=^Z: +vc404-s|volker-craig 404 w/standout mode:\ + :do=^J:se=^O:so=^N:tc=vc404: +# From: <wolfgang@cs.sfu.ca> +# (vc414: merged in cup/dl1/home from an old vc414h-noxon) +vc414|vc414h|Volker-Craig 414H in sane escape mode.:\ + :am:bs:\ + :co#80:li#24:\ + :al=40\E\032:cd=\E^X:ce=10\E\017:cl=40\E\034:\ + :cm=40\E\021%r%.%.:dc=\E3:dl=40\E\023:do=\E^K:ei=:ho=\E^R:\ + :ic=\E\072:im=:k0=\EA:k1=\EB:k2=\EC:k3=\ED:k4=\EE:k5=\EF:\ + :k6=\EG:k7=\EH:kd=\E^K:kh=\E^R:kl=^H:kr=^P:ku=\E^L:l0=PF1:\ + :l1=PF2:l2=PF3:l3=PF4:l4=PF5:l5=PF6:l6=PF7:l7=PF8:nd=^P:\ + :se=\E^_:so=\E^Y:up=\E^L: +vc415|volker-craig 415:\ + :cl=^L:tc=vc404: + +######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS +# + +#### IBM PC and clones +# + +# The pcplot IBM-PC terminal emulation program is really messed up. It is +# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly, +# doesn't support scrolling regions, ignores add line commands, and ignores +# delete line commands. Consequently, the resulting behavior looks like a +# crude adm3a-type terminal. +# Steve Jacobson 8/85 +pcplot|pc-plot terminal emulation program:\ + :xn@:\ + :AL@:DL@:al@:cs@:dl@:rc@:sc@:tc=vt100: +# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA> +# I've found that my KayPro II, running MDM730, continues to emulate an +# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX +# system the following termcap entry works well: +# I have noticed a couple of minor glitches, but nothing I can't work +# around. (I added two capabilities from the BRL entry -- esr) +kaypro|kaypro2|kaypro II:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EE:bl=^G:cd=^W:ce=^X:cl=1\032:cm=\E=%+ %+ :cr=^M:\ + :dl=\ER:do=^J:ho=^^:kd=^J:kr=^L:ku=^K:nd=^L:sf=^J:up=^K: + +# From IBM, Thu May 5 19:35:27 1983 +# (ibmpc: commented out :im:=\200R because we don't know :ei: -- esr) +ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS):\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=^L^K:cr=^M^^:do=^J:ho=^K:kd=^_:le=^]:nd=^\:sf=10\n:\ + :up=^^: + +ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX:\ + :am:bs:bw:eo:hs:km:ms:ul:\ + :co#80:it#8:li#24:\ + :@7=\E[Y:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS\E[%dB:\ + :SR=\E[%dT\E[%dA:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\Ec:cm=\E[%i%d;%dH:\ + :cr=^M:do=\E[B:ec=\E[%dX:ho=\E[H:k1=\240:k2=\241:k3=\242:\ + :k4=\243:k5=\244:k6=\245:k7=\246:k8=\247:k9=\250:k;=\251:\ + :kB=^]:kD=\177:kI=\E[^H:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:\ + :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:ll=\E[24;1H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mk=\E[30;40m:mr=\E[7m:nd=\E[C:\ + :nw=^M:se=\E[m:sf=\E[S\E[B:so=\E[7m:sr=\E[T\E[A:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### Apple II +# +# Apple II firmware console first, then various 80-column cards and +# terminal emulators. For two cents I'd toss all these in the UFO file +# along with the 40-column apple entries. +# + +# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL +# 'it#8' tells UNIX that you have tabs every 8 columns. This is a +# function of TIC, not the firmware. +# The clear key on a IIgs will do something like clear-screen, +# depending on what you're in. +appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface:\ + :am:bs:bw:eo:ms:\ + :co#80:it#8:li#24:\ + :bl=^G:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :cr=^M:do=^J:ho=^Y:\ + :kC=^X:kD=\177:kb=^H:kd=^J:kl=^H:kr=^U:ku=^K:le=^H:nd=^\:\ + :nw=^M^W:se=^N:sf=^W:so=^O:sr=^V:ta=^I:up=^_: +# Apple //e with 80-column card, entry from BRL +# The modem interface is permitted to discard LF (maybe DC1), otherwise +# passing characters to the 80-column firmware via COUT (PR#3 assumed). +# Auto-wrap does not work right due to newline scrolling delay, which also +# requires that you set "stty cr2". +# Note: Cursor addressing is only available via the Pascal V1.1 entry, +# not via the BASIC PR#3 hook. All this nonsense can be avoided only by +# using a terminal emulation program instead of the built-in firmware. +apple2e|Apple //e:\ + :bw:ms:\ + :co#80:li#24:\ + :bl=^G:cd=4*\013:ce=4\035:cl=100\014:do=^J:ho=^Y:is=^R^N:\ + :kb=^H:kd=^J:kl=^H:kr=^U:ku=^K:le=^H:me=^N:mr=^O:nw=100\r:\ + :r1=^R^N:se=^N:sf=^W:so=^O:sr=^V:ta=^I:up=^_: +# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro +# 4.20, with incoming and outgoing terminals both on 0, emulation On. +apple2e-p|Apple //e via Pascal:\ + :cm=\036%r%+ %+ :kb=^H:kd=^J:kl=^H:tc=apple2e: +# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL +# Enable DC3/DC1 flow control with "stty ixon -ixany". +apple-ae|ASCII Express:\ + :am:bs:bw:ms:nx:xo:\ + :co#80:it#8:li#24:\ + :bl=500\007:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :cr=^M:do=^J:\ + :ho=^Y:is=^R^N:kC=^X:kd=^J:kl=^H:kr=^U:ku=^K:le=^H:me=^N:\ + :mr=^O:nd=^U:r1=^R^N:se=^N:sf=^W:so=^O:sr=^V:up=^_: +appleII|apple ii plus:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :do=^J:ho=\E^Y:\ + :is=\024T1\016:kd=^J:kr=^U:le=^H:me=^N:nd=^\:se=^N:so=^O:\ + :ta=^I:up=^_:vb=\024G1\024T1:ve=^TC2:vs=^TC6: +# Originally by Gary Ford 21NOV83 +# From: <ee178aci%sdcc7@SDCSVAX.ARPA> Fri Oct 11 21:27:00 1985 +apple-80|apple II with smarterm 80 col:\ + :am:bs:bw:\ + :co#80:li#24:\ + :bt=^R:cd=10*\013:ce=10\035:cl=10*\014:cm=\036%r%+ %+ :\ + :cr=10*\r:do=^J:ho=^Y:le=^H:nd=^\:up=^_: +apple-soroc|apple emulating soroc 120:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=\EY:ce=\ET:cl=300\E*:cm=\E=%+ %+ :cr=^M:do=^J:\ + :ho=^^:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:sf=^J:up=^K: +# From Peter Harrison, Computer Graphics Lab, San Francisco +# ucbvax!ucsfmis!harrison .....uucp +# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA +# "These two work. If you don't have the inverse video chip for the +# Apple with videx then remove the :so: and :se: fields." +# (apple-videx: this used to be called DaleApple -- esr) +apple-videx|Apple with videx videoterm 80 column board with inverse video:\ + :am:bs:xn:\ + :co#80:it#8:li#24:\ + :cd=^K:ce=^]:cl=300\014:cm=\036%r%+ %+ :do=^J:ho=^Y:kd=^J:\ + :kh=^Y:kl=^H:kr=^U:le=^H:me=^Z2:nd=^\:se=^Z2:so=^Z3:ta=^I:\ + :up=^_: +# My system [for reference] : Apple ][+, 64K, Ultraterm display card, +# Apple Cat ][ 212 modem, + more all +# controlled by ASCII Express: Pro. +# From Dave Shaver <isucs1!shaver> +apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell:\ + :am:bs:eo:xt:\ + :co#80:li#24:\ + :ac=:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :ho=^Y:\ + :is=^V4^W06\017\rVisible Bell Installed.\016\r\n:\ + :nd=^\:se=^N:so=^O:up=^_:vb=^W35^W06: +apple-uterm|Ultraterm for Apple micros:\ + :am:bs:eo:xt:\ + :co#80:li#24:\ + :ac=:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :ho=^Y:\ + :is=^V4^W06\016:nd=^\:se=^N:so=^O:up=^_: +# from trwrba!bwong (Bradley W. Wong): +# +# This entry assumes that you are using an apple with the UCSD Pascal +# language card. SYSTEM.MISCINFO is assumed to be the same as that +# supplied with the standard apple except that screenwidth should be set +# using SETUP to 80 columns. Note that the right arrow is not mapped in +# this termcap entry. This is because that key, on the Apple, transmits +# a ^U and would thus preempt the more useful "up" function of vi. +# +# HMH 2/23/81 +apple80p|80-column apple with Pascal card:\ + :am:bw:\ + :co#80:li#24:\ + :cd=^K:ce=^]:cl=^Y^L:cm=\036%r%+ %+ :ho=^Y:kl=^H:nd=^\\072:\ + :up=^_: +# +# Apple II+ equipped with Videx 80 column card +# +# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL; +# manually converted by D A Gwyn +# +# DO NOT use any terminal emulation with this data base, it works directly +# with the Videx card. This has been tested with vi 1200 baud and works fine. +# +# This works great for vi, except I've noticed in pre-R2, ^U will scroll back +# 1 screen, while in R2 ^U doesn't. +# For inverse alternate character set add: +# :as:=^O::ae:=^N: +# (apple-v: added it#8 -- esr) +apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520):\ + :am:xn:\ + :co#80:it#8:li#24:\ + :bl=100\007:cd=16*\013:ce=^]:cl=16*\014:cm=\036%r%+ %+ :\ + :cr=^M:do=^J:ho=^Y:kb=^H:kd=^J:kh=^Y:kl=^H:kr=^\:ku=^_:le=^H:\ + :nd=^\:se=^Z2:sf=^J:so=^Z3:ta=8\011:up=^_: +apple-videx3|vapple|Apple II with 80 col card:\ + :am:bs:\ + :co#80:li#24:\ + :ce=\Ex:cl=\Ev:cm=\EY%+ %+ :do=\EB:ho=\EH:k0=\EP:k1=\EQ:\ + :k2=\ER:k3=\E\040:k4=\E!:k5=\E":k6=\E#:k7=\E$:k8=\E%%:\ + :k9=\E&:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=\ED:nd=\EC:\ + :up=\EA: +#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL +aepro|Apple II+ running ASCII Express Pro--vt52:\ + :bs:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=300\014:cm=\EY%+ %+ :do=\EB:ho=\EH:\ + :le=\ED:nd=\EC:up=\EA: +# UCSD addition: Yet another termcap from Brian Kantor's Micro Munger Factory +apple-vm80|ap-vm80|apple with viewmax-80:\ + :bs:\ + :co#80:li#24:\ + :cd=300\013:ce=^]:cl=300\014:cm=100\036%+ %+ :ho=200\031:\ + :nd=^\\072:up=^_: + +#### Apple Lisa & Macintosh +# + +# (lisa: changed :vs: to :ve: -- esr) +lisa|apple lisa console display (black on white):\ + :am:bs:eo:ms:\ + :co#88:it#8:li#32:\ + :ac=jdkclfmenbqattuvvuwsx`:ae=\E[10m:al=\E[L:as=\E[11m:\ + :cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:\ + :do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:is=\E>\E[m\014:kb=^H:\ + :kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:nd=\E[C:\ + :se=\E[m:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[5l:\ + :vi=\E[5h: +liswb|apple lisa console display (white on black):\ + :is=\E>\E[0;7m\014:se=\E[0;7m:so=\E[m:ue=\E[0;7m:\ + :us=\E[4m:tc=lisa: + +# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL; +# :is: revised by Ferd Brundick <fsbrn@BRL.ARPA> +# +# These entries assume that the 'Auto Wraparound' is enabled. +# Xon-Xoff flow control should also be enabled. +# +# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab +# settings are in non-volatile memory and don't need to be reset upon login. +# Also setting the number of columns glitches the screen annoyingly. +# You can type "reset" to get them set. +# +lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation:\ + :am:bs:pt:xn:xo:\ + :co#80:it#8:kn#4:li#24:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bl=^G:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:do=^J:ho=\E[H:k0=\EOP:k1=\EOQ:\ + :k2=\EOR:k3=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l0=F1:l1=F2:l2=F3:l3=F4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :r1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r:\ + :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: +# Lisaterm in 132 column ("wide") mode. +lisaterm-w|Apple Lisa with Lisaterm in 132 column mode:\ + :co#132:\ + :kb=^H:kd=^J:kl=^H:tc=lisaterm: +# Although MacTerminal has insert/delete line, it is commented out here +# since it is much faster and cleaner to use the "lock scrolling region" +# method of inserting and deleting lines due to the MacTerminal implementation. +# Also, the "Insert/delete ch" strings have an extra character appended to them +# due to a bug in MacTerminal V1.1. Blink is disabled since it is not +# supported by MacTerminal. +mac|macintosh|Macintosh with MacTerminal:\ + :xn:\ + :dN#30:\ + :dc=7\E[P:ei=:ic=9\E[@:im=:ip=7:mb@:tc=lisa: +# Lisaterm in 132 column ("wide") mode. +mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode:\ + :co#132:tc=mac: + +# nsterm*|Apple_Terminal - AppKit Terminal.app +# +# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and +# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X +# Server and Mac OS X operating systems. There is also a +# "terminal.app" in GNUStep, but I believe it to be an unrelated +# codebase and I have not attempted to describe it here. +# +# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you +# are pretty much on your own. Use "nsterm-7-m" and hope for the best. +# You might also try "nsterm-7" and "nsterm-old" if you suspect your +# version supports color. +# +# To determine the version of Terminal.app you're using by running: +# +# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION" +# +# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm") +# +# For Apple_Terminal v71+/v100+, use "nsterm-bce". +# +# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s". +# +# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s". +# +# For all earlier versions (Apple_Terminal), try "nsterm-7-m" +# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s" +# might work too, but really you're on your own here since these +# systems are very obsolete and I can't test them. I do welcome +# patches, though :). + +# Other Terminals: +# +# For GNUstep_Terminal, you're probably best off using "linux" or +# writing your own terminfo. + +# For MacTelnet, you're on your own. It's a different codebase, and +# seems to be somewhere between "vt102", "ncsa" and "xterm-color". + +# For iTerm.app, see "iterm". + +# +# The AppKit Terminal.app descriptions all have names beginning with +# "nsterm". Note that the statusline (-s) versions use the window +# titlebar as a phony status line, and may produce warnings during +# compilation as a result ("tsl uses 0 parameters, expected 1".) +# Ignore these warnings, or even ignore these entries entirely. Apps +# which need to position the cursor or do other fancy stuff inside the +# status line won't work with these entries. They're primarily useful +# for programs like Pine which provide simple notifications in the +# status line. Please note that non-ASCII characters don't work right +# in the status line, since Terminal.app incorrectly interprets their +# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X +# versions) or only accepts status lines consisting entirely of +# characters from the first 256 Unicode positions (including C1 but +# not C0 or DEL.) +# +# The Mythology* of AppKit Terminal.app: +# +# In the days of NeXTSTep 0.x and 1.x there were two incompatible +# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a +# shareware replacement for Terminal called "Stuart" which NeXT bought +# and used as the basis for the Terminal.app in NeXTstep 2+, +# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I +# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or +# capabilities for the early versions, but I believe that the +# TERM_PROGRAM_VERSION may have been reset at some point. +# +# The early versions were tailored to the NeXT character set. Sometime +# after the Apple aquisition the encoding was swiched to MacRoman +# (initally with serious altcharset bugs due to incomplete conversion +# of the old NeXT code,) and then later to UTF-8. Alos sometime during +# or just prior to the early days of Mac OS X, the Terminal grew ANSI +# 8-color support (initially buggy when combined with attributes, but +# that was later fixed.) More recently, around Mac OS X version 10.3 +# or so (Terminal.app v100+) xterm-like 16-color support was added. In +# some versions (for instance 133-1 which shipped with Mac OS X +# version 10.4) this suffered from the <bce> bug, but that seems to +# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+). +# +# In the early days of Mac OS X the terminal was fairly buggy and +# would routinely crash under load. Many of these bugs seem to have +# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but +# some may still remain. This change seems to correspond to +# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as +# it did previously. +# +# * This may correspond with what actually happened, but I don't +# know. It is based on guesswork, hearsay, private correspondence, +# my faulty memory, and the following online sources and references: +# +# [1] "Three Scotts and a Duane" by Simson L. Garfinkel +# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html +# +# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia +# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep +# +# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to +# "nsterm" to comply with the name length and case conventions and +# limitations of various software packages [notably Solaris terminfo +# and UNIX.] A single Apple_Terminal alias is retained for +# backwards-compatbility. +# +# * Added function key support (F1-F4). These only work in Terminal.app +# version 51, hopefully the capabilities won't cause problems for people +# using version 41. +# +# * Added "full color" (-c) entries which support the 16-color mode in +# version 51. +# +# * By default, version 51 uses UTF-8 encoding with broken altcharset +# support, so "ASCII" (-7) entries without altcharset support were +# added. + +# nsterm - AppKit Terminal.app +# +# Apple's Mac OS X includes a Terminal.app derived from the old NeXT +# Terminal.app. It is a partial VT100 emulation with some xterm-like +# extensions. This terminfo was written to describe versions 41 +# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X +# version 10.1) of Terminal.app. +# +# Terminal.app runs under the Mac OS X Quartz windowing system (and +# other AppKit-supported windowing systems.) On the Mac OS X machine I +# use, the executable for Terminal.app is: +# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal +# +# If you're looking for a description of the full-screen system +# console which runs under Apple's Darwin operating system on PowerPC +# platforms, see the "xnuppc" entry instead. +# +# There were no function keys in version 41. In version 51, there are +# four working function keys (F1, F2, F3 and F4.) The function keys +# are included in all of these entries. +# +# It does not support mouse pointer position reporting. Under some +# circumstances the cursor can be positioned using option-click; this +# works by comparing the cursor position and the selected position, +# and simulating enough cursor-key presses to move the cursor to the +# selected position. This technique fails in all but the simplest +# applications. +# +# It provides partial ANSI color support (background colors interacted +# badly with bold in version 41, though, as reflected in :ncv:.) The +# monochrome (-m) entries are useful if you've disabled color support +# or use a monochrome monitor. The full color (-c) entries are useful +# in version 51, which doesn't exhibit the background color bug. They +# also enable an xterm-compatible 16-color mode. +# +# The configurable titlebar is set using xterm-compatible sequences; +# it is used as a status bar in the statusline (-s) entries. Its width +# depends on font sizes and window sizes, but 50 characters seems to +# be the default for an 80x24 window. +# +# The MacRoman character encoding is used for some of the alternate +# characters in the "MacRoman" entries; the "ASCII" (-7) entries +# disable alternate character set support entirely, and the "VT100" +# (-acs) entries rely instead on Terminal.app's own buggy VT100 +# graphics emulation, which seems to think the character encoding is +# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries +# are useful in Terminal.app version 51, which supports UTF-8 and +# other ASCII-compatible character encodings but does not correctly +# implement VT100 graphics; once VT100 graphics are correctly +# implemented in Terminal.app, the "VT100" (-acs) entries should be +# usable in any ASCII-compatible character encoding [except perhaps +# in UTF-8, where some experts argue for disallowing alternate +# characters entirely.] +# +# Terminal.app reports "vt100" as the terminal type, but exports +# several environment variables which may aid detection in a shell +# profile (i.e. .profile or .login): +# +# TERM=vt100 +# TERM_PROGRAM=Apple_Terminal +# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41 +# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51 +# +# For example, the following Bourne shell script would detect the +# correct terminal type: +# +# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ] +# then +# export TERM +# if [ :"$TERM_PROGRAM_VERSION" = :41 ] +# then +# TERM="nsterm-old" +# else +# TERM="nsterm-c-7" +# fi +# fi +# +# In a C shell derivative, this would be accomplished by: +# +# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then +# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then +# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then +# setenv TERM "nsterm-old" +# else +# setenv TERM "nsterm-c-7" +# endif +# endif +# endif + +# The '+' entries are building blocks +nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset:\ + :am:bw:ms:xn:xo:\ + :co#80:it#8:li#24:\ + :@8=\EOM:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:al=\E[L:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dl=\E[M:do=^J:ho=\E[H:\ + :kb=\177:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\ + :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[m:\ + :sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m:tc=vt100+enq:tc=vt100+pfkeys: + +nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:eA=\E(B\E)0:me=\E[0m:tc=nsterm+7: + +nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset:\ + :ac=+\335,\334-\366.\3770#`\327a\072f\241g\261h#i\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{\271|\255}\243~\245:\ + :ae=^O:as=^N:eA=\E(B\E)0:me=\E[0m:tc=nsterm+7: + +nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support:\ + :hs:\ + :ws#50:\ + :ds=\E]2;\007:fs=^G:ts=\E]2;: + +nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors):\ + :op=\E[0m:tc=ibm+16color: + +nsterm+c41|AppKit Terminal.app v41 color support:\ + :Co#8:NC#37:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[0m: + +# These are different combinations of the building blocks + +# ASCII charset (-7) +nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome):\ + :tc=nsterm+7: + +nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline):\ + :tc=nsterm+s:tc=nsterm+7: + +nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color):\ + :tc=nsterm+c41:tc=nsterm+7: + +nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color):\ + :tc=nsterm+c:tc=nsterm+7: + +nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c41:tc=nsterm+7: + +nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c:tc=nsterm+7: + +# VT100 alternate-charset (-acs) +nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome):\ + :tc=nsterm+acs: + +nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline):\ + :tc=nsterm+s:tc=nsterm+acs: + +nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color):\ + :tc=nsterm+c41:tc=nsterm+acs: + +nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color):\ + :tc=nsterm+c:tc=nsterm+acs: + +nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c41:tc=nsterm+acs: + +nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c:tc=nsterm+acs: + +# MacRoman charset +nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome):\ + :tc=nsterm+mac: + +nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline):\ + :tc=nsterm+s:tc=nsterm+mac: + +nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color):\ + :tc=nsterm+c41:tc=nsterm+mac: + +nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color):\ + :tc=nsterm+c:tc=nsterm+mac: + +nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c41:tc=nsterm+mac: + +nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline):\ + :tc=nsterm+s:tc=nsterm+c:tc=nsterm+mac: + +# In Mac OS X version 10.5 the format of the preferences has changed +# and a new, more complex technique is needed, e.g., +# +# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass( +# "NSUserDefaults");ud=NSUserDefaults.alloc(); +# ud.init();prefs=ud.persistentDomainForName_( +# "com.apple.Terminal");prefs["Window Settings"][ +# prefs["Default Window Settings"]]["TerminalType" +# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs, +# "com.apple.Terminal")' nsterm-16color +# +# and it is still not settable from the preferences dialog. This is +# tracked under rdar://problem/7365108 and rdar://problem/7365134 +# in Apple's bug reporter. +nsterm-16color|AppKit Terminal.app v240.2+ with Mac OS X version 10.5:\ + :NP:bw@:mi:\ + :@7=\E[F:DC=\E[%dP:F1=\E[23~:F2=\E[24~:F3=\E[25~:\ + :F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[22~:\ + :F9=\E[33~:FA=\E[34~:IC=\E[%d@:ch=\E[%i%dG:cv=\E[%i%dd:\ + :dc=\E[P:ei=\E[4l:ic=\E[@:im=\E[4h:k5=\E[15~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:\ + :kN=\E[6~:kP=\E[5~:kh=\E[H:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :tc=nsterm-c-s-acs: + +# The versions of Terminal.app in Mac OS X version 10.3.x seem to have +# the background color erase bug. The newer version 240.2 in Mac OS X +# version 10.5 does not. +# +# This entry is based on newsgroup comments by Alain Bench, Christian Ebert, +# and D P Schreber comparing to nsterm-c-s-acs. +# +# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM +# can be set in Terminal.app, e.g., +# +# defaults write com.apple.Terminal TermCapString nsterm-bce +# +# and that it is not set in Terminal's preferences dialog. +nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce):\ + :bw:ut:tc=nsterm-16color: + +# This is an alias which should always point to the "current" version +nsterm|Apple_Terminal|AppKit Terminal.app:\ + :tc=nsterm-16color: + +# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and +# more featureful) terminal emulator for Mac OS X. It is similar +# enough in capabilities to nsterm-16color that I have derived this +# description from that one, but as far as I know they share no code. +# Many of the features are user-configurable, but I attempt only to +# describe the default configuration. +# +# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is +# disabled. +iTerm.app|iTerm.app terminal emulator for Mac OS X:\ + :bw@:cc@:ut:\ + :@7=\EOF:Ic@:cs@:kh=\EOH:tc=xterm+256color:\ + :tc=nsterm-16color: + +# xnuppc - Darwin PowerPC Console (a.k.a. "darwin") +# +# On PowerPC platforms, Apple's Darwin operating system uses a +# full-screen system console derived from a NetBSD framebuffer +# console. It is an ANSI-style terminal, and is not really VT-100 +# compatible. +# +# Under Mac OS X, this is the system console driver used while in +# single-user mode [reachable by holding down Command-S during the +# boot process] and when logged in using console mode [reachable by +# typing ">console" at the graphical login prompt.] +# +# If you're looking for a description of the Terminal.app terminal +# emulator which runs under the Mac OS X Quartz windowing system (and +# other AppKit-supported windowing systems,) see the "nsterm" +# entry instead. +# +# NOTE: Under Mac OS X version 10.1, the default login window does not +# prompt for user name, instead requiring an icon to be selected from +# a list of known users. Since the special ">console" login is not in +# this list, you must make one of two changes in the Login Window +# panel of the Login section of System Prefs to make the special +# ">console" login accessible. The first option is to enable 'Show +# "Other User" in list for network users', which will add a special +# "Other..." icon to the graphical login panel. Selecting "Other..." +# will present the regular graphical login prompt. The second option +# is to change the 'Display Login Window as:' setting to 'Name and +# password entry fields', which replaces the login panel with a +# graphical login prompt. +# +# There are no function keys, at least not in Darwin 1.3. +# +# It has no mouse support. +# +# It has full ANSI color support, and color combines correctly with +# all three supported attributes: bold, inverse-video and underline. +# However, bold colored text is almost unreadable (bolding is +# accomplished using shifting and or-ing, and looks smeared) so bold +# has been excluded from the list of color-compatible attributes +# [using (ncv)]. The monochrome entry (-m) is useful if you use a +# monochrome monitor. +# +# There is one serious bug with this terminal emulation's color +# support: repositioning the cursor onto a cell with non-matching +# colors obliterates that cell's contents, replacing it with a blank +# and displaying a colored cursor in the "current" colors. There is +# no complete workaround at present [other than using the monochrome +# (-m) entries,] but removing the (msgr) capability seemed to help. +# +# The "standout" chosen was simple reverse-video, although a colorful +# standout might be more aesthetically pleasing. Similarly, the bold +# chosen is the terminal's own smeared bold, although a simple +# color-change might be more readable. The color-bold (-b) entries +# uses magenta colored text for bolding instead. The fancy color (-f +# and -f2) entries use color for bold, standout and underlined text +# (underlined text is still underlined, though.) +# +# Apparently the terminal emulator does support a VT-100-style +# alternate character set, but all the alternate character set +# positions have been left blank in the font. For this reason, no +# alternate character set capabilities have been included in this +# description. The console driver appears to be ASCII-only, so (enacs) +# has been excluded [although the VT-100 sequence does work.] +# +# The default Mac OS X and Darwin installation reports "vt100" as the +# terminal type, and exports no helpful environment variables. To fix +# this, change the "console" entry in /etc/ttys from "vt100" to +# "xnuppc-WxH", where W and H are the character dimensions of your +# console (see below.) +# +# The font used by the terminal emulator is apparently one originally +# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This +# file includes descriptions for the following geometries: +# +# Pixels Characters Entry Name (append -m for monochrome) +# ------------------------------------------------------------------- +# 640x400 80x25 xnuppc-80x25 +# 640x480 80x30 xnuppc-80x30 +# 720x480 90x30 xnuppc-90x30 +# 800x600 100x37 xnuppc-100x37 +# 896x600 112x37 xnuppc-112x37 +# 1024x640 128x40 xnuppc-128x40 +# 1024x768 128x48 xnuppc-128x48 +# 1152x768 144x48 xnuppc-144x48 +# 1280x1024 160x64 xnuppc-160x64 +# 1600x1024 200x64 xnuppc-200x64 +# 1600x1200 200x75 xnuppc-200x75 +# 2048x1536 256x96 xnuppc-256x96 +# +# The basic "xnuppc" entry includes no size information, and the +# emulator includes no reporting capability, so you'll be at the mercy +# of the TTY device (which reports incorrectly on my hardware.) The +# color-bold entries do not include size information. + +# The '+' entries are building blocks +xnuppc+basic|Darwin PowerPC Console basic capabilities:\ + :am:mi:ut:xn:\ + :it#8:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=\E[B:\ + :ds=\E]2;\007:ho=\E[H:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=\E[D:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[m:\ + :sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m:tc=vt100+keypad: + +xnuppc+c|Darwin PowerPC Console ANSI color support:\ + :Co#8:NC#32:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:op=\E[37;40m: + +xnuppc+b|Darwin PowerPC Console color-bold support:\ + :NC#32:\ + :md=\E[35m:tc=xnuppc+basic: + +xnuppc+f|Darwin PowerPC Console fancy color support:\ + :NC#35:\ + :so=\E[33;44m:us=\E[36;4m:tc=xnuppc+b: + +xnuppc+f2|Darwin PowerPC Console alternate fancy color support:\ + :NC#35:\ + :md=\E[33m:so=\E[31;47m:us=\E[34m:tc=xnuppc+basic: + +# Building blocks for specific screen sizes +xnuppc+80x25|Darwin PowerPC Console 80x25 support (640x400 pixels):\ + :co#80:li#25: + +xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels):\ + :co#80:li#30: + +xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels):\ + :co#90:li#30: + +xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels):\ + :co#100:li#37: + +xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels):\ + :co#112:li#37: + +xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels):\ + :co#128:li#40: + +xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels):\ + :co#128:li#48: + +xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels):\ + :co#144:li#48: + +xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels):\ + :co#160:li#64: + +xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels):\ + :co#200:li#64: + +xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels):\ + :co#200:li#75: + +xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels):\ + :co#256:li#96: + +# These are different combinations of the building blocks + +xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome):\ + :tc=xnuppc+basic: + +xnuppc|darwin|Darwin PowerPC Console (color):\ + :tc=xnuppc+c:tc=xnuppc+basic: + +xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold):\ + :tc=xnuppc+b: + +xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold):\ + :tc=xnuppc+b:tc=xnuppc+c: + +xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome):\ + :tc=xnuppc+f: + +xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color):\ + :tc=xnuppc+f:tc=xnuppc+c: + +xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome):\ + :tc=xnuppc+f2: + +xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color):\ + :tc=xnuppc+f2:tc=xnuppc+c: + +# Combinations for specific screen sizes +xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25:\ + :tc=xnuppc+80x25:tc=xnuppc+basic: + +xnuppc-80x25|darwin-80x25|Darwin PowerPC Console (color) 80x25:\ + :tc=xnuppc+c:tc=xnuppc+80x25:tc=xnuppc+basic: + +xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC Console (monochrome) 80x30:\ + :tc=xnuppc+80x30:tc=xnuppc+basic: + +xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30:\ + :tc=xnuppc+c:tc=xnuppc+80x30:tc=xnuppc+basic: + +xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30:\ + :tc=xnuppc+90x30:tc=xnuppc+basic: + +xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30:\ + :tc=xnuppc+c:tc=xnuppc+90x30:tc=xnuppc+basic: + +xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37:\ + :tc=xnuppc+100x37:tc=xnuppc+basic: + +xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37:\ + :tc=xnuppc+c:tc=xnuppc+100x37:tc=xnuppc+basic: + +xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37:\ + :tc=xnuppc+112x37:tc=xnuppc+basic: + +xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37:\ + :tc=xnuppc+c:tc=xnuppc+112x37:tc=xnuppc+basic: + +xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40:\ + :tc=xnuppc+128x40:tc=xnuppc+basic: + +xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40:\ + :tc=xnuppc+c:tc=xnuppc+128x40:tc=xnuppc+basic: + +xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48:\ + :tc=xnuppc+128x48:tc=xnuppc+basic: + +xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48:\ + :tc=xnuppc+c:tc=xnuppc+128x48:tc=xnuppc+basic: + +xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48:\ + :tc=xnuppc+144x48:tc=xnuppc+basic: + +xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48:\ + :tc=xnuppc+c:tc=xnuppc+144x48:tc=xnuppc+basic: + +xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64:\ + :tc=xnuppc+160x64:tc=xnuppc+basic: + +xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64:\ + :tc=xnuppc+c:tc=xnuppc+160x64:tc=xnuppc+basic: + +xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64:\ + :tc=xnuppc+200x64:tc=xnuppc+basic: + +xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64:\ + :tc=xnuppc+c:tc=xnuppc+200x64:tc=xnuppc+basic: + +xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75:\ + :tc=xnuppc+200x75:tc=xnuppc+basic: + +xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75:\ + :tc=xnuppc+c:tc=xnuppc+200x75:tc=xnuppc+basic: + +xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96:\ + :tc=xnuppc+256x96:tc=xnuppc+basic: + +xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96:\ + :tc=xnuppc+c:tc=xnuppc+256x96:tc=xnuppc+basic: + +#### Radio Shack/Tandy +# + +# (coco3: This had "ta" used incorrectly as a boolean and bl given as "bl#7". +# I read these as mistakes for ":it#8:" and ":bl=\007:" respectively -- esr) +# From: <{pbrown,ctl}@ocf.berkeley.edu> 12 Mar 90 +coco3|os9LII|Tandy CoCo3 24*80 OS9 Level II:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :al=^_0:bl=^G:cd=^K:ce=^D:cl=5*\014:cm=2\002%r%+ %+ :\ + :dl=^_1:do=^J:ho=^A:kd=^J:kl=^H:kr=^I:ku=^L:le=^H:mb=^_":\ + :md=\E\072^A:me=\037!\E\072\200:mr=^_\040:nd=^F:se=^_!:\ + :so=^_\040:ue=^_#:up=^I:us=^_":ve=^E!:vi=^E\040: +# (trs2: removed obsolete ":nl=^_:" -- esr) +trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M:\ + :am:bs:ms:\ + :co#80:it#8:li#24:\ + :al=^D:bl=^G:cd=^B:ce=^A:cl=^L:cm=\EY%+ %+ :cr=^M:dl=^K:\ + :do=^_:ho=^F:kb=^H:kd=^_:kl=^\:kr=^]:ku=^^:le=^H:me=^O:nd=^]:\ + :se=^O:sf=^J:so=^N:ta=^I:up=^^: +# From: Kevin Braunsdorf <ksb@mentor.cc.purdue.edu> +# (This had extension capabilities +# :BN=\E[?33h:BF=\E[?33l:UC=\E[_ q:BC=\E[\177 q:\ +# :CN=\ERC:CF=\ERc:NR=\ERD:NM=\ER@: +# I also deleted the unnecessary ":kn#2:", ":sg#0:" -- esr) +trs16|trs-80 model 16 console:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :ac=jak`l_mbquvewcxs:ae=\ERg:al=\EL:as=\ERG:bl=^G:cd=\EJ:\ + :ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dc=\EQ:dl=\EM:do=\EB:ei=:\ + :ho=\EH:ic=\EP:im=:k0=^A:k1=^B:k2=^D:k3=^L:k4=^U:k5=^P:k6=^N:\ + :k7=^S:kb=^H:kd=\EB:kh=^W:kl=\ED:kr=\EC:ku=\EA:l0=f1:l1=f2:\ + :l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:me=\ER@:nd=\EC:\ + :pf=\E]+:po=\E]=:se=\ER@:sf=^J:so=\ERD:ta=^I:up=\EA:ve=\ERC:\ + :vi=\ERc: + +#### Commodore Business Machines +# +# Formerly located in West Chester, PA; went spectacularly bust in 1994 +# after years of shaky engineering and egregious mismanagement. Made one +# really nice machine (the Amiga) and boatloads of nasty ones (PET, C-64, +# C-128, VIC-20). The C-64 is said to have been the most popular machine +# ever (most units sold); they can still be found gathering dust in closets +# everywhere. +# + +# From: Kent Polk <kent@swrinde.nde.swri.edu>, 30 May 90 +# Added a few more entries, converted caret-type control sequence (^x) entries +# to '\0xx' entries since a couple of people mentioned losing '^x' sequences. +# Corrections by Ty Sarna <tsarna@endicor.com>, Sat Feb 28 18:55:15 1998 +# +# :as:, :ae: Support for alternate character sets. +# :ve=\E[\040p:vi=\E[\060\040p: cursor visible/invisible. +# :xn: vt100 kludginess at column 80/NEWLINE ignore after 80 cols(Concept) +# This one appears to fix a problem I always had with a line ending +# at 'width+1' (I think) followed by a blank line in vi. The blank +# line tended to disappear and reappear depending on how the screen +# was refreshed. Note that this is probably needed only if you use +# something like a Dnet Fterm with the window sized to some peculiar +# dimension larger than 80 columns. +# :k0=\E9~: map F10 to k0 - could have F0-9 -> k0-9, but ... F10 was 'k;' +# (amiga: removed obsolete :kn#10:, +# also added empty <acsc> to suppress a warning --esr) +amiga|Amiga ANSI:\ + :am:bs:bw:xn:\ + :co#80:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ac=:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:ic=\E[@:im=:is=\E[20l:k0=\E[9~:k1=\E[0~:k2=\E[1~:\ + :k3=\E[2~:k4=\E[3~:k5=\E[4~:k6=\E[5~:k7=\E[6~:k8=\E[7~:\ + :k9=\E[8~:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :mb=\E[7;2m:md=\E[1m:me=\E[m:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:r1=\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:\ + :up=\E[A:us=\E[4m:ve=\E[ p:vi=\E[0 p: + +# From: Hans Verkuil <hans@wyst.hobby.nl>, 4 Dec 1995 +# (amiga: added empty <acsc> to suppress a warning. +# I'm told this entry screws up badly with AS225, the Amiga +# TCP/IP package once from Commodore, and now sold by InterWorks.--esr) +amiga-h|Hans Verkuil's Amiga ANSI:\ + :bs:bw:ms:\ + :co#80:li#24:\ + :DC=\233%dP:DO=\233%dB:IC=\233%d@:LE=\233%dD:RI=\233%dC:\ + :SF=\233%dS:SR=\233%dT:UP=\233%dA:ac=:ae=^O:as=^N:bl=^G:\ + :bt=\233Z:cd=\233J:ce=\233K:cl=\233H\233J:\ + :cm=\233%i%d;%dH:cr=^M:dc=\233P:do=\233B:ec=\233%dP:ei=:\ + :ho=\233H:ic=\233@:im=:is=\23320l:k0=\2339~:k1=\2330~:\ + :k2=\2331~:k3=\2332~:k4=\2333~:k5=\2334~:k6=\2335~:\ + :k7=\2336~:k8=\2337~:k9=\2338~:kD=\177:kb=^H:kd=\233B:\ + :kl=\233D:kr=\233C:ku=\233A:le=\233D:mb=\2337;2m:\ + :md=\2331m:me=\2330m:mh=\2332m:mk=\2338m:mr=\2337m:\ + :nd=\233C:nw=\233B\r:r1=\Ec:se=\2330m:sf=\233S:so=\2337m:\ + :sr=\233T:ta=^I:te=\233?7h:ti=\233?7l:ue=\2330m:up=\233A:\ + :us=\2334m:vb=^G:ve=\233 p:vi=\2330 p: + +# From: Henning 'Faroul' Peters <Faroul@beyond.kn-bremen.de>, 25 Sep 1999 +# +# Pavel Fedin added +# Home Shift+Left +# End Shift+Right +# PgUp Shift+Up +# PgDn Shift+Down +amiga-8bit|Amiga ANSI using 8-bit controls:\ + :@7=\233 @:AL=\233%dL:DL=\233%dM:SF@:SR@:ac=:al=\233L:\ + :dl=\233M:kN=\233S:kP=\233T:kh=\233 A:sf=\204:sr=\215:\ + :tc=amiga-h: + +# From: Ruediger Kuhlmann <terminfo@ruediger-kuhlmann.de>, 18 Jul 2000 +# requires use of appropriate preferences settings. +amiga-vnc|Amiga using VNC console (black on light gray):\ + :ND:am:da:db:ms:\ + :BT#1:Co#16:NC#0:co#80:li#24:lm#0:pa#256:\ + :%1=\E[?~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :IC=\E[%d@:Km=\E[M:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:al=\E[1L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:\ + :dl=\E[1M:do=\E[B:ei=:ic=\E[@:im=:\ + :is=\E[>?2;18l\E[>?26;?6;20;>?15;?7;>?22;>?8h:\ + :k0=\E[9~:k1=\E[0~:k2=\E[1~:k3=\E[2~:k4=\E[3~:k5=\E[4~:\ + :k6=\E[5~:k7=\E[6~:k8=\E[7~:k9=\E[8~:kB=\233Z:kD=\177:\ + :kH=\E[45~:kN=\E[42~:kP=\E[41~:kb=^H:kd=\E[B:ke=\E[?1l:\ + :kh=\E[44~:kl=\E[D:kr=\E[C:ks=\E[?1h:ku=\E[A:le=\E[D:\ + :mb=\E[7;2m:md=\E[1m:me=\E[0m\017\E[30;85;>15m:mh=\E[2m:\ + :mk=\E8m:mr=\E[7m:nd=\E[C:nw=\EE:oc=\E[0m:r1=\Ec:\ + :r2=\E[>?2;18l\E[>?26;?6;20;>?15;?7;>?22;>?8h:\ + :se=\E[21m:sf=\ED:so=\E[1m:sr=\EM:te=\E[?7h\E[r\E[J:\ + :ti=\E[?7h:ue=\E[24m:up=\E[A:us=\E[4m:vb=^G:\ + :ve=\E[p\E[>?6l:vi=\E[0p:vs=\E[>?6h: + +# MorphOS on Genesi Pegasos +# By Pavel Fedin <sonic_amiga@rambler.ru> +morphos:\ + :@7=\23345~:AL=\233%dL:DL=\233%dM:F1=\23320~:F2=\23321~:\ + :SF@:SR@:ac=:al=\233L:dl=\233M:kI=\23340~:kN=\23342~:\ + :kP=\23341~:kh=\23344~:sf=\204:sr=\215:tc=amiga-h: + +# Commodore B-128 microcomputer from Doug Tyrol <det@HEL-ACE.ARPA> +# I'm trying to write a termcap for a commodore b-128, and I'm +# having a little trouble. I've had to map most of my control characters +# to something that unix will accept (my delete-char is a ctrl-t, etc), +# and create some functions (like cm), but thats life. +# The problem is with the arrow keys - right, and up work fine, but +# left deletes the previous character and down I just can't figure out. +# Jove knows what I want, but I don't know what it's sending to me (it +# isn't thats bound to next-line in jove). +# Anybody got any ideas? Here's my termcap. +# DAG -- I changed his "^n" entries to "\n"; see if that works. +# +commodore|b-128|Commodore B-128 micro:\ + :am:bw:\ + :co#80:dN#20:li#24:pb#150:\ + :al=10\Ei:bc=^H:ce=10\Eq:cl=10\E\006:cm=20\E\013%2,%2,:\ + :cr=^M:dc=10*\177:dl=10*\Ed:do=^J:ei=:ho=\E^E:ic=5\E\n:im=:\ + :kd=^J:kh=\E^E:kl=^B:kr=^F:ku=^P:nd=^F:nl=^M:ta=5\011:up=^P: + +#### North Star +# +# North Star Advantage from Lt. Fickie <brl-ibd!fickie> via BRL +northstar|North Star Advantage:\ + :bs:\ + :co#80:li#24:\ + :cd=200\017:ce=200\016:cl=200\004:cm=1\E=%+ %+ :\ + :ho=200\034\032: + +#### Osborne +# +# Thu Jul 7 03:55:16 1983 +# +# As an aside, be careful; it may sound like an anomaly on the +# Osborne, but with the 80-column upgrade, it's too easy to +# enter lines >80 columns! +# +# I've already had several comments... +# The Osborne-1 with the 80-col option is capable of being +# 52, 80, or 104 characters wide; default to 80 for compatibility +# with most systems. +# +# The tab is destructive on the Ozzie; make sure to 'stty -tabs'. +osborne-w|osborne1-w|osborne I in 104-column mode:\ + :ms:ul:xt:\ + :co#104:li#24:\ + :al=\EE:bl=^G:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:\ + :do=^J:ei=:ic=\EQ:im=:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:\ + :se=\E(:sf=^J:so=\E):ue=\Em:up=^K:us=\El: +# Osborne I from ptsfa!rhc (Robert Cohen) via BRL +osborne|osborne1|osborne I in 80-column mode:\ + :am:bs:mi:ms:ul:xs:\ + :co#80:dB#4:li#24:\ + :al=\EE:ce=\ET:cl=^Z:cm=\E=%+ %+ :dc=4\EW:dl=\ER:do=^J:ei=:\ + :im=\EQ:is=^Z:kb=^H:kd=^J:kl=^H:kr=^L:ku=^K:le=4\010:nd=^L:\ + :se=\E):so=\E(:ue=\Em:up=^K:us=\El: +# +# Osborne Executive definition from BRL +# Similar to tvi920 +# Added by David Milligan and Tom Smith (SMU) +osexec|Osborne executive:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E3:\ + :dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:\ + :is=\Eq\Ek\Em\EA\Ex0:k0=^A@\r:k1=^AA\r:k2=^AB\r:k3=^AC\r:\ + :k4=^AD\r:k5=^AE\r:k6=^AF\r:k7=^AG\r:k8=^AH\r:k9=^AI\r:\ + :kb=^H:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:nl=^J:se=\Ek:\ + :so=\Ej:st=\E1:ue=\Em:up=^K:us=\El: + +#### Console types for obsolete UNIX clones +# +# Coherent, Minix, Venix, and several lesser-known kin were OSs for 8088 +# machines that tried to emulate the UNIX look'n'feel. Coherent and Venix +# were commercial, Minix an educational tool sold in conjunction with a book. +# Memory-segmentation limits and a strong tendency to look like V7 long after +# it was obsolete made all three pretty lame. Venix croaked early. Coherent +# and Minix were ported to 32-bit Intel boxes, only to be run over by a +# steamroller named `Linux' (which, to be fair, traces some lineage to Minix). +# Coherent's vendor, the Mark Williams Company, went belly-up in 1994. There +# are also, I'm told, Minix ports that ran on Amiga and Atari machines and +# even as single processes under SunOS and the Macintosh OS. +# + +# See +# http://www.minix3.org/manpages/man4/console.4.html +minix|minix console (v3):\ + :@7=\E[Y:F1=\E[11;2~:F2=\E[12;2~:F3=\E[13;2~:F4=\E[14;2~:\ + :F5=\E[15;2~:F6=\E[17;2~:F7=\E[18;2~:F8=\E[19;2~:\ + :F9=\E[20;2~:FA=\E[21;2~:FB=\E[11;5~:FC=\E[12;5~:\ + :FD=\E[13;5~:FE=\E[14;5~:FF=\E[15;5~:FG=\E[17;5~:\ + :FH=\E[18;5~:FI=\E[19;5~:FJ=\E[20;5~:FK=\E[21;5~:\ + :FL=\E[11;6~:FM=\E[12;6~:FN=\E[13;6~:FO=\E[14;6~:\ + :FP=\E[15;6~:FQ=\E[17;6~:FR=\E[18;6~:FS=\E[19;6~:\ + :FT=\E[20;6~:FU=\E[21;6~:\ + :ac=+\020,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\ + :k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\ + :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ + :k;=\E[21~:kD=\177:kI=\E[@:kN=\E[U:kP=\E[V:l0@:l1@:l2@:l3@:\ + :l4@:l5@:tc=minix-3.0: + +minix-3.0|minix console (v3.0):\ + :tc=ecma+color:tc=minix-1.7: + +# See +# http://www.minix-vmd.org/pub/Minix-vmd/1.7.0/wwwman/man4/console.4.html +# This is the entry provided with minix 1.7.4, with bogus :ri: removed. +minix-1.7|minix console (v1.7):\ + :am:xn:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cb=\E[2K:\ + :cd=\E[0J:ce=\E[K:cl=\E[H\E[0J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:is=\E[0m:\ + :k0=\E[Y:k1=\E[V:k2=\E[U:k3=\E[T:k4=\E[S:k5=\E[G:kb=^H:\ + :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:l0=End:l1=PgUp:\ + :l2=PgDn:l3=Num +:l4=Num -:l5=Num 5:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:nw=^M^J:se=\E[0m:sf=^J:\ + :so=\E[7m:sr=\EM:ta=^I:ue=\E[0m:up=\E[A:us=\E[4m: +# Corrected Jan 14, 1997 by Vincent Broman <broman@nosc.mil> +minix-old|minix-1.5|minix console (v1.5):\ + :xo:\ + :co#80:it#8:li#25:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[0J:\ + :ce=\E[K:cl=\E[H\E[0J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k0=\E[Y:k1=\E[V:\ + :k2=\E[U:k3=\E[T:k4=\E[S:k5=\E[G:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:se=\E[0m:sf=^J:so=\E[7m:sr=\EM:\ + :ta=^I:ue=\E[0m:up=\E[A:us=\E[4m: +# The linewrap option can be specified by editing /usr/include/minix/config.h +# before recompiling the minix 1.5 kernel. +minix-old-am|minix console with linewrap:\ + :am:tc=minix-old: + +pc-minix|minix console on an Intel box:\ + :tc=klone+acs:tc=minix-3.0: + +# According to the Coherent 2.3 manual, the PC console is similar +# to a z19. The differences seem to be (1) 25 lines, (2) no status +# line, (3) standout is broken, (4) ins/del line is broken, (5) +# has blinking and bold. +pc-coherent|pcz19|coherent|IBM PC console running Coherent:\ + :am:mi:\ + :co#80:it#8:li#25:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:dc=\EN:\ + :do=\EB:ei=\EO:ho=\EH:im=\E@:kb=^H:kd=\EB:kh=\EH:kl=\ED:\ + :kr=\EC:ku=\EA:le=^H:me=\Eq:nd=\EC:se=\Eq:sf=^J:so=\Ep:\ + :sr=\EI:ta=^I:up=\EA: + +# According to the Venix 1.1 manual, the PC console is similar +# to a DEC vt52. Differences seem to be (1) arrow keys send +# different strings, (2) enhanced standout, (3) added insert/delete line. +# Note in particular that it doesn't have automatic margins. +# There are other keys (f1-f10, kpp, knp, kcbt, kich1, kdch1) but they +# not described here because this derives from an old termcap entry. +pc-venix|venix|IBM PC console running Venix:\ + :co#80:it#8:li#25:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\ + :dl=\EM:do=^J:kb=^H:kd=\EP:kh=\EG:kl=\EK:kr=\EM:ku=\EH:le=^H:\ + :nd=\EC:sf=^J:sr=\EI:ta=^I:up=\EA: + +#### Miscellaneous microcomputer consoles +# +# If you know anything more about any of these, please tell me. +# + +# The MAI Basic Four computer was obsolete at the end of the 1980s. +# It may be used as a terminal by putting it in "line" mode as seen on +# one of the status lines. +# Initialization is similar to CIT80. :is: will set ANSI mode for you. +# Hardware tabs set by :if: at 8-spacing. Auto line wrap causes glitches so +# wrap mode is reset by :vs:. Using :sf:=\E[S caused errors so I +# used \ED instead. +# From: bf347@lafn.org (David Lawyer), 28 Jun 1997 +mai|basic4|MAI Basic Four in ansi mode:\ + :am:da:db:mi:ms:\ + :co#82:it#8:li#25:\ + :al=\E[L:bl=^G:cd=^_:ce=^^:cl=^]^_:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dc=\E[1P:dl=\E[M:do=^J:ei=\E[4l:ho=^]:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E>\E[?1h\E[?7h\E[?5l\017\E(B\E[m\E[20l\E[1;24r\E[24;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:\ + :k8=\EOW:kb=^H:kd=\EOB:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=^X:nw=^M\ED:rc=\E8:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=^Z:\ + :us=\E[4m:ve=\E[?7h:vs=\E[?7l: +# basis from Peter Harrison, Computer Graphics Lab, San Francisco +# ucbvax!ucsfmis!harrison ...uucp / ucbvax!ucsfmis!harrison@BERKELEY ...ARPA +# +# On Sat, 7 Aug 1999, Torsten Jerzembeck <toje@nightingale.ms.sub.org> wrote: +# The Basis 108 was a Apple II clone, manufactured by the "Basis +# Mikrocomputer GmbH" in Munster, Germany (the company still exists today, +# about 1,5 km from where I live, but doesn't build own computers any +# more). A Basis 108 featured a really heavy (cast aluminium?) case, was +# equipped with one or two 5.25" disk drives, had a monochrome and colour +# video output for a TV set or a dedicated monitor and several slots for +# Apple II cards. Basis 108 were quite popular at german schools before +# the advent of the IBM PC. They run, for example, the UCSD Pascal +# development system (which I used even in 1993 to program the steering +# and data recording for our school's experimental solar panel :), Apple DOS +# or CP/M. +# (basis: removed obsolete ":ma=^K^P^R^L^L :nl=5000*^J:" -- esr) +basis|BASIS108 computer with terminal translation table active:\ + :cd=\EY:ce=\ET:cl=300\E*:do=5000\n:kb=^H:kd=^J:kl=^H:kr=^L:\ + :ku=^K:me=\E):se=\E):so=\E(:tc=adm3a: +# luna's BMC terminal emulator +luna|luna68k|LUNA68K Bitmap console:\ + :co#88:li#46:tc=ansi-mini: +megatek|pegasus workstation terminal emulator:\ + :am:os:\ + :co#83:li#60: +# The Xerox 820 was a Z80 micro with a snazzy XEROX PARC-derived +# interface (pre-Macintosh by several years) that went nowhere. +xerox820|x820|Xerox 820:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=^Q:ce=^X:cl=1^Z:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:\ + :le=^H:nd=^L:sf=^J:up=^K: + +#### Videotex and teletext +# + +# \E\:1} switch to te'le'informatique mode (ascii terminal/ISO 6429) +# \E[?3l 80 columns +# \E[?4l scrolling on +# \E[12h local echo off +# \Ec reset: G0 U.S. charset (to get #,@,{,},...), 80 cols, clear screen +# \E)0 G1 DEC set (line graphics) +# +# From: Igor Tamitegama <igor@ppp1493-ft.teaser.fr>, 18 Jan 1997 +m2-nam|minitel|minitel-2|minitel-2-nam|France Telecom Minitel 2 mode te'le'informatique:\ + :bs:es:hs:xn:\ + :co#80:it#8:li#24:sg#0:ug#0:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=aaffggjjkkllmmnnooqqssttuuvvwwxx:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\ + :fs=^J:ho=\E[H:i1=\E\0721}\Ec\E[?4l\E[12h:\ + :i2=\E[?3l kbs=\010:im=\E[4h:ip=7:is=\Ec\E[12h\E)0:\ + :k0=\EOp:k1=\EOq:k2=\EOr:k3=\EOs:k4=\EOt:k5=\EOu:k6=\EOv:\ + :k7=\EOw:k8=\EOx:k9=\EOy:k;=\EOp:kA=\E[4l:kC=\E[2J:kD=\E[P:\ + :kI=\E[4h:kL=\E[M:kN=\EOn:kP=\EOR:kd=\E[B:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=\E[D:ll=\E[24;80H:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:ps=\E[i:\ + :r1=\Ec\E[?4l\E[12h:r2=\Ec\E)0:rc=\E8:sc=\E7:se=\E[27m:\ + :sf=^J:so=\E[7m:sr=\EM:ta=^I:ts=^_@A:u6=\E[%i%d;%dR:\ + :u7=\E[6n:ue=\E[24m:up=\E[A:us=\E[4m:vb=^G:ve=\E[<1l:\ + :vi=\E[<1h: + +# From: Alexandre Montaron <canal@mygale.org>, 18 Jun 1998 +# +minitel1|minitel 1:\ + :am:bw:es:hs:hz:ms:\ + :Co#8:co#40:li#24:pa#8:\ + :ac=+.,,./f0g1:bl=^G:ce=^X:cl=^L:cm=\037%+A%+A:cr=^M:do=^J:\ + :eA=^Y:fs=^J:ho=^^:is=\E;`ZQ\E\072iC\E\072iE\021:le=^H:\ + :mb=\EH:me=\EI\E\\:mr=\E]:nd=^I:nw=^M^J:op=\EG:\ + :rp=%.\022%+?:se=\E\\:sf=^J:so=\E]:sr=^K:ts=\037@%+A:up=^K:\ + :ve=^Q:vi=^T: +# is2=Fnct TE, Fnct MR, Fnct CM et pour finir: curseur ON. +minitel1b|minitel 1-bistandard (in 40cols mode):\ + :mi:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:al=\E[L:cb=\E[1K:cd=\E[J:dc=\E[P:\ + :dl=\E[M:ei=\E[4l:i1=\E;iYA\E;jYC:im=\E[4h:kA=\E[L:\ + :kC=\E[2J:kD=\E[P:kE=^X:kI=\E[4h:kL=\E[M:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ks=\E;iYA\E;jYC:kt=^I:ku=\E[A:\ + :tc=minitel1: +# :ke: posait des problemes (logout en sortant de vi). +minitel1b-80|minitel 1-bistandard (standard teleinformatique):\ + :am@:bw@:hz@:\ + :Co@:co#80:it#8:pa@:\ + :@8=\EOM:Sf@:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:ho=\E[H:\ + :i1@:is@:k0=\EOp:k1=\EOq:k2=\EOr:k3=\EOs:k4=\EOt:k5=\EOu:\ + :k6=\EOv:k7=\EOw:k8=\EOx:k9=\EOy:ke@:ks@:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:op@:rc=\E8:rp@:sc=\E7:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[24m:up=\E[A:\ + :us=\E[4m:ve=\037@A\021\n:vi=\037@A\024\n:tc=minitel1b: + +######## OBSOLETE VDT TYPES +# +# These terminals are *long* dead -- these entries are retained for +# historical interest only. + +#### Amtek Business Machines +# + +# (abm80: early versions of this entry apparently had ":se=\E^_:so=\E^Y", +# but these caps were commented out in 8.3; also, removed overridden +# ":do=^J:" -- esr) +abm80|amtek business machines 80:\ + :am:bs:bw:\ + :co#80:li#24:\ + :al=\E^Z:bt=^T:cd=\E^X:ce=\E^O:cl=\E^\:cm=\E\021%r%+ %+ :\ + :dl=\E^S:do=\E^K:ho=\E^R:le=^H:nd=^P:up=\E^L: + +#### Bell Labs blit terminals +# +# These were AT&T's official entries. The 5620 FAQ maintained by +# David Breneman <daveb@dgtl.com> has this to say: +# +# Actually, in the beginning was the Jerq, and the Jerq was white with a +# green face, and Locanthi and Pike looked upon the Jerq and said the Jerq +# was good. But lo, upon the horizon loomed a mighty management-type person +# (known now only by the initials VP) who said, the mighty Jerq must stay +# alone, and could not go forth into the world. So Locanthi and Pike put the +# Jerq to sleep, cloned its parts, and the Blit was brought forth unto the +# world. And the Jerq lived the rest of its days in research, but never +# strayed from those paths. +# +# In all seriousness, the Blit was originally known as the Jerq, but when +# it started to be shown outside of the halls of the Bell Labs Research +# organization, the management powers that be decided that the name could +# not remain. So it was renamed to be Blit. This was in late 1981. +# +# (The AT&T 5620 was the commercialized Blit. Its successors were the 630, +# 730, and 730+.) +# + +blit|jerq|blit running teletype rom:\ + :am:eo:ul:xo:\ + :co#87:it#8:li#72:\ + :AL=\EF%+ :DC=\Ee%+ :DL=\EE%+ :IC=\Ef%+ :al=\EF!:bl=^G:\ + :ce=\EK:cl=^L:cm=\EY%r%+ %+ :cr=^M:dc=\Ee!:dl=\EE!:do=^J:\ + :ei=:ic=\Ef!:im=:k1=\Ex:k2=\Ey:k3=\Ez:kb=^H:kd=\EB:kl=\ED:\ + :kr=\EC:ku=\EA:le=\ED:nd=\EC:sf=^J:ta=^I:up=\EA: + +# (cbblit: here's a BSD termcap that says :do=\EG: -- esr) +cbblit|fixterm|blit running columbus code:\ + :co#88:\ + :cd=\EJ:ei=\ER:ic@:im=\EQ:pO=\EP%3:pf=^T:po=^R:se=\EV!:\ + :so=\EU!:ue=\EV":us=\EU":vb=\E^G:tc=blit: + +oblit|ojerq|first version of blit rom:\ + :am:da:db:eo:mi:ul:xo:\ + :co#88:it#8:li#72:\ + :AL=\Ef%+ :DL=\Ee%+ :al=\EF:bl=^G:cd=\EJ:ce=\EK:cl=^L:\ + :cm=\EY%r%+ %+ :cr=^M:dc=\EO:dl=\EE:do=^J:ei=\ER:im=\EQ:\ + :kb=^H:le=\ED:nd=\EC:sf=^J:ta=^I:up=\EA:vb=\E^G: + +#### Bolt, Beranek & Newman (bbn) +# +# The BitGraph was a product of the now-defunct BBN Computer Corporation. +# The parent company, best known as the architects of the Internet, is +# still around. +# +# Jeff DelPapa <dp@world.std.com> writes: +# The bitgraph was a large white box that contained a monochrome bitmap +# display, and a 68000 to run it. You could download code and run it on +# the cpu, it had 128kb (I think) of memory. I used one in the late +# 70's, sure beat a vt100. It had one strange feature tho -- it used +# the cpu to bitblt pixels to scroll, it took longer than the refresh +# rate, and looked like a rubber sheet stretching, then snapping +# upwards. It had everything the early mac had, except a floppy drive a +# small screen (it had a 17" crisp beauty) and a real OS. They (Bolt +# Beranek and Neuman) sold at most a few hundred of them to the real +# world. DOD may have bought more... +# + +# Entries for the BitGraph terminals. The problem +# with scrolling in vi can only be fixed by getting BBN to put +# smarter scroll logic in the terminal or changing vi or padding +# scrolls with about 500 ms delay. +# +# I always thought the problem was related to the terminal +# counting newlines in its input buffer before scrolling and +# then moving the screen that much. Then vi comes along and +# paints lines in on the bottom line of the screen, so you get +# this big white gap. + +bitgraph|bg2.0nv|bg3.10nv|bbn bitgraph 2.0 or later (normal video):\ + :is=\E>\E[?5l\E[?7h:vb=\E[?5h\E[?5l:tc=bg2.0: +bg2.0rv|bg3.10rv|bbn bitgraph 2.0 (reverse video):\ + :is=\E>\E[?5h\E[?7h:vb=\E[?5l\E[?5h:tc=bg2.0: +bg2.0|bg3.10|bbn bitgraph 2.0 or later (no init):\ + :bs:xn:\ + :co#85:li#64:\ + :al=2*\E[L:bl=^G:cd=150\E[J:ce=2\E[K:cl=150\E[H\E[J:\ + :cm=%i\E[%d;%dH:cr=^M:cs=\E[%i%d;%dr:dl=2*\E[M:do=\E[B:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:ke=\E>:kl=\E[D:\ + :kr=\E[C:ks=\E=:ku=\E[A:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :me=\E[m:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=280\n:so=\E[7m:\ + :ta=^I:up=\E[A: + +bg1.25rv|bbn bitgraph 1.25 (reverse video):\ + :is=\E>\E[?5h\E[?7h:vb=\E[?5l\E[?5h:tc=bg1.25: +bg1.25nv|bbn bitgraph 1.25 (normal video):\ + :is=\E>\E[?5l\E[?7h:vb=\E[?5h\E[?5l:tc=bg1.25: +# (bg1.25: I added <rmam>/<smam> based on the init string -- esr) +bg1.25|bbn bitgraph 1.25:\ + :co#85:li#64:\ + :RA=\E[?7l:SA=\E[?7h:al=2*\E[L:bl=^G:cd=150\E[J:ce=2\E[K:\ + :cl=150\E[H\E[J:cm=%i\E[%d;%dH:cr=^M:dl=2*\E[M:do=\E[B:\ + :k1=\EP:k2=\EQ:k3=\ER:k4=\ES:kd=\EB:ke=\E>:kl=\ED:kr=\EC:\ + :ks=\E=:ku=\EA:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :ll=\E[64;1H:me=\E[m:nd=\E[C:se=\E[m:sf=280\n:so=\E[7m:\ + :ta=^I:up=\E[A: + +#### Bull (bq, dku, vip) +# +# (Adapted for terminfo; AIX extension capabilities translated -- esr) + +#============================================# +# BULL QUESTAR 210 `SDP' terminals emulation # +#============================================# +# +# Description written by R.K.Saunders (Bull Transac) +# +# Modifications written by F. Girard (Bull MTS) +# 19-05-87 V02.00.01 +# 17-12-87 V02.00.02 +# 15-09-89 V02.00.05 +# +# Typical technical selections F1 (modes SDP/ROLL): +# ------------------------------------------------------- +# | 01 02 03 04 05 06 07 08 09 10 | +# | 1010 0011 1010 0110 0110 0001 0100 0000 0000 0000 | +# | | +# | 11 12 13 14 15 16 17 18 19 20 | +# | 0000 0110 100? 0000 0000 0000 0001 0000 0000 0001 | +# | | +# | 21 22 23 24 25 26 27 28 29 30 | +# | 0011 0000 0001 1000 0000 0000 0000 0000 0000 0000 | +# | | +# | 31 32 33 34 35 36 37 38 39 40 | +# | 1010 0011 0000 0000 0000 0000 0000 0000 0000 0000 | +# ------------------------------------------------------- +# Typical firmware identification F5 "etat 6": +# P287.02.04b (AZERTY) +# P297.11.04 (24-pin: 2732) or P798.11.04 (28-pin: 2764) +# P298.03.03 (monochrome) or P374.03.02 (colour) +# +# SM SDP mode (VIP command): ^[[?=h +# RIS (erases screen): ^[c +# DMI disable keyboard: ^[` +# SM double rendition mode: ^[[?>h +# RM solicited status mode: ^[[5l +# RM character mode: ^[[>l +# RM echoplex mode: ^[[12l +# RM column tab mode: ^[[18l +# RM forbid SS2 keyboard mode: ^[[?<l +# SM scroll mode: ^[[=h +# FCF enable XON/XOFF: ^[P1s^[\ +# MTL select end msg character: ^[[^Wp +# EMI enable keyboard: ^[b +# RIS retour etat initial: ^[c +# enable FC keypad: ^[[?<h, +# MPW map status line window: ^[PY99:98^[\ +# SCP select status line: ^[[0;98v +# ED erase entire partition: ^[[2J +# SCP select main partition: ^[[v +# SM character insertion mode: ^[[4h +# RM character replacement mode: ^[[4l +# COO cursor on: ^[[r +# COO cursor off: ^[[1r +# SGR dim (turquoise) rev attr: ^[[2;7m +# SGR Data normal attr: ^[[m +# SO Line-graphic mode ON: ^N +# SI Line-graphic mode OFF: ^O +# MC start routing to printer: ^[[5i +# MC stop routing to printer: ^M^[[4i +# + +# This entry covers the following terminals: +# dku7102, tws2102, and tws models 2105 to 2112 +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +tws-generic|dku7102|Bull Questar tws terminals:\ + :am:es:hs:mi:ms:xn:xo:xs@:\ + :co#80:it#8:li#24:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%df:cr=^M:ct=\E[3g:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\EPY99\07298\E\\\E[0;98v\E[2J\E[v:ei=\E[4l:\ + :fs=\E[v:ho=\E[H:i1=\E[?=h\Ec\E`\E[?>h\EPY99\07298\E\\:\ + :i2=\Eb\E[?<h:im=\E[4h:\ + :is=\E[5;>;12;18;?<l\E[=h\EP1s\E\\\E[\027p:\ + :k1=\E[1u\027:k2=\E[2u\027:k3=\E[3u\027:k4=\E[4u\027:\ + :k5=\E[5u\027:k6=\E[6u\027:k7=\E[7u\027:k8=\E[8u\027:\ + :kD=\E[P:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:ll=\E[H\E[A:mb=\E[0;5m:me=\E[0m\017:mh=\E[0;2m:\ + :mr=\E[0;7m:nd=\E[C:rs=\E[?=h\Ec:se=\E[m:sf=^J:so=\E[0;7m:\ + :st=\EH:ta=\E[I:te=\E[0;98v\E[2J\E[v:\ + :ti=\E[?>h\EPY99\07298\E\\:\ + :ts=\EPY99\07298\E\\\E[0;98v\E[2;7m:ue=\E[m:up=\E[A:\ + :us=\E[0;4m:ve=\E[r:vi=\E[1r: +tws2102-sna|dku7102-sna|BULL Questar tws2102 for SNA:\ + :ds=\E[0;98v\E[2J\E[v:fs=\E[v:i2=\Eb:ts=\E[0;98v:\ + :tc=tws-generic: +tws2103|xdku|BULL Questar tws2103:\ + :ta=^I:tc=tws-generic: +tws2103-sna|dku7103-sna|BULL Questar tws2103 for SNA:\ + :ta=^I:tc=tws2102-sna: +dku7102-old|BULL Questar 200 DKU7102 (microcode version < 6):\ + :AL@:DL@:al@:ce=\E[K\E[m:cl=\E[2J\E[H:cm@:dl@:\ + :ds=\EPY99\07298\E\\\E[0;98v\E[2J\E[H\E[v:\ + :ts=\EPY99\07298\E\\\E[0;98v\E[H\E[2;7m:\ + :tc=tws-generic: +dku7202|BULL Questar 200 DKU7202 (colour/character attributes):\ + :i2=\E[?3h\Eb:mb=\E[0;2;4m:mh=\E[0;5m:so=\E[0;4;5;7m:\ + :ta=^I:us=\E[0;2m:tc=tws-generic: + +#=========================================================# +# BULL QUESTAR 303 & 310 `DEC VT 320' terminals emulation # +#=========================================================# +# +# Description written by J. Staerck (BULL SA) +# Copyright (c) 1989 BULL SA +#--------------------------------------------------------------------------- +# This entry is used for terminals with vt320 emulation mode +# and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 7 bit Control Characters, +# 80 columns screen. +# Hereafter are some DEC vt terminals' commands. (valid on vt200 and 300) +# They are used in string capabilities with vt220-320 emulation mode. +# In the following DEC definitions, two kinds of terminfo databases are +# provided : +# 1. the first with Command Sequence Introducer starting with escape +# sequence in 7 bits characters ex. ESC [ : 2 chars. in 7-bit mode. +# 2. the second with Command Sequence Introducer starting with escape +# sequence in 8 bits characters ex. ESC [ : 1 char. 'CSI' =x9B. +# Soft Terminal Reset esc [ ! p +# RIS (erases screen): esc c +# DECKPNM numeric keypad mode: esc > +# DECKPAM applic. keypad mode: esc = +# DECSTBM Scrolling region: esc [ r +# SCS select G0 = US: esc ( B +# SCS select G1 = line-graphic: esc ) 0 +# Select 7-bit C1 controls: esc sp F +# Select 8-bit C1 controls: esc sp G +# Select cursor home: esc [ H +# Select erase screen: esc [ J +# SM KAM lock keyboard: esc [ 2 h +# RM KAM unlock keyboard: esc [ 2 l +# SM SRM local echo off: esc [ 1 2 h +# RM SRM local echo on: esc [ 1 2 l +# SM LNM New line : esc [ 2 0 h +# RM LNM return = CR only: esc [ 2 0 l +# SM DECCKM cursor keys mode: esc [ ? 1 h +# RM DECCKM appli. keys mode: esc [ ? 1 l +# SM DECANM ANSI mode on: esc [ ? 2 h +# RM DECANM ANSI mode off: esc [ ? 2 l +# SM DECCOLM 132-column screen: esc [ ? 3 h +# RM DECCOLM 80-column screen: esc [ ? 3 l +# SM DECSCLM Smooth scroll: esc [ ? 4 h +# RM DECSCLM Jump scroll: esc [ ? 4 l +# SM DECSCNM screen light backgr. esc [ ? 5 h +# RM DECSCNM screen dark backgr. esc [ ? 5 l +# SM DECOM move within margins: esc [ ? 6 h +# RM DECOM move outside margins: esc [ ? 6 l +# SM DECAWM auto right margin: esc [ ? 7 h +# RM DECAWM auto right margin: esc [ ? 7 l +# SM DECARM auto repeat: esc [ ? 8 h +# RM DECARM auto repeat: esc [ ? 8 l +# DECSASD Select active main: esc [ 0 $ } +# DECSASD Select active status: esc [ 1 $ } +# DECSSDT Select status none: esc [ 0 $ ~ +# DECSSDT Select status indic.: esc [ 1 $ ~ +# DECSSDT Select status host-wr: esc [ 2 $ ~ +# SM DECTCEM Visible cursor: esc [ ? 2 5 h +# RM DECTCEM Invisible cursor: esc [ ? 2 5 l +# SM DECNCRM 7 bits NCR set: esc [ ? 4 2 h +# RM DECNCRM Multi or ISO latin: esc [ ? 4 2 l +# SM DECNKM numeric keypad mode: esc [ ? 6 6 h +# RM DECNKM numeric keypad appl.: esc [ ? 6 6 l +# SM DECKBUM clavier informatique esc [ ? 6 8 h +# RM DECKBUM clavier bureautique: esc [ ? 6 8 l +# DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 " p +# or DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 ; 0 " p +# or DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 ; 2 " p +# DECSCL vt300 mode 7-bit ctrl: esc [ 6 3 ; 1 " p +# Char. and Line attributes: esc [ Ps ... Ps m +# with: 0 All off, 1 Bold, 4 Underline, 5 Blinking, 7 Reverse +# and : 22 Bold off, 24 Underline off, 25 Blinking off, 27 Reverse off +# + +# This entry covers BQ303, BQ306, BQ310, Q303, Q306, Q310 +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +bq300|Bull vt320 ISO Latin 1 80 columns terminal:\ + :am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:i1=\E[63;1"p\E[2h:\ + :i2=\E[0$}\E[?25h\E[2l\E[H\E[J:im=\E[4h:\ + :is=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\ + :kb=^H:kd=\E[B:ke=\E[?1l\E>:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :rc=\E8:sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:\ + :ta=^I:te=\E[?7h:ti=\E[?7l\E[?1l\E(B:ts=\E[1$}\E[2$~:\ + :ue=\E[24m:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:\ + :vi=\E[?25l: +bq300-rv|Bull vt320 reverse 80 columns:\ + :is=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :vb=\E[?5l\E[?5h:tc=bq300: +bq300-w|Bull vt320 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :rs=\E[?3h:tc=bq300: +bq300-w-rv|Bull vt320 reverse mode 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :rs=\E[?3h:vb=\E[?5l\E[?5h:tc=bq300: + +# This entry is used for terminals with vt320 emulation mode +# and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 8 bit Control Characters, (CSI coded as x9B for ESC [) +# 80 columns screen. +# Soft Terminal Reset csi ! p +# RIS (erases screen): esc c +# DECKPNM numeric keypad mode: esc > +# DECKPAM applic. keypad mode: esc = +# DECSTBM Scrolling region: esc [ r +# SCS select G0 = US: esc ( B +# SCS select G1 = line-graphic: esc ) 0 +# Select 7-bit C1 controls: esc sp F +# Select 8-bit C1 controls: esc sp G +# Select cursor home: csi H +# Select erase screen: csi J +# SM KAM lock keyboard: csi 2 h +# RM KAM unlock keyboard: csi 2 l +# SM SRM local echo off: csi 1 2 h +# RM SRM local echo on: csi 1 2 l +# SM LNM New line : csi 2 0 h +# RM LNM return = CR only: csi 2 0 l +# SM DECCKM cursor keys mode: csi ? 1 h +# RM DECCKM appli. keys mode: csi ? 1 l +# SM DECANM ANSI mode on: csi ? 2 h +# RM DECANM ANSI mode off: csi ? 2 l +# SM DECCOLM 132-column screen: csi ? 3 h +# RM DECCOLM 80-column screen: csi ? 3 l +# SM DECSCLM Smooth scroll: csi ? 4 h +# RM DECSCLM Jump scroll: csi ? 4 l +# SM DECSCNM screen light backgr. csi ? 5 h +# RM DECSCNM screen dark backgr. csi ? 5 l +# SM DECOM move within margins: csi ? 6 h +# RM DECOM move outside margins: csi ? 6 l +# SM DECAWM auto right margin: csi ? 7 h +# RM DECAWM auto right margin: csi ? 7 l +# SM DECARM auto repeat: csi ? 8 h +# RM DECARM auto repeat: csi ? 8 l +# DECSASD Select active main: csi 0 $ } +# DECSASD Select active status: csi 1 $ } +# DECSSDT Select status none: csi 0 $ ~ +# DECSSDT Select status indic.: csi 1 $ ~ +# DECSSDT Select status host-wr: csi 2 $ ~ +# SM DECTCEM Visible cursor: csi ? 2 5 h +# RM DECTCEM Invisible cursor: csi ? 2 5 l +# SM DECNCRM 7 bits NCR set: csi ? 4 2 h +# RM DECNCRM Multi or ISO latin: csi ? 4 2 l +# DECSCL vt300 mode 8-bit ctrl: csi 6 3 " p +# or DECSCL vt300 mode 8-bit ctrl: csi 6 3 ; 0 " p +# DECSCL vt300 mode 7-bit ctrl: csi 6 3 ; 1 " p +# Char. and Line attributes: csi Ps ... Ps m +# with: 0 All off, 1 Bold, 4 Underline, 5 Blinking, 7 Reverse +# and : 22 Bold off, 24 Underline off, 25 Blinking off, 27 Reverse off +# (bq300-8: :le:,:nd:,:up:,:do:,:dl:,:al: to get under 1024 --esr) +# (sgr removed to fit entry within 1023 bytes) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +# (some function-key capabilities suppressed to fit entry within 1023 bytes) +bq300-8|Bull vt320 full 8 bits 80 columns:\ + :am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\ + :K1=\217w:K2=\217u:K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:\ + :RI=\233%dC:UP=\233%dA:ae=^O:as=^N:bl=^G:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:do=\2331B:\ + :ds=\2331$}\2332$~\n\2330$}:ec=\233%dX:ei=\2334l:\ + :fs=\2330$}:ho=\233H:i1=\E[63;2"p\E[2h:\ + :i2=\2330$}\233?25h\2332l\233H\233J:im=\2334h:\ + :is=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :k1=\217P:k2=\217Q:k3=\217R:k4=\217S:kD=\2333~:kI=\2332~:\ + :kN=\2336~:kP=\2335~:kb=^H:kd=\233B:ke=\233?1l\E>:\ + :kl=\233D:kr=\233C:ku=\233A:le=\2331D:mb=\2335m:md=\2331m:\ + :me=\2330m\E(B:mr=\2337m:nd=\2331C:nw=\EE:rc=\E8:sc=\E7:\ + :se=\23327m:sf=\ED:so=\2337m:sr=\EM:st=\EH:ta=^I:\ + :te=\233?7h:ti=\233?7l\233?1l\E(B:ts=\2331$}\2332$~:\ + :ue=\23324m:up=\2331A:us=\2334m:vb=\233?5h\233?5l:\ + :ve=\233?25h:vi=\233?25l: +bq300-8rv|Bull vt320 8-bit reverse mode 80 columns:\ + :is=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :vb=\233?5l\233?5h:tc=bq300-8: +bq300-8w|Bull vt320 8-bit 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :rs=\233?3h:tc=bq300-8: +bq300-w-8rv|Bull vt320 8-bit reverse mode 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :rs=\233?3h:vb=\233?5l\233?5h:tc=bq300-8: + +# This entry is used for terminals with vt320 emulation mode +# a 102 keys keyboard (PC scancode !) and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 7 bit Control Characters, +# 80 columns screen. +bq300-pc|Questar 303 with PC keyboard ISO Latin 1 80 columns:\ + :%0@:%1@:*6@:@0@:@7=\E[4~:F1=\E[29~:F2=\E[31~:F3@:F4@:F5@:F6@:\ + :F7@:F8@:F9@:FA@:k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:\ + :k5=\E[21~:k6=\E[23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:\ + :k;=\E[28~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\ + :kh=\E[1~:l1@:l2@:l3@:l4@:tc=bq300: +bq300-pc-rv|Questar 303 with PC keyboard reverse mode 80 columns:\ + :is=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :vb=\E[?5l\E[?5h:tc=bq300-pc: +bq300-pc-w|Questar 303 with PC keyboard 132 columns terminal:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :rs=\E[?3h:tc=bq300-pc: +bq300-pc-w-rv|Questar 303 with PC keyboard reverse mode 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :rs=\E[?3h:vb=\E[?5l\E[?5h:tc=bq300-pc: +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 8 bit Control Characters, +# 80 columns screen. +bq300-8-pc|Q306-8-pc|Questar 303 with PC keyboard in full 8 bits 80 columns:\ + :%0@:%1@:*6@:@0@:@7=\2334~:F1=\23329~:F2=\23331~:F3@:F4@:F5@:\ + :F6@:F7@:F8@:F9@:FA@:k1=\23317~:k2=\23318~:k3=\23319~:\ + :k4=\23320~:k5=\23321~:k6=\23323~:k7=\23324~:k8=\23325~:\ + :k9=\23326~:k;=\23328~:kD=\2333~:kI=\2332~:kN=\2336~:\ + :kP=\2335~:kb=^H:kh=\2331~:l1@:l2@:l3@:l4@:tc=bq300-8: +bq300-8-pc-rv|Questar 303 with PC keyboard full 8 bits reverse mode 80 columns:\ + :is=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :vb=\E[?5l\E[?5h:tc=bq300-8-pc: +bq300-8-pc-w|Questar 303 with PC keyboard full 8 bits 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :rs=\E[?3h:tc=bq300-8-pc: +bq300-8-pc-w-rv|Questar 303 with PC keyboard full 8 bits reverse 132 columns:\ + :co#132:ws#132:\ + :is=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :rs=\E[?3h:vb=\E[?5l\E[?5h:tc=bq300-8-pc: + +#======================================================# +# BULL QUESTAR 310 `VIP 7800/8800' terminals emulation # +#======================================================# + +# normal mode, 8 bits, 80 columns terminal. +# RES reset : ^[e +# RIS reset initial state: ^[c +# BLE bell enable ^[h +# BLD bell disable ^[g +# CAMS char. attr. mode set ^[[D +# CAMR char. attr. mode reset ^[[G +# CLR clear ^[` +# KBU keyboard unlock (set) ^[[W +# KBL keyboard lock (reset) ^[[X +# CM character mode (async.) ^[k +# NEP non echoplex mode (by host) ^[l +# EP echoplex mode (by host) ^[m +# IM insert mode set ^[[I +# IM insert mode reset ^[[J +# RMS roll mode set ^[r +# RMR roll mode reset ^[q +# SM78 set mode vip7800 ^[[1q +# SD scroll up (72 lines) ^[[0s +# SD scroll down (72 lines) ^[[1s +# RBM block mode reset ^[[E +# SLS status line set ^[w +# SLR status line reset ^[v +# SLL status line lock ^[O +# LGS Line-graphic mode set ^[G +# LGR Line-graphic mode reset ^[F +# TBC tab clear (at cursor pos.) ^[[g +# TBI tab initialize ^[[N +# TBS tab set (at cursor pos.) ^[p +# PDS print data space ^[[0p +# PHD print host data ^[[3p +# PDT print data terminator ^[[<p +# PRES print adapter reset ^[[2p +# SSPR multi-part. reset ^[[<>u +# SSP0 partition 0 set ^[[00u +# SSP1 partition n format 1 ^[[PnPnSTRINGu +# SSP2 partition n format 2 ^[[PnPnSTRINGu +# SSP3 partition n format 3 ^[[PnPnu +# ATR attribute (visual) +# blink : ^[sB +# dim : ^[sL +# hide (blank) : ^[sH +# restore : ^[sR +# inverse video : ^[sI +# prot. : ^[sP +# underline : ^[s_ +# reset : ^{ +# +# This covers the vip7800 and BQ3155-vip7800 +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +vip|Bull Questar 3155-7800:\ + :5i:am:es:hs:km:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :#2=\EH:#4=\Eo:%i=\Eu:F1=\E\\:F2=\E\136:F3@:F4@:F5@:F6@:F7@:\ + :F8@:F9@:FA@:FB=\E1:FC=\E5:FD=\E7:FE=\E9:FF=\E;:FG=\E=:FH=\E?:\ + :FI=\EQ:FJ=\ES:FK=\EV:FL=\E]:FM=\E_:bl=^G:bt=\E[Z:cd=\EJ:\ + :ce=\EK:cl=\E`:cm=\E[%i%3%3f:cr=^M:ct=\E[N:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\Ev:ei=\E[J:fs=\EO:ho=\EH:i2=\Er\E[W\E`:ic=\E[I:\ + :im=\E[I:is=\E[00u\E[<>001001024080024080u\E[01u:\ + :k1=\E0:k2=\E2:k3=\E6:k4=\E8:k5=\E\072:k6=\E<:k7=\E>:k8=\EP:\ + :k9=\ER:k;=\ET:kA=\E[L:kB=\E[Z:kC=\E`:kD=\E[P:kE=\EK:\ + :kF=\E[0s:kH=\EH\EA:kI=\E[I:kL=\E[M:kM=\E[J:kR=\E[1s:\ + :kS=\EJ:kT=\Ep:ka=\E[N:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\ + :kt=\E[g:ku=\EA:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:ll=\EH\EA:\ + :mb=\EsB:me=\EsR\EsU\EF:mh=\EsL:mk=\EsH:mp=\EsP:mr=\EsI:\ + :nd=\EC:nw=^M:pf=\E[<p:po=\E[3p:ps=\E[0p:r1=\Ec:r2=\E[G:\ + :s0=\EF:s1=\EG:se=\EsR:sf=^J:so=\EsI:sr=10\EA\EJ\EH\E[L:\ + :st=\Ep:ta=^I:ts=\Ew:ue=\EsR:up=\EA:us=\Es_:\ + :vb=\007\007\007: +# normal screen, 8 bits, 132 columns terminal. +vip-w|vip7800-w|Q310-vip-w|Q310-vip-w-am|Questar 3155-vip7800 wide:\ + :co#132:ws#132:\ + :is=\E[00u\E[<>001001024132024132u\E[01u:tc=vip: +vip-H|vip7800-H|Q310-vip-H|Q310-vip-H-am|Questar 3155-vip7800 72 lines:\ + :li#72:\ + :is=\E[00u\E[<>001001024080072080u\E[01u:tc=vip: +vip-Hw|vip7800-Hw|Q310-vip-Hw|Questar 3155-vip7800 wide 72 lines:\ + :co#132:li#72:ws#132:\ + :is=\E[00u\E[<>001001024132072132u\E[01u:tc=vip: + +#### Chromatics +# + +# I have put the long strings in :ti:/:te:. Ti sets up a window +# that is smaller than the screen, and puts up a warning message +# outside the window. Te erases the warning message, puts the +# window back to be the whole screen, and puts the cursor at just +# below the small window. I defined :ve: and :vi: to really turn +# the cursor on and off, but I have taken this out since I don't +# like the cursor being turned off when vi exits. +cg7900|chromatics|chromatics 7900:\ + :am:\ + :co#80:li#40:\ + :al=^A>2:bl=^G:cd=^Al:ce=^A`:cl=^L:cm=\001M%r%d,%d,:cr=^M:\ + :dc=^A<1:dl=^A<2:do=^J:ei=:ho=^\:ic=^A>1:im=:le=^H:ll=^A|:\ + :nd=^]:se=\001C1,\001c2,:sf=^J:so=\001C4,\001c7,:\ + :te=\001W0,40,85,48,\014\001W0,0,85,48,\001M0,40,:\ + :ti=\001P0\001O1\001R1\001C4,\001c0,\014\001M0,42,WARNING DOUBLE ENTER ESCAPE and \025\001C1,\001c2,\001W0,0,79,39,:\ + :uc=\001\001_\001\200:up=^K: + +#### Computer Automation +# + +ca22851|computer automation 22851:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=^\:ce=^]:cl=8\014:cm=\002%i%.%.:cr=^M:do=^J:ho=^^:\ + :kd=^W:kh=^^:kl=^U:ku=^V:le=^U:nd=^I:sf=^J:up=^V: + +#### Cybernex +# + +# This entry has correct padding and the undocumented "ri" capability +cyb83|xl83|cybernex xl-83:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=62\020:ce=3\017:cl=62\014:cm=\027%+ %+ :cr=^M:\ + :do=^J:ho=^K:kd=^J:kl=^H:kr=^I:ku=^N:le=^H:nd=^I:sf=^J:sr=^N:\ + :up=^N: +# (mdl110: removed obsolete ":ma=^Z^P:" and overridden ":cd=145^NA^W:" -- esr) +cyb110|mdl110|cybernex mdl-110:\ + :am:bs:\ + :co#80:li#24:\ + :al=65\016A\016\035:bl=^G:cd=6\016@\026:ce=145\016@\026:\ + :cl=70\030:cm=\020%+ %+ :cr=^M:dc=3.5\016A\036:\ + :dl=40\016A\016\036:do=^J:ei=:ho=^Y:ic=3.5\016A\035:im=:\ + :le=^H:nd=^U:se=^NG:sf=^J:so=^NF:ta=43\011:up=^Z: + +#### Datapoint +# +# Datapoint is gone. They used to be headquartered in Texas. +# They created ARCnet, an Ethernet competitor that flourished for a while +# in the early 1980s before 3COM got wise and cut its prices. The service +# side of Datapoint still lives (1995) in the form of Intelogic Trace. +# + +dp3360|datapoint|datapoint 3360:\ + :am:bs:\ + :co#82:li#25:\ + :bl=^G:cd=^_:ce=^^:cl=^]^_:cr=^M:do=^J:ho=^]:le=^H:nd=^X:\ + :sf=^J:up=^Z: + +# From: Jan Willem Stumpel <jw.stumpel@inter.nl.net>, 11 May 1997 +# The Datapoint 8242 Workstation was sold at least between 1985 +# and 1989. To make the terminal work with this entry, press +# CONTROL-INT-INT to take the terminal off-line, and type (opt). +# Set the options AUTO ROLL, ROLL DN, and ESC KBD on, and AUTO +# CR/LF off. Use control-shift-[] as escape key, control-I as tab, +# shift-F1 to shift-F5 as F6 to F10 (unshifted F1 to F5 are in +# fact unusable because the strings sent by the terminal conflict +# with other keys). +# The terminal is capable of displaying "box draw" characters. +# For each graphic character you must send 2 ESC's (\E\E) followed +# by a control character as follows: +# character meaning +# ========= ======= +# ctrl-E top tee +# ctrl-F right tee +# ctrl-G bottom tee +# ctrl-H left tee +# ctrl-I cross +# ctrl-J top left corner +# ctrl-K top right corner +# ctrl-L bottom left corner +# ctrl-M bottom right corner +# ctrl-N horizontal line +# ctrl-O vertical line +# Unfortunately this cannot be fitted into the termcap/terminfo +# description scheme. +dp8242|datapoint 8242:\ + :ms:\ + :co#80:li#25:\ + :al=\E^T:bl=^G:cd=^W:ce=^V:cl=\025\E\004\027\030:\ + :cm=\011%r%+\\%+\\:cr=^M:dl=\E^Z:do=^J:ho=^U:\ + :i1=\E\014\E\016\200\230\200\317\025\027\030\E\004:\ + :k1=^G\Ee:k2=^I\Ed:k3=^J\Ec:k4=^J\Eb:k5=^S\Ea:k6=\EO\Ee:\ + :k7=\EN\Ed:k8=\EM\Ec:k9=\EL\Eb:k;=\EK\Ea:kb=^H:kd=^B:kl=^D:\ + :kr=^F:ku=^E:le=^H:nw=^M^J:\ + :r1=\E\014\E\016\200\230\200\317\025\027\030\E\004:\ + :rp=\E\023%.%.:se=\E^D:sf=^C:so=\E^E:sr=^K:ta=^I:ue=\E^D:\ + :us=\E^F:ve=^X:vi=^Y: + +#### DEC terminals (Obsolete types: DECwriter and vt40/42/50) +# +# These entries are DEC's official terminfos for its older terminals. +# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support +# Engineering for more information. Updated terminfos and termcaps +# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. +# + +gt40|dec gt40:\ + :bs:os:\ + :co#72:li#30:\ + :bl=^G:cr=^M:do=^J:le=^H: +gt42|dec gt42:\ + :bs:os:\ + :co#72:li#40:\ + :bl=^G:cr=^M:do=^J:le=^H: +vt50|dec vt50:\ + :bs:\ + :co#80:li#12:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cr=^M:do=^J:le=^H:nd=\EC:\ + :sf=^J:ta=^I:up=\EA: +vt50h|dec vt50h:\ + :bs:\ + :co#80:li#12:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:do=^J:\ + :le=^H:nd=\EC:sf=^J:sr=\EI:ta=^I:up=\EA: +# (vt61: there's a BSD termcap that claims :dl=\EPd:, :al=\EPf.: :kb=^H:) +vt61|vt-61|vt61.5|dec vt61:\ + :co#80:li#24:\ + :bl=^G:cd=120\EJ:ce=70\EK:cl=120\EH\EJ:cm=20\EY%+ %+ :\ + :cr=20\r:do=^J:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=20\EC:\ + :sf=20\n:sr=\EI:ta=^I:up=20\EA: + +# The gigi does standout with red! +# (gigi: I added <rmam>/<smam> based on the init string, corrected cub1 -- esr) +gigi|vk100|dec gigi graphics terminal:\ + :am:bs:xn:\ + :co#84:li#24:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:do=^J:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?20l\E[?7h\E[?8h:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:kd=\EOB:ke=\E[?1l\E>:kh=\E[H:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:me=\E[m:\ + :nd=\E[C:se=\E[m:sf=^J:so=\E[7;31m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# DEC PRO-350 console (VT220-style). The 350 was DEC's attempt to produce +# a PC differentiated from the IBM clones. It was a total, ludicrous, +# grossly-overpriced failure (among other things, DEC's OS didn't include +# a format program, so you had to buy pre-formatted floppies from DEC at +# a hefty premium!). +pro350|decpro|dec pro console:\ + :bs:\ + :co#80:it#8:li#24:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\EG:as=\EF:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :do=\EB:\ + :ho=\EH:k0=\EE:k1=\EF:k2=\EG:k3=\EH:k4=\EI:k5=\EJ:k6=\Ei:\ + :k7=\Ej:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\ + :se=\E^N:so=\E^H:sr=\EI:ta=^I:ue=\E^C:up=\EA:us=\E^D: + +dw1|decwriter I:\ + :bs:hc:os:\ + :co#72:\ + :bl=^G:cr=^M:do=^J:le=^H:sf=^J: +dw2|decwriter|dw|decwriter II:\ + :bs:hc:os:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:kb=^H:le=^H:sf=^J: +# \E(B Use U.S. character set (otherwise # => british pound !) +# \E[20l Disable "linefeed newline" mode (else puts \r after \n,\f,\v) +# \E[w 10 char/in pitch +# \E[1;132 full width horizontal margins +# \E[2g clear all tab stops +# \E[z 6 lines/in +# \E[66t 66 lines/page (for \f) +# \E[1;66r full vertical page can be printed +# \E[4g clear vertical tab stops +# \E> disable alternate keypad mode (so it transmits numbers!) +# \E[%i%p1%du set tab stop at column %d (origin == 1) +# (Full syntax is \E[n;n;n;n;n;...;nu where each 'n' is +# a tab stop) +# +# The dw3 does standout with wide characters. +# +dw3|la120|decwriter III:\ + :bs:hc:os:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:\ + :i1=\E(B\E[20l\E[w\E[0;132s\E[2g\E[z\E[66t\E[1;66r\E[4g\E>:\ + :is=\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u\r:\ + :kb=^H:le=^H:me=\E[w:se=\E[w:sf=^J:so=\E[6w:ta=^I: +dw4|decwriter IV:\ + :am:bs:hc:os:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:is=\Ec:k0=\EOP:k1=\EOQ:k2=\EOR:k3=\EOS:\ + :kb=^H:le=^H:sf=^J:ta=^I: + +# These aren't official +ln03|dec ln03 laser printer:\ + :hc:\ + :co#80:li#66:\ + :bl=^G:cr=^M:do=^J:hd=\EK:hu=\EL:me=\E[m:nw=^M^J:se=\E[22m:\ + :sf=^J:so=\E[1m:ta=^I:ue=\E[24m:us=\E[4m: +ln03-w|dec ln03 laser printer 132 cols:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:kb=^H:kd=^J:kl=^H:nw=^M^J:sf=^J:ta=^I:\ + :tc=ln03: + +#### Delta Data (dd) +# + +# Untested. The cup sequence is hairy enough that it probably needs work. +# The idea is ctrl(O), dd(row), dd(col), where dd(x) is x - 2*(x%16) + '9'. +# There are BSD-derived termcap entries floating around for this puppy +# that are *certainly* wrong. +delta|dd5000|delta data 5000:\ + :am:bs:\ + :co#80:li#27:\ + :bl=^G:ce=^NU:cl=^NR:cm=\017%+^P%+^P:dc=^NV:do=^J:ho=^NQ:\ + :le=^H:nd=^Y:sf=^J:up=^Z: + +#### Digital Data Research (ddr) +# + +# (ddr: I added <rmam>/<smam> based on the init string -- esr) +ddr|rebus3180|ddr3180|Rebus/DDR 3180 vt100 emulator:\ + :am:bs:xn:\ + :co#80:it#8:li#24:vt#3:\ + :RA=\E[7l:SA=\E[7l:cd=50\E[J:ce=3\E[K:cl=50\E[H\E[2J:\ + :cm=5\E[%i%d;%dH:cs=\E[%i%d;%dr:do=^J:ho=\E[H:\ + :is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kb=^H:kd=\E[B:ke=\E[?1l\E>:kl=\E[D:kr=\E[C:ks=\E[?1h\E=:\ + :ku=\E[A:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:\ + :nd=2\E[C:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\ + :rf=/usr/share/tabset/vt100:sc=\E7:se=\E[m:sf=5\ED:\ + :so=\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:us=2\E[4m: + +#### Evans & Sutherland +# + +# Jon Leech <leech@cs.unc.edu> tells us: +# The ps300 was the Evans & Sutherland Picture System 300, a high +# performance 3D vector graphics system with a bunch of specialized hardware. +# Approximate date of release was 1982 (early 80s, anyway), and it had several +# evolutions including (limited) color versions such as the PS330C. PS300s +# were effectively obsolete by the late 80s, replaced by raster graphics +# systems, although specialized applications like molecular modelling +# hung onto them for a while longer. AFAIK all E&S vector graphics systems +# are out of production, though of course E&S is very much alive (in 1996). +# (ps300: changed ":pt@:" to "it@" -- esr) +# +ps300|Picture System 300:\ + :xt:\ + :it@:\ + :se@:so@:ue@:us@:tc=vt100: + +#### General Electric (ge) +# + +terminet1200|terminet300|tn1200|tn300|terminet|GE terminet 1200:\ + :bs:hc:os:\ + :co#120:\ + :bl=^G:cr=^M:do=^J:sf=^J: + +#### Heathkit/Zenith +# + +# Here is a description of the H19 DIP switches: +# +# S401 +# 0-3 = baud rate as follows: +# +# 3 2 1 0 +# --- --- --- --- +# 0 0 1 1 300 baud +# 0 1 0 1 1200 baud +# 1 0 0 0 2400 baud +# 1 0 1 0 4800 baud +# 1 1 0 0 9600 baud +# 1 1 0 1 19.2K baud +# +# 4 = parity (0 = no parity) +# 5 = even parity (0 = odd parity) +# 6 = stick parity (0 = normal parity) +# 7 = full duplex (0 = half duplex) +# +# S402 +# 0 = block cursor (0 = underscore cursor) +# 1 = no key click (0 = keyclick) +# 2 = wrap at end of line (0 = no wrap) +# 3 = auto LF on CR (0 = no LF on CR) +# 4 = auto CR on LF (0 = no CR on LF) +# 5 = ANSI mode (0 = VT52 mode) +# 6 = keypad shifted (0 = keypad unshifted) +# 7 = 50Hz refresh (1 = 60Hz refresh) +# +# Factory Default settings are as follows: +# 7 6 5 4 3 2 1 0 +# S401 1 0 0 0 1 1 0 0 +# S402 0 0 0 0 0 0 0 0 +# (h19: I added <rmam>/<smam> based on the init string; +# also added empty <acsc> to suppress a tic warning -- esr) +h19-a|h19a|heath-ansi|heathkit-a|heathkit h19 ansi mode:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :RA=\E[?7l:SA=\E[?7h:ac=:ae=\E[11m:al=1*\E[1L:as=\E[10m:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[1P:dl=1*\E[1M:do=\E[1B:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E<\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11m\E[?7h:k1=\EOS:\ + :k2=\EOT:k3=\EOU:k4=\EOV:k5=\EOW:k6=\EOP:k7=\EOQ:k8=\EOR:\ + :kb=^H:kd=\E[1B:kh=\E[H:kl=\E[1D:kr=\E[1C:ku=\E[1A:l6=blue:\ + :l7=red:l8=white:le=^H:nd=\E[1C:se=\E[m:sf=^J:so=\E[7m:\ + :sr=\EM:ta=^I:up=\E[1A:ve=\E[>4l:vs=\E[>4h: +h19-bs|heathkit w/keypad shifted:\ + :ke=\Eu:ks=\Et:tc=h19-b: +h19-us|h19us|h19-smul|heathkit w/keypad shifted/underscore cursor:\ + :ke=\Eu:ks=\Et:tc=h19-u: +# (h19: merged in :ip: from BSDI hp19-e entry>; +# also added empty <acsc> to suppress a tic warning --esr) +# From: Tim Pierce <twp@skepsis.com>, 23 Feb 1998 +# Tim tells us that: +# I have an old Zenith-19 terminal at home that still gets a lot of use. +# This terminal suffers from the same famous insert-mode padding lossage +# that has been acknowledged for the Z29 terminal. Emacs is nearly +# unusable on this box, since even a half-scroll up or down the window +# causes flaming terminal death. +# +# On the Z19, the only way I have found around this problem is to remove +# the :al: and :dl: entries entirely. No amount of extra padding will +# help (I have tried up to 20000). Removing :al=\EL$: and :dl=\EM$: +# makes Emacs a little slower, but it remains in the land of the living. +# Big win. +h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\136:ae=\EG:\ + :as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\ + :dc=\EN:do=\EB:ei=\EO:fs=\Ek\Ey5:ho=\EH:im=\E@:ip=.5<1.5/>:\ + :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:\ + :kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l6=blue:l7=red:\ + :l8=white:le=^H:nd=\EC:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:\ + :ts=\Ej\Ex5\EY8%+ \Eo\Eo:up=\EA:ve=\Ey4:vs=\Ex4: +h19-u|heathkit with underscore cursor:\ + :ve@:vs@:tc=h19-b: +h19-g|h19g|heathkit w/block cursor:\ + :ve=\Ex4:vs@:tc=h19-b: +alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19:\ + :li#60:\ + :al=\EL:dl=\EM:tc=h19: + +# The major problem with the Z29 is that it requires more padding than the Z19. +# +# The problem with declaring an H19 to be synonymous with a Z29 is that +# it needs more padding. It especially loses if a program attempts +# to put the Z29 into insert mode and insert text at 9600 baud. It +# even loses worse if the program attempts to insert tabs at 9600 +# baud. Adding padding to text that is inserted loses because in +# order to make the Z29 not die, one must add so much padding that +# whenever the program tries to use insert mode, the effective +# rate is about 110 baud. +# +# What program would want to put the terminal into insert mode +# and shove stuff at it at 9600 baud you ask? +# +# Emacs. Emacs seems to want to do the mathematically optimal +# thing in doing a redisplay rather than the practical thing. +# When it is about to output a line on top of a line that is +# already on the screen, instead of just killing to the end of +# the line and outputting the new line, it compares the old line +# and the new line and if there are any similarities, it +# constructs the new line by deleting the text on the old line +# on the terminal that is already there and then inserting new +# text into the line to transform it into the new line that is +# to be displayed. The Z29 does not react kindly to this. +# +# But don't cry for too long.... There is a solution. You can make +# a termcap entry for the Z29 that says the Z29 has no insert mode. +# Then Emacs cannot use it. "Oh, no, but now inserting into a +# line will be really slow", you say. Well there is a sort of a +# solution to that too. There is an insert character option on +# the Z29 that will insert one character. Unfortunately, it +# involves putting the terminal into ansi mode, inserting the +# character, and changing it back to H19 mode. All this takes 12 +# characters. Pretty expensive to insert one character, but it +# works. Either Emacs doesn't try to use its inserting hack when +# it's only given an insert character ability or the Z29 doesn't +# require padding with this (the former is probably more likely, +# but I haven't checked it out). +# (z29: added empty <acsc> to suppress a tic warning, merged in +# status line capabilities from BRL entry --esr) +z29|zenith29|z29b|zenith z29b:\ + :am:bs:es:hs:mi:ms:pt:\ + :co#80:kn#10:li#24:\ + :ac=:ae=\EF:al=1\EL:as=\EG:bc=\ED:bl=^G:bt=\E-:cd=14\EJ:\ + :ce=1\EK:cl=14\EE:cm=\EY%+ %+ :cr=^M:dc=0.1*\EN:dl=1\EM:\ + :do=\EB:ds=\Ey1:ei=\EO:fs=\Ek\Ey5:ho=\EH:\ + :ic=1\E<\E[1@\E[?2h:im=\E@:is=\E<\E[?2h\Ev:k0=\E~:k1=\ES:\ + :k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:k9=\E0I:\ + :kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=home:le=^H:\ + :nd=\EC:se=\Eq:sf=2\n:so=\Ep:sr=2\EI:ta=^I:ue=\Es0:up=\EA:\ + :us=\Es8:ve=\Ey4:vs=\Ex4: +# z29 in ansi mode. Assumes that the cursor is in the correct state, and that +# the world is stable. <rs1> causes the terminal to be reset to the state +# indicated by the name. kc -> key click, nkc -> no key click, uc -> underscore +# cursor, bc -> block cursor. +# From: Mike Meyers +# (z29a: replaced nonexistent :if=/usr/share/tabset/zenith29: befause :st: +# looks vt100-compatible -- esr) +z29a|z29a-kc-bc|h29a-kc-bc|heath/zenith 29 in ansi mode:\ + :am:bs:es:hs:mi:ms:pt:\ + :co#80:it#8:kn#10:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:bc=\ED:bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[1P:\ + :do=^J:ds=\E[>1l:fs=\E[u\E[>5l:ho=\E[H:\ + :if=/usr/share/tabset/vt100:k0=\E[~:k1=\EOS:k2=\EOT:\ + :k3=\EOU:k4=\EOV:k5=\EOW:k6=\EOP:k7=\EOQ:k8=\EOR:k9=\EOX:\ + :kC=\E[J:kS=\E[J:kb=^H:kd=\EOB:kh=\E[H:kl=\EOD:kr=\EOC:\ + :ku=\EOA:l0=help:le=^H:mb=\E[5m:md=\E[2m:me=\E[m:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^M\ED:ps=\E#7:\ + :r1=\E<\E[1;24r\E[24;1H\E[?7h\E[>4h\E[>1;2;3;5;6;7;8;9l\E[m\E[11m:\ + :rc=\E[r:sc=\E[s:se=\E[m:sf=\ED:so=\E[7;2m:sr=\EM:st=\EH:\ + :ta=^I:te=\E[?7h:ti=\E[?7l:\ + :ts=\E[s\E[>5;1h\E[25;%i%dH\E[1K:ue=\E[m:up=\E[A:\ + :us=\E[4m: +z29a-kc-uc|h29a-kc-uc|z29 ansi mode with keyckick and underscore cursor:\ + :r1=\E<\E[1;24r\E[24;1H\E[?7h\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11m:\ + :tc=z29a: +z29a-nkc-bc|h29a-nkc-bc|z29 ansi mode with block cursor and no keyclick:\ + :r1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2;4h\E[>1;3;5;6;7;8;9l\E[m\E[11m:\ + :tc=z29a: +z29a-nkc-uc|h29a-nkc-uc|z29 ansi mode with underscore cursor and no keyclick:\ + :r1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2h\E[>1;3;4;5;6;7;8;9l\E[m\E[11m:\ + :tc=z29a: +# From: Jeff Bartig <jeffb@dont.doit.wisc.edu> 31 Mar 1995 +z39-a|z39a|zenith39-a|zenith39-ansi|Zenith 39 in ANSI mode:\ + :5i:am:es:hs:mi:ms:xo:\ + :co#80:li#24:\ + :%1=\E[~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:K1=\EOw:\ + :K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=0a``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=\E(B:al=\E[1L:as=\E(0:bl=^G:bt=\E[1Z:cb=\E[1K:cd=\E[0J:\ + :ce=\E[0K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[1P:dl=\E[1M:do=\E[B:\ + :ds=\E[>1l:ei=\E[4l:fs=\E[u:ho=\E[H:im=\E[4h:\ + :is=\E<\E[>1;3;5;6;7l\E[0m\E[2J:k1=\EOS:k2=\EOT:k3=\EOU:\ + :k4=\EOV:k5=\EOW:k6=\EOP:k7=\EOQ:k8=\EOR:k9=\EOX:kS=\E[J:\ + :kb=^H:kd=\E[B:ke=\E[>7l:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[>7h:\ + :ku=\E[A:le=^H:ll=\E[24;1H:mb=\E[5m:md=\E[1m:me=\E[0m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[?19h\E[i:rc=\E[u:rs=\E<\Ec\200:sc=\E[s:se=\E[0m:\ + :sf=^J:so=\E[7m:st=\EH:ta=^I:ts=\E[s\E[>1h\E[25;%i%dH:\ + :ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[>5l:vi=\E[>5h: + +# From: Brad Brahms <Brahms@USC-ECLC> +z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor:\ + :ve=\Ey4\Em70:vs=\Ex4\Em71:tc=z100bw: +# (z100bw: removed obsolete ":kn#10:", added empty <acsc> -- esr) +z100bw|h100bw|z110bw|z-100bw|h-100bw|heath/zenith z-100 pc:\ + :bs:mi:ms:pt:\ + :co#80:it#8:kn#10:li#24:\ + :ac=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\136:ae=\EG:\ + :al=5*\EL:as=\EF:cd=\EJ:ce=\EK:cl=5*\EE:cm=1*\EY%+ %+ :\ + :dc=1*\EN:dl=5*\EM:do=\EB:ei=\EO:ho=\EH:im=\E@:k0=\EJ:\ + :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:\ + :k9=\EOI:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:\ + :nd=\EC:se=\Eq:so=\Ep:sr=\EI:ta=^I:up=\EA:ve=\Ey4:vs=\Ex4: +p19|h19-b with il1/dl1:\ + :al=2*\EL:dl=2*\EM:tc=h19-b: +# From: <ucscc!B.fiatlux@ucbvax.berkeley.edu> +# (ztx: removed duplicate :sr: -- esr) +ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10 or 11:\ + :am:bs:es:hs:\ + :co#80:it#8:li#24:\ + :al=\EL:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :dl=\EM:do=^J:\ + :ds=\Ey1:fs=\Ek\Ey5:ho=\EH:\ + :is=\Ej\EH\Eq\Ek\Ev\Ey1\Ey5\EG\Ey8\Ey9\Ey>:k0=\ES:\ + :k1=\EB:k2=\EU:k3=\EV:k4=\EW:k5=\EP:k6=\EQ:k7=\ER:kb=^H:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:se=\Eq:so=\Es5:\ + :sr=\EI:ta=^I:ue=\Eq:up=\EA:us=\Es2: + +#### IMS International (ims) +# +# There was a company called IMS International located in Carson City, +# Nevada, that flourished from the mid-70s to mid-80s. They made S-100 +# bus/Z80 hardware and a line of terminals called Ultimas. +# + +# From: Erik Fair <fair@ucbarpa.berkeley.edu> Sun Oct 27 07:21:05 1985 +ims950-b|bare ims950 no init string:\ + :is@:tc=ims950: +# (ims950: removed obsolete ":ko@:" -- esr) +ims950|ims televideo 950 emulation:\ + :xn@:\ + :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:kl@:kr@:ku@:vb@:\ + :tc=tvi950: +# (ims950-rv: removed obsolete ":ko@:" -- esr) +ims950-rv|ims tvi950 rev video:\ + :xn@:\ + :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:kl@:kr@:ku@:vb@:\ + :tc=tvi950-rv: +ims-ansi|ultima2|ultimaII|IMS Ultima II:\ + :am:bs:\ + :co#80:it#8:li#24:\ + :cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:cm=\E[%i%2;%2H:do=\ED:\ + :if=/usr/share/tabset/vt100:\ + :is=\E[m\E[>14l\E[?1;?5;20l\E>\E[1m\r:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:nd=\EC:se=\E[m\E[1m:\ + :so=\E[7m:sr=\EM:ta=^I:ue=\E[m\E[1m:up=\EM:us=\E[4m: + +#### Intertec Data Systems +# +# I think this company is long dead as of 1995. They made an early CP/M +# micro called the "Intertec Superbrain" that was moderately popular, +# then sank out of sight. +# + +superbrain|intertec superbrain:\ + :am:bs:bw:\ + :co#80:li#24:\ + :bc=^U:bl=^G:cd=10*\E~k<10*>:ce=15\E~K:cl=5*\014:\ + :cm=20\EY%+ %+ :cr=^M:do=^J:kd=^J:kl=^U:kr=^F:ku=^K:le=^H:\ + :nd=^F:sf=^J:ta=^I:te=^L:ti=^L:up=^K: +# (intertube: a Gould entry via BRL asserted smul=\E0@$<200/>, +# rmul=\E0A$<200/>; my guess is the highlight letter is bit-coded like an ADM, +# and the reverse is actually true. Try it. -- esr) +intertube|intertec|Intertec InterTube:\ + :am:bs:\ + :co#80:li#25:\ + :bl=^G:cl=^L:cm=50\EY%+ %+ :cr=^M:do=^J:ho=^A:le=^H:nd=^F:\ + :se=\E0@:sf=^J:so=\E0P:up=^Z: +# The intertube 2 has the "full duplex" problem like the tek 4025: if you +# are typing and a command comes in, the keystrokes you type get interspersed +# with the command and it messes up +intertube2|intertec data systems intertube 2:\ + :bs:\ + :ce=\EK:ch=\020%B%.:cm=\016%.\020%B%.:cv=\013%.:\ + :ll=^K^X\r:tc=intertube: + +#### Ithaca Intersystems +# +# This company made S100-bus personal computers long ago in the pre-IBM-PC +# past. They used to be reachable at: +# +# Ithaca Intersystems +# 1650 Hanshaw Road +# Ithaca, New York 14850 +# +# However, the outfit went bankrupt years ago. +# + +# The Graphos III was a color graphics terminal from Ithaca Intersystems. +# These entries were written (originally in termcap syntax) by Brian Yandell +# <yandell@stat.wisc.edu> and Mike Meyer <mikem@stat.wisc.edu> at the +# University of Wisconsin. + +# (graphos: removed obsolete and syntactically incorrect :kn=4:, +# removed :if=/usr/share/tabset/init.graphos: and +# <rf=/usr/share/tabset/init.graphos> no such file & no :st: -- esr) +graphos|graphos III:\ + :am:mi:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:dm=\E[4h:do=\E[B:\ + :ed=\E[4l:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ku=\E[A:le=^H:me=\E[m:nd=\E[C:nw=^M\ED:rc=\E8:sc=\E7:\ + :se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:up=\E[A:\ + :ve=\Ez56;2;0;0z\Ez73z\Ez4;1;1z:\ + :vs=\Ez4;2;1z\Ez56;2;80;24z: +graphos-30|graphos III with 30 lines:\ + :li#30:\ + :vs=\Ez4;2;1z\Ez56;2;80;30z:tc=graphos: + +#### Modgraph +# +# These people used to be reachable at: +# +# Modgraph, Inc +# 1393 Main Street, +# Waltham, MA 02154 +# Vox: (617)-890-5796. +# +# However, if you call that number today you'll get an insurance company. +# I have mail from "Michael Berman, V.P. Sales, Modgraph" dated +# 26 Feb 1997 that says: +# +# Modgraph GX-1000, replaced by GX-2000. Both are out of production, have been +# for ~7 years. Modgraph still in business. Products are rugged laptop and +# portable PC's and specialized CRT and LCD monitors (rugged, rack-mount +# panel-mount etc). I can be emailed at sonfour@aol.com +# +# Peter D. Smith <pdsmith@nbbn.com> notes that his modgraph manual was +# dated 1984. According to the manual, it featured Tek 4010/4014 +# graphics and DEC VT100/VT52 + ADM-3A emulation with a VT220-style keyboard. +# + +modgraph|mod24|modgraph terminal emulating vt100:\ + :xn@:\ + :co#80:li#24:\ + :is=\E\1369;0s\E\1367;1s\E[3g\E\13611;9s\E\13611;17s\E\13611;25s\E\13611;33s\E\13611;41s\E\13611;49s\E\13611;57s\E\13611;65s\E\13611;73s\E\13611;81s\E\13611;89s:\ + :rf@:sr=5\EM\E[K:vs=\E\1369;0s\E\1367;1s:tc=vt100: +# The GX-1000 manual is dated 1984. This looks rather like a VT-52. +modgraph2|modgraph gx-1000 80x24 with keypad not enabled:\ + :am:da:db:\ + :co#80:it#8:li#24:\ + :cd=50\EJ:ce=3\EK:cl=50\EH\EJ:cm=5\EY%+ %+ :do=2\EB:\ + :is=\E<\E\1365;2s\E\1367;1s\E[3g\E\13611;9s\E\13611;17s\E\13611;25s\E\13611;33s\E\13611;41s\E\13611;49s\E\13611;57s\E\13611;65s\E\13611;73s\E\13611;81s\E\13611;89s\E\13612;0s\E\13614;2s\E\13615;9s\E\13625;1s\E\1369;1s\E\13627;1:\ + :le=^H:nd=2\EC:sr=5\EI:ta=^I:up=2\EA: +# +# Modgraph from Nancy L. Cider <nancyc@brl-tbd> +# BUG NOTE from Barbara E. Ringers <barb@brl-tbd>: +# If we set TERM=vt100, and set the Modgraph screen to 24 lines, setting a +# mark and using delete-to-killbuffer work correctly. However, we would +# like normal mode of operation to be using a Modgraph with 48 line setting. +# If we set TERM=mod (which is a valid entry in termcap with 48 lines) +# the setting mark and delete-to-killbuffer results in the deletion of only +# the line the mark is set on. +# We've discovered that the delete-to-killbuffer works correctly +# with TERM=mod and screen set to 80x48 but it's not obvious. Only +# the first line disappears but a ctrl-l shows that it did work +# correctly. +modgraph48|mod|Modgraph w/48 lines:\ + :am:bs:pt:xn:\ + :co#80:it#8:li#48:vt#3:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:do=^J:ho=\E[H:\ + :is=\E<\E[1;48r\E[0q\E[3;4q\E=\E[?1h:k1=\EOP:k2=\EOQ:\ + :k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nl=^J:r1=\E=\E[0q\E>:rc=\E8:\ + :sc=\E7:se=\E[m:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[0q\E[1;2q\E[?5l\E[0q\E[4;3q: + +#### Morrow Designs +# +# This was George Morrow's company. They started in the late 1970s making +# S100-bus machines. They used to be reachable at: +# +# Morrow +# 600 McCormick St. +# San Leandro, CA 94577 +# +# but they're long gone now (1995). +# + +# The mt70 terminal was shipped with the Morrow MD-3 microcomputer. +# Jeff's specimen was dated June 1984. +# From: Jeff Wieland <wieland@acn.purdue.edu> 24 Feb 1995 +mt70|mt-70|Morrow MD-70; native Morrow mode:\ + :am:mi:ms:xo:\ + :co#80:it#8:li#24:\ + :%1=^AO\r:F1=^A`\r:F2=^Aa\r:F3=^Ab\r:F4=^Ac\r:F5=^Ad\r:\ + :F6=^Ae\r:F7=^Af\r:F8=^Ag\r:F9=^Ah\r:FA=^Ai\r:\ + :ac=+z,{-x.yOi`|jGkFlEmDnHqJtLuKvNwMxI:ae=\E%%:al=\EE:\ + :as=\E$:bl=^G:bt=\EI:cd=\EY:ce=10\ET:cl=^Z:cm=1\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:i1=\E"2\EG0\E]:\ + :ic=\EQ:im=:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\ + :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kB=^A^Z\r:\ + :kC=^An\r:kD=\177:kb=^H:kd=^AK\r:kh=^AN\r:kl=^AL\r:\ + :kr=^AM\r:ku=^AJ\r:le=^H:mh=\EG2:mk@:nd=^L:nw=^_:sf=^J:ta=^I:\ + :te=:ti=\E"2\EG0\E]:up=^K:us=\EG1:vb=\EK1\EK0:ve=\E"2:\ + :vi=\E"0:tc=adm+sgr: + +#### Motorola +# + +# Motorola EXORterm 155 from {decvax, ihnp4}!philabs!sbcs!megad!seth via BRL +# (Seth H Zirin) +ex155|Motorola Exorterm 155:\ + :am:bs:bw:\ + :co#80:kn#5:li#24:ug#1:\ + :bt=\E[:cd=\ET:ce=\EU:cl=\EX:cm=\EE%+ %+ :do=\EB:ho=\E@:\ + :kB=\E[:kC=\EX:kE=\EU:kS=\ET:kb=^H:kd=^J:kh=\E@:kl=^H:kr=^L:\ + :ku=^K:le=\ED:nd=\EC:se=\Ec\ED:so=\Eb\ED:ta=\EZ:ue=\Eg\ED:\ + :up=\EA:us=\Ef\ED: + +#### Omron +# +# This company is still around in 1995, manufacturing point-of-sale systems. + +omron|Omron 8025AG:\ + :am:bs:da:db:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\ER:ce=\EK:cl=\EJ:cr=^M:dc=\EP:dl=\EM:do=^J:\ + :ho=\EH:le=^H:nd=\EC:se=\E4:sf=\ES:so=\Ef:sr=\ET:up=\EA:\ + :vs=\EN: + +#### Ramtek +# +# Ramtek was a vendor of high-end graphics terminals around 1979-1983; they +# were competition for things like the Tektronics 4025. +# + +# Ramtek 6221 from BRL, probably by Doug Gwyn +# The following SET-UP modes are assumed for normal operation: +# UNDERLINE_CURSOR ANSI_MODE AUTO_XON/XOFF_ON +# NEWLINE_OFF 80_COLUMNS +# Other SET-UP modes may be set for operator convenience or communication +# requirements; I recommend +# SMOOTH_SCROLL AUTO_REPEAT_ON 3_#_SHIFTED WRAP_AROUND_ON +# Hardware tabs are assumed to be every 8 columns; they can be set up by the +# "reset", "tset", or "tabs" utilities (use rt6221-w, 160 columns, for this). +# Note that the Control-E key is useless on this brain-damaged terminal. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +rt6221|Ramtek 6221 80x24:\ + :bs:ms:pt:xo:\ + :co#80:it#8:kn#4:li#24:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ac=:ae=^O:as=^N:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[1;1H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^K:ho=\E[1;1H:is=\E)0:\ + :k0=\EOP:k1=\EOQ:k2=\EOR:k3=\EOS:kb=^H:kd=\E[B:ke=\E>:\ + :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:l0=PF1:l1=PF2:l2=PF3:l3=PF4:\ + :le=^H:ll=\E[24;1H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:\ + :r1=\E[1w\E[>37m\E[>39m\E[1v\E[20l\E[?3l\E[?6l\E[>5h\E[>6h\E[>7h\E[>8l\E[>9h\E[>10l\E[1;24r\E[m\E[q\E(B\017\E)0\E#5\E>:\ + :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\EM:us=\E[4m:ve=\E[>5h\E[>9h:vi=\E[>5l:\ + :vs=\E[>7h\E[>9l: +# [TO DO: Check out: short forms of ho/cl and ll; reset (\Ec)]. +rt6221-w|Ramtek 6221 160x48:\ + :co#160:li#48:\ + :ll=\E[48;1H:tc=rt6221: + +#### RCA +# + +# RCA VP3301 or VP3501 +rca|rca vp3301/vp3501:\ + :bs:\ + :co#40:li#24:\ + :cl=^L:cm=\EY%+ %+ :ho=^Z:nd=^U:se=\E\ES0:so=\E\ES1:up=^K: + + +#### Selanar +# + +# Selanar HiREZ-100 from BRL, probably by Doug Gwyn +# The following SET-UP modes are assumed for normal operation: +# SET_DEFAULT_TABS 48_LINES 80_COLUMNS +# ONLINE ANSI CURSOR_VISIBLE +# VT102_AUTO_WRAP_ON VT102_NEWLINE_OFF VT102_MONITOR_MODE_OFF +# LOCAL_ECHO_OFF US_CHAR_SET WPS_TERMINAL_DISABLED +# CPU_AUTO_XON/XOFF_ENABLED PRINT_FULL_SCREEN +# For use with graphics software, all graphics modes should be set to factory +# default. Other SET-UP modes may be set for operator convenience or +# communication requirements. No delays are specified; use "stty ixon -ixany" +# to enable DC3/DC1 flow control! +# I commented out the scrolling capabilities since they are too slow. +hirez100|Selanar HiREZ-100:\ + :bs:mi:ms:pt:xo:\ + :co#80:it#8:kn#4:li#48:vt#3:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:\ + :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:\ + :dc=\E[P:dl=\E[M:do=^J:ho=\E[H:is=\E<\E)0:k0=\EOP:k1=\EOQ:\ + :k2=\EOR:k3=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\ + :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l0=PF1:l1=PF2:l2=PF3:l3=PF4:\ + :le=^H:ll=\E[48H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i\E[?4i:po=\E[?5i\E[5i:ps=\E[i:\ + :r1=\030\E2\E<\E[4i\E[?4i\E[12h\E[2;4;20l\E[?0;7h\E[?1;3;6;19l\E[r\E[m\E(B\017\E)0\E>:\ + :rc=\E8:sc=\E7:se=\E[m:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\EM:\ + :us=\E[4m: +hirez100-w|Selanar HiREZ-100 in 132-column mode:\ + :co#132:tc=hirez100: + +#### Signetics +# + +# From University of Wisconsin +vsc|Signetics Vsc Video driver by RMC:\ + :am:ms:\ + :co#80:it#8:li#26:\ + :ce=\E[K:cl=50\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:do=^J:\ + :ho=\E[H:kb=^H:kd=^J:kl=^H:le=^H:me=^_!:mr=^_\040:nd=\E[C:\ + :nw=^M^J:se=^_!:sf=^J:so=^_\040:ta=^I:ue=^_#:up=\E[A:us=^_": + +#### Soroc +# +# Alan Frisbie <frisbie@flying-disk.com> writes: +# +# As you may recall, the Soroc logo consisted of their name, +# with the letter "S" superimposed over an odd design. This +# consisted of a circle with a slightly smaller 15 degree (approx.) +# wedge with rounded corners inside it. The color was sort of +# a metallic gold/yellow. +# +# If I had been more of a beer drinker it might have been obvious +# to me, but it took a clue from their service department to make +# me exclaim, "Of course!" The circular object was the top of +# a beer can (the old removable pop-top style) and "Soroc" was an +# anagram for "Coors". +# +# I can just imagine the founders of the company sitting around +# one evening, tossing back a few and trying to decide what to +# call their new company and what to use for a logo. +# + +# (soroc120: removed obsolete ":ma=^K^P^R^L^L :" -- esr) +soroc120|iq120|soroc|soroc iq120:\ + :cd=\EY:ce=\ET:cl=2\E*:do=^J:kd=^J:kl=^H:kr=^L:ku=^K:\ + :tc=adm3a: +soroc140|iq140|soroc iq140:\ + :am:bs:mi:\ + :co#80:li#24:\ + :al=1*\Ee:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:dc=\Ew:dl=.7*\Er:do=^J:ei=\E8:ho=^^:im=\E9:k0=^A0\r:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kh=^^:kr=^L:ku=^K:le=^H:\ + :ll=^^^K:nd=^L:se=\E\177:sf=^J:so=\E\177:ue=\E^A:up=^K:\ + :us=\E^A: + +#### Southwest Technical Products +# +# These guys made an early personal micro called the M6800. +# The ct82 was probably its console terminal. +# + +# (swtp: removed obsolete ":bc=^D:" -- esr) +swtp|ct82|southwest technical products ct82:\ + :am:\ + :co#82:li#20:\ + :al=^\^Y:bl=^G:cd=^V:ce=^F:cl=^L:cm=\013%r%.%.:cr=^M:\ + :dc=^\^H:dl=^Z:do=^J:ei=:ho=^P:ic=^\^X:im=:\ + :is=\034\022\036\023\036\004\035\027\011\023\036\035\036\017\035\027\022\011:\ + :le=^D:ll=^C:nd=^S:se=^^^F:sf=^N:so=^^^V:sr=^O:up=^A: + +#### Synertek +# +# Bob Manson <manson@pattyr.acs.ohio-state.edu> writes (28 Apr 1995): +# +# Synertek used to make ICs, various 6502-based single-board process +# control and hobbyist computers, and assorted peripherals including a +# series of small inexpensive terminals (I think they were one of the +# first to have a "terminal-on-a-keyboard", where the terminal itself +# was only slightly larger than the keyboard). +# +# They apparently had a KTM-1 model, which I've never seen. The KTM-2/40 +# was a 40x24 terminal that could connect to a standard TV through a +# video modulator. The KTM-2/80 was the 80-column version (the 2/40 +# could be upgraded to the 2/80 by adding 2 2114 SRAMs and a new ROM). +# I have a KTM-2/80 still in working order. The KTM-2s had fully +# socketed parts, used 2 6507s, a 6532 as keyboard scanner, a program +# ROM and 2 ROMs as character generators. They were incredibly simple, +# and I've never had any problems with mine (witness the fact that mine +# was made in 1981 and is still working great... I've blown the video +# output transistor a couple of times, but it's a 2N2222 :-) +# +# The KTM-3 (which is what is listed in the terminfo file) was their +# attempt at putting a KTM-2 in a box (and some models came with a +# CRT). It wasn't much different from the KTM-2 hardware-wise, but the +# control and escape sequences are very different. The KTM-3 was always +# real broken, at least according to the folks I've talked to about it. +# +# The padding in the entry is probably off--these terminals were very +# slow (it takes like 100ms for the KTM-2 to clear the screen...) And +# anyone with any sanity replaced the ROMs with something that provided +# a reasonable subset of VT100 functionality, since the usual ROMs were +# obviously very primitive... oh, you could get an upgraded ROM from +# Synertek for some incredible amount of money, but what hacker with an +# EPROM burner would do that? :) +# +# Sorry I don't have any contact info; I believe they were located in +# Sunnyvale, and I'm fairly sure they are still manufacturing ICs +# (they've gone to ASICs and FPGAs), but I doubt they're in the computer +# business these days. +# + +# Tested, seems to work fine with vi. +synertek|ktm|synertek380|synertek ktm 3/80 tubeless terminal:\ + :am:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=^Z:cm=\E=%+ %+ :le=^H:nd=^L:up=^K: + +#### Tab Office Products +# +# TAB Products Co. - Palo Alto, California +# Electronic Office Products, +# 1451 California Avenue 94304 +# +# I think they're out of business. +# + +# The tab 132 uses xon/xoff, so no padding needed. +# :ks:/:ke: have nothing to do with arrow keys. +# :is: sets 80 col mode, normal video, autowrap on (for :am:). +# Seems to be no way to get rid of status line. +# The manual for this puppy was dated June 1981. It claims to be VT52- +# compatible but looks more vt100-like. +tab132|tab|tab132-15|tab 132/15:\ + :da:db:\ + :co#80:dN@:li#24:lm#96:\ + :al=\E[L:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:\ + :im=\E[4h:is=\E[?7h\E[?3l\E[?5l:kd=\E[B:ke@:kl=\E[D:ks@:\ + :ku=\E[A:tc=vt100: +tab132-w|tab132 in wide mode:\ + :co#132:\ + :is=\E[?7h\E[?3h\E[?5l:tc=tab132: +tab132-rv|tab132 in reverse-video mode:\ + :is=\E[?7h\E[?3l\E[?5h:tc=tab132: +tab132-w-rv|tab132 in reverse-video/wide mode:\ + :is=\E[?7h\E[?3h\E[?5h:tc=tab132-w: + + +#### Teleray +# +# Research Incorporated +# 6425 Flying Cloud Drive +# Eden Prairie, MN 55344 +# Vox: (612)-941-3300 +# +# The Teleray terminals were all discontinued in 1992-93. RI still services +# and repairs these beasts, but no longer manufactures them. The Teleray +# people believe that all the types listed below are very rare now (1995). +# There was a newer line of Telerays (Model 7, Model 20, Model 30, and +# Model 100) that were ANSI-compatible. +# +# Note two things called "teleray". Reorder should move the common one +# to the front if you have either. A dumb teleray with the cursor stuck +# on the bottom and no obvious model number is probably a 3700. +# + +t3700|dumb teleray 3700:\ + :bs:\ + :co#80:li#24:\ + :bl=^G:cl=^L:cr=^M:do=^J:le=^H:sf=^J: +t3800|teleray 3800 series:\ + :bs:\ + :co#80:it#8:li#24:\ + :bl=^G:cd=\EJ:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:do=^J:ho=\EH:\ + :le=^H:ll=\EY7\040:nd=\EC:sf=^J:ta=^I:up=^K: +t1061|teleray|teleray 1061:\ + :am:bs:km:xs:xt:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=2*\EL:bl=^G:cd=1\EJ:ce=\EK:cl=1\014:cm=\EY%+ %+ :cr=^M:\ + :ct=\EG:dc=\EQ:dl=2*\EM:do=^J:ei=:ho=\EH:ic=\EP:im=:ip=0.4*:\ + :is=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef:\ + :k1=^Z1:k2=^Z2:k3=^Z3:k4=^Z4:k5=^Z5:k6=^Z6:k7=^Z7:k8=^Z8:\ + :le=^H:nd=\EC:se=\ER@:sf=^J:so=\040\ERD:st=\EF:ta=^I:\ + :ue=\ER@:up=\EA:us=\ERH: +t1061f|teleray 1061 with fast PROMs:\ + :al=\EL:dl=\EM:ip@:tc=t1061: +# "Teleray Arpa Special", officially designated as +# "Teleray Arpa network model 10" with "Special feature 720". +# This is the new (1981) fast microcode updating the older "arpa" proms +# (which gave meta-key and programmable-fxn keys). 720 is much much faster, +# converts the keypad to programmable function keys, and has other goodies. +# Standout mode is still broken (magic cookie, etc) so is suppressed as no +# programs handle such lossage properly. +# Note: this is NOT the old termcap's "t1061f with fast proms." +# From: J. Lepreau <lepreau@utah-cs> Tue Feb 1 06:39:37 1983, Univ of Utah +# (t10: removed overridden ":so@:se@:us@:ue@:" -- esr) +t10|teleray 10 special:\ + :bs:km:xs:xt:\ + :co#80:it#8:li#24:sg#2:ug#2:\ + :al=\EL:cd=\EJ:ce=\EK:cl=30\Ej:cm=\EY%+ %+ :dc=\EQ:dl=\EM:\ + :do=\EB:ei=:ho=\EH:ic=\EP:im=:le=^H:nd=\EC:pc=\200:se=\ER@:\ + :sf=\Eq:so=\ERD:sr=\Ep:ta=^I:ue=\ER@:up=\EA:us=\ERH: +# teleray 16 - map the arrow keys for vi/rogue, shifted to up/down page, and +# back/forth words. Put the function keys (f1-f10) where they can be +# found, and turn off the other magic keys along the top row, except +# for line/local. Do the magic appropriate to make the page shifts work. +# Also toggle ^S/^Q for those of us who use Emacs. +t16|teleray 16:\ + :am:da:db:mi:xs:xt:\ + :co#80:li#24:\ + :al=\E[L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\ + :cm=%i\E[%d;%df:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:k1=^Z1:k2=^Z2:k3=^Z3:k4=^Z4:k5=^Z5:k6=^Z6:\ + :k7=^Z7:k8=^Z8:k9=^Z9:k;=^Z0:le=^H:me=\E[m:nd=\E[C:se=\E[m:\ + :sf=^J:so=\E[7m:sr=\E[T:ta=^I:te=\E[V\E[24;1f\E[?38h:\ + :ti=\E[U\E[?38l:ue=\E[m:up=\E[A:us=\E[4m: + +#### Texas Instruments (ti) +# + +# The Silent 700 was so called because it was built around a quiet thermal +# printer. It was portable, equipped with an acoustic coupler, and pretty +# neat for its day. +ti700|ti733|ti735|ti745|ti800|ti silent 700/733/735/745 or omni 800:\ + :bs:hc:os:\ + :co#80:\ + :bl=^G:cr=162\r:do=^J:le=^H:sf=^J: + +# +# Texas Instruments 916 VDT 7 bit control mode +# +ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 vt220 mode 7 bit CTRL:\ + :da:db:in:ms:\ + :%9=^X:@4=\E[29~:@8=^J:AL=36\E[%dL:DC=250\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[29~:F2=\E[31~:IC=250\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ae=2\017:as=2\016:bt=\E[Z:cb=\E[1K:\ + :cd=6\E[J:ce=\E[0K:ch=\E[%+^AG:cl=6\E[H\E[2J:\ + :cm=\E[%i%d;%dH:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:eA=\E(B\E)0:\ + :ec=20\E[%dX:ei=:ff=^L:im=:ip=10:is=\E[1;24r\E[24;1H:\ + :k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\ + :k6=\E[23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~:\ + :kD=\E[P:kI=\E[@:kN=\E[S:kP=\E[T:kh=\E[H:mp=\E&:rs=\E[!p:\ + :sa@:st=\E[0W:vb=6\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :tc=vt220: +# +# Texas Instruments 916 VDT 8 bit control mode +# +ti916-8|ti916-220-8|Texas Instruments 916 VDT 8859/1 8 vt220 mode bit CTRL:\ + :%9=^X:@4=\23329~:@8=^J:F1=\23329~:F2=\23331~:k1=\23317~:\ + :k2=\23318~:k3=\23319~:k4=\23320~:k5=\23321~:k6=\23323~:\ + :k7=\23324~:k8=\23325~:k9=\23326~:k;=\23328~:kD=\233P:\ + :kI=\233@:kN=\233S:kP=\233T:kd=\233B:kh=\233H:kl=\233D:\ + :kr=\233C:ku=\233A:tc=ti916: +# +# Texas Instruments 916 VDT 8859/1 7 bit control 132 column mode +# +ti916-132|Texas Instruments 916 VDT vt220 132 column:\ + :co#132:tc=ti916: +# +# Texas Instruments 916 VDT 8859/1 8 bit control 132 column mode +# +ti916-8-132|Texas Instruments 916 VDT 8-bit vt220 132 column:\ + :co#132:tc=ti916-8: +ti924|Texas Instruments 924 VDT 8859/1 7 bit CTRL:\ + :am:bs:xo:\ + :co#80:it#8:li#24:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=%i\E[%d;%dH:cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:dl=\E[M:\ + :do=\E[B:ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[16~:\ + :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[P:kI=\E[@:\ + :kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:\ + :sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m:ve=\E[?25h:vi=\E[?25l:vs=\E[?31h: +ti924-8|Texas Instruments 924 VDT 8859/1 8 bit CTRL:\ + :am:xo:\ + :co#80:it#8:li#24:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=%i\E[%d;%dH:cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:dl=\E[M:\ + :do=\E[B:ho=\E[H:k1=17P\217>:k2=17Q\217>:k3=17R\217>:\ + :k4=17S\217>:k5=3316~\23316>:k6=3317~\23317>:\ + :k7=3318~\23318>:k8=3319~\23319>:k9=3320~\23320>:\ + :kD=33P\233>:kI=33@\233>:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:\ + :ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:\ + :nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:\ + :st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l:vs=\E[?31h: +ti924w|Texas Instruments 924 VDT 7 bit - 132 column mode:\ + :co#132:tc=ti924: +ti924-8w|Texas Instruments 924 VDT 8 bit - 132 column mode:\ + :co#132:tc=ti924-8: +ti931|Texas Instruments 931 VDT:\ + :am:bs:xo:\ + :co#80:li#24:\ + :al=\EN:bl=^G:cd=\EJ:ce=\EI:cl=\EL:cm=\EY%+ %+ :cr=^M:\ + :dc=\EQ:dl=\EO:do=\EB:ei=:ho=\EH:ic=\ER\EP\EM:im=:\ + :is=\EGB\E(@B@@\E):k1=\Ei1:k2=\Ei2:k3=\Ei3:k4=\Ei4:\ + :k5=\Ei5:k6=\Ei6:k7=\Ei7:k8=\Ei8:k9=\Ei9:kA=\EN:kD=\EQ:\ + :kI=\EP:kL=\EO:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:mb=\E4P:\ + :me=\E4@:mk=\E4H:mr=\E4B:nd=\EC:se=\E4@:sf=\Ea:so=\E4A:\ + :sr=\Eb:ue=\E4@:up=\EA:us=\E4D:ve=\E4@: +ti926|Texas Instruments 926 VDT 8859/1 7 bit CTRL:\ + :cs@:sf=\E[1S:sr=\E[1T:tc=ti924: +# (ti926-8: I corrected this from the broken SCO entry -- esr) +ti926-8|Texas Instruments 926 VDT 8859/1 8 bit CTRL:\ + :cs@:sf=\2331S:sr=\2331T:tc=ti924-8: +ti_ansi|basic entry for ti928:\ + :am:eo:ut:xn:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm:al=\E[L:bl=^G:bt=\E[Z:\ + :cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\ + :ic=\E[@:im=:k0=\E[V: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:kN=\E[G:kP=\E[I:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:nd=\E[C:op=\E[37;40m:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: +# +# 928 VDT 7 bit control mode +# +ti928|Texas Instruments 928 VDT 8859/1 7 bit CTRL:\ + :%9=\E[35~:@7=\E_1\E\\:@8=\E[8~:F1=\E[29~:F2=\E[31~:\ + :F3=\E[32~:F5=\E[34~:k1=\E[17~:k2=\E[18~:k3=\E[19~:\ + :k4=\E[20~:k5=\E[21~:k6=\E[23~:k7=\E[24~:k8=\E[25~:\ + :k9=\E[26~:k;=\E[28~:kD=\E[P:kI=\E[@:kN=\E[S:kP=\E[T:\ + :tc=ti_ansi: +# +# 928 VDT 8 bit control mode +# +ti928-8|Texas Instruments 928 VDT 8859/1 8 bit CTRL:\ + :%9=\23335~:@7=\2371\234:@8=\2338~:F1=\23329~:F2=\23331~:\ + :F3=\23332~:F5=\23334~:k1=\23317~:k2=\23318~:k3=\23319~:\ + :k4=\23320~:k5=\23321~:k6=\23323~:k7=\23324~:k8=\23325~:\ + :k9=\23326~:k;=\23328~:kD=\233P:kI=\233@:kN=\233S:\ + :kP=\233T:kh=\233H:tc=ti_ansi: + +#### Zentec (zen) +# + +# (zen30: removed obsolete :ma=^L ^R^L^K^P:. This entry originally +# had just :so:=\EG6 which I think means standout was supposed to be +# dim-reverse using ADM12-style attributes. ADM12 :us:/:ue: and +# <invis> might work-- esr) +zen30|z30|zentec 30:\ + :am:bs:mi:ul:\ + :co#80:li#24:\ + :al=1.5*\EE:bl=^G:cd=\EY:ce=1.0*\ET:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:dc=\EW:dl=1.5*\ER:do=^J:ei=\Er:ho=^^:im=\Eq:le=^H:\ + :mh=\EG2:nd=^L:sf=^J:so=\EG6:ue@:up=^K:us@:tc=adm+sgr: +# (zen50: this had extension capabilities +# :BS=^U:CL=^V:CR=^B: +# UK/DK/RK/LK/HM were someone's aliases for ku/kd/kl/kr/kh, +# which were also in the original entry -- esr) +# (zen50: removed obsolete ":ma=^Hh^Ll^Jj^Kk:" -- esr) +zen50|z50|zentec zephyr:\ + :am:bs:\ + :co#80:li#24:sg#1:\ + :al=\EE:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :dc=\EW:dl=\ER:ei=:\ + :ic=\EQ:im=:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mk@:ue@:up=^K:\ + :us@:tc=adm+sgr: + +# CCI 4574 (Office Power) from Will Martin <wmartin@BRL.ARPA> via BRL +cci|cci1|z8001|zen8001|CCI Custom Zentec 8001:\ + :am:bs:bw:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cs=\ER%+ %+ :do=^J:\ + :ho=\EH:is=\EM \EF\ET\EP\ER 7:kb=^H:kd=\EB:kh=\EH:kl=\ED:\ + :kr=\EC:ku=\EA:le=^H:mb=\EM":me=\EM\040:mh=\EM!:mk=\EM(:\ + :mr=\EM$:nd=\EC:pf=^T:po=^R:se=\EM\040:so=\EM$:sr=\EI:\ + :ue=\EM\040:up=\EA:us=\EM0:ve=\EP:vs=\EF\EQ\EM \ER 7: + +######## OBSOLETE UNIX CONSOLES +# + +#### Apollo consoles +# +# Apollo got bought by Hewlett-Packard. The Apollo workstations are +# labeled HP700s now. +# + +# From: Gary Darland <goodmanc@garnet.berkeley.edu> +apollo|apollo console:\ + :am:bs:mi:\ + :co#88:li#53:\ + :al=\EI:cd=\EJ:ce=\EK:ch=\EN%d:cl=^L:cm=\EM%+ %d):\ + :cv=\EO+\040:dc=\EP:dl=\EL:do=\EB:ei=\ER:im=\EQ:le=^H:\ + :nd=\EC:se=\ET:sf=\EE:so=\ES:sr=\ED:te=\EX:ti=\EW:ue=\EV:\ + :up=\EA:us=\EU: + +# We don't know whether or not the apollo guys replicated DEC's firmware bug +# in the VT132 that reversed :ei:/:im:. To be on the safe side, disable +# both these capabilities. +apollo_15P|apollo 15 inch display:\ + :ei@:im@:tc=vt132: +apollo_19L|apollo 19 inch display:\ + :ei@:im@:tc=vt132: +apollo_color|apollo color display:\ + :ei@:im@:tc=vt132: + +#### Convergent Technology +# +# Burroughs bought Convergent shortly before it merged with Univac. +# CTOS is (I believe) dead. Probably the aws is too (this entry dates +# from 1991 or earlier). +# + +# Convergent AWS workstation from Gould/SEL UTX/32 via BRL +# (aws: removed unknown :dn=^K: -- esr) +aws|Convergent Technologies AWS workstation under UTX and Xenix:\ + :am:\ + :co#80:li#28:sg#0:ug#0:\ + :ac=:ae=\EAAF:al=\EIL:as=\EAAN:bc=^H:cd=\EEF:ce=\EEL:\ + :ch=\EH%.:cl=^L:cm=\EC%r%.%.:cv=\EV%.:dc=\EDC:dl=\EDL:\ + :do=^K:ei=:ic=\EIC:im=:kb=^H:kd=^K:kl=^N:kr=^R:ku=^A:\ + :ma=\016h\013j\001k\022l\002m:nd=^R:nl=^J:se=\EARF:\ + :sf=\ESU:so=\EARN:sr=\ESD:ue=\EAUF:up=^A:us=\EAUN: +awsc|Convergent Technologies AWS workstation under CTOS:\ + :am:\ + :co#80:li#24:sg#0:ug#0:\ + :ac=:ae=\EAAF:as=\EAAN:bc=^N:cd=\EEF:ce=\EEL:cl=^L:\ + :cm=\EC%r%.%.:do=^K:kb=^H:kd=^K:kl=^N:kr=^R:ku=^A:\ + :ma=\016h\013j\001k\022l\002m:nd=^R:se=\EAA:so=\EAE:\ + :ue=\EAA:up=^A:us=\EAC: + +#### DEC consoles +# + +# The MicroVax console. Tim Theisen <tim@cs.wisc.edu> writes: +# The digital uVax II's had a graphic display called a qdss. It was +# supposed to be a high performance graphic accelerator, but it was +# late to market and barely appeared before faster dumb frame buffers +# appeared. I have only used this display while running X11. However, +# during bootup, it was in text mode, and probably had a terminal emulator +# within it. And that is what your termcap entry is for. In graphics +# mode the screen size is 1024x864 pixels. +qdss|qdcons|qdss glass tty:\ + :am:bs:\ + :co#128:li#57:\ + :cl=1\032:cm=\E=%.%.:do=^J:le=^H:nd=^L:up=^K: + +#### Fortune Systems consoles +# +# Fortune made a line of 68K-based UNIX boxes that were pretty nifty +# in their day; I (esr) used one myself for a year or so around 1984. +# They had no graphics, though, and couldn't compete against Suns and +# the like. R.I.P. +# + +# From: Robert Nathanson <c160-3bp@Coral> via tut Wed Oct 5, 1983 +# (This had extension capabilities +# :rv=\EH:re=\EI:rg=0:GG=0:\ +# :CO=\E\\:WL=^Aa\r:WR=^Ab\r:CL=^Ac\r:CR=^Ad\r:DL=^Ae\r:RF=^Af\r:\ +# :RC=^Ag\r:CW=^Ah\r:NU=^Aj\r:EN=^Ak\r:HM=^Al:PL=^Am\r:\ +# :PU=^An\r:PD=^Ao\r:PR=^Ap\r:HP=^A@\r:RT=^Aq\r:TB=\r:CN=\177:MP=\E+F: +# It had both ":bs:" and ":bs=^H:"; I removed the latter. Also, it had +# ":sg=0:" and ":ug=0:"; evidently the composer was trying (unnecessarily) +# to force both magic cookie glitches off. Once upon a time, I +# used a Fortune myself, so I know the capabilities of the form ^A[a-z]\r are +# function keys; thus the "Al" value for HM was certainly an error. I renamed +# EN/PD/PU/CO/CF/RT according to the XENIX/TC mappings, but not HM/DL/RF/RC. +# I think :rv: and :re: are start/end reverse video and :rg: is a nonexistent +# "reverse-video-glitch" capability; I have put :rv: and :re: in with standard +# names below. I've removed obsolete ":nl=5^J:" as there is a :do: -- esr) +fos|fortune|Fortune system:\ + :am:bs:bw:\ + :co#80:li#25:\ + :@7=^Ak\r:@8=^Aq:ac=j*k(l m"q&v%w#x-:ae=^O:al=15\034E:\ + :as=\Eo:bl=^G:cd=3*\034Y:ce=^\Z:cl=20\014:cm=\034C%+ %+ :\ + :cr=^M:dc=5\034W:dl=15\034R:do=3\n:ei=:ho=10\036:ic=5\034Q:\ + :im=:is=^_..:k1=^Aa\r:k2=^Ab\r:k3=^Ac\r:k4=^Ad\r:k5=^Ae\r:\ + :k6=^Af\r:k7=^Ag\r:k8=^Ah\r:kN=^Ao\r:kP=^An\r:kb=^H:\ + :kd=^Ay\r:kh=^A?\r:kl=^Aw\r:kr=^Az\r:ku=^Ax\r:le=^H:mb=\EN:\ + :me=\EI:mr=\EH:nw=^M^J:se=^\I`:sf=^J:so=^\H`:ta=^Z:ue=^\IP:\ + :up=3\013:us=^\HP:ve=\E\\:vi=\E]:vs=\E\072: + +#### Masscomp consoles +# +# Masscomp has gone out of business. Their product line was purchased by +# comany in Georgia (US) called "XS International", parts and service may +# still be available through them. +# + +# (masscomp: ":MT:" changed to ":km:"; -- esr) +masscomp|masscomp workstation console:\ + :bs:km:mi:\ + :co#80:it#8:li#24:\ + :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:im=\E[4h:is=\EGc\EGb\EGw:kb=^H:\ + :kd=\EOB:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:nd=\E[C:se=\E[m:\ + :so=\E[7m:ta=^I:ue=\EGau:up=\E[A:us=\EGu: +masscomp1|masscomp large screen version 1:\ + :co#104:li#36:tc=masscomp: +masscomp2|masscomp large screen version 2:\ + :co#64:li#21:tc=masscomp: + +######## OTHER OBSOLETE TYPES +# +# These terminals are *long* dead -- these entries are retained for +# historical interest only. +# + +#### Obsolete non-ANSI software emulations +# + +# CTRM terminal emulator +# 1. underlining is not allowed with colors: first, is is simulated by +# black on white, second, it disables background color manipulations. +# 2. BLINKING, REVERSE and BOLD are allowed with colors, +# so we have to save their status in the static registers A, B and H +# respectively, to be able to restore them when color changes +# (because any color change turns off ALL attributes) +# 3. :md: and :mr: sequences alternate modes, +# rather than simply entering them. Thus we have to check the +# static register B and H to determine the status, before sending the +# escape sequence. +# 4. :me: now must set the status of all 3 register (A,B,H) to zero +# and then reset colors +# 5. implementation of the protect mode would badly penalize the performance. +# we would have to use \E&bn sequence to turn off colors (as well as all +# other attributes), and keep the status of protect mode in yet another +# static variable. If someone really needs this mode, they would have to +# create another terminfo entry. +# 6. original color-pair is white on black. +# store the information about colors into static registers +# 7. set foreground color. it performs the following steps. +# 1) turn off all attributes +# 2) turn on the background and video attributes that have been turned +# on before (this information is stored in static registers X,Y,Z,A,B,H,D). +# 3) turn on foreground attributes +# 4) store information about foreground into U,V,W static registers +# 8. turn on background: similar to turn on foreground above +ctrm|C terminal emulator:\ + :am:ut:xo:\ + :Co#8:NC#2:Nl#0:co#80:lh#0:li#24:lm#0:lw#0:pa#63:pb#19200:vt#6:\ + :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%r%dc%dY:cr=^M:ct=\E3:cv=\E&a%dY:dc=2\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=2:is=\E&jA\r:k1=\Ep\r:k2=\Eq\r:\ + :k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:k7=\Ev\r:k8=\Ew\r:\ + :kb=^H:kd=\Ew\r:ke=\E&jA:kh=\Ep\r:kl=\Eu\r:kr=\Ev\r:\ + :ks=\E&jB:ku=\Et\r:le=^H:mb=\E&dA%{1}%PA:\ + :md=%?%gH%{0}%=%t\E&dH%{1}%PH%;:\ + :me=\E&d@%{0}%PA%{0}%PB%{0}%PH:\ + :mr=%?%gB%{0}%=%t\E&dB%{1}%PB%;:nd=\EC:\ + :op=\E&bn\E&bB\E&bG\E&bR%{0}%PX%{0}%PY%{0}%PZ%{1}%PW%{1}%PV%{1}%PU:\ + :sf=^J:so=\E&dD:st=\E1:ta=2\011:up=\EA:us=\E&dD: + +# gs6300 - can't use blue foreground, it clashes with underline; +# it's simulated with cyan +# Bug: The <op> capability probably resets attributes. +# (gs6300: commented out <rmln> (no <smln>) --esr) +gs6300|emots|AT&T PC6300 with EMOTS terminal emulator:\ + :am:ms:ut:xo:\ + :Co#8:co#80:it#8:li#24:pa#63:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:Sb=\E[?;%dm:UP=\E[%dA:\ + :ac=++,,--..``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:\ + :ei=:ho=\E[H:ic=\E[@:im=:is=\E[m:k1=\E[0s:k2=\E[24s:\ + :k3=\E[1s:k4=\E[23s:k5=\E[2s:k6=\E[22s:k7=\E[3s:k8=\E[21s:\ + :kB=^R^I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\E[10m:mr=\E[7m:nd=\E[C:\ + :op=\E[?;m:pf=\E[4i:po=\E[5i:r1=\Ec:sf=^J:so=\E[1m:sr=\E[L:\ + :ta=^I:up=\E[A:us=\E[4m: + +# From: <earle@smeagol.UUCP> 29 Oct 85 05:40:18 GMT +# MS-Kermit with Heath-19 emulation mode enabled +# (h19k: changed ":pt@:" to ":it@" +h19k|h19kermit|heathkit emulation provided by Kermit (no auto margin):\ + :am@:da:db:xt:\ + :it@:\ + :ta@:tc=h19-u: + +# Apple Macintosh with Versaterm, a terminal emulator distributed by Synergy +# Software (formerly Peripherals Computers & Supplies, Inc) of +# 2457 Perkiomen Ave., Reading, PA 19606, 1-800-876-8376. They can +# also be reached at support@synergy.com. +versaterm|versaterm vt100 emulator for the macintosh:\ + :am:xn:\ + :co#80:it#8:li#24:\ + :al=9\E[1L:bl=^G:cd=50\E[J:ce=3\E[K:cl=50\E[;H\E[2J:\ + :cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=7\E[1P:\ + :dl=9\E[1M:do=^J:ei=:ho=\E[H:ic=7\E[1@:im=:\ + :is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :kb=^H:kd=\EOB:ke=\E>\E[?1l:kl=\EOD:kr=\EOC:ks=\E=\E[?1h:\ + :ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:\ + :nd=2\E[C:nw=^M^J:r1=\E>:rc=\E8:\ + :rf=/usr/share/tabset/vt100:sc=\E7:se=2\E[m:so=2\E[7m:\ + :sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:us=2\E[4m: + +# From: Rick Thomas <ihnp4!btlunix!rbt> +# (xtalk: I added <rmam>/<smam> based on the init string. +xtalk|IBM PC with xtalk communication program (versions up to 3.4):\ + :am:mi:ms:xo:\ + :co#80:it#8:li#24:sg#1:vt#3:\ + :DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=99\E[L:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\ + :cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:ct=\E[3g:dl=99\E[M:\ + :do=^J:eA=\E(B\E)0:ho=\E[H:kb=^H:kd=\EOB:ke=\E[?1l\E>:\ + :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:me=\E[m:\ + :nd=2\E[C:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :se=\E[m\040:sf=^J:so=\E[7m\040:sr=5\EM:st=\EH:ta=^I:\ + :up=2\E[A:tc=vt100+fnkeys: + +# The official PC terminal emulator program of the AT&T Product Centers. +# Note - insert mode commented out - doesn't seem to work on AT&T PC. +simterm|attpc running simterm:\ + :am:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\E=%+ %+ :cr=^M:\ + :dc=\ER:dl=\EM:do=\EB:ho=\EH:le=^H:me=\E&d@:nd=\EC:se=\E&d@:\ + :sf=^J:so=\E&dB:te=\EVE:ti=\EVS:up=\EA: + +#### Daisy wheel printers +# +# This section collects Diablo, DTC, Xerox, Qume, and other daisy +# wheel terminals. These are now largely obsolete. +# + +# (diablo1620: removed :if=/usr/share/tabset/xerox1720:, no such file -- esr) +diablo1620|diablo1720|diablo450|ipsi|diablo 1620:\ + :hc:os:\ + :co#132:it#8:\ + :ch=\E\011%i%.:ct=\E2:do=^J:hd=\ED:hu=\EU:kb=^H:le=^H:\ + :st=\E1:ta=^I:up=\E^J: +diablo1620-m8|diablo1640-m8|diablo 1620 w/8 column left margin:\ + :co#124:\ + :is=\r \E9:tc=diablo1620: +# (diablo1640: removed :if=/usr/share/tabset/xerox1730:, no such file -- esr) +diablo1640|diablo1730|diablo1740|diablo630|x1700|diablo|xerox|diablo 1640:\ + :bl=^G:se=\E&:so=\EW:ue=\ER:us=\EE:tc=diablo1620: +# (diablo1640-lm: removed :if=/usr/share/tabset/xerox1730-lm:, no such +# file -- esr) +diablo1640-lm|diablo-lm|xerox-lm|diablo 1640 with indented left margin:\ + :co#124:\ + :se=\E&:so=\EW:ue=\ER:us=\EE:tc=diablo1620: +diablo1740-lm|630-lm|1730-lm|x1700-lm|diablo 1740 printer:\ + :tc=diablo1640-lm: +# DTC 382 with VDU. Has no :cd: so we fake it with :ce:. Standout +# :so=^P\s\002^PF: works but won't go away without dynamite :se=^P\s\0:. +# The terminal has tabs, but I'm getting tired of fighting the braindamage. +# If no tab is set or the terminal's in a bad mood, it glitches the screen +# around all of memory. Note that return puts a blank ("a return character") +# in the space the cursor was at, so we use ^P return (and thus ^P newline for +# newline). Note also that if you turn off :pt: and let Unix expand tabs, +# curses won't work (some old BSD versions) because it doesn't clear this bit, +# and cursor addressing sends a tab for row/column 9. What a losing terminal! +# I have been unable to get tabs set in all 96 lines - it always leaves at +# least one line with no tabs in it, and once you tab through that line, +# it completely weirds out. +# (dtc382: change :te: to :ti: -- it just does a clear --esr) +dtc382|DTC 382:\ + :am:da:db:xs:\ + :co#80:li#24:lm#96:\ + :al=^P^Z:bl=^G:cd=\020\025\020\023\020\023:ce=^P^U:\ + :cl=20\020\035:cm=\020\021%r%.%.:cr=^P^M:dc=^X:dl=^P^S:\ + :ei=^Pi:ho=^P^R:im=^PI:le=^H:nd=^PR:pc=\177:sf=^J:te=:\ + :ti=20\020\035:ue=^P \200:up=^P^L:us=^P ^P:ve=^Pb:vs=^PB: +dtc300s|DTC 300s:\ + :hc:os:\ + :co#132:\ + :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\Eh:hu=\EH:kb=^H:le=^H:\ + :sf=^J:st=\E1:ta=^I:up=^Z: +gsi|mystery gsi terminal:\ + :hc:os:\ + :co#132:\ + :bl=^G:cr=^M:do=^J:hd=\Eh:hu=\EH:le=^H:sf=^J:ta=^I:up=^Z: +aj830|aj832|aj|anderson jacobson:\ + :hc:os:\ + :bl=^G:cr=^M:do=^J:hd=\E9:hu=\E8:le=^H:sf=^J:up=\E7: +# From: Chris Torek <chris@gyre.umd.edu> Thu, 7 Nov 85 18:21:58 EST +aj510|Anderson-Jacobson model 510:\ + :am:mi:\ + :co#80:li#24:\ + :al=2*\E&I:cd=\E'P:ce=\E'L:cl=^L:cm=\E#%+ %+ :dc=.1*\E'D:\ + :dl=2*\E&D:ei=\E'J:ic=:im=\E'I:ip=.1*:kd=\EZ:kl=\EW:kr=\EX:\ + :ku=\EY:le=^H:nd=\EX:pc=\177:se=\E"I:so=\E"I:te=\E"N:\ + :ti=\E"N:ue=\E"U:up=\EY:us=\E"U: +# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 +# This is incomplete, but it's a start. +nec5520|nec|spinwriter|nec 5520:\ + :hc:os:\ + :co#132:it#8:\ + :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\E]s\n\E]W:\ + :hu=\E]s\E9\E]W:kb=^H:le=^H:sf=^J:st=\E1:ta=^I:up=\E9: +qume5|qume|Qume Sprint 5:\ + :hc:os:\ + :co#80:it#8:\ + :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\Eh:hu=\EH:kb=^H:le=^H:\ + :sf=^J:st=\E1:ta=^I:up=^Z: +# I suspect the xerox 1720 is the same as the diablo 1620. +xerox1720|x1720|x1750|xerox 1720:\ + :hc:os:\ + :co#132:it#8:\ + :bl=^G:cr=^M:ct=\E2:do=^J:ff=^L:le=^H:sf=^J:st=\E1:ta=^I: + +#### Miscellaneous obsolete terminals, manufacturers unknown +# +# If you have any information about these (like, a manufacturer's name, +# and a date on the serial-number plate) please send it! + +cad68-3|cgc3|cad68 basic monitor transparent mode size 3 chars:\ + :am:bs:\ + :co#73:li#36:\ + :cl=^Z:ho=^^:le=^H:nd=^L:up=^K: +cad68-2|cgc2|cad68 basic monitor transparent mode size 2 chars:\ + :am:bs:\ + :co#85:li#39:\ + :cl=^Z:ho=^^:k1=\E5:k2=\E6:k3=\E7:k4=\E8:kd=\E2:kl=\E3:\ + :kr=\E4:ku=\E1:le=^H:nd=^L:se=\Em^C:so=\Em^L:up=^K: +cops10|cops|cops-10|cops 10:\ + :am:bw:\ + :co#80:li#24:\ + :bl=^G:cd=^W:ce=^V:cl=30\030:cm=\020%+ %+ :cr=^M:do=^J:\ + :kb=^H:kd=^J:kh=^Y:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:sf=^J:up=^K: +# (d132: removed duplicate :ic=\E5:, +# merged in capabilities from a BRL entry -- esr) +d132|datagraphix|datagraphix 132a:\ + :da:db:in:\ + :co#80:li#30:\ + :al=\E3:bl=^G:cl=^L:cm=\E8%i%3%3:cr=^M:dc=\E6:do=^J:ei=:\ + :ho=\ET:ic=\E5:im=:kb=^H:kd=^J:kl=^H:le=^H:nd=\EL:nw=^M^J:\ + :sf=^J:sr=\Ew:ta=^I:up=\EK:ve=\Em\En:vs=\Ex: +# The d800 was an early portable terminal from c.1984-85 that looked a lot +# like the original Compaq `lunchbox' portable (but no handle). It had a vt220 +# mode (which is what this entry looks like) and several other lesser-known +# emulations. +d800|Direct 800/A:\ + :am:bs:da:db:ms:xs:\ + :co#80:it#8:li#24:\ + :ac=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~:\ + :ae=\E[m:as=\E[1m:bl=^G:cd=\E[J:ce=\E[K:cl=\E[1;1H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:do=^J:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:kd=\E[B:kl=\E[D:\ + :kr=\E[C:ku=\E[A:le=^H:me=\E[m:nd=\E[C:se=\E[m:sf=\ED:\ + :so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[>12h:\ + :vs=\E[>12l: +digilog|digilog 333:\ + :bs:\ + :co#80:li#16:\ + :bl=^G:ce=^X:cr=^M:do=^J:ho=^N:le=^H:nd=^I:sf=^J:up=^O: +# The DWK was a terminal manufactured in the Soviet Union c.1986 +dwk|dwk-vt|dwk terminal:\ + :am:\ + :co#80:it#8:li#24:\ + :ac=+\136,Q-S.M0\177`+a\072f'g#h#i#jXkClJmFnNo~qUs_tEuPv\\wKxW~_:\ + :ae=\EG:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :\ + :cr=^M:dc=\EP:do=^J:ei=:ho=\EH:ic=\EQ:im=:k1=\Ef1:k2=\Ef2:\ + :k3=\Ef3:k4=\Ef4:k5=\Ef5:k6=\Ef6:k7=\Ef7:k8=\Ef8:k9=\Ef9:\ + :k;=\Ef0:kD=\Ee:kI=\Ed:kN=\Eh:kP=\Eg:kb=\177:kd=\EB:kl=\ED:\ + :kr=\EC:ku=\EA:le=^H:me=\EX:mr=\ET:nd=\EC:nw=^M^J:se=\EX:\ + :sf=^J:so=\ET:sr=\ES:ta=^I:up=\EA: +env230|envision230|envision 230 graphics terminal:\ + :xn@:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:tc=vt100: +# These execuports were impact-printer ttys with a 30- or maybe 15-cps acoustic +# coupler attached, the whole rig fitting in a suitcase and more or less +# portable. Hot stuff for c.1977 :-) -- esr +ep48|ep4080|execuport 4080:\ + :am:bs:os:\ + :co#80:\ + :bl=^G:cr=^M:do=^J:hd=^\:hu=^^:le=^H:sf=^J: +ep40|ep4000|execuport 4000:\ + :co#136:tc=ep4080: +# Adam Thompson <athompso@pangea.ca> tells us: +# Informer series - these are all portable units, resembling older +# automatic bread-baking machines. The terminal looks like a `clamshell' +# design, but isn't. The structure is similar to the Direct terminals, +# but only half the width. The entire unit is only about 10" wide. +# It features an 8" screen (6" or 7" if you have color!), and an 9"x6" +# keyboard. All the keys are crammed together, much like some laptop +# PCs today, but perhaps less well organized...all these units have a +# bewildering array of plugs on the back, including a built-in modem. +# The 305 was a color version of the 304; the 306 and 307 were mono and +# color terminals built for IBM bisync protocols. +# From: Paul Leondis <unllab@amber.berkeley.edu> +ifmr|Informer D304:\ + :am:bs:\ + :co#80:li#24:\ + :cd=\E/:ce=\EQ:cl=\EZ:cm=\EY%r%+ %+ :dc=\E\\:do=^J:ei=:\ + :ho=\EH:ic=\E[:im=:le=^H:me=\EK:nd=\EC:se=\EK:so=\EJ:sr=\En:\ + :up=\EA: +# Entry largely based on wy60 and has the features of wy60ak. +# (sgr removed to fit entry within 1023 bytes) +# (rmacs/smacs removed for consistency) +# (acsc removed to fit entry within 1023 bytes) +# (terminfo-only capabilities suppressed to fit entry within 1023 bytes) +opus3n1+|Esprit Opus3n1+ in wy60 mode with ANSI arrow keys:\ + :am:bw:hs:km:mi:ms:ul:xo:\ + :co#80:li#24:ws#80:\ + :al=4\EE:bl=^G:bt=\EI:cd=100\EY:ce=\ET:cl=100\E*:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=11\EW:dl=5\ER:do=^J:\ + :ds=\Ez(\r:ei=\Er:fs=^M:ho=2\036:\ + :if=/usr/share/tabset/std:im=\Eq:ip=3:\ + :is=\E`\072\Ee(\EO\Ee6\Ec41\E~4\Ec21\Ed/\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177\Ezz`\E[F\177\EA1*\EZH12:\ + :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\ + :k7=^AF\r:k8=^AG\r:k9=^AH\r:kD=\EW:kI=\EQ:kN=\EK:kP=\EJ:\ + :kb=^H:kd=\E[B:kh=^^:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\EG2:\ + :me=\EcD:mh=\EGp:nd=^L:nw=3\r\n:sf=^J:sr=7\Ej:st=\E1:\ + :ta=5\011:te=:\ + :ti=\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177:\ + :ts=\Ez(:uc=\EG8\EG0:up=^K:ve=\E`1:vi=\E`0:tc=adm+sgr: +teletec|Teletec Datascreen:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=^L:cr=^M:do=^J:ho=^^:le=^H:nd=^_:sf=^J:up=^K: +# From: Mark Dornfeld <romwa@ucbvax.berkeley.edu> +# This description is for the LANPAR Technologies VISION 3220 +# terminal from 1984/85. The function key definitions k0-k5 represent the +# edit keypad: FIND, INSERT HERE, REMOVE, SELECT, PREV SCREEN, +# NEXT SCREEN. The key definitions k6-k9 represent the PF1 to PF4 keys. +# +# Kenneth Randell <kenr@datametrics.com> writes on 31 Dec 1998: +# I had a couple of scopes (3221) like this once where I used to work, around +# the 1987 time frame if memory serves me correctly. These scopes were made +# by an outfit called LANPAR Technologies, and were meant to me DEC VT 220 +# compatible. The 3220 was a plain text terminal like the VT-220, the 3221 +# was a like the VT-240 (monochrome with Regis + Sixel graphics), and the 3222 +# was like the VT-241 (color with Regis + Sixel Graphics). These terminals +# (3221) cost about $1500 each, and one was always broken -- had to be sent +# back to the shop for repairs. +# The only real advantage these scopes had over the VT-240's were: +# 1) They were faster in the Regis display, or at least the ones I did +# 2) They had a handy debugging feature where you could split-screen the +# scope, the graphics would appear on the top, and the REGIS commands would +# appear on the bottom. I don't remember the VT-240s being able to do that. +# I would swear that LANPAR Technologies was in MA someplace, but since I +# don't work at the same place anymore, and those terminals and manuals were +# long since junked, I cannot be any more sure than that. +# +# (v3220: removed obsolete ":kn#10:", +# I added <rmam>/<smam> based on the init string -- esr) +v3220|LANPAR Vision II model 3220/3221/3222:\ + :am:bs:mi:xn:\ + :co#80:it#8:li#24:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\ + :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:im=\E[4h:\ + :is=\E>\E[?3l\E[?7h\E[?8h\E[p:k0=\E[1~:k1=\E[2~:\ + :k2=\E[3~:k3=\E[4~:k4=\E[5~:k5=\E[6~:k6=\E[OP:k7=\E[OQ:\ + :k8=\E[OR:k9=\E[OS:kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E=:ku=\E[A:le=^H:me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:\ + :sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m: +######## ICH/ICH1 VERSUS RMIR/SMIR +# +# Some non-curses applications get confused if both ich/ich1 and rmir/smir +# are present; the symptom is doubled characters in an update using insert. +# These applications are technically correct; in both 4.3BSD termcap and +# terminfo, you're not actually supposed to specify both ich/ich1 and rmir/smir +# unless the terminal needs both. To my knowledge, no terminal still in this +# file requires both other than the very obsolete dm2500. +# +# For ncurses-based applications this is not a problem, as ncurses uses +# one or the other as appropriate but never mixes the two. Therefore we +# have not corrected entries like `linux' and `xterm' that specify both. +# If you see doubled characters from these, use the linux-nic and xterm-nic +# entries that suppress ich/ich1. And upgrade to ncurses! +# + +######## VT100/ANSI/ISO 6429/ECMA-48/PC-TERM TERMINAL STANDARDS +# +# ANSI X3.64 has been withdrawn and replaced by ECMA-48. The ISO 6429 and +# ECMA-48 standards are said to be almost identical, but are not the same +# as X3.64 (though for practical purposes they are close supersets of it). +# +# You can obtain ECMA-48 for free by sending email to helpdesk@ecma.ch +# requesting the standard(s) you want (i.e. ECMA-48, "Control Functions for +# Coded Character Sets"), include your snail-mail address, and you should +# receive the document in due course. Don't expect an email acknowledgement. +# +# Related standards include "X3.4-1977: American National Standard Code for +# Information Interchange" (the ASCII standard) and "X3.41.1974: +# Code-Extension Techniques for Use with the 7-Bit Coded Character Set of +# American National Standard for Information Interchange." I believe (but +# am not certain) that these are effectively identical to ECMA-6 and ECMA-35 +# respectively. +# + +#### VT100/ANSI/ECMA-48 +# +# ANSI Standard (X3.64) Control Sequences for Video Terminals and Peripherals +# and ECMA-48 Control Functions for Coded Character Sets. +# +# Much of the content of this comment is adapted from a table prepared by +# Richard Shuford, based on a 1984 Byte article. Terminfo correspondences, +# discussion of some terminfo-related issues, and updates to capture ECMA-48 +# have been added. Control functions described in ECMA-48 only are tagged +# with * after their names. +# +# The table is a complete list of the defined ANSI X3.64/ECMA-48 control +# sequences. In the main table, \E stands for an escape (\033) character, +# SPC for space. Pn stands for a single numeric parameter to be inserted +# in decimal ASCII. Ps stands for a list of such parameters separated by +# semicolons. Parameter meanings for most parametrized sequences are +# decribed in the notes. +# +# Sequence Sequence Parameter or +# Mnemonic Name Sequence Value Mode terminfo +# ----------------------------------------------------------------------------- +# APC Applicatn Program Command \E _ - Delim - +# BEL Bell * ^G - - bel +# BPH Break Permitted Here * \E B - * - +# BS Backpace * ^H - EF - +# CAN Cancel * ^X - - - (A) +# CBT Cursor Backward Tab \E [ Pn Z 1 eF cbt +# CCH Cancel Previous Character \E T - - - +# CHA Cursor Horizntal Absolute \E [ Pn G 1 eF hpa (B) +# CHT Cursor Horizontal Tab \E [ Pn I 1 eF tab (C) +# CMD Coding Method Delimiter * \E +# CNL Cursor Next Line \E [ Pn E 1 eF nel (D) +# CPL Cursor Preceding Line \E [ Pn F 1 eF - +# CPR Cursor Position Report \E [ Pn ; Pn R 1, 1 - - (E) +# CSI Control Sequence Intro \E [ - Intro - +# CTC Cursor Tabulation Control \E [ Ps W 0 eF - (F) +# CUB Cursor Backward \E [ Pn D 1 eF cub +# CUD Cursor Down \E [ Pn B 1 eF cud +# CUF Cursor Forward \E [ Pn C 1 eF cuf +# CUP Cursor Position \E [ Pn ; Pn H 1, 1 eF cup (G) +# CUU Cursor Up \E [ Pn A 1 eF cuu +# CVT Cursor Vertical Tab \E [ Pn Y - eF - (H) +# DA Device Attributes \E [ Pn c 0 - - +# DAQ Define Area Qualification \E [ Ps o 0 - - +# DCH Delete Character \E [ Pn P 1 eF dch +# DCS Device Control String \E P - Delim - +# DL Delete Line \E [ Pn M 1 eF dl +# DLE Data Link Escape * ^P - - - +# DMI Disable Manual Input \E \ - Fs - +# DSR Device Status Report \E [ Ps n 0 - - (I) +# DTA Dimension Text Area * \E [ Pn ; Pn SPC T - PC - +# EA Erase in Area \E [ Ps O 0 eF - (J) +# ECH Erase Character \E [ Pn X 1 eF ech +# ED Erase in Display \E [ Ps J 0 eF ed (J) +# EF Erase in Field \E [ Ps N 0 eF - +# EL Erase in Line \E [ Ps K 0 eF el (J) +# EM End of Medium * ^Y - - - +# EMI Enable Manual Input \E b Fs - +# ENQ Enquire ^E - - - +# EOT End Of Transmission ^D - * - +# EPA End of Protected Area \E W - - - (K) +# ESA End of Selected Area \E G - - - +# ESC Escape ^[ - - - +# ETB End Transmission Block ^W - - - +# ETX End of Text ^C - - - +# FF Form Feed ^L - - - +# FNK Function Key * \E [ Pn SPC W - - - +# GCC Graphic Char Combination* \E [ Pn ; Pn SPC B - - - +# FNT Font Selection \E [ Pn ; Pn SPC D 0, 0 FE - +# GSM Graphic Size Modify \E [ Pn ; Pn SPC B 100, 100 FE - (L) +# GSS Graphic Size Selection \E [ Pn SPC C none FE - +# HPA Horz Position Absolute \E [ Pn ` 1 FE - (B) +# HPB Char Position Backward \E [ j 1 FE - +# HPR Horz Position Relative \E [ Pn a 1 FE - (M) +# HT Horizontal Tab * ^I - FE - (N) +# HTJ Horz Tab w/Justification \E I - FE - +# HTS Horizontal Tab Set \E H - FE hts +# HVP Horz & Vertical Position \E [ Pn ; Pn f 1, 1 FE - (G) +# ICH Insert Character \E [ Pn @ 1 eF ich +# IDCS ID Device Control String \E [ SPC O - * - +# IGS ID Graphic Subrepertoire \E [ SPC M - * - +# IL Insert Line \E [ Pn L 1 eF il +# IND Index \E D - FE - +# INT Interrupt \E a - Fs - +# JFY Justify \E [ Ps SPC F 0 FE - +# IS1 Info Separator #1 * ^_ - * - +# IS2 Info Separator #1 * ^^ - * - +# IS3 Info Separator #1 * ^] - * - +# IS4 Info Separator #1 * ^\ - * - +# LF Line Feed ^J - - - +# LS1R Locking Shift Right 1 * \E ~ - - - +# LS2 Locking Shift 2 * \E n - - - +# LS2R Locking Shift Right 2 * \E } - - - +# LS3 Locking Shift 3 * \E o - - - +# LS3R Locking Shift Right 3 * \E | - - - +# MC Media Copy \E [ Ps i 0 - - (S) +# MW Message Waiting \E U - - - +# NAK Negative Acknowledge * ^U - * - +# NBH No Break Here * \E C - - - +# NEL Next Line \E E - FE nel (D) +# NP Next Page \E [ Pn U 1 eF - +# NUL Null * ^@ - - - +# OSC Operating System Command \E ] - Delim - +# PEC Pres. Expand/Contract * \E Pn SPC Z 0 - - +# PFS Page Format Selection * \E Pn SPC J 0 - - +# PLD Partial Line Down \E K - FE - (T) +# PLU Partial Line Up \E L - FE - (U) +# PM Privacy Message \E ^ - Delim - +# PP Preceding Page \E [ Pn V 1 eF - +# PPA Page Position Absolute * \E [ Pn SPC P 1 FE - +# PPB Page Position Backward * \E [ Pn SPC R 1 FE - +# PPR Page Position Forward * \E [ Pn SPC Q 1 FE - +# PTX Parallel Texts * \E [ \ - - - +# PU1 Private Use 1 \E Q - - - +# PU2 Private Use 2 \E R - - - +# QUAD Typographic Quadding \E [ Ps SPC H 0 FE - +# REP Repeat Char or Control \E [ Pn b 1 - rep +# RI Reverse Index \E M - FE - (V) +# RIS Reset to Initial State \E c - Fs - +# RM Reset Mode * \E [ Ps l - - - (W) +# SACS Set Add. Char. Sep. * \E [ Pn SPC / 0 - - +# SAPV Sel. Alt. Present. Var. * \E [ Ps SPC ] 0 - - (X) +# SCI Single-Char Introducer \E Z - - - +# SCO Sel. Char. Orientation * \E [ Pn ; Pn SPC k - - - +# SCS Set Char. Spacing * \E [ Pn SPC g - - - +# SD Scroll Down \E [ Pn T 1 eF rin +# SDS Start Directed String * \E [ Pn ] 1 - - +# SEE Select Editing Extent \E [ Ps Q 0 - - (Y) +# SEF Sheet Eject & Feed * \E [ Ps ; Ps SPC Y 0,0 - - +# SGR Select Graphic Rendition \E [ Ps m 0 FE sgr (O) +# SHS Select Char. Spacing * \E [ Ps SPC K 0 - - +# SI Shift In ^O - - - (P) +# SIMD Sel. Imp. Move Direct. * \E [ Ps ^ - - - +# SL Scroll Left \E [ Pn SPC @ 1 eF - +# SLH Set Line Home * \E [ Pn SPC U - - - +# SLL Set Line Limit * \E [ Pn SPC V - - - +# SLS Set Line Spacing * \E [ Pn SPC h - - - +# SM Select Mode \E [ Ps h none - - (W) +# SO Shift Out ^N - - - (Q) +# SOH Start Of Heading * ^A - - - +# SOS Start of String * \E X - - - +# SPA Start of Protected Area \E V - - - (Z) +# SPD Select Pres. Direction * \E [ Ps ; Ps SPC S 0,0 - - +# SPH Set Page Home * \E [ Ps SPC G - - - +# SPI Spacing Increment \E [ Pn ; Pn SPC G none FE - +# SPL Set Page Limit * \E [ Ps SPC j - - - +# SPQR Set Pr. Qual. & Rapid. * \E [ Ps SPC X 0 - - +# SR Scroll Right \E [ Pn SPC A 1 eF - +# SRCS Set Reduced Char. Sep. * \E [ Pn SPC f 0 - - +# SRS Start Reversed String * \E [ Ps [ 0 - - +# SSA Start of Selected Area \E F - - - +# SSU Select Size Unit * \E [ Pn SPC I 0 - - +# SSW Set Space Width * \E [ Pn SPC [ none - - +# SS2 Single Shift 2 (G2 set) \E N - Intro - +# SS3 Single Shift 3 (G3 set) \E O - Intro - +# ST String Terminator \E \ - Delim - +# STAB Selective Tabulation * \E [ Pn SPC ^ - - - +# STS Set Transmit State \E S - - - +# STX Start pf Text * ^B - - - +# SU Scroll Up \E [ Pn S 1 eF indn +# SUB Substitute * ^Z - - - +# SVS Select Line Spacing * \E [ Pn SPC \ 1 - - +# SYN Synchronous Idle * ^F - - - +# TAC Tabul. Aligned Centered * \E [ Pn SPC b - - - +# TALE Tabul. Al. Leading Edge * \E [ Pn SPC a - - - +# TATE Tabul. Al. Trailing Edge* \E [ Pn SPC ` - - - +# TBC Tab Clear \E [ Ps g 0 FE tbc +# TCC Tabul. Centered on Char * \E [ Pn SPC c - - - +# TSR Tabulation Stop Remove * \E [ Pn SPC d - FE - +# TSS Thin Space Specification \E [ Pn SC E none FE - +# VPA Vert. Position Absolute \E [ Pn d 1 FE vpa +# VPB Line Position Backward * \E [ Pn k 1 FE - +# VPR Vert. Position Relative \E [ Pn e 1 FE - (R) +# VT Vertical Tabulation * ^K - FE - +# VTS Vertical Tabulation Set \E J - FE - +# +# --------------------------------------------------------------------------- +# +# Notes: +# +# Some control characters are listed in the ECMA-48 standard without +# being assigned functions relevant to terminal control there (they +# referred to other standards such as ISO 1745 or ECMA-35). They are listed +# here anyway for completeness. +# +# (A) ECMA-48 calls this "CancelCharacter" but retains the CCH abbreviation. +# +# (B) There seems to be some confusion abroad between CHA and HPA. Most +# `ANSI' terminals accept the CHA sequence, not the HPA. but terminfo calls +# the capability (hpa). ECMA-48 calls this "Cursor Character Absolute" but +# preserved the CHA abbreviation. +# +# (C) CHT corresponds to terminfo (tab). Usually it has the value ^I. +# Occasionally (as on, for example, certain HP terminals) this has the HTJ +# value. ECMA-48 calls this "Cursor Forward Tabulation" but preserved the +# CHT abbreviation. +# +# (D) terminfo (nel) is usually \r\n rather than ANSI \EE. +# +# (E) ECMA-48 calls this "Active Position Report" but preserves the CPR +# abbreviation. +# +# (F) CTC parameter values: 0 = set char tab, 1 = set line tab, 2 = clear +# char tab, 3 = clear line tab, 4 = clear all char tabs on current line, +# 5 = clear all char tabs, 6 = clear all line tabs. +# +# (G) CUP and HVP are identical in effect. Some ANSI.SYS versions accept +# HVP, but always allow CUP as an alternate. ECMA-48 calls HVP "Character +# Position Absolute" but retains the HVP abbreviation. +# +# (H) ECMA calls this "Cursor Line Tabulation" but preserves the CVT +# abbreviation. +# +# (I) DSR parameter values: 0 = ready, 1 = busy, 2 = busy, will send DSR +# later, 3 = malfunction, 4 = malfunction, will send DSR later, 5 = request +# DSR, 6 = request CPR response. +# +# (J) ECMA calls ED "Erase In Page". EA/ED/EL parameters: 0 = clear to end, +# 1 = clear from beginning, 2 = clear. +# +# (K) ECMA calls this "End of Guarded Area" but preserves the EPA abbreviation. +# +# (L) The GSM parameters are vertical and horizontal parameters to scale by. +# +# (M) Some ANSI.SYS versions accept HPR, but more commonly `ANSI' terminals +# use CUF for this function and ignore HPR. ECMA-48 calls this "Character +# Position Relative" but retains the HPR abbreviation. +# +# (N) ECMA-48 calls this "Character Tabulation" but retains the HT +# abbreviation. +# +# (O) SGR parameter values: 0 = default mode (attributes off), 1 = bold, +# 2 = dim, 3 = italicized, 4 = underlined, 5 = slow blink, 6 = fast blink, +# 7 = reverse video, 8 = invisible, 9 = crossed-out (marked for deletion), +# 10 = primary font, 10 + n (n in 1..9) = nth alternative font, 20 = Fraktur, +# 21 = double underline, 22 = turn off 2, 23 = turn off 3, 24 = turn off 4, +# 25 = turn off 5, 26 = proportional spacing, 27 = turn off 7, 28 = turn off +# 8, 29 = turn off 9, 30 = black fg, 31 = red fg, 32 = green fg, 33 = yellow +# fg, 34 = blue fg, 35 = magenta fg, 36 = cyan fg, 37 = white fg, 38 = set +# fg color as in CCIT T.416, 39 = set default fg color, 40 = black bg +# 41 = red bg, 42 = green bg, 43 = yellow bg, 44 = blue bg, 45 = magenta bg, +# 46 = cyan bg, 47 = white bg, 48 = set bg color as in CCIT T.416, 39 = set +# default bg color, 50 = turn off 26, 51 = framed, 52 = encircled, 53 = +# overlined, 54 = turn off 51 & 52, 55 = not overlined, 56-59 = reserved, +# 61-65 = variable highlights for ideograms. +# +# (P) SI is also called LSO, Locking Shift Zero. +# +# (Q) SI is also called LS1, Locking Shift One. +# +# (R) Some ANSI.SYS versions accept VPR, but more commonly `ANSI' terminals +# use CUD for this function and ignore VPR. ECMA calls it `Line Position +# Absolute' but retains the VPA abbreviation. +# +# (S) MC parameters: 0 = start xfer to primary aux device, 1 = start xfer from +# primary aux device, 2 = start xfer to secondary aux device, 3 = start xfer +# from secondary aux device, 4 = stop relay to primary aux device, 5 = +# start relay to primary aux device, 6 = stop relay to secondary aux device, +# 7 = start relay to secondary aux device. +# +# (T) ECMA-48 calls this "Partial Line Forward" but retains the PLD +# abbreviation. +# +# (U) ECMA-48 calls this "Partial Line Backward" but retains the PLU +# abbreviation. +# +# (V) ECMA-48 calls this "Reverse Line Feed" but retains the RI abbreviation. +# +# (W) RM/SM modes are as follows: 1 = Guarded Area Transfer Mode (GATM), +# 2 = Keyboard Action Mode (KAM), 3 = Control Representation Mode (CRM), +# 4 = Insertion Replacement Mode, 5 = Status Report Transfer Mode (SRTM), +# 6 = Erasure Mode (ERM), 7 = Line Editing Mode (LEM), 8 = Bi-Directional +# Support Mode (BDSM), 9 = Device Component Select Mode (DCSM), +# 10 = Character Editing Mode (HEM), 11 = Positioning Unit Mode (PUM), +# 12 = Send/Receive Mode, 13 = Format Effector Action Mode (FEAM), +# 14 = Format Effector Transfer Mode (FETM), 15 = Multiple Area Transfer +# Mode (MATM), 16 = Transfer Termination Mode, 17 = Selected Area Transfer +# Mode, 18 = Tabulation Stop Mode, 19 = Editing Boundary Mode, 20 = Line Feed +# New Line Mode (LF/NL), Graphic Rendition Combination Mode (GRCM), 22 = +# Zero Default Mode (ZDM). The EBM and LF/NL modes have actually been removed +# from ECMA-48's 5th edition but are listed here for reference. +# +# (X) Select Alternate Presentation Variants is used only for non-Latin +# alphabets. +# +# (Y) "Select Editing Extent" (SEE) was ANSI "Select Edit Extent Mode" (SEM). +# +# (Z) ECMA-48 calls this "Start of Guarded Area" but retains the SPA +# abbreviation. +# +# --------------------------------------------------------------------------- +# +# Abbreviations: +# +# Intro an Introducer of some kind of defined sequence; the normal 7-bit +# X3.64 Control Sequence Introducer is the two characters "Escape [" +# +# Delim a Delimiter +# +# x/y identifies a character by position in the ASCII table (column/row) +# +# eF editor function (see explanation) +# +# FE format effector (see explanation) +# +# F is a Final character in +# an Escape sequence (F from 3/0 to 7/14 in the ASCII table) +# a control sequence (F from 4/0 to 7/14) +# +# Gs is a graphic character appearing in strings (Gs ranges from +# 2/0 to 7/14) in the ASCII table +# +# Ce is a control represented as a single bit combination in the C1 set +# of controls in an 8-bit character set +# +# C0 the familiar set of 7-bit ASCII control characters +# +# C1 roughly, the set of control chars available only in 8-bit systems. +# This is too complicated to explain fully here, so read Jim Fleming's +# article in the February 1983 BYTE, especially pages 214 through 224. +# +# Fe is a Final character of a 2-character Escape sequence that has an +# equivalent representation in an 8-bit environment as a Ce-type +# (Fe ranges from 4/0 to 5/15) +# +# Fs is a Final character of a 2-character Escape sequence that is +# standardized internationally with identical representation in 7-bit +# and 8-bit environments and is independent of the currently +# designated C0 and C1 control sets (Fs ranges from 6/0 to 7/14) +# +# I is an Intermediate character from 2/0 to 2/15 (inclusive) in the +# ASCII table +# +# P is a parameter character from 3/0 to 3/15 (inclusive) in the ASCII +# table +# +# Pn is a numeric parameter in a control sequence, a string of zero or +# more characters ranging from 3/0 to 3/9 in the ASCII table +# +# Ps is a variable number of selective parameters in a control sequence +# with each selective parameter separated from the other by the code +# 3/11 (which usually represents a semicolon); Ps ranges from +# 3/0 to 3/9 and includes 3/11 +# +# * Not relevant to terminal control, listed for completeness only. +# +# Format Effectors versus Editor Functions +# +# A format effector specifies how following output is to be displayed. +# An editor function allows you to modify the display. Informally +# format effectors may be destructive; format effectors should not be. +# +# For instance, a format effector that moves the "active position" (the +# cursor or equivalent) one space to the left would be useful when you want to +# create an overstrike, a compound character made of two standard characters +# overlaid. Control-H, the Backspace character, is actually supposed to be a +# format effector, so you can do this. But many systems use it in a +# nonstandard fashion, as an editor function, deleting the character to the +# left of the cursor and moving the cursor left. When Control-H is assumed to +# be an editor function, you cannot predict whether its use will create an +# overstrike unless you also know whether the output device is in an "insert +# mode" or an "overwrite mode". When Control-H is used as a format effector, +# its effect can always be predicted. The familiar characters carriage +# return, linefeed, formfeed, etc., are defined as format effectors. +# +# NOTES ON THE DEC VT100 IMPLEMENTATION +# +# Control sequences implemented in the VT100 are as follows: +# +# CPR, CUB, CUD, CUF, CUP, CUU, DA, DSR, ED, EL, HTS, HVP, IND, +# LNM, NEL, RI, RIS, RM, SGR, SM, TBC +# +# plus several private DEC commands. +# +# Erasing parts of the display (EL and ED) in the VT100 is performed thus: +# +# Erase from cursor to end of line Esc [ 0 K or Esc [ K +# Erase from beginning of line to cursor Esc [ 1 K +# Erase line containing cursor Esc [ 2 K +# Erase from cursor to end of screen Esc [ 0 J or Esc [ J +# Erase from beginning of screen to cursor Esc [ 1 J +# Erase entire screen Esc [ 2 J +# +# Some brain-damaged terminal/emulators respond to Esc [ J as if it were +# Esc [ 2 J, but this is wrong; the default is 0. +# +# The VT100 responds to receiving the DA (Device Attributes) control +# +# Esc [ c (or Esc [ 0 c) +# +# by transmitting the sequence +# +# Esc [ ? l ; Ps c +# +# where Ps is a character that describes installed options. +# +# The VT100's cursor location can be read with the DSR (Device Status +# Report) control +# +# Esc [ 6 n +# +# The VT100 reports by transmitting the CPR sequence +# +# Esc [ Pl ; Pc R +# +# where Pl is the line number and Pc is the column number (in decimal). +# +# The specification for the DEC VT100 is document EK-VT100-UG-003. + +#### ANSI.SYS +# +# Here is a description of the color and attribute controls supported in the +# the ANSI.SYS driver under MS-DOS. Most console drivers and ANSI +# terminal emulators for Intel boxes obey these. They are a proper subset +# of the ECMA-48 escapes. +# +# 0 all attributes off +# 1 foreground bright +# 4 underscore on +# 5 blink on/background bright (not reliable with brown) +# 7 reverse-video +# 8 set blank (non-display) +# 10 set primary font +# 11 set first alternate font (on PCs, display ROM characters 1-31) +# 12 set second alternate font (on PCs, display IBM high-half chars) +# +# Color attribute sets +# 3n set foreground color / 0=black, 1=red, 2=green, 3=brown, +# 4n set background color \ 4=blue, 5=magenta, 6=cyan, 7=white +# Bright black becomes gray. Bright brown becomes yellow, +# These coincide with the prescriptions of the ISO 6429/ECMA-48 standard. +# +# * If the 5 attribute is on and you set a background color (40-47) it is +# supposed to enable bright background. +# +# * Many VGA cards (such as the Paradise and compatibles) do the wrong thing +# when you try to set a "bright brown" (yellow) background with attribute +# 5 (you get a blinking yellow foreground instead). A few displays +# (including the System V console) support an attribute 6 that undoes this +# braindamage (this is required by iBCS2). +# +# * Some older versions of ANSI.SYS have a bug that causes thems to require +# ESC [ Pn k as EL rather than the ANSI ESC [ Pn K. (This is not ECMA-48 +# compatible.) + +#### Intel Binary Compatibility Standard +# +# For comparison, here are the capabilities implied by the Intel Binary +# Compatibility Standard for UNIX systems (Intel order number 468366-001). +# These recommendations are optional. IBCS2 allows the leading escape to +# be either the 7-bit \E[ or 8-bit \0233 introducer, in accordance with +# the ANSI X.364/ISO 6429/ECMA-48 standard. Here are the iBCS2 capabilities +# (as described in figure 9-3 of the standard). Those expressed in the ibcs2 +# terminfo entry are followed with the corresponding capability in parens: +# +# CSI <n>k disable (n=0) or enable (n=1) keyclick +# CSI 2h lock keyboard +# CSI 2i send screen as input +# CSI 2l unlock keyboard +# CSI 6m enable background color intensity +# CSI <0-2>c reserved +# CSI <0-59>m select graphic rendition +# CSI <n>;<m>H (cup) cursor to line n and column m +# CSI <n>;<m>f cursor to line n and column m +# CSI <n>@ (ich) insert characters +# CSI <n>A (cuu) cursor up n lines +# CSI <n>B (cud) cursor down n lines +# CSI <n>C (cuu) cursor right n characters +# CSI <n>D (cud) cursor left n characters +# CSI <n>E cursor down n lines and in first column +# CSI <n>F cursor up n lines and in first column +# CSI <n>G (hpa) position cursor at column n-1 +# CSI <n>J (ed) erase in display +# CSI <n>K (el) erase in line +# CSI <n>L (il) insert line(s) +# CSI <n>P (dch) delete characters +# CSI <n>S (indn) scroll up n lines +# CSI <n>T (rin) scroll down n lines +# CSI <n>X (ech) erase characters +# CSI <n>Z (cbt) back up n tab stops +# CSI <n>` cursor to column n on line +# CSI <n>a (cuu) cursor right n characters +# CSI <n>d (vpa) cursor to line n +# CSI <n>e cursor down n lines and in first column +# CSI <n>g (cbt) clear all tabs +# CSI <n>z make virtual terminal n active +# CSI ?7h (smam) turn automargin on +# CSI ?7l (rmam) turn automargin off +# CSI s save cursor position +# CSI u restore cursor position to saved value +# CSI =<c>A set overscan color +# CSI =<c>F set normal foreground color +# CSI =<c>G set normal background color +# CSI =<c>H set reverse foreground color +# CSI =<c>I set reverse foreground color +# CSI =<c>J set graphic foreground color +# CSI =<c>K set graphic foreground color +# CSI =<n>g (dispc) display n from alternate graphics character set +# CSI =<p>;<d>B set bell parameters +# CSI =<s>;<e>C set cursor parameters +# CSI =<x>D enable/disable intensity of background color +# CSI =<x>E set/clear blink vs. bold background +# CSI 7 (sc) (sc) save cursor position +# CSI 8 (rc) (rc) restore cursor position to saved value +# CSI H (hts) (hts) set tab stop +# CSI Q<n><string> define function key string +# (string must begin and end with delimiter char) +# CSI c (clear) clear screen +# +# The lack of any specification for attributes in SGR (among other things) +# makes this a wretchedly weak standard. The table above is literally +# everything iBSC2 has to say about terminal escape sequences; there is +# no further discussion of their meaning or how to set the parameters +# in these sequences at all. +# + +######## NONSTANDARD CAPABILITY TRANSLATIONS USED IN THIS FILE +# +# The historical termcap file entries were written primarily in 4.4BSD termcap. +# The 4.4BSD termcap set was substantially larger than the original 4.1BSD set, +# with the extension names chosen for compatibility with the termcap names +# assigned in System V terminfo. There are some variant extension sets out +# there. We try to describe them here. +# +# XENIX extensions: +# +# The XENIX extensions include a set of function-key capabilities as follows: +# +# code XENIX variable name terminfo name name clashes? +# ---- ------------------- ------------- ----------------------- +# CL key_char_left +# CR key_char_right +# CW key_change_window create_window +# EN key_end kend +# HM key_home khome +# HP ?? +# LD key_delete_line kdl1 +# LF key_linefeed label_off +# NU key_next_unlocked_cell +# PD key_page_down knp +# PL ?? +# PN start_print mc5 +# PR ?? +# PS stop_print mc4 +# PU key_page_up kpp pulse +# RC key_recalc remove_clock +# RF key_toggle_ref req_for_input +# RT key_return kent +# UP key_up_arrow kcuu1 parm_up_cursor +# WL key_word_left +# WR key_word_right +# +# The XENIX extensions also include the following character-set and highlight +# capabilities: +# +# XENIX terminfo function +# ----- -------- ------------------------------ +# GS smacs start alternate character set +# GE rmacs end alternate character set +# GG :as:/:ae: glitch (analogous to :sg:/:ug:) +# bo blink begin blink (not used in /etc/termcap) +# be end blink (not used in /etc/termcap) +# bb blink glitch (not used in /etc/termcap) +# it dim begin dim (not used in /etc/termcap) +# ie end dim (not used in /etc/termcap) +# ig dim glitch (not used in /etc/termcap) +# +# Finally, XENIX also used the following forms-drawing capabilities: +# +# single double type ASCII approximation +# ------ ------ ------------- ------------------- +# GV Gv vertical line | +# GH Gv horizontal line - _ +# G1 G5 top right corner _ | +# G2 G6 top left corner | +# G3 G7 bottom left corner |_ +# G4 G8 bottom right corner _| +# GD Gd down-tick character T +# GL Gl left-tick character -| +# GR Gr right-tick character |- +# GC Gc middle intersection -|- +# GU Gu up-tick character _|_ +# +# These were invented to take advantage of the IBM PC ROM character set. One +# can compose an acsc string from the single-width characters as follows +# "j{G4}k{G1}l{G2}m{G3}q{GH}x{GV}t{GR}u{GL}v{GU}w{GD}n{GC}" +# When translating a termcap file, ncurses tic will do this automatically. +# The double forms characters don't fit the SVr4 terminfo model. +# +# AT&T Extensions: +# +# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of +# nonstandard capabilities. Its signature is the KM capability, used to name +# some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this +# set. Comments in the original, and a little cross-checking with other AT&T +# documentation, seem to establish that BO=:mr: (start reverse video), DS=:mh: +# (start dim), XS=:mk: (secure/invisible mode), EE=:me: (end highlights), +# FL=:LO: (enable soft labels), FE=:LF: (disable soft labels), CI=:vi: (make +# cursor invisible), and CV=:ve: (make cursor normal). +# +# HP Extensions +# +# The HP library (as of mid-1995, their term.h file version 70.1) appears to +# have the System V capabilities up to SVr1 level. After that, it supports +# two nonstandard caps meml and memu corresponding to the old termcap :ml:, +# :mu: capabilities. After that, it supports caps plab_norm, label_on, +# label_off, and key_f11..key_f63 capabilities like SVr4's. This makes the +# HP binary format incompatible with SVr4's. +# +# IBM Extensions +# +# There is a set of nonstandard terminfos used by IBM's AIX operating system. +# The AIX terminfo library diverged from SVr1 terminfo, and replaces all +# capabilities following prtr_non with the following special capabilties: +# box[12], batt[12], colb[0123456789], colf[0123456789], f[01234567], kbtab, +# kdo, kcmd, kcpn, kend, khlp, knl, knpn, kppn, kppn, kquit, ksel, kscl, kscr, +# ktab, kmpf[123456789], apstr, ksf1..ksf10, kf11...kf63, kact, topl, btml, +# rvert, lvert. Some of these are identical to XPG4/SVr4 equivalents: +# kcmd, kend, khlp, and kf11...kf63. Two others (kbtab and ksel) can be +# renamed (to kcbt and kslt). The places in the box[12] capabilities +# correspond to acsc chars, here is the mapping: +# +# box1[0] = ACS_ULCORNER +# box1[1] = ACS_HLINE +# box1[2] = ACS_URCORNER +# box1[3] = ACS_VLINE +# box1[4] = ACS_LRCORNER +# box1[5] = ACS_LLCORNER +# box1[6] = ACS_TTEE +# box1[7] = ACS_RTEE +# box1[8] = ACS_BTEE +# box1[9] = ACS_LTEE +# box1[10] = ACS_PLUS +# +# The box2 characters are the double-line versions of these forms graphics. +# The AIX binary terminfo format is incompatible with SVr4's. +# +# Iris console extensions: +# +# HS is half-intensity start; HE is half-intensity end +# CT is color terminal type (for Curses & rogue) +# CP is color change escape sequence +# CZ are color names (for Curses & rogue) +# +# The ncurses tic utility recognizes HS as an alias for mh <dim>. +# +# TC Extensions: +# +# There is a set of extended termcaps associated with something +# called the "Terminal Control" or TC package created by MainStream Systems, +# Winfield Kansas. This one also uses GS/GE for as/ae, and also uses +# CF for civis and CO for cvvis. Finally, they define a boolean :ct: +# that flags color terminals. +# +######## CHANGE HISTORY +# +# The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94. +# Releases 9 and up are maintained by Eric S. Raymond as part of the ncurses +# project. +# +# This file contains all the capability information present in John Kunze's +# last version of the termcap master file, except as noted in the change +# comments at end of file. Some information about very ancient obsolete +# capabilities has been moved to comments. Some all-numeric names of older +# terminals have been retired. +# +# I changed :MT: to :km: (the 4.4BSD name) everywhere. I commented out some +# capabilities (EP, dF, dT, dV, kn, ma, ml, mu, xr, xx) that are no longer +# used by BSD curses. +# +# The 9.1.0 version of this file was translated from my lightly-edited copy of +# 8.3, then mechanically checked against 8.3 using Emacs Lisp code written for +# the purpose. Unless the ncurses tic implementation and the Lisp code were +# making perfectly synchronized mistakes which I then failed to catch by +# eyeball, the translation was correct and perfectly information-preserving. +# +# Major version number bumps correspond to major version changes in ncurses. +# +# Here is a log of the changes since then: +# +# 9.1.0 (Wed Feb 1 04:50:32 EST 1995): +# * First terminfo master translated from 8.3. +# 9.2.0 (Wed Feb 1 12:21:45 EST 1995): +# * Replaced Wyse entries with updated entries supplied by vendor. +# +# 9.3.0 (Mon Feb 6 19:14:40 EST 1995): +# * Added contact & status info from G. Clark Brown <clark@sssi.com>. +# 9.3.1 (Tue Feb 7 12:00:24 EST 1995): +# * Better XENIX keycap translation. Describe TC termcaps. +# * Contact and history info supplied by Qume. +# 9.3.2 (Sat Feb 11 23:40:02 EST 1995): +# * Raided the Shuford FTP site for recent termcaps/terminfos. +# * Added information on X3.64 and VT100 standard escape sequences. +# 9.3.3 (Mon Feb 13 12:26:15 EST 1995): +# * Added a correct X11R6 xterm entry. +# * Fixed terminfo translations of padding. +# 9.3.4 (Wed Feb 22 19:27:34 EST 1995): +# * Added correct acsc/smacs/rmacs strings for vt100 and xterm. +# * Added u6/u7/u8/u9 capabilities. +# * Added PCVT entry. +# 9.3.5 (Thu Feb 23 09:37:12 EST 1995): +# * Emacs uses :so:, not :mr:, for its mode line. Fix linux entry +# to use reverse-video standout so Emacs will look right. +# * Added el1 capability to ansi. +# * Added smacs/rmacs to ansi.sys. +# +# 9.4.0 (Sat Feb 25 16:43:25 EST 1995): +# * New mt70 entry. +# * Added COPYRIGHTS AND OTHER DELUSIONS. +# * Added AT&T 23xx & 500/513, vt220 and vt420, opus3n1+, netronics +# smartvid & smarterm, ampex 175 & 219 & 232, +# env230, falco ts100, fluke, intertube, superbrain, ncr7901, vic20, +# ozzie, trs200, tr600, Tandy & Texas Instruments VDTs, intext2, +# screwpoint, fviewpoint, Contel Business Systems, Datamedia Colorscan, +# adm36, mime314, ergo4000, ca22851. Replaced att7300, esprit, dd5500. +# * Replaced the Perkin-Elmer entries with vendor's official ones. +# * Restored the old minimal-ansi entry, luna needs it. +# * Fixed some incorrect ip and proportional-padding translations. +# 9.4.1 (Mon Feb 27 14:18:33 EST 1995): +# * Fix linux & AT386 sgr strings to do A_ALTCHARSET turnoff correctly. +# * Make the xterm entry 65 lines again; create xterm25 and xterm24 +# to force a particular height. +# * Added beehive4 and reorganized other Harris entries. +# 9.4.2 (Thu Mar 9 01:45:44 EST 1995): +# * Merged in DEC's official entries for its terminals. The only old +# entry I kept was Doug Gwyn's alternate vt100 (as vt100-avo). +# * Replaced the translated BBN Bitgraph entries with purpose-built +# ones from AT&T's SVr3. +# * Replaced the AT&T entries with AT&T's official terminfos. +# * Added teleray 16, vc415, cops10. +# * Merged in many individual capabilities from SCO terminfo files. +# 9.4.3 (Mon Mar 13 02:37:53 EST 1995): +# * Typo fixes. +# * Change linux entry so A_PROTECT enables IBM-PC ROM characters. +# 9.4.4 (Mon Mar 27 12:32:35 EST 1995): +# * Added tty35, Ann Arbor Guru series. vi300 and 550, cg7900, tvi803, +# pt210, ibm3164, IBM System 1, ctrm, Tymshare scanset, dt200, adm21, +# simterm, citoh and variants. +# * Replaced sol entry with sol1 and sol2. +# * Replaced Qume QVT and Freedom-series entries with purpose-built +# terminfo entries. +# * Enhanced vt220, tvi910, tvi924, hpterm, hp2645, adm42, tek +# and dg200 entries using caps from from SCO. +# * Added the usual set of function-key mappings to ANSI entry. +# * Corrected xterm's function-key capabilities. +# 9.4.5 (Tue Mar 28 14:27:49 EST 1995): +# * Fix in xterm entry, cub and cud are not reliable under X11R6. +# 9.4.6 (Thu Mar 30 14:52:15 EST 1995): +# * Fix in xterm entry, get the arrow keys right. +# * Change some \0 escapes to \200. +# 9.4.7 (Tue Apr 4 11:27:11 EDT 1995) +# * Added apple (Videx card), adm1a, oadm31. +# * Fixed malformed ampex csr. +# * Fixed act4, cyb110; they had old-style prefix padding left in. +# * Changed mandatory to advisory padding in many entries. +# * Replaced HP entries up to hpsub with purpose-built ones. +# * Blank rmir/smir/rmdc/smdc capabilities removed. +# * Small fixes merged in from SCO entries for lpr, fos, tvi910+, tvi924. +# 9.4.8 (Fri Apr 7 09:36:34 EDT 199): +# * Replaced the Ann Arbor entries with SCO's, the init strings are +# more efficient (but the entries otherwise identical). +# * Added dg211 from Shuford archive. +# * Added synertek, apple-soroc, ibmpc, pc-venix, pc-coherent, xtalk, +# adm42-nl, pc52, gs6300, xerox820, uts30. +# * Pull SCO's padding into vi200 entry. +# * Improved capabilities for tvi4107 and other Televideo and Viewpoint +# entries merged in from SCO's descriptions. +# * Fixed old-style prefix padding on zen50, h1500. +# * Moved old superbee entry to superbee-xsb, pulled in new superbee +# entry from SCO's description. +# * Reorganized the special entries. +# * Added lm#0 to cbunix and virtual entries. +# +# 9.5.0 (Mon Apr 10 11:30:00 EDT 1995): +# * Restored cdc456tst. +# * Fixed sb1 entry, SCO erroneously left out the xsb glitch. +# * Added megatek, beacon, microkit. +# * Freeze for ncurses-1.9 release. +# 9.5.1 (Fri Apr 21 12:46:42 EDT 1995): +# * Added historical data for TAB. +# * Comment fixes from David MacKenzie. +# * Added the new BSDI pc3 entry. +# 9.5.2 (Tue Apr 25 17:27:52 EDT 1995) +# * A change in the tic -C logic now ensures that all entries in +# the termcap translation will fit in < 1024 bytes. +# * Added `bobcat' and `gator' HP consoles and the Nu machine entries +# from GNU termcap file. This merges in all their local information. +# 9.5.3 (Tue Apr 25 22:28:13 EDT 1995) +# * Changed tic -C logic to dump all capabilities used by GNU termcap. +# * Added warnings about entries with long translations (restoring +# all the GNU termcaps pushes a few over the edge). +# 9.5.4 (Wed Apr 26 15:35:09 EDT 1995) +# * Yet another tic change, and a couple of entry tweaks, to reduce the +# number of long (> 1024) termcap translations back to 0. +# +# 9.6.0 (Mon May 1 10:35:54 EDT 1995) +# * Added kf13-kf20 to Linux entry. +# * Regularize Prime terminal names. +# * Historical data on Synertek. +# * Freeze for ncurses-1.9.1. +# 9.6.1 (Sat May 6 02:00:52 EDT 1995): +# * Added true xterm-color entry, renamed djm's pseudo-color entry. +# * Eliminate whitespace in short name fields, this tanks some scripts. +# * Name field changes to shorten some long entries. +# * Termcap translation now automatically generates empty rmir/smir +# when ich1/ich is present (copes with an ancient vi bug). +# * Added `screen' entries from FSF's screen-3.6.2. +# * Added linux-nic and xterm-nic entries. +# 9.6.2 (Sat May 6 17:00:55 EDT 1995): +# * Change linux entry to use smacs=\E[11m and have an explicit acsc, +# eliminating some special-case code in ncurses. +# +# 9.7.0 (Tue May 9 18:03:12 EDT 1995): +# * Added vt320-k3, rsvidtx from the Emacs termcap.dat file. I think +# that captures everything unique from it. +# * Added reorder script generator. +# * Freeze for ncurses 1.9.2 release. +# 9.7.1 (Thu Jun 29 09:35:22 EDT 1995): +# * Added Sean Farley's kspd, flash, rs1 capabilities for linux. +# * Added Olaf Siebert's corrections for adm12. +# * ansi-pc-color now includes the colors and pairs caps, so that +# entries which use it will inherit them automatically. +# * The linux entry can now recognize the center (keypad 5) key. +# * Removed some junk that found its way into Linux acsc. +# +# 9.8.0 (Fri Jul 7 04:46:57 EDT 1995): +# * Add 50% cut mark as a desperate hack to reduce tic's core usage. +# * xterm doesn't try to use application keypad mode any more. +# * Freeze for ncurses-1.9.3 release. +# 9.8.1 (Thu Jul 19 17:02:12 EDT 1995): +# * Added corrected sun entry from vendor. +# * Added csr capability to linux entry. +# * Peter Wemm says the at386 hpa should be \E[%i%p1%dG, not \E[%p1%dG. +# * Added vt102-nsgr to cope with stupid IBM PC `VT100' emulators. +# * Some commented-out caps in long entries come back in, my code +# for computing string-table lengths had a bug in it. +# * pcansi series modified to fit comm-program reality better. +# 9.8.2 (Sat Sep 9 23:35:00 EDT 1995): +# * BSD/OS actually ships the ibmpc3 bold entry as its console. +# * Correct some bad aliases in the pcansi series +# * Added entry for QNX console. +# * Clean up duplicate long names for use with 4.4 library. +# * Change vt100 standout to be normal reverse vide, not bright reverse; +# this makes the Emacs status line look better. +# 9.8.3 (Sun Sep 10 13:07:34 EDT 1995): +# * Added Adam Thompson's VT320 entries, also his dtx-sas and z340. +# * Minor surgery, mostly on name strings, to shorten termcap version. +# +# 9.9.0 (Sat Sep 16 23:03:48 EDT 1995): +# * Added dec-vt100 for use with the EWAN emulator. +# * Added kmous to xterm for use with xterm's mouse-tracking facility. +# * Freeze for 1.9.5 alpha release. +# 9.9.1 (Wed Sep 20 13:46:09 EDT 1995): +# * Changed xterm lines to 24, the X11R6 default. +# 9.9.2 (Sat Sep 23 21:29:21 EDT 1995): +# * Added 7 newly discovered, undocumented acsc characters to linux +# entry (the pryz{|} characters). +# * ncurses no longer steals A_PROTECT. Simplify linux sgr accordingly. +# * Correct two typos in the xterm entries introduced in 9.9.1. +# * I finally figured out how to translate ko capabilities. Done. +# * Added tvi921 entries from Tim Theisen. +# * Cleanup: dgd211 -> dg211, adm42-nl -> adm42-nsl. +# * Removed mystery tec entry, it was neither interesting nor useful. +# * shortened altos3, qvt203, tvi910+, tvi92D, tvi921-g, tvi955, vi200-f, +# vi300-ss, att505-24, contel301, dm3045, f200vi, pe7000c, vc303a, +# trs200, wind26, wind40, wind50, cdc456tst, dku7003, f110, dg211, +# by making them relative to use capabilities +# * Added cuf1=^L to tvi925 from deleted variant tvi925a. +# * fixed cup in adm22 entry and parametrized strings in vt320-k3. +# * added it#8 to entries that used to have :pt: -- tvi912, vi200, +# ampex80, +# * Translate all home=\E[;H capabilities to home=\E[H, they're +# equivalent. +# * Translate \E[0m -> \E[m in [rs]mso, [rs]mul, and init strings of +# vt100 and ANSI-like terminals. +# 9.9.3 (Tue Sep 26 20:11:15 EDT 1995): +# * Added it#8 and ht=\t to *all* entries with :pt:; the ncurses tic +# does this now, too. +# * fviewpoint is gone, it duplicated screwpoint. +# * Added hp2627, graphos, graphos-30, hpex, ibmega, ibm8514, ibm8514-c, +# ibmvga, ibmvga-c, minix, mm340, mt4520-rv, screen2, screen3, +# versaterm, vi500, vsc, vt131, vt340, vt400 entries from UW. +# The UW vi50 replaces the old one, which becomes vi50adm, +# * No more embedded commas in name fields. +# +# 9.10.0 (Wed Oct 4 15:39:37 EDT 1995): +# * XENIX forms characters in fos, trs16, scoansi become acsc strings, +# * Introduced klone+* entries for describing Intel-console behavior. +# * Linux kbs is default-mapped to delete for some brain-dead reason. +# * -nsl -> -ns. The -pp syntax is obsolete. +# * Eliminate [A-Z]* primaries in accordance with SVr4 terminfo docs. +# * Make xterm entry do application-keypad mode again. I got complaints +# that it was messing up someone's 3270 emulator. +# * Added some longname fields in order to avoid warning messages from +# older tic implementations. +# * According to ctlseqs.ms, xterm has a full vt100 graphics set. Use +# it! (This gives us pi, greater than, less than, and a few more.) +# * Freeze for ncurses-1.9.6 release. +# 9.10.1 (Sat Oct 21 22:18:09 EDT 1995): +# * Add xon to a number of console entries, they're memory-mapped and +# don't need padding. +# * Correct the use dependencies in the ansi series. +# * Hand-translate more XENIX capabilities. +# * Added hpterm entry for HP's X terminal emulator. +# * Added aixterm entries. +# * Shortened four names so everything fits in 14 chars. +# +# 9.11.0 (Thu Nov 2 17:29:35 EST 1995): +# * Added ibcs2 entry and info on iBCS2 standard. +# * Corrected hpa/vpa in linux entry. They still fail the worm test. +# * We can handle the HP meml/memu capability now. +# * Added smacs to klone entries, just as documentation. +# * Carrected ansi.sys and cit-500 entries. +# * Added z39, vt320-k311, v220c, and avatar entries. +# * Make pcansi use the ansi.sys invis capability. +# * Added DIP switch descriptions for vt100, adm31, tvi910, tvi920c, +# tvi925, tvi950, dt80, ncr7900i, h19. +# * X3.64 has been withdrawn, change some references. +# * Removed function keys from ansi-m entry. +# * Corrected ansi.sys entry. +# * Freeze for ncurses-1.9.7 release. +# 9.11.1 (Tue Nov 6 18:18:38 EST 1995): +# * Added rmam/smam capabilities to many entries based on init strings. +# * Added correct hpa/vpa to linux. +# * Reduced several entries relative to vt52. +# 9.11.2 (Tue Nov 7 00:21:06 EST 1995): +# * Exiled some utterly unidentifiable custom and homebrew types to the +# UFO file; also, obsolete small-screen hardware; also, entries which +# look flat-out incorrect, garbled, or redundant. These include the +# following entries: carlock, cdc456tst, microkit, qdss, ramtek, tec, +# tec400, tec500, ubell, wind, wind16, wind40, wind50, plasma, agile, +# apple, bch, daleblit, nucterm, ttywilliams, nuterminal, nu24, bnu, +# fnu, nunix-30, nunix-61, exidy, ex3000, sexidy, pc52, sanyo55, +# yterm10, yterm11, yterm10nat, aed, aed-ucb, compucolor, compucolor2, +# vic20, dg1, act5s, netx, smartvid, smarterm, sol, sol2, dt200, +# trs80, trs100, trs200, trs600, xitex, rsvidtx, vid, att2300-x40, +# att2350-x40, att4410-nfk, att5410-ns, otty5410, att5425-nl-w, +# tty5425-fk, tty5425-w-fk, cita, c108-na, c108-rv-na, c100-rv-na, +# c108-na-acs, c108-rv-na-acs, ims950-ns, infotonKAS, ncr7900i-na, +# regent60na, scanset-n, tvi921-g, tvi925n, tvi925vbn, tvi925vb, +# vc404-na, vc404-s-na, vt420nam, vt420f-nam, vt420pc-nam, vt510nam, +# vt510pc-nam, vt520nam, vt525nam, xterm25, xterm50, xterm65, xterms. +# * Corrected pcvt25h as suggested by Brian C. Grayson +# <bgrayson@pine.ece.utexas.edu>. +# 9.11.3 (Thu Nov 9 12:14:40 EST 1995): +# * Added kspd=\E[P, kcbt=\E[Z, to linux entry, changed kbs back to ^H. +# * Added kent=\EOM to xterm entry. +# +# 9.11.4 (Fri Nov 10 08:31:35 EST 1995): +# * Corrected gigi entry. +# * Restored cuf/cud1 to xterm, their apparent bugginess was due to +# bad hpa/vpa capabilities. +# * Corrected flash strings to have a uniform delay of .2 sec. No +# more speed-dependent NUL-padding! +# * terminfo capabilities in comments bracketed with <>. +# 9.11.5 (Fri Nov 10 15:35:02 EST 1995): +# * Replaced pcvt with the 3.31 pcvt entries. +# * Freeze for 1.9.7a. +# 9.11.6 (Mon Nov 13 10:20:24 EST 1995): +# * Added emu entry from the X11R6 contrib tape sources. +# +# 9.12.0 (Wed Nov 29 04:22:25 EST 1995): +# * Improved iris-ansi and sun entries. +# * More flash string improvements. +# * Corrected wy160 & wy160 as suggested by Robert Dunn +# * Added dim to at386. +# * Reconciled pc3 and ibmpc3 with the BSDI termcap file. Keith says +# he's ready to start using the termcap generated from this one. +# * Added vt102-w, vt220-w, xterm-bold, wyse-vp, wy75ap, att4424m, +# ln03, lno3-w, h19-g, z29a*, qdss. Made vt200 an alias of vt220. +# * Improved hpterm, apollo consoles, fos, qvt101, tvi924. tvi925, +# att610, att620, att630, +# * Changed hazeltine name prefix from h to hz. +# * Sent t500 to the UFI file. +# * I think we've sucked all the juice out of BSDI's termcap file now. +# * Freeze for ncurses 1.9.8 release +# 9.12.1 (Thu Nov 30 03:14:06 EST 1995) +# * Unfreeze, linux kbs needed to be fixed. +# * Tim Theisen pinned down a bug in the DMD firmware. +# 9.12.2 (Thu Nov 30 19:08:55 EST 1995): +# * Fixes to ansi and klone capabilities (thank you, Aaron Ucko). +# (The broken ones had been shadowed by sgr.) +# 9.12.3 (Thu Dec 7 17:47:22 EST 1995): +# * Added documentation on ECMA-48 standard. +# * New Amiga entry. +# 9.12.4 (Thu Dec 14 04:16:39 EST 1995): +# * More ECMA-48 stuff +# * Corrected typo in minix entry, added pc-minix. +# * Corrected khome/kend in xterm (thank you again, Aaron Ucko). +# * Added rxvt entry. +# * Added 1.3.x color-change capabilities to linux entry. +# 9.12.5 (Tue Dec 19 00:22:10 EST 1995): +# * Corrected rxvt entry khome/kend. +# * Corrected linux color change capabilities. +# * NeXT entries from Dave Wetzel. +# * Cleaned up if and rf file names (all in /usr/share now). +# * Changed linux op capability to avoid screwing up a background color +# pair set by setterm. +# 9.12.6 (Wed Feb 7 16:14:35 EST 1996): +# * Added xterm-sun. +# 9.12.7 (Fri Feb 9 13:27:35 EST 1996): +# * Added visa50. +# +# 9.13.0 (Sun Mar 10 00:13:08 EST 1996): +# * Another sweep through the Shuford archive looking for new info. +# * Added dg100 alias to dg6053 based on a comp.terminals posting. +# * Added st52 from Per Persson. +# * Added eterm from the GNU Emacs 19.30 distribution. +# * Freeze for 1.9.9. +# 9.13.1 (Fri Mar 29 14:06:46 EST 1996): +# * FreeBSD console entries from Andrew Chernov. +# * Removed duplicate Atari st52 name. +# 9.13.2 (Tue May 7 16:10:06 EDT 1996) +# * xterm doesn't actually have ACS_BLOCK. +# * Change klone+color setf/setb to simpler forms that can be +# translated into termcap. +# * Added xterm1. +# * Removed mechanically-generated junk capabilities from cons* entries. +# * Added color support to bsdos. +# 9.13.3 (Thu May 9 10:35:51 EDT 1996): +# * Added Wyse 520 entries from Wm. Randolph Franklin <wrf@ecse.rpi.edu>. +# * Created ecma+color, linux can use it. Also added ech to linux. +# * Teach xterm about more keys. Add Thomas Dickey's 3.1.2E updates. +# * Add descriptions to FreeBSD console entries. Also shorten +# some aliases to <= 14 chars for portability. +# * Added x68k console +# * Added OTbs to several VT-series entries. +# 9.13.4 (Wed May 22 10:54:09 EDT 1996): +# * screen entry update for 3.7.1 from Michael Alan Dorman. +# 9.13.5 (Wed Jun 5 11:22:41 EDT 1996): +# * kterm correction due to Kenji Rikitake. +# * ACS correction in vt320-kll due to Phillippe De Muyter. +# 9.13.6 (Sun Jun 16 15:01:07 EDT 1996): +# * Sun console entry correction from J.T. Conklin. +# * Changed all DEC VT300 and up terminals to use VT300 tab set +# 9.13.7 (Mon Jul 8 20:14:32 EDT 1996): +# * Added smul to linux entry (we never noticed it was missing +# because of sgr!). +# * Added rmln to hp+labels (deduced from other HP entries). +# * Added vt100 acsc capability to vt220, vt340, vt400, d800, dt80-sas, +# pro350, att7300, 5420_2, att4418, att4424, att4426, att505, vt320-k3. +# * Corrected vt220 acsc. +# * The klone+sgr and klone+sgr-dumb entries now use klone+acs; +# this corresponds to reality and helps prevent some tic warnings. +# * Added sgr0 to c101, pcix, vt100-nav, screen2, oldsun, next, altos2, +# hpgeneric, hpansi, hpsub, hp236, hp700-wy, bobcat, dku7003, adm11, +# adm12, adm20, adm21, adm22, adm31, adm36, adm42, pt100, pt200, +# qvt101, tvi910, tvi921, tvi92B, tvi925, tvi950, tvi970, wy30-mc, +# wy50-mc, wy100, wyse-vp, ampex232, regent100, viewpoint, vp90, +# adds980, cit101, cit500, contel300, cs10, dm80, falco, falco-p, +# f1720a, go140, sb1, superbeeic, microb, ibm8512, kt7, ergo4000, +# owl, uts30, dmterm, dt100, dt100, dt110, appleII, apple-videx, +# lisa, trsII, atari, st52, pc-coherent, basis, m2-man, bg2.0, bg1.25, +# dw3, ln03, ims-ansi, graphos, t16, zen30, xtalk, simterm, d800, +# ifmr, v3220, wy100q, tandem653, ibmaed. +# * Added DWK terminal description. +# 9.13.8 (Wed Jul 10 11:45:21 EDT 1996): +# * Many entries now have highlights inherited from adm+sgr. +# * xterm entry now corresponds to XFree86 3.1.2E, with color. +# * xtitle and xtitle-twm enable access to the X status line. +# * Added linux-1.3.6 color palette caps in conventional format. +# * Added adm1178 terminal. +# * Move fos and apollo terminals to obsolete category. +# * Aha! The BRL terminals file told us what the Iris extensions mean. +# * Added, from the BRL termcap file: rt6221, rt6221-w, northstar, +# commodore, cdc721-esc, excel62, osexec. Replaced from the BRL file: +# cit500, adm11. +# 9.13.9 (Mon Jul 15 00:32:51 EDT 1996): +# * Added, from the BRL termcap file: cdc721, cdc721l, cdc752, cdc756, +# aws, awsc, zentec8001, modgraph48, rca vp3301/vp3501, ex155. +# * Corrected, from BRL termcap file: vi50. +# * Better rxvt entry & corrected xterm entries from Thomas Dickey. +# 9.13.10 (Mon Jul 15 12:20:13 EDT 1996): +# * Added from BRL: cit101e & variants, hmod1, vi200, ansi77, att5620-1, +# att5620-s, att5620-s, dg210, aas1901, hz1520, hp9845, osborne +# (old osborne moved to osborne-w), tvi970-vb, tvi970-2p, tvi925-hi, +# tek4105brl, tek4106brl, tek4107brl,tek4109brl, hazel, aepro, +# apple40p, apple80p, appleIIgs, apple2e, apple2e-p, apple-ae. +# * Paired-attribute fixes to various terminals. +# * Sun entry corrections from A. Lukyanov & Gert-Jan Vons. +# * xterm entry corrections from Thomas Dickey. +# 9.13.11 (Tue Jul 30 16:42:58 EDT 1996): +# * Added t916 entry, translated from a termcap in SCO's support area. +# * New qnx entry from Michael Hunter. +# 9.13.12 (Mon Aug 5 14:31:11 EDT 1996): +# * Added hpex2 from Ville Sulko. +# * Fixed a bug that ran the qnx and pcvtXX together. +# 9.13.13 (Fri Aug 9 01:16:17 EDT 1996): +# * Added dtterm entry from Solaris CDE. +# 9.13.14 (Tue Sep 10 15:31:56 EDT 1996): +# * corrected pairs#8 typo in dtterm entry. +# * added tvi9065. +# 9.13.15 (Sun Sep 15 02:47:05 EDT 1996): +# * updated xterm entry to cover 3.1.2E's new features. +# 9.13.16 (Tue Sep 24 12:47:43 EDT 1996): +# * Added new minix entry +# * Removed aliases of the form ^[0-9]* for obsolete terminals. +# * Commented out linux-old, nobody's using pre-1.2 kernels now. +# 9.13.17 (Fri Sep 27 13:25:38 EDT 1996): +# * Added Prism entries and kt7ix. +# * Caution notes about EWAN and tabset files. +# * Changed /usr/lib/tabset -> /usr/share/tabset. +# * Added acsc/rmacs/smacs to vt52. +# 9.13.18 (Mon Oct 28 13:24:59 EST 1996): +# * Merged in Thomas Dickey's reorganization of the xterm entries; +# added technical corrections to avoid warning messages. +# 9.13.19 (Sat Nov 16 16:05:49 EST 1996): +# * Added rmso=\E[27m in Linux entry. +# * Added koi8-r support for Linux console. +# * Replace xterm entries with canonical ones from XFree86 3.2. +# 9.13.20 (Sun Nov 17 23:02:51 EST 1996): +# * Added color_xterm from Jacob Mandelson +# 9.13.21 (Mon Nov 18 12:43:42 EST 1996): +# * Back off the xterm entry to use r6 as a base. +# 9.13.22 (Sat Nov 30 11:51:31 EST 1996): +# * Added dec-vt220 at Adrian Garside's request. +# +#-(original-changelog-1996/12/29-to-1998/02/28-by-TD)--------------------------- +# +# 10.1.0 (Sun Dec 29 02:36:31 EST 1996): withdrawn +# * Minor corrections to xterm entries. +# * Replaced EWAN telnet entry. +# * Dropped the reorder script generator. It was a fossil. +# 9.13.23 (Fri Feb 21 16:36:06 EST 1997): +# * Replaced minitel-2 entry. +# * Added MGR, ansi-nt. +# 9.13.24 (Sun Feb 23 20:55:23 EST 1997): +# * Thorsten Lockert added termcap `bs' to a lot of types, working from +# the 4.4BSD Lite2 file. +# +# 10.1.1 (Sat May 3 21:41:27 EDT 1997): +# * Use setaf/setab consistently with SVr4. +# * Remove ech, el1 from cons25w, they do not work in FreeBSD 2.1.5 +# 10.1.2 (Sat May 24 21:10:57 EDT 1997) +# * update xterm-xf86-v32 to match XFree86 3.2A (changes F1-F4) +# * add xterm-16color, for XFree86 3.3 +# 10.1.3 (Sat May 31 12:21:05 EDT 1997) +# * correct typo in emu +# * correct typo in vt102-w (Robert Wuest) +# * make new entry xterm-xf86-v33, restored xterm-xf86-v32. +# 10.1.4 (Sun Jun 15 08:29:05 EDT 1997) +# * remove ech capability from rxvt (it does the wrong thing) +# 10.1.5 (Sat Jun 28 21:34:36 EDT 1997) +# * remove spurious newlines from several entries (hp+color, wy50, +# wy350, wy370-nk, wy99gt-tek, wy370-tek, ibm3161, tek4205, ctrm, +# gs6300) +# 10.1.6 (Sat Jul 5 15:08:16 EDT 1997) +# * correct rmso capability of wy50-mc +# 10.1.7 (Sat Jul 12 20:05:55 EDT 1997) +# * add cbt to xterm-xf86-v32 +# * disentangle some entries from 'xterm', preferring xterm-r6 in case +# 'xterm' is derived from xterm-xf86-v32, which implements ech and +# other capabilities not in xterm-r6. +# * remove alternate character set from kterm entry. +# 10.1.8 (Sat Aug 2 18:43:18 EDT 1997) +# * correct acsc entries for ACS_LANTERN, which is 'i', not 'I'. +# 10.1.9 (Sat Aug 23 17:54:38 EDT 1997) +# * add xterm-8bit entry. +# 10.1.10 (Sat Oct 4 18:17:13 EDT 1997) +# * repair several places where early version of tic replaced \, with \\\, +# * make acsc entries canonical form (sorted, uniq). +# * modify acsc entries for linux, linux-koi8 +# * new rxvt entry, from corrected copy of distribution in rxvt 2.21b +# * add color, mouse support to kterm. +# 10.1.11 (Sat Oct 11 14:57:10 EDT 1997) +# * correct wy120 smxon/tbc capabilities which were stuck together. +# 10.1.12 (Sat Oct 18 17:38:41 EDT 1997) +# * add entry for xterm-xf86-v39t +# 10.1.13 (Sat Nov 8 13:43:33 EST 1997) +# * add u8,u9 to sun-il description +# 10.1.14 (Sat Nov 22 19:59:03 EST 1997) +# * add vt220-js, pilot, rbcomm, datapoint entries from esr's 27-jun-97 +# version. +# * add hds200 description (Walter Skorski) +# * add EMX 0.9b descriptions +# * correct rmso/smso capabilities in wy30-mc and wy50-mc (Daniel Weaver) +# * rename xhpterm back to hpterm. +# 10.1.15 (Sat Nov 29 19:21:59 EST 1997) +# * change initc in linux-c-nc to use 0..1000 range. +# 10.1.16 (Sat Dec 13 19:41:59 EST 1997) +# * remove hpa/vpa from rxvt, which implements them incorrectly. +# * add sgr0 for rxvt. +# * remove bogus smacs/rmacs from EMX descriptions. +# 10.1.17 (Sat Dec 20 17:54:10 EST 1997) +# * revised entry for att7300 +# 10.1.18 (Sat Jan 3 17:58:49 EST 1998) +# * use \0 rather than \200. +# * rename rxvt-color to rxvt to match rxvt 2.4.5 distribution. +# 10.1.19 (Sat Jan 17 14:24:57 EST 1998) +# * change xterm (xterm-xf86-v40), xterm-8bit rs1 to use hard reset. +# * rename xterm-xf86-v39t to xterm-xf86-v40 +# * remove bold/underline from sun console entries since they're not +# implemented. +# 10.1.20 (Sat Jan 24 11:02:51 EST 1998) +# * add beterm entry (Fred Fish) +# * add irix-color/xwsh entry. +# * turn ncv off for linux. +# 10.1.21 (Sat Jan 31 17:39:16 EST 1998) +# * set ncv for FreeBSD console (treat colors with reverse specially). +# * remove sgr string from qnx based on report by Xiaodan Tang +# 10.1.22 (Wed Feb 11 18:40:12 EST 1998) +# * remove spurious commas from descriptions +# * correct xterm-8bit to match XFree86 3.9Ad F1-F4. +# 10.1.23 (Sat Feb 28 17:48:38 EST 1998) +# * add linux-koi8r to replace linux-koi8 (which uses a corrupt acsc, +# apparently based on cp-866). +# +#-(replaced-changelog-1998/02/28-by-ESR)---------------------------------------- +# +# 9.13.23 (Fri Feb 21 16:36:06 EST 1997): +# * Replaced minitel-2 entry. +# * Added MGR, ansi-nt. +# * Minor corrections to xterm entries. +# * Replaced EWAN telnet entry. +# * Dropped the reorder script generator. It was a fossil. +# 9.13.24 (Sun Feb 23 20:55:23 EST 1997): +# * Thorsten Lockert added termcap `bs' to a lot of types, working from +# the 4.4BSD Lite2 file. +# 9.13.25 (Fri Jun 20 12:33:36 EDT 1997): +# * Added Datapoint 8242, pilot, ansi_psx, rbcomm, vt220js. +# * Updated iris-ansi; corrected vt102-w. +# * Switch base xterm entry to 3.3 level. +# 9.13.26 (Mon Jun 30 22:45:45 EDT 1997) +# * Added basic4. +# * Removed rmir/smir from tv92B. +# +# 10.2.0 (Sat Feb 28 12:47:36 EST 1998): +# * add hds200 description (Walter Skorski) +# * add beterm entry (Fred Fish) +# * add Thomas Dickey's xterm-xf86-v40, xterm-8bit, xterm-16color, +# iris-color entries. +# * add emx entries. +# * Replaced unixpc entry with Benjamin Sittler's corrected version. +# * Replaced xterm/rxvt/emu/syscons entries with Thomas Dickey's +# versions. +# * remove sgr string from qnx based on report by Xiaodan Tang +# * Added u8/u9, removed rmul/smul from sun-il. +# * 4.2 tic displays \0 rather than \200. +# * add linux-koi8r to replace linux-koi8 (which uses a corrupt acsc, +# apparently based on cp-866). +# * Merged in Pavel Roskin's acsc for linux-koi8 +# * Corrected some erroneous \\'s to \. +# * 4.2 ncurses has been changed to use setaf/setab, consistent w/SysV. +# * II -> ii in pcvtXX, screen, xterm. +# * Removed \n chars following ANSI escapes in sgr & friends. +# * Updated Wyse entries. +# * h19 corrections from Tim Pierce. +# * Noted that the dm2500 has both ich and smir. +# * added pccons for the Alpha under OSF/1. +# * Added Sony NEWS workstation entries and cit101e-rv. +# * Reverted `amiga'; to Kent Polk's version, as I'm told +# the Verkuil entry messes up with Amiga Telnet. +# 10.2.1 (Sun Mar 8 18:32:04 EST 1998): +# * Corrected attributions in 10.2.0 release notes. +# * Scanned the Shuford archive for new terminfos and information. +# * Removed sgr from qnx entry (Thomas Dickey). +# * Added entries for ICL and Kokusai Data Systems terminals. +# * Incorporated NCR terminfos from the Boundless Technology FTP site. +# * Incorporated att700 from the Boundless Technology FTP site. +# * Miscellaneous contact-address and Web-page updates. +# +#-(changelog-beginning-ncurses-4.2)--------------------------------------------- +# +# 1998/5/9 +# * add nxterm and xterm-color terminfo description (request by Cristian +# Gafton <gafton@redhat.com>). +# * modify rxvt terminfo description to clear alternate screen before +# switching back to normal screen, for compatibility with applications +# which use xterm (reported by Manoj Kasichainula <manojk@io.com>). +# * modify linux terminfo description to reset color palette (reported +# by Telford Tendys <telford@eng.uts.edu.au>). +# +# 1998/7/4 +# * merge changes from current XFree86 xterm terminfo descriptions. +# +# 1998/7/25 +# * Added minitel1 entries from Alexander Montaron. +# * Added qnxt2 from Federico Bianchi. +# * Added arm100 terminfo entries from Dave Millen. +# +# 1998/8/6 +# * Added ncsa telnet entries from Francesco Potorti +# +# 1998/8/15 +# * modify ncsa telnet entry to reflect color, other capabilities based on +# examination of the source code - T.Dickey. +# +# 1998/8/22 +# * Corrected some erroneous \\'s to \ (eterm, osborne) - TD. +# +# 1998/8/29 +# * Added Francesco Potorti's tuned Wyse 99 entries. +# * dtterm enacs correction from Alexander V. Lukyanov. +# * Add ncsa-ns, ncsa-m-ns and ncsa-m entries from esr version. +# * correct a typo in icl6404 entry. +# * add xtermm and xtermc +# +# 1998/9/26 +# * format most %'char' sequences to %{number} +# * adapt IBM AIX 3.2.5 terminfo - T.Dickey +# * merge Data General terminfo from Hasufin <hasufin@vidnet.net> - TD +# +# 1998/10/10 +# * update xterm-xfree86 to current (patch 84), for is2/rs2 changes - TD +# * correct initialization string in xterm-r5, add misc other features +# to correspond with xterm patch 84 - TD +# +# 1998/12/19 +# * update xterm-xfree86 to current (patch 90), smcur/rmcur changes - TD +# * add Mathew Vernon's mach console entries +# * corrections for ncsa function-keys (report by Larry Virden) +# +# 1998/12/19 +# * change linux to use ncv#2, since underline does not work with color - TD +# +# 1999/1/9 +# * add kbt to iris-ansi, document other shift/control functionkeys - TD +# * correct iris-ansi and iris-ansi-ap with respect to normal vs keypad +# application modes, change kent to use the correct keypad code - TD +# +# 1999/1/10 +# * add entry for Tera Term - TD +# +# 1999/1/23 +# * minor improvements for teraterm entry - TD +# * rename several entries used by BSDI: bsdos to bsdos-pc-nobold, +# and bsdos-bold to bsdos-pc (Jeffrey C Honig) +# +# 1999/2/20 +# * resolve ambiguity of kend/kll/kslt and khome/kfnd/kich1 strings in +# xterm and ncsa entries by removing the unneeded ones. Note that +# some entries will return kend & khome versus kslt and kfnd, for +# PC-style keyboards versus strict vt220 compatiblity - TD +# +# 1999/3/13 +# * adjust xterm-xfree86 khome/kend to match default PC-style keyboard +# tables - TD +# * add 'crt' entry - TD +# * correct typos in 'linux-c' entry - TD +# +# 1999/3/14 +# * update entries for BSD/OS console to use klone+sgr and klone+color +# (Jeffrey C Honig) +# +# 1999/3/27 +# * adjust xterm-xfree86 miscellaneous keypad keys, as per patch #94 - TD. +# +# 1999/4/10 +# * add linux-lat, from RedHat patches to ncurses 4.2 +# +# 1999/4/17 +# * add complete set of default function-key definitions for scoansi - TD. +# +# 1999/7/3 +# * add cnorm, cvvis for Linux 2.2 kernels +# +# 1999/7/24 +# * add kmous to xterm-r5 -TD +# * correct entries xterm+sl and xterm+sl-twm, which were missing the +# parent "use" clause -TD +# +# 1999/7/31 +# * corrected cnorm, added el1 in 'screen' description -TD +# +# 1999/8/14 +# * add ms-vt100 -TD +# +# 1999/8/21 +# * corrections to beterm entry -TD +# +# 1999/8/28 +# * add cygwin entry -TD +# +# 1999/9/4 +# * minor corrections for beterm entry -TD +# +# 1999/9/18 +# * add acsc string to HP 70092 terminfo entry -Joerg Wunsch +# +# 1999/9/25 +# * add amiga-8bit entry +# * add console entries from NetBSD: ofcons, wsvt25, wsvt25m, rcons, +# rcons-color, based on +# ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/share/termcap/termcap.src +# * add alias for iris-ansi-net +# +# 1999/10/2 +# * corrected scoansi entry's acsc, some function keys, add color -TD +# +# 1999/10/23 +# * add cnorm, cvvis to cons25w, and modify ncv to add 'dim' -TD +# * reorder ncsa entries to make ncsa-vt220 use the alternate function +# key mapping, leaving Potorti's entries more like he named them -TD +# * remove enter/exit am-mode from cygwin -TD +# +# 1999/10/30 +# * correct typos in several entries (missing '[' from CSI): +# mgr-sun, ncsa-m, vt320-k3, att505, avt-ns, as well as smir/rmir +# strings for avt-ns -TD +# * add 'dim' to ncv mask for linux (report by Klaus Weide). +# +# 1999/11/27 +# * correct kf1-kf4 in xterm-r6 which were vt100-style PF1-PF4 -TD +# * add hts to xterm-r6, and u6-u9 to xterm-r5 -TD +# * add xterm-88color and xterm-256color -TD +# +# 1999/12/4 +# * add "obsolete" termcap strings -TD +# * add kvt and gnome entries -TD +# +# 1999/12/11 +# * correct cup string for regent100 -TD +# +# 2000/1/1 +# * update mach, add mach-color based on Debian diffs for ncurses 5.0 -TD +# * add entries for xterm-hp, xterm-vt220, xterm-vt52 and xterm-noapp -TD +# * change OTrs capabilities to rs2 -TD +# * add obsolete and extended capabilities to 'screen' -TD +# +# 2000/1/5 +# * remove kf0 from rxvt, vt520, vt525 and ibm5151 since it conflicts +# with kf10 -TD +# * updated xterm-xf86-v40, making kdch1 correspond to vt220 'Remove', +# and adding kcbt -TD +# +# 2000/1/12 +# * remove incorrect khome/kend from xterm-xf86-v333, which was based on +# nonstandard resource settings -TD +# +# 2000/2/26 +# * minor fixes for xterm-*, based on Debian #58530 -TD +# +# 2000/3/4 +# * add several terminal types from esr's "11.0", as well as comments. +# bq300*, dku7102-old, dku7202, hft, lft, pcmw, pmcons, tws*, vip*, +# vt220-8bit, vt220-old, wy85-8bit +# +# 2000/3/18 +# * add several terminal types from esr's "11.0.1" (ansi-*). +# * update OTxx capabilities for changes on 2000/3/4. +# * revert part of vt220 change (request by Todd C Miller for OpenBSD) +# +# 2000/3/26 +# * move screen's AX extension to ecma+color, modify several entries to +# use that, adjusting ncv as needed -TD +# +# 2000/4/8 +# * add bsdos-pc-m, bsdos-pc-mono (Jeffrey C Honig) +# * correct spelling error in entry name: bq300-rv was given as bg300-rv +# in esr's version. +# +# 2000/4/15 +# * add cud, ech, etc., to beterm based on feedback from Rico Tudor -TD +# * correct color definition for ibm3164, make minor changes to other +# IBM terminal definitions based on recent terminfo descriptions -TD +# +# 2000/4/22 +# * add mgterm, from NetBSD -TD +# * add alias sun-cgsix for sun-ss5 as per NetBSD +# * change cons25w to use rs2 for reset rather than rs1 -TD +# * add rc/sc to aixterm based on manpage -TD +# +# 2000/5/13 +# * remove ncv from xterm-16color, xterm-256color +# +# 2000/6/10 +# * add kmous capability to linux to use Joerg Schoen's gpm patch. +# +# 2000/7/1 +# * add Eterm (Michael Jennings) +# +# 2000-07-18 +# * add amiga-vnc entry. +# +# 2000-08-12 +# * correct description of Top Gun Telnet. +# * add kterm-color +# +# 2000-08-26 +# * add qansi* entries from QNX ftp site. +# +# 2000-09-16 +# * add Matrix Orbital entries by Eric Z. Ayers). +# * add xterm-basic, xterm-sco entries, update related entries to XFree86 +# 4.0.1c -TD +# +# 2000-09-17 +# * add S0, E0 extensions to screen's entry -TD +# +# 2000-09-23 +# * several corrections based on tic's new parameter-checking code -TD +# * modify xterm-r6 and similar rs2 sequences which had \E7...\E8 +# bracketing sequences that reset video attributes (\E8 would restore +# them) -TD +# +# 2000-11-11 +# * rename cygwin to cygwinB19, adapt newer entry from Earnie Boyd -TD +# +# 2000-12-16 +# * improved scoansi, based on SCO man-page, and testing console, +# scoterm with tack -TD +# +# 2001-01-27 +# * modify kterm to use acsc via SCS controls. +# +# 2001-02-10 +# * screen 3.9.8 allows xterm mouse controls to pass-through +# +# 2001-03-11 +# * remove spurious "%|" from some xterm entries. +# +# 2001-03-31 +# * modify 'screen' khome/kend to match screen 3.09.08 +# * add examples of 'screen' customization (screen.xterm-xfree86, +# screen.xterm-r6, screen.teraterm) -TD +# +# 2001-04-14 +# * correct definitions of shifted editing keys for xterm-xfree86 -TD +# * add "Apple_Terminal" entries -Benjamin Sittler +# * remove time-delays from "Apple_Terminal" entries -TD +# * make sgr entries time-delays consistent with individual caps -TD +# +# 2001-05-05 +# * corrected/updated screen.xterm-xfree86 +# +# 2001-05-19 +# * ELKS descriptions, from Federico Bianchi +# * add u6 (CSR) to Eterm (Michael Jennings). +# +# 2001-07-21 +# * renamed "Apple_Terminal" entries to "nsterm" to work with Solaris's +# tic which handles names no longer than 14 characters. Add +# corresponding descriptions for the Darwin PowerPC console named +# "xnuppc" -Benjamin Sittler +# +# 2001-09-01 +# * change kbs in mach entries to ^? (Marcus Brinkmann). +# +# 2001-11-17 +# * add "putty" entry -TD +# * updated "Apple_Terminal" entries -Benjamin Sittler +# +# 2001-11-24 +# * add ms-vt100-color entry -TD +# * add "konsole" entries -TD +# +# 2001-12-08 +# * update gnome entry to Redhat 7.2 -TD +# +# 2002-05-25 +# * add kf13-kf48 strings to cons25w -TD +# * add pcvt25-color entry -TD +# * changed a few /usr/lib/tabset -> /usr/share/tabset. +# * improve some features of scoansi entry based on SCO's version -TD +# * add scoansi-new entry corresponding to OpenServer 5.0.6 +# +# 2002-06-15 +# * add kcbt to screen entry -TD +# +# 2002-06-22 +# * add rxvt-16color, ibm+16color, mvterm entries -TD +# +# 2002-09-28 +# * split out linux-basic entry, making linux-c inherit from that, and +# in turn linux (with cnorm, etc) inherit from linux-c-nc to reflect +# the history of this console type -TD +# * scaled the linux-c terminfo entry to match linux-c-nc, i.e., the +# r/g/b parameters of initc are in the range 0 to 1000 -TD +# +# 2002-10-05 +# * minor fix for scale-factor of linux-c and linux-c-nc -TD +# +# 2002-11-09 +# * split-out vt100+keypad and vt220+keypad, fix interchanged ka3/kb2 +# in the latter -TD +# +# 2002-11-16 +# * add entries for mterm (mterm, mterm-ansi, decansi) -TD +# * ncr260wy350pp has only 16 color pairs -TD +# * add sun-type4 from NetBSD -TD +# * update xterm-xfree86 to current (patch 170) -TD +# * add screen-bce, screen-s entries -TD +# * add xterm-1002, xterm-1003 entries -TD +# +# 2003-01-11 +# * update homepage for Top Gun Telnet/SSH +# +# 2003-01-25 +# * reduce duplication in emx entries, added emx-base -TD +# +# 2003-05-24 +# * corrected acs for screen.teraterm -TD +# * add tkterm entry -TD +# +# 2003-07-15 +# * cygwin changes from Charles Wilson: +# misc/terminfo.src (nxterm|xterm-color): make xterm-color +# primary instead of nxterm, to match XFree86's xterm.terminfo +# usage and to prevent circular links. +# (rxvt): add additional codes from rxvt.org. +# (rxvt-color): new alias +# (rxvt-xpm): new alias +# (rxvt-cygwin): like rxvt, but with special acsc codes. +# (rxvt-cygwin-native): ditto. rxvt may be run under XWindows, or +# with a "native" MSWin GUI. Each takes different acsc codes, +# which are both different from the "normal" rxvt's acsc. +# (cygwin): cygwin-in-cmd.exe window. Lots of fixes. +# (cygwinDBG): ditto. +# +# 2003-09-27 +# * update gnome terminal entries -TD +# +# 2003-10-04 +# * add entries for djgpp 2.03 and 2.04 -TD +# +# 2003-10-25 +# * add alias for vtnt -TD +# * update xterm-xfree86 for XFree86 4.4 -TD +# +# 2003-11-22 +# * add linux-vt (Andrey V Lukyanov) +# +# 2003-12-20 +# * add screen.linux -TD +# +# 2004-01-10 +# * revised/improved entries for tvi912b, tvi920b (Benjamin Sittler) +# +# 2004-01-17 +# * add OpenNT/Interix/SFU entries (Federico Bianchi) +# * add vt100+ and vt-utf8 entries -TD +# * add uwin entry -TD +# +# 2004-03-27 +# * add sgr strings to several common entries lacking them, e.g., +# screen, to make the entries more portable -TD +# * remove cvvis from rxvt entry, since it is the same as cnorm -TD +# * similar fixups for cvvis/cnorm various entries -TD +# +# 2004-05-22 +# * remove 'ncv' from xterm-256color (patch 188) -TD +# +# 2004-06-26 +# * add mlterm -TD +# * add xterm-xf86-v44 -TD +# * modify xterm-new aka xterm-xfree86 to accommodate luit, which relies +# on G1 being used via an ISO-2022 escape sequence (report by +# Juliusz Chroboczek) -TD +# * add 'hurd' entry -TD +# +# 2004-07-03 +# * make xterm-xf86-v43 derived from xterm-xf86-v40 rather than +# xterm-basic -TD +# * align with xterm #192's use of xterm-new -TD +# * update xterm-new and xterm-8bit for cvvis/cnorm strings -TD +# * make xterm-new the default "xterm" -TD +# +# 2004-07-10 +# * minor fixes for emu -TD +# * add emu-220 +# * add rmam/smam to linux (Trevor Van Bremen) +# * change wyse acsc strings to use 'i' map rather than 'I' -TD +# * fixes for avatar0 -TD +# * fixes for vp3a+ -TD +# +# 2004-07-17 +# * add xterm-pc-fkeys -TD +# * review/update gnome and gnome-rh90 entries (prompted by +# Redhat Bugzilla #122815) -TD +# * review/update konsole entries -TD +# * add sgr, correct sgr0 for kterm and mlterm -TD +# * correct tsl string in kterm -TD +# +# 2004-07-24 +# * make ncsa-m rmacs/smacs consistent with sgr -TD +# * add sgr, rc/sc and ech to syscons entries -TD +# * add function-keys to decansi -TD +# * add sgr to mterm-ansi -TD +# * add sgr, civis, cnorm to emu -TD +# * correct/simplify cup in addrinfo -TD +# * corrections for gnome and konsole entries +# (Redhat Bugzilla #122815) -Hans de Goede +# * modify DEC entries (vt220, etc), to add sgr string, and to use +# ISO-2022 strings for rmacs/smacs -TD +# +# 2004-07-31 +# * rename xterm-pc-fkeys to xterm+pcfkeys -TD +# +# 2004-08-07 +# * improved putty entry -Robert de Bath +# +# 2004-08-14 +# * remove dch/dch1 from rxvt because they are implemented inconsistently +# with the common usage of bce/ech -TD +# * remove khome from vt220 (vt220's have no home key) -TD +# * add rxvt+pcfkeys -TD +# +# 2004-08-21 +# * modify several entries to ensure xterm mouse and cursor visibility +# are reset in rs2 string: hurd, putty, gnome, konsole-base, mlterm, +# Eterm, screen. (The xterm entries are left alone - old ones for +# compatibility, and the new ones do not require this change) -TD +# +# 2004-08-28 +# * add morphos entry -Pavel Fedin +# * modify amiga-8bit to add khome/kend/knp/kpp -Pavel Fedin +# * corrected \E[5?l to \E[?5l in vt320 entries -TD +# +# 2004-11-20 +# * update wsvt25 entry -TD +# +# 2005-01-29 +# * update pairs for xterm-88color and xterm-256color to reflect the +# ncurses extended-color support -TD +# +# 2005-02-26 +# * modify sgr/sgr0 in xterm-new to improve tgetent's derived "me" -TD +# * add aixterm-16color to demonstrate 16-color capability -TD +# +# 2005-04-23 +# * add media-copy to vt100 -TD +# * corrected acsc string for vt52 -TD +# +# 2005-04-30 +# * add kUP, kDN (user-defined shifted up/down arrow) definitions for +# xterm-new -TD +# * add kUP5, kUP6, etc., for xterm-new and rxvt -TD +# +# 2005-05-07 +# * re-corrected acsc string for vt52 -TD +# +# 2005-05-28 +# * corrected sun-il sgr string which referred to bold and underline -TD +# * add sun-color entry -TD +# +# 2005-07-23 +# * modify sgr0 in several entries to reset alternate-charset as in the +# sgr string -TD +# * modify sgr string of prism9 to better match the individual +# attributes -TD +# +# 2005-10-15 +# * correct order of use= in rxvt-basic -TD +# +# 2005-10-26 +# * use kind/kri as shifted up/down cursor keys for xterm-new -TD +# +# 2005-11-12 +# * other minor fixes to cygwin based on tack -TD +# * correct smacs in cygwin (report by Baurzhan Ismagulov). +# +# 2006-02-18 +# * add nsterm-16color entry -TD +# * remove ncv flag from xterm-16color -TD +# * remove setf/setb from xterm-256color to match xterm #209 -TD +# * update mlterm entry to 2.9.2 -TD +# +# 2006-02-25 +# * fixes to make nsterm-16color match report +# by Christian Ebert -Alain Bench +# +# 2006-04-22 +# * add xterm+256color building block -TD +# * add gnome-256color, putty-256color, rxvt-256color -TD +# +# 2006-05-06 +# * add hpterm-color -TD +# +# 2006-06-24 +# * add xterm+pcc0, xterm+pcc1, xterm+pcc2, xterm+pcc3 -TD +# * add gnome-fc5 (prompted by GenToo #122566) -TD +# * remove obsolete/misleading comments about kcbt on Linux -Alain Bench +# * improve xterm-256color by combining the ibm+16color setaf/setab +# strings with SGR 48. The setf/setb strings also are cancelled here +# rather than omitted so derived entries will cancel those also -Alain +# Bench +# +# 2006-07-01 +# * add some notes regarding copyright to terminfo.src -TD +# * use rxvt+pcfkeys in Eterm -TD +# * remove km and flash from gnome, Eterm and rxvt since they do not work +# as one would expect (km sends ESC rather than setting the 8th bit +# of the key) -TD +# * add/use ansi+enq, vt100+enq and vt102+enq -TD +# * add konsole-solaris -TD +# +# 2006-07-22 +# * update xterm-sun and xterm-sco entries to match xterm #216 -TD +# * modify is2/rs2 strings for xterm-r6 as per fix in xterm #148 -TD +# * modify xterm-24 to inherit from "xterm" -TD +# * add xiterm entry -TD +# * add putty-vt100 entry -TD +# * corrected spelling of Michael A Dorman's name, prompted by +# http://www.advogato.org/person/mdorman/diary.html -TD +# +# 2006-08-05 +# * add xterm+pcf0, xterm+pcf2 from xterm #216 -TD +# * update xterm+pcfkeys to match xterm #216 -TD +# +# 2006-08-17 +# * make descriptions of xterm entries consistent with its terminfo -TD +# +# 2006-08-26 +# * add xfce, mgt -TD +# +# 2006-09-02 +# * correct acsc string in kterm -TD +# +# 2006-09-09 +# * add kon entry -TD +# * remove invis from linux and related entries, add klone+sgr8 for those +# that implement the feature (or have not been shown to lack it) -TD +# +# 2006-09-23 +# * add ka2, kb1, kb3, kc2 to vt220-keypad as an extension -TD +# * minor improvements to rxvt+pcfkeys -TD +# +# 2006-09-30 +# * fix a few typos in if/then/else expressions -TD +# +# 2006-10-07 +# * add several GNU Screen variations with 16- and 256-colors, and +# status line (Alain Bench). +# +# 2007-03-03 +# * add Newbury Data entries (Jean-Charles Billaud). +# +# 2007-06-10 +# * corrected xterm+pcf2 modifiers for F1-F4, match xterm #226 -TD +# +# 2007-07-14 +# * restore section of pre-ncurses-4.2 changelog to fix attribution -TD +# * add konsole-256color entry -TD +# +# 2007-08-18 +# * add 9term entry (request by Juhapekka Tolvanen) -TD +# +# 2007-10-13 +# * correct kIC in rxvt+pcfkeys (prompted by Debian #446444) -TD +# * add shift-control- and control-modified keys for rxvt editing +# keypad -TD +# * update mlterm entry to 2.9.3 -TD +# * add mlterm+pcfkeys -TD +# +# 2007-10-20 +# * move kLFT, kRIT, kind and kri capabilities from xterm-new to +# xterm+pcc0, etc., to make the corresponding building blocks reflect +# xterm's capabilities -TD +# * add mrxvt entry -TD +# * add xterm+r6f2, use in mlterm and mrxvt entries -TD +# +# 2007-11-03 +# * correct acsc strings for h19 and z100 (Benjamin Sittler) +# +# 2007-11-11 +# * use xterm-xf86-v44 for "xterm-xfree86", reflecting changes to +# xterm starting with patch #216 -TD +# * make legacy xterm entries such as xterm-24 inherit from xterm-old, +# to match xterm #230 -TD +# * extend xterm+pccX entries to match xterm #230 -TD +# * add xterm+app, xterm+noapp, from xterm #230 -TD +# * add/use xterm+pce2 from xterm #230, in xterm+pcfkeys -TD +# +# 2008-04-19 +# * add screen.rxvt -TD +# +# 2008-04-28 +# * add screen+fkeys (prompted by Debian #478094) -TD +# +# 2008-06-28 +# * add screen.mlterm -TD +# * improve mlterm and mlterm+pcfkeys -TD +# +# 2008-08-23 +# * add Eterm-256color, Eterm-88color -TD +# * add rxvt-88color -TD +# +# 2008-10-12 +# * add teraterm4.59 entry, use that as primary teraterm entry, rename +# original to teraterm2.3 -TD +# * update "gnome" to 2.22.3 -TD +# * update "konsole" to 1.6.6 -TD +# * add "aterm" -TD +# * add "linux2.6.26" -TD +# +# 2008-11-15 +# * change several \E[2g (clear tab at current column) to \E[3g +# (clear all tabs) to match definition for tbc capability -TD +# +# 2008-11-29 +# * add eterm-color -TD +# +# 2009-01-10 +# * add screen.Eterm -TD +# +# 2009-03-28 +# * correct typo in pfkey of ansi.sys-old +# (report by Kalle Olavi Niemitalo) +# * move function- and cursor-keys from emx-base to ansi.sys, and create +# a pfkey capability which handles F1-F48 -TD +# +# 2009-05-02 +# * add vwmterm entry (Bryan Christ) +# +# 2009-09-19 +# * change ncv and op capabilities in sun-color to match Sun's entry for +# this (report by Laszlo Peter) +# * improve interix smso by using reverse rather than bold (report by +# Kristof Zelechovski). +# +# 2009-10-03 +# * remove unnecessary kcan assignment to ^C from putty (Sven Joachim) +# * add linux-16color (Benjamin Sittler) +# * correct initc capability of linux-c-nc end-of-range (Benjamin Sittler) +# * similar change for dg+ccc and dgunix+ccc (Benjamin Sittler) +# * add ccc and initc capabilities to xterm-16color -TD +# +# 2009-10-31 +# * updated nsterm* entries (Benjamin Sittler, prompted by GenToo #206201) +# +# 2009-12-12 +# * updated nsterm* entries (Benjamin Sittler, Emanuele Giaquinta) +# +# 2009-12-12 +# * add bw (auto-left-margin) to nsterm* entries (Benjamin Sittler) +# * rename minix to minix-1.7, add minix entry for Minux3 -TD +# +# 2009-12-26 +# * add bterm (bogl 0.1.18) -TD +# * minor fix to rxvt+pcfkeys -TD +# +# 2010-02-06 +# * update mrxvt to 0.5.4, add mrxvt-256color -TD +# +# 2010-02-13 +# * add several screen-bce.XXX entries -TD +# +# 2010-02-23 +# * modify screen-bce.XXX entries to exclude ech, since screen's color +# model does not clear with color for that feature -TD +# +# 2010-03-20 +# * rename atari and st52 to atari-old, st52-old, use newer entries from +# FreeMiNT by Guido Flohr (from patch/report by Alan Hourihane). +# +# 2010-06-12 +# * add mlterm+256color entry -TD +# +# 2010-07-17 +# * add hard-reset for rs2 to wsvt25 to help ensure that reset ends +# the alternate character set (patch by Nicholas Marriott) +# +# 2010-08-28 +# * improve acsc for vt52 (Benjamin Sittler) +# * modify nsterm entries for consistent sgr/sgr0 -TD +# * modify xnuppc entries for consistent sgr/sgr0 -TD +# * add invis to tek4115 sgr -TD +# +# 2010-09-11 +# * reformat acsc strings to canonical format -TD +# +# 2010-09-25 +# * add "XT" capability to entries for terminals that support both +# xterm-style mouse- and title-controls, for "screen" which +# special-cases TERM beginning with "xterm" or "rxvt" -TD +# +# 2010-10-02 +# * fill in no-parameter forms of cursor-movement where a parameterized +# form is available -TD +# * fill in missing cursor controls where the form of the controls is +# ANSI -TD +# * add parameterized cursor-controls to linux-basic (report by Dae) -TD +# +# 2010-10-09 +# * correct comparison used for setting 16-colors in linux-16color +# entry (Novell #644831) -TD +# * improve linux-16color entry, using "dim" for color-8 which makes it +# gray rather than black like color-0 -TD +# +# 2010-11-20 +# * make "vte" the principal entry defining "gnome", since GNOME terminal +# is merely one of several terminals whose behavior is provided by this +# library -TD +# +# 2010-11-27 +# * fix typo in rmso for tek4106 -Goran Weinholt +# +# 2010-12-11 +# * suppress ncv in screen entry, allowing underline -Alejandro R. Sedeno +# * also suppress ncv in konsole-base -TD +# +# 2011-02-05 +# * add U8 feature to denote entries for terminal emulators which do not +# support VT100 SI/SO when processing UTF-8 encoding -TD +# * add xterm-utf8 as a demo of the U8 feature -TD +# +# 2011-02-20 +# * add cons25-debian entry (Brian M Carlson, Debian #607662). +# +# 2011-06-11 +# * update minix entry to minix 3.2 (Thomas Cort). +# +# 2011-07-09 +# * fix inconsistent tabset path in pcmw (Todd C. Miller). +# * remove a backslash which continued comment, obscuring altos3 +# definition with OpenBSD toolset (Nicholas Marriott). +# +# 2011-07-16 +# * add/use xterm+tmux chunk from xterm #271 -TD +# * resync xterm-new entry from xterm #271 -TD +# * add E3 extended capability to linux-basic (Miroslav Lichvar) +# * add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD +# * add SI/SO change to linux2.6 entry (Debian #515609) -TD +# +# 2011-07-21 +# * add kich1 to sun (Yuri Pankov) +# * use bold rather than reverse for smso in sun-color (Yuri Pankov). +# +# 2011-08-06 +# * corrected k9 in dg460-ansi, add other features based on manuals -TD +# +# 2011-08-20 +# * minor cleanup of X-terminal emulator section -TD +# * add terminator entry -TD +# * add simpleterm entry -TD +# +######## SHANTIH! SHANTIH! SHANTIH! +# generated by ncurses 5.9.20110813 tic +# using options -Ktx +# from terminfo.src revision 1.399 diff --git a/usr/src/cmd/terminfo/terminfo.src b/usr/src/cmd/terminfo/terminfo.src new file mode 100644 index 0000000000..c12f63574b --- /dev/null +++ b/usr/src/cmd/terminfo/terminfo.src @@ -0,0 +1,22573 @@ +######## TERMINAL TYPE DESCRIPTIONS SOURCE FILE +# +# This version of terminfo.src is distributed with ncurses and is maintained +# by Thomas E. Dickey (TD). +# +# Report bugs and new terminal descriptions to +# bug-ncurses@gnu.org +# +# $Revision: 1.399 $ +# $Date: 2011/08/20 20:52:51 $ +# +# The original header is preserved below for reference. It is noted that there +# is a "newer" version which differs in some cosmetic details (but actually +# stopped updates several years ago); we have decided to not change the header +# unless there is also a change in content. +# +# To further muddy the waters, it is noted that changes to this file as part of +# maintenance of ncurses (since 1996) are generally conceded to be copyright +# under the ncurses MIT-style license. That was the effect of the agreement +# which the principal authors of ncurses made in 1998. However, since much of +# the file itself is of unknown authorship (and the disclaimer below makes it +# obvious that Raymond cannot or will not convey rights over those parts), +# there is no explicit copyright notice on the file itself. +# +# It would also be a nuisance to split the file into unknown/known authorship +# and move pieces as they are maintained, since many of the maintenance changes +# have been small corrections to Raymond's translations to/from termcap format, +# correcting the data but not the accompanying annotations. +# +# In any case, note that almost half of this file is not data but annotations +# which reflect creative effort. Furthermore, the structure of entries to +# reuse common chunks also is creative (and subject to copyright). Finally, +# some portions of the data are derivative work under a compatible MIT-style +# license from xterm. +# +#------------------------------------------------------------------------------ +# Version 10.2.1 +# terminfo syntax +# +# Eric S. Raymond (current maintainer) +# John Kunze, Berkeley +# Craig Leres, Berkeley +# +# Please e-mail changes to terminfo@thyrsus.com; the old termcap@berkeley.edu +# address is no longer valid. The latest version can always be found at +# <http://www.tuxedo.org/terminfo>. +# +# PURPOSE OF THIS FILE: +# +# This file describes the capabilities of various character-cell terminals, +# as needed by software such as screen-oriented editors. +# +# Other terminfo and termcap files exist, supported by various OS vendors +# or as relics of various older versions of UNIX. This one is the longest +# and most comprehensive one in existence. It subsumes not only the entirety +# of the historical 4.4BSD, GNU, System V and SCO termcap files and the BRL +# termcap file, but also large numbers of vendor-maintained termcap and +# terminfo entries more complete and carefully tested than those in historical +# termcap/terminfo versions. +# +# Pointers to related resources (including the ncurses distribution) may +# be found at <http://www.tuxedo.org/terminfo>. +# +# INTERNATIONALIZATION: +# +# This file uses only the US-ASCII character set (no ISO8859 characters). +# +# This file assumes a US-ASCII character set. If you need to fix this, start +# by global-replacing \E(B and \E)B with the appropriate ISO 6429 enablers +# for your character set. \E(A and \E)A enables the British character set +# with the pound sign at position 2/3. +# +# In a Japanese-processing environment using EUC/Japanese or Shift-JIS, +# C1 characters are considered the first-byte set of the Japanese encodings, +# so \E)0 should be avoided in <enacs> and initialization strings. +# +# FILE FORMAT: +# +# The version you are looking at may be in any of three formats: master +# (terminfo with OT capabilities), stock terminfo, or termcap. You can tell +# which by the format given in the header above. +# +# The master format is accepted and generated by the terminfo tools in the +# ncurses suite; it differs from stock (System V-compatible) terminfo only +# in that it admits a group of capabilities (prefixed `OT') equivalent to +# various obsolete termcap capabilities. You can, thus, convert from master +# to stock terminfo simply by filtering with `sed "/OT[^,]*,/s///"'; but if +# you have ncurses `tic -I' is nicer (among other things, it automatically +# outputs entries in a canonical form). +# +# The termcap version is generated automatically from the master version +# using tic -C. This filtering leaves in the OT capabilities under their +# original termcap names. All translated entries fit within the 1023-byte +# string-table limit of archaic termcap libraries except where explicitly +# noted below. Note that the termcap translation assumes that your termcap +# library can handle multiple tc capabilities in an entry. 4.4BSD has this +# capability. Older versions of GNU termcap, through 1.3, do not. +# +# For details on these formats, see terminfo(5) in the ncurses distribution, +# and termcap(5) in the 4.4BSD Unix Programmer's Manual. Be aware that 4.4BSD +# curses has been declared obsolete by the caretakers of the 4.4BSD sources +# as of June 1995; they are encouraging everyone to migrate to ncurses. +# +# Note: unlike some other distributed terminfo files (Novell Unix & SCO's), +# no entry in this file has embedded comments. This is so source translation +# to termcap only has to carry over leading comments. Also, no name field +# contains embedded whitespace (such whitespace confuses rdist). +# +# Further note: older versions of this file were often installed with an editor +# script (reorder) that moved the most common terminal types to the front of +# the file. This should no longer be necessary, as the file is now ordered +# roughly by type frequency with ANSI/VT100 and other common types up front. +# +# Some information has been merged in from terminfo files distributed by +# USL and SCO (see COPYRIGHTS AND OTHER DELUSIONS below). Much information +# comes from vendors who maintain official terminfos for their hardware +# (notably DEC and Wyse). +# +# A detailed change history is included at the end of this file. +# +# FILE ORGANIZATION: +# +# Comments in this file begin with # - they cannot appear in the middle +# of a terminfo/termcap entry (this feature had to be sacrificed in order +# to allow standard terminfo and termcap syntax to be generated cleanly from +# the master format). Individual capabilities are commented out by +# placing a period between the colon and the capability name. +# +# The file is divided up into major sections (headed by lines beginning with +# the string "########") and minor sections (beginning with "####"); do +# +# grep "^####" <file> | more +# +# to see a listing of section headings. The intent of the divisions is +# (a) to make it easier to find things, and (b) to order the database so +# that important and frequently-encountered terminal types are near the +# front (so that you'll get reasonable search efficiency from a linear +# search of the termcap form even if you don't use reorder). Minor sections +# usually correspond to manufacturers or standard terminal classes. +# Parenthesized words following manufacturer names are type prefixes or +# product line names used by that manufacturers. +# +# HOW TO READ THE ENTRIES: +# +# The first name in an entry is the canonical name for the model or +# type, last entry is a verbose description. Others are mnemonic synonyms for +# the terminal. +# +# Terminal names look like <manufacturer> <model> - <modes/options> +# The part to the left of the dash, if a dash is present, describes the +# particular hardware of the terminal. The part to the right may be used +# for flags indicating special ROMs, extra memory, particular terminal modes, +# or user preferences. +# +# All names should be in lower case, for consistency in typing. +# +# The following are conventionally used suffixes: +# -2p Has two pages of memory. Likewise 4p, 8p, etc. +# -am Enable auto-margin. +# -m Monochrome. Suppress color support +# -mc Magic-cookie. Some terminals (notably older Wyses) can +# only support one attribute without magic-cookie lossage. +# Their base entry is usually paired with another that +# uses magic cookies to support multiple attributes. +# -nam No auto-margin - suppress <am> capability +# -nl No labels - suppress soft labels +# -ns No status line - suppress status line +# -rv Terminal in reverse video mode (black on white) +# -s Enable status line. +# -vb Use visible bell (<flash>) rather than <bel>. +# -w Wide - in 132 column mode. +# If a name has multiple suffixes and one is a line height, that one should +# go first. Thus `aaa-30-s-rv' is recommended over `aaa-s-rv-30'. +# +# Entries with embedded plus signs are designed to be included through use/tc +# capabilities, not used as standalone entries. +# +# To avoid search clashes, some older all-numeric names for terminals have +# been removed (i.e., "33" for the Model 33 Teletype, "2621" for the HP2621). +# All primary names of terminals now have alphanumeric prefixes. +# +# Comments marked "esr" are mostly results of applying the termcap-compiler +# code packaged with ncurses and contemplating the resulting error messages. +# In many cases, these indicated obvious fixes to syntax garbled by the +# composers. In a few cases, I was able to deduce corrected forms for garbled +# capabilities by looking at context. All the information in the original +# entries is preserved in the comments. +# +# In the comments, terminfo capability names are bracketed with <> (angle +# brackets). Termcap capability names are bracketed with :: (colons). +# +# INTERPRETATION OF USER CAPABILITIES +# +# The System V Release 4 and XPG4 terminfo format defines ten string +# capabilities for use by applications, <u0>...<u9>. In this file, we use +# certain of these capabilities to describe functions which are not covered +# by terminfo. The mapping is as follows: +# +# u9 terminal enquire string (equiv. to ANSI/ECMA-48 DA) +# u8 terminal answerback description +# u7 cursor position request (equiv. to VT100/ANSI/ECMA-48 DSR 6) +# u6 cursor position report (equiv. to ANSI/ECMA-48 CPR) +# +# The terminal enquire string <u9> should elicit an answerback response +# from the terminal. Common values for <u9> will be ^E (on older ASCII +# terminals) or \E[c (on newer VT100/ANSI/ECMA-48-compatible terminals). +# +# The cursor position request (<u7>) string should elicit a cursor position +# report. A typical value (for VT100 terminals) is \E[6n. +# +# The terminal answerback description (u8) must consist of an expected +# answerback string. The string may contain the following scanf(3)-like +# escapes: +# +# %c Accept any character +# %[...] Accept any number of characters in the given set +# +# The cursor position report (<u6>) string must contain two scanf(3)-style +# %d format elements. The first of these must correspond to the Y coordinate +# and the second to the %d. If the string contains the sequence %i, it is +# taken as an instruction to decrement each value after reading it (this is +# the inverse sense from the cup string). The typical CPR value is +# \E[%i%d;%dR (on VT100/ANSI/ECMA-48-compatible terminals). +# +# These capabilities are used by tack(1m), the terminfo action checker +# (distributed with ncurses 5.0). +# +# TABSET FILES +# +# All the entries in this file have been edited to assume that the tabset +# files directory is /usr/share/tabset, in conformance with the File Hierarchy +# Standard for Linux and open-source BSD systems. Some vendors (notably Sun) +# use /usr/lib/tabset or (more recently) /usr/share/lib/tabset. +# +# No curses package we know of actually uses these files. If their location +# is an issue, you will have to hand-patch the file locations before compiling +# this file. +# +# REQUEST FOR CONTACT INFORMATION AND HISTORICAL MATERIAL +# +# As the ANSI/ECMA-48 standard and variants take firmer hold, and as +# character-cell terminals are increasingly replaced by X displays, much of +# this file is becoming a historical document (this is part of the reason for +# the new organization, which puts ANSI types, xterm, Unix consoles, +# and vt100 up front in confidence that this will catch 95% of new hardware). +# +# For the terminal types still alive, I'd like to have manufacturer's +# contact data (Internet address and/or snail-mail + phone). +# +# I'm also interested in enriching the comments so that the latter portions of +# the file do in fact become a potted history of VDT technology as seen by +# UNIX hackers. Ideally, I'd like the headers for each manufacturer to +# include its live/dead/out-of-the-business status, and for as many +# terminal types as possible to be tagged with information like years +# of heaviest use, popularity, and interesting features. +# +# I'm especially interested in identifying the obscure entries listed under +# `Miscellaneous obsolete terminals, manufacturers unknown' before the tribal +# wisdom about them gets lost. If you know a lot about obscure old terminals, +# please go to the terminfo resource page, grab the UFO file (ufo.ti), and +# eyeball it for things you can identify and describe. +# +# If you have been around long enough to contribute, please read the file +# with this in mind and send me your annotations. +# +# COPYRIGHTS AND OTHER DELUSIONS +# +# The BSD ancestor of this file had a standard Regents of the University of +# California copyright with dates from 1980 to 1993. +# +# Some information has been merged in from a terminfo file SCO distributes. +# It has an obnoxious boilerplate copyright which I'm ignoring because they +# took so much of the content from the ancestral BSD versions of this file +# and didn't attribute it, thereby violating the BSD Regents' copyright. +# +# Not that anyone should care. However many valid functions copyrights may +# serve, putting one on a termcap/terminfo file with hundreds of anonymous +# contributors makes about as much sense as copyrighting a wall-full of +# graffiti -- it's legally dubious, ethically bogus, and patently ridiculous. +# +# This file deliberately has no copyright. It belongs to no one and everyone. +# If you claim you own it, you will merely succeed in looking like a fool. +# Use it as you like. Use it at your own risk. Copy and redistribute freely. +# There are no guarantees anywhere. Svaha! +# + +######## ANSI, UNIX CONSOLE, AND SPECIAL TYPES +# +# This section describes terminal classes and brands that are still +# quite common. +# + +#### Specials +# +# Special "terminals". These are used to label tty lines when you don't +# know what kind of terminal is on it. The characteristics of an unknown +# terminal are the lowest common denominator - they look about like a ti 700. +# + +dumb|80-column dumb tty, + am, + cols#80, + bel=^G, cr=^M, cud1=^J, ind=^J, +unknown|unknown terminal type, + gn, use=dumb, +lpr|printer|line printer, + OTbs, hc, os, + cols#132, lines#66, + bel=^G, cr=^M, cub1=^H, cud1=^J, ff=^L, ind=^J, +glasstty|classic glass tty interpreting ASCII control characters, + OTbs, am, + cols#80, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, ht=^I, kcub1=^H, + kcud1=^J, nel=^M^J, .kbs=^H, + +vanilla|dumb tty, + OTbs, + bel=^G, cr=^M, cud1=^J, ind=^J, + +# This is almost the same as "dumb", but with no prespecified width. +# DEL and ^C are hardcoded to act as kill characters. +# ^D acts as a line break (just like newline). +# It also interprets +# \033];xxx\007 +# for compatibility with xterm -TD +9term|Plan9 terminal emulator for X, + am, + OTnl=^J, bel=^G, cud1=^J, + +#### ANSI.SYS/ISO 6429/ECMA-48 Capabilities +# +# See the end-of-file comment for more on these. +# + +# ANSI capabilities are broken up into pieces, so that a terminal +# implementing some ANSI subset can use many of them. +ansi+local1, + cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A, +ansi+local, + cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, + cuu=\E[%p1%dA, use=ansi+local1, +ansi+tabs, + cbt=\E[Z, ht=^I, hts=\EH, tbc=\E[3g, +ansi+inittabs, + it#8, use=ansi+tabs, +ansi+erase, + clear=\E[H\E[J, ed=\E[J, el=\E[K, +ansi+rca, + hpa=\E[%p1%{1}%+%dG, vpa=\E[%p1%{1}%+%dd, +ansi+cup, + cup=\E[%i%p1%d;%p2%dH, home=\E[H, +ansi+rep, + rep=%p1%c\E[%p2%{1}%-%db, +ansi+idl1, + dl1=\E[M, il1=\E[L, +ansi+idl, + dl=\E[%p1%dM, il=\E[%p1%dL, use=ansi+idl1, +ansi+idc, + dch1=\E[P, ich=\E[%p1%d@, ich1=\E[@, rmir=\E6, smir=\E6, +ansi+arrows, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + khome=\E[H, +ansi+sgr|ansi graphic renditions, + blink=\E[5m, invis=\E[8m, rev=\E[7m, + sgr=\E[0%?%p3%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, + sgr0=\E[0m, +ansi+sgrso|ansi standout only, + rmso=\E[m, smso=\E[7m, +ansi+sgrul|ansi underline only, + rmul=\E[m, smul=\E[4m, +ansi+sgrbold|ansi graphic renditions; assuming terminal has bold; not dim, + bold=\E[1m, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, + use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul, +ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold, + dim=\E[2m, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;%?%p7%t8;%;m, + use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul, +ansi+pp|ansi printer port, + mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, +ansi+csr|ansi scroll-region plus cursor save & restore, + csr=\E[%i%p1%d;%p2%dr, rc=\E8, sc=\E7, + +# The IBM PC alternate character set. Plug this into any Intel console entry. +# We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the +# ROM graphics for control characters such as the diamond, up- and down-arrow. +# This works with the System V, Linux, and BSDI consoles. It's a safe bet this +# will work with any Intel console, they all seem to have inherited \E[11m +# from the ANSI.SYS de-facto standard. +klone+acs|alternate character set for ansi.sys displays, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + rmacs=\E[10m, smacs=\E[11m, + +# Highlight controls corresponding to the ANSI.SYS standard. Most +# console drivers for Intel boxes obey these. Makes the same assumption +# about \E[11m as klone+acs. True ANSI/ECMA-48 would have <rmso=\E[27m>, +# <rmul=\E[24m>, but this isn't a documented feature of ANSI.SYS. +klone+sgr|attribute control for ansi.sys displays, + blink=\E[5m, bold=\E[1m, rev=\E[7m, rmpch=\E[10m, + rmso=\E[m, rmul=\E[m, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p9%t;11%;m, + sgr0=\E[0;10m, smpch=\E[11m, smso=\E[7m, smul=\E[4m, + use=klone+acs, + +# Most Intel boxes do not treat "invis" (invisible) text. +klone+sgr8|attribute control for ansi.sys displays, + invis=\E[8m, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + use=klone+sgr, + +# Highlight controls corresponding to the ANSI.SYS standard. *All* +# console drivers for Intel boxes obey these. Does not assume \E[11m will +# work; uses \E[12m instead, which is pretty bulletproof but loses you the ACS +# diamond and arrow characters under curses. +klone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m), + blink=\E[5m, bold=\E[1m, invis=\E[8m, rev=\E[7m, rmso=\E[m, + rmul=\E[m, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, + sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, + use=klone+acs, + +# KOI8-R (RFC1489) acs (alternate character set) +# From: Qing Long <qinglong@Bolizm.ihep.su>, 24 Feb 1996. +klone+koi8acs|alternate character set for ansi.sys displays with KOI8 charset, + acsc=+\020\,\021-\036.^_0\215`\004a\237f\234g\232h\222i\220j\205k\203l\202m\204n\212o\213p\216q\0r\217s\214t\206u\207v\210w\211x\201y\230z\231{\267|\274}L~\225, + rmacs=\E[10m, smacs=\E[11m, + +# ANSI.SYS color control. The setab/setaf caps depend on the coincidence +# between SVr4/XPG4's color numbers and ANSI.SYS attributes. Here are longer +# but equivalent strings that don't rely on that coincidence: +# setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, +# setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, +# The DOS 5 manual asserts that these sequences meet the ISO 6429 standard. +# They match a subset of ECMA-48. +klone+color|color control for ansi.sys and ISO6429-compatible displays, + colors#8, ncv#3, pairs#64, + op=\E[37;40m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + +# This is better than klone+color, it doesn't assume white-on-black as the +# default color pair, but many `ANSI' terminals don't grok the <op> cap. +ecma+color|color control for ECMA-48-compatible terminals, + AX, + colors#8, ncv#3, pairs#64, + op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + +# Attribute control for ECMA-48-compatible terminals +ecma+sgr|attribute capabilities for true ECMA-48 terminals, + rmso=\E[27m, rmul=\E[24m, use=klone+sgr8, + +# For comparison, here are all the capabilities implied by the Intel +# Binary Compatibility Standard (level 2) that fit within terminfo. +# For more detail on this rather pathetic standard, see the comments +# near the end of this file. +ibcs2|Intel Binary Compatibility Standard prescriptions, + cbt=\E[Z, clear=\Ec, cub=\E[%p1%dD, cub1=\E[1D, + cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, + dch=\E[%p1%dP, dispc=\E=%p1%dg, ech=\E[%p1%dX, + hpa=\E[%i%p1%dG, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, + indn=\E[%p1%dS, rc=\E7, rin=\E[%p1%dT, rmam=\E[?7l, sc=\E7, + smam=\E[?7h, tbc=\E[g, vpa=\E[%i%p1%dd, + +#### ANSI/ECMA-48 terminals and terminal emulators +# +# See near the end of this file for details on ANSI conformance. +# Don't mess with these entries! Lots of other entries depend on them! +# +# This section lists entries in a least-capable to most-capable order. +# if you're in doubt about what `ANSI' matches yours, try them in that +# order and back off from the first that breaks. + +# ansi-mr is for ANSI terminals with ONLY relative cursor addressing +# and more than one page of memory. It uses local motions instead of +# direct cursor addressing, and makes almost no assumptions. It does +# assume auto margins, no padding and/or xon/xoff, and a 24x80 screen. +ansi-mr|mem rel cup ansi, + am, xon, + cols#80, lines#24, use=vanilla, use=ansi+erase, + use=ansi+local1, + +# ansi-mini is a bare minimum ANSI terminal. This should work on anything, but +# beware of screen size problems and memory relative cursor addressing. +ansi-mini|any ansi terminal with pessimistic assumptions, + am, xon, + cols#80, lines#24, use=vanilla, use=ansi+cup, + use=ansi+erase, + +# ansi-mtabs adds relative addressing and minimal tab support +ansi-mtabs|any ansi terminal with pessimistic assumptions, + it#8, + ht=^I, use=ansi+local1, use=ansi-mini, + +# ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL +# +# The following is an entry for the full ANSI 3.64 (1977). It lacks +# padding, but most terminals using the standard are "fast" enough +# not to require any -- even at 9600 bps. If you encounter problems, +# try including the padding specifications. +# +# Note: the :as: and :ae: specifications are not implemented here, for +# the available termcap documentation does not make clear WHICH alternate +# character set to specify. ANSI 3.64 seems to make allowances for several. +# Please make the appropriate adjustments to fit your needs -- that is +# if you will be using alternate character sets. +# +# There are very few terminals running the full ANSI 3.64 standard, +# so I could only test this entry on one verified terminal (Visual 102). +# I would appreciate the results on other terminals sent to me. +# +# Please report comments, changes, and problems to: +# +# U.S. MAIL: Hugh Hansard +# Box: 22830 +# Emory University +# Atlanta, GA. 30322. +# +# USENET {akgua,msdc,sb1,sb6,gatech}!emory!mlhhh. +# +# (Added vt100 <rc>,<sc> to quiet a tic warning --esr) +ansi77|ansi 3.64 standard 1977 version, + OTbs, am, mir, + cols#80, it#8, lines#24, + bel=^G, clear=\E[;H\E[2J, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu1=\E[A, dch1=\E[P, dl1=\E[M$<5*/>, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, il1=\E[L$<5*/>, ind=\ED, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, + kf2=\EOR, kf4=\EOS, khome=\E[H, nel=^M\ED, rc=\E8, ri=\EM, + rmir=\E[4l, rmso=\E[m, rmul=\E[m, sc=\E7, smir=\E[4h, + smso=\E[7m, smul=\E[4m, + +# Procomm and some other ANSI emulations don't recognize all of the ANSI- +# standard capabilities. This entry deletes <cuu>, <cuf>, <cud>, <cub>, and +# <vpa>/<hpa> capabilities, forcing curses to use repetitions of <cuu1>, +# <cuf1>, <cud1> and <cub1>. Also deleted <ich> and <ich1>, as QModem up to +# 5.03 doesn't recognize these. Finally, we delete <rep> and <ri>, which seem +# to confuse many emulators. On the other hand, we can count on these programs +# doing <rmacs>/<smacs>/<sgr>. Older versions of this entry featured +# <invis=\E[9m>, but <invis=\E[8m> now seems to be more common under +# ANSI.SYS influence. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Oct 30 1995 +pcansi-m|pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode), + OTbs, am, mir, msgr, + cols#80, it#8, lines#24, + bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, 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, + hts=\EH, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, tbc=\E[3g, + use=klone+sgr-dumb, +pcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode), + lines#25, use=pcansi-m, +pcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode), + lines#33, use=pcansi-m, +pcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode), + lines#43, use=pcansi-m, +# The color versions. All PC emulators do color... +pcansi|ibm-pc terminal programs claiming to be ansi, + use=klone+color, use=pcansi-m, +pcansi-25|pcansi25|ibm-pc terminal programs with 25 lines, + lines#25, use=pcansi, +pcansi-33|pcansi33|ibm-pc terminal programs with 33 lines, + lines#33, use=pcansi, +pcansi-43|pcansi43|ibm-pc terminal programs with 43 lines, + lines#43, use=pcansi, + +# ansi-m -- full ANSI X3.64 with ANSI.SYS-compatible attributes, no color. +# If you want pound signs rather than dollars, replace `B' with `A' +# in the <s0ds>, <s1ds>, <s2ds>, and <s3ds> capabilities. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995 +ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes, + mc5i, + cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, + cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM, + ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%i%p1%dG, ht=\E[I, + ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dS, kbs=^H, + kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kich1=\E[L, mc4=\E[4i, mc5=\E[5i, nel=\r\E[S, + rep=%p1%c\E[%p2%{1}%-%db, rin=\E[%p1%dT, s0ds=\E(B, + s1ds=\E)B, s2ds=\E*B, s3ds=\E+B, tbc=\E[3g, + vpa=\E[%i%p1%dd, use=pcansi-m, + +ansi+enq|ncurses extension for ANSI ENQ, + u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?%[;0123456789]c, + u9=\E[c, + +# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in +# standard terminfo. Assumes ANSI.SYS-compatible attributes and color. +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995 +ansi|ansi/pc-term compatible with color, + use=ansi+enq, use=ecma+color, use=klone+sgr8, use=ansi-m, + +# ansi-generic is a vanilla ANSI terminal. This is assumed to implement +# all the normal ANSI stuff with no extensions. It assumes +# insert/delete line/char is there, so it won't work with +# vt100 clones. It assumes video attributes for bold, blink, +# underline, and reverse, which won't matter much if the terminal +# can't do some of those. Padding is assumed to be zero, which +# shouldn't hurt since xon/xoff is assumed. +ansi-generic|generic ansi standard terminal, + am, xon, + cols#80, lines#24, use=vanilla, use=ansi+csr, use=ansi+cup, + use=ansi+rca, use=ansi+erase, use=ansi+tabs, + use=ansi+local, use=ansi+idc, use=ansi+idl, use=ansi+rep, + use=ansi+sgrbold, use=ansi+arrows, + +#### DOS ANSI.SYS variants +# +# This completely describes the sequences specified in the DOS 2.1 ANSI.SYS +# documentation (except for the keyboard key reassignment feature, which +# doesn't fit the <pfkey> model well). The klone+acs sequences were valid +# though undocumented. The <pfkey> capability is untested but should work for +# keys F1-F10 (%p1 values outside this range will yield unpredictable results). +# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 7 1995 +ansi.sys-old|ANSI.SYS under PC-DOS 2.1, + OTbs, am, mir, msgr, xon, + cols#80, lines#25, + clear=\E[2J, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[k, home=\E[H, + is2=\E[m\E[?7h, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, + khome=^^, pfkey=\E[0;%p1%{58}%+%d;%p2"%s"p, rc=\E[u, + rmam=\E[?7l, sc=\E[s, smam=\E[?7h, u6=\E[%i%d;%dR, + u7=\E[6n, use=klone+color, use=klone+sgr8, + +# Keypad: Home=\0G Up=\0H PrPag=\0I +# ka1,kh kcuu1 kpp,ka3 +# +# Left=\0K 5=\0L Right=\0M +# kcub1 kb2 kcuf1 +# +# End=\0O Down=\0P NxPag=\0Q +# kc1,kend kcud1 kc3,knp +# +# Ins=\0R Del=\0S +# kich1 kdch1 +# +# On keyboard with 12 function keys, +# shifted f-keys: F13-F24 +# control f-keys: F25-F36 +# alt f-keys: F37-F48 +# The shift/control/alt keys do not modify each other, but alt overrides both, +# and control overrides shift. +# +# <pfkey> capability for F1-F48 -TD +ansi.sys|ANSI.SYS 3.1 and later versions, + el=\E[K, ka1=\0G, ka3=\0I, kb2=\0L, kbs=^H, kc1=\0O, kc3=\0Q, + kcbt=\0^O, kcub1=\0K, kcud1=\0P, kcuf1=\0M, kcuu1=\0H, + kdch1=\0S, kend=\0O, kf1=\0;, kf10=\0D, kf11=\0\205, + kf12=\0\206, kf13=\0T, kf14=\0U, kf15=\0V, kf16=\0W, + kf17=\0X, kf18=\0Y, kf19=\0Z, kf2=\0<, kf20=\0[, kf21=\0\\, + kf22=\0], kf23=\0\207, kf24=\0\210, kf25=\0\^, kf26=\0_, + kf27=\0`, kf28=\0a, kf29=\0b, kf3=\0=, kf30=\0c, kf31=\0d, + kf32=\0e, kf33=\0f, kf34=\0g, kf35=\0\211, kf36=\0\212, + kf37=\0h, kf38=\0i, kf39=\0j, kf4=\0>, kf40=\0k, kf41=\0l, + kf42=\0m, kf43=\0n, kf44=\0o, kf45=\0p, kf46=\0q, + kf47=\0\213, kf48=\0\214, kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, + kf9=\0C, khome=\0G, kich1=\0R, knp=\0Q, kpp=\0I, + pfkey=\E[0;%?%p1%{11}%<%t%'\:'%e%?%p1%{13}%<%t%'z'%e%?%p1%{23}%<%t%'G'%e%?%p1%{25}%<%t%'p'%e%?%p1%'#'%<%t%'E'%e%?%p1%'%'%<%t%'f'%e%?%p1%'/'%<%t%'C'%e%{92}%;%;%;%;%;%;%;%p1%+%d;%p2"%s"p, + use=ansi.sys-old, + +# +# Define IBM PC keypad keys for vi as per MS-Kermit while using ANSI.SYS. +# This should only be used when the terminal emulator cannot redefine the keys. +# Since redefining keys with ansi.sys also affects PC-DOS programs, the key +# definitions must be restored. If the terminal emulator is quit while in vi +# or others using <smkx>/<rmkx>, the keypad will not be defined as per PC-DOS. +# The PgUp and PgDn are prefixed with ESC so that tn3270 can be used on Unix +# (^U and ^D are already defined for tn3270). The ESC is safe for vi but it +# does "beep". ESC ESC i is used for Ins to avoid tn3270 ESC i for coltab. +# Note that <kcub1> is always BS, because PC-dos can tolerate this change. +# Caution: vi is limited to 256 string bytes, longer crashes or weirds out vi. +# Consequently the End keypad key could not be set (it is relatively safe and +# actually useful because it sends ^@ O, which beeps and opens a line above). +ansi.sysk|ansisysk|PC-DOS 3.1 ANSI.SYS with keypad redefined for vi, + is2=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p, + rmkx=\E[;71;0;71p\E[;72;0;72p\E[;73;0;73p\E[;77;0;77p\E[;80;0;80p\E[;81;0;81p\E[;82;0;82p\E[;83;0;83p, + smkx=\E[;71;30p\E[;72;11p\E[;73;27;21p\E[;77;12p\E[;80;10p\E[;81;27;4p\E[;82;27;27;105p\E[;83;127p, + use=ansi.sys, +# +# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer. +nansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS, + dch1=\E[1P, dl1=\E[1M, ich1=\E[1@, il1=\E[1L, + is2=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n, + use=ansi.sys, +# +# See ansi.sysk and nansi.sys above. +nansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi, + dch1=\E[1P, dl1=\E[1M, ich1=\E[1@, il1=\E[1L, + is2=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p, + use=ansi.sysk, + +#### ANSI console types + +# +# Atari ST terminals. +# From Guido Flohr <gufl0000@stud.uni-sb.de>. +# +tw52|tw52-color|Toswin window manager with color, + bce, + colors#16, pairs#256, + oc=\Eb?\Ec0, op=\Eb?\Ec0, + setab=\Ec%?%p1%{0}%=%t?%e%p1%{7}%=%t0%e%p1%{15}%=%t7%e%p1%{48}%+%c, + setaf=\Eb%?%p1%{0}%=%t?%e%p1%{7}%=%t0%e%p1%{15}%=%t7%e%p1%{48}%+%c, + setb=\Ec%?%p1%{0}%=%t?%e%p1%{7}%=%t0%e%p1%{15}%=%t7%e%p1%{48}%+%c, + setf=\Eb%?%p1%{0}%=%t?%e%p1%{7}%=%t0%e%p1%{15}%=%t7%e%p1%{48}%+%c, + use=tw52-m, +tw52-m|Toswin window manager monochrome, + ul, + ma#999, + bold=\Eya, dch1=\Ea, dim=\EyB, + is2=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0, rev=\EyP, rmso=\EzQ, + rmul=\EzH, rs2=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0, sgr0=\Ez_, + smso=\EyQ, smul=\EyH, use=at-m, +tt52|Atari TT medium and high resolution, + lines#30, use=at-color, +st52-color|at-color|atari-color|atari_st-color|Atari ST with color, + bce, + colors#16, pairs#256, + is2=\Ev\Eq\Ee\Eb1\Ec0, rs2=\Ev\Eq\Ee\Eb1\Ec0, + setab=\Ec%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1%{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=%t6%e?, + setaf=\Eb%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1%{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=%t6%e?, + setb=\Ec%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1%{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=%t6%e?, + setf=\Eb%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1%{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=%t6%e?, + use=st52, +st52|st52-m|at|at-m|atari|atari-m|atari_st|atarist-m|Atari ST, + am, eo, mir, npc, + cols#80, it#8, lines#24, + bel=^G, civis=\Ef, clear=\EE, cnorm=\Ee, cr=^M, cub1=\ED, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dl1=\EM, ed=\EJ, el=\EK, el1=\Eo, home=\EH, ht=^I, + il1=\EL, ind=^J, is2=\Ev\Eq\Ee, kLFT=\Ed, kRIT=\Ec, kbs=^H, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\177, + kf1=\EP, kf10=\EY, kf11=\Ep, kf12=\Eq, kf13=\Er, kf14=\Es, + kf15=\Et, kf16=\Eu, kf17=\Ev, kf18=\Ew, kf19=\Ex, kf2=\EQ, + kf20=\Ey, kf3=\ER, kf4=\ES, kf5=\ET, kf6=\EU, kf7=\EV, kf8=\EW, + kf9=\EX, khlp=\EH, khome=\EE, kich1=\EI, knp=\Eb, kpp=\Ea, + kund=\EK, nel=^M^J, rc=\Ek, rev=\Ep, ri=\EI, rmso=\Eq, + rs2=\Ev\Eq\Ee, sc=\Ej, sgr0=\Eq, smso=\Ep, +tw100|toswin vt100 window mgr, + eo, mir, msgr, xon, + colors#8, cols#80, it#8, lines#24, pairs#64, vt#3, + acsc=++\,\,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\Ef, + clear=\E[2J\E[H, cnorm=\Ee, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\EB, + cuf=\E[%p1%dC, cuf1=\EC, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\EA, dch1=\Ea, dim=\E[2m, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, + hts=\EH, ich=\E[%p1%d@, il1=\EL, ind=^J, is2=\E<\E)0, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\177, + kf1=\EOP, kf10=\EOY, kf11=\Ep, kf12=\Eq, kf13=\Er, kf14=\Es, + kf15=\Et, kf16=\Eu, kf17=\Ev, kf18=\Ew, kf19=\Ex, kf2=\EOQ, + kf20=\Ey, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, + kf8=\EOW, kf9=\EOX, khlp=\EH, khome=\E\EE, kich1=\EI, + knp=\Eb, kpp=\E\Ea, kund=\EK, ll=\E[24H, nel=\EE, + oc=\E[30;47m, op=\E[30;47m, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=^O, rmcup=\E[?7h, rmir=\Ei, rmkx=\E[?1l\E>, + rmso=\E[m, rmul=\E[m, + rs1=\E<\E[20l\E[?3;6;9l\E[r\Eq\E(B\017\E)0\E>, + sc=\E7, + setb=\E[4%p1%'0'%+%Pa%?%ga%'0'%=%t0%e%ga%'1'%=%t4%e%ga%'2'%=%t2%e%ga%'3'%=%t6%e%ga%'4'%=%t1%e%ga%'5'%=%t5%e%ga%'6'%=%t3%e7%;m, + setf=\E[3%p1%'0'%+%Pa%?%ga%'0'%=%t0%e%ga%'1'%=%t4%e%ga%'2'%=%t2%e%ga%'3'%=%t6%e%ga%'4'%=%t1%e%ga%'5'%=%t5%e%ga%'6'%=%t3%e7%;m, + sgr0=\E[m, smacs=^N, smcup=\E[?7l, smir=\Eh, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, +# The entries for stv52 and stv52pc probably need a revision. +stv52|MiNT virtual console, + am, msgr, + cols#80, it#8, lines#30, + bel=^G, blink=\Er, bold=\EyA, civis=\Ef, clear=\EE, + cnorm=\E. \Ee, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E.", + dim=\Em, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, il1=\EL, + ind=\n$<2*/>, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\177, kf1=\EP, kf10=\EY, kf11=\Ep, kf12=\Eq, + kf13=\Er, kf14=\Es, kf15=\Et, kf16=\Eu, kf17=\Ev, kf18=\Ew, + kf19=\Ex, kf2=\EQ, kf20=\Ey, kf3=\ER, kf4=\ES, kf5=\ET, + kf6=\EU, kf7=\EV, kf8=\EW, kf9=\EX, khlp=\EH, khome=\EE, + kich1=\EI, knp=\Eb, kpp=\Ea, kund=\EK, nel=\r\n$<2*/>, + op=\Eb@\EcO, rev=\Ep, ri=\EI$<2*/>, rmcup=\Ev\E. \Ee\Ez_, + rmso=\Eq, rmul=\EzH, rs1=\Ez_\Eb@\EcA, sgr0=\Ez_, + smcup=\Ev\Ee\Ez_, smso=\Ep, smul=\EyH, +stv52pc|MiNT virtual console with PC charset, + am, msgr, + cols#80, it#8, lines#30, + acsc=+\257\,\256-\^.v0\333I\374`\177a\260f\370g\361h\261j\331k\277l\332m\300n\305o\377p-q\304r-s_t+u+v+w+x\263y\363z\362{\343|\366}\234~\371, + bel=^G, blink=\Er, bold=\EyA, civis=\Ef, clear=\EE, + cnorm=\E. \Ee, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E.", + dim=\Em, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, il1=\EL, + ind=\n$<2*/>, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\177, kf1=\EP, kf10=\EY, kf11=\Ep, kf12=\Eq, + kf13=\Er, kf14=\Es, kf15=\Et, kf16=\Eu, kf17=\Ev, kf18=\Ew, + kf19=\Ex, kf2=\EQ, kf20=\Ey, kf3=\ER, kf4=\ES, kf5=\ET, + kf6=\EU, kf7=\EV, kf8=\EW, kf9=\EX, khlp=\EH, khome=\EE, + kich1=\EI, knp=\Eb, kpp=\Ea, kund=\EK, nel=\r\n$<2*/>, + rev=\Ep, ri=\EI$<2*/>, rmcup=\Ev\E. \Ee\Ez_, rmso=\Eq, + rmul=\EzH, rs1=\Ez_\Eb@\EcA, sgr0=\Ez_, smcup=\Ev\Ee\Ez_, + smso=\Ep, smul=\EyH, + +#### Atari ST +# + +# From: Simson L. Garfinkel <simsong@media-lab.mit.edu> +atari-old|atari st, + OTbs, am, + cols#80, it#8, lines#25, + clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dl1=\EM, + ed=\EJ, el=\EK, ht=^I, il1=\EL, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, ri=\EI, rmso=\Eq, sgr0=\Eq, smso=\Ep, +# UniTerm terminal program for the Atari ST: 49-line VT220 emulation mode +# From: Paul M. Aoki <aoki@ucbvax.berkeley.edu> +uniterm|uniterm49|UniTerm VT220 emulator with 49 lines, + lines#49, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H, + use=vt220, +# MiNT VT52 emulation. 80 columns, 25 rows. +# MiNT is Now TOS, the operating system which comes with all Ataris now +# (mainly Atari Falcon). This termcap is for the VT52 emulation you get +# under tcsh/zsh/bash/sh/ksh/ash/csh when you run MiNT in `console' mode +# From: Per Persson <pp@gnu.ai.mit.edu>, 27 Feb 1996 +st52-old|Atari ST with VT52 emulation, + am, km, + cols#80, lines#25, + bel=^G, civis=\Ef, clear=\EH\EJ, cnorm=\Ee, cr=^M, cub1=\ED, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, il1=\EL, + ind=^J, ka1=\E#7, ka3=\E#5, kb2=\E#9, kbs=^H, kc1=\E#1, + kc3=\E#3, kclr=\E#7, kcub1=\E#K, kcud1=\E#P, kcuf1=\E#M, + kcuu1=\E#H, kf0=\E#D, kf1=\E#;, kf2=\E#<, kf3=\E#=, kf4=\E#>, + kf5=\E#?, kf6=\E#@, kf7=\E#A, kf8=\E#B, kf9=\E#C, khome=\E#G, + kil1=\E#R, kind=\E#2, kri=\E#8, lf0=f10, nel=^M^J, rc=\Ek, + ri=\EI, rmcup=, rmso=\Eq, rs1=\Ez_\Eb@\EcA, sc=\Ej, sgr0=\Eq, + smcup=\Ee, smso=\Ep, + +#### BeOS +# +# BeOS entry for Terminal program Seems to be almost ANSI +beterm|BeOS Terminal, + am, eo, mir, msgr, xenl, xon, + colors#8, cols#80, it#8, lines#25, ncv#5, pairs#64, + bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, 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%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, + kend=\E[4~, kf1=\E[11~, kf10=\E[20~, kf11=\E[21~, + kf12=\E[22~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[16~, kf7=\E[17~, kf8=\E[18~, kf9=\E[19~, + khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, + nel=^M^J, op=\E[m, rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, + rmkx=\E[?4l, rmso=\E[m, rmul=\E[24m, rs1=\Ec, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + setb=\E[%p1%{40}%+%cm, setf=\E[%p1%{30}%+%cm, + sgr0=\E[0;10m, smir=\E[4h, smkx=\E[?4h, smso=\E[7m, + smul=\E[4m, u6=\E[%i%p1%d;%p2%dR, u7=\E[6n, + vpa=\E[%i%p1%dd, + +#### Linux consoles +# + +# This entry is good for the 1.2.13 or later version of the Linux console. +# +# *************************************************************************** +# * * +# * WARNING: * +# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in * +# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab * +# * character. Here are the keymap replacement lines that will set this up: * +# * * +# keycode 15 = Tab Tab +# alt keycode 15 = Meta_Tab +# shift keycode 15 = F26 +# string F26 ="\033[Z" +# * * +# * This has to use a key slot which is unfortunate (any unused one will * +# * do, F26 is the higher-numbered one). The change ought to be built * +# * into the kernel tables. * +# * * +# *************************************************************************** +# +# All linux kernels since 1.2.13 (at least) set the screen size +# themselves; this entry assumes that capability. +# +linux-basic|linux console, + am, bce, eo, mir, msgr, xenl, xon, + it#8, ncv#18, U8#1, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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[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, 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~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + kspd=^Z, nel=^M^J, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, + rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + smam=\E[?7h, smir=\E[4h, smul=\E[4m, tbc=\E[3g, + vpa=\E[%i%p1%dd, use=vt102+enq, use=klone+sgr, + use=ecma+color, + +linux-m|Linux console no color, + colors@, pairs@, + setab@, setaf@, setb@, setf@, use=linux, + +# The 1.3.x kernels add color-change capabilities; if yours doesn't have this +# and it matters, turn off <ccc>. The %02x escape used to implement this is +# not supposedly back-portable to older SV curses (although it has worked fine +# on Solaris for several years) and not supported in ncurses versions before +# 1.9.9. +linux-c-nc|linux console with color-change, + ccc, + initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, + oc=\E]R, use=linux-basic, +# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996 +linux-c|linux console 1.3.6+ for older ncurses, + ccc, + initc=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p3%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p4%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;, + oc=\E]R, use=linux-basic, + +# The 2.2.x kernels add a private mode that sets the cursor type; use that to +# get a block cursor for cvvis. +# reported by Frank Heckenbach <frank@g-n-u.de>. +linux2.2|linux 2.2.x console, + civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c, + cvvis=\E[?25h\E[?8c, use=linux-c-nc, + +# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here: +# http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html +# Using SI/SO has the drawback that it confuses screen. SCS would work. +# However, SCS is buggy (see comment in Debian #515609) -TD +linux2.6|linux 2.6.x console, + rmacs=^O, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, use=linux2.2, + +# The 3.0 kernel adds support for clearing scrollback buffer (capability E3). +linux3.0|linux 3.0 kernels, + E3=\E[3;J, use=linux2.6, + +linux|linux console, + use=linux3.0, + +# Subject: linux 2.6.26 vt back_color_erase +# Changes to the Linux console driver broke bce model as reported in +# https://bugzilla.novell.com/show_bug.cgi?id=418613 +# apparently from +# http://lkml.org/lkml/2008/4/26/305 +# http://groups.google.com/group/fa.linux.kernel/browse_thread/thread/87f98338f0d636bb/aa96e8b86cee0d1e?lnk=st&q=#aa96e8b86cee0d1e +linux2.6.26|linux console w/o bce, + bce@, use=linux2.6, + +# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file +linux-nic|linux with ich/ich1 suppressed for non-curses programs, + ich@, ich1@, use=linux, + +# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts. +# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997. +linux-koi8|linux with koi8 alternate character set, + acsc=+\020\,\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224, + use=linux, use=klone+koi8acs, + +# Another entry for KOI8-r with Qing Long's acsc. +# (which one better complies with the standard?) +linux-koi8r|linux with koi8-r alternate character set, + use=linux, use=klone+koi8acs, + +# Entry for the latin1 and latin2 fonts +linux-lat|linux with latin1 or latin2 alternate character set, + acsc=+\020\,\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376, + use=linux, + +# This uses graphics from VT codeset instead of from cp437. +# reason: cp437 (aka "straight to font") is not functional under luit. +# from: Andrey V Lukyanov <land@long.yar.ru>. +linux-vt|linux console using VT codes for graphics, + acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, + rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0, + smpch@, use=linux, + +# This is based on the Linux console (relies on the console to perform some +# of the functionality), but does not recognize as many control sequences. +# The program comes bundled with an old (circa 1998) copy of the Linux +# console terminfo. It recognizes some non-ANSI/VT100 sequences such as +# \E* move cursor to home, as as \E[H +# \E,X same as \E(X +# \EE move cursor to beginning of row +# \E[y,xf same as \E[y,xH +# +# Note: The status-line support is buggy (dsl does not work). +kon|kon2|jfbterm|Kanji ON Linux console, + ccc@, hs, + civis@, cnorm@, cvvis@, dsl=\E[?H, flash@, fsl=\E[?F, initc@, + initp@, kcbt@, oc@, op=\E[37;40m, rs1=\Ec, tsl=\E[?T, + use=linux, + +# 16-color linux console entry; this works with a 256-character +# console font but bright background colors turn into dim ones when +# you use a 512-character console font. This uses bold for bright +# foreground colors and blink for bright background colors. +linux-16color|linux console with 16 colors, + colors#16, ncv#54, pairs#256, + setab=\E[4%p1%{8}%m%d%?%p1%{8}%>%t;5%e%p1%{8}%=%t;2%e;25%;m, + setaf=\E[3%p1%{8}%m%d%?%p1%{8}%>%t;1%e%p1%{8}%=%t;2%e;21%;m, + use=linux, + +# bterm (bogl 0.1.18) +# Implementation is in bogl-term.c +# Key capabilities from linux terminfo entry +# +# Notes: +# bterm only supports acs using wide-characters, has case for these: qjxamlkut +# bterm does not support sgr, since it only processes one parameter -TD +bterm|bogl virtual terminal, + am, bce, + colors#8, cols#80, lines#24, pairs#64, + acsc=aajjkkllmmqqttuuxx, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, + cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=^J, + 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~, + kmous=\E[M, knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, + op=\E49;39m, rev=\E[7m, ri=\EM, rmacs=^O, rmso=\E[27m, + rmul=\E[24m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr0=\E[0m, smacs=^N, smso=\E[7m, smul=\E[4m, + +#### Mach +# + +# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk> +mach|Mach Console, + am, km, + cols#80, it#8, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J, + kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[9, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, + kf9=\EOX, khome=\E[H, kich1=\E[@, kll=\E[F, knp=\E[U, + kpp=\E[V, rev=\E[7m, rmso=\E[0m, rmul=\E[24m, sgr0=\E[0m, + smso=\E[7m, smul=\E[4m, +mach-bold|Mach Console with bold instead of underline, + rmul=\E[0m, smul=\E[1m, use=mach, +mach-color|Mach Console with ANSI color, + colors#8, pairs#64, + dim=\E[2m, invis=\E[8m, op=\E[37;40m, rmso=\E[27m, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=mach, + +# From: Marcus Brinkmann +# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/ +# +# Comments in the original are summarized here: +# +# hurd uses 8-bit characters (km). +# +# Although it doesn't do XON/XOFF, we don't want padding characters (xon). +# +# Regarding compatibility to vt100: hurd doesn't specify <xenl>, as we don't +# have the eat_newline_glitch. It doesn't support setting or removing tab +# stops (hts/tbc). +# +# hurd uses ^H instead of \E[D for cub1, as only ^H implements <bw> and it is +# one byte instead three. +# +# <ich1> is not included because hurd has insert mode. +# +# hurd doesn't use ^J for scrolling, because this could put things into the +# scrollback buffer. +# +# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode. +# This is a GNU extension. +# +# The original has commented-out ncv, but is restored here. +# +# Reading the source, RIS resets cnorm, but not xmous. +hurd|The GNU Hurd console server, + am, bce, bw, eo, km, mir, msgr, xon, + colors#8, it#8, ncv#18, pairs#64, + acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\Ec, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, 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, cvvis=\E[34l, 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=\Eg, + home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, + invis=\E[8m, kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, + kend=\E[4~, kf1=\EOP, 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=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[15~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + kspd=^Z, nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T, + rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E[10m, rmir=\E[4l, + rmso=\E[27m, rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + sgr0=\E[0m, sitm=\E[3m, smacs=\E[11m, smir=\E[4h, + smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l, + gsbom=\E[>1h, + +#### OSF Unix +# + +# OSF/1 1.1 Snapshot 2 +pmcons|pmconsole|PMAX console, + am, + cols#128, lines#57, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ht=^I, + ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + +# 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 +# +# hpa/vpa work in the console, but not in scoterm: +# hpa=\E[%p1%dG, +# vpa=\E[%p1%dd, +# +# SCO's terminfo uses +# kLFT=\E[d, +# kRIT=\E[c, +# which do not work (console or scoterm). +# +# Console documents only 3 attributes can be set with SGR (so we don't use sgr). +scoansi-old|SCO Extended ANSI standard crt (5.0.5), + OTbs, am, bce, eo, xon, + colors#8, cols#80, it#8, lines#25, pairs#64, + acsc=+/\,.-\230.\2310[5566778899\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3yszr{c}\034~\207, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + civis=\E[=14;12C, clear=\E[H\E[2J, cnorm=\E[=10;12C, + cub=\E[%p1%dD, cub1=^H, 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, cvvis=\E[=0;12C, dch=\E[%p1%dP, + dch1=\E[P, dispc=\E[=%p1%dg, dl=\E[%p1%dM, dl1=\E[M, + ed=\E[m\E[J, el=\E[m\E[K, el1=\E[1K, home=\E[H, ht=^I, + hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, + ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbeg=\E[E, kbs=^H, + kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\177, 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[0;37;40m, rc=\E8, + rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, + rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, + smacs=\E[12m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, +scoansi-new|SCO Extended ANSI standard crt (5.0.6), + km, + civis=\E[=0c, cnorm=\E[=1c, csr=\E[%i%p1%d;%p2%dr, + cvvis=\E[=2c, mgc=\E[=r, oc=\E[51m, op=\E[50m, + rep=\E[%p1%d;%p2%db, rmm=\E[=11L, + sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, + smgb=\E[=1;0m, smgbp=\E[=1;%i%p1%dm, + smglp=\E[=2;%i%p1%dm, smgr=\E[=3;0m, + smgrp=\E[=3;%i%p1%dm, smgt=\E[=0;0m, + smgtp=\E[=0;%i%p1%dm, smm=\E[=10L, + wind=\E[%i%p1%d;%p2%d;%i%p3%d;%p4%dr, + use=scoansi-old, +# make this easy to change... +scoansi|SCO Extended ANSI standard crt, + use=scoansi-old, + +# This actually describes the generic SVr4 display driver for Intel boxes. +# The <dim=\E[2m> isn't documented and therefore may not be reliable. +# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995 +att6386|at386|386at|AT&T WGS 6386 console, + am, bw, eo, xon, + cols#80, it#8, lines#25, + acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[=C, + clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub=\E[%p1%dD, + cub1=\E[D, 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[2m, + dl=\E[%p1%dM, dl1=\E[1M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, + home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, + ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=\E[S, + indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10;39m, kbs=^H, + kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[P, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, + kf12=\EOA, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, + kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kich1=\E[@, + knp=\E[U, kpp=\E[V, krmir=\E0, nel=\r\E[S, rc=\E8, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, + sc=\E7, + sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m, + sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, vpa=\E[%i%p1%dd, use=klone+color, +# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr) +pc6300plus|AT&T 6300 plus, + OTbs, am, xon, + cols#80, lines#24, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[=C, + clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, + dch1=\E[1P, dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K, + home=\E[H, hts=\EH, ich1=\E[1@, il1=\E[1L, ind=^J, + invis=\E[9m, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe, + kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\EOk, + nel=^M^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smso=\E[7m, smul=\E[4m, tbc=\E[3g, + +# From: Benjamin C. W. Sittler <bsittler@nmt.edu> +# +# I have a UNIX PC which I use as a terminal attached to my Linux PC. +# Unfortunately, the UNIX PC terminfo entry that comes with ncurses +# is broken. All the special key sequences are broken, making it unusable +# with Emacs. The problem stems from the following: +# +# The UNIX PC has a plethora of keys (103 of them, and there's no numeric +# keypad!), loadable fonts, and strange highlighting modes ("dithered" +# half-intensity, "smeared" bold, and real strike-out, for example.) It also +# uses resizable terminal windows, but the bundled terminal program always +# uses an 80x24 window (and doesn't support seem to support a 132-column +# mode.) +# +# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a +# library which was a superset of SVr3.5 curses (called tam, for "terminal +# access method".) tam includes support for real, overlapping windows, +# onscreen function key labels, and bitmap graphics. But since the primary +# user interface on the UNIX PC was a GUI program (ua, for "user +# assistant",) and remote administration was considered important for the +# machine, tam also supported VT100-compatible terminals attached to the +# serial port or used across the StarLan network. To simulate the extra keys +# not present on a VT100, users could press ESC and a two-letter sequence, +# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences, +# however, were not the same as those sent by the actual Undo key. The +# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example. +# (If you're interested in adding some of the tam calls to ncurses, btw, I +# have the full documentation and several programs which use tam. It also +# used an extended terminfo format to describe key sequences, special +# highlighting modes, etc.) +# +# KEYS: This means that ncurses would quite painful on the UNIX PC, since +# there are two sequences for every key-modifier combination (local keyboard +# sequence and remote "VT100" sequence.) But I doubt many people are trying +# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the +# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume) +# seem to have been built from the manual describing the VT100 sequences. +# This means it doesn't work for a real live UNIX PC. +# +# FONTS: The UNIX PC also has a strange interpretation of "alternate +# character set". Rather than the VT100 graphics you might expect, it allows +# up to 8 custom fonts to be loaded at any given time. This means that +# programs expecting VT100 graphics will usually be disappointed. For this +# reason I have disabled the smacs/rmacs sequences, but they could easily be +# re-enabled. Here are the relevant control sequences (from the ESCAPE(7) +# manpage), should you wish to do so: +# +# SGR10 - Select font 0 - ESC [ 10 m or SO +# SGR11 - Select font 1 - ESC [ 11 m or SI +# SGR12 - Select font 2 - ESC [ 12 m +# ... (etc.) +# SGR17 - Select font 7 - ESC [ 17 m +# +# Graphics for line drawing are not reliably found at *any* character +# location because the UNIX PC has dynamically reloadable fonts. I use font +# 0 for regular text and font 1 for italics, but this is by no means +# universal. So ASCII line drawing is in order if smacs/rmacs are enabled. +# +# MISC: The cursor visible/cursor invisible sequences were swapped in the +# distributed terminfo. +# +# To ameliorate these problems (and fix a few highlighting bugs) I rewrote +# the UNIX PC terminfo entry. The modified version works great with Lynx, +# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC +# attached by serial cable. In Emacs, even the Undo key works, and many +# applications can now use the F1-F8 keys. +# +# esr's notes: +# Terminfo entry for the AT&T Unix PC 7300 +# from escape(7) in Unix PC 7300 Manual. +# Somewhat similar to a vt100-am (but different enough +# to redo this from scratch.) +# +# /*************************************************************** +# * +# * FONT LOADING PROGRAM FOR THE UNIX PC +# * +# * This routine loads a font defined in the file ALTFONT +# * into font memory slot #1. Once the font has been loaded, +# * it can be used as an alternative character set. +# * +# * The call to ioctl with the argument WIOCLFONT is the key +# * to this routine. For more information, see window(7) in +# * the PC 7300 documentation. +# ***************************************************************/ +# #include <string.h> /* needed for strcpy call */ +# #include <sys/window.h> /* needed for ioctl call */ +# #define FNSIZE 60 /* font name size */ +# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */ +# /* +# * The file /usr/lib/wfont/special.8.ft comes with the +# * standard PC software. It defines a graphics character set +# * similar to that of the Teletype 5425 terminal. To view +# * this or other fonts in /usr/lib/wfont, use the command +# * cfont <filename>. For further information on fonts see +# * cfont(1) in the PC 7300 documentation. +# */ +# +# struct altfdata /* structure for alt font data */ +# { +# short altf_slot; /* memory slot number */ +# char altf_name[FNSIZE]; /* font name (file name) */ +# }; +# ldfont() +# { +# int wd; /* window in which altfont will be */ +# struct altfdata altf; +# altf.altf_slot=1; +# strcpy(altf.altf_name,ALTFONT); +# for (wd =1; wd < 12; wd++) { +# ioctl(wd, WIOCLFONT,&altf); +# } +# } +# +# (att7300: added <civis>/<cnorm>/<ich1>/<invis> from the BSDI entry, +# they're confirmed by the man page for the System V display---esr) +# +att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300, + am, xon, + cols#80, it#8, lines#24, + bel=^G, blink=\E[9m, bold=\E[1m, cbt=\E^I, civis=\E[=1C, + clear=\E[2J\E[H, cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, + cub1=^H, 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, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, + ed=\E[0J, el=\E[0K, home=\E[H, ich1=\E[@, il=\E[%p1%dL, + il1=\E[L, ind=^J, invis=\E[9m, is1=\017\E[=1w, kBEG=\ENB, + kCAN=\EOW, kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE, + kEND=\ENN, kEOL=\EOA, kFND=\EOX, kHLP=\EOM, kHOM=\ENM, + kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kNXT=\ENH, kOPT=\EOR, + kPRV=\ENG, kRDO=\EOT, kRIT=\ENL, kRPL=\EOY, kSAV=\EOO, + kUND=\EOS, kbeg=\ENb, kbs=^H, kcan=\EOw, kcbt=\E[Z, + kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf, + ked=\E[J, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, kf2=\EOd, + kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, + kfnd=\EOx, khlp=\EOm, khome=\E[H, kich1=\ENj, kind=\E[B, + kmov=\ENc, kmrk=\ENi, knp=\E[U, knxt=\ENh, kopn=\EOv, + kopt=\EOr, kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, + kref=\EOb, krfr=\ENa, kri=\E[A, krpl=\EOy, krst=\EOB, + ksav=\EOo, kslt=\ENI, kund=\EOs, nel=\EE, rev=\E[7m, ri=\EM, + rmso=\E[m, rmul=\E[m, sgr0=\E[0;10m, smso=\E[7m, + smul=\E[4m, + +# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is +# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes +# for the application keypad mode. We have added iris-ansi-ap rather than +# change the original to keypad mode. +# +# (iris-ansi: added rmam/smam based on init string -- esr) +# +# This entry, and those derived from it, is used in xwsh (also known as +# winterm). Some capabilities that do not fit into the terminfo model +# include the shift- and control-functionkeys: +# +# F1-F12 generate different codes when shift or control modifiers are used. +# For example: +# F1 \E[001q +# shift F1 \E[013q +# control-F1 \E[025q +# +# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e., +# \EOP to \EOS. The shifted and control modifiers still do the same thing. +# +# The cursor keys also have different codes: +# control-up \E[162q +# control-down \E[165q +# control-left \E[159q +# control-right \E[168q +# +# shift-up \E[161q +# shift-down \E[164q +# shift-left \E[158q +# shift-right \E[167q +# +# control-tab \[072q +# +iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100), + am, + cols#80, it#8, lines#40, + bel=^G, bold=\E[1m, clear=\E[H\E[2J, + cnorm=\E[9/y\E[12/y\E[=6l, cr=^M, cub=\E[%p1%dD, + cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, + cuu1=\E[A, cvvis=\E[10/y\E[=1h\E[=2l\E[=6h, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=\ED, + is2=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8, kDC=\E[P, + kEND=\E[147q, kHOM=\E[143q, kLFT=\E[158q, kPRT=\E[210q, + kRIT=\E[167q, kSPD=\E[218q, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, + kend=\E[146q, kent=^M, kf1=\E[001q, kf10=\E[010q, + kf11=\E[011q, kf12=\E[012q, kf2=\E[002q, kf3=\E[003q, + kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, + kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, + knp=\E[154q, kpp=\E[150q, kprt=\E[209q, krmir=\E[146q, + kspd=\E[217q, nel=\EE, pfkey=\EP101;%p1%d.y%p2%s\E\\, + rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, + sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m, + tbc=\E[3g, +iris-ansi-ap|IRIS ANSI in application-keypad mode, + is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q, + kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi, + +# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX +# (T.Dickey 98/1/24) +iris-color|xwsh|IRIX ANSI with color, + ncv#33, + csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m, + ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m, + rmul=\E[24m, rs1=\Ec, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sitm=\E[3m, use=vt100+enq, use=klone+color, + use=iris-ansi-ap, + +# The following is a version of the ibm-pc entry distributed with PC/IX, +# (Interactive Systems' System 3 for the Big Blue), modified by Richard +# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original, +# (the former is untrue, and the latter failed under UCB/man); standout and +# underline modes have been added. Note: this entry describes the "native" +# capabilities of the PC monochrome display, without ANY emulation; most +# communications packages (but NOT PC/IX connect) do some kind of emulation. +pcix|PC/IX console, + am, bw, eo, + cols#80, lines#24, + clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, + home=\E[H, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, + smul=\E[4m, + +# (ibmpcx: this entry used to be known as ibmx. +# It formerly included the following extension capabilities: +# :GC=b:GL=v:GR=t:RT=^J:\ +# :GH=\E[196g:GV=\E[179g:\ +# :GU=\E[193g:GD=\E[194g:\ +# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\ +# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\ +# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\ +# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate +# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match +# what was there before. -- esr) +ibmpcx|xenix|ibmx|IBM PC xenix console display, + OTbs, am, msgr, + cols#80, lines#25, + clear=^L, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, + ed=\E[J, el=\E[K, home=\E[H, ich1=\E[@, il1=\E[L, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[d, + kf1=\E[K, kf2=\E[L, kf3=\E[M, kf4=\E[N, khome=\E[Y, knp=\E[e, + kpp=\E[Z, use=klone+acs, use=klone+sgr8, + +#### QNX +# + +# QNX 4.0 Console +# Michael's original version of this entry had <am@>, <smcup=\Ei>, +# <rmcup=\Eh\ER>; this was so terminfo applications could write the lower +# right corner without triggering a scroll. The ncurses terminfo library can +# handle this case with the <ich1> capability, and prefers <am> for better +# optimization. Bug: The <op> capability resets attributes. +# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996 +# (removed: <sgr=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,>) +qnx|qnx4|qnx console, + daisy, km, mir, msgr, xhpa, xt, + colors#8, cols#80, it#4, lines#25, ncv#3, pairs#8, + acsc=O\333a\261j\331k\277l\332m\300n\305o\337q\304s\334t\303u\264v\301w\302x\263, + bel=^G, blink=\E{, bold=\E<, civis=\Ey0, clear=\EH\EJ, + cnorm=\Ey1, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ey2, + dch1=\Ef, dl1=\EF, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\Ee, + il1=\EE, ind=^J, kBEG=\377\356, kCAN=\377\263, + kCMD=\377\267, kCPY=\377\363, kCRT=\377\364, + kDL=\377\366, kEND=\377\301, kEOL=\377\311, + kEXT=\377\367, kFND=\377\370, kHLP=\377\371, + kHOM=\377\260, kIC=\377\340, kLFT=\377\264, + kMOV=\377\306, kMSG=\377\304, kNXT=\377\272, + kOPT=\377\372, kPRT=\377\275, kPRV=\377\262, + kRDO=\377\315, kRES=\377\374, kRIT=\377\266, + kRPL=\377\373, kSAV=\377\307, kSPD=\377\303, + kUND=\377\337, kbeg=\377\300, kcan=\377\243, kcbt=\377\0, + kclo=\377\343, kclr=\377\341, kcmd=\377\245, + kcpy=\377\265, kcrt=\377\305, kctab=\377\237, + kcub1=\377\244, kcud1=\377\251, kcuf1=\377\246, + kcuu1=\377\241, kdch1=\377\254, kdl1=\377\274, + ked=\377\314, kel=\377\310, kend=\377\250, kent=\377\320, + kext=\377\270, kf1=\377\201, kf10=\377\212, + kf11=\377\256, kf12=\377\257, kf13=\377\213, + kf14=\377\214, kf15=\377\215, kf16=\377\216, + kf17=\377\217, kf18=\377\220, kf19=\377\221, + kf2=\377\202, kf20=\377\222, kf21=\377\223, + kf22=\377\224, kf23=\377\333, kf24=\377\334, + kf25=\377\225, kf26=\377\226, kf27=\377\227, + kf28=\377\230, kf29=\377\231, kf3=\377\203, + kf30=\377\232, kf31=\377\233, kf32=\377\234, + kf33=\377\235, kf34=\377\236, kf35=\377\276, + kf36=\377\277, kf37=\377\321, kf38=\377\322, + kf39=\377\323, kf4=\377\204, kf40=\377\324, + kf41=\377\325, kf42=\377\326, kf43=\377\327, + kf44=\377\330, kf45=\377\331, kf46=\377\332, + kf47=\377\316, kf48=\377\317, kf5=\377\205, kf6=\377\206, + kf7=\377\207, kf8=\377\210, kf9=\377\211, kfnd=\377\346, + khlp=\377\350, khome=\377\240, khts=\377\342, + kich1=\377\253, kil1=\377\273, kind=\377\261, + kmov=\377\351, kmrk=\377\355, kmsg=\377\345, + knp=\377\252, knxt=\377\312, kopn=\377\357, + kopt=\377\353, kpp=\377\242, kprt=\377\255, + kprv=\377\302, krdo=\377\336, kref=\377\354, + kres=\377\360, krfr=\377\347, kri=\377\271, + krmir=\377\313, krpl=\377\362, krst=\377\352, + ksav=\377\361, kslt=\377\247, kspd=\377\335, + ktbc=\377\344, kund=\377\365, mvpa=\E!%p1%02d, op=\ER, + rep=\Eg%p2%{32}%+%c%p1%c, rev=\E(, ri=\EI, rmcup=\Eh\ER, + rmso=\E), rmul=\E], rs1=\ER, setb=\E@%p1%Pb%gb%gf%d%d, + setf=\E@%p1%Pf%gb%gf%d%d, sgr0=\E}\E]\E>\E), smcup=\Ei, + smso=\E(, smul=\E[, +# +# +qnxt|qnxt4|QNX4 terminal, + crxm, use=qnx4, +# +qnxm|QNX4 with mouse events, + maddr#1, + chr=\E/, cvr=\E", is1=\E/0t, mcub=\E/>1h, mcub1=\E/>7h, + mcud=\E/>1h, mcud1=\E/>1l\E/>9h, mcuf=\E/>1h\E/>9l, + mcuf1=\E/>7l, mcuu=\E/>6h, mcuu1=\E/>6l, rmicm=\E/>2l, + smicm=\E/>2h, use=qnx4, +# +qnxw|QNX4 windows, + xvpa, use=qnxm, +# +# Monochrome QNX4 terminal or console. Setting this terminal type will +# allow an application running on a color console to behave as if it +# were a monochrome terminal. Output will be through stdout instead of +# console writes because the term routines will recognize that the +# terminal name starts with 'qnxt'. +# +qnxtmono|Monochrome QNX4 terminal or console, + colors@, pairs@, + scp@, use=qnx4, + +# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998 +# (esr: commented out <scp> and <rmcup> to avoid warnings.) +# (TD: derive from original qnx4 entry) +qnxt2|qnx 2.15 serial terminal, + am, + civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@, + rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4, + +# QNX ANSI terminal definition +qansi-g|QNX ANSI, + am, eslok, hs, xon, + colors#8, cols#80, it#8, lines#25, ncv#19, pairs#64, wsl#80, + acsc=Oa``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[2J\E[H, cnorm=\E[?25h\E[?12l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[1M, dsl=\E[r, ech=\E[%p1%dX, ed=\E[J, + el=\E[K, el1=\E[1K\E[X, flash=\E[?5h$<200>\E[?5l, + fsl=\E[?6h\E8, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, + ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, + ind=\E[S, indn=\E[%p1%dS, invis=\E[9m, + is2=\E>\E[?1l\E[?7h\E[0;10;39;49m, is3=\E(B\E)0, + kBEG=\ENn, kCAN=\E[s, kCMD=\E[t, kCPY=\ENs, kCRT=\ENt, + kDL=\ENv, kEXT=\ENw, kFND=\ENx, kHLP=\ENy, kHOM=\E[h, + kLFT=\E[d, kNXT=\E[u, kOPT=\ENz, kPRV=\E[v, kRIT=\E[c, + kbs=^H, kcan=\E[S, kcbt=\E[Z, kclo=\ENc, kclr=\ENa, + kcmd=\E[G, kcpy=\E[g, kctab=\E[z, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[p, kend=\E[Y, + kext=\E[y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, + kf13=\EOp, kf14=\EOq, kf15=\EOr, kf16=\EOs, kf17=\EOt, + kf18=\EOu, kf19=\EOv, kf2=\EOQ, kf20=\EOw, kf21=\EOx, + kf22=\EOy, kf23=\EOz, kf24=\EOa, kf25=\E[1~, kf26=\E[2~, + kf27=\E[3~, kf28=\E[4~, kf29=\E[5~, kf3=\EOR, kf30=\E[6~, + kf31=\E[7~, kf32=\E[8~, kf33=\E[9~, kf34=\E[10~, + kf35=\E[11~, kf36=\E[12~, kf37=\E[17~, kf38=\E[18~, + kf39=\E[19~, kf4=\EOS, kf40=\E[20~, kf41=\E[21~, + kf42=\E[22~, kf43=\E[23~, kf44=\E[24~, kf45=\E[25~, + kf46=\E[26~, kf47=\E[27~, kf48=\E[28~, kf5=\EOT, kf6=\EOU, + kf7=\EOV, kf8=\EOW, kf9=\EOX, kfnd=\ENf, khlp=\ENh, + khome=\E[H, khts=\ENb, kich1=\E[@, kil1=\E[`, kind=\E[a, + kmov=\ENi, kmrk=\ENm, kmsg=\ENe, knp=\E[U, kopn=\ENo, + kopt=\ENk, kpp=\E[V, kref=\ENl, kres=\ENp, krfr=\ENg, + kri=\E[b, krpl=\ENr, krst=\ENj, ksav=\ENq, kslt=\E[T, + ktbc=\ENd, kund=\ENu, ll=\E[99H, nel=\EE, op=\E[39;49m, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T, + rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmso=\E[27m, + rmul=\E[24m, rs1=\017\E[?7h\E[0;39;49m$<2>\E>\E[?1l, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;9%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, + tsl=\E7\E1;24r\E[?6l\E[25;%i%p1%dH, +# +qansi|QNX ansi with console writes, + daisy, xhpa, use=qansi-g, +# +qansi-t|QNX ansi without console writes, + crxm, use=qansi, +# +qansi-m|QNX ansi with mouse, + maddr#1, + chr=\E[, cvr=\E], is1=\E[0t, mcub=\E[>1h, mcub1=\E[>7h, + mcud=\E[>1h, mcud1=\E[>1l\E[>9h, mcuf=\E[>1h\E[>9l, + mcuf1=\E[>7l, mcuu=\E[>6h, mcuu1=\E[>6l, rmicm=\E[>2l, + smicm=\E[>2h, use=qansi, +# +qansi-w|QNX ansi for windows, + xvpa, use=qansi-m, + +#### NetBSD consoles +# +# pcvt termcap database entries (corresponding to release 3.31) +# Author's last edit-date: [Fri Sep 15 20:29:10 1995] +# +# (For the terminfo master file, I translated these into terminfo syntax. +# Then I dropped all the pseudo-HP entries. we don't want and can't use +# the :Xs: flag. Then I split :is: into a size-independent <is1> and a +# size-dependent <is2>. Finally, I added <rmam>/<smam> -- esr) + +# NOTE: <ich1> has been taken out of this entry. for reference, it should +# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below. +# (esr: added <civis> and <cnorm> to resolve NetBSD Problem Report #4583) +pcvtXX|pcvt vt200 emulator (DEC VT220), + am, km, mir, msgr, xenl, + it#8, vt#3, + acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, + 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, cub=\E[%p1%dD, cub1=^H, + 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, + is1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=\177, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, + kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, + khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, + nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, + ri=\EM, rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, + rs1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + +# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) +# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and +# 50 lines entries; 80 columns +pcvt25|dec vt220 emulation with 25 lines, + cols#80, lines#25, + is2=\E[1;25r\E[25;1H, use=pcvtXX, +pcvt28|dec vt220 emulation with 28 lines, + cols#80, lines#28, + is2=\E[1;28r\E[28;1H, use=pcvtXX, +pcvt35|dec vt220 emulation with 35 lines, + cols#80, lines#35, + is2=\E[1;35r\E[35;1H, use=pcvtXX, +pcvt40|dec vt220 emulation with 40 lines, + cols#80, lines#40, + is2=\E[1;40r\E[40;1H, use=pcvtXX, +pcvt43|dec vt220 emulation with 43 lines, + cols#80, lines#43, + is2=\E[1;43r\E[43;1H, use=pcvtXX, +pcvt50|dec vt220 emulation with 50 lines, + cols#80, lines#50, + is2=\E[1;50r\E[50;1H, use=pcvtXX, + +# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) +# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and +# 50 lines entries; 132 columns +pcvt25w|dec vt220 emulation with 25 lines and 132 cols, + cols#132, lines#25, + is2=\E[1;25r\E[25;1H, use=pcvtXX, +pcvt28w|dec vt220 emulation with 28 lines and 132 cols, + cols#132, lines#28, + is2=\E[1;28r\E[28;1H, use=pcvtXX, +pcvt35w|dec vt220 emulation with 35 lines and 132 cols, + cols#132, lines#35, + is2=\E[1;35r\E[35;1H, use=pcvtXX, +pcvt40w|dec vt220 emulation with 40 lines and 132 cols, + cols#132, lines#40, + is2=\E[1;40r\E[40;1H, use=pcvtXX, +pcvt43w|dec vt220 emulation with 43 lines and 132 cols, + cols#132, lines#43, + is2=\E[1;43r\E[43;1H, use=pcvtXX, +pcvt50w|dec vt220 emulation with 50 lines and 132 cols, + cols#132, lines#50, + is2=\E[1;50r\E[50;1H, use=pcvtXX, + +# OpenBSD implements a color variation +pcvt25-color|dec vt220 emulation with 25 lines and color, + cols#80, lines#25, + is2=\E[1;25r\E[25;1H, kf1=\EOP, kf10=\E[29~, 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=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[17~, + kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, use=pcvtXX, + use=ecma+color, + +# Terminfo entries to enable the use of the ncurses library in colour on a +# NetBSD-arm32 console (only tested on a RiscPC). +# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98 +# modified codes for setf/setb to setaf/setab, then to klone+color, corrected +# typo in invis - TD +arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480), + am, bce, msgr, xenl, xon, + cols#80, it#8, lines#30, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, + enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, + invis=\E[8m$<2>, ka1=\E[q, ka3=\E[s, kb2=\E[r, kbs=^H, + kc1=\E[p, kc3=\E[n, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kent=\E[M, kf0=\E[y, kf1=\E[P, kf10=\E[x, + kf2=\E[Q, kf3=\E[R, kf4=\E[S, kf5=\E[t, kf6=\E[u, kf7=\E[v, + kf8=\E[l, kf9=\E[w, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, + rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, + rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>, + sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, use=ecma+sgr, + use=klone+color, + +arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768), + cols#132, lines#50, use=arm100, + +# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine +# manufactured by Sharp for the Japenese market. +# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996 +x68k|x68k-ite|NetBSD/x68k ITE, + cols#96, lines#32, + kclr=\E[9~, khlp=\E[28~, use=vt220, + +# <tv@pobox.com>: +# Entry for the DNARD OpenFirmware console, close to ANSI but not quite. +# +# (still unfinished, but good enough so far.) +ofcons|DNARD OpenFirmware console, + bw, + cols#80, lines#30, + bel=^G, blink=\2337;2m, bold=\2331m, clear=^L, cr=^M, + cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B, + cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, + cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P, + dim=\2332m, dl=\233%p1%dM, dl1=\233M, ed=\233J, el=\233K, + flash=^G, ht=^I, ich=\233%p1%d@, ich1=\233@, il=\233%p1%dL, + il1=\233L, ind=^J, invis=\2338m, kbs=^H, kcub1=\233D, + kcud1=\233B, kcuf1=\233C, kcuu1=\233A, kdch1=\233P, + kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W, + kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r, + kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m, + rmso=\2330m, rmul=\2330m, + sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, + sgr0=\2330m, + +# NetBSD "wscons" emulator in vt220 mode. +# This entry is based on the NetBSD termcap entry, correcting the ncv value. +# The emulator renders underlined text in red. Colors are otherwise usable. +# +# Testing the emulator and reading the source code (NetBSD 2.0), it appears +# that "vt220" is inaccurate. There are a few vt220-features, but most of the +# vt220 screens in vttest do not work with this emulator. For instance, it +# identifies itself (primary DA response) as a vt220 with selective erase. But +# the selective erase feature does not work. The secondary response is copied +# from Kermit's emulation of vt220, does not correspond to actual vt220. At +# the level of detail in a termcap, it is a passable emulator, since ECH does +# work. Don't use it on a VMS system -TD +wsvt25|NetBSD wscons in 25 line DEC VT220 mode, + bce, msgr, + colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64, + is2=\E[r\E[25;1H, kend=\E[8~, kf1=\E[11~, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~, + kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, + kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220, + +wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta, + km, use=wsvt25, + +# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and +# DECstation/pmax. +rcons|BSD rasterconsole, + use=sun-il, +# Color version of above. Color currently only provided by NetBSD. +rcons-color|BSD rasterconsole with ANSI color, + bce, + colors#8, pairs#64, + op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=rcons, + +# mgterm -- MGL/MGL2, MobileGear Graphic Library +# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k} +# -- the setf/setb are probably incorrect, more likely setaf/setab -TD +# -- compare with cons25w +mgterm, + OTbs, OTpt, am, bce, bw, eo, km, msgr, npc, + colors#8, cols#80, it#8, lines#18, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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=^I, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, 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, op=\E[x, rc=\E8, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, + rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, setb=\E[4%p1%dm, + setf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, + +#### FreeBSD console entries +# +# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996 +# Andrey Chernov maintains the FreeBSD termcap distributions. +# +# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade +# or comment out the :cb: capability in the console entry. +# +# Alexander Lukyanov reports: +# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there. +# Now el1 clears not only to the line beginning, but also a large chunk +# of previous line. But there is another bug - ech does not work at all. +# + +# for syscons +# common entry without semigraphics +# Bug: The <op> capability resets attributes. +# Bug? The ech and el1 attributes appear to move the cursor in some cases; for +# instance el1 does if the cursor is moved to the right margin first. Removed +# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K) +# +# Setting colors turns off reverse; we cannot guarantee order, so use ncv. +# Note that this disables standout with color. +# +# The emulator sends difference strings based on shift- and control-keys, +# like scoansi: +# F13-F24 are shifted F1-F12 +# F25-F36 are control F1-F12 +# F37-F48 are shift+control F1-F12 +cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode), + am, bce, bw, eo, msgr, npc, + colors#8, cols#80, it#8, lines#25, ncv#21, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, cub1=^H, 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, + cvvis=\E[=1C, 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, + home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F, + kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf13=\E[Y, + kf14=\E[Z, 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, nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p1%t;2;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, + sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, +cons25|ansis|ansi80x25|freebsd console (25-line ansi mode), + acsc=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371, + use=cons25w, +cons25-debian|freebsd console with debian backspace (25-line ansi mode), + kbs=\177, kdch1=\E[3~, use=cons25, +cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode), + colors@, pairs@, + bold@, dim@, op@, rmul=\E[m, setab@, setaf@, + sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, + smul=\E[4m, use=cons25, +cons30|ansi80x30|freebsd console (30-line ansi mode), + lines#30, use=cons25, +cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode), + lines#30, use=cons25-m, +cons43|ansi80x43|freebsd console (43-line ansi mode), + lines#43, use=cons25, +cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode), + lines#43, use=cons25-m, +cons50|ansil|ansi80x50|freebsd console (50-line ansi mode), + lines#50, use=cons25, +cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode), + lines#50, use=cons25-m, +cons60|ansi80x60|freebsd console (60-line ansi mode), + lines#60, use=cons25, +cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode), + lines#60, use=cons25-m, +cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic, + acsc=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225, + use=cons25w, +cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono), + colors@, pairs@, + op@, rmul=\E[m, setab@, setaf@, + sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, + smul=\E[4m, use=cons25r, +cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines), + lines#50, use=cons25r, +cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono), + lines#50, use=cons25r-m, +cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines), + lines#60, use=cons25r, +cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono), + lines#60, use=cons25r-m, +# ISO 8859-1 FreeBSD console +cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars, + acsc=+\253\,\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237, + use=cons25w, +cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono), + colors@, pairs@, + bold@, dim@, op@, rmul=\E[m, setab@, setaf@, + sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, + smul=\E[4m, use=cons25l1, +cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines), + lines#50, use=cons25l1, +cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono), + lines#50, use=cons25l1-m, +cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines), + lines#60, use=cons25l1, +cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono), + lines#60, use=cons25l1-m, + +#### 386BSD and BSD/OS Consoles +# + +# This was the original 386BSD console entry (I think). +# Some places it's named oldpc3|oldibmpc3. +# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu> +origpc3|origibmpc3|IBM PC 386BSD Console, + OTbs, am, bw, eo, xon, + cols#80, lines#25, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + bold=\E[7m, clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, + home=\E[H, ind=\E[S, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, khome=\E[Y, ri=\E[T, rmso=\E[1;0x\E[2;7x, + rmul=\E[1;0x\E[2;7x, sgr0=\E[m\E[1;0x\E[2;7x, + smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x, + +# description of BSD/386 console emulator in version 1.0 (supplied by BSDI) +oldpc3|oldibmpc3|old IBM PC BSD/386 Console, + OTbs, km, + lines#25, + bel=^G, bold=\E[=15F, cr=^M, cud1=^J, dim=\E[=8F, dl1=\E[M, + ht=^I, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, kll=\E[F, + knp=\E[G, kpp=\E[I, nel=^M^J, sgr0=\E[=R, + +# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1 +# Note, the emulator supports many of the additional console features +# listed in the iBCS2 (e.g. character-set selection) though not all +# are described here. This entry really ought to be upgraded. +# Also note, the console will also work with fewer lines after doing +# "stty rows NN", e.g. to use 24 lines. +# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996) +# Bug: The <op> capability resets attributes. +bsdos-pc|IBM PC BSD/OS Console, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;1%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + use=bsdos-pc-nobold, + +bsdos-pc-nobold|BSD/OS PC console w/o bold, + use=klone+color, use=bsdos-pc-m, + +bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono, + OTbs, am, eo, km, xon, + cols#80, it#8, lines#25, + bel=^G, clear=\Ec, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, + kll=\E[F, knp=\E[G, kpp=\E[I, nel=^M^J, rc=\E8, sc=\E7, + sgr=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;, + use=klone+sgr8, + +# Old names for BSD/OS PC console used in releases before 4.1. +pc3|BSD/OS on the PC Console, + use=bsdos-pc-nobold, +ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline, + use=bsdos-pc, + +# BSD/OS on the SPARC +bsdos-sparc|Sun SPARC BSD/OS Console, + use=sun, + +# BSD/OS on the PowerPC +bsdos-ppc|PowerPC BSD/OS Console, + use=bsdos-pc, + +#### DEC VT52 +# (<acsc>/<rmacs>/<smacs> capabilities aren't in DEC's official entry -- esr) +# +# Actually (TD pointed this out at the time the acsc string was added): +# vt52 shouldn't define full acsc since most of the cells don't match. +# see vt100 manual page A-31. This is the list that does match: +# f degree +# g plus/minus +# h right-arrow +# k down-arrow +# m scan-1 +# o scan-3 +# q scan-5 +# s scan-7 +# The line-drawing happens to work in several terminal emulators, but should +# not be used as a guide to the capabilities of the vt52. Note in particular +# that vt52 does not support line-drawing characters (the scan-X values refer +# to a crude plotting feature) -TD +vt52|dec vt52, + OTbs, + cols#80, it#8, lines#24, + acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=^M, + cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, + +#### DEC VT100 and compatibles +# +# DEC terminals from the vt100 forward are collected here. Older DEC terminals +# and micro consoles can be found in the `obsolete' section. More details on +# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be +# found near the end of this file. +# +# Except where noted, these entries are DEC's official terminfos. +# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support +# Engineering for more information. Updated terminfos and termcaps +# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. +# +# In October 1995 DEC sold its terminals business, including the VT and Dorio +# line and trademark, to SunRiver Data Systems. SunRiver has since changed +# its name to Boundless Technologies; see http://www.boundless.com. +# + +# NOTE: Any VT100 emulation, whether in hardware or software, almost +# certainly includes what DEC called the `Level 1 editing extension' codes; +# only the very oldest VT100s lacked these and there probably aren't any of +# those left alive. To capture these, use one of the VT102 entries. +# +# Note that the <xenl> glitch in vt100 is not quite the same as on the Concept, +# since the cursor is left in a different position while in the +# weird state (concept at beginning of next line, vt100 at end +# of this line) so all versions of vi before 3.7 don't handle +# <xenl> right on vt100. The correct way to handle <xenl> is when +# you output the char in column 80, immediately output CR LF +# and then assume you are in column 1 of the next line. If <xenl> +# is on, am should be on too. +# +# I assume you have smooth scroll off or are at a slow enough baud +# rate that it doesn't matter (1200? or less). Also this assumes +# that you set auto-nl to "on", if you set it off use vt100-nam +# below. +# +# The padding requirements listed here are guesses. It is strongly +# recommended that xon/xoff be enabled, as this is assumed here. +# +# The vt100 uses <rs2> and <rf> rather than <is2>/<tbc>/<hts> because the +# tab settings are in non-volatile memory and don't need to be +# reset upon login. Also setting the number of columns glitches +# the screen annoyingly. You can type "reset" to get them set. +# +# The VT100 series terminals have cursor ("arrows") keys which can operate +# in two different modes: Cursor Mode and Application Mode. Cursor Mode +# is the reset state, and is assumed to be the normal state. Application +# Mode is the "set" state. In Cursor Mode, the cursor keys transmit +# "Esc [ {code}" sequences, conforming to ANSI standards. In Application +# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode +# was provided primarily as an aid to the porting of VT52 applications. It is +# assumed that the cursor keys are normally in Cursor Mode, and expected that +# applications such as vi will always transmit the <smkx> string. Therefore, +# the definitions for the cursor keys are made to match what the terminal +# transmits after the <smkx> string is transmitted. If the <smkx> string +# is a null string or is not defined, then cursor keys are assumed to be in +# "Cursor Mode", and the cursor keys definitions should match that assumption, +# else the application may fail. It is also expected that applications will +# always transmit the <rmkx> string to the terminal before they exit. +# +# The VT100 series terminals have an auxiliary keypad, commonly referred to as +# the "Numeric Keypad", because it is a cluster of numeric and function keys. +# The Numeric Keypad which can operate in two different modes: Numeric Mode and +# Application Mode. Numeric Mode is the reset state, and is assumed to be +# the normal state. Application Mode is the "set" state. In Numeric Mode, +# the numeric and punctuation keys transmit ASCII 7-bit characters, and the +# Enter key transmits the same as the Return key (Note: the Return key +# can be configured to send either LF (\015) or CR LF). In Application Mode, +# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys +# always send the same "Esc O {code}" sequences. It is assumed that the keypad +# is normally in Numeric Mode. If an application requires that the keypad be +# in Application Mode then it is expected that the user, or the application, +# will set the TERM environment variable to point to a terminfo entry which has +# defined the <smkx> string to include the codes that switch the keypad into +# Application Mode, and the terminfo entry will also define function key +# fields to match the Application Mode control codes. If the <smkx> string +# is a null string or is not defined, then the keypad is assumed to be in +# Numeric Mode. If the <smkx> string switches the keypad into Application +# Mode, it is expected that the <rmkx> string will contain the control codes +# necessary to reset the keypad to "Normal" mode, and it is also expected that +# applications which transmit the <smkx> string will also always transmit the +# <rmkx> string to the terminal before they exit. +# +# Here's a diagram of the VT100 keypad keys with their bindings. +# The top line is the name of the key (some DEC keyboards have the keys +# labelled somewhat differently, like GOLD instead of PF1, but this is +# the most "official" name). The second line is the escape sequence it +# generates in Application Keypad mode (where "$" means the ESC +# character). The third line contains two items, first the mapping of +# the key in terminfo, and then in termcap. +# _______________________________________ +# | PF1 | PF2 | PF3 | PF4 | +# | $OP | $OQ | $OR | $OS | +# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| +# | 7 8 9 - | +# | $Ow | $Ox | $Oy | $Om | +# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________| +# | 4 | 5 | 6 | , | +# | $Ot | $Ou | $Ov | $Ol | +# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_| +# | 1 | 2 | 3 | | +# | $Oq | $Or | $Os | enter | +# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM | +# | 0 | . | | +# | $Op | $On | | +# |___kc1_______K4____|_kc3__K5_|_kent_@8_| +# +# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the +# terminfo guidelines. That is a compromise used to assign the remaining +# keys on the keypad to kf5-kf0, used on older systems with legacy termcap +# support: +vt100+keypad|dec vt100 numeric keypad no fkeys, + ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn, +vt100+pfkeys|dec vt100 numeric keypad, + kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + use=vt100+keypad, +vt100+fnkeys|dec vt100 numeric keypad, + kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, + kf9=\EOw, use=vt100+pfkeys, +# +# A better adaptation to modern keyboards such as the PC's, which have a dozen +# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to +# use the 5-key arrangement to model the arrow keys as suggested in the +# terminfo guidelines: +# _______________________________________ +# | PF1 | PF2 | PF3 | PF4 | +# | $OP | $OQ | $OR | $OS | +# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| +# | 7 8 9 - | +# | $Ow | $Ox | $Oy | $Om | +# |_ka1__K1_|_________|_ka3__K3_|_________| +# | 4 | 5 | 6 | , | +# | $Ot | $Ou | $Ov | $Ol | +# |_________|_kb2__K2_|_________|_________| +# | 1 | 2 | 3 | | +# | $Oq | $Or | $Os | enter | +# |_kc1__K4_|_________|_kc3__K5_| $OM | +# | 0 | . | | +# | $Op | $On | | +# |___________________|_________|_kent_@8_| +# +vt220+keypad|dec vt220 numeric keypad, + ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ka2=\EOx, kb1=\EOt, + kb3=\EOv, kc2=\EOr, +# +vt100+enq|ncurses extension for vt100-style ENQ, + u8=\E[?1;2c, use=ansi+enq, +vt102+enq|ncurses extension for vt102-style ENQ, + u8=\E[?6c, use=ansi+enq, +# +# And here, for those of you with orphaned VT100s lacking documentation, is +# a description of the soft switches invoked when you do `Set Up'. +# +# Scroll 0-Jump Shifted 3 0-# +# | 1-Smooth | 1-British pound sign +# | Autorepeat 0-Off | Wrap Around 0-Off +# | | 1-On | | 1-On +# | | Screen 0-Dark Bkg | | New Line 0-Off +# | | | 1-Light Bkg | | | 1-On +# | | | Cursor 0-Underline | | | Interlace 0-Off +# | | | | 1-Block | | | | 1-On +# | | | | | | | | +# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings +# | | | | | | | | +# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz +# | | | 1-On | | | 1-50 Hz +# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits +# | | 1-ANSI | | 1-8 Bits +# | Keyclick 0-Off | Parity 0-Off +# | 1-On | 1-On +# Margin Bell 0-Off Parity Sense 0-Odd +# 1-On 1-Even +# +# The following SET-UP modes are assumed for normal operation: +# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS +# WRAP_AROUND_ON JUMP_SCROLL_OFF +# Other SET-UP modes may be set for operator convenience or communication +# requirements; I recommend +# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_# +# Unless you have a graphics add-on such as Digital Engineering's VT640 +# (and even then, whenever it can be arranged!) you should set +# INTERLACE_OFF +# +# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr) +vt100|vt100-am|dec vt100 (w/advanced video), + OTbs, am, mc5i, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, + enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, lf1=pf1, + lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, + rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, + rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, + sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, + use=vt100+fnkeys, +vt100nam|vt100-nam|vt100 no automargins, + am@, xenl@, use=vt100-am, +vt100-vb|dec vt100 (w/advanced video) & no beep, + bel@, flash=\E[?5h\E[?5l, use=vt100, + +# Ordinary vt100 in 132 column ("wide") mode. +vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video), + cols#132, lines#24, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am, +vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin), + cols#132, lines#14, vt@, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam, + +# vt100 with no advanced video. +vt100-nav|vt100 without advanced video option, + xmc#1, + blink@, bold@, rev@, rmso=\E[m, rmul@, sgr@, sgr0@, smso=\E[7m, + smul@, use=vt100, +vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option), + cols#132, lines#14, use=vt100-nav, + +# vt100 with one of the 24 lines used as a status line. +# We put the status line on the top. +vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline, + eslok, hs, + lines#23, + clear=\E[2;1H\E[J$<50>, csr=\E[%i%i%p1%d;%p2%dr, + cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, dsl=\E7\E[1;24r\E8, + fsl=\E8, home=\E[2;1H, is2=\E7\E[2;24r\E8, + tsl=\E7\E[1;%p1%dH\E[1K, use=vt100-am, + +# Status line at bottom. +# Clearing the screen will clobber status line. +vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline, + eslok, hs, + lines#23, + dsl=\E7\E[1;24r\E8, fsl=\E8, is2=\E[1;23r\E[23;1H, + tsl=\E7\E[24;%p1%dH\E[1K, use=vt100-am, + +# Most of the `vt100' emulators out there actually emulate a vt102 +# This entry (or vt102-nsgr) is probably the right thing to use for +# these. +vt102|dec vt102, + dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h, + use=vt100, +vt102-w|dec vt102 in wide mode, + cols#132, + rs3=\E[?3h, use=vt102, + +# Many brain-dead PC comm programs that pretend to be `vt100-compatible' +# fail to interpret the ^O and ^N escapes properly. Symptom: the <sgr0> +# string in the canonical vt100 entry above leaves the screen littered +# with little snowflake or star characters (IBM PC ROM character \017 = ^O) +# after highlight turnoffs. This entry should fix that, and even leave +# ACS support working, at the cost of making multiple-highlight changes +# slightly more expensive. +# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995 +vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes), + sgr@, sgr0=\E[m, use=vt102, + +# VT125 Graphics CRT. Clear screen also erases graphics +# Some vt125's came configured with vt102 support. +vt125|vt125 graphics terminal, + mir, + clear=\E[H\E[2J\EPpS(E)\E\\$<50>, use=vt100, + +# This isn't a DEC entry, it came from University of Wisconsin. +# (vt131: I added <rmam>/<smam> based on the init string, also <OTbs> -- esr) +vt131|dec vt131, + OTbs, am, xenl, + cols#80, it#8, lines#24, vt#3, + bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, + clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=^J, cuf1=\E[C$<2/>, + cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, + ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, + is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, ri=\EM$<5/>, + rmam=\E[?7h, rmkx=\E[?1l\E>, rmso=\E[m$<2/>, + rmul=\E[m$<2/>, + rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m$<2/>, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[7m$<2/>, smul=\E[4m$<2/>, + +# vt132 - like vt100 but slower and has ins/del line and such. +# I'm told that <smir>/<rmir> are backwards in the terminal from the +# manual and from the ANSI standard, this describes the actual +# terminal. I've never actually used a vt132 myself, so this +# is untested. +# +vt132|DEC vt132, + xenl, + dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, + ip=$<7>, rmir=\E[4h, smir=\E[4l, use=vt100, + +# This vt220 description maps F5--F9 to the second block of function keys +# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict +# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping. +# PF1--PF4 are used as F1--F4. +# +vt220-old|vt200-old|DEC VT220 in vt100 emulation mode, + OTbs, OTpt, am, mir, xenl, xon, + cols#80, lines#24, vt#3, + OTnl=^J, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l, + clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, + dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, + if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED$<20/>, + is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, + kf10=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, + kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, + khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rc=\E8, + rev=\E[7m$<2>, rf=/usr/share/tabset/vt100, + ri=\EM$<14/>, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, + rmso=\E[27m, rmul=\E[24m, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, + +# A much better description of the VT200/220; used to be vt220-8 +# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1 +# designation to accommodate bug in pcvt -TD +vt220|vt200|dec vt220, + OTbs, am, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, + flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH, + ich=\E[%p1%d@, if=/usr/share/tabset/vt100, + il=\E[%p1%dL, il1=\E[L, ind=\ED, + is2=\E[?7h\E[>\E[?1h\E F\E[?4l, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, + kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, + kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, + kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, + lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[i, mc4=\E[4i, + mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m, + rmul=\E[24m, rs1=\E[?3l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m\E(B, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, tbc=\E[3g, +vt220-w|vt200-w|DEC vt220 in wide mode, + cols#132, + rs3=\E[?3h, use=vt220, +vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode, + OTbs, am, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=^M, + csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=^H, + cud=\233%p1%dB, cud1=^J, cuf=\233%p1%dC, cuf1=\233C, + cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\233A, + dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, + ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, enacs=\E)0, + flash=\233?5h$<200/>\233?5l, home=\233H, ht=^I, hts=\EH, + ich=\233%p1%d@, if=/usr/share/tabset/vt100, + il=\233%p1%dL, il1=\233L, ind=\ED, + is2=\233?7h\233>\233?1h\E F\233?4l, kbs=^H, + kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A, + kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~, + kf13=\23325~, kf14=\23326~, kf17=\23331~, kf18=\23332~, + kf19=\23333~, kf2=\EOQ, kf20=\23334~, kf3=\EOR, kf4=\EOS, + kf6=\23317~, kf7=\23318~, kf8=\23319~, kf9=\23320~, + kfnd=\2331~, khlp=\23328~, khome=\233H, kich1=\2332~, + knp=\2336~, kpp=\2335~, krdo=\23329~, kslt=\2334~, lf1=pf1, + lf2=pf2, lf3=pf3, lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i, + nel=\EE, rc=\E8, rev=\2337m, ri=\EM, rmacs=\E(B, + rmam=\233?7l, rmir=\2334l, rmso=\23327m, rmul=\23324m, + rs1=\233?3l, sc=\E7, + sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, smir=\2334h, + smso=\2337m, smul=\2334m, tbc=\2333g, + +# vt220d: +# This vt220 description regards F6--F10 as the second block of function keys +# at the top of the keyboard. This mapping follows the description given +# in the VT220 Programmer Reference Manual and agrees with the labeling +# on some terminals that emulate the vt220. There is no support for an F5. +# See vt220 for an alternate mapping. +# +vt220d|DEC VT220 in vt100 mode with DEC function key labeling, + 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~, kf20=\E[34~, kf5@, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, use=vt220-old, + +vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins, + am@, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, + +# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko +# (not an official DEC entry!) +# The problem with real vt220 terminals is they don't send escapes when in +# in vt220 mode. This can be gotten around two ways. 1> don't send +# escapes or 2> put the vt220 into vt100 mode and use all the nifty +# features of vt100 advanced video which it then has. +# +# This entry takes the view of putting a vt220 into vt100 mode so +# you can use the escape key in emacs and everything else which needs it. +# +# You probably don't want to use this on a VMS machine since VMS will think +# it has a vt220 and will get fouled up coming out of emacs +# +# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996 +# (Added vt100 <rc>,<sc> to quiet a tic warning -- esr) +vt200-js|vt220-js|dec vt200 series with jump scroll, + am, + cols#80, + bel=^G, clear=\E[H\E[J, 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, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, + ht=^I, il1=\E[L, ind=\ED, + is2=\E[61"p\E[H\E[?3l\E[?4l\E[?1l\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=^M\ED, rc=\E8, + rf=/usr/share/tabset/vt100, ri=\EM, rmdc=, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[27m$<5/>, rmul=\E[24m, + rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, smdc=, + smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m$<5/>, smul=\E[4m, + +# This was DEC's vt320. Use the purpose-built one below instead +#vt320|DEC VT320 in vt100 emulation mode, +# use=vt220, + +# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam. +# +vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode, + am@, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, + +# These entries are not DEC's official ones, they were purpose-built for the +# VT320. Here are the designer's notes: +# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to +# 'Erase to End of Field'... since nothing seems to use 'end' anyways... +# khome is Home on a PC kbd. Actually 'FIND' on a VT. +# Things that use <knxt> usually use tab anyways... and things that don't use +# tab usually use <knxt> instead... +# kprv is same as tab - Backtab is useless... +# I left out <sgr> because of its RIDICULOUS complexity, +# and the resulting fact that it causes the termcap translation of the entry +# to SMASH the 1k-barrier... +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +# (vt320: uncommented <fsl> --esr) +vt320|vt300|dec vt320 7 bit terminal, + am, eslok, hs, mir, msgr, xenl, + cols#80, lines#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, fsl=\E[0$}, + home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, + il1=\E[L, ind=\ED, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kel=\E[4~, 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~, + kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, + kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I, + kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i, + mc5=\E[?5i, nel=\EE, rc=\E8, rev=\E[7m, + rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, + rmul=\E[m, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[1$}\E[H\E[K, use=vt220+keypad, +vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy, + am@, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, + use=vt320, +# We have to init 132-col mode, not 80-col mode. +vt320-w|vt300-w|dec vt320 wide 7 bit terminal, + cols#132, wsl#132, + is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + use=vt320, +vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am, + am@, + is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, + use=vt320-w, + +# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals +# which are pretty much a superset of the VT320. They have the +# host writable status line, yet another different DRCS matrix size, +# and such, but they add the DEC Technical character set, Multiple text +# pages, selectable length pages, and the like. The difference between +# the vt330 and vt340 is that the latter has only 2 planes and a monochrome +# monitor, the former has 4 planes and a color monitor. These terminals +# support VT131 and ANSI block mode, but as with much of these things, +# termcap/terminfo doesn't deal with these features. +# +# Note that this entry is are set up in what was the standard way for GNU +# Emacs v18 terminal modes to deal with the cursor keys in that the arrow +# keys were switched into application mode at the same time the numeric pad +# is switched into application mode. This changes the definitions of the +# arrow keys. Emacs v19 is smarter and mines its keys directly out of +# your termcap or terminfo entry, +# +# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 +# (vt340: string capability "sb=\E[M" corrected to "sr"; +# also, added <rmam>/<smam> based on the init string -- esr) +vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + 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, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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, + dl=\E[%p1%dM, dl1=\E[M, dsl=\E[2$~\r\E[1$}\E[K\E[$}, + ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, + home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, + il1=\E[L, ind=\ED, + is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, + lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, + rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, + rmul=\E[24m, rs1=\E[?3l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[2$~\E[1$}\E[1;%dH, + +# DEC doesn't supply a vt400 description, so we add Daniel Glasser's +# (originally written with vt420 as its primary name, and usable for it). +# +# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple +# text pages and long text pages with selectable length of the vt340, along +# with left and right margins, rectangular area text copy, fill, and erase +# operations, selected region character attribute change operations, +# page memory and rectangle checksums, insert/delete column, reception +# macros, and other features too numerous to remember right now. TERMCAP +# can only take advantage of a few of these added features. +# +# Note that this entry is are set up in what was the standard way for GNU +# Emacs v18 terminal modes to deal with the cursor keys in that the arrow +# keys were switched into application mode at the same time the numeric pad +# is switched into application mode. This changes the definitions of the +# arrow keys. Emacs v19 is smarter and mines its keys directly out of +# your termcap entry, +# +# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 +# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:"; +# also, added <rmam>/<smam> based on the init string -- esr) +vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[J$<10/>, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J$<10/>, + el=\E[K$<4/>, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, + home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=\ED, + is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, + lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, + rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, + rmul=\E[24m, rs1=\E<\E[?3l\E[!p\E[?7h, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[2$~\E[1$}\E[1;%dH, + +# (vt420: I removed <kf0>, it collided with <kf10>. I also restored +# a missing <sc> -- esr) +vt420|DEC VT420, + am, mir, xenl, xon, + cols#80, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, + dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, + if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, + is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, + kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, rc=\E8, rev=\E[7m$<2>, + rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B$<4>, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, + rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, + smkx=\E=, smso=\E[7m, smul=\E[4m, + +# DEC VT220 and up support DECUDK (user-defined keys). DECUDK (i.e., pfx) +# takes two parameters, the key and the string. Translating the key is +# straightforward (keys 1-5 are not defined on real terminals, though some +# emulators define these): +# +# if (key < 16) then value = key; +# else if (key < 21) then value = key + 1; +# else if (key < 25) then value = key + 2; +# else if (key < 27) then value = key + 3; +# else if (key < 30) then value = key + 4; +# else value = key + 5; +# +# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT". +# There's no provision in terminfo for emitting a string in this format, so the +# application has to know it. +# +vt420pc|DEC VT420 w/PC keyboard, + kdch1=\177, kend=\E[4~, kf1=\E[11~, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf13=\E[11;2~, kf14=\E[12;2~, + kf15=\E[13;2~, kf16=\E[14;2~, kf17=\E[15;2~, + kf18=\E[17;2~, kf19=\E[18;2~, kf2=\E[12~, kf20=\E[19;2~, + kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~, + kf24=\E[24;2~, kf25=\E[23~, kf26=\E[24~, kf27=\E[25~, + kf28=\E[26~, kf29=\E[28~, kf3=\E[13~, kf30=\E[29~, + kf31=\E[31~, kf32=\E[32~, kf33=\E[33~, kf34=\E[34~, + kf35=\E[35~, kf36=\E[36~, kf37=\E[23;2~, kf38=\E[24;2~, + kf39=\E[25;2~, kf4=\E[14~, kf40=\E[26;2~, kf41=\E[28;2~, + kf42=\E[29;2~, kf43=\E[31;2~, kf44=\E[32;2~, + kf45=\E[33;2~, kf46=\E[34;2~, kf47=\E[35;2~, + kf48=\E[36;2~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, khome=\E[H, + pctrm=USR_TERM\:vt420pcdos\:, + pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, + use=vt420, + +vt420pcdos|DEC VT420 w/PC for DOS Merge, + lines#25, + dispc=%?%p1%{19}%=%t\E\023\021%e%p1%{32}%<%t\E%p1%c%e%p1%{127}%=%t\E\177%e%p1%c%;, + pctrm@, + rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr@, + sgr0=\E[m, smsc=\E[?1;2r\E[34h, use=vt420pc, + +vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys, + kdch1=\177, kf1=\E[11~, 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[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[H, lf1=\EOP, lf2=\EOQ, lf3=\EOR, lf4=\EOS, + use=vt420, + +vt510|DEC VT510, + use=vt420, +vt510pc|DEC VT510 w/PC keyboard, + use=vt420pc, +vt510pcdos|DEC VT510 w/PC for DOS Merge, + use=vt420pcdos, + +# VT520/VT525 +# +# The VT520 is a monochrome text terminal capable of managing up to +# four independent sessions in the terminal. It has multiple ANSI +# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console) +# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950, +# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only. +# +# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or +# [Alt]/[Print Screen] depending upon which keyboard and which +# terminal mode is being used. If Set-Up has been disabled or +# assigned to an unknown key, Set-Up may be entered by pressing +# [F3] as the first key after power up, regardless of keyboard type. +# (vt520: I added <rmam>/<smam> based on the init string, also <sc> -- esr) +vt520|DEC VT520, + am, mir, xenl, xon, + cols#80, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, + dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, + if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, + is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, + kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, + pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, + rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300, + ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, + rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, + +# (vt525: I added <rmam>/<smam> based on the init string; +# removed <rmso>=\E[m, <rmul>=\E[m, added <sc> -- esr) +vt525|DEC VT525, + am, mir, xenl, xon, + cols#80, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, + dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, + if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, + is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, + kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, + pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, + rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300, + ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, + rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, + sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, + +#### VT100 emulations +# + +# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows +# (the best Windows telnet as of September 1995) presents the name `dec-vt100' +# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us +# that this works best with a stock vt100 entry. +dec-vt100|EWAN telnet's vt100 emulation, + use=vt100, + +# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996 +dec-vt220|DOS tnvt200 terminal emulator, + am@, use=vt220, + +# Zstem340 is an (IMHO) excellent VT emulator for PC's. I recommend it to +# anyone who needs PC VT340 emulation. (or anything below that level, for +# that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's +# RDBM systems, it includes ReGIS and SiXel support! I'm impressed... +# I can send the address if requested. +# (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr) +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +z340|zstem vt340 terminal emulator 132col 42line, + lines#42, + is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, + use=vt320-w, +z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins), + am@, + is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, + use=z340, + +# CRT is shareware. It implements some xterm features, including mouse. +crt|crt-vt220|CRT 2.3 emulating VT220, + bce, msgr, + ncv@, + hts=\EH, use=vt100+enq, use=vt220, use=ecma+color, + +# PuTTY 0.55 (released 3 August 2004) +# http://www.chiark.greenend.org.uk/~sgtatham/putty/ +# +# Comparing with 0.51, vttest is much better (only a few problems with the +# cursor position reports and wrapping). +# +# PuTTY 0.51 (released 14 December 2000) +# +# This emulates vt100 + vt52 (plus a few vt220 features: ech, SRM, DECTCEM, as +# well as SCO and Atari, color palettes from Linux console). Reading the code, +# it is intended to be VT102 plus selected features. By default, it sets $TERM +# to xterm, which is incorrect, since several features are misimplemented: +# +# Alt+key always sends ESC+key, so 'km' capability is removed. +# +# Control responses, wrapping and tabs are buggy, failing a couple of +# screens in vttest. +# +# xterm mouse support is not implemented (unrelease version may). +# +# Several features such as backspace/delete are optional; this entry documents +# the default behavior -TD + +putty|PuTTY terminal emulator, + am, bce, bw, ccc, hs, mir, msgr, xenl, xon, XT, + colors#8, it#8, ncv#22, pairs#64, U8#1, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, + dch=\E[%p1%dP, dch1=\E[P, + dispc=%?%p1%{8}%=%t\E%%G\342\227\230\E%%@%e%p1%{10}%=%t\E%%G\342\227\231\E%%@%e%p1%{12}%=%t\E%%G\342\231\0\E%%@%e%p1%{13}%=%t\E%%G\342\231\252\E%%@%e%p1%{14}%=%t\E%%G\342\231\253\E%%@%e%p1%{15}%=%t\E%%G\342\230\274\E%%@%e%p1%{27}%=%t\E%%G\342\206\220\E%%@%e%p1%{155}%=%t\E%%G\340\202\242\E%%@%e%p1%c%;, + dl=\E[%p1%dM, dl1=\E[M, dsl=\E]0;\007, ech=\E[%p1%dX, + ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, + flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, hpa=\E[%i%p1%dG, + ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, + indn=\E[%p1%dS, + initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, + is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R, + 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[11~, 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[12~, + kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, + ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, + rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m, + rmso=\E[27m, rmul=\E[24m, + rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l, + s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h, + smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E]0;, vpa=\E[%i%p1%dd, use=vt102+enq, +vt100-putty|Reset PuTTY to pure vt100, + rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p, + use=vt100, +# palette is hardcoded... +putty-256color|PuTTY 0.58 with xterm 256-colors, + initc@, use=xterm+256color, use=putty, + +# One of the keyboard selections is "VT100+". +# pterm (the X11 port) uses shifted F1-F10 as F11-F20 +putty-vt100|VT100+ keyboard layout, + kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EO[, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, + kf9=\EOX, use=putty, + +# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by +# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator +# (communication program) which supports: +# +# - Serial port connections. +# - TCP/IP (telnet) connections. +# - VT100 emulation, and selected VT200/300 emulation. +# - TEK4010 emulation. +# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and +# Quick-VAN). +# - Scripts using the "Tera Term Language". +# - Japanese and Russian character sets. +# +# The program does not come with terminfo or termcap entries. However, the +# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no +# vt52 or doublesize character support; blinking is done with color). Besides +# the HPA, VPA extensions it also implements CPL and CNL. +# +# All of the function keys can be remapped. This description shows the default +# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys +# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad +# is laid out like vt220, rather than the face codes on the PC keyboard, i.e, +# kfnd Insert +# kslt Delete +# kich1 Home +# kdch1 PageUp +# kpp End +# knp PageDown +# +# ANSI colors are implemented, but cannot be combined with video attributes +# except for reverse. +# +# No fonts are supplied with the program, so the acsc string is chosen to +# correspond with the default Microsoft terminal font. +# +# Tera Term recognizes some xterm sequences, including those for setting and +# retrieving the window title, and for setting the window size (i.e., using +# "resize -s"), though it does not pass SIGWINCH to the application if the +# user resizes the window with the mouse. +teraterm2.3|Tera Term Pro, + km, xon@, + ncv#43, vt@, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, + cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, 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/>, hpa=\E[%i%p1%dG, + il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, kf1=\E[11~, + 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[12~, kf20=\E[34~, + kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, + kpp=\E[5~, kslt=\E[4~, op=\E[100m, rev=\E[7m, ri=\EM, + rmso=\E[27m, rmul=\E[24m, sgr0=\E[0m\017, smso=\E[7m, + smul=\E[4m, vpa=\E[%i%p1%dd, use=vt100+enq, + use=klone+color, use=vt100, + +# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary +# to choose a Windows OEM font). +# +# Testing with tack: +# - it does not have xenl (suppress that) +# - underline seems to work with color (modify ncv). +# Testing with vttest: +# - wrapping differs from vt100 (menu 1). +# - it recognizes xterm's X10 and normal mouse tracking, but none of the +# other flavors. +# - it recognizes the dtterm window controls for reporting size in +# characters and pixels. +# - it passes SIGWINCH. +teraterm4.59|Tera Term Pro, + bce, xenl@, + ncv#41, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + kmous=\E[M, use=teraterm2.3, + +teraterm|Tera Term, + use=teraterm4.59, + +# Tested with WinNT 4.0, the telnet application assumes the screensize is +# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters. +# +# Other notes: +# a) Fails tack's cup (cursor-addressing) test, though cup works well enough +# for casual (occasional) use. Also fails several of the vttest screens, +# but that is not unusual for vt100 "emulators". +# b) Does not implement vt100 keypad +# c) Recognizes a subset of vt52 controls. +ms-vt100|MS telnet imitating dec vt100, + lines#25, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf0@, kf1@, kf10@, kf2@, kf3@, kf4@, + kf5@, kf6@, kf7@, kf8@, kf9@, tbc@, use=vt102+enq, use=vt100, + +# Tested with Windows 2000, the telnet application runs in a console window, +# also using 'Terminal' font. +# +# Other notes: +# a) This version has no function keys or numeric keypad. Unlike the older +# version, the numeric keypad is entirely ignored. +# b) The program sets $TERM to "ansi", which of course is inaccurate. +ms-vt100-color|vtnt|windows 2000 ansi (sic), + bce, + dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color, + use=ms-vt100, + +# Based on comments from Federico Bianchi: +# +# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different +# scheme for PF keys. +# +# and PuTTY wishlist: +# +# The modifiers are represented as the codes listed above, prefixed to +# the normal sequences. If the modifier is pressed alone, its sequence +# is transmitted twice in succession. If multiple modifiers apply, +# they're transmitted in the order shift, control, alt. +# +# Shift \E^S +# Alt \E^A, +# Ctrl \E^C, +ms-vt100+|vt100+|windows XP vt100+ (sic), + kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@, + kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3, + kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6, + kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9, + kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@, + kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3, + kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6, + kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9, + kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@, + kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4, + kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6, + kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9, + kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5, + kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+, + knp=\E/, kpp=\E?, use=ms-vt100-color, + +ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+, + use=ms-vt100+, + +# expect-5.44.1.15/example/tkterm +# a minimal subset of a vt100 (compare with "news-unk). +# +# The missing "=" in smkx is not a typo (here), but an error in tkterm. +tt|tkterm|Don Libes' tk text widget terminal emulator, + clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%p1%d;%p2%dH, cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, + kf9=\EOX, rmkx=\E[?1l\E>, rmso=\E[m, smkx=\E[?1h\E, + smso=\E[7m, + +######## X TERMINAL EMULATORS +#### XTERM +# +# You can add the following line to your .Xdefaults to change the terminal type +# set by the xterms you start up to my-xterm: +# +# *termName: my-xterm +# +# System administrators can change the default entry for xterm instances +# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either +# case, xterm will detect and reject an invalid terminal type, falling back +# to the default of xterm. +# + +# X10/6.6 11/7/86, minus alternate screen, plus (csr) +# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string; +# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E) +# as these seem not to work -- esr) +x10term|vs100-x10|xterm terminal emulator (X10 window system), + OTbs, am, km, mir, msgr, xenl, xon, + cols#80, it#8, lines#65, + bold=\E[1m, clear=\E[H\E[2J, 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, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, + il1=\E[L, ind=^J, is2=\E\E[m\E[?7h\E[?1;4l, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, rev=\E[7m, ri=\EM, rmam=\E[?7l, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, + smso=\E[7m, smul=\E[4m, +# Compatible with the R5 xterm +# (from the XFree86 3.2 distribution, <blink=@> removed) +# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD +# corrected typos in rs2 string - TD +# added u6-u9 -TD +xterm-r5|xterm R5 version, + OTbs, am, km, msgr, xenl, + cols#80, it#8, lines#24, + bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, + kdl1=\E[31~, kel=\E[8~, kend=\E[4~, kf0=\EOq, kf1=\E[11~, + kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, + kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, + kil1=\E[30~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, + rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, + rmul=\E[m, + rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H, + sc=\E7, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, + sgr0=\E[m, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, use=vt100+enq, +# Compatible with the R6 xterm +# (from XFree86 3.2 distribution, <acsc> and <it> added, <blink@> removed) +# added khome/kend, hts based on the R6 xterm code - TD +# (khome/kend do not actually work in X11R5 or X11R6, but many people use this +# for compatibility with other emulators). +xterm-r6|xterm-old|xterm X11R6 version, + OTbs, am, km, mir, msgr, xenl, + cols#80, it#8, lines#24, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, + il1=\E[L, ind=^J, + is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kf1=\E[11~, 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[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, meml=\El, memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=^O, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, sc=\E7, + sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + use=vt100+enq, +# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up. +# The name has been changed and some aliases have been removed. +xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System), + OTbs, am, bce, km, mir, msgr, xenl, + cols#80, it#8, lines#24, ncv@, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, + flash=\E[?5h$<100/>\E[?5l, 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, + is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, + kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, kdch1=\177, kend=\EOF, kf1=\E[11~, 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[12~, kf20=\E[34~, kf3=\E[13~, + kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, + kf9=\E[20~, kfnd=\E[1~, khome=\EOH, kich1=\E[2~, + kmous=\E[M, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, meml=\El, + memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, + rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>, + rmso=\E[27m, rmul=\E[24m, rs1=^O, + rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7, + setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, + smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq, + use=ecma+color, use=vt220+keypad, + +# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100 +# codes for F1-F4 except while in VT220 mode. +xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System), + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=xterm-xf86-v32, + +# This version was released in XFree86 3.3.3 (November 1998). +# Besides providing printer support, it exploits a new feature that allows +# xterm to use terminfo-based descriptions with the titeInhibit resource. +# -- the distribution contained incorrect khome/kend values -TD +xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System), + mc5i, + blink=\E[5m, ich1@, invis=\E[8m, + is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@, + mc0=\E[i, mc4=\E[4i, mc5=\E[5i, rmcup=\E[?1047l\E[?1048l, + rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + smcup=\E[?1048h\E[?1047h, use=xterm-xf86-v33, + +# This version was released in XFree86 4.0. +xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System), + npc, + kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~, + kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@, + ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF, + kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, + kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, + kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, + kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, + kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf30=\E[17;5~, + kf31=\E[18;5~, kf32=\E[19;5~, kf33=\E[20;5~, + kf34=\E[21;5~, kf35=\E[23;5~, kf36=\E[24;5~, kf37=\EO6P, + kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, kf41=\E[15;6~, + kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~, + kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~, + kf48=\E[24;6~, khome=\EOH, rmcup=\E[?1049l, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + smcup=\E[?1049h, use=xterm-xf86-v333, + +# This version was released in XFree86 4.3. +xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System), + kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, + kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, + kbeg@, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + use=xterm-xf86-v40, + +# This version was released in XFree86 4.4. +xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System), + cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h, indn=\E[%p1%dS, + rin=\E[%p1%dT, use=xterm-xf86-v43, + +xterm-xfree86|xterm terminal emulator (XFree86), + use=xterm-xf86-v44, + +# This version reflects the current xterm features. +xterm-new|modern xterm terminal emulator, + npc, + indn=\E[%p1%dS, kb2=\EOE, kcbt=\E[Z, kent=\EOM, + rin=\E[%p1%dT, use=xterm+pcfkeys, use=xterm+tmux, + use=xterm-basic, +# +# This fragment describes as much of XFree86 xterm's "pc-style" function +# keys as will fit into terminfo's 60 function keys. +# From ctlseqs.ms: +# Code Modifiers +# --------------------------------- +# 2 Shift +# 3 Alt +# 4 Shift + Alt +# 5 Control +# 6 Shift + Control +# 7 Alt + Control +# 8 Shift + Alt + Control +# --------------------------------- +# The meta key may also be used as a modifier in this scheme, adding another +# bit to the parameter. +xterm+pcfkeys|fragment for PC-style fkeys, + use=xterm+app, use=xterm+pcf2, use=xterm+pcc2, + use=xterm+pce2, +# +xterm+noapp|fragment with cursor keys in normal mode, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[F, + khome=\E[H, + +xterm+app|fragment with cursor keys in application mode, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\EOF, + khome=\EOH, +# +# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27) +# and revised in patch #167 (2002/8/24). Some other terminal emulators copied +# the earlier scheme, as noted in the "use=" clauses in this file. +# +# The original assignments from patch #94 for cursor-keys had some technical +# issues: +# +# A parameter for a function-key to represent a modifier is just more +# bits. But for a cursor-key it may change the behavior of the +# application. For instance, emacs decodes the first parameter of a +# cursor-key as a repeat count. +# +# A parameterized string should (really) not begin with SS3 (\EO). +# Rather, CSI (\E[) should be used. +# +# For these reasons, the original assignments were deprecated. For +# compatibility reasons, they are still available as a setting of xterm's +# modifyCursorKeys resource. These fragments list the modified cursor-keys +# that might apply to xterm+pcfkeys with different values of that resource. +xterm+pcc3|fragment with modifyCursorKeys:3, + kLFT=\E[>1;2D, kRIT=\E[>1;2C, kind=\E[>1;2B, + kri=\E[>1;2A, kDN=\E[>1;2B, kDN3=\E[>1;3B, kDN4=\E[>1;4B, + kDN5=\E[>1;5B, kDN6=\E[>1;6B, kDN7=\E[>1;7B, + kLFT3=\E[>1;3D, kLFT4=\E[>1;4D, kLFT5=\E[>1;5D, + kLFT6=\E[>1;6D, kLFT7=\E[>1;7D, kRIT3=\E[>1;3C, + kRIT4=\E[>1;4C, kRIT5=\E[>1;5C, kRIT6=\E[>1;6C, + kRIT7=\E[>1;7C, kUP=\E[>1;2A, kUP3=\E[>1;3A, + kUP4=\E[>1;4A, kUP5=\E[>1;5A, kUP6=\E[>1;6A, + kUP7=\E[>1;7A, + +xterm+pcc2|fragment with modifyCursorKeys:2, + kLFT=\E[1;2D, kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A, + kDN=\E[1;2B, kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, + kDN6=\E[1;6B, kDN7=\E[1;7B, kLFT3=\E[1;3D, kLFT4=\E[1;4D, + kLFT5=\E[1;5D, kLFT6=\E[1;6D, kLFT7=\E[1;7D, + kRIT3=\E[1;3C, kRIT4=\E[1;4C, kRIT5=\E[1;5C, + kRIT6=\E[1;6C, kRIT7=\E[1;7C, kUP=\E[1;2A, kUP3=\E[1;3A, + kUP4=\E[1;4A, kUP5=\E[1;5A, kUP6=\E[1;6A, kUP7=\E[1;7A, + +xterm+pcc1|fragment with modifyCursorKeys:1, + kLFT=\E[2D, kRIT=\E[2C, kind=\E[2B, kri=\E[2A, kDN=\E[2B, + kDN3=\E[3B, kDN4=\E[4B, kDN5=\E[5B, kDN6=\E[6B, kDN7=\E[7B, + kLFT3=\E[3D, kLFT4=\E[4D, kLFT5=\E[5D, kLFT6=\E[6D, + kLFT7=\E[7D, kRIT3=\E[3C, kRIT4=\E[4C, kRIT5=\E[5C, + kRIT6=\E[6C, kRIT7=\E[7C, kUP=\E[2A, kUP3=\E[3A, + kUP4=\E[4A, kUP5=\E[5A, kUP6=\E[6A, kUP7=\E[7A, + +xterm+pcc0|fragment with modifyCursorKeys:0, + kLFT=\EO2D, kRIT=\EO2C, kind=\EO2B, kri=\EO2A, kDN=\EO2B, + kDN3=\EO3B, kDN4=\EO4B, kDN5=\EO5B, kDN6=\EO6B, kDN7=\EO7B, + kLFT3=\EO3D, kLFT4=\EO4D, kLFT5=\EO5D, kLFT6=\EO6D, + kLFT7=\EO7D, kRIT3=\EO3C, kRIT4=\EO4C, kRIT5=\EO5C, + kRIT6=\EO6C, kRIT7=\EO7C, kUP=\EO2A, kUP3=\EO3A, + kUP4=\EO4A, kUP5=\EO5A, kUP6=\EO6A, kUP7=\EO7A, + +# +# Here are corresponding fragments from xterm patch #216: +# +xterm+pcf0|fragment with modifyFunctionKeys:0, + kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, + kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, + kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, + kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, + kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, + kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf3=\EOR, + kf30=\E[17;5~, kf31=\E[18;5~, kf32=\E[19;5~, + kf33=\E[20;5~, kf34=\E[21;5~, kf35=\E[23;5~, + kf36=\E[24;5~, kf37=\EO6P, kf38=\EO6Q, kf39=\EO6R, + kf4=\EOS, kf40=\EO6S, kf41=\E[15;6~, kf42=\E[17;6~, + kf43=\E[18;6~, kf44=\E[19;6~, kf45=\E[20;6~, + kf46=\E[21;6~, kf47=\E[23;6~, kf48=\E[24;6~, kf49=\EO3P, + kf5=\E[15~, kf50=\EO3Q, kf51=\EO3R, kf52=\EO3S, + kf53=\E[15;3~, kf54=\E[17;3~, kf55=\E[18;3~, + kf56=\E[19;3~, kf57=\E[20;3~, kf58=\E[21;3~, + kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~, kf61=\EO4P, + kf62=\EO4Q, kf63=\EO4R, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, +# +xterm+pcf2|fragment with modifyFunctionKeys:2, + kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, + kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S, + kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, + kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, + kf23=\E[23;2~, kf24=\E[24;2~, kf25=\E[1;5P, kf26=\E[1;5Q, + kf27=\E[1;5R, kf28=\E[1;5S, kf29=\E[15;5~, kf3=\EOR, + kf30=\E[17;5~, kf31=\E[18;5~, kf32=\E[19;5~, + kf33=\E[20;5~, kf34=\E[21;5~, kf35=\E[23;5~, + kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q, kf39=\E[1;6R, + kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~, kf42=\E[17;6~, + kf43=\E[18;6~, kf44=\E[19;6~, kf45=\E[20;6~, + kf46=\E[21;6~, kf47=\E[23;6~, kf48=\E[24;6~, + kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q, kf51=\E[1;3R, + kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~, + kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~, + kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~, + kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, +# +# Chunks from xterm #230: +xterm+pce2|fragment with modifyCursorKeys:2, + kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, + kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~, + kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~, + kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F, + kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F, + kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H, + kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~, + kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~, + kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~, + kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~, + kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~, + use=xterm+edit, + +xterm+edit|fragment for 6-key editing-keypad, + kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + use=xterm+pc+edit, + +xterm+pc+edit|fragment for pc-style editing keypad, + kend=\E[4~, khome=\E[1~, + +xterm+vt+edit|fragment for vt220-style editing keypad, + kfnd=\E[1~, kslt=\E[4~, + +# +# Those chunks use the new-style (the xterm oldFunctionKeys resource is false). +# Alternatively, the same scheme with old-style function keys as in xterm-r6 +# is shown here (because that is used in mrxvt and mlterm): +xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2, + kf1=\E[11~, kf13=\E[11;2~, kf14=\E[12;2~, kf15=\E[13;2~, + kf16=\E[14;2~, kf2=\E[12~, kf25=\E[11;5~, kf26=\E[12;5~, + kf27=\E[13;5~, kf28=\E[14;5~, kf3=\E[13~, kf37=\E[11;6~, + kf38=\E[12;6~, kf39=\E[13;6~, kf4=\E[14~, kf40=\E[14;6~, + kf49=\E[11;3~, kf50=\E[12;3~, kf51=\E[13;3~, + kf52=\E[14;3~, kf61=\E[11;4~, kf62=\E[12;4~, + kf63=\E[13;4~, use=xterm+pcf2, +# +# This chunk is used for building the VT220/Sun/PC keyboard variants. +xterm-basic|modern xterm terminal emulator - common, + OTbs, am, bce, km, mc5i, mir, msgr, xenl, AX, + colors#8, cols#80, it#8, lines#24, pairs#64, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, + flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG, + ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, + ind=^J, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kbs=^H, + kmous=\E[M, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El, + memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, rmir=\E[4l, + rmkx=\E[?1l\E>, rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, + rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, + sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, + smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq, + +# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997 +# In retrospect, something like xterm-r6 was intended here -TD +xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1, + rmso=\E[m, rmul=\E[m, use=xterm-xf86-v33, + +# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey) +# If configured to support 88- or 256-colors (which is fairly common in 2009), +# xterm also recognizes the control sequences for initc -TD +xterm-16color|xterm with 16 colors like aixterm, + ccc, + initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, + use=ibm+16color, use=xterm-new, + +# 256-colors is a compile-time feature of XFree86 xterm beginning with +# patch #111 (1999/7/10) -TD +xterm+256color|xterm 256-color feature, + ccc, + colors#256, pairs#32767, + initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, + setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m, + setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m, + setb@, setf@, + +# 88-colors is a compile-time feature of XFree86 xterm beginning with +# patch #115 (1999/9/18) -TD +# +# Note that the escape sequences used are the same as for 256-colors - xterm +# has a different table of default color resource values. If built for +# 256-colors, it can still handle an 88-color palette by using the initc +# capability. +# +# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals +# which support the xterm+256color feature support the associated initc +# capability. So it is cancelled in the entries which use this and/or the +# xterm+256color block. +# +# The default color palette for the 256- and 88-colors are different. A +# given executable will have one palette (perhaps compiled-in). If the program +# supports xterm's control sequence, it can be programmed using initc. +xterm+88color|xterm 88-color feature, + colors#88, pairs#7744, use=xterm+256color, + +# These variants of XFree86 3.9.16 xterm are built as a configure option. +xterm-256color|xterm with 256 colors, + use=xterm+256color, use=xterm-new, +xterm-88color|xterm with 88 colors, + use=xterm+88color, use=xterm-256color, + +# These two are used to demonstrate the any-event mouse support, i.e., by +# using an extended name "XM" which tells ncurses to put the terminal into +# a special mode when initializing the xterm mouse. +xterm-1002|testing xterm-mouse, + XM=\E[?1002%?%p1%{1}%=%th%el%;, use=xterm-new, +xterm-1003|testing xterm-mouse, + XM=\E[?1003%?%p1%{1}%=%th%el%;, use=xterm-new, + +# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who +# asked for some of xterm's advanced features to be added to its terminfo +# entry. It defines extended capabilities not found in standard terminfo or +# termcap. These are useful in tmux, for instance, hence the name. +# +# One caveat in adding extended capabilities in ncurses is that if the names +# are longer than two characters, then they will not be visible through the +# termcap interface. +# +# Ms modifies the selection/clipboard. Its parameters are +# p1 = the storage unit (clipboard, selection or cut buffer) +# p2 = the base64-encoded clipboard content. +# +# Ss is used to set the cursor style as described by the DECSCUSR +# function to a block or underline. +# Se resets the cursor style to the terminal power-on default. +# +# Cs and Ce set and reset the cursor colour. +xterm+tmux|advanced xterm features used in tmux, + Cr=\E]112\007, Cs=\E]12;%p1%s\007, + Ms=\E]52;%p1%s;%p2%s\007, Se=\E[2 q, Ss=\E[%p1%d q, + +# This is another variant, for XFree86 4.0 xterm (T.Dickey) +# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color. +# To use it, your decTerminalID resource must be set to 200 or above. +# +# HTS \E H \210 +# RI \E M \215 +# SS3 \E O \217 +# CSI \E [ \233 +# +xterm-8bit|xterm terminal emulator 8-bit controls (X Window System), + OTbs, am, bce, km, mc5i, mir, msgr, npc, xenl, AX, + colors#8, cols#80, it#8, lines#24, pairs#64, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\2335m, bold=\2331m, cbt=\233Z, + civis=\233?25l, clear=\233H\2332J, + cnorm=\233?25l\233?25h, cr=^M, csr=\233%i%p1%d;%p2%dr, + cub=\233%p1%dD, cub1=^H, cud=\233%p1%dB, cud1=^J, + cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, + cuu=\233%p1%dA, cuu1=\233A, cvvis=\233?12;25h, + dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, + ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, + flash=\233?5h$<100/>\233?5l, home=\233H, + hpa=\233%i%p1%dG, ht=^I, hts=\210, ich=\233%p1%d@, + il=\233%p1%dL, il1=\233L, ind=^J, invis=\2338m, + is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, + ka1=\217w, ka3=\217u, kb2=\217y, kbeg=\217E, kbs=^H, + kc1=\217q, kc3=\217s, kcbt=\233Z, kcub1=\217D, kcud1=\217B, + kcuf1=\217C, kcuu1=\217A, kdch1=\2333~, kend=\2334~, + kent=\217M, kf1=\23311~, kf10=\23321~, kf11=\23323~, + kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~, + kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~, + kf2=\23312~, kf20=\23334~, kf3=\23313~, kf4=\23314~, + kf5=\23315~, kf6=\23317~, kf7=\23318~, kf8=\23319~, + kf9=\23320~, khome=\2331~, kich1=\2332~, kmous=\233M, + knp=\2336~, kpp=\2335~, mc0=\233i, mc4=\2334i, mc5=\2335i, + meml=\El, memu=\Em, op=\23339;49m, rc=\E8, rev=\2337m, + ri=\215, rmacs=\E(B, rmam=\233?7l, rmcup=\233?1049l, + rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m, + rs1=\Ec, + rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, + sc=\E7, setab=\2334%p1%dm, setaf=\2333%p1%dm, + setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, + smcup=\233?1049h, smir=\2334h, smkx=\233?1h\E=, + smso=\2337m, smul=\2334m, tbc=\2333g, u6=\233[%i%d;%dR, + u7=\E[6n, u8=\233[?1;2c, u9=\E[c, vpa=\233%i%p1%dd, + +xterm-hp|xterm with hpterm function keys, + kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + kdch1=\EP, kend=\EF, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, + kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, kich1=\EQ, + knp=\ES, kpp=\ET, use=xterm-basic, + +xterm-sco|xterm with SCO function keys, + kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, + kf12=\E[X, kf13=\E[Y, kf14=\E[Z, 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, kmous=\E[>M, knp=\E[G, kpp=\E[I, + use=xterm-basic, + +# The xterm-new description has all of the features, but is not completely +# compatible with vt220. If you are using a Sun or PC keyboard, set the +# sunKeyboard resource to true: +# + maps the editing keypad +# + interprets control-function-key as a second array of keys, so a +# 12-fkey keyboard can support vt220's 20-fkeys. +# + maps numeric keypad "+" to ",". +# + uses DEC-style control sequences for the application keypad. +# +xterm-vt220|xterm emulating vt220, + kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kend=\E[4~, 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~, kf20=\E[34~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + use=xterm+app, use=xterm+edit, use=xterm-basic, + use=vt220+keypad, + +xterm-vt52|xterm emulating dec vt52, + cols#80, it#8, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, clear=\EH\EJ, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK, + home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, + +xterm-noapp|xterm with cursor keys in normal mode, + rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp, + use=xterm, + +xterm-24|vs100|xterms|xterm terminal emulator (X Window System), + lines#24, use=xterm-old, + +# This is xterm for ncurses. +xterm|xterm terminal emulator (X Window System), + use=xterm-new, + +# This entry assumes that xterm's handling of VT100 SI/SO is disabled by +# setting the vt100Graphics resource to false. +xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode, + U8#1, use=xterm, + +# These entries allow access to the X titlebar and icon name as a status line. +# Note that twm (and possibly window managers descended from it such as tvtwm, +# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess +# with it. +xterm+sl|access X title line and icon name, + hs, + wsl#40, + dsl=\E]0;\007, fsl=^G, tsl=\E]0;, use=xterm, +xterm+sl-twm|access X title line (pacify twm-descended window managers), + hs, + wsl#40, + dsl=\E]2;\007, fsl=^G, tsl=\E]2;, use=xterm, + +# +# The following xterm variants don't depend on your base version +# +# xterm with bold instead of underline +xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold, + smso=\E[7m, smul=\E[1m, use=xterm-old, + +# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file +xterm-nic|xterm with ich/ich1 suppressed for non-curses programs, + ich@, ich1@, use=xterm, +# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996 +xterm1|xterm terminal emulator ignoring the alternate screen buffer, + rmcup@, smcup@, use=xterm, + +#### KTERM +# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr) +# (kterm should not invoke DEC Graphics as the alternate character set +# -- Kenji Rikitake) +# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics +# -- MATSUMOTO Shoji) +# kterm implements acsc via built-in table of X Drawable's +kterm|kterm kanji terminal emulator (X window system), + eslok, hs, XT, + ncv@, + acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~, + csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F, + kmous=\E[M, rc=\E8, rmacs=\E(B, rmam=\E[?7l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, + tsl=\E[?E\E[?%i%p1%dT, use=xterm-r6, use=ecma+color, +kterm-color|kterm-co|kterm with ANSI colors, + ncv@, use=kterm, use=ecma+color, + +#### Other XTERM +# These (xtermc and xtermm) are distributed with Solaris. They refer to a +# variant of xterm which is apparently no longer supported, but are interesting +# because they illustrate SVr4 curses mouse controls - T.Dickey +xtermm|xterm terminal emulator (monocrome), + OTbs, am, km, mir, msgr, xenl, + btns#3, cols#80, it#8, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink@, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY, + home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy, + kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU, + kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_, + knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM, + rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m, + rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1, + smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys, + +xtermc|xterm terminal emulator (color), + colors#8, ncv#7, pairs#64, + op=\E[100m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + use=xtermm, + +# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995 +# Here's a termcap entry I've been using for xterm_color, which comes +# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the +# color stuff, I also have a status line defined as the window manager +# title bar. [I have translated it to terminfo -- ESR] +xterm-pcolor|xterm with color used for highlights and status line, + bold=\E[1m\E[43m, rev=\E[7m\E[34m, smso=\E[7m\E[31m, + smul=\E[4m\E[42m, use=xterm+sl, use=xterm-r6, + +# This describes the capabilities of color_xterm, an xterm variant from +# before ECMA-64 color support was folded into the main-line xterm release. +# This entry is straight from color_xterm's maintainer. +# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996 +# The README's with the distribution also say that it supports SGR 21, 24, 25 +# and 27, but they are not present in the terminfo or termcap. +color_xterm|cx|cx100|color_xterm color terminal emulator for X, + OTbs, am, km, mir, msgr, xenl, XT, + cols#80, it#8, lines#65, ncv@, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, + is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[8~, kf1=\E[11~, + kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, + kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, khome=\E[7~, kich1=\E[2~, + kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=^O, rmam=\E[?7l, rmcup=\E>\E[?41;1r, rmir=\E[4l, + rmso=\E[27m, rmul=\E[24m, + rs1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[0m\017, smacs=^N, smam=\E[?7h, + smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m, + smul=\E[4m, use=ecma+color, use=vt220+keypad, + +# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of +# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support +# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This +# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except +# that each of those implements the home, end, delete keys differently. +# +# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce +# colors; note that this is not compatible with the 5.2 version. +# csw (2002-05-15): make xterm-color primary instead of nxterm, to +# match XFree86's xterm.terminfo usage and prevent circular links +xterm-color|nxterm|generic color xterm, + ncv@, + op=\E[m, use=xterm-r6, use=klone+color, + +# This entry describes an xterm with Sun-style function keys enabled +# via the X resource setting "xterm*sunFunctionKeys:true" +# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same. +# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z> +# because we want it to be seen as <kcpy>. +# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance +# with their Sun keyboard labels instead. +# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996 +xterm-sun|xterm with sunFunctionKeys true, + kb2=\E[218z, kcpy=\E[197z, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3z, kend=\E[220z, + kent=\EOM, kf1=\E[224z, kf10=\E[233z, kf11=\E[192z, + kf12=\E[193z, kf13=\E[194z, kf14=\E[195z, kf15=\E[196z, + kf17=\E[198z, kf18=\E[199z, kf19=\E[200z, kf2=\E[225z, + kf20=\E[201z, kf3=\E[226z, kf31=\E[208z, kf32=\E[209z, + kf33=\E[210z, kf34=\E[211z, kf35=\E[212z, kf36=\E[213z, + kf38=\E[215z, kf4=\E[227z, kf40=\E[217z, kf42=\E[219z, + kf44=\E[221z, kf45=\E[222z, kf46=\E[234z, kf47=\E[235z, + kf5=\E[228z, kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, + kf9=\E[232z, kfnd=\E[200z, khlp=\E[196z, khome=\E[214z, + kich1=\E[2z, knp=\E[222z, kpp=\E[216z, kund=\E[195z, + use=xterm-basic, +xterms-sun|small (80x24) xterm with sunFunctionKeys true, + cols#80, lines#24, use=xterm-sun, + +#### GNOME (VTE) +# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0 +gnome-rh62|Gnome terminal, + bce, + kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + use=xterm-color, + +# GNOME Terminal 1.4.0.4 (Redhat 7.2) +# +# This implements a subset of vt102 with a random selection of features from +# other terminals such as color and function-keys. +# +# shift-f1 to shift-f10 are f11 to f20 +# +# NumLock changes the application keypad to approximate vt100 keypad, except +# that there is no escape sequence matching comma (,). +# +# Other defects observed: +# vt100 LNM mode is not implemented. +# vt100 80/132 column mode is not implemented. +# vt100 DECALN is not implemented. +# vt100 DECSCNM mode is not implemented, so flash does not work. +# vt100 TBC (tab reset) is not implemented. +# xterm alternate screen controls do not restore cursor position properly +# it hangs in tack after running function-keys test. +gnome-rh72|GNOME Terminal, + bce, km@, + civis=\E[?25l, cnorm=\E[?25h, kdch1=\E[3~, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmam=\E[?7l, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;, + sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=xterm-color, + +# GNOME Terminal 2.0.1 (Redhat 8.0) +# +# Documentation now claims it implements vt220 (which is demonstrably false). +# However, it does implement ECH, which is a vt220 feature. And there are +# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display +# more of its bugs using vttest. +# +# However, note that bce and msgr are broken in this release. Tabs (tbc and +# hts) are broken as well. Sometimes flash (as in xterm-new) works. +# +# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu +# operations. Shift-tab generates a distinct sequence so it can be argued +# that it implements kcbt. +gnome-rh80|GNOME Terminal, + bce@, msgr@, + ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177, + kcbt=\E^I, op=\E[39;49m, use=gnome-rh72, + +# GNOME Terminal 2.2.1 (Redhat 9.0) +# +# bce and msgr are repaired. +gnome-rh90|GNOME Terminal, + bce, msgr, + hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C, + kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g, + vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys, + use=gnome-rh80, + +# GNOME Terminal 2.14.2 (Fedora Core 5) +# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002. +gnome-fc5|GNOME Terminal, + rs1=\Ec, + rs2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, + use=ansi+enq, use=xterm+pcc0, use=gnome-rh90, + +# GNOME Terminal 2.18.1 (2007 snapshot) +# +# For any "recent" version of gnome-terminal, it is futile to attempt to +# support modifiers on cursor- and keypad keys because the program usually +# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset +# of the keys (which more/less correspond to the termcap values), and will +# interpret those according to the $TERM value, but others not in the +# terminfo according to some constantly changing set of hacker guidelines -TD +vte-2007|VTE in GNOME Terminal snapshot 2.18.1, + use=xterm+pcc2, use=gnome-fc5, +gnome-2007|GNOME Terminal snapshot 2.18.1, + use=vte-2007, + +# GNOME Terminal 2.22.3 (2008 snapshot) +# +# In vttest, it claims to be a vt220 with national replacement character-sets, +# but aside from the identifier string, implements only a small fraction of +# vt220's behavior, which will make it less usable on a VMS system (unclear +# what the intent of the developer is, since the NRC feature exposed in vttest +# by this change does not work). +vte-2008|VTE in GNOME Terminal snapshot 2.22.3, + use=vte+pcfkeys, use=vte-2007, +gnome-2008|GNOME Terminal snapshot 2.22.3, + use=vte-2008, + +# GNOME terminal may automatically use the contents of the "xterm" terminfo to +# supply key information which is not built into the program. With 2.22.3, +# this list is built into the program (which addresses the inadvertant use of +# random terminfo data, though using a set of values which does not correspond +# to any that xterm produces - still not solving the problem that GNOME +# terminal hardcodes the $TERM variable as "xterm"). +# +# terminfo modifier code keys +# kf13-kf24 shift 2 F1 to F12 +# kf25-kf36 control 5 F1 to F12 +# kf37-kf48 shift/control 6 F1 to F12 +# kf49-kf60 alt 3 F1 to F12 +# kf61-kf63 shift-alt 4 F1 to F3 +# +# The parameters with \EO (SS3) are technically an error, since SS3 should have +# no parameters. This appears to be rote copying based on xterm+pcc0. +vte+pcfkeys|VTE's variation on xterm+pcfkeys, + kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R, + kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q, + kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P, + kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S, + kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S, + kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R, + use=xterm+pcfkeys, +gnome+pcfkeys|VTE's variation on xterm+pcfkeys, + use=vte+pcfkeys, + +vte|VTE aka GNOME Terminal, + use=vte-2008, +gnome|GNOME Terminal, + use=vte, + +# palette is hardcoded... +vte-256color|VTE with xterm 256-colors, + initc@, use=xterm+256color, use=vte, +gnome-256color|GNOME Terminal with xterm 256-colors, + use=vte-256color, + +# XFCE Terminal 0.2.5.4beta2 +# +# This is based on some of the same source code, e.g., the VTE library, as +# gnome-terminal, but has fewer features, fails more screens in vttest. +# Since most of the terminfo-related behavior is due to the VTE library, +# the terminfo is the same as gnome-terminal. +xfce|Xfce Terminal, + use=vte, + +#### Other GNOME +# Multi-Gnome-Terminal 1.6.2 +# +# This does not use VTE, and does have different behavior (compare xfce and +# gnome). +mgt|Multi GNOME Terminal, + indn=\E[%p1%dS, rin=\E[%p1%dT, use=xterm-xf86-v333, + +#### KDE +# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce +# or not is debatable). +kvt|KDE terminal, + bce, km@, + kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color, + +# Konsole 1.0.1 +# (formerly known as kvt) +# +# This program hardcodes $TERM to 'xterm', which is not accurate. However, to +# simplify this entry (and point out why konsole isn't xterm), we base this on +# xterm-r6. The default keyboard appears to be 'linux'. +# +# Notes: +# a) konsole implements several features from XFree86 xterm, though none of +# that is documented - except of course in its source code - apparently +# because its implementors are unaccustomed to reading documentation - as +# evidenced by the sparse and poorly edited documentation distributed with +# konsole. Some features such as the 1049 private mode are recognized but +# incorrectly implemented as a duplicate of the 47 private mode. +# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad +# sends PC-style escapes rather than vt100. +# c) fails vttest menu 3 (Test of character sets) because it does not properly +# parse some control sequences. Also fails vttest Primary Device Attributes +# by sending a bogus code (in the source it says it's supposed to be a +# vt220, which is doubly incorrect because it does not implement vt220 +# control sequences except for a few special cases). Treat it as a +# mildly-broken vt102. +# +# Update for konsole 1.3.2: +# The 1049 private mode works (but see the other xterm screens in vttest). +# Primary Device Attributes now returns the code for a vt100 with advanced +# video option. Perhaps that's intended to be a "mildly-broken vt102". +# +# Updated for konsole 1.6.4: +# add konsole-solaris +# +# Updated for konsole 1.6.6: +# add control-key modifiers for function-keys, etc. +# +# vttest menu 1 shows that both konsole and gnome terminal do wrapping +# different from xterm (and vt100's). They have the same behavior in this +# detail, but it is unclear which copies the other. +konsole-base|KDE console window, + bce, km@, npc, XT, + ncv@, + bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, + ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, + hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=\177, kdch1@, + kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, + kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, + kf9@, kfnd@, khome=\E[1~, kslt@, rin=\E[%p1%dT, rmam=\E[?7l, + rmso=\E[27m, rmul=\E[24m, + rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd, + use=ecma+color, use=xterm-r6, +konsole-linux|KDE console window with linux keyboard, + kdch1=\E[3~, kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, + kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, + kf2=\E[[B, kf20@, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + use=konsole-base, +konsole-solaris|KDE console window with Solaris keyboard, + kbs=^H, kend=\E[4~, khome=\E[1~, use=konsole-vt100, +# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather +# than testing the code. +konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm, + kend=\E[4~, khome=\E[1~, use=konsole-vt100, +# The value for kbs reflects local customization rather than the settings used +# for XFree86 xterm. +konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm, + kend=\EOF, khome=\EOH, use=konsole+pcfkeys, + use=konsole-vt100, +# Konsole does not implement shifted cursor-keys. +konsole+pcfkeys|konsole subset of xterm+pcfkeys, + kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2, + use=xterm+pcf0, +# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but +# it is still useful for deriving the other entries. +konsole-vt100|KDE console window with vt100 (sic) keyboard, + kbs=\177, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, + kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[H, use=konsole-base, +konsole-vt420pc|KDE console window with vt420 pc keyboard, + kbs=^H, kdch1=\177, use=konsole-vt100, +konsole-16color|klone of xterm-16color, + ncv#32, use=ibm+16color, use=konsole, +# make a default entry for konsole +konsole|KDE console window, + use=konsole-xf4x, + +# palette is hardcoded... +konsole-256color|KDE console window with xterm 256-colors, + initc@, use=xterm+256color, use=konsole, + +#### MLTERM +# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD +# +# It is nominally a vt102 emulator, with features borrowed from rxvt and +# xterm. +# +# The function keys are numbered based on shift/control/alt modifiers, except +# that the control-modifier itself is used to spawn a new copy of mlterm (the +# "-P" option). So control/F1 to control/F12 may not be usable, depending on +# how it is configured. +# +# kf1 to kf12 \E[11~ to \E[24~ +# shift kf1 to kf12 \E[11;2~ to \E[24;2~ +# alt kf1 to kf12 \E[11;3~ to \E[24;3~ +# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~ +# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe) +# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~ +# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~ +# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~ +# +mlterm|multi lingual terminal emulator, + am, eslok, km, mc5i, mir, msgr, npc, xenl, XT, + colors#8, cols#80, it#8, lines#24, pairs#64, + acsc=00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=, + 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, indn=\E[%p1%dS, + is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, + kbs=\177, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, kdch1=\E[3~, kend=\EOF, kent=\EOM, kfnd=\E[1~, + khome=\EOH, kich1=\E[2~, kind=\EO1;2B, kmous=\E[M, + knp=\E[6~, kpp=\E[5~, kri=\EO1;2A, kslt=\E[4~, mc0=\E[i, + nel=\EE, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, + rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, + rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l, + sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, + smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c, + vpa=\E[%i%p1%dd, use=mlterm+pcfkeys, use=xterm+r6f2, + +# The insert/delete/home/end keys do not respond to modifiers because mlterm +# looks in its termcap to decide which string to send. If it used terminfo +# (when available), it could use the extended names introduced for xterm. +mlterm+pcfkeys|fragment for PC-style fkeys, + kLFT=\EO1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO1;2C, + kDN=\EO1;2B, kDN3=\EO1;3B, kDN4=\EO1;4B, kDN5=\EO1;5B, + kDN6=\EO1;6B, kDN7=\EO1;7B, kIC5=\E[2;5~, kIC6=\E[2;6~, + kLFT3=\EO1;3D, kLFT4=\EO1;4D, kLFT5=\EO1;5D, + kLFT6=\EO1;6D, kLFT7=\EO1;7D, kNXT5=\E[6;5~, + kNXT6=\E[6;6~, kPRV5=\E[5;5~, kPRV6=\E[5;6~, + kRIT3=\EO1;3C, kRIT4=\EO1;4C, kRIT5=\EO1;5C, + kRIT6=\EO1;6C, kRIT7=\EO1;7C, kUP=\EO1;2A, kUP3=\EO1;3A, + kUP4=\EO1;4A, kUP5=\EO1;5A, kUP6=\EO1;6A, kUP7=\EO1;7A, + +mlterm-256color|mlterm 3.0 with xterm 256-colors, + use=xterm+256color, use=rxvt, + +#### RXVT +# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997 +# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997 +# Notes: +# rxvt 2.21b uses +# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O, +# but some applications don't work with that. +# It also has an AIX extension +# box2=lqkxjmwuvtn, +# and +# ech=\E[%p1%dX, +# but the latter does not work correctly. +# +# The distributed terminfo says it implements hpa and vpa, but they are not +# implemented correctly, using relative rather than absolute positioning. +# +# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM. +# Since rxvt is not really compatible with xterm, it should be configured as +# "rxvt" or "rxvt-color". +# +# removed dch/dch1 because they are inconsistent with bce/ech -TD +# remove km as per tack test -TD +rxvt-basic|rxvt terminal base (X Window System), + OTbs, am, bce, eo, mir, msgr, xenl, xon, XT, + cols#80, it#8, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I, + hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, + ind=^J, is1=\E[?47l\E=\E[?1l, + is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, + kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m, + rmul=\E[24m, + rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, + rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, + s0ds=\E(B, s1ds=\E(0, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, + smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq, + use=rxvt+pcfkeys, use=vt220+keypad, +# Key Codes from rxvt reference: +# +# Note: Shift + F1-F10 generates F11-F20 +# +# For the keypad, use Shift to temporarily override Application-Keypad +# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock +# is off, escape sequences toggle Application-Keypad setting. +# Also note that values of Home, End, Delete may have been compiled +# differently on your system. +# +# Normal Shift Control Ctrl+Shift +# Tab ^I ESC [ Z ^I ESC [ Z +# BackSpace ^H ^? ^? ^? +# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @ +# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @ +# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ +# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @ +# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @ +# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @ +# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @ +# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @ +# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ +# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^ +# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^ +# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^ +# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^ +# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^ +# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^ +# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^ +# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^ +# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^ +# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^ +# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @ +# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @ +# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @ +# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @ +# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @ +# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @ +# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @ +# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @ +# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @ +# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @ +# +# Application +# Up ESC [ A ESC [ a ESC O a ESC O A +# Down ESC [ B ESC [ b ESC O b ESC O B +# Right ESC [ C ESC [ c ESC O c ESC O C +# Left ESC [ D ESC [ d ESC O d ESC O D +# KP_Enter ^M ESC O M +# KP_F1 ESC O P ESC O P +# KP_F2 ESC O Q ESC O Q +# KP_F3 ESC O R ESC O R +# KP_F4 ESC O S ESC O S +# XK_KP_Multiply * ESC O j +# XK_KP_Add + ESC O k +# XK_KP_Separator , ESC O l +# XK_KP_Subtract - ESC O m +# XK_KP_Decimal . ESC O n +# XK_KP_Divide / ESC O o +# XK_KP_0 0 ESC O p +# XK_KP_1 1 ESC O q +# XK_KP_2 2 ESC O r +# XK_KP_3 3 ESC O s +# XK_KP_4 4 ESC O t +# XK_KP_5 5 ESC O u +# XK_KP_6 6 ESC O v +# XK_KP_7 7 ESC O w +# XK_KP_8 8 ESC O x +# XK_KP_9 9 ESC O y +# +# The source-code for rxvt actually defines mappings for F21-F35, using +# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys +# are rare, so this entry uses the shift- and control-modifiers as in +# xterm+pcfkeys to define keys past F12. +# +# kIC is normally not used, since rxvt performs a paste for that (shifted +# insert), unless private mode 35 is set. +# +# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD +# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD +rxvt+pcfkeys|fragment for PC-style fkeys, + kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d, + kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^, + kend=\E[8~, kf1=\E[11~, 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[12~, kf20=\E[34~, kf21=\E[23$, kf22=\E[24$, + kf23=\E[11\^, kf24=\E[12\^, kf25=\E[13\^, kf26=\E[14\^, + kf27=\E[15\^, kf28=\E[17\^, kf29=\E[18\^, kf3=\E[13~, + kf30=\E[19\^, kf31=\E[20\^, kf32=\E[21\^, kf33=\E[23\^, + kf34=\E[24\^, kf35=\E[25\^, kf36=\E[26\^, kf37=\E[28\^, + kf38=\E[29\^, kf39=\E[31\^, kf4=\E[14~, kf40=\E[32\^, + kf41=\E[33\^, kf42=\E[34\^, kf43=\E[23@, kf44=\E[24@, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a, knp=\E[6~, + kpp=\E[5~, kri=\E[b, kslt=\E[4~, kDC5=\E[3\^, kDC6=\E[3@, + kDN=\E[b, kDN5=\EOb, kEND5=\E[8\^, kEND6=\E[8@, + kHOM5=\E[7\^, kHOM6=\E[7@, kIC5=\E[2\^, kIC6=\E[2@, + kLFT5=\EOd, kNXT5=\E[6\^, kNXT6=\E[6@, kPRV5=\E[5\^, + kPRV6=\E[5@, kRIT5=\EOc, kUP=\E[a, kUP5=\EOa, + +rxvt|rxvt terminal emulator (X Window System), + ncv@, + hpa=\E[%i%p1%dG, kf0=\E[21~, sgr0=\E[m\017, + vpa=\E[%i%p1%dd, use=rxvt-basic, use=ecma+color, +rxvt-color|rxvt terminal emulator (X Window System), + use=rxvt, +rxvt-256color|rxvt 2.7.9 with xterm 256-colors, + use=xterm+256color, use=rxvt, +rxvt-88color|rxvt 2.7.9 with xterm 88-colors, + use=xterm+88color, use=rxvt, +rxvt-xpm|rxvt terminal emulator (X Window System), + use=rxvt, +rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin, + acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + use=rxvt, +rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin, + acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376, + use=rxvt-cygwin, + +# This variant is supposed to work with rxvt 2.7.7 when compiled with +# NO_BRIGHTCOLOR defined. rxvt needs more work... +rxvt-16color|xterm with 16 colors like aixterm, + ncv#32, use=ibm+16color, use=rxvt, + +#### MRXVT +# mrxvt 0.5.4 +# +# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which +# makes its function-keys different from other flavors of rxvt -TD +mrxvt|multitabbed rxvt, + XT, + kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~, + kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~, + kEND6=\E[8;6~, kEND7=\E[8;7~, kHOM3=\E[7;3~, + kHOM4=\E[7;4~, kHOM5=\E[7;5~, kHOM6=\E[7;6~, + kHOM7=\E[7;7~, use=xterm+r6f2, use=xterm+pcfkeys, + use=rxvt, + +mrxvt-256color|multitabbed rxvt with 256 colors, + use=xterm+256color, use=mrxvt, + +#### ETERM +# From: Michael Jennings <mej@valinux.com> +# +# Eterm 0.9.3 +# +# removed kf0 which conflicts with kf10 -TD +# remove cvvis which conflicts with cnorm -TD +# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT +# but does otherwise follow the rxvt+pcfkeys model -TD +# remove nonworking flash -TD +# remove km as per tack test -TD +Eterm|Eterm-color|Eterm with xterm-style color support (X Window System), + am, bce, bw, eo, mc5i, mir, msgr, xenl, xon, XT, + btns#5, cols#80, it#8, lines#24, lm#0, ncv@, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, + 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, + is1=\E[?47l\E>\E[?1l, + is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@, + kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H, + kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M, + mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=, + rmso=\E[27m, rmul=\E[24m, + rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, + rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, + smir=\E[4h, smkx=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + vpa=\E[%i%p1%dd, use=vt100+enq, use=rxvt+pcfkeys, + use=ecma+color, + +Eterm-256color|Eterm with xterm 256-colors, + use=xterm+256color, use=Eterm, + +Eterm-88color|Eterm with 88 colors, + use=xterm+88color, use=Eterm, + +#### ATERM +# Based on rxvt 2.4.8, it has a few differences in key bindings +aterm|AfterStep terminal, + XT, + kbs=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=rxvt, + +#### XITERM +# xiterm 0.5-5.2 +# This is not based on xterm's source... +# vttest shows several problems with keyboard, cursor-movements. +# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm +xiterm|internationalized terminal emulator for X, + km@, + kbs=\177, kdch1=\E[3~, use=klone+color, use=xterm-r6, + + +#### HPTERM +# HP ships this (HPUX 9 and 10), except for the pb#9600 which was merged in +# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS +# chars look like --esr) +hpterm|X-hpterm|hp X11 terminal emulator, + am, da, db, mir, xhp, + cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, pb#9600, xmc#0, + acsc=, bel=^G, bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, + cub1=^H, cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, + cuu1=\EA, dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK, + hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=^J, kbs=^H, + kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, + kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, + khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, + knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, meml=\El, + memu=\Em, pfkey=\E&f%p1%dk%p2%l%dL%p2%s, + pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, + pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, + pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET, + rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, + rmul=\E&d@, + sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, + sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, + smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, +# HPUX 11 provides a color version. +hpterm-color|HP X11 terminal emulator with color, + ccc, + colors#64, pairs#8, + home=\E&a0y0C, + initp=\E&v%p2%da%p3%db%p4%dc%p5%dx%p6%dy%p7%dz%p1%dI, + op=\E&v0S, scp=\E&v%p1%dS, use=hpterm, + +#### EMU +# This is for the extensible terminal emulator on the X11R6 contrib tape. +# It corresponds to emu's internal emulation: +# emu -term emu +# emu's default sets TERM to "xterm", but that doesn't work well -TD +# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD +# fixes: add civis, cnorm, sgr -TD +emu|emu native mode, + am, bce, mir, msgr, xon, + colors#15, cols#80, it#8, lines#24, pairs#64, vt#200, + acsc=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244, + bel=^G, blink=\EW, bold=\EU, civis=\EZ, clear=\EP\EE0;0;, + cnorm=\Ea, cr=^M, csr=\Ek%p1%d;%p2%d;, cub=\Eq-%p1%d;, + cub1=^H, cud=\Ep%p1%d;, cud1=\EB, cuf=\Eq%p1%d;, cuf1=\EC, + cup=\EE%p1%d;%p2%d;, cuu=\Ep-%p1%d;, cuu1=\EA, + dch=\EI%p1%d;, dch1=\EI1;, dl=\ER%p1%d;, dl1=\ER1;, + ech=\Ej%p1%d;, ed=\EN, el=\EK, el1=\EL, home=\EE0;0;, ht=^I, + hts=\Eh, il=\EQ%p1%d;, il1=\EQ1;, ind=\EG, + is2=\ES\Er0;\Es0;, kbs=^H, kcub1=\EC, kcud1=\EB, kcuf1=\ED, + kcuu1=\EA, kdch1=\177, kent=^M, kf0=\EF00, kf1=\EF01, + kf10=\EF10, kf11=\EF11, kf12=\EF12, kf13=\EF13, kf14=\EF14, + kf15=\EF15, kf16=\EF16, kf17=\EF17, kf18=\EF18, kf19=\EF19, + kf2=\EF02, kf20=\EF20, kf3=\EF03, kf4=\EF04, kf5=\EF05, + kf6=\EF06, kf7=\EF07, kf8=\EF08, kf9=\EF09, kfnd=\Efind, + kich1=\Eins, knp=\Enext, kpp=\Eprior, kslt=\Esel, + op=\Es0;\Er0;, rev=\ET, ri=\EF, rmir=\EX, rmso=\ES, rmul=\ES, + rs2=\ES\Es0;\Er0;, setab=\Es%i%p1%d;, + setaf=\Er%i%p1%d;, + sgr=\ES%?%p1%t\ET%;%?%p2%t\EV%;%?%p3%t\ET%;%?%p4%t\EW%;%?%p6%t\EU%;, + sgr0=\ES, smir=\EY, smso=\ET, smul=\EV, tbc=\Ej, + +# vt220 Terminfo entry for the Emu emulation, corresponds to +# emu -term vt220 +# with NumLock set (to make the keypad transmit kf0-kf9). +# fixes: add am, xenl, corrected sgr0 -TD +emu-220|Emu-220 (vt200-7bit mode), + am, xenl, xon, + cols#80, it#8, lines#24, vt#200, + acsc=aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[0;5m, bold=\E[0;1m, civis=\E[?25l, + clear=\E[2J\E[H, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[1D, + cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, + dch=\E[%p1%dP, dch1=\E[1P, dl=\E[%p1%dM, dl1=\E[1M, + ed=\E[0J, el=\E[0K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I, + hts=\EH, if=/usr/share/tabset/vt300, il=\E[%p1%dL, + il1=\E[1L, ind=\ED, is2=\E>\E[?1l\E[?3l\E[4l\E[?7h, + kbs=^H, kcmd=\E[29~, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, kf0=\EOp, kf1=\EOq, + kf10=\EOl, kf11=\EOm, kf12=\EOn, kf13=\EOP, kf14=\EOQ, + kf15=\EOR, kf16=\EOS, kf2=\EOr, kf26=\E[17~, kf27=\E[18~, + kf28=\E[19~, kf29=\E[20~, kf3=\EOs, kf30=\E[21~, + kf34=\E[26~, kf37=\E[31~, kf38=\E[32~, kf39=\E[33~, + kf4=\EOt, kf40=\E[34~, kf5=\EOu, kf6=\EOv, kf7=\EOw, + kf8=\EOx, kf9=\EOy, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, + knp=\E[6~, kpp=\E[5~, kslt=\E[4~, rc=\E8, rev=\E[0;7m, + ri=\EM, rmacs=^O, rmcup=\E>, rmkx=\E>, rmso=\E[m, rmul=\E[m, + rs2=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h, sc=\E7, + sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m, smacs=^N, smcup=\E[?1l\E=, smkx=\E=, + smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g, + +#### MVTERM +# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI, +# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings +# indicate that it emulates more than one terminal, but incompletely. +# +# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net> +# It is based on vt102's entry, with some subtle differences, but also +# has status line +# supports ANSI colors (except for 'op' string) +# apparently implements alternate screen like xterm +# does not use padding, of course. +mvterm|vv100|SwitchTerm aka mvTERM, + am, eslok, hs, km, mir, msgr, xenl, + colors#8, cols#80, it#8, lines#24, pairs#64, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, + fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy, + kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, + op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m, + rmul=\E[m, + rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H, + sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys, + +#### MTERM +# +# This application is available by email from <mouse@Rodents.Montreal.QC.CA>. +# +# "mterm -type ansi" sets $TERM to "ansi" +mterm-ansi|ANSI emulation, + am, bw, mir, msgr, + it#8, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + cub=\E[%p1%dD, cub1=\E[D, 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[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, + el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, + il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, + invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m, + rmul=\E[24m, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m, + vpa=\E[%i%p1%dd, +# mterm normally sets $TERM to "mterm" +mterm|mouse-sun|Der Mouse term, + am, bw, mir, + it#8, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S, + cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C, + home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W, + rmir=^O, rmso=^T, smir=^Q, smso=^V, +# "mterm -type decansi" sets $TERM to "decansi" +# +# note: kdch1, kfnd, kslt are in the source code, but do not work -TD +decansi|ANSI emulation with DEC compatibility hacks, + am, mir, msgr, xenl, + colors#8, it#8, pairs#64, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + 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, cub=\E[%p1%dD, cub1=\E[D, + 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[2m, dl=\E[%p1%dM, + dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, enacs=\E(B\E)0, + home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, il=\E[%p1%dL, + il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, + is2=\E)0\E[r\017, kbs=^H, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kf1=\E[11~, + 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[12~, kf20=\E[34~, + kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, + kpp=\E[5~, kslt=\E[4~, nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR, + u7=\E[6n, vpa=\E[%i%p1%dd, + +#### VWM +# +# vwmterm is a terminal emulator written for the VWM console window manager +# +vwmterm|(vwm term), + am, bce, ccc, mir, msgr, npc, xenl, xon, + colors#8, pairs#64, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, + cub1=^H, 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, cvvis=\E[?25h, dim=\E[2m, ed=\E[J, el=\E[K, + home=\E[H, il1=\E[L, ind=^J, invis=\E[8m, 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[22~, + kf12=\E[23~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, knp=\E[6~, kpp=\E[5~, rev=\E[7m, rmacs=\E[10m, + rmam=\E[?7l, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h, + smcup=\E[?1049h, smso=\E[3m, smul=\E[4m, + +#### MGR +# +# MGR is a Bell Labs window system lighter-weight than X. +# These entries describe MGR's xterm-equivalent. +# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997 +# + +mgr|Bellcore MGR (non X) window system terminal emulation, + am, km, + bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=^M, + csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er, + cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h, + dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>, + dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u, + ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>, + il1=\Ea$<3>, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, nel=^M^J, rev=\E1n, rmam=\E5S, + rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n, + smul=\E4n, +mgr-sun|Mgr window with Sun keyboard, + ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z, + kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z, + kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, + kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, + kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, + kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z, + kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr, +mgr-linux|Mgr window with Linux keyboard, + ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~, + kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, kf1=\E[[A, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, + kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, knp=\E[6~, kpp=\E[5~, use=mgr, + +#### SIMPLETERM +# st.suckless.org +# st-0.1.1 +# +# Note: the original terminfo description uses leading blank to persuade +# ncurses to use "st" as its name. Proper fix for that is to use "st" as an +# alias. +# +# Reading the code shows it should work for aixterm 16-colors +# - added st-16color +# +# Using tack: +# - set eo (erase-overstrike) +# - set xenl +# - tbc doesn't work +# - hts works +# - cbt doesn't work +# - shifted cursor-keys send sequences like rxvt +# - sgr referred to unimplemented "invis" mode. +# Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis +simpleterm|st| simpleterm, + am, eo, mir, msgr, ul, xenl, + colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J, + cnorm=\E[?12l\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, + il1=\E[L, ind=^J, indn=\E[%p1%dS, kbs=\177, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, + kend=\E[4~, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, + kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[15~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, knp=\E[6~, kpp=\E[5~, op=\E[37;40m, rc=\E8, + rev=\E[7m, rmacs=\E(B, rmso=\E[m, rmul=\E[m, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, + sgr0=\E[0m, smacs=\E(0, smso=\E[7m, smul=\E[4m, +st-16color|simpleterm with 16-colors, + use=ibm+16color, use=simpleterm, +# 256 colors "works", but when running xterm's test-scripts, some garbage is +# shown in the titlebar. +st-256color|simpleterm with 256 colors, + ccc@, + initc@, use=simpleterm, use=xterm+256color, + +### TERMINATOR +# http://software.jessies.org/terminator/ +# Tested using their Debian package org.jessies.terminator 6.104.3256 on 64-bit +# Debian/current -TD (2011/8/20) +# +# There are some packaging problems: +# a) using Java, the program starts off using 50Mb, and climbs from there, +# up to 114Mb after testing (no scrollback). +# b) it insists on reinstalling its terminal description in $HOME/.terminfo +# (two copies, just in case the host happens to be Mac OS X). +# I deleted this after testing with tack. +# +# Issues/features found with tack: +# a) tbc does not work (implying that hts also is broken). +# Comparing with the tabs utility shows a problem with the last tabstop on +# a line. +# b) has xterm-style shifted function-key strings +# meta also is used, but control is ignored. +# c) has xterm-style modifiers for cursor keys (shift, control, shift+control, meta) +# d) some combinations of shift/control send xterm-style sequences for +# insert/delete/home/end. +# e) numeric keypad sends only numbers (compare with vttest). +# f) meta mode (km) is not implemented. +# +# Issues found with ncurses test-program: +# a) bce is inconsistently implemented +# b) widths of Unicode values above 256 do not always agree with wcwidth. +# +# Checked with vttest, found low degree of compatibility there. +# +# Checked with xterm's scripts, found that the 256-color palette is fixed. +# +# Fixes: +# a) add sgr string +# b) corrected sgr0 to reset alternate character set +# c) modified smacs/rmacs to use SCS rather than SI/SO +# d) removed bce +# e) removed km +terminator|Terminator no line wrap, + eo, mir, msgr, xenl, xon, + colors#256, cols#80, it#8, lines#24, lm#0, pairs#32767, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J, + cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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, + dl=\E[%p1%dM, dl1=\E[M, dsl=\E]2;\007, ed=\E[J, el=\E[K, + el1=\E[1K, enacs=\E(B\E)0, flash=^G, fsl=^G, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, + ind=^J, is1=\E[?47l\E=\E[?1l, + is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, + kf15=\E[28~, kf16=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, + rmcup=\E[?47l\E8, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, + rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, + rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>, + s0ds=\E(B, s1ds=\E(0, sc=\E7, setab=\E[48;5;%p1%dm, + setaf=\E[38;5;%p1%dm, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[m\E(B, smacs=\E(0, smcup=\E7\E[?47h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, tbc=\E[3g, tsl=\E]2;%p1, + vpa=\E[%i%p1%dd, + +######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS +# + +# Columbus UNIX virtual terminal. This terminal also appears in +# UNIX 4.0 and successors as line discipline 1 (?), but is +# undocumented and does not really work quite right. +cbunix|cb unix virtual terminal, + OTbs, am, da, db, + cols#80, lines#24, lm#0, + bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EG%p2%c%p1%c, cuu1=\EA, dch1=\EM, dl1=\EN, ed=\EL, + el=\EK, ich1=\EO, il1=\EP, ind=^J, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, khome=\EE, rmso=\Eb^D, rmul=\Eb^A, + smso=\Ea^D, smul=\Ea^A, +# (vremote: removed obsolete ":nl@:" -- esr) +vremote|virtual remote terminal, + am@, + cols#79, use=cbunix, + +pty|4bsd pseudo teletype, + cup=\EG%p1%{32}%+%c%p2%{32}%+%c, rmso=\Eb$, rmul=\Eb!, + smso=\Ea$, smul=\Ea!, use=cbunix, + +# The codes supported by the term.el terminal emulation in GNU Emacs 19.30 +eterm|gnu emacs term.el terminal emulation, + am, mir, xenl, + cols#80, lines#24, + bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, rev=\E[7m, + rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m, + smul=\E[4m, + +# The codes supported by the term.el terminal emulation in GNU Emacs 22.2 +eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96, + am, mir, msgr, xenl, + colors#8, cols#80, lines#24, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kbs=\177, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~, + knp=\E[6~, kpp=\E[5~, op=\E[39;49m, rc=\E8, rev=\E[7m, + ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec, + sc=\E7, setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm, + sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, + sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, + u6=\E[%i%d;%dR, u7=\E[6n, + +# Entries for use by the `screen' program by Juergen Weigert, +# Michael Schroeder, Oliver Laumann. The screen and +# screen-w entries came with version 3.7.1. The screen2 and screen3 entries +# come from University of Wisconsin and may be older. +# (screen: added <cnorm> on ANSI model -- esr) +# +# 'screen' defines extensions to termcap. Some are used in its terminal +# description: +# G0 (bool) Terminal can deal with ISO 2022 font selection sequences. +# AX (bool) Does understand ANSI set default fg/bg color +# (\E[39m / \E[49m). +# S0 (str) Switch charset 'G0' to the specified charset. +# E0 (str) Switch charset 'G0' back to standard charset. +# +# tested with screen 3.09.08 +screen|VT 100/ANSI X3.64 virtual terminal, + OTbs, OTpt, am, km, mir, msgr, xenl, G0, + colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1, + acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, + cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, + flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcbt=\E[Z, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, + nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[23m, + rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B, + S0=\E(%p1%c, use=ecma+color, +# The bce and status-line entries are from screen 3.9.13 (and require some +# changes to .screenrc). +screen-bce|VT 100/ANSI X3.64 virtual terminal with bce, + bce, + ech@, use=screen, +screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line, + dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen, + +# ====================================================================== +# Entries for GNU Screen with 16 colors. +# Those variations permit to benefit from 16 colors palette, and from +# bold font and blink attribute separated from bright colors. But they +# are less portable than the generic "screen" 8 color entries: Their +# usage makes real sense only if the terminals you attach and reattach +# do all support 16 color palette. + +screen-16color|GNU Screen with 16 colors, + use=ibm+16color, use=screen, + +screen-16color-s|GNU Screen with 16 colors and status line, + use=ibm+16color, use=screen-s, + +screen-16color-bce|GNU Screen with 16 colors and BCE, + use=ibm+16color, use=screen-bce, + +screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line, + bce, use=ibm+16color, use=screen-s, + +# ====================================================================== +# Entries for GNU Screen 4.02 with --enable-colors256. + +screen-256color|GNU Screen with 256 colors, + ccc@, + initc@, use=xterm+256color, use=screen, + +screen-256color-s|GNU Screen with 256 colors and status line, + ccc@, + initc@, use=xterm+256color, use=screen-s, + +screen-256color-bce|GNU Screen with 256 colors and BCE, + ccc@, + initc@, use=xterm+256color, use=screen-bce, + +screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line, + bce, ccc@, + initc@, use=xterm+256color, use=screen-s, + +# ====================================================================== + +# Read the fine manpage: +# When screen tries to figure out a terminal name for +# itself, it first looks for an entry named "screen.<term>", +# where <term> is the contents of your $TERM variable. If +# no such entry exists, screen tries "screen" (or "screen-w" +# if the terminal is wide (132 cols or more)). If even this +# entry cannot be found, "vt100" is used as a substitute. +# +# Notwithstanding the manpage, screen uses its own notion of the termcap +# and some keys from "screen.<term>" are ignored. Here is an entry which +# covers those (tested with screen 4.00.02) -TD +screen+fkeys|function-keys according to screen, + kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@, + khome=\E[1~, kslt@, +# +# Here are a few customized entries which are useful -TD +# +# Notes: +# (a) screen does not support invis. +# (b) screen's implementation of bw is incorrect according to tack. +# (c) screen appears to hardcode the strings for khome/kend, making it +# necessary to override the "use=" clause's values (screen+fkeys). +# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry, +# which is NOT the same as the terminfo screen.<term>. +# (e) when screen finds one of these customized entries, it sets $TERM to +# match. Hence, no "screen.xterm" entry is provided, since that would +# create heartburn for people running remote xterm's. +# +# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV +# since the default translations override the built-in keycode +# translation. They are suppressed here to show what is tested by tack. +screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm, + bce@, bw, + invis@, kIC@, kNXT@, kPRV@, meml@, memu@, + sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m, + use=screen+fkeys, use=xterm-new, +# xterm-r6 does not really support khome/kend unless it is propped up by +# the translations resource. +screen.xterm-r6|screen customized for X11R6 xterm, + bw, use=screen+fkeys, use=xterm-r6, +# Color applications running in screen and TeraTerm do not play well together +# on Solaris because Sun's curses implementation gets confused. +screen.teraterm|disable ncv in teraterm, + ncv#127, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + use=screen+fkeys, use=screen, +# Other terminals +screen.rxvt|screen in rxvt, + bw, XT, + cvvis@, flash@, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, use=screen+fkeys, use=vt100+enq, + use=rxvt+pcfkeys, use=vt220+keypad, use=screen, +screen.Eterm|screen in Eterm, + use=screen+fkeys, use=Eterm, +screen.mrxvt|screen in mrxvt, + use=screen+fkeys, use=mrxvt, +screen.vte|screen in any VTE-based terminal, + use=screen+fkeys, use=vte, +screen.gnome|screen in GNOME Terminal, + use=screen+fkeys, use=gnome, +screen.konsole|screen in KDE console window, + use=screen+fkeys, use=konsole, +# fix the backspace key +screen.linux|screen in linux console, + bw, + kbs=\177, kcbt@, use=screen+fkeys, use=screen, +screen.mlterm|screen in mlterm, + use=screen+fkeys, use=mlterm, + +# The default "screen" entry is reasonably portable, but not optimal for the +# most widely-used terminal emulators. The "bce" capability is supported in +# screen since 3.9.13, and when used, will require fewer characters to be sent +# to the terminal for updates. +# +# If you are using only terminals which support bce, then you can use this +# feature in your screen configuration. +# +# Adding these lines to your ".screenrc" file will allow using these customized +# entries: +# term screen-bce +# bce on +# defbce on +screen-bce.xterm-new|screen optimized for modern xterm, + bce, + ech@, use=screen.xterm-new, +screen-bce.rxvt|screen optimized for rxvt, + bce, + ech@, use=screen.rxvt, +screen-bce.Eterm|screen optimized for Eterm, + bce, + ech@, use=screen.Eterm, +screen-bce.mrxvt|screen optimized for mrxvt, + bce, + ech@, use=screen.mrxvt, +screen-bce.gnome|screen optimized for GNOME-Terminal, + bce, + ech@, use=screen.gnome, +screen-bce.konsole|screen optimized for KDE console window, + bce, + ech@, use=screen.konsole, +screen-bce.linux|screen optimized for linux console, + bce, + ech@, use=screen.linux, +screen-bce.mlterm|screen optimized for mlterm, + bce, + ech@, use=screen.mlterm, + +screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols, + cols#132, use=screen, + +screen2|old VT 100/ANSI X3.64 virtual terminal, + cols#80, it#8, lines#24, + cbt=\E[Z, clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=^H, + 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL, + il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, + kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH, + nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m, + rmul=\E[24m, rs1=\Ec, sc=\E7, sgr0=\E[m, smir=\E[4h, + smso=\E[3m, smul=\E[4m, tbc=\E[3g, +# (screen3: removed unknown ":xv:LP:G0:" -- esr) +screen3|older VT 100/ANSI X3.64 virtual terminal, + km, mir, msgr, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, + dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, + rmir=\E[4l, rmkx=\E>, rmso=\E[23m, rmul=\E[24m, rs1=\Ec, + sc=\E7, sgr0=\E[m, smir=\E[4h, smkx=\E=, smso=\E[3m, + smul=\E[4m, tbc=\E[3g, + +# Francesco Potorti <F.Potorti@cnuce.cnr.it>: +# NCSA telnet is one of the most used telnet clients for the Macintosh. It has +# been maintained until recently by the National Center for Supercomputer +# Applications, and it is feature rich, stable and free. It can be downloaded +# from www.ncsa.edu. This terminfo description file is based on xterm-vt220, +# xterm+sl, and the docs at NCSA. It works well. +# +# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode +# The terminal options should be set as follows: +# Xterm sequences ON +# use VT wrap mode ON +# use Emacs arrow keys OFF +# CTRL-COMND is Emacs meta ON +# 8 bit mode ON +# answerback string: "ncsa-vt220-8" +# setup keys: all disabled +# +# Application mode is not used. +# +# Other special mappings: +# Apple VT220 +# HELP Find +# HOME Insert here +# PAGEUP Remove +# DEL Select +# END Prev Screen +# PAGEDOWN Next Screen +# +# Though it supports ANSI color, NCSA Telnet uses color to represent blinking +# text. +# +# The status-line manipulation is a mapping of the xterm-compatible control +# sequences for setting the window-title. So you must use tsl and fsl in +# pairs, since the latter ends the string that is loaded to the window-title. +ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, + am, hs, km, mir, msgr, xenl, + acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E]0;\007, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, + flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, ht=^I, hts=\EH, + ich=\E[%p1%d@, if=/usr/share/tabset/vt100, + il=\E[%p1%dL, il1=\E[L, ind=\n$<150*>, + is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[4~, kend=\E[5~, kf1=\E[17~, kf10=\E[28~, + kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, kf14=\E[33~, + kf15=\E[34~, kf2=\E[18, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, + kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khlp=\E[1~, + khome=\E[2~, knp=\E[6~, kpp=\E[3~, mc4=\E[4i, mc5=\E[5i, + rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EM, + rmacs=\E(B, rmam=\E[?7l, rmcup=\E[2J\E8, rmir=\E[4l, + rmso=\E[27m, rmul=\E[24m, + rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E7, + smir=\E[4h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, tsl=\E]0;, + u8=\E[?62;1;6c, use=ansi+enq, +ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, + use=ncsa-m, use=klone+color, +ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, + hs@, + dsl@, fsl@, tsl@, use=ncsa, +ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, + hs@, + dsl@, fsl@, tsl@, use=ncsa-m, +# alternate -TD: +# The documented function-key mapping refers to the Apple Extended Keyboard +# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style +# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on +# some keyboards and many applications require these as F1-F4. +# +ncsa-vt220|NCSA Telnet using vt220-compatible function keys, + kf1=\EOP, 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=\EOQ, + kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, use=ncsa, + +#### Pilot Pro Palm-Top +# +# Termcap for Top Gun Telnet and SSH on the Palm Pilot. +# http://www.ai/~iang/TGssh/ +pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional, + OTbs, am, xenl, + cols#39, lines#16, + bel=^G, clear=\Ec, cr=^M, cub1=^H, cud1=^J, + cup=\Em%p1%{32}%+%c%p2%{32}%+%c, home=\Em\s\s, ht=^I, + ind=^J, kbs=^H, kcub1=^H, kcud1=^J, knp=^L, kpp=^K, nel=\Em~\s, + rmso=\EB, smso=\Eb, + +# From: Federico Bianchi <bianchi@www.arte.unipi.it> +# These entries are for the Embeddable Linux Kernel System (ELKS) +# project - an heavily stripped down Linux to be run on 16 bit +# boxes or, eventually, to be used in embedded systems - and have been +# adapted from the stock ELKS termcap. The project itself looks stalled, +# and the latest improvements I know of date back to March 2000. +# +# To cope with the ELKS dumb console I added an "elks-glasstty" entry; +# as an added bonus, this deals with all the capabilities common to +# both VT52 and ANSI (or, eventually, "special") modes. + +elks-glasstty|ELKS glass-TTY capabilities, + OTbs, am, + cols#80, it#8, lines#25, + bel=^G, cr=^M, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, + nel=^M^J, + +elks-vt52|ELKS vt52 console, + clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\EK, + home=\EH, use=elks-glasstty, + +elks-ansi|ELKS ANSI console, + clear=\E[H\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, + rmso=\E[m, smso=\E[7m, use=elks-glasstty, + +# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation +# instead of VT52, but the "elks" entry still refers to the latter. + +elks|default ELKS console, + use=elks-vt52, + +# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS +# one but in screen size + +sibo|ELKS SIBO console, + cols#61, it#8, lines#20, use=elks-vt52, + +######## COMMERCIAL WORKSTATION CONSOLES +# + +#### Alpha consoles +# + +# This is from the OSF/1 Release 1.0 termcap file +pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation, + am, xon, + cols#80, lines#25, + bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, + el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, + nel=^M^J, rev=\E[7m, rmso=\E[m, sgr0=\E[m, smso=\E[7m, + +#### Sun consoles +# + +# :is1: resets scrolling region in case a previous user had used "tset vt100" +oldsun|Sun Microsystems Workstation console, + OTbs, am, km, mir, msgr, + cols#80, it#8, lines#34, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, + dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, + is1=\E[1r, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, + rmso=\E[m, sgr0=\E[m, smso=\E[7m, +# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995 +# <lines> capability later corrected by J.T. Conklin <jtc@cygnus.com> +# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998) +sun-il|Sun Microsystems console with working insert-line, + am, km, msgr, + cols#80, lines#34, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, + dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, + kb2=\E[218z, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kdch1=\177, kend=\E[220z, kf1=\E[224z, + kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, kf2=\E[225z, + kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, kf6=\E[229z, + kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, khome=\E[214z, + kich1=\E[247z, knp=\E[222z, kopt=\E[194z, kpp=\E[216z, + kres=\E[193z, kund=\E[195z, rev=\E[7m, rmso=\E[m, rmul@, + rs2=\E[s, sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m, + smso=\E[7m, u8=\E[1t, u9=\E[11t, +# On some versions of CGSIX framebuffer firmware (SparcStation 5), <il1>/<il> +# flake out on the last line. Unfortunately, without them the terminal has no +# way to scroll. +sun-cgsix|sun-ss5|Sun SparcStation 5 console, + il@, il1@, use=sun-il, +# If you are using an SS5, change the sun definition to use sun-ss5. +sun|sun1|sun2|Sun Microsystems Inc. workstation console, + use=sun-il, + +# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985 +sun-s|Sun Microsystems Workstation window with status line, + hs, + dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun, +sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs, + hs, + dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun-e, +sun-48|Sun 48-line window, + cols#80, lines#48, use=sun, +sun-34|Sun 34-line window, + cols#80, lines#34, use=sun, +sun-24|Sun 24-line window, + cols#80, lines#24, use=sun, +sun-17|Sun 17-line window, + cols#80, lines#17, use=sun, +sun-12|Sun 12-line window, + cols#80, lines#12, use=sun, +sun-1|Sun 1-line window for sysline, + eslok, hs, + cols#80, lines#1, + dsl=^L, fsl=\E[K, tsl=^M, use=sun, +sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character, + ich1@, rmir@, smir@, use=sun, +sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history, + lines#35, + rmcup=\E[>4h, smcup=\E[>4l, use=sun, +sun-type4|Sun Workstation console with type 4 keyboard, + kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z, + kcuu1=\E[215z, use=sun-il, + +# Most of the current references to sun-color are from users wondering why this +# is the default on install. Details from reading the wscons manpage, adding +# cub, etc., here (rather than in the base sun-il entry) since it is not clear +# when those were added -TD (2005-05-28) +# +# According to wscons manpage, color is supported only on IA systems. +# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons +# does not list these. It also sets ncv#3, however that corresponds to +# underline and standout. +# +# Since the documentation and terminfo do not agree, see also current code at +# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c +# +# That (actually a different driver which "supports" sun-color) also supports +# these features: +# vpa=\E[%i%p1%dd +# hpa=\E[%i%p1%d` +# cbt=\E[Z +# dim=\E[2m +# blink=\E[5m +# It supports bold, but not underline -TD (2009-09-19) +sun-color|Sun Microsystems Workstation console with color support (IA systems), + colors#8, ncv#3, pairs#64, + cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, + cuu=\E[%p1%dA, home=\E[H, op=\E[0m, setab=\E[4%p1%dm, + setaf=\E[3%p1%dm, + setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, + smso=\E[1m, use=sun, + +#### Iris consoles +# + +# (wsiris: this had extension capabilities +# :HS=\E7F2:HE=\E7F7:\ +# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite: +# See the note on Iris extensions near the end of this file. +# Finally, removed suboptimal <clear>=\EH\EJ and added <cud1> & +# <flash> from BRL -- esr) +wsiris|iris40|iris emulating a 40 line visual 50 (approximately), + OTbs, OTnc, OTpt, am, + OTkn#3, cols#80, it#8, lines#40, + OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB, + cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, + cvvis=\E;, dim=\E7F2, dl1=\EM, ed=\EJ, el=\EK, + flash=\E7F4\E7B1\013\E7F7\E7B0, home=\EH, ht=^I, il1=\EL, + ind=^J, is2=\E7B0\E7F7\E7C2\E7R3, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, + kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, ri=\EI, + rmso=\E0@, rmul=\E7R3\E0@, sgr0=\E7F7, smso=\E9P, + smul=\E7R2\E9P, + +#### NeWS consoles +# +# Console terminal windows under the NeWS (Sun's Display Postscript windowing +# environment). Note: these have nothing to do with Sony's News workstation +# line. +# + +# Entry for NeWS's psterm from Eric Messick & Hugh Daniel +# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr) +psterm|psterm-basic|NeWS psterm-80x34, + OTbs, am, hs, km, ul, + cols#80, it#8, lines#34, + blink=\EOb, bold=\EOd, clear=^L, csr=\EE%p1%d;%p2%d;, + cub1=\ET, cud1=\EP, cuf1=\EV, cup=\E%p1%d;%p2%d;, cuu1=\EY, + dch1=\EF, dl1=\EK, ed=\EB, el=\EC, flash=\EZ, fsl=\ENl, + home=\ER, ht=^I, il1=\EA, ind=\EW, is1=\EN*, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ll=\EU, rc=^\, rev=\EOr, + ri=\EX, rmcup=\ENt, rmir=\ENi, rmso=\ENo, rmul=\ENu, sc=^], + sgr0=\EN*, smcup=\EOt, smir=\EOi, smso=\EOo, smul=\EOu, + tsl=\EOl, +psterm-96x48|NeWS psterm 96x48, + cols#96, lines#48, use=psterm, +psterm-90x28|NeWS psterm 90x28, + cols#90, lines#28, use=psterm, +psterm-80x24|NeWS psterm 80x24, + cols#80, lines#24, use=psterm, +# This is a faster termcap for psterm. Warning: if you use this termcap, +# some control characters you type will do strange things to the screen. +# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr) +psterm-fast|NeWS psterm fast version (flaky ctrl chars), + OTbs, am, hs, km, ul, + cols#80, it#8, lines#34, + blink=^Ob, bold=^Od, clear=^L, csr=\005%p1%d;%p2%d;, + cub1=^T, cud1=^P, cuf1=^V, cup=\004%p1%d;%p2%d;, cuu1=^Y, + dch1=^F, dl1=^K, ed=^B, el=^C, flash=^Z, fsl=^Nl, home=^R, ht=^I, + il1=^A, ind=^W, is1=^N*, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, ll=^U, rc=^\, rev=^Or, ri=^X, rmcup=^Nt, rmir=^Ni, + rmso=^No, rmul=^Nu, sc=^], sgr0=^N*, smcup=^Ot, smir=^Oi, + smso=^Oo, smul=^Ou, tsl=^Ol, + +#### NeXT consoles +# +# Use `glasstty' for the Workspace application +# + +# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995 +next|NeXT console, + am, xt, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, + ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, + rmso=\E[4;1m, sgr0=\E[m, smso=\E[4;2m, +nextshell|NeXT Shell application, + am, + cols#80, + bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, kbs=^H, kcub1=^H, + kcud1=^J, nel=^M^J, + +#### Sony NEWS workstations +# + +# (news-unk: this had :KB=news: -- esr) +news-unk|SONY NEWS vt100 emulator common entry, + OTbs, OTpt, am, xenl, + cols#80, + OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, + 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, dl=\E[%p1%dM, dl1=\E[M, + ed=\E[J, el=\E[K, home=\E[H, ht=^I, + if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L, + is2=\E[?7h\E[?1l\E[?3l\E7\E8, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOY, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, + kf8=\EOW, kf9=\EOX, rc=\E8, rev=\E[7m, ri=\EM, + rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r, sc=\E7, + sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, +# +# (news-29: this had :TY=ascii: --esr) +news-29, + lines#29, use=news-unk, +# (news-29-euc: this had :TY=euc: --esr) +news-29-euc, + use=news-29, +# (news-29-sjis: this had :TY=sjis: --esr) +news-29-sjis, + use=news-29, +# +# (news-33: this had :TY=ascii: --esr) +news-33, + lines#33, use=news-unk, +# (news-33-euc: this had :TY=euc: --esr) +news-33-euc, + use=news-33, +# (news-33-sjis: this had :TY=sjis: --esr) +news-33-sjis, + use=news-33, +# +# (news-42: this had :TY=ascii: --esr) +news-42, + lines#42, use=news-unk, +# (news-42-euc: this had :TY=euc: --esr) +news-42-euc, + use=news-42, +# (news-42-sjis: this had :TY=sjis: --esr) +news-42-sjis, + use=news-42, +# +# NEWS-OS old termcap entry +# +# (news-old-unk: this had :KB=news:TY=sjis: --esr) +news-old-unk|SONY NEWS vt100 emulator common entry, + OTbs, OTpt, am, xenl, + cols#80, vt#3, + OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J, + 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, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, if=/usr/share/tabset/vt100, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, ri=\EM, + rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, +# +# (nwp512: this had :DE=^H:, which I think means <OTbs> --esr) +nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines, + OTbs, + lines#40, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, + use=news-old-unk, +# +# (nwp512-a: this had :TY=ascii: and the alias vt100-bm --esr) +nwp512-a|nwp514-a|news-a|news42|news40-a|sony vt100 emulator 42 line, + lines#42, + is2=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8, + use=news-old-unk, +# +# (nwp-512-o: this had :KB=nwp410:DE=^H: I interpret the latter as <OTbs>. --esr) +nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines, + OTbs, + lines#40, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, + use=news-old-unk, +# +# (nwp513: this had :DE=^H: and the alias vt100-bm --esr) +nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines, + OTbs, + lines#31, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, + use=news-old-unk, +# +# (nwp513-a: this had :TY=ascii: and :DE=^H:, which I interpret as <OTbs>; --esr) +# also the alias vt100-bm. +nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony vt100 emulator 33 lines, + OTbs, + lines#33, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8, + use=news-old-unk, +# +# (nwp513-o: had :DE=^H:, I think that's <OTbs>; also the alias vt100-bm --esr) +nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 33 lines, + OTbs, + lines#31, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, + use=news-old-unk, +# +# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr) +news28|sony vt100 emulator 28 lines, + OTbs, + lines#28, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28r\E8, + use=news-old-unk, +# +# (news29: this had :TY=ascii:KB=nws1200:\ --esr) +news29|news28-a|sony vt100 emulator 29 lines, + lines#29, + is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29r\E8, + use=news-old-unk, +# +# (news511: this had :TY=sjis: --esr) +nwp511|nwp-511|nwp-511 vt100, + OTbs, OTpt, am, xenl, + cols#80, lines#24, + clear=\E[;H\E[2J$<20/>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A$<2/>, dl1=\E[M, + ed=\E[J$<30/>, el=\E[K$<3/>, + flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, + il1=\E[L, is2=\E[?5l\E[?1l\E>\E[?7h\E[?8h, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\E#W, khome=\E[H, + ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, + rs2=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h, + smso=\E[7m$<2/>, smul=\E[4m$<2/>, +# (news517: this had :TY=sjis:. --esr) +nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows, + eslok, hs, + cols#80, lines#30, + OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, + is2=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + tsl=\E[1$}\E[;%df, use=vt200, +# (news517-w: this had :TY=sjis:. --esr) +nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows, + eslok, hs, + cols#132, lines#50, + OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, + is2=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, + tsl=\E[1$}\E[;%df, use=vt200, + +#### Common Desktop Environment +# + +# This ships with Sun's CDE in Solaris 2.5 +# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net> +dtterm|CDE desktop terminal, + am, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, lm#0, ncv@, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + 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, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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[2m, dl=\E[%p1%dM, + dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H, + ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, + ind=\ED, invis=\E[8m, is2=\E F\E>\E[?1l\E[?7h\E[?45l, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kf1=\E[11~, 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[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m, + sc=\E7, + sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, use=ecma+color, + +#### Non-Unix Consoles +# + +#### EMX termcap.dat compatibility modes +# +# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the +# no_color_video to inform the application that standout(1), underline(2) +# reverse(4) and invisible(64) don't work with color. +emx-base|DOS special keys, + bce, bw, + it#8, ncv#71, + bel=^G, use=ansi.sys, + +# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b, +# a Unix-style environment used on OS/2. (Note that the suffix makes some +# names longer than 14 characters, the nominal maximum). +# +# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs. +ansi-emx|ANSI.SYS color, + am, bce, eo, mir, msgr, xon, + colors#8, cols#80, it#8, lines#25, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[1;33;44m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, + cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, + home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, + kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J, + rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m, + rmso=\E[0;44m\E[1;33m, rmul=\E[0;44m\E[1;33m, rs1=\Ec, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr0=\E[0m\E[1;33;44m, smir=\E[4h, smpch=\E[11m, + smso=\E[0;31;47m, smul=\E[1;31;44m, tbc=\E[3g, u8=\E[?6c, + u9=\E[c, use=emx-base, +# nice colors for Emacs (white on blue, mode line white on cyan) +ansi-color-2-emx|ANSI.SYS color 2, + clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m, + rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec, + setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m, + smul=\E[1;36;44m, use=ansi-emx, +# nice colors for Emacs (white on black, mode line black on cyan) +ansi-color-3-emx|ANSI.SYS color 3, + clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m, + rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec, + setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m, + smul=\E[0;36;40m, use=ansi-emx, +mono-emx|stupid monochrome ansi terminal with only one kind of emphasis, + am, + cols#80, it#8, lines#24, + clear=\E[H\E[2J$<50>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, + ht=^I, kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, + kcuu1=\0H, kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, + kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, + kich1=\0R, kll=\0O, knp=\0Q, kpp=\0I, nel=^M^J, rev=\E[7m, + sgr0=\E[0m, + +# Use this for cygwin32 (tested with beta 19.1) +# underline is colored bright magenta +# shifted kf1-kf12 are kf11-kf22 +cygwinB19|ansi emulation for cygwin32, + 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~, rmam@, smam@, + use=ansi.sys, + +# Use this for cygwin (tested with version 1.1.0). +# I've combined pcansi and linux. Some values of course were different and +# I've indicated which of these were and which I used. +# Cheers, earnie_boyd@yahoo.com +# several changes based on running with tack and comparing with older entry -TD +# more changes from csw: +# add cbt [backtab] +# remove eo [erase overstrike with blank] +# change clear was \E[H\E[J now \E[2J (faster?) +# remove cols +# remove lines +# remove ncv#3 [colors collide with highlights, bitmask] not applicable +# to MSDOS box? +# add cub [cursor back param] +# add cuf [cursor forward param] +# add cuu [cursor up param] +# add cud [cursor down param] +# add hs [has status line] +# add fsl [return from status line] +# add tsl [go to status line] +# add smacs [Start alt charset] (not sure if this works) +# add rmacs [End alt charset] (ditto) +# add smcup [enter_ca_mode] (save console; thanks Corinna) +# add rmcup [exit_ca_mode] (restore console; thanks Corinna) +# add kb2 [center of keypad] +# add u8 [user string 8] \E[?6c +# add el [clear to end of line] \E[K +# Notes: +# cnorm [make cursor normal] not implemented +# flash [flash] not implemented +# blink [blink] not implemented very usefully in cygwin? \E[5m +# dim [dim] not implemented very usefully in cygwin? \E[2m +# cub1 [cursor back 1] typically \E[D, but ^H is faster? +# kNXT [shifted next key] not implemented +# kPRV [shifted prev key] not implemented +# khome [home key] really is \E[1~ NOT \E[H +# tbc [clear tab stops] not implemented +# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni +# smpch [Start PC charset] is \E[11m, same as smacs +# rmpch [End PC charset] is \E[10m, same as rmacs +# mir [move in insert mode] fails in tack? +# bce [back color erase] causes problems with change background color? +# cvvis [make cursor very visible] causes a stackdump when testing with +# testcurs using the output option? \E[?25h\E[?8c +# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c +# ech [erase characters param] broken \E[%p1%dX +# kcbt [back-tab key] not implemented in cygwin? \E[Z +# +# 2005/11/12 -TD +# Remove cbt since it does not work in current cygwin +# Add 'mir' and 'in' flags based on tack +cygwin|ansi emulation for Cygwin, + am, hs, mir, msgr, xon, + colors#8, it#8, pairs#64, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, + cub1=^H, 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, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kb2=\E[G, + kbs=^H, 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, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, + rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, + sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, + sgr0=\E[0;10m, smacs=\E[11m, smcup=\E7\E[?47h, + smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, tsl=\E];, + vpa=\E[%i%p1%dd, use=vt102+enq, + +# I've supplied this so that you can help test new values and add other +# features. Cheers, earnie_boyd@yahoo.com. +# +# Some features are from pcansi. The op value is from linux. Function-keys +# are from linux. These have been tested not to cause problems. xenl was in +# this list, but DOES cause problems so it has been removed +cygwinDBG|Debug Version for Cygwin, + am, eo, mir, msgr, xon, + colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, cub1=\E[D, + 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[2m, dl=\E[%p1%dM, + dl1=\E[M, 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, kNXT=\E[6$, kPRV=\E[5$, + kb2=\E[G, kbs=^H, 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, + rmso=\E[m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, + sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt102+enq, + +# Key definitions: +# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the +# encodings used by other x86 environments. All others are invented for DJGPP. +# Oddly enough, while several combinations of modifiers are tabulated, there is +# none for shifted cursor keys. +# +# F1 \E[[A +# F2 \E[[B +# F3 \E[[C +# F4 \E[[D +# F5 \E[[E +# F6 \E[17~ +# F7 \E[18~ +# F8 \E[19~ +# F9 \E[20~ +# F10 \E[21~ +# F11 \E[23~ +# F12 \E[24~ +# +# Delete \E[3~ +# Down Arrow \E[B +# End \E[4~ +# Home \E[1~ +# Insert \E[2~ +# Left Arrow \E[D +# Page Down \E[6~ +# Page Up \E[5~ +# Right Arrow \E[C +# Up Arrow \E[A +# +# Shift-F1 \E[25~ +# Shift-F2 \E[26~ +# Shift-F3 \E[27~ +# Shift-F4 \E[28~ +# Shift-F5 \E[29~ +# Shift-F6 \E[30~ +# Shift-F7 \E[31~ +# Shift-F8 \E[32~ +# Shift-F9 \E[33~ +# Shift-F10 \E[34~ +# Shift-F11 \E[35~ +# Shift-F12 \E[36~ +# +# Ctrl-F1 \E[47~ +# Ctrl-F2 \E[48~ +# Ctrl-F3 \E[49~ +# Ctrl-F4 \E[50~ +# Ctrl-F5 \E[51~ +# Ctrl-F6 \E[52~ +# Ctrl-F7 \E[53~ +# Ctrl-F8 \E[54~ +# Ctrl-F9 \E[55~ +# Ctrl-F10 \E[56~ +# Ctrl-F11 \E[57~ +# Ctrl-F12 \E[58~ +# +# Ctrl-Delete \E[43~ +# Ctrl-Down Arrow \E[38~ +# Ctrl-End \E[44~ +# Ctrl-Home \E[41~ +# Ctrl-Insert \E[42~ +# Ctrl-Left Arrow \E[39~ +# Ctrl-Page Down \E[46~ +# Ctrl-Page Up \E[45~ +# Ctrl-Right Arrow \E[40~ +# Ctrl-Up Arrow \E[37~ +# +# Alt-F1 \E[59~ +# Alt-F2 \E[60~ +# Alt-F3 \E[61~ +# Alt-F4 \E[62~ +# Alt-F5 \E[63~ +# Alt-F6 \E[64~ +# Alt-F7 \E[65~ +# Alt-F8 \E[66~ +# Alt-F9 \E[67~ +# Alt-F10 \E[68~ +# Alt-F11 \E[79~ +# Alt-F12 \E[80~ +# +# Alt-Delete \E[65~ +# Alt-Down Arrow \E[60~ +# Alt-End \E[66~ +# Alt-Home \E[41~ +# Alt-Insert \E[64~ +# Alt-Left Arrow \E[61~ +# Alt-Page Down \E[68~ +# Alt-Page Up \E[67~ +# Alt-Right Arrow \E[62~ +# Alt-Up Arrow \E[59~ +# +# Also: +# Alt-A \E[82~ +# Alt-B \E[82~ +# Alt-C \E[83~ +# Alt-D \E[84~ +# Alt-E \E[85~ +# Alt-F \E[86~ +# Alt-G \E[87~ +# Alt-H \E[88~ +# Alt-I \E[89~ +# Alt-J \E[90~ +# Alt-K \E[91~ +# Alt-L \E[92~ +# Alt-M \E[93~ +# Alt-N \E[94~ +# Alt-O \E[95~ +# Alt-P \E[96~ +# Alt-Q \E[97~ +# Alt-R \E[98~ +# Alt-S \E[99~ +# Alt-T \E[100~ +# Alt-U \E[101~ +# Alt-V \E[102~ +# Alt-W \E[103~ +# Alt-X \E[104~ +# Alt-Y \E[105~ +# Alt-Z \E[106~ +djgpp|ansi emulation for DJGPP alpha, + am, bce, msgr, xhp, xon, xt, + colors#8, it#8, pairs#64, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, + clear=\E[H\E[J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, 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%dG, ht=^I, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, invis=\E[8m, kbs=^H, 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~, kf2=\E[[B, 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~, nel=^M^J, + op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%e;25%;%?%p6%t;1%;%?%p7%t;8%;m, + sgr0=\E[m, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, + +djgpp203|Entry for DJGPP 2.03, + OTbs, am, + cols#80, it#8, lines#25, + bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, + kcud1=^J, nel=^M^J, + +djgpp204|Entry for DJGPP 2.04, + OTbs, am, AX, + colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, + clear=\E[H\E[2J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, + cub1=\E[D, 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, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, + dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, + il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, kf0=\E[21~, kf1=\E[[A, kf10=\E[21~, kf2=\E[[B, + 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~, + kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=^M^J, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm, + setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m, + +# This is tested using U/Win's telnet. Scrolling is omitted because it is +# buggy. Another odd bug appears when displaying "~" in alternate character +# set (the emulator spits out error messages). Compare with att6386 -TD +uwin|U/Win 3.2 console, + am, eo, in, msgr, xenl, xon, + colors#8, it#8, ncv#58, pairs#64, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, 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, ech=\E[%p1%dX, + ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, + ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[Y, kf1=\EOP, + kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, + khome=\E[H, kich1=\E[@, nel=^M^J, op=\E[39;49m, rc=\E8, + rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m, + rmso=\E[27m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, + setab=\E[4%p1%dm, setaf=\E[3%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, + +# This entry fits the Windows NT console when the _POSIX_TERM environment +# variable is set to 'on'. While the Windows NT POSIX console is seldom used, +# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP +# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating +# systems is not, and (surprise!) they match very well. +# +# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up +# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only +# are the installation instructions a pile of mind-numbing bureaucratese, +# but the termcap entry is actually broken and unusable as given; the :do: +# capability is misspelled "d". +# +# To use this, you need to a bunch of environment variables: +# +# SET _POSIX_TERM=on +# SET TERM=ansi +# SET TERMCAP=location of termcap file in POSIX file format +# which is case-sensitive. +# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap +# SET TMP=//C/TEMP +# +# Important note: setting the TMP environment variable in POSIX style renders +# it incompatible with a lot of other applications, including Visual C++. So +# you should have a separate command window just for vi. All the other +# variables may be permanently set in the Control Panel\System applet. +# +# You can find out more about the restrictions of this facility at +# <http://www.nentug.org/unix-to-nt/ntposix.htm>. +# +# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997 +ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode, + am, bw, msgr, + cols#80, it#8, lines#25, + bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, ind=\E[S, kbs=^H, kcub1=\E[D, kcud1=\E[V, + kcuf1=\E[C, kcuu1=\E[A, nel=\r\E[S, rc=\E[u, rev=\E[7m, + ri=\E[T, rmso=\E[m, sc=\E[s, sgr0=\E[0m, smso=\E[7m, +# From: jew@venus.sunquest.com +# Date: 19 Feb 93 23:41:07 GMT +# Here's a combination of ansi and vt100 termcap +# entries that works nearly perfectly for me +# (Gateway 2000 Handbook and Microsoft Works 3.0): +pcmw|PC running Microsoft Works, + am, xenl, + cols#80, it#8, lines#24, vt#3, + bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, + clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J, + cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>, + cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, + ht=^I, hts=\EH$<2/>, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\r\ED$<5/>, + rc=\E8, rev=\E[7m$<2/>, rf=/usr/share/tabset/vt100, + ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>, + tbc=\E[3g$<2/>, + +# From: Federico Bianchi +# This is the entry for the OpenNT terminal. +# The ntconsole name is for backward compatability. +# This is for OpenNT 2.0 and later. +# Later OpenNT was renamed to Interix. +# +# Presently it is distributed by Microsoft as Services For Unix (SFU). +# The 3.5 beta contains ncurses 4.2 (that is header files and executables, +# the documentation dates from 1.9.9e) -TD + +interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color, + am, bw, msgr, + colors#8, cols#80, lines#25, ncv#3, pairs#64, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD, + cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, + cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA, + kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD, + kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI, + kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM, + kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR, + kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV, + kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa, + kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe, + kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj, + kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5, + kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt, + kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy, + kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-, + kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9, + kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J, + op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, + rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec, + sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm, + sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[7m, smul=\E[4m, + +opennt-35|ntconsole-35|OpenNT-term35 compatible with color, + lines#35, use=opennt, + +opennt-50|ntconsole-50|OpenNT-term50 compatible with color, + lines#50, use=opennt, + +opennt-60|ntconsole-60|OpenNT-term60 compatible with color, + lines#60, use=opennt, + +opennt-100|ntconsole-100|OpenNT-term100 compatible with color, + lines#100, use=opennt, + +# OpenNT wide terminals +opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color, + cols#125, use=opennt, + +opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color, + lines#35, use=opennt-w, + +opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color, + lines#50, use=opennt-w, + +opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color, + lines#60, use=opennt-w, + +opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color, + cols#132, use=opennt, + +# OpenNT terminals with no smcup/rmcup (names match termcap entries) +interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color, + rmcup@, smcup@, use=opennt, + +opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color, + lines#35, use=opennt-nti, + +opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color, + lines#50, use=opennt-nti, + +opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color, + lines#60, use=opennt-nti, + +opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color, + lines#100, use=opennt-nti, + +######## COMMON TERMINAL TYPES +# +# This section describes terminal classes and maker brands that are still +# quite common, but have proprietary command sets not blessed by ANSI. +# + +#### Altos +# +# Altos made a moderately successful line of UNIX boxes. In 1990 they were +# bought out by Acer, a major Taiwanese manufacturer of PC-clones. +# Acer has a web site at http://www.acer.com. +# +# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993 +# His comments suggest they were shipped with the system. +# + +# (altos2: had extension capabilities +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ +# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\ +# :HL=^AP\r:SP=\E[i:\ +# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\ +# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\ +# Comparison with the k* capabilities makes it obvious that the c* things are +# shift keys. I have renamed them to keys 32 and up accordingly. Also, +# :sr: was given as a boolean-- esr) +altos2|alt2|altos-2|altos II, + cols#80, it#8, lines#24, xmc#0, + clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[1B, cuf1=\E[1C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M, + ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, + if=/usr/share/tabset/vt100, il1=\E[L, ind=^J, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kDL=^Am\r, + kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^AM\r, kel=^AN\r, + kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, + kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, + kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, + kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=\E[f, kil1=^AJ\r, kind=^AO\r, + nel=^M^J, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smam=\E[?7h, smso=\E[7m, smul=\E[4m, +# (altos3: had extension capabilities +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ +# :HL=^AP\r:SP=\E[i:\ +# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T: +altos3|altos5|alt3|alt5|altos-3|altos-5|altos III or V, + blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2, +altos4|alt4|altos-4|altos IV, + use=wy50, +# (altos7: had extension capabilities: +# :GG#0:GI=\EH8:GF=\EH7:\ +# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ +# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ +# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ +# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: +# Comparison with the k* capabilities makes it obvious that the c* things are +# shift keys. I have renamed them to keys 32 and up accordingly. I have +# also made this entry relative to adm12 in order to give it an <sgr>. The +# <invis> imported by use=adm+sgr may work, let me know. -- esr) +altos7|alt7|altos VII, + am, mir, + cols#80, lines#24, xmc#0, + acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt, + clear=\E+^^, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dim=\EGp, dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, il1=\EE, + ind=^J, invis=\EG1, + is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2, kDL=^Am\r, + kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=^AM\r, kel=^AN\r, + kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, + kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, + kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, + kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r, + knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=^M^J, ri=\Ej, + rmir=\Er, smir=\Eq, use=adm+sgr, +altos7pc|alt7pc|altos PC VII, + kend=\ET, use=altos7, + +#### Hewlett-Packard (hp) +# +# Hewlett-Packard +# 8000 Foothills Blvd +# Roseville, CA 95747 +# Vox: 1-(916)-785-4363 (Technical response line for VDTs) +# 1-(800)-633-3600 (General customer support) +# +# +# As of March 1998, HP no longer has any terminals in production. +# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being +# supported (they still have parts). So are the 2392a and 2394a. +# See the WORKSTATION CONSOLES section for the 700s. +# + +# Generic HP terminal - this should (hopefully) work on any HP terminal. +hpgeneric|hp|hewlett-packard generic terminal, + OTbs, OTpt, am, da, db, mir, xhp, + cols#80, lines#24, lm#0, vt#6, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\E&a%p2%dc%p1%dY$<6>, cuu1=\EA, dch1=\EP, dl1=\EM, + ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, + ind=^J, kbs=^H, kcbt=\Ei, rmir=\ER, rmso=\E&d@, rmul=\E&d@, + sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3, + vpa=\E&a%p1%dY, + +hp110|hewlett-packard model 110 portable, + lines#16, use=hpgeneric, + +hp+pfk+cr|hp function keys with CR, + kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, + kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, + +hp+pfk-cr|hp function keys w/o CR, + kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, + kf8=\Ew, + +# The hp2621s use the same keys for the arrows and function keys, +# but not separate escape sequences. These definitions allow the +# user to use those keys as arrow keys rather than as function +# keys. +hp+pfk+arrows|hp alternate arrow definitions, + kcub1=\Eu\r, kcud1=\Ew\r, kcuf1=\Ev\r, kcuu1=\Et\r, kf1@, + kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, khome=\Ep\r, kind=\Er\r, + kll=\Eq\r, kri=\Es\r, + +hp+arrows|hp arrow definitions, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, + kind=\ES, kll=\EF, kri=\ET, + +# Generic stuff from the HP 262x series +# +hp262x|HP 262x terminals, + xhp, + blink=\E&dA, dch1=\EP$<2>, ed=\EJ, ht=\011$<2>, ind=\ES, + invis=\E&dS, ip=$<2>, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, + kich1=\EQ, kil1=\EL, kind=\ES, knp=\EU, kpp=\EV, kri=\ET, + krmir=\ER, rev=\E&dB, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, + sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c, + sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, + +# Note: no <home> on HPs since that homes to top of memory, not screen. +# Due to severe 2621 braindamage, the only way to get the arrow keys to +# transmit anything at all is to turn on the function key labels +# with <smkx>, and even then the user has to hold down shift! +# The default 2621 turns off the labels except when it has to to +# enable the function keys. If your installation prefers labels +# on all the time, or off all the time (at the "expense" of the +# function keys), use 2621-nl or 2621-wl. +# +# Note: there are newer ROMs for 2621's that allow you to set +# strap A so the regular arrow keys xmit \EA, etc, as with the +# 2645. However, even with this strap set, the terminal stops +# xmitting if you reset it, until you unset and reset the strap! +# Since there is no way to set/unset the strap with an escape +# sequence, we don't use it in the default. +# If you like, you can use 2621-ba (brain-damaged arrow keys). +hp2621-ba|2621 w/new rom and strap A set, + rmkx@, smkx@, use=hp+arrows, use=hp2621, + +# hp2621 with function labels. Most of the time they are off, +# but inside vi, the function key labels appear. You have to +# hold down shift to get them to xmit. +hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels, + is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl, +hp2621-fl|hp 2621, + xhp@, xon, + pb#19200, + cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>, + ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@, + sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD, + use=hp+pfk+cr, use=hpgeneric, + +# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p +hp2621p|hp 2621 with printer, + mc4=\E&p13C, mc5=\E&p11C, use=hp2621, + +hp2621p-a|hp2621p with fn as arrows, + use=hp+pfk+arrows, use=hp2621p, + +# hp2621 with k45 keyboard +hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard, + kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + khome=\Eh, rmkx=\E&s0A, smkx=\E&s1A, use=hp2621, + +# 2621 using all 48 lines of memory, only 24 visible at any time. +hp2621-48|48 line 2621, + lines#48, + cup=\E&a%p2%dc%p1%dR, home=\EH, vpa=\E&a%p1%dR, + use=hp2621, + +# 2621 with no labels ever. Also prevents vi delays on escape. +hp2621-nl|hp 2621 with no labels, + kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, rmkx@, smkx@, + use=hp2621-fl, + +# Needed for UCB ARPAVAX console, since lsi-11 expands tabs +# (wrong). +# +hp2621-nt|hp 2621 w/no tabs, + ht@, use=hp2621, + +# Hp 2624 B with 4 or 10 pages of memory. +# +# Some assumptions are made with this entry. These settings are +# NOT set up by the initialization strings. +# +# Port Configuration +# RecvPace=Xon/Xoff +# XmitPace=Xon/Xoff +# StripNulDel=Yes +# +# Terminal Configuration +# InhHndShk=Yes +# InhDC2=Yes +# XmitFnctn(A)=No +# InhEolWrp=No +# +# Note: the 2624 DOES have a true <home>, believe it or not! +# +# The 2624 has an "error line" to which messages can be sent. +# This is CLOSE to what is expected for a "status line". However, +# after a message is sent to the "error line", the next carriage +# return is EATEN and the "error line" is turned back off again! +# So I guess we can't define <hs>, <eslok>, <wsl>, <dsl>, <fsl>, <tsl>. +# +# This entry supports emacs (and any other program that uses raw +# mode) at 4800 baud and less. I couldn't get the padding right +# for 9600. +# +# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr) +hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B, + da, db, + lm#96, + flash=\E&w13F$<66/>\E&w12F$<66/>\E&w13F$<66/>\E&w12F, + use=hp+labels, use=scrhp, + +# This hp2626 entry does not use any of the fancy windowing stuff +# of the 2626. +# +# Indeed, terminfo does not yet handle such stuff. Since changing +# any window clears memory, it is probably not possible to use +# this for screen opt. +# +# ed is incredibly slow most of the time - I am guessing at the +# exact padding. Since the terminal uses xoff/xon this is intended +# only for cost computation, so that the terminal will prefer el +# or even dl1 which is probably faster! +# +# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only +# extra slow on the last line of the window. +# +# The padding probably should be changed. +# +hp2626|hp2626a|hp2626p|hp 2626, + da, db, + lm#0, pb#19200, + ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>, + is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk+cr, + use=hp+labels, use=scrhp, + +# This entry is for sysline. It allocates a 23 line window with +# a 115 line workspace for regular use, and a 1 line window for +# the status line. +# +# This assumes port 2 is being used. +# Turn off horizontal line, Create ws #1 with 115 lines, +# Create ws #2 with 1 line, Create window #1 lines 1-23, +# Create window #2 lines 24-24, Attach cursor to workspace #1. +# Note that this clears the tabs so it must be done by tset before +# it sets the tabs. +# +hp2626-s|hp 2626 using only 23 lines, + eslok, hs, + lines#23, + fsl=\E&d@\E&w7f2p1I\E&w4f1I, + is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r, + tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, use=hp2626, +# Force terminal back to 24 lines after being 23. +hp2626-ns|hp 2626 using all 24 lines, + is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r, + use=hp2626, +# Various entries useful for small windows on 2626. +hp2626-12|hewlett-packard 2626 12 lines, + lines#12, use=hp2626, +hp2626-12x40|hewlett-packard 2626 12 lines 40 columns, + cols#40, lines#12, use=hp2626, +hp2626-x40|hewlett-packard 2626 40 columns, + cols#40, use=hp2626, +hp2626-12-s|hewlett-packard 2626 11 lines plus status, + lines#11, use=hp2626-s, + +# +# hp2627 color tubes from University of Wisconsin +# +hp2627a-rev|hp 2627 with reverse video colors, + cr=^M, cud1=^J, ht=^I, ind=^J, + is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r, + kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmul=\E&v0S\E&d@, + smul=\E&dD\E&v1S, use=hp2621-nl, +hp2627a|hp 2627 color terminal with no labels, + cr=^M, cud1=^J, ht=^I, ind=^J, + is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r, + kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmso=\E&v0S, + rmul=\E&v0S\E&d@, smso=\E&v2S, smul=\E&dD\E&v1S, + use=hp2621-nl, +hp2627c|hp 2627 color (cyan) terminal with no labels, + cr=^M, cud1=^J, ht=^I, ind=^J, + is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r, + kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, use=hp2627a, + +# hp2640a doesn't have the Y cursor addressing feature, and C is +# memory relative instead of screen relative, as we need. +# +hp2640a|hp 2640a, + cup@, rmkx@, smkx@, use=hp2645, + +hp2640b|hp2644a|hp 264x series, + rmkx@, smkx@, use=hp2645, + +# (hp2641a: removed unknown :gu: -- esr) +hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry, + am, da, db, mir, xhp, + cols#80, lines#24, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, + ed=\EJ, el=\EK, hpa=\E&a%p1%2dC, ht=^I, + if=/usr/share/tabset/std, il1=\EL, ind=^J, + is2=\EE$<500/>, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, + rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, + vpa=\E&a%p1%2dY, + +# This terminal should be used at 4800 baud or less. It needs padding for +# plain characters at 9600, I guessed at an appropriate cr delay. It really +# wants ^E/^F handshaking, but that doesn't work well even if you write +# software to support it. +hp2645|hp45|HP 2645 series, + pb#9600, + blink=\E&dA, cr=\r$<20>, dim=\E&dH, kctab=\E2, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, + ked=\EJ, kel=\EK, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, + kind=\ES, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, rev=\E&dB, + rmkx=\E&s0A, + sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c, + sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric, +# You should use this terminal at 4800 baud or less. +hp2648|hp2648a|HP 2648a graphics terminal, + clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>, + dch1=\EP$<7>, ip=$<5>, use=hp2645, + +# The HP 150 terminal is a fairly vanilla HP terminal, with the +# clreol standout problem. It also has graphics capabilities and +# a touch screen, which we don't describe here. +hp150|hewlett packard Model 150, + OTbs, use=hp2622, + +# HP 2382a terminals, "the little ones." They don't have any +# alternate character set support and sending out ^N/^O will +# leave the screen blank. +hp2382a|hp2382|hewlett packard 2382a, + da, db, + lh#1, lm#48, + acsc@, + pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, + rmacs@, + sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c, + sgr0=\E&d@, smacs@, use=hp+labels, use=scrhp, + +hp2621-a|hp2621a-a|hp2621 with fn as arrows, + use=hp+pfk+arrows, use=hp2621-fl, + +# newer hewlett packard terminals + +newhpkeyboard|generic entry for HP extended keyboard, + kbs=^H, kcbt=\Ei, kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, + kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, knp=\EU, kpp=\EV, + kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A, + use=hp+pfk-cr, + +newhp|generic entry for new hewlett packard terminals, + am, bw, mir, xhp, xon, + cols#80, lines#24, pb#4800, + acsc=2[3@4>5I9(\:'JSKWLQMAO#P$Q;R!S"T1U2V4W3X\:Y+Z*dHjGkTlRmFn/q\,t5u6v8w7x., + bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, cub1=^H, + cud1=^J, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH, + dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=^J, + invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, nel=^M^J, + pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s, + pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s, + pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, rev=\E&dB, ri=\ET, + rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, rs1=\Eg, + sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c%?%p9%t\016%e\017%;, + sgr0=\E&d@\017, smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD, + tbc=\E3, use=newhpkeyboard, + +memhp|memory relative addressing for new HP ttys, + vt#6, + clear=\EH\EJ$<40>, cub=\E&a-%p1%dC, cud=\E&a+%p1%dR, + cuf=\E&a+%p1%dC, cup=\E&a%p1%dr%p2%dC, cuu=\E&a-%p1%dR, + home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R\r, + mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dR, use=newhp, + +scrhp|screen relative addressing for new HP ttys, + clear=\E&a0c0Y\EJ$<40>, cub=\E&a-%p1%dC, + cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC, + cup=\E&a%p1%dy%p2%dC$<10>, cuu=\E&a-%p1%dR, + home=\E&a0y0C, hpa=\E&a%p1%dC, ll=\E&a0y0C\EA, + mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dY, use=newhp, + +# (hp+labels: added label values from a BRL termcap -- esr) +hp+labels|"standard" label info for new HP ttys, + lh#2, lw#8, nlab#8, + lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, + pln=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, + rmln=\E&j@, smln=\E&jB, + +hp+printer|"standard" printer info for HP ttys, + ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C, + + +# The new hp2621b is kind of a cross between the old 2621 and the +# new 262x series of machines. It has dip-switched options. +# The firmware has a bug in it such that if you give it a null +# length label, the following character is eaten! +hp2621b|hp 2621b with old style keyboard, + lh#1, lm#48, lw#8, nlab#8, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, + kind=\ET, kll=\EF, kri=\ES, + pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r, + smln=\E&jB, use=hp2621, + +hp2621b-p|hp 2621b with printer, + use=hp+printer, use=hp2621b, + +# hp2621b - new 2621b with new extended keyboard +# these are closer to the new 26xx series than the other 2621b +hp2621b-kx|hp 2621b with extended keyboard, + use=newhpkeyboard, use=hp2621b, + +hp2621b-kx-p|hp 2621b with new keyboard & printer, + use=hp+printer, use=hp2621b-kx, + +# Some assumptions are made in the following entries. +# These settings are NOT set up by the initialization strings. +# +# Port Configuration +# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes +# +# Terminal Configuration +# InhHndShk(G)=Yes InhDC2(H)=Yes +# XmitFnctn(A)=No InhEolWrp=No +# +# +# Hp 2622a & hp2623a display and graphics terminals +# +hp2622|hp2622a|hp 2622, + da, db, + lm#0, pb#19200, + is2=\E&dj@\r, use=hp+pfk+cr, use=hp+labels, use=scrhp, + +# The 2623 is a 2622 with extra graphics hardware. +hp2623|hp2623a|hp 2623, + use=hp2622, + +hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer, + use=hp+printer, use=hp2624, + +# The hewlett packard B can have an optional extra 6 pages of memory. +hp2624-10p|hp2624a-10p|hp2624b-10p|hewlett packard 2624 B w/ 10 pages of memory, + lm#240, use=hp2624, + +hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer, + lm#240, use=hp2624b-p, + +# Color manipulations for HP terminals +hp+color|hp with colors, + ccc, + colors#16, ncv#17, pairs#7, + initp=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.%p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1%e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=%t1%e.%p7%d%;z%p1%dI, + oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I, + op=\E&v0S, scp=\E&v%p1%dS, + +# <is2> sets the screen to be 80 columns wide +hp2397a|hp2397|hewlett packard 2397A color terminal, + is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color, + +# HP 700/44 Setup parameters: +# Terminal Mode HP-PCterm +# Inhibit Auto Wrap NO +# Status Line Host Writable +# PC Character Set YES +# Twenty-Five Line Mode YES +# XON/XOFF @128 or 64 (sc) +# Keycode Mode NO or YES (sc) +# Backspace Key BS or BS/DEL +# +# <is2> sets pcterm; autowrap; 25 lines; pc char set; prog DEL key; +# \E\\? does not turn off keycode mode +# <smsc> sets alternate start/stop; keycode on +hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode, + am, eo, xenl, xon, + cols#80, lines#25, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[2J\E[H, + cnorm=\E[?25h, cr=^M, 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=^J, + is2=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\, + kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kend=\E[4~, kf1=\E[17~, kf10=\E[28~, + kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, + kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khome=\E[1~, knp=\E[6~, + kpp=\E[5~, rmam=\E[?7l, + rmsc=\E[>11l\EP1**x0/11;1/13\E[m\E\\, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smam=\E[?7h, + smsc=\E[>11h\EPO**x0/65;1/67\E\\$<250>, smso=\E[7m, + smul=\E[4m, xoffc=g, xonc=e, +# +# (hp2392: copied <rmir> here from hpex -- esr) +hp2392|239x series, + cols#80, + cbt=\Ei, cup=\E&a%p1%dy%p2%dC, kf1=\Ep\r, kf2=\Eq\r, + kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, + kf8=\Ew\r, khome=\Eh, kind=\EU, knp=\Eu, kpp=\Ev, kri=\EV, + rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY, + use=hpsub, + +hpsub|hp terminals -- capability subset, + am, da, db, mir, xhp, xon, + lines#24, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cuu1=\EA, dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, + ht=^I, if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, + is2=\E&s1A\E<\E&k0\\, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, khome=\Eh, rmkx=\E&s0A, rmso=\E&d@, + sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, + +# hpex: +# May be used for most 24 x 80 hp terminals, +# but has no padding added, so may allow runover in some terminals at high +# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and +# hp98x5 terminal emulators or hp98x6 consoles. +# Adds xy-cursor addressing, vertical cursor addressing, home, +# last line, and underline capabilities. +# +# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:", +# moved <rmir> here from hpsub -- esr) +hpex|hp extended capabilites, + cr=^M, cud1=^J, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=^J, kbs=^H, + kcub1=^H, kcud1=^J, nel=^M^J, rmir=\ER, rmul=\E&d@, smir=\EQ, + smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub, + +# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996 +hp2|hpex2|hewlett-packard extended capabilities newer version, + am, da, db, mir, xhp, + cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, xmc#0, + bel=^G, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, + cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, + dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, + il1=\EL, ind=^J, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, + ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, + kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, + kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, + krmir=\ER, ktbc=\E3, meml=\El, memu=\Em, + pfkey=\E&f%p1%dk%p2%l%dL%p2%s, + pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, + pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, + pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rmir=\ER, rmkx=\E&s0A, + rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, + sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, + sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB, + smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, + +# HP 236 console +# From: <ddavis@ic.berkeley.edu> +hp236|hp236 internal terminal emulator, + OTbs, am, + cols#80, lines#24, + clear=\EF, cnorm=\EDE, cub1=^H, + cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\EDB, + dch1=\EJ, dl1=\EH, el=\EK, ich1=\EI, il1=\EG, rmso=\ECI, + sgr0=\ECI, smso=\EBI, + +# This works on a hp300 console running Utah 4.3 BSD +# From: Craig Leres <leres@okeeffe.berkeley.edu> +hp300h|HP Catseye console, + OTbs, am, da, db, mir, xhp, + cols#128, lines#51, lm#0, xmc#0, + bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, + cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, + dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, + if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, kbs=^H, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, + rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, + smir=\EQ, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, tbc=\E3, + vpa=\E&a%p1%dY, +# From: Greg Couch <gregc@ernie.berkeley.edu> +hp9837|hp98720|hp98721|HP 9000/300 workstations, + OTbs, am, da, db, mir, xhp, + cols#128, it#8, lines#46, lm#0, + bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cub1=^H, cud1=\EB, + cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, + dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, + il1=\EL, ind=^J, is2=\E&v0m1b0i&j@, kbs=^H, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, + ked=\EJ, kel=\EK, khome=\Eh, kich1=\EQ, kil1=\EL, knp=\EU, + kpp=\EV, rmir=\ER, rmkx=\E&s0A, rmso=\E&v0S, rmul=\E&d@, + sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smso=\E&v5S, smul=\E&dD, + tbc=\E3, vpa=\E&a%p1%dY, +# HP 9845 desktop computer from BRL +# (hp9845: removed unknown capability :gu: -- esr) +hp9845|HP 9845, + OTbs, am, da, db, eo, mir, xhp, + cols#80, lines#21, + OTbc=\ED, clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, + ed=\EJ, el=\EK, if=/usr/share/tabset/std, il1=\EL, + rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, +# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90 +# (hp98550: replaced /usr/share/tabset/9837 with std because <it#8>,<hts=\E1>; +# added empty <acsc> to avoid warnings re <smacs>/<rmacs> --esr) +hp98550|hp98550a|HP 9000 Series 300 color console, + OTbs, am, da, db, mir, xhp, + cols#128, it#8, lines#49, lm#0, + acsc=, bel=^G, blink=\E&dA, bold=\E&dJ, cbt=\Ei, civis=\E*dR, + clear=\EH\EJ, cnorm=\E*dQ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, dim=\E&dH, + dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, + if=/usr/share/tabset/std, il1=\EL, ind=^J, invis=\E&ds, + kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, + kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, + khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, + knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, rev=\E&dJ, + rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, + sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smso=\E&dJ, + smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, +# From: Victor Duchovni <vic@fine.princeton.edu> +# (hp700-wy: removed obsolete ":nl=^J:"; +# replaced /usr/share/tabset/hp700-wy with std because <it#8>,<hts=\E1> -- esr) +hp700-wy|HP700/41 emulating wyse30, + OTbs, am, bw, mir, msgr, + cols#80, it#8, lines#24, xmc#1, + cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET$<10/>, home=^^, ht=^I, hts=\E1, + if=/usr/share/tabset/stdcrt, il1=\EE$<0.7*/>, + is1=\E~"\EC\Er\E(\EG0\003\E`9\E`1, kbs=\177, kcbt=\EI, + kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, ked=\EY, + kel=\ET, khome=^^, khts=\EI, kich1=\Eq, krmir=\Er, ll=^^^K, + ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>, + sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>, + smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c, +hp70092|hp70092a|hp70092A|HP 700/92, + am, da, db, xhp, + cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, + acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA, + bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, + cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, + dch1=\EP, dim=\E&dH, dl1=\EM, el=\EK, hpa=\E&a%p1%dC, ht=^I, + hts=\E1, il1=\EL, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, + ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, + kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, + kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, + krmir=\ER, ktbc=\E3, rev=\E&dB, ri=\ET, rmacs=^O, rmir=\ER, + rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, + sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, + smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, + +bobcat|sbobcat|HP 9000 model 300 console, + am, da, db, mir, xhp, + cols#128, it#8, lines#47, xmc#0, + cbt=\Ei, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\E&a%p1%dy%p2%dC$<6/>, cuu1=\EA, dch1=\EP, + dl1=\EM$<10*/>, ed=\EJ, el=\EK, hpa=\E&a%p1%dC$<6/>, ht=^I, + il1=\EL$<10*/>, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, khome=\Eh, nel=^M^J, rmir=\ER, + rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smir=\EQ, + smkx=\E&s1A, smso=\E&dB, smul=\E&dD, vpa=\E&a%p1%dY$<6/>, +gator-t|HP 9000 model 237 emulating extra-tall AAA, + lines#94, use=gator, +gator|HP 9000 model 237 emulating AAA, + bw, km, mir, ul, + cols#128, it#8, lines#47, + bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, + dch=\E[%p1%dP$<4/>, dch1=\E[P, dl=\E[%p1%dM$<1*/>, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, + ht=^I, ich=\E[%p1%d@$<4/>, ich1=\E[@, il=\E[%p1%dL$<1*/>, + il1=\E[L, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, + rep=%p1%c\E[%p2%db$<1*/>, rev=\E[7m, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, +gator-52|HP 9000 model 237 emulating VT52, + cols#128, lines#47, use=vt52, +gator-52t|HP 9000 model 237 emulating extra-tall VT52, + lines#94, use=gator-52, + +#### Honeywell-Bull +# +# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93 +# + +# Honeywell Bull terminal. Its cursor and function keys send single +# control characters and it has standout/underline glitch. Most programs +# do not like these features/bugs. Visual bell is realized by flashing the +# "keyboard locked" LED. +dku7003-dumb|Honeywell Bull DKU 7003 dumb mode, + cols#80, lines#25, + clear=^]^_, cr=^M, cub1=^Y, cud1=^K, cuf1=^X, + cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, ed=^_, el=\E[K, + flash=\E[2h\E[2l, home=^], ht=^I, ind=^J, kbs=^H, kcub1=^Y, + kcud1=^K, kcuf1=^X, kcuu1=^Z, khome=^], nel=^M^J, +dku7003|Honeywell Bull DKU 7003 all features described, + msgr, + xmc#1, + blink=\E[5m, bold=\E[7m, dim=\E[2m, rev=\E[7m, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, + use=dku7003-dumb, + +#### Lear-Siegler (adm) +# +# These guys are long since out of the terminals business, but +# in 1995 many current terminals still have an adm type as one of their +# emulations (usually their stupidest, and usually labeled adm3, though +# these `adm3' emulations normally have adm3a+ capabilities). +# +# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a +# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator') +# was being held to ground would trigger a send of the top line on the screen. +# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22 +# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>, +# for clearing up this point.) + +adm1a|adm1|lsi adm1a, + am, + cols#80, lines#24, + bel=^G, clear=\E;$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^, + ind=^J, +adm2|lsi adm2, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=^J, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, +# (adm3: removed obsolete ":ma=^K^P:" -- esr) +adm3|lsi adm3, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, ind=^J, +# The following ADM-3A switch settings are assumed for normal operation: +# SPACE U/L_DISP CLR_SCRN 24_LINE +# CUR_CTL LC_EN AUTO_NL FDX +# Other switches may be set for operator convenience or communication +# requirements. I recommend +# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF +# ETX_OFF EOT_OFF +# Most of these terminals required an option ROM to support lower case display. +# Open the case and look at the motherboard; if you see an open 24-pin DIP +# socket, you may be out of luck. +# +# (adm3a: some capabilities merged in from BRl entry -- esr) +adm3a|lsi adm3a, + OTbs, am, + cols#80, lines#24, + OTma=^K^P, OTnl=^J, bel=^G, clear=\032$<1/>, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, rs2=^N, +adm3a+|adm3a plus, + kbs=^H, use=adm3a, +# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr) +adm5|lsi adm5, + xmc#1, + bel=^G, cr=^M, cud1=^J, ed=\EY, el=\ET, kbs=^H, khome=^^, + rmso=\EG, smso=\EG, use=adm3a+, +# A lot of terminals other than adm11s use these. Wherever you see +# use=adm+sgr with some of its capabilities disabled, try the +# disabled ones. They may well work but not have been documented or +# expressed in the using entry. We'd like to cook up an <sgr> but the +# <rmacs>/<smacs> sequences of the using entries vary too much. +adm+sgr|adm style highlight capabilities, + invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, sgr0=\EG0, + smso=\EG4, smul=\EG8, +# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL +# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs> +# <khome> from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. <clear> could also +# be ^Z, according to his entry. +# (adm11: <smul>=\EG4 was obviously erroneous because it also said +# <rev>=\EG4. Looking at other ADMs confirms this -- esr) +adm11|LSI ADM-11, + OTbs, am, hs, + OTkn#8, cols#80, lines#24, + OTnl=^J, bel=^G, blink=\EG2, clear=\E*, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, dsl=\Eh, ed=\EY, el=\ET, fsl=\E(\r, home=^^, ht=^I, + kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, khome=^^, nel=^M^J, tsl=\EF\E), + use=adm+sgr, +# From: Andrew Scott Beals <bandy@lll-crg.ARPA> +# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995 +# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996 +# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had +# <is2>=\Eq but that looked wrong; this <is2> is from Dave Yost <esquire!yost> +# via BRL. That entry asserted <xmc#1>, but I've left that out because +# neither earlier nor later ADMSs have it -- esr) +# +# You will need to get into the supervisor setup before you can set +# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should +# see a lot more setup options. +# +# While in supervisor setup you can also use following codes: +# +# Ctrl-P Personality character selections (configure for example what +# arrow keys send, if I recall correctly) +# Ctrl-T tabs 1-80 use left&right to move and up to set and +# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor +# Ctrl-B Binary setup (probably not needed. I think that everything can +# be set using normal setup) +# Ctrl-A Answerback mode (enter answerback message) +# Ctrl-U User friendly mode (normal setup) +# Ctrl-D Defaults entire setup and function keys from EPROM tables +# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds. +# Ctrl-R Reads both setup and functions keys from NVM. +# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status +# +# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to +# RTS/CTS used nowadays with virtually every modem and computer. 19200 +# bps works fine with hardware flow control. +# +# The following null-modem cable should fix this and enable you to use +# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also +# set ADM-12+ for DTR handshaking from supervisor setup. +# +# PC Serial ADM-12+ +# -------- ------- +# 2 - 3 +# 3 - 2 +# 4 - 5 +# 5 - 20 +# 6,8 - 4 +# 7 - 7 +# 20 - 6,8 +# +adm12|lsi adm12, + OTbs, OTpt, am, mir, + OTug#1, cols#80, it#8, lines#24, + bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE, + is2=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, + kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, + kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, smir=\Eq, tbc=\E0, + use=adm+sgr, +# (adm20: removed obsolete ":kn#7:" -- esr) +adm20|lear siegler adm20, + OTbs, am, + cols#80, it#8, lines#24, + bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cuf1=^L, + cup=\E=%i%p2%{31}%+%c%p1%{31}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, ich1=\EQ, il1=\EE, + kf1=^A, kf2=^B, kf3=^W, kf4=^D, kf5=^E, kf6=^X, kf7=^Z, rmso=\E(, + sgr0=\E(, smso=\E), +adm21|lear siegler adm21, + xmc#1, + bel=^G, cr=^M, cud1=^J, dch1=\EW, dl1=30*\ER, ed=\EY, el=\ET, + ich1=\EQ, il1=30*\EE, ind=^J, invis@, kbs=^H, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, use=adm+sgr, + use=adm3a, +# (adm22: ":em=:" was an obvious typo for ":ei=:"; also, +# removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :"; +# removed bogus-looking \200 from before <cup>. -- esr) +adm22|lsi adm22, + OTbs, am, + cols#80, lines#24, + bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\Ey, el=\Et, home=^^, ht=\Ei, ich1=\EQ, il1=\EE, + is2=\E%\014\014\014\016\003\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0, + kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, khome=^^, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, + lf6=F6, lf7=F7, rmso=\E(, sgr0=\E(, smso=\E), +# ADM 31 DIP Switches +# +# This information comes from two versions of the manual for the +# Lear-Siegler ADM 31. +# +# Main board: +# rear of case +# +-||||-------------------------------------+ +# + S1S2 ||S + +# + ||3 + +# + + +# + ||S + +# + ||4 + +# + + +# + + +# + + +# + + +# + + +# +-+ +-+ +# + + +# + S5 S6 S7 + +# + == == == + +# +----------------------------------------------+ +# front of case (keyboard) +# +# S1 - Data Rate - Modem +# S2 - Data Rate - Printer +# ------------------------ +# Data Rate Setting +# ------------------- +# 50 0 0 0 0 +# 75 1 0 0 0 +# 110 0 1 0 0 +# 134.5 1 1 0 0 +# 150 0 0 1 0 +# 300 1 0 1 0 +# 600 0 1 1 0 +# 1200 1 1 1 0 +# 1800 0 0 0 1 +# 2000 1 0 0 1 +# 2400 0 1 0 1 +# 3600 1 1 0 1 +# 4800 0 0 1 1 +# 7200 1 0 1 1 +# 9600 0 1 1 1 +# x 1 1 1 1 +# +# S3 - Interface/Printer/Attributes +# --------------------------------- +# Printer Busy Control +# sw1 sw2 sw3 +# --------------- +# off off off Busy not active, CD disabled +# off off on Busy not active, CD enabled +# off on off Busy active on J5-20, CD disabled +# on off off Busy active on J5-19, CD disabled - Factory Set. +# on off on Busy active on J5-19, CD enabled +# +# sw4 Used in conjuction with S4 for comm interface control - Fact 0 +# +# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0 +# +# sw6 ON enables printer BUSY active LOW - Factory Setting +# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses +# +# sw7 ON - steady cursor - Factory Setting +# OFF - blinking cursor +# +# sw8 ON causes selected attribute character to be displayed +# OFF causes SPACE to be displayed instead - Factory Setting +# +# S4 - Interface +# -------------- +# Modem Interface +# S3 S4 S4 S4 S4 +# sw4 sw1 sw2 sw3 sw4 +# --------------------------- +# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and +# Current Loop disabled - Factory Setting +# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect +# disabled +# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and +# Current Loop Disabled +# +# sw5 ON disables dot stretching mode - Factory Setting +# OFF enables dot stretching mode +# sw6 ON enables blanking function +# OFF enables underline function - Factory Setting +# sw7 ON causes NULLS to be displayed as NULLS +# OFF causes NULLS to be displayed as SPACES - Factory Setting +# +# S5 - Word Structure +# ------------------- +# sw1 ON enables BREAK key - Factory Setting +# OFF disables BREAK key +# sw2 ON selects 50Hz monitor refresh rate +# OFF selects 60Hz monitor refresh rate - Factory Setting +# +# Modem Port Selection +# sw3 sw4 sw5 +# --------------- +# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits +# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits +# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set. +# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit +# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits +# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit +# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit +# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit +# +# sw6 ON sends bit 8 a 1 (mark) +# OFF sends bit 8 as 0 (space) - Factory Setting +# sw7 ON selects Block Mode +# OFF selects Conversation Mode - Factory Setting +# sw8 ON selects Full Duplex operation +# OFF selects Half Duplex operation - Factory Setting +# +# S6 - Printer +# ------------ +# sw1, sw2, sw6, sw7 Reserved - Factory 0 +# +# Printer Port Selection +# same as Modem above, bit 8 (when 8 DATA bits) is always = 0 +# +# sw8 ON enables Printer Port +# OFF disables Printer Port - Factory Setting +# +# S7 - Polling Address +# -------------------- +# sw1-7 Establish ASCII character which designates terminal polling address +# ON = logic 0 +# OFF = logic 1 - Factory Setting +# sw8 ON enables Polling Option +# OFF disables Polling Option - Factory Setting +# +# +# On some older adm31s, S4 does not exist, and S5-sw6 is not defined. +# +# This adm31 entry uses underline as the standout mode. +# If the adm31 gives you trouble with standout mode, check the DIP switch in +# position 6, bank @c11, 25% from back end of the circuit board. Should be +# OFF. If there is no such switch, you have an old adm31 and must use oadm31. +# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr) +adm31|lsi adm31 with sw6 set for underline mode, + OTbs, am, mir, + cols#80, lines#24, + bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, ind=^J, is2=\Eu\E0, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, + kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, + kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, rmso=\EG0, + rmul=\EG0, sgr0=\EG0, smir=\Eq, smso=\EG1, smul=\EG1, +adm31-old|o31|old adm31, + rmul@, smso=\EG4, smul@, use=adm31, +# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL +adm36|LSI ADM36, + OTbs, OTpt, + OTkn#4, + if=/usr/share/tabset/vt100, + is2=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l, + use=vt100, +# (adm42: removed obsolete ":ma=^K^P:" -- esr) +adm42|lsi adm42, + OTbs, am, + cols#80, lines#24, + bel=^G, cbt=\EI, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ht=^I, + il1=\EE$<270>, ind=^J, invis@, ip=$<6*>, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, khome=^^, pad=\177, rmir=\Er, rmul@, + smir=\Eq, smul@, use=adm+sgr, +# The following termcap for the Lear Siegler ADM-42 leaves the +# "system line" at the bottom of the screen blank (for those who +# find it distracting otherwise) +adm42-ns|lsi adm-42 with no system line, + cbt=\EI\EF \011, clear=\E;\EF \011, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<6>\EF \011, + dch1=\EW\EF \011, dl1=\ER\EF \011, ed=\EY\EF \011, + el=\ET\EF \011, il1=\EE\EF \011, rmir=\Er\EF \011, + smir=\Eq\EF \011, use=adm42, +# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985. +# The insert mode of this terminal is commented out because it's broken for our +# purposes in that it will shift the position of every character on the page, +# not just the cursor line! +# From: Michael Driscoll <fenris@lightspeed.net> 10 July 1996 +adm1178|1178|lsi adm1178, + am, + cols#80, lines#24, xmc#1, + bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, + home=^^, ht=^I, il1=\EE, ind=^J, ip=$<6*/>, kbs=^H, kcub1=^H, + kcud1=^J, nel=^M^J, pad=\177, rev=\EG4, rmso=\EG0, rmul=\EG0, + sgr0=\E), smso=\EG4, smul=\EG1, + +#### Prime +# +# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings +# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr. +# Prime merged with ComputerVision in the late 1980s; you can reach them at: +# +# ComputerVision Services +# 500 Old Connecticut Path +# Framingham, Mass. +# + +# Standout mode is dim reverse-video. +pt100|pt200|wren|fenix|prime pt100/pt200, + am, bw, mir, msgr, + cols#80, it#8, lines#24, + cbt=\E[Z, clear=\E?, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E0%p1%{33}%+%c%p2%{33}%+%c, cuu=\E[%p1%dA, + cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl1=\E[M, + ed=\E[J\E[r, el=\E[K\E[t, flash=\E$$<200/>\E$P, + home=\E$B, ht=^I, il1=\E[L\E[t, ind=^J, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E$A, nel=^M^J, + rmcup=, rmir=\E[4l, rmkx=\E[>13l, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, + smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\E[1Q, + smir=\E[4h, smkx=\E[>13h, smso=\E[2;7m, smul=\E[4m, +pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode, + cols#132, + cup=\E[%i%p1%d;%p2%dH, use=pt100, +pt250|Prime PT250, + rmso@, smso@, use=pt100, +pt250w|Prime PT250 in 132-column mode, + rmso@, smso@, use=pt100w, + +#### Qume (qvt) +# +# Qume, Inc. +# 3475-A North 1st Street +# San Jose CA 95134 +# Vox: (800)-457-4447 +# Fax: (408)-473-1510 +# Net: josed@techsupp.wyse.com (Jose D'Oliveira) +# +# Qume was bought by Wyse, but still (as of early 1995) has its own support +# group and production division. +# +# Discontinued Qume models: +# +# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+ +# built to replace them, and a qvt119+ which was a 101+ with available wide +# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations +# and an ANSI-compatible qvt203 that replaced it. Qume started producing +# ANSI-compatible terminals with the qvt323 and qvt61. +# +# Current Qume models (as of February 1995): +# +# All current Qume terminals have ANSI-compatible operation modes. +# Qume is still producing the qvt62, which features emulations for other +# popular lines such as ADDS, and dual-host capabilities. The qvt82 is +# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal +# with many emulations including Wyse370, Wyse 325, etc. Their newest +# model is the qvt520, which is vt420-compatible. +# +# There are some ancient printing Qume terminals under `Daisy Wheel Printers' +# +# If you inherit a Qume without docs, try Ctrl-Shift-Setup to enter its +# setup mode. Shift-s should be a configuration save to NVRAM. + +qvt101|qvt108|qume qvt 101 and QVT 108, + xmc#1, use=qvt101+, + +# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap +# file had <cvvis=\EM4 \200\200\200>. I've done the safe thing and yanked +# both. The <rev> is from BSD, which also claimed bold=\E( and dim=\E). +# What seems to be going on here is that this entry was designed so that +# the normal highlight is bold and standout is dim plus something else +# (reverse-video maybe? But then, are there two <rev> sequences?) +qvt101+|qvt101p|qume qvt 101 PLUS product, + am, bw, hs, ul, + cols#80, lines#24, xmc#0, + bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^J, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\EY, el=\ET, + flash=\Eb$<200>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, + ich1=\EQ, il1=\EE, ind=^J, invis@, kbs=^H, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdl1=\ER, ked=\EY, kel=\ET, + kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, + kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, + khome=^^, kich1=\EQ, kil1=\EE, mc4=\EA, mc5=\E@, rmso=\E(, + smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, +qvt102|qume qvt 102, + cnorm=\E., use=qvt101, +# (qvt103: added <rmam>/<smam> based on init string -- esr) +qvt103|qume qvt 103, + am, xenl, xon, + cols#80, it#8, lines#24, vt#3, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, + hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, + rev=\E[7m$<2>, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E[?1l\E>, + rmso=\E[m$<2>, rmul=\E[m$<2>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, + sgr0=\E[m$<2>, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, +qvt103-w|qume qvt103 132 cols, + cols#132, lines#24, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt103, +qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals, + am, hs, mir, msgr, + cols#80, lines#24, xmc#0, + bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, + el=\Et, flash=\En0$<200>\En1, fsl=^M, home=^^, ht=^I, + hts=\E1, il1=\EE, ind=^J, is2=\EDF\EC\EG0\Er\E(\E%EX, + kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, + kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + mc4=\EA, mc5=\E@, ri=\EJ, rmir=\Er, smir=\Eq, smul=\EG8, + tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, +qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines, + lines#25, use=qvt119+, +qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode, + cols#132, + is2=\EDF\EC\EG0\Er\E(\E%\EX\En4, use=qvt119+, +qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25, + lines#25, use=qvt119+, +qvt203|qvt203+|qume qvt 203 Plus, + dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, + ip=$<7>, kf0=\E[29~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, + kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, + kf9=\E[28~, rmir=\E[4l, smir=\E[4h, use=qvt103, +qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video), + cols#132, lines#24, + rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203, +# +# Since a command is present for enabling 25 data lines, +# a specific terminfo entry may be generated for the 203. +# If one is desired for the QVT 119 PLUS then 25 lines must +# be selected in the status line (setup line 9). +# +qvt203-25|QVT 203 PLUS with 25 by 80 column mode, + cols#80, lines#25, + is2=\E[=40h\E[?3l, use=qvt203, +qvt203-25-w|QVT 203 PLUS with 25 by 132 columns, + cols#132, lines#25, + rs2=\E[?3h\E[=40h, use=qvt203, + +#### Televideo (tvi) +# +# TeleVideo +# 550 East Brokaw Road +# PO Box 49048 95161 +# San Jose CA 95112 +# Vox: (408)-954-8333 +# Fax: (408)-954-0623 +# +# +# These require incredible amounts of padding. +# +# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer +# Televideo terminals are ANSI and PC-ANSI compatible. + +tvi803|televideo 803, + clear=\E*$<10>, use=tvi950, + +# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86 +# Switch settings are: +# +# S1 1 2 3 4 +# D D D D 9600 +# D D D U 50 +# D D U D 75 +# D D U U 110 +# D U D D 135 +# D U D U 150 +# D U U D 300 +# D U U U 600 +# U D D D 1200 +# U D D U 1800 +# U D U D 2400 +# U D U U 3600 +# U U D D 4800 +# U U D U 7200 +# U U U D 9600 +# U U U U 19200 +# +# S1 5 6 7 8 +# U D X D 7N1 (data bits, parity, stop bits) (X means ignored) +# U D X U 7N2 +# U U D D 7O1 +# U U D U 7O2 +# U U U D 7E1 +# U U U U 7E2 +# D D X D 8N1 +# D D X U 8N2 +# D U D D 8O1 +# D U U U 8E2 +# +# S1 9 Autowrap +# U on +# D off +# +# S1 10 CR/LF +# U do CR/LF when CR received +# D do CR when CR received +# +# S2 1 Mode +# U block +# D conversational +# +# S2 2 Duplex +# U half +# D full +# +# S2 3 Hertz +# U 50 +# D 60 +# +# S2 4 Edit mode +# U local +# D duplex +# +# S2 5 Cursor type +# U underline +# D block +# +# S2 6 Cursor down key +# U send ^J +# D send ^V +# +# S2 7 Screen colour +# U green on black +# D black on green +# +# S2 8 DSR status (pin 6) +# U disconnected +# D connected +# +# S2 9 DCD status (pin 8) +# U disconnected +# D duplex +# +# S2 10 DTR status (pin 20) +# U disconnected +# D duplex +# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:"; added <khome>, <cub1>, <cud1>, +# <ind>, <hpa>, <vpa>, <am>, <msgr> from SCO entry -- esr) +tvi910|televideo model 910, + OTbs, am, msgr, + cols#80, it#8, lines#24, xmc#1, + bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, + home=\E=\001\001, hpa=\E]%p1%{32}%+%c, ht=^I, + if=/usr/share/tabset/stdcrt, ind=^J, invis@, kbs=^H, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, kf1=^A@\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + vpa=\E[%p1%{32}%+%c, use=adm+sgr, +# From: Alan R. Rogers <rogers%albany@csnet-relay> +# as subsequently hacked over by someone at SCO +# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr) +# +# Here are the 910+'s DIP switches (U = up, D = down, X = don't care): +# +# S1 1 2 3 4: +# D D D D 9600 D D D U 50 D D U D 75 D D U U 110 +# D U D D 135 D U D U 150 D U U D 300 D U U U 600 +# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600 +# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200 +# +# S1 5 6 7 8: +# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2 +# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2 +# D U D D 8O1 D U U U 8E2 +# +# S1 9 Autowrap (U = on, D = off) +# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received) +# S2 1 Mode (U = block, D = conversational) +# S2 2 Duplex (U = half, D = full) +# S2 3 Hertz (U = 50, D = 60) +# S2 4 Edit mode (U = local, D = duplex) +# S2 5 Cursor type (U = underline, D = block) +# S2 6 Cursor down key (U = send ^J, D = send ^V) +# S2 7 Screen colour (U = green on black, D = black on green) +# S2 8 DSR status (pin 6) (U = disconnected, D = connected) +# S2 9 DCD status (pin 8) (U = disconnected, D = connected) +# S2 10 DTR status (pin 20) (U = disconnected, D = connected) +# +tvi910+|televideo 910+, + dch1=\EW, dl1=\ER$<33*>, home=^^, ich1=\EQ, il1=\EE$<33*>, + kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, + kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, + ll=\E=7\s, use=tvi910, + +# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and +# <khome> from BRL entry -- esr) +tvi912|tvi914|tvi920|old televideo 912/914/920, + OTbs, OTpt, am, msgr, + cols#80, it#8, lines#24, xmc#1, + bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER$<33*>, ed=\Ey, el=\ET, flash=\Eb$<50/>\Ed, home=^^, + ht=^I, hts=\E1, ich1=\EQ, if=/usr/share/tabset/stdcrt, + il1=\EE$<33*>, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, + kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, + kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El, + tbc=\E3, +# We got some new tvi912c terminals that act really weird on the regular +# termcap, so one of our gurus worked this up. Seems that cursor +# addressing is broken. +tvi912cc|tvi912 at cowell college, + cup@, use=tvi912c, + +# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C +# From: Benjamin C. W. Sittler +# +# Someone has put a scanned copy of the manual online at: +# http://vt100.net/televideo/912b-om/ +# +# These terminals were produced ca. 1979, and had a 12" monochrome +# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit +# ASCII, and were generally similar to adm3a but with attributes +# (including some with magic cookies), fancy half-duplex mode, and +# different bugs. +# +# Some operations reqire truly incredible amounts of padding. The +# insert_line (<il1>) and delete_line (<dl1>) operations in particular +# are so slow as to be nearly unusable. +# +# There may or may not have been a separate, earlier series of 912/920 +# terminals (without the "B" and "C" suffix); I have never seen one, +# and the manual only describes the "B" and "C" series. The 912 and 920 +# are quite distinct from the 914 and 924, which were much nicer non- +# magic-cookie terminals similar to the 950. +# +# This is a new description for the following TeleVideo terminals, +# distinguished chiefly by their keyboards: +# +# TVI-912B - very odd layout, no function keys (84 keys) +# TVI-920B - typewriter layout, no function keys (103 keys) +# TVI-912C - very odd layout, function keys F1-F11 (82 keys) +# TVI-920C - typewriter layout, function keys F1-F11 (101 keys) +# +# To choose a setting for the TERM variable, start with the model: +# +# Model || base name +# ----------||----------- +# TVI-912B || tvi912b +# TVI-912C || tvi912c +# TVI-920B || tvi920b +# TVI-920C || tvi920c +# +# Then add a suffix from the following table describing installed options +# and how you'd like to use the terminal: +# +# Use Video | Second | Visual | Magic | Page || feature +# Attributes | Page | Bell | Cookies | Print || suffix +# ------------|--------|--------|---------|-------||--------- +# No | No | N/A | N/A | No || -unk +# No | No | N/A | N/A | Yes || -p +# No | Yes | No | N/A | No || -2p-unk +# No | Yes | No | N/A | Yes || -2p-p +# No | Yes | Yes | N/A | No || -vb-unk +# No | Yes | Yes | N/A | Yes || -vb-p +# Yes | No | N/A | No | N/A || +# Yes | No | N/A | Yes | N/A || -mc +# Yes | Yes | No | No | N/A || -2p +# Yes | Yes | No | Yes | N/A || -2p-mc +# Yes | Yes | Yes | No | N/A || -vb +# Yes | Yes | Yes | Yes | N/A || -vb-mc +# +# So e.g. a model 920 C with second page memory option, visual bell +# and no magic cookies would be tvi920c-vb; a model 912 B without the +# second page memory option and using magic cookies would be +# tvi912b-mc +# +# PADDING +# +# At 9600 baud, the terminal is prone to overflow its input buffer +# during complex operations (insert/delete +# character/line/screen/page), and it does not signal this over the +# RS232 cable. The typical symptom of an overrun is that the terminal +# starts beeping, and output becomes garbled. +# +# The padding delays in this terminfo were derived using tack(1) +# running on a Linux box connected to a TVI-920C with a later-model +# (A49C1-style) ROM running at 9600 baud, so your mileage may +# vary. The numbers below seem to give the terminal enough time so +# that it doesn't overflow its input buffer and start losing +# characters. +# +# KEYS +# +# If you want to use the FUNCT key on a tvi912[bc], use the +# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from +# the following table (these also work on the 920 series): +# +# Unshifted Function Keys: +# +# Key | capname|| Equivalent +# -----|--------||------------ +# F1 | <kf1> || FUNCT + @ +# F2 | <kf2> || FUNCT + A +# F3 | <kf3> || FUNCT + B +# F4 | <kf4> || FUNCT + C +# F5 | <kf5> || FUNCT + D +# F6 | <kf6> || FUNCT + E +# F7 | <kf7> || FUNCT + F +# F8 | <kf8> || FUNCT + G +# F9 | <kf9> || FUNCT + H +# F10 | <kf10> || FUNCT + I +# F11 | <kf11> || FUNCT + J +# +# Shifted Function Keys: +# +# SHIFT + Key | capname|| Equivalent +# -------------|--------||------------ +# SHIFT + F1 | <kf12> || FUNCT + ` +# SHIFT + F2 | <kf13> || FUNCT + a +# SHIFT + F3 | <kf14> || FUNCT + b +# SHIFT + F4 | <kf15> || FUNCT + c +# SHIFT + F5 | <kf16> || FUNCT + d +# SHIFT + F6 | <kf17> || FUNCT + e +# SHIFT + F7 | <kf18> || FUNCT + f +# SHIFT + F8 | <kf19> || FUNCT + g +# SHIFT + F9 | <kf20> || FUNCT + h +# SHIFT + F10 | <kf21> || FUNCT + i +# SHIFT + F11 | <kf22> || FUNCT + j +# +# PORTS AND SWITCH SETTINGS +# +# Here are the switch settings for the TVI-912B/TVI-920B and +# TVI-912C/TVI-920C: +# +# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down: +# 2: 9600 3: 4800 4: 2400 5: 1200 +# 6: 600 7: 300 8: 150 9: 75 +# 10: 110 +# +# S2 UART/Terminal options: +# Up Down +# 1: Not used Not allowed +# 2: Alternate character set Standard character set +# 3: Full duplex Half duplex +# 4: 50 Hz refresh 60 Hz refresh +# 5: No parity Send parity +# 6: 2 stop bits 1 stop bit +# 7: 8 data bits 7 data bits +# 8: Not used Not allowed on Rev E or lower +# 9: Even parity Odd parity +# 10: Steady cursor Blinking cursor +# (On Rev E or lower, use W25 instead of switch 10.) +# +# S5 UART/Terminal options: +# Open Closed +# 1: P3-6 Not connected DSR received on P3-6 +# 2: P3-8 Not connected DCD received on P3-8 +# +# 3 Open, 4 Open: P3-20 Not connected +# 3 Open, 4 Closed: DTR on when terminal is on +# 3 Closed, 4 Open: DTR is connected to RTS +# 3 Closed, 4 Closed: Not allowed +# +# 5 Closed: HDX printer (hardware control) Rev. K with extension port off, +# all data transmitted out of the modem port (P3) will also be +# transmitted out of the printer port (P4). +# +# 6 Open, 7 Open: Not allowed +# 6 Open, 7 Closed: 20ma current loop input +# 6 Closed, 7 Open: RS232 input +# 6 Closed, 7 Closed: Not allowed +# +# Jumper options: +# If the jumper is installed, the effect will occur (the next time the terminal +# is switched on). +# +# S4/W31: Enables automatic LF upon receipt of CR from +# remote or keyboard. +# S4/W32: Enables transmission of EOT at the end of Send. If not +# installed, a carriage return is sent. +# S4/W33: Disables automatic carriage return in column 80. +# S4/W34: Selects Page Print Mode as initial condition. If not +# installed, Extension Mode is selected. +# +# NON-STANDARD CAPABILITIES +# +# Sending <u9> or <u7> returns a cursor position report in the format +# YX\r, where Y and X are as in <cup>. This format is described in +# <u8> and <u6>, but it's not clear how one should write an +# appropriate scanf string, since we need to subtract %' ' from the +# character after reading it. The <u9> capability is used by tack(1) +# to synchronize during padding tests, and seems to work for that +# purpose. +# +# This description also includes the obsolete termcap capabilities +# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>). +# +# FEATURES NOT YET DESCRIBED IN THIS TERMINFO +# +# The FUNCT modifier actually works with every normal key by sending +# ^AX\r, where X is the sequence normally sent by that key. This is a +# sort of meta key not currently describable in terminfo. +# +# There are quite a few other keys (especially on the 920 models,) but +# they are for the most part only useful in block mode. +# +# These terminals have lots of forms manipulation features, mainly +# useful in block mode, including "clear X to nulls" (vs. "clear X to +# spaces"; nulls are sentinels for "send X" operations); "send X" +# operations for uploading all or part of the screen; and block-mode +# editing keys (they don't send escape sequences, but manipulate video +# memory directly). Block mode is used for local editing, and protect +# mode (in conjunction with the "write protect" attribute, +# a.k.a. half-intensity outside of protect mode) is used to control +# which parts of the screen are edited/sent/printed (by <mc0>). +# +# There are at least two major families of ROM, "early" and +# A49B1/A49C1; the major difference seems to be that the latter ROMs +# support a few extra escape sequences for manipulating the off-screen +# memory page, and for sending whole pages back to the host (mainly +# useful in block mode.) The descriptions in this file don't use any +# of those sequences: set cursor position including page (\E-PYX, +# where P is \s for page 0 and ! for page 1 [actually only the LSB of +# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are +# as in <cup>); read cursor position (\E/), which is analogous to <u9> +# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX +# are as in <cup>, and some "send page" features mainly useful for +# forms manipulation. +# +# The keyboard enable (\E") and disable (\E#) sequences are unused, +# except that a terminal reset (<is2>) enables the keyboard. +# +# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew) +# enabled in <is2>, but auto-flip is very jarring so we don't use it. +# +# BUGS +# +# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed +# sequences (I infer that in some TeleVideo terminal they may invert +# and uninvert the display) so the <flash> sequence given here is a +# cheesy page-flip instead. +# +# The back_tab (<cbt>) sequence (\EI) doesn't work according to +# tack(1), so it is not included in the descriptions below. +# +# It's not clear whether auto_left_margin (<bw>) flag should be set +# for these terminals; tack says yes, so it is set here, but this +# differs from other descriptions I've seen. +# +# Extension print mode (<mc5>) echoes all characters to the printer +# port [in addition to displaying them] except for the page print mode +# sequence (<mc4>); this is a slight violation of the terminfo +# definition for <mc5> but I don't expect it to cause problems. We +# reset to page print mode in <rs1> since it may have been enabled +# accidentally. +# +# The descriptions with plus signs (+) are building blocks. + +tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes), + OTbs, OTpt, am, bw, + cols#80, it#8, lines#24, + bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>, + dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>, + home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>, + if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>, + ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA, + mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r, + u7=\E?, u8=%c%c\r, u9=\E?, + +# This isn't included in the basic capabilities because it is +# typically unusable in combination with the full range of video +# attributes, since the magic cookie attributes turn into ASCII +# control characters, and the half-intensity ("protected") attribute +# converts all affected characters to spaces. + +tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support, + mc0=\EP, + +# This uses half-intensity mode (<dim>) for standout (<smso>), and +# exposes no other attributes (half-intensity is the only attribute +# that does not generate a magic cookie.) + +tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support, + msgr, + dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(, + smso=\E), + +# Full magic-cookie attribute support, with half-intensity reverse +# video for standout. Note that we add a space in the <dim> sequence +# to give a consistent magic-cookie count. Also note that <sgr> uses +# backspacing (in the TVI-supported order) to apply all requested +# attributes with only a single magic cookie. + +tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support, + xmc#1, + blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek, + rmul=\Em, + sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;, + sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El, + +# This uses the second page memory option to save & restore screen +# contents. If your terminal is missing the option, this description +# should still work, but that has not been tested. + +tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support, + flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s, + smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>, + +# This simulates flashing by briefly toggling to the other page +# (kludge!) + +tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support, + bel=\EK$<100>\EK, use=tvi912b+2p, + +# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>) + +tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support, + kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r, + kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r, + kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, kf21=^Ai\r, kf22=^Aj\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, + +# Combinations of the basic building blocks + +tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes), + use=tvi912b+2p, use=tvi912b-unk, + +tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes), + use=tvi912b+vb, use=tvi912b-unk, + +tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print), + use=tvi912b+printer, use=tvi912b-unk, + +tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print), + use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk, + +tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print), + use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk, + +tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute), + use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk, + +tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies), + use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk, + +tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute), + use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk, + +tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies), + use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk, + +tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute), + use=tvi912b+dim, use=tvi912b-unk, + +tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies), + use=tvi912b+mc, use=tvi912b-unk, + +tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes), + use=tvi920b+fn, use=tvi912b-unk, + +tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes), + use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk, + +tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes), + use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk, + +tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print), + use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk, + +tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print), + use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer, + use=tvi912b-unk, + +tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print), + use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer, + use=tvi912b-unk, + +tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute), + use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim, + use=tvi912b-unk, + +tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies), + use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc, + use=tvi912b-unk, + +tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute), + use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim, + use=tvi912b-unk, + +tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies), + use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc, + use=tvi912b-unk, + +tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute), + use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk, + +tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies), + use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk, + +# Televideo 921 and variants +# From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995 +# (tvi921: removed :ko=bt: before translation, I see no backtab cap; +# also added empty <acsc> to suppress tic warning -- esr) +tvi921|televideo model 921 with sysline same as page & real vi function, + OTbs, OTpt, am, hs, xenl, xhp, + cols#80, lines#24, xmc#0, + acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, + cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, + el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, + if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, invis@, + is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, kcub1=^H, + kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER$<1*/>, + ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, nel=^M^J, rmacs=\E%%, + rmir=, smacs=\E$, smir=, tsl=\Ef\EG0, use=adm+sgr, +# without the beeper +# (tvi92B: removed :ko=bt: before translation, I see no backtab cap; +# also added empty <acsc> to suppress tic warning -- esr) +tvi92B|televideo model 921 with sysline same as page & real vi function & no beeper, + am, hs, xenl, xhp, + cols#80, lines#24, xmc#0, + acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, + cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, + el=\ET, flash=\Eb$<200/>\Ed, fsl=\Eg, home=^^, ht=^I, + ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, + invis@, is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, + kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, + kdl1=\ER$<1*/>, ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, + nel=^M^J, rmacs=\E%%, smacs=\E$, tsl=\Ef\EG0, use=adm+sgr, +# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr) +tvi92D|tvi92B with DTR instead of XON/XOFF & better padding, + dl1=\ER$<2*/>, il1=\EE$<2*/>, + is2=\El\E"\EF1\E.3\016\EA\E<, kdl1=\ER$<2*/>, + kil1=\EE$<2*/>, use=tvi92B, + +# (tvi924: This used to have <dsl=\Es0>, <fsl=\031>. I put the new strings +# in from a BSD termcap file because it looks like they do something the +# old ones skip -- esr) +tvi924|televideo tvi924, + am, bw, hs, in, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, wsl#80, xmc#0, + bel=^G, blink=\EG2, cbt=\EI, civis=\E.0, clear=\E*0, + cnorm=\E.3, cr=^M, csr=\E_%p1%{32}%+%c%p2%{32}%+%c, + cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\E.1, + dch1=\EW, dl1=\ER, dsl=\Es0\Ef\031, ed=\Ey, el=\Et, + flash=\Eb$<200>\Ed, fsl=\031\Es1, home=^^, ht=^I, hts=\E1, + ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, + invis@, is1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0, + kbs=^H, kclr=\E*0, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, + kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A@\r, kf1=^AA\r, + kf10=^AJ\r, kf11=^AK\r, kf12=^AL\r, kf13=^AM\r, kf14=^AN\r, + kf15=^AO\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, + kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, khome=^^, + kich1=\EQ, kil1=\EE, lf0=F1, lf1=F2, lf10=F11, lf2=F3, lf3=F4, + lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, + pfkey=\E|%p1%{49}%+%c%p2%s\031, ri=\Ej, tbc=\E3, tsl=\Ef, + use=adm+sgr, + +# TVI925 DIP switches. In each of these, D = Down and U = Up, +# +# Here are the settings for the external (baud) switches (S1): +# +# Position Baud +# 7 8 9 10 [Printer] +# 1 2 3 4 [Main RS232] +# ----------------------------------------------------- +# D D D D 9600 +# D D D U 50 +# D D U D 75 +# D D U U 110 +# D U D D 135 +# D U D U 150 +# D U U D 300 +# D U U U 600 +# U D D D 1200 +# U D D U 1800 +# U D U D 2400 +# U D U U 3600 +# U U D D 4800 +# U U D U 7200 +# U U U D 9600 +# U U U U 19200 +# +# +# Settings for word length and stop-bits (S1) +# +# Position Description +# 5 6 +# --------------------------- +# U - 7-bit word +# D - 8-bit word +# - U 2 stop bits +# - D 1 stop bit +# +# +# S2 (external) settings +# +# Position Up Dn Description +# -------------------------------------------- +# 1 X Local edit +# X Duplex edit (transmit editing keys) +# -------------------------------------------- +# 2 X 912/920 emulation +# X 925 +# -------------------------------------------- +# 3 X +# 4 X No parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Odd parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Even parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Mark parity +# 5 X +# -------------------------------------------- +# 3 X +# 4 X Space parity +# 5 X +# -------------------------------------------- +# 6 X White on black display +# X Black on white display +# -------------------------------------------- +# 7 X Half Duplex +# 8 X +# -------------------------------------------- +# 7 X Full Duplex +# 8 X +# -------------------------------------------- +# 7 X Block mode +# 8 X +# -------------------------------------------- +# 9 X 50 Hz +# X 60 Hz +# -------------------------------------------- +# 10 X CR/LF (Auto LF) +# X CR only +# +# S3 (internal switch) settings: +# +# Position Up Dn Description +# -------------------------------------------- +# 1 X Keyclick off +# X Keyclick on +# -------------------------------------------- +# 2 X English +# 3 X +# -------------------------------------------- +# 2 X German +# 3 X +# -------------------------------------------- +# 2 X French +# 3 X +# -------------------------------------------- +# 2 X Spanish +# 3 X +# -------------------------------------------- +# 4 X Blinking block cursor +# 5 X +# -------------------------------------------- +# 4 X Blinking underline cursor +# 5 X +# -------------------------------------------- +# 4 X Steady block cursor +# 5 X +# -------------------------------------------- +# 4 X Steady underline cursor +# 5 X +# -------------------------------------------- +# 6 X Screen blanking timer (ON) +# X Screen blanking timer (OFF) +# -------------------------------------------- +# 7 X Page attributes +# X Line attributes +# -------------------------------------------- +# 8 X DCD disconnected +# X DCD connected +# -------------------------------------------- +# 9 X DSR disconnected +# X DSR connected +# -------------------------------------------- +# 10 X DTR Disconnected +# X DTR connected +# -------------------------------------------- +# +# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr) +tvi925|televideo 925, + OTbs, am, bw, hs, ul, + cols#80, lines#24, xmc#1, + bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^V, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, + flash=\Eb$<200>\Ed, fsl=^M\Eg, home=^^, ht=^I, hts=\E1, + ich1=\EQ, il1=\EE, ind=^J, invis@, is2=\El\E", kbs=^H, kclr=^Z, + kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, + ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, + kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, + kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, ri=\Ej, tbc=\E3, + tsl=\Eh\Ef, use=adm+sgr, +# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL +# to avoid "magic cookie" standout glitch: +tvi925-hi|TeleVideo Model 925 with half intensity standout mode, + xmc@, + kbs=^H, kcub1=^H, kcud1=^J, rmso=\E(, smso=\E), use=tvi925, + +# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993 +# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82 +# for additional capabilities, +# The following tvi descriptions from B:pjphar and virus!mike +# is for all 950s. It sets the following attributes: +# full duplex (\EDF) write protect off (\E() +# conversation mode (\EC) graphics mode off (\E%) +# white on black (\Ed) auto page flip off (\Ew) +# turn off status line (\Eg) clear status line (\Ef\r) +# normal video (\E0) monitor mode off (\EX or \Eu) +# edit mode (\Er) load blank char to space (\Ee\040) +# line edit mode (\EO) enable buffer control (^O) +# protect mode off (\E\047) duplex edit keys (\El) +# program unshifted send key to send line all (\E016) +# program shifted send key to send line unprotected (\E004) +# set the following to nulls: +# field delimiter (\Ex0\200\200) +# line delimiter (\Ex1\200\200) +# start-protected field delimiter (\Ex2\200\200) +# end-protected field delimiter (\Ex3\200\200) +# set end of text delimiter to carriage return/null (\Ex4\r\200) +# +# TVI 950 Switch Setting Reference Charts +# +# TABLE 1: +# +# S1 1 2 3 4 5 6 7 8 9 10 +# +-----------------------+-----+-----+-----------------------+ +# | Computer Baud Rate |Data |Stop | Printer Baud Rate | +# | |Bits |Bits | | +# +------+-----------------------+-----+-----+-----------------------+ +# | Up | See | 7 | 2 | See | +# +------+-----------------------+-----+-----+-----------------------+ +# | Down | TABLE 2 | 8 | 1 | TABLE 2 | +# +------+-----------------------+-----+-----+-----------------------+ +# +# +# S2 1 2 3 4 5 6 7 8 9 10 +# +-----+-----+-----------------+-----+-----------+-----+-----+ +# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click| +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# | Up | Dplx|Blink| See |GonBk| See | 60 | Off | +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On | +# +------+-----+-----+-----------------+-----+-----------+-----+-----+ +# +# TABLE 2: +# +# +-----------+-----+-----+-----+-----+-----------+ +# | Display | 1 | 2 | 3 | 4 | Baud | +# +-----------+-----+-----+-----+-----+ | +# | Printer | 7 | 8 | 9 | 10 | Rate | +# +-----------+-----+-----+-----+-----+-----------+ +# | D | D | D | D | 9600 | +# | U | D | D | D | 50 | +# | D | U | D | D | 75 | +# | U | U | D | D | 110 | +# | D | D | U | D | 135 | +# | U | D | U | D | 150 | +# | D | U | U | D | 300 | +# | U | U | U | D | 600 | +# | D | D | D | U | 1200 | +# | U | D | D | U | 1800 | +# | D | U | D | U | 2400 | +# | U | U | D | U | 3600 | +# | D | D | U | U | 4800 | +# | U | D | U | U | 7200 | +# | D | U | U | U | 9600 | +# | U | U | U | U | 19200 | +# +-----+-----+-----+-----+-----------+ +# +# TABLE 3: +# +-----+-----+-----+-----------+ +# | 3 | 4 | 5 | Parity | +# +-----+-----+-----+-----------+ +# | X | X | D | None | +# | D | D | U | Odd | +# | D | U | U | Even | +# | U | D | U | Mark | +# | U | U | U | Space | +# +-----+-----+-----+-----------+ +# X = don't care +# +# CHART: +# +-----+-----+-----------------+ +# | 7 | 8 | Communication | +# +-----+-----+-----------------+ +# | D | D | Half Duplex | +# | D | U | Full Duplex | +# | U | D | Block | +# | U | U | Local | +# +-----+-----+-----------------+ +# +# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:". +# I also inserted <ich1> and <kich1>; the :ko: string indicated that <ich> +# should be present and all tvi native modes use the same string for this. +# Finally, note that BSD has cud1=^V. -- esr) +tvi950|televideo 950, + OTbs, am, hs, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, xmc#1, + acsc=b\011c\014d\re\ni\013, bel=^G, cbt=\EI, clear=\E*, + cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, flash=\Eb$<200/>\Ed, + fsl=^M, home=^^, ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J, + invis@, + is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r, + kbs=^H, kcbt=\EI, kclr=\E*, kcub1=^H, kcud1=^V, kcuf1=^L, + kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A0\r, + kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=^X, + rmir=\Er, smacs=^U, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, + use=adm+sgr, +# +# is for 950 with two pages adds the following: +# set 48 line page (\E\\2) +# place cursor at page 0, line 24, column 1 (\E-07 ) +# set local (no send) edit keys (\Ek) +# +# two page 950 adds the following: +# when entering ex, set 24 line page (\E\\1) +# when exiting ex, reset 48 line page (\E\\2) +# place cursor at 0,24,1 (\E-07 ) +# set duplex (send) edit keys (\El) when entering vi +# set local (no send) edit keys (\Ek) when exiting vi +# +tvi950-2p|televideo950 w/2 pages, + is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07 \011, + rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, + smkx=\El, use=tvi950, +# +# is for 950 with four pages adds the following: +# set 96 line page (\E\\3) +# place cursor at page 0, line 24, column 1 (\E-07 ) +# +# four page 950 adds the following: +# when entering ex, set 24 line page (\E\\1) +# when exiting ex, reset 96 line page (\E\\3) +# place cursor at 0,24,1 (\E-07 ) +# +tvi950-4p|televideo950 w/4 pages, + is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07 \011, + rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, + smkx=\El, use=tvi950, +# +# <is2> for reverse video 950 changes the following: +# set reverse video (\Ed) +# +# set vb accordingly (\Ed ...delay... \Eb) +# +tvi950-rv|televideo950 rev video, + flash=\Ed$<200/>\Eb, + is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0, + use=tvi950, + +# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv +tvi950-rv-2p|televideo950 rev video w/2 pages, + flash=\Ed$<200/>\Eb, + is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07\s, + rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, + smkx=\El, use=tvi950, + +# tvi950-rv uses the appropriate entries from 950-4p and 950-rv +tvi950-rv-4p|televideo950 rev video w/4 pages, + flash=\Ed$<200/>\Eb, + is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07\s, + rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, + smkx=\El, use=tvi950, +# From: Andreas Stolcke <stolcke@icsi.berkeley.edu> +# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H"; +# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in +# the :rs: string, inserted the <ich> implied by the termcap :ko: string. Note +# the :ko: string had :cl: in it, which means that one of the original +# <clear=\E*>, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what +# the 950 has. Finally, corrected the <kel> string to match the 950 and what +# ko implies -- esr) +# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would +# also work. +tvi955|televideo 955, + OTbs, mc5i, msgr@, + it#8, xmc@, + acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2, + civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH, + cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1, + is2=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El, kctab=\E2, khts=\E1, + knp=\EK, kpp=\EJ, krmir=\EQ, ktbc=\E3, mc0=\EP, rmacs=\E%%, + rmam=\E[=7l, rmxon=^N, + rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r, + sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O, + use=tvi950, +tvi955-w|955-w|televideo955 w/132 cols, + cols#132, + is2=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El, use=tvi955, +# use half-intensity as normal mode, full intensity as <bold> +tvi955-hb|955-hb|televideo955 half-bright, + bold=\E[=5l, dim@, is2=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El, + sgr0=\EG0\E[=5h, use=tvi955, +# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin +# (tvi970: removed ":sg#0:"; removed <rmso>=\E[m, <rmul>=\E[m; +# added <am>/<csr>/<home>/<hpa>/<vpa>/<smcup>/<rmcup> from BRL. +# According to BRL we could have <rmkx>=\E>, <smkx>=\E= but I'm not sure what +# it does to the function keys. I deduced <rmam>/<smam>. +# also added empty <acsc> to suppress tic warning, -- esr) +tvi970|televideo 970, + OTbs, OTpt, am, da, db, mir, msgr, + cols#80, it#8, lines#24, + acsc=, cbt=\E[Z, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=\ED, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df, + cuu1=\EM, cvvis=\E[1Q, dch1=\E[P, dl1=\E[M, dsl=\Eg\Ef\r, + ed=\E[J, el=\E[K, flash=\E[5m$<200/>\E[m, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, il1=\E[L, + is2=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\E?a, kf2=\E?b, kf3=\E?c, kf4=\E?d, kf5=\E?e, kf6=\E?f, + kf7=\E?g, kf8=\E?h, kf9=\E?i, khome=\E[H, ri=\EM, rmacs=\E(B, + rmam=\E[?7h, rmcup=, rmir=\E[4l, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smacs=\E(B, smam=\E[?7l, + smcup=\E[?20l\E[?7h\E[1Q, smir=\E[4h, smso=\E[7m, + smul=\E[4m, vpa=\E[%i%p1%dd, +tvi970-vb|televideo 970 with visual bell, + flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, + use=tvi970, +tvi970-2p|televideo 970 with using 2 pages of memory, + rmcup=\E[H\E[J\E[V, smcup=\E[U\E[?20l\E[?7h\E[1Q, + use=tvi970, +# Works with vi and rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 chars +# per line (rather than 40), Esc K chooses the normal character set. Not sure +# padding is needed, but adapted from the tvi920c termcap. The <smso> and +# <smul> strings are klutzy, but at least use no screen space. +# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>, +# its absence means <smam>=\Ev isn't safe to use. -- esr) +# From: Gene Rochlin <armsis@amber.berkeley.edu> 9/19/84. +# The <ed>/<kf0>/<kf1>/<khome>/<mc4>, and <mc5> caps are from BRL, which says: +# F1 and F2 should be programmed as ^A and ^B; required for UNIFY. +tvipt|televideo personal terminal, + OTbs, am, + cols#80, lines#24, + cbt=\EI, clear=^Z, cub1=^H, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER$<5*>, + ed=\EY, el=\ET, home=^^, if=/usr/share/tabset/stdcrt, + il1=\EE$<5*>, is2=\Ev\Eu\EK, kbs=^H, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, kf0=^A, kf1=^B, khome=^^, mc4=^T, mc5=^R, + rmso=\EF, rmul=\EF, smso=\EG1@A\EH, smul=\EG1B@\EH, +# From: Nathan Peterson <nathan@sco.com>, 03 Sep 1996 +tvi9065|televideo 9065, + am, bw, chts, hs, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lh#1, lines#25, lm#0, lw#9, ma#4, nlab#8, vt#0, + wnum#0, wsl#30, + acsc='r0_jhkglfmeniopqksqtmulvownxj, bel=^G, + blink=\EG2, bold=\EG\,, cbt=\EI, civis=\E.0, clear=^Z, + cnorm=\E.3, cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, + cub1=^H, cud=\E[%p1%dB, cud1=^V, cuf=\E[%p1%dC, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu=\E[%p1%dA, + cuu1=^K, cvvis=\E.2, dch=\E[%p1%dP, dch1=\EW, dim=\EGp, + dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY, + el=\ET, flash=\Eb$<15>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, + ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt, + il=\E[%p1%dL, il1=\EE, ind=^J, indn=\E[%p1%dS, invis=\EG1, + ip=$<3>, + is1=\E"\E%\E'\E(\EG@\EO\EX\E[=5l\E[=6l\E[=7h\Ed\Er, + is2=\EF2\EG0\E\\L, is3=\E<\E[=4l\E[=8h, kHOM=\E\s\s\s, + kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, + kdch1=\EW, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ll=\E[25;1H, + mc0=\E[0;0i, mc4=\Ea, mc5=\E`, nel=^M^J, + pfkey=\E|%p1%{48}%+%c3%p2%s\031, + pfloc=\E|%p1%{48}%+%c2%p2%s\031, + pfx=\E|%p1%{48}%+%c1%p2%s\031, + pln=\E_%p1%{63}%+%c%p2%s\r, prot=\E&, + rep=\E[%p2%db%p1%c, rev=\EG4, + rf=/usr/share/tabset/stdcrt, ri=\Ej, rin=\E[%p1%dT, + rmacs=\E%%, rmam=\E[=7l, rmcup=\E.3\Er\E[1;25r\E[25;0H, + rmdc=\0, rmir=\Er, rmln=\E[4;1v, rmso=\EG0, rmul=\EG0, + rmxon=^N, rs1=\EC\EDF\E[0;0v\E[8;1v\E[=65l, + rs2=\E.b\E[10;20v\E[14;1v\E[3;0v\E[7;0v\E[=11.h\E[=12.h\E[=13.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=21l\E[=23l\E[=3l\E_40\E_50\En\Ew\Ee \Ex0\0\0\Ex1\0\0\Ex2\0\0\Ex3\0\0\Ex4\0\0\E1, + rs3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0, + sgr=\EG0%?%p1%t\EGt%;%?%p2%t\EG8%;%?%p3%t\EG4%;%?%p4%t\EG2%;%?%p5%t\EGp%;%?%p6%t\EG\,%;%?%p7%t\EG1%;%?%p9%t\E$%e\E%%%;, + sgr0=\EG0, smacs=\E$, smam=\E=7h, smcup=\E.2, smdc=\Er, + smir=\Eq, smln=\E[4;2v, smso=\EGt, smul=\EG8, smxon=^O, + tbc=\E3, tsl=\E[4;1v\E_30, uc=\EG8\EG0, + +#### Visual (vi) +# +# In September 1993, Visual Technology of Westboro, Massachusetts, +# merged with White Pine Software of Nashua, New Hampshire. +# +# White Pine Software may be contacted at +1 603/886-9050. +# Or visit White Pine on the World Wide Web at URL http://www.wpine.com. +# + +# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs> +# Recently I hacked together the following termcap for Visual +# Technology's Visual 50 terminal. It's a slight modification of +# the vt52 termcap. +# It's intended to run when the Visual 50 is in vt52 emulation mode +# (I know what you're thinking; if it's emulating a vt52, then why +# another termcap? Well, it turns out that the Visual 50 can handle +# <dl1> and db(?) among other things, which the vt52 can't) +# The termcap works OK for the most part. The only problem is on +# character inserts. The whole line gets painfully redrawn for each +# character typed. Any suggestions? +# Beau's entry is combined with the vi50 entry from University of Wisconsin. +# Note especially the <il1> function. <kf4>-<kf6> are really l4-l6 in +# disguise; <kf7>-<kf9> are really l1-l3. +vi50|visual 50, + OTbs, OTpt, am, da, db, msgr, + cols#80, it#8, lines#24, + OTnl=^J, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=^M, cub1=^H, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dl1=\EM$<3*/>, ed=\EJ, el=\EK$<16/>, home=\EH, + ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\EV, + kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH, + nel=^M^J, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES, +# this one was BSD & SCO's vi50 +vi50adm|visual 50 in adm3a mode, + am, msgr, + cols#80, it#8, lines#24, + bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\EM, + ed=\Ek, el=\EK, home=\EH, ht=^I, il1=\EL, ind=^J, kbs=^H, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH, + rmso=\ET, smso=\EU, +# From: Jeff Siegal <jbs@quiotix.com> +vi55|Visual 55, + OTbs, am, mir, msgr, + cols#80, it#8, lines#24, + clear=\Ev, csr=\E_%p1%{65}%+%c%p2%{65}%+%c, cub1=^H, + cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dch1=\Ew, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, + il1=\EL, is2=\Ev\E_AX\Eb\EW\E9P\ET, kbs=^H, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EI, rmir=\Eb, rmso=\ET, + smir=\Ea, smso=\EU, + +# Visual 200 from BRL +# The following switch settings are assumed for normal operation: +# FULL_DUPLEX SCROLL CR +# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE +# Other switches may be set for operator convenience or communication +# requirements. +# Character insertion is kludged in order to get around the "beep" misfeature. +# (This cap is commented out because <smir>/<rmir> is more efficient -- esr) +# Supposedly "4*" delays should be used for <il1>, <ed>, <clear>, <dch1>, +# and <dl1> strings, but we seem to get along fine without them. +vi200|visual 200, + OTbs, OTpt, am, mir, msgr, + OTkn#10, cols#80, it#8, lines#24, + acsc=, bel=^G, cbt=\Ez, clear=\Ev, cnorm=\Ec, cr=^M, cub1=^H, + cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, cvvis=\Ed, dch1=\EO, dim=\E4, dl1=\EM, ed=\Ey, + el=\Ex, home=\EH, ht=^I, hts=\E1, il1=\EL, ind=^J, invis=\Ea, + kbs=^H, kclr=\Ev, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EO, kdl1=\EM, ked=\EJ, kel=\Et, kf0=\E?p, + kf1=\E?q, kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, + kf7=\E?w, kf8=\E?x, kf9=\E?y, khome=\EH, khts=\E1, kich1=\Ei, + kil1=\EL, krmir=\Ej, mc0=\EH\E], mc4=\EX, mc5=\EW, ri=\EI, + rmacs=\EG, rmkx=\E>, rmso=\E3, + rs1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX, sgr0=\E3\Eb, smacs=\EF, + smkx=\E=, smso=\E4, tbc=\Eg, +# The older Visuals didn't come with function keys. This entry uses +# <smkx> and <rmkx> so that the keypad keys can be used as function keys. +# If your version of vi doesn't support function keys you may want +# to use vi200-f. +vi200-f|visual 200 no function keys, + is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, kf0=\E?p, kf1=\E?q, + kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, kf7=\E?w, + kf8=\E?x, kf9=\E?y, rmkx=\E>, rmso@, smkx=\E=, smso@, + use=vi200, +vi200-rv|visual 200 reverse video, + cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200, + +# the function keys are programmable but we don't reprogram them to their +# default values with <is2> because programming them is very verbose. maybe +# an initialization file should be made for the 300 and they could be stuck +# in it. +# (vi300: added <rmam>/<smam> based on init string -- esr) +vi300|visual 300 ansi x3.64, + am, bw, mir, xenl, + cols#80, lines#24, + bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + dch1=\E[P$<40>, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + il1=\E[L, ind=^J, + is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\E_A\E\\, kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\, + kf5=\E_E\E\\, kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\, + kf9=\E_I\E\\, khome=\E[H, ri=\EM, rmam=\E[?7l, rmir=\E[4l, + rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, + smso=\E[1m, smul=\E[4m, +# some of the vi300s have older firmware that has the command +# sequence for setting editing extent reversed. +vi300-old|visual 300 with old firmware (set edit extent reversed), + is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s, + use=vi300, + +# Visual 500 prototype entry from University of Wisconsin. +# The best place to look for the escape sequences is page A1-1 of the +# Visual 500 manual. The initialization sequence given here may be +# overkill, but it does leave out some of the initializations which can +# be done with the menus in set-up mode. +# The :xp: line below is so that emacs can understand the padding requirements +# of this slow terminal. :xp: is 10 time the padding factor. +# (vi500: removed unknown :xp#4: termcap; +# also added empty <acsc> to suppress tic warning -- esr) +vi500|visual 500, + am, mir, msgr, + cols#80, it#8, lines#33, + acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=^M, + csr=\E(%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=\EB, + cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, + dch1=\EO$<3*/>, dl1=\EM$<3*/>, ed=\Ey$<3*/>, + el=\Ex$<16/>, home=\EH, ht=\011$<8/>, il1=\EL\Ex$<3*/>, + ind=^J, + is2=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\, + kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + khome=\EH, nel=^M^J, rmacs=^O, rmir=\Ej, rmso=\E^G, + rmul=\E^C, smacs=^N, smir=\Ei, smso=\E^H, smul=\E^D, + +# The visual 550 is a visual 300 with tektronix graphics, +# and with 33 lines. clear screen is modified here to +# also clear the graphics. +vi550|visual 550 ansi x3.64, + lines#33, + clear=\030\E[H\E[2J, use=vi300, + +vi603|visual603|visual 603, + hs, mir, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, + csr=\E[%i%p1%d;%p2%dr, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, + dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L, + ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r, + rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, + sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~, + use=vt100, + +#### Wyse (wy) +# +# Wyse Technology +# 3471 North First Street +# San Jose, CA 95134 +# Vox: (408)-473-1200 +# Fax: (408) 473-1222 +# Web: http://www.wyse.com +# +# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at +# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the +# obvious address, <http://www.wyse.com>. They keep terminfo entries at +# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>. +# +# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995. +# They now own the Qume and Amdek brands, too. So these are the people to +# talk with about all Link, Qume, and Amdek terminals. +# +# These entries include a few small fixes. +# I canceled the bel capacities in the vb entries. +# I made two trivial syntax fixes in the wyse30 entry. +# I made some entries relative to adm+sgr. +# +# +# Note: The wyse75, wyse85, and wyse99 have been discontinued. + +# Although the Wyse 30 can support more than one attribute +# it requires magic cookies to do so. Many applications do not +# function well with magic cookies. The following terminfo uses +# the protect mode to support one attribute (dim) without cookies. +# If more than one attribute is needed then the wy30-mc terminfo +# should be used. +# +wy30|wyse30|Wyse 30, + am, bw, hs, mc5i, mir, msgr, xon, + cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, + acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, + civis=\E`0, clear=\E+$<80>, cnorm=\E`1, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, dch1=\EW$<10>, dim=\E`7\E), dl1=\ER$<1>, + dsl=\EF\r, ed=\EY$<80>, el=\ET, flash=\E`8$<100/>\E`9, + fsl=^M, home=^^, ht=\011$<1>, hts=\E1, il1=\EE$<2>, + ind=\n$<2>, ip=$<2>, is2=\E'\E(\E\^3\E`9\016\024, + kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, + kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=^^, kich1=\EQ, + kil1=\EE, knp=\EK, kpp=\EJ, krpl=\Er, ll=^^^K, mc0=\EP, mc4=^T, + mc5=^X, nel=^M^J, pfx=\Ez%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), ri=\Ej$<3>, + rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, + sgr=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, + sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, + smso=\E`7\E), tbc=\E0, tsl=\EF, +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +# (wy30-mc: added <smcup> to suppress tic warning --esr) +wy30-mc|wyse30-mc|wyse 30 with magic cookies, + msgr@, + ma@, xmc#1, + blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003, + rmcup=\EG0, rmso=\EG0, + sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, + sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, + smso=\EG4, use=wy30, use=adm+sgr, +# The mandatory pause used by <flash> does not work with +# older versions of terminfo. If you see this effect then +# unset xon and delete the / from the delay. +# i.e. change $<100/> to $<100> +wy30-vb|wyse30-vb|wyse 30 visible bell, + bel@, use=wy30, +# +# The Wyse 50 can support one attribute (e.g. Dim, Inverse, +# Normal) without magic cookies by using the protect mode. +# The following description uses this feature, but when more +# than one attribute is put on the screen at once, all attributes +# will be changed to be the same as the last attribute given. +# The Wyse 50 can support more attributes when used with magic +# cookies. The wy50-mc terminal description uses magic cookies +# to correctly handle multiple attributes on a screen. +# +wy50|wyse50|Wyse 50, + am, bw, hs, mc5i, mir, msgr, xon, + cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, + acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, + civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, dch1=\EW$<1>, dim=\E`7\E), dl1=\ER, dsl=\EF\r, + ed=\EY$<20>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, + home=^^, ht=^I, hts=\E1, il1=\EE, ind=\n$<2>, ip=$<1>, + is1=\E`\:\E`9$<30>, is2=\016\024\E'\E(, kHOM=\E{, kbs=^H, + kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, + kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, + kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, + ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, + pfx=\Ez%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), rev=\E`6\E), + ri=\Ej, rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, + sgr=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, + sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, + smso=\E`6\E), tbc=\E0, tsl=\EF, +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +# The mandatory pause used by flash does not work with some +# older versions of terminfo. If you see this effect then +# unset <xon> and delete the / from the delay. +# i.e. change $<100/> to $<100> +# (wy50-mc: added <smcup> to suppress tic warning --esr) +wy50-mc|wyse50-mc|wyse 50 with magic cookies, + msgr@, + ma@, xmc#1, + blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4, + rmacs=\EG0\EH\003, rmcup=\EG0, rmso=\EG0, + sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, + sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, + smso=\EGt, use=wy50, use=adm+sgr, +wy50-vb|wyse50-vb|wyse 50 visible bell, + bel@, use=wy50, +wy50-w|wyse50-w|wyse 50 132-column, + cols#132, lw#7, nlab#16, wsl#97, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, + use=wy50, +wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell, + bel@, use=wy50-w, + +# +# The Wyse 350 is a Wyse 50 with color. +# Unfortunately this means that it has magic cookies. +# The color attributes are designed to overlap the reverse, dim and +# underline attributes. This is nice for monochrome applications +# because you can make underline stuff green (or any other color) +# but for true color applications it's not so hot because you cannot +# mix color with reverse, dim or underline. +# To further complicate things one of the attributes must be +# black (either the foreground or the background). In reverse video +# the background changes color with black letters. In normal video +# the foreground changes colors on a black background. +# This terminfo uses some of the more advanced features of curses +# to display both color and blink. In the final analysis I am not +# sure that the wy350 runs better with this terminfo than it does +# with the wy50 terminfo (with user adjusted colors). +# +# The mandatory pause used by flash does not work with +# older versions of terminfo. If you see this effect then +# unset xon and delete the / from the delay. +# i.e. change $<100/> to $<100> +# +# Bug: The <op> capability resets attributes. +wy350|wyse350|Wyse 350, + am, bw, hs, mc5i, mir, xon, + colors#8, cols#80, lh#1, lines#24, lw#8, ncv#55, nlab#8, pairs#8, + wsl#45, xmc#1, + acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, + cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, + cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<1>, + dim=\EGp, dl1=\ER, dsl=\EF\r, ed=\EY$<20>, el=\ET, + flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, + il1=\EE, ind=\n$<2>, ip=$<1>, is1=\E`\:\E`9$<30>, + is2=\016\024\E'\E(, is3=\E%?, kHOM=\E{, kbs=^H, kcbt=\EI, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, + ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, + kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, + ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, oc=\E%?, op=\EG0, + pfx=\Ez%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\EG0\E), ri=\Ej, + rmacs=\EG0\EH\003, rmir=\Er, rmln=\EA11, setb=, + setf=%?%p1%{0}%=%t%{76}%e%p1%{1}%=%t%{64}%e%p1%{2}%=%t%{8}%e%p1%{3}%=%t%{72}%e%p1%{4}%=%t%{4}%e%p1%{5}%=%t%{68}%e%p1%{6}%=%t%{12}%e%p1%{7}%=%t%{0}%;%PC\EG%gC%gA%+%{48}%+%c, + sgr=%{0}%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;%PA\EG%?%gC%t%gC%e%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p5%t%{64}%|%;%;%gA%+%{48}%+%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, + sgr0=\EG0\E(\EH\003%{0}%PA%{0}%PC, smacs=\EG0\EH\002, + smir=\Eq, smln=\EA10, tbc=\E0, tsl=\EF, use=adm+sgr, +wy350-vb|wyse350-vb|wyse 350 visible bell, + bel@, use=wy350, +wy350-w|wyse350-w|wyse 350 132-column, + cols#132, lw#7, nlab#16, wsl#97, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, + use=wy350, +wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell, + bel@, use=wy350-w, +# +# This terminfo description is untested. +# The wyse100 emulates an adm31, so the adm31 entry should work. +# +wy100|wyse 100, + hs, mir, + cols#80, lines#24, xmc#1, + bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, dsl=\EA31, ed=\EY, el=\ET, fsl=^M, il1=\EE, ind=^J, + invis@, is2=\Eu\E0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, + kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=\E{, + rmir=\Er, smir=\Eq, tsl=\EF, use=adm+sgr, +# +# The Wyse 120/150 has most of the features of the Wyse 60. +# This terminal does not need padding up to 9600 baud! +# <msgr> should be set but the clear screen fails when in +# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear +# then set <msgr>. +# +wy120|wyse120|wy150|wyse150|Wyse 120/150, + am, bw, hs, km, mc5i, mir, msgr, xon, + cols#80, it#8, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, + acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, + bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, + cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, + dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, + flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=\011$<1>, + hts=\E1, il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, + is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, + is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, + kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, + kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, + mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, + pfloc=\EZ2%p1%{63}%+%c%p2%s\177, + pfx=\EZ1%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, + rmacs=\EcD, rmam=\Ed., rmcup=\Ew1, rmir=\Er, rmln=\EA11, + rmxon=\Ec20, rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, + rs3=\EwG\Ee($<100>, + sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, + sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, + smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, + tbc=\E0, tsl=\EF, use=adm+sgr, +# +wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column, + cols#132, lw#7, nlab#16, wsl#97, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, + rs2=\E`;$<70>, use=wy120, +# +wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy120, +# +wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy120-w, +# +wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell, + bel@, use=wy120, +# +wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell, + bel@, use=wy120-w, +# +# The Wyse 60 is like the Wyse 50 but with more padding. +# The reset strings are slow and the pad times very depending +# on other parameters such as font loading. I have tried +# to follow the following outline: +# +# <rs1> -> set personality +# <rs2> -> set number of columns +# <rs3> -> set number of lines +# <is1> -> select the proper font +# <is2> -> do the initialization +# <is3> -> set up display memory (2 pages) +# +# The Wyse 60's that have vt100 emulation are slower than the +# older Wyse 60's. This change happened mid-1987. +# The capabilities effected are <dch1> <dl1> <il1> <ind> <ri> +# +# The meta key is only half right. This terminal will return the +# high order bit set when you hit CTRL-function_key +# +# It may be useful to assign two function keys with the +# values \E=(\s look at old data in page 1 +# \E=W, look at bottom of page 1 +# where \s is a space ( ). +# +# Note: +# The Wyse 60 runs faster when the XON/XOFF +# handshake is turned off. +# +# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid +# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) +wy60|wyse60|Wyse 60, + am, bw, hs, km, mc5i, mir, msgr, + cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#45, + acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, + bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<100>, + cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW$<11>, dclk=\E`b, dim=\EGp, dl1=\ER$<5>, dsl=\EF\r, + ed=\EY$<100>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, + home=\E{, ht=\011$<1>, hts=\E1, il1=\EE$<4>, ind=\n$<5>, + ip=$<3>, is1=\EcB0\EcC1, + is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, + is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, + kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, + kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, + mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, + pfloc=\EZ2%p1%{63}%+%c%p2%s\177, + pfx=\EZ1%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>, + rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew1, rmir=\Er, + rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<150>, + rs2=\EeG$<150>, rs3=\EwG\Ee($<200>, + sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, + sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, + smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, + tbc=\E0, tsl=\EF, use=adm+sgr, +# +wy60-w|wyse60-w|wyse 60 132-column, + cols#132, lw#7, nlab#16, wsl#97, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<16>, ip=$<5>, + rs2=\EeF$<150>\E`;$<150>, use=wy60, +# +wy60-25|wyse60-25|wyse 60 80-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<200>, use=wy60, +wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<200>, use=wy60-w, +# +wy60-42|wyse60-42|wyse 60 80-column 42-lines, + lines#42, + clear=\E+$<260>, cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<2>, + dch1=\EW$<16>, dl1=\ER$<11>, ed=\Ey$<260>, il1=\EE$<11>, + ind=\n$<9>, ip=$<5>, is1=\EcB2\EcC3, nel=\r\n$<6>, + ri=\Ej$<10>, rs3=\Ee*$<150>, use=wy60, +wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines, + cols#132, lw#7, nlab#16, wsl#97, + clear=\E+$<260>, cup=\Ea%i%p1%dR%p2%dC$<2>, + dch1=\EW$<19>, ed=\Ey$<260>, home=\036$<2>, ip=$<6>, + nel=\r\n$<11>, rs2=\EeF$<150>\E`;$<150>, use=wy60-42, +# +wy60-43|wyse60-43|wyse 60 80-column 43-lines, + lh@, lines#43, lw@, nlab@, + pln@, rs3=\Ee+$<150>, use=wy60-42, +wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines, + lh@, lines#43, lw@, nlab@, + pln@, rs3=\Ee+$<150>, use=wy60-42-w, +# +wy60-vb|wyse60-vb|Wyse 60 visible bell, + bel@, use=wy60, +wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell, + bel@, use=wy60-w, + +# The Wyse-99GT looks at lot like the Wyse 60 except that it +# does not have the 42/43 line mode. In the Wyse-60 the "lines" +# setup parameter controls the number of lines on the screen. +# For the Wyse 99GT the "lines" setup parameter controls the +# number of lines in a page. The screen can display 25 lines max. +# The Wyse-99GT also has personalities for the VT220 and +# Tektronix 4014. But this has no bearing on the native mode. +# +# (msgr) should be set but the clear screen fails when in +# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear +# then set msgr, else use msgr@. +# +# u0 -> enter Tektronix mode +# u1 -> exit Tektronix mode +# +wy99gt|wyse99gt|Wyse 99gt, + msgr@, + clear=\E+$<130>, dch1=\EW$<7>, dl1=\ER$<4>, ed=\Ey$<130>, + el=\Et$<5>, flash=\E`8$<100/>\E`9, ht=\011$<1>, + il1=\EE$<4>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@, + ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`\:$<150>, smcup=\Ew1, + u0=\E~>\E8, u1=\E[42h, use=wy60, +# +wy99gt-w|wyse99gt-w|wyse 99gt 132-column, + cols#132, lw#7, nlab#16, wsl#97, + clear=\E+$<160>, cup=\Ea%i%p1%dR%p2%dC$<2>, + dch1=\EW$<9>, ed=\Ey$<160>, ip=$<4>, rs2=\E`;$<150>, + use=wy99gt, +# +wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs2=\E`\:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt, +# +wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs2=\E`;$<150>, use=wy99gt-w, +# +wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell, + bel@, use=wy99gt, +# +wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell, + bel@, use=wy99gt-w, + +# Can't set tabs! Other bugs (ANSI mode only): +# - can't redefine function keys (anyway, key redefinition in ANSI mode +# is too much complex to be described); +# - meta key can't be described (the terminal forgets it when reset); +# The xon-xoff handshaking can't be disabled while in ansi personality, so +# emacs can't work at speed greater than 9600 baud. No padding is needed at +# this speed. +# dch1 has been commented out because it causes annoying glittering when +# vi deletes one character at the beginning of a line with tabs in it. +# dch makes sysgen(1M) have a horrible behaviour when deleting +# a screen and makes screen(1) behave badly, so it is disabled too. The nice +# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are +# not, so smir and rmir are commented out as well. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard), + am, km, mc5i, mir, msgr, xenl, + cols#80, it#8, lines#25, vt#3, + acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<200>, cnorm=\E[34h\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<1>, + cub1=\010$<1>, cud=\E[%p1%dB, cud1=\ED, + cuf=\E[%p1%dC$<1>, cuf1=\E[C$<1>, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, + cvvis=\E[34l\E[?25h, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J$<8*>, el=\E[K$<1>, el1=\E[1K$<1>, + enacs=\E)0, flash=\E[?5h$<30/>\E[?5l, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, + il1=\E[L, ind=\n$<1>, invis=\E[8m, + is2=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i, + kbs=^H, kcbt=\E[z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, + kf12=\E[24~, kf17=\E[K, kf18=\E[31~, kf19=\E[32~, kf2=\EOQ, + kf20=\E[33~, kf21=\E[34~, kf22=\E[35~, kf23=\E[1~, + kf24=\E[2~, kf3=\EOR, kf4=\EOS, kf5=\E[M, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, ll=\E[24E, mc0=\E[?19h, + mc4=\E[4i, mc5=\E[5i, nel=\EE, prot=\E[1"q, rc=\E8, + rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m, + rs2=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i, + sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%O%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m\E[%?%p8%t1%;"q%?%p9%t\016%e\017%;, + sgr0=\E[m\017\E["q, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, + +# This is the american terminal. Here tabs work fine. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard), + hts=\EH, is3=\E[?5l, rs3=\E[?5l, tbc=\E[3g, use=wy99-ansi, + +# This terminal (firmware version 02) has a lot of bugs: +# - can't set tabs; +# - other bugs in ANSI modes (see above). +# This description disables handshaking when using cup. This is because +# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal +# cannot be used at speeds greater than 9600 baud, because at greater +# speeds handshaking is needed even for character sending. If you use +# DTR handshaking, you can use even greater speeds. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard), + am, bw, hs, km, mc5i, mir, msgr, xon, + cols#80, it#8, lines#25, wsl#46, + acsc='x+y.w_vi~j(k'l&m%n)o9q*s8t-u.v\,w+x=, bel=^G, + blink=\EG2, cbt=\EI, civis=\E`0, clear=\E'\E(\032, + cnorm=\E`4\E`1, cr=^M, cub1=^H, cud1=\Ej, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + cvvis=\E`2\E`1, dch1=\EW, dim=\EGp, dl1=\ER, dsl=\EF\r, + ed=\EY$<8*>, el=\ET$<8>, enacs=\Ec@1J$<2000>, + flash=\E\^1$<30/>\E\^0, fsl=^M, home=^^, ht=^I, il1=\EE, + ind=^J, invis=\EG3, + is2=\Eu\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\EcD\024, + ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^A`\r, kf14=^Aa\r, kf15=^Ab\r, + kf16=^Ac\r, kf17=^Ad\r, kf18=^Ae\r, kf19=^Af\r, kf2=^AA\r, + kf20=^Ag\r, kf21=^Ah\r, kf22=^Ai\r, kf23=^Aj\r, kf24=^Ak\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, kprt=\EP, mc0=\EP, mc4=^T, mc5=\Ed#, + nel=^_, prot=\E), rev=\EG4, ri=\Ej, rmacs=\EcD, rmam=\Ed., + rmcup=\Ec21\Ec31, rmir=\Er, rmso=\EG0, rmxon=\Ec20\Ec30, + rs2=\Eu\E~4\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\Ec@0B\EcD\024, + sgr=\E(\EG%{48}%?%p1%p3%O%t%{4}%+%;%?%p2%t%{8}%+%;%?%p4%t%{2}%+%;%?%p5%t%{64}%+%;%?%p7%t%{1}%+%;%c%?%p8%t\E)%;%?%p9%t\EcE%e\EcD%;, + sgr0=\E(\EG0, smacs=\EcE, smam=\Ed/, smcup=\Ec20\Ec30, + smir=\Eq, smso=\EG4, smxon=\Ec21\Ec31, tsl=\EF, + +# This is the american terminal. Here tabs work. +# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 +wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard), + hts=\E1, tbc=\E0, use=wy99f, + +# +# The Wyse 160 is combination of the WY-60 and the WY-99gt. +# The reset strings are slow and the pad times very depending +# on other parameters such as font loading. I have tried +# to follow the following outline: +# +# <rs1> -> set personality +# <rs2> -> set number of columns +# <rs3> -> set number of lines +# <is1> -> select the proper font +# <is2> -> do the initialization +# <is3> -> set up display memory (2 pages) +# +# The display memory may be used for either text or graphics. +# When "Display Memory = Shared" the terminal will have more pages +# but garbage may be left on the screen when you switch from +# graphics to text. If "Display Memory = Unshared" then the +# text area will be only one page long. +# +# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid +# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) +wy160|wyse160|Wyse 160, + am, bw, hs, km, mc5i, mir, msgr, + cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#38, + acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, + bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<30>, + cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<5>, + dclk=\E`b, dim=\EGp, dl1=\ER$<1>, dsl=\EF\r, ed=\EY$<30>, + el=\ET$<5>, flash=\E`8$<100/>\E`9, fsl=^M, home=\E{, ht=^I, + hts=\E1, il1=\EE$<1>, ind=\n$<1>, ip=$<2>, is1=\EcB0\EcC1, + is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, + is3=\Ew0$<100>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, + kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, + kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, + mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<1>, + pfloc=\EZ2%p1%{63}%+%c%p2%s\177, + pfx=\EZ1%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<1>, + rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew0, rmir=\Er, + rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<70>, + rs2=\E`\:$<100>, rs3=\EwG\Ee($<140>, + sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, + sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, + smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, + tbc=\E0, tsl=\EF, use=adm+sgr, +# +wy160-w|wyse160-w|wyse 160 132-column, + cols#132, lw#7, nlab#16, wsl#90, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<9>, + rs2=\EeF$<150>\E`;$<150>, use=wy160, +# +wy160-25|wyse160-25|wyse 160 80-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<200>, use=wy160, +wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<200>, use=wy160-w, +# +wy160-42|wyse160-42|wyse 160 80-column 42-lines, + lines#42, + clear=\E+$<50>, dl1=\ER$<2>, ed=\Ey$<50>, il1=\EE$<2>, + ind=\n$<2>, is1=\EcB2\EcC3, nel=\r\n$<2>, ri=\Ej$<2>, + rs3=\Ee*$<150>, use=wy160, +wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines, + cols#132, lw#7, nlab#16, wsl#90, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<8>, ip=$<3>, + rs2=\EeF$<150>\E`;$<150>, use=wy160-42, +# +wy160-43|wyse160-43|wyse 160 80-column 43-lines, + lh@, lines#43, lw@, nlab@, + pln@, rs3=\Ee+$<150>, use=wy160-42, +wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines, + lh@, lines#43, lw@, nlab@, + pln@, rs3=\Ee+$<150>, use=wy160-42-w, +# +wy160-vb|wyse160-vb|Wyse 160 visible bell, + bel@, use=wy160, +wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell, + bel@, use=wy160-w, +# +# The Wyse 75 is a vt100 lookalike without advanced video. +# +# The Wyse 75 can support one attribute (e.g. Dim, Inverse, +# Underline) without magic cookies. The following description +# uses this capability, but when more than one attribute is +# put on the screen at once, all attributes will be changed +# to be the same as the last attribute given. +# The Wyse 75 can support more attributes when used with magic +# cookies. The wy75-mc terminal description uses magic cookies +# to correctly handle multiple attributes on a screen. +# +wy75|wyse75|wyse 75, + am, hs, mc5i, mir, msgr, xenl, xon, + cols#80, lines#24, ma#1, pb#1201, wsl#78, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<30>, + cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr$<2>, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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$<3*>, + dch1=\E[P$<3>, dim=\E[0t\E[2m, dl=\E[%p1%dM$<1*>, + dl1=\E[M, dsl=\E[>\,\001\001\E[>-\001\001, + ech=\E[%p1%dX, ed=\E[J$<30>, el=\E[K$<3>, el1=\E[1K$<3>, + enacs=\E)0, flash=\E[30h\E\,\E[30l$<250>, fsl=^A, + home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, + ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, + ind=\n$<2>, ip=$<1>, + is1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h, + is2=\E>\E(B\E)0\017, is3=\E[m, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K, + kf1=\E[?5i, 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[?3i, + kf20=\E[34~, kf21=\E[35~, kf3=\E[2i, kf4=\E[@, kf5=\E[M, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, + khlp=\E[28~, khome=\E[H, kich1=\E[@, kil1=\E[L, knp=\E[6~, + kpp=\E[5~, kprt=\E[?5i, kslt=\E[4~, mc0=\E[0i, mc4=\E[4i, + mc5=\E[5i, rc=\E8, rev=\E[1t\E[7m, ri=\EM$<2>, rmacs=^O, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, rmul=\E[m, + rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<80>, rs3=\E[?5l, + sc=\E7, + sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m, + tbc=\E[3g, tsl=\E[>\,\001, use=vt220+keypad, +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +wy75-mc|wyse75-mc|wyse 75 with magic cookies, + msgr@, + ma@, xmc#1, + blink=\E[2p, dim=\E[1p, invis=\E[4p, is3=\E[m\E[p, + rev=\E[16p, rmacs=\E[0p\017, rmso=\E[0p, rmul=\E[0p, + sgr=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%t\016%e\017%;, + sgr0=\E[0p\017, smacs=\E[0p\016, smso=\E[17p, smul=\E[8p, + use=wy75, +wy75-vb|wyse75-vb|wyse 75 with visible bell, + pb@, + bel@, use=wy75, +wy75-w|wyse75-w|wyse 75 in 132 column mode, + cols#132, wsl#130, + rs2=\E[35h\E[?3h$<80>, use=wy75, +wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns, + pb@, + bel@, use=wy75-w, +# +# Wyse 85 emulating a vt220 7 bit mode. +# 24 line screen with status line. +# +# The vt220 mode permits more function keys but it wipes out +# the escape key. I strongly recommend that <f11> be set to +# escape (esc). +# The terminal may have to be set for 8 data bits and 2 stop +# bits for the arrow keys to work. +# The Wyse 85 runs faster with XON/XOFF enabled. Also the +# <dch> and <ich> work best when XON/XOFF is set. <ich> and +# <dch> leave trash on the screen when used without XON/XOFF. +# +wy85|wyse85|wyse 85, + am, hs, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, + dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, + dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, + ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, + enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, + fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, + ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, + ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, + is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, + is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, 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~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, + khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, + mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, + rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, + rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, + rs3=\E[?5l, sc=\E7, + sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+keypad, +# +# Wyse 85 with visual bell. +wy85-vb|wyse85-vb|wyse 85 with visible bell, + bel@, flash=\E[30h\E\,\E[30l$<300>, use=wy85, +# +# Wyse 85 in 132-column mode. +wy85-w|wyse85-w|wyse 85 in 132-column mode, + cols#132, wsl#132, + rs2=\E[35h\E[?3h$<70>, use=wy85, +# +# Wyse 85 in 132-column mode with visual bell. +wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns, + bel@, use=wy85-w, + +# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998 +# This copes with an apparent firmware bug in the wy85. He writes: +# "What I did was change leave the terminal cursor keys set to Normal +# (instead of application), and change \E[ to \233 for all the keys in +# terminfo. At one point, I found some reference indicating that this +# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just +# me), but I can't find that and the server under my bookmark to "Wyse +# Technical" isn't responding. So there's the question of wether the wy85 +# terminfo should reflect the manufactuer's intended behaviour of the terminal +# or the actual." +wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode, + am, hs, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, + dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, + dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, + ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, + enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, + fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, + ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, + ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, + is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, + is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu, + kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\233D, kcud1=\233B, + kcuf1=\233C, kcuu1=\233A, kdch1=\2333~, kent=\EOM, + kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~, + kf13=\23325~, kf14=\23326~, kf15=\23328~, kf16=\23329~, + kf17=\23331~, kf18=\23332~, kf19=\23333~, kf2=\EOQ, + kf20=\23334~, kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~, + kf8=\23319~, kf9=\23320~, kfnd=\2331~, khlp=\23328~, + khome=\23326~, kich1=\2332~, knp=\2336~, kpp=\2335~, + kslt=\2334~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, + mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, + rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, + rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, + rs3=\E[?5l, sc=\E7, + sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;+m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[40h\E7\E[25;%i%p1%dH, +# +# Wyse 185 emulating a vt320 7 bit mode. +# +# This terminal always displays 25 lines. These lines may be used +# as 24 data lines and a terminal status line (top or bottom) or +# 25 data lines. The 48 and 50 line modes change the page size +# and not the number of lines on the screen. +# +# The Compose Character key can be used as a meta key if changed +# by set-up. +# +wy185|wyse185|wyse 185, + am, hs, km, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<3>, + dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, + dsl=\E7\E[99;0H\E[K\E8, ech=\E[%p1%dX, ed=\E[J$<40>, + el=\E[K, el1=\E[1K, enacs=\E)0, + flash=\E[30h\E\,\E[30l$<100>, fsl=\E[1;24r\E8, + home=\E[H, hpa=\E[%i%p1%d`, ht=^I, hts=\EH, + ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, il1=\E[L$<3>, + ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, + is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h, + is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, + 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=\EOQ, kf20=\E[34~, kf3=\EOR, + kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~, + knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, + lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, + ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, + rmkx=\E>, rmso=\E[27m, rmul=\E[24m, + rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, + rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, + sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, + smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E7\E[99;%i%p1%dH, vpa=\E[%i%p1%dd, + use=vt220+keypad, +# +# Wyse 185 with 24 data lines and top status (terminal status) +wy185-24|wyse185-24|wyse 185 with 24 data lines, + hs@, + dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, + use=wy185, +# +# Wyse 185 with visual bell. +wy185-vb|wyse185-vb|wyse 185+flash, + bel@, use=wy185, +# +# Wyse 185 in 132-column mode. +wy185-w|wyse185-w|wyse 185 in 132-column mode, + cols#132, wsl#132, + dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, + ip=$<7>, rs2=\E[35h\E[?3h, use=wy185, +# +# Wyse 185 in 132-column mode with visual bell. +wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols, + bel@, use=wy185-w, + +# wy325 terminfo entries +# Done by Joe H. Davis 3-9-92 + +# lines 25 columns 80 +# +wy325|wyse325|Wyse epc, + am, bw, hs, mc5i, mir, + cols#80, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, + acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, + bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, + cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, + dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, + flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, + il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, + is2=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, + is3=\Ew0$<16>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, + kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, + kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, + kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, + kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, + mc0=\EP, mc4=^T, mc5=\Ed#, + pfloc=\EZ2%p1%{63}%+%c%p2%s\177, + pfx=\EZ1%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, + rmacs=\EcD, rmam=\Ed., rmcup=\Ew0, rmir=\Er, rmln=\EA11, + rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, + rs3=\EwG\Ee($<100>, + sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, + sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, + smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, tbc=\E0, + tsl=\EF, use=adm+sgr, + +# +# lines 24 columns 80 vb +# +wy325-vb|wyse325-vb|wyse-325 with visual bell, + bel@, use=wy325, + +# +# lines 24 columns 132 +# +wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode, + cols#132, lw#7, nlab#16, wsl#97, + cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, + rs2=\E`;$<70>, use=wy325, +# +# lines 25 columns 80 +# +wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy325, +# +# lines 25 columns 132 +# +wy325-25w|wyse325-25w|wy325 132 columns, + lh@, lines#25, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, +# +# lines 25 columns 132 vb +# +wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video, + bel@, use=wy325-w, + +# +# lines 42 columns 80 +# +wy325-42|wyse325-42|wyse-325 42 lines, + lh@, lines#42, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy325, +# +# lines 42 columns 132 +# +wy325-42w|wyse325-42w|wyse-325 42 lines wide mode, + lh@, lines#42, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, +# +# lines 42 columns 132 vb +# +wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell, + bel@, use=wy325-w, +# +# lines 43 columns 80 +# +wy325-43|wyse325-43|wyse-325 43 lines, + lh@, lines#43, lw@, nlab@, + pln@, use=wy325, +# +# lines 43 columns 132 +# +wy325-43w|wyse325-43w|wyse-325 43 lines wide mode, + lh@, lines#43, lw@, nlab@, + pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, +# +# lines 43 columns 132 vb +# +wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell, + bel@, use=wy325-w, + +# Wyse 370 -- 24 line screen with status line. +# +# The terminal may have to be set for 8 data bits and 2 stop +# bits for the arrow keys to work. +# +# If you change keyboards the terminal will send different +# escape sequences. +# The following definition is for the basic terminal without +# function keys. +# +# <u0> -> enter Tektronix 4010/4014 mode +# <u1> -> exit Tektronix 4010/4014 mode +# <u2> -> enter ASCII mode (from any ANSI mode) +# <u3> -> exit ASCII mode (goto native ANSI mode) +# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode) +# <u5> -> exit Tek 4207 mode (goto native ANSI mode) +# +# Bug: The <op> capability resets attributes. +wy370-nk|wyse 370 without function keys, + am, ccc, hs, mc5i, mir, msgr, xenl, xon, + colors#64, cols#80, it#8, lines#24, ncv#48, pairs#64, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<1*>, dch1=\E[P$<1>, + dclk=\E[31h, dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, + dsl=\E[40l, ech=\E[%p1%dX$<.1*>, ed=\E[J$<40>, + el=\E[K$<10>, el1=\E[1K$<12>, enacs=\E)0, + flash=\E[30h\E\,\E[30l$<300>, fsl=\E[1;24r\E8, + home=\E[H, hpa=\E[%i%p1%d`, ht=\011$<1>, hts=\EH, + ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, + ind=\n$<2>, + initc=\E[66;%p1%d;%?%p2%{250}%<%t%{0}%e%p2%{500}%<%t%{16}%e%p2%{750}%<%t%{32}%e%{48}%;%?%p3%{250}%<%t%{0}%e%p3%{500}%<%t%{4}%e%p3%{750}%<%t%{8}%e%{12}%;%?%p4%{250}%<%t%{0}%e%p4%{500}%<%t%{1}%e%p4%{750}%<%t%{2}%e%{3}%;%{1}%+%+%+%dw, + invis=\E[8m, ip=$<1>, is1=\E[90;1"p\E[?5W$<6>, + is2=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h, + is3=\E>\017\E)0\E(B\E[63;0w\E[m, mc0=\E[0i, mc4=\E[4i, + mc5=\E[5i, + oc=\E[60w\E[63;0w\E[66;1;4w\E[66;2;13w\E[66;3;16w\E[66;4;49w\E[66;5;51w\E[66;6;61w\E[66;7;64w, + op=\E[m, rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, + rmam=\E[?7l, rmclk=\E[31l, rmcup=\E[ R, rmir=\E[4l, + rmkx=\E>, rmso=\E[27m, rmul=\E[24m, + rs1=\E[13l\E[3l\E!p\E[?4i, rs2=\E[35h\E[?3l$<8>, + rs3=\E[?5l, sc=\E7, setb=\E[62;%p1%dw, setf=\E[61;%p1%dw, + sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, + smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E[40l\E[40h\E7\E[99;%i%p1%dH, + u0=\E[?38h\E8, u1=\E[?38l\E)0, u2=\E[92;52"p, u3=\E~B, + u4=\E[92;76"p, u5=\E%!1\E[90;1"p, vpa=\E[%i%p1%dd, +# +# Function key set for the ASCII (wy-50 compatible) keyboard +# This is the default 370. +# +wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard, + kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kdch1=\EOQ, kdl1=\EOQ, kent=\EOM, kf1=\E[?4i, + kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, + kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\E[?3i, + kf3=\E[2i, kf4=\E[@, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\EOP, kil1=\EOP, + knp=\E[U, kpp=\E[V, use=wy370-nk, +# +# Function key set for the VT-320 (and wy85) compatible keyboard +# +wy370-105k|Wyse 370 with 105 key keyboard, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[3~, 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~, kf20=\E[34~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, + khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~, + kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, + use=wy370-nk, use=vt220+keypad, +# +# Function key set for the PC compatible keyboard +# +wy370-EPC|Wyse 370 with 102 key keyboard, + kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kend=\E[1~, kent=\EOM, kf1=\EOP, kf10=\E[21~, + kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[H, kich1=\E[2~, knp=\E[U, kpp=\E[V, use=wy370-nk, +# +# Wyse 370 with visual bell. +wy370-vb|Wyse 370 with visible bell, + bel@, use=wy370, +# +# Wyse 370 in 132-column mode. +wy370-w|Wyse 370 in 132-column mode, + cols#132, wsl#132, + rs2=\E[35h\E[?3h$<70>, use=wy370, +# +# Wyse 370 in 132-column mode with visual bell. +wy370-wvb|Wyse 370 with visible bell 132-columns, + flash=\E[30h\E\,\E[30l$<300>, use=wy370-w, +wy370-rv|Wyse 370 reverse video, + rs3=\E[32h\E[?5h, use=wy370, +# +# Wyse 99gt Tektronix 4010/4014 emulator, +# +wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator, + am, os, + cols#74, lines#35, + bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, + cup=\035%{3040}%{89}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, + cuu1=^K, ff=^L, + hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, + home=^]7`x @\037, + hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, + is2=\E8, nel=^M^J, u0=\E~>\E8, u1=\E[42h, +# +# Wyse 160 Tektronix 4010/4014 emulator, +# +wy160-tek|Wyse 160 Tektronix 4010/4014 emulator, + cup=\035%{3103}%{91}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, + home=^]8`g @\037, use=wy99gt-tek, +# +# Wyse 370 Tektronix 4010/4014 emulator, +# +wy370-tek|Wyse 370 Tektronix 4010/4014 emulator, + am, os, + cols#80, lines#36, + bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, + cup=\035%{775}%{108}%p1%*%{5}%/%-%Py%p2%{64}%*%{4}%+%{5}%/%Px%gy%{32}%/%{31}%&%{32}%+%c%gy%{31}%&%{96}%+%c%gx%{32}%/%{31}%&%{32}%+%c%gx%{31}%&%{64}%+%c\037, + cuu1=^K, ff=^L, + hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, + home=^]8g @\037, + hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, + is2=\E8, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^I, kcuu1=^K, + nel=^M^J, u0=\E[?38h\E8, u1=\E[?38l\E)0, + +# Vendor-supplied Wyse entries end here. + +# +#TITLE: TERMINFO ENTRY WY520 +#DATE: 8/5/93 +# The WY520 terminfo is based on the WY285 entry published on the WYSE +# BBS with the addition of more function keys and special keys. +# +# rs1 -> set personality +# rs2 -> set number of columns +# rs3 -> set number of lines +# is1 -> select the proper font +# is2 -> do the initialization +# is3 -> If this string is empty then rs3 gets sent. +# +# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard +# - The BS key is programmed to generate BS in smcup since +# is2 doesn't seem to work. +# - Remove and shift/Remove: delete a character +# - Insert : enter insert mode +# - Find : delete to end of file +# - Select : clear a line +# - F11, F12, F13: send default sequences (not ESC, BS, LF) +# - F14 : Home key +# - Bottom status line (host writable line) is used. +# - smkx,rmkx are removed because this would put the numeric +# keypad in Dec application mode which doesn't seem to work +# with SCO applications. +# +wy520|wyse520|wyse 520, + am, hs, km, mc5i, mir, xenl, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<30>, + dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, dsl=\E[0$~, + ech=\E[%p1%dX, ed=\E[J$<40>, el=\E[K, el1=\E[1K, + enacs=\E)0, fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, + hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, + il1=\E[L$<3>, ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, + is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h, + is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, ked=\E[1~, + kel=\E[4~, kent=\EOM, 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~, + kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, + kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, + kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, + lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, + rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, + rmcup=\E[ R, rmir=\E[4l, rmso=\E[m, rmul=\E[24m, + rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, + rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, + sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, + smcup=\E[ Q\E[?67;8h, smir=\E[4h, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E[2$~\E[1$}\E[%i%p1%d`, + vpa=\E[%i%p1%dd, use=vt220+keypad, +# +# Wyse 520 with 24 data lines and status (terminal status) +wy520-24|wyse520-24|wyse 520 with 24 data lines, + hs@, + dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, + use=wy520, +# +# Wyse 520 with visual bell. +wy520-vb|wyse520-vb|wyse 520 with visible bell, + flash=\E[30h\E\,\E[30l$<100>, use=wy520, +# +# Wyse 520 in 132-column mode. +wy520-w|wyse520-w|wyse 520 in 132-column mode, + cols#132, wsl#132, + dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, + ip=$<7>, rs2=\E[35h\E[?3h, use=wy520, +# +# Wyse 520 in 132-column mode with visual bell. +wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns, + flash=\E[30h\E\,\E[30l$<100>, use=wy520-w, +# +# +# Wyse 520 emulating a vt420 7 bit mode. +# The DEL key is programmed to generate BS in is2. +# With EPC keyboard. +# - 'End' key will clear till end of line on EPC keyboard +# - Shift/End : ignored. +# - Insert : enter insert mode. +# - Delete : delete a character (have to change interrupt character +# to CTRL-C: stty intr '^c') for it to work since the +# Delete key sends 7FH. +wy520-epc|wyse520-epc|wyse 520 with EPC keyboard, + kdch1=\177, kel=\E[4~, kend=\E[4~, kf0=\E[21~, kf1=\E[11~, + kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, khome=\E[H, + use=wy520, +# +# Wyse 520 with 24 data lines and status (terminal status) +# with EPC keyboard. +wy520-epc-24|wyse520-pc-24|wyse 520 with 24 data lines and EPC keyboard, + hs@, + dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, + use=wy520-epc, +# +# Wyse 520 with visual bell. +wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard, + flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc, +# +# Wyse 520 in 132-column mode. +wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard, + cols#132, wsl#132, + dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, + ip=$<7>, rs2=\E[35h\E[?3h, use=wy520-epc, +# +# Wyse 520 in 132-column mode with visual bell. +wy520-epc-wvb|wyse520-p-wvb|wyse 520 with visible bell 132-columns and EPC keyboard, + flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc-w, +# +# Wyse 520 in 80-column, 36 lines +wy520-36|wyse520-36|wyse 520 with 36 data lines, + hs@, + lines#36, + dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, + use=wy520, +# +# Wyse 520 in 80-column, 48 lines +wy520-48|wyse520-48|wyse 520 with 48 data lines, + hs@, + lines#48, + dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, + use=wy520, +# +# Wyse 520 in 132-column, 36 lines +wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines, + cols#132, wsl#132, + rs2=\E[?3h, + rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, + use=wy520-36, +# +# Wyse 520 in 132-column, 48 lines +wy520-48w|wyse520-48w|wyse 520 with 48 data lines, + cols#132, wsl#132, + rs2=\E[?3h, + rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, + use=wy520-48, +# +# +# Wyse 520 in 80-column, 36 lines with EPC keyboard +wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard, + hs@, + lines#36, + dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, + use=wy520-epc, +# +# Wyse 520 in 80-column, 48 lines with EPC keyboard +wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard, + hs@, + lines#48, + dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, + use=wy520-epc, +# +# Wyse 520 in 132-column, 36 lines with EPC keyboard +wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard, + cols#132, wsl#132, + rs2=\E[?3h, + rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, + use=wy520-36pc, +# +# Wyse 520 in 132-column, 48 lines with EPC keyboard +wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard, + cols#132, wsl#132, + rs2=\E[?3h, + rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, + use=wy520-48pc, + +# From: John Gilmore <hoptoad!gnu@lll-crg.arpa> +# (wyse-vp: removed <if=/usr/share/tabset/wyse-adds>, there's no such +# file and we don't know what <hts> is -- esr) +wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on, + OTbs, am, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EW, + dl1=\El, ed=\Ek, el=\EK, home=^A, ht=^I, il1=\EM, ind=^J, + is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=^J, kcuf1=^F, + kcuu1=^Z, khome=^A, ll=^A^Z, nel=^M^J, rmir=\Er, rmso=^O, + rmul=^O, rs1=\E`\:\E`9\017\Er, sgr0=^O, smir=\Eq, smso=^N, + smul=^N, + +wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad, + is2=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + khome=\EOH, rmkx=\E[?1l\E>$<10/>, smkx=\E[?1h\E=$<10/>, + use=wy75, + +# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu> +wy100q|Wyse 100 for Quotron, + OTbs, + cols#80, lines#24, xmc#1, + cbt=\EI, clear=^Z, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, invis@, + is2=\E`\:\0\EC\EDF\E0\E'\E(\EA21, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr, + +#### Kermit terminal emulations +# +# Obsolete Kermit versions may be listed in the section describing obsolete +# non-ANSI terminal emulators later in the file. +# + +# KERMIT standard all versions. +# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. +# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 9-25-84 +kermit|standard kermit, + OTbs, + cols#80, lines#24, + clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, home=\EH, is2=K0 Standard Kermit 9-25-84\n, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, +kermit-am|standard kermit plus auto-margin, + am, + is2=K1 Standard Kermit plus Automatic Margins\n, + use=kermit, +# IBMPC Kermit 1.2. +# Bugs: <ed>, <el>: do not work except at beginning of line! <clear> does +# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of +# line). +# From: greg small <gts@populi.berkeley.edu> 8-30-84 +pckermit|pckermit12|UCB IBMPC Kermit 1.2, + am, + lines#25, + clear=\EH\EJ, ed@, el@, + is2=K2 UCB IBMPC Kermit 1.2 8-30-84\n, use=kermit, +# IBMPC Kermit 1.20 +# Cannot use line 25, now acts funny like ansi special scrolling region. +# Initialization must escape from that region by cursor position to line 24. +# Cannot use character insert because 1.20 goes crazy if insert at col 80. +# Does not use :am: because autowrap is lost when kermit dropped and restarted. +# From: greg small <gts@populi.berkeley.edu> 12-19-84 +pckermit120|UCB IBMPC Kermit 1.20, + it#8, lines#24, + cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I, + il1=\EL, + is2=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n, + rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit, +# MS-DOS Kermit 2.27 for the IBMPC +# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. +# Cannot use line 25, now acts funny like ansi special scrolling region. +# Initialization must escape from that region by cursor position to line 24. +# Does not use am: because autowrap is lost when kermit dropped and restarted. +# Reverse video for standout like H19. +# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC, + OTbs, am@, + cols#80, it#8, lines#24, + clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, + cvvis=\EO\Eq\EG\EwK4, dch1=\EN, dl1=\EM, ed=\EJ, el=\EK, + home=\EH, ht=^I, il1=\EL, + is2=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rc=\Ek, + rmir=\EO, rmso=\Eq, sc=\Ej, smir=\E@, smso=\Ep, +# MS-DOS Kermit 2.27 with automatic margins +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins, + am, + cvvis=\EO\Eq\EG\EvK5, + is2=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n, + use=msk227, +# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC +# Automatic margins now default. Use ansi <sgr> for highlights. +# Define function keys. +# (msk22714: removed obsolete ":kn#10:" -- esr) +# From: greg small <gts@populi.berkeley.edu> 3-17-85 +msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC, + am, + bold=\E[1m, cvvis=\EO\Eq\EG\EvK6, + is2=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n, + kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, + kf7=\E7, kf8=\E8, kf9=\E9, rev=\E[7m, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smso=\E[1m, smul=\E[4m, use=mskermit227, +# This was designed for a VT320 emulator, but it is probably a good start +# at support for the VT320 itself. +# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu. +# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr) +vt320-k3|MS-Kermit 3.00's vt320 emulation, + am, eslok, hs, km, mir, msgr, xenl, + cols#80, it#8, lines#49, pb#9600, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[H\E[J, cmdch=\E, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K, + flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l, + fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, + is2=\E>\E F\E[?1l\E[?7h\E[r\E[2$~, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[3~, kf0=\E[21~, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~, + kpp=\E[5~, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, rc=\E8, + rev=\E[7m, ri=\EM, rin=\E[%p1%dL, rmacs=\E(B, rmam=\E[?7l, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, + rs1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\E[4i\E[?4i\E[m\E[r\E[2$~, + sc=\E7, sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[1$}\r\E[K, vpa=\E[%i%p1%dd, +# From: Joseph Gil <yogi@cs.ubc.ca> 13 Dec 1991 +# ACS capabilities from Philippe De Muyter <phdm@info.ucl.ac.be> 30 May 1996 +# (I removed a bogus boolean :mo: and added <msgr>, <smam>, <rmam> -- esr) +vt320-k311|dec vt320 series as defined by kermit 3.11, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[;H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J, el=\E[K, + flash=\E[?5h\E[?5l, fsl=\E[$}, home=\E[H, ht=^I, hts=\EH, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L$<3/>, ind=\ED, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, + lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, + rf=/usr/share/tabset/vt100, ri=\EM, rmacs=^O, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, + rmul=\E[24m, rs1=\E[?3l, sc=\E7, sgr0=\E[m, smacs=^N, + smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, tsl=\E[2$~\E[1$}\E[1;%dH, + +######## NON-ANSI TERMINAL EMULATIONS +# + +#### Avatar +# +# These entries attempt to describe Avatar, a terminal emulation used with +# MS-DOS bulletin-board systems. It was designed to give ANSI-like +# capabilities, but with cheaper (shorter) control sequences. Messy design, +# excessively dependent on PC idiosyncracies, but apparently rather popular +# in the BBS world. +# +# No color support. Avatar doesn't fit either of the Tektronix or HP color +# models that terminfo knows about. An Avatar color attribute is the +# low 7 bits of the IBM-PC display-memory attribute. Bletch. +# +# I wrote these entries while looking at the Avatar spec. I don't have +# the facilities to test them. Let me know if they work, or don't. +# +# Avatar escapes not used by these entries (because maybe you're smarter +# and more motivated than I am and can figure out how to wrap terminfo +# around some of them, and because they are weird enough to be funny): +# level 0: +# ^L -- clear window/reset current attribute to default +# ^V^A%p1%c -- set current color attribute, parameter decodes as follows: +# +# bit: 6 5 4 3 2 1 0 +# | | | | | +# +---+---+ | +---+---+ +# | | | +# | | foreground color +# | foreground intensity +# background color +# level 0+: +# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines +# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines +# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1 +# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1 +# (^V^L and ^V^M set the current attribute as a side-effect.) +# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes +# in the pattern, <c> the number of times the pattern +# should be repeated. If either value is 0, no-op. +# The pattern can contain Avatar console codes, +# including other ^V ^Y patterns. +# level 1: +# ^V^O -- clockwise mode on; turn print direction right each time you +# hit a window edge (yes, really). Turned off by CR +# ^V^P -- no-op +# ^V^Q%c -- query the driver +# ^V^R -- driver reset +# ^V^S -- Sound tone (PC-specific) +# ^V^T -- change highlight at current cursor poition to %c +# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b> +# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c +# -- define window +# +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +# (The <blink>/<bold>/<rev>/<smacs>/<smul>/<smso> capabilities exist only to +# tell ncurses that the corresponding highlights exist; it should use <sgr>, +# which is the only method that will actually work for multiple highlights.) +# +# Update by TD - 2004: half of this was inconsistent. Found documentation +# and repaired most of the damage. sgr0 is probably incorrect, but the +# available documentation gives no clues for a workable string. +avatar0|avatar terminal emulator level 0, + am, bce, msgr, + cols#80, it#8, lines#25, + blink=^V^B, bold=^V^A^P, cr=^M, cub1=^V^E, cud1=^V^D, + cuf1=^V^F, cup=\026\010%p1%c%p2%c, cuu1=^V^C, el=^V^G, + ind=^J, invis=^V^A\0, rep=\031%p1%c%p2%c, rev=^V^Ap, + rmacs@, rs2=^L, + sgr=%?%p1%p2%|%p3%|%p6%|%p7%|%t\026\001%?%p7%t%{128}%e%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p6%t%{16}%|%;%;%c%;%?%p4%t\026\002%;, + sgr0=^V^A^G, smacs@, smso=^V^Ap, smul=^V^A^A, + use=klone+acs, +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +avatar0+|avatar terminal emulator level 0+, + dch1=^V^N, rmir=\026\n\0\0\0\0, smir=^V^I, use=avatar0, +# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 +avatar|avatar1|avatar terminal emulator level 1, + civis=^V'^B, cnorm=^V'^A, cvvis=^V^C, dl1=^V-, il1=^V+, + rmam=^V", rmir=^V^P, smam=^V$, use=avatar0+, + +#### RBcomm +# +# RBComm is a lean and mean terminal emulator written by the Interrupt List +# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early +# '90s), especially in the BBS world, and still has some loyal users due to +# its very small memory footprint and to a cute macro language. +rbcomm|IBM PC with RBcomm and EMACS keybindings, + am, bw, mir, msgr, xenl, + cols#80, it#8, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=^L, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=^C, cuf1=^B, + cup=\037%p2%{32}%+%c%p1%{32}%+%c, cuu1=^^, dch1=^W, + dl=\E[%p1%dM, dl1=^Z, ech=\E[%p1%dX, ed=^F5, el=^P^P, ht=^I, + il=\E[%p1%dL, il1=^K, ind=\ED, invis=\E[8m, + is2=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g, kbs=^H, + kcub1=^B, kcud1=^N, kcuf1=^F, kcuu1=^P, khome=^A, nel=^M\ED, + rc=\E8, rep=\030%p1%c%p2%c, rev=^R, ri=\EM, rmcup=, rmdc=, + rmir=^], rmkx=\E>, rmso=^U, rmul=^U, + rs1=\017\E(B\E)0\025\E[?3l\E[>8g, sc=\E7, sgr0=\E[m, + smcup=, smdc=, smir=^\, smkx=\E=, smso=^R, smul=^T, +rbcomm-nam|IBM PC with RBcomm without autowrap, + am@, + bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, + is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H, + kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, +rbcomm-w|IBM PC with RBcomm in 132 column mode, + cols#132, + bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, + is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H, + kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, + +######## LCD DISPLAYS +# + +#### Matrix Orbital +# from: Eric Z. Ayers (eric@ale.org) +# +# Matrix Orbital 20x4 LCD display +# Command Character is 0xFE (decimal 254, octal 376) +# +# On this device, cursor addressability isn't possible. The LCD expects: +# 0xfe G <col> <row> +# for cup: %p1 == row and %p2 is column +# +# This line: +# cup=\376G%p2%c%p1%c +# LOOKS like it will work, but sometimes only one of the two numbers is sent. +# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'. +# +# Alas, there is no cursor upline capability on this display. +# +# These entries add some 'sanity stuff' to the clear function. That is, it +# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping, +# and turns off the cursor blinking and stuff like that. +# +# NOTE: calling 'beep' turns on the backlight (bell) +# NOTE: calling 'flash' turns it on and back off (visual bell) +# +MtxOrb|Generic Matrix Orbital LCD display, + bel=\376B^A, clear=\376X\376C\376R\376K\376T, + cnorm=\376K\376T, cub1=\376L, cuf1=\376M, + flash=\376B\001$<200>\376F, home=\376H, +MtxOrb204|20x4 Matrix Orbital LCD display, + cols#20, lines#4, use=MtxOrb, +MtxOrb162|16x2 Matrix Orbital LCD display, + cols#16, lines#2, use=MtxOrb, +# The end + +######## OLDER TERMINAL TYPES +# +# This section is devoted to older commercial terminal brands that are now +# discontinued, but known to be still in use or represented by emulations. +# + +#### AT&T (att, tty) +# +# This section also includes Teletype-branded VDTs. +# +# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now +# Boundless Technologies); for details, see the header comment on the ADDS +# section. +# +# These are AT&T's official terminfo entries. All-caps aliases have been +# removed. +# +att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode, + am, eo, mir, msgr, xon, + cols#80, it#8, lines#24, + bel=^G, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcbt=\E[Z, kclr=\E[J, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, + kdl1=\E[M, kf1=\E[1r, kf10=\E[10r, kf11=\E[11r, + kf12=\E[12r, kf13=\E[13r, kf14=\E[14r, kf15=\E[15r, + kf16=\E[16r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, kf5=\E[5r, + kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, kf9=\E[9r, khome=\E[H, + kich1=\E[@, kil1=\E[L, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, + rev=\E[7m, rmir=\E[4l, rmso=\E[m, sgr0=\E[m, smir=\E[4h, + smso=\E[7m, +att2350|AT&T 2350 Video Information Terminal 80 column mode, + mc0@, mc4@, mc5@, use=att2300, + +# Must setup RETURN KEY - CR, REC'VD LF - INDEX. +# Seems upward compatible with vt100, plus ins/del line/char. +# On sgr, the protection parameter is ignored. +# No check is made to make sure that only 3 parameters are output. +# standout= reverse + half-intensity = 3 | 5. +# bold= reverse + underline = 2 | 3. +# note that half-bright blinking doesn't look different from normal blinking. +# NOTE:you must program the function keys first, label second! +# (att4410: a BSD entry has been seen with the following capabilities: +# <is2=\E[?6l>, <kf1=\EOc>, <kf2=\EOd>, <kf3=\EOe>, <kf4=\EOg>, +# <kf6=\EOh>, <kf7=\EOi>, <kf8=\EOj>, -- esr) +att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1, + am, hs, mir, msgr, xon, + cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, + acsc=++\,\,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[2;7m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dim=\E[2m, + dl1=\E[M, ed=\E[J, el=\E[K, fsl=\E8, home=\E[H, ht=^I, + ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, is1=\E[?3l\E)0, + is3=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW, + kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, + kf6=\EOU, kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, + ll=\E[24H, nel=^M^J, + pfx=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s, + pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, + sc=\E7, + sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, + tsl=\E7\E[25;%p1%{1}%+%dH, + +att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1, + cols#132, wsl#132, + is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att5410v1, + +att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2, + OTbs, + pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s, + use=att5410v1, + +att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode, + cols#132, wsl#132, + is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att4410, + +# 5410 in terms of a vt100 +# (v5410: added <rmam>/<smam> based on init string -- esr) +v5410|att5410 in terms of a vt100, + am, mir, msgr, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=^J, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P, + dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, + enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@, + il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, + rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, + rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, + sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, + use=vt100+fnkeys, + +# +# Teletype Model 5420 -- A souped up 5410, with multiple windows, +# even! the 5420 has three modes: scroll, window or page mode +# this terminfo should work in scroll or window mode, but doesn't +# take advantage of any of the differences between them. +# +# Has memory below (2 lines!) +# 3 pages of memory (plus some spare) +# The 5410 sequences for <cup>, <cvvis>, <dch>, <dl>, <ech>, <flash>, <home>, +# <hpa>, <hts> would work for these, but these work in both scroll and window +# mode... Unset insert character so insert mode works +# <is1> sets 80 column mode, +# <is2> escape sequence: +# 1) turn off all fonts +# 2) function keys off, keyboard lock off, control display off, +# insert mode off, erasure mode off, +# 3) full duplex, monitor mode off, send graphics off, nl on lf off +# 4) reset origin mode +# 5) set line wraparound +# 6) exit erasure mode, positional attribute mode, and erasure extent mode +# 7) clear margins +# 8) program ENTER to transmit ^J, +# We use \212 to program the ^J because a bare ^J will get translated by +# UNIX into a CR/LF. The enter key is needed for AT&T uOMS. +# 1 2 3 4 5 6 7 8 +# <is3> set screen color to black, +# No representation in terminfo for the delete word key: kdw1=\Ed +# Key capabilities assume the power-up send sequence... +# This <rmcup> is not strictly necessary, but it helps maximize +# memory usefulness: <rmcup=\Ez>, +# Alternate sgr0: <sgr0=\E[m\EW^O>, +# Alternate sgr: <sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;>, +# smkx programs the SYS PF keys to send a set sequence. +# It also sets up labels f1, f2, ..., f8, and sends edit keys. +# This string causes them to send the strings <kf1>-<kf8> +# when pressed in SYS PF mode. +# (att4415: I added <rmam>/<smam> based on the init string -- esr) +att4415|tty5420|att5420|AT&T 4415/5420 80 cols, + OTbs, db, mir, xon, + lh#2, lm#78, lw#8, nlab#8, wsl#55, + cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD, + cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx, + cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP, + dl=\E[%p1%dM, ech=\E[%p1%ds\E[%p1%dD, + flash=\E[?5h$<200>\E[?5l, home=\E[x, + hpa=\E[%p1%{1}%+%dG, hts=\EH, ich=\E[%p1%d@, ich1@, + il=\E[%p1%dL, indn=\E[%p1%dE, is1=\E[?3l$<100>, + is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212, + is3=\E[?5l, kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M, + kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, kf2=\EOd, + kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, + kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, + kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, + lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?2i, mc4=\E[?9i, + mc5=\E[?4i, mrcup=\E[%i%p1%d;%p2%dt, + pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, + rin=\E[%p1%dF, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E[19;0j\E[21;1j\212, rmln=\E|, + sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smam=\E[?7h, smir=\E[4h, + smkx=\E[19;1j\E[21;4j\Eent, smln=\E~, tbc=\E[3g, + tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, + use=att4410, + +att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols, + cols#132, lm#54, wsl#97, + is1=\E[?3h$<100>, use=att4415, + +att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv, + flash=\E[?5l$<200>\E[?5h, is3=\E[?5h, use=att4415, + +att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv, + cols#132, lm#54, wsl#97, + flash=\E[?5l$<200>\E[?5h, is1=\E[?3h$<100>, is3=\E[?5h, + use=att4415, + +# Note that this mode permits programming USER PF KEYS and labels +# However, when you program user pf labels you have to reselect +# user pf keys to make them appear! +att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels, + kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, + pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s, + pln=\E[%p1%d;0;0;1q%p2%:-16.16s, + +att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels, + kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, + use=att4415, + +att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels, + kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, + use=att4415-rv, + +att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels, + kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, + use=att4415-w, + +att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels, + kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, + use=att4415-w-rv, + +att5420_2|AT&T 5420 model 2 80 cols, + am, db, hs, mir, msgr, xon, + cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + blink=\E[5m, cbt=\E[1Z, clear=\EH\EJ, cnorm=\E[11;0j, + cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, + cvvis=\E[11;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J, + el=\E[0K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8, + home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, + indn=\E[%p1%dE, invis=\E[8m, + is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, + kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, + kel=\E[2K, kend=\Ez, kent=^J, kf1=\EOc, kf2=\EOd, kf3=\EOe, + kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H, + kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, + kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, + lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, mc4=\E[4i, + mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, nel=^M^J, + pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8, + rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmkx=\E[19;0j, + rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, + sc=\E7, + sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~, + smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, +att5420_2-w|AT&T 5420 model 2 in 132 column mode, + cols#132, + is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, + use=att5420_2, + +att4418|att5418|AT&T 5418 80 cols, + am, xon, + cols#80, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=^M, cub=\E[%p1%dD, + cub1=\E[D, 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[1P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H, + ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=^J, + is1=\E[?3l, is2=\E)0\E?6l\E?5l, kclr=\E[%%, kcub1=\E@, + kcud1=\EU, kcuf1=\EA, kcuu1=\ES, kent=\E[, kf1=\E[h, + kf10=\E[m, kf11=\E[n, kf12=\E[o, kf13=\E[H, kf14=\E[I, + kf15=\E[J, kf18=\E[K, kf19=\E[L, kf2=\E[i, kf20=\E[E, + kf21=\E[_, kf22=\E[M, kf23=\E[N, kf24=\E[O, kf3=\E[j, + kf6=\E[k, kf7=\E[l, kf8=\E[f, kf9=\E[w, khome=\Ec, rc=\E8, + rev=\E[7m, rmacs=^O, rmso=\E[m, rmul=\E[m, sc=\E7, + sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, +att4418-w|att5418-w|AT&T 5418 132 cols, + cols#132, + is1=\E[?3h, use=att5418, + +att4420|tty4420|teletype 4420, + OTbs, da, db, eo, msgr, ul, xon, + cols#80, lines#24, lm#72, + bel=^G, clear=\EH\EJ, cr=\EG, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, + dl1=\EM, ed=\EJ, el=\Ez, home=\EH, il1=\EL, ind=\EH\EM\EY7\s, + kcbt=\EO, kclr=\EJ, kcub1=^H, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EP, kdl1=\EM, kf0=\EU, kf3=\E@, khome=\EH, + kich1=\E\^, kil1=\EL, kind=\ES, kri=\ET, + lf0=segment advance, lf3=cursor tab, rmdc@, rmso=\E~, + rmul=\EZ, smdc@, smso=\E}, smul=\E\\, + +# The following is a terminfo entry for the Teletype 4424 +# asynchronous keyboard-display terminal. It supports +# the vi editor. The terminal must be set up as follows, +# +# HIGHLIGHT DEFINITION 3-TONE +# DISPLAY FUNCTION GROUP III +# +# The second entry below provides limited (a la adm3a) +# operation under GROUP II. +# +# This must be used with DISPLAY FUNCTION GROUP I or III +# and HIGHLIGHT DEFINITION 3-TONE +# The terminal has either bold or blink, depending on options +# +# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr) +att4424|tty4424|teletype 4424, + OTbs, am, xon, + cols#80, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E3, bold=\E3, cbt=\EO, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EA, + dch=\E[%p1%dP, dch1=\EP, dim=\EW, dl=\E[%p1%dM, dl1=\EM, + ed=\EJ, el=\Ez, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + ich1=\E\^, il=\E[%p1%dL, il1=\EL, ind=^J, is2=\E[20l\E[?7h, + kbs=^H, kclr=\EJ, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, + khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~, + rmul=\EZ, + sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m, + sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\, + tbc=\EF, + +att4424-1|tty4424-1|teletype 4424 in display function group I, + kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@, + use=att4424, + +# This entry is not one of AT&T's official ones, it was translated from the +# 4.4BSD termcap file. The highlight strings are different from att4424. +# I have no idea why this is -- older firmware version, maybe? +# The following two lines are the comment originally attached to the entry: +# This entry appears to avoid the top line - I have no idea why. +# From: jwb Wed Mar 31 13:25:09 1982 remote from ihuxp +att4424m|tty4424m|teletype 4424M, + am, da, db, mir, + cols#80, it#8, lines#23, + bel=^G, clear=\E[2;H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%2d;%p2%2dH\E[B, cuu1=\E[A, dch1=\EP, + dl1=\EM, el=\E[K, ht=^I, ich1=\E\^, il1=\EL, ind=^J, ip=$<2/>, + is2=\E[m\E[2;24r, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, khome=\E[H, nel=^M^J, ri=\ET, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smso=\E[7m, smul=\E[4m, + +# The Teletype 5425 is really version 2 of the Teletype 5420. It +# is quite similar, except for some minor differences. No page +# mode, for example, so all of the <cup> sequences used above have +# to change back to what's being used for the 5410. Many of the +# option settings have changed their numbering as well. +# +# This has been tested on a preliminary model. +# +# (att5425: added <rmam>/<smam> based on the init string -- esr) +att5425|tty5425|att4425|AT&T 4425/5425, + am, da, db, hs, mir, msgr, xenl, xon, + cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, + clear=\E[H\E[J, cnorm=\E[12;0j, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[J, + el=\E[K, el1=\E[1K, enacs=\E(B\E)0, + flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, + hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dE, + invis=\E[8m, is1=\E<\E[?3l$<100>, + is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212, + is3=\E[?5l, kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[J, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, + kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, + kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, + kf8=\EOj, khome=\E[H, kich1=\E[4h, kil1=\E[L, kind=\E[T, + kri=\E[S, ll=\E[24H, mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i, + nel=^M^J, + pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8, + rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmam=\E[?7l, + rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|, + rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7, + sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[21;1j\E[25;4j\Eent\E~, smln=\E~, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, tsl=\E7\E[25;%p1%{8}%+%dH, + vpa=\E[%p1%{1}%+%dd, + +att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels, + smkx=\E[21;1j\E[25;4j\Eent, use=att4425, + +att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode, + cols#132, lm#54, wsl#97, + is1=\E[?3h$<100>, use=tty5425, + +# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:. +# I also added <rmam>/<smam> -- esr) +att4426|tty4426|teletype 4426S, + am, da, db, xon, + cols#80, lines#24, lm#48, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, bold=\E[5m, clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V, + cr=^M, cub=\E[%p1%dD, cub1=\E[D, 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=\EP, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[0K, home=\E[H, + hpa=\E[%p1%dG, ht=^I, hts=\E1, ich=\E[%p1%d@, ich1=\E\^, + il=\E[%p1%dL, il1=\EL, ind=^J, indn=\E[%p1%dS, + is1=\Ec\E[?7h, is2=\E[m\E[1;24r, kbs=^H, kcbt=\EO, + kclr=\E[2J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, + kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, ll=\E[24H, + nel=^M^J, rc=\E8, rev=\E[7m, ri=\ET, rin=\E[%p1%dT, + rmacs=\E(B, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, + rs2=\Ec\E[?3l\E[2;0y, sc=\E7, sgr0=\E[m\E(B, smacs=\E(0, + smam=\E[?7h, smso=\E[5m, smul=\E[4m, tbc=\E[3g, + vpa=\E[%p1%dd, + +# Terminfo entry for the AT&T 510 A Personal Terminal +# Function keys 9 - 16 are available only after the +# screen labeled (soft keys/action blocks) are labeled. Function key +# 9 corresponds to the leftmost touch target on the screen, +# function key 16 corresponds to the rightmost. +# +# This entry is based on one done by Ernie Rice at Summit, NJ and +# changed by Anne Gallup, Skokie, IL, ttrdc!anne +att510a|bct510a|AT&T 510A Personal Terminal, + am, mir, msgr, xenl, xon, + cols#80, lh#2, lines#24, lw#7, nlab#8, + acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, + civis=\E[11;0|, clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, + cub=\E[%p1%dD, cub1=^H, 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, cvvis=\E[11;2|, dch=\E[%p1%dP, + dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, + el=\E[0K, el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, ht=^I, + hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E(B\E)1\E[2l, + is3=\E[21;1|\212, kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, + kf10=\EOd, kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, + kf15=\EOi, kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, + kf6=\ENf, kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, + mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, nel=\EE, + pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, + rmacs=^O, rmkx=\E[19;0|, rmso=\E[m, rmul=\E[m, sc=\E7, + sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smkx=\E[19;1|, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, + +# Terminfo entry for the AT&T 510 D Personal Terminal +# Function keys 9 through 16 are accessed by bringing up the +# system blocks. +# Function key 9 corresponds to the leftmost touch target on the screen, +# function key 16 corresponds to the rightmost. +# +# There are problems with soft key labeling. These are due to +# strangenesses in the native terminal that are impossible to +# describe in a terminfo. +att510d|bct510d|AT&T 510D Personal Terminal, + am, da, db, mir, msgr, xenl, xon, + cols#80, lh#2, lines#24, lm#48, lw#7, nlab#8, + acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, + clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, cub=\E[%p1%dD, + cub1=^H, 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, cvvis=\E[11;2|, dch=\E[%p1%dP, dch1=\E[P, + dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, + el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, + hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, + invis=\E[8m, is1=\E(B\E)1\E[5;0|, is3=\E[21;1|\212, + kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, kf10=\EOd, + kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, kf15=\EOi, + kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, kf6=\ENf, + kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, ll=\E#2, + mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, mgc=\E\:, nel=\EE, + pln=\E[%p1%dp%p2%:-16s, rc=\E8, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, + rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmkx=\E[19;0|, + rmln=\E<, rmso=\E[m, rmul=\E[m, rmxon=\E[29;1|, + rs2=\E[5;0|, sc=\E7, + sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smgl=\E4, smgr=\E5, smir=\E[4h, + smkx=\E[19;1|, smln=\E?, smso=\E[7m, smul=\E[4m, + smxon=\E[29;0|, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, + +# (att500: I merged this with the att513 entry, att500 just used att513 -- esr) +att500|att513|AT&T 513 using page mode, + am, chts, mir, msgr, xenl, xon, + cols#80, lh#2, lines#24, lw#8, nlab#8, + acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, + clear=\E[H\E[J, cnorm=\E[11;0|, cr=^M, + csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)1, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, + hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, + indn=\E[%p1%dE, invis=\E[8m, + is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l, + kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, + kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, + kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK, + kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ, + kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY, + kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=^H, kcan=\EOw, + kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, + kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=\Eent, + kext=\EOk, kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, + kf6=\EOh, kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm, + khome=\E[H, kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi, + kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, + kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, + kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB, + ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2, + mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, mc5=\E[?98l\E[?4i, + nel=\EE, + pfkey=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s, + pfloc=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s, + pfx=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s, + pln=\E[%p1%dp%p2%:-16s, rc=\E8, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, + rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l, + rmkx=\E[19;0|\E[21;1|\212, rmln=\E<, rmso=\E[m, + rmul=\E[m, + rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l, + rs2=\E[5;0|, sc=\E7, + sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smir=\E[4h, + smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, + +# 01-07-88 +# printer must be set to EMUL ANSI to accept ESC codes +# <cuu1> stops at top margin +# <is1> sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font +# and alt font ascii,wrap on,tabs cleared +# <is2> disables newline on LF,Emphasized off +# The <u0> capability sets form length +att5310|att5320|AT&T Model 53210 or 5320 matrix printer, + xhpa, xvpa, + bufsz#8192, cols#132, cps#120, it#8, lines#66, orc#10, + orhi#100, orl#12, orvi#72, + cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, + cr=^M, + csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, + cud=\E[%p1%de, cud1=^J, cuf=\E[%p1%da, cuf1=\s, cuu1=\EM, + ff=^L, hpa=\E[%p1%d`, ht=^I, is1=\Ec, is2=\E[20l\r, + lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, + rshm=\E[m, + scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, + smgbp=\E[;%p1%dr, smglp=\E[%{1}%p1%+%ds, + smgrp=\E[;%{1}%p1%+%ds, smgtp=\E[%p1%dr, sshm=\E[5m, + u0=\E[%p1%dt, vpa=\E[%p1%dd, + +# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL +# The following SET-UP modes are assumed for normal operation: +# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL +# Other SET-UP modes may be set for operator convenience or communication +# requirements. This termcap description is for the Resident Terminal Mode. +# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# The BRL entry also said: UNSAFE :ll=\E[70H: +att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs, + am, xon, + cols#88, it#8, lines#70, vt#3, + bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, + dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, + home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, + il1=\E[L, ind=^J, indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, + kll=\E[70;1H, nel=^M^J, rc=\E8, ri=\E[T, rin=\E[%p1%dT, + rs1=\Ec, sc=\E7, + +# 5620 terminfo (2.0 or later ROMS with char attributes) +# The following SET-UP modes are assumed for normal operation: +# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR +# Other SET-UP modes may be set for operator convenience or communication +# requirements. This termcap description is for Resident Terminal Mode. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# assumptions: <ind> (scroll forward one line) is only done at screen bottom +# Be aware that older versions of the dmd have a firmware bug that affects +# parameter defaulting; for this terminal, the 0 in \E[0m is not optional. +# <msgr> is from an otherwise inferior BRL for this terminal. That entry +# also has <ll>=\E[70H commented out and marked unsafe. +# For more, see the 5620 FAQ maintained by David Breneman <daveb@dgtl.com>. +att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns, + OTbs, am, msgr, npc, xon, + cols#88, it#8, lines#70, + bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=^M, cub1=^H, + cud1=\E[B, 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, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kll=\E[70;1H, nel=^J, + pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T, + rin=\E[%p1%dT, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7, + sgr0=\E[0m, smso=\E[7m, smul=\E[4m, +att5620-24|tty5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer, + lines#24, use=att5620, +att5620-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer, + lines#34, use=att5620, +# 5620 layer running the "S" system's downloaded graphics handler: +att5620-s|tty5620-s|layer|vitty|5620 S layer, + OTbs, OTpt, am, + cols#80, it#8, lines#72, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, + cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=^K, dl1=\ED, + el=\EK, flash=\E^G, ht=^I, il1=\EI, ind=^J, kbs=^H, kclr=\E[2J, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, + kll=\E[70;1H, + +# Entries for <kf15> thru <kf28> refer to the shifted system pf keys. +# +# Entries for <kf29> thru <kf46> refer to the alternate keypad mode +# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER +att605|AT&T 605 80 column 102key keyboard, + am, eo, xon, + cols#80, lines#24, lw#8, nlab#8, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cr=^M, cub1=^H, cud1=\E[B, 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, ed=\E[J, + el=\E[K, el1=\E[1K, fsl=\E8, ht=^I, ich=\E[%p1%d@, ich1=\E[@, + il1=\E[L, ind=^J, invis=\E[8m, + is1=\E[8;0|\E[?\E[13;20l\E[?\E[12h, is2=\E[m\017, + kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, kclr=\E[2J, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, + kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq, + kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, + kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, + kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, + kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, + kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, + kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, + kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, + kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, + kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@, + kil1=\E[L, kind=\E[S, knp=\E[U, kpp=\E[V, ll=\E[24H, + mc4=\E[?4i, mc5=\E[?5i, nel=\EE, + pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, + rmacs=^O, rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, + rs2=\Ec\E[?3l, sc=\E7, sgr0=\E[m\017, smacs=\E)0\016, + smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, + tsl=\E7\E[25;%i%p1%dx, +att605-pc|ATT 605 in pc term mode, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + cbt=\E[Z, cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A, + dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, + kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, 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[@, knp=\E[G, kpp=\E[I, + rmsc=400\E[50;0|, smsc=250\E[?11l\E[50;1|, xoffc=g, + xonc=e, use=att605, +att605-w|AT&T 605-w 132 column 102 key keyboard, + cols#132, wsl#132, + is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, + use=att605, +# (att610: I added <rmam>/<smam> based on the init string. I also +# added <indn> and <rin> because the BSD file says the att615s have them, +# and the 615 is like a 610 with a big keyboard, and most of their other +# smart terminals support the same sequence -- esr) +att610|AT&T 610; 80 column; 98key keyboard, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, + indn=\E[%p1%dS, invis=\E[8m, + is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, + is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, + kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, + kf13=\ENs, kf14=\ENt, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, + kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, + kind=\E[S, kri=\E[T, ll=\E[24H, mc4=\E[?4i, mc5=\E[?5i, + nel=\EE, + pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, + ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, + rmln=\E[2p, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smln=\E[p, smso=\E[7m, smul=\E[4m, tsl=\E7\E[25;%i%p1%dx, +att610-w|AT&T 610; 132 column; 98key keyboard, + cols#132, wsl#132, + is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, + use=att610, + +att610-103k|AT&T 610; 80 column; 103key keyboard, + kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, + kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, + kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, + kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, + kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, + kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, + kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, + kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf9@, kfnd=\EOx, + khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, kmsg=\EOl, + knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, kpp=\E[V, + kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, kres=\EOq, + krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, ksav=\EOo, + kslt=\ENI, kspd=\EOp, kund=\EOs, use=att610, +att610-103k-w|AT&T 610; 132 column; 103key keyboard, + cols#132, wsl#132, + is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, + use=att610-103k, +att615|AT&T 615; 80 column; 98key keyboard, + kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, + kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, + kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, + kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, + kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, + kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, + kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610, +att615-w|AT&T 615; 132 column; 98key keyboard, + kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, + kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, + kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, + kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, + kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, + kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, + kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610-w, +att615-103k|AT&T 615; 80 column; 103key keyboard, + kLFT=\E[ A, kRIT=\E[ @, use=att610-103k, +att615-103k-w|AT&T 615; 132 column; 103key keyboard, + kLFT=\E[ A, kRIT=\E[ @, use=att610-103k-w, +# (att620: I added <rmam>/<smam> based on the init string and +# <rin>/<indn> from a BSD termcap -- esr) +att620|AT&T 620; 80 column; 98key keyboard, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, + indn=\E[%p1%dS, invis=\E[8m, + is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h, + is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, + kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, + kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, kf17=\EOE, + kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, kf21=\EOI, + kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, + kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, kf30=\EOQ, + kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, kf35=\EOy, + kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, kf4=\EOf, + kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, kf44=\EOp, + kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, + kf9=\ENo, khome=\E[H, kind=\E[S, kri=\E[T, ll=\E[24H, + mc4=\E[?4i, mc5=\E[?5i, nel=\EE, + pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, + ri=\EM, rin=\E[%p1%dT, rmacs=\E(B\017, rmam=\E[?7l, + rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, + rs2=\Ec\E[?3l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\E(B\017, smacs=\E)0\016, smam=\E[?7h, + smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, + tsl=\E7\E[25;%i%p1%dx, +att620-w|AT&T 620; 132 column; 98key keyboard, + cols#132, wsl#132, + is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, + use=att620, +att620-103k|AT&T 620; 80 column; 103key keyboard, + kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, + kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, + kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, + kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, + kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, + kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, + kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, + kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@, + kf18@, kf19@, kf20@, kf21@, kf22@, kf23@, kf24@, kf25@, kf26@, kf27@, + kf28@, kf29@, kf30@, kf31@, kf32@, kf33@, kf34@, kf35@, kf36@, kf37@, + kf38@, kf39@, kf40@, kf41@, kf42@, kf43@, kf44@, kf45@, kf46@, kf9@, + kfnd=\EOx, khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, + kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, + kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, + kres=\EOq, krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, + ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, use=att620, + +att620-103k-w|AT&T 620; 132 column; 103key keyboard, + cols#132, wsl#132, + is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, + use=att620-103k, + +# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal +# The following SETUP modes are assumed for normal operation: +# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF +# Font_Size=Large Non-Layers_Window_Cols=80 +# Non-Layers_Window_Rows=60 +# Other SETUP modes may be set for operator convenience or communication +# requirements. Some capabilities assume a printer attached to the Aux EIA +# port. This termcap description is for the Fixed Non-Layers Window. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# (att630: added <ich1>, <blink> and <dim> from a BSD termcap file -- esr) +att630|AT&T 630 windowing terminal, + OTbs, am, da, db, mir, msgr, npc, xon, + cols#80, it#8, lines#60, lm#0, + bel=^G, blink=\E[5m, cbt=\E[Z, clear=\E[H\E[J, cr=^M, + cub=\E[%p1%dD, cub1=^H, 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[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, + el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, is2=\E[m, + kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kent=^M, + kf10=\ENp, kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, + kf15=\ENu, kf16=\ENv, kf17=\ENw, kf18=\ENx, kf19=\ENy, + kf20=\ENz, kf21=\EN{, kf22=\EN|, kf23=\EN}, kf24=\EN~, + kf9=\ENo, khome=\E[H, kich1=\E[@, kil1=\E[L, mc4=\E[?4i, + mc5=\E[?5i, nel=^M^J, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, + rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmir=\E[4l, rmso=\E[m, + rmul=\E[m, rs2=\Ec, sc=\E7, + sgr=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m, + sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, +att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines, + lines#24, use=att630, + +# This is the att700 entry for 700 native emulation of the AT&T 700 +# terminal. Comments are relative to changes from the 605V2 entry and +# att730 on which the entry is based. Comments show the terminfo +# capability name, termcap name, and description. +# +# Here is what's going onm in the init string: +# ESC [ 50;4| set 700 native mode (really is 605) +# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line) +# ESC [ 53;0| set GenFlow to Xon/Xoff +# ESC [ 8 ;0| set CR on NL +# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h) +# ESC [ ? 4 l jump scroll +# ESC [ ? 5 l/h video: normal (l); reverse (h) +# ESC [ ?13 l Labels on +# ESC [ ?15 l parity check = no +# ESC [ 13 l monitor mode off +# ESC [ 20 l LF on NL (not CRLF on NL) +# ESC [ ? 7 h autowrap on +# ESC [ 12 h local echo off +# ESC ( B GO = ASCII +# ESC ) 0 G1 = Special Char & Line Drawing +# ESC [ ? 31 l Set 7 bit controls +# +# Note: Most terminals, especially the 600 family use Reverse Video for +# standout mode. DEC also uses reverse video. The VT100 uses bold in addition +# Assume we should stay with reverse video for 70.. However, the 605V2 exits +# standout mode with \E[m (all normal attributes). The 730 entry simply +# exits reverse video which would leave other current attributes intact. It +# was assumed the 730 entry to be more correct so rmso has changed. The +# 605V2 has no sequences to turn individual attributes off, thus its setting +# and the rmso/smso settings from the 730. +# +# Note: For the same reason as above in rmso I changed exit under-score mode +# to specifically turn off underscore, rather than return to all normal +# attributes +# +# Note: The following pkey_xmit is taken from the 605V2 which contained the +# capability as pfxl. It was changed here to pfx since pfxl +# will only compile successfully with Unix 4.0 tic. Also note that pfx only +# allows strings to be parameters and label values must be programmed as +# constant strings. Supposedly the pfxl of Version 4.0 allows both labels +# and strings to be parameters. The 605V2 pfx entry should be examined later +# in this regard. For reference the 730 pfxl entry is shown here for comparison +# 730 pfx entry: +# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s +# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s, +# +# (for 4.0 tic) +# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, +# +# (for <4.0 tic) +# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, +# +# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9 +# +# Port1 Interface +# +# modular 10 pin Connector +# Left side Right side +# Pin 1 2 3 4 5 6 7 8 9 10 +# +# Key (notch) at bottom +# +# Pin 1 DSR +# 3 DCD +# 4 DTR +# 5 Sig Ground +# 6 RD +# 7 SD +# 8 CTS +# 9 RTS +# 10 Frame Ground +# +# The manual is 189 pages and is loaded with details about the escape codes, +# etc..... Available from AT&T CIC 800-432-6600... +# ask for Document number 999-300-660.. +# +att700|AT&T 700 24x80 column display w/102key keyboard, + am, eslok, hs, mir, msgr, xenl, xon, + cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4, + fsl=\E8, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m, + is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017, + is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, + kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[P, kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, + kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, + kf16=\EOD, kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, + kf20=\EOH, kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, + kf25=\ENQ, kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOq, + kf3=\EOe, kf30=\EOr, kf31=\EOs, kf32=\EOt, kf33=\EOu, + kf34=\EOv, kf35=\EOw, kf36=\EOx, kf37=\EOy, kf38=\EOu, + kf39=\EOv, kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, + kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, + kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, + kich1=\E[@, kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H, + mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, + pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, + rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m, + rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smir=\E[4h, smln=\E[p, smso=\E[7m, + smul=\E[4m, smxon=\E[53;0|, tbc=\E[3g, + tsl=\E7\E[99;%i%p1%dx, + +# This entry was modified 3/13/90 by JWE. +# fixes include additions of <enacs>, correcting <rep>, and modification +# of <kHOM>. (See comments below) +# att730 has status line of 80 chars +# These were commented out: <indn=\E[%p1%dS>, <rin=\E[%p1%dT>, +# the <kf25> and up keys are used for shifted system Fkeys +# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is +# currently the same as <khome> (unshifted HOME or \E[H). On the 102, 102+1 +# and 122 key keyboards, the 730's translation is \E[2J. For consistency +# <kHOM> has been commented out. The user can uncomment <kHOM> if using the +# 102, 102+1, or 122 key keyboards +# kHOM=\E[2J, +# (att730: I added <rmam>/<smam> based on the init string -- esr) +att730|AT&T 730 windowing terminal, + am, da, db, eslok, hs, mir, msgr, npc, xenl, xon, + cols#80, it#8, lh#2, lines#60, lm#0, lw#8, nlab#24, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, + clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fsl=\E8, + home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, + ind=\ED, invis=\E[8m, + is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, + is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, + kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, + kf13=\ENs, kf14=\ENt, kf15=\ENu, kf16=\ENv, kf17=\ENw, + kf18=\ENx, kf19=\ENy, kf2=\EOd, kf20=\ENz, kf21=\EN{, + kf22=\EN|, kf23=\EN}, kf24=\EN~, kf25=\EOC, kf26=\EOD, + kf27=\EOE, kf28=\EOF, kf29=\EOG, kf3=\EOe, kf30=\EOH, + kf31=\EOI, kf32=\EOJ, kf33=\ENO, kf34=\ENP, kf35=\ENQ, + kf36=\ENR, kf37=\ENS, kf38=\ENT, kf39=\EOU, kf4=\EOf, + kf40=\EOV, kf41=\EOW, kf42=\EOX, kf43=\EOY, kf44=\EOZ, + kf45=\EO[, kf46=\EO\s, kf47=\EO], kf48=\EO\^, kf5=\EOg, + kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, + kich1=\E[@, kil1=\E[L, kind=\E[S, kri=\E[T, + mc0=\E[?19h\E[0i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, + pfx=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%:-2d %e;0;3q%;%p2%s, + pfxl=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s, + pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, + rmam=\E[?7l, rmir=\E[4l, rmln=\E[?13h, rmso=\E[27m, + rmul=\E[24m, rmxon=\E[?21l, rs2=\Ec\E[?3l, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, + smln=\E[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h, + swidm=\E#6, tsl=\E7\E[;%i%p1%dx, +att730-41|730MTG-41|AT&T 730-41 windowing terminal Version, + lines#41, use=att730, +att730-24|730MTG-24|AT&T 730-24 windowing terminal Version, + lines#24, use=att730, +att730r|730MTGr|AT&T 730 rev video windowing terminal Version, + flash=\E[?5l$<200>\E[?5h, + is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B, + use=att730, +att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version, + lines#41, use=att730r, +att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version, + lines#24, use=att730r, + +# The following represents the screen layout along with the associated +# bezel buttons for the 5430/pt505 terminal. The "kf" designations do +# not appear on the screen but are shown to reference the bezel buttons. +# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate +# position relative to the screen. +# +# +# +# +----------------------------------------------------------------+ +# | | +# XXXX | kf0 kf24 | XXXX +# | | +# | | +# XXXX | kf1 kf23 | XXXX +# | | +# | | +# XXXX | kf2 kf22 | XXXX +# | | +# | | +# XXXX | kf3 kf21 | XXXX +# | | +# | | +# XXXX | kf4 kf20 | XXXX +# | | +# | | +# XXXX | kf5 kf19 | XXXX +# | | +# | | +# XXXX | kf6 kf18 | XXXX +# | | +# | | +# XXXX | | XXXX +# | | +# | | +# +----------------------------------------------------------------+ +# +# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX +# +# Note: XXXX represents the screen buttons +# CMD REDRAW +# +# MAIL +# +# version 1 note: +# The character string sent by key 'kf26' may be user programmable +# to send either \E[16s, or \E[26s. +# The character string sent by key 'krfr' may be user programmable +# to send either \E[17s, or \E[27s. +# +# Depression of the "CMD" key sends \E! (kcmd) +# Depression of the "MAIL" key sends \E[26s (kf26) +# "REDRAW" same as "REFRESH" (krfr) +# +# "kf" functions adds carriage return to output string if terminal is in +# 'new line' mode. +# +# The following are functions not covered in the table above: +# +# Set keyboard character (SKC): \EPn1;Pn2w +# Pn1= 0 Back Space key +# Pn1= 1 Break key +# Pn2= Program char (hex) +# +# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t +# Pn1= Window number (1-39) +# Pn2-Pn5= Y;X;Y;X coordinates +# +# Screen Selection (SSL): \E[Pnu +# Pn= Window number +# +# Set Terminal Modes (SM): \E[Pnh +# Pn= 3 Graphics mode +# Pn= > Cursor blink +# Pn= < Enter new line mode +# Pn= = Enter reverse insert/replace mode +# Pn= ? Enter no scroll mode +# +# Reset Terminal Mode (RM): \E[Pnl +# Pn= 3 Exit graphics mode +# Pn= > Exit cursor blink +# Pn= < Exit new line mode +# Pn= = Exit reverse insert/replace mode +# Pn= ? Exit no scroll mode +# +# Screen Status Report (SSR): \E[Pnp +# Pn= 0 Request current window number +# Pn= 1 Request current window dimensions +# +# Device Status Report (DSR): \E[6n Request cursor position +# +# Call Status Report (CSR): \E[Pnv +# Pn= 0 Call failed +# Pn= 1 Call successful +# +# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string +# Pn1= Button number to be loaded +# Pn2= Character count of "string" +# Pn3= Key mode being loaded: +# 0= Unshifted +# 1= Shifted +# 2= Control +# String= Text string (15 chars max) +# +# Screen Number Report (SNR): \E[Pnp +# Pn= Screen number +# +# Screen Dimension Report (SDR): \E[Pn1;Pn2r +# Pn1= Number of rows available in window +# Pn2= Number of columns available in window +# +# Cursor Position Report (CPR): \E[Pn1;Pn2R +# Pn1= "Y" Position of cursor +# Pn2= "X" Position of cursor +# +# Request Answer Back (RAB): \E[c +# +# Answer Back Response (ABR): \E[?;*;30;VSV +# *= 0 No printer available +# *= 2 Printer available +# V= Software version number +# SV= Software sub version number +# (printer-available field not documented in v1) +# +# Screen Alignment Aid: \En +# +# Bell (lower pitch): \E[x +# +# Dial Phone Number: \EPdstring\ +# string= Phone number to be dialed +# +# Set Phone Labels: \EPpstring\ +# string= Label for phone buttons +# +# Set Clock: \EPchour;minute;second\ +# +# Position Clock: \EPsY;X\ +# Y= "Y" coordinate +# X= "X" coordinate +# +# Delete Clock: \Epr\ +# +# Programming The Function Buttons: \EPfPn;string\ +# Pn= Button number (00-06, 18-24) +# (kf00-kf06, kf18-kf24) +# string= Text to sent on button depression +# +# The following in version 2 only: +# +# Request For Local Directory Data: \EPp12;\ +# +# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\ +# +# Request for Local Directory Data in print format: \EPp13;\ +# +# Enable 'Prt on Line' mode: \022 (DC2) +# +# Disable 'Prt on Line' mode: \024 (DC4) +# + +# 05-Aug-86: +# The following Terminfo entry describes functions which are supported by +# the AT&T 5430/pt505 terminal software version 2 and later. +att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal, + am, xon, + cols#80, it#8, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, + cnorm=\E[>l, cr=^M, cub=\E[%p1%dD, cub1=\E[D, + cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[0J, el=\E[0K, el1=\E[2K, home=\E[H, ht=^I, + il=\E[%p1%dL, il1=\E[L, ind=^J, + is1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l, + kbs=^H, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf0=\E[00s, kf1=\E[01s, kf18=\E[18s, + kf19=\E[19s, kf2=\E[02s, kf20=\E[20s, kf21=\E[21s, + kf22=\E[22s, kf23=\E[23s, kf24=\E[24s, kf26=\E[26s, + kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, kf6=\E[06s, + krfr=\E[27s, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, + rmacs=\E[10m, rmam=\E[11;1j, rmir=\E[4l, rmso=\E[m, + rmul=\E[m, rs1=\Ec, sc=\E7, sgr0=\E[m, smacs=\E[11m, + smam=\E[11;0j, smir=\E[4h, smso=\E[1m, smul=\E[4m, + +# The following Terminfo entry describes functions which are supported by +# the AT&T 5430/pt505 terminal software version 1. +att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines, + lines#24, + mc4@, mc5@, rc@, rmam@, sc@, smam@, use=att505, +tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines, + lines#22, use=att505, +# +#### ------------------ TERMINFO FILE CAN BE SPLIT HERE --------------------- +# This cut mark helps make life less painful for people running ncurses tic +# on machines with relatively little RAM. The file can be broken in half here +# cleanly and compiled in sections -- no `use' references cross this cut +# going forward. +# + +#### Ampex (Dialogue) +# +# Yes, these are the same people who are better-known for making audio- and +# videotape. I'm told they are located in Redwood City, CA. +# + +# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981 +# (ampex80: some capabilities merged in from SCO's entry -- esr) +ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80, + OTbs, am, bw, ul, + cols#80, it#8, lines#24, + bel=^G, cbt=\EI, clear=\E*$<75>, cr=^M, cub1=^H, cud1=^J, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dl1=\ER$<5*>, ed=\Ey, el=\Et, ht=^I, hts=\E1, + ich1=\EQ, il1=\EE$<5*>, ind=^J, is2=\EA, rmso=\Ek, rmul=\Em, + smso=\Ej, smul=\El, tbc=\E3, +# This entry was from somebody anonymous, Tue Aug 9 20:11:37 1983, who wrote: +ampex175|ampex d175, + am, + cols#80, lines#24, + bel=^G, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\Ey, el=\Et, home=^^, ich1=\EQ, il1=\EE, ind=^J, + is2=\EX\EA\EF, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, + kdch1=\EW, kdl1=\ER, khome=^^, kich1=\EQ, kil1=\EE, ll=^^^K, + rmcup=\EF, rmso=\Ek, rmul=\Em, smcup=\EN, smso=\Ej, smul=\El, +# No backspace key in the main QWERTY cluster. Fortunately, it has a +# NEWLINE/PAGE key just above RETURN that sends a strange single-character +# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS +# mode), this key can be used as the erase key; I find I like this. Because +# some people and some systems may not, there is another termcap ("ampex175") +# that suppresses this little eccentricity by omitting the relevant capability. +ampex175-b|ampex d175 using left arrow for erase, + kbs=^_, use=ampex175, +# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu> +# (ampex210: removed obsolete ":kn#10:" -- esr) +ampex210|a210|ampex a210, + OTbs, am, hs, xenl, + cols#80, it#8, lines#24, xmc#1, + cbt=\EI, clear=\E*, cub1=^H, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\Ey, el=\Et, flash=\EU\EX\EU\EX\EU\EX\EU\EX, + fsl=\E.2, home=^^, ht=^I, ich1=\EQ, + if=/usr/share/tabset/std, il1=\EE, invis@, + is2=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En, kcub1=^H, + kcud1=^V, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, + kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, + kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, khome=^^, + tsl=\E.0\Eg\E}\Ef, use=adm+sgr, +# (ampex219: I added <rmam>/<smam> based on the init string, added <cvvis> +# from ampex219w, added <cnorm>=\E[?3l, irresistibly suggested by <cvvis>, +# and moved the padding to be *after* the caps -- esr) +ampex219|ampex-219|amp219|Ampex with Automargins, + hs, xenl, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z, + clear=\E[H\E[2J$<50>, cnorm=\E[?3l, cr=^M, + csr=%i\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, + cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, + cuu1=\E[A$<2>, cvvis=\E[?3h, dim=\E[1m, ed=\E[J$<50>, + el=\E[K$<3>, home=\E[H, ht=^I, ind=^J, + is2=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~, + kf1=\E[7~, kf2=\E[8~, kf3=\E[9~, kf4=\E[10~, kf5=\E[11~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, + rev=\E[7m, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E>, + rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h, + smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>, +ampex219w|ampex-219w|amp219w|Ampex 132 cols, + cols#132, lines#24, + bel=^G, cr=^M, cud1=^J, ind=^J, + is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219, +# (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr) +ampex232|ampex-232|Ampex Model 232, + am, + cols#80, lines#24, xmc#1, + cbt=\EI, civis=\E.0, clear=\E+, cnorm=\E.4, cub1=^H, cud1=^V, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dl1=\ER$<5*/>, ed=\EY, el=\ET, + flash=\Eb$<200/>\Ed, ht=^I, ich1=\EQ, il1=\EE$<5*/>, + invis@, is2=\Eg\El, kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L, + kcuu1=^K, kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, + kf4=^AD\r, kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, + kf9=^AI\r, khome=^^, use=adm+sgr, +# (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr) +ampex232w|Ampex Model 232 / 132 columns, + cols#132, lines#24, + is2=\E\034Eg\El, use=ampex232, + +#### Ann Arbor (aa) +# +# Ann Arbor made dream terminals for hackers -- large screen sizes and huge +# numbers of function keys. At least some used monitors in portrait mode, +# allowing up to 76-character screen heights! They were reachable at: +# +# Ann Arbor Terminals +# 6175 Jackson Road +# Ann Arbor, MI 48103 +# (313)-663-8000 +# +# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor +# can't be found on the Web; I fear they're long dead. R.I.P. +# + + +# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs. +# Highly modified 6/22 by Mike O'Brien. +# split out into several for the various screen sizes by dave-yost@rand +# Modifications made 3/82 by Mark Horton +# Modified by Tom Quarles at UCB for greater efficiency and more diversity +# status line moved to top of screen, <flash> removed 5/82 +# Some unknown person at SCO then hacked the init strings to make them more +# efficient. +# +# assumes the following setup: +# A menu: 0000 1010 0001 0000 +# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 +# C menu: 56 66 0 0 9600 0110 1100 +# D menu: 0110 1001 1 0 +# +# Briefly, the settings are for the following modes: +# (values are for bit set/clear with * indicating our preference +# and the value used to test these termcaps) +# Note that many of these settings are irrelevent to the terminfo +# and are just set to the default mode of the terminal as shipped +# by the factory. +# +# A menu: 0000 1010 0001 0000 +# Block/underline cursor* +# blinking/nonblinking cursor* +# key click/no key click* +# bell/no bell at column 72* +# +# key pad is cursor control*/key pad is numeric +# return and line feed/return for <cr> key * +# repeat after .5 sec*/no repeat +# repeat at 25/15 chars per sec. * +# +# hold data until pause pressed/process data unless pause pressed* +# slow scroll/no slow scroll* +# Hold in area/don't hold in area* +# functions keys have default*/function keys disabled on powerup +# +# show/don't show position of cursor during page transmit* +# unused +# unused +# unused +# +# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 +# Baud rate (9600*) +# +# 2 bits of parity - 00=odd,01=even*,10=space,11=mark +# 1 stop bit*/2 stop bits +# parity error detection off*/on +# +# keyboard local/on line* +# half/full duplex* +# disable/do not disable keyboard after data transmission* +# +# transmit entire page/stop transmission at cursor* +# transfer/do not transfer protected characters* +# transmit all characters/transmit only selected characters* +# transmit all selected areas/transmit only 1 selected area* +# +# transmit/do not transmit line separators to host* +# transmit/do not transmit page tab stops tabs to host* +# transmit/do not transmit column tab stop tabs to host* +# transmit/do not transmit graphics control (underline,inverse..)* +# +# enable*/disable auto XON/XOFF control +# require/do not require receipt of a DC1 from host after each LF* +# pause key acts as a meta key/pause key is pause* +# unused +# +# unused +# unused +# unused +# unused +# +# XON character (17*) +# XOFF character (19*) +# +# C menu: 56 66 0 0 9600 0110 1100 +# number of lines to print data on (printer) (56*) +# +# number of lines on a sheet of paper (printer) (66*) +# +# left margin (printer) (0*) +# +# number of pad chars on new line to printer (0*) +# +# printer baud rate (9600*) +# +# printer parity: 00=odd,01=even*,10=space,11=mark +# printer stop bits: 2*/1 +# print/do not print guarded areas* +# +# new line is: 01=LF,10=CR,11=CRLF* +# unused +# unused +# +# D menu: 0110 1001 1 0 +# LF is newline/LF is down one line, same column* +# wrap to preceding line if move left from col 1*/don't wrap +# wrap to next line if move right from col 80*/don't wrap +# backspace is/is not destructive* +# +# display*/ignore DEL character +# display will not/will scroll* +# page/column tab stops* +# erase everything*/erase unprotected only +# +# editing extent: 0=display,1=line*,2=field,3=area +# +# unused +# + +annarbor4080|aa4080|ann arbor 4080, + OTbs, am, + cols#80, lines#40, + bel=^G, clear=\014$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=^_, + cup=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c, + cuu1=^N, home=^K, ht=^I, hts=^]^P1, ind=^J, kbs=^^, kcub1=^H, + kcud1=^J, kcuf1=^_, kcuu1=^N, khome=^K, tbc=^\^P^P, + +# Strange Ann Arbor terminal from BRL +aas1901|Ann Arbor K4080 w/S1901 mod, + am, + cols#80, lines#40, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^N, + home=^K, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, ll=^O\0c, + nel=^M^J, + +# If you're using the GNU termcap library, add +# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp: +# to these capabilities. This is the nonstandard GNU termcap scrolling +# capability, arguments are: +# 1. Total number of lines on the screen. +# 2. Number of lines above desired scroll region. +# 3. Number of lines below (outside of) desired scroll region. +# 4. Total number of lines on the screen, the same as the first parameter. +# The generic Ann Arbor entry is the only one that uses this. +aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly), + OTbs, am, km, mc5i, mir, xon, + cols#80, it#8, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + clear=\E[H\E[J$<156>, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^K, 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, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, + el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, + hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, il=\E[%p1%dL, + il1=\E[L$<3>, ind=^K, invis=\E[8m, is1=\E[m\E7\E[H\E9\E8, + is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=^H, kcbt=\E[Z, + kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E[P, kdl1=\E[M, kf1=\EOA, kf10=\EOJ, kf11=\EOK, + kf12=\EOL, kf13=\EOM, kf14=\EON, kf15=\EOO, kf16=\EOP, + kf17=\EOQ, kf18=\EOR, kf19=\EOS, kf2=\EOB, kf20=\EOT, + kf21=\EOU, kf22=\EOV, kf23=\EOW, kf24=\EOX, kf3=\EOC, + kf4=\EOD, kf5=\EOE, kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI, + khome=\E[H, kich1=\E[@, kil1=\E[L, krmir=\E6, mc0=\E[0i, + mc4=^C, mc5=\E[v, mc5p=\E[%p1%dv, rc=\E8, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, + rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\, + rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, + sgr0=\E[m, + smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\, + smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + vpa=\E[%p1%{1}%+%dd, + +aaa+rv|ann arbor ambassador in reverse video, + blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m, + is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, + rs1=\E[H\E[7m\E[J$<156>, + sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, + sgr0=\E[7m\016, smso=\E[m, smul=\E[4;7m, +# Ambassador with the DEC option, for partial vt100 compatibility. +aaa+dec|ann arbor ambassador in dec vt100 mode, + acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}, + csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N, + sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;, + smacs=^O, +aaa-18|ann arbor ambassador/18 lines, + lines#18, + is2=\E7\E[60;0;0;18p\E8, + rmcup=\E[60;0;0;18p\E[60;1H\E[K, smcup=\E[18;0;0;18p, + use=aaa+unk, +aaa-18-rv|ann arbor ambassador/18 lines+reverse video, + use=aaa+rv, use=aaa-18, +aaa-20|ann arbor ambassador/20 lines, + lines#20, + is2=\E7\E[60;0;0;20p\E8, + rmcup=\E[60;0;0;20p\E[60;1H\E[K, smcup=\E[20;0;0;20p, + use=aaa+unk, +aaa-22|ann arbor ambassador/22 lines, + lines#22, + is2=\E7\E[60;0;0;22p\E8, + rmcup=\E[60;0;0;22p\E[60;1H\E[K, smcup=\E[22;0;0;22p, + use=aaa+unk, +aaa-24|ann arbor ambassador/24 lines, + lines#24, + is2=\E7\E[60;0;0;24p\E8, + rmcup=\E[60;0;0;24p\E[60;1H\E[K, smcup=\E[24;0;0;24p, + use=aaa+unk, +aaa-24-rv|ann arbor ambassador/24 lines+reverse video, + use=aaa+rv, use=aaa-24, +aaa-26|ann arbor ambassador/26 lines, + lines#26, + is2=\E7\E[60;0;0;26p\E8, + rmcup=\E[60;0;0;26p\E[26;1H\E[K, + smcup=\E[H\E[J$<156>\E[26;0;0;26p, use=aaa+unk, +aaa-28|ann arbor ambassador/28 lines, + lines#28, + is2=\E7\E[60;0;0;28p\E8, + rmcup=\E[60;0;0;28p\E[28;1H\E[K, + smcup=\E[H\E[J$<156>\E[28;0;0;28p, use=aaa+unk, +aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status, + eslok, hs, + lines#29, + dsl=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K, + fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;30p\E8, + rmcup=\E[60;1;0;30p\E[29;1H\E[K, + smcup=\E[H\E[J$<156>\E[30;1;0;30p\E[30;1H\E[K, + tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, +aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video, + use=aaa+rv, use=aaa-30-s, +aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context, + rmcup=\E[60;1;0;30p\E[59;1H\E[K, + smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s, +aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video, + rmcup=\E[60;1;0;30p\E[59;1H\E[K, + smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s-rv, +aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines, + lines#30, + is2=\E7\E[60;0;0;30p\E8, + rmcup=\E[60;0;0;30p\E[30;1H\E[K, + smcup=\E[H\E[J$<156>\E[30;0;0;30p, use=aaa+unk, +aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video, + use=aaa+rv, use=aaa-30, +aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context, + rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, + use=aaa-30, +aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context, + rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, + use=aaa+rv, use=aaa-30, +aaa-36|ann arbor ambassador/36 lines, + lines#36, + is2=\E7\E[60;0;0;36p\E8, + rmcup=\E[60;0;0;36p\E[36;1H\E[K, + smcup=\E[H\E[J$<156>\E[36;0;0;36p, use=aaa+unk, +aaa-36-rv|ann arbor ambassador/36 lines+reverse video, + use=aaa+rv, use=aaa-36, +aaa-40|ann arbor ambassador/40 lines, + lines#40, + is2=\E7\E[60;0;0;40p\E8, + rmcup=\E[60;0;0;40p\E[40;1H\E[K, + smcup=\E[H\E[J$<156>\E[40;0;0;40p, use=aaa+unk, +aaa-40-rv|ann arbor ambassador/40 lines+reverse video, + use=aaa+rv, use=aaa-40, +aaa-48|ann arbor ambassador/48 lines, + lines#48, + is2=\E7\E[60;0;0;48p\E8, + rmcup=\E[60;0;0;48p\E[48;1H\E[K, + smcup=\E[H\E[J$<156>\E[48;0;0;48p, use=aaa+unk, +aaa-48-rv|ann arbor ambassador/48 lines+reverse video, + use=aaa+rv, use=aaa-48, +aaa-60-s|ann arbor ambassador/59 lines+status, + eslok, hs, + lines#59, + dsl=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K, + fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;60p\E8, + tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, +aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video, + use=aaa+rv, use=aaa-60-s, +aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video, + use=aaa+dec, use=aaa+rv, use=aaa-60-s, +aaa-60|ann arbor ambassador/60 lines, + lines#60, + is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8, + use=aaa+unk, +aaa-60-rv|ann arbor ambassador/60 lines+reverse video, + use=aaa+rv, use=aaa-60, +aaa-db|ann arbor ambassador 30/destructive backspace, + OTbs@, + cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30, + +guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols, + lines#33, + flash=\E[>59h$<100>\E[>59l, + is2=\E7\E[255;0;0;33;80;80p\E8\E[J, is3=\E[>59l, + rmcup=\E[255p\E[255;1H\E[K, smcup=\E[33p, use=aaa+unk, +guru+rv|guru changes for reverse video, + flash=\E[>59l$<100>\E[>59h, is3=\E[>59h, +guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video, + use=guru+rv, use=guru-33, +guru+s|guru status line, + eslok, hs, + dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, fsl=\E[>51l, + rmcup=\E[255;1p\E[255;1H\E[K, smcup=, + tsl=\E[>51h\E[1;%p1%dH\E[2K, +guru-nctxt|guru with no saved context, + smcup=\E[H\E[J$<156>\E[33p\E[255;1H\E[K, use=guru, +guru-s|guru-33-s|ann arbor guru/33 lines+status, + lines#32, + is2=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J, + smcup=\E[33;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, +guru-24|ann arbor guru 24 lines, + cols#80, lines#24, + is2=\E7\E[255;0;0;24;80;80p\E8\E[J, smcup=\E[24p, + use=guru+unk, +guru-44|ann arbor guru 44 lines, + cols#97, lines#44, + is2=\E7\E[255;0;0;44;97;100p\E8\E[J, smcup=\E[44p, + use=guru+unk, +guru-44-s|ann arbor guru/44 lines+status, + lines#43, + is2=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J, + smcup=\E[44;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, +guru-76|guru with 76 lines by 89 cols, + cols#89, lines#76, + is2=\E7\E[255;0;0;76;89;100p\E8\E[J, smcup=\E[76p, + use=guru+unk, +guru-76-s|ann arbor guru/76 lines+status, + cols#89, lines#75, + is2=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J, + smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, +guru-76-lp|guru-lp|guru with page bigger than line printer, + cols#134, lines#76, + is2=\E7\E[255;0;0;76;134;134p\E8\E[J, smcup=\E[76p, + use=guru+unk, +guru-76-w|guru 76 lines by 178 cols, + cols#178, lines#76, + is2=\E7\E[255;0;0;76;178;178p\E8\E[J, smcup=\E[76p, + use=guru+unk, +guru-76-w-s|ann arbor guru/76 lines+status+wide, + cols#178, lines#75, + is2=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J, + smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, +guru-76-wm|guru 76 lines by 178 cols with 255 cols memory, + cols#178, lines#76, + is2=\E7\E[255;0;0;76;178;255p\E8\E[J, smcup=\E[76p, + use=guru+unk, +aaa-rv-unk|ann arbor unknown type, + lh#0, lw#0, nlab#0, + blink=\E[5;7m, bold=\E[1;7m, home=\E[H, invis=\E[7;8m, + is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, + rs1=\E[H\E[7m\E[J, + sgr=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, + sgr0=\E[7m, smso=\E[m, smul=\E[4;7m, + +#### Applied Digital Data Systems (adds) +# +# ADDS itself is long gone. ADDS was bought by NCR, and the same group made +# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for +# terminals was merged again. Then AT&T sold the terminal business to +# SunRiver, which later changed its name to Boundless Technologies. The +# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there +# as of early 1995) are at: +# +# Boundless Technologies +# 100 Marcus Boulevard +# Hauppauge, NY 11788-3762 +# Vox: (800)-231-5445 +# Fax: (516)-342-7378 +# Web: http://boundless.com +# +# Their voice mail used to describe the place as "SunRiver (formerly ADDS)". +# In 1995 Boundless acquired DEC's terminals business. +# + +# Regent: lowest common denominator, works on all regents. +# (regent: renamed ":bc:" to ":le:" -- esr) +regent|Adds Regent Series, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, cuu1=^Z, + home=\EY\s\s, ind=^J, ll=^A, +# Regent 100 has a bug where if computer sends escape when user is holding +# down shift key it gets confused, so we avoid escape. +regent100|Adds Regent 100, + xmc#1, + bel=^G, + cup=\013%p1%' '%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c, + kf0=^B1\r, kf1=^B2\r, kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, + kf5=^B6\r, kf6=^B7\r, kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, + lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, + sgr0=\E0@, smso=\E0P, smul=\E0`, use=regent, +regent20|Adds Regent 20, + bel=^G, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, ed=\Ek, el=\EK, + use=regent, +regent25|Adds Regent 25, + bel=^G, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, khome=^A, + use=regent20, +regent40|Adds Regent 40, + xmc#1, + bel=^G, dl1=\El$<2*>, il1=\EM$<2*>, kf0=^B1\r, kf1=^B2\r, + kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, + kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, + lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, sgr0=\E0@, smso=\E0P, + smul=\E0`, use=regent25, +regent40+|Adds Regent 40+, + is2=\EB, use=regent40, +regent60|regent200|Adds Regent 60, + dch1=\EE, is2=\EV\EB, kdch1=\EE, kich1=\EF, krmir=\EF, + rmir=\EF, rmso=\ER\E0@\EV, smir=\EF, smso=\ER\E0P\EV, + use=regent40+, +# From: <edward@onyx.berkeley.edu> Thu Jul 9 09:27:33 1981 +# (viewpoint: added <kcuf1>, function key, and <dl1> capabilities -- esr) +viewpoint|addsviewpoint|adds viewpoint, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^L, cnorm=\017\E0`, cr=^M, cub1=^H, cud1=^J, + cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, + cvvis=\017\E0P, dl1=\El, ed=\Ek$<16.1*>, el=\EK$<16>, + ind=^J, is2=\017\E0`, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, + kf0=^B1, kf2=^B2, kf3=^B!, kf4=^B", kf5=^B#, khome=^A, ll=^A, + rmso=^O, rmul=^O, sgr0=^O, smso=^N, smul=^N, +# Some viewpoints have bad ROMs that foo up on ^O +screwpoint|adds viewpoint with ^O bug, + cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint, + +# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92 +# The <civis>/<cnorm>/<sgr>/<sgr0> strings were added by ESR from specs. +# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000, +# underline=01100000, rev=01010000, blink=01000010,dim=01000001, +# invis=01000100 and %c is the logical or of desired attributes. +# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(. +# +# Update by TD - 2004: +# Adapted from +# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt +# +# COMMANDS ASCII CODE +# +# Address, Absolute ESC,=,row,column +# Beep BEL +# Aux Port Enable ESC,@ +# Aux Port Disable ESC,A +# Backspace BS +# Cursor back BS +# Cursor down LF +# Cursor forward FF +# Cursor home RS +# Cursor up VT +# Cursor supress ETB +# Cursor enable CAN +# Erase to end of line ESC,T +# Erase to end of page ESC,Y +# Erase screen SUB +# Keyboard lock SI +# Keyboard unlock SO +# Read current cursor position ESC,? +# Set Attribute ESC,0,x (see below for values of x) +# Tag bit reset ESC,( +# Tag bit set ESC,) +# Transparent Print on ESC,3 +# Transparent Print off ESC,4 +# +# +# ATTRIBUTES +# +# Normal @ 0100 +# Half Intensity A 0101 +# Blinking B 0102 +# Half Intensity Blinking C 0103 +# Reverse Video P 0120 +# Reverse Video Half Intensity Q 0121 +# Reverse Video Blinking R 0122 +# Reverse Video Half Intensity +# Blinking S 0123 +# Underlined ` 0140 +# Underlined Half Intensity a 0141 +# Underlined Blinking b 0142 +# Underlined Half Intensity +# Blinking c 0143 +# Video suppress D 0104 +vp3a+|viewpoint3a+|adds viewpoint 3a+, + am, bw, + cols#80, it#8, lines#24, + blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=^M, + cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dim=\E0A\E), + ed=\EY$<80>, el=\ET, home=^^, ht=^I, ind=^J, invis=\E0D\E), + kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, + nel=^M^J, rev=\E0P\E), rmso=\E(, + sgr=%?%p1%p2%|%p3%|%p4%|%p5%|%p7%|%t\E0%{64}%?%p1%t%{17}%|%;%?%p2%t%{32}%|%;%?%p3%t%{16}%|%;%?%p4%t%{2}%|%;%?%p5%t%{1}%|%;%c%?%p7%tD%;\E)%e\E(%;, + sgr0=\E(, smso=\E0Q\E), smul=\E0`\E), +vp60|viewpoint60|addsvp60|adds viewpoint60, + use=regent40, +# +# adds viewpoint 90 - from cornell +# Note: emacs sends ei occasionally to insure the terminal is out of +# insert mode. This unfortunately puts the viewpoint90 IN insert +# mode. A hack to get around this is <ich1=\EF\s\EF^U>. (Also, +# - :ei=:im=: must be present in the termcap translation.) +# - <xhp> indicates glitch that attributes stick to location +# - <msgr> means it's safe to move in standout mode +# - <clear=\EG\Ek>: clears screen and visual attributes without affecting +# the status line +# Function key and label capabilities merged in from SCO. +vp90|viewpoint90|adds viewpoint 90, + OTbs, bw, msgr, xhp, + cols#80, lines#24, + clear=\EG\Ek, cub1=^H, cud1=^J, cuf1=^F, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EE, + dl1=\El, ed=\Ek, el=\EK, home=\EY\s\s, ht=^I, + ich1=\EF \EF\025, ind=^J, kbs=^H, kcub1=^U, kcud1=^J, + kcuf1=^F, kcuu1=^Z, kf0=^B1\r, kf1=^B2\r, kf10=^B;\r, + kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, + kf7=^B8\r, kf8=^B9\r, kf9=^B\:\r, khome=^A, lf0=F1, lf1=F2, + lf10=F11, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, + lf9=F10, ll=^A, rmso=\ER\E0@\EV, rmul=\ER\E0@\EV, + sgr0=\ER\E0@\EV, smso=\ER\E0Q\EV, smul=\ER\E0`\EV, +# Note: if return acts weird on a980, check internal switch #2 +# on the top chip on the CONTROL pc board. +adds980|a980|adds consul 980, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\014$<1>\013@, cr=^M, cub1=^H, cud1=^J, + cuf1=\E^E01, cup=\013%p1%{64}%+%c\E\005%p2%2d, + dl1=\E\017$<13>, il1=\E\016$<13>, ind=^J, kf0=\E0, kf1=\E1, + kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, + kf9=\E9, rmso=^O, sgr0=^O, smso=^Y^^^N, + +#### C. Itoh Electronics +# +# As of 1995 these people no longer make terminals (they're still in the +# printer business). Their terminals were all clones of the DEC VT series. +# They're located in Orange County, CA. +# + +# CIT 80 - vt-52 emulator, the termcap has been modified to remove +# the delay times and do an auto tab set rather than the indirect +# file used in vt100. +cit80|cit-80|citoh 80, + OTbs, am, + cols#80, lines#24, + clear=\E[H\EJ, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\EJ, el=\EK, ff=^L, + ind=^J, is2=\E>, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, rmkx=\E[?1l\E>, smkx=\E[?1h\E=, +# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985 +# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr) +cit101|citc|C.itoh fast vt100, + OTbs, am, xenl, + cols#80, lines#24, + bel=^G, clear=\E[H\E[2J, cnorm=\E[V\E8, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + cvvis=\E7\E[U, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, + flash=\E[?5h$<200/>\E[?5l, ich1=\E[@, il1=\E[L, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, +# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL +# The following termcap entry was created from the Callan cd100 entry. The +# last two lines (with the capabilities in caps) are used by RM-cobol to allow +# full selection of combinations of reverse video, underline, and blink. +# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\ +# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\ +# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr) +cit101e|C. Itoh CIT-101e, + OTbs, OTpt, am, mir, msgr, + cols#80, it#8, lines#24, + acsc=, clear=\E[H\E[J, cnorm=, csr=\E[%i%p1%2d;%p2%2dr, + cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, + cuu1=\E[A, cvvis=\E[?1l\E[?4l\E[?7h, dch1=\E[P, dl1=\E[M, + ed=\E[J, el=\E[K, if=/usr/share/tabset/vt100, il1=\E[L, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOT, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOm, kf6=\EOl, + kf7=\EOM, kf8=\EOn, rc=\E8, ri=\EM, rmacs=^O, rmir=\E[4l, + rmkx=\E>, rmso=\E[m, rmul=\E[m, sc=\E7, smacs=^N, smir=\E[4h, + smkx=\E=, smso=\E[7m, smul=\E[4m, +# From: David S. Lawyer, June 1997: +# The CIT 101-e was made in Japan in 1983-4 and imported by CIE +# Terminals in Irvine, CA. It was part of CITOH Electronics. In the +# late 1980's CIT Terminals went out of business. +# There is no need to use the initialization string is=... (by invoking +# tset or setterm etc.) provided that the terminal has been manually set +# up (and the setup saved with ^S) to be compatible with this termcap. To be +# compatible it should be in ANSI mode (not VT52). A set-up that +# works is to set all the manually setable stuff to factory defaults +# by pressing ^D in set-up mode. Then increse the brighness with the +# up-arrow key since the factory default will likely be dim on an old +# terminal. Then change any options you want (provided that they are +# compatible with the termcap). For my terminal I set: Screen +# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver: +# on. I also set up mine for parity (but you may not need it). Then +# save the setup with ^S. +# (cit101e-rv: added empty <rmcup> to suppress a tic warning. --esr) +cit101e-rv|Citoh CIT-101e (sets reverse video), + am, eo, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, + OTnl=\EM, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + civis=\E[1v, clear=\E[H\E[J, cnorm=\E[0;3;4v, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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, + cvvis=\E[3;5v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l\E[?5h$<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, indn=\E[%p1%dS, + is2=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H, + kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, + rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=, rmir=\E[4l, + rmso=\E[m, rmul=\E[m, rs1=\Ec\E[?7h\E[>5g, sc=\E7, + sgr0=\E[m, smcup=\E[>5g\E[?7h\E[?5h, smir=\E[4h, + smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%p1%d;%p2%dR, + u7=\E[6n, u8=\E[?6c, u9=\E[c, +cit101e-n|CIT-101e w/o am, + am@, + cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, + use=cit101e, +cit101e-132|CIT-101e with 132 cols, + cols#132, + kbs=^H, kcub1=^H, kcud1=^J, use=cit101e, +cit101e-n132|CIT-101e with 132 cols w/o am, + am@, + cols#132, + cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, + use=cit101e, +# CIE Terminals CIT-500 from BRL +# The following SET-UP modes are assumed for normal operation: +# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF +# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES +# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF +# Other SET-UP modes may be set for operator convenience or communication +# requirements. +# Hardware tabs are assumed to be set every 8 columns; they can be set up +# by the "reset", "tset", or "tabs" utilities. No delays are specified; use +# "stty ixon -ixany" to enable DC3/DC1 flow control! +# (cit500: I added <rmam>/<smam> based on the init string -- esr) +cit500|CIE Terminals CIT-500, + OTbs, OTpt, mir, msgr, xon, + OTkn#10, cols#80, it#8, lines#64, vt#3, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\EM, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, + ed=\EJ, el=\EK, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, + il1=\E[L, ind=^J, is2=\E<\E)0, kbs=^H, kcbt=\E[Z, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[P, kdl1=\E[M, + ked=\EJ, kel=\EK, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, + kf4=\EOU, kf5=\EOV, kf6=\EOW, kf7=\EOX, kf8=\EOY, kf9=\EOZ, + khome=\E[H, kich1=\E[4h, kil1=\E[L, krmir=\E[4l, lf0=PF1, + lf1=PF2, lf2=PF3, lf3=PF4, lf4=F15, lf5=F16, lf6=F17, lf7=F18, + lf8=F19, lf9=F20, ll=\E[64H, nel=\EE, rc=\E8, rev=\E[7m, + ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, + rmso=\E[m, rmul=\E[m, + rs1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>, + sc=\E7, sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + +# C. Itoh printers begin here +citoh|ci8510|8510|c.itoh 8510a, + cols#80, it#8, + bold=\E!, cub1@, + is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073., + rep=\ER%p2%03d%p1%c, ri=\Er, rmul=\EY, sgr0=\E"\EY, + smul=\EX, use=lpr, +citoh-pica|citoh in pica, + is1=\EN, use=citoh, +citoh-elite|citoh in elite, + cols#96, + is1=\EE, + is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089., + use=citoh, +citoh-comp|citoh in compressed, + cols#136, + is1=\EQ, + is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089\,097\,105\,113\,121\,129., + use=citoh, +# citoh has infinite cols because we don't want lp ever inserting \n\t**. +citoh-prop|citoh-ps|ips|citoh in proportional spacing mode, + cols#32767, + is1=\EP, use=citoh, +citoh-6lpi|citoh in 6 lines per inch mode, + is3=\EA, use=citoh, +citoh-8lpi|citoh in 8 lines per inch mode, + lines#88, + is3=\EB, use=citoh, + +#### Control Data (cdc) +# + +cdc456|cdc 456 terminal, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E1%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dl1=\EJ, ed=^X, + el=^V, home=^Y, il1=\EL, ind=^J, + +# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick) +cdc721|CDC Viking, + OTbs, am, + cols#80, lines#24, + clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, + cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, + kcuu1=^W, khome=^Y, +cdc721ll|CDC Vikingll, + OTbs, am, + cols#132, lines#24, + clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, + cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, + kcuu1=^W, khome=^Y, +# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out +cdc752|CDC 752, + OTbs, am, bw, xhp, + cols#80, lines#24, + bel=^G, clear=\030\E1\s\s, cr=^M, cub1=^H, cud1=^J, cuf1=^U, + cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, el=^V, + home=\E1\s\s, ind=^J, ll=^Y, rs1=\E1 \030\002\003\017, +# CDC 756 +# The following switch/key settings are assumed for normal operation: +# 96 chars SCROLL FULL duplex not BLOCK +# Other switches may be set according to communication requirements. +# Insert/delete-character cannot be used, as the whole display is affected. +# "so" & "se" are commented out until jove handles "sg" correctly. +cdc756|CDC 756, + OTbs, am, bw, + OTkn#10, cols#80, lines#24, + bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^U, + cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, + dl1=\EJ$<6*/>, ed=^X, el=^V, home=^Y, il1=\EL$<6*/>, ind=^J, + kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, kdch1=\EI, + kdl1=\EL, ked=^X, kel=^V, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, + kf4=\EE, kf5=\EF, kf6=\EG, kf7=\EH, kf8=\Ea, kf9=\Eb, khome=^Y, + khts=^O, kich1=\EK, kil1=\EL, lf0=F1, lf1=F2, lf2=F3, lf3=F4, + lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, ll=^Y^Z, + rs1=\031\030\002\003\017, +# +# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL. +# +# Part of the long initialization string defines the "DOWN" key to the left +# of the tab key to send an ESC. The real ESC key is positioned way out +# in right field. +# +# The termcap won't work in 132 column mode due to the way it it moves the +# cursor. Termcap doesn't have the capability (as far as I could tell) to +# handle the 721 in 132 column mode. +# +# (cdc721: changed :ri: to :sr: -- esr) +cdc721-esc|Control Data 721, + OTbs, OTpt, am, bw, msgr, xon, + OTkn#10, cols#80, it#8, lines#30, + bel=^G, blink=^N, cbt=^^^K, clear=^L, cub1=^H, cud1=^Z, + cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, cuu1=^W, + dch1=^^N, dim=^\, dl1=^^Q, ed=^^P, el=^K, home=^Y, hts=^^^RW, + ich1=^^O, il1=^^R, ind=\036W =\036U, invis=^^^R[, + is2=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\^\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o, + kbs=^H, kcub1=^H, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^q, + kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, kf6=^^w, kf7=^^x, + kf8=^^y, kf9=^^z, khome=^Y, ll=^B =, rev=^^D, + ri=\036W =\036V, rmir=, rmkx=^^^Rl, rmso=^^E, rmul=^], + sgr0=\017\025\035\036E\036\022\\, smir=, smkx=^^^Rk, + smso=^^D, smul=^\, tbc=^^^RY, + +#### Getronics +# +# Getronics is a Dutch electronics company that at one time was called +# `Geveke' and made async terminals; but (according to the company itself!) +# they've lost all their documentation on the command set. The hardware +# documentation suggests the terminals were actually manufactured by a +# Taiwanese electronics company named Cal-Comp. There are known +# to have been at least two models, the 33 and the 50. +# + +# The 50 seems to be a top end vt220 clone, with the addition of a higher +# screen resolution, a larger screen, at least 1 page of memory above and +# below the screen, apparently pages of memory right and left of the screen +# which can be panned, and about 75 function keys (15 function keys x normal, +# shift, control, func A, func B). It also has more setup possibilities than +# the vt220. The monitor case is dated November 1978 and the keyboard case is +# May 1982. +# +# The vt100 emulation works as is. The entry below describes the rather +# non-conformant (but more featureful) ANSI mode. +# +# From: Stephen Peterson <stv@utrecht.ow.nl>, 27 May 1995 +visa50|geveke visa 50 terminal in ansi 80 character mode, + bw, mir, msgr, + cols#80, lines#25, + acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G, + blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + 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%dX, dch1=\E[X, dim=\E[2m, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, home=\E[H, + hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, + il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, + is2=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h, + ka1=\E[f, ka3=\EOQ, kb2=\EOP, kbs=^H, kc1=\EOR, kc3=\EOS, + kcub1=\E[D, kcud1=\E[A, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, + kdl1=\EOS, kf0=\E010, kf1=\E001, kf10=\E011, kf2=\E002, + kf3=\E003, kf4=\E004, kf5=\E005, kf6=\E006, kf7=\E007, + kf8=\E008, kf9=\E009, khome=\E[f, lf2=A delete char, + lf3=A insert line, lf4=A delete line, lf5=A clear, + lf6=A ce of/cf gn, lf7=A print, lf8=A on-line, + lf9=A funcl0=A send, nel=^M^J, rev=\E[7m, rmacs=\E[3l, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[0;2m, + rmul=\E[0m, sgr0=\E[0;2m, smacs=\E3h, smam=\E?7h, + smir=\E[4h, smkx=\E=, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, + vpa=\E[%i%p1%dd, + +#### Human Designed Systems (Concept) +# +# Human Designed Systems +# 400 Fehley Drive +# King of Prussia, PA 19406 +# Vox: (610)-277-8300 +# Fax: (610)-275-5739 +# Net: support@hds.com +# +# John Martin <john@hds.com> is their termcap expert. They're mostly out of +# the character-terminal business now (1995) and making X terminals. In +# particular, the whole `Concept' line described here was discontinued long +# ago. +# + +# From: <vax135!hpk> Sat Jun 27 07:41:20 1981 +# Extensive changes to c108 by arpavax:eric Feb 1982 +# Some unknown person at SCO then translated it to terminfo. +# +# There seem to be a number of different versions of the C108 PROMS +# (with bug fixes in its Z-80 program). +# +# The first one that we had would lock out the keyboard of you +# sent lots of short lines (like /usr/dict/words) at 9600 baud. +# Try that on your C108 and see if it sends a ^S when you type it. +# If so, you have an old version of the PROMs. +# +# You should configure the C108 to send ^S/^Q before running this. +# It is much faster (at 9600 baud) than the c100 because the delays +# are not fixed. +# new status line display entries for c108-8p: +# <is3> - init str #3 - setup term for status display - +# set programmer mode, select window 2, define window at last +# line of memory, set bkgnd stat mesg there, select window 0. +# +# <tsl> - to status line - select window 2, home cursor, erase to +# end-of-window, 1/2 bright on, goto(line#0, col#?) +# +# <fsl> - from status line - 1/2 bright off, select window 0 +# +# <dsl> - disable status display - set bkgnd status mesg with +# illegal window # +# +# There are probably more function keys that should be added but +# I don't know what they are. +# +# No delays needed on c108 because of ^S/^Q handshaking +# +c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages, + is3=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n, + rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p, +c108-4p|concept108-4p|concept 108 w/4 pages, + OTbs, eslok, hs, xon, + pb@, + acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=^M, + cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c, + cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s, + ind=^J, is1=\EK\E!\E F, + is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n, + rmacs=\Ej\s, rmcup=\Ev \001 p\Ep\r\n, smacs=\Ej!, + smcup=\EU\Ev 8p\Ep\r\E\025, + tsl=\E z"\E?\E\005\EE\Ea %+\s, use=c100, +c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video, + rmcup=\Ev \002 p\Ep\r\n, smcup=\EU\Ev 8p\Ep\r, + use=c108-rv-4p, +c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video, + flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, smso=\EE, + use=c108-4p, +c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode, + cols#132, + is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n, + smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p, + +# Concept 100: +# These have only window relative cursor addressing, not screen +# relative. To get it to work right here, smcup/rmcup (which +# were invented for the concept) lock you into a one page +# window for screen style programs. +# +# To get out of the one page window, we use a clever trick: +# we set the window size to zero ("\Ev " in rmcup) which the +# terminal recognizes as an error and resets the window to all +# of memory. +# +# This trick works on c100 but does not on c108, sigh. +# +# Some tty drivers use cr3 for concept, others use nl3, hence +# the delays on cr and ind below. This padding is only needed at +# 9600 baud and up. One or the other is commented out depending on +# local conventions. +# +# 2 ms padding on <rmcup> isn't always enough. 6 works fine. Maybe +# less than 6 but more than 2 will work. +# +# Note: can't use function keys f7-f10 because they are +# indistinguishable from arrow keys (!), also, del char and +# clear eol use xon/xoff so they probably won't work very well. +# +# Also note that we don't define insrt/del char/delline/eop/send +# because they don't transmit unless we reset them - I figured +# it was a bad idea to clobber their definitions. +# +# The <mc5> sequence changes the escape character to ^^ so that +# escapes will be passed through to the printer. Only trouble +# is that ^^ won't be - ^^ was chosen to be unlikely. +# Unfortunately, if you're sending raster bits through to be +# plotted, any character you choose will be likely, so we lose. +# +# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) +# cannot be # in is2 because it will hang a c100 with no printer +# if sent twice. +c100|concept100|concept|c104|c100-4p|hds concept 100, + OTbs, am, eo, mir, ul, xenl, + cols#80, lines#24, pb#9600, vt#8, + bel=^G, blink=\EC, clear=\E?\E\005$<2*>, cr=$<9>\r, + cub1=^H, cud1=^J, cuf1=\E=, + cup=\Ea%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E;, + dch1=\E\021$<16*>, dim=\EE, dl1=\E\002$<3*>, + ed=\E\005$<16*>, el=\E\025$<16>, flash=\Ek$<200>\EK, + ht=\011$<8>, il1=\E\022$<3*>, ind=^J, invis=\EH, ip=$<16*>, + is1=\EK, + is2=\EU\Ef\E7\E5\E8\El\ENH\E\0\Eo&\0\Eo'\E\Eo!\0\E\007!\E\010A@ \E4#\:"\E\:a\E4#;"\E\:b\E4#<"\E\:c, + is3=\Ev $<6>\Ep\n, kbs=^H, kcbt=\E', kctab=\E_, + kcub1=\E>, kcud1=\E<, kcuf1=\E=, kcuu1=\E;, kdch1=\E^Q, + kdl1=\E^B, ked=\E^C, kel=\E^S, kf1=\E5, kf2=\E6, kf3=\E7, + kf4=\E8, kf5=\E9, kf6=\E\:a, kf7=\E\:b, kf8=\E\:c, khome=\E?, + khts=\E], kich1=\E^P, kil1=\E^R, kind=\E[, knp=\E-, kpp=\E., + kri=\E\\, krmir=\E\0, mc4=\036o \E\EQ!\EYP\027, + mc5=\EQ"\EY(\027\EYD\Eo \036, prot=\EI, + rep=\Er%p1%c%p2%{32}%+%c$<.2*>, rev=\ED, + rmcup=\Ev $<6>\Ep\r\n, rmir=\E\s\s, rmkx=\Ex, + rmso=\Ed, rmul=\Eg, sgr0=\EN@, + smcup=\EU\Ev 8p\Ep\r\E\025$<16>, smir=\E^P, smkx=\EX, + smso=\ED, smul=\EG, +c100-rv|c100-rv-4p|concept100-rv|c100 rev video, + cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, + smso=\EE, use=c100, +oc100|oconcept|c100-1p|old 1 page concept 100, + in, + is3@, use=c100, + +# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996. +# Lots of notes, originally inline, but ncurses doesn't grok that. +# +# am: not available in power on mode, but turned on with \E[=107;207h in +# is2=. Also, \E=124l in is2= could have been used to prevent needing +# to specify xenl:, but that would have rendered the last space on the +# last line useless. +# bw: Not available in power on mode, but turned on with \E[=107;207h in +# is2=. +# clear: Could be done with \E[2J alone, except that vi (and probably most +# other programs) assume that this also homes the cursor. +# dsl: Go to window 2, go to the beginning of the line, use a line feed to +# scroll the window, and go back to window 1. +# is2: the string may cause a warning to be issued by tic that it +# found a very long line and that it suspects that a comma is missing +# somewhere. This warning can be ignored (unless it comes up more than +# once). The initialization string contains the following commands: +# +# [Setup mode items changed from factory defaults:] +# \E)0 set alternate character set to +# graphics +# ^O set character set to default +# [In case it wasn't] +# \E[m turn off all attributes +# [In case they weren't off] +# \E[=107; cursor wrap and +# 207h character wrap on +# \E[90;3u set Fkey definitions to "transmit" +# defaults +# \E[92;3u set cursor key definitions to +# "transmit" defaults +# \E[43;1u set shift F13 to transmit... +# \177\E$P\177 +# \E[44;1u set shift F14 to transmit... +# \177\E$Q\177 +# \E[45;1u set shift F15 to transmit... +# \177\E$R\177 +# \E[46;1u set shift F16 to transmit... +# \177\E$S\177 +# \E[200;1u set shift up to transmit... +# \177\E$A\177 +# \E[201;1u set shift down to transmit... +# \177\E$B\177 +# \E[202;1u set shift right to transmit... +# \177\E$C\177 +# \E[203;1u set shift left to transmit... +# \177\E$D\177 +# \E[204;1u set shift home to transmit... +# \177\E$H\177 +# \E[212;1u set backtab to transmit... +# \177\E$I\177 +# \E[213;1u set shift backspace to transmit... +# \177\E$^H\177 +# \E[214;1u set shift del to transmit... +# "\E$\177" +# [Necessary items not mentioned in setup mode:] +# \E[2!w move to window 2 +# \E[25;25w define window as line 25 of memory +# \E[!w move to window 1 +# \E[2*w show current line of window 2 as +# status line +# \E[2+x set meta key to use high bit +# \E[;3+} move underline to bottom of character +# +# All Fkeys are set to their default transmit definitions with \E[90;3u +# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty +# setting MUST be redefined or deactivated, because the default is +# contained in almost all of this terminal's Fkey strings! If for some +# reason "quit" cannot be altered, the Fkeys can, but it would be +# necessary to change ^| to ^] in all of these definitions, and add +# \E[2;029!t to is2. +# lines: is set to 24 because this terminal refuses to treat the 25th +# line normally. +# ll: Not available in power on mode, but turned on with \E[=107;207h in +# is2=. +# lm: Pointless, given that this definition locks a single screen of +# memory into view, but what the hey... +# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any +# other attributes alone), but some programs expect this to turn off +# everything. +# rmul: Could use \E[4!{ to turn off only underline (leaving any other +# attributes alone), but some programs expect this to turn off +# everything. +# sgr: Attributes are set on this terminal with the string \E[ followed by +# a list of attribute code numbers (in decimal, separated by +# semicolons), followed by the character m. The attribute code +# numbers are: +# 1 for bold; +# 2 for dim (which is ignored in power on mode); +# 4 for underline; +# 5 for blinking; +# 7 for inverse; +# 8 for not displayable; and +# =99 for protected (except that there are strange side +# effects to protected characters which make them inadvisable). +# The mapping of terminfo parameters to attributes is as follows: +# %p1 (standout) = bold and inverse together; +# %p2 (underline) = underline; +# %p3 (reverse) = inverse; +# %p4 (blink) = blinking; +# %p5 (dim) is ignored; +# %p6 (bold) = bold; +# %p7 (invisible) = not displayable; +# %p8 (protected) is ignored; and +# %p9 (alt char set) = alt char set. +# The code to do this is: +# \E[0 OUTPUT \E[0 +# %?%p1%p6%O IF (standout; bold) OR +# %t;1 THEN OUTPUT ;1 +# %; ENDIF +# %?%p2 IF underline +# %t;4 THEN OUTPUT ;4 +# %; ENDIF +# %?%p4 IF blink +# %t;5 THEN OUTPUT ;5 +# %; ENDIF +# %?%p1%p3%O IF (standout; reverse) OR +# %t;7 THEN OUTPUT ;7 +# %; ENDIF +# %?%p7 IF invisible +# %t;8 THEN OUTPUT ;8 +# %; ENDIF +# m OUTPUT m +# %?%p9 IF altcharset +# %t^N THEN OUTPUT ^N +# %e^O ELSE OUTPUT ^O +# %; ENDIF +# sgr0: Everything is turned off (including alternate character set), since +# there is no way of knowing what it is that the program wants turned +# off. +# smul: The "underline" attribute is reconfigurable to an overline or +# strikethru, or (as done with \E[;3+} in is2=), to a line at the true +# bottom of the character cell. This was done to allow for more readable +# underlined characters, and to be able to distinguish between an +# underlined space, an underscore, and an underlined underscore. +# xenl: Terminal can be configured to not need this, but this "glitch" +# behavior is actually preferable with autowrap terminals. +# +# Parameters kf31= thru kf53= actually contain the strings sent by the shifted +# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2 +# string modifies the 'O' in kf43 to kf46 to a '$'. +# +# kcbt was originally ^I but redefined in is2=. +# kHOM was \E[H originally but redefined in is2=, as were a number of +# other keys. +# kDC was originally \177 but redefined in is2=. +# +# kbs: Shift was also ^H originally but redefined as \E$^H in is2=. +# tsl: Go to window 2, then do an hpa=. +# +#------- flash=\E[8;3!}^G\E[3;3!} +#------- flash=\E[?5h$<100>\E[?5l +# There are two ways to flash the screen, both of which have their drawbacks. +# The first is to set the bell mode to video, transmit a bell character, and +# set the bell mode back - but to what? There is no way of knowing what the +# user's old bell setting was before we messed with it. Worse, the command to +# set the bell mode also sets the key click volume, and there is no way to say +# "leave that alone", or to know what it's set to, either. +# The second way to do a flash is to set the screen to inverse video, pad for a +# tenth of a second, and set it back - but like before, there's no way to know +# that the screen wasn't ALREADY in inverse video, or that the user may prefer +# it that way. The point is moot anyway, since vi (and probably other +# programs) assume that by defining flash=, you want the computer to use it +# INSTEAD of bel=, rather than as a secondary type of signal. +# +#------- cvvis=\E[+{ +# The is the power on setting, which is also as visible as the cursor +# gets. +#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw +# Windowing is possible, but not defined here because it is also used to +# emulate status line functions. Allowing a program to set a window could +# clobber the status line or render it unusable. There is additional memory, +# but screen scroll functions are destructive and do not make use of it. +# +#------- dim= Not available in power on mode. +# You have a choice of defining low intensity characters as "half bright" and +# high intensity as "normal", or defining low as "normal" and high as "bold". +# No matter which you choose, only one of either "half bright" or "bold" is +# available at any time, so taking the time to override the default is +# pointless. +# +#------- prot=\E[=0;99m +# Not defined, because it appears to have some strange side effects. +#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; +#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; +#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%; +# Available, but making them available to programs is inadvisable. +# The code to do this is: +# %?%p1%{24}%< IF ((key; 24) <; +# %p1%{30}%> ((key; 30) >; +# %p1%{54}%< (key; 54) < +# %A ) AND +# %O ) OR +# [that is, "IF key < 24 OR (key > 30 AND key < 54)",] +# %t\E[ THEN OUTPUT \E[ +# %p1%d OUTPUT (key) as decimal +# [next line applies to pfx only] +# ;1 OUTPUT ;1 +# u OUTPUT u +# \177 OUTPUT \177 +# %p2%s OUTPUT (string) as string +# \177 OUTPUT \177 +# [DEL chosen as delimiter, but could be any character] +# [implied: ELSE do nothing] +# %; ENDIF +# +#------- rs2= +# Not defined since anything it might do could be done faster and easier with +# either Meta-Shift-Reset or the main power switch. +# +#------- smkx=\E[1!z +#------- rmkx=\E[!z +# These sequences apply to the cursor and setup keys only, not to the +# numeric keypad. But it doesn't matter anyway, since making these +# available to programs is inadvisable. +# For the key definitions below, all sequences beginning with \E$ are +# custom and programmed into the terminal via is2. \E$ also has no +# meaning to any other terminal. +# +#------- cmdch=\E[;%p1%d!t +# Available, but making it available to programs is inadvisable. +#------- smxon=\E[1*q +# Available, but making it available to programs is inadvisable. +# Terminal will send XON/XOFF on buffer overflow. +#------- rmxon=\E[*q +# Available, but making it available to programs is inadvisable. +# Terminal will not notify on buffer overflow. +#------- smm=\E[2+x +#------- rmm=\E[+x +# Available, but making them available to programs is inadvisable. +# +# Printing: +# It's not made clear in the manuals, but based on other ansi/vt type +# terminals, it's a good guess that this terminal is capable of both +# "transparent print" (which doesn't copy data to the screen, and +# therefore needs mc5i: specified to say so) and "auxilliary print" +# (which does duplicate printed data on the screen, in which case mc4= +# and mc5= should use the \E[?4i and \E[?5i strings instead). + +hds200|Human Designed Systems HDS200, + am, bw, eslok, hs, km, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, lm#0, + acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{, + clear=\E[H\E[J, cnorm=\E[+{, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[2!w\r\n\E[!w, ed=\E[J, el=\E[K, el1=\E[1K, + fsl=\E[!w, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, + invis=\E[0;8m, + is2=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+}, + kDC=\E$\177, kHOM=\E$H, kLFT=\E$D, kRIT=\E$C, kbs=^H, + kcbt=\E$I, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\177, kent=^M, kf1=^\001\r, kf10=^\010\r, + kf11=^\011\r, kf12=^\012\r, kf13=\EOP, kf14=\EOQ, + kf15=\EOR, kf16=\EOS, kf17=^\017\r, kf18=^\018\r, + kf19=^\019\r, kf2=^\002\r, kf20=^\020\r, kf21=^\021\r, + kf22=^\022\r, kf23=^\023\r, kf3=^\003\r, kf31=^\031\r, + kf32=^\032\r, kf33=^\033\r, kf34=^\034\r, kf35=^\035\r, + kf36=^\036\r, kf37=^\037\r, kf38=^\038\r, kf39=^\039\r, + kf4=^\004\r, kf40=^\040\r, kf41=^\041\r, kf42=^\042\r, + kf43=\E$P, kf44=\E$Q, kf45=\E$R, kf46=\E$S, kf47=^\047\r, + kf48=^\048\r, kf49=^\049\r, kf5=^\005\r, kf50=^\050\r, + kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r, + kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H, + kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A, + mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\E[E, rc=\E8, + rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l, rmso=\E[m\017, + rmul=\E[m\017, sc=\E7, + sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m, + smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG, + vpa=\E[%i%p1%dd, + +# <ht> through <el> included to specify padding needed in raw mode. +# (avt-ns: added empty <acsc> to suppress a tic warning --esr) +avt-ns|concept avt no status line, + OTbs, am, eo, mir, ul, xenl, xon, + cols#80, it#8, lines#24, lm#192, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, dl=\E[%p1%dM$<4*>, + dl1=\E[M$<4>, ed=\E[J$<96>, el=\E[K$<6>, home=\E[H, + hpa=\E[%p1%{1}%+%dG, ht=\011$<4>, hts=\EH, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>, + invis=\E[8m, ip=$<4>, is1=\E[=103l\E[=205l, + 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, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, khome=\E[H, kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H, + mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, + pfloc=\E[%p1%d;0u#%p2%s#, pfx=\E[%p1%d;1u#%p2%s#, + prot=\E[99m, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, + ri=\EM$<4>, rmacs=\016$<1>, rmcup=\E[w\E2\r\n, + rmir=\E[4l, rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{, + sc=\E7, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, + sgr0=\E[m, smacs=\017$<1>, smcup=\E[=4l\E[1;24w\E2\r, + smir=\E[4h, smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, +avt-rv-ns|concept avt in reverse video mode/no status line, + flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, + use=avt-ns, +avt-w-ns|concept avt in 132 column mode/no status line, + is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, + use=avt-ns, +avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video, + flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, + smcup=\E[H\E[1;24;1;132w, use=avt-ns, + +# Concept AVT with status line. We get the status line using the +# "Background status line" feature of the terminal. We swipe the +# first line of memory in window 2 for the status line, keeping +# 191 lines of memory and 24 screen lines for regular use. +# The first line is used instead of the last so that this works +# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this +# assumes an 8 page AVT but lm isn't currently used anywhere.) +# +avt+s|concept avt status line changes, + eslok, hs, + lm#191, + dsl=\E[0*w, fsl=\E[1;1!w, + is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n, + rmcup=\E[2w\E2\r\n, smcup=\E[2;25w\E2\r, + tsl=\E[2;1!w\E[;%p1%dH\E[2K, +avt|avt-s|concept-avt|avt w/80 columns, + use=avt+s, use=avt-ns, +avt-rv|avt-rv-s|avt reverse video w/sl, + flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, + use=avt+s, use=avt-ns, +avt-w|avt-w-s|concept avt 132 cols+status, + is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, + use=avt+s, use=avt-ns, +avt-w-rv|avt-w-rv-s|avt wide+status+rv, + flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, + smcup=\E[H\E[1;24;1;132w, use=avt+s, use=avt-ns, + +#### Contel Business Systems. +# + +# Contel c300 and c320 terminals. +contel300|contel320|c300|Contel Business Systems C-300 or C-320, + am, in, xon, + cols#80, lines#24, xmc#1, + bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, + dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, + el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, + hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, + kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, + kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, + rmso=\E!\0, sgr0=\E!\0, smso=\E!\r, tbc=\E3, +# Contel c301 and c321 terminals. +contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321, + flash@, ich1@, ip@, rmso=\E!\0$<20>, smso=\E!\r$<20>, + use=contel300, + +#### Data General (dg) +# +# According to James Carlson <carlson@xylogics.com> writing in January 1995, +# the terminals group at Data General was shut down in 1991; all these +# terminals have thus been discontinued. +# +# DG terminals have function keys that respond to the SHIFT and CTRL keys, +# e.g., SHIFT-F1 generates a different code from F1. To number the keys +# sequentially, first the unmodified key codes are listed as F1 through F15. +# Then their SHIFT versions are listed as F16 through F30, their CTRL versions +# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as +# F46 through F60. This is done in the private "includes" below whose names +# start with "dgkeys+". +# +# DG terminals generally support 8 bit characters. For each of these terminals +# two descriptions are supplied: +# 1) A default description for 8 bits/character communications, which +# uses the default DG international character set and keyboard codes. +# 2) A description with suffix "-7b" for 7 bits/character communications. +# This description must use the NON-DEFAULT native keyboard language. + +# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33), +# Ctrl/Shift fdkeys (kf34-kf44). + +dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys, + ka1=\233020z, ka3=\233021z, kc1=\233022z, kc3=\233023z, + kclr=\2332J, kcub1=\233D, kcud1=\233B, kcuf1=\233C, + kcuu1=\233A, kel=\233K, kf1=\233001z, kf10=\233010z, + kf11=\233011z, kf12=\233012z, kf13=\233013z, + kf14=\233014z, kf15=\233000z, kf16=\233101z, + kf17=\233102z, kf18=\233103z, kf19=\233104z, + kf2=\233002z, kf20=\233105z, kf21=\233106z, + kf22=\233107z, kf23=\233108z, kf24=\233109z, + kf25=\233110z, kf26=\233111z, kf27=\233112z, + kf28=\233113z, kf29=\233114z, kf3=\233003z, + kf30=\233100z, kf31=\233201z, kf32=\233202z, + kf33=\233203z, kf34=\233204z, kf35=\233205z, + kf36=\233206z, kf37=\233207z, kf38=\233208z, + kf39=\233209z, kf4=\233004z, kf40=\233210z, + kf41=\233211z, kf42=\233212z, kf43=\233213z, + kf44=\233214z, kf45=\233200z, kf46=\233301z, + kf47=\233302z, kf48=\233303z, kf49=\233304z, + kf5=\233005z, kf50=\233305z, kf51=\233306z, + kf52=\233307z, kf53=\233308z, kf54=\233309z, + kf55=\233310z, kf56=\233311z, kf57=\233312z, + kf58=\233313z, kf59=\233314z, kf6=\233006z, + kf60=\233300z, kf7=\233007z, kf8=\233008z, kf9=\233009z, + khome=\233H, kprt=\233i, + +dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys, + ka1=\E[020z, ka3=\E[021z, kc1=\E[022z, kc3=\E[023z, + kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kel=\E[K, kf1=\E[001z, kf10=\E[010z, kf11=\E[011z, + kf12=\E[012z, kf13=\E[013z, kf14=\E[014z, kf15=\E[000z, + kf16=\E[101z, kf17=\E[102z, kf18=\E[103z, kf19=\E[104z, + kf2=\E[002z, kf20=\E[105z, kf21=\E[106z, kf22=\E[107z, + kf23=\E[108z, kf24=\E[109z, kf25=\E[110z, kf26=\E[111z, + kf27=\E[112z, kf28=\E[113z, kf29=\E[114z, kf3=\E[003z, + kf30=\E[100z, kf31=\E[201z, kf32=\E[202z, kf33=\E[203z, + kf34=\E[204z, kf35=\E[205z, kf36=\E[206z, kf37=\E[207z, + kf38=\E[208z, kf39=\E[209z, kf4=\E[004z, kf40=\E[210z, + kf41=\E[211z, kf42=\E[212z, kf43=\E[213z, kf44=\E[214z, + kf45=\E[200z, kf46=\E[301z, kf47=\E[302z, kf48=\E[303z, + kf49=\E[304z, kf5=\E[005z, kf50=\E[305z, kf51=\E[306z, + kf52=\E[307z, kf53=\E[308z, kf54=\E[309z, kf55=\E[310z, + kf56=\E[311z, kf57=\E[312z, kf58=\E[313z, kf59=\E[314z, + kf6=\E[006z, kf60=\E[300z, kf7=\E[007z, kf8=\E[008z, + kf9=\E[009z, khome=\E[H, kprt=\E[i, + +dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys, + kclr=^L, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kel=^K, + kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^a, kf13=^^b, kf14=^^c, + kf15=^^d, kf16=^^e, kf17=^^f, kf18=^^g, kf19=^^h, kf2=^^r, + kf20=^^i, kf21=^^j, kf22=^^k, kf23=^^1, kf24=^^2, kf25=^^3, + kf26=^^4, kf27=^^5, kf28=^^6, kf29=^^7, kf3=^^s, kf30=^^8, + kf31=^^9, kf32=^^\:, kf33=^^;, kf34=^^!, kf35=^^", kf36=^^#, + kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(, + kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w, + kf8=^^x, kf9=^^y, khome=^H, + +dgkeys+15|Private entry describing 15 DG mode special keys, + kHOM=^^^H, kLFT=^^^Y, kRIT=^^^X, ka1=^^\\, ka3=^^], kc1=^^\^, + kc3=^^_, kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^|, kf13=^^}, + kf14=^^~, kf15=^^p, kf16=^^a, kf17=^^b, kf18=^^c, kf19=^^d, + kf2=^^r, kf20=^^e, kf21=^^f, kf22=^^g, kf23=^^h, kf24=^^i, + kf25=^^j, kf26=^^k, kf27=^^l, kf28=^^m, kf29=^^n, kf3=^^s, + kf30=^^`, kf31=^^1, kf32=^^2, kf33=^^3, kf34=^^4, kf35=^^5, + kf36=^^6, kf37=^^7, kf38=^^8, kf39=^^9, kf4=^^t, kf40=^^\:, + kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!, + kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&, + kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,, + kf58=^^-, kf59=^^., kf6=^^v, kf60=^^\s, kf7=^^w, kf8=^^x, + kf9=^^y, + +# Data General color terminals use the "Tektronix" color model. The total +# number of colors varies with the terminal model, as does support for +# attributes used in conjunction with color. + +# Removed u7, u8 definitions since they conflict with tack: +# Preserve user-defined colors in at least some cases. +# u7=^^Fh, +# Default is ACM mode. +# u8=^^F}20^^Fi^^F}21, +# +dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode, + bce, + colors#16, ncv#53, pairs#256, + op=\036Ad\036Bd, + setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, + setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, + setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, + +dg+fixed|Fixed color info for DG D430C terminals in DG mode, + use=dgunix+fixed, + +# Video attributes are coordinated using static variables set by "sgr", then +# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings. +# (D=dim, U=underline, B=blink, R=reverse.) +dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode, + bce, + colors#8, ncv#16, pairs#64, + op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m, + setab=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setaf=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setb=\E[4%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setf=\E[3%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + +dg+color|Color info for Data General D470C terminals in ANSI mode, + colors#16, ncv#53, pairs#256, + setab=\E[%?%p1%{8}%<%t4%p1%e=%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setaf=\E[%?%p1%{8}%<%t3%p1%e<%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setb=\E[%?%p1%{8}%<%t4%e=%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + setf=\E[%?%p1%{8}%<%t3%e<%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, + use=dg+color8, + +dgmode+color8|Color info for Data General D220/D230C terminals in DG mode, + bce, + colors#8, ncv#16, pairs#64, + op=\036Ad\036Bd, + setab=\036B%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, + setaf=\036A%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, + setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, + +dgmode+color|Color info for Data General D470C terminals in DG mode, + colors#16, pairs#256, + setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, + setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, + use=dgmode+color8, + +dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode, + bce, ccc, + colors#52, ncv#53, pairs#26, + initp=\036RG0%p1%02X%p2%{255}%*%{1000}%/%02X%p3%{255}%*%{1000}%/%02X%p4%{255}%*%{1000}%/%02X%p5%{255}%*%{1000}%/%02X%p6%{255}%*%{1000}%/%02X%p7%{255}%*%{1000}%/%02X, + oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00, + op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D, + scp=\036RG2%p1%02X, + +# Colors are in the order: normal, reverse, dim, dim + reverse. +dg+ccc|Configurable color info for DG D430C terminals in DG mode, + bce, ccc, + colors#52, ncv#53, pairs#26, + initp=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p6%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c, + oc=\036RG01\:00??00000000\036RG01;00000000??00\036RG01<007?00000000\036RG01=000000007?00, + op=\036RF4831\:\036RF2>31;\036RF1=31<\036RF3?31=, + scp=\036RG2%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c, + +# The generic DG terminal type (an 8-bit-clean subset of the 6053) +# Initialization string 1 sets: +# ^R - vertical scrolling enabled +# ^C - blinking enabled +dg-generic|Generic Data General terminal in DG mode, + am, bw, msgr, xon, + cols#80, lines#24, + bel=^G, blink=^N, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, + cup=\020%p2%c%p1%c, cuu1=^W, dim=^\, el=^K, ind=^J, is1=^R^C, + mc0=^Q, nel=^J, rmso=^], rmul=^U, sgr0=^O^U^], smso=^\, + smul=^T, use=dgkeys+11, + +# According to the 4.4BSD termcap file, the dg200 <cup> should be the +# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap +# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious, +# maybe they were originally nuls (which would fit). + +dg200|data general dasher 200, + OTbs, am, bw, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, + cup=\020%p2%c%p1%c, cuu1=^W, el=^K, home=^H, ind=^J, + kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^z, kf1=^^q, + kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, kf8=^^x, + kf9=^^y, khome=^H, lf0=f10, nel=^J, rmso=^^E, rmul=^U, + smso=^^D, smul=^T, + +# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL +dg210|dg-ansi|Data General 210/211, + am, + cols#80, lines#24, + OTnl=\E[B, clear=\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, + home=\E[H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + khome=\E[H, nel=\r\E[H\E[A\n, rmso=\E[0;m, rmul=\E[0;m, + smso=\E[7;m, smul=\E[4;m, +# From: Peter N. Wan <ihnp4!gatech!gacsr!wan> +# courtesy of Carlos Rucalde of Vantage Software, Inc. +# (dg211: this had <cup=\020%r%.%>., which was an ancient termcap hangover. +# I suspect the d200 function keys actually work on the dg211, check it out.) +dg211|Data General d211, + cnorm=^L, cvvis=^L^R, ht=^I, ind@, kbs=^Y, kf0@, kf1@, kf2@, kf3@, + kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, lf0@, nel=^M^Z, rmcup=^L, + rmso=\036E$<\0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200, + +# dg450 from Cornell (not official) +dg450|dg6134|data general 6134, + cub1@, cuf1=^X, use=dg200, + +# Not official... +# Note: lesser Dasher terminals will not work with vi because vi insists upon +# having a command to move straight down from any position on the bottom line +# and scroll the screen up, or a direct vertical scroll command. The 460 and +# above have both, the D210/211, for instance, has neither. We must use ANSI +# mode rather than DG mode because standard UNIX tty drivers assume that ^H is +# backspace on all terminals. This is not so in DG mode. +# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the +# grounds that there is no matching ":ml:" +dg460-ansi|Data General Dasher 460 in ANSI-mode, + OTbs, am, msgr, ul, + cols#80, it#8, lines#24, + OTnl=\ED, blink=\E[5m, clear=\E[2J, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, + dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + ich1=\E[@, il1=\E[L, ind=\E[S, is2=^^F@, kbs=\E[D, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf0=\E[001z, kf1=\E[002z, kf2=\E[003z, kf3=\E[004z, + kf4=\E[005z, kf5=\E[006z, kf6=\E[007z, kf7=\E[008z, + kf8=\E[009z, kf9=\E[00\:z, khome=\E[H, lf0=f1, lf1=f2, + lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10, + mc0=\E[i, rev=\E[7m, ri=\E[T, rmso=\E[m, rmul=\E[05, + sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m, + sgr0=\E(B\E[m, smso=\E[7m, smul=\E[4m, u6=\E[%d;%dR, + u7=\E[6n, u8=\E[5n, u9=\E[0n, +# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official) +# Data General 605x +# Ought to work for a Model 6242, Type D210 as well as a 605x. +# Note that the cursor-down key transmits ^Z. Job control users, beware! +# This also matches a posted description of something called a `Dasher 100' +# so there's a dg100 alias here. +# (dg6053: the 4.4BSD file had <cub1=^H>, <cud1=^J>, <cuf1=^S>. -- esr) +dg6053-old|dg100|data general 6053, + OTbs, am, bw, ul, + cols#80, lines#24, + OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=^M, cub1=^Y, cud1=^Z, + cuf1=^X, cup=\020%p2%c%p1%c, cuu1=^W, cvvis=^L^R, el=^K, + home=^H, ht=^I, is2=^R, kbs=^Y, kcub1=^Y, kcud1=^Z, kcuf1=^X, + kcuu1=^W, kf0=^^q, kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, + kf6=^^w, kf7=^^x, kf8=^^y, kf9=^^z, khome=^H, rmcup=^L, + rmso=\0^^E, rmul=^U, smcup=^L^R, smso=\0\0\0\0\0\036D, + smul=^T, + +# (Some performance can be gained over the generic DG terminal type) +dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053, + xon@, + home=^P\0\0, ll=^P\0^W, use=dg-generic, + +# Like 6053, but adds reverse video and more keypad and function keys. +d200|d200-dg|Data General DASHER D200, + bold=^^D^T, home@, ll@, rev=^^D, rmso=^^E^], + sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;, + sgr0=\017\025\035\036E, smso=^^D^\, use=dgkeys+15, + use=dg6053, + +# DASHER D210 series terminals in ANSI mode. +# Reverse video, no insert/delete character/line, 7 bits/character only. +# +# Initialization string 1 sets: +# <0 - scrolling enabled +# <1 - blink enabled +# <4 - print characters regardless of attributes +d210|d214|Data General DASHER D210 series, + am, bw, msgr, xon, + cols#80, lines#24, + bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[2J, cr=^M, + cub=\E[%p1%dD, cub1=^H, 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, dim=\E[2m, ed=\E[J, el=\E[K, + el1=\E[1K, home=\E[H, ind=^J, is1=\E[<0;<1;<4l, + ll=\E[H\E[A, nel=^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, + sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m, + sgr0=\E[m, smso=\E[2;7m, smul=\E[4m, use=dgkeys+7b, + +# DASHER D210 series terminals in DG mode. +# Like D200, but adds clear to end-of-screen and needs XON/XOFF. +d210-dg|d214-dg|Data General DASHER D210 series in DG mode, + xon, + ed=^^FF, use=d200-dg, + +# DASHER D211 series terminals in ANSI mode. +# Like the D210, but with 8-bit characters and local printer support. +# +# Initialization string 2 sets: +# \E[2;1;1;1v +# 2;1 - 8 bit operations +# 1;1 - 8 bit (international) keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# ^O - primary character set +# +d211|d215|Data General DASHER D211 series, + km, + is2=\E[2;1;1;1v\E(B\E)4\017, mc0=\E[i, use=dgkeys+8b, + use=d210, + +# Initialization string 2 sets: +# \E[2;0;1;0v +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# ^O - primary character set +d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode, + km@, + is2=\E[2;0;1;0v\E(0\017, use=dgkeys+7b, use=d211, + +# Like the D210 series, but adds support for 8-bit characters. +# +# Reset string 2 sets: +# ^^N - secondary character set +# ^^FS0> - 8 bit international character set +# ^^O - primary character set +# ^^FS00 - default character set (matching the native keyboard language) +# +d211-dg|d215-dg|Data General DASHER D211 series in DG mode, + km, + rs2=\036N\036FS0>\036O\036FS00, use=d210-dg, + +d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode, + use=d211-dg, + +# Enhanced DG mode with changes to be more UNIX compatible. +d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode, + mc5i, + it#8, + acsc=a\177j$k"l!m#n)q+t'u&v(w%x*, blink=^^PI, + clear=^^PH, cub1=^^PD, cud1=^^PB, cuf1=^^PC, cuu1=^^PA, + el=^^PE, home=^^PF, hpa=\020%p1%c\177, ht=^I, ind=^J, + is1=\022\003\036P@1, is3=\036Fz0, kHOM=^^Pf, kLFT=^^Pd, + kPRT=^^P1, kRIT=^^Pc, kclr=^^PH, kcub1=^^PD, kcud1=^^PB, + kcuf1=^^PC, kcuu1=^^PA, kel=^^PE, khome=^^PF, kprt=^^P0, + mc0=\036F?9, mc4=^^Fa, mc5=^^F`, rmacs=\036FS00, + rs2=\036N\036FS0E\036O\036FS00, + sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;\036P%?%p4%tI%eJ%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, + sgr0=\036PJ\025\035\036E\036FS00, smacs=\036FS11, + vpa=\020\177%p1%c, use=dgkeys+15, use=d216-dg, +d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines, + lines#25, + is3=\036Fz2, use=d216+, + +d217-unix|Data General DASHER D217 in DG-UNIX mode, + use=d216-unix, +d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines, + use=d216-unix-25, + +# DASHER D220 color terminal in ANSI mode. +# Like the D470C but with fewer colors and screen editing features. +# +# Initialization string 1 sets: +# \E[<0;<1;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <4 - print characters regardless of attributes +# \E[m - all attributes off +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# +d220|Data General DASHER D220, + mc5i@, + dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, + use=dg+color8, use=d470c, + +d220-7b|Data General DASHER D220 in 7 bit mode, + mc5i@, + dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, + use=dg+color8, use=d470c-7b, + +# Initialization string 3 sets: +# - default cursor (solid rectangle) +# Reset string 2 sets: +# ^^N - secondary character set +# ^^FS0> - 8 bit international character set +# ^^O - primary character set +# ^^FS00 - default character set (matching the native keyboard language) +# +d220-dg|Data General DASHER D220 color terminal in DG mode, + mc5i@, + dl1@, home@, il1@, is2@, is3=\036FQ2, ll@, mc4@, mc5@, rs1@, + rs2=\036N\036FS0>\036O\036FS00, use=dgmode+color8, + use=d470c-dg, + +# DASHER D230C color terminal in ANSI mode. +# Like the D220 but with minor ANSI compatibility improvements. +# +d230c|d230|Data General DASHER D230C, + blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=^M^J, + rev=\E[7;50m, rmkx=\E[2;1v, rmso=\E[50m, rmul=\E[50m, + sgr=\E[50%?%p1%p3%|%p6%|%t;7%{1}%e%{0}%;%PR%?%p4%t;5%{1}%e%{0}%;%PB%?%p2%p6%|%t;4%{1}%e%{0}%;%PU%?%p1%p5%|%t;2%{1}%e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;, + sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m, + smul=\E[4;50m, use=dgkeys+7b, use=d220, + +d230c-dg|d230-dg|Data General DASHER D230C in DG mode, + use=d220-dg, + +# DASHER D400/D450 series terminals. +# These add intelligent features like insert/delete to the D200 series. +# +# Initialization string 2 sets: +# ^^FQ2 - default cursor (solid rectangle) +# ^^FW - character protection disabled +# ^^FJ - normal (80 column) mode +# ^^F\^ - horizontal scrolling enabled (for alignment) +# ^^FX004? - margins at columns 0 and 79 +# ^^F] - horizontal scrolling disabled +# ^^O - primary character set +# ^^FS00 - default character set (the keyboard native language) +# - (should reset scrolling regions, but that glitches the screen) +# Reset string 1 sets: +# ^^FA - all terminal defaults except scroll rate +# Reset string 2 sets: +# ^^F] - horizontal scrolling disabled +# ^^FT0 - jump scrolling +# +d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series, + mc5i, + acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\036FQ0, + cnorm=\036FQ2, dch1=^^K, dl1=^^FI, + enacs=\036N\036FS11\036O, home=^^FG, hpa=\020%p1%c\177, + ich1=^^J, il1=^^FH, + is2=\036FQ2\036FW\036FJ\036F\^\036FX004?\036F]\036O\036FS00, + ll=\036FG\027, mc4=^^Fa, mc5=^^F`, ri=^^I, rmacs=^^O, + rs1=^^FA, rs2=\036F]\036FT0, + sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036%?%p9%tN%eO%;, + sgr0=\017\025\035\036E\036O, smacs=^^N, + vpa=\020\177%p1%c, use=d210-dg, + +# DASHER D410/D460 series terminals in ANSI mode. +# These add a large number of intelligent terminal features. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[5;0v - normal (80 column) mode +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +# Initialization string 2 sets: +# \E[3;2;2;1;1;1v +# 3;2 - default cursor (solid rectangle) +# 2;1 - 8 bit operations +# 1;1 - international keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# ^O - primary character set +# +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# \E[<2h - horizontal scrolling disabled +# +# Reset string 2 sets: +# \E[4;0;2;1;1;1v +# 4;0 - jump scrolling +# 2;1 - 8 bit operations +# 1;1 - 8 bit (international) keyboard language +# \E(B - default primary character set (U.S. ASCII) +# \E)4 - default secondary character set (international) +# +d410|d411|d460|d461|Data General DASHER D410/D460 series, + mc5i, + acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\E[3;0v, + cnorm=\E[3;2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, + is1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h, + is2=\E[3;2;2;1;1;1v\E(B\E)4\017, mc4=\E[4i, mc5=\E[5i, + ri=\EM, rmacs=\E)4\017, rs1=\Ec\E[<2h, + rs2=\E[4;0;2;1;1;1v\E(B\E)4, + sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;, + sgr0=\E[m\E)4\017, smacs=\E)6\016, use=d211, + +# Initialization string 2 sets: +# \E[3;2;2;0;1;0v +# 3;2 - default cursor (solid rectangle) +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# ^O - primary character set +# +# Reset string 2 sets: +# \E[4;0;2;0;1;0v +# 4;0 - jump scrolling +# 2;0 - 7 bit operations +# 1;0 - 7 bit (native) keyboard language +# \E(0 - default character set (the keyboard native language) +# +d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode, + km@, + enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O, + rs2=\E[4;0;2;0;1;0v\E(0, + sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410, + +d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode, + km, + enacs@, rmacs=\036FS00, + sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, + sgr0=\017\025\035\036E\036FS00, smacs=\036FS11, + use=d400-dg, + +# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[5;1v - compressed (135 column) mode +# \E[1;1;126 - margins at columns 1 and 126 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +# Reset string 1 sets: +# \Ec - initial mode defaults (RIS) +# \E[5;1v - compressed (135 column) mode +# \E[1;1;126w - margins at columns 1 and 126 +# \E[<2h - horizontal scrolling disabled +# +d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode, + cols#126, + is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, + rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410, + +d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode, + cols#126, + is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, + rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410-7b, + +d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode, + use=d410-dg, + +# These add intelligent features like scrolling regions. +d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode, + civis=\036FQ0, clear=^^FE, cnorm=\036FQ5, + cup=\036FP%p2%2.2X%p1%2.2X, dch1=^^K, dl1=^^FI, + home=^^FG, hpa=\036FP%p1%2.2XFF, ich1=^^J, il1=^^FH, + is2=\036FQ5\036FW\036FJ\036F\^\036FX004F\036O\036FS00, + ll=\036FG\036PA, mc0=^A, rc=\036F}11, ri=^^I, + rs1=\036FA\036FT0, rs2=\036P@1, sc=\036F}10, + vpa=\036FPFF%p1%2.2X, + wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, + use=d216+, +d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode, + cols#132, + is2=\036FQ5\036FW\036FK\036F\^\036FX0083\036O\036FS00, + rs2=\036P@1\036FK\036FX0083, + wind=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X, + use=d412-unix, +d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines, + lines#25, + is3=\036Fz2, + wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, + use=d462+, +d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line, + eslok, hs, + clear=\036FG\036PH, fsl=\036F}01\022, + is3=\036Fz2\036F}00\036FB180000\036F}01, ll@, + tsl=\036F}00\036FP%p1%2.2X18\036PG, + wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t%{23}%p2%-%2.2X0%;000\036FX%p3%2.2X%p4%2.2X, + use=d462+, + +# Relative cursor motions are confined to the current window, +# which is not what the scrolling region specification expects. +# Thus, relative vertical cursor positioning must be deleted. +d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region, + csr=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;, + cud1@, cuu1@, ll@, use=d462+, + +d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode, + use=d412-unix, +d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode, + use=d412-unix-w, +d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines, + use=d412-unix-25, +d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line, + use=d412-unix-s, +d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region, + use=d412-unix-sr, + +d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode, + use=d413-unix, +d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode, + use=d413-unix-w, +d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines, + use=d413-unix-25, +d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line, + use=d413-unix-s, +d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region, + use=d413-unix-sr, + +d430c-dg|d430-dg|Data General D430C in DG mode, + use=d413-dg, use=dg+fixed, +d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors, + use=d413-dg, use=dg+ccc, + +d430c-unix|d430-unix|Data General D430C in DG-UNIX mode, + use=d413-unix, use=dgunix+fixed, +d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode, + use=d413-unix-w, use=dgunix+fixed, +d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines, + use=d413-unix-25, use=dgunix+fixed, +d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line, + use=d413-unix-s, use=dgunix+fixed, +d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region, + use=d413-unix-sr, use=dgunix+fixed, +d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors, + use=d413-unix, use=dgunix+ccc, +d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors, + use=d413-unix-w, use=dgunix+ccc, +d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors, + use=d413-unix-25, use=dgunix+ccc, +d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors, + use=d413-unix-s, use=dgunix+ccc, +d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors, + use=d413-unix-sr, use=dgunix+ccc, + +# DASHER D470C color terminal in ANSI mode. +# Like the D460 but with 16 colors and without a compressed mode. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +d470c|d470|Data General DASHER D470C, + is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, + sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}%;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;, + use=dg+color, use=d460, + +d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode, + is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, + sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}%;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e%{0}%;%PDm%?%p9%t\016%e\017%;, + use=dg+color, use=d460-7b, + +# Initialization string 2 sets: +# ^^FQ2 - default cursor (solid rectangle) +# ^^FW - character protection disabled +# ^^F\^ - horizontal scrolling enabled (for alignment) +# ^^FX004? - margins at columns 0 and 79 +# ^^F] - horizontal scrolling disabled +# ^^O - primary character set +# ^^FS00 - default character set (the keyboard native language) +# - (should reset scrolling regions, but that glitches the screen) +# +d470c-dg|d470-dg|Data General DASHER D470C in DG mode, + is2=\036FQ2\036FW\036F\^\036FX004?\036F]\036O\036FS00, + use=dgmode+color, use=d460-dg, + +# DASHER D555 terminal in ANSI mode. +# Like a D411, but has an integrated phone. +d555|Data General DASHER D555, + use=d411, +d555-7b|Data General DASHER D555 in 7-bit mode, + use=d411-7b, +d555-w|Data General DASHER D555 in wide mode, + use=d411-w, +d555-7b-w|Data General DASHER D555 in wide 7-bit mode, + use=d411-7b-w, +d555-dg|Data General DASHER D555 series in DG mode, + use=d411-dg, + +# DASHER D577 terminal in ANSI mode. +# Like a D411, but acts as a keyboard for serial printers ("KSR" modes). +d577|Data General DASHER D577, + use=d411, +d577-7b|Data General DASHER D577 in 7-bit mode, + use=d411-7b, +d577-w|Data General DASHER D577 in wide mode, + use=d411-w, +d577-7b-w|Data General DASHER D577 in wide 7-bit mode, + use=d411-7b-w, + +d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode, + use=d411-dg, + +# DASHER D578 terminal. +# Like a D577, but without compressed mode; like a D470C in this respect. +# +# Initialization string 1 sets: +# \E[<0;<1;<2;<4l +# <0 - scrolling enabled +# <1 - blink enabled +# <2 - horizontal scrolling enabled (for alignment) +# <4 - print characters regardless of attributes +# \E[1;1;80w - margins at columns 1 and 80 +# \E[1;6;<2h +# 1 - print all characters even if protected +# 6 - character protection disabled +# <2 - horizontal scrolling disabled +# - (should reset scrolling regions, but that glitches the screen) +# +d578|Data General DASHER D578, + is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577, +d578-7b|Data General DASHER D578 in 7-bit mode, + is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577-7b, + +#### Datamedia (dm) +# +# Datamedia was headquartered in Nashua, New Hampshire until it went +# out of business in 1993, but the ID plates on the terminals referred +# to the factory in Pennsauken, NJ. The factory was sold to a PCB board +# manufacturer which threw out all information about the terminals. +# + +cs10|colorscan|Datamedia Color Scan 10, + msgr, + cols#80, lines#24, + bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K, + ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smso=\E[7m, smul=\E[4m, +cs10-w|Datamedia Color Scan 10 with 132 columns, + cols#132, + cup=\E[%i%p1%02d;%p2%03dH, use=cs10, + +# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr) +dm1520|dm1521|datamedia 1520, + OTbs, am, xenl, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, ht=^I, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, + khome=^Y, +# dm2500: this terminal has both <ich> and <smir>. Applications using +# termcap/terminfo directly (rather than through ncurses) might be confused. +dm2500|datamedia2500|datamedia 2500, + OTbs, OTnc, + cols#80, lines#24, + bel=^G, clear=^^^^\177, cub1=^H, cud1=^J, cuf1=^\, + cup=\014%p2%{96}%^%c%p1%{96}%^%c, cuu1=^Z, + dch1=\020\010\030\035$<10*>, + dl1=\020\032\030\035$<10*>, el=^W, home=^B, + ich1=\020\034\030\035$<10*>, + il1=\020\n\030\035\030\035$<15>, ind=^J, pad=\377, + rmdc=^X^], rmir=\377\377\030\035$<10>, rmso=^X^], + smdc=^P, smir=^P, smso=^N, +# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82) +# also, has a meta-key. +# From: <goldberger@su-csli.arpa> +# (dmchat: ":MT:" changed to ":km:" -- esr) +dmchat|dmchat version of datamedia 2500, + km, + dl1=\020\032\030\035$<2/>, + il1=\020\n\030\035\030\035$<1*/>, use=dm2500, +# (dm3025: ":MT:" changed to ":km:" -- esr) +dm3025|datamedia 3025a, + OTbs, km, + cols#80, it#8, lines#24, + bel=^G, clear=\EM$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, + dch1=\010$<6>, dl1=\EP\EA\EQ$<130>, ed=\EJ$<2>, el=\EK, + home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=^J, ip=$<6>, + is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP, + smir=\EP, smso=\EO1, +dm3045|datamedia 3045a, + OTbs, am, eo, km@, ul, xenl, + dch1=\EB$<6>, dl1@, il1@, is2=\EU\EV, kcuf1=\EC, kcuu1=\EA, + kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, + kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r, + khome=\EH, pad=\177, rmdc@, rmir=\EP, rmso@, smdc@, smso@, + use=dm3025, +# Datamedia DT80 soft switches: +# 1 0=Jump 1=Smooth +# Autorepeat 0=off 1=on +# Screen 0=Dark 1=light +# Cursor 0=u/l 1=block +# +# 2 Margin Bell 0=off 1=on +# Keyclick 0=off 1=on +# Ansi/VT52 0=VT52 1=Ansi +# Xon/Xoff 0=Off 1=On +# +# 3 Shift3 0=Hash 1=UK Pound +# Wrap 0=Off 1=On +# Newline 0=Off 1=On +# Interlace 0=Off 1=On +# +# 4 Parity 0=Odd 1=Even +# Parity 0=Off 1=On +# Bits/Char 0=7 1=8 +# Power 0=60Hz 1=50Hz +# +# 5 Line Interface 0=EIA 1=Loop +# Aux Interface 0=EIA 1=Loop +# Local Copy 0=Off 1=On +# Spare +# +# 6 Aux Parity 0=Odd 1=Even +# Aux Parity 0=Off 1=On +# Aux Bits/Char 0=7 1=8 +# CRT Saver 0=Off 1=On +# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding. +dm80|dmdt80|dt80|datamedia dt80/1, + clear=\E[2J\E[H, cud1=^J, cuf1=\E[C, + cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, + home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM, + rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, + use=vt100, +# except in 132 column mode, where it needs a little padding. +# This is still less padding than the vt100, and you can always turn on +# the ^S/^Q handshaking, so you can use vt100 flavors for things like +# reverse video. +dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode, + cols#132, + clear=\E[H\E[2J$<50/>, cud1=^J, + cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>, + ed=\E[0J$<20/>, el=\E[0K$<20/>, use=dm80, +# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 +dt80-sas|Datamedia DT803/DTX for SAS usage, + am, bw, + cols#80, lines#24, + acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, + bel=^G, clear=^L, cr=^M, + csr=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2, + cub1=^H, cud1=\EB, cuf1=^\, + cup=\E=%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, dl1=\EM, ed=^K, + el=^], ff=^L, home=^Y, ht=^I, hts=\E'1, il1=\EL, ind=\EB, + is2=\E)0\E<\EP\E'0\E$2, kclr=^L, kcub1=^H, kcud1=^J, + kcuf1=^\, kcuu1=^_, ked=^K, kel=^], khome=^Y, mc4=^O, mc5=^N, + rev=\E$2\004, ri=\EI, rmacs=\EG, rmso=^X, sgr0=^X, smacs=\EF, + smso=\E$2\004, tbc=\E'0, + +# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL +# These aren't end-all Excel termcaps; but do insert/delete char/line +# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman) +# The naming convention has been bent somewhat, with the use of E? (where +# E is for 'Excel') as # a name. This was done to distinguish the entries +# from the other Datamedias in use here, and yet to associate a model of +# the Excel terminals with the regular datamedia terminals that share +# major characteristics. +excel62|excel64|datamedia Excel 62, + dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, + kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, + use=dt80, +excel62-w|excel64-w|datamedia Excel 62 in 132 char mode, + dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, + kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, + use=dt80w, +excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode, + dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=^J, + kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, + smir=\E[4h, use=dt80, + +#### Falco +# +# Falco Data Products +# 440 Potrero Avenue +# Sunnyvale, CA 940864-196 +# Vox: (800)-325-2648 +# Fax: (408)-745-7860 +# Net: techsup@charm.sys.falco.com +# +# Current Falco models as of 1995 are generally ANSI-compatible and support +# emulations of DEC VT-series, Wyse, and Televideo types. +# + +# Test version for Falco ts-1. See <arpavax.hickman@ucb> for info +# This terminal was released around 1983 and was discontinued long ago. +# The standout and underline highlights are the same. +falco|ts1|ts-1|falco ts-1, + OTbs, am, + cols#80, it#8, lines#24, + bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET\EG0\010, home=^^, ht=^I, il1=\EE, + ind=^J, is2=\Eu\E3, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, + kf0=^A0\r, rmir=\Er, rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, + smir=\Eq, smso=\Eg1, smul=\Eg1, +falco-p|ts1p|ts-1p|falco ts-1 with paging option, + OTbs, am, da, db, mir, msgr, ul, + cols#80, it#8, lines#24, + bel=^G, cbt=\EI, clear=\E*, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E[A, + dch1=\EW, dl1=\ER, ed=\EY, el=\ET\EG0\010\Eg0, ht=^I, + il1=\EE, ind=^J, is2=\EZ\E3\E_c, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, rmcup=\E_b, rmir=\Er, + rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, smcup=\E_d, smir=\Eq, + smso=\Eg4, smul=\Eg1, +# (ts100: I added <rmam>/<smam> based on the init string -- esr) +ts100|ts100-sp|falco ts100-sp, + am, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>, + el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, + ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, + rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, + sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, + use=vt100+fnkeys, +ts100-ctxt|falco ts-100 saving context, + rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100, + +#### Florida Computer Graphics +# + +# Florida Computer Graphics Beacon System, using terminal emulator program +# "host.com", as provided by FCG. This description is for an early release +# of the "host" program. Known bug: <ed> clears the whole screen, so it's +# commented out. + +# From: David Bryant <cbosg!djb> 1/7/83 +beacon|FCG Beacon System, + am, da, db, + cols#80, lines#32, + bel=\ESTART\r\E37\r\EEND\r$<1>, + blink=\ESTART\r\E61\,1\r\EEND\r, clear=\EZ$<10>, cr=^M, + cub1=^H, cud1=^J, cuf1=\EV, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=\EU, + dch1=\EW, dl1=\ER, el=\ET, home=\EH$<10>, ich1=\EQ, il1=\EE, + ind=^J, rev=\ESTART\r\E59\,1\r\EEND\r, rmcup=, + rmso=\ESTART\r\E70\,0\r\EEND\r$<20>, + rmul=\ESTART\r\E60\,0\r\EEND\r, + sgr0=\ESTART\r\E78\r\E70\,0\r\EEND\r$<20>, + smcup=\ESTART\r\E2\,0\r\E12\r\EEND\r$<10>, + smso=\ESTART\r\E70\,6\r\EEND\r$<20>, + smul=\ESTART\r\E60\,1\r\EEND\r, + +#### Fluke +# + +# The f1720a differences from ANSI: no auto margin, destructive +# tabs, # of lines, funny highlighting and underlining +f1720|f1720a|fluke 1720A, + xt, + cols#80, lines#16, xmc#1, + bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, + el=\E[K, ind=\ED, is2=\E[H\E[2J, kcub1=^_, kcud1=^], + kcuf1=^^, kcuu1=^\, ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smso=\E[7m, smul=\E[4m, + +#### Liberty Electronics (Freedom) +# +# Liberty Electronics +# 48089 Fremont Blvd +# Fremont CA 94538 +# Vox: (510)-623-6000 +# Fax: (510)-623-7021 + +# From: <faletti@berkeley.edu> +# (f100: added empty <acsc> to suppress a tic warning; +# made this relative to adm+sgr -- note that <invis> isn't +# known to work for f100 but does on the f110. --esr) +f100|freedom|freedom100|freedom model 100, + OTbs, am, bw, hs, mir, msgr, xon, + cols#80, lines#24, + acsc=, bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET, + flash=\Eb$<200>\Ed, fsl=^M, home=^^, hpa=\E]%p1%{32}%+%c, + ht=^I, hts=\E1, il1=\EE$<8.5*>, ind=^J, ip=$<6>, + is2=\Eg\Ef\r\Ed, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, + kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, rmacs=\E$, rmir=\Er, + smacs=\E%%, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, + vpa=\E[%p1%{32}%+%c, use=adm+sgr, +f100-rv|freedom-rv|freedom 100 in reverse video, + flash=\Ed$<200>\Eb, is2=\Eg\Ef\r\Eb, use=f100, +# The f110 and f200 have problems with vi(1). They use the ^V +# code for the down cursor key. When kcud1 is defined in terminfo +# as ^V, the Control Character Quoting capability (^V in insert mode) +# is lost! It cannot be remapped in vi because it is necessary to enter +# a ^V to to quote the ^V that is being remapped!!! +# +# f110/f200 users will have to decide whether +# to lose the down cursor key or the quoting capability. We will opt +# initially for leaving the quoting capability out, since use of VI +# is not generally applicable to most interactive applications +# (f110: added <ht>, <khome> & <kcbt> from f100 -- esr) +f110|freedom110|Liberty Freedom 110, + bw@, eslok, + it#8, wsl#80, + blink=\EG2, bold=\EG0, civis=\E.1, cnorm=\E.2, cud1=^V, + dim=\EG@, dl1=\ER, dsl=\Ef\r, flash=\Eb$<200/>\Ed, il1=\EE, + ip@, is2@, kclr=^^, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, + kf0=^AI\r, kf10@, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, + ri=\EJ, rmacs=\E%%, rmir=\Er\EO, smacs=\E$, smir=\EO\Eq, + smso=\EG<, tsl=\Ef, use=f100, +f110-14|Liberty Freedom 110 14inch, + dch1@, use=f110, +f110-w|Liberty Freedom 110 - 132 cols, + cols#132, use=f110, +f110-14w|Liberty Freedom 110 14in/132 cols, + cols#132, + dch1@, use=f110, +# (f200: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) +f200|freedom200|Liberty Freedom 200, + OTbs, am, eslok, hs, mir, msgr, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=, bel=^G, blink=\EG2, bold=\EG0, cbt=\EI, civis=\E.0, + clear=^Z, cnorm=\E.1, cr=^M, + csr=\Em0%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^V, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, + flash=\Eo$<200/>\En, fsl=^M, home=^^, + hpa=\E]%p1%{32}%+%c, hts=\E1, il1=\EE, ind=^J, kbs=^H, + kclr=^^, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, + kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, + ri=\EJ, rmacs=\E%%, rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG<, + tbc=\E3, tsl=\Ef, vpa=\E[%p1%{32}%+%c, use=adm+sgr, +f200-w|Liberty Freedom 200 - 132 cols, + cols#132, use=f200, +# The f200 has the ability to reprogram the down cursor key. The key is +# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM, +# so powering the terminal off and on will not cause the change to be lost. +f200vi|Liberty Freedom 200 for vi, + flash=\Eb$<200/>\Ed, kcud1=^J, use=f200, +f200vi-w|Liberty Freedom 200 - 132 cols for vi, + cols#132, use=f200vi, + +#### GraphOn (go) +# +# Graphon Corporation +# 544 Division Street +# Campbell, CA 95008 +# Vox: (408)-370-4080 +# Fax: (408)-370-5047 +# Net: troy@graphon.com (Troy Morrison) +# +# +# The go140 and go225 have been discontinued. GraphOn now makes X terminals, +# including one odd hybrid that starts out life on power-up as a character +# terminal, than can be switched to X graphics mode (driven over the serial +# line) by an escape sequence. No info on this beast yet. +# (go140: I added <rmam>/<smam> based on the init string -- esr) +go140|graphon go-140, + OTbs, + cols#80, it#8, lines#24, + clear=\E[H\E[2J$<10/>, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, + ed=\E[J$<10/>, el=\E[K, ht=^I, + if=/usr/share/tabset/vt100, il1=\E[L, + is2=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, +go140w|graphon go-140 in 132 column mode, + am, + cols#132, + is2=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q, + use=go140, +# Hacked up vt200 termcap to handle GO-225/VT220 +# From: <edm@nwnexus.WA.COM> +# (go225: I added <rmam>/<smam> based on the init string -- esr) +go225|go-225|Graphon 225, + OTbs, am, mir, xenl, + cols#80, it#8, lines#25, vt#3, + blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, 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, il1=\E[L, ind=\ED, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, rc=\E8, rev=\E[7m, + rf=/usr/share/tabset/vt100, ri=\EM, rmam=\E[?7l, + rmcup=\E[!p\E[?7h\E[2;1;1#w, rmir=\E[4l, rmkx=\E>, + rmso=\E[27m, rmul=\E[24m, rs1=\E[!p\E[?7h\E[2;1;1#w, + sc=\E7, sgr0=\E[m, smam=\E[?7h, smcup=\E[2;0#w\E[1;25r, + smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, + +#### Harris (Beehive) +# +# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine. +# Their terminal group is ancient history now (1995) though the parent +# company is still in business. +# + +# Beehive documentation is undated and marked Preliminary and has no figures +# so we must have early Superbee2 (Model 600, according to phone conversation +# with mfr.). It has proved reliable except for some missing padding +# (notably after \EK and <nl> at bottom of screen). +# +# The key idea is that AEP mode is poison for <cup> & that US's in +# the local memory should be avoided like the plague. That means +# that the 2048 character local buffer is used as 25 lines of 80 +# characters, period. No scrolling local memory, folks. It also +# appears that we cannot use naked INS LINE feature since it uses +# US. The sbi fakes <il1> with an 80-space insert that may be too +# slow at low speeds; also spaces get converted to \040 which is +# too long for some programs (not vi). DEL LINE is ok but slow. +# +# The <nl> string is designed for last line of screen ONLY; cup to +# 25th line corrects the motion inherent in scrolling to Page 1. +# +# There is one understood bug. It is that the screen appears to +# pop to a new (blank) page after a <nel>, or leave a half-line +# ellipsis to a quad that is the extra 48 memory locations. The +# data received is dumped into memory but not displayed. Not to +# worry if <cup> is being used; the lines not displayed will be, +# whenever the cursor is moved up there. Since <cup> is addressed +# relative to MEMORY of window, nothing is lost; but beware of +# relative cursor motion (<cuu1>,<cud1>,<cuf1>,<cub1>). Recommended, +# therefore, is setenv MORE -c . +# +# WARNING: Not all features tested. +# +# Timings are assembled from 3 sources. Some timings may reflect +# SB2/Model 300 that were used if more conservative. +# Tested on a Model 600 at 1200 and 9600 bd. +# +# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly +# placed on the keyboard and useless because of AEP, is made +# into a backspace key. In use ESC must be pressed twice (to send) +# and sending ^C must be prefixed by ESC to avoid that weird +# transmit mode associated with ENTER key. +# +# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across +# the screen, then it has dropped into ENTER mode; hit +# RESET--ONLINE--!tset. +# +# As delivered this machine has a FATAL feature that will throw +# it into that strange transmit state (SPOW) if the space bar is +# hit after a CR is received, but before receiving a LF (or a +# few others). +# +# The circuits MUST be modified to eliminate the SPOW latch. +# This is done by strapping on chip A46 of the I/O board; cut +# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that +# chip. This mod has been checked out on a Mod 600 of Superbee II. +# With this modification absurdly high timings on cr are +# unnecessary. +# +# NOTE WELL that the rear panel switch should be set to CR/LF, +# not AEP! +# +sb1|beehive superbee, + OTbs, am, bw, da, db, mir, ul, xsb, + cols#80, lines#25, xmc#1, + bel=^G, cbt=\E`$<650>, clear=\EH$<1>\EJ$<3>, cr=$<1>\r, + cub1=^H, cud1=^J, cuf1=\EC$<3>, cup=\EF%p2%03d%p1%03d, + cuu1=\EA$<3>, dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, + el=\EK$<3>, home=\EH$<1>, ht=^I, hts=\E1, + il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>, + ind=^J, is2=\EE$<3>\EX\EZ\EO\Eb\Eg\ER, kbs=^_, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdl1=\EM, ked=\EJ, kel=\EK, + kf0=\E2, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, + kf7=\Ev, kf8=\Ew, kf9=\E1, khome=\EH, kich1=\EQ\EO, + krmir=\ER, lf0=TAB CLEAR, lf9=TAB SET, rmcup=, rmir=\ER, + rmso=\E_3, rmul=\E_3, sgr0=\E_3, smcup=\EO, smir=\EQ\EO, + smso=\E_1, smul=\E_0, tbc=\E3, +sbi|superbee|beehive superbee at Indiana U., + xsb, + cr=\r$<1>, il1=1\EN\EL$<9>\EQ \EP$<9> \EO\ER\EA, + use=sb1, +# Alternate (older) description of Superbee - f1=escape, f2=^C. +# Note: there are at least 3 kinds of superbees in the world. The sb1 +# holds onto escapes and botches ^C's. The sb2 is the best of the 3. +# The sb3 puts garbage on the bottom of the screen when you scroll with +# the switch in the back set to CRLF instead of AEP. This description +# is tested on the sb2 but should work on all with either switch setting. +# The f1/f2 business is for the sb1 and the <xsb> can be taken out for +# the other two if you want to try to hit that tiny escape key. +# This description is tricky: being able to use cup depends on there being +# 2048 bytes of memory and the hairy <nl> string. +superbee-xsb|beehive super bee, + am, da, db, xsb, + cols#80, it#8, lines#25, + clear=\EH\EJ$<3>, cnorm=^J, cr=\r$<1000>, cub1=^H, cud1=^J, + cuf1=\EC, cup=\EF%p2%3d%p1%3d, cuu1=\EA$<3>, + dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, el=\EK$<3>, + home=\EH, ht=^I, hts=\E1, + ind=\n\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET, is2=\EH\EJ, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\Ep, kf2=\Eq, + kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, + khome=\EH, rmso=\E_3, sgr0=\E_3, smso=\E_1, tbc=\E3, +# This loses on lines > 80 chars long, use at your own risk +superbeeic|super bee with insert char, + ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb, +sb2|sb3|fixed superbee, + xsb@, use=superbee, + +#### Beehive Medical Electronics +# +# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999): +# Regarding your question though; Beehive terminals weren't made by Harris. +# They were made by Beehive Medical Electronics in Utah. They went out of +# business in the early '80s. +# +# (OK, then, I don't know why a couple of these say "harris beehive".) +# + +# Reports are that most of these Beehive entries (except superbee) have not +# been tested and do not work right. <rmso> is a trouble spot. Be warned. + +# (bee: <ich1> was empty, which is obviously bogus -- esr) +beehive|bee|harris beehive, + OTbs, am, mir, + cols#80, lines#24, + cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, + dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, kbs=^H, kcbt=\E>, + kclr=\EE, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + kdch1=\EP, kdl1=\EM, kel=\EK, khome=\EH, kich1=\EQ, kil1=\EL, + krmir=\E@, rmir=\E@, rmso=\Ed@, rmul=\Ed@, sgr0=\Ed@, + smir=\EQ, smso=\EdP, smul=\Ed`, +# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. +# good grief - does this entry make :sg:/:ug: when it doesn't have to? +# look at those spaces in <rmso>/<smso>. Seems strange to me... +# (beehive: <if=/usr/share/tabset/beehive> removed, no such file. If you +# really care, cook up one using ^F -- esr) +beehive3|bh3m|beehiveIIIm|harris beehive 3m, + OTbs, am, + cols#80, it#8, lines#20, + bel=^G, clear=^E^R, cr=^M, cub1=^H, cud1=^J, cuf1=^L, cuu1=^K, + dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F, + il1=\023$<160>, ind=^J, ll=^E^K, rmso=\s^_, smso=^]\s, +beehive4|bh4|beehive 4, + am, + cols#80, lines#24, + bel=^G, clear=\EE, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC, + cuu1=\EA, ed=\EJ, el=\EK, home=\EH, ind=^J, +# There was an early Australian kit-built computer called a "Microbee". +# It's not clear whether this is for one of those or for a relative +# of the Beehive. +microb|microbee|micro bee series, + OTbs, am, + cols#80, it#8, lines#24, + bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, ht=^I, ind=^J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, + kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, khome=\EH, rmso=\Ed@, + rmul=\Ed@, sgr0=\Ed@, smso=\s\EdP, smul=\Ed`, + +# 8675, 8686, and bee from Cyrus Rahman +# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr) +ha8675|harris 8675, + is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU, kf1=^F, + kf10=\Ed, kf11=^W, kf12=\ER, kf13=\EE, kf14=\EI, kf15=\Ei, + kf16=\Eg, kf2=^P, kf3=^N, kf4=^V, kf5=^J, kf6=^T, kf7=^H, + kf8=\177, kf9=\Ee, use=bee, +# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation +# in :is: -- esr) +ha8686|harris 8686, + is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#, + kf1=\002\Ep\003, kf10=\Ej, kf11=\EW, kf12=\002\E{\003, + kf13=\002\E|\003, kf14=\002\E}\003, kf15=\002\E~\003, + kf16=\002\E\177\003, kf2=\002\Eq\003, kf3=\002\Er\003, + kf4=\002\Es\003, kf5=\E3, kf6=\EI, kf7=\ER, kf8=\EJ, kf9=\E(, + use=bee, + +#### Hazeltine +# +# Hazeltine appears to be out of the terminal business as of 1995. These +# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with +# Harris. They have a hazeltine.com domain (but no web page there ) and can +# be reached at: +# +# Hazeltine +# 450 East Pulaski Road +# Greenlawn, New York 11740 +# +# As late as 1993, manuals for the terminal product line could still be +# purchased from: +# +# TRW Customer Service Division +# 15 Law Drive +# P.O. Box 2076 +# Fairfield, NJ 07007-2078 +# +# They're now (1998) a subsidiary of General Electric, operating under the +# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page +# at <http://www.gec.com/cpd/1ncpd.htm#1.55>. +# + +# Since <cuf1> is blank, when you want to erase something you +# are out of luck. You will have to do ^L's a lot to +# redraw the screen. h1000 is untested. It doesn't work in +# vi - this terminal is too dumb for even vi. (The code is +# there but it isn't debugged for this case.) +hz1000|hazeltine 1000, + OTbs, + cols#80, lines#12, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, home=^K, + ind=^J, +# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 +hz1420|hazeltine 1420, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=^J, cuf1=^P, + cup=\E\021%p2%c%p1%{32}%+%c, cuu1=\E^L, dl1=\E^S, + ed=\E^X, el=\E^O, ht=^N, il1=\E^Z, ind=^J, rmso=\E^Y, + smso=\E^_, +# New "safe" cursor movement (11/87) from <cgs@umd5.umd.edu>. Prevents +# freakout with out-of-range args and tn3270. No hz since it needs to +# receive tildes. +hz1500|hazeltine 1500, + OTbs, am, hz, + cols#80, lines#24, + bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, + cup=~\021%p2%p2%?%{30}%>%t%{32}%+%;%{96}%+%c%p1%{96}%+%c, + cuu1=~^L, dl1=~\023$<40>, ed=~\030$<10>, el=~^O, home=~^R, + il1=~\032$<40>, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^P, + kcuu1=~^L, khome=~^R, rmso=~^Y, smso=~^_, +# h1510 assumed to be in sane escape mode. Else use h1500. +# (h1510: early versions of this entry apparently had "<rmso=\E^_>, +# <smso=\E^Y>, but these caps were commented out in 8.3; also, +# removed incorrect and overridden ":do=^J:" -- esr) +hz1510|hazeltine 1510, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, cuf1=^P, + cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, ed=\E^X, + el=\E^O, il1=\E^Z, ind=^J, +# Hazeltine 1520 +# The following switch settings are assumed for normal operation: +# FULL CR U/L_CASE ESCAPE +# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON +# Other switches may be set for operator convenience or communication +# requirements. +hz1520|Hazeltine 1520, + OTbs, am, bw, msgr, + cols#80, lines#24, + bel=^G, bold=\E^_, clear=\E^\, cr=^M, cub1=^H, cud1=^J, + cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, + ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, kbs=^H, + kclr=\E^\, kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, + kdl1=\E^S, ked=\E^X, kel=\E^O, khome=\E^R, kil1=\E^Z, + rmso=\E^Y, rs1=\E$\E\005\E?\E\031, sgr0=\E^Y, smso=\E^_, +# This version works with the escape switch off +# (h1520: removed incorrect and overridden ":do=^J:" -- esr) +hz1520-noesc|hazeltine 1520, + am, hz, + cols#80, lines#24, + bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, + cup=~\021%p2%c%p1%c$<1>, cuu1=~^L, dl1=~^S, ed=~^X, el=~^O, + home=~^R, il1=~^Z, ind=^J, rmso=~^Y, smso=~^_, +# Note: the h1552 appears to be the first Hazeltine terminal which +# is not braindamaged. It has tildes and backprimes and everything! +# Be sure the auto lf/cr switch is set to cr. +hz1552|hazeltine 1552, + OTbs, + cud1=^J, dl1=\EO, il1=\EE, kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue, + lf2=red, lf3=green, use=vt52, +hz1552-rv|hazeltine 1552 reverse video, + cud1=^J, rmso=\ET, smso=\ES, use=hz1552, +# Note: h2000 won't work well because of a clash between upper case and ~'s. +hz2000|hazeltine 2000, + OTbs, OTnc, am, + cols#74, lines#27, + bel=^G, clear=~\034$<6>, cub1=^H, cud1=^J, + cup=~\021%p2%c%p1%c, dl1=~\023$<6>, home=~^R, + il1=~\032$<6>, ind=^J, pad=\177, +# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote: +# I tested this termcap entry for the Hazeltine Esprit with vi. It seems +# to work ok. There is one problem though if one types a lot of garbage +# characters very fast vi seems not able to keep up and hangs while trying +# to insert. That's in insert mode while trying to insert in the middle of +# a line. It might be because the Esprit doesn't have insert char and delete +# char as a built in function. Vi has to delete to end of line and then +# redraw the rest of the line. +esprit|Hazeltine Esprit I, + OTbs, am, bw, + cols#80, lines#24, + bel=^G, cbt=\E^T, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, + cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, + ed=\E^W, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, is2=\E?, kbs=^H, + kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, kf0=^B0^J, + kf1=^B1^J, kf2=^B2^J, kf3=^B3^J, kf4=^B4^J, kf5=^B5^J, + kf6=^B6^J, kf7=^B7^J, kf8=^B8^J, kf9=^B9^J, khome=\E^R, + lf0=0, lf1=1, lf2=2, lf3=3, lf4=4, lf5=5, lf6=6, lf7=7, lf8=8, lf9=9, + rmkx=\E>, rmso=\E^Y, smkx=\E<, smso=\E^_, +esprit-am|hazeltine esprit auto-margin, + am, use=esprit, +# Hazeltine Modular-1 from Cliff Shackelton <ittvax!ittral!shackelt> via BRL +# Vi it seems always wants to send a control J for "do" and it turned out +# that the terminal would work somewhat if the auto LF/CR was turned off. +# (hmod1: removed :dn=~^K: -- esr) +hmod1|Hazeltine Modular 1, + OTbs, am, hz, + cols#80, lines#24, + bel=^G, cbt=~^T, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, + cup=~\021%p2%c%p1%c, cuu1=~^L, dl1=~^S, home=~^R, il1=~^Z, + ind=^J, kcub1=^H, kcud1=~^K, kcuf1=^P, kcuu1=~^L, khome=~^R, + rc=~^Q, rmso=~^Y, sc=~^E, sgr0=~^Y, smso=~^_, +# +# Hazeltine Executive 80 Model 30 (1554?) +# from Will Martin <control@ALMSA-1.ARPA> via BRL +# Like VT100, except for different "am" behavior. +hazel|exec80|h80|he80|Hazeltine Executive 80, + OTbs, OTpt, am, + cols#80, it#8, lines#24, vt#3, + OTnl=^J, bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, + clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=^J, cuf1=\E[C$<2/>, + cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, + ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, + is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, rc=\E8, rev=\E[7m$<2/>, + rf=/usr/share/tabset/vt100, ri=\EM$<5/>, + rmkx=\E[?1l\E>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, + rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m$<2/>, smkx=\E[?1h\E=, smso=\E[7m$<2/>, + smul=\E[4m$<2/>, + +#### IBM +# + +ibm327x|line mode IBM 3270 style, + gn, + clear=^M^J, el=^M, home=^M, + +ibm3101|i3101|IBM 3101-10, + OTbs, am, xon, + cols#80, lines#24, + bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH, +ibm3151|IBM 3151 display, + is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B, + sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;, + sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162, +# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992 +# removed kend, knp, kpp -TD +ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display, + OTbs, am, mir, msgr, + cols#80, it#8, lines#24, + acsc=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370, + bel=^G, blink=\E4D, bold=\E4H, clear=\EH\EJ, cr=^M, cub1=\ED, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, ind=^J, + invis=\E4P, kbs=^H, kcbt=\E2, kclr=\EL\r, kctab=\E1, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EQ, + kdl1=\EO, ked=\EJ, kel=\EI, kf1=\Ea\r, kf10=\Ej\r, + kf11=\Ek\r, kf12=\El\r, kf13=\E!a\r, kf14=\E!b\r, + kf15=\E!c\r, kf16=\E!d\r, kf17=\E!e\r, kf18=\E!f\r, + kf19=\E!g\r, kf2=\Eb\r, kf20=\E!h\r, kf21=\E!i\r, + kf22=\E!j\r, kf23=\E!k\r, kf24=\E!l\r, kf3=\Ec\r, + kf4=\Ed\r, kf5=\Ee\r, kf6=\Ef\r, kf7=\Eg\r, kf8=\Eh\r, + kf9=\Ei\r, khome=\EH, khts=\E0, kich1=\EP \010, kil1=\EN, + ktbc=\E 1, mc4=^P^T, mc5=^P^R, rev=\E4A, rmcup=\E>A, + rmso=\E4@, rmul=\E4@, + sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E<@%;, + sgr0=\E4@\E<@, smcup=\E>A, smso=\E4A, smul=\E4B, + +ibm3161-C|IBM 3161-C NLS terminal using cartridge, + rmcup=\E>B, s0ds=\E>B, s1ds=\E>A, smcup=\E>B, use=ibm3161, +ibm3162|IBM 3162 display, + blink=\E4$a, bold=\E4(a, il1=\EN, invis=\E40a, rev=\E4!a, + rmso=\E4>b, rmul=\E4=b, sgr0=\E4@, smso=\E4!a, smul=\E4"a, + use=ibm3161-C, + +# This really should not use setab/setaf, but it is clear that the +# original terminfo does not toggle red/blue colors as in setb/setf. +ibm3164|i3164|IBM 3164, + msgr, + colors#8, pairs#64, + op=\E4 "@, rmcup=\E!9(N\E>B, s0ds=\E>B, s1ds=\E>A, + setab=\E4 %p1%{64}%+%c, + setaf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@, + smcup=\E!9/N\E>B, use=ibm3161, + +ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display, + am, bw, msgr, xon, + cols#80, it#8, lines#25, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, + hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, kbs=^H, kcbt=\E[Z, + kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, kel=\E[142q, + kend=\E[146q, kf1=\E[001q, kf10=\E[010q, kf11=\E[011q, + kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, kf15=\E[015q, + kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, kf19=\E[019q, + kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, kf22=\E[022q, + kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, kf26=\E[026q, + kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, kf3=\E[003q, + kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, kf33=\E[033q, + kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, kf4=\E[004q, + kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, + kf9=\E[009q, khome=\E[H, kich1=\E[139q, kil1=\E[140q, + kind=\E[151q, knp=\E[154q, kpp=\E[150q, kri=\E[155q, + krmir=\E[4l, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmir=\E[4l, + rmso=\E[m, rmul=\E[m, rs2=\Ec, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, + sgr0=\E[0m, smir=\E[4h, smso=\E[7m, smul=\E[4m, + +ibmaed|IBM Experimental display, + OTbs, am, eo, msgr, + cols#80, it#8, lines#52, + clear=\EH\EK, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, + dl1=\EO, ed=\EJ, el=\EI, flash=\EG, home=\EH, ht=^I, ich1=\EP, + il1=\EN, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + rmso=\E0, sgr0=\E0, smso=\E0, +ibm-apl|apl|IBM apl terminal simulator, + lines#25, use=dm1520, +# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'. +# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr) +ibmmono|IBM workstation monochrome, + eslok, hs, + bold=\EZ, dl1=\EM, dsl=\Ej\EY8 \EI\Ek, fsl=\Ek, il1=\EL, + invis=\EF\Ef0;\Eb0;, kbs=^H, kf0=\E<, kf1=\ES, kf2=\ET, + kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EY, + khome=\EH, kich1=\0, kind=\EE, knp=\EE, kpp=\Eg, kri=\EG, + lf0=f10, rev=\Ep, ri=\EA, rmso=\Ez, rmul=\Ew, + sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo, + use=ibm3101, +ibmega|IBM Enhanced Color Display, + cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, + nel=^M^J, use=ibmmono, +# This color scheme is assumed in some recent IBM terminal descriptions +# (green on black, emulated on a 16-color terminal). +ibm+color|IBM color definitions, + colors#8, ncv#3, pairs#64, + op=\E[32m\E[40m, + setb=\E[%?%p1%{0}%=%t40m%e%p1%{1}%=%t41m%e%p1%{2}%=%t42m%e%p1%{3}%=%t43m%e%p1%{4}%=%t44m%e%p1%{5}%=%t45m%e%p1%{6}%=%t46m%e%p1%{7}%=%t107m%;, + setf=\E[%?%p1%{0}%=%t30m%e%p1%{1}%=%t31m%e%p1%{2}%=%t32m%e%p1%{3}%=%t33m%e%p1%{4}%=%t34m%e%p1%{5}%=%t35m%e%p1%{6}%=%t36m%e%p1%{7}%=%t97m%;, +ibm+16color|IBM aixterm color definitions, + colors#16, pairs#256, + setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm, + setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm, + setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, + setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, +ibm5154|IBM 5154 Color display, + colors#8, ncv@, pairs#64, + bold@, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, + use=ibm+color, +ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline, + rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;, + use=ibmmono, +ibmvga-c|IBM VGA display color termcap, + cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, + nel=^M^J, use=ibmega-c, +ibmvga|IBM VGA display, + cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, + nel=^M^J, use=ibmega, +# ibmapa* and ibmmono entries come from ACIS 4.3 distribution +rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display, + lines#32, + dsl=\Ej\EY@ \EI\Ek, tsl=\Ej\EY@%+ \Eo, use=ibmmono, +ibm6155|IBM 6155 Black & White display, + blink@, bold@, use=ibm5151, +# Advanced Monochrome (6153) and Color (6154) Graphics Display: +ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display, + lines#31, + dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, use=ibmmono, +ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display, + lines#31, + dim=\EF\Ef7;, dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, + use=ibmega-c, +ibm6154|IBM 6154 Color displays, + blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, + sgr0=\E[0;10m, use=ibm5154, +ibm6153|IBM 6153 Black & White display, + blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, + sgr0=\E[0;10m, use=ibm5151, +ibm6153-90|IBM 6153 Black & White display, + cols#90, lines#36, + blink@, bold@, use=ibm5151, +ibm6153-40|IBM 6153 Black & White display, + cols#40, lines#12, use=ibm6153-90, +ibm8512|ibm8513|IBM color VGA Terminal, + am, mir, msgr, + cols#80, it#8, lines#25, + acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m, + clear=\E[H\E[J, cub1=\E[D, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL, + il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A, + kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, + kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, + kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m, + rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l, + rmir=\E[4l, rmso=\E[m, rmul=\E[m, + rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m, + smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb, + smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m, + use=ibm8503, +hft-c|HFT with Color, + colors#8, pairs#64, + acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0m\E(B, + use=ibm5151, use=ibm+color, +hft-c-old|HFT with Color PC850, + colors#8, pairs#64, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, + use=ibm+color, +hft-old|AIWS High Function Terminal, + am, xon, + cols#80, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + cub1=^H, cud1=^J, 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=^J, invis=\E[8m, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q, + kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, + kf9=\E[009q, khome=\E[H, knp=\E[153q, kpp=\E[159q, + ktbc=\E[010q, rev=\E[7m, rmir=\E6, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smir=\E6, smso=\E[7m, smul=\E[4m, use=ibm+color, +ibm-system1|system1|ibm system/1 computer, + am, xt, + cols#80, lines#24, + bel=^G, clear=^Z, cub1=^H, cuf1=^\, + cup=\005%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, home=^K, + ind=^J, +# lft-pc850 : IBM Low Function Terminal Device +# lft "supports" underline, bold, and blink in the sense that the lft code +# sets all the right bits. HOWEVER, depending upon the adapter, these +# attributes may or may not be supported by the device driver. +lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device, + am, bw, msgr, xon, + cols#80, it#8, lines#25, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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, + dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[2J, el=\E[0K, + home=\E[H, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, il=\E[%p1%dL, + il1=\E[L, ind=\ED, indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, + kbs=^H, kcbt=\E[Z, kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, + kel=\E[142q, kend=\E[146q, kf1=\E[001q, kf10=\E[010q, + kf11=\E[011q, kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, + kf15=\E[015q, kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, + kf19=\E[019q, kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, + kf22=\E[022q, kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, + kf26=\E[026q, kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, + kf3=\E[003q, kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, + kf33=\E[033q, kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, + kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, + kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, + kil1=\E[140q, kind=\E[151q, knp=\E[154q, kpp=\E[150q, + kri=\E[155q, krmir=\E[4l, rev=\E[7m, ri=\EL, rin=\E[%p1%dT, + rmacs=\E(B, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs2=\Ec, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, +ibm5081|hft|IBM Megapel Color display, + acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B, + s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154, +ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display, + eslok, hs, + lines#33, + dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo, + use=ibmega-c, +ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display, + use=hft-c, +ibm8514|IBM 8514/a color VGA display, + eslok, hs, + dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft, +ibm8514-c|IBM 8514 color display with standout and underline, + eslok, hs, + lines#41, + cr=^M, cud1=^J, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=^J, + kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, tsl=\Ej\EYI%+ \Eo, + use=ibmega-c, + +# +# AIX entries. IBM ships these with AIX 3.2.5. +# -- added rc, sc based on manpage -TD +# Note that we could use ibm+16color, but that is not how IBM defines this one. +aixterm|IBM Aixterm Terminal Emulator, + eslok, hs, + acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, + fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154, +aixterm-m|IBM AIXterm Monochrome Terminal Emulator, + eslok, hs, + acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, + fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, + sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153, +aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator, + eslok, hs, + bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, + tsl=\E[?%p1%dT, use=ibm6153, +jaixterm|IBM Kanji Aixterm Terminal Eemulator, + acsc@, use=aixterm, +jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator, + acsc@, use=aixterm-m, + +# This flavor is adapted from xterm, in turn from aixterm documentation -TD +aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors, + use=ibm+16color, use=aixterm, + +#### Infoton/General Terminal Corp. +# + +# gt100 sounds like something DEC would come out with. Let's hope they don't. +i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100), + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\Ef%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dl1=\EM, + ed=\EJ, el=\EK, flash=\Eb$<200/>\Ea, home=\EH, il1=\EL, + ind=^J, rmso=\Ea, smso=\Eb, +i400|infoton 400, + OTbs, am, + cols#80, lines#25, + bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%3d;%p2%3dH, cuu1=\E[A, + dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, dl1=\E[M, el=\E[N, + il1=\E[L, ind=^J, rmir=\E[4l\E[0Q, smir=\E[4h\E[2Q, +# (addrinfo: removed obsolete ":bc=^Z:" -- esr) +addrinfo, + am, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, + cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=^J, ll=^H^\, +# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr) +infoton, + am, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, cuu1=^\, + ed=^K, ind=^J, ll=^H^\, + +# The ICL6402 was actually the Kokusai Display System 6402. +# The 6404 was the KDS7372 (color version of the 6402). +# +# ICL6404 control codes follow: +# +#code function +#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#ctrl-A set SOM position at cursor position +#ctrl-G Bell +#ctrl-H Backspace +#ctrl-I Horiz tab +#ctrl-J Linefeed +#ctrl-K Cursor up +#ctrl-L Cursor right +#ctrl-M Carriage return +#ctrl-N Disable xon/xoff to host +#ctrl-O Enable xon/xoff to host +#ctrl-R Enable bidirectional mode +#ctrl-T Disable bidirectional mode +#ctrl-V Cursor down +#ctrl-Z Clear unprotected data to insert char +#ctrl-^ Cursor home +#ctrl-_ Newline +# +#ESC lead-in char for multiple character command +# +#ESC space R execute power on sequence +#ESC ! p1 p2 define scroll region: +# p1 = scroll top line: 20h - 37h +# p1 = scroll bottom line: 20h - 37h +#ESC " unlock keyboard +#ESC # lock keyboard +#ESC $ Semi-graphics mode on +#ESC % Semi-graphics mode off +#ESC & protect mode on +#ESC ' protect mode off +#ESC ( write protect mode off (full intensity) +#ESC ) write protect mode on (half intensity) +# +#ESC * clear screen +#ESC + clear unprotected data to insert char +#ESC , clear unprotected data to half intensity spaces +#ESC - p1 p2 p3 p4 address cursor to page, row, column: +# p1 = page number 0 - 3 +# p2 = row 20h - 7fh +# p3 = column (lo) 20h - 7fh +# p4 = column (hi) 20h - 21h (only 132 col) +#ESC . p1 set cursor style: +# p1 = 0 invisible cursor +# p1 = 1 block blinking cursor +# p1 = 2 block steady cursor +# p1 = 3 underline blinking cursor +# p1 = 4 underline steady cursor +#ESC / transmit cursor location (page, row, column) +#ESC 0 p1 p2 p3 p4 program edit key: +# p1 = edit key code: '@'-'S', '`'-'s' +# p2 p3 p4 = program data (3 bytes) +# +#ESC 1 set tab +#ESC 2 clear tab at cursor +#ESC 3 clear all tabs +#ESC 4 send unprotect line to cursor +#ESC 5 send unprotect page to cursor +#ESC 6 send line to cursor +#ESC 7 send page to cursor +#ESC 8 n set scroll mode: +# n = 0 set jump scroll +# n = 1 set smooth scroll +#ESC 9 n control display: +# n = 0 display off +# n = 1 display on +#ESC : clear unprotected data to null +#ESC ; clear unprotected data to insert char +# +#ESC < keyclick on +#ESC = p1 p2 address cursor to row, column +# p1 = row 20h - 7fh +# p2 = column (lo) 20h - 7fh +# p3 = column (hi) 20h - 21h (only 132 col) +#ESC > keyclick off +#ESC ? transmit cursor location (row, column) +# +#ESC @ copy print mode on +#ESC A copy print mode off +#ESC B block mode on +#ESC C block mode off (conversation mode) +#ESC D F set full duplex +#ESC D H set half duplex +#ESC E line insert +#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd) +# 0 = black, 1 = red, 2 = green, 3 = yellow +# 4 = blue, 5 = magenta, 6 = cyan, 7 = white +#ESC G n set serial field attribute (n = 30h - 3Fh) +#ESC H n full graphics mode: +# n = 0 exit full graphics mode +# n = 1 enter full graphics mode +#ESC I back tab +#ESC J back page +#ESC K forward page +# +#ESC L unformatted page print +#ESC M L move window left (132 col mode only) +#ESC M R move window right (132 col mode only) +#ESC N set page edit (clear line edit) +#ESC O set line edit (clear page edit) +#ESC P formatted page print +#ESC Q character insert +#ESC R line delete +#ESC S send message unprotected only +#ESC T erase line to insert char +#ESC U set monitor mode (see ESC X, ESC u) +# +#ESC V n select video attribute mode: +# n = 0 serial field attribute mode +# n = 1 parallel character attribute mode +#ESC V 2 n define line attribute: +# n = 0 single width single height +# n = 1 single width double height +# n = 2 double width single height +# n = 3 double width double height +#ESC V 3 n select character font: +# n = 0 system font +# n = 1 user defined font +#ESC V 4 n select screen mode: +# n = 0 page screen mode +# n = 1 virtual screen mode +#ESC V 5 n control mouse mode: +# n = 0 disable mouse +# n = 1 enable sample mode +# n = 2 send mouse information +# n = 3 enable request mode +#ESC W character delete +#ESC X clear monitor mode (see ESC U, ESC u) +#ESC Y erase page to insert char +# +#ESC Z n send user/status line: +# n = 0 send user line +# n = 1 send status line +# n = 2 send terminal ID +#ESC [ p1 p2 p3 set character attribute (parallel char mode): +# p1: 0 = normal +# 1 = blank +# 2 = blink +# 3 = blink blank (= blank) +# 4 = reverse +# 5 = reverse blank +# 6 = reverse blink +# 7 = reverse blink blank (= reverse blank) +# 8 = underline +# 9 = underline blank +# : = underline blink +# ; = underline blink blank +# < = reverse underline +# = = reverse underline blank +# > = reverse underline blink +# ? = reverse underline blink blank +# p2, p3: f/grnd, b/grnd colour +# (see ESC F for colours) +# use ZZ for mono, eg. +# ESC [ 0 Z Z for normal +# ESC [ 4 Z Z for inverse etc. +# +#ESC \ n set page size: +# n = 1 24 lines/page +# n = 2 48 lines/page +# n = 3 72 lines/page +# n = 4 96 lines/page +#ESC ] n set Wordstar mode: +# n = 0 normal (KDS7372) mode +# n = 1 Wordstar mode +# +#ESC b set foreground colour screen +# +#ESC c n enter self-test mode: +# n = 0 exit self test mode +# n = 1 ROM test +# n = 2 RAM test +# n = 3 NVRAM test +# n = 4 screen display test +# n = 5 main/printer port test +# n = 6 mouse port test +# n = 7 graphics board test +# n = 8 graphics memory test +# n = 9 display all 'E' +# n = : display all 'H' +#ESC d set background colour screen +# +#ESC e n program insert char (n = insert char) +#ESC f text CR load user status line with 'text' +# +#ESC g display user status line on 25th line +#ESC h display system status line on 25th line +#ESC i tab +#ESC j reverse linefeed +#ESC k n duplex/local edit mode: +# n = 0 duplex edit mode +# n = 1 local edit mode +#ESC l n select virtual screen: +# n = 0 screen 1 +# n = 1 screen 2 +#ESC m save current config to NVRAM +#ESC n p1 select display screen: +# p1 = 0 screen 1 +# p1 = 1 screen 2 +# p1 = 2 screen 3 +# p1 = 3 screen 4 +#ESC o p1 p2 set characters/line and attribute: +# p1 = 0 80 chars/line +# +#ESC o p1 p2 set characters/line and attribute: +# p1 = 0 80 chars/line +# p1 = 1 132 chars/line +# p2 = 0 single width single height +# p2 = 1 single width double height +# p2 = 2 double width single height +# p2 = 3 double width double height +# +#ESC q insert mode on +#ESC r edit mode on +#ESC s send message all +#ESC t erase line to null +#ESC u clear monitor mode (see ESC U, ESC X) +#ESC v autopage mode on +#ESC w autopage mode off +#ESC x p1 p2 p3 define delimiter code... +#ESC y erase page to null +# +#ESC z 2 p1 p2 p3 p4 draw quadrangle: +# p1 = starting row +# p2 = starting column +# p3 = end row +# p4 = end column +# +#ESC { p1 p2 p3 p4 configure main port +# (baud, stop bits, parity, word length) +# +#ESC | p1 p2 text Ctrl-Y program function key with 'text': +# p1 = function key code: +# '1' - ';' normal f1- f11 +# '<' - 'F' shifted f1 - f11 +# p2 = program mode: +# 1 = FDX +# 2 = LOC +# 3 = HDX +# Ctrl-Y = terminator +# (use Ctrl-P to escape ^P, ^Y ) +# +#ESC } p1 p2 p3 p4 configure printer port +# (baud, stop bits, parity, word length) +#ESC ~ send system status +# +# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997 +# +# Entry is by esr going solely on above information and is UNTESTED. +# This actually looks a lot like a Televideo 9xx. +# This entry uses page 0 and is monochrome; I'm not brave enough to try +# to make color work without a test terminal. The <am> capability is a guess. +# The initialization string sets conversation mode, blinking underline cursor, +# full duplex, parallel attribute mode, display user status line, white +# foreground, black background, normal highlight. +# +icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372, + OTbs, am, hs, + cols#80, lines#24, + bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*, + cnorm=\E.3, cr=^M, + csr=\E!%+%p1%{32}%+%p2%{32} cud1=\026, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{80}%m%{32}%+%c%p2%{80}%>%{32}%+%c, + cuu1=^K, cvvis=\E.1, dch1=\EW, dl1=\ER, home=^^, ht=^I, + hts=\E1, il1=\EE, invis=\E[1ZZ, + is1=\EC\E.3\EDF\EV1\Eg\E[0ZZ, nel=^_, rev=\E[4ZZ, + rmir=\Er, rmso=\E[%gh%{4}%^%Ph%gh%dZZ, + rmul=\E[%gh%{8}%^%Ph%gh%dZZ, rs2=\Eo1, + sgr=\E[%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;ZZ, + sgr0=\E[0ZZ, smir=\Eq, smso=\E[8ZZ, smul=\E[8ZZ, tbc=\E3, +icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols, + rs2=\Eo1, use=icl6404, + +#### Interactive Systems Corp +# +# ISC used to sell OEMed and customized hardware to support ISC UNIX. +# ISC UNIX still exists in 1995, but ISC itself is no more; they got +# bought out by Sun. +# + +# From: <cithep!eric> Wed Sep 16 08:06:44 1981 +# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the +# ":le=^_:" later overridden -- esr) +intext|Interactive Systems Corporation modified owl 1200, + OTbs, am, + cols#80, it#8, lines#24, xmc#1, + bel=^G, cbt=^Y, clear=\014$<132>, cr=^M, cub1=^H, cud1=^J, + cuf1=^^, cup=\017%p1%{32}%+%c%p2%{32}%+%c, cuu1=^\, + dch1=\022$<5.5*>, dl1=\021$<5.5*>, ed=\026J$<5.5*>, + el=^Kp^R, ht=^I, il1=\020$<5.5*>, ind=^J, ip=$<5.5*>, kbs=^H, + kcub1=^_, kcud1=^J, kcuf1=^^, kcuu1=^\, kf0=^VJ\r, kf1=^VA\r, + kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, kf6=^VF\r, + kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, khome=^Z, rmir=^V<, + rmkx=^V9, rmso=^V#\s, smir=^V;, smkx=\036\:\264\026%%, + smso=^V$\,, +intext2|intextii|INTERACTIVE modified owl 1251, + am, bw, ul, + cols#80, lines#24, xmc#0, + bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, 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, + flash=\E[;;;;;;;;;2;;u$<200/>\E[;;;;;;;;;1;;u, + hpa=\E[%p1%{1}%+%dG, ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S, + kbs=^H, kcub1=\ED\r, kcud1=\EB\r, kcuf1=\EC\r, kcuu1=\EA\r, + kf0=\E@\r, kf1=\EP\r, kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r, + kf5=\EU\r, kf6=\EV\r, kf7=\EW\r, kf8=\EX\r, kf9=\EY\r, + khome=\ER\r, lf0=REFRSH, lf1=DEL CH, lf2=TABSET, lf3=GOTO, + lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT, + lf9=RIGHT, ri=\E[T, rmso=\E[2 D, rmul=\E[2 D, smso=\E[6 D, + smul=\E[18 D, + +#### Kimtron (abm, kt) +# +# Kimtron seems to be history, but as March 1998 these people are still +# offering repair services for Kimtron equipment: +# +# Com/Pair Monitor Service +# 1105 N. Cliff Ave. +# Sioux Falls, South Dakota 57103 +# +# WATS voice: 1-800/398-4946 +# POTS fax: +1 605/338-8709 +# POTS voice: +1 605/338-9650 +# Email: <compair@sd.cybernex.net> +# Internet/Web: <http://www.com-pair.com> +# +# Kimtron entries include (undocumented) codes for: enter dim mode, +# enter bold mode, enter reverse mode, turn off all attributes. +# + +# Kimtron ABM 85 added by Dual Systems +# (abm85: removed duplicated ":kd=^J:" -- esr) +abm85|Kimtron ABM 85, + OTbs, am, bw, msgr, + cols#80, it#8, lines#24, xmc#1, + cbt=\EI, clear=\E*, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\Ey, el=\Et, ht=^I, + if=/usr/share/tabset/stdcrt, il1=\EE, + is2=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq, kbs=^H, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rmir=\Er, rmso=\Ek, + rmul=\Em, smir=\EQ, smso=\Ej, smul=\El, +# Kimtron ABM 85H added by Dual Systems. +# Some notes about the abm85h entries: +# 1) there are several firmware revs of 85H in the world. Use abm85h-old for +# firmware revs prior to SP51 +# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the +# abm85e entry if it is in tvi920 emulation mode. They are incompatible +# in some places and NOT software settable i.e., <is2> can't fix it) +# 3) In 85h mode, the arrow keys and special functions transmit when +# the terminal is in dup-edit, and work only locally in local-edit. +# Vi won't swallow `del char' for instance, but <smcup> turns on +# dup-edit anyway so that the arrow keys will work right. If the +# arrow keys don't work the way you like, change <smcup>, <rmcup>, and +# <is2>. Note that 920E mode does not have software commands to toggle +# between dup and local edit, so you get whatever was set last on the +# terminal. +# 4) <flash> attribute is nice, but seems too slow to work correctly +# (\Eb<pad>\Ed) +# 5) Make sure `hidden' attributes are selected. If `embedded' attributes +# are selected, the <xmc@> entry should be removed. +# 6) auto new-line should be on (selectable from setup mode only) +# +# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985 +abm85h|Kimtron ABM 85H native mode, + hs, + xmc@, + bel=^G, cnorm=\E.4, cvvis=\E.2, dim=\E), dsl=\Ee, flash@, + fsl=^M, invis@, + is2=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El, + kcud1=^V, sgr0=\E(\EG0, smir=\EZ, tsl=\Eg\Ef, use=adm+sgr, + use=abm85, +abm85e|Kimtron ABM 85H in 920E mode, + xmc@, + bel=^G, dim=\E), flash@, + is2=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em, + rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, +abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev., + xmc@, + bel=^G, dim=\E), + is2=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF, + rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, +# From: <malman@bbn-vax.arpa> +# (kt7: removed obsolete :ma=^V^J^L :" -- esr) +kt7|kimtron model kt-7, + OTbs, am, + cols#80, it#8, lines#24, + cbt=\EI, clear=^Z, cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, + if=/usr/share/tabset/stdcrt, il1=\EE, invis@, is2=\El\E", + kbs=^H, kcbt=\EI, kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, + kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, + kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, tsl=\Ef, use=adm+sgr, +# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the +# other kt7 entry and the adjacent key capabilities). Removed EE which is +# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight +# but we can't figure out what. +kt7ix|kimtron model kt-7 or 70 in IX mode, + am, bw, + cols#80, it#8, lines#25, + acsc=jYk?lZm@nEqDt4uCvAwBx3, bel=^G, blink=\EG2, cbt=\EI, + civis=\E.0, clear=\E*, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, + cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, fsl=^M, + home=^^, ht=^I, ich1=\EQ, il1=\EE, ind=^J, + is2=\EG0\E s\017\E~, kbs=^H, kcbt=\EI, kclr=\E*, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\ER, + ked=\EY, kel=\ET, kend=\EY, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, knp=\EJ, + nel=^M^J, pulse=\EK, rmacs=\E%%, rmir=, rmso=\EG0, rmul=\EG0, + sgr0=\EG0, smacs=\E$, smir=, smso=\EG4, smul=\EG8, tsl=\Ef, + +#### Microdata/MDIS +# +# This was a line of terminals made by McDonnell-Douglas Information Systems. +# These entries come direct from MDIS documentation. I have edited them only +# to move primary names of the form p[0-9] * to aliases, and to comment out +# <rmacs>/<smacs> in a couple of entries without <acsc> strings. I have +# also removed the change history; the last version indicates this is +# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989). +# + +# McDonnell Information Systems Terminal Family History +# ========================================= +# +# Prism-1, Prism-2 and P99: +# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25. +# +# Prism-4 and Prism-5: +# Slightly less ancient range of Microdata terminals. Follow-on from +# Prism-2, but with many enhancements. P5 has eight display pages. +# +# Prism-6: +# A special terminal for use with library systems, primarily in Germany. +# Limited numbers. Similar functionality to P5 (except attributes?). +# +# Prism-7, Prism-8 and Prism-9: +# More recent range of MDIS terminals, in which P7 and P8 +# replace the P4 & P5, with added functionality, and P9 is the flagship. +# The P9 has two emulation modes - P8 and ANSI - and includes a +# large number of the DEC VT220 control sequences. Both +# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats. +# +# Prism-12 and Prism-14: +# Latest range, functionally very similar to the P9. The P14 has a +# black-on-white overscanning screen. +# +# The terminfo definitions given here are: +# +# p2 - Prism-2 (or Prism-1 or P99). +# +# p4 - Prism-4 (and older P7s & P8s). +# p5 - Prism-5 (or Prism-6). +# +# p7 - Prism-7. +# p8 - Prism-8 (in national or multinational mode). +# p8-w - 132 column version of p8. +# p9 - Prism-9 in ANSI mode. +# p9-w - 132 column version of p9. +# p9-8 - Prism-9 in Prism-8 emulation mode. +# p9-8-w - As p9-8, but with 132 columns. +# +# p12 - Prism-12 in ANSI mode. +# p12-w - 132 column version of p12. +# p12-m - Prism-12 in MDC emulation mode. +# p12-m-w - As p12-m, but with 132 columns. +# p14 - Prism-14 in ANSI mode. +# p14-w - 132 column version of p14. +# p14-m - Prism-14 in MDC emulation mode. +# p14-m-w - As p14-m, but with 132 columns. +# +# p2: Prism-2 +# ----------- +# +# Includes Prism-1 and basic P99 without SP or MP loaded. +# The simplest form of Prism-type terminal. +# Basic cursor movement and clearing operations only. +# No video attributes. +# Notes: +# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next +# value up, followed by backspace. +# +prism2|MDC Prism-2, + am, bw, msgr, + cols#80, lines#24, + bel=^G, clear=\014$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=^F, + cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, + cuu1=^Z, ed=\EJ, el=\EK, home=^A, + hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, + ind=^J, kbs=^H, khome=^A, vpa=\013%p1%{32}%+%c, + +# p4: Prism-4 +# ----------- +# +# Includes early versions of P7 & P8. +# Basic family definition for most Prisms (except P2 and P9 ANSI). +# Notes: +# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next +# value up, followed by backspace. +# Cursor key definitions removed because they interfere with vi and csh keys. +# +prism4|p4|P4|MDC Prism-4, + am, bw, hs, mc5i, msgr, + cols#80, lines#24, wsl#72, xmc#1, + bel=^G, blink=^CB, civis=^]\344, clear=\014$<20>, + cnorm=^]\342, cr=^M, cub1=^H, cud1=^J, cuf1=^F, + cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, + cuu1=^Z, dim=^CA, dsl=\035\343\035\345, ed=\EJ, el=\EK, + fsl=^]\345, home=^A, + hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, + ind=^J, invis=^CH, kbs=^H, khome=^A, mc0=\EU, mc4=\ET, mc5=\ER, + rev=^CD, rmso=^C\s, rmul=^C\s, + sgr=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;, + sgr0=^C\s, smso=^CD, smul=^CP, tsl=^]\343, + vpa=\013%p1%{32}%+%c, + +# p5: Prism-5 +# ----------- +# +# Same definition as p4. Includes Prism-6 (not tested!). +# Does not use any multi-page features. +# +prism5|p5|P5|MDC Prism-5, + use=p4, + +# p7: Prism-7 +# ----------- +# +# Similar definition to p4. Uses ANSI cursor motion to avoid network problems. +# Notes: +# Use p4 for very early models of P7. +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# +prism7|p7|P7|MDC Prism-7, + cup=\E[%i%p1%d;%p2%dH, hpa@, vpa@, use=p4, + +# p8: Prism-8 +# ----------- +# +# Similar definition to p7. Uses ANSI cursor motion to avoid network problems. +# Supports national and multinational character sets. +# Notes: +# Alternate char set operations only work in multinational mode. +# Use p4 for very early models of P8. +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) +# +prism8|p8|P8|MDC Prism-8, + cup=\E[%i%p1%d;%p2%dH, hpa=\E[%i%p1%d`, is2=\E[<12h, + vpa=\E[%i%p1%dd, use=p4, + +# p8-w: Prism-8 in 132 column mode +# -------------------------------- +# +# 'Wide' version of p8. +# Notes: +# Rev-index removed; can't send nulls to terminal in 8-bit modes. +# +prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode, + cols#132, + is2=\E[<12h\E[<14h, use=p8, + +# p9: Prism-9 in ANSI mode +# ------------------------- +# +# The "flagship" model of this generation of terminals. +# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones. +# Notes: +# Tabs only reset by "reset". Otherwise assumes default (8 cols). +# Fixes to deal with terminal firmware bugs: +# . 'ri' uses insert-line since rev index doesn't always +# . 'sgr0' has extra '0' since esc[m fails +# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25 +# Not covered in the current definition: +# . Labels +# . Programming Fn keys +# . Graphic characters (defaults correctly to vt100) +# . Padding values (sets xon) +# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) +# +prism9|p9|P9|MDC Prism-9 in ANSII mode, + am, bw, hs, mc5i, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, wsl#72, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[<4l, + clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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, + dl=\E[%p1%dM, dl1=\E[M, dsl=\E[%}\024, ech=\E[%p1%dX, + ed=\E[J$<10>, el=\E[K, fsl=^T, home=\E[H, hpa=\E[%i%p1%d`, + ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, + is2=\E[&p\E[<12l\E F, kbs=^H, kclr=^L, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[11~, + 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~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + khome=\E[H, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, + prot=\E[32%{, rc=\E[%z, rep=\E[%p2%db%p1%c, rev=\E[7m, + ri=\E[L, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, + rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N, + sc=\E[%y, + sgr=\E[%{0}%?%p1%p3%|%t%{7}%+%;%?%p2%t%{2}%+%;%?%p4%t%{5}%+%;%?%p6%t%{1}%+%;m%?%p8%t\E[%{32}%+%d%%{%;%?%p9%t\016%e\017%;, + sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd, + +# p9-w: Prism-9 in 132 column mode +# -------------------------------- +# +# 'Wide' version of p9. +# +prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode, + cols#132, + is2=\E[&p\E[<12l\E F\E[<14h, + rs2=\E[&p\E[<12l\E F\E[<14h, use=p9, + +# p9-8: Prism-9 in P8 mode +# ------------------------ +# +# P9 terminal in P8 emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode, + dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8, + +# p9-8-w: Prism-9 in P8 and 132 column modes +# ------------------------------------------ +# +# P9 terminal in P8 emulation mode and 132 column mode. +# +prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode, + dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8-w, + +# p12: Prism-12 in ANSI mode +# --------------------------- +# +# See p9 definition. +# +prism12|p12|P12|MDC Prism-12 in ANSI mode, + use=p9, + +# p12-w: Prism-12 in 132 column mode +# ---------------------------------- +# +# 'Wide' version of p12. +# +prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode, + use=p9-w, + +# p12-m: Prism-12 in MDC emulation mode +# ------------------------------------- +# +# P12 terminal in MDC emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode, + use=p9-8, + +# p12-m-w: Prism-12 in MDC emulation and 132 column modes +# ------------------------------------------------------- +# +# P12 terminal in MDC emulation mode and 132 column mode. +# +prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode, + use=p9-8-w, + +# p14: Prism-14 in ANSII mode +# --------------------------- +# +# See p9 definition. +# +prism14|p14|P14|MDC Prism-14 in ANSII mode, + use=p9, + +# p14-w: Prism-14 in 132 column mode +# ---------------------------------- +# +# 'Wide' version of p14. +# +prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode, + use=p9-w, + +# p14-m: Prism-14 in MDC emulation mode +# ------------------------------------- +# +# P14 terminal in MDC emulation mode. +# Similar to p8 definition. +# Insertion and deletion operations possible. +# +prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode, + use=p9-8, + +# p14-m-w: Prism-14 in MDC emulation and 132 column modes +# ------------------------------------------------------- +# +# P14 terminal in MDC emulation mode and 132 column mode. +# +prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode, + use=p9-8-w, + +# End of McDonnell Information Systems Prism definitions + +# These things were popular in the Pick database community at one time +# From: George Land <georgeland@aol.com> 24 Sep 1996 +p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition, + am, bw, hs, mir, + cols#80, lines#24, ma#1, wsl#78, xmc#1, + bel=^G, blink=^CB, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, + cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, dch1=\s^H, dim=^CA, dl1=^P, + ed=\EJ, el=\EK, home=^A, ind=^J, invis=^CH, kbs=^H, kcub1=^U, + kcud1=^J, kcuf1=^F, kcuu1=^Z, kdch1=\s^H, kdl1=^P, ked=\EJ, + kel=\EK, kf1=^A@\r, kf10=^AI\r, kf12=^AJ\r, kf13=^AK\r, + kf14=^AL\r, kf15=^AM\r, kf16=^AN\r, kf17=^AO\r, kf2=^AA\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^A, lf1=F1, lf10=F10, lf2=F2, + lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, lf9=F9, nel=^J^M, + pad=\0, rev=^CD, rmso=^C\s, rmul=^C\s, sgr0=^C\s, smso=^CE, + smul=^C0, + +#### Microterm (act, mime) +# +# The mime1 entries refer to the Microterm Mime I or Mime II. +# The default mime is assumed to be in enhanced act iv mode. +# + +# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents +# freakout with out-of-range args on Sytek multiplexors. No <smso=^N> and +# <rmso=^N> since it gets confused and it's too dim anyway. No <ich1> +# since Sytek insists ^S means xoff. +# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr) +act4|microterm|microterm act iv, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\014$<12/>, cr=^M, cub1=^H, cud1=^K, cuf1=^X, + cup=\024%p1%{24}%+%c%p2%p2%?%{47}%>%t%{48}%+%;%{80}%+%c, + cuu1=^Z, dch1=\004$<.1*/>, dl1=\027$<2.3*/>, + ed=\037$<2.2*/>, el=\036$<.1*/>, home=^], + il1=\001<2.3*/>, ind=^J, kcub1=^H, kcud1=^K, kcuf1=^X, + kcuu1=^Z, +# The padding on :sr: and :ta: for act5 and mime is a guess and not final. +# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)... +# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr) +act5|microterm5|microterm act v, + kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA, + use=act4, +# Mimes using brightness for standout. Half bright is really dim unless +# you turn up the brightness so far that lines show up on the screen. +mime-fb|full bright mime1, + is2=^S\E, rmso=^S, smso=^Y, use=mime, +mime-hb|half bright mime1, + is2=^Y\E, rmso=^Y, smso=^S, use=mime, +# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode +# the more plausible ":do=^J:" -- esr) +# uc was at one time disabled to get around a curses bug, be wary of it +mime|mime1|mime2|mimei|mimeii|microterm mime1, + OTbs, am, + cols#80, it#8, lines#24, vt#9, + bel=^G, clear=^]^C, cr=^M, cub1=^H, cud1=^J, cuf1=^X, + cup=\024%p1%{24}%+%c%p2%p2%?%{32}%>%t%{48}%+%;%{80}%+%c, + cuu1=^Z, dl1=\027$<80>, ed=^_, el=^^, home=^], ht=\011$<2>, + il1=\001$<80>, ind=^J, is2=^S\E^Q, kcub1=^H, kcud1=^K, + kcuf1=^X, kcuu1=^Z, ri=\022$<3>, uc=^U, +# These termcaps (for mime2a) put the terminal in low intensity mode +# since high intensity mode is so obnoxious. +mime2a-s|microterm mime2a (emulating an enhanced soroc iq120), + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EI, dch1=\ED, + dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^, + il1=\001$<20*>, ind=^J, ip=$<2>, is2=\E), kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7, + smir=\EE, smso=\E\:, smul=\E6, +# This is the preferred mode (but ^X can't be used as a kill character) +mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52), + OTbs, + cols#80, it#8, lines#24, + bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=^N, + dl1=\027$<20*>, ed=\EQ$<20*>, el=\EP, home=\EH, ht=^I, + il1=\001$<20*>, ind=^J, ip=$<2>, is2=^Y, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EA, rmir=^Z, rmso=\E9, + rmul=\E5, smir=^O, smso=\E8, smul=\E4, +# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr) +mime3a|mime1 emulating 3a, + am@, + kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a, +mime3ax|mime-3ax|mime1 emulating enhanced 3a, + it#8, + dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>, + use=mime3a, +# Wed Mar 9 18:53:21 1983 +# We run our terminals at 2400 baud, so there might be some timing problems at +# higher speeds. The major improvements in this model are the terminal now +# scrolls down and insert mode works without redrawing the rest of the line +# to the right of the cursor. This is done with a bit of a kludge using the +# exit graphics mode to get out of insert, but it does not appear to hurt +# anything when using vi at least. If you have some users using act4s with +# programs that use curses and graphics mode this could be a problem. +mime314|mm314|mime 314, + am, + cols#80, lines#24, + clear=^L, cub1=^H, cuf1=^X, cup=\024%p1%c%p2%c, cuu1=^Z, + dch1=^D, dl1=^W, ed=^_, el=^^, home=^], ht=^I, il1=^A, kcub1=^H, + kcud1=^K, kcuf1=^X, kcuu1=^Z, rmir=^V, smir=^S, +# Microterm mime 340 from University of Wisconsin +mm340|mime340|mime 340, + cols#80, lines#24, + clear=\032$<12/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\E#$<2.1*/>, dl1=\EV$<49.6/>, ed=\037$<2*/>, + el=\EL$<2.1/>, ht=^I, il1=\EU$<46/>, ind=^J, is2=\E\,, + kbs=^H, kcub1=^H, kcud1=^J, kcuu1=^K, nel=^M^J, +# This came from University of Wisconsin marked "astro termcap for jooss". +# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:"; +# also added <rmam>/<smam> based on the init string -- esr) +mt4520-rv|micro-term 4520 reverse video, + am, hs, msgr, xenl, xon, + cols#80, it#8, lines#24, wsl#80, + bel=^G, clear=\E[H\E[J, cnorm=\E[0V\E8, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + 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, + cvvis=\E7\E[0U, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l$<200/>\E[?5h, + fsl=\E[?5l\E[?5h, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, + ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\ED, + is2=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, + ll=\E[24;1H, nel=\EE, rc=\E8, rf=/usr/share/tabset/vt100, + ri=\EM, rmam=\E[?7l, rmso=\E[0m, rmul=\E[24m, + rs1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J, + sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, + tbc=\E[g, tsl=\E[25;1H, + +# Fri Aug 5 08:11:57 1983 +# This entry works for the ergo 4000 with the following setups: +# ansi,wraparound,newline disabled, xon/xoff disabled in both +# setup a & c. +# +# WARNING!!! There are multiple versions of ERGO 4000 microcode +# Be advised that very early versions DO NOT WORK RIGHT !! +# Microterm does have a ROM exchange program- use it or lose big +# (ergo400: added <rmam>/<smam> based on the init string -- esr) +ergo4000|microterm ergo 4000, + da, db, msgr, + cols#80, lines#66, + bel=^G, clear=\E[H\E[2J$<80>, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + dch1=\E[1P$<80>, dl1=\E[1M$<5*>, ed=\E[0J$<15>, + el=\E[0K$<13>, ht=^I, il1=\E[1L$<5*>, ind=\ED$<20*>, + is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=pf1, lf2=pf2, lf3=pf3, + lf4=pf4, ri=\EM$<20*>, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E=$<4>, rmso=\E[m$<20>, sgr0=\E[m$<20>, + smam=\E[?7m, smir=\E[4h$<6>, smkx=\E=$<4>, + smso=\E[7m$<20>, + +#### NCR +# +# NCR's terminal group was merged with AT&T's when AT&T bought the company. +# For what happened to that group, see the ADDS section. +# +# There is an NCR4103 terminal that's just a re-badged Wyse-50. +# + +# The following vendor-supplied termcaps were captured from the Boundless +# Technologies site, 8 March 1998. I removed all-upper-case names that were +# identical, except for case, to lower-case ones. I also uncommented the acsc +# capabilities.X +# +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, + colors#8, pairs#64, + op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + use=ncr260vt300an, +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, + colors#8, pairs#64, + op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + use=ncr260vt300wan, +# The Intecolor emulation of the NCR 2900/260C color terminal is basically a +# DEC vt200/300 with color capabilities added. +ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard, + colors#8, pairs#64, + op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + use=ncr260vt300pp, +# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a +# DEC vt200/300 with color capabilities added. +ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode, + colors#8, pairs#64, + op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + use=ncr260vt300wpp, +# This definition for ViewPoint supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +ncr260vppp|NCR 2900_260 viewpoint, + am, bw, hs, km, mc5i, mir, msgr, xon, + cols#80, lines#24, nlab#32, xmc#1, + acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, + cbt=\EI, civis=\E`0, clear=\014$<40>, cnorm=\E`5, + cr=\r$<2>, cub1=\010$<2>, cud1=\n$<2>, cuf1=\006$<2>, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5>, cuu1=\032$<2>, + dch1=\EW$<2>, dim=\EGp, dl1=\El$<2>, dsl=\E`c, ed=\Ek$<2>, + el=\EK$<2>, fsl=^M, home=\036$<2>, ht=^I, hts=\E1, + il1=\EM$<2>, ind=\n$<2>, invis=\EG1, + is2=\Ee6\E~%$<100>\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, + kDC=\El, kEND=\Ek, kHOM=^A, kPRT=\E7, kRIT=^F, ka1=^A, ka3=\EJ, + kbs=^H, kc1=\ET, kc3=\EJ, kcub1=^U, kcud1=^J, kcuf1=^F, + kcuu1=^Z, kdch1=\EW, kend=\EK, kf1=^B1\r, kf10=^B\:\r, + kf11=^B;\r, kf12=^B<\r, kf13=^B=\r, kf14=^B>\r, kf15=^B?\r, + kf16=^B@\r, kf17=^B!\r, kf18=^B"\r, kf19=^B#\r, kf2=^B2\r, + kf20=^B$\r, kf21=\002%^M, kf22=^B&\r, kf23=^B'\r, + kf24=^B(\r, kf25=^B)\r, kf26=^B*\r, kf27=^B+\r, + kf28=^B\,\r, kf29=^B-\r, kf3=^B3\r, kf30=^B.\r, kf31=^B/\r, + kf32=^B0\r, kf4=^B4\r, kf5=^B5\r, kf6=^B6\r, kf7=^B7\r, + kf8=^B8\r, kf9=^B9\r, khome=^A, kich1=\Eq, knp=\EJ, kpp=\EJ, + kprt=\EP, ll=\001$<5>, mc0=\EP$<100>, mc4=^T, mc5=^R, + mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>, + nel=\037$<2>, rev=\EG4, ri=\Ej$<2>, rmacs=\EcB0\EH\003, + rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, + rs2=\Ee6\E~%$<100>\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, + sgr0=\EG0\EH\003, smacs=\EcB1\EH\002, smir=\Eq, + smso=\EG4, smul=\EG8, smxon=\Ec21, tsl=\EF, +ncr260vpwpp|NCR 2900_260 viewpoint wide mode, + cols#132, + cup=\Ea%i%p1%dR%p2%dC$<30>, + is2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, + rs2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, + use=ncr260vppp, +ncr260vt100an|NCR 2900_260 vt100 with ansi kybd, + am, hs, mir, msgr, xenl, xon, + cols#80, lines#24, nlab#32, + acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<5>, + cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, + cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, + cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, + dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, + ech=\E[%p1%dX, ed=\E[0J$<5>, el=\E[0K$<3>, el1=\E[1K$<3>, + fsl=\E[0$}, home=\E[H$<1>, hpa=\E[%p1%dG$<40>, ht=^I, + hts=\EH, ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, + il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>, + invis=\E[8m, + is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, + knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>, + rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m, + rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, + sgr0=\E[0m\017$<20>, smacs=^N, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[1;7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+keypad, +ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + use=ncr260vt100an, +ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd, + is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, + kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~, + lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, + rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + smkx=\E=, use=ncr260vt100an, +ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + use=ncr260vt100pp, +ncr260vt200an|NCR 2900_260 vt200 with ansi kybd, + am, hs, mir, msgr, xenl, xon, + cols#80, lines#24, nlab#32, + acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, + csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, + cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, + cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, + cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, + dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, + ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, + fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, + ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, + ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, + is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kf0=\EOy, 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=\EOQ, kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, + kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, + kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, + kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, + kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, + kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, + mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, + ri=\EM$<5>, rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, + rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, + sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, + smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, + use=vt220+keypad, +ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, + use=ncr260vt200an, +ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd, + ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, + kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, + use=ncr260vt200an, +ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + use=ncr260vt200pp, +ncr260vt300an|NCR 2900_260 vt300 with ansi kybd, + am, hs, mir, msgr, xenl, xon, + cols#80, lines#24, nlab#32, + acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, + csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, + cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, + cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, + cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, + cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, + dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, + ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, + fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, + ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, + ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, + is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kdch1=\E[3~, kf0=\EOy, 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~, + kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, + kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, + kf28=\E[3~, kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, + kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, + kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, + khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + krdo=\E[29~, kslt=\E[4~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, + nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>, + rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, + rmul=\E[24m, + rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, + sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, + smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, + use=vt220+keypad, +ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, + use=ncr260vt300an, +ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd, + ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, + kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, + use=ncr260vt300an, +NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd, + cols#132, + cup=\E[%i%p1%d;%p2%dH$<30>, + is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, + use=ncr260vt300pp, +# This terminfo file contains color capabilities for the Wyse325 emulation of +# the NCR 2900/260C color terminal. Because of the structure of the command +# (escape sequence) used to set color attributes, one of the fore/background +# colors must be preset to a given value. I have set the background color to +# black. The user can change this setup by altering the last section of the +# 'setf' definition. The escape sequence to set color attributes is +# ESC d y <foreground_color> <background_color> 1 +# In addition, the background color can be changed through the desk accessories. +# The capablitiy 'op' sets colors to green on black (default combination). +# +# NOTE: The NCR Unix System Administrator's Shell will not function properly +# if the 'pairs' capability is defined. Un-Comment the 'pairs' +# capability and recompile if you wish to have it included. +# +ncr260wy325pp|NCR 2900_260 wyse 325, + am, bw, hs, km, mc5i, mir, msgr, xon, + colors#16, cols#80, lines#24, ncv#33, nlab#32, + acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, + cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=^M, + cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, + cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, + ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<5>, ht=^I, + hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, + is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ, + kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kend=\ET, + kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, + kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, + kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, + kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, + kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, kf30=^Am\r, kf31=^An\r, + kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, + kprt=\EP, mc0=\EP, mc4=^T, mc5=^R, + mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>, + nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, + rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, + rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + setb=\s, + setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{64}%e%p1%{8}%=%t%{57}%e%p1%{9}%=%t%{58}%e%p1%{10}%=%t%{59}%e%p1%{11}%=%t%{60}%e%p1%{12}%=%t%{61}%e%p1%{13}%=%t%{62}%e%p1%{14}%=%t%{63}%e%p1%{15}%=%t%{56}%;\Edy%c11$<100>, + sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH\002\EcB1, smam=\Ed/, + smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0, + tsl=\EF, +ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode, + cols#132, + cup=\Ea%i%p1%dR%p2%dC$<30>, + is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + use=ncr260wy325pp, +# This definition for Wyse 350 supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +# In addition, color capabilities have been added to this file. The drawback, +# however, is that the background color has to be black. The foreground colors +# are numbered 0 through 15. +# +# NOTE: The NCR Unix System Administrator's Shell does not function properly +# with the 'pairs' capability defined as below. If you wish to +# have it included, Un-comment it and recompile (using 'tic'). +# +ncr260wy350pp|NCR 2900_260 wyse 350, + am, bw, hs, km, mc5i, mir, msgr, xon, + colors#16, cols#80, lines#24, ncv#33, nlab#32, pairs#16, xmc#1, + acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, + cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, + cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<40>, cuu1=\013$<5>, + cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, + ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<10>, ht=^I, + hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, + is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H, + kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, + kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, + kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, + kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, + kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, + kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, + khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, + mc0=\EP$<10>, mc4=^T, mc5=^R, + mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<20>, + nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, + rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, + rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + setb=\s, + setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{102}%e%p1%{8}%=%t%{97}%e%p1%{9}%=%t%{98}%e%p1%{10}%=%t%{99}%e%p1%{11}%=%t%{101}%e%p1%{12}%=%t%{106}%e%p1%{13}%=%t%{110}%e%p1%{14}%=%t%{111}%e%p1%{15}%=%t%{56}%;\Em0%c$<100>, + sgr0=\EG0\EH\003\EcD, smacs=\EH\002\EcB1, smam=\Ed/, + smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0, + tsl=\EF, +ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode, + cols#132, + cup=\Ea%i%p1%dR%p2%dC$<30>, + is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, + rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, + use=ncr260wy350pp, +# This definition for Wyse 50+ supports several attributes. This means +# that it has magic cookies (extra spaces where the attributes begin). +# Some applications do not function well with magic cookies. The System +# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. +# If supporting various attributes is not vital, 'xmc#1' and the extra +# attributes can be removed. +# Mapping to ASCII character set ('acsc' capability) can also be +# restored if needed. +# (ncr260wy50+pp: originally contained commented-out +# <acsc=j5k3l2m1n8q:t4u9v=w0x6>, as well as the commented-out one there -- esr) +ncr260wy50+pp|NCR 2900_260 wyse 50+, + am, bw, hs, km, mc5i, mir, msgr, xon, + cols#80, lines#24, nlab#32, xmc#1, + acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, + cbt=\EI$<5>, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, + cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>, + cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, + ed=\EY$<5>, el=\ET$<5>, fsl=^M, home=\036$<10>, + ht=\011$<5>, hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>, + invis=\EG1, + is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H, + kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, + kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, + kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, + kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, + kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, + kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, + khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, + mc0=\EP$<10>, mc4=^T, mc5=^R, + mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>, + nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed., + rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, + rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + sgr0=\EG0\EH\003$<15>, smacs=\EH^B, smam=\Ed/, smir=\Eq, + smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<5>, tsl=\EF, +ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode, + cols#132, + cup=\Ea%i%p1%dR%p2%dC$<30>, + is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, + rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, + use=ncr260wy50+pp, +ncr260wy60pp|NCR 2900_260 wyse 60, + am, bw, hs, km, mc5i, mir, msgr, xon, + cols#80, lines#24, nlab#32, + acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, + cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1, + cr=^M, cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, + cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, + ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<25>, + ht=\011$<15>, hts=\E1$<15>, il1=\EE$<5>, ind=\n$<5>, + invis=\EG1, + is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ, + kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, + kcbt=\EI$<15>, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, + kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, + kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, + kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, + kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, + kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, mc0=\EP, mc4=^T, mc5=^R, + mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>, + nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed., + rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, + rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH^B, smam=\Ed/, + smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<15>, + tsl=\EF, +ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode, + cols#132, + cup=\Ea%i%p1%dR%p2%dC$<30>, + is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, + use=ncr260wy60pp, +ncr160vppp|NCR 2900_160 viewpoint, + use=ncr260vppp, +ncr160vpwpp|NCR 2900_160 viewpoint wide mode, + use=ncr260vpwpp, +ncr160vt100an|NCR 2900_160 vt100 with ansi kybd, + use=ncr260vt100an, +ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd, + use=ncr260vt100pp, +ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd, + use=ncr260vt100wan, +ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd, + use=ncr260vt100wpp, +ncr160vt200an|NCR 2900_160 vt200 with ansi kybd, + use=ncr260vt200an, +ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd, + use=ncr260vt200pp, +ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd, + use=ncr260vt200wan, +ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd, + use=ncr260vt200wpp, +ncr160vt300an|NCR 2900_160 vt300 with ansi kybd, + use=ncr260vt300an, +ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd, + use=ncr260vt300pp, +ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd, + use=ncr260vt300wan, +ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd, + use=ncr260vt300wpp, +ncr160wy50+pp|NCR 2900_160 wyse 50+, + use=ncr260wy50+pp, +ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode, + use=ncr260wy50+wpp, +ncr160wy60pp|NCR 2900_160 wyse 60, + use=ncr260wy60pp, +ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode, + use=ncr260wy60wpp, +ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal, + am, hs, mc5i, mir, msgr, xon, + cols#80, it#8, lines#24, nlab#32, + acsc=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~, + bel=^G, blink=\E[5m$<30>, bold=\E[1m$<30>, + clear=\E[2J\E[1;1H$<300>, cr=^M, + csr=\E[%i%p1%d;%p2%dr$<100>, cub=\E[%p1%dD$<30>, + cub1=\E[D$<2>, cud=\E[%p1%dB$<30>, cud1=\E[B$<2>, + cuf=\E[%p1%dC$<30>, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<100>, cuu=\E[%p1%dA$<30>, + cuu1=\E[A$<2>, dch=\E[%p1%dP$<40>, dch1=\E[1P$<10>, + dl=\E[%p1%dM$<70>, dl1=\E[M$<40>, dsl=\E[31l$<25>, + ed=\E[0J$<300>, el=\E[0K$<30>, el1=\E[1K$<30>, + enacs=\E(B\E)0$<40>, fsl=1$<10>, home=\E[H$<2>$<80>, + ht=^I, hts=\EH, il=\E[%p1%dL$<80>, il1=\E[B\E[L$<80>, + ind=\ED, + is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0$<200>, + kLFT=\E[D, kRIT=\E[C, ka1=\E[H, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kent=^M, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, mc0=\E[i$<100>, nel=\EE, + rc=\E8, rev=\E[7m$<30>, ri=\EM$<50>, rmacs=\017$<90>, + rmir=\E[4l$<80>, rmso=\E[0m$<30>, rmul=\E[0m$<30>, + rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, + sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>, + sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>, + smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>, + tsl=\E[>+1$<70>, +ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal, + cols#132, + is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0$<200>, + rs2=\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, + use=ncrvt100an, +# +# Vendor-supplied NCR termcaps end here + +# NCR7900 DIP switches: +# +# Switch A: +# 1-4 - Baud Rate +# 5 - Parity (Odd/Even) +# 6 - Don't Send or Do Send Spaces +# 7 - Parity Enable +# 8 - Stop Bits (One/Two) +# +# Switch B: +# 1 - Upper/Lower Shift +# 2 - Typewriter Shift +# 3 - Half Duplex / Full Duplex +# 4 - Light/Dark Background +# 5-6 - Carriage Return Without / With Line Feed +# 7 - Extended Mode +# 8 - Suppress Keyboard Display +# +# Switch C: +# 1 - End of line entry disabled/enabled +# 2 - Conversational mode / (Local?) Mode +# 3 - Control characters displayed / not displayed +# 4 - (2-wire?) / 4-wire communications +# 5 - RTS on and off for each character +# 6 - (50Hz?) / 60 Hz +# 7 - Exit after level zero diagnostics +# 8 - RS-232 interface +# +# Switch D: +# 1 - Reverse Channel (yes / no) +# 2 - Manual answer (no / yes) +# 3-4 - Cursor appearance +# 5 - Communication Rate +# 6 - Enable / Disable EXT turnoff +# 7 - Enable / Disable CR turnoff +# 8 - Enable / Disable backspace +# +# Since each attribute parameter is 0 or 1, we shift each attribute (standout, +# reverse, blink, dim, and underline) the appropriate number of bits (by +# multiplying the 0 or 1 by a correct factor to shift) so the bias character, +# '@' is (effectively) "or"ed with each attribute to generate the proper third +# character in the <ESC>0 sequence. The <sgr> string implements the following +# equation: +# +# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) => +# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17)) +# +# Where: P1 <==> Standout attribute parameter +# P2 <==> Underline attribute parameter +# P3 <==> Reverse attribute parameter +# P4 <==> Blink attribute parameter +# P5 <==> Dim attribute parameter +# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO. +ncr7900i|ncr7900|ncr 7900 model 1, + am, bw, ul, + cols#80, lines#24, xmc#1, + bel=^G, blink=\E0B, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, + cup=\E1%p2%c%p1%c, cuu1=^Z, dim=\E0A, ed=\Ek, el=\EK, ind=^J, + is2=\E0@\010\E3\E4\E7, kcub1=^U, kcud1=^J, kcuf1=^F, + kcuu1=^Z, khome=^A, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=\E0@, + rmul=\E0@, + sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c, + sgr0=\E0@, smso=\E0Q, smul=\E0`, +ncr7900iv|ncr 7900 model 4, + am, bw, eslok, hs, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, + cup=\013%p1%{64}%+%c\E\005%p2%02d, dl1=\E^O, dsl=\Ey1, + fsl=\Ek\Ey5, home=\013@\E^E00, il1=\E^N, ind=^J, kbs=^H, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\ES, kf2=\ET, + kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, + khome=\EH, lf6=blue, lf7=red, lf8=white, nel=^M^J, + tsl=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo, +# Warning: This terminal will lock out the keyboard when it receives a CTRL-D. +# The user can enter a CTRL-B to get out of this locked state. +# In <hpa>, we want to output the character given by the formula: +# ((col / 10) * 16) + (col % 10) where "col" is "p1" +ncr7901|ncr 7901 model, + am, bw, ul, + cols#80, lines#24, + bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=^M, + cub1=^H, cud1=^J, cuf1=^F, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dim=\E0A, + ed=\Ek, el=\EK, + hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, ind=^J, + is2=\E4^O, kclr=^L, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, + khome=^H, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=^O, rmul=^O, + sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016, + sgr0=^O, smso=\E0Q\016, smul=\E0`\016, + vpa=\013%p1%{64}%+%c, + +# Newbury Data Recording Limited (Newbury Data) +# +# Have been manufacturing and reselling various peripherals for a long time +# They don't make terminals anymore, but are still in business (in 2007). +# Their e-mail address is at ndsales@newburydata.co.uk +# and their post address is: +# +# Newbury Data Recording Ltd, +# Premier Park, Road One, +# Winsford, Cheshire, CW7 3PT +# +# Their technical support is still good, they sent me for free a printed copy +# of the 9500 user manual and I got it just 1 week after I first contacted them +# (in 2005)! + +# NDR 9500 +# Manufactured in the early/mid eighties, behaves almost the same as a +# Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but +# keep the same keyboard layout), add an optional 25-line mode, replace the DIP +# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC ! +# 2), here is the NDR 9500. Even the line-lock, albeit disabled, is +# recognized: if you type in "ESC !", the next (third) character is not +# echoed, showing that the terminal was actually waiting for a parameter! +ndr9500|nd9500|Newbury Data 9500, + am, bw, hs, mc5i, mir, msgr, ul, xon, + cols#80, lines#24, wsl#79, + acsc=jDkClBmAnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, civis=\E.0, + clear=\E;, cnorm=\E.1, cr=^M, cub1=^H, cud1=^V, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dim=\E), dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, + flash=\Eb$<50/>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, + ich1=\EQ, il1=\EE, ind=^J, is2=\Ew\E'\EDF\El\Er\EO, + kDC=\Er, kDL=\EO, kEOL=\Et, kIC=\Eq, kcbt=\EI, kclr=^Z, + kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, + ked=\EY, kel=\ET, kent=^M, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, + kf12=^A`\r, kf13=^Aa\r, kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, + kf17=^Ae\r, kf18=^Af\r, kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, + kf21=^Ai\r, kf22=^Aj\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, kprt=\EP, mc4=\Ea, mc5=\E`, nel=^_, + pfloc=\E|%{48}%p1%+%c2%p2\031, + pfx=\E|%{48}%p1%+%c1%p2\031, prot=\E), ri=\Ej, + rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N, + sgr=\E%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;, + sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O, + tbc=\E3, tsl=\Eg\Ef\011%p1%{32}%+%c, .kbs=^H, + +ndr9500-nl|NDR 9500 with no status line, + hs@, + wsl@, + dsl@, fsl@, tsl@, use=ndr9500, + +ndr9500-25|NDR 9500 with 25th line enabled, + lines#25, use=ndr9500, + +ndr9500-25-nl|NDR 9500 with 25 lines and no status line, + lines#25, use=ndr9500-nl, + +ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisible and blink), + msgr@, + xmc#1, + blink=\EG2, invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, + sgr=\E%%\E(%?%p5%p8%|%t\E)%;%?%p9%t\E$%;\EG%{48}%?%p7%t%{1}%+%;%?%p4%t%{2}%+%;%?%p3%p1%|%t%{4}%+%;%?%p2%t%{8}%+%;%c, + sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500, + +ndr9500-25-mc|NDR 500 with 25 lines and magic cookies, + lines#25, use=ndr9500-mc, + +ndr9500-mc-nl|NDR 9500 with magic cookies and no status line, + hs@, + wsl@, + dsl@, fsl@, tsl@, use=ndr9500-mc, + +ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line, + lines#25, use=ndr9500-mc-nl, + +#### Perkin-Elmer (Owl) +# +# These are official terminfo entries from within Perkin-Elmer. +# + +bantam|pe550|pe6100|perkin elmer 550, + OTbs, + cols#80, lines#24, + bel=^G, clear=\EK$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, + el=\EI$<20>, home=\EH, ind=^J, ll=\EH\EA, +fox|pe1100|perkin elmer 1100, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, + cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, + ed=\EJ$<5.5*>, el=\EI, flash=\020\002$<200/>\020\003, + home=\EH, hts=\E1, ind=^J, ll=\EH\EA, tbc=\E3, +owl|pe1200|perkin elmer 1200, + OTbs, am, in, + cols#80, lines#24, + bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, + cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, + dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, + el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, + hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, + kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, + kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, + rmso=\E!\0, sgr0=\E!\0, smso=\E!^H, tbc=\E3, +pe1251|pe6300|pe6312|perkin elmer 1251, + am, + cols#80, it#8, lines#24, pb#300, vt#8, xmc#1, + bel=^G, clear=\EK$<332>, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, + ed=\EJ$<20*>, el=\EI$<10*>, home=\EH, hts=\E1, ind=^J, + kf0=\ERA, kf1=\ERB, kf10=\ERK, kf2=\ERC, kf3=\ERD, kf4=\ERE, + kf5=\ERF, kf6=\ERG, kf7=\ERH, kf8=\ERI, kf9=\ERJ, tbc=\E3, +# (pe7000m: this had +# rmul=\E!\0, smul=\E!\040, +# which is probably wrong, it collides with kf0 +pe7000m|perkin elmer 7000 series monochrome monitor, + am, + cols#80, lines#24, + bel=^G, cbt=\E!Y, clear=\EK, cr=^M, cub1=\ED, cud1=\EB, + cuf1=\EC, cup=\ES%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, + ed=\EJ, el=\EI, home=\EH, ind=^J, + is1=\E!\0\EW 7o\Egf\ES7\s, kbs=^H, kcub1=\E!V, + kcud1=\E!U, kcuf1=\E!W, kcuu1=\E!T, kf0=\E!\0, kf1=\E!^A, + kf10=\E!^J, kf2=\E!^B, kf3=\E!^C, kf4=\E!^D, kf5=\E!^E, + kf6=\E!^F, kf7=\E!^G, kf8=\E!^H, kf9=\E!^I, khome=\E!S, + ll=\ES7\s, ri=\ER, +pe7000c|perkin elmer 7000 series colour monitor, + is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0, + rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m, + +#### Sperry Univac +# +# Sperry Univac has merged with Burroughs to form Unisys. +# + +# This entry is for the Sperry UTS30 terminal running the TTY +# utility under control of CP/M Plus 1R1. The functionality +# provided is comparable to the DEC vt100. +# (uts30: I added <rmam>/<smam> based on the init string -- esr) +uts30|sperry uts30 with cp/m@1R1, + am, bw, hs, + cols#80, lines#24, wsl#40, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=^L, + cnorm=\ES, cr=^M, csr=\EU%p1%{32}%+%c%p2%{32}%+%c, + cub=\E[%p1%dD, cub1=^H, 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=\EM, + dl=\E[%p1%dM, dl1=\EL, ed=\E[J, el=\E[K, fsl=^M, home=\E[H, + ht=^I, ich=\E[%p1%d@, ich1=\EO, il=\E[%p1%dL, il1=\EN, + ind=^J, indn=\E[%p1%dB, is2=\E[U 7\E[24;1H, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H, + rc=\EX, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EI, + rin=\E[%p1%dA, rmacs=\Ed, rmam=\E[?7l, rmso=\E[m, + rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + sc=\EW, sgr0=\E[m, smacs=\EF, smam=\E[?7m, smso=\E[7m, + smul=\E[4m, tsl=\E], uc=\EPB, + +#### Tandem +# +# Tandem builds these things for use with its line of fault-tolerant +# transaction-processing computers. They aren't generally available +# on the merchant market, and so are fairly uncommon. +# + +tandem6510|adm3a repackaged by Tandem, + use=adm3a, + +# A funny series of terminal that TANDEM uses. The actual model numbers +# have a fourth digit after 653 that designates minor variants. These are +# natively block-mode and rather ugly, but they have a character mode which +# this doubtless(?) exploits. There is a 6520 that is slightly dumber. +# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also, +# removed <if=/usr/share/tabset/tandem653>, no such file -- esr) +tandem653|t653x|Tandem 653x multipage terminal, + OTbs, am, da, db, hs, + cols#80, lines#24, wsl#64, xmc#1, + clear=\EI, cub1=^H, cud1=^J, cuf1=\EC, + cup=\023%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dsl=\Eo\r, + ed=\EJ, el=\EK, fsl=^M, home=\EH, ind=\ES, ri=\ET, rmso=\E6\s, + rmul=\E6\s, sgr0=\E6\s, smso=\E6$, smul=\E60, tsl=\Eo, + +#### Tandy/Radio Shack +# +# Tandy has a line of VDTs distinct from its microcomputers. +# + +dmterm|deskmate terminal, + am, bw, + cols#80, lines#24, + bel=^G, civis=\EG5, clear=\Ej, cnorm=\EG6, cr=^M, cub1=^H, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dch1=\ES, dl1=\ER, ed=\EJ, el=\EK, home=\EH, ht=^I, + ich1=\EQ, il1=\EP, ind=\EX, invis@, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kf0=\E1, kf1=\E2, kf2=\E3, kf3=\E4, + kf4=\E5, kf5=\E6, kf6=\E7, kf7=\E8, kf8=\E9, kf9=\E0, + khome=\EH, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, + lf6=f7, lf7=f8, lf8=f9, lf9=f10, ll=\EE, rmul@, smul@, + use=adm+sgr, +dt100|dt-100|Tandy DT-100 terminal, + xon, + cols#80, lines#24, xmc#1, + acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\010\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=^J, is2=\E[?3l\E)0\E(B, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[?3i, + kf10=\E[?5i, kf2=\E[2i, kf3=\E[@, kf4=\E[M, kf5=\E[17~, + kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, khome=\E[H, + knp=\E[29~, kpp=\E[28~, lf1=f1, lf2=f2, lf3=f3, lf4=f4, lf5=f5, + lf6=f6, lf7=f7, lf8=f8, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m, +dt100w|dt-100w|Tandy DT-100 terminal (wide mode), + cols#132, use=dt100, +dt110|Tandy DT-110 emulating ansi, + xon, + cols#80, lines#24, + acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, + clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[0P, + dl1=\E[0M, ed=\E[0J, el=\E[0K, enacs=\E(B\E)0, home=\E[H, + ht=^I, ich1=\E[0@, il1=\E[0L, ind=^J, is2=\E[?3l\E)0\E(B, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[K, + kf1=\E[1~, kf10=\E[10~, kf2=\E[2~, kf3=\E[3~, kf4=\E[4~, + kf5=\E[5~, kf6=\E[6~, kf7=\E[7~, kf8=\E[8~, kf9=\E[9~, + khome=\E[G, kich1=\E[@, knp=\E[26~, kpp=\E[25~, lf0=f1, + lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf8=f9, + lf9=f10, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smacs=^N, smso=\E[7m, smul=\E[4m, +pt210|TRS-80 PT-210 printing terminal, + hc, os, + cols#80, + bel=^G, cr=^M, cud1=^J, ind=^J, + +#### Tektronix (tek) +# +# Tektronix tubes are graphics terminals. Most of them use modified +# oscilloscope technology incorporating a long-persistence green phosphor, +# and support vector graphics on a main screen with an attached "dialogue +# area" for interactive text. +# + +tek|tek4012|tektronix 4012, + OTbs, os, + cols#75, lines#35, + bel=^G, clear=\E\014$<1000>, cr=^M, cub1=^H, cud1=^J, + ff=\014$<1000>, is2=\E^O, +# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) +tek4013|tektronix 4013, + acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012, +tek4014|tektronix 4014, + cols#81, lines#38, + is2=\E\017\E9, use=tek4012, +# (tek4015: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) +tek4015|tektronix 4015, + acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014, +tek4014-sm|tektronix 4014 in small font, + cols#121, lines#58, + is2=\E\017\E\:, use=tek4014, +# (tek4015-sm: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) +tek4015-sm|tektronix 4015 in small font, + acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm, +# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay> +# +# You need to have "stty nl2" in effect. Some versions of tset(1) know +# how to set it for you. +# +# It's got the Magic Cookie problem around stand-out mode. If you can't +# live with Magic Cookie, remove the :so: and :se: fields and do without +# reverse video. If you like reverse video stand-out mode but don't want +# it to flash, change the letter 'H' to 'P' in the :so: field. +tek4023|tektronix 4023, + OTbs, am, + OTdN#4, cols#80, lines#24, vt#4, xmc#1, + OTnl=^J, bel=^G, clear=\E\014$<4/>, cr=^M, cub1=^H, cud1=^J, + cuf1=^I, cup=\034%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, + rmso=^_@, smso=^_P, +# It is recommended that you run the 4025 at 4800 baud or less; +# various bugs in the terminal appear at 9600. It wedges at the +# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed +# on keyboard don't work. You have to hit BREAK twice to get +# one break at any speed - this is a documented feature. +# Can't use cursor motion because it's memory relative, and +# because it only works in the workspace, not the monitor. +# Same for home. Likewise, standout only works in the workspace. +# +# <el> was commented out since vi and rogue seem to work better +# simulating it with lots of spaces! +# +# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U +# and didn't seem necessary. +# +tek4024|tek4025|tek4027|tektronix 4024/4025/4027, + OTbs, am, da, db, + cols#80, it#8, lines#34, lm#0, + bel=^G, clear=\037era\r\n\n, cmdch=^_, cr=^M, + cub=\037lef %p1%d\r, cub1=^H, cud=\037dow %p1%d\r, + cud1=^F^J, cuf=\037rig %p1%d\r, cuf1=\037rig\r, + cuu=\037up %p1%d\r, cuu1=^K, dch1=\037dch\r, + dl=\037dli %p1%d\r\006, dl1=\037dli\r\006, + ed=\037dli 50\r, ht=^I, ich1=\037ich\r \010, + il=\037up\r\037ili %p1%d\r, il1=\037up\r\037ili\r, + ind=^F^J, + is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, + rmkx=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r, + smkx=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r, +tek4025-17|tek 4025 17 line window, + lines#17, use=tek4025, +tek4025-17-ws|tek 4025 17 line window in workspace, + is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\r, + rmcup=\037mon h\r, rmso=\037att s\r, smcup=\037wor h\r, + smso=\037att e\r, use=tek4025-17, +tek4025-ex|tek4027-ex|tek 4025/4027 w/!, + is2=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r, + rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, +# Tektronix 4025a +# From: Doug Gwyn <gwyn@brl-smoke.ARPA> +# The following status modes are assumed for normal operation (replace the +# initial "!" by whatever the current command character is): +# !COM 29 # NOTE: changes command character to GS (^]) +# ^]DUP +# ^]ECH R +# ^]EOL +# ^]RSS T +# ^]SNO N +# ^]STO 9 17 25 33 41 49 57 65 73 +# Other modes may be set according to communication requirements. +# If the command character is inadvertently changed, termcap can't restore it. +# Insert-character cannot be made to work on both top and bottom rows. +# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas. +# There also seems to be a problem with vertical motion, perhaps involving +# delete/insert-line, following a typed carriage return. This terminal sucks. +# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't +# work any more. -- esr) +tek4025a|Tektronix 4025A, + OTbs, OTpt, am, bw, da, db, xon, + cols#80, it#8, lines#34, + bel=^G, cbt=\035bac;, clear=\035era;\n\035rup;, cmdch=^], + cr=^M, cub=\035lef %p1%d;, cub1=^H, cud=\035dow %p1%d;, + cud1=^J, cuf=\035rig %p1%d;, cuf1=\035rig;, + cuu=\035up %p1%d;, cuu1=^K, dch=\035dch %p1%d;, + dch1=\035dch;, dl=\035dli %p1%d;, dl1=\035dli;, + el=\035dch 80;, hpa=\r\035rig %p1%d;, ht=^I, + il1=\013\035ili;, ind=^J, indn=\035dow %p1%d;, + rs2=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;, + tbc=\035sto;, +# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981 +# Here's the command file that I use to get rogue to work on the 4025. +# It should work with any program using the old curses (e.g. it better +# not try to scroll, or cursor addressing won't work. Also, you can't +# see the cursor.) +# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh) +tek4025-cr|tek 4025 for curses and rogue, + OTbs, am, + cols#80, it#8, lines#33, + clear=\037era;, cub1=^H, cud1=^F^J, cuf1=\037rig;, + cup=\037jum%i%p1%d\,%p2%d;, cuu1=^K, ht=^I, ind=^F^J, + is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, + rmcup=\037wor 0, smcup=\037wor 33h, +# next two lines commented out since curses only allows 128 chars, sigh. +# :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\ +# :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0: +tek4025ex|4025ex|4027ex|tek 4025 w/!, + is2=\037com 33\r\n!sto 9\,17\,25\,33\,41\,49\,57\,65\,73\r, + rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, +tek4105|tektronix 4105, + OTbs, am, mir, msgr, ul, xenl, xt, + cols#79, it#8, lines#29, + acsc=, bel=^G, blink=\E[=3;<7m, bold=\E[=7;<4m, cbt=\E[Z, + clear=\E[2J\E[H, cr=^M, cub1=\E[1D, cud1=\E[1B, cuf1=\E[1C, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[1A, dch1=\E[1P, + dim=\E[=1;<6m, dl1=\E[1M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + il1=\E[1L, ind=\E[S, invis=\E[=6;<5, is1=\E%!1\E[m, + is2=\E%!1\E[?6141\E[m, kbs=^H, kcub1=\E[1D, kcud1=\E[1B, + kcuf1=\E[1C, kcuu1=\E[1A, rev=\E[=1;<3m, ri=\E[T, + rmacs=\E[m, rmcup=, rmir=\E[4l, rmso=\E[=0;<1m, + rmul=\E[=0;<1m, sgr0=\E[=0;<1m, smacs=\E[1m, + smcup=\E%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, + smul=\E[=5;<2m, tbc=\E[1g, + +# (tek4105-30: I added <rmam>/<smam> based on the init string -- esr) +tek4105-30|4015 emulating 30 line vt100, + am, mir, msgr, xenl, xon, + cols#80, it#8, lines#30, vt#3, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, + clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, + enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, + rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, + rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, + sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, + smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, + use=vt100+fnkeys, + +# Tektronix 4105 from BRL +# The following setup modes are assumed for normal operation: +# CODE ansi CRLF no DABUFFER 141 +# DAENABLE yes DALINES 30 DAMODE replace +# DAVISIBILITY yes ECHO no EDITMARGINS 1 30 +# FLAGGING input INSERTREPLACE replace LFCR no +# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B +# SELECTCHARSET G1 0 TABS -2 +# Other setup modes may be set for operator convenience or communication +# requirements; I recommend +# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes +# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1 +# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" +# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132 +# XMTDELAY 0 +# and factory color maps. After setting these modes, save them with NVSAVE. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# "IC" cannot be used in combination with "im" & "ei". +# "tek4105a" is just a guess: +tek4105a|Tektronix 4105, + OTbs, OTpt, msgr, xon, + OTkn#8, cols#80, it#8, lines#30, vt#3, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, + cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, + dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, + il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, + kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, + lf5=F6, lf6=F8, ll=\E[30;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, + rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs2=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, + sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + +# +# Tektronix 4106/4107/4109 from BRL +# The following setup modes are assumed for normal operation: +# CODE ansi COLUMNMODE 80 CRLF no +# DABUFFER 141 DAENABLE yes DALINES 32 +# DAMODE replace DAVISIBILITY yes ECHO no +# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace +# LFCR no LOCKKEYBOARD no ORIGINMODE relative +# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0 +# TABS -2 +# Other setup modes may be set for operator convenience or communication +# requirements; I recommend +# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes +# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3 +# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" +# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132 +# XMTDELAY 0 +# and factory color maps. After setting these modes, save them with NVSAVE. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +# "IC" cannot be used in combination with "im" & "ei". +tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109, + msgr, xon, + cols#80, it#8, lines#32, vt#3, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, + civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, + cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, + dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, + ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, + il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, + kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, + lf5=F6, lf6=F8, ll=\E[32;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, + rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, + sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, + smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g, + +# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code: +# 0 selects Tek mode, i.e., \E%!0 +# 1 selects ANSI mode +# 2 selects ANSI edit-mode +# 3 selects VT52 mode +# +# One odd thing about the description (which has been unchanged since the 90s) +# is that the cursor addressing is using VT52 mode, and a few others use the +# VT52's non-CSI versions of ANSI, e.g., \EJ. +tek4107|tek4109|tektronix terminals 4107 4109, + OTbs, am, mir, msgr, ul, xenl, xt, + cols#79, it#8, lines#29, + bel=^G, blink=\E%!1\E[5m$<2>\E%!0, + bold=\E%!1\E[1m$<2>\E%!0, clear=\ELZ, cnorm=\E%!0, cr=^M, + cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E%!3, + dim=\E%!1\E[<0m$<2>\E%!0, ed=\EJ, el=\EK, ht=^I, ind=^J, + kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + rev=\E%!1\E[7m$<2>\E%!0, ri=\EI, + rmso=\E%!1\E[m$<2>\E%!0, rmul=\E%!1\E[m$<2>\E%!0, + sgr=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>\E%%!0, + sgr0=\E%!1\E[m$<2>\E%!0, smso=\E%!1\E[7;5m$<2>\E%!0, + smul=\E%!1\E[4m$<2>\E%!0, +# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s; +# see the note attached to tek4207. +tek4207-s|Tektronix 4207 with sysline but no memory, + eslok, hs, + dsl=\E7\E[?6l\E[2K\E[?6h\E8, fsl=\E[?6h\E8, + is1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, + is2=\E7\E[?6l\E[2K\E[?6h\E8, + tsl=\E7\E[?6l\E[2K\E[;%i%df, use=tek4107, + +# The 4110 series may be a wonderful graphics series, but they make the 4025 +# look good for screen editing. In the dialog area, you can't move the cursor +# off the bottom line. Out of the dialog area, ^K moves it up, but there +# is no way to scroll. +# +# Note that there is a floppy for free from Tek that makes the +# 4112 emulate the vt52 (use the vt52 termcap). There is also +# an expected enhancement that will use ANSI standard sequences. +# +# 4112 in non-dialog area pretending to scroll. It really wraps +# but vi is said to work (more or less) in this mode. +# +# 'vi' works reasonably well with this entry. +# +otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series, + am, + cols#80, lines#34, + bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ind=^J, + rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0, +# The 4112 with the ANSI compatibility enhancement +tek4112|tek4114|tektronix 4110 series, + OTbs, am, db, + cols#80, lines#34, + cbt=\E[Z, clear=\E[2J\E[0;0H, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, dch1=\E[P, + dl1=\E[M, ed=\E[0J, el=\E[0K, ich1=\E[@, il1=\E[L, + ind=\E7\E[0;0H\E[M\E8, is2=\E3!1, ri=\E7\E[0;0H\E[L\E8, + rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, +tek4112-nd|4112 not in dialog area, + OTns, + cuu1=^K, use=tek4112, +tek4112-5|4112 in 5 line dialog area, + lines#5, use=tek4112, +# (tek4113: this used to have "<cuf1=\LM1\s\LM0>", someone's mistake; +# removed "<smacs=\E^N>, <rmacs=\E^O>", which had been commented out in 8.3. +# Note, the !0 and !1 sequences in <rmcup>/<smcup>/<cnorm>/<civis> were +# previously \0410 and \0411 sequences...I don't *think* they were supposed +# to be 4-digit octal -- esr) +tek4113|tektronix 4113 color graphics with 5 line dialog area, + OTbs, am, da, eo, + cols#80, lines#5, + clear=\ELZ, cub1=^H, cud1=^J, cuf1=\ELM1 \ELM0, + flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, + is2=\EKA1\ELL5\ELV0\ELV1, uc=\010\ELM1_\ELM0, +tek4113-34|tektronix 4113 color graphics with 34 line dialog area, + lines#34, + is2=\EKA1\ELLB2\ELV0\ELV1, use=tek4113, +# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not +# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up . +# :vb: needs enough delay to let you see the background color being toggled. +tek4113-nd|tektronix 4113 color graphics with no dialog area, + OTbs, am, eo, + cols#80, it#8, lines#34, + clear=\E^L, cub1=^H, cud1=^J, cuf1=^I, cuu1=^K, + cvvis=\ELZ\EKA0, + flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, + home=\ELF7l\177 @, ht=^I, is2=\ELZ\EKA0\ELF7l\177 @, + ll=\ELF hl @, rmso=\EMT1, smso=\EMT2, uc=\010\EMG1_\EMG0, +# This entry is from Tek. Inc. (Brian Biehl) +# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr) +otek4115|Tektronix 4115, + OTbs, am, da, db, eo, + cols#80, it#8, lines#34, + cbt=\E[Z, clear=\E[H\E[2J, + cnorm=\E%!0\ELBG8\E%!1\E[34;1H, cub1=\E[D, cud1=\E[B, + cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + cvvis=\E%!0\ELBB2\E%!1, dch1=\E[P, dl1=\E[M, ed=\E[J, + el=\E[K, home=\E[H, ht=^I, if=/usr/share/tabset/vt100, + il1=\E[L, + is2=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m, + kbs=^H, ri=\EM, rmam=\E[?7l, + rmcup=\E%!0\ELBG8\E%!1\E[34;1H\E[J, rmir=\E[4l, + rmkx=\E>, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, + smcup=\E%!0\ELBB2\E%!1, smir=\E[4h, smkx=\E=, smso=\E[7m, + smul=\E[4m, +tek4115|newer tektronix 4115 entry with more ANSI capabilities, + am, xon, + cols#80, lines#34, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, + cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%p1%{1}%+%dG, + ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, + il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, + rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmam=\E[?7l, + rmso=\E[m, rmul=\E[m, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, + sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + vpa=\E[%p1%{1}%+%dd, +# The tek4125 emulates a vt100 incorrectly - the scrolling region +# command is ignored. The following entry replaces <csr> with the needed +# <il>, <il>, and <smir>; removes some cursor pad commands that the tek4125 +# chokes on; and adds a lot of initialization for the tek dialog area. +# Note that this entry uses all 34 lines and sets the cursor color to green. +# Steve Jacobson 8/85 +# (tek4125: there were two "\!"s in the is that I replaced with "\E!"; +# commented out, <smir>=\E1 because there's no <rmir> -- esr) +tek4125|tektronix 4125, + lines#34, + csr@, dl1=\E[1M, il1=\E[1L, + is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + rc@, sc@, smkx=\E=, use=vt100, + +# From: <jcoker@ucbic> +# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO +# supplied another, less capable 4107 entry. So we'll use that for 4107 and +# note that if jcoker wasn't confused you may be able to use this one. +# I merged in <msgr>,<ind>,<ri>,<invis>,<tbc> from a BRL entry -- esr) +tek4207|Tektronix 4207 graphics terminal with memory, + am, bw, mir, msgr, ul, xenl, + cols#80, it#8, lines#32, + blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J$<156/>, + cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu1=\EM, dch1=\E[P$<4/>, dl1=\E[M$<3/>, ed=\E[J, + el=\E[K$<5/>, home=\E[H, ht=^I, ich1=\E[@$<4/>, + il1=\E[L$<3/>, ind=\E[S, invis=\E[=6;<5, + is2=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, + kcub1=\E[D, kcud1=\ED, kcuf1=\E[C, kcuu1=\EM, khome=\E[H, + rev=\E[7m, ri=\E[T, + rmcup=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smcup=\E[?6l\E[H\E[J, smso=\E[7m, + smul=\E[4m, tbc=\E[1g, + +# From: <carolyn@dali.berkeley.edu> Thu Oct 31 12:54:27 1985 +# (tek4404: There was a "\!" in <smcup> that I replaced with "\E!". +# Tab had been given as \E2I,that must be the tab-set capability -- esr) +tek4404|tektronix 4404, + OTbs, + cols#80, it#8, lines#32, + blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[1M, + ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\E[2I, il1=\E[1L, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, rc=\E8, + rmcup=\E[1;1H\E[0J\E[?6h\E[?1l, rmir=\E[4l, + rmkx=\E[?1h, rmso=\E[27m, rmul=\E[m, sc=\E7, sgr0=\E[m, + smcup=\E%\E!1\E[1;32r\E[?6l\E>, smir=\E[4h, + smkx=\E[?1l, smso=\E[7m, smul=\E[4m, +# Some unknown person wrote: +# I added the is string - straight Unix has ESC ; in the login +# string which sets a ct8500 into monitor mode (aka 4025 snoopy +# mode). The is string here cleans up a few things (but not +# everything). +ct8500|tektronix ct8500, + am, bw, da, db, + cols#80, lines#25, + bel=^G, cbt=\E^I, clear=\E^E, cr=^M, cub1=^H, cud1=^J, + cuf1=\ES, cup=\E|%p1%{32}%+%c%p2%{32}%+%c, cuu1=\ER, + dch1=\E^], dl1=\E^M, ed=\E^U, el=\E^T, ht=^I, ich1=\E^\, + il1=\E^L, ind=^J, is2=\037\EZ\Ek, ri=\E^A, rmso=\E\s, + rmul=\E\s, sgr0=\E\s, smso=\E$, smul=\E!, + +# Tektronix 4205 terminal. +# +# am is not defined because the wrap around occurs not when the char. +# is placed in the 80'th column, but when we are attempting to type +# the 81'st character on the line. (esr: hmm, this is like the vt100 +# version of xenl, perhaps am + xenl would work!) +# +# Bold, dim, and standout are simulated by colors and thus not allowed +# with colors. The tektronix color table is mapped into the RGB color +# table by setf/setb. All colors are reset to factory specifications by oc. +# The <initc> cap uses RGB notation to define colors. for arguments 1-3 the +# interval (0-1000) is broken into 8 smaller sub-intervals (125). Each sub- +# interval then maps into pre-defined value. +tek4205|tektronix 4205, + ccc, mir, msgr, + colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[=7;<4m, cbt=\E[Z, + clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=\E[D, + 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, + dch1=\E[1P, dim=\E[=1;<6m, dl1=\E[1M, ech=\E%p1%dX, + ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I, + ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[1L, ind=\ED, + initc=\E%%!0\ETF4%?%p1%{0}%=%t0%e%p1%{1}%=%t4%e%p1%{2}%=%t3%e%p1%{3}%=%t5%e%p1%{4}%=%t2%e%p1%{5}%=%t6%e%p1%{6}%=%t7%e1%;%?%p2%{125}%<%t0%e%p2%{250}%<%tA2%e%p2%{375}%<%tA?%e%p2%{500}%<%tC8%e%p2%{625}%<%tD4%e%p2%{750}%<%tE1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD4%e%p3%{750}%<%tE1%e%p3%{875}%<%tE\:%eF4%;%?%p4%{125}%<%t0%e%p4%{250}%<%tA2%e%p4%{375}%<%tA?%e%p4%{500}%<%tC8%e%p4%{625}%<%tD4%e%p4%{750}%<%tE1%e%p4%{875}%<%tE\:%eF4%;\E%%!1, + invis=\E[=6;<5, is1=\E%!0\ETM1\E%!1\E[m, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOA, + kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EP, kf5=\EQ, kf6=\ER, + kf7=\ES, + oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1, + op=\E[39;40m, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=, + rmir=\E[4l, rmso=\E[=0;<1m, rmul=\E[24m, + setb=\E[=%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, + setf=\E[<%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, + sgr0=\E[=0;<1m\E[24;25;27m\017, smacs=^N, + smcup=\E%%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, + smul=\E[4m, tbc=\E[1g, + +#### Teletype (tty) +# +# These are the hardcopy Teletypes from before AT&T bought the company, +# clattering electromechanical dinosaurs in Bakelite cases that printed on +# pulpy yellow roll paper. If you remember these you go back a ways. +# Teletype-branded VDTs are listed in the AT&T section. +# +# The earliest UNIXes were designed to use these clunkers; nroff and a few +# other programs still default to emitting codes for the Model 37. +# + +tty33|tty35|model 33 or 35 teletype, + hc, os, xon, + cols#72, + bel=^G, cr=^M, cud1=^J, ind=^J, +tty37|model 37 teletype, + OTbs, hc, os, xon, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8, + ind=^J, + +# There are known to be at least three flavors of the tty40, all seem more +# like IBM half duplex forms fillers than ASCII terminals. They have lots of +# awful braindamage, such as printing a visible newline indicator after each +# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is +# braindamaged but has hope and is described here. The 40-4 is a 3270 +# lookalike and beyond hope. The terminal has visible bell but I don't know +# it - it's null here to prevent it from showing the BL character. +# There is an \EG in <nl> because of a bug in old vi (if stty says you have +# a "newline" style terminal (-crmode) vi figures all it needs is nl +# to get crlf, even if <cr> is not ^M.) +# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr) +tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2, + OTbs, xon, + cols#80, lines#24, + clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB, + cuf1=\EC, cuu1=\E7, dch1=\EP$<50>, dl1=\EM$<50>, + ed=\EJ$<75>, home=\EH$<10>, ht=\E@$<10>, hts=\E1, + ich1=\E\^$<50>, il1=\EL$<50>, ind=\ES$<20>, kbs=^], + kcub1=^H, mc4=^T, mc5=\022$<2000>, ri=\ET$<10>, rmso=\E4, + rs2=\023\ER$<60>, smso=\E3, tbc=\EH\E2$<80>, +tty43|model 43 teletype, + OTbs, am, hc, os, xon, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H, + +#### Tymshare +# + +# You can add <is2=\E<> to put this 40-column mode, though I can't +# for the life of me think why anyone would want to. +scanset|sc410|sc415|Tymshare Scan Set, + am, bw, msgr, + cols#80, lines#24, + acsc=j%k4l<m-q\,x5, bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, + cud1=^J, cuf1=^I, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, ed=\EJ, el=\EK, home=\EH, ind=^J, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, mc0=\E;3, mc4=\E;0, + mc5=\E;0, rc=^C, rmacs=^O, rs1=\E>, sc=^B, smacs=^N, + +#### Volker-Craig (vc) +# +# If you saw a Byte Magazine cover with a terminal on it during the early +# 1980s, it was probably one of these. Carl Helmers liked them because +# they could crank 19.2 and were cheap (that is, he liked them until he tried +# to program one...) +# + +# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time +# every other linefeed. +vc303|vc103|vc203|volker-craig 303, + OTbs, OTns, am, + cols#80, lines#24, + bel=^G, clear=\014$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^I, + cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=^J, kcuf1=^I, + kcuu1=^N, ll=\017$<1>W, +vc303a|vc403a|volker-craig 303a, + clear=\030$<40>, cuf1=^U, cuu1=^Z, el=\026$<20>, + home=\031$<40>, kcuf1=^U, kcuu1=^Z, ll=^P, use=vc303, +# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr) +vc404|volker-craig 404, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\030$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^U, + cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, + ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=^J, + kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, +vc404-s|volker-craig 404 w/standout mode, + cud1=^J, rmso=^O, smso=^N, use=vc404, +# From: <wolfgang@cs.sfu.ca> +# (vc414: merged in cup/dl1/home from an old vc414h-noxon) +vc414|vc414h|Volker-Craig 414H in sane escape mode., + OTbs, am, + cols#80, lines#24, + clear=\E\034$<40>, cud1=\E^K, cuf1=^P, + cup=\E\021%p2%c%p1%c$<40>, cuu1=\E^L, dch1=\E3, + dl1=\E\023$<40>, ed=\E^X, el=\E\017$<10/>, home=\E^R, + ich1=\E\:, il1=\E\032$<40>, kcub1=^H, kcud1=\E^K, kcuf1=^P, + kcuu1=\E^L, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, kf4=\EE, + kf5=\EF, kf6=\EG, kf7=\EH, khome=\E^R, lf0=PF1, lf1=PF2, + lf2=PF3, lf3=PF4, lf4=PF5, lf5=PF6, lf6=PF7, lf7=PF8, + rmso=\E^_, smso=\E^Y, +vc415|volker-craig 415, + clear=^L, use=vc404, + +######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS +# + +#### IBM PC and clones +# + +# The pcplot IBM-PC terminal emulation program is really messed up. It is +# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly, +# doesn't support scrolling regions, ignores add line commands, and ignores +# delete line commands. Consequently, the resulting behavior looks like a +# crude adm3a-type terminal. +# Steve Jacobson 8/85 +pcplot|pc-plot terminal emulation program, + xenl@, + csr@, dl@, dl1@, il@, il1@, rc@, sc@, use=vt100, +# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA> +# I've found that my KayPro II, running MDM730, continues to emulate an +# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX +# system the following termcap entry works well: +# I have noticed a couple of minor glitches, but nothing I can't work +# around. (I added two capabilities from the BRL entry -- esr) +kaypro|kaypro2|kaypro II, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\032$<1/>, cr=^M, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER, ed=^W, + el=^X, home=^^, il1=\EE, ind=^J, kcud1=^J, kcuf1=^L, kcuu1=^K, + +# From IBM, Thu May 5 19:35:27 1983 +# (ibmpc: commented out <smir>=\200R because we don't know <rmir> -- esr) +ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS), + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^L^K, cr=^M^^, cub1=^], cud1=^J, cuf1=^\, + cuu1=^^, home=^K, ind=\n$<10>, kcud1=^_, + +ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX, + OTbs, am, bw, eo, hs, km, msgr, ul, + cols#80, it#8, lines#24, + acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, + cub=\E[%p1%dD, cub1=\E[D, 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K, + home=\E[H, hpa=\E[%i%p1%dG, ind=\E[S\E[B, + indn=\E[%p1%dS\E[%p1%dB, invis=\E[30;40m, kbs=^H, + kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kdch1=\177, kend=\E[Y, kf1=\240, kf10=\251, kf2=\241, + kf3=\242, kf4=\243, kf5=\244, kf6=\245, kf7=\246, kf8=\247, + kf9=\250, khome=\E[H, kich1=\E[^H, knp=\E[U, kpp=\E[V, + ll=\E[24;1H, nel=^M, rev=\E[7m, ri=\E[T\E[A, + rin=\E[%p1%dT\E[%p1%dA, rmso=\E[m, rmul=\E[m, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, + sgr0=\E[m, smso=\E[7m, smul=\E[4m, + +#### Apple II +# +# Apple II firmware console first, then various 80-column cards and +# terminal emulators. For two cents I'd toss all these in the UFO file +# along with the 40-column apple entries. +# + +# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL +# 'it#8' tells UNIX that you have tabs every 8 columns. This is a +# function of TIC, not the firmware. +# The clear key on a IIgs will do something like clear-screen, +# depending on what you're in. +appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface, + OTbs, am, bw, eo, msgr, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, ht=^I, ind=^W, kbs=^H, kclr=^X, kcub1=^H, kcud1=^J, + kcuf1=^U, kcuu1=^K, kdch1=\177, nel=^M^W, ri=^V, rmso=^N, + smso=^O, +# Apple //e with 80-column card, entry from BRL +# The modem interface is permitted to discard LF (maybe DC1), otherwise +# passing characters to the 80-column firmware via COUT (PR#3 assumed). +# Auto-wrap does not work right due to newline scrolling delay, which also +# requires that you set "stty cr2". +# Note: Cursor addressing is only available via the Pascal V1.1 entry, +# not via the BASIC PR#3 hook. All this nonsense can be avoided only by +# using a terminal emulation program instead of the built-in firmware. +apple2e|Apple //e, + bw, msgr, + cols#80, lines#24, + bel=^G, clear=\014$<100/>, cub1=^H, cud1=^J, cuu1=^_, + ed=\013$<4*/>, el=\035$<4/>, home=^Y, ht=^I, ind=^W, + is2=^R^N, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^K, + nel=\r$<100/>, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, + smso=^O, +# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro +# 4.20, with incoming and outgoing terminals both on 0, emulation On. +apple2e-p|Apple //e via Pascal, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H, + kcud1=^J, use=apple2e, +# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL +# Enable DC3/DC1 flow control with "stty ixon -ixany". +apple-ae|ASCII Express, + OTbs, am, bw, msgr, nxon, xon, + cols#80, it#8, lines#24, + bel=\007$<500/>, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^U, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=^J, + kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, + smso=^O, +appleII|apple ii plus, + OTbs, am, + cols#80, it#8, lines#24, + clear=^L, cnorm=^TC2, cub1=^H, cud1=^J, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, cvvis=^TC6, + ed=^K, el=^], flash=\024G1$<200/>\024T1, home=\E^Y, ht=^I, + is2=\024T1\016, kcud1=^J, kcuf1=^U, rmso=^N, sgr0=^N, + smso=^O, +# Originally by Gary Ford 21NOV83 +# From: <ee178aci%sdcc7@SDCSVAX.ARPA> Fri Oct 11 21:27:00 1985 +apple-80|apple II with smarterm 80 col, + OTbs, am, bw, + cols#80, lines#24, + cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=^J, + cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, + ed=\013$<10*/>, el=\035$<10/>, home=^Y, +apple-soroc|apple emulating soroc 120, + am, + cols#80, lines#24, + bel=^G, clear=\E*$<300>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, + home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, +# From Peter Harrison, Computer Graphics Lab, San Francisco +# ucbvax!ucsfmis!harrison .....uucp +# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA +# "These two work. If you don't have the inverse video chip for the +# Apple with videx then remove the :so: and :se: fields." +# (apple-videx: this used to be called DaleApple -- esr) +apple-videx|Apple with videx videoterm 80 column board with inverse video, + OTbs, am, xenl, + cols#80, it#8, lines#24, + clear=\014$<300/>, cub1=^H, cud1=^J, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, ht=^I, kcub1=^H, kcud1=^J, kcuf1=^U, khome=^Y, + rmso=^Z2, sgr0=^Z2, smso=^Z3, +# My system [for reference] : Apple ][+, 64K, Ultraterm display card, +# Apple Cat ][ 212 modem, + more all +# controlled by ASCII Express: Pro. +# From Dave Shaver <isucs1!shaver> +apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell, + OTbs, am, eo, xt, + cols#80, lines#24, + acsc=, clear=^L, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + flash=^W35^W06, home=^Y, + is2=^V4^W06\017\rVisible Bell Installed.\016\r\n, + rmso=^N, smso=^O, +apple-uterm|Ultraterm for Apple micros, + OTbs, am, eo, xt, + cols#80, lines#24, + acsc=, clear=^L, cuf1=^\, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, is2=^V4^W06\016, rmso=^N, smso=^O, +# from trwrba!bwong (Bradley W. Wong): +# +# This entry assumes that you are using an apple with the UCSD Pascal +# language card. SYSTEM.MISCINFO is assumed to be the same as that +# supplied with the standard apple except that screenwidth should be set +# using SETUP to 80 columns. Note that the right arrow is not mapped in +# this termcap entry. This is because that key, on the Apple, transmits +# a ^U and would thus preempt the more useful "up" function of vi. +# +# HMH 2/23/81 +apple80p|80-column apple with Pascal card, + am, bw, + cols#80, lines#24, + clear=^Y^L, cuf1=^\\:, + cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], + home=^Y, kcub1=^H, +# +# Apple II+ equipped with Videx 80 column card +# +# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL; +# manually converted by D A Gwyn +# +# DO NOT use any terminal emulation with this data base, it works directly +# with the Videx card. This has been tested with vi 1200 baud and works fine. +# +# This works great for vi, except I've noticed in pre-R2, ^U will scroll back +# 1 screen, while in R2 ^U doesn't. +# For inverse alternate character set add: +# <smacs>=^O:<rmacs>=^N: +# (apple-v: added it#8 -- esr) +apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520), + am, xenl, + cols#80, it#8, lines#24, + bel=\007$<100/>, clear=\014$<16*/>, cr=^M, cub1=^H, + cud1=^J, cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, + cuu1=^_, ed=\013$<16*/>, el=^], home=^Y, ht=\011$<8/>, + ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, + khome=^Y, rmso=^Z2, smso=^Z3, +apple-videx3|vapple|Apple II with 80 col card, + OTbs, am, + cols#80, lines#24, + clear=\Ev, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\Ex, + home=\EH, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E\s, kf4=\E!, kf5=\E", kf6=\E#, + kf7=\E$, kf8=\E%%, kf9=\E&, khome=\EH, +#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL +aepro|Apple II+ running ASCII Express Pro--vt52, + OTbs, + cols#80, lines#24, + clear=\014$<300/>, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, home=\EH, +# UCSD addition: Yet another termcap from Brian Kantor's Micro Munger Factory +apple-vm80|ap-vm80|apple with viewmax-80, + OTbs, + cols#80, lines#24, + clear=\014$<300/>, cuf1=^\\:, + cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_, + ed=\013$<300/>, el=^], home=\031$<200/>, + +#### Apple Lisa & Macintosh +# + +# (lisa: changed <cvvis> to <cnorm> -- esr) +lisa|apple lisa console display (black on white), + OTbs, am, eo, msgr, + cols#88, it#8, lines#32, + acsc=jdkclfmenbqattuvvuwsx`, civis=\E[5h, clear=^L, + cnorm=\E[5l, cub1=^H, 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, + is2=\E>\E[m\014, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smacs=\E[11m, smso=\E[7m, smul=\E[4m, +liswb|apple lisa console display (white on black), + is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m, + smso=\E[m, smul=\E[4m, use=lisa, + +# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL; +# <is2> revised by Ferd Brundick <fsbrn@BRL.ARPA> +# +# These entries assume that the 'Auto Wraparound' is enabled. +# Xon-Xoff flow control should also be enabled. +# +# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab +# settings are in non-volatile memory and don't need to be reset upon login. +# Also setting the number of columns glitches the screen annoyingly. +# You can type "reset" to get them set. +# +lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation, + OTbs, OTpt, am, xenl, xon, + OTkn#4, cols#80, it#8, lines#24, vt#3, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J, + el=\E[K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, kf1=\EOQ, + kf2=\EOR, kf3=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, rc=\E8, + rev=\E[7m, ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r, + sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, + tbc=\E[3g, +# Lisaterm in 132 column ("wide") mode. +lisaterm-w|Apple Lisa with Lisaterm in 132 column mode, + cols#132, + kbs=^H, kcub1=^H, kcud1=^J, use=lisaterm, +# Although MacTerminal has insert/delete line, it is commented out here +# since it is much faster and cleaner to use the "lock scrolling region" +# method of inserting and deleting lines due to the MacTerminal implementation. +# Also, the "Insert/delete ch" strings have an extra character appended to them +# due to a bug in MacTerminal V1.1. Blink is disabled since it is not +# supported by MacTerminal. +mac|macintosh|Macintosh with MacTerminal, + xenl, + OTdN#30, + blink@, dch1=\E[P$<7/>, ich1=\E[@$<9/>, ip=$<7/>, use=lisa, +# Lisaterm in 132 column ("wide") mode. +mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode, + cols#132, use=mac, + +# nsterm*|Apple_Terminal - AppKit Terminal.app +# +# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and +# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X +# Server and Mac OS X operating systems. There is also a +# "terminal.app" in GNUStep, but I believe it to be an unrelated +# codebase and I have not attempted to describe it here. +# +# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you +# are pretty much on your own. Use "nsterm-7-m" and hope for the best. +# You might also try "nsterm-7" and "nsterm-old" if you suspect your +# version supports color. +# +# To determine the version of Terminal.app you're using by running: +# +# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION" +# +# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm") +# +# For Apple_Terminal v71+/v100+, use "nsterm-bce". +# +# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s". +# +# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s". +# +# For all earlier versions (Apple_Terminal), try "nsterm-7-m" +# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s" +# might work too, but really you're on your own here since these +# systems are very obsolete and I can't test them. I do welcome +# patches, though :). + +# Other Terminals: +# +# For GNUstep_Terminal, you're probably best off using "linux" or +# writing your own terminfo. + +# For MacTelnet, you're on your own. It's a different codebase, and +# seems to be somewhere between "vt102", "ncsa" and "xterm-color". + +# For iTerm.app, see "iterm". + +# +# The AppKit Terminal.app descriptions all have names beginning with +# "nsterm". Note that the statusline (-s) versions use the window +# titlebar as a phony status line, and may produce warnings during +# compilation as a result ("tsl uses 0 parameters, expected 1".) +# Ignore these warnings, or even ignore these entries entirely. Apps +# which need to position the cursor or do other fancy stuff inside the +# status line won't work with these entries. They're primarily useful +# for programs like Pine which provide simple notifications in the +# status line. Please note that non-ASCII characters don't work right +# in the status line, since Terminal.app incorrectly interprets their +# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X +# versions) or only accepts status lines consisting entirely of +# characters from the first 256 Unicode positions (including C1 but +# not C0 or DEL.) +# +# The Mythology* of AppKit Terminal.app: +# +# In the days of NeXTSTep 0.x and 1.x there were two incompatible +# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a +# shareware replacement for Terminal called "Stuart" which NeXT bought +# and used as the basis for the Terminal.app in NeXTstep 2+, +# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I +# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or +# capabilities for the early versions, but I believe that the +# TERM_PROGRAM_VERSION may have been reset at some point. +# +# The early versions were tailored to the NeXT character set. Sometime +# after the Apple aquisition the encoding was swiched to MacRoman +# (initally with serious altcharset bugs due to incomplete conversion +# of the old NeXT code,) and then later to UTF-8. Alos sometime during +# or just prior to the early days of Mac OS X, the Terminal grew ANSI +# 8-color support (initially buggy when combined with attributes, but +# that was later fixed.) More recently, around Mac OS X version 10.3 +# or so (Terminal.app v100+) xterm-like 16-color support was added. In +# some versions (for instance 133-1 which shipped with Mac OS X +# version 10.4) this suffered from the <bce> bug, but that seems to +# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+). +# +# In the early days of Mac OS X the terminal was fairly buggy and +# would routinely crash under load. Many of these bugs seem to have +# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but +# some may still remain. This change seems to correspond to +# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as +# it did previously. +# +# * This may correspond with what actually happened, but I don't +# know. It is based on guesswork, hearsay, private correspondence, +# my faulty memory, and the following online sources and references: +# +# [1] "Three Scotts and a Duane" by Simson L. Garfinkel +# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html +# +# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia +# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep +# +# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to +# "nsterm" to comply with the name length and case conventions and +# limitations of various software packages [notably Solaris terminfo +# and UNIX.] A single Apple_Terminal alias is retained for +# backwards-compatbility. +# +# * Added function key support (F1-F4). These only work in Terminal.app +# version 51, hopefully the capabilities won't cause problems for people +# using version 41. +# +# * Added "full color" (-c) entries which support the 16-color mode in +# version 51. +# +# * By default, version 51 uses UTF-8 encoding with broken altcharset +# support, so "ASCII" (-7) entries without altcharset support were +# added. + +# nsterm - AppKit Terminal.app +# +# Apple's Mac OS X includes a Terminal.app derived from the old NeXT +# Terminal.app. It is a partial VT100 emulation with some xterm-like +# extensions. This terminfo was written to describe versions 41 +# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X +# version 10.1) of Terminal.app. +# +# Terminal.app runs under the Mac OS X Quartz windowing system (and +# other AppKit-supported windowing systems.) On the Mac OS X machine I +# use, the executable for Terminal.app is: +# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal +# +# If you're looking for a description of the full-screen system +# console which runs under Apple's Darwin operating system on PowerPC +# platforms, see the "xnuppc" entry instead. +# +# There were no function keys in version 41. In version 51, there are +# four working function keys (F1, F2, F3 and F4.) The function keys +# are included in all of these entries. +# +# It does not support mouse pointer position reporting. Under some +# circumstances the cursor can be positioned using option-click; this +# works by comparing the cursor position and the selected position, +# and simulating enough cursor-key presses to move the cursor to the +# selected position. This technique fails in all but the simplest +# applications. +# +# It provides partial ANSI color support (background colors interacted +# badly with bold in version 41, though, as reflected in :ncv:.) The +# monochrome (-m) entries are useful if you've disabled color support +# or use a monochrome monitor. The full color (-c) entries are useful +# in version 51, which doesn't exhibit the background color bug. They +# also enable an xterm-compatible 16-color mode. +# +# The configurable titlebar is set using xterm-compatible sequences; +# it is used as a status bar in the statusline (-s) entries. Its width +# depends on font sizes and window sizes, but 50 characters seems to +# be the default for an 80x24 window. +# +# The MacRoman character encoding is used for some of the alternate +# characters in the "MacRoman" entries; the "ASCII" (-7) entries +# disable alternate character set support entirely, and the "VT100" +# (-acs) entries rely instead on Terminal.app's own buggy VT100 +# graphics emulation, which seems to think the character encoding is +# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries +# are useful in Terminal.app version 51, which supports UTF-8 and +# other ASCII-compatible character encodings but does not correctly +# implement VT100 graphics; once VT100 graphics are correctly +# implemented in Terminal.app, the "VT100" (-acs) entries should be +# usable in any ASCII-compatible character encoding [except perhaps +# in UTF-8, where some experts argue for disallowing alternate +# characters entirely.] +# +# Terminal.app reports "vt100" as the terminal type, but exports +# several environment variables which may aid detection in a shell +# profile (i.e. .profile or .login): +# +# TERM=vt100 +# TERM_PROGRAM=Apple_Terminal +# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41 +# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51 +# +# For example, the following Bourne shell script would detect the +# correct terminal type: +# +# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ] +# then +# export TERM +# if [ :"$TERM_PROGRAM_VERSION" = :41 ] +# then +# TERM="nsterm-old" +# else +# TERM="nsterm-c-7" +# fi +# fi +# +# In a C shell derivative, this would be accomplished by: +# +# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then +# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then +# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then +# setenv TERM "nsterm-old" +# else +# setenv TERM "nsterm-c-7" +# endif +# endif +# endif + +# The '+' entries are building blocks +nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset, + am, bw, msgr, xenl, xon, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, + invis=\E[8m, kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, + kcuu1=\EOA, kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM, + rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, + sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=vt100+pfkeys, + +nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + enacs=\E(B\E)0, rmacs=^O, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, use=nsterm+7, + +nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset, + acsc=+\335\,\334-\366.\3770#`\327a\:f\241g\261h#i\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{\271|\255}\243~\245, + enacs=\E(B\E)0, rmacs=^O, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, use=nsterm+7, + +nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support, + hs, + wsl#50, + dsl=\E]2;\007, fsl=^G, tsl=\E]2;, + +nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors), + op=\E[0m, use=ibm+16color, + +nsterm+c41|AppKit Terminal.app v41 color support, + colors#8, ncv#37, pairs#64, + op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + +# These are different combinations of the building blocks + +# ASCII charset (-7) +nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome), + use=nsterm+7, + +nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline), + use=nsterm+s, use=nsterm+7, + +nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color), + use=nsterm+c41, use=nsterm+7, + +nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color), + use=nsterm+c, use=nsterm+7, + +nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline), + use=nsterm+s, use=nsterm+c41, use=nsterm+7, + +nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline), + use=nsterm+s, use=nsterm+c, use=nsterm+7, + +# VT100 alternate-charset (-acs) +nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome), + use=nsterm+acs, + +nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline), + use=nsterm+s, use=nsterm+acs, + +nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color), + use=nsterm+c41, use=nsterm+acs, + +nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color), + use=nsterm+c, use=nsterm+acs, + +nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline), + use=nsterm+s, use=nsterm+c41, use=nsterm+acs, + +nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline), + use=nsterm+s, use=nsterm+c, use=nsterm+acs, + +# MacRoman charset +nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome), + use=nsterm+mac, + +nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline), + use=nsterm+s, use=nsterm+mac, + +nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color), + use=nsterm+c41, use=nsterm+mac, + +nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color), + use=nsterm+c, use=nsterm+mac, + +nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline), + use=nsterm+s, use=nsterm+c41, use=nsterm+mac, + +nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline), + use=nsterm+s, use=nsterm+c, use=nsterm+mac, + +# In Mac OS X version 10.5 the format of the preferences has changed +# and a new, more complex technique is needed, e.g., +# +# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass( +# "NSUserDefaults");ud=NSUserDefaults.alloc(); +# ud.init();prefs=ud.persistentDomainForName_( +# "com.apple.Terminal");prefs["Window Settings"][ +# prefs["Default Window Settings"]]["TerminalType" +# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs, +# "com.apple.Terminal")' nsterm-16color +# +# and it is still not settable from the preferences dialog. This is +# tracked under rdar://problem/7365108 and rdar://problem/7365134 +# in Apple's bug reporter. +nsterm-16color|AppKit Terminal.app v240.2+ with Mac OS X version 10.5, + bw@, mir, npc, + civis=\E[?25l, cnorm=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, + flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG, + ich=\E[%p1%d@, ich1=\E[@, kdch1=\E[3~, kend=\E[F, + 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[22~, kf19=\E[33~, kf20=\E[34~, kf5=\E[15~, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, + knp=\E[6~, kpp=\E[5~, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, + smcup=\E7\E[?47h, smir=\E[4h, vpa=\E[%i%p1%dd, + use=nsterm-c-s-acs, + +# The versions of Terminal.app in Mac OS X version 10.3.x seem to have +# the background color erase bug. The newer version 240.2 in Mac OS X +# version 10.5 does not. +# +# This entry is based on newsgroup comments by Alain Bench, Christian Ebert, +# and D P Schreber comparing to nsterm-c-s-acs. +# +# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM +# can be set in Terminal.app, e.g., +# +# defaults write com.apple.Terminal TermCapString nsterm-bce +# +# and that it is not set in Terminal's preferences dialog. +nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce), + bce, bw, use=nsterm-16color, + +# This is an alias which should always point to the "current" version +nsterm|Apple_Terminal|AppKit Terminal.app, + use=nsterm-16color, + +# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and +# more featureful) terminal emulator for Mac OS X. It is similar +# enough in capabilities to nsterm-16color that I have derived this +# description from that one, but as far as I know they share no code. +# Many of the features are user-configurable, but I attempt only to +# describe the default configuration. +# +# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is +# disabled. +iTerm.app|iTerm.app terminal emulator for Mac OS X, + bce, bw@, ccc@, + csr@, initc@, kend=\EOF, khome=\EOH, use=xterm+256color, + use=nsterm-16color, + +# xnuppc - Darwin PowerPC Console (a.k.a. "darwin") +# +# On PowerPC platforms, Apple's Darwin operating system uses a +# full-screen system console derived from a NetBSD framebuffer +# console. It is an ANSI-style terminal, and is not really VT-100 +# compatible. +# +# Under Mac OS X, this is the system console driver used while in +# single-user mode [reachable by holding down Command-S during the +# boot process] and when logged in using console mode [reachable by +# typing ">console" at the graphical login prompt.] +# +# If you're looking for a description of the Terminal.app terminal +# emulator which runs under the Mac OS X Quartz windowing system (and +# other AppKit-supported windowing systems,) see the "nsterm" +# entry instead. +# +# NOTE: Under Mac OS X version 10.1, the default login window does not +# prompt for user name, instead requiring an icon to be selected from +# a list of known users. Since the special ">console" login is not in +# this list, you must make one of two changes in the Login Window +# panel of the Login section of System Prefs to make the special +# ">console" login accessible. The first option is to enable 'Show +# "Other User" in list for network users', which will add a special +# "Other..." icon to the graphical login panel. Selecting "Other..." +# will present the regular graphical login prompt. The second option +# is to change the 'Display Login Window as:' setting to 'Name and +# password entry fields', which replaces the login panel with a +# graphical login prompt. +# +# There are no function keys, at least not in Darwin 1.3. +# +# It has no mouse support. +# +# It has full ANSI color support, and color combines correctly with +# all three supported attributes: bold, inverse-video and underline. +# However, bold colored text is almost unreadable (bolding is +# accomplished using shifting and or-ing, and looks smeared) so bold +# has been excluded from the list of color-compatible attributes +# [using (ncv)]. The monochrome entry (-m) is useful if you use a +# monochrome monitor. +# +# There is one serious bug with this terminal emulation's color +# support: repositioning the cursor onto a cell with non-matching +# colors obliterates that cell's contents, replacing it with a blank +# and displaying a colored cursor in the "current" colors. There is +# no complete workaround at present [other than using the monochrome +# (-m) entries,] but removing the (msgr) capability seemed to help. +# +# The "standout" chosen was simple reverse-video, although a colorful +# standout might be more aesthetically pleasing. Similarly, the bold +# chosen is the terminal's own smeared bold, although a simple +# color-change might be more readable. The color-bold (-b) entries +# uses magenta colored text for bolding instead. The fancy color (-f +# and -f2) entries use color for bold, standout and underlined text +# (underlined text is still underlined, though.) +# +# Apparently the terminal emulator does support a VT-100-style +# alternate character set, but all the alternate character set +# positions have been left blank in the font. For this reason, no +# alternate character set capabilities have been included in this +# description. The console driver appears to be ASCII-only, so (enacs) +# has been excluded [although the VT-100 sequence does work.] +# +# The default Mac OS X and Darwin installation reports "vt100" as the +# terminal type, and exports no helpful environment variables. To fix +# this, change the "console" entry in /etc/ttys from "vt100" to +# "xnuppc-WxH", where W and H are the character dimensions of your +# console (see below.) +# +# The font used by the terminal emulator is apparently one originally +# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This +# file includes descriptions for the following geometries: +# +# Pixels Characters Entry Name (append -m for monochrome) +# ------------------------------------------------------------------- +# 640x400 80x25 xnuppc-80x25 +# 640x480 80x30 xnuppc-80x30 +# 720x480 90x30 xnuppc-90x30 +# 800x600 100x37 xnuppc-100x37 +# 896x600 112x37 xnuppc-112x37 +# 1024x640 128x40 xnuppc-128x40 +# 1024x768 128x48 xnuppc-128x48 +# 1152x768 144x48 xnuppc-144x48 +# 1280x1024 160x64 xnuppc-160x64 +# 1600x1024 200x64 xnuppc-200x64 +# 1600x1200 200x75 xnuppc-200x75 +# 2048x1536 256x96 xnuppc-256x96 +# +# The basic "xnuppc" entry includes no size information, and the +# emulator includes no reporting capability, so you'll be at the mercy +# of the TTY device (which reports incorrectly on my hardware.) The +# color-bold entries do not include size information. + +# The '+' entries are building blocks +xnuppc+basic|Darwin PowerPC Console basic capabilities, + am, bce, mir, xenl, + it#8, + bold=\E[1m, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=\E[D, 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, dsl=\E]2;\007, ed=\E[J, el=\E[K, + el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, + rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, + rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, + sc=\E7, + sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, + sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, use=vt100+keypad, + +xnuppc+c|Darwin PowerPC Console ANSI color support, + colors#8, ncv#32, pairs#64, + op=\E[37;40m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, + +xnuppc+b|Darwin PowerPC Console color-bold support, + ncv#32, + bold=\E[35m, + sgr=\E[0%?%p6%t;35%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, + use=xnuppc+basic, + +xnuppc+f|Darwin PowerPC Console fancy color support, + ncv#35, + sgr=\E[0%?%p6%t;35%;%?%p2%t;36;4%;%?%p1%t;33;44%;%?%p3%t;7%;m, + smso=\E[33;44m, smul=\E[36;4m, use=xnuppc+b, + +xnuppc+f2|Darwin PowerPC Console alternate fancy color support, + ncv#35, + bold=\E[33m, + sgr=\E[0%?%p6%t;33%;%?%p2%t;34%;%?%p1%t;31;47%;%?%p3%t;7%;m, + smso=\E[31;47m, smul=\E[34m, use=xnuppc+basic, + +# Building blocks for specific screen sizes +xnuppc+80x25|Darwin PowerPC Console 80x25 support (640x400 pixels), + cols#80, lines#25, + +xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels), + cols#80, lines#30, + +xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels), + cols#90, lines#30, + +xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels), + cols#100, lines#37, + +xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels), + cols#112, lines#37, + +xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels), + cols#128, lines#40, + +xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels), + cols#128, lines#48, + +xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels), + cols#144, lines#48, + +xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels), + cols#160, lines#64, + +xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels), + cols#200, lines#64, + +xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels), + cols#200, lines#75, + +xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels), + cols#256, lines#96, + +# These are different combinations of the building blocks + +xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome), + use=xnuppc+basic, + +xnuppc|darwin|Darwin PowerPC Console (color), + use=xnuppc+c, use=xnuppc+basic, + +xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold), + use=xnuppc+b, + +xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold), + use=xnuppc+b, use=xnuppc+c, + +xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome), + use=xnuppc+f, + +xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color), + use=xnuppc+f, use=xnuppc+c, + +xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome), + use=xnuppc+f2, + +xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color), + use=xnuppc+f2, use=xnuppc+c, + +# Combinations for specific screen sizes +xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25, + use=xnuppc+80x25, use=xnuppc+basic, + +xnuppc-80x25|darwin-80x25|Darwin PowerPC Console (color) 80x25, + use=xnuppc+c, use=xnuppc+80x25, use=xnuppc+basic, + +xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC Console (monochrome) 80x30, + use=xnuppc+80x30, use=xnuppc+basic, + +xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30, + use=xnuppc+c, use=xnuppc+80x30, use=xnuppc+basic, + +xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30, + use=xnuppc+90x30, use=xnuppc+basic, + +xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30, + use=xnuppc+c, use=xnuppc+90x30, use=xnuppc+basic, + +xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37, + use=xnuppc+100x37, use=xnuppc+basic, + +xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37, + use=xnuppc+c, use=xnuppc+100x37, use=xnuppc+basic, + +xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37, + use=xnuppc+112x37, use=xnuppc+basic, + +xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37, + use=xnuppc+c, use=xnuppc+112x37, use=xnuppc+basic, + +xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40, + use=xnuppc+128x40, use=xnuppc+basic, + +xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40, + use=xnuppc+c, use=xnuppc+128x40, use=xnuppc+basic, + +xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48, + use=xnuppc+128x48, use=xnuppc+basic, + +xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48, + use=xnuppc+c, use=xnuppc+128x48, use=xnuppc+basic, + +xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48, + use=xnuppc+144x48, use=xnuppc+basic, + +xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48, + use=xnuppc+c, use=xnuppc+144x48, use=xnuppc+basic, + +xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64, + use=xnuppc+160x64, use=xnuppc+basic, + +xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64, + use=xnuppc+c, use=xnuppc+160x64, use=xnuppc+basic, + +xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64, + use=xnuppc+200x64, use=xnuppc+basic, + +xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64, + use=xnuppc+c, use=xnuppc+200x64, use=xnuppc+basic, + +xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75, + use=xnuppc+200x75, use=xnuppc+basic, + +xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75, + use=xnuppc+c, use=xnuppc+200x75, use=xnuppc+basic, + +xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96, + use=xnuppc+256x96, use=xnuppc+basic, + +xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96, + use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic, + +#### Radio Shack/Tandy +# + +# (coco3: This had "ta" used incorrectly as a boolean and bl given as "bl#7". +# I read these as mistakes for ":it#8:" and ":bl=\007:" respectively -- esr) +# From: <{pbrown,ctl}@ocf.berkeley.edu> 12 Mar 90 +coco3|os9LII|Tandy CoCo3 24*80 OS9 Level II, + OTbs, am, + cols#80, it#8, lines#24, + bel=^G, blink=^_", bold=\E\:^A, civis=^E\s, + clear=\014$<5*/>, cnorm=^E!, cub1=^H, cud1=^J, cuf1=^F, + cup=\002%p2%{32}%+%c%p1%{32}%+%c$<2/>, cuu1=^I, + dl1=^_1, ed=^K, el=^D, home=^A, il1=^_0, kcub1=^H, kcud1=^J, + kcuf1=^I, kcuu1=^L, rev=^_\s, rmso=^_!, rmul=^_#, + sgr0=\037!\E\:\0, smso=^_\s, smul=^_", +# (trs2: removed obsolete ":nl=^_:" -- esr) +trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M, + OTbs, am, msgr, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^_, cuf1=^], + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, dl1=^K, ed=^B, + el=^A, home=^F, ht=^I, il1=^D, ind=^J, kbs=^H, kcub1=^\, + kcud1=^_, kcuf1=^], kcuu1=^^, rmso=^O, sgr0=^O, smso=^N, +# From: Kevin Braunsdorf <ksb@mentor.cc.purdue.edu> +# (This had extension capabilities +# :BN=\E[?33h:BF=\E[?33l:UC=\E[_ q:BC=\E[\177 q:\ +# :CN=\ERC:CF=\ERc:NR=\ERD:NM=\ER@: +# I also deleted the unnecessary ":kn#2:", ":sg#0:" -- esr) +trs16|trs-80 model 16 console, + OTbs, am, + cols#80, it#8, lines#24, + acsc=jak`l_mbquvewcxs, bel=^G, civis=\ERc, clear=^L, + cnorm=\ERC, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, + dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\EP, il1=\EL, + ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + kf0=^A, kf1=^B, kf2=^D, kf3=^L, kf4=^U, kf5=^P, kf6=^N, kf7=^S, + khome=^W, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, + lf7=f8, mc4=\E]+, mc5=\E]=, rmacs=\ERg, rmso=\ER@, sgr0=\ER@, + smacs=\ERG, smso=\ERD, + +#### Commodore Business Machines +# +# Formerly located in West Chester, PA; went spectacularly bust in 1994 +# after years of shaky engineering and egregious mismanagement. Made one +# really nice machine (the Amiga) and boatloads of nasty ones (PET, C-64, +# C-128, VIC-20). The C-64 is said to have been the most popular machine +# ever (most units sold); they can still be found gathering dust in closets +# everywhere. +# + +# From: Kent Polk <kent@swrinde.nde.swri.edu>, 30 May 90 +# Added a few more entries, converted caret-type control sequence (^x) entries +# to '\0xx' entries since a couple of people mentioned losing '^x' sequences. +# Corrections by Ty Sarna <tsarna@endicor.com>, Sat Feb 28 18:55:15 1998 +# +# :as:, :ae: Support for alternate character sets. +# :ve=\E[\040p:vi=\E[\060\040p: cursor visible/invisible. +# :xn: vt100 kludginess at column 80/NEWLINE ignore after 80 cols(Concept) +# This one appears to fix a problem I always had with a line ending +# at 'width+1' (I think) followed by a blank line in vi. The blank +# line tended to disappear and reappear depending on how the screen +# was refreshed. Note that this is probably needed only if you use +# something like a Dnet Fterm with the window sized to some peculiar +# dimension larger than 80 columns. +# :k0=\E9~: map F10 to k0 - could have F0-9 -> k0-9, but ... F10 was 'k;' +# (amiga: removed obsolete :kn#10:, +# also added empty <acsc> to suppress a warning --esr) +amiga|Amiga ANSI, + OTbs, am, bw, xenl, + cols#80, lines#24, + acsc=, bel=^G, blink=\E[7;2m, bold=\E[1m, cbt=\E[Z, + civis=\E[0 p, clear=\E[H\E[J, cnorm=\E[ p, cub=\E[%p1%dD, + cub1=\E[D, 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[2m, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, + indn=\E[%p1%dS, invis=\E[8m, is2=\E[20l, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[9~, + kf1=\E[0~, kf2=\E[1~, kf3=\E[2~, kf4=\E[3~, kf5=\E[4~, + kf6=\E[5~, kf7=\E[6~, kf8=\E[7~, kf9=\E[8~, rev=\E[7m, + ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmso=\E[m, rmul=\E[m, + rs1=\Ec, sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m, + +# From: Hans Verkuil <hans@wyst.hobby.nl>, 4 Dec 1995 +# (amiga: added empty <acsc> to suppress a warning. +# I'm told this entry screws up badly with AS225, the Amiga +# TCP/IP package once from Commodore, and now sold by InterWorks.--esr) +amiga-h|Hans Verkuil's Amiga ANSI, + OTbs, bw, msgr, + cols#80, lines#24, + acsc=, bel=^G, blink=\2337;2m, bold=\2331m, cbt=\233Z, + civis=\2330 p, clear=\233H\233J, cnorm=\233 p, cr=^M, + cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B, + cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, + cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P, + dim=\2332m, ech=\233%p1%dP, ed=\233J, el=\233K, flash=^G, + home=\233H, ht=^I, ich=\233%p1%d@, ich1=\233@, ind=\233S, + indn=\233%p1%dS, invis=\2338m, is2=\23320l, kbs=^H, + kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A, + kdch1=\177, kf0=\2339~, kf1=\2330~, kf2=\2331~, kf3=\2332~, + kf4=\2333~, kf5=\2334~, kf6=\2335~, kf7=\2336~, kf8=\2337~, + kf9=\2338~, nel=\233B\r, rev=\2337m, ri=\233T, + rin=\233%p1%dT, rmacs=^O, rmcup=\233?7h, rmso=\2330m, + rmul=\2330m, rs1=\Ec, sgr0=\2330m, smacs=^N, smcup=\233?7l, + smso=\2337m, smul=\2334m, + +# From: Henning 'Faroul' Peters <Faroul@beyond.kn-bremen.de>, 25 Sep 1999 +# +# Pavel Fedin added +# Home Shift+Left +# End Shift+Right +# PgUp Shift+Up +# PgDn Shift+Down +amiga-8bit|Amiga ANSI using 8-bit controls, + acsc=, dl=\233%p1%dM, dl1=\233M, il=\233%p1%dL, il1=\233L, + ind=\204, indn@, kend=\233 @, khome=\233 A, knp=\233S, + kpp=\233T, ri=\215, rin@, use=amiga-h, + +# From: Ruediger Kuhlmann <terminfo@ruediger-kuhlmann.de>, 18 Jul 2000 +# requires use of appropriate preferences settings. +amiga-vnc|Amiga using VNC console (black on light gray), + am, da, db, msgr, ndscr, + btns#1, colors#16, cols#80, lines#24, lm#0, ncv#0, pairs#256, + bel=^G, blink=\E[7;2m, bold=\E[1m, civis=\E[0p, + clear=\E[H\E[J, cnorm=\E[p\E[>?6l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, + 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, + cvvis=\E[>?6h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, + dl=\E[%p1%dM, dl1=\E[1M, ed=\E[J, el=\E[K, flash=^G, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[1L, ind=\ED, + indn=\E[%p1%dS, invis=\E8m, + is2=\E[>?2;18l\E[>?26;?6;20;>?15;?7;>?22;>?8h, + kbs=^H, kcbt=\233Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kdch1=\177, kf0=\E[9~, kf1=\E[0~, kf2=\E[1~, + kf3=\E[2~, kf4=\E[3~, kf5=\E[4~, kf6=\E[5~, kf7=\E[6~, + kf8=\E[7~, kf9=\E[8~, khlp=\E[?~, khome=\E[44~, kll=\E[45~, + kmous=\E[M, knp=\E[42~, kpp=\E[41~, nel=\EE, oc=\E[0m, + rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=\E[?7h\E[r\E[J, + rmkx=\E[?1l, rmso=\E[21m, rmul=\E[24m, rs1=\Ec, + rs2=\E[>?2;18l\E[>?26;?6;20;>?15;?7;>?22;>?8h, + setab=\E[%?%p1%{8}%>%t%'F'%p1%+%d%e4%p1%d%;m, + setaf=\E[%?%p1%{8}%>%t%'2'%p1%+%d%e3%p1%d%;m, + sgr0=\E[0m\017\E[30;85;>15m, smcup=\E[?7h, smkx=\E[?1h, + smso=\E[1m, smul=\E[4m, + +# MorphOS on Genesi Pegasos +# By Pavel Fedin <sonic_amiga@rambler.ru> +morphos, + acsc=, dl=\233%p1%dM, dl1=\233M, il=\233%p1%dL, il1=\233L, + ind=\204, indn@, kend=\23345~, kf11=\23320~, kf12=\23321~, + khome=\23344~, kich1=\23340~, knp=\23342~, kpp=\23341~, + ri=\215, rin@, use=amiga-h, + +# Commodore B-128 microcomputer from Doug Tyrol <det@HEL-ACE.ARPA> +# I'm trying to write a termcap for a commodore b-128, and I'm +# having a little trouble. I've had to map most of my control characters +# to something that unix will accept (my delete-char is a ctrl-t, etc), +# and create some functions (like cm), but thats life. +# The problem is with the arrow keys - right, and up work fine, but +# left deletes the previous character and down I just can't figure out. +# Jove knows what I want, but I don't know what it's sending to me (it +# isn't thats bound to next-line in jove). +# Anybody got any ideas? Here's my termcap. +# DAG -- I changed his "^n" entries to "\n"; see if that works. +# +commodore|b-128|Commodore B-128 micro, + am, bw, + OTdN#20, cols#80, lines#24, pb#150, + OTbc=^H, OTnl=^M, clear=\E\006$<10/>, cr=^M, cud1=^J, + cuf1=^F, cup=\E\013%p1%2d\,%p2%2d\,$<20/>, cuu1=^P, + dch1=\177$<10*/>, dl1=\Ed$<10*/>, el=\Eq$<10/>, + home=\E^E, ht=\011$<5/>, ich1=\E\n$<5/>, il1=\Ei$<10/>, + kcub1=^B, kcud1=^J, kcuf1=^F, kcuu1=^P, khome=\E^E, rmir=, + smir=, + +#### North Star +# +# North Star Advantage from Lt. Fickie <brl-ibd!fickie> via BRL +northstar|North Star Advantage, + OTbs, + cols#80, lines#24, + clear=\004$<200/>, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<1/>, ed=\017$<200/>, + el=\016$<200/>, home=\034\032$<200/>, + +#### Osborne +# +# Thu Jul 7 03:55:16 1983 +# +# As an aside, be careful; it may sound like an anomaly on the +# Osborne, but with the 80-column upgrade, it's too easy to +# enter lines >80 columns! +# +# I've already had several comments... +# The Osborne-1 with the 80-col option is capable of being +# 52, 80, or 104 characters wide; default to 80 for compatibility +# with most systems. +# +# The tab is destructive on the Ozzie; make sure to 'stty -tabs'. +osborne-w|osborne1-w|osborne I in 104-column mode, + msgr, ul, xt, + cols#104, lines#24, + bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, el=\ET, ich1=\EQ, il1=\EE, ind=^J, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, rmso=\E(, rmul=\Em, smso=\E), smul=\El, +# Osborne I from ptsfa!rhc (Robert Cohen) via BRL +osborne|osborne1|osborne I in 80-column mode, + OTbs, am, mir, msgr, ul, xhp, + OTdB#4, cols#80, lines#24, + clear=^Z, cub1=\010$<4>, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, + dch1=\EW$<4/>, dl1=\ER, el=\ET, il1=\EE, is2=^Z, kbs=^H, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, rmir=, rmso=\E), + rmul=\Em, smir=\EQ, smso=\E(, smul=\El, +# +# Osborne Executive definition from BRL +# Similar to tvi920 +# Added by David Milligan and Tom Smith (SMU) +osexec|Osborne executive, + OTbs, am, + OTug#1, cols#80, lines#24, xmc#1, + OTnl=^J, bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE, + is2=\Eq\Ek\Em\EA\Ex0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, + kcuu1=^K, kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, + kf4=^AD\r, kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, + kf9=^AI\r, rmir=, rmso=\Ek, rmul=\Em, smir=, smso=\Ej, + smul=\El, tbc=\E3, + +#### Console types for obsolete UNIX clones +# +# Coherent, Minix, Venix, and several lesser-known kin were OSs for 8088 +# machines that tried to emulate the UNIX look'n'feel. Coherent and Venix +# were commercial, Minix an educational tool sold in conjunction with a book. +# Memory-segmentation limits and a strong tendency to look like V7 long after +# it was obsolete made all three pretty lame. Venix croaked early. Coherent +# and Minix were ported to 32-bit Intel boxes, only to be run over by a +# steamroller named `Linux' (which, to be fair, traces some lineage to Minix). +# Coherent's vendor, the Mark Williams Company, went belly-up in 1994. There +# are also, I'm told, Minix ports that ran on Amiga and Atari machines and +# even as single processes under SunOS and the Macintosh OS. +# + +# See +# http://www.minix3.org/manpages/man4/console.4.html +minix|minix console (v3), + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, + kdch1=\177, kend=\E[Y, kf0=\E[21~, kf1=\E[11~, kf10=\E[21~, + kf11=\E[11;2~, kf12=\E[12;2~, kf13=\E[13;2~, + kf14=\E[14;2~, kf15=\E[15;2~, kf16=\E[17;2~, + kf17=\E[18;2~, kf18=\E[19;2~, kf19=\E[20;2~, kf2=\E[12~, + kf20=\E[21;2~, kf21=\E[11;5~, kf22=\E[12;5~, + kf23=\E[13;5~, kf24=\E[14;5~, kf25=\E[15;5~, + kf26=\E[17;5~, kf27=\E[18;5~, kf28=\E[19;5~, + kf29=\E[20;5~, kf3=\E[13~, kf30=\E[21;5~, kf31=\E[11;6~, + kf32=\E[12;6~, kf33=\E[13;6~, kf34=\E[14;6~, + kf35=\E[15;6~, kf36=\E[17;6~, kf37=\E[18;6~, + kf38=\E[19;6~, kf39=\E[20;6~, kf4=\E[14~, kf40=\E[21;6~, + kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, + kich1=\E[@, knp=\E[U, kpp=\E[V, lf0@, lf1@, lf2@, lf3@, lf4@, lf5@, + use=minix-3.0, + +minix-3.0|minix console (v3.0), + use=ecma+color, use=minix-1.7, + +# See +# http://www.minix-vmd.org/pub/Minix-vmd/1.7.0/wwwman/man4/console.4.html +# This is the entry provided with minix 1.7.4, with bogus :ri: removed. +minix-1.7|minix console (v1.7), + am, xenl, + cols#80, it#8, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[0J, cr=^M, + cub=\E[%p1%dD, cub1=^H, 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, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[K, el1=\E[2K, + home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, + il1=\E[L, ind=^J, is2=\E[0m, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf0=\E[Y, kf1=\E[V, kf2=\E[U, + kf3=\E[T, kf4=\E[S, kf5=\E[G, khome=\E[H, lf0=End, lf1=PgUp, + lf2=PgDn, lf3=Num +, lf4=Num -, lf5=Num 5, nel=^M^J, + rev=\E[7m, ri=\EM, rmso=\E[0m, rmul=\E[0m, sgr0=\E[0m, + smso=\E[7m, smul=\E[4m, +# Corrected Jan 14, 1997 by Vincent Broman <broman@nosc.mil> +minix-old|minix-1.5|minix console (v1.5), + xon, + cols#80, it#8, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[0J, cr=^M, + cub=\E[%p1%dD, cub1=^H, 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, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[K, home=\E[H, ht=^I, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, + kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, + kf0=\E[Y, kf1=\E[V, kf2=\E[U, kf3=\E[T, kf4=\E[S, kf5=\E[G, + khome=\E[H, nel=^M^J, rev=\E[7m, ri=\EM, rmso=\E[0m, + rmul=\E[0m, sgr0=\E[0m, smso=\E[7m, smul=\E[4m, +# The linewrap option can be specified by editing /usr/include/minix/config.h +# before recompiling the minix 1.5 kernel. +minix-old-am|minix console with linewrap, + am, use=minix-old, + +pc-minix|minix console on an Intel box, + use=klone+acs, use=minix-3.0, + +# According to the Coherent 2.3 manual, the PC console is similar +# to a z19. The differences seem to be (1) 25 lines, (2) no status +# line, (3) standout is broken, (4) ins/del line is broken, (5) +# has blinking and bold. +pc-coherent|pcz19|coherent|IBM PC console running Coherent, + am, mir, + cols#80, it#8, lines#25, + bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EN, + ed=\EJ, el=\EK, home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH, ri=\EI, rmir=\EO, + rmso=\Eq, sgr0=\Eq, smir=\E@, smso=\Ep, + +# According to the Venix 1.1 manual, the PC console is similar +# to a DEC vt52. Differences seem to be (1) arrow keys send +# different strings, (2) enhanced standout, (3) added insert/delete line. +# Note in particular that it doesn't have automatic margins. +# There are other keys (f1-f10, kpp, knp, kcbt, kich1, kdch1) but they +# not described here because this derives from an old termcap entry. +pc-venix|venix|IBM PC console running Venix, + cols#80, it#8, lines#25, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dl1=\EM, + ed=\EJ, el=\EK, ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\EK, + kcud1=\EP, kcuf1=\EM, kcuu1=\EH, khome=\EG, ri=\EI, + +#### Miscellaneous microcomputer consoles +# +# If you know anything more about any of these, please tell me. +# + +# The MAI Basic Four computer was obsolete at the end of the 1980s. +# It may be used as a terminal by putting it in "line" mode as seen on +# one of the status lines. +# Initialization is similar to CIT80. <is2> will set ANSI mode for you. +# Hardware tabs set by <if> at 8-spacing. Auto line wrap causes glitches so +# wrap mode is reset by <cvvis>. Using <ind>=\E[S caused errors so I +# used \ED instead. +# From: bf347@lafn.org (David Lawyer), 28 Jun 1997 +mai|basic4|MAI Basic Four in ansi mode, + am, da, db, mir, msgr, + cols#82, it#8, lines#25, + bel=^G, blink=\E[5m, bold=\E[1m, clear=^]^_, cnorm=\E[?7h, + cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=^X, + cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, cvvis=\E[?7l, dch1=\E[1P, + dl1=\E[M, ed=^_, el=^^, home=^], ht=^I, + if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED, + is2=\E>\E[?1h\E[?7h\E[?5l\017\E(B\E[m\E[20l\E[1;24r\E[24;1H, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, + kf7=\EOV, kf8=\EOW, nel=^M\ED, rc=\E8, rev=\E[7m, ri=\E[T, + rmir=\E[4l, rmso=\E[m, rmul=\E[m, sc=\E7, sgr0=\E[m, + smir=\E[4h, smso=\E[7m, smul=\E[4m, +# basis from Peter Harrison, Computer Graphics Lab, San Francisco +# ucbvax!ucsfmis!harrison ...uucp / ucbvax!ucsfmis!harrison@BERKELEY ...ARPA +# +# On Sat, 7 Aug 1999, Torsten Jerzembeck <toje@nightingale.ms.sub.org> wrote: +# The Basis 108 was a Apple II clone, manufactured by the "Basis +# Mikrocomputer GmbH" in Munster, Germany (the company still exists today, +# about 1,5 km from where I live, but doesn't build own computers any +# more). A Basis 108 featured a really heavy (cast aluminium?) case, was +# equipped with one or two 5.25" disk drives, had a monochrome and colour +# video output for a TV set or a dedicated monitor and several slots for +# Apple II cards. Basis 108 were quite popular at german schools before +# the advent of the IBM PC. They run, for example, the UCSD Pascal +# development system (which I used even in 1993 to program the steering +# and data recording for our school's experimental solar panel :), Apple DOS +# or CP/M. +# (basis: removed obsolete ":ma=^K^P^R^L^L :nl=5000*^J:" -- esr) +basis|BASIS108 computer with terminal translation table active, + clear=\E*$<300/>, cud1=\n$<5000/>, ed=\EY, el=\ET, kbs=^H, + kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, rmso=\E), sgr0=\E), + smso=\E(, use=adm3a, +# luna's BMC terminal emulator +luna|luna68k|LUNA68K Bitmap console, + cols#88, lines#46, use=ansi-mini, +megatek|pegasus workstation terminal emulator, + am, os, + cols#83, lines#60, +# The Xerox 820 was a Z80 micro with a snazzy XEROX PARC-derived +# interface (pre-Macintosh by several years) that went nowhere. +xerox820|x820|Xerox 820, + am, + cols#80, lines#24, + bel=^G, clear=1^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=^Q, el=^X, + home=^^, ind=^J, + +#### Videotex and teletext +# + +# \E\:1} switch to te'le'informatique mode (ascii terminal/ISO 6429) +# \E[?3l 80 columns +# \E[?4l scrolling on +# \E[12h local echo off +# \Ec reset: G0 U.S. charset (to get #,@,{,},...), 80 cols, clear screen +# \E)0 G1 DEC set (line graphics) +# +# From: Igor Tamitegama <igor@ppp1493-ft.teaser.fr>, 18 Jan 1997 +m2-nam|minitel|minitel-2|minitel-2-nam|France Telecom Minitel 2 mode te'le'informatique, + OTbs, eslok, hs, xenl, + cols#80, it#8, lines#24, wsl#72, xmc#0, + acsc=aaffggjjkkllmmnnooqqssttuuvvwwxx, bel=^G, + blink=\E[5m, bold=\E[1m, civis=\E[<1h, clear=\E[H\E[J, + cnorm=\E[<1l, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub=\E[%p1%dD, cub1=\E[D, 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, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, flash=^G, fsl=^J, + home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J, ip=$<7/>, + is1=\E\:1}\Ec\E[?4l\E[12h, is2=\Ec\E[12h\E)0, + is3=\E[?3l kbs=\010, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kf0=\EOp, + kf1=\EOq, kf10=\EOp, kf2=\EOr, kf3=\EOs, kf4=\EOt, kf5=\EOu, + kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, khome=\E[H, + kich1=\E[4h, kil1=\E[4l, knp=\EOn, kpp=\EOR, ll=\E[24;80H, + mc0=\E[i, nel=^M^J, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, + rs1=\Ec\E[?4l\E[12h, rs2=\Ec\E)0, sc=\E7, sgr0=\E[m, + smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=^_@A, + u6=\E[%i%d;%dR, u7=\E[6n, + +# From: Alexandre Montaron <canal@mygale.org>, 18 Jun 1998 +# +minitel1|minitel 1, + am, bw, eslok, hs, hz, msgr, + colors#8, cols#40, lines#24, pairs#8, + acsc=+.\,\,./f0g1, bel=^G, blink=\EH, civis=^T, clear=^L, + cnorm=^Q, cr=^M, cub1=^H, cud1=^J, cuf1=^I, + cup=\037%p1%{65}%+%c%p2%{65}%+%c, cuu1=^K, el=^X, + enacs=^Y, fsl=^J, home=^^, ind=^J, + is2=\E;`ZQ\E\:iC\E\:iE\021, nel=^M^J, op=\EG, + rep=%p1%c\022%p2%{63}%+%c, rev=\E], ri=^K, rmso=\E\\, + setf=\E%?%p1%{1}%=%tD%e%p1%{3}%=%tF%e%p1%{4}%=%tA%e%p1%{6}%=%tC%e%p1%{64}%+%c%;, + sgr=%?%p1%t\E]%;%?%p3%t\E]%;%?%p4%t\EH%;, + sgr0=\EI\E\\, smso=\E], tsl=\037@%p1%{65}%+%c, +# is2=Fnct TE, Fnct MR, Fnct CM et pour finir: curseur ON. +minitel1b|minitel 1-bistandard (in 40cols mode), + mir, + cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, + cuu=\E[%p1%dA, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el1=\E[1K, il=\E[%p1%dL, il1=\E[L, + is1=\E;iYA\E;jYC, kclr=\E[2J, kctab=^I, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, + kel=^X, khome=\E[H, kich1=\E[4h, kil1=\E[L, rmir=\E[4l, + smir=\E[4h, smkx=\E;iYA\E;jYC, use=minitel1, +# <rmkx> posait des problemes (logout en sortant de vi). +minitel1b-80|minitel 1-bistandard (standard teleinformatique), + am@, bw@, hz@, + colors@, cols#80, it#8, pairs@, + blink=\E[5m, bold=\E[1m, civis=\037@A\024\n, + clear=\E[H\E[2J, cnorm=\037@A\021\n, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, + ht=^I, ind=\ED, is1@, is2@, kent=\EOM, kf0=\EOp, kf1=\EOq, + kf2=\EOr, kf3=\EOs, kf4=\EOt, kf5=\EOu, kf6=\EOv, kf7=\EOw, + kf8=\EOx, kf9=\EOy, nel=\EE, op@, rc=\E8, rep@, rev=\E[7m, + ri=\EM, rmkx@, rmso=\E[27m, rmul=\E[24m, sc=\E7, setf@, + sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, + sgr0=\E[m, smkx@, smso=\E[7m, smul=\E[4m, use=minitel1b, + +######## OBSOLETE VDT TYPES +# +# These terminals are *long* dead -- these entries are retained for +# historical interest only. + +#### Amtek Business Machines +# + +# (abm80: early versions of this entry apparently had ":se=\E^_:so=\E^Y", +# but these caps were commented out in 8.3; also, removed overridden +# ":do=^J:" -- esr) +abm80|amtek business machines 80, + OTbs, am, bw, + cols#80, lines#24, + cbt=^T, clear=\E^\, cub1=^H, cud1=\E^K, cuf1=^P, + cup=\E\021%p2%{32}%+%c%p1%{32}%+%c, cuu1=\E^L, + dl1=\E^S, ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, + +#### Bell Labs blit terminals +# +# These were AT&T's official entries. The 5620 FAQ maintained by +# David Breneman <daveb@dgtl.com> has this to say: +# +# Actually, in the beginning was the Jerq, and the Jerq was white with a +# green face, and Locanthi and Pike looked upon the Jerq and said the Jerq +# was good. But lo, upon the horizon loomed a mighty management-type person +# (known now only by the initials VP) who said, the mighty Jerq must stay +# alone, and could not go forth into the world. So Locanthi and Pike put the +# Jerq to sleep, cloned its parts, and the Blit was brought forth unto the +# world. And the Jerq lived the rest of its days in research, but never +# strayed from those paths. +# +# In all seriousness, the Blit was originally known as the Jerq, but when +# it started to be shown outside of the halls of the Bell Labs Research +# organization, the management powers that be decided that the name could +# not remain. So it was renamed to be Blit. This was in late 1981. +# +# (The AT&T 5620 was the commercialized Blit. Its successors were the 630, +# 730, and 730+.) +# + +blit|jerq|blit running teletype rom, + am, eo, ul, xon, + cols#87, it#8, lines#72, + bel=^G, clear=^L, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC, + cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, + dch=\Ee%p1%{32}%+%c, dch1=\Ee!, dl=\EE%p1%{32}%+%c, + dl1=\EE!, el=\EK, ht=^I, ich=\Ef%p1%{32}%+%c, ich1=\Ef!, + il=\EF%p1%{32}%+%c, il1=\EF!, ind=^J, kbs=^H, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\Ex, kf2=\Ey, kf3=\Ez, + +# (cbblit: here's a BSD termcap that says <cud1=\EG> -- esr) +cbblit|fixterm|blit running columbus code, + cols#88, + ed=\EJ, flash=\E^G, ich1@, mc4=^T, mc5=^R, mc5p=\EP%p1%03d, + rmir=\ER, rmso=\EV!, rmul=\EV", smir=\EQ, smso=\EU!, + smul=\EU", use=blit, + +oblit|ojerq|first version of blit rom, + am, da, db, eo, mir, ul, xon, + cols#88, it#8, lines#72, + bel=^G, clear=^L, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC, + cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dch1=\EO, + dl=\Ee%p1%{32}%+%c, dl1=\EE, ed=\EJ, el=\EK, flash=\E^G, + ht=^I, il=\Ef%p1%{32}%+%c, il1=\EF, ind=^J, kbs=^H, rmir=\ER, + smir=\EQ, + +#### Bolt, Beranek & Newman (bbn) +# +# The BitGraph was a product of the now-defunct BBN Computer Corporation. +# The parent company, best known as the architects of the Internet, is +# still around. +# +# Jeff DelPapa <dp@world.std.com> writes: +# The bitgraph was a large white box that contained a monochrome bitmap +# display, and a 68000 to run it. You could download code and run it on +# the cpu, it had 128kb (I think) of memory. I used one in the late +# 70's, sure beat a vt100. It had one strange feature tho -- it used +# the cpu to bitblt pixels to scroll, it took longer than the refresh +# rate, and looked like a rubber sheet stretching, then snapping +# upwards. It had everything the early mac had, except a floppy drive a +# small screen (it had a 17" crisp beauty) and a real OS. They (Bolt +# Beranek and Neuman) sold at most a few hundred of them to the real +# world. DOD may have bought more... +# + +# Entries for the BitGraph terminals. The problem +# with scrolling in vi can only be fixed by getting BBN to put +# smarter scroll logic in the terminal or changing vi or padding +# scrolls with about 500 ms delay. +# +# I always thought the problem was related to the terminal +# counting newlines in its input buffer before scrolling and +# then moving the screen that much. Then vi comes along and +# paints lines in on the bottom line of the screen, so you get +# this big white gap. + +bitgraph|bg2.0nv|bg3.10nv|bbn bitgraph 2.0 or later (normal video), + flash=\E[?5h$<200/>\E[?5l, is2=\E>\E[?5l\E[?7h, + use=bg2.0, +bg2.0rv|bg3.10rv|bbn bitgraph 2.0 (reverse video), + flash=\E[?5l$<200/>\E[?5h, is2=\E>\E[?5h\E[?7h, + use=bg2.0, +bg2.0|bg3.10|bbn bitgraph 2.0 or later (no init), + OTbs, xenl, + cols#85, lines#64, + bel=^G, clear=\E[H\E[J$<150>, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, + cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, dl1=\E[M$<2*>, + ed=\E[J$<150>, el=\E[K$<2>, ht=^I, il1=\E[L$<2*>, + ind=\n$<280>, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, + kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=PF1, + lf2=PF2, lf3=PF3, lf4=PF4, rc=\E8, rmkx=\E>, rmso=\E[m, sc=\E7, + sgr0=\E[m, smkx=\E=, smso=\E[7m, + +bg1.25rv|bbn bitgraph 1.25 (reverse video), + flash=\E[?5l$<200/>\E[?5h, is2=\E>\E[?5h\E[?7h, + use=bg1.25, +bg1.25nv|bbn bitgraph 1.25 (normal video), + flash=\E[?5h$<200/>\E[?5l, is2=\E>\E[?5l\E[?7h, + use=bg1.25, +# (bg1.25: I added <rmam>/<smam> based on the init string -- esr) +bg1.25|bbn bitgraph 1.25, + cols#85, lines#64, + bel=^G, clear=\E[H\E[J$<150>, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, + dl1=\E[M$<2*>, ed=\E[J$<150>, el=\E[K$<2>, ht=^I, + il1=\E[L$<2*>, ind=\n$<280>, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\ES, + lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, ll=\E[64;1H, rmam=\E[?7l, + rmkx=\E>, rmso=\E[m, sgr0=\E[m, smam=\E[?7h, smkx=\E=, + smso=\E[7m, + +#### Bull (bq, dku, vip) +# +# (Adapted for terminfo; AIX extension capabilities translated -- esr) + +#============================================# +# BULL QUESTAR 210 `SDP' terminals emulation # +#============================================# +# +# Description written by R.K.Saunders (Bull Transac) +# +# Modifications written by F. Girard (Bull MTS) +# 19-05-87 V02.00.01 +# 17-12-87 V02.00.02 +# 15-09-89 V02.00.05 +# +# Typical technical selections F1 (modes SDP/ROLL): +# ------------------------------------------------------- +# | 01 02 03 04 05 06 07 08 09 10 | +# | 1010 0011 1010 0110 0110 0001 0100 0000 0000 0000 | +# | | +# | 11 12 13 14 15 16 17 18 19 20 | +# | 0000 0110 100? 0000 0000 0000 0001 0000 0000 0001 | +# | | +# | 21 22 23 24 25 26 27 28 29 30 | +# | 0011 0000 0001 1000 0000 0000 0000 0000 0000 0000 | +# | | +# | 31 32 33 34 35 36 37 38 39 40 | +# | 1010 0011 0000 0000 0000 0000 0000 0000 0000 0000 | +# ------------------------------------------------------- +# Typical firmware identification F5 "etat 6": +# P287.02.04b (AZERTY) +# P297.11.04 (24-pin: 2732) or P798.11.04 (28-pin: 2764) +# P298.03.03 (monochrome) or P374.03.02 (colour) +# +# SM SDP mode (VIP command): ^[[?=h +# RIS (erases screen): ^[c +# DMI disable keyboard: ^[` +# SM double rendition mode: ^[[?>h +# RM solicited status mode: ^[[5l +# RM character mode: ^[[>l +# RM echoplex mode: ^[[12l +# RM column tab mode: ^[[18l +# RM forbid SS2 keyboard mode: ^[[?<l +# SM scroll mode: ^[[=h +# FCF enable XON/XOFF: ^[P1s^[\ +# MTL select end msg character: ^[[^Wp +# EMI enable keyboard: ^[b +# RIS retour etat initial: ^[c +# enable FC keypad: ^[[?<h, +# MPW map status line window: ^[PY99:98^[\ +# SCP select status line: ^[[0;98v +# ED erase entire partition: ^[[2J +# SCP select main partition: ^[[v +# SM character insertion mode: ^[[4h +# RM character replacement mode: ^[[4l +# COO cursor on: ^[[r +# COO cursor off: ^[[1r +# SGR dim (turquoise) rev attr: ^[[2;7m +# SGR Data normal attr: ^[[m +# SO Line-graphic mode ON: ^N +# SI Line-graphic mode OFF: ^O +# MC start routing to printer: ^[[5i +# MC stop routing to printer: ^M^[[4i +# + +# This entry covers the following terminals: +# dku7102, tws2102, and tws models 2105 to 2112 +tws-generic|dku7102|Bull Questar tws terminals, + am, eslok, hs, mir, msgr, xenl, xhp@, xon, + cols#80, it#8, lines#24, wsl#80, + acsc=``aaffggj)k\,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~, + bel=^G, blink=\E[0;5m, cbt=\E[Z, civis=\E[1r, clear=\E[2J, + cnorm=\E[r, cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, + cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df, + cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, + dim=\E[0;2m, dl=\E[%p1%dM, dl1=\E[M, + dsl=\EPY99\:98\E\\\E[0;98v\E[2J\E[v, ed=\E[J, el=\E[K, + fsl=\E[v, home=\E[H, ht=\E[I, hts=\EH, il=\E[%p1%dL, + il1=\E[L, ind=^J, invis=\E[0;8m, + is1=\E[?=h\Ec\E`\E[?>h\EPY99\:98\E\\, + is2=\E[5;>;12;18;?<l\E[=h\EP1s\E\\\E[\027p, + is3=\Eb\E[?<h, kbs=^H, kcbt=\E[Z, kctab=\E[g, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, + ked=\E[J, kel=\E[K, kf1=\E[1u\027, kf2=\E[2u\027, + kf3=\E[3u\027, kf4=\E[4u\027, kf5=\E[5u\027, + kf6=\E[6u\027, kf7=\E[7u\027, kf8=\E[8u\027, khome=\E[H, + khts=\EH, kil1=\E[L, krmir=\E[4l, ll=\E[H\E[A, mc0=\E[0i, + mc4=\r\E[4i, mc5=\E[5i, rev=\E[0;7m, rmacs=^O, + rmcup=\E[0;98v\E[2J\E[v, rmir=\E[4l, rmso=\E[m, + rmul=\E[m, rs2=\E[?=h\Ec, s0ds=^O, s1ds=^N, + sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, + sgr0=\E[m\017, smacs=^N, smcup=\E[?>h\EPY99\:98\E\\, + smir=\E[4h, smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g, + tsl=\EPY99\:98\E\\\E[0;98v\E[2;7m, +tws2102-sna|dku7102-sna|BULL Questar tws2102 for SNA, + dsl=\E[0;98v\E[2J\E[v, fsl=\E[v, is3=\Eb, tsl=\E[0;98v, + use=tws-generic, +tws2103|xdku|BULL Questar tws2103, + ht=^I, use=tws-generic, +tws2103-sna|dku7103-sna|BULL Questar tws2103 for SNA, + ht=^I, use=tws2102-sna, +dku7102-old|BULL Questar 200 DKU7102 (microcode version < 6), + clear=\E[2J\E[H, cup@, dl@, dl1@, + dsl=\EPY99\:98\E\\\E[0;98v\E[2J\E[H\E[v, el=\E[K\E[m, + il@, il1@, tsl=\EPY99\:98\E\\\E[0;98v\E[H\E[2;7m, + use=tws-generic, +dku7202|BULL Questar 200 DKU7202 (colour/character attributes), + blink=\E[0;2;4m, dim=\E[0;5m, ht=^I, is3=\E[?3h\Eb, + smso=\E[0;4;5;7m, smul=\E[0;2m, use=tws-generic, + +#=========================================================# +# BULL QUESTAR 303 & 310 `DEC VT 320' terminals emulation # +#=========================================================# +# +# Description written by J. Staerck (BULL SA) +# Copyright (c) 1989 BULL SA +#--------------------------------------------------------------------------- +# This entry is used for terminals with vt320 emulation mode +# and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 7 bit Control Characters, +# 80 columns screen. +# Hereafter are some DEC vt terminals' commands. (valid on vt200 and 300) +# They are used in string capabilities with vt220-320 emulation mode. +# In the following DEC definitions, two kinds of terminfo databases are +# provided : +# 1. the first with Command Sequence Introducer starting with escape +# sequence in 7 bits characters ex. ESC [ : 2 chars. in 7-bit mode. +# 2. the second with Command Sequence Introducer starting with escape +# sequence in 8 bits characters ex. ESC [ : 1 char. 'CSI' =x9B. +# Soft Terminal Reset esc [ ! p +# RIS (erases screen): esc c +# DECKPNM numeric keypad mode: esc > +# DECKPAM applic. keypad mode: esc = +# DECSTBM Scrolling region: esc [ r +# SCS select G0 = US: esc ( B +# SCS select G1 = line-graphic: esc ) 0 +# Select 7-bit C1 controls: esc sp F +# Select 8-bit C1 controls: esc sp G +# Select cursor home: esc [ H +# Select erase screen: esc [ J +# SM KAM lock keyboard: esc [ 2 h +# RM KAM unlock keyboard: esc [ 2 l +# SM SRM local echo off: esc [ 1 2 h +# RM SRM local echo on: esc [ 1 2 l +# SM LNM New line : esc [ 2 0 h +# RM LNM return = CR only: esc [ 2 0 l +# SM DECCKM cursor keys mode: esc [ ? 1 h +# RM DECCKM appli. keys mode: esc [ ? 1 l +# SM DECANM ANSI mode on: esc [ ? 2 h +# RM DECANM ANSI mode off: esc [ ? 2 l +# SM DECCOLM 132-column screen: esc [ ? 3 h +# RM DECCOLM 80-column screen: esc [ ? 3 l +# SM DECSCLM Smooth scroll: esc [ ? 4 h +# RM DECSCLM Jump scroll: esc [ ? 4 l +# SM DECSCNM screen light backgr. esc [ ? 5 h +# RM DECSCNM screen dark backgr. esc [ ? 5 l +# SM DECOM move within margins: esc [ ? 6 h +# RM DECOM move outside margins: esc [ ? 6 l +# SM DECAWM auto right margin: esc [ ? 7 h +# RM DECAWM auto right margin: esc [ ? 7 l +# SM DECARM auto repeat: esc [ ? 8 h +# RM DECARM auto repeat: esc [ ? 8 l +# DECSASD Select active main: esc [ 0 $ } +# DECSASD Select active status: esc [ 1 $ } +# DECSSDT Select status none: esc [ 0 $ ~ +# DECSSDT Select status indic.: esc [ 1 $ ~ +# DECSSDT Select status host-wr: esc [ 2 $ ~ +# SM DECTCEM Visible cursor: esc [ ? 2 5 h +# RM DECTCEM Invisible cursor: esc [ ? 2 5 l +# SM DECNCRM 7 bits NCR set: esc [ ? 4 2 h +# RM DECNCRM Multi or ISO latin: esc [ ? 4 2 l +# SM DECNKM numeric keypad mode: esc [ ? 6 6 h +# RM DECNKM numeric keypad appl.: esc [ ? 6 6 l +# SM DECKBUM clavier informatique esc [ ? 6 8 h +# RM DECKBUM clavier bureautique: esc [ ? 6 8 l +# DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 " p +# or DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 ; 0 " p +# or DECSCL vt300 mode 8-bit ctrl: esc [ 6 3 ; 2 " p +# DECSCL vt300 mode 7-bit ctrl: esc [ 6 3 ; 1 " p +# Char. and Line attributes: esc [ Ps ... Ps m +# with: 0 All off, 1 Bold, 4 Underline, 5 Blinking, 7 Reverse +# and : 22 Bold off, 24 Underline off, 25 Blinking off, 27 Reverse off +# + +# This entry covers BQ303, BQ306, BQ310, Q303, Q306, Q310 +bq300|Bull vt320 ISO Latin 1 80 columns terminal, + am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + 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, cub=\E[%p1%dD, cub1=\E[D, + 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, dl=\E[%p1%dM, dl1=\E[M, + dsl=\E[1$}\E[2$~\n\E[0$}, ech=\E[%p1%dX, ed=\E[J, + el=\E[K, el1=\E[1K, enacs=\E(B\E)0, + flash=\E[?5h$<50>\E[?5l, fsl=\E[0$}, home=\E[H, ht=^I, + hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, + is1=\E[63;1"p\E[2h, + is2=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + is3=\E[0$}\E[?25h\E[2l\E[H\E[J, ka1=\EOw, ka3=\EOy, + kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, 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=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, + kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, + khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, + mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, + ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?7h, rmir=\E[4l, + rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\E[!p, + rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7, + sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\E[0m\E(B, smacs=\E(0, smam=\E[?7h, + smcup=\E[?7l\E[?1l\E(B, smir=\E[4h, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, +bq300-rv|Bull vt320 reverse 80 columns, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + use=bq300, +bq300-w|Bull vt320 132 columns, + cols#132, wsl#132, + is2=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300, +bq300-w-rv|Bull vt320 reverse mode 132 columns, + cols#132, wsl#132, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300, + +# This entry is used for terminals with vt320 emulation mode +# and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 8 bit Control Characters, (CSI coded as x9B for ESC [) +# 80 columns screen. +# Soft Terminal Reset csi ! p +# RIS (erases screen): esc c +# DECKPNM numeric keypad mode: esc > +# DECKPAM applic. keypad mode: esc = +# DECSTBM Scrolling region: esc [ r +# SCS select G0 = US: esc ( B +# SCS select G1 = line-graphic: esc ) 0 +# Select 7-bit C1 controls: esc sp F +# Select 8-bit C1 controls: esc sp G +# Select cursor home: csi H +# Select erase screen: csi J +# SM KAM lock keyboard: csi 2 h +# RM KAM unlock keyboard: csi 2 l +# SM SRM local echo off: csi 1 2 h +# RM SRM local echo on: csi 1 2 l +# SM LNM New line : csi 2 0 h +# RM LNM return = CR only: csi 2 0 l +# SM DECCKM cursor keys mode: csi ? 1 h +# RM DECCKM appli. keys mode: csi ? 1 l +# SM DECANM ANSI mode on: csi ? 2 h +# RM DECANM ANSI mode off: csi ? 2 l +# SM DECCOLM 132-column screen: csi ? 3 h +# RM DECCOLM 80-column screen: csi ? 3 l +# SM DECSCLM Smooth scroll: csi ? 4 h +# RM DECSCLM Jump scroll: csi ? 4 l +# SM DECSCNM screen light backgr. csi ? 5 h +# RM DECSCNM screen dark backgr. csi ? 5 l +# SM DECOM move within margins: csi ? 6 h +# RM DECOM move outside margins: csi ? 6 l +# SM DECAWM auto right margin: csi ? 7 h +# RM DECAWM auto right margin: csi ? 7 l +# SM DECARM auto repeat: csi ? 8 h +# RM DECARM auto repeat: csi ? 8 l +# DECSASD Select active main: csi 0 $ } +# DECSASD Select active status: csi 1 $ } +# DECSSDT Select status none: csi 0 $ ~ +# DECSSDT Select status indic.: csi 1 $ ~ +# DECSSDT Select status host-wr: csi 2 $ ~ +# SM DECTCEM Visible cursor: csi ? 2 5 h +# RM DECTCEM Invisible cursor: csi ? 2 5 l +# SM DECNCRM 7 bits NCR set: csi ? 4 2 h +# RM DECNCRM Multi or ISO latin: csi ? 4 2 l +# DECSCL vt300 mode 8-bit ctrl: csi 6 3 " p +# or DECSCL vt300 mode 8-bit ctrl: csi 6 3 ; 0 " p +# DECSCL vt300 mode 7-bit ctrl: csi 6 3 ; 1 " p +# Char. and Line attributes: csi Ps ... Ps m +# with: 0 All off, 1 Bold, 4 Underline, 5 Blinking, 7 Reverse +# and : 22 Bold off, 24 Underline off, 25 Blinking off, 27 Reverse off +# (bq300-8: <cub1>,<cuf1>,<cuu1>,<cud1>,<dl1>,<il1> to get under 1024 --esr) +bq300-8|Bull vt320 full 8 bits 80 columns, + am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, wsl#80, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\2335m, bold=\2331m, civis=\233?25l, + clear=\233H\233J, cnorm=\233?25h, cr=^M, + csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=\2331D, + cud=\233%p1%dB, cud1=\2331B, cuf=\233%p1%dC, cuf1=\2331C, + cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\2331A, + dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, + dsl=\2331$}\2332$~\n\2330$}, ech=\233%p1%dX, ed=\233J, + el=\233K, el1=\2331K, enacs=\E(B\E)0, + flash=\233?5h$<50>\233?5l, fsl=\2330$}, home=\233H, + ht=^I, hts=\EH, ich=\233%p1%d@, il=\233%p1%dL, ind=\ED, + is1=\E[63;2"p\E[2h, + is2=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + is3=\2330$}\233?25h\2332l\233H\233J, ka1=\217w, + ka3=\217y, kb2=\217u, kbs=^H, kc1=\217q, kc3=\217s, + kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A, + kdch1=\2333~, kf1=\217P, kf10=\23321~, kf11=\23323~, + kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~, + kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~, + kf2=\217Q, kf20=\23334~, kf3=\217R, kf4=\217S, kf6=\23317~, + kf7=\23318~, kf8=\23319~, kf9=\23320~, kfnd=\2331~, + khlp=\23328~, kich1=\2332~, knp=\2336~, kpp=\2335~, + krdo=\23329~, kslt=\2334~, lf1=pf1, lf2=pf2, lf3=pf3, + lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i, nel=\EE, rc=\E8, + rev=\2337m, ri=\EM, rmacs=^O, rmam=\233?7l, rmcup=\233?7h, + rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m, + rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7, + sgr=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;, + sgr0=\2330m\E(B, smacs=^N, smam=\233?7h, + smcup=\233?7l\233?1l\E(B, smir=\2334h, smso=\2337m, + smul=\2334m, tbc=\2333g, tsl=\2331$}\2332$~, +bq300-8rv|Bull vt320 8-bit reverse mode 80 columns, + flash=\233?5l$<50>\233?5h, + is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + use=bq300-8, +bq300-8w|Bull vt320 8-bit 132 columns, + cols#132, wsl#132, + is2=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + rs2=\233?3h, use=bq300-8, +bq300-w-8rv|Bull vt320 8-bit reverse mode 132 columns, + cols#132, wsl#132, + flash=\233?5l$<50>\233?5h, + is2=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + rs2=\233?3h, use=bq300-8, + +# This entry is used for terminals with vt320 emulation mode +# a 102 keys keyboard (PC scancode !) and following set-up : +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 7 bit Control Characters, +# 80 columns screen. +bq300-pc|Questar 303 with PC keyboard ISO Latin 1 80 columns, + kbs=^H, kdch1=\E[3~, kend=\E[4~, kf1=\E[17~, kf10=\E[28~, + kf11=\E[29~, kf12=\E[31~, kf13@, kf14@, kf15@, kf16@, kf17@, + kf18@, kf19@, kf2=\E[18~, kf20@, kf3=\E[19~, kf4=\E[20~, + kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, + kfnd@, khlp@, khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, + krdo@, kslt@, lf1@, lf2@, lf3@, lf4@, use=bq300, +bq300-pc-rv|Questar 303 with PC keyboard reverse mode 80 columns, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + use=bq300-pc, +bq300-pc-w|Questar 303 with PC keyboard 132 columns terminal, + cols#132, wsl#132, + is2=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300-pc, +bq300-pc-w-rv|Questar 303 with PC keyboard reverse mode 132 columns, + cols#132, wsl#132, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300-pc, +# 8 bit ISO Latin Character Set (ISO 8859-1), +# 8 bit Control Characters, +# 80 columns screen. +bq300-8-pc|Q306-8-pc|Questar 303 with PC keyboard in full 8 bits 80 columns, + kbs=^H, kdch1=\2333~, kend=\2334~, kf1=\23317~, + kf10=\23328~, kf11=\23329~, kf12=\23331~, kf13@, kf14@, + kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\23318~, kf20@, + kf3=\23319~, kf4=\23320~, kf5=\23321~, kf6=\23323~, + kf7=\23324~, kf8=\23325~, kf9=\23326~, kfnd@, khlp@, + khome=\2331~, kich1=\2332~, knp=\2336~, kpp=\2335~, krdo@, + kslt@, lf1@, lf2@, lf3@, lf4@, use=bq300-8, +bq300-8-pc-rv|Questar 303 with PC keyboard full 8 bits reverse mode 80 columns, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + use=bq300-8-pc, +bq300-8-pc-w|Questar 303 with PC keyboard full 8 bits 132 columns, + cols#132, wsl#132, + is2=\E[?2h\E[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300-8-pc, +bq300-8-pc-w-rv|Questar 303 with PC keyboard full 8 bits reverse 132 columns, + cols#132, wsl#132, + flash=\E[?5l$<50>\E[?5h, + is2=\E[?2h\E[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, + rs2=\E[?3h, use=bq300-8-pc, + +#======================================================# +# BULL QUESTAR 310 `VIP 7800/8800' terminals emulation # +#======================================================# + +# normal mode, 8 bits, 80 columns terminal. +# RES reset : ^[e +# RIS reset initial state: ^[c +# BLE bell enable ^[h +# BLD bell disable ^[g +# CAMS char. attr. mode set ^[[D +# CAMR char. attr. mode reset ^[[G +# CLR clear ^[` +# KBU keyboard unlock (set) ^[[W +# KBL keyboard lock (reset) ^[[X +# CM character mode (async.) ^[k +# NEP non echoplex mode (by host) ^[l +# EP echoplex mode (by host) ^[m +# IM insert mode set ^[[I +# IM insert mode reset ^[[J +# RMS roll mode set ^[r +# RMR roll mode reset ^[q +# SM78 set mode vip7800 ^[[1q +# SD scroll up (72 lines) ^[[0s +# SD scroll down (72 lines) ^[[1s +# RBM block mode reset ^[[E +# SLS status line set ^[w +# SLR status line reset ^[v +# SLL status line lock ^[O +# LGS Line-graphic mode set ^[G +# LGR Line-graphic mode reset ^[F +# TBC tab clear (at cursor pos.) ^[[g +# TBI tab initialize ^[[N +# TBS tab set (at cursor pos.) ^[p +# PDS print data space ^[[0p +# PHD print host data ^[[3p +# PDT print data terminator ^[[<p +# PRES print adapter reset ^[[2p +# SSPR multi-part. reset ^[[<>u +# SSP0 partition 0 set ^[[00u +# SSP1 partition n format 1 ^[[PnPnSTRINGu +# SSP2 partition n format 2 ^[[PnPnSTRINGu +# SSP3 partition n format 3 ^[[PnPnu +# ATR attribute (visual) +# blink : ^[sB +# dim : ^[sL +# hide (blank) : ^[sH +# restore : ^[sR +# inverse video : ^[sI +# prot. : ^[sP +# underline : ^[s_ +# reset : ^{ +# +# This covers the vip7800 and BQ3155-vip7800 +vip|Bull Questar 3155-7800, + am, eslok, hs, km, mc5i, msgr, xenl, xon, + cols#80, it#8, lines#24, vt#3, wsl#80, + acsc=0pjdkblamcnkqitgufvhwexj, bel=^G, blink=\EsB, + cbt=\E[Z, clear=\E`, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\E[%i%p1%03d%p2%03df, cuu1=\EA, dch1=\E[P, dim=\EsL, + dl1=\E[M, dsl=\Ev, ed=\EJ, el=\EK, + flash=\007$<80>\007$<80>\007, fsl=\EO, home=\EH, ht=^I, + hts=\Ep, ich1=\E[I, ind=^J, invis=\EsH, + is2=\E[00u\E[<>001001024080024080u\E[01u, + is3=\Er\E[W\E`, kHOM=\EH, kLFT=\Eo, kRIT=\Eu, kbs=^H, + kcbt=\E[Z, kclr=\E`, kctab=\E[g, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kdch1=\E[P, kdl1=\E[M, ked=\EJ, + kel=\EK, kf1=\E0, kf10=\ET, kf11=\E\\, kf12=\E\^, kf13@, kf14@, + kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E2, kf20@, kf21=\E1, + kf22=\E5, kf23=\E7, kf24=\E9, kf25=\E;, kf26=\E=, kf27=\E?, + kf28=\EQ, kf29=\ES, kf3=\E6, kf30=\EV, kf31=\E], kf32=\E_, + kf4=\E8, kf5=\E\:, kf6=\E<, kf7=\E>, kf8=\EP, kf9=\ER, + khome=\EH, khts=\Ep, kich1=\E[I, kil1=\E[L, kind=\E[0s, + kll=\EH\EA, kri=\E[1s, krmir=\E[J, ktbc=\E[N, lf1=pf1, + lf2=pf2, lf3=pf3, lf4=pf4, ll=\EH\EA, mc0=\E[0p, mc4=\E[<p, + mc5=\E[3p, nel=^M, prot=\EsP, rev=\EsI, + ri=\EA\EJ\EH\E[L$<10>, rmacs=\EF, rmir=\E[J, rmso=\EsR, + rmul=\EsR, rs1=\Ec, rs2=\E[G, s0ds=\EF, s1ds=\EG, + sgr0=\EsR\EsU\EF, smacs=\EG, smir=\E[I, smso=\EsI, + smul=\Es_, tbc=\E[N, tsl=\Ew, +# normal screen, 8 bits, 132 columns terminal. +vip-w|vip7800-w|Q310-vip-w|Q310-vip-w-am|Questar 3155-vip7800 wide, + cols#132, wsl#132, + is2=\E[00u\E[<>001001024132024132u\E[01u, use=vip, +vip-H|vip7800-H|Q310-vip-H|Q310-vip-H-am|Questar 3155-vip7800 72 lines, + lines#72, + is2=\E[00u\E[<>001001024080072080u\E[01u, use=vip, +vip-Hw|vip7800-Hw|Q310-vip-Hw|Questar 3155-vip7800 wide 72 lines, + cols#132, lines#72, wsl#132, + is2=\E[00u\E[<>001001024132072132u\E[01u, use=vip, + +#### Chromatics +# + +# I have put the long strings in <smcup>/<rmcup>. Ti sets up a window +# that is smaller than the screen, and puts up a warning message +# outside the window. Te erases the warning message, puts the +# window back to be the whole screen, and puts the cursor at just +# below the small window. I defined <cnorm> and <civis> to really turn +# the cursor on and off, but I have taken this out since I don't +# like the cursor being turned off when vi exits. +cg7900|chromatics|chromatics 7900, + am, + cols#80, lines#40, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^], + cup=\001M%p2%d\,%p1%d\,, cuu1=^K, dch1=^A<1, dl1=^A<2, + ed=^Al, el=^A`, home=^\, ich1=^A>1, il1=^A>2, ind=^J, ll=^A|, + rmcup=\001W0\,40\,85\,48\,\014\001W0\,0\,85\,48\,\001M0\,40\,, + rmso=\001C1\,\001c2\,, + smcup=\001P0\001O1\001R1\001C4\,\001c0\,\014\001M0\,42\,WARNING DOUBLE ENTER ESCAPE and \025\001C1\,\001c2\,\001W0\,0\,79\,39\,, + smso=\001C4\,\001c7\,, uc=\001\001_\001\0, + +#### Computer Automation +# + +ca22851|computer automation 22851, + am, + cols#80, lines#24, + bel=^G, clear=\014$<8>, cr=^M, cub1=^U, cud1=^J, cuf1=^I, + cup=\002%i%p1%c%p2%c, cuu1=^V, ed=^\, el=^], home=^^, ind=^J, + kcub1=^U, kcud1=^W, kcuu1=^V, khome=^^, + +#### Cybernex +# + +# This entry has correct padding and the undocumented "ri" capability +cyb83|xl83|cybernex xl-83, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\014$<62>, cr=^M, cub1=^H, cud1=^J, cuf1=^I, + cup=\027%p1%{32}%+%c%p2%{32}%+%c, cuu1=^N, + ed=\020$<62>, el=\017$<3>, home=^K, ind=^J, kcub1=^H, + kcud1=^J, kcuf1=^I, kcuu1=^N, ri=^N, +# (mdl110: removed obsolete ":ma=^Z^P:" and overridden ":cd=145^NA^W:" -- esr) +cyb110|mdl110|cybernex mdl-110, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=\030$<70>, cr=^M, cub1=^H, cud1=^J, cuf1=^U, + cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, + dch1=\016A\036$<3.5>, dl1=\016A\016\036$<40>, + ed=\016@\026$<6>, el=\016@\026$<145>, home=^Y, + ht=\011$<43>, ich1=\016A\035$<3.5>, + il1=\016A\016\035$<65>, ind=^J, rmso=^NG, smso=^NF, + +#### Datapoint +# +# Datapoint is gone. They used to be headquartered in Texas. +# They created ARCnet, an Ethernet competitor that flourished for a while +# in the early 1980s before 3COM got wise and cut its prices. The service +# side of Datapoint still lives (1995) in the form of Intelogic Trace. +# + +dp3360|datapoint|datapoint 3360, + OTbs, am, + cols#82, lines#25, + bel=^G, clear=^]^_, cr=^M, cub1=^H, cud1=^J, cuf1=^X, cuu1=^Z, + ed=^_, el=^^, home=^], ind=^J, + +# From: Jan Willem Stumpel <jw.stumpel@inter.nl.net>, 11 May 1997 +# The Datapoint 8242 Workstation was sold at least between 1985 +# and 1989. To make the terminal work with this entry, press +# CONTROL-INT-INT to take the terminal off-line, and type (opt). +# Set the options AUTO ROLL, ROLL DN, and ESC KBD on, and AUTO +# CR/LF off. Use control-shift-[] as escape key, control-I as tab, +# shift-F1 to shift-F5 as F6 to F10 (unshifted F1 to F5 are in +# fact unusable because the strings sent by the terminal conflict +# with other keys). +# The terminal is capable of displaying "box draw" characters. +# For each graphic character you must send 2 ESC's (\E\E) followed +# by a control character as follows: +# character meaning +# ========= ======= +# ctrl-E top tee +# ctrl-F right tee +# ctrl-G bottom tee +# ctrl-H left tee +# ctrl-I cross +# ctrl-J top left corner +# ctrl-K top right corner +# ctrl-L bottom left corner +# ctrl-M bottom right corner +# ctrl-N horizontal line +# ctrl-O vertical line +# Unfortunately this cannot be fitted into the termcap/terminfo +# description scheme. +dp8242|datapoint 8242, + msgr, + cols#80, lines#25, + bel=^G, civis=^Y, clear=\025\E\004\027\030, cnorm=^X, + cr=^M, cub1=^H, cud1=^J, + cup=\011%p2%'\0'%+%c%p1%'\0'%+%c, dl1=\E^Z, ed=^W, el=^V, + home=^U, ht=^I, il1=\E^T, ind=^C, + is1=\E\014\E\016\0\230\0\317\025\027\030\E\004, + kbs=^H, kcub1=^D, kcud1=^B, kcuf1=^F, kcuu1=^E, kf1=^G\Ee, + kf10=\EK\Ea, kf2=^I\Ed, kf3=^J\Ec, kf4=^J\Eb, kf5=^S\Ea, + kf6=\EO\Ee, kf7=\EN\Ed, kf8=\EM\Ec, kf9=\EL\Eb, nel=^M^J, + rep=\E\023%p1%c%p2%c, ri=^K, rmso=\E^D, rmul=\E^D, + rs1=\E\014\E\016\0\230\0\317\025\027\030\E\004, + smso=\E^E, smul=\E^F, + wind=\E\014\E\016%p1%'\0'%+%c%p2%'\0'%+%c%p3%'\0'%+%c%p4%'\0'%+%c\025, + +#### DEC terminals (Obsolete types: DECwriter and vt40/42/50) +# +# These entries are DEC's official terminfos for its older terminals. +# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support +# Engineering for more information. Updated terminfos and termcaps +# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. +# + +gt40|dec gt40, + OTbs, os, + cols#72, lines#30, + bel=^G, cr=^M, cub1=^H, cud1=^J, +gt42|dec gt42, + OTbs, os, + cols#72, lines#40, + bel=^G, cr=^M, cub1=^H, cud1=^J, +vt50|dec vt50, + OTbs, + cols#80, lines#12, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cuu1=\EA, ed=\EJ, el=\EK, ht=^I, ind=^J, +vt50h|dec vt50h, + OTbs, + cols#80, lines#12, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, ht=^I, ind=^J, ri=\EI, +# (vt61: there's a BSD termcap that claims <dl1=\EPd>, <il1=\EPf.> <kbs=^H>) +vt61|vt-61|vt61.5|dec vt61, + cols#80, lines#24, + bel=^G, clear=\EH\EJ$<120>, cr=\r$<20>, cub1=^H, cud1=^J, + cuf1=\EC$<20>, cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<20>, + cuu1=\EA$<20>, ed=\EJ$<120>, el=\EK$<70>, ht=^I, + ind=\n$<20>, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, + ri=\E$<20>I, + +# The gigi does standout with red! +# (gigi: I added <rmam>/<smam> based on the init string, corrected cub1 -- esr) +gigi|vk100|dec gigi graphics terminal, + OTbs, am, xenl, + cols#84, lines#24, + bel=^G, clear=\E[H\E[2J, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J, + el=\E[K, ht=^I, ind=^J, + is2=\E>\E[?3l\E[?4l\E[?5l\E[?20l\E[?7h\E[?8h, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM, + rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7;31m, + smul=\E[4m, + +# DEC PRO-350 console (VT220-style). The 350 was DEC's attempt to produce +# a PC differentiated from the IBM clones. It was a total, ludicrous, +# grossly-overpriced failure (among other things, DEC's OS didn't include +# a format program, so you had to buy pre-formatted floppies from DEC at +# a hefty premium!). +pro350|decpro|dec pro console, + OTbs, + cols#80, it#8, lines#24, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + clear=\EH\EJ, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, + el=\EK, home=\EH, ht=^I, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kf0=\EE, kf1=\EF, kf2=\EG, kf3=\EH, kf4=\EI, + kf5=\EJ, kf6=\Ei, kf7=\Ej, khome=\EH, ri=\EI, rmacs=\EG, + rmso=\E^N, rmul=\E^C, smacs=\EF, smso=\E^H, smul=\E^D, + +dw1|decwriter I, + OTbs, hc, os, + cols#72, + bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, +dw2|decwriter|dw|decwriter II, + OTbs, hc, os, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H, +# \E(B Use U.S. character set (otherwise # => british pound !) +# \E[20l Disable "linefeed newline" mode (else puts \r after \n,\f,\v) +# \E[w 10 char/in pitch +# \E[1;132 full width horizontal margins +# \E[2g clear all tab stops +# \E[z 6 lines/in +# \E[66t 66 lines/page (for \f) +# \E[1;66r full vertical page can be printed +# \E[4g clear vertical tab stops +# \E> disable alternate keypad mode (so it transmits numbers!) +# \E[%i%p1%du set tab stop at column %d (origin == 1) +# (Full syntax is \E[n;n;n;n;n;...;nu where each 'n' is +# a tab stop) +# +# The dw3 does standout with wide characters. +# +dw3|la120|decwriter III, + OTbs, hc, os, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, + is1=\E(B\E[20l\E[w\E[0;132s\E[2g\E[z\E[66t\E[1;66r\E[4g\E>, + is2=\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u\r, + kbs=^H, rmso=\E[w, sgr0=\E[w, smso=\E[6w, +dw4|decwriter IV, + OTbs, am, hc, os, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, is2=\Ec, kbs=^H, + kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, + +# These aren't official +ln03|dec ln03 laser printer, + hc, + cols#80, lines#66, + bel=^G, cr=^M, cud1=^J, hd=\EK, ht=^I, hu=\EL, ind=^J, nel=^M^J, + rmso=\E[22m, rmul=\E[24m, sgr0=\E[m, smso=\E[1m, + smul=\E[4m, +ln03-w|dec ln03 laser printer 132 cols, + cols#132, + bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, + kcud1=^J, nel=^M^J, use=ln03, + +#### Delta Data (dd) +# + +# Untested. The cup sequence is hairy enough that it probably needs work. +# The idea is ctrl(O), dd(row), dd(col), where dd(x) is x - 2*(x%16) + '9'. +# There are BSD-derived termcap entries floating around for this puppy +# that are *certainly* wrong. +delta|dd5000|delta data 5000, + OTbs, am, + cols#80, lines#27, + bel=^G, clear=^NR, cub1=^H, cud1=^J, cuf1=^Y, + cup=\017%p1%p1%{16}%m%{2}%*%-%{57}%+%c%p2%p2%{16}%m%{2}%*%-%{57}%+%c, + cuu1=^Z, dch1=^NV, el=^NU, home=^NQ, ind=^J, + +#### Digital Data Research (ddr) +# + +# (ddr: I added <rmam>/<smam> based on the init string -- esr) +ddr|rebus3180|ddr3180|Rebus/DDR 3180 vt100 emulator, + OTbs, am, xenl, + cols#80, it#8, lines#24, vt#3, + blink=\E[5m$<2/>, bold=\E[1m$<2/>, + clear=\E[H\E[2J$<50/>, csr=\E[%i%p1%d;%p2%dr, cub1=^H, + cud1=^J, cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>, + cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, + ht=^I, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H, kbs=^H, + kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, + kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m$<2/>, + rf=/usr/share/tabset/vt100, ri=\EM$<5/>, rmam=\E[7l, + rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m$<2/>, + rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, + sgr0=\E[m$<2/>, smam=\E[7l, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m$<2/>, + +#### Evans & Sutherland +# + +# Jon Leech <leech@cs.unc.edu> tells us: +# The ps300 was the Evans & Sutherland Picture System 300, a high +# performance 3D vector graphics system with a bunch of specialized hardware. +# Approximate date of release was 1982 (early 80s, anyway), and it had several +# evolutions including (limited) color versions such as the PS330C. PS300s +# were effectively obsolete by the late 80s, replaced by raster graphics +# systems, although specialized applications like molecular modelling +# hung onto them for a while longer. AFAIK all E&S vector graphics systems +# are out of production, though of course E&S is very much alive (in 1996). +# (ps300: changed ":pt@:" to "it@" -- esr) +# +ps300|Picture System 300, + xt, + it@, + rmso@, rmul@, smso@, smul@, use=vt100, + +#### General Electric (ge) +# + +terminet1200|terminet300|tn1200|tn300|terminet|GE terminet 1200, + OTbs, hc, os, + cols#120, + bel=^G, cr=^M, cud1=^J, ind=^J, + +#### Heathkit/Zenith +# + +# Here is a description of the H19 DIP switches: +# +# S401 +# 0-3 = baud rate as follows: +# +# 3 2 1 0 +# --- --- --- --- +# 0 0 1 1 300 baud +# 0 1 0 1 1200 baud +# 1 0 0 0 2400 baud +# 1 0 1 0 4800 baud +# 1 1 0 0 9600 baud +# 1 1 0 1 19.2K baud +# +# 4 = parity (0 = no parity) +# 5 = even parity (0 = odd parity) +# 6 = stick parity (0 = normal parity) +# 7 = full duplex (0 = half duplex) +# +# S402 +# 0 = block cursor (0 = underscore cursor) +# 1 = no key click (0 = keyclick) +# 2 = wrap at end of line (0 = no wrap) +# 3 = auto LF on CR (0 = no LF on CR) +# 4 = auto CR on LF (0 = no CR on LF) +# 5 = ANSI mode (0 = VT52 mode) +# 6 = keypad shifted (0 = keypad unshifted) +# 7 = 50Hz refresh (1 = 60Hz refresh) +# +# Factory Default settings are as follows: +# 7 6 5 4 3 2 1 0 +# S401 1 0 0 0 1 1 0 0 +# S402 0 0 0 0 0 0 0 0 +# (h19: I added <rmam>/<smam> based on the init string; +# also added empty <acsc> to suppress a tic warning -- esr) +h19-a|h19a|heath-ansi|heathkit-a|heathkit h19 ansi mode, + OTbs, am, mir, msgr, + cols#80, it#8, lines#24, + acsc=, bel=^G, clear=\E[2J, cnorm=\E[>4l, cr=^M, cub1=^H, + cud1=\E[1B, cuf1=\E[1C, cup=\E[%i%p1%d;%p2%dH, + cuu1=\E[1A, cvvis=\E[>4h, dch1=\E[1P, dl1=\E[1M$<1*>, + ed=\E[J, el=\E[K, home=\E[H, ht=^I, il1=\E[1L$<1*>, ind=^J, + is2=\E<\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11m\E[?7h, + kbs=^H, kcub1=\E[1D, kcud1=\E[1B, kcuf1=\E[1C, kcuu1=\E[1A, + kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, kf6=\EOP, + kf7=\EOQ, kf8=\EOR, khome=\E[H, lf6=blue, lf7=red, lf8=white, + ri=\EM, rmacs=\E[11m, rmam=\E[?7l, rmir=\E[4l, rmso=\E[m, + smacs=\E[10m, smam=\E[?7h, smir=\E[4h, smso=\E[7m, +h19-bs|heathkit w/keypad shifted, + rmkx=\Eu, smkx=\Et, use=h19-b, +h19-us|h19us|h19-smul|heathkit w/keypad shifted/underscore cursor, + rmkx=\Eu, smkx=\Et, use=h19-u, +# (h19: merged in <ip> from BSDI hp19-e entry>; +# also added empty <acsc> to suppress a tic warning --esr) +# From: Tim Pierce <twp@skepsis.com>, 23 Feb 1998 +# Tim tells us that: +# I have an old Zenith-19 terminal at home that still gets a lot of use. +# This terminal suffers from the same famous insert-mode padding lossage +# that has been acknowledged for the Z29 terminal. Emacs is nearly +# unusable on this box, since even a half-scroll up or down the window +# causes flaming terminal death. +# +# On the Z19, the only way I have found around this problem is to remove +# the :al: and :dl: entries entirely. No amount of extra padding will +# help (I have tried up to 20000). Removing <il1=\EL$> and <dl1=\EM$> +# makes Emacs a little slower, but it remains in the land of the living. +# Big win. +h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19, + OTbs, am, eslok, hs, mir, msgr, + cols#80, it#8, lines#24, + acsc=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\^, bel=^G, + clear=\EE, cnorm=\Ey4, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ex4, + dch1=\EN, ed=\EJ, el=\EK, fsl=\Ek\Ey5, home=\EH, ht=^I, ind=^J, + ip=<1.5/>, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, + kf6=\EP, kf7=\EQ, kf8=\ER, khome=\EH, lf6=blue, lf7=red, + lf8=white, ri=\EI, rmacs=\EG, rmir=\EO, rmso=\Eq, smacs=\EF, + smir=\E@, smso=\Ep, tsl=\Ej\Ex5\EY8%p1%{32}%+%c\Eo\Eo, +h19-u|heathkit with underscore cursor, + cnorm@, cvvis@, use=h19-b, +h19-g|h19g|heathkit w/block cursor, + cnorm=\Ex4, cvvis@, use=h19-b, +alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19, + lines#60, + dl1=\EM, il1=\EL, use=h19, + +# The major problem with the Z29 is that it requires more padding than the Z19. +# +# The problem with declaring an H19 to be synonymous with a Z29 is that +# it needs more padding. It especially loses if a program attempts +# to put the Z29 into insert mode and insert text at 9600 baud. It +# even loses worse if the program attempts to insert tabs at 9600 +# baud. Adding padding to text that is inserted loses because in +# order to make the Z29 not die, one must add so much padding that +# whenever the program tries to use insert mode, the effective +# rate is about 110 baud. +# +# What program would want to put the terminal into insert mode +# and shove stuff at it at 9600 baud you ask? +# +# Emacs. Emacs seems to want to do the mathematically optimal +# thing in doing a redisplay rather than the practical thing. +# When it is about to output a line on top of a line that is +# already on the screen, instead of just killing to the end of +# the line and outputting the new line, it compares the old line +# and the new line and if there are any similarities, it +# constructs the new line by deleting the text on the old line +# on the terminal that is already there and then inserting new +# text into the line to transform it into the new line that is +# to be displayed. The Z29 does not react kindly to this. +# +# But don't cry for too long.... There is a solution. You can make +# a termcap entry for the Z29 that says the Z29 has no insert mode. +# Then Emacs cannot use it. "Oh, no, but now inserting into a +# line will be really slow", you say. Well there is a sort of a +# solution to that too. There is an insert character option on +# the Z29 that will insert one character. Unfortunately, it +# involves putting the terminal into ansi mode, inserting the +# character, and changing it back to H19 mode. All this takes 12 +# characters. Pretty expensive to insert one character, but it +# works. Either Emacs doesn't try to use its inserting hack when +# it's only given an insert character ability or the Z29 doesn't +# require padding with this (the former is probably more likely, +# but I haven't checked it out). +# (z29: added empty <acsc> to suppress a tic warning, merged in +# status line capabilities from BRL entry --esr) +z29|zenith29|z29b|zenith z29b, + OTbs, OTpt, am, eslok, hs, mir, msgr, + OTkn#10, cols#80, lines#24, + OTbc=\ED, acsc=, bel=^G, cbt=\E-, clear=\EE$<14>, cnorm=\Ey4, + cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E$<1>A, + cvvis=\Ex4, dch1=\EN$<0.1*>, dl1=\EM$<1/>, dsl=\Ey1, + ed=\EJ$<14>, el=\EK$<1>, fsl=\Ek\Ey5, home=\EH, ht=^I, + ich1=\E<\E[1@\E[?2h$<1>, il1=\EL$<1/>, ind=\n$<2>, + is2=\E<\E[?2h\Ev, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, + kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH, + lf0=home, ri=\EI$<2/>, rmacs=\EF, rmir=\EO, rmso=\Eq, + rmul=\Es0, smacs=\EG, smir=\E@, smso=\Ep, smul=\Es8, + tsl=\Ej\Ex5\Ex1\EY8%+ \Eo, +# z29 in ansi mode. Assumes that the cursor is in the correct state, and that +# the world is stable. <rs1> causes the terminal to be reset to the state +# indicated by the name. kc -> key click, nkc -> no key click, uc -> underscore +# cursor, bc -> block cursor. +# From: Mike Meyers +# (z29a: replaced nonexistent <if=/usr/share/tabset/zenith29> befause <hts> +# looks vt100-compatible -- esr) +z29a|z29a-kc-bc|h29a-kc-bc|heath/zenith 29 in ansi mode, + OTbs, OTpt, am, eslok, hs, mir, msgr, + OTkn#10, cols#80, it#8, lines#24, + OTbc=\ED, bel=^G, blink=\E[5m, bold=\E[2m, clear=\E[2J, + cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, 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[1P, dim=\E[2m, dl=\E[%p1%dM, + dsl=\E[>1l, ed=\E[J, el=\E[K, fsl=\E[u\E[>5l, home=\E[H, + ht=^I, hts=\EH, if=/usr/share/tabset/vt100, il=\E[%p1%dL, + ind=\ED, kbs=^H, kclr=\E[J, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, ked=\E[J, kf0=\E[~, kf1=\EOS, + kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, kf6=\EOP, kf7=\EOQ, + kf8=\EOR, kf9=\EOX, khome=\E[H, lf0=help, mc0=\E#7, + nel=^M\ED, rc=\E[r, rev=\E[7m, ri=\EM, rmcup=\E[?7h, + rmso=\E[m, rmul=\E[m, + rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>4h\E[>1;2;3;5;6;7;8;9l\E[m\E[11m, + sc=\E[s, sgr0=\E[m, smcup=\E[?7l, smso=\E[7;2m, smul=\E[4m, + tbc=\E[3g, tsl=\E[s\E[>5;1h\E[25;%i%dH\E[1K, +z29a-kc-uc|h29a-kc-uc|z29 ansi mode with keyckick and underscore cursor, + rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11m, + use=z29a, +z29a-nkc-bc|h29a-nkc-bc|z29 ansi mode with block cursor and no keyclick, + rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2;4h\E[>1;3;5;6;7;8;9l\E[m\E[11m, + use=z29a, +z29a-nkc-uc|h29a-nkc-uc|z29 ansi mode with underscore cursor and no keyclick, + rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2h\E[>1;3;4;5;6;7;8;9l\E[m\E[11m, + use=z29a, +# From: Jeff Bartig <jeffb@dont.doit.wisc.edu> 31 Mar 1995 +z39-a|z39a|zenith39-a|zenith39-ansi|Zenith 39 in ANSI mode, + am, eslok, hs, mc5i, mir, msgr, xon, + cols#80, lines#24, + acsc=0a``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, + blink=\E[5m, bold=\E[1m, cbt=\E[1Z, civis=\E[>5h, + clear=\E[2J\E[H, cnorm=\E[>5l, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + 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[1P, dim=\E[2m, dl=\E[%p1%dM, + dl1=\E[1M, dsl=\E[>1l, ed=\E[0J, el=\E[0K, el1=\E[1K, + fsl=\E[u, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[1L, + ind=^J, is2=\E<\E[>1;3;5;6;7l\E[0m\E[2J, ka1=\EOw, + ka3=\EOu, kb2=\EOy, kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ked=\E[J, kf1=\EOS, + kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, kf6=\EOP, kf7=\EOQ, + kf8=\EOR, kf9=\EOX, khlp=\E[~, khome=\E[H, ll=\E[24;1H, + mc0=\E[?19h\E[i, mc4=\E[4i, mc5=\E[5i, rc=\E[u, rev=\E[7m, + rmacs=\E(B, rmir=\E[4l, rmkx=\E[>7l, rmso=\E[0m, + rmul=\E[0m, rs2=\E<\Ec\0, sc=\E[s, sgr0=\E[0m, smacs=\E(0, + smir=\E[4h, smkx=\E[>7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, + tsl=\E[s\E[>1h\E[25;%i%p1%dH, + +# From: Brad Brahms <Brahms@USC-ECLC> +z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor, + cnorm=\Ey4\Em70, cvvis=\Ex4\Em71, use=z100bw, +# (z100bw: removed obsolete ":kn#10:", added empty <acsc> -- esr) +z100bw|h100bw|z110bw|z-100bw|h-100bw|heath/zenith z-100 pc, + OTbs, OTpt, mir, msgr, + OTkn#10, cols#80, it#8, lines#24, + acsc=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\^, + clear=\EE$<5*/>, cnorm=\Ey4, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<1*/>, cuu1=\EA, + cvvis=\Ex4, dch1=\EN$<1*/>, dl1=\EM$<5*/>, ed=\EJ, el=\EK, + home=\EH, ht=^I, il1=\EL$<5*/>, kbs=^H, kcub1=\ED, kcud1=\EB, + kcuf1=\EC, kcuu1=\EA, kf0=\EJ, kf1=\ES, kf2=\ET, kf3=\EU, + kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EOI, + khome=\EH, ri=\EI, rmacs=\EG, rmir=\EO, rmso=\Eq, smacs=\EF, + smir=\E@, smso=\Ep, +p19|h19-b with il1/dl1, + dl1=\EM$<2*/>, il1=\EL$<2*/>, use=h19-b, +# From: <ucscc!B.fiatlux@ucbvax.berkeley.edu> +# (ztx: removed duplicate :sr: -- esr) +ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10 or 11, + OTbs, am, eslok, hs, + cols#80, it#8, lines#24, + clear=\EE, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dl1=\EM, + dsl=\Ey1, ed=\EJ, el=\EK, fsl=\Ek\Ey5, home=\EH, ht=^I, + il1=\EL, is2=\Ej\EH\Eq\Ek\Ev\Ey1\Ey5\EG\Ey8\Ey9\Ey>, + kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf0=\ES, + kf1=\EB, kf2=\EU, kf3=\EV, kf4=\EW, kf5=\EP, kf6=\EQ, kf7=\ER, + ri=\EI, rmso=\Eq, rmul=\Eq, smso=\Es5, smul=\Es2, + tsl=\Ej\Ex5\Ex1\EY8%+ \Eo, + +#### IMS International (ims) +# +# There was a company called IMS International located in Carson City, +# Nevada, that flourished from the mid-70s to mid-80s. They made S-100 +# bus/Z80 hardware and a line of terminals called Ultimas. +# + +# From: Erik Fair <fair@ucbarpa.berkeley.edu> Sun Oct 27 07:21:05 1985 +ims950-b|bare ims950 no init string, + is2@, use=ims950, +# (ims950: removed obsolete ":ko@:" -- esr) +ims950|ims televideo 950 emulation, + xenl@, + flash@, kbs@, kcub1@, kcud1@, kcuf1@, kcuu1@, kf0@, kf1@, kf2@, kf3@, + kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, khome@, use=tvi950, +# (ims950-rv: removed obsolete ":ko@:" -- esr) +ims950-rv|ims tvi950 rev video, + xenl@, + flash@, kbs@, kcub1@, kcud1@, kcuf1@, kcuu1@, kf0@, kf1@, kf2@, kf3@, + kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, khome@, use=tvi950-rv, +ims-ansi|ultima2|ultimaII|IMS Ultima II, + OTbs, am, + cols#80, it#8, lines#24, + clear=\E[H\E[2J, cub1=^H, cud1=\ED, cuf1=\EC, + cup=\E[%i%p1%2d;%p2%2dH, cuu1=\EM, ed=\E[0J, el=\E[0K, + ht=^I, if=/usr/share/tabset/vt100, + is2=\E[m\E[>14l\E[?1;?5;20l\E>\E[1m\r, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, ri=\EM, + rmso=\E[m\E[1m, rmul=\E[m\E[1m, sgr0=\E[m, smso=\E[7m, + smul=\E[4m, + +#### Intertec Data Systems +# +# I think this company is long dead as of 1995. They made an early CP/M +# micro called the "Intertec Superbrain" that was moderately popular, +# then sank out of sight. +# + +superbrain|intertec superbrain, + OTbs, am, bw, + cols#80, lines#24, + OTbc=^U, bel=^G, clear=\014$<5*>, cr=^M, cub1=^H, cud1=^J, + cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=^K, + ed=\E~k<10*>, el=\E~K$<15>, ht=^I, ind=^J, kcub1=^U, + kcud1=^J, kcuf1=^F, kcuu1=^K, rmcup=^L, smcup=^L, +# (intertube: a Gould entry via BRL asserted smul=\E0@$<200/>, +# rmul=\E0A$<200/>; my guess is the highlight letter is bit-coded like an ADM, +# and the reverse is actually true. Try it. -- esr) +intertube|intertec|Intertec InterTube, + OTbs, am, + cols#80, lines#25, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<50>, cuu1=^Z, home=^A, + ind=^J, rmso=\E0@, smso=\E0P, +# The intertube 2 has the "full duplex" problem like the tek 4025: if you +# are typing and a command comes in, the keystrokes you type get interspersed +# with the command and it messes up +intertube2|intertec data systems intertube 2, + OTbs, + cup=\016%p1%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c, + el=\EK, hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, + ll=^K^X\r, vpa=\013%p1%c, use=intertube, + +#### Ithaca Intersystems +# +# This company made S100-bus personal computers long ago in the pre-IBM-PC +# past. They used to be reachable at: +# +# Ithaca Intersystems +# 1650 Hanshaw Road +# Ithaca, New York 14850 +# +# However, the outfit went bankrupt years ago. +# + +# The Graphos III was a color graphics terminal from Ithaca Intersystems. +# These entries were written (originally in termcap syntax) by Brian Yandell +# <yandell@stat.wisc.edu> and Mike Meyer <mikem@stat.wisc.edu> at the +# University of Wisconsin. + +# (graphos: removed obsolete and syntactically incorrect :kn=4:, +# removed <if=/usr/share/tabset/init.graphos> and +# <rf=/usr/share/tabset/init.graphos> no such file & no <hts> -- esr) +graphos|graphos III, + am, mir, + cols#80, it#8, lines#24, + clear=\E[H\E[2J, cnorm=\Ez56;2;0;0z\Ez73z\Ez4;1;1z, + cr=^M, cub=\E[%p1%dD, cub1=^H, 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, + cvvis=\Ez4;2;1z\Ez56;2;80;24z, dch1=\E[P, dl=\E[%p1%dM, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, + il1=\E[L, ind=\ED, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, khome=\E[H, nel=^M\ED, rc=\E8, ri=\EM, rmdc=\E[4l, + rmir=\E[4l, rmso=\E[m, sc=\E7, sgr0=\E[m, smdc=\E[4h, + smir=\E[4h, smso=\E[7m, +graphos-30|graphos III with 30 lines, + lines#30, + cvvis=\Ez4;2;1z\Ez56;2;80;30z, use=graphos, + +#### Modgraph +# +# These people used to be reachable at: +# +# Modgraph, Inc +# 1393 Main Street, +# Waltham, MA 02154 +# Vox: (617)-890-5796. +# +# However, if you call that number today you'll get an insurance company. +# I have mail from "Michael Berman, V.P. Sales, Modgraph" dated +# 26 Feb 1997 that says: +# +# Modgraph GX-1000, replaced by GX-2000. Both are out of production, have been +# for ~7 years. Modgraph still in business. Products are rugged laptop and +# portable PC's and specialized CRT and LCD monitors (rugged, rack-mount +# panel-mount etc). I can be emailed at sonfour@aol.com +# +# Peter D. Smith <pdsmith@nbbn.com> notes that his modgraph manual was +# dated 1984. According to the manual, it featured Tek 4010/4014 +# graphics and DEC VT100/VT52 + ADM-3A emulation with a VT220-style keyboard. +# + +modgraph|mod24|modgraph terminal emulating vt100, + xenl@, + cols#80, lines#24, + cvvis=\E\^9;0s\E\^7;1s, + is2=\E\^9;0s\E\^7;1s\E[3g\E\^11;9s\E\^11;17s\E\^11;25s\E\^11;33s\E\^11;41s\E\^11;49s\E\^11;57s\E\^11;65s\E\^11;73s\E\^11;81s\E\^11;89s, + rf@, ri=\EM\E[K$<5/>, use=vt100, +# The GX-1000 manual is dated 1984. This looks rather like a VT-52. +modgraph2|modgraph gx-1000 80x24 with keypad not enabled, + am, da, db, + cols#80, it#8, lines#24, + clear=\EH\EJ$<50/>, cub1=^H, cud1=\EB$<2/>, + cuf1=\EC$<2/>, cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5/>, + cuu1=\EA$<2/>, ed=\EJ$<50/>, el=\EK$<3/>, ht=^I, + is2=\E<\E\^5;2s\E\^7;1s\E[3g\E\^11;9s\E\^11;17s\E\^11;25s\E\^11;33s\E\^11;41s\E\^11;49s\E\^11;57s\E\^11;65s\E\^11;73s\E\^11;81s\E\^11;89s\E\^12;0s\E\^14;2s\E\^15;9s\E\^25;1s\E\^9;1s\E\^27;1, + ri=\EI$<5/>, +# +# Modgraph from Nancy L. Cider <nancyc@brl-tbd> +# BUG NOTE from Barbara E. Ringers <barb@brl-tbd>: +# If we set TERM=vt100, and set the Modgraph screen to 24 lines, setting a +# mark and using delete-to-killbuffer work correctly. However, we would +# like normal mode of operation to be using a Modgraph with 48 line setting. +# If we set TERM=mod (which is a valid entry in termcap with 48 lines) +# the setting mark and delete-to-killbuffer results in the deletion of only +# the line the mark is set on. +# We've discovered that the delete-to-killbuffer works correctly +# with TERM=mod and screen set to 80x48 but it's not obvious. Only +# the first line disappears but a ctrl-l shows that it did work +# correctly. +modgraph48|mod|Modgraph w/48 lines, + OTbs, OTpt, am, xenl, + cols#80, it#8, lines#48, vt#3, + OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J, + 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, ed=\E[J, el=\E[K, + flash=\E[?5h\E[0q\E[1;2q\E[?5l\E[0q\E[4;3q, + home=\E[H, ht=^I, is2=\E<\E[1;48r\E[0q\E[3;4q\E=\E[?1h, + kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, + kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, + ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs1=\E=\E[0q\E>, sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, + smso=\E[7m, smul=\E[4m, + +#### Morrow Designs +# +# This was George Morrow's company. They started in the late 1970s making +# S100-bus machines. They used to be reachable at: +# +# Morrow +# 600 McCormick St. +# San Leandro, CA 94577 +# +# but they're long gone now (1995). +# + +# The mt70 terminal was shipped with the Morrow MD-3 microcomputer. +# Jeff's specimen was dated June 1984. +# From: Jeff Wieland <wieland@acn.purdue.edu> 24 Feb 1995 +mt70|mt-70|Morrow MD-70; native Morrow mode, + am, mir, msgr, xon, + cols#80, it#8, lines#24, + acsc=+z\,{-x.yOi`|jGkFlEmDnHqJtLuKvNwMxI, bel=^G, + cbt=\EI, civis=\E"0, clear=^Z, cnorm=\E"2, cr=^M, cub1=^H, + cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<1>, + cuu1=^K, dch1=\EW, dim=\EG2, dl1=\ER, ed=\EY, el=\ET$<10>, + flash=\EK1$<200>\EK0, home=^^, ht=^I, ich1=\EQ, il1=\EE, + ind=^J, invis@, is1=\E"2\EG0\E], kbs=^H, kcbt=^A^Z\r, + kclr=^An\r, kcub1=^AL\r, kcud1=^AK\r, kcuf1=^AM\r, + kcuu1=^AJ\r, kdch1=\177, kf1=^A@\r, kf10=^AI\r, kf11=^A`\r, + kf12=^Aa\r, kf13=^Ab\r, kf14=^Ac\r, kf15=^Ad\r, kf16=^Ae\r, + kf17=^Af\r, kf18=^Ag\r, kf19=^Ah\r, kf2=^AA\r, kf20=^Ai\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khlp=^AO\r, khome=^AN\r, nel=^_, + rmacs=\E%%, rmcup=, smacs=\E$, smcup=\E"2\EG0\E], + smul=\EG1, tbc=\E0, use=adm+sgr, + +#### Motorola +# + +# Motorola EXORterm 155 from {decvax, ihnp4}!philabs!sbcs!megad!seth via BRL +# (Seth H Zirin) +ex155|Motorola Exorterm 155, + OTbs, am, bw, + OTkn#5, OTug#1, cols#80, lines#24, + cbt=\E[, clear=\EX, cub1=\ED, cud1=\EB, cuf1=\EC, + cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\ET, + el=\EU, home=\E@, ht=\EZ, kbs=^H, kcbt=\E[, kclr=\EX, kcub1=^H, + kcud1=^J, kcuf1=^L, kcuu1=^K, ked=\ET, kel=\EU, khome=\E@, + rmso=\Ec\ED, rmul=\Eg\ED, smso=\Eb\ED, smul=\Ef\ED, + +#### Omron +# +# This company is still around in 1995, manufacturing point-of-sale systems. + +omron|Omron 8025AG, + OTbs, am, da, db, + cols#80, lines#24, + bel=^G, clear=\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, cuu1=\EA, + cvvis=\EN, dch1=\EP, dl1=\EM, ed=\ER, el=\EK, home=\EH, + il1=\EL, ind=\ES, ri=\ET, rmso=\E4, smso=\Ef, + +#### Ramtek +# +# Ramtek was a vendor of high-end graphics terminals around 1979-1983; they +# were competition for things like the Tektronics 4025. +# + +# Ramtek 6221 from BRL, probably by Doug Gwyn +# The following SET-UP modes are assumed for normal operation: +# UNDERLINE_CURSOR ANSI_MODE AUTO_XON/XOFF_ON +# NEWLINE_OFF 80_COLUMNS +# Other SET-UP modes may be set for operator convenience or communication +# requirements; I recommend +# SMOOTH_SCROLL AUTO_REPEAT_ON 3_#_SHIFTED WRAP_AROUND_ON +# Hardware tabs are assumed to be every 8 columns; they can be set up by the +# "reset", "tset", or "tabs" utilities (use rt6221-w, 160 columns, for this). +# Note that the Control-E key is useless on this brain-damaged terminal. No +# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! +rt6221|Ramtek 6221 80x24, + OTbs, OTpt, msgr, xon, + OTkn#4, cols#80, it#8, lines#24, vt#3, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[>5l, + clear=\E[1;1H\E[J, cnorm=\E[>5h\E[>9h, cr=^M, + csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^K, cuf=\E[%p1%dC, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, + cvvis=\E[>7h\E[>9l, ed=\E[J, el=\E[K, home=\E[1;1H, ht=^I, + hts=\EH, ind=^J, is2=\E)0, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf0=\EOP, kf1=\EOQ, kf2=\EOR, + kf3=\EOS, lf0=PF1, lf1=PF2, lf2=PF3, lf3=PF4, ll=\E[24;1H, + nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmkx=\E>, + rmso=\E[m, rmul=\E[m, + rs1=\E[1w\E[>37m\E[>39m\E[1v\E[20l\E[?3l\E[?6l\E[>5h\E[>6h\E[>7h\E[>8l\E[>9h\E[>10l\E[1;24r\E[m\E[q\E(B\017\E)0\E#5\E>, + sc=\E7, sgr0=\E[m, smacs=^N, smkx=\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, +# [TO DO: Check out: short forms of ho/cl and ll; reset (\Ec)]. +rt6221-w|Ramtek 6221 160x48, + cols#160, lines#48, + ll=\E[48;1H, use=rt6221, + +#### RCA +# + +# RCA VP3301 or VP3501 +rca|rca vp3301/vp3501, + OTbs, + cols#40, lines#24, + clear=^L, cuf1=^U, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, home=^Z, rmso=\E\ES0, smso=\E\ES1, + + +#### Selanar +# + +# Selanar HiREZ-100 from BRL, probably by Doug Gwyn +# The following SET-UP modes are assumed for normal operation: +# SET_DEFAULT_TABS 48_LINES 80_COLUMNS +# ONLINE ANSI CURSOR_VISIBLE +# VT102_AUTO_WRAP_ON VT102_NEWLINE_OFF VT102_MONITOR_MODE_OFF +# LOCAL_ECHO_OFF US_CHAR_SET WPS_TERMINAL_DISABLED +# CPU_AUTO_XON/XOFF_ENABLED PRINT_FULL_SCREEN +# For use with graphics software, all graphics modes should be set to factory +# default. Other SET-UP modes may be set for operator convenience or +# communication requirements. No delays are specified; use "stty ixon -ixany" +# to enable DC3/DC1 flow control! +# I commented out the scrolling capabilities since they are too slow. +hirez100|Selanar HiREZ-100, + OTbs, OTpt, mir, msgr, xon, + OTkn#4, cols#80, it#8, lines#48, vt#3, + acsc=, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, + cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, + cuu=\E[%p1%dA, cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + hts=\EH, il=\E[%p1%dL, il1=\E[L, is2=\E<\E)0, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, + kf1=\EOQ, kf2=\EOR, kf3=\EOS, lf0=PF1, lf1=PF2, lf2=PF3, + lf3=PF4, ll=\E[48H, mc0=\E[i, mc4=\E[4i\E[?4i, + mc5=\E[?5i\E[5i, nel=\EE, rc=\E8, rev=\E[7m, rmacs=^O, + rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, + rs1=\030\E2\E<\E[4i\E[?4i\E[12h\E[2;4;20l\E[?0;7h\E[?1;3;6;19l\E[r\E[m\E(B\017\E)0\E>, + sc=\E7, sgr0=\E[m, smacs=^N, smkx=\E[?1h\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, +hirez100-w|Selanar HiREZ-100 in 132-column mode, + cols#132, use=hirez100, + +#### Signetics +# + +# From University of Wisconsin +vsc|Signetics Vsc Video driver by RMC, + am, msgr, + cols#80, it#8, lines#26, + clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, + cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, + ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rev=^_\s, + rmso=^_!, rmul=^_#, sgr0=^_!, smso=^_\s, smul=^_", + +#### Soroc +# +# Alan Frisbie <frisbie@flying-disk.com> writes: +# +# As you may recall, the Soroc logo consisted of their name, +# with the letter "S" superimposed over an odd design. This +# consisted of a circle with a slightly smaller 15 degree (approx.) +# wedge with rounded corners inside it. The color was sort of +# a metallic gold/yellow. +# +# If I had been more of a beer drinker it might have been obvious +# to me, but it took a clue from their service department to make +# me exclaim, "Of course!" The circular object was the top of +# a beer can (the old removable pop-top style) and "Soroc" was an +# anagram for "Coors". +# +# I can just imagine the founders of the company sitting around +# one evening, tossing back a few and trying to decide what to +# call their new company and what to use for a logo. +# + +# (soroc120: removed obsolete ":ma=^K^P^R^L^L :" -- esr) +soroc120|iq120|soroc|soroc iq120, + clear=\E*$<2>, cud1=^J, ed=\EY, el=\ET, kcub1=^H, kcud1=^J, + kcuf1=^L, kcuu1=^K, use=adm3a, +soroc140|iq140|soroc iq140, + OTbs, am, mir, + cols#80, lines#24, + bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\Ew, + dl1=\Er$<.7*>, ed=\Ey, el=\Et, home=^^, il1=\Ee$<1*>, ind=^J, + kbs=^H, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A@\r, kf2=^AA\r, + kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, + kf8=^AG\r, kf9=^AH\r, khome=^^, ll=^^^K, rmir=\E8, + rmso=\E\177, rmul=\E^A, smir=\E9, smso=\E\177, smul=\E^A, + +#### Southwest Technical Products +# +# These guys made an early personal micro called the M6800. +# The ct82 was probably its console terminal. +# + +# (swtp: removed obsolete ":bc=^D:" -- esr) +swtp|ct82|southwest technical products ct82, + am, + cols#82, lines#20, + bel=^G, clear=^L, cr=^M, cub1=^D, cud1=^J, cuf1=^S, + cup=\013%p2%c%p1%c, cuu1=^A, dch1=^\^H, dl1=^Z, ed=^V, el=^F, + home=^P, ich1=^\^X, il1=^\^Y, ind=^N, + is2=\034\022\036\023\036\004\035\027\011\023\036\035\036\017\035\027\022\011, + ll=^C, ri=^O, rmso=^^^F, smso=^^^V, + +#### Synertek +# +# Bob Manson <manson@pattyr.acs.ohio-state.edu> writes (28 Apr 1995): +# +# Synertek used to make ICs, various 6502-based single-board process +# control and hobbyist computers, and assorted peripherals including a +# series of small inexpensive terminals (I think they were one of the +# first to have a "terminal-on-a-keyboard", where the terminal itself +# was only slightly larger than the keyboard). +# +# They apparently had a KTM-1 model, which I've never seen. The KTM-2/40 +# was a 40x24 terminal that could connect to a standard TV through a +# video modulator. The KTM-2/80 was the 80-column version (the 2/40 +# could be upgraded to the 2/80 by adding 2 2114 SRAMs and a new ROM). +# I have a KTM-2/80 still in working order. The KTM-2s had fully +# socketed parts, used 2 6507s, a 6532 as keyboard scanner, a program +# ROM and 2 ROMs as character generators. They were incredibly simple, +# and I've never had any problems with mine (witness the fact that mine +# was made in 1981 and is still working great... I've blown the video +# output transistor a couple of times, but it's a 2N2222 :-) +# +# The KTM-3 (which is what is listed in the terminfo file) was their +# attempt at putting a KTM-2 in a box (and some models came with a +# CRT). It wasn't much different from the KTM-2 hardware-wise, but the +# control and escape sequences are very different. The KTM-3 was always +# real broken, at least according to the folks I've talked to about it. +# +# The padding in the entry is probably off--these terminals were very +# slow (it takes like 100ms for the KTM-2 to clear the screen...) And +# anyone with any sanity replaced the ROMs with something that provided +# a reasonable subset of VT100 functionality, since the usual ROMs were +# obviously very primitive... oh, you could get an upgraded ROM from +# Synertek for some incredible amount of money, but what hacker with an +# EPROM burner would do that? :) +# +# Sorry I don't have any contact info; I believe they were located in +# Sunnyvale, and I'm fairly sure they are still manufacturing ICs +# (they've gone to ASICs and FPGAs), but I doubt they're in the computer +# business these days. +# + +# Tested, seems to work fine with vi. +synertek|ktm|synertek380|synertek ktm 3/80 tubeless terminal, + am, + cols#80, lines#24, + clear=^Z, cub1=^H, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EJ, el=\EK, + +#### Tab Office Products +# +# TAB Products Co. - Palo Alto, California +# Electronic Office Products, +# 1451 California Avenue 94304 +# +# I think they're out of business. +# + +# The tab 132 uses xon/xoff, so no padding needed. +# <smkx>/<rmkx> have nothing to do with arrow keys. +# <is2> sets 80 col mode, normal video, autowrap on (for <am>). +# Seems to be no way to get rid of status line. +# The manual for this puppy was dated June 1981. It claims to be VT52- +# compatible but looks more vt100-like. +tab132|tab|tab132-15|tab 132/15, + da, db, + OTdN@, cols#80, lines#24, lm#96, + cud1=^J, cup=\E[%i%p1%d;%p2%dH, dch1=\E[P, dl1=\E[M, + il1=\E[L, is2=\E[?7h\E[?3l\E[?5l, kcub1=\E[D, kcud1=\E[B, + kcuu1=\E[A, rmir=\E[4l, rmkx@, smir=\E[4h, smkx@, use=vt100, +tab132-w|tab132 in wide mode, + cols#132, + is2=\E[?7h\E[?3h\E[?5l, use=tab132, +tab132-rv|tab132 in reverse-video mode, + is2=\E[?7h\E[?3l\E[?5h, use=tab132, +tab132-w-rv|tab132 in reverse-video/wide mode, + is2=\E[?7h\E[?3h\E[?5h, use=tab132-w, + + +#### Teleray +# +# Research Incorporated +# 6425 Flying Cloud Drive +# Eden Prairie, MN 55344 +# Vox: (612)-941-3300 +# +# The Teleray terminals were all discontinued in 1992-93. RI still services +# and repairs these beasts, but no longer manufactures them. The Teleray +# people believe that all the types listed below are very rare now (1995). +# There was a newer line of Telerays (Model 7, Model 20, Model 30, and +# Model 100) that were ANSI-compatible. +# +# Note two things called "teleray". Reorder should move the common one +# to the front if you have either. A dumb teleray with the cursor stuck +# on the bottom and no obvious model number is probably a 3700. +# + +t3700|dumb teleray 3700, + OTbs, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, ind=^J, +t3800|teleray 3800 series, + OTbs, + cols#80, it#8, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EJ, el=\EK, + home=\EH, ht=^I, ind=^J, ll=\EY7\s, +t1061|teleray|teleray 1061, + OTbs, am, km, xhp, xt, + cols#80, it#8, lines#24, xmc#1, + bel=^G, clear=\014$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, + dl1=\EM$<2*>, ed=\EJ$<1>, el=\EK, home=\EH, ht=^I, hts=\EF, + ich1=\EP, il1=\EL$<2*>, ind=^J, ip=$<0.4*>, + is2=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef, + kf1=^Z1, kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, kf6=^Z6, kf7=^Z7, + kf8=^Z8, rmso=\ER@, rmul=\ER@, smso=\s\ERD, smul=\ERH, + tbc=\EG, +t1061f|teleray 1061 with fast PROMs, + dl1=\EM, il1=\EL, ip@, use=t1061, +# "Teleray Arpa Special", officially designated as +# "Teleray Arpa network model 10" with "Special feature 720". +# This is the new (1981) fast microcode updating the older "arpa" proms +# (which gave meta-key and programmable-fxn keys). 720 is much much faster, +# converts the keypad to programmable function keys, and has other goodies. +# Standout mode is still broken (magic cookie, etc) so is suppressed as no +# programs handle such lossage properly. +# Note: this is NOT the old termcap's "t1061f with fast proms." +# From: J. Lepreau <lepreau@utah-cs> Tue Feb 1 06:39:37 1983, Univ of Utah +# (t10: removed overridden ":so@:se@:us@:ue@:" -- esr) +t10|teleray 10 special, + OTbs, km, xhp, xt, + cols#80, it#8, lines#24, xmc#2, + clear=\Ej$<30/>, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, + dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\EP, il1=\EL, + ind=\Eq, pad=\0, ri=\Ep, rmso=\ER@, rmul=\ER@, smso=\ERD, + smul=\ERH, +# teleray 16 - map the arrow keys for vi/rogue, shifted to up/down page, and +# back/forth words. Put the function keys (f1-f10) where they can be +# found, and turn off the other magic keys along the top row, except +# for line/local. Do the magic appropriate to make the page shifts work. +# Also toggle ^S/^Q for those of us who use Emacs. +t16|teleray 16, + am, da, db, mir, xhp, xt, + cols#80, lines#24, + bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, + cuf1=\E[C, cup=%i\E[%p1%d;%p2%df, cuu1=\E[A, dch1=\E[P, + dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H, ht=^I, il1=\E[L, + ind=^J, kf1=^Z1, kf10=^Z0, kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, + kf6=^Z6, kf7=^Z7, kf8=^Z8, kf9=^Z9, ri=\E[T, + rmcup=\E[V\E[24;1f\E[?38h, rmir=\E[4l, rmso=\E[m, + rmul=\E[m, sgr0=\E[m, smcup=\E[U\E[?38l, smir=\E[4h, + smso=\E[7m, smul=\E[4m, + +#### Texas Instruments (ti) +# + +# The Silent 700 was so called because it was built around a quiet thermal +# printer. It was portable, equipped with an acoustic coupler, and pretty +# neat for its day. +ti700|ti733|ti735|ti745|ti800|ti silent 700/733/735/745 or omni 800, + OTbs, hc, os, + cols#80, + bel=^G, cr=\r$<162>, cub1=^H, cud1=^J, ind=^J, + +# +# Texas Instruments 916 VDT 7 bit control mode +# +ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 vt220 mode 7 bit CTRL, + da, db, in, msgr, + cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[2J$<6>, + cnorm=\E[?25h, cub=\E[%p1%dD, cud=\E[%p1%dB, + cuf=\E[%p1%dC, cup=\E[%p1%i%p1%d;%p2%dH, cuu=\E[%p1%dA, + dch=\E[%p1%dP$<250>, dch1=\E[P, dl=\E[%p1%dM, + ech=\E[%p1%dX$<20>, ed=\E[J$<6>, el=\E[0K, el1=\E[1K, + enacs=\E(B\E)0, ff=^L, flash=\E[?5h\E[?5l$<6>, + hpa=\E[%p1%{1}%+%dG, hts=\E[0W, ich=\E[%p1%d@$<250>, + il=\E[%p1%dL$<36>, ip=$<10>, is2=\E[1;24r\E[24;1H, + kcmd=\E[29~, kdch1=\E[P, kent=^J, kf1=\E[17~, kf10=\E[28~, + kf11=\E[29~, kf12=\E[31~, kf2=\E[18~, kf3=\E[19~, + kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, + kf9=\E[26~, khome=\E[H, kich1=\E[@, knp=\E[S, kpp=\E[T, + kprt=^X, prot=\E&, rmacs=\017$<2>, rs2=\E[!p, sgr@, + smacs=\016$<2>, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, + use=vt220, +# +# Texas Instruments 916 VDT 8 bit control mode +# +ti916-8|ti916-220-8|Texas Instruments 916 VDT 8859/1 8 vt220 mode bit CTRL, + kcmd=\23329~, kcub1=\233D, kcud1=\233B, kcuf1=\233C, + kcuu1=\233A, kdch1=\233P, kent=^J, kf1=\23317~, + kf10=\23328~, kf11=\23329~, kf12=\23331~, kf2=\23318~, + kf3=\23319~, kf4=\23320~, kf5=\23321~, kf6=\23323~, + kf7=\23324~, kf8=\23325~, kf9=\23326~, khome=\233H, + kich1=\233@, knp=\233S, kpp=\233T, kprt=^X, use=ti916, +# +# Texas Instruments 916 VDT 8859/1 7 bit control 132 column mode +# +ti916-132|Texas Instruments 916 VDT vt220 132 column, + cols#132, use=ti916, +# +# Texas Instruments 916 VDT 8859/1 8 bit control 132 column mode +# +ti916-8-132|Texas Instruments 916 VDT 8-bit vt220 132 column, + cols#132, use=ti916-8, +ti924|Texas Instruments 924 VDT 8859/1 7 bit CTRL, + OTbs, am, xon, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[2J\E[H, cnorm=\E[?25h, cr=^M, + csr=%i\E[%p1%d;%p2%dr, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, cvvis=\E[?31h, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, + il1=\E[L, ind=\ED, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\E[16~, kf6=\E[17~, kf7=\E[18~, + kf8=\E[19~, kf9=\E[20~, kich1=\E[@, rc=\E8, rev=\E[7m, + ri=\EM, rmso=\E[m, rmul=\E[m, sc=\E7, sgr0=\E[m, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, +ti924-8|Texas Instruments 924 VDT 8859/1 8 bit CTRL, + am, xon, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, + clear=\E[2J\E[H, cnorm=\E[?25h, cr=^M, + csr=%i\E[%p1%d;%p2%dr, cub1=\E[D, cud1=\E[B, cuf1=\E[C, + cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, cvvis=\E[?31h, + dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, + il1=\E[L, ind=\ED, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=P$<\233>, kf1=P$<\217>, + kf2=Q$<\217>, kf3=R$<\217>, kf4=S$<\217>, kf5=~$<\23316>, + kf6=~$<\23317>, kf7=~$<\23318>, kf8=~$<\23319>, + kf9=~$<\23320>, kich1=@$<\233>, rc=\E8, rev=\E[7m, ri=\EM, + rmso=\E[m, rmul=\E[m, sc=\E7, sgr0=\E[m, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, +ti924w|Texas Instruments 924 VDT 7 bit - 132 column mode, + cols#132, use=ti924, +ti924-8w|Texas Instruments 924 VDT 8 bit - 132 column mode, + cols#132, use=ti924-8, +ti931|Texas Instruments 931 VDT, + OTbs, am, xon, + cols#80, lines#24, + bel=^G, blink=\E4P, clear=\EL, cnorm=\E4@, cr=^M, cub1=\ED, + cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, + cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, + ich1=\ER\EP\EM, il1=\EN, ind=\Ea, invis=\E4H, + is2=\EGB\E(@B@@\E), kcub1=\ED, kcud1=\EB, kcuf1=\EC, + kcuu1=\EA, kdch1=\EQ, kdl1=\EO, kf1=\Ei1, kf2=\Ei2, kf3=\Ei3, + kf4=\Ei4, kf5=\Ei5, kf6=\Ei6, kf7=\Ei7, kf8=\Ei8, kf9=\Ei9, + kich1=\EP, kil1=\EN, rev=\E4B, ri=\Eb, rmso=\E4@, rmul=\E4@, + sgr0=\E4@, smso=\E4A, smul=\E4D, +ti926|Texas Instruments 926 VDT 8859/1 7 bit CTRL, + csr@, ind=\E[1S, ri=\E[1T, use=ti924, +# (ti926-8: I corrected this from the broken SCO entry -- esr) +ti926-8|Texas Instruments 926 VDT 8859/1 8 bit CTRL, + csr@, ind=\2331S, ri=\2331T, use=ti924-8, +ti_ansi|basic entry for ti928, + am, bce, eo, xenl, xon, + colors#8, cols#80, it#8, lines#25, pairs#64, + bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[2J\E[H, + cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, 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, kbs=^H, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kend=\E[F, kf0=\E[V, kf1=\E[M, + 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, knp=\E[G, kpp=\E[I, + op=\E[37;40m, ri=\E[T, rmso=\E[m, rmul=\E[m, + setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[m, + smso=\E[7m, smul=\E[4m, +# +# 928 VDT 7 bit control mode +# +ti928|Texas Instruments 928 VDT 8859/1 7 bit CTRL, + kdch1=\E[P, kend=\E_1\E\\, kent=\E[8~, kf1=\E[17~, + kf10=\E[28~, kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, + kf15=\E[34~, kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, + kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, + kich1=\E[@, knp=\E[S, kpp=\E[T, kprt=\E[35~, use=ti_ansi, +# +# 928 VDT 8 bit control mode +# +ti928-8|Texas Instruments 928 VDT 8859/1 8 bit CTRL, + kdch1=\233P, kend=\2371\234, kent=\2338~, kf1=\23317~, + kf10=\23328~, kf11=\23329~, kf12=\23331~, kf13=\23332~, + kf15=\23334~, kf2=\23318~, kf3=\23319~, kf4=\23320~, + kf5=\23321~, kf6=\23323~, kf7=\23324~, kf8=\23325~, + kf9=\23326~, khome=\233H, kich1=\233@, knp=\233S, + kpp=\233T, kprt=\23335~, use=ti_ansi, + +#### Zentec (zen) +# + +# (zen30: removed obsolete :ma=^L ^R^L^K^P:. This entry originally +# had just <smso>=\EG6 which I think means standout was supposed to be +# dim-reverse using ADM12-style attributes. ADM12 <smul>/<rmul> and +# <invis> might work-- esr) +zen30|z30|zentec 30, + OTbs, am, mir, ul, + cols#80, lines#24, + bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, + dim=\EG2, dl1=\ER$<1.5*>, ed=\EY, el=\ET$<1.0*>, home=^^, + il1=\EE$<1.5*>, ind=^J, rmir=\Er, rmul@, smir=\Eq, smso=\EG6, + smul@, use=adm+sgr, +# (zen50: this had extension capabilities +# :BS=^U:CL=^V:CR=^B: +# UK/DK/RK/LK/HM were someone's aliases for ku/kd/kl/kr/kh, +# which were also in the original entry -- esr) +# (zen50: removed obsolete ":ma=^Hh^Ll^Jj^Kk:" -- esr) +zen50|z50|zentec zephyr, + OTbs, am, + cols#80, lines#24, xmc#1, + clear=\E+, cub1=^H, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, + cuu1=^K, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ich1=\EQ, il1=\EE, + invis@, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, + rmul@, smul@, use=adm+sgr, + +# CCI 4574 (Office Power) from Will Martin <wmartin@BRL.ARPA> via BRL +cci|cci1|z8001|zen8001|CCI Custom Zentec 8001, + OTbs, am, bw, + cols#80, lines#24, + blink=\EM", clear=\EH\EJ, cnorm=\EP, + csr=\ER%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^J, + cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, + cvvis=\EF\EQ\EM \ER 7, dim=\EM!, ed=\EJ, el=\EK, home=\EH, + invis=\EM(, is2=\EM \EF\ET\EP\ER 7, kbs=^H, kcub1=\ED, + kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH, mc4=^T, mc5=^R, + rev=\EM$, ri=\EI, rmso=\EM\s, rmul=\EM\s, sgr0=\EM\s, + smso=\EM$, smul=\EM0, + +######## OBSOLETE UNIX CONSOLES +# + +#### Apollo consoles +# +# Apollo got bought by Hewlett-Packard. The Apollo workstations are +# labeled HP700s now. +# + +# From: Gary Darland <goodmanc@garnet.berkeley.edu> +apollo|apollo console, + OTbs, am, mir, + cols#88, lines#53, + clear=^L, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\EM%p1%{32}%+%c%p2%d), cuu1=\EA, dch1=\EP, dl1=\EL, + ed=\EJ, el=\EK, hpa=\EN%p1%d, il1=\EI, ind=\EE, ri=\ED, + rmcup=\EX, rmir=\ER, rmso=\ET, rmul=\EV, smcup=\EW, smir=\EQ, + smso=\ES, smul=\EU, vpa=\EO+\s, + +# We don't know whether or not the apollo guys replicated DEC's firmware bug +# in the VT132 that reversed <rmir>/<smir>. To be on the safe side, disable +# both these capabilities. +apollo_15P|apollo 15 inch display, + rmir@, smir@, use=vt132, +apollo_19L|apollo 19 inch display, + rmir@, smir@, use=vt132, +apollo_color|apollo color display, + rmir@, smir@, use=vt132, + +#### Convergent Technology +# +# Burroughs bought Convergent shortly before it merged with Univac. +# CTOS is (I believe) dead. Probably the aws is too (this entry dates +# from 1991 or earlier). +# + +# Convergent AWS workstation from Gould/SEL UTX/32 via BRL +# (aws: removed unknown :dn=^K: -- esr) +aws|Convergent Technologies AWS workstation under UTX and Xenix, + am, + OTug#0, cols#80, lines#28, xmc#0, + OTbc=^H, OTma=\016h\013j\001k\022l\002m, OTnl=^J, acsc=, + clear=^L, cud1=^K, cuf1=^R, cup=\EC%p2%c%p1%c, cuu1=^A, + dch1=\EDC, dl1=\EDL, ed=\EEF, el=\EEL, hpa=\EH%p1%c, + ich1=\EIC, il1=\EIL, ind=\ESU, kbs=^H, kcub1=^N, kcud1=^K, + kcuf1=^R, kcuu1=^A, ri=\ESD, rmacs=\EAAF, rmso=\EARF, + rmul=\EAUF, smacs=\EAAN, smso=\EARN, smul=\EAUN, + vpa=\EV%p1%c, +awsc|Convergent Technologies AWS workstation under CTOS, + am, + OTug#0, cols#80, lines#24, xmc#0, + OTbc=^N, OTma=\016h\013j\001k\022l\002m, acsc=, clear=^L, + cud1=^K, cuf1=^R, cup=\EC%p2%c%p1%c, cuu1=^A, ed=\EEF, + el=\EEL, kbs=^H, kcub1=^N, kcud1=^K, kcuf1=^R, kcuu1=^A, + rmacs=\EAAF, rmso=\EAA, rmul=\EAA, smacs=\EAAN, smso=\EAE, + smul=\EAC, + +#### DEC consoles +# + +# The MicroVax console. Tim Theisen <tim@cs.wisc.edu> writes: +# The digital uVax II's had a graphic display called a qdss. It was +# supposed to be a high performance graphic accelerator, but it was +# late to market and barely appeared before faster dumb frame buffers +# appeared. I have only used this display while running X11. However, +# during bootup, it was in text mode, and probably had a terminal emulator +# within it. And that is what your termcap entry is for. In graphics +# mode the screen size is 1024x864 pixels. +qdss|qdcons|qdss glass tty, + OTbs, am, + cols#128, lines#57, + clear=\032$<1/>, cub1=^H, cud1=^J, cuf1=^L, + cup=\E=%p1%c%p2%c, cuu1=^K, + +#### Fortune Systems consoles +# +# Fortune made a line of 68K-based UNIX boxes that were pretty nifty +# in their day; I (esr) used one myself for a year or so around 1984. +# They had no graphics, though, and couldn't compete against Suns and +# the like. R.I.P. +# + +# From: Robert Nathanson <c160-3bp@Coral> via tut Wed Oct 5, 1983 +# (This had extension capabilities +# :rv=\EH:re=\EI:rg=0:GG=0:\ +# :CO=\E\\:WL=^Aa\r:WR=^Ab\r:CL=^Ac\r:CR=^Ad\r:DL=^Ae\r:RF=^Af\r:\ +# :RC=^Ag\r:CW=^Ah\r:NU=^Aj\r:EN=^Ak\r:HM=^Al:PL=^Am\r:\ +# :PU=^An\r:PD=^Ao\r:PR=^Ap\r:HP=^A@\r:RT=^Aq\r:TB=\r:CN=\177:MP=\E+F: +# It had both ":bs:" and ":bs=^H:"; I removed the latter. Also, it had +# ":sg=0:" and ":ug=0:"; evidently the composer was trying (unnecessarily) +# to force both magic cookie glitches off. Once upon a time, I +# used a Fortune myself, so I know the capabilities of the form ^A[a-z]\r are +# function keys; thus the "Al" value for HM was certainly an error. I renamed +# EN/PD/PU/CO/CF/RT according to the XENIX/TC mappings, but not HM/DL/RF/RC. +# I think :rv: and :re: are start/end reverse video and :rg: is a nonexistent +# "reverse-video-glitch" capability; I have put :rv: and :re: in with standard +# names below. I've removed obsolete ":nl=5^J:" as there is a :do: -- esr) +fos|fortune|Fortune system, + OTbs, am, bw, + cols#80, lines#25, + acsc=j*k(l m"q&v%w#x-, bel=^G, blink=\EN, civis=\E], + clear=\014$<20>, cnorm=\E\\, cr=^M, cub1=^H, cud1=\n$<3>, + cup=\034C%p1%{32}%+%c%p2%{32}%+%c, cuu1=\013$<3>, + cvvis=\E\:, dch1=\034W$<5>, dl1=\034R$<15>, + ed=\034Y$<3*>, el=^\Z, home=\036$<10>, ht=^Z, + ich1=\034Q$<5>, il1=\034E$<15>, ind=^J, is2=^_.., kbs=^H, + kcub1=^Aw\r, kcud1=^Ay\r, kcuf1=^Az\r, kcuu1=^Ax\r, + kend=^Ak\r, kent=^Aq, kf1=^Aa\r, kf2=^Ab\r, kf3=^Ac\r, + kf4=^Ad\r, kf5=^Ae\r, kf6=^Af\r, kf7=^Ag\r, kf8=^Ah\r, + khome=^A?\r, knp=^Ao\r, kpp=^An\r, nel=^M^J, rev=\EH, + rmacs=^O, rmso=^\I`, rmul=^\IP, sgr0=\EI, smacs=\Eo, + smso=^\H`, smul=^\HP, + +#### Masscomp consoles +# +# Masscomp has gone out of business. Their product line was purchased by +# comany in Georgia (US) called "XS International", parts and service may +# still be available through them. +# + +# (masscomp: ":MT:" changed to ":km:"; -- esr) +masscomp|masscomp workstation console, + OTbs, km, mir, + cols#80, it#8, lines#24, + clear=\E[2J, cub1=^H, 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, ht=^I, il1=\E[L, is2=\EGc\EGb\EGw, kbs=^H, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rmir=\E[4l, + rmso=\E[m, rmul=\EGau, smir=\E[4h, smso=\E[7m, smul=\EGu, +masscomp1|masscomp large screen version 1, + cols#104, lines#36, use=masscomp, +masscomp2|masscomp large screen version 2, + cols#64, lines#21, use=masscomp, + +######## OTHER OBSOLETE TYPES +# +# These terminals are *long* dead -- these entries are retained for +# historical interest only. +# + +#### Obsolete non-ANSI software emulations +# + +# CTRM terminal emulator +# 1. underlining is not allowed with colors: first, is is simulated by +# black on white, second, it disables background color manipulations. +# 2. BLINKING, REVERSE and BOLD are allowed with colors, +# so we have to save their status in the static registers A, B and H +# respectively, to be able to restore them when color changes +# (because any color change turns off ALL attributes) +# 3. <bold> and <rev> sequences alternate modes, +# rather than simply entering them. Thus we have to check the +# static register B and H to determine the status, before sending the +# escape sequence. +# 4. <sgr0> now must set the status of all 3 register (A,B,H) to zero +# and then reset colors +# 5. implementation of the protect mode would badly penalize the performance. +# we would have to use \E&bn sequence to turn off colors (as well as all +# other attributes), and keep the status of protect mode in yet another +# static variable. If someone really needs this mode, they would have to +# create another terminfo entry. +# 6. original color-pair is white on black. +# store the information about colors into static registers +# 7. set foreground color. it performs the following steps. +# 1) turn off all attributes +# 2) turn on the background and video attributes that have been turned +# on before (this information is stored in static registers X,Y,Z,A,B,H,D). +# 3) turn on foreground attributes +# 4) store information about foreground into U,V,W static registers +# 8. turn on background: similar to turn on foreground above +ctrm|C terminal emulator, + am, bce, xon, + colors#8, cols#80, lh#0, lines#24, lm#0, lw#0, ncv#2, nlab#0, + pairs#63, pb#19200, vt#6, + bel=^G, blink=\E&dA%{1}%PA, + bold=%?%gH%{0}%=%t\E&dH%{1}%PH%;, cbt=\Ei, + clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\E&a%p2%dc%p1%dY, cuu1=\EA, dch1=\EP$<2>, dl1=\EM, + ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=\011$<2>, hts=\E1, + il1=\EL, ind=^J, ip=$<2>, is2=\E&jA\r, kbs=^H, kcub1=\Eu\r, + kcud1=\Ew\r, kcuf1=\Ev\r, kcuu1=\Et\r, kf1=\Ep\r, + kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, + kf7=\Ev\r, kf8=\Ew\r, khome=\Ep\r, + op=\E&bn\E&bB\E&bG\E&bR%{0}%PX%{0}%PY%{0}%PZ%{1}%PW%{1}%PV%{1}%PU, + rev=%?%gB%{0}%=%t\E&dB%{1}%PB%;, rmir=\ER, rmkx=\E&jA, + setb=\E&bn%?%gA%t\E&dA%;%?%gB%t\E&dB%;%?%gH%t\E&dH%;%?%gU%t\E&bR%;%?%gV%t\E&bG%;%?%gW%t\E&bB%;%?%p1%{1}%&%t\E&bb%{1}%e%{0}%;%PZ%?%p1%{2}%&%t\E&bg%{1}%e%{0}%;%PY%?%p1%{4}%&%t\E&br%{1}%e%{0}%;%PX, + setf=\E&bn%?%gA%t\E&dA%;%?%gB%t\E&dB%;%?%gH%t\E&dH%;%?%gX%t\E&br%;%?%gY%t\E&bg%;%?%gZ%t\E&bb%;%?%p1%{1}%&%t\E&bB%{1}%e%{0}%;%PW%?%p1%{2}%&%t\E&bG%{1}%e%{0}%;%PV%?%p1%{4}%&%t\E&bR%{1}%e%{0}%;%PU, + sgr=\E&d@%{0}%PA%{0}%PB%{0}%PD%{0}%PH%?%p1%p3%p5%|%|%t\E&dB%{1}%PB%;%?%p4%t\E&dA%{1}%PA%;%?%p6%t\E&dH%{1}%PH%;%?%p2%t\E&dD%;, + sgr0=\E&d@%{0}%PA%{0}%PB%{0}%PH, smir=\EQ, smkx=\E&jB, + smso=\E&dD, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, + +# gs6300 - can't use blue foreground, it clashes with underline; +# it's simulated with cyan +# Bug: The <op> capability probably resets attributes. +# (gs6300: commented out <rmln> (no <smln>) --esr) +gs6300|emots|AT&T PC6300 with EMOTS terminal emulator, + am, bce, msgr, xon, + colors#8, cols#80, it#8, lines#24, pairs#63, + acsc=++\,\,--..``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, + cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, + 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, + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, + ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, + is2=\E[m, kbs=^H, kcbt=^R^I, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf1=\E[0s, kf2=\E[24s, kf3=\E[1s, + kf4=\E[23s, kf5=\E[2s, kf6=\E[22s, kf7=\E[3s, kf8=\E[21s, + khome=\E[H, mc4=\E[4i, mc5=\E[5i, op=\E[?;m, rev=\E[7m, + ri=\E[L, rmacs=\E[10m, rs1=\Ec, setb=\E[?;%p1%dm, + setf=\E[?%?%p1%{0}%=%t0%e%p1%{1}%=%t2%e%p1%{1}%-%d%;m, + sgr0=\E[m\E[10m, smacs=\E[11m, smso=\E[1m, smul=\E[4m, + +# From: <earle@smeagol.UUCP> 29 Oct 85 05:40:18 GMT +# MS-Kermit with Heath-19 emulation mode enabled +# (h19k: changed ":pt@:" to ":it@" +h19k|h19kermit|heathkit emulation provided by Kermit (no auto margin), + am@, da, db, xt, + it@, + ht@, use=h19-u, + +# Apple Macintosh with Versaterm, a terminal emulator distributed by Synergy +# Software (formerly Peripherals Computers & Supplies, Inc) of +# 2457 Perkiomen Ave., Reading, PA 19606, 1-800-876-8376. They can +# also be reached at support@synergy.com. +versaterm|versaterm vt100 emulator for the macintosh, + am, xenl, + cols#80, it#8, lines#24, + bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, + clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, + cub1=^H, cud1=^J, cuf1=\E[C$<2/>, + cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, + dch1=\E[1P$<7/>, dl1=\E[1M$<9/>, ed=\E[J$<50/>, + el=\E[K$<3/>, home=\E[H, ht=^I, ich1=\E[1@$<7/>, + il1=\E[1L$<9/>, is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, + kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, + rf=/usr/share/tabset/vt100, ri=\EM$<5/>, + rmkx=\E>\E[?1l, rmso=\E[m$<2/>, rmul=\E[m$<2/>, rs1=\E>, + sc=\E7, sgr0=\E[m$<2/>, smkx=\E=\E[?1h, smso=\E[7m$<2/>, + smul=\E[4m$<2/>, + +# From: Rick Thomas <ihnp4!btlunix!rbt> +# (xtalk: I added <rmam>/<smam> based on the init string. +xtalk|IBM PC with xtalk communication program (versions up to 3.4), + am, mir, msgr, xon, + cols#80, it#8, lines#24, vt#3, xmc#1, + acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, + bel=^G, clear=\E[H\E[J$<50>, cr=^M, cub=\E[%p1%dD, cub1=^H, + cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C$<2>, + cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, + cuu1=\E[A$<2>, dl1=\E[M$<99>, ed=\E[J$<50>, el=\E[K$<3>, + el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, + il1=\E[L$<99>, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, + rmkx=\E[?1l\E>, rmso=\E[m\s, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr0=\E[m, + smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m\s, + tbc=\E[3g, use=vt100+fnkeys, + +# The official PC terminal emulator program of the AT&T Product Centers. +# Note - insert mode commented out - doesn't seem to work on AT&T PC. +simterm|attpc running simterm, + am, + cols#80, lines#24, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, + cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\ER, + dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, ind=^J, rmcup=\EVE, + rmso=\E&d@, sgr0=\E&d@, smcup=\EVS, smso=\E&dB, + +#### Daisy wheel printers +# +# This section collects Diablo, DTC, Xerox, Qume, and other daisy +# wheel terminals. These are now largely obsolete. +# + +# (diablo1620: removed <if=/usr/share/tabset/xerox1720>, no such file -- esr) +diablo1620|diablo1720|diablo450|ipsi|diablo 1620, + hc, os, + cols#132, it#8, + cub1=^H, cud1=^J, cuu1=\E^J, hd=\ED, hpa=\E\011%i%p1%c, + ht=^I, hts=\E1, hu=\EU, kbs=^H, tbc=\E2, +diablo1620-m8|diablo1640-m8|diablo 1620 w/8 column left margin, + cols#124, + is2=\r \E9, use=diablo1620, +# (diablo1640: removed <if=/usr/share/tabset/xerox1730>, no such file -- esr) +diablo1640|diablo1730|diablo1740|diablo630|x1700|diablo|xerox|diablo 1640, + bel=^G, rmso=\E&, rmul=\ER, smso=\EW, smul=\EE, + use=diablo1620, +# (diablo1640-lm: removed <if=/usr/share/tabset/xerox1730-lm>, no such +# file -- esr) +diablo1640-lm|diablo-lm|xerox-lm|diablo 1640 with indented left margin, + cols#124, + rmso=\E&, rmul=\ER, smso=\EW, smul=\EE, use=diablo1620, +diablo1740-lm|630-lm|1730-lm|x1700-lm|diablo 1740 printer, + use=diablo1640-lm, +# DTC 382 with VDU. Has no <ed> so we fake it with <el>. Standout +# <smso=^P\s\002^PF> works but won't go away without dynamite <rmso=^P\s\0>. +# The terminal has tabs, but I'm getting tired of fighting the braindamage. +# If no tab is set or the terminal's in a bad mood, it glitches the screen +# around all of memory. Note that return puts a blank ("a return character") +# in the space the cursor was at, so we use ^P return (and thus ^P newline for +# newline). Note also that if you turn off :pt: and let Unix expand tabs, +# curses won't work (some old BSD versions) because it doesn't clear this bit, +# and cursor addressing sends a tab for row/column 9. What a losing terminal! +# I have been unable to get tabs set in all 96 lines - it always leaves at +# least one line with no tabs in it, and once you tab through that line, +# it completely weirds out. +# (dtc382: change <rmcup> to <smcup> -- it just does a clear --esr) +dtc382|DTC 382, + am, da, db, xhp, + cols#80, lines#24, lm#96, + bel=^G, clear=\020\035$<20>, cnorm=^Pb, cr=^P^M, cub1=^H, + cuf1=^PR, cup=\020\021%p2%c%p1%c, cuu1=^P^L, cvvis=^PB, + dch1=^X, dl1=^P^S, ed=\020\025\020\023\020\023, el=^P^U, + home=^P^R, il1=^P^Z, ind=^J, pad=\177, rmcup=, rmir=^Pi, + rmul=^P \0, smcup=\020\035$<20>, smir=^PI, smul=^P ^P, +dtc300s|DTC 300s, + hc, os, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=^Z, ff=^L, hd=\Eh, ht=^I, + hts=\E1, hu=\EH, ind=^J, kbs=^H, tbc=\E3, +gsi|mystery gsi terminal, + hc, os, + cols#132, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=^Z, hd=\Eh, ht=^I, hu=\EH, + ind=^J, +aj830|aj832|aj|anderson jacobson, + hc, os, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8, + ind=^J, +# From: Chris Torek <chris@gyre.umd.edu> Thu, 7 Nov 85 18:21:58 EST +aj510|Anderson-Jacobson model 510, + am, mir, + cols#80, lines#24, + clear=^L, cub1=^H, cuf1=\EX, + cup=\E#%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EY, + dch1=.1*\E'D, dl1=\E&D$<2*/>, ed=\E'P, el=\E'L, ich1=, + il1=\E&I$<2*/>, ip=$<.1*/>, kcub1=\EW, kcud1=\EZ, + kcuf1=\EX, kcuu1=\EY, pad=\177, rmcup=\E"N, rmir=\E'J, + rmso=\E"I, rmul=\E"U, smcup=\E"N, smir=\E'I, smso=\E"I, + smul=\E"U, +# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 +# This is incomplete, but it's a start. +nec5520|nec|spinwriter|nec 5520, + hc, os, + cols#132, it#8, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E9, ff=^L, + hd=\E]s\n\E]W, ht=^I, hts=\E1, hu=\E]s\E9\E]W, ind=^J, + kbs=^H, tbc=\E3, +qume5|qume|Qume Sprint 5, + hc, os, + cols#80, it#8, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=^Z, ff=^L, hd=\Eh, ht=^I, + hts=\E1, hu=\EH, ind=^J, kbs=^H, tbc=\E3, +# I suspect the xerox 1720 is the same as the diablo 1620. +xerox1720|x1720|x1750|xerox 1720, + hc, os, + cols#132, it#8, + bel=^G, cr=^M, cub1=^H, cud1=^J, ff=^L, ht=^I, hts=\E1, ind=^J, + tbc=\E2, + +#### Miscellaneous obsolete terminals, manufacturers unknown +# +# If you have any information about these (like, a manufacturer's name, +# and a date on the serial-number plate) please send it! + +cad68-3|cgc3|cad68 basic monitor transparent mode size 3 chars, + OTbs, am, + cols#73, lines#36, + clear=^Z, cub1=^H, cuf1=^L, cuu1=^K, home=^^, +cad68-2|cgc2|cad68 basic monitor transparent mode size 2 chars, + OTbs, am, + cols#85, lines#39, + clear=^Z, cub1=^H, cuf1=^L, cuu1=^K, home=^^, kcub1=\E3, + kcud1=\E2, kcuf1=\E4, kcuu1=\E1, kf1=\E5, kf2=\E6, kf3=\E7, + kf4=\E8, rmso=\Em^C, smso=\Em^L, +cops10|cops|cops-10|cops 10, + am, bw, + cols#80, lines#24, + bel=^G, clear=\030$<30/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, + cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=^W, el=^V, + ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, + khome=^Y, +# (d132: removed duplicate :ic=\E5:, +# merged in capabilities from a BRL entry -- esr) +d132|datagraphix|datagraphix 132a, + da, db, in, + cols#80, lines#30, + bel=^G, clear=^L, cnorm=\Em\En, cr=^M, cub1=^H, cud1=^J, + cuf1=\EL, cup=\E8%i%p1%3d%p2%3d, cuu1=\EK, cvvis=\Ex, + dch1=\E6, home=\ET, ht=^I, ich1=\E5, il1=\E3, ind=^J, kbs=^H, + kcub1=^H, kcud1=^J, nel=^M^J, ri=\Ew, +# The d800 was an early portable terminal from c.1984-85 that looked a lot +# like the original Compaq `lunchbox' portable (but no handle). It had a vt220 +# mode (which is what this entry looks like) and several other lesser-known +# emulations. +d800|Direct 800/A, + OTbs, am, da, db, msgr, xhp, + cols#80, it#8, lines#24, + acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, + bel=^G, clear=\E[1;1H\E[2J, cnorm=\E[>12h, cr=^M, cub1=^H, + cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, + cvvis=\E[>12l, ed=\E[J, el=\E[K, ht=^I, ind=\ED, kcub1=\E[D, + kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, + kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, + ri=\EM, rmacs=\E[m, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smacs=\E[1m, smso=\E[7m, smul=\E[4m, +digilog|digilog 333, + OTbs, + cols#80, lines#16, + bel=^G, cr=^M, cub1=^H, cud1=^J, cuf1=^I, cuu1=^O, el=^X, + home=^N, ind=^J, +# The DWK was a terminal manufactured in the Soviet Union c.1986 +dwk|dwk-vt|dwk terminal, + am, + cols#80, it#8, lines#24, + acsc=+\^\,Q-S.M0\177`+a\:f'g#h#i#jXkClJmFnNo~qUs_tEuPv\\wKxW~_, + bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, + ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\EQ, ind=^J, kbs=\177, + kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\Ee, + kf1=\Ef1, kf10=\Ef0, kf2=\Ef2, kf3=\Ef3, kf4=\Ef4, kf5=\Ef5, + kf6=\Ef6, kf7=\Ef7, kf8=\Ef8, kf9=\Ef9, kich1=\Ed, knp=\Eh, + kpp=\Eg, nel=^M^J, rev=\ET, ri=\ES, rmacs=\EG, rmso=\EX, + sgr0=\EX, smacs=\EF, smso=\ET, +env230|envision230|envision 230 graphics terminal, + xenl@, + mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, + sgr=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, + use=vt100, +# These execuports were impact-printer ttys with a 30- or maybe 15-cps acoustic +# coupler attached, the whole rig fitting in a suitcase and more or less +# portable. Hot stuff for c.1977 :-) -- esr +ep48|ep4080|execuport 4080, + OTbs, am, os, + cols#80, + bel=^G, cr=^M, cub1=^H, cud1=^J, hd=^\, hu=^^, ind=^J, +ep40|ep4000|execuport 4000, + cols#136, use=ep4080, +# Adam Thompson <athompso@pangea.ca> tells us: +# Informer series - these are all portable units, resembling older +# automatic bread-baking machines. The terminal looks like a `clamshell' +# design, but isn't. The structure is similar to the Direct terminals, +# but only half the width. The entire unit is only about 10" wide. +# It features an 8" screen (6" or 7" if you have color!), and an 9"x6" +# keyboard. All the keys are crammed together, much like some laptop +# PCs today, but perhaps less well organized...all these units have a +# bewildering array of plugs on the back, including a built-in modem. +# The 305 was a color version of the 304; the 306 and 307 were mono and +# color terminals built for IBM bisync protocols. +# From: Paul Leondis <unllab@amber.berkeley.edu> +ifmr|Informer D304, + OTbs, am, + cols#80, lines#24, + clear=\EZ, cub1=^H, cud1=^J, cuf1=\EC, + cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dch1=\E\\, + ed=\E/, el=\EQ, home=\EH, ich1=\E[, ri=\En, rmso=\EK, sgr0=\EK, + smso=\EJ, +# Entry largely based on wy60 and has the features of wy60ak. +opus3n1+|Esprit Opus3n1+ in wy60 mode with ANSI arrow keys, + am, bw, hs, km, mir, msgr, ul, xon, + cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#80, + acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, + cbt=\EI, civis=\E`0, clear=\E*$<100>, cnorm=\E`1, cr=^M, + cub1=^H, cud1=^J, cuf1=^L, cup=\Ea%i%p1%dR%p2%dC, cuu1=^K, + dch1=\EW$<11>, dim=\EGp, dl1=\ER$<5>, dsl=\Ez(\r, + ed=\EY$<100>, el=\ET, fsl=^M, home=\036$<2>, ht=\011$<5>, + hts=\E1, if=/usr/share/tabset/std, il1=\EE$<4>, ind=^J, + ip=$<3>, + is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Ed/\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177\Ezz`\E[F\177\EA1*\EZH12, + kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kdch1=\EW, kdl1=\ER, ked=\EY, + kel=\ET, kend=\E[F, kent=\E7, kf1=^A@\r, kf10=^AI\r, + kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, + kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, + kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, + kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, + mc0=\EP, mc4=^T, mc5=^R, nel=\r\n$<3>, + pfloc=\EZ2%p1%{63}%+%c%p2%s\177, + pfx=\EZ1%p1%{63}%+%c%p2%s\177, + pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>, + rmacs=\EH^C, rmam=\Ed., rmcup=, rmir=\Er, rmln=\EA11, + rmxon=\Ec20, rs1=\E~!\E~4$<150>, rs2=\EeF$<150>, + rs3=\EwG\Ee($<150>, + sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, + sgr0=\E(\EH\003\EG0\EcD, smacs=\EH^B, smam=\Ed/, + smcup=\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177, + smir=\Eq, smln=\EA10, smxon=\Ec21, tbc=\E0, tsl=\Ez(, + uc=\EG8\EG0, use=adm+sgr, +teletec|Teletec Datascreen, + OTbs, am, + cols#80, lines#24, + bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^K, + home=^^, ind=^J, +# From: Mark Dornfeld <romwa@ucbvax.berkeley.edu> +# This description is for the LANPAR Technologies VISION 3220 +# terminal from 1984/85. The function key definitions k0-k5 represent the +# edit keypad: FIND, INSERT HERE, REMOVE, SELECT, PREV SCREEN, +# NEXT SCREEN. The key definitions k6-k9 represent the PF1 to PF4 keys. +# +# Kenneth Randell <kenr@datametrics.com> writes on 31 Dec 1998: +# I had a couple of scopes (3221) like this once where I used to work, around +# the 1987 time frame if memory serves me correctly. These scopes were made +# by an outfit called LANPAR Technologies, and were meant to me DEC VT 220 +# compatible. The 3220 was a plain text terminal like the VT-220, the 3221 +# was a like the VT-240 (monochrome with Regis + Sixel graphics), and the 3222 +# was like the VT-241 (color with Regis + Sixel Graphics). These terminals +# (3221) cost about $1500 each, and one was always broken -- had to be sent +# back to the shop for repairs. +# The only real advantage these scopes had over the VT-240's were: +# 1) They were faster in the Regis display, or at least the ones I did +# 2) They had a handy debugging feature where you could split-screen the +# scope, the graphics would appear on the top, and the REGIS commands would +# appear on the bottom. I don't remember the VT-240s being able to do that. +# I would swear that LANPAR Technologies was in MA someplace, but since I +# don't work at the same place anymore, and those terminals and manuals were +# long since junked, I cannot be any more sure than that. +# +# (v3220: removed obsolete ":kn#10:", +# I added <rmam>/<smam> based on the init string -- esr) +v3220|LANPAR Vision II model 3220/3221/3222, + OTbs, am, mir, xenl, + cols#80, it#8, lines#24, + clear=\E[H\E[J, cub1=^H, 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, ht=^I, il1=\E[L, + is2=\E>\E[?3l\E[?7h\E[?8h\E[p, kcub1=\E[D, kcud1=\E[B, + kcuf1=\E[C, kcuu1=\E[A, kf0=\E[1~, kf1=\E[2~, kf2=\E[3~, + kf3=\E[4~, kf4=\E[5~, kf5=\E[6~, kf6=\E[OP, kf7=\E[OQ, + kf8=\E[OR, kf9=\E[OS, khome=\E[H, ri=\EM, rmam=\E[?7l, + rmir=\E[4l, rmkx=\E>, rmso=\E[m, rmul=\E[m, sgr0=\E[m, + smam=\E[?7h, smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, +######## ICH/ICH1 VERSUS RMIR/SMIR +# +# Some non-curses applications get confused if both ich/ich1 and rmir/smir +# are present; the symptom is doubled characters in an update using insert. +# These applications are technically correct; in both 4.3BSD termcap and +# terminfo, you're not actually supposed to specify both ich/ich1 and rmir/smir +# unless the terminal needs both. To my knowledge, no terminal still in this +# file requires both other than the very obsolete dm2500. +# +# For ncurses-based applications this is not a problem, as ncurses uses +# one or the other as appropriate but never mixes the two. Therefore we +# have not corrected entries like `linux' and `xterm' that specify both. +# If you see doubled characters from these, use the linux-nic and xterm-nic +# entries that suppress ich/ich1. And upgrade to ncurses! +# + +######## VT100/ANSI/ISO 6429/ECMA-48/PC-TERM TERMINAL STANDARDS +# +# ANSI X3.64 has been withdrawn and replaced by ECMA-48. The ISO 6429 and +# ECMA-48 standards are said to be almost identical, but are not the same +# as X3.64 (though for practical purposes they are close supersets of it). +# +# You can obtain ECMA-48 for free by sending email to helpdesk@ecma.ch +# requesting the standard(s) you want (i.e. ECMA-48, "Control Functions for +# Coded Character Sets"), include your snail-mail address, and you should +# receive the document in due course. Don't expect an email acknowledgement. +# +# Related standards include "X3.4-1977: American National Standard Code for +# Information Interchange" (the ASCII standard) and "X3.41.1974: +# Code-Extension Techniques for Use with the 7-Bit Coded Character Set of +# American National Standard for Information Interchange." I believe (but +# am not certain) that these are effectively identical to ECMA-6 and ECMA-35 +# respectively. +# + +#### VT100/ANSI/ECMA-48 +# +# ANSI Standard (X3.64) Control Sequences for Video Terminals and Peripherals +# and ECMA-48 Control Functions for Coded Character Sets. +# +# Much of the content of this comment is adapted from a table prepared by +# Richard Shuford, based on a 1984 Byte article. Terminfo correspondences, +# discussion of some terminfo-related issues, and updates to capture ECMA-48 +# have been added. Control functions described in ECMA-48 only are tagged +# with * after their names. +# +# The table is a complete list of the defined ANSI X3.64/ECMA-48 control +# sequences. In the main table, \E stands for an escape (\033) character, +# SPC for space. Pn stands for a single numeric parameter to be inserted +# in decimal ASCII. Ps stands for a list of such parameters separated by +# semicolons. Parameter meanings for most parametrized sequences are +# decribed in the notes. +# +# Sequence Sequence Parameter or +# Mnemonic Name Sequence Value Mode terminfo +# ----------------------------------------------------------------------------- +# APC Applicatn Program Command \E _ - Delim - +# BEL Bell * ^G - - bel +# BPH Break Permitted Here * \E B - * - +# BS Backpace * ^H - EF - +# CAN Cancel * ^X - - - (A) +# CBT Cursor Backward Tab \E [ Pn Z 1 eF cbt +# CCH Cancel Previous Character \E T - - - +# CHA Cursor Horizntal Absolute \E [ Pn G 1 eF hpa (B) +# CHT Cursor Horizontal Tab \E [ Pn I 1 eF tab (C) +# CMD Coding Method Delimiter * \E +# CNL Cursor Next Line \E [ Pn E 1 eF nel (D) +# CPL Cursor Preceding Line \E [ Pn F 1 eF - +# CPR Cursor Position Report \E [ Pn ; Pn R 1, 1 - - (E) +# CSI Control Sequence Intro \E [ - Intro - +# CTC Cursor Tabulation Control \E [ Ps W 0 eF - (F) +# CUB Cursor Backward \E [ Pn D 1 eF cub +# CUD Cursor Down \E [ Pn B 1 eF cud +# CUF Cursor Forward \E [ Pn C 1 eF cuf +# CUP Cursor Position \E [ Pn ; Pn H 1, 1 eF cup (G) +# CUU Cursor Up \E [ Pn A 1 eF cuu +# CVT Cursor Vertical Tab \E [ Pn Y - eF - (H) +# DA Device Attributes \E [ Pn c 0 - - +# DAQ Define Area Qualification \E [ Ps o 0 - - +# DCH Delete Character \E [ Pn P 1 eF dch +# DCS Device Control String \E P - Delim - +# DL Delete Line \E [ Pn M 1 eF dl +# DLE Data Link Escape * ^P - - - +# DMI Disable Manual Input \E \ - Fs - +# DSR Device Status Report \E [ Ps n 0 - - (I) +# DTA Dimension Text Area * \E [ Pn ; Pn SPC T - PC - +# EA Erase in Area \E [ Ps O 0 eF - (J) +# ECH Erase Character \E [ Pn X 1 eF ech +# ED Erase in Display \E [ Ps J 0 eF ed (J) +# EF Erase in Field \E [ Ps N 0 eF - +# EL Erase in Line \E [ Ps K 0 eF el (J) +# EM End of Medium * ^Y - - - +# EMI Enable Manual Input \E b Fs - +# ENQ Enquire ^E - - - +# EOT End Of Transmission ^D - * - +# EPA End of Protected Area \E W - - - (K) +# ESA End of Selected Area \E G - - - +# ESC Escape ^[ - - - +# ETB End Transmission Block ^W - - - +# ETX End of Text ^C - - - +# FF Form Feed ^L - - - +# FNK Function Key * \E [ Pn SPC W - - - +# GCC Graphic Char Combination* \E [ Pn ; Pn SPC B - - - +# FNT Font Selection \E [ Pn ; Pn SPC D 0, 0 FE - +# GSM Graphic Size Modify \E [ Pn ; Pn SPC B 100, 100 FE - (L) +# GSS Graphic Size Selection \E [ Pn SPC C none FE - +# HPA Horz Position Absolute \E [ Pn ` 1 FE - (B) +# HPB Char Position Backward \E [ j 1 FE - +# HPR Horz Position Relative \E [ Pn a 1 FE - (M) +# HT Horizontal Tab * ^I - FE - (N) +# HTJ Horz Tab w/Justification \E I - FE - +# HTS Horizontal Tab Set \E H - FE hts +# HVP Horz & Vertical Position \E [ Pn ; Pn f 1, 1 FE - (G) +# ICH Insert Character \E [ Pn @ 1 eF ich +# IDCS ID Device Control String \E [ SPC O - * - +# IGS ID Graphic Subrepertoire \E [ SPC M - * - +# IL Insert Line \E [ Pn L 1 eF il +# IND Index \E D - FE - +# INT Interrupt \E a - Fs - +# JFY Justify \E [ Ps SPC F 0 FE - +# IS1 Info Separator #1 * ^_ - * - +# IS2 Info Separator #1 * ^^ - * - +# IS3 Info Separator #1 * ^] - * - +# IS4 Info Separator #1 * ^\ - * - +# LF Line Feed ^J - - - +# LS1R Locking Shift Right 1 * \E ~ - - - +# LS2 Locking Shift 2 * \E n - - - +# LS2R Locking Shift Right 2 * \E } - - - +# LS3 Locking Shift 3 * \E o - - - +# LS3R Locking Shift Right 3 * \E | - - - +# MC Media Copy \E [ Ps i 0 - - (S) +# MW Message Waiting \E U - - - +# NAK Negative Acknowledge * ^U - * - +# NBH No Break Here * \E C - - - +# NEL Next Line \E E - FE nel (D) +# NP Next Page \E [ Pn U 1 eF - +# NUL Null * ^@ - - - +# OSC Operating System Command \E ] - Delim - +# PEC Pres. Expand/Contract * \E Pn SPC Z 0 - - +# PFS Page Format Selection * \E Pn SPC J 0 - - +# PLD Partial Line Down \E K - FE - (T) +# PLU Partial Line Up \E L - FE - (U) +# PM Privacy Message \E ^ - Delim - +# PP Preceding Page \E [ Pn V 1 eF - +# PPA Page Position Absolute * \E [ Pn SPC P 1 FE - +# PPB Page Position Backward * \E [ Pn SPC R 1 FE - +# PPR Page Position Forward * \E [ Pn SPC Q 1 FE - +# PTX Parallel Texts * \E [ \ - - - +# PU1 Private Use 1 \E Q - - - +# PU2 Private Use 2 \E R - - - +# QUAD Typographic Quadding \E [ Ps SPC H 0 FE - +# REP Repeat Char or Control \E [ Pn b 1 - rep +# RI Reverse Index \E M - FE - (V) +# RIS Reset to Initial State \E c - Fs - +# RM Reset Mode * \E [ Ps l - - - (W) +# SACS Set Add. Char. Sep. * \E [ Pn SPC / 0 - - +# SAPV Sel. Alt. Present. Var. * \E [ Ps SPC ] 0 - - (X) +# SCI Single-Char Introducer \E Z - - - +# SCO Sel. Char. Orientation * \E [ Pn ; Pn SPC k - - - +# SCS Set Char. Spacing * \E [ Pn SPC g - - - +# SD Scroll Down \E [ Pn T 1 eF rin +# SDS Start Directed String * \E [ Pn ] 1 - - +# SEE Select Editing Extent \E [ Ps Q 0 - - (Y) +# SEF Sheet Eject & Feed * \E [ Ps ; Ps SPC Y 0,0 - - +# SGR Select Graphic Rendition \E [ Ps m 0 FE sgr (O) +# SHS Select Char. Spacing * \E [ Ps SPC K 0 - - +# SI Shift In ^O - - - (P) +# SIMD Sel. Imp. Move Direct. * \E [ Ps ^ - - - +# SL Scroll Left \E [ Pn SPC @ 1 eF - +# SLH Set Line Home * \E [ Pn SPC U - - - +# SLL Set Line Limit * \E [ Pn SPC V - - - +# SLS Set Line Spacing * \E [ Pn SPC h - - - +# SM Select Mode \E [ Ps h none - - (W) +# SO Shift Out ^N - - - (Q) +# SOH Start Of Heading * ^A - - - +# SOS Start of String * \E X - - - +# SPA Start of Protected Area \E V - - - (Z) +# SPD Select Pres. Direction * \E [ Ps ; Ps SPC S 0,0 - - +# SPH Set Page Home * \E [ Ps SPC G - - - +# SPI Spacing Increment \E [ Pn ; Pn SPC G none FE - +# SPL Set Page Limit * \E [ Ps SPC j - - - +# SPQR Set Pr. Qual. & Rapid. * \E [ Ps SPC X 0 - - +# SR Scroll Right \E [ Pn SPC A 1 eF - +# SRCS Set Reduced Char. Sep. * \E [ Pn SPC f 0 - - +# SRS Start Reversed String * \E [ Ps [ 0 - - +# SSA Start of Selected Area \E F - - - +# SSU Select Size Unit * \E [ Pn SPC I 0 - - +# SSW Set Space Width * \E [ Pn SPC [ none - - +# SS2 Single Shift 2 (G2 set) \E N - Intro - +# SS3 Single Shift 3 (G3 set) \E O - Intro - +# ST String Terminator \E \ - Delim - +# STAB Selective Tabulation * \E [ Pn SPC ^ - - - +# STS Set Transmit State \E S - - - +# STX Start pf Text * ^B - - - +# SU Scroll Up \E [ Pn S 1 eF indn +# SUB Substitute * ^Z - - - +# SVS Select Line Spacing * \E [ Pn SPC \ 1 - - +# SYN Synchronous Idle * ^F - - - +# TAC Tabul. Aligned Centered * \E [ Pn SPC b - - - +# TALE Tabul. Al. Leading Edge * \E [ Pn SPC a - - - +# TATE Tabul. Al. Trailing Edge* \E [ Pn SPC ` - - - +# TBC Tab Clear \E [ Ps g 0 FE tbc +# TCC Tabul. Centered on Char * \E [ Pn SPC c - - - +# TSR Tabulation Stop Remove * \E [ Pn SPC d - FE - +# TSS Thin Space Specification \E [ Pn SC E none FE - +# VPA Vert. Position Absolute \E [ Pn d 1 FE vpa +# VPB Line Position Backward * \E [ Pn k 1 FE - +# VPR Vert. Position Relative \E [ Pn e 1 FE - (R) +# VT Vertical Tabulation * ^K - FE - +# VTS Vertical Tabulation Set \E J - FE - +# +# --------------------------------------------------------------------------- +# +# Notes: +# +# Some control characters are listed in the ECMA-48 standard without +# being assigned functions relevant to terminal control there (they +# referred to other standards such as ISO 1745 or ECMA-35). They are listed +# here anyway for completeness. +# +# (A) ECMA-48 calls this "CancelCharacter" but retains the CCH abbreviation. +# +# (B) There seems to be some confusion abroad between CHA and HPA. Most +# `ANSI' terminals accept the CHA sequence, not the HPA. but terminfo calls +# the capability (hpa). ECMA-48 calls this "Cursor Character Absolute" but +# preserved the CHA abbreviation. +# +# (C) CHT corresponds to terminfo (tab). Usually it has the value ^I. +# Occasionally (as on, for example, certain HP terminals) this has the HTJ +# value. ECMA-48 calls this "Cursor Forward Tabulation" but preserved the +# CHT abbreviation. +# +# (D) terminfo (nel) is usually \r\n rather than ANSI \EE. +# +# (E) ECMA-48 calls this "Active Position Report" but preserves the CPR +# abbreviation. +# +# (F) CTC parameter values: 0 = set char tab, 1 = set line tab, 2 = clear +# char tab, 3 = clear line tab, 4 = clear all char tabs on current line, +# 5 = clear all char tabs, 6 = clear all line tabs. +# +# (G) CUP and HVP are identical in effect. Some ANSI.SYS versions accept +# HVP, but always allow CUP as an alternate. ECMA-48 calls HVP "Character +# Position Absolute" but retains the HVP abbreviation. +# +# (H) ECMA calls this "Cursor Line Tabulation" but preserves the CVT +# abbreviation. +# +# (I) DSR parameter values: 0 = ready, 1 = busy, 2 = busy, will send DSR +# later, 3 = malfunction, 4 = malfunction, will send DSR later, 5 = request +# DSR, 6 = request CPR response. +# +# (J) ECMA calls ED "Erase In Page". EA/ED/EL parameters: 0 = clear to end, +# 1 = clear from beginning, 2 = clear. +# +# (K) ECMA calls this "End of Guarded Area" but preserves the EPA abbreviation. +# +# (L) The GSM parameters are vertical and horizontal parameters to scale by. +# +# (M) Some ANSI.SYS versions accept HPR, but more commonly `ANSI' terminals +# use CUF for this function and ignore HPR. ECMA-48 calls this "Character +# Position Relative" but retains the HPR abbreviation. +# +# (N) ECMA-48 calls this "Character Tabulation" but retains the HT +# abbreviation. +# +# (O) SGR parameter values: 0 = default mode (attributes off), 1 = bold, +# 2 = dim, 3 = italicized, 4 = underlined, 5 = slow blink, 6 = fast blink, +# 7 = reverse video, 8 = invisible, 9 = crossed-out (marked for deletion), +# 10 = primary font, 10 + n (n in 1..9) = nth alternative font, 20 = Fraktur, +# 21 = double underline, 22 = turn off 2, 23 = turn off 3, 24 = turn off 4, +# 25 = turn off 5, 26 = proportional spacing, 27 = turn off 7, 28 = turn off +# 8, 29 = turn off 9, 30 = black fg, 31 = red fg, 32 = green fg, 33 = yellow +# fg, 34 = blue fg, 35 = magenta fg, 36 = cyan fg, 37 = white fg, 38 = set +# fg color as in CCIT T.416, 39 = set default fg color, 40 = black bg +# 41 = red bg, 42 = green bg, 43 = yellow bg, 44 = blue bg, 45 = magenta bg, +# 46 = cyan bg, 47 = white bg, 48 = set bg color as in CCIT T.416, 39 = set +# default bg color, 50 = turn off 26, 51 = framed, 52 = encircled, 53 = +# overlined, 54 = turn off 51 & 52, 55 = not overlined, 56-59 = reserved, +# 61-65 = variable highlights for ideograms. +# +# (P) SI is also called LSO, Locking Shift Zero. +# +# (Q) SI is also called LS1, Locking Shift One. +# +# (R) Some ANSI.SYS versions accept VPR, but more commonly `ANSI' terminals +# use CUD for this function and ignore VPR. ECMA calls it `Line Position +# Absolute' but retains the VPA abbreviation. +# +# (S) MC parameters: 0 = start xfer to primary aux device, 1 = start xfer from +# primary aux device, 2 = start xfer to secondary aux device, 3 = start xfer +# from secondary aux device, 4 = stop relay to primary aux device, 5 = +# start relay to primary aux device, 6 = stop relay to secondary aux device, +# 7 = start relay to secondary aux device. +# +# (T) ECMA-48 calls this "Partial Line Forward" but retains the PLD +# abbreviation. +# +# (U) ECMA-48 calls this "Partial Line Backward" but retains the PLU +# abbreviation. +# +# (V) ECMA-48 calls this "Reverse Line Feed" but retains the RI abbreviation. +# +# (W) RM/SM modes are as follows: 1 = Guarded Area Transfer Mode (GATM), +# 2 = Keyboard Action Mode (KAM), 3 = Control Representation Mode (CRM), +# 4 = Insertion Replacement Mode, 5 = Status Report Transfer Mode (SRTM), +# 6 = Erasure Mode (ERM), 7 = Line Editing Mode (LEM), 8 = Bi-Directional +# Support Mode (BDSM), 9 = Device Component Select Mode (DCSM), +# 10 = Character Editing Mode (HEM), 11 = Positioning Unit Mode (PUM), +# 12 = Send/Receive Mode, 13 = Format Effector Action Mode (FEAM), +# 14 = Format Effector Transfer Mode (FETM), 15 = Multiple Area Transfer +# Mode (MATM), 16 = Transfer Termination Mode, 17 = Selected Area Transfer +# Mode, 18 = Tabulation Stop Mode, 19 = Editing Boundary Mode, 20 = Line Feed +# New Line Mode (LF/NL), Graphic Rendition Combination Mode (GRCM), 22 = +# Zero Default Mode (ZDM). The EBM and LF/NL modes have actually been removed +# from ECMA-48's 5th edition but are listed here for reference. +# +# (X) Select Alternate Presentation Variants is used only for non-Latin +# alphabets. +# +# (Y) "Select Editing Extent" (SEE) was ANSI "Select Edit Extent Mode" (SEM). +# +# (Z) ECMA-48 calls this "Start of Guarded Area" but retains the SPA +# abbreviation. +# +# --------------------------------------------------------------------------- +# +# Abbreviations: +# +# Intro an Introducer of some kind of defined sequence; the normal 7-bit +# X3.64 Control Sequence Introducer is the two characters "Escape [" +# +# Delim a Delimiter +# +# x/y identifies a character by position in the ASCII table (column/row) +# +# eF editor function (see explanation) +# +# FE format effector (see explanation) +# +# F is a Final character in +# an Escape sequence (F from 3/0 to 7/14 in the ASCII table) +# a control sequence (F from 4/0 to 7/14) +# +# Gs is a graphic character appearing in strings (Gs ranges from +# 2/0 to 7/14) in the ASCII table +# +# Ce is a control represented as a single bit combination in the C1 set +# of controls in an 8-bit character set +# +# C0 the familiar set of 7-bit ASCII control characters +# +# C1 roughly, the set of control chars available only in 8-bit systems. +# This is too complicated to explain fully here, so read Jim Fleming's +# article in the February 1983 BYTE, especially pages 214 through 224. +# +# Fe is a Final character of a 2-character Escape sequence that has an +# equivalent representation in an 8-bit environment as a Ce-type +# (Fe ranges from 4/0 to 5/15) +# +# Fs is a Final character of a 2-character Escape sequence that is +# standardized internationally with identical representation in 7-bit +# and 8-bit environments and is independent of the currently +# designated C0 and C1 control sets (Fs ranges from 6/0 to 7/14) +# +# I is an Intermediate character from 2/0 to 2/15 (inclusive) in the +# ASCII table +# +# P is a parameter character from 3/0 to 3/15 (inclusive) in the ASCII +# table +# +# Pn is a numeric parameter in a control sequence, a string of zero or +# more characters ranging from 3/0 to 3/9 in the ASCII table +# +# Ps is a variable number of selective parameters in a control sequence +# with each selective parameter separated from the other by the code +# 3/11 (which usually represents a semicolon); Ps ranges from +# 3/0 to 3/9 and includes 3/11 +# +# * Not relevant to terminal control, listed for completeness only. +# +# Format Effectors versus Editor Functions +# +# A format effector specifies how following output is to be displayed. +# An editor function allows you to modify the display. Informally +# format effectors may be destructive; format effectors should not be. +# +# For instance, a format effector that moves the "active position" (the +# cursor or equivalent) one space to the left would be useful when you want to +# create an overstrike, a compound character made of two standard characters +# overlaid. Control-H, the Backspace character, is actually supposed to be a +# format effector, so you can do this. But many systems use it in a +# nonstandard fashion, as an editor function, deleting the character to the +# left of the cursor and moving the cursor left. When Control-H is assumed to +# be an editor function, you cannot predict whether its use will create an +# overstrike unless you also know whether the output device is in an "insert +# mode" or an "overwrite mode". When Control-H is used as a format effector, +# its effect can always be predicted. The familiar characters carriage +# return, linefeed, formfeed, etc., are defined as format effectors. +# +# NOTES ON THE DEC VT100 IMPLEMENTATION +# +# Control sequences implemented in the VT100 are as follows: +# +# CPR, CUB, CUD, CUF, CUP, CUU, DA, DSR, ED, EL, HTS, HVP, IND, +# LNM, NEL, RI, RIS, RM, SGR, SM, TBC +# +# plus several private DEC commands. +# +# Erasing parts of the display (EL and ED) in the VT100 is performed thus: +# +# Erase from cursor to end of line Esc [ 0 K or Esc [ K +# Erase from beginning of line to cursor Esc [ 1 K +# Erase line containing cursor Esc [ 2 K +# Erase from cursor to end of screen Esc [ 0 J or Esc [ J +# Erase from beginning of screen to cursor Esc [ 1 J +# Erase entire screen Esc [ 2 J +# +# Some brain-damaged terminal/emulators respond to Esc [ J as if it were +# Esc [ 2 J, but this is wrong; the default is 0. +# +# The VT100 responds to receiving the DA (Device Attributes) control +# +# Esc [ c (or Esc [ 0 c) +# +# by transmitting the sequence +# +# Esc [ ? l ; Ps c +# +# where Ps is a character that describes installed options. +# +# The VT100's cursor location can be read with the DSR (Device Status +# Report) control +# +# Esc [ 6 n +# +# The VT100 reports by transmitting the CPR sequence +# +# Esc [ Pl ; Pc R +# +# where Pl is the line number and Pc is the column number (in decimal). +# +# The specification for the DEC VT100 is document EK-VT100-UG-003. + +#### ANSI.SYS +# +# Here is a description of the color and attribute controls supported in the +# the ANSI.SYS driver under MS-DOS. Most console drivers and ANSI +# terminal emulators for Intel boxes obey these. They are a proper subset +# of the ECMA-48 escapes. +# +# 0 all attributes off +# 1 foreground bright +# 4 underscore on +# 5 blink on/background bright (not reliable with brown) +# 7 reverse-video +# 8 set blank (non-display) +# 10 set primary font +# 11 set first alternate font (on PCs, display ROM characters 1-31) +# 12 set second alternate font (on PCs, display IBM high-half chars) +# +# Color attribute sets +# 3n set foreground color / 0=black, 1=red, 2=green, 3=brown, +# 4n set background color \ 4=blue, 5=magenta, 6=cyan, 7=white +# Bright black becomes gray. Bright brown becomes yellow, +# These coincide with the prescriptions of the ISO 6429/ECMA-48 standard. +# +# * If the 5 attribute is on and you set a background color (40-47) it is +# supposed to enable bright background. +# +# * Many VGA cards (such as the Paradise and compatibles) do the wrong thing +# when you try to set a "bright brown" (yellow) background with attribute +# 5 (you get a blinking yellow foreground instead). A few displays +# (including the System V console) support an attribute 6 that undoes this +# braindamage (this is required by iBCS2). +# +# * Some older versions of ANSI.SYS have a bug that causes thems to require +# ESC [ Pn k as EL rather than the ANSI ESC [ Pn K. (This is not ECMA-48 +# compatible.) + +#### Intel Binary Compatibility Standard +# +# For comparison, here are the capabilities implied by the Intel Binary +# Compatibility Standard for UNIX systems (Intel order number 468366-001). +# These recommendations are optional. IBCS2 allows the leading escape to +# be either the 7-bit \E[ or 8-bit \0233 introducer, in accordance with +# the ANSI X.364/ISO 6429/ECMA-48 standard. Here are the iBCS2 capabilities +# (as described in figure 9-3 of the standard). Those expressed in the ibcs2 +# terminfo entry are followed with the corresponding capability in parens: +# +# CSI <n>k disable (n=0) or enable (n=1) keyclick +# CSI 2h lock keyboard +# CSI 2i send screen as input +# CSI 2l unlock keyboard +# CSI 6m enable background color intensity +# CSI <0-2>c reserved +# CSI <0-59>m select graphic rendition +# CSI <n>;<m>H (cup) cursor to line n and column m +# CSI <n>;<m>f cursor to line n and column m +# CSI <n>@ (ich) insert characters +# CSI <n>A (cuu) cursor up n lines +# CSI <n>B (cud) cursor down n lines +# CSI <n>C (cuu) cursor right n characters +# CSI <n>D (cud) cursor left n characters +# CSI <n>E cursor down n lines and in first column +# CSI <n>F cursor up n lines and in first column +# CSI <n>G (hpa) position cursor at column n-1 +# CSI <n>J (ed) erase in display +# CSI <n>K (el) erase in line +# CSI <n>L (il) insert line(s) +# CSI <n>P (dch) delete characters +# CSI <n>S (indn) scroll up n lines +# CSI <n>T (rin) scroll down n lines +# CSI <n>X (ech) erase characters +# CSI <n>Z (cbt) back up n tab stops +# CSI <n>` cursor to column n on line +# CSI <n>a (cuu) cursor right n characters +# CSI <n>d (vpa) cursor to line n +# CSI <n>e cursor down n lines and in first column +# CSI <n>g (cbt) clear all tabs +# CSI <n>z make virtual terminal n active +# CSI ?7h (smam) turn automargin on +# CSI ?7l (rmam) turn automargin off +# CSI s save cursor position +# CSI u restore cursor position to saved value +# CSI =<c>A set overscan color +# CSI =<c>F set normal foreground color +# CSI =<c>G set normal background color +# CSI =<c>H set reverse foreground color +# CSI =<c>I set reverse foreground color +# CSI =<c>J set graphic foreground color +# CSI =<c>K set graphic foreground color +# CSI =<n>g (dispc) display n from alternate graphics character set +# CSI =<p>;<d>B set bell parameters +# CSI =<s>;<e>C set cursor parameters +# CSI =<x>D enable/disable intensity of background color +# CSI =<x>E set/clear blink vs. bold background +# CSI 7 (sc) (sc) save cursor position +# CSI 8 (rc) (rc) restore cursor position to saved value +# CSI H (hts) (hts) set tab stop +# CSI Q<n><string> define function key string +# (string must begin and end with delimiter char) +# CSI c (clear) clear screen +# +# The lack of any specification for attributes in SGR (among other things) +# makes this a wretchedly weak standard. The table above is literally +# everything iBSC2 has to say about terminal escape sequences; there is +# no further discussion of their meaning or how to set the parameters +# in these sequences at all. +# + +######## NONSTANDARD CAPABILITY TRANSLATIONS USED IN THIS FILE +# +# The historical termcap file entries were written primarily in 4.4BSD termcap. +# The 4.4BSD termcap set was substantially larger than the original 4.1BSD set, +# with the extension names chosen for compatibility with the termcap names +# assigned in System V terminfo. There are some variant extension sets out +# there. We try to describe them here. +# +# XENIX extensions: +# +# The XENIX extensions include a set of function-key capabilities as follows: +# +# code XENIX variable name terminfo name name clashes? +# ---- ------------------- ------------- ----------------------- +# CL key_char_left +# CR key_char_right +# CW key_change_window create_window +# EN key_end kend +# HM key_home khome +# HP ?? +# LD key_delete_line kdl1 +# LF key_linefeed label_off +# NU key_next_unlocked_cell +# PD key_page_down knp +# PL ?? +# PN start_print mc5 +# PR ?? +# PS stop_print mc4 +# PU key_page_up kpp pulse +# RC key_recalc remove_clock +# RF key_toggle_ref req_for_input +# RT key_return kent +# UP key_up_arrow kcuu1 parm_up_cursor +# WL key_word_left +# WR key_word_right +# +# The XENIX extensions also include the following character-set and highlight +# capabilities: +# +# XENIX terminfo function +# ----- -------- ------------------------------ +# GS smacs start alternate character set +# GE rmacs end alternate character set +# GG :as:/:ae: glitch (analogous to :sg:/:ug:) +# bo blink begin blink (not used in /etc/termcap) +# be end blink (not used in /etc/termcap) +# bb blink glitch (not used in /etc/termcap) +# it dim begin dim (not used in /etc/termcap) +# ie end dim (not used in /etc/termcap) +# ig dim glitch (not used in /etc/termcap) +# +# Finally, XENIX also used the following forms-drawing capabilities: +# +# single double type ASCII approximation +# ------ ------ ------------- ------------------- +# GV Gv vertical line | +# GH Gv horizontal line - _ +# G1 G5 top right corner _ | +# G2 G6 top left corner | +# G3 G7 bottom left corner |_ +# G4 G8 bottom right corner _| +# GD Gd down-tick character T +# GL Gl left-tick character -| +# GR Gr right-tick character |- +# GC Gc middle intersection -|- +# GU Gu up-tick character _|_ +# +# These were invented to take advantage of the IBM PC ROM character set. One +# can compose an acsc string from the single-width characters as follows +# "j{G4}k{G1}l{G2}m{G3}q{GH}x{GV}t{GR}u{GL}v{GU}w{GD}n{GC}" +# When translating a termcap file, ncurses tic will do this automatically. +# The double forms characters don't fit the SVr4 terminfo model. +# +# AT&T Extensions: +# +# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of +# nonstandard capabilities. Its signature is the KM capability, used to name +# some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this +# set. Comments in the original, and a little cross-checking with other AT&T +# documentation, seem to establish that BO=:mr: (start reverse video), DS=:mh: +# (start dim), XS=:mk: (secure/invisible mode), EE=:me: (end highlights), +# FL=:LO: (enable soft labels), FE=:LF: (disable soft labels), CI=:vi: (make +# cursor invisible), and CV=:ve: (make cursor normal). +# +# HP Extensions +# +# The HP library (as of mid-1995, their term.h file version 70.1) appears to +# have the System V capabilities up to SVr1 level. After that, it supports +# two nonstandard caps meml and memu corresponding to the old termcap :ml:, +# :mu: capabilities. After that, it supports caps plab_norm, label_on, +# label_off, and key_f11..key_f63 capabilities like SVr4's. This makes the +# HP binary format incompatible with SVr4's. +# +# IBM Extensions +# +# There is a set of nonstandard terminfos used by IBM's AIX operating system. +# The AIX terminfo library diverged from SVr1 terminfo, and replaces all +# capabilities following prtr_non with the following special capabilties: +# box[12], batt[12], colb[0123456789], colf[0123456789], f[01234567], kbtab, +# kdo, kcmd, kcpn, kend, khlp, knl, knpn, kppn, kppn, kquit, ksel, kscl, kscr, +# ktab, kmpf[123456789], apstr, ksf1..ksf10, kf11...kf63, kact, topl, btml, +# rvert, lvert. Some of these are identical to XPG4/SVr4 equivalents: +# kcmd, kend, khlp, and kf11...kf63. Two others (kbtab and ksel) can be +# renamed (to kcbt and kslt). The places in the box[12] capabilities +# correspond to acsc chars, here is the mapping: +# +# box1[0] = ACS_ULCORNER +# box1[1] = ACS_HLINE +# box1[2] = ACS_URCORNER +# box1[3] = ACS_VLINE +# box1[4] = ACS_LRCORNER +# box1[5] = ACS_LLCORNER +# box1[6] = ACS_TTEE +# box1[7] = ACS_RTEE +# box1[8] = ACS_BTEE +# box1[9] = ACS_LTEE +# box1[10] = ACS_PLUS +# +# The box2 characters are the double-line versions of these forms graphics. +# The AIX binary terminfo format is incompatible with SVr4's. +# +# Iris console extensions: +# +# HS is half-intensity start; HE is half-intensity end +# CT is color terminal type (for Curses & rogue) +# CP is color change escape sequence +# CZ are color names (for Curses & rogue) +# +# The ncurses tic utility recognizes HS as an alias for mh <dim>. +# +# TC Extensions: +# +# There is a set of extended termcaps associated with something +# called the "Terminal Control" or TC package created by MainStream Systems, +# Winfield Kansas. This one also uses GS/GE for as/ae, and also uses +# CF for civis and CO for cvvis. Finally, they define a boolean :ct: +# that flags color terminals. +# +######## CHANGE HISTORY +# +# The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94. +# Releases 9 and up are maintained by Eric S. Raymond as part of the ncurses +# project. +# +# This file contains all the capability information present in John Kunze's +# last version of the termcap master file, except as noted in the change +# comments at end of file. Some information about very ancient obsolete +# capabilities has been moved to comments. Some all-numeric names of older +# terminals have been retired. +# +# I changed :MT: to :km: (the 4.4BSD name) everywhere. I commented out some +# capabilities (EP, dF, dT, dV, kn, ma, ml, mu, xr, xx) that are no longer +# used by BSD curses. +# +# The 9.1.0 version of this file was translated from my lightly-edited copy of +# 8.3, then mechanically checked against 8.3 using Emacs Lisp code written for +# the purpose. Unless the ncurses tic implementation and the Lisp code were +# making perfectly synchronized mistakes which I then failed to catch by +# eyeball, the translation was correct and perfectly information-preserving. +# +# Major version number bumps correspond to major version changes in ncurses. +# +# Here is a log of the changes since then: +# +# 9.1.0 (Wed Feb 1 04:50:32 EST 1995): +# * First terminfo master translated from 8.3. +# 9.2.0 (Wed Feb 1 12:21:45 EST 1995): +# * Replaced Wyse entries with updated entries supplied by vendor. +# +# 9.3.0 (Mon Feb 6 19:14:40 EST 1995): +# * Added contact & status info from G. Clark Brown <clark@sssi.com>. +# 9.3.1 (Tue Feb 7 12:00:24 EST 1995): +# * Better XENIX keycap translation. Describe TC termcaps. +# * Contact and history info supplied by Qume. +# 9.3.2 (Sat Feb 11 23:40:02 EST 1995): +# * Raided the Shuford FTP site for recent termcaps/terminfos. +# * Added information on X3.64 and VT100 standard escape sequences. +# 9.3.3 (Mon Feb 13 12:26:15 EST 1995): +# * Added a correct X11R6 xterm entry. +# * Fixed terminfo translations of padding. +# 9.3.4 (Wed Feb 22 19:27:34 EST 1995): +# * Added correct acsc/smacs/rmacs strings for vt100 and xterm. +# * Added u6/u7/u8/u9 capabilities. +# * Added PCVT entry. +# 9.3.5 (Thu Feb 23 09:37:12 EST 1995): +# * Emacs uses :so:, not :mr:, for its mode line. Fix linux entry +# to use reverse-video standout so Emacs will look right. +# * Added el1 capability to ansi. +# * Added smacs/rmacs to ansi.sys. +# +# 9.4.0 (Sat Feb 25 16:43:25 EST 1995): +# * New mt70 entry. +# * Added COPYRIGHTS AND OTHER DELUSIONS. +# * Added AT&T 23xx & 500/513, vt220 and vt420, opus3n1+, netronics +# smartvid & smarterm, ampex 175 & 219 & 232, +# env230, falco ts100, fluke, intertube, superbrain, ncr7901, vic20, +# ozzie, trs200, tr600, Tandy & Texas Instruments VDTs, intext2, +# screwpoint, fviewpoint, Contel Business Systems, Datamedia Colorscan, +# adm36, mime314, ergo4000, ca22851. Replaced att7300, esprit, dd5500. +# * Replaced the Perkin-Elmer entries with vendor's official ones. +# * Restored the old minimal-ansi entry, luna needs it. +# * Fixed some incorrect ip and proportional-padding translations. +# 9.4.1 (Mon Feb 27 14:18:33 EST 1995): +# * Fix linux & AT386 sgr strings to do A_ALTCHARSET turnoff correctly. +# * Make the xterm entry 65 lines again; create xterm25 and xterm24 +# to force a particular height. +# * Added beehive4 and reorganized other Harris entries. +# 9.4.2 (Thu Mar 9 01:45:44 EST 1995): +# * Merged in DEC's official entries for its terminals. The only old +# entry I kept was Doug Gwyn's alternate vt100 (as vt100-avo). +# * Replaced the translated BBN Bitgraph entries with purpose-built +# ones from AT&T's SVr3. +# * Replaced the AT&T entries with AT&T's official terminfos. +# * Added teleray 16, vc415, cops10. +# * Merged in many individual capabilities from SCO terminfo files. +# 9.4.3 (Mon Mar 13 02:37:53 EST 1995): +# * Typo fixes. +# * Change linux entry so A_PROTECT enables IBM-PC ROM characters. +# 9.4.4 (Mon Mar 27 12:32:35 EST 1995): +# * Added tty35, Ann Arbor Guru series. vi300 and 550, cg7900, tvi803, +# pt210, ibm3164, IBM System 1, ctrm, Tymshare scanset, dt200, adm21, +# simterm, citoh and variants. +# * Replaced sol entry with sol1 and sol2. +# * Replaced Qume QVT and Freedom-series entries with purpose-built +# terminfo entries. +# * Enhanced vt220, tvi910, tvi924, hpterm, hp2645, adm42, tek +# and dg200 entries using caps from from SCO. +# * Added the usual set of function-key mappings to ANSI entry. +# * Corrected xterm's function-key capabilities. +# 9.4.5 (Tue Mar 28 14:27:49 EST 1995): +# * Fix in xterm entry, cub and cud are not reliable under X11R6. +# 9.4.6 (Thu Mar 30 14:52:15 EST 1995): +# * Fix in xterm entry, get the arrow keys right. +# * Change some \0 escapes to \200. +# 9.4.7 (Tue Apr 4 11:27:11 EDT 1995) +# * Added apple (Videx card), adm1a, oadm31. +# * Fixed malformed ampex csr. +# * Fixed act4, cyb110; they had old-style prefix padding left in. +# * Changed mandatory to advisory padding in many entries. +# * Replaced HP entries up to hpsub with purpose-built ones. +# * Blank rmir/smir/rmdc/smdc capabilities removed. +# * Small fixes merged in from SCO entries for lpr, fos, tvi910+, tvi924. +# 9.4.8 (Fri Apr 7 09:36:34 EDT 199): +# * Replaced the Ann Arbor entries with SCO's, the init strings are +# more efficient (but the entries otherwise identical). +# * Added dg211 from Shuford archive. +# * Added synertek, apple-soroc, ibmpc, pc-venix, pc-coherent, xtalk, +# adm42-nl, pc52, gs6300, xerox820, uts30. +# * Pull SCO's padding into vi200 entry. +# * Improved capabilities for tvi4107 and other Televideo and Viewpoint +# entries merged in from SCO's descriptions. +# * Fixed old-style prefix padding on zen50, h1500. +# * Moved old superbee entry to superbee-xsb, pulled in new superbee +# entry from SCO's description. +# * Reorganized the special entries. +# * Added lm#0 to cbunix and virtual entries. +# +# 9.5.0 (Mon Apr 10 11:30:00 EDT 1995): +# * Restored cdc456tst. +# * Fixed sb1 entry, SCO erroneously left out the xsb glitch. +# * Added megatek, beacon, microkit. +# * Freeze for ncurses-1.9 release. +# 9.5.1 (Fri Apr 21 12:46:42 EDT 1995): +# * Added historical data for TAB. +# * Comment fixes from David MacKenzie. +# * Added the new BSDI pc3 entry. +# 9.5.2 (Tue Apr 25 17:27:52 EDT 1995) +# * A change in the tic -C logic now ensures that all entries in +# the termcap translation will fit in < 1024 bytes. +# * Added `bobcat' and `gator' HP consoles and the Nu machine entries +# from GNU termcap file. This merges in all their local information. +# 9.5.3 (Tue Apr 25 22:28:13 EDT 1995) +# * Changed tic -C logic to dump all capabilities used by GNU termcap. +# * Added warnings about entries with long translations (restoring +# all the GNU termcaps pushes a few over the edge). +# 9.5.4 (Wed Apr 26 15:35:09 EDT 1995) +# * Yet another tic change, and a couple of entry tweaks, to reduce the +# number of long (> 1024) termcap translations back to 0. +# +# 9.6.0 (Mon May 1 10:35:54 EDT 1995) +# * Added kf13-kf20 to Linux entry. +# * Regularize Prime terminal names. +# * Historical data on Synertek. +# * Freeze for ncurses-1.9.1. +# 9.6.1 (Sat May 6 02:00:52 EDT 1995): +# * Added true xterm-color entry, renamed djm's pseudo-color entry. +# * Eliminate whitespace in short name fields, this tanks some scripts. +# * Name field changes to shorten some long entries. +# * Termcap translation now automatically generates empty rmir/smir +# when ich1/ich is present (copes with an ancient vi bug). +# * Added `screen' entries from FSF's screen-3.6.2. +# * Added linux-nic and xterm-nic entries. +# 9.6.2 (Sat May 6 17:00:55 EDT 1995): +# * Change linux entry to use smacs=\E[11m and have an explicit acsc, +# eliminating some special-case code in ncurses. +# +# 9.7.0 (Tue May 9 18:03:12 EDT 1995): +# * Added vt320-k3, rsvidtx from the Emacs termcap.dat file. I think +# that captures everything unique from it. +# * Added reorder script generator. +# * Freeze for ncurses 1.9.2 release. +# 9.7.1 (Thu Jun 29 09:35:22 EDT 1995): +# * Added Sean Farley's kspd, flash, rs1 capabilities for linux. +# * Added Olaf Siebert's corrections for adm12. +# * ansi-pc-color now includes the colors and pairs caps, so that +# entries which use it will inherit them automatically. +# * The linux entry can now recognize the center (keypad 5) key. +# * Removed some junk that found its way into Linux acsc. +# +# 9.8.0 (Fri Jul 7 04:46:57 EDT 1995): +# * Add 50% cut mark as a desperate hack to reduce tic's core usage. +# * xterm doesn't try to use application keypad mode any more. +# * Freeze for ncurses-1.9.3 release. +# 9.8.1 (Thu Jul 19 17:02:12 EDT 1995): +# * Added corrected sun entry from vendor. +# * Added csr capability to linux entry. +# * Peter Wemm says the at386 hpa should be \E[%i%p1%dG, not \E[%p1%dG. +# * Added vt102-nsgr to cope with stupid IBM PC `VT100' emulators. +# * Some commented-out caps in long entries come back in, my code +# for computing string-table lengths had a bug in it. +# * pcansi series modified to fit comm-program reality better. +# 9.8.2 (Sat Sep 9 23:35:00 EDT 1995): +# * BSD/OS actually ships the ibmpc3 bold entry as its console. +# * Correct some bad aliases in the pcansi series +# * Added entry for QNX console. +# * Clean up duplicate long names for use with 4.4 library. +# * Change vt100 standout to be normal reverse vide, not bright reverse; +# this makes the Emacs status line look better. +# 9.8.3 (Sun Sep 10 13:07:34 EDT 1995): +# * Added Adam Thompson's VT320 entries, also his dtx-sas and z340. +# * Minor surgery, mostly on name strings, to shorten termcap version. +# +# 9.9.0 (Sat Sep 16 23:03:48 EDT 1995): +# * Added dec-vt100 for use with the EWAN emulator. +# * Added kmous to xterm for use with xterm's mouse-tracking facility. +# * Freeze for 1.9.5 alpha release. +# 9.9.1 (Wed Sep 20 13:46:09 EDT 1995): +# * Changed xterm lines to 24, the X11R6 default. +# 9.9.2 (Sat Sep 23 21:29:21 EDT 1995): +# * Added 7 newly discovered, undocumented acsc characters to linux +# entry (the pryz{|} characters). +# * ncurses no longer steals A_PROTECT. Simplify linux sgr accordingly. +# * Correct two typos in the xterm entries introduced in 9.9.1. +# * I finally figured out how to translate ko capabilities. Done. +# * Added tvi921 entries from Tim Theisen. +# * Cleanup: dgd211 -> dg211, adm42-nl -> adm42-nsl. +# * Removed mystery tec entry, it was neither interesting nor useful. +# * shortened altos3, qvt203, tvi910+, tvi92D, tvi921-g, tvi955, vi200-f, +# vi300-ss, att505-24, contel301, dm3045, f200vi, pe7000c, vc303a, +# trs200, wind26, wind40, wind50, cdc456tst, dku7003, f110, dg211, +# by making them relative to use capabilities +# * Added cuf1=^L to tvi925 from deleted variant tvi925a. +# * fixed cup in adm22 entry and parametrized strings in vt320-k3. +# * added it#8 to entries that used to have :pt: -- tvi912, vi200, +# ampex80, +# * Translate all home=\E[;H capabilities to home=\E[H, they're +# equivalent. +# * Translate \E[0m -> \E[m in [rs]mso, [rs]mul, and init strings of +# vt100 and ANSI-like terminals. +# 9.9.3 (Tue Sep 26 20:11:15 EDT 1995): +# * Added it#8 and ht=\t to *all* entries with :pt:; the ncurses tic +# does this now, too. +# * fviewpoint is gone, it duplicated screwpoint. +# * Added hp2627, graphos, graphos-30, hpex, ibmega, ibm8514, ibm8514-c, +# ibmvga, ibmvga-c, minix, mm340, mt4520-rv, screen2, screen3, +# versaterm, vi500, vsc, vt131, vt340, vt400 entries from UW. +# The UW vi50 replaces the old one, which becomes vi50adm, +# * No more embedded commas in name fields. +# +# 9.10.0 (Wed Oct 4 15:39:37 EDT 1995): +# * XENIX forms characters in fos, trs16, scoansi become acsc strings, +# * Introduced klone+* entries for describing Intel-console behavior. +# * Linux kbs is default-mapped to delete for some brain-dead reason. +# * -nsl -> -ns. The -pp syntax is obsolete. +# * Eliminate [A-Z]* primaries in accordance with SVr4 terminfo docs. +# * Make xterm entry do application-keypad mode again. I got complaints +# that it was messing up someone's 3270 emulator. +# * Added some longname fields in order to avoid warning messages from +# older tic implementations. +# * According to ctlseqs.ms, xterm has a full vt100 graphics set. Use +# it! (This gives us pi, greater than, less than, and a few more.) +# * Freeze for ncurses-1.9.6 release. +# 9.10.1 (Sat Oct 21 22:18:09 EDT 1995): +# * Add xon to a number of console entries, they're memory-mapped and +# don't need padding. +# * Correct the use dependencies in the ansi series. +# * Hand-translate more XENIX capabilities. +# * Added hpterm entry for HP's X terminal emulator. +# * Added aixterm entries. +# * Shortened four names so everything fits in 14 chars. +# +# 9.11.0 (Thu Nov 2 17:29:35 EST 1995): +# * Added ibcs2 entry and info on iBCS2 standard. +# * Corrected hpa/vpa in linux entry. They still fail the worm test. +# * We can handle the HP meml/memu capability now. +# * Added smacs to klone entries, just as documentation. +# * Carrected ansi.sys and cit-500 entries. +# * Added z39, vt320-k311, v220c, and avatar entries. +# * Make pcansi use the ansi.sys invis capability. +# * Added DIP switch descriptions for vt100, adm31, tvi910, tvi920c, +# tvi925, tvi950, dt80, ncr7900i, h19. +# * X3.64 has been withdrawn, change some references. +# * Removed function keys from ansi-m entry. +# * Corrected ansi.sys entry. +# * Freeze for ncurses-1.9.7 release. +# 9.11.1 (Tue Nov 6 18:18:38 EST 1995): +# * Added rmam/smam capabilities to many entries based on init strings. +# * Added correct hpa/vpa to linux. +# * Reduced several entries relative to vt52. +# 9.11.2 (Tue Nov 7 00:21:06 EST 1995): +# * Exiled some utterly unidentifiable custom and homebrew types to the +# UFO file; also, obsolete small-screen hardware; also, entries which +# look flat-out incorrect, garbled, or redundant. These include the +# following entries: carlock, cdc456tst, microkit, qdss, ramtek, tec, +# tec400, tec500, ubell, wind, wind16, wind40, wind50, plasma, agile, +# apple, bch, daleblit, nucterm, ttywilliams, nuterminal, nu24, bnu, +# fnu, nunix-30, nunix-61, exidy, ex3000, sexidy, pc52, sanyo55, +# yterm10, yterm11, yterm10nat, aed, aed-ucb, compucolor, compucolor2, +# vic20, dg1, act5s, netx, smartvid, smarterm, sol, sol2, dt200, +# trs80, trs100, trs200, trs600, xitex, rsvidtx, vid, att2300-x40, +# att2350-x40, att4410-nfk, att5410-ns, otty5410, att5425-nl-w, +# tty5425-fk, tty5425-w-fk, cita, c108-na, c108-rv-na, c100-rv-na, +# c108-na-acs, c108-rv-na-acs, ims950-ns, infotonKAS, ncr7900i-na, +# regent60na, scanset-n, tvi921-g, tvi925n, tvi925vbn, tvi925vb, +# vc404-na, vc404-s-na, vt420nam, vt420f-nam, vt420pc-nam, vt510nam, +# vt510pc-nam, vt520nam, vt525nam, xterm25, xterm50, xterm65, xterms. +# * Corrected pcvt25h as suggested by Brian C. Grayson +# <bgrayson@pine.ece.utexas.edu>. +# 9.11.3 (Thu Nov 9 12:14:40 EST 1995): +# * Added kspd=\E[P, kcbt=\E[Z, to linux entry, changed kbs back to ^H. +# * Added kent=\EOM to xterm entry. +# +# 9.11.4 (Fri Nov 10 08:31:35 EST 1995): +# * Corrected gigi entry. +# * Restored cuf/cud1 to xterm, their apparent bugginess was due to +# bad hpa/vpa capabilities. +# * Corrected flash strings to have a uniform delay of .2 sec. No +# more speed-dependent NUL-padding! +# * terminfo capabilities in comments bracketed with <>. +# 9.11.5 (Fri Nov 10 15:35:02 EST 1995): +# * Replaced pcvt with the 3.31 pcvt entries. +# * Freeze for 1.9.7a. +# 9.11.6 (Mon Nov 13 10:20:24 EST 1995): +# * Added emu entry from the X11R6 contrib tape sources. +# +# 9.12.0 (Wed Nov 29 04:22:25 EST 1995): +# * Improved iris-ansi and sun entries. +# * More flash string improvements. +# * Corrected wy160 & wy160 as suggested by Robert Dunn +# * Added dim to at386. +# * Reconciled pc3 and ibmpc3 with the BSDI termcap file. Keith says +# he's ready to start using the termcap generated from this one. +# * Added vt102-w, vt220-w, xterm-bold, wyse-vp, wy75ap, att4424m, +# ln03, lno3-w, h19-g, z29a*, qdss. Made vt200 an alias of vt220. +# * Improved hpterm, apollo consoles, fos, qvt101, tvi924. tvi925, +# att610, att620, att630, +# * Changed hazeltine name prefix from h to hz. +# * Sent t500 to the UFI file. +# * I think we've sucked all the juice out of BSDI's termcap file now. +# * Freeze for ncurses 1.9.8 release +# 9.12.1 (Thu Nov 30 03:14:06 EST 1995) +# * Unfreeze, linux kbs needed to be fixed. +# * Tim Theisen pinned down a bug in the DMD firmware. +# 9.12.2 (Thu Nov 30 19:08:55 EST 1995): +# * Fixes to ansi and klone capabilities (thank you, Aaron Ucko). +# (The broken ones had been shadowed by sgr.) +# 9.12.3 (Thu Dec 7 17:47:22 EST 1995): +# * Added documentation on ECMA-48 standard. +# * New Amiga entry. +# 9.12.4 (Thu Dec 14 04:16:39 EST 1995): +# * More ECMA-48 stuff +# * Corrected typo in minix entry, added pc-minix. +# * Corrected khome/kend in xterm (thank you again, Aaron Ucko). +# * Added rxvt entry. +# * Added 1.3.x color-change capabilities to linux entry. +# 9.12.5 (Tue Dec 19 00:22:10 EST 1995): +# * Corrected rxvt entry khome/kend. +# * Corrected linux color change capabilities. +# * NeXT entries from Dave Wetzel. +# * Cleaned up if and rf file names (all in /usr/share now). +# * Changed linux op capability to avoid screwing up a background color +# pair set by setterm. +# 9.12.6 (Wed Feb 7 16:14:35 EST 1996): +# * Added xterm-sun. +# 9.12.7 (Fri Feb 9 13:27:35 EST 1996): +# * Added visa50. +# +# 9.13.0 (Sun Mar 10 00:13:08 EST 1996): +# * Another sweep through the Shuford archive looking for new info. +# * Added dg100 alias to dg6053 based on a comp.terminals posting. +# * Added st52 from Per Persson. +# * Added eterm from the GNU Emacs 19.30 distribution. +# * Freeze for 1.9.9. +# 9.13.1 (Fri Mar 29 14:06:46 EST 1996): +# * FreeBSD console entries from Andrew Chernov. +# * Removed duplicate Atari st52 name. +# 9.13.2 (Tue May 7 16:10:06 EDT 1996) +# * xterm doesn't actually have ACS_BLOCK. +# * Change klone+color setf/setb to simpler forms that can be +# translated into termcap. +# * Added xterm1. +# * Removed mechanically-generated junk capabilities from cons* entries. +# * Added color support to bsdos. +# 9.13.3 (Thu May 9 10:35:51 EDT 1996): +# * Added Wyse 520 entries from Wm. Randolph Franklin <wrf@ecse.rpi.edu>. +# * Created ecma+color, linux can use it. Also added ech to linux. +# * Teach xterm about more keys. Add Thomas Dickey's 3.1.2E updates. +# * Add descriptions to FreeBSD console entries. Also shorten +# some aliases to <= 14 chars for portability. +# * Added x68k console +# * Added OTbs to several VT-series entries. +# 9.13.4 (Wed May 22 10:54:09 EDT 1996): +# * screen entry update for 3.7.1 from Michael Alan Dorman. +# 9.13.5 (Wed Jun 5 11:22:41 EDT 1996): +# * kterm correction due to Kenji Rikitake. +# * ACS correction in vt320-kll due to Phillippe De Muyter. +# 9.13.6 (Sun Jun 16 15:01:07 EDT 1996): +# * Sun console entry correction from J.T. Conklin. +# * Changed all DEC VT300 and up terminals to use VT300 tab set +# 9.13.7 (Mon Jul 8 20:14:32 EDT 1996): +# * Added smul to linux entry (we never noticed it was missing +# because of sgr!). +# * Added rmln to hp+labels (deduced from other HP entries). +# * Added vt100 acsc capability to vt220, vt340, vt400, d800, dt80-sas, +# pro350, att7300, 5420_2, att4418, att4424, att4426, att505, vt320-k3. +# * Corrected vt220 acsc. +# * The klone+sgr and klone+sgr-dumb entries now use klone+acs; +# this corresponds to reality and helps prevent some tic warnings. +# * Added sgr0 to c101, pcix, vt100-nav, screen2, oldsun, next, altos2, +# hpgeneric, hpansi, hpsub, hp236, hp700-wy, bobcat, dku7003, adm11, +# adm12, adm20, adm21, adm22, adm31, adm36, adm42, pt100, pt200, +# qvt101, tvi910, tvi921, tvi92B, tvi925, tvi950, tvi970, wy30-mc, +# wy50-mc, wy100, wyse-vp, ampex232, regent100, viewpoint, vp90, +# adds980, cit101, cit500, contel300, cs10, dm80, falco, falco-p, +# f1720a, go140, sb1, superbeeic, microb, ibm8512, kt7, ergo4000, +# owl, uts30, dmterm, dt100, dt100, dt110, appleII, apple-videx, +# lisa, trsII, atari, st52, pc-coherent, basis, m2-man, bg2.0, bg1.25, +# dw3, ln03, ims-ansi, graphos, t16, zen30, xtalk, simterm, d800, +# ifmr, v3220, wy100q, tandem653, ibmaed. +# * Added DWK terminal description. +# 9.13.8 (Wed Jul 10 11:45:21 EDT 1996): +# * Many entries now have highlights inherited from adm+sgr. +# * xterm entry now corresponds to XFree86 3.1.2E, with color. +# * xtitle and xtitle-twm enable access to the X status line. +# * Added linux-1.3.6 color palette caps in conventional format. +# * Added adm1178 terminal. +# * Move fos and apollo terminals to obsolete category. +# * Aha! The BRL terminals file told us what the Iris extensions mean. +# * Added, from the BRL termcap file: rt6221, rt6221-w, northstar, +# commodore, cdc721-esc, excel62, osexec. Replaced from the BRL file: +# cit500, adm11. +# 9.13.9 (Mon Jul 15 00:32:51 EDT 1996): +# * Added, from the BRL termcap file: cdc721, cdc721l, cdc752, cdc756, +# aws, awsc, zentec8001, modgraph48, rca vp3301/vp3501, ex155. +# * Corrected, from BRL termcap file: vi50. +# * Better rxvt entry & corrected xterm entries from Thomas Dickey. +# 9.13.10 (Mon Jul 15 12:20:13 EDT 1996): +# * Added from BRL: cit101e & variants, hmod1, vi200, ansi77, att5620-1, +# att5620-s, att5620-s, dg210, aas1901, hz1520, hp9845, osborne +# (old osborne moved to osborne-w), tvi970-vb, tvi970-2p, tvi925-hi, +# tek4105brl, tek4106brl, tek4107brl,tek4109brl, hazel, aepro, +# apple40p, apple80p, appleIIgs, apple2e, apple2e-p, apple-ae. +# * Paired-attribute fixes to various terminals. +# * Sun entry corrections from A. Lukyanov & Gert-Jan Vons. +# * xterm entry corrections from Thomas Dickey. +# 9.13.11 (Tue Jul 30 16:42:58 EDT 1996): +# * Added t916 entry, translated from a termcap in SCO's support area. +# * New qnx entry from Michael Hunter. +# 9.13.12 (Mon Aug 5 14:31:11 EDT 1996): +# * Added hpex2 from Ville Sulko. +# * Fixed a bug that ran the qnx and pcvtXX together. +# 9.13.13 (Fri Aug 9 01:16:17 EDT 1996): +# * Added dtterm entry from Solaris CDE. +# 9.13.14 (Tue Sep 10 15:31:56 EDT 1996): +# * corrected pairs#8 typo in dtterm entry. +# * added tvi9065. +# 9.13.15 (Sun Sep 15 02:47:05 EDT 1996): +# * updated xterm entry to cover 3.1.2E's new features. +# 9.13.16 (Tue Sep 24 12:47:43 EDT 1996): +# * Added new minix entry +# * Removed aliases of the form ^[0-9]* for obsolete terminals. +# * Commented out linux-old, nobody's using pre-1.2 kernels now. +# 9.13.17 (Fri Sep 27 13:25:38 EDT 1996): +# * Added Prism entries and kt7ix. +# * Caution notes about EWAN and tabset files. +# * Changed /usr/lib/tabset -> /usr/share/tabset. +# * Added acsc/rmacs/smacs to vt52. +# 9.13.18 (Mon Oct 28 13:24:59 EST 1996): +# * Merged in Thomas Dickey's reorganization of the xterm entries; +# added technical corrections to avoid warning messages. +# 9.13.19 (Sat Nov 16 16:05:49 EST 1996): +# * Added rmso=\E[27m in Linux entry. +# * Added koi8-r support for Linux console. +# * Replace xterm entries with canonical ones from XFree86 3.2. +# 9.13.20 (Sun Nov 17 23:02:51 EST 1996): +# * Added color_xterm from Jacob Mandelson +# 9.13.21 (Mon Nov 18 12:43:42 EST 1996): +# * Back off the xterm entry to use r6 as a base. +# 9.13.22 (Sat Nov 30 11:51:31 EST 1996): +# * Added dec-vt220 at Adrian Garside's request. +# +#-(original-changelog-1996/12/29-to-1998/02/28-by-TD)--------------------------- +# +# 10.1.0 (Sun Dec 29 02:36:31 EST 1996): withdrawn +# * Minor corrections to xterm entries. +# * Replaced EWAN telnet entry. +# * Dropped the reorder script generator. It was a fossil. +# 9.13.23 (Fri Feb 21 16:36:06 EST 1997): +# * Replaced minitel-2 entry. +# * Added MGR, ansi-nt. +# 9.13.24 (Sun Feb 23 20:55:23 EST 1997): +# * Thorsten Lockert added termcap `bs' to a lot of types, working from +# the 4.4BSD Lite2 file. +# +# 10.1.1 (Sat May 3 21:41:27 EDT 1997): +# * Use setaf/setab consistently with SVr4. +# * Remove ech, el1 from cons25w, they do not work in FreeBSD 2.1.5 +# 10.1.2 (Sat May 24 21:10:57 EDT 1997) +# * update xterm-xf86-v32 to match XFree86 3.2A (changes F1-F4) +# * add xterm-16color, for XFree86 3.3 +# 10.1.3 (Sat May 31 12:21:05 EDT 1997) +# * correct typo in emu +# * correct typo in vt102-w (Robert Wuest) +# * make new entry xterm-xf86-v33, restored xterm-xf86-v32. +# 10.1.4 (Sun Jun 15 08:29:05 EDT 1997) +# * remove ech capability from rxvt (it does the wrong thing) +# 10.1.5 (Sat Jun 28 21:34:36 EDT 1997) +# * remove spurious newlines from several entries (hp+color, wy50, +# wy350, wy370-nk, wy99gt-tek, wy370-tek, ibm3161, tek4205, ctrm, +# gs6300) +# 10.1.6 (Sat Jul 5 15:08:16 EDT 1997) +# * correct rmso capability of wy50-mc +# 10.1.7 (Sat Jul 12 20:05:55 EDT 1997) +# * add cbt to xterm-xf86-v32 +# * disentangle some entries from 'xterm', preferring xterm-r6 in case +# 'xterm' is derived from xterm-xf86-v32, which implements ech and +# other capabilities not in xterm-r6. +# * remove alternate character set from kterm entry. +# 10.1.8 (Sat Aug 2 18:43:18 EDT 1997) +# * correct acsc entries for ACS_LANTERN, which is 'i', not 'I'. +# 10.1.9 (Sat Aug 23 17:54:38 EDT 1997) +# * add xterm-8bit entry. +# 10.1.10 (Sat Oct 4 18:17:13 EDT 1997) +# * repair several places where early version of tic replaced \, with \\\, +# * make acsc entries canonical form (sorted, uniq). +# * modify acsc entries for linux, linux-koi8 +# * new rxvt entry, from corrected copy of distribution in rxvt 2.21b +# * add color, mouse support to kterm. +# 10.1.11 (Sat Oct 11 14:57:10 EDT 1997) +# * correct wy120 smxon/tbc capabilities which were stuck together. +# 10.1.12 (Sat Oct 18 17:38:41 EDT 1997) +# * add entry for xterm-xf86-v39t +# 10.1.13 (Sat Nov 8 13:43:33 EST 1997) +# * add u8,u9 to sun-il description +# 10.1.14 (Sat Nov 22 19:59:03 EST 1997) +# * add vt220-js, pilot, rbcomm, datapoint entries from esr's 27-jun-97 +# version. +# * add hds200 description (Walter Skorski) +# * add EMX 0.9b descriptions +# * correct rmso/smso capabilities in wy30-mc and wy50-mc (Daniel Weaver) +# * rename xhpterm back to hpterm. +# 10.1.15 (Sat Nov 29 19:21:59 EST 1997) +# * change initc in linux-c-nc to use 0..1000 range. +# 10.1.16 (Sat Dec 13 19:41:59 EST 1997) +# * remove hpa/vpa from rxvt, which implements them incorrectly. +# * add sgr0 for rxvt. +# * remove bogus smacs/rmacs from EMX descriptions. +# 10.1.17 (Sat Dec 20 17:54:10 EST 1997) +# * revised entry for att7300 +# 10.1.18 (Sat Jan 3 17:58:49 EST 1998) +# * use \0 rather than \200. +# * rename rxvt-color to rxvt to match rxvt 2.4.5 distribution. +# 10.1.19 (Sat Jan 17 14:24:57 EST 1998) +# * change xterm (xterm-xf86-v40), xterm-8bit rs1 to use hard reset. +# * rename xterm-xf86-v39t to xterm-xf86-v40 +# * remove bold/underline from sun console entries since they're not +# implemented. +# 10.1.20 (Sat Jan 24 11:02:51 EST 1998) +# * add beterm entry (Fred Fish) +# * add irix-color/xwsh entry. +# * turn ncv off for linux. +# 10.1.21 (Sat Jan 31 17:39:16 EST 1998) +# * set ncv for FreeBSD console (treat colors with reverse specially). +# * remove sgr string from qnx based on report by Xiaodan Tang +# 10.1.22 (Wed Feb 11 18:40:12 EST 1998) +# * remove spurious commas from descriptions +# * correct xterm-8bit to match XFree86 3.9Ad F1-F4. +# 10.1.23 (Sat Feb 28 17:48:38 EST 1998) +# * add linux-koi8r to replace linux-koi8 (which uses a corrupt acsc, +# apparently based on cp-866). +# +#-(replaced-changelog-1998/02/28-by-ESR)---------------------------------------- +# +# 9.13.23 (Fri Feb 21 16:36:06 EST 1997): +# * Replaced minitel-2 entry. +# * Added MGR, ansi-nt. +# * Minor corrections to xterm entries. +# * Replaced EWAN telnet entry. +# * Dropped the reorder script generator. It was a fossil. +# 9.13.24 (Sun Feb 23 20:55:23 EST 1997): +# * Thorsten Lockert added termcap `bs' to a lot of types, working from +# the 4.4BSD Lite2 file. +# 9.13.25 (Fri Jun 20 12:33:36 EDT 1997): +# * Added Datapoint 8242, pilot, ansi_psx, rbcomm, vt220js. +# * Updated iris-ansi; corrected vt102-w. +# * Switch base xterm entry to 3.3 level. +# 9.13.26 (Mon Jun 30 22:45:45 EDT 1997) +# * Added basic4. +# * Removed rmir/smir from tv92B. +# +# 10.2.0 (Sat Feb 28 12:47:36 EST 1998): +# * add hds200 description (Walter Skorski) +# * add beterm entry (Fred Fish) +# * add Thomas Dickey's xterm-xf86-v40, xterm-8bit, xterm-16color, +# iris-color entries. +# * add emx entries. +# * Replaced unixpc entry with Benjamin Sittler's corrected version. +# * Replaced xterm/rxvt/emu/syscons entries with Thomas Dickey's +# versions. +# * remove sgr string from qnx based on report by Xiaodan Tang +# * Added u8/u9, removed rmul/smul from sun-il. +# * 4.2 tic displays \0 rather than \200. +# * add linux-koi8r to replace linux-koi8 (which uses a corrupt acsc, +# apparently based on cp-866). +# * Merged in Pavel Roskin's acsc for linux-koi8 +# * Corrected some erroneous \\'s to \. +# * 4.2 ncurses has been changed to use setaf/setab, consistent w/SysV. +# * II -> ii in pcvtXX, screen, xterm. +# * Removed \n chars following ANSI escapes in sgr & friends. +# * Updated Wyse entries. +# * h19 corrections from Tim Pierce. +# * Noted that the dm2500 has both ich and smir. +# * added pccons for the Alpha under OSF/1. +# * Added Sony NEWS workstation entries and cit101e-rv. +# * Reverted `amiga'; to Kent Polk's version, as I'm told +# the Verkuil entry messes up with Amiga Telnet. +# 10.2.1 (Sun Mar 8 18:32:04 EST 1998): +# * Corrected attributions in 10.2.0 release notes. +# * Scanned the Shuford archive for new terminfos and information. +# * Removed sgr from qnx entry (Thomas Dickey). +# * Added entries for ICL and Kokusai Data Systems terminals. +# * Incorporated NCR terminfos from the Boundless Technology FTP site. +# * Incorporated att700 from the Boundless Technology FTP site. +# * Miscellaneous contact-address and Web-page updates. +# +#-(changelog-beginning-ncurses-4.2)--------------------------------------------- +# +# 1998/5/9 +# * add nxterm and xterm-color terminfo description (request by Cristian +# Gafton <gafton@redhat.com>). +# * modify rxvt terminfo description to clear alternate screen before +# switching back to normal screen, for compatibility with applications +# which use xterm (reported by Manoj Kasichainula <manojk@io.com>). +# * modify linux terminfo description to reset color palette (reported +# by Telford Tendys <telford@eng.uts.edu.au>). +# +# 1998/7/4 +# * merge changes from current XFree86 xterm terminfo descriptions. +# +# 1998/7/25 +# * Added minitel1 entries from Alexander Montaron. +# * Added qnxt2 from Federico Bianchi. +# * Added arm100 terminfo entries from Dave Millen. +# +# 1998/8/6 +# * Added ncsa telnet entries from Francesco Potorti +# +# 1998/8/15 +# * modify ncsa telnet entry to reflect color, other capabilities based on +# examination of the source code - T.Dickey. +# +# 1998/8/22 +# * Corrected some erroneous \\'s to \ (eterm, osborne) - TD. +# +# 1998/8/29 +# * Added Francesco Potorti's tuned Wyse 99 entries. +# * dtterm enacs correction from Alexander V. Lukyanov. +# * Add ncsa-ns, ncsa-m-ns and ncsa-m entries from esr version. +# * correct a typo in icl6404 entry. +# * add xtermm and xtermc +# +# 1998/9/26 +# * format most %'char' sequences to %{number} +# * adapt IBM AIX 3.2.5 terminfo - T.Dickey +# * merge Data General terminfo from Hasufin <hasufin@vidnet.net> - TD +# +# 1998/10/10 +# * update xterm-xfree86 to current (patch 84), for is2/rs2 changes - TD +# * correct initialization string in xterm-r5, add misc other features +# to correspond with xterm patch 84 - TD +# +# 1998/12/19 +# * update xterm-xfree86 to current (patch 90), smcur/rmcur changes - TD +# * add Mathew Vernon's mach console entries +# * corrections for ncsa function-keys (report by Larry Virden) +# +# 1998/12/19 +# * change linux to use ncv#2, since underline does not work with color - TD +# +# 1999/1/9 +# * add kbt to iris-ansi, document other shift/control functionkeys - TD +# * correct iris-ansi and iris-ansi-ap with respect to normal vs keypad +# application modes, change kent to use the correct keypad code - TD +# +# 1999/1/10 +# * add entry for Tera Term - TD +# +# 1999/1/23 +# * minor improvements for teraterm entry - TD +# * rename several entries used by BSDI: bsdos to bsdos-pc-nobold, +# and bsdos-bold to bsdos-pc (Jeffrey C Honig) +# +# 1999/2/20 +# * resolve ambiguity of kend/kll/kslt and khome/kfnd/kich1 strings in +# xterm and ncsa entries by removing the unneeded ones. Note that +# some entries will return kend & khome versus kslt and kfnd, for +# PC-style keyboards versus strict vt220 compatiblity - TD +# +# 1999/3/13 +# * adjust xterm-xfree86 khome/kend to match default PC-style keyboard +# tables - TD +# * add 'crt' entry - TD +# * correct typos in 'linux-c' entry - TD +# +# 1999/3/14 +# * update entries for BSD/OS console to use klone+sgr and klone+color +# (Jeffrey C Honig) +# +# 1999/3/27 +# * adjust xterm-xfree86 miscellaneous keypad keys, as per patch #94 - TD. +# +# 1999/4/10 +# * add linux-lat, from RedHat patches to ncurses 4.2 +# +# 1999/4/17 +# * add complete set of default function-key definitions for scoansi - TD. +# +# 1999/7/3 +# * add cnorm, cvvis for Linux 2.2 kernels +# +# 1999/7/24 +# * add kmous to xterm-r5 -TD +# * correct entries xterm+sl and xterm+sl-twm, which were missing the +# parent "use" clause -TD +# +# 1999/7/31 +# * corrected cnorm, added el1 in 'screen' description -TD +# +# 1999/8/14 +# * add ms-vt100 -TD +# +# 1999/8/21 +# * corrections to beterm entry -TD +# +# 1999/8/28 +# * add cygwin entry -TD +# +# 1999/9/4 +# * minor corrections for beterm entry -TD +# +# 1999/9/18 +# * add acsc string to HP 70092 terminfo entry -Joerg Wunsch +# +# 1999/9/25 +# * add amiga-8bit entry +# * add console entries from NetBSD: ofcons, wsvt25, wsvt25m, rcons, +# rcons-color, based on +# ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/share/termcap/termcap.src +# * add alias for iris-ansi-net +# +# 1999/10/2 +# * corrected scoansi entry's acsc, some function keys, add color -TD +# +# 1999/10/23 +# * add cnorm, cvvis to cons25w, and modify ncv to add 'dim' -TD +# * reorder ncsa entries to make ncsa-vt220 use the alternate function +# key mapping, leaving Potorti's entries more like he named them -TD +# * remove enter/exit am-mode from cygwin -TD +# +# 1999/10/30 +# * correct typos in several entries (missing '[' from CSI): +# mgr-sun, ncsa-m, vt320-k3, att505, avt-ns, as well as smir/rmir +# strings for avt-ns -TD +# * add 'dim' to ncv mask for linux (report by Klaus Weide). +# +# 1999/11/27 +# * correct kf1-kf4 in xterm-r6 which were vt100-style PF1-PF4 -TD +# * add hts to xterm-r6, and u6-u9 to xterm-r5 -TD +# * add xterm-88color and xterm-256color -TD +# +# 1999/12/4 +# * add "obsolete" termcap strings -TD +# * add kvt and gnome entries -TD +# +# 1999/12/11 +# * correct cup string for regent100 -TD +# +# 2000/1/1 +# * update mach, add mach-color based on Debian diffs for ncurses 5.0 -TD +# * add entries for xterm-hp, xterm-vt220, xterm-vt52 and xterm-noapp -TD +# * change OTrs capabilities to rs2 -TD +# * add obsolete and extended capabilities to 'screen' -TD +# +# 2000/1/5 +# * remove kf0 from rxvt, vt520, vt525 and ibm5151 since it conflicts +# with kf10 -TD +# * updated xterm-xf86-v40, making kdch1 correspond to vt220 'Remove', +# and adding kcbt -TD +# +# 2000/1/12 +# * remove incorrect khome/kend from xterm-xf86-v333, which was based on +# nonstandard resource settings -TD +# +# 2000/2/26 +# * minor fixes for xterm-*, based on Debian #58530 -TD +# +# 2000/3/4 +# * add several terminal types from esr's "11.0", as well as comments. +# bq300*, dku7102-old, dku7202, hft, lft, pcmw, pmcons, tws*, vip*, +# vt220-8bit, vt220-old, wy85-8bit +# +# 2000/3/18 +# * add several terminal types from esr's "11.0.1" (ansi-*). +# * update OTxx capabilities for changes on 2000/3/4. +# * revert part of vt220 change (request by Todd C Miller for OpenBSD) +# +# 2000/3/26 +# * move screen's AX extension to ecma+color, modify several entries to +# use that, adjusting ncv as needed -TD +# +# 2000/4/8 +# * add bsdos-pc-m, bsdos-pc-mono (Jeffrey C Honig) +# * correct spelling error in entry name: bq300-rv was given as bg300-rv +# in esr's version. +# +# 2000/4/15 +# * add cud, ech, etc., to beterm based on feedback from Rico Tudor -TD +# * correct color definition for ibm3164, make minor changes to other +# IBM terminal definitions based on recent terminfo descriptions -TD +# +# 2000/4/22 +# * add mgterm, from NetBSD -TD +# * add alias sun-cgsix for sun-ss5 as per NetBSD +# * change cons25w to use rs2 for reset rather than rs1 -TD +# * add rc/sc to aixterm based on manpage -TD +# +# 2000/5/13 +# * remove ncv from xterm-16color, xterm-256color +# +# 2000/6/10 +# * add kmous capability to linux to use Joerg Schoen's gpm patch. +# +# 2000/7/1 +# * add Eterm (Michael Jennings) +# +# 2000-07-18 +# * add amiga-vnc entry. +# +# 2000-08-12 +# * correct description of Top Gun Telnet. +# * add kterm-color +# +# 2000-08-26 +# * add qansi* entries from QNX ftp site. +# +# 2000-09-16 +# * add Matrix Orbital entries by Eric Z. Ayers). +# * add xterm-basic, xterm-sco entries, update related entries to XFree86 +# 4.0.1c -TD +# +# 2000-09-17 +# * add S0, E0 extensions to screen's entry -TD +# +# 2000-09-23 +# * several corrections based on tic's new parameter-checking code -TD +# * modify xterm-r6 and similar rs2 sequences which had \E7...\E8 +# bracketing sequences that reset video attributes (\E8 would restore +# them) -TD +# +# 2000-11-11 +# * rename cygwin to cygwinB19, adapt newer entry from Earnie Boyd -TD +# +# 2000-12-16 +# * improved scoansi, based on SCO man-page, and testing console, +# scoterm with tack -TD +# +# 2001-01-27 +# * modify kterm to use acsc via SCS controls. +# +# 2001-02-10 +# * screen 3.9.8 allows xterm mouse controls to pass-through +# +# 2001-03-11 +# * remove spurious "%|" from some xterm entries. +# +# 2001-03-31 +# * modify 'screen' khome/kend to match screen 3.09.08 +# * add examples of 'screen' customization (screen.xterm-xfree86, +# screen.xterm-r6, screen.teraterm) -TD +# +# 2001-04-14 +# * correct definitions of shifted editing keys for xterm-xfree86 -TD +# * add "Apple_Terminal" entries -Benjamin Sittler +# * remove time-delays from "Apple_Terminal" entries -TD +# * make sgr entries time-delays consistent with individual caps -TD +# +# 2001-05-05 +# * corrected/updated screen.xterm-xfree86 +# +# 2001-05-19 +# * ELKS descriptions, from Federico Bianchi +# * add u6 (CSR) to Eterm (Michael Jennings). +# +# 2001-07-21 +# * renamed "Apple_Terminal" entries to "nsterm" to work with Solaris's +# tic which handles names no longer than 14 characters. Add +# corresponding descriptions for the Darwin PowerPC console named +# "xnuppc" -Benjamin Sittler +# +# 2001-09-01 +# * change kbs in mach entries to ^? (Marcus Brinkmann). +# +# 2001-11-17 +# * add "putty" entry -TD +# * updated "Apple_Terminal" entries -Benjamin Sittler +# +# 2001-11-24 +# * add ms-vt100-color entry -TD +# * add "konsole" entries -TD +# +# 2001-12-08 +# * update gnome entry to Redhat 7.2 -TD +# +# 2002-05-25 +# * add kf13-kf48 strings to cons25w -TD +# * add pcvt25-color entry -TD +# * changed a few /usr/lib/tabset -> /usr/share/tabset. +# * improve some features of scoansi entry based on SCO's version -TD +# * add scoansi-new entry corresponding to OpenServer 5.0.6 +# +# 2002-06-15 +# * add kcbt to screen entry -TD +# +# 2002-06-22 +# * add rxvt-16color, ibm+16color, mvterm entries -TD +# +# 2002-09-28 +# * split out linux-basic entry, making linux-c inherit from that, and +# in turn linux (with cnorm, etc) inherit from linux-c-nc to reflect +# the history of this console type -TD +# * scaled the linux-c terminfo entry to match linux-c-nc, i.e., the +# r/g/b parameters of initc are in the range 0 to 1000 -TD +# +# 2002-10-05 +# * minor fix for scale-factor of linux-c and linux-c-nc -TD +# +# 2002-11-09 +# * split-out vt100+keypad and vt220+keypad, fix interchanged ka3/kb2 +# in the latter -TD +# +# 2002-11-16 +# * add entries for mterm (mterm, mterm-ansi, decansi) -TD +# * ncr260wy350pp has only 16 color pairs -TD +# * add sun-type4 from NetBSD -TD +# * update xterm-xfree86 to current (patch 170) -TD +# * add screen-bce, screen-s entries -TD +# * add xterm-1002, xterm-1003 entries -TD +# +# 2003-01-11 +# * update homepage for Top Gun Telnet/SSH +# +# 2003-01-25 +# * reduce duplication in emx entries, added emx-base -TD +# +# 2003-05-24 +# * corrected acs for screen.teraterm -TD +# * add tkterm entry -TD +# +# 2003-07-15 +# * cygwin changes from Charles Wilson: +# misc/terminfo.src (nxterm|xterm-color): make xterm-color +# primary instead of nxterm, to match XFree86's xterm.terminfo +# usage and to prevent circular links. +# (rxvt): add additional codes from rxvt.org. +# (rxvt-color): new alias +# (rxvt-xpm): new alias +# (rxvt-cygwin): like rxvt, but with special acsc codes. +# (rxvt-cygwin-native): ditto. rxvt may be run under XWindows, or +# with a "native" MSWin GUI. Each takes different acsc codes, +# which are both different from the "normal" rxvt's acsc. +# (cygwin): cygwin-in-cmd.exe window. Lots of fixes. +# (cygwinDBG): ditto. +# +# 2003-09-27 +# * update gnome terminal entries -TD +# +# 2003-10-04 +# * add entries for djgpp 2.03 and 2.04 -TD +# +# 2003-10-25 +# * add alias for vtnt -TD +# * update xterm-xfree86 for XFree86 4.4 -TD +# +# 2003-11-22 +# * add linux-vt (Andrey V Lukyanov) +# +# 2003-12-20 +# * add screen.linux -TD +# +# 2004-01-10 +# * revised/improved entries for tvi912b, tvi920b (Benjamin Sittler) +# +# 2004-01-17 +# * add OpenNT/Interix/SFU entries (Federico Bianchi) +# * add vt100+ and vt-utf8 entries -TD +# * add uwin entry -TD +# +# 2004-03-27 +# * add sgr strings to several common entries lacking them, e.g., +# screen, to make the entries more portable -TD +# * remove cvvis from rxvt entry, since it is the same as cnorm -TD +# * similar fixups for cvvis/cnorm various entries -TD +# +# 2004-05-22 +# * remove 'ncv' from xterm-256color (patch 188) -TD +# +# 2004-06-26 +# * add mlterm -TD +# * add xterm-xf86-v44 -TD +# * modify xterm-new aka xterm-xfree86 to accommodate luit, which relies +# on G1 being used via an ISO-2022 escape sequence (report by +# Juliusz Chroboczek) -TD +# * add 'hurd' entry -TD +# +# 2004-07-03 +# * make xterm-xf86-v43 derived from xterm-xf86-v40 rather than +# xterm-basic -TD +# * align with xterm #192's use of xterm-new -TD +# * update xterm-new and xterm-8bit for cvvis/cnorm strings -TD +# * make xterm-new the default "xterm" -TD +# +# 2004-07-10 +# * minor fixes for emu -TD +# * add emu-220 +# * add rmam/smam to linux (Trevor Van Bremen) +# * change wyse acsc strings to use 'i' map rather than 'I' -TD +# * fixes for avatar0 -TD +# * fixes for vp3a+ -TD +# +# 2004-07-17 +# * add xterm-pc-fkeys -TD +# * review/update gnome and gnome-rh90 entries (prompted by +# Redhat Bugzilla #122815) -TD +# * review/update konsole entries -TD +# * add sgr, correct sgr0 for kterm and mlterm -TD +# * correct tsl string in kterm -TD +# +# 2004-07-24 +# * make ncsa-m rmacs/smacs consistent with sgr -TD +# * add sgr, rc/sc and ech to syscons entries -TD +# * add function-keys to decansi -TD +# * add sgr to mterm-ansi -TD +# * add sgr, civis, cnorm to emu -TD +# * correct/simplify cup in addrinfo -TD +# * corrections for gnome and konsole entries +# (Redhat Bugzilla #122815) -Hans de Goede +# * modify DEC entries (vt220, etc), to add sgr string, and to use +# ISO-2022 strings for rmacs/smacs -TD +# +# 2004-07-31 +# * rename xterm-pc-fkeys to xterm+pcfkeys -TD +# +# 2004-08-07 +# * improved putty entry -Robert de Bath +# +# 2004-08-14 +# * remove dch/dch1 from rxvt because they are implemented inconsistently +# with the common usage of bce/ech -TD +# * remove khome from vt220 (vt220's have no home key) -TD +# * add rxvt+pcfkeys -TD +# +# 2004-08-21 +# * modify several entries to ensure xterm mouse and cursor visibility +# are reset in rs2 string: hurd, putty, gnome, konsole-base, mlterm, +# Eterm, screen. (The xterm entries are left alone - old ones for +# compatibility, and the new ones do not require this change) -TD +# +# 2004-08-28 +# * add morphos entry -Pavel Fedin +# * modify amiga-8bit to add khome/kend/knp/kpp -Pavel Fedin +# * corrected \E[5?l to \E[?5l in vt320 entries -TD +# +# 2004-11-20 +# * update wsvt25 entry -TD +# +# 2005-01-29 +# * update pairs for xterm-88color and xterm-256color to reflect the +# ncurses extended-color support -TD +# +# 2005-02-26 +# * modify sgr/sgr0 in xterm-new to improve tgetent's derived "me" -TD +# * add aixterm-16color to demonstrate 16-color capability -TD +# +# 2005-04-23 +# * add media-copy to vt100 -TD +# * corrected acsc string for vt52 -TD +# +# 2005-04-30 +# * add kUP, kDN (user-defined shifted up/down arrow) definitions for +# xterm-new -TD +# * add kUP5, kUP6, etc., for xterm-new and rxvt -TD +# +# 2005-05-07 +# * re-corrected acsc string for vt52 -TD +# +# 2005-05-28 +# * corrected sun-il sgr string which referred to bold and underline -TD +# * add sun-color entry -TD +# +# 2005-07-23 +# * modify sgr0 in several entries to reset alternate-charset as in the +# sgr string -TD +# * modify sgr string of prism9 to better match the individual +# attributes -TD +# +# 2005-10-15 +# * correct order of use= in rxvt-basic -TD +# +# 2005-10-26 +# * use kind/kri as shifted up/down cursor keys for xterm-new -TD +# +# 2005-11-12 +# * other minor fixes to cygwin based on tack -TD +# * correct smacs in cygwin (report by Baurzhan Ismagulov). +# +# 2006-02-18 +# * add nsterm-16color entry -TD +# * remove ncv flag from xterm-16color -TD +# * remove setf/setb from xterm-256color to match xterm #209 -TD +# * update mlterm entry to 2.9.2 -TD +# +# 2006-02-25 +# * fixes to make nsterm-16color match report +# by Christian Ebert -Alain Bench +# +# 2006-04-22 +# * add xterm+256color building block -TD +# * add gnome-256color, putty-256color, rxvt-256color -TD +# +# 2006-05-06 +# * add hpterm-color -TD +# +# 2006-06-24 +# * add xterm+pcc0, xterm+pcc1, xterm+pcc2, xterm+pcc3 -TD +# * add gnome-fc5 (prompted by GenToo #122566) -TD +# * remove obsolete/misleading comments about kcbt on Linux -Alain Bench +# * improve xterm-256color by combining the ibm+16color setaf/setab +# strings with SGR 48. The setf/setb strings also are cancelled here +# rather than omitted so derived entries will cancel those also -Alain +# Bench +# +# 2006-07-01 +# * add some notes regarding copyright to terminfo.src -TD +# * use rxvt+pcfkeys in Eterm -TD +# * remove km and flash from gnome, Eterm and rxvt since they do not work +# as one would expect (km sends ESC rather than setting the 8th bit +# of the key) -TD +# * add/use ansi+enq, vt100+enq and vt102+enq -TD +# * add konsole-solaris -TD +# +# 2006-07-22 +# * update xterm-sun and xterm-sco entries to match xterm #216 -TD +# * modify is2/rs2 strings for xterm-r6 as per fix in xterm #148 -TD +# * modify xterm-24 to inherit from "xterm" -TD +# * add xiterm entry -TD +# * add putty-vt100 entry -TD +# * corrected spelling of Michael A Dorman's name, prompted by +# http://www.advogato.org/person/mdorman/diary.html -TD +# +# 2006-08-05 +# * add xterm+pcf0, xterm+pcf2 from xterm #216 -TD +# * update xterm+pcfkeys to match xterm #216 -TD +# +# 2006-08-17 +# * make descriptions of xterm entries consistent with its terminfo -TD +# +# 2006-08-26 +# * add xfce, mgt -TD +# +# 2006-09-02 +# * correct acsc string in kterm -TD +# +# 2006-09-09 +# * add kon entry -TD +# * remove invis from linux and related entries, add klone+sgr8 for those +# that implement the feature (or have not been shown to lack it) -TD +# +# 2006-09-23 +# * add ka2, kb1, kb3, kc2 to vt220-keypad as an extension -TD +# * minor improvements to rxvt+pcfkeys -TD +# +# 2006-09-30 +# * fix a few typos in if/then/else expressions -TD +# +# 2006-10-07 +# * add several GNU Screen variations with 16- and 256-colors, and +# status line (Alain Bench). +# +# 2007-03-03 +# * add Newbury Data entries (Jean-Charles Billaud). +# +# 2007-06-10 +# * corrected xterm+pcf2 modifiers for F1-F4, match xterm #226 -TD +# +# 2007-07-14 +# * restore section of pre-ncurses-4.2 changelog to fix attribution -TD +# * add konsole-256color entry -TD +# +# 2007-08-18 +# * add 9term entry (request by Juhapekka Tolvanen) -TD +# +# 2007-10-13 +# * correct kIC in rxvt+pcfkeys (prompted by Debian #446444) -TD +# * add shift-control- and control-modified keys for rxvt editing +# keypad -TD +# * update mlterm entry to 2.9.3 -TD +# * add mlterm+pcfkeys -TD +# +# 2007-10-20 +# * move kLFT, kRIT, kind and kri capabilities from xterm-new to +# xterm+pcc0, etc., to make the corresponding building blocks reflect +# xterm's capabilities -TD +# * add mrxvt entry -TD +# * add xterm+r6f2, use in mlterm and mrxvt entries -TD +# +# 2007-11-03 +# * correct acsc strings for h19 and z100 (Benjamin Sittler) +# +# 2007-11-11 +# * use xterm-xf86-v44 for "xterm-xfree86", reflecting changes to +# xterm starting with patch #216 -TD +# * make legacy xterm entries such as xterm-24 inherit from xterm-old, +# to match xterm #230 -TD +# * extend xterm+pccX entries to match xterm #230 -TD +# * add xterm+app, xterm+noapp, from xterm #230 -TD +# * add/use xterm+pce2 from xterm #230, in xterm+pcfkeys -TD +# +# 2008-04-19 +# * add screen.rxvt -TD +# +# 2008-04-28 +# * add screen+fkeys (prompted by Debian #478094) -TD +# +# 2008-06-28 +# * add screen.mlterm -TD +# * improve mlterm and mlterm+pcfkeys -TD +# +# 2008-08-23 +# * add Eterm-256color, Eterm-88color -TD +# * add rxvt-88color -TD +# +# 2008-10-12 +# * add teraterm4.59 entry, use that as primary teraterm entry, rename +# original to teraterm2.3 -TD +# * update "gnome" to 2.22.3 -TD +# * update "konsole" to 1.6.6 -TD +# * add "aterm" -TD +# * add "linux2.6.26" -TD +# +# 2008-11-15 +# * change several \E[2g (clear tab at current column) to \E[3g +# (clear all tabs) to match definition for tbc capability -TD +# +# 2008-11-29 +# * add eterm-color -TD +# +# 2009-01-10 +# * add screen.Eterm -TD +# +# 2009-03-28 +# * correct typo in pfkey of ansi.sys-old +# (report by Kalle Olavi Niemitalo) +# * move function- and cursor-keys from emx-base to ansi.sys, and create +# a pfkey capability which handles F1-F48 -TD +# +# 2009-05-02 +# * add vwmterm entry (Bryan Christ) +# +# 2009-09-19 +# * change ncv and op capabilities in sun-color to match Sun's entry for +# this (report by Laszlo Peter) +# * improve interix smso by using reverse rather than bold (report by +# Kristof Zelechovski). +# +# 2009-10-03 +# * remove unnecessary kcan assignment to ^C from putty (Sven Joachim) +# * add linux-16color (Benjamin Sittler) +# * correct initc capability of linux-c-nc end-of-range (Benjamin Sittler) +# * similar change for dg+ccc and dgunix+ccc (Benjamin Sittler) +# * add ccc and initc capabilities to xterm-16color -TD +# +# 2009-10-31 +# * updated nsterm* entries (Benjamin Sittler, prompted by GenToo #206201) +# +# 2009-12-12 +# * updated nsterm* entries (Benjamin Sittler, Emanuele Giaquinta) +# +# 2009-12-12 +# * add bw (auto-left-margin) to nsterm* entries (Benjamin Sittler) +# * rename minix to minix-1.7, add minix entry for Minux3 -TD +# +# 2009-12-26 +# * add bterm (bogl 0.1.18) -TD +# * minor fix to rxvt+pcfkeys -TD +# +# 2010-02-06 +# * update mrxvt to 0.5.4, add mrxvt-256color -TD +# +# 2010-02-13 +# * add several screen-bce.XXX entries -TD +# +# 2010-02-23 +# * modify screen-bce.XXX entries to exclude ech, since screen's color +# model does not clear with color for that feature -TD +# +# 2010-03-20 +# * rename atari and st52 to atari-old, st52-old, use newer entries from +# FreeMiNT by Guido Flohr (from patch/report by Alan Hourihane). +# +# 2010-06-12 +# * add mlterm+256color entry -TD +# +# 2010-07-17 +# * add hard-reset for rs2 to wsvt25 to help ensure that reset ends +# the alternate character set (patch by Nicholas Marriott) +# +# 2010-08-28 +# * improve acsc for vt52 (Benjamin Sittler) +# * modify nsterm entries for consistent sgr/sgr0 -TD +# * modify xnuppc entries for consistent sgr/sgr0 -TD +# * add invis to tek4115 sgr -TD +# +# 2010-09-11 +# * reformat acsc strings to canonical format -TD +# +# 2010-09-25 +# * add "XT" capability to entries for terminals that support both +# xterm-style mouse- and title-controls, for "screen" which +# special-cases TERM beginning with "xterm" or "rxvt" -TD +# +# 2010-10-02 +# * fill in no-parameter forms of cursor-movement where a parameterized +# form is available -TD +# * fill in missing cursor controls where the form of the controls is +# ANSI -TD +# * add parameterized cursor-controls to linux-basic (report by Dae) -TD +# +# 2010-10-09 +# * correct comparison used for setting 16-colors in linux-16color +# entry (Novell #644831) -TD +# * improve linux-16color entry, using "dim" for color-8 which makes it +# gray rather than black like color-0 -TD +# +# 2010-11-20 +# * make "vte" the principal entry defining "gnome", since GNOME terminal +# is merely one of several terminals whose behavior is provided by this +# library -TD +# +# 2010-11-27 +# * fix typo in rmso for tek4106 -Goran Weinholt +# +# 2010-12-11 +# * suppress ncv in screen entry, allowing underline -Alejandro R. Sedeno +# * also suppress ncv in konsole-base -TD +# +# 2011-02-05 +# * add U8 feature to denote entries for terminal emulators which do not +# support VT100 SI/SO when processing UTF-8 encoding -TD +# * add xterm-utf8 as a demo of the U8 feature -TD +# +# 2011-02-20 +# * add cons25-debian entry (Brian M Carlson, Debian #607662). +# +# 2011-06-11 +# * update minix entry to minix 3.2 (Thomas Cort). +# +# 2011-07-09 +# * fix inconsistent tabset path in pcmw (Todd C. Miller). +# * remove a backslash which continued comment, obscuring altos3 +# definition with OpenBSD toolset (Nicholas Marriott). +# +# 2011-07-16 +# * add/use xterm+tmux chunk from xterm #271 -TD +# * resync xterm-new entry from xterm #271 -TD +# * add E3 extended capability to linux-basic (Miroslav Lichvar) +# * add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD +# * add SI/SO change to linux2.6 entry (Debian #515609) -TD +# +# 2011-07-21 +# * add kich1 to sun (Yuri Pankov) +# * use bold rather than reverse for smso in sun-color (Yuri Pankov). +# +# 2011-08-06 +# * corrected k9 in dg460-ansi, add other features based on manuals -TD +# +# 2011-08-20 +# * minor cleanup of X-terminal emulator section -TD +# * add terminator entry -TD +# * add simpleterm entry -TD +# +######## SHANTIH! SHANTIH! SHANTIH! diff --git a/usr/src/cmd/terminfo/trailer b/usr/src/cmd/terminfo/trailer deleted file mode 100644 index 7d10532062..0000000000 --- a/usr/src/cmd/terminfo/trailer +++ /dev/null @@ -1,90 +0,0 @@ -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# # ------------------------ -# -# The following have been included for upward compatibility with previous -# names. They are considered obsolete and the new name (which typically -# contains an extra dash) should be used instead. These names will go -# away eventually (read: "soon") so you should start converting! -# -tvi9122p|9122p|, use=912-2p, -tvi9202p|9202p|, use=920-2p, -tvi9502p|9502p|, use=950-2p, -tvi9504p|9504p|, use=950-4p, -tvi950rv|950rv|, use=950-rv, -tvi950rv2p|950rv2p|, use=950-rv-2p, -tvi950rv4p|950rv4p|, use=950-rv-4p, -aaa-29|, use=aaa-30-s, -aaa-29-ctxt|, use=aaa-30-s-ctxt, -aaa-29-np|, use=aaa-30-s, -aaa-29-rv|, use=aaa-30-s-rv, -aaa-29-rv-ctxt|, use=aaa-s-rv-ctxt, -aaa-59|, use=aaa-60-s, -aaa18|, use=aaa-18, -aaa20|, use=aaa-20, -aaa22|, use=aaa-22, -aaa24|, use=aaa-24, -aaa26|, use=aaa-26, -aaa28|, use=aaa-28, -aaa29|, use=aaa-29, -aaa30|, use=aaa-30, -aaa36|, use=aaa-36, -aaa40|, use=aaa-40, -aaa48|, use=aaa-48, -aaa59|, use=aaa-60-s, -aaa60|, use=aaa-60, -aaadb|, use=aaa-db, -c100-rv-pp|, use=c100-rv, -c1004p|, use=c100-4p, -c100rv|, use=c100-rv, -c100rv4p|, use=c100-rv-4p, -c100rv4pna|, use=c100-rv-4p-na, -c100rv4ppp|, use=c100-rv-4p, -c100rvna|, use=c100-rv-na, -c100rvpp|, use=c100-rv, -c100rvs|, use=c100-rv, -c100s|, use=c100, -c108-4|, use=c108-4p, -c108-8|, use=c108-8p, -h19a|h19A|, use=h19-a, -h19b|, use=h19-b, -h19bs|, use=h19-bs, -h19u|, use=h19-u, -hp2621nl|2621nl|, use=2621-nl, -hp2621nt|2621nt|, use=2621-nt, -hp2621wl|2621wl|, use=2621-wl, -mime2as|, use=mime2a-s, -mime2av|, use=mime2a-v, -mimefb|, use=mime-fb, -mimehb|, use=mime-hb, -tvi2p|, use=tvi-2p, -tvi950b|, use=tvi950-b, -tvi950ns|, use=tvi950-ns, -vt100-np|, use=vt100, -vt100am|, use=vt100-am, -vt100nam|, use=vt100-nam, -vt100s|, use=vt100-s, -vt100w|, use=vt100-w, -# -# END OF TERMINFO -# ------------------------ diff --git a/usr/src/cmd/terminfo/tymshare.ti b/usr/src/cmd/terminfo/tymshare.ti deleted file mode 100644 index c5a35032f2..0000000000 --- a/usr/src/cmd/terminfo/tymshare.ti +++ /dev/null @@ -1,42 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.4 */ - -scanset|sc410|sc415|Tymshare Scan Set, - msgr, am, bw, - cols#80, lines#24, - bel=^G, cub1=^H, cud1=^J, ind=^J, cuu1=^K, cr=^M, cuf1=^I, - sc=^B, rc=^C, clear=\EH\EJ, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, - cup=\EY%p1%' '%+%c%p2%' '%+%c, - ed=\EJ, el=\EK, home=\EH, - rs1=\E>, - smacs=^N, rmacs=^O, acsc=l<m-k4j%q\,x5, - mc0=\E;3, mc4=\E;0, mc5=\E;0, - -scanset-n|Tymshare Scan Set in 40 col mode, - rs2=\E<, - use=scanset, diff --git a/usr/src/cmd/terminfo/visual.ti b/usr/src/cmd/terminfo/visual.ti deleted file mode 100644 index 6b11ecabaa..0000000000 --- a/usr/src/cmd/terminfo/visual.ti +++ /dev/null @@ -1,112 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - - -#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ -# # -------------------------------- -# -# visual: VISUAL -# -vi50|visual50|v50 adm3a mode with goodies, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, il1=\EL, dl1=\EM, - ed=\Ek, el=\EK, clear=^Z, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, - home=\EH, kbs=^H, kcud1=\EB, khome=\EH, kcub1=\ED, - kcuf1=\EC, kcuu1=\EA, lines#24, msgr, cuf1=^L, ht=^I, smso=\EU, - rmso=\ET, cuu1=^K, -# The Visual 200 beeps when you type a character in insert mode. -# This is a horribly obnoxious misfeature, and some of the entries -# below try to get around the problem by ignoring the feature or -# turning it off when inputting a character. They are said not to -# work well at 300 baud. (You could always cut the wire to the bell!) -vi200|visual 200 with function keys, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, - il1=\EL, am, cub1=^H, ed=\Ey, el=\Ex$<4*>, clear=\Ev, - cup=\EY%p1%' '%+%c%p2%' '%+%c, dch1=\EO$<4*>, dl1=\EM$<4*>, - home=\EH, ich1=\Ei \b\Ej, is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, - kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E , kf4=\E!, kf5=\E", kf6=\E#, - kf7=\E$, kf8=\E%, kf9=\E&, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EH, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, cvvis=\Ed, cnorm=\Ec, -vi200-rv-ic|visual 200 reverse video using insert char, - rmir=\Ej, smir=\Ei, ich1@, use=vi200-rv, -# The older Visuals didn't come with function keys. This entry uses -# smkx and rmkx so that the keypad keys can be used as function keys. -# If your version of vi doesn't support function keys you may want -# to use vi200-f. -vi200-f|visual|visual 200 no function keys, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, - il1=\EL, am, cub1=^H, ed=\Ey, el=\Ex$<4*>, clear=\Ev, - cup=\EY%p1%' '%+%c%p2%' '%+%c, dch1=\EO$<4*>, dl1=\EM$<4*>, - home=\EH, ich1=\Ei \b\Ej, is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, - smkx=\E=, rmkx=\E>, - kf0=\E?p, kf1=\E?q, kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, - kf7=\E?w, kf8=\E?x, kf9=\E?y, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EH, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, cvvis=\Ed, cnorm=\Ec, -vi200-rv|visual 200 reverse video, - smso=\E4, rmso=\E3, ri@, cvvis@, cnorm@, use=vi200, -vi200-ic|visual 200 using insert char, - rmir=\Ej, smir=\Ei, ich1@, use=vi200, -# the function keys are programmable but we don't reprogram -# them to their default values with "is" because programming -# them is very verbose. maybe an "if" file should be made for -# the 300 and they could be stuck in it. -vi300|visual 300 ansi x3.64, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, bw, mir, ht=^I, xenl, cols#80, lines#24, - is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s, - cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, cud1=\E[B, cuf1=\E[C, ri=\EM, - cbt=\E[Z, home=\E[H, ed=\E[J, clear=\E[H\E[2J, el=\E[K, - il1=\E[L, dl1=\E[M, smir=\E[4h, rmir=\E[4l, dch1=\E[P$<40>, - smso=\E[1m, rmso=\E[m, smul=\E[4m, rmul=\E[m, khome=\E[H, - kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, kcuu1=\E[A, kf1=\E_A\E\\, - kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\, kf5=\E_E\E\\, - kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\, kf9=\E_I\E\\, -vi300-rv|visual 300 reverse video, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\E[7s\E[2;3;4;20;?6l\E[12;?5;?7h\E[1Q\E[0;1(D\E[8s, - use=vi300, -# slow scroll doesn't work that well; if you type on the -# keyboard while the terminal is scrolling it drops characters -vi300-ss|visual 300 slow scroll, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - cvvis=\E[?4l, cnorm=\E[?4h, use=vi300, -# some of the vi300s have older firmware that has the command -# sequence for setting editing extent reversed. -ovi300|visual 300 old, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s, - use=vi300, -# if your version of ex/vi doesn't correctly implement xn -# use this termcap for the vi300 -vi300-aw|visual 300 no autowrap, - am@, xenl@, - cvvis=\E[?7l, cnorm=\E[?7h, - use=vi300, -# the visual 550 is a visual 300 with tektronix graphics, -# and with 33 lines. clear screen is modified here to -# also clear the graphics. -vi550|visual 550 ansi x3.64, - cr=^M, cud1=^J, ind=^J, bel=^G, cr=^M, cud1=^J, ind=^J, bel=^G, - lines#33, clear=\030\E[H\E[2J, use=vi300, diff --git a/usr/src/cmd/terminfo/wyse.ti b/usr/src/cmd/terminfo/wyse.ti deleted file mode 100644 index 41e9402f92..0000000000 --- a/usr/src/cmd/terminfo/wyse.ti +++ /dev/null @@ -1,377 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 1995 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved - -#ident "%Z%%M% %I% %E% SMI" -# -# The following terminfo entries are directly from: -# Wyse Technology -# 3571 North First Street -# San Jose, CA 95134 -# - - -#TITLE: TERMINFO ENTRY WY30 -#DATE: 8/5/93 -# -# Although the Wyse 30 can support more than one attribute -# it requires magic cookies to do so. Many applications do not -# function well with magic cookies. The following terminfo uses -# the protect mode to support one attribute (reverse) without cookies. -# If more than one attribute is needed then the wy30-mc terminfo -# should be used. -# -wy30|wyse30|Wyse 30, - acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, am, bel=^G, bw, cbt=\EI, civis=\E`0, - clear=\E*$<80>, cnorm=\E`1, cols#80, cr=^M, cub1=^H, cud1=^J, cuf1=^L, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<10>, dl1=\ER$<1>, - dsl=\EF^M, ed=\EY$<80>, el=\ET, fsl=^M, home=^^, hs, ht=^I$<1>, - hts=\E1, ich1=\EQ, il1=\EE$<2>, ind=^J$<2>, ip=$<2>, - is2=\E'\E(\E\^3\E`9^N^T, it#8, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, - kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, - kf1=^A@^M, kf2=^AA^M, kf3=^AB^M, kf4=^AC^M, kf5=^AD^M, kf6=^AE^M, - kf7=^AF^M, kf8=^AG^M, kHOM=\E{, khome=^^, kich1=\EQ, kil1=\EE, knp=\EK, - kpp=\EJ, krpl=\Er, lh#1, lines#24, ll=^^^K, lw#8, mc0=\EP, mc4=^T, - mc5=^X, mc5i, mir, nel=^M^J, nlab#8, pfx=\Ez%p1%'?'%+%c%p2%s\177, - pln=\Ez%p1%'/'%+%c%p2%s^M, prot=\E`7\E), ri=\Ej$<3>, rev=\E`6\E), - rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, sgr0=\E(\EH^C, - smacs=\EH^B, smir=\Eq, smln=\EA10, smso=\E`6\E), tbc=\E0, tsl=\EF, - wsl#45, xon, -# -# This terminal description uses the non-hidden attribute mode -# (with magic cookie). -# -wy30-mc|wyse30-mc|wyse 30 with magic cookies, - xmc#1, ma@, msgr@, - blink=\EG2, dim=\EGp, invis=\EG1, prot=\EG0\E), rev=\EG4, - rmacs=\EG0\EH^C, rmcup=\EG0, rmso=\EG0, rmul=\EG0, - sgr=\EG%'0'%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH^B%e\EH^C%;, - sgr0=\EG0\E(\EH^C, smacs=\EG0\EH^B, smso=\EG4, smul=\EG8, - use=wy30, -# The manditorary pause used by flash does not work with -# older versions of terminfo. If you see this effect then -# unset xon and delete the / from the delay. -# i.e. change $<100/> to $<100> -wy30-vb|wyse30-vb|wyse 30 Visable bell, - flash=\E`8$<100/>\E`9, - use=wy30, -# -# Aug 5, 1993 by Terry Liang -# Terminfo entry for wy30+ is the same as that for wy30. -# -wy30p|wyse30p|Wyse 30 plus, - use=wy30, -wy30p-mc|wyse30p-mc|wyse 30 plus with magic cookies, - use=wy30-mc, -wy30p-vb|wyse30p-vb|wyse 30 plus Visable bell, - use=wy30-vb, - -# -# Wyse 50 -# -wyse50|wy50|wyse-50|wy-50|Wyse WY-50, - am, bw, hs, mir, xon, - cols#80, lines#24, xmc#1, - bel=^G, cbt=\EI, civis=\E`0, clear=\E*$<20>, - cnorm=\E`1, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - dch1=\EW$<1>, dl1=\ER, dsl=\EF\r, ed=\Ey$<20>, el=\Et, - fsl=\r, home=^^, ht=\t, hts=\E1, il1=\EE, ind=\n, - ip=$<1>, is1=\E`:\E`9$<30>, is2=^N^T\E'\E(, kbs=\b, - kcbt=\EI, kcub1=\b, kcud1=\n, kcuf1=\f, kcuu1=^K, - kdch1=\EW, kdl1=\ER, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, - kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, - kf9=^AH\r, khome=^^, kil1=\EE, ri=\Ej, - rmacs=\EG0\EH^C, rmir=\Er, rmso=\EG0, rmul=\EG0, - smacs=\EG0\EH^B, smir=\Eq, smso=\EGt, smul=\EG8, - tbc=\E0, tsl=\EF, -wyse50-vb|wy50-vb|wyse-50-vb|wy-50-vb|Wyse 50 Visable bell, - flash=\E`8\E`:\E`9, - use=wy50, -wy50-w|wyse50-w|wyse-50-w|wy-50-w|wyse 50 132-column, - cols#132, - cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9, - use=wy50, -wy50-wvb|wyse50-wvb|wy-50-wvb|wyse-50-wvb|Wyse 50 132-column Visable bell, - cols#132, - cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, - flash=\E`8\E`;\E`9, is1=\E`;\E`9, - use=wy50, -# -# The Wyse 60 is like the Wyse 50 but with more padding. -# The reset strings are slow and the pad times very depending -# on other parameters such as font loading. I have tried -# to follow the following outline: -# rs1 -> set personality -# rs2 -> set number of columns -# rs3 -> set number of lines -# is1 -> select the proper font -# is2 -> do the initialization -# is3 -> If this string is empty then rs3 gets sent. -# So I do some initialization here. -# -# The Wyse 60's that have vt100 emulation are slower than the -# older Wyse 60's. This change happened mid-1987. -# The capabilities effected are (dch1) (dl1) (il1) (ind) (ri) -# -################################################################### -### Note: ### -### The Wyse 60 runs faster when the XON/XOFF ### -### handshake is turned off. ### -################################################################### -wy60|wyse60|Wyse 60, - am, bw, hs, km, mir, msgr, xon, - cols#80, lines#24, - bel=^G, cbt=\EI, civis=\E`0, clear=\E*$<100>, - cnorm=\E`1, cr=\r, cub1=\b, cud1=\n, cuf1=\f, - cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^K, - dch1=\EW$<11>, dl1=\ER$<5>, dsl=\EF\r, ed=\Ey$<100>, - el=\Et, fsl=\r, home=^^, ht=\t, hts=\E1, il1=\EE$<4>, - ind=\n, ip=$<3>, is1=\EcB0\EcC1, - is2=\Ed$\EcD\E'\Er\EH^C\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1^N^T, - kbs=\b, kcbt=\EI, kcub1=\b, kcud1=\n, kcuf1=\f, - kcuu1=^K, kdch1=\EW, kdl1=\ER, kf1=^A@\r, kf2=^AA\r, - kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, - kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=\EE, ri=\Ej$<7>, - rmacs=\EH^C, rmir=\Er, rmso=\EG0, rmul=\EG0, - rs1=\E~!\E~4$<150>, rs2=\EeF$<150>, - rs3=\EwG\Ee($<200>, smacs=\EH^B, smir=\Eq, smso=\EGt, - smul=\EG8, tbc=\E0, tsl=\EF, -wy60-w|wyse60-w|wyse 60 132-column, - cols#132, - cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<16>, ip=$<5>, - rs2=\EeF\E`;$<300>, - use=wy60, -wy60-25|wyse60-25|wyse 60 80-column 25-lines, - lines#25, - rs3=\EwG\Ee)$<200>, - use=wy60, -wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines, - lines#25, - rs3=\EwG\Ee)$<200>, - use=wy60-w, -wy60-42|wyse60-42|wyse 60 80-column 42-lines, - lines#42, - clear=\E*$<260>, cup=\E=%p1%'\s'%+%c%p2%'\s'%+%c$<2>, - dch1=\EW$<16>, dl1=\ER$<11>, ed=\Ey$<260>, - il1=\EE$<11>, ip=$<5>, is1=\EcB2\EcC3, ri=\Ej$<10>, - rs3=\Ee*$<150>, - use=wy60, -wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines, - cols#132, - cup=\Ea%i%p1%dR%p2%dC$<2>, dch1=\EW$<19>, home=^^$<2>, - ip=$<6>, rs2=\EeF\E`;$<300>, - use=wy60-42, -wy60-43|wyse60-43|wyse 60 80-column 43-lines, - lines#43, - rs3=\Ee+$<150>, - use=wy60-42, -wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines, - lines#43, - rs3=\Ee+$<150>, - use=wy60-42-w, -wy60-vb|wyse60-vb|Wyse 60 Visable bell, - flash=\E`8\E`9, - use=wy60, -wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column Visable bell, - flash=\E`8\E`9, - use=wy60-w, -# -# Wyse 60 in economy mode with 2 pages of memory -# It may be useful to assign two function keys with the -# values \E=(\s look at old data in page 1 -# \E=W, look at bottem of page 1 -wy60-2p|wyse 60 with 2 pages of memory, - is2=\Ed$\EcD\E'\Er\EH^C\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\EwJ\Ew1^N^T$<150>, - rmcup=\Ew1, rs2=\EeG$<150>, smcup=\Ew0, - use=wy60, -# -###################################################################### -# -# The Wyse-99GT looks at lot like the Wyse 60 except that it -# does not have the 42/43 line mode. In the Wyse-60 the "lines" -# setup parameter controls the number of lines on the screen. -# For the Wyse 99GT the "lines" setup parameter controls the -# number of lines in a page. The screen can display 25 lines max. -# The Wyse-99GT also has personalities for the VT220 and -# Tektronix 4014. But this has no bearing on the native mode. -# -wy99gt|wyse99gt|Wyse 99gt, - clear=\E*$<130>, dch1=\EW$<5>, dl1=\ER$<3>, - ed=\Ey$<130>, il1=\EE$<3>, ip=$<2>, ri=\Ej$<3>, - rs2=\E`:$<150>, - use=wy60, -wy99gt-w|wyse99gt-w|wyse 99gt 132-column, - cols#132, - clear=\E*$<160>, cup=\Ea%i%p1%dR%p2%dC$<2>, - dch1=\EW$<9>, ed=\Ey$<160>, ip=$<4>, rs2=\E`;$<150>, - use=wy99gt, -wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines, - lines#25, - rs3=\EwG\Ee)$<200>, - use=wy99gt, -wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines, - lines#25, - use=wy99gt-w, -wy99gt-vb|wyse99gt-vb|Wyse 99gt Visable bell, - flash=\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`9, - use=wy99gt, -wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb, - flash=\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`8\E`9, - use=wy99gt-w, -wy99gt-2p|wyse 99gt with 2 pages of memory, - rmcup=\Ew0, smcup=\Ew1, - use=wy99gt, -# -# The Wyse 75 is a vt100 lookalike without advanced video. -# -# The Wyse 75 can support one attribute (e.g. Dim, Inverse, -# Underline) without magic cookies. The following description -# uses this capability, but when more than one attribute is -# put on the screen at once, all attributes will be changed -# to be the same as the last attribute given. -# The Wyse 75 can support more attributes when used with magic -# cookies. The wy75-mc terminal description uses magic cookies -# to correctly handle multiple attributes on a screen. -# -wy75|wyse75|wyse 75, - am, hs, mir, msgr, xenl, xon, - cols#80, lines#24, pb#1201, - bel=^G, cbt=\E[1Z, civis=\E[?25l, clear=\E[H\E[J$<30>, - cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr$<2>, - cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, - 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$<3*>, - dch1=\E[P$<3>, dl=\E[%p1%dM$<1*>, dl1=\E[M, - dsl=\E[>\,^A^A\E[>-^A^A, ed=\E[J$<30>, el=\E[K$<3>, - fsl=^A, home=\E[H, hpa=\E[%i%p1%dG, ht=\t, hts=\EH, - ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, - ind=\n, ip=$<1>, is2=\E>\E[?7;?8h\E[4;?1l^O\E)0, - kbs=\b, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kdl1=\E[M, kel=\E[K, khome=\E[H, - kil1=\E[L, rc=\E8, ri=\EM$<2>, rmacs=^O, rmir=\E[4l, - rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m, - rs1=\E7\E[1;24r\E8, - rs2=\E[0m\E[35;?7;?8h\E[30;?1l$<20>, rs3=\E[?3l$<80>, - sc=\E7, smacs=\E[0m^N, smir=\E[4h, - smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, - smul=\E[2t\E[4m, tbc=\E[3g, tsl=\E[>\,^A, -# -# This terminal description used the non-hidden attribute mode -# (with magic cookie). -# -wy75-mc|wyse75-mc|wyse 75 with magic cookies, - msgr@, - xmc#1, - rmacs=\E[0p^O, rmso=\E[0p, rmul=\E[0p, - rs2=\E[0p\E[35;?7;?8h\E[30;?1l$<20>, smacs=\E[0p^N, - smso=\E[17p, smul=\E[8p, - use=wy75, -wy75-vb|wyse75-vb|wyse 75 with visible bell, - flash=\E[30h\E\,\E[30l, - use=wy75, -wy75-w|wyse75-w|wyse 75 in 132 column mode, - cols#132, - rs3=\E[?3h$<80>, - use=wy75, -wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns, - cols#132, - flash=\E[30h\E\,\E[30l, rs3=\E[?3h$<80>, - use=wy75, -# -# Wyse 85 emulating a vt220 7 bit mode. -# 24 line screen with status line. -# -# The vt220 mode permits more function keys but it wipes out -# the escape key. I strongly reccomend that f11 be set to -# escape (esc). -# The terminal may have to be set for 8 data bits and 2 stop -# bits for the arrow keys to work. -# The Wyse 85 runs faster with XON/XOFF enabled. Also the -# (dch) and (ich) work best when XON/XOFF is set. (ich) and -# (dch) leave trash on the screen when used without XON/XOFF. -# -wy85|wyse85|wyse 85, - am, hs, mir, msgr, xenl, xon, - cols#80, lines#24, - bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<80>, - cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr, - 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$<1>, - cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<7*>, - dch1=\E[P$<4>, dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, - dsl=\E[40l, ed=\E[J$<80>, el=\E[K$<7>, - fsl=\E[1;24r\E8, home=\E[H, ht=\t, hts=\EH, - ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, - ind=\E[B, ip=$<4>, is1=\E[62;1"p\E7\E[?6l\E8\E[?5W, - is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12;36h\E[?7;8;25h$<30>, - kbs=\b, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, - kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - khome=\E[26~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, - rc=\E8, ri=\EM$<3>, rmacs=^O, rmir=\E[4l, rmkx=\E>, - rmso=\E[m, rmul=\E[m, - rs1=\E<\E[3;13l\E[!p\E7\E[1;24r\E8\E(B, - rs2=\E[35h\E[?3l$<70>, sc=\E7, smacs=^N, smir=\E[4h, - smkx=\E[?1l\E=, smso=\E[1m, smul=\E[4m, tbc=\E[3g, - tsl=\E[40h\E7\E[25;%i%p1%dH, -# -# Wyse 85 with visual bell. -wy85-vb|wyse85-vb|wyse 85 with visible bell, - flash=\E[30h\E\,\E[30l, - use=wy85, -# -# Wyse 85 in 132-column mode. -wy85-w|wyse85-w|wyse 85 in 132-column mode, - cols#132, - rs2=\E[35h\E[?3h$<120>, - use=wy85, -# -# Wyse 85 in 132-column mode with visual bell. -wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns, - flash=\E[30h\E\,\E[30l, - use=wy85, -# -wy925|wyse925|Wyse-50 emulating tvi925, - xenl@, - use=tvi925, -# -wy50vp|wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on, - am, xon, - cols#80, lines#24, - bel=^G, clear=\f, cr=\r, cub1=\b, cud1=\n, cuf1=^F, - cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c, cuu1=^Z, dch1=\EW, - dl1=\El, ed=\Ek, el=\EK, home=^A, ht=\t, - if=/usr/share/lib/tabset/wyse-adds, il1=\EM, ind=\n, - is2=\E`:\E`9^O\Er, kcub1=^U, kcud1=\n, kcuf1=^F, - kcuu1=^Z, khome=^A, ll=^A^Z, rmir=\Er, rmso=^O, - rmul=^O, rs2=\E`:\E`9^O\Er, smir=\Eq, smso=^N, - smul=^N, -# -wy50vp-nk|wyse-vp-nk|Wyse 50 in ADDS Viewpoint enhanced mode with no cursor keys, - kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, - use=wy50vp, diff --git a/usr/src/cmd/tic/tic_parse.c b/usr/src/cmd/tic/tic_parse.c index d46ed50520..f3b28f5a07 100644 --- a/usr/src/cmd/tic/tic_parse.c +++ b/usr/src/cmd/tic/tic_parse.c @@ -22,23 +22,23 @@ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ -/* +/* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved - * + * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * ******************************************************************* * COPYRIGHT NOTICE * @@ -187,7 +187,7 @@ compile() while (use_list.head != NULL && old_use_count != use_count) { old_use_count = use_count; for (ptr = use_list.tail; ptr != NULL; - ptr = ptr->bptr) { + ptr = ptr->bptr) { fseek(stdin, ptr->offset, 0); reset_input(); if ((token_type = get_token()) != NAMES) @@ -199,7 +199,7 @@ compile() } for (ptr = use_list.head; ptr != NULL; - ptr = ptr->fptr) { + ptr = ptr->fptr) { fseek(stdin, ptr->offset, 0); reset_input(); if ((token_type = get_token()) != NAMES) @@ -217,12 +217,9 @@ compile() if (use_list.head != NULL && !check_only) { fprintf(stderr, -"\nError in following up use-links. Either there is\n"); - fprintf(stderr, -"a loop in the links or they reference non-existant\n"); - fprintf(stderr, - "terminals. The following is a list of the entries\n"); - fprintf(stderr, "involved:\n\n"); +"\nError in following use-links. Either there is a loop in the links\n" +"or they reference non-existent terminals. The following is a list of\n" +"the entries involved:\n\n"); for (ptr = use_list.head; ptr != NULL; ptr = ptr->fptr) { fseek(stdin, ptr->offset, 0); @@ -245,7 +242,7 @@ dump_list(char *str) fseek(stdin, ptr->offset, 0); fgets(line, 1024, stdin); fprintf(stderr, "ptr %x off %d bptr %x fptr %x str %s", - ptr, ptr->offset, ptr->bptr, ptr->fptr, line); + ptr, ptr->offset, ptr->bptr, ptr->fptr, line); } fprintf(stderr, "\n"); } @@ -372,14 +369,14 @@ struct use_item *item_ptr; } /* - Change all cancellations to a non-entry. - For booleans, @ -> false - For nums, @ -> -1 - For strings, @ -> -1 - - This only has to be done for entries which - have to be compatible with the pre-Vr3 format. -*/ + * Change all cancellations to a non-entry. + * For booleans, @ -> false + * For nums, @ -> -1 + * For strings, @ -> -1 + * + * This only has to be done for entries which + * have to be compatible with the pre-Vr3 format. + */ #ifndef NOCANCELCOMPAT void elim_cancellations(short Booleans[], short Numbers[], short Strings[]) @@ -402,9 +399,9 @@ elim_cancellations(short Booleans[], short Numbers[], short Strings[]) } #endif /* NOCANCELCOMPAT */ /* - Change the cancellation signal from the -2 used internally to - the 2 used within the binary. -*/ + * Change the cancellation signal from the -2 used internally to + * the 2 used within the binary. + */ void change_cancellations(short Booleans[]) { @@ -498,9 +495,9 @@ invalid_term_name(char *name) return (1); if (error) { fprintf(stderr, "%s: Line %d: Illegal terminal name - '%s'\n", - progname, curr_line, name); + progname, curr_line, name); fprintf(stderr, - "Terminal names must start with a letter or digit\n"); + "Terminal names must start with a letter or digit\n"); exit(1); } return (0); @@ -562,13 +559,10 @@ dump_structure(short Booleans[], short Numbers[], short Strings[]) sprintf(filename, "%c/%s", first_name[0], first_name); - if (strlen(filename) > 16) - warning("'%s' filename too long, truncating to '%.16s'\n", - filename, filename); if (stat64(filename, &statbuf) >= 0 && statbuf.st_mtime >= start_time) { warning("'%s' defined in more than one entry.", first_name); fprintf(stderr, "Entry being used is '%s'.\n", - (unsigned)term_names + string_table); + (unsigned)term_names + string_table); } if (!check_only) { @@ -576,15 +570,14 @@ dump_structure(short Booleans[], short Numbers[], short Strings[]) fp = fopen(filename, "w"); if (fp == NULL) { perror(filename); - syserr_abort("Can't open %s/%s\n", - destination, filename); + syserr_abort("Can't open %s/%s\n", destination, + filename); } - DEBUG(1, "Created %.16s\n", filename); - } else DEBUG(1, "Would have created %.16s\n", filename); + DEBUG(1, "Created %s\n", filename); + } else DEBUG(1, "Would have created %s\n", filename); #ifndef NOCANCELCOMPAT - /* if there is no '+' in the name, eliminate */ - /* cancellation markings. */ + /* eliminate cancellation markings if there is no '+' in the name */ if (strchr(first_name, '+') == 0) elim_cancellations(Booleans, Numbers, Strings); else @@ -593,8 +586,8 @@ dump_structure(short Booleans[], short Numbers[], short Strings[]) if (!check_only) { if (write_object(fp, Booleans, Numbers, Strings) < 0) { - syserr_abort("Error in writing %s/%s", - destination, filename); + syserr_abort("Error writing %s/%s", destination, + filename); } fclose(fp); } @@ -620,7 +613,7 @@ dump_structure(short Booleans[], short Numbers[], short Strings[]) if (invalid_term_name(cur_name)) { if (other_names) warning("'%s': bad term name found in list.", - cur_name); + cur_name); continue; } @@ -628,36 +621,28 @@ dump_structure(short Booleans[], short Numbers[], short Strings[]) sprintf(linkname, "%c/%s", cur_name[0], cur_name); - if (strlen(linkname) > 16) { - if (other_names) { - warning( -"'%s' linkname too long, truncating to '%.16s'\n", linkname, linkname); - } else { - continue; - } - } alphastart |= isalpha(cur_name[0]); if (strcmp(first_name, cur_name) == 0) { warning("Terminal name '%s' synonym for itself", - first_name); + first_name); } else { if (!check_only) { if (stat64(linkname, &statbuf) >= 0 && - statbuf.st_mtime >= start_time) { + statbuf.st_mtime >= start_time) { warning( "'%s' defined in more than one entry.", cur_name); fprintf(stderr, "Entry being used is '%s'.\n", (unsigned)term_names + - string_table); + string_table); } unlink(linkname); if (link(filename, linkname) < 0) syserr_abort("Can't link %s to %s", - filename, linkname); - DEBUG(1, "Linked %.16s\n", linkname); - } else DEBUG(1, "Would have linked %.16s\n", linkname); + filename, linkname); + DEBUG(1, "Linked %s\n", linkname); + } else DEBUG(1, "Would have linked %s\n", linkname); } } diff --git a/usr/src/common/dis/i386/dis_tables.c b/usr/src/common/dis/i386/dis_tables.c index 805a862f13..26067a0fc5 100644 --- a/usr/src/common/dis/i386/dis_tables.c +++ b/usr/src/common/dis/i386/dis_tables.c @@ -230,7 +230,8 @@ enum { VEX_RRM, /* VEX VEX.vvvv, mod_reg -> mod_rm */ VEX_RMX, /* VEX VEX.vvvv, mod_rm -> mod_reg */ VMx, /* vmcall/vmlaunch/vmresume/vmxoff */ - VMxo /* VMx instruction with optional prefix */ + VMxo, /* VMx instruction with optional prefix */ + SVM /* AMD SVM instructions */ }; /* @@ -498,7 +499,7 @@ const instable_t dis_op0F00[8] = { */ const instable_t dis_op0F01[8] = { -/* [0] */ TNSZ("sgdt",VMx,6), TNSZ("sidt",MONITOR_MWAIT,6), TNSZ("lgdt",XGETBV_XSETBV,6), TNSZ("lidt",MO,6), +/* [0] */ TNSZ("sgdt",VMx,6), TNSZ("sidt",MONITOR_MWAIT,6), TNSZ("lgdt",XGETBV_XSETBV,6), TNSZ("lidt",SVM,6), /* [4] */ TNSZ("smsw",M,2), INVALID, TNSZ("lmsw",M,2), TNS("invlpg",SWAPGS), }; @@ -1467,7 +1468,7 @@ const instable_t dis_op0F[16][16] = { /* [10] */ TNSZ("movups",XMMO,16), TNSZ("movups",XMMOS,16),TNSZ("movlps",XMMO,8), TNSZ("movlps",XMMOS,8), /* [14] */ TNSZ("unpcklps",XMMO,16),TNSZ("unpckhps",XMMO,16),TNSZ("movhps",XMMOM,8),TNSZ("movhps",XMMOMS,8), /* [18] */ IND(dis_op0F18), INVALID, INVALID, INVALID, -/* [1C] */ INVALID, INVALID, INVALID, TS("nop", M), +/* [1C] */ INVALID, INVALID, INVALID, TS("nop",Mw), }, { /* [20] */ TSy("mov",SREG), TSy("mov",SREG), TSy("mov",SREG), TSy("mov",SREG), /* [24] */ TSx("mov",SREG), INVALID, TSx("mov",SREG), INVALID, @@ -3550,6 +3551,44 @@ just_mem: break; } /*FALLTHROUGH*/ + case SVM: + if (mode == 3) { +#if DIS_TEXT + char *vinstr; + + switch (r_m) { + case 0: + vinstr = "vmrun"; + break; + case 1: + vinstr = "vmmcall"; + break; + case 2: + vinstr = "vmload"; + break; + case 3: + vinstr = "vmsave"; + break; + case 4: + vinstr = "stgi"; + break; + case 5: + vinstr = "clgi"; + break; + case 6: + vinstr = "skinit"; + break; + case 7: + vinstr = "invlpga"; + break; + } + + (void) strncpy(x->d86_mnem, vinstr, OPLEN); +#endif + NOMEM; + break; + } + /*FALLTHROUGH*/ case MONITOR_MWAIT: if (mode == 3) { if (r_m == 0) { diff --git a/usr/src/lib/libdtrace/common/dt_cc.c b/usr/src/lib/libdtrace/common/dt_cc.c index e1b794edbf..60eb152e0a 100644 --- a/usr/src/lib/libdtrace/common/dt_cc.c +++ b/usr/src/lib/libdtrace/common/dt_cc.c @@ -684,7 +684,8 @@ dt_action_tracemem(dtrace_hdl_t *dtp, dt_node_t *dnp, dtrace_stmtdesc_t *sdp) dtrace_actdesc_t *ap = dt_stmt_action(dtp, sdp); dt_node_t *addr = dnp->dn_args; - dt_node_t *size = dnp->dn_args->dn_list; + dt_node_t *max = dnp->dn_args->dn_list; + dt_node_t *size; char n[DT_TYPE_NAMELEN]; @@ -696,17 +697,37 @@ dt_action_tracemem(dtrace_hdl_t *dtp, dt_node_t *dnp, dtrace_stmtdesc_t *sdp) dt_node_type_name(addr, n, sizeof (n))); } - if (dt_node_is_posconst(size) == 0) { - dnerror(size, D_TRACEMEM_SIZE, "tracemem( ) argument #2 must " + if (dt_node_is_posconst(max) == 0) { + dnerror(max, D_TRACEMEM_SIZE, "tracemem( ) argument #2 must " "be a non-zero positive integral constant expression\n"); } + if ((size = max->dn_list) != NULL) { + if (size->dn_list != NULL) { + dnerror(size, D_TRACEMEM_ARGS, "tracemem ( ) prototype " + "mismatch: expected at most 3 args\n"); + } + + if (!dt_node_is_scalar(size)) { + dnerror(size, D_TRACEMEM_DYNSIZE, "tracemem ( ) " + "dynamic size (argument #3) must be of " + "scalar type\n"); + } + + dt_cg(yypcb, size); + ap->dtad_difo = dt_as(yypcb); + ap->dtad_difo->dtdo_rtype = dt_int_rtype; + ap->dtad_kind = DTRACEACT_TRACEMEM_DYNSIZE; + + ap = dt_stmt_action(dtp, sdp); + } + dt_cg(yypcb, addr); ap->dtad_difo = dt_as(yypcb); - ap->dtad_kind = DTRACEACT_DIFEXPR; + ap->dtad_kind = DTRACEACT_TRACEMEM; ap->dtad_difo->dtdo_rtype.dtdt_flags |= DIF_TF_BYREF; - ap->dtad_difo->dtdo_rtype.dtdt_size = size->dn_value; + ap->dtad_difo->dtdo_rtype.dtdt_size = max->dn_value; } static void diff --git a/usr/src/lib/libdtrace/common/dt_consume.c b/usr/src/lib/libdtrace/common/dt_consume.c index b8eb7cc344..2635cb5e4a 100644 --- a/usr/src/lib/libdtrace/common/dt_consume.c +++ b/usr/src/lib/libdtrace/common/dt_consume.c @@ -827,7 +827,7 @@ dt_print_stddev(dtrace_hdl_t *dtp, FILE *fp, caddr_t addr, /*ARGSUSED*/ int dt_print_bytes(dtrace_hdl_t *dtp, FILE *fp, caddr_t addr, - size_t nbytes, int width, int quiet) + size_t nbytes, int width, int quiet, int forceraw) { /* * If the byte stream is a series of printable characters, followed by @@ -840,6 +840,9 @@ dt_print_bytes(dtrace_hdl_t *dtp, FILE *fp, caddr_t addr, if (nbytes == 0) return (0); + if (forceraw) + goto raw; + if (dtp->dt_options[DTRACEOPT_RAWBYTES] != DTRACEOPT_UNSET) goto raw; @@ -1550,7 +1553,7 @@ dt_print_datum(dtrace_hdl_t *dtp, FILE *fp, dtrace_recdesc_t *rec, (uint32_t)normal); break; default: - err = dt_print_bytes(dtp, fp, addr, size, 50, 0); + err = dt_print_bytes(dtp, fp, addr, size, 50, 0, 0); break; } @@ -1705,6 +1708,7 @@ dt_consume_cpu(dtrace_hdl_t *dtp, FILE *fp, int cpu, dtrace_bufdesc_t *buf, int quiet = (dtp->dt_options[DTRACEOPT_QUIET] != DTRACEOPT_UNSET); int rval, i, n; dtrace_epid_t last = DTRACE_EPIDNONE; + uint64_t tracememsize = 0; dtrace_probedata_t data; uint64_t drops; caddr_t addr; @@ -1873,6 +1877,12 @@ again: } } + if (act == DTRACEACT_TRACEMEM_DYNSIZE && + rec->dtrd_size == sizeof (uint64_t)) { + tracememsize = *((unsigned long long *)addr); + continue; + } + rval = (*rfunc)(&data, rec, arg); if (rval == DTRACE_CONSUME_NEXT) @@ -2032,6 +2042,23 @@ nofmt: goto nextrec; } + if (act == DTRACEACT_TRACEMEM) { + if (tracememsize == 0 || + tracememsize > rec->dtrd_size) { + tracememsize = rec->dtrd_size; + } + + n = dt_print_bytes(dtp, fp, addr, + tracememsize, 33, quiet, 1); + + tracememsize = 0; + + if (n < 0) + return (-1); + + goto nextrec; + } + switch (rec->dtrd_size) { case sizeof (uint64_t): n = dt_printf(dtp, fp, @@ -2055,7 +2082,7 @@ nofmt: break; default: n = dt_print_bytes(dtp, fp, addr, - rec->dtrd_size, 33, quiet); + rec->dtrd_size, 33, quiet, 0); break; } diff --git a/usr/src/lib/libdtrace/common/dt_errtags.h b/usr/src/lib/libdtrace/common/dt_errtags.h index ed5d619de0..106ee1847e 100644 --- a/usr/src/lib/libdtrace/common/dt_errtags.h +++ b/usr/src/lib/libdtrace/common/dt_errtags.h @@ -191,6 +191,8 @@ typedef enum { D_TRACE_DYN, /* trace() argument has dynamic type */ D_TRACEMEM_ADDR, /* tracemem() address bad type */ D_TRACEMEM_SIZE, /* tracemem() size bad type */ + D_TRACEMEM_ARGS, /* tracemem() illegal number of args */ + D_TRACEMEM_DYNSIZE, /* tracemem() dynamic size bad type */ D_STACK_PROTO, /* stack() prototype mismatch */ D_STACK_SIZE, /* stack() size argument bad type */ D_USTACK_FRAMES, /* ustack() frames arg bad type */ diff --git a/usr/src/lib/libdtrace/common/dt_open.c b/usr/src/lib/libdtrace/common/dt_open.c index d5259c9a2e..211ff67276 100644 --- a/usr/src/lib/libdtrace/common/dt_open.c +++ b/usr/src/lib/libdtrace/common/dt_open.c @@ -105,8 +105,11 @@ #define DT_VERS_1_6_2 DT_VERSION_NUMBER(1, 6, 2) #define DT_VERS_1_6_3 DT_VERSION_NUMBER(1, 6, 3) #define DT_VERS_1_7 DT_VERSION_NUMBER(1, 7, 0) -#define DT_VERS_LATEST DT_VERS_1_7 -#define DT_VERS_STRING "Sun D 1.7" +#define DT_VERS_1_7_1 DT_VERSION_NUMBER(1, 7, 1) +#define DT_VERS_1_8 DT_VERSION_NUMBER(1, 8, 0) +#define DT_VERS_1_8_1 DT_VERSION_NUMBER(1, 8, 1) +#define DT_VERS_LATEST DT_VERS_1_8_1 +#define DT_VERS_STRING "Sun D 1.8.1" const dt_version_t _dtrace_versions[] = { DT_VERS_1_0, /* D API 1.0.0 (PSARC 2001/466) Solaris 10 FCS */ @@ -123,6 +126,9 @@ const dt_version_t _dtrace_versions[] = { DT_VERS_1_6_2, /* D API 1.6.2 */ DT_VERS_1_6_3, /* D API 1.6.3 */ DT_VERS_1_7, /* D API 1.7 */ + DT_VERS_1_7_1, /* D API 1.7.1 */ + DT_VERS_1_8, /* D API 1.8 */ + DT_VERS_1_8_1, /* D API 1.8.1 */ 0 }; @@ -253,7 +259,7 @@ static const dt_ident_t _dtrace_globals[] = { { "jstack", DT_IDENT_ACTFUNC, 0, DT_ACT_JSTACK, DT_ATTR_STABCMN, DT_VERS_1_0, &dt_idops_func, "stack(...)" }, { "lltostr", DT_IDENT_FUNC, 0, DIF_SUBR_LLTOSTR, DT_ATTR_STABCMN, DT_VERS_1_0, - &dt_idops_func, "string(int64_t)" }, + &dt_idops_func, "string(int64_t, [int])" }, { "llquantize", DT_IDENT_AGGFUNC, 0, DTRACEAGG_LLQUANTIZE, DT_ATTR_STABCMN, DT_VERS_1_7, &dt_idops_func, "void(@, int32_t, int32_t, int32_t, int32_t, ...)" }, @@ -377,11 +383,15 @@ static const dt_ident_t _dtrace_globals[] = { { "timestamp", DT_IDENT_SCALAR, 0, DIF_VAR_TIMESTAMP, DT_ATTR_STABCMN, DT_VERS_1_0, &dt_idops_type, "uint64_t" }, +{ "tolower", DT_IDENT_FUNC, 0, DIF_SUBR_TOLOWER, DT_ATTR_STABCMN, DT_VERS_1_8, + &dt_idops_func, "string(const char *)" }, +{ "toupper", DT_IDENT_FUNC, 0, DIF_SUBR_TOUPPER, DT_ATTR_STABCMN, DT_VERS_1_8, + &dt_idops_func, "string(const char *)" }, { "trace", DT_IDENT_ACTFUNC, 0, DT_ACT_TRACE, DT_ATTR_STABCMN, DT_VERS_1_0, &dt_idops_func, "void(@)" }, { "tracemem", DT_IDENT_ACTFUNC, 0, DT_ACT_TRACEMEM, DT_ATTR_STABCMN, DT_VERS_1_0, - &dt_idops_func, "void(@, size_t)" }, + &dt_idops_func, "void(@, size_t, ...)" }, { "trunc", DT_IDENT_ACTFUNC, 0, DT_ACT_TRUNC, DT_ATTR_STABCMN, DT_VERS_1_0, &dt_idops_func, "void(...)" }, { "uaddr", DT_IDENT_ACTFUNC, 0, DT_ACT_UADDR, DT_ATTR_STABCMN, diff --git a/usr/src/lib/libdtrace/common/dt_options.c b/usr/src/lib/libdtrace/common/dt_options.c index 5353bfae52..426f8cb73c 100644 --- a/usr/src/lib/libdtrace/common/dt_options.c +++ b/usr/src/lib/libdtrace/common/dt_options.c @@ -24,8 +24,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/resource.h> #include <sys/mman.h> #include <sys/types.h> @@ -837,30 +835,6 @@ dt_options_load(dtrace_hdl_t *dtp) return (0); } -/*ARGSUSED*/ -static int -dt_opt_preallocate(dtrace_hdl_t *dtp, const char *arg, uintptr_t option) -{ - dtrace_optval_t size; - void *p; - - if (arg == NULL || dt_optval_parse(arg, &size) != 0) - return (dt_set_errno(dtp, EDT_BADOPTVAL)); - - if (size > SIZE_MAX) - size = SIZE_MAX; - - if ((p = dt_zalloc(dtp, size)) == NULL) { - do { - size /= 2; - } while ((p = dt_zalloc(dtp, size)) == NULL); - } - - dt_free(dtp, p); - - return (0); -} - typedef struct dt_option { const char *o_name; int (*o_func)(dtrace_hdl_t *, const char *, uintptr_t); @@ -899,7 +873,6 @@ static const dt_option_t _dtrace_ctoptions[] = { { "linktype", dt_opt_linktype }, { "nolibs", dt_opt_cflags, DTRACE_C_NOLIBS }, { "pgmax", dt_opt_pgmax }, - { "preallocate", dt_opt_preallocate }, { "pspec", dt_opt_cflags, DTRACE_C_PSPEC }, { "stdc", dt_opt_stdc }, { "strip", dt_opt_dflags, DTRACE_D_STRIP }, diff --git a/usr/src/lib/libdtrace/common/dt_parser.c b/usr/src/lib/libdtrace/common/dt_parser.c index 6ad30a9ac5..05715894a7 100644 --- a/usr/src/lib/libdtrace/common/dt_parser.c +++ b/usr/src/lib/libdtrace/common/dt_parser.c @@ -21,6 +21,7 @@ /* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, Joyent Inc. All rights reserved. */ /* @@ -719,12 +720,19 @@ dt_node_type_name(const dt_node_t *dnp, char *buf, size_t len) size_t dt_node_type_size(const dt_node_t *dnp) { + ctf_id_t base; + if (dnp->dn_kind == DT_NODE_STRING) return (strlen(dnp->dn_string) + 1); if (dt_node_is_dynamic(dnp) && dnp->dn_ident != NULL) return (dt_ident_size(dnp->dn_ident)); + base = ctf_type_resolve(dnp->dn_ctfp, dnp->dn_type); + + if (ctf_type_kind(dnp->dn_ctfp, base) == CTF_K_FORWARD) + return (0); + return (ctf_type_size(dnp->dn_ctfp, dnp->dn_type)); } diff --git a/usr/src/lib/libdtrace_jni/common/dtj_consume.c b/usr/src/lib/libdtrace_jni/common/dtj_consume.c index 7b168fd927..78f6474522 100644 --- a/usr/src/lib/libdtrace_jni/common/dtj_consume.c +++ b/usr/src/lib/libdtrace_jni/common/dtj_consume.c @@ -731,6 +731,7 @@ dtj_chewrec(const dtrace_probedata_t *data, const dtrace_recdesc_t *rec, switch (act) { case DTRACEACT_DIFEXPR: + case DTRACEACT_TRACEMEM: if (rec->dtrd_size == 0) { /* * The current record is not a D action, but a program @@ -1075,6 +1076,7 @@ dtj_bufhandler(const dtrace_bufdata_t *bufdata, void *arg) switch (act) { case DTRACEACT_DIFEXPR: + case DTRACEACT_TRACEMEM: /* trace() action */ break; case DTRACEACT_PRINTF: diff --git a/usr/src/lib/librpcsvc/common/bindresvport.c b/usr/src/lib/librpcsvc/common/bindresvport.c index 69bf6bf4b9..d8e9a098e5 100644 --- a/usr/src/lib/librpcsvc/common/bindresvport.c +++ b/usr/src/lib/librpcsvc/common/bindresvport.c @@ -18,10 +18,11 @@ * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END - */ -/* + * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ @@ -32,8 +33,6 @@ * under license from the Regents of the University of California. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * XXX This routine should be changed to use * ND_CHECK_RESERVED_PORT and ND_SET_RESERVED_PORT @@ -85,7 +84,7 @@ __clnt_bindresvport(cl) return (-1); if ((nconf->nc_semantics != NC_TPI_CLTS) || (strcmp(nconf->nc_protofmly, NC_INET) && - strcmp(nconf->nc_protofmly, NC_INET)) || + strcmp(nconf->nc_protofmly, NC_INET6)) || strcmp(nconf->nc_proto, NC_UDP)) { freenetconfigent(nconf); return (0); /* not udp - don't need resv port */ @@ -159,7 +158,10 @@ __clnt_bindresvport(cl) port = (getpid() % NPORTS) + STARTPORT; for (i = 0; i < NPORTS; i++) { - sin->sin_port = htons(port++); + if (ipv6_fl == TRUE) + sin6->sin6_port = htons(port++); + else + sin->sin_port = htons(port++); if (port > ENDPORT) port = STARTPORT; /* diff --git a/usr/src/lib/libumem/common/umem_update_thread.c b/usr/src/lib/libumem/common/umem_update_thread.c index f9a6615f5a..5b393cfb13 100644 --- a/usr/src/lib/libumem/common/umem_update_thread.c +++ b/usr/src/lib/libumem/common/umem_update_thread.c @@ -27,6 +27,8 @@ #include "umem_base.h" #include "vmem_base.h" +#include <sys/ccompile.h> + #include <signal.h> /*ARGSUSED*/ diff --git a/usr/src/lib/libxcurses/src/terminfo/Makefile b/usr/src/lib/libxcurses/src/terminfo/Makefile deleted file mode 100644 index 3a2863c6c8..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/Makefile +++ /dev/null @@ -1,33 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -#ident "%Z%%M% %I% %E% SMI" -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -# lib/libxcurses/src/terminfo/Makefile -# - -all: - @echo these terminfo entries are not currently used by Solaris - @echo use entries in usr/src/cmd/terminfo diff --git a/usr/src/lib/libxcurses/src/terminfo/adds b/usr/src/lib/libxcurses/src/terminfo/adds deleted file mode 100644 index b97bf2d8a1..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/adds +++ /dev/null @@ -1,70 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# adds: ADDS -# -# Regent: lowest common denominator, works on all regents. -regent|adds regent series, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, clear=^L, - cup=^K%p1%' '%+%c^P%p1%{10}%/%{16}%*%p1%{10}%m%+%c, - cols#80, home=^A, lines#24, ll=^A^Z, cuf1=^F, cuu1=^Z, -# Regent 100 has a bug where if computer sends escape when user is holding -# down shift key it gets confused, so we avoid escape. -regent100|adds regent 100, - cup=^K%p1%' '%+%c^P%p1%{10}%/%{16}%*%p1%{10}%m%+%c, - kf1=^B1\r, kf2=^B2\r, kf3=^B3\r, kf4=^B4\r, - kf5=^B5\r, kf6=^B6\r, kf7=^B7\r, kf8=^B8\r, - khome=^A, kcub1=^U, kcuf1=^F, kcuu1=^Z, kcud1=^J, use=regent, -# Regent 20, untested -regent20|adds regent 20, - ed=\Ek, el=\EK, cup=\EY%p1%' '%+%c%p2%' '%+%c, use=regent, -regent25|adds regent 25, - kf0=^B0\r, kf1=^B1\r, kf2=^B2\r, kf3=^B3\r, kf4=^B4\r, - kf5=^B5\r, kf6=^B6\r, kf7=^B7\r, kf8=^B8\r, kf9=^B9\r, - khome=^A, kcub1=^U, kcuf1=^F, kcuu1=^Z, kcud1=^J, use=regent20, -# Regent 40: untested -regent40|adds regent 40, - il1=\EM, dl1=\El, is2=\EB, rmso=\E0@, smso=\E0P, - rmul=\E0@, smul=\E0`, flash=\ED\Ed, use=regent25, -# If you have standout problem with regent 200, try smso=\ER\EOP,rmso=\E0@\EV, -regent60|regent200|adds Regent 60, - dch1=\EE, rmir=\EF, smir=\EF, is2=\EV\EB, use=regent40, -regent60na|regent 60 w/no arrow keys, - kcub1@, kcuf1@, kcuu1@, kcud1@, use=regent60, -# Note: if return acts weird on a980, check internal switch #2 -# on the top chip on the CONTROL pad board. -a980|adds consul 980, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E^N$<13>, am, cub1=^H, - clear=^L$<1>^K@, cup=^K%p1%'@'%+%c\E^E%p1%2d, cols#80, dl1=\E^O$<13>, - kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, - kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, - lines#24, cuf1=\E^E01, smso=^Y^^^N, rmso=^O, cuu1=$<9>, -# From Onyx:edward Thu Jul 9 09:27:33 1981 -viewpoint|addsviewpoint|adds viewpoint, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, lines#24, cols#80, - cup=\EY%p1%' '%+%c%p2%' '%+%c, ed=\Ek, el=\EK, cuf1=^F, - cuu1=^Z, clear=^L, ll=^A, kcub1=^U, kcuf1=^F, kcud1=^J, kcuu1=^Z, khome=^A, - smso=^N, rmso=^O, smul=^N, rmul=^O, is2=^O\E0`, cvvis=^O\E0P, cnorm=^O\E0`, diff --git a/usr/src/lib/libxcurses/src/terminfo/annarbor b/usr/src/lib/libxcurses/src/terminfo/annarbor deleted file mode 100644 index 0ff0619b5e..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/annarbor +++ /dev/null @@ -1,148 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# annarbor: ANN ARBOR -# -aa|annarbor|4080|ann arbor 4080, - cr=^M, cud1=^J, ind=^J, bel=^G, tbc=^\^P^P, hts=^]^P1, - cup=^O%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%'@'%+%c, - cols#80, lines#40, cub1=^H, clear=^L$<2>, cuu1=^N, cuf1=^_, - home=^K, am, kbs=^^, kcud1=^J, kcuu1=^N, kcub1=^H, kcuf1=^_, khome=^K, -# From cbosg!chico!randvax!day Aug 1981 -# alias aaa 'setenv TERM aaa-\!^; tset -e^H -Q; alias clr echo "^[\[2J^[\[H"' -# Be sure to change ^[ to escape in above alias. Needs function keys added. -# The ann arbor ambassador entries are merged from Mike O'Brien@Rand -# and Howard Katseff at Bell Labs, and are not thoroughly tested. -# Highly modified 6/22 by Mike O'Brien. -# split out into several for the various screen sizes by dave-yost@rand -# Many changes by Mark Horton 3/82 -aaa-unk|ann arbor ambassador (internal - don't use this directly), - am, km, mir, xon, cols#80, it#8, - cr=^M, ht=^I, cbt=\E[Z, bel=^G, ind=^J, ri=\EM, - cuu1=\E[A, cuf1=\E[C, cud1=^J, cub1=^H, - cuu=\E[%p1%dA, cuf=\E[%p1%dC, cud=\E[%p1%dB, cub=\E[%p1%dD, - ed=\E[J, el=\E[K$<5>, clear=\E[H\E[J$<156>, - home=\E[H, cup=\E[%i%p1%d;%p2%dH, - hpa=\E[%p1%{1}%+%d`, vpa=\E[%p1%{1}%+%dd, - dl=\E[%p1%dM, dl1=\E[M, il=\E[%p1%dL$<3*>, il1=\E[L$<3>, - dch=\E[%p1%dP, dch1=\E[P, .ich=\E[%p1%d@$<4*>, .ich1=\E[@$<4>, - smir=\E[>4h, rmir=\E[>4l, - smul=\E[4m, rmul=\E[m, smso=\E[1m, rmso=\E[m, - bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[8m, sgr0=\E[0m, - sgr=\E[%?%p1%t1;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, - kich1=\E[@, krmir=\E6, kil1=\E[L, kclr=\E[J, kdch1=\E[P, kdl1=\E[M, - kf1=\EOA, kf2=\EOB, kf3=\EOC, kf4=\EOD, kf5=\EOE, - kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI, kf10=\EOJ, - rep=%p1%c\E[%p2%{1}%-%db, sc=\E7, rc=\E8, - flash=\E7\E[H\E[4m\E9$<20>\E[m\E9\E8, - is1=\E[m\E7\E[H\E9\E8, is3=\E[1Q\E[>20;30l, - smm=\E[>52h, rmm=\E[>52l, - .mc0=\E[0i, .mc5=\E[v, .mc4=^C, -aaa-unk-stat|Ann Arbor Ambassadors with status lines, - tsl=\E[>51h\E[1;%p1%dH\E[2K, fsl=\E[>51l, hs, eslok, - .dsl=\E7\E[60;0;0;30p\E[60;1H\E[K\E[H\E8, -aaa-unk-rv|Ann Arbor Ambassadors in reverse-video mode, - bold=\E[1;7m, rev=\E[m, blink=\E[5;7m, invis=\E[7;8m, sgr0=\E[7m, - rmul=\E[7m, smul=\E[4;7m, rmso=\E[7m, smso=\E[m, rs1=\E[H\E[7m\E[J, - sgr=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, - flash=\E7\E[H\E[7;4m\E9$<20>\E[7m\E9\E8, - is1=\E[7m\E7\E[H\E9\E8, -aaa-18|ann arbor ambassador/18 lines, - smcup=\E[18;0;0;18p, rmcup=\E[60;0;0;18p\E[60;1H\E[K, - is2=\E7\E[60;0;0;18p\E8, lines#18, use=aaa-unk, -aaa-18-rv|ann arbor ambassador/18 lines+reverse video, - use=aaa-unk-rv, use=aaa-18, -aaa-20|ann arbor ambassador/20 lines, - smcup=\E[20;0;0;20p, rmcup=\E[60;0;0;20p\E[60;1H\E[K, - is2=\E7\E[60;0;0;20p\E8, lines#20, use=aaa-unk, -aaa-20-rv|ann arbor ambassador/20 lines+reverse video, - use=aaa-unk-rv, use=aaa-20, -aaa-22|ann arbor ambassador/22 lines, - smcup=\E[22;0;0;22p, rmcup=\E[60;0;0;22p\E[60;1H\E[K, - is2=\E7\E[60;0;0;22p\E8, lines#22, use=aaa-unk, -aaa-22-rv|ann arbor ambassador/22 lines+reverse video, - use=aaa-unk-rv, use=aaa-22, -aaa-24|ann arbor ambassador/24 lines, - smcup=\E[24;0;0;24p, rmcup=\E[60;0;0;24p\E[60;1H\E[K, - is2=\E7\E[60;0;0;24p\E8, lines#24, use=aaa-unk, -aaa-24-rv|ann arbor ambassador/24 lines+reverse video, - use=aaa-unk-rv, use=aaa-24, -aaa-26|ann arbor ambassador/26 lines, - smcup=\E[26;0;0;26p, rmcup=\E[60;0;0;26p\E[60;1H\E[K, - is2=\E7\E[60;0;0;26p\E8, lines#26, use=aaa-unk, -aaa-26-rv|ann arbor ambassador/26 lines+reverse video, - use=aaa-unk-rv, use=aaa-26, -aaa-28|ann arbor ambassador/28 lines, - smcup=\E[28;0;0;28p, rmcup=\E[60;0;0;28p\E[60;1H\E[K, - is2=\E7\E[60;0;0;28p\E8, lines#28, use=aaa-unk, -aaa-28-rv|ann arbor ambassador/28 lines+reverse video, - use=aaa-unk-rv, use=aaa-28, -aaa-29|ann arbor ambassador/29 lines plus status line, - smcup=\E[30;1;0;30p, - rmcup=\E[60;1;0;30p\E[60;1H\E[K, - is2=\E7\E[H\E[K\E[60;1;0;30p\E8\E[>51h\E[H\E[>51l, lines#29, - use=aaa-unk-stat, use=aaa-unk, -aaa-29-rv|ann arbor ambassador/29 lines+status line+reverse video, - use=aaa-unk-rv, use=aaa-29, -aaa-30|ambassador|ann arbor ambassador/30 lines, - smcup=\E[30;0;0;30p, rmcup=\E[60;0;0;30p\E[60;1H\E[K, - is2=\E7\E[60;0;0;30p\E8, lines#30, use=aaa-unk, -aaa-30-rv|ann arbor ambassador/30 lines in reverse video, - use=aaa-unk-rv, use=aaa-30, -aaa-36|ann arbor ambassador/36 lines, - smcup=\E[36;0;0;36p, rmcup=\E[60;0;0;36p\E[60;1H\E[K, - is2=\E7\E[60;0;0;36p\E8, lines#36, use=aaa-unk, -aaa-36-rv|ann arbor ambassador/36 lines+reverse video, - use=aaa-unk-rv, use=aaa-36, -aaa-40|ann arbor ambassador/40 lines, - smcup=\E[40;0;0;40p, rmcup=\E[60;0;0;40p\E[60;1H\E[K, - is2=\E7\E[60;0;0;40p\E8, lines#40, use=aaa-unk, -aaa-40-rv|ann arbor ambassador/40 lines+reverse video, - use=aaa-unk-rv, use=aaa-40, -aaa-47|ann arbor ambassador/48 lines+status line, - smcup=\E[48;1;0;48p, - rmcup=\E[60;1;0;48p\E[60;1H\E[K, - is2=\E7\E[H\E[K\E[60;1;0;48p\E8\E[>51h\E[H\E[>51l, lines#47, - use=aaa-unk-stat, use=aaa-unk, -aaa-47-rv|ann arbor ambassador/48 lines+status line+reverse video, - use=aaa-unk-rv, use=aaa-47, -aaa|ambas|aaa-48|ann arbor ambassador/48 lines, - smcup=\E[48;0;0;48p, rmcup=\E[60;0;0;48p\E[60;1H\E[K, - is2=\E7\E[60;0;0;48p\E8, lines#48, use=aaa-unk, -aaa-rv|aaa-48-rv|ann arbor ambassador/48 lines+reverse video, - use=aaa-unk-rv, use=aaa-48, -aaa-59|ann arbor ambassador/59 lines plus status line, - is2=\E7\E[H\E[K\E[60;1;0;60p\E8\E[>51h\E[H\E[>51l, lines#59, - use=aaa-unk-stat, use=aaa-unk, -aaa-59-rv|ann arbor ambassador/59 lines+status line+reverse video, - use=aaa-unk-rv, use=aaa-59, -aaa-60|ann arbor ambassador/60 lines, - is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8, lines#60, use=aaa-unk, -aaa-60-rv|ann arbor ambassador/60 lines+reverse video, - use=aaa-unk-rv, use=aaa-60, -aaa-db|aaa-30-db|ann arbor ambassador 30 lines/destructive backspace, - cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30, diff --git a/usr/src/lib/libxcurses/src/terminfo/ansi b/usr/src/lib/libxcurses/src/terminfo/ansi deleted file mode 100644 index 2527208f61..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/ansi +++ /dev/null @@ -1,106 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# ansi << TERMINFO Database >> -# -# Vanilla ANSI terminal. This definition basically describes -# every thing possible on an ANSI terminal. It assumes padding -# is zero and xon/xoff enabled. Also numeric keypad mode is -# selected. -# -# To commemt out individual selections, prefix the capability with -# a period (.), eg smam=\Ex is enabled while .smam=\Ex is disabled. -# -ansi|vanilla ansi terminal, -# Auto margins, auto left margin, Xon/xoff enabled, safe move in standout - am, xon, msgr, xenl, -# Screen size, standard characters - lines#24, cols#80, bel=^G, ht=^I, cr=^M, -# Reset, attrs off, normal cursor mode, keypad numeric mode, line wrap on - is2=\E[0m\E[?1l\E>\E[?7h, -# Reset, attrs off - rs2=\Ec\E[0m, -# Turn on/off automatic margins - smam=\E[?7h, rmam=\E[?7l, -# Turn on/off "keypad-transmit" mode (application mode) - .smkx=\E[?1h\E=, .rmkx=\E[?1l>\E>, -# Normal numeric kepad mode - kbs=^H, kcuu1=\E[A, kcud1=\E[B, kcuf1=\E[C, kcub1=\E[D, khome=\E[H, -# Clear screen, erase to end of display - clear=\E[H\E[2J, ed=\E[J, -# Clear to beginning of line, clear to end of line - el1=\E[1K, el=\E[K, -# Cursor absolute addressing, home cursor - cup=\E[%i%p1%d;%p2%dH, home=\E[H, -# Cursor relative down, back, forward, and up by one - cud1=\E[B, cub1=\E[D, cuf1=\E[C, cuu1=\E[A, -# Scroll text up one, up n lines; scroll down one, down n lines - ind=\ED, indn=\E[%p1%dS, ri=\EM, rin=\E[%p1%dT, -# Save and restore cursor - sc=\E7, rc=\E8, -# Delete one, delete n characters - dch1=\E[P, dch=\E[%p1%dP, -# Insert one, insert n lines; delete one, delete n lines - il1=\E[L, il=\E[%p1%dL, dl1=\E[M, dl=\E[%p1%dM, -# Start and finish insert mode - smir=\E[4h, rmir=\E[4l, -# Change scroll region - .csr=\E[%i%p1%d;%p2%dr, -# Set tab in current column, clear all tabs - hts=\EH, tbc=\E[3g, -# Turn on/off standout - smso=\E[7m, rmso=\E[m, -# Turn on/off underline - smul=\E[4m, rmul=\E[m, -# Turn on blink, bold, reverse - blink=\E[5m, bold=\E[1m, rev=\E[7m, -# Set attribute combinations - sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;m, -# Turn off all attributes - sgr0=\E[0m, -# Flash by flipping background to white then black - flash=\E[?5h\E[?5l, - -ansi-tiny|Minimum ANSI terminal definition, -# -# The following is the minimum required by MKS Curses for use -# with MKS Vi and MKS More. -# - am, - lines#24, - cols#80, - el=\E[K, - cup=\E[%i%p1%d;%p2%dH, - il1=\E[L, - dl1=\E[M, -# -# The following is also required for traditional Vi. -# - cr=\r, - home=\E[H, - clear=\E[H\E[2J$<50>, - ind=\ED, - ri=\EM, diff --git a/usr/src/lib/libxcurses/src/terminfo/beehive b/usr/src/lib/libxcurses/src/terminfo/beehive deleted file mode 100644 index 9e98611863..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/beehive +++ /dev/null @@ -1,74 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# beehive: BEEHIVE -# -# Reports are that most of these Beehive entries (except superbee) have not been -# tested and do not work right. rmso is a trouble spot. Be warned. -# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. -# Superbee - f1=escape, f2=^C. -# Note: there are at least 3 kinds of superbees in the world. The sb1 -# holds onto escapes and botches ^C's. The sb2 is the best of the 3. -# The sb3 puts garbage on the bottom of the screen when you scroll with -# the switch in the back set to CRLF instead of AEP. This description -# is tested on the sb2 but should work on all with either switch setting. -# The f1/f2 business is for the sb1 and the xsb can be taken out for -# the other two if you want to try to hit that tiny escape key. -# This description is tricky: being able to use cup depends on there being -# 2048 bytes of memory and the hairy ind string. -# Now that we have separate ind and cud1, I imagine this could be improved. -sb1|superbee|superb|beehive super bee, - tbc=\E3, hts=\E1, is2=\EE, cud1=^J, - cr=^M$<10>, ind=\n$<3>\n$<3>\EA\EK$<3>\ET\ET, bel=^G, - am, cub1=^H, ed=\EJ$<3>, el=\EK$<3>, - clear=\EH\EJ$<3>, cols#80, cup=\EF%p2%3d%p1%3d, cr=\r$<1000>, - lm#25, da, db, xsb, dch1=\EP$<3>, dl1=\EM$<100>, - smso=\E_1, rmso=\E_0, lines#25, - cuf1=\EC, ht=^I, cuu1=\EA, home=\EH, cnorm=\n, - kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, - kcud1=\EB, khome=\EH, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, -# This loses on lines > 80 chars long, use at your own risk -superbeeic|super bee with insert char, - ich1=, smir=\EQ, rmir=\ER, use=superbee, -sb2|sb3|fixed superbee, - xsb@, use=superbee, -# good grief - does this entry make xmc when it doesn't have to? -# look at those spaces in rmso/smso. Seems strange to me. -# However, not having one to test changes on, I'll just leave it be... -bh3m|beehiveIIIm, - if=/usr/lib/tabset/beehive, - cr=^M, cud1=^J, ind=^J, bel=^G, - il1=^S$<160>, am, cub1=^H, ed=^R, el=^P, clear=^E^R, - cols#80, dl1=^Q$<350>, home=^E, lines#20, ll=^E^K, - cuf1=^L, ht=^I, rmso= ^_, smso=^] , cuu1=^K, -microb|microbee|micro bee series, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ, el=\EK, clear=\EE, cols#80, cup=\EF%p1%' '%+%c%p2%' '%+%c, - kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, - kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, - kcud1=\EB, khome=\EH, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, - lines#24, cuf1=\EC, ht=^I, cuu1=\EA, - rmso=\Ed@ , smso= \EdP, rmul=\Ed@, smul=\Ed`, diff --git a/usr/src/lib/libxcurses/src/terminfo/cdc b/usr/src/lib/libxcurses/src/terminfo/cdc deleted file mode 100644 index 02c1232da7..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/cdc +++ /dev/null @@ -1,35 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# cdc: CONTROL DATA -# -cdc456|cdc, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, clear=^Y^X, - cuf1=^L, cuu1=^Z, cub1=^H, cup=\E1%p1%' '%+%c%p2%' '%+%c, home=^Y, - il1=\E\114, dl1=\E\112, el=^V, ed=^X, am, -cdc456tst, - cr=^M, cud1=^J, ind=^J, bel=^G, - lines#24, cols#80, clear=^y^x, cub1=^H, cup=\E1%p1%' '%+%c%p2%' '%+%c, am, diff --git a/usr/src/lib/libxcurses/src/terminfo/concept b/usr/src/lib/libxcurses/src/terminfo/concept deleted file mode 100644 index f49c41e82e..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/concept +++ /dev/null @@ -1,111 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# concept: (HUMAN DESIGNED SYSTEMS) -# -# From vax135!hpk Sat Jun 27 07:41:20 1981 -# Extensive changes to c108 by arpavax:eric Feb 1982 -# -# There seem to be a number of different versions of the C108 PROMS -# (with bug fixes in its Z-80 program). -# The first one that we had would lock out the keyboard of you -# sent lots of short lines (like /usr/dict/words) at 9600 baud. -# Try that on your C108 and see if it sends a ^S when you type it. -# If so, you have an old version of the PROMs. -# The old one also messed up running in with a 132-character line-length. -# You should configure the C108 to send ^S/^Q before running this. -# It is much faster (at 9600 baud) than the c100 because the delays -# are not fixed. -# Old cursor addressing that didn't understand > 95: -# cup=\Ea%p1%' '%+%c%p2%' '%+%c, -c108|c108-8p|concept108-8p|concept 108 w/8 pages, - rmcup=\Ev ^B p\Ep\r\n, use=c108-4p, -c108-4p|concept108-4p|concept 108 w/4 pages, - cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\EU\E F\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E!, - smcup=\EU\Ev 8p\Ep\r, rmcup=\Ev ^A p\Ep\r\n, - il1=\E^R, cub1=^H, ed=\E^C, el=\E^S, clear=\E?\E^E, cols#80, - cup=\Ea%p1%?%p1%{95}%>%t^A%c%{96}%-%;%' '%+%c%p2%?%p2%{95}%>%t^A%c%{96}%-%;%' '%+%c, - dch1=\E^A, dl1=\E^B, rmir=\E\200, eo, smir=\E^P, lines#24, mir, - cuf1=\E=, kbs=^h, ul, cuu1=\E;, db, smul=\EG, rmul=\Eg, - cvvis=\EW, cnorm=\Ew, in, am, xenl, flash=\Ek$<50>\EK, - smkx=\EX, rmkx=\Ex, kcuu1=\E;, - kcud1=\E<, kcub1=\E>, kcuf1=\E=, khome=\E?, - kf1=\E5, kf2=\E6, kf3=\E7, kf4=\E8, kf5=\E9, kf6=\E:, - smso=\ED, rmso=\Ed, dim=\EE, bold=\ED, rev=\ED, sgr0=\Ee\Ed\Eg\Ec, -c108-rv-8p|concept 108 w/8 pages in reverse video, - smcup=\EU\Ev 8p\Ep\r, rmcup=\Ev ^B p\Ep\r\n, use=c108-rv-4p, -c108-rv-4p|concept 108 w/4 pages in reverse video, - flash=\EK\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ek, - is2=\EU\E F\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\47\E\E!, - use=c108-4p, -c108-na|c108-na-8p|concept 108 w/8 pages no arrows, - smkx@, rmkx@, kf7=\E;, kf8=\E<, kf9=\E=, use=c108-8p, -c108-rv-na|c108-rv-na-8p|concept 108 w/8 pages no arrows in rev video, - smkx@, rmkx@, kf7=\E;, kf8=\E<, kf9=\E=, use=c108-rv-8p, -# this needs new frotz in the cup capability for 2-char addrs when > 95.... -c108-w|c108-w-8p|concept 108 w/8 pages in wide mode, - is2=\EU\E F\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E\E", - smcup=\EU\Ev 8^AD\Ep\r, rmcup=\Ev ^A0^AD\Ep\r\n, - cup=\Ea%p1%?%p1%{95}%>%t^A%c%{96}%-%;%' '%+%c%p2%?%p2%{95}%>%t^A%c%{96}%-%;%' '%+%c, - cols#132, use=c108-8p, -# Concepts have only window relative cursor addressing, not screen relative. -# To get it to work right here, smcup/rmcup (which were invented for the -# concept) lock you into a one page window for screen style programs. -# To get out of the one page window, we use a clever trick: -# we set the window size to zero ("\Ev " in rmcup) which the terminal -# recognizes as an error and resets the window to all of memory. -# This trick works on c100 but does not on c108, sigh. -# -# Some tty drivers use cr3 for concept, others use nl3, hence the delays on -# cr and ind below. This padding is only needed at 9600 baud. -# One or the other is commented out depending on local conventions. -# 2 nulls padding on rmcup isn't always enough. 6 works fine. Maybe less -# than 6 but more than 2 will work. -concept100|c100|concept|c104|c100-4p|concept 100, - is2=\EU\Ef\E7\E5\E8\El\ENH\EK\E\200\Eo&\200\Eo\47\E, - cr=$<9>^M, ind=^J, -# cr=^M, ind=^J$<9>, - bel=^G, cud1=^J, smcup=\EU\Ev 8p\Ep\r, rmcup=\Ev $<6>\Ep\r\n, - il1=\E^R$<3*>, am, cub1=^H, ed=\E^C$<16*>, el=\E^U$<16>, clear=^L$<2*>, - cup=\Ea%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\E^A$<16*>, dl1=\E^B$<3*>, - rmir=\E\200, eo, smir=\E^P, in, ip=$<16*>, lines#24, mir, cuf1=\E=, - ht=\t$<8>, kbs=^h, ul, cuu1=\E;, db, smul=\EG, rmul=\Eg, - xenl, cvvis=\EW, cnorm=\Ew, flash=\Ek$<20>\EK, - pb#9600, vt#8, - smul=\EG, rmul=\Eg, smso=\EE\ED, rmso=\Ed\Ee, - dim=\EE, rev=\ED, blink=\EC, prot=\EI, invis=\EH, sgr0=\EN\200, - rep=\Er%p1%c%p2%' '%+%c$<.2*>, smkx=\EX, rmkx=\Ex, - kcuu1=\E;, kcud1=\E<, kcub1=\E>, kcuf1=\E=, khome=\E?, - kf1=\E5, kf2=\E6, kf3=\E7, -c100-rvpp|c100-rv4ppp|c100 with printer port, - is2=\EU\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo!\200\EQ"\EY(^W\Eo\47\E, - use=c100-rv, -c100-rvna|c100-rv4pna|c100 with no arrows, - smkx@, rmkx@, use=c100-rv, -c100-rv|c100-rv4p|concept100-rv|c100 rev video, - is2=\EU\Ef\E7\E5\E8\El\ENH\Ek\E\200\Eo&\200\Eo\47\E, - flash=\EK$<20>\Ek, cvvis@, cnorm@, smso=\EE, rmso=\Ee, use=c100, diff --git a/usr/src/lib/libxcurses/src/terminfo/datamedia b/usr/src/lib/libxcurses/src/terminfo/datamedia deleted file mode 100644 index 9aa66e9b66..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/datamedia +++ /dev/null @@ -1,71 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T -# All Rights Reserved -# -#ident "%Z%%M% %I% %E% SMI" -# -# datamedia: DATAMEDIA -# -dm1520|dm1521|1521|1520|datamedia 1520, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^K, el=^], clear=^L, - cup=^^%p2%' '%+%c%p1%' '%+%c, cols#80, home=^Y, - kcuu1=^_, kcud1=^J, kcub1=^H, kcuf1=^\, khome=^Y, - lines#24, cuf1=^\, cuu1=^_, xenl, ht=^I, -dm2500|datamedia2500|2500|datamedia 2500, - cud1=^J, ind=^J, bel=^G, il1=^P\n^X^]^X^]$<15>, cub1=^H, el=^W, - clear=^^^^\177, cup=^L%p2%'`'%^%c%p1%'`'%^%c, cols#80, - dch1=^P\b^X^]$<10*>, - dl1=^P^Z^X^]$<10*>, smdc=^P, rmdc=^X^], rmir=\377\377^X^]$<10>, home=^B, - ich1=^P^\^X^]$<10*>, smir=^P, lines#24, cuf1=^\, - pad=\377, smso=^N, rmso=^X^], cuu1=^Z, -dm3025|datamedia 3025a, - is2=\EQ\EU\EV, cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\EP\n\EQ$<130>, cub1=^H, ed=\EJ$<2>, el=\EK, clear=\EM$<2>, - cup=\EY%p2%' '%+%c%p1%' '%+%c, cols#80, dch1=\b$<6>, - dl1=\EP\EA\EQ$<130>, smdc=\EP, rmdc=\EQ, rmir=\EQ, home=\EH, - smir=\EP, ip=, lines#24, cuf1=\EC, ht=^I, - smso=\EOA, rmso=\EO@, cuu1=\EA, -3045|dm3045|datamedia 3045a, - is2=\EU\EV, cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ$<2>, el=\EK, clear=\EM$<2>, cup=\EY%p2%' '%+%c%p1%' '%+%c, - cols#80, dch1=\EB$<6>, smdc=, rmdc=, rmir=\EP, home=\EH, - ich1=, smir=\EP, ip=$<6>, - kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, - kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r, - khome=\EH, kcuu1=\EA, kcuf1=\EC, lines#24, cuf1=\EC, pad=\177, ht=^I, - eo, ul, cuu1=\EA, xenl, -# dt80/1 is2 a vt100 lookalike, but it doesn't seem to need any padding. -dt80|dmdt80|dm80|datamedia dt80/1, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\E[J, el=\E[K, clear=\E[2J\E[H, - cup=\E[%i%p1%d;%p2%dH, home=\E[H, cuf1=\E[C, ri=\EM, - smso=\E[7m, rmso=\E[m, cuu1=\E[A, smul=\E[4m, rmul=\E[m, use=vt100, -# except in 132 column mode, where it needs a little padding. -# This is2 still less padding than the vt100, and you can always turn on -# the ^S/^Q handshaking, smso you can use vt100 flavors for things like -# reverse video. -dt80-w|dmdt80-w|dm80-w|datamedia dt80/1 in 132 char mode, - cr=^M, cud1=^J, ind=^J, bel=^G, ed=\E[0J$<20>, cols#132, el=\E[0K$<20>, - cup=\E[%i%p1%d;%p2%dH$<5>, clear=\E[H\E[2J$<50>, cuu1=\E[A$<5>, use=dmdt80, diff --git a/usr/src/lib/libxcurses/src/terminfo/dec b/usr/src/lib/libxcurses/src/terminfo/dec deleted file mode 100644 index ce5770f9d6..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/dec +++ /dev/null @@ -1,116 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# dec: DEC (DIGITAL EQUIPMENT CORPORATION) -# -# Note that xenl glitch in vt100 is not quite the same as concept, -# since the cursor is left in a different position while in the -# weird state (concept at beginning of next line, vt100 at end -# of this line) so all versions of vi before 3.7 don't handle -# xenl right on vt100. -# I assume you have smooth scroll off or are at a slow enough baud -# rate that it doesn't matter (1200? or less). Also this assumes -# that you set auto-nl to "on", if you set it off use vt100-nam below. -# -# Since there are two things here called vt100, the installer can make -# a local decision to make either one standard "vt100" by including -# it in the list of terminals in reorder, since the first vt100 in -# /etc/terminfo is the one that it will find. The choice is between -# nam (no automatic margins) and am (automatic margins), as determined -# by the wrapline switch (group 3 #2). I presonally recommend turning -# on the bit and using vt100-am, since having stuff hammer on the right -# margin is sort of hard to read. However, the xenl glitch does not occur -# if you turn the bit off. -# -# I am unsure about the padding requirements listed here. I have heard -# a claim that the vt100 needs no padding. It's possible that it needs -# padding only if the xon/xoff switch is off. For UNIX, this switch -# should probably be on. -# -# The vt100 uses rs2 and rf rather than is2/tbc/hts because the tab settings -# are in non-volatile memory and don't need to be reset upon login. -# Also setting the number of columns glitches the screen annoyingly. -# You can type "reset" to get them set. -vt100-mc|vt100 without advanced video option, - sgr@, smso=\E[7m , rmso=\E[m , xmc#1, - smul@, rmul@, bold@, rev@, blink@, sgr0@, use=vt100, -vt100|vt100-am|dec vt100, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, - clear=\E[;H\E[2J$<50>, cub1=^H, am, cup=\E[%i%p1%d;%p2%dH$<5>, - cuf1=\E[C$<2>, cuu1=\E[A$<2>, el=\E[K$<3>, ed=\E[J$<50>, - smso=\E[7m$<2>, rmso=\E[m$<2>, smul=\E[4m$<2>, rmul=\E[m$<2>, - bold=\E[1m$<2>, rev=\E[7m$<2>, blink=\E[5m$<2>, sgr0=\E[m$<2>, - sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, smkx=\E[?1h\E=, rmkx=\E[?1l\E>, - rf=/usr/lib/tabset/vt100, home=\E[H, khome=\E[H, - kcuu1=\EOA, kcud1=\EOB, kcuf1=\EOC, kcub1=\EOD, kbs=^H, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ht=^I, ri=\EM$<5>, - vt#3, xenl, xon, sc=\E7, rc=\E8, csr=\E[%i%p1%d;%p2%dr, -vt100-nam|vt100 w/no am, - am@, xenl@, use=vt100-am, -vt100-23|vt100 for use with sysline, - lines#23, is2=\E[1;23r\E[23;1H, - hs, eslok, tsl=\E7\E[24;%p1%dH\E[1K, fsl=\E8, use=vt100-am, -gt42|dec gt42, - cr=^M, cud1=^J, bel=^G, - cub1=^H, cols#72, lines#40, os, -vt132|vt132, - il1=\E[L$<99>, dl1=\E[M$<99>, ip=$<7>, dch1=\E[P$<7>, rmir=\E[4l, - smir=\E[4h, xenl, ind=^J$<30>, use=vt100, -gt40|dec gt40, - cr=^M, cud1=^J, bel=^G, - cub1=^H, cols#72, lines#30, os, -vt50|dec vt50, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, clear=\EH\EJ, - cols#80, lines#12, cuf1=\EC, ht=^I, cuu1=\EA, -dw1|decwriter I, - cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, cols#72, hc, os, -vt50h|dec vt50h, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\EH\EJ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, lines#12, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, -vt100-s|dec vt100 132 cols 14 lines (w/o advanced video option), - lines#14, use=vt100-w, -vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video), - cols#132, lines#24, rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am, -vt100-w-nam|dec vt100 132 cols (w/advanced video), - cols#132, lines#24, rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, vt@, use=vt100-nam, -vt52|dec vt52, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, - clear=\EH\EJ, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, - kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, kbs=^H, -# The dw3 (and dw4?) supposedly have some fancy stuff, like settable tabs -# and column addressing. But I don't know the details, and nobody seems -# to use them except for consoles so it has never really mattered. -dw2|dw3|decwriter|dw|decwriter II, - cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#132, hc, os, -# From cbosg!ucbvax!G:tut Thu Sep 24 22:10:46 1981 -dw4|decwriter IV, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#132, hc, os, am, - ht=^I, is2=\Ec, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, kbs=^H, diff --git a/usr/src/lib/libxcurses/src/terminfo/diablo b/usr/src/lib/libxcurses/src/terminfo/diablo deleted file mode 100644 index e0d93c6f80..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/diablo +++ /dev/null @@ -1,79 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# diablo: DAISY WHEEL PRINTERS -# -# The A manufacturer represents Diablo, DTC, Xerox, Qume, and other Daisy -# wheel terminals until such time as terminfo distinguishes between them -# enough to justify separate codes. -1620|1640|450|diablo 1620, - cr=^M, cud1=^J, ind=^J, bel=^G, tbc=\E2, hts=\E1, hpa=\E\t%i%p1%c, kbs=^H, - cub1=^H, cols#132, ff=^L, hc, hu=\EU, hd=\ED, os, ht=^I, cuu1=\E\n, -1620-m8|1640-m8|diablo 1620 w/8 column left margin, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#124, is2=\r \E9, use=1620, -# DTC 382 with VDU. Has no ed so we fake it with el. Standout works but -# won't go away without dynamite. The terminal has tabs, but I'm getting -# tired of fighting the braindamage. If no tab is set or the terminal's -# in a bad mood, it glitches the screen around all of memory. Note that -# return puts a blank ("a return character") in the space the cursor was -# at, so we use ^P return (and thus ^P newline for newline). Note also -# that if you turn off tabs and let Unix expand tabs, curses won't work -# (current version) because it doesn't turn off this bit, and cursor -# addressing sends a tab for row/column 9. What a losing terminal! I -# have been unable to get tabs set in all 96 lines - it always leaves at -# least one line with no tabs in it, and once you tab through that line, -# it completely weirds out. -dtc|mc0|dtc382|382, - .if=/usr/lib/tabset/dtcvdu, - bel=^G, cud1=^J, ind=^J, il1=^P^Z, am, cub1=^H, - cols#80, el=^P^U, clear=^P^]$<20>, cup=^P^Q%p2%c%p1%c, dch1=^X, - dl1=^P^S, rmir=^Pi, home=^P^R, smir=^PI, cnorm=^Pb, cvvis=^PB, pad=\177, - rmcup=^P^]$<20>, lines#24, cuf1=^PR, .rmso=^P \200, .smso=^P \002^PF, - smul=^P \020, rmul=^P \200, cuu1=^P^L, xhp, lm#96, - da, db, cr=^P^M, ed=^P^U^P^S^P^S, -dtc300s|300|300s|dtc 300s, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#132, ff=^L, hc, hu=\EH, hd=\Eh, os, ht=^I, cuu1=^Z, -gsi, - cub1=^H, cols#132, hc, hd=\Eh, hu=\EH, os, ht=^I, cuu1=^Z, - cr=^M, cud1=^J, ind=^J, bel=^G, -aj830|aj832|aj|anderson jacobson, - cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, hc, hd=\E9, hu=\E8, os, cuu1=\E7, -# From cbosg!ucbvax!pur-ee!cincy!chris Thu Aug 20 09:09:18 1981 -# This is incomplete, but it's a start. -5520|nec|spinwriter|nec 5520, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#132, ff=^L, hc, hu=\E]s\E9\E]W, hd=\E]s\n\E]W, - os, ht=^I, cuu1=\E9, -qume5|qume|Qume Sprint 5, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, cub1=^H, cols#80, ff=^L, hc, hu=\EH, hd=\Eh, os, ht=^I, cuu1=^Z, -# I suspect the xerox1720 is the same as the diablo 1620. -x1720|x1700|1700|x1750|xerox 1720, - cols#132, cub1=^H, ff=^L, hc, os, ht=^I, - cr=^M, cud1=^J, ind=^J, bel=^G, - tbc=\E2, hts=\E1, diff --git a/usr/src/lib/libxcurses/src/terminfo/general b/usr/src/lib/libxcurses/src/terminfo/general deleted file mode 100644 index 4d04bc7513..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/general +++ /dev/null @@ -1,51 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# general: GENERAL TERMINAL (formerly INFOTON) -# -# Infoton is now called General Terminal Corp. -# gt100 sounds like something DEC would come out with. Lets hope they don't. -i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100), - cr=^M, cud1=^J, ind=^J, bel=^G, clear=^L, ed=\EJ, el=\EK, - lines#24, cols#80, il1=\EL, dl1=\EM, cuu1=\EA, cuf1=\EC, - home=\EH, cup=\Ef%p2%' '%+%c%p1%' '%+%c, - flash=\Eb\Ea, am, cub1=^H, smso=\Eb, rmso=\Ea, -# Looks like an ANSI terminal, but what a kludge for dch1! I bet smdc/rmdc -# could be used even if the terminal is really that braindamaged. -# But you would think being ANSI they would do \E[P right. Hmm. -i400|400|infoton 400, - cr=^M, cud1=^J, ind=^J, bel=^G, if=/usr/lib/tabset/infoton_tabs, - il1=\E[L, am, cub1=^H, el=\E[N, clear=\E[2J, cup=\E[%i%p1%3d;%p2%3dH, - cols#80, dl1=\E[M, lines#25, cuf1=\E[C, cuu1=\E[A, - smir=\E[4h\E[2Q, rmir=\E[4l\E[0Q, dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, -addrinfo, - cr=^M, cud1=^J, ind=^J, bel=^G, - lines#24, cols#80, clear=^L, home=^H, cuf1=^Y, ed=^K, - cuu1=^\, am, cub1=^Z, cup=\037%i%p1%{1}%-%c%p2%{1}%-%c, ll=^H^\, -# No, I don't know what this is. But KAS happens to be Kurt Shoens initials. -infotonKAS, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^Z, - ed=^K, clear=^L, cols#80, lines#24, cuf1=^Y, cuu1=^\, ll=^H^\, diff --git a/usr/src/lib/libxcurses/src/terminfo/hazeltine b/usr/src/lib/libxcurses/src/terminfo/hazeltine deleted file mode 100644 index 1461a3841f..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/hazeltine +++ /dev/null @@ -1,67 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# hazeltine: HAZELTINE -# -# Since cuf1 is blank, when you want to erase something you -# are out of luck. You will have to do ^L's a lot to -# redraw the screen. h1000 is untested. It doesn't work in -# vi - this terminal is too dumb for even vi. (The code is -# there but it isn't debugged for this case.) -h1000|hazeltine 1000, - cub1=^H, home=^K, clear=^L, cuf1= , cols#80, lines#12, cr=^M, cud1=^J, ind=^J, bel=^G, -# Note: the h1552 appears to be the first Hazeltine terminal which -# is not braindamaged. It has tildes and backprimes and everything! -# Be sure the auto lf/cr switch is set to cr. -h1552|hazeltine 1552, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, dl1=\EO, - kf1=\EP, lf1=blue, kf2=\EQ, lf2=red, kf3=\ER, lf3=green, use=vt52, -h1552rv|hazeltine 1552 reverse video, - cr=^M, cud1=^J, ind=^J, bel=^G, - smso=\ES, rmso=\ET, use=h1552, -# From cbosg!ucbvax!pur-ee!cincy!chris Thu Aug 20 09:09:18 1981 -h1420|hazeltine 1420, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, am, lines#24, cols#80, - il1=\E^Z, dl1=\E^S, ed=\E^X, clear=\E\034, cuu1=\E^L, - cuf1=^P, el=\E^O, ht=^N, cup=\E^Q%p2%c%p1%' '%+%c, smso=\E\037, rmso=\E^Y, -h1500|hazeltine 1500, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=~^Z$<40>, am, - cub1=^H, ed=~^X$<10>, el=~^O, clear=~^\, cup=~^Q%p2%c%p1%c, cols#80, - dl1=~^S$<40>, cud1=~^K, lines#24, cuf1=^P, .rmso=~^_, .smso=~^Y, cuu1=~^L, -# h1510 assumed to be in sane escape mode. Else use h1500. -h1510|hazeltine 1510, - cr=^M, cud1=^J, ind=^J, bel=^G, - il1=\E^Z, am, cub1=^H, ed=\E^X, el=\E^O, clear=\E^\, cup=\E^Q%p2%c%p1%c, cols#80, - dl1=\E^S, cud1=\E^K, lines#24, cuf1=^P, .rmso=\E^_, .smso=\E^Y, cuu1=\E^L, -h1520|hazeltine 1520, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=~^Z, am, cub1=^H, - ed=~^X, el=~^O, clear=~\034, cup=~^Q%p2%c%p1%c$<1>, cols#80, - dl1=~^S, cud1=~^K, hz, lines#24, cuf1=^P, rmso=~^Y, smso=~\037, cuu1=~^L, home=~^R, -# Note: h2000 won't work well because of a clash between upper case and ~'s. -h2000|hazeltine 2000, - cud1=^J, ind=^J, bel=^G, - il1=~^z$<6>, am, cub1=^H, clear=~^\$<6>, cup=~^q%p2%c%p1%c, cols#74, - dl1=~^s$<6>, home=~^r, lines#27, pad=\177, diff --git a/usr/src/lib/libxcurses/src/terminfo/header b/usr/src/lib/libxcurses/src/terminfo/header deleted file mode 100644 index 4f2ef6a7b9..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/header +++ /dev/null @@ -1,93 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright 1996 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# ------------------------ -# -# Terminfo source file -# Mark Horton, U.C. Berkeley, Bell Telephone Laboratories -# -# This file describes capabilities of various terminals, as needed by -# software such as screen editors. It does not attempt to describe -# printing terminals very well, nor graphics terminals. Someday. -# See terminfo(5) in the Unix Programmers Manual for documentation. -# -# Conventions: First entry is two chars, first char is manufacturer, -# second char is canonical name for model or mode. -# Third entry is the one the editor will print with "set" command. -# Last entry is verbose description. -# Others are mnemonic synonyms for the terminal. -# -# Terminal naming conventions: -# Terminal names look like <manufacturer> <model> - <modes/options> -# Certain abbreviations (e.g. c100 for concept100) are also allowed -# for upward compatibility. The part to the left of the dash, if a -# dash is present, describes the particular hardware of the terminal. -# The part to the right can be used for flags indicating special ROM's, -# extra memory, particular terminal modes, or user preferences. -# All names are always in lower case, for consistency in typing. -# Because of file naming restrictions, terminal names should not contain -# period or slash, in fact, entirely alphanumeric characters plus dash are -# highly recommended. These restrictions do not apply to the verbose name. -# -# The following are conventionally used flags: -# rv Terminal in reverse video mode (black on white) -# 2p Has two pages of memory. Likewise 4p, 8p, etc. -# w Wide - in 132 column mode. -# pp Has a printer port which is used. -# na No arrow keys - terminfo ignores arrow keys which are -# actually there on the terminal, so the user can use -# the arrow keys locally. -# -# There are some cases where the same name is used for two different -# terminals, e.g. "teleray" or "2621" or "vt100". In these cases, -# if a site has one of these, they should choose a local default and -# bring that terminal to the front in the reorder script. This works -# because tgetent picks the first match in /etc/terminfo. -# The list of names intentionally duplicated is: -# 2621, c108, dtc, hp2621, teleray, tvi, vt100. -# -# If you absolutely MUST check for a specific terminal (this is discouraged) -# check for the 2nd entry (the canonical form) since all other codes are -# subject to change. The two letter codes are there for version 6 and are -# EXTREMELY subject to change, or even to go away if version 6 becomes for -# all practical purposes obsolete. We would much rather put in special -# capabilities to describe your terminal rather than having you key on the -# name. -# -# Special manufacturer codes: -# A: hardcopy daisy wheel terminals -# M: Misc. (with only a few terminals) -# q: Homemade -# s: special (dialup, etc.) -# -# Comments in this file begin with # - they cannot appear in the middle -# of a terminfo entry. Individual entries are commented out by -# placing a period between the colon and the capability name. -# -# This file is to be installed with an editor script (reorder) -# that moves the most common terminals to the front of the file. -# If the source is not available, it can be constructed by sorting -# the above entries by the 2 char initial code. diff --git a/usr/src/lib/libxcurses/src/terminfo/heath b/usr/src/lib/libxcurses/src/terminfo/heath deleted file mode 100644 index a3fcb61540..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/heath +++ /dev/null @@ -1,60 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# heath: HEATHKIT (ZENITH) -# -h19-a|heath-ansi|heathkit-a|heathkit h19 ansi mode, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E[1L$<1*>, am, cub1=^H, ed=\E[J, - el=\E[K, clear=\E[2J, cup=\E[%i%p1%2d;%p2%2dH, cols#80, - dch1=\E[1P, dl1=\E[1M$<1*>, cud1=\E[1B, - rmir=\E[4l, home=\E[H, smir=\E[4h, lines#24, mir, - cuf1=\E[1C, rmacs=\E[10m, smacs=\E[11m, msgr, ht=^I, - rmso=\E[0m, smso=\E[7m, cuu1=\E[1A, cvvis=\E[>4h, cnorm=\E[>4l, - kbs=^h, kcuu1=\E[1A, kcud1=\E[1B, kcub1=\E[1D, kcuf1=\E[1C, - khome=\E[H, - kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, lf6=blue, - lf7=red, lf8=white, kf6=\EOP, kf7=\EOQ, kf8=\EOR, - ri=\EM, is2=\E<\E[>1;2;3;4;5;6;7;8;9l\E[0m\E[11m\E[?7h, -h19-bs|heathkit w/keypad shifted, - smkx=\Et, rmkx=\Eu, use=h19-b, -h19-smul|heathkit w/keypad shifted/underscore cursor, - smkx=\Et, rmkx=\Eu, use=h19-u, -h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<1*>, am, cub1=^H, - ed=\EJ, el=\EK, clear=\EE, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\EN, dl1=\EM$<1*>, cud1=\EB, rmir=\EO, home=\EH, smir=\E@, - lines#24, mir, cuf1=\EC, rmacs=\EF, smacs=\EG, msgr, ht=^I, - ri=\EI, rmso=\Eq, smso=\Ep, cuu1=\EA, cvvis=\Ex4, cnorm=\Ey4, - kbs=^h, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, - kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, - lf6=blue, lf7=red, lf8=white, kf6=\EP, kf7=\EQ, kf8=\ER, - hs, eslok, tsl=\Ej\Ex5\EY8%p1%' '%+%c\Eo\Eo, fsl=\Ek\Ey5, -h19-u|heathkit with underscore cursor, - cvvis@, cnorm@, use=h19-b, -# This still doesn't work right - something funny is going on with return -# and linefeed in the reach program. -reach|h89|h89 running reach, - cr@, cud1=\EB, is2=\Ey3\Ev, use=h19-b, diff --git a/usr/src/lib/libxcurses/src/terminfo/homebrew b/usr/src/lib/libxcurses/src/terminfo/homebrew deleted file mode 100644 index e3897686b1..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/homebrew +++ /dev/null @@ -1,69 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# homebrew: HOME MADE TERMINALS -# -bc|bill croft homebrew, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z, cols#96, home=^^, lines#72, - cuf1=^L, cuu1=^K, flash=, -nucterm|rayterm|nuc|NUC homebrew, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, clear=^L$<1>, - lines#24, cols#80, cuf1=^C, cuu1=^N, home=^B, ll=^K, el=^A, ed=^E, -carlock|klc, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^E, am, el=^U, clear=^Z$<100>, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\177, dl1=^D, ed=, - rmir=^T, home=^^, smir=^T, lines#24, cuf1=^L, rmso=^V, smso=^V, - cuu1=^K, flash=\EV\EV, -ex3000, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, home=^Q, -exidy|exidy2500|exidy sorcerer rmacs dm2500, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^P^J^X, am, cub1=^H, - el=^W, clear=^^, cup=^L%p2%'`'%^%c%p1%'`'%^%c, cols#64, - dch1=\b, dl1=^P^Z^X, smdc=^P, ed=^X, rmir=^X, home=^B, ich1=^\, - smir=^P, lines#30, cuf1=^\, ht=^I, smso=^N, rmso=^X, cuu1=^Z, -# This came from the comp ctr who got it from some user. Smart indeed! -sexidy|exidy smart, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#64, clear=^L, home=^Q, - cuf1=^S, cuu1=^W, cub1=^H, cub1=^A, kcud1=^S, -# netx and xitex are almost identical, except for the padding -# on clear screen. Hmm. -netx|netronics, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=^F^E$<2000>, el=^E$<1600>, - clear=^L$<466>, cup=\E=%p1%'@'%+%c%p2%'@'%+%c, cols#64, home=^D, - lines#16, cuf1=\E+@A, pad=\200, ri=\E=@@^K, cuu1=^K, -xitex|xitex sct-100, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=^F^E$<2000>, el=^E$<1600>, - clear=^L$<400>, cup=\E=%p1%'@'%+%c%p2%'@'%+%c, cols#64, home=^D, - lines#16, cuf1=\E+@A, pad=\200, ri=\E=@@^K, cuu1=^K, -ubell|ubellchar, - if=/usr/lib/tabset/ubell, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ht=^I, el=\Ed, - clear=^Z, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, cuf1=^L, - cuu1=^K, home=^^, -ttywilliams, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#12, - cub1=^Y, cud1=^K, cuu1=^Z, clear=^^, el=^_, am, home=^], cuf1=^X, diff --git a/usr/src/lib/libxcurses/src/terminfo/hp b/usr/src/lib/libxcurses/src/terminfo/hp deleted file mode 100644 index 698d4c7f34..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/hp +++ /dev/null @@ -1,153 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# hp: HEWLETT PACKARD -# -# Note: no "home" on HP's since that homes to top of memory, not screen. -# Due to severe 2621 braindamage, the only way to get the arrow keys to -# transmit anything at all is to turn on the function key labels -# (f1-f8) with smkx, and even then the poor user has to hold down shift! -# The default 2621 turns off the labels except when it has to to enable -# the function keys. If your installation prefers labels on all the time, -# or off all the time (at the "expense" of the function keys) move the -# 2621-nl or 2621-wl labels to the front using reorder. -# Note: there are newer ROM's for 2621's that allow you to set strap A -# so the regular arrow keys xmit \EA, etc, as with the 2645. However, -# even with this strap set, the terminal stops xmitting if you reset it, -# until you unset and reset the strap! Since there is no way to set/unset -# the strap with an escape sequence, we don't use it in the default. -# If you like, you can use 2621-ba (braindamaged arrow keys). -hp2621-ba|2621-ba|2621 w/new rom and strap A set, - smkx@, rmkx@, - kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\Eh, use=hp2621, -# 2621 with labels on all the time - normal outside vi, function inside vi. -hp2621-wl|2621-wl|hp 2621 w/labels, - is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl, -# 2621 with function labels. Most of the time they are off, -# but inside vi, the function key labels appear. You have to -# hold down shift to get them to xmit. -hp2621-fl|2621|hp2621|hp2621a|hp2621p|2621a|2621p|2621-fl|2621A|2621P|hp 2621, - is2=\E&j@\r, cbt=\Ei, cup=\E&a%p2%dc%p1%dY, - dch1=\EP$<2>, ip=$<2>, pb#19200, - smso=\E&dD, rmso=\E&d@, smul=\E&dD, rmul=\E&d@, sgr0=\E&d@, xhp@, - khome=\Ep\r, kcuu1=\Et\r, kcub1=\Eu\r, kcuf1=\Ev\r, kcud1=\Ew\r, - kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, - kf7=\Ev\r, kf8=\Ew\r, smkx=\E&jB, rmkx=\E&j@, ht=^I$<2>, xon, use=hp, -# 2621k45: untested -2621k45|hp2621k45|k45|hp 2621 with 45 keyboard, - kbs=^H, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\Eh, - smkx=\E&s1A, rmkx=\E&s0A, use=2621, -# This terminal should be used at 4800 baud or less. It needs padding for -# plain characters at 9600, I guessed at an appropriate cr delay. -# It really wants ^E/^F handshaking, but that doesn't work well even if -# you write software to support it. -2645|hp2645|hp45|hp 264x series, - dim=\E&dH, rev=\E&dB, smul=\E&dD, blink=\E&dA, sgr0=\E&d@, - sgr=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%?%p5%t%'H'%|%;%?%p6%t%'B'%|%;%c, - kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\Eh, - smkx=\E&s1A, rmkx=\E&s0A, knp=\EU, kpp=\EV, kri=\ET, kind=\ES, - kil1=\EL, kdl1=\EM, kich1=\EQ, kdch1=\EP, - kel=\EK, ked=\EJ, krmir=\ER, pb#9600, cr=^M$<20>, use=hp, -hp|hewlett-packard, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL, am, cub1=^H, - ed=\EJ, el=\EK, hpa=\E&a%p1%dC, clear=\EH\EJ, - cup=\E&a%p2%dc%p1%dY$<6>, cols#80, vpa=\E&a%p1%dY, lm#0, da, db, - dch1=\EP, dl1=\EM, rmir=\ER, smir=\EQ, kbs=^H, lines#24, mir, - cuf1=\EC, ht=^I, rmso=\E&d@, smso=\E&dJ, - smul=\E&dD, rmul=\E&d@, cuu1=\EA, xhp, vt#6, -hp-0|hewlett-packard for testing of curses and the like, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cuf1=\EC, - cub1=^H, clear=\EH\EJ, home=\E&a0c0Y, cols#80, lines#24, -hp-1, - ht=^I, cuu1=\EA, use=hp-0, -hp-2, - cup=\E&a%p2%dc%p1%dY$<6>, use=hp-1, -hp-3, - ed=\EJ, el=\EK, use=hp-2, -# This entry does not use any of the fancy windowing stuff of the 2626. -# Indeed, terminfo does not yet handle such stuff. Since changing any window -# clears memory, it is probably not possible to use this for screen opt. -# ed is incredibly slow most of the time - I am guessing at the exact padding. -# Since the terminal uses xoff/xon this is intended only for cost computation, -# so that the terminal will prefer el or even dl1 which is probably faster! -hp2626|hp2626a|hp2626p|2626|2626a|2626p|2626A|2626P|hp 2626, - dch1=\EP$<2>, ip=$<2>, rmso=\E&d@, smso=\E&dB, ed=\EJ$<500>, - rev=\E&dB, smul=\E&dD, blink=\E&dA, invis=\E&dS, sgr0=\E&d@, - rmul=\E&d@, - sgr=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%c, - khome=\Eh, kcuu1=\EA, kcub1=\ED, kcuf1=\EC, kcud1=\EB, - smkx=\E&s1A, rmkx=\E&s0A, knp=\EU, kpp=\EV, kri=\ET, - kind=\ES, kil1=\EL, kdl1=\EM, kich1=\EQ, kdch1=\EP, - kel=\EK, ked=\EJ, krmir=\ER, - ind=\ES, ht=^I$<2>, xhp, use=2621, -# This entry is for sysline. It allocates a 23 line window with a 115 line -# workspace for regular use, and a 1 line window for the status line. -# This assumes port 2 is being used. -# Turn off horizontal line, Create ws #1 with 115 lines, -# Create ws #2 with 1 line, Create window #1 lines 1-23, -# Create window #2 lines 24-24, Attach cursor to workspace #1. -# Note that this clears the tabs so it must be done by tset before -# it sets the tabs. -2626-23|hp 2626 using only 23 lines, - tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, - fsl=\E&d@\E&w7f2p1I\E&w4f1I, eslok, hs, - is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I - \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r, - lines#23, use=2626, -# Force terminal back to 24 lines after being 23. -2626-24|hp 2626 using all 24 lines, - is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I - \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r, - use=2626, -# Various entries useful for small windows on 2626. -2626-12, - lines#12, use=2626, -2626-12x40, - cols#40, lines#12, use=2626, -2626-x40, - cols#40, use=2626, -2626-11, - lines#11, use=2626-23, -# cD is a pain - but it only screws up at 9600 baud. -# You should use this terminal at 4800 baud or less. -hp2648|hp2648a|2648a|2648A|2648|HP 2648a graphics terminal, - clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>, - dch1=\EP$<7>, ip=$<5>, use=2645, -# 2640a doesn't have the Y cursor addressing feature, and C is memory relative -# instead of screen relative, as we need. -2640|hp2640a|2640a|hp 2640a, - cup@, smkx@, rmkx@, use=2645, -2640b|hp2640b|2644a|hp2644a|hp 264x series, - smkx@, rmkx@, use=2645, -# 2621 using all 48 lines of memory, only 24 visible at any time. Untested. -2621-48|48 line 2621, - lines#48, home=\EH, cup=\E&a%p2%dc%p1%dR, use=2621, -# 2621 with no labels ever. Also prevents vi delays on escape. -hp2621-nl|2621-nl|hp 2621 with no labels, - smkx@, rmkx@, khome@, kcuu1@, kcub1@, kcuf1@, kcud1@, use=hp2621-fl, -# Needed for UCB ARPAVAX console, since lsi-11 expands tabs (wrong). -hp2621-nt|2621-nt|hp 2621 w/no tabs, - ht@, use=hp2621, diff --git a/usr/src/lib/libxcurses/src/terminfo/hp2392a b/usr/src/lib/libxcurses/src/terminfo/hp2392a deleted file mode 100644 index 52168f739d..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/hp2392a +++ /dev/null @@ -1,148 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -2392|hp2392|hp2392a|HP 2392a Terminal, -# -# Terminal initialization. -# -# Make sure that we're in character mode, no auto line feed, disable -# system function key labels, and set tab-stops. See "tput init". -# - is2=\E&k0B\E&k0A\E&j@, - if=/usr/lib/tabset/hptabs, - - .msgr, - am, - km, - da, - db, - .mir, - cols#80, - lines#24, - lm#0, - vt#6, -# -# Margins. -# - smgl=\E4, - smgr=\E5, - mgc=\E9, -# -# Tabs. -# -# The use of ht and cbt is not recommend, unless it is possible to guarantee -# that tab-stops are set correctly, since there are no hardware tabs. On an -# hp2392a terminal if there are no tab-stops, then <tab> behaves like a -# <newline>. -# - .cbt=\Ei, - .ht=\t, - tbc=\E3, - hts=\E1, - - bel=\a, - cr=\r, -# -# Cursor motion. -# -# Use screen relative cursor motion; not absolute or memory relative. -# - hpa=\E&a%p1%dC, - vpa=\E&a%p1%dY, - smcup=\E&s1A, - cup=\E&a%p2%dc%p1%dY, - rmcup=\E&s0A, - cud1=\EB, - cub1=\b, - cuf1=\EC, - cuu1=\EA, - ind=\n, -# -# home and ll position the cursor at the top and bottom of display memory -# rather than just the screen. This means we can't use them. -# - .home=\Eh, - .ll=\EF, -# -# Edit operations. -# - clear=\E&a0c0Y\EJ, - dch1=\EP, - dl1=\EM, - el=\EK, - ed=\EJ, - il1=\EL, - smir=\EQ, - rmir=\ER, - ip=$<2>, -# -# Attributes. -# -# Standout = dim inverse -# - xhp, - blink=\E&dA, - dim=\E&dH, - rev=\E&dB, - smso=\E&dJ, - smul=\E&dD, - rmso=\E&d@, - rmul=\E&d@, - sgr=\E&d%'@'%?%p1%t%'J'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%?%p5%t%'H'%|%;%c%p9%t^N%e^O%;, - sgr0=\E&d@, -# -# Keys. -# -# NOTE if the user changes the function key transmit sequences on the -# terminal from the default values expected for kf1 to kf8 (see below), -# then the function keys will never be recognised and mapped to their -# respective KEY_F(1) to KEY_F(8) constants in Curses (and Vi). -# - kbs=\b, - kcud1=\EB, - khome=\Eh, - kll=\EF, - kcub1=\ED, - kcuf1=\EC, - kcuu1=\EA, - kcbt=\Ei, - knp=\EU, - kpp=\EV, - kdl1=\EM, - kdch1=\EP, - kil1=\EL, - kich1=\EQ, - kclr=\EJ, - kel=\EK, - kf1=\Ep, - kf2=\Eq, - kf3=\Er, - kf4=\Es, - kf5=\Et, - kf6=\Eu, - kf7=\Ev, - kf8=\Ew, - diff --git a/usr/src/lib/libxcurses/src/terminfo/ibm b/usr/src/lib/libxcurses/src/terminfo/ibm deleted file mode 100644 index 4839fa4013..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/ibm +++ /dev/null @@ -1,59 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# ibm: IBM, INTERACTIVE SYSTEMS, and INTECOLOR -# -# Some of these should go in the misc category, IBM, ISC, and intecolor can't -# all have I. I will wait to see who comes out with more terminals. -# These compucolors appear similar, but they at least have different -# sized screens. I don't know what's going on here. -# There is further confusion since intecolor seems to call themselves isc too. -8001|isc8001|compucolor|intecolor, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EU, am, cub1=^Z, - clear=^L$<3*>, cup=^C%p2%c%p1%c, cols#80, rmdc=\EQ, smdc=\EQ, ed=\EF, - dch1=\177, dl1=\EV, rmir=\EF, smir=\EQ, lines#40, cuf1=^Y$<1>, - ht=\t$<8>, cuu1=^\, home=^H$<1>, -compucolor2|compucolorii, - cr=^M, cud1=^J, ind=^J, bel=^G, - ht=^I, am, cup=^C%p2%c%p1%c, cub1=^Z, lines#32, cols#64, - clear=^L, home=^H, cuf1=^Y, cuu1=^\, -# From cithep!eric Wed Sep 16 08:06:44 1981 -intext|Interactive Systems Corporation modified owl 1200, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\020$<5.5*>, am, cub1=^_, - cub1=^H, cbt=^Y, ed=\026J$<5.5*>, el=^K\160^R, - clear=\014$<132>, cup=\017%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\022$<5.5*>, dl1=\021$<5.5*>, rmir=\026\074, - smir=\026\073, ip=$<5.5*>, lines#24, cuf1=\036, ht=^I, - cuu1=\034, rmso=^V# , xmc#1, smso=^V$\054, - kcub1=^_, kcud1=^J, kcuf1=^^, kcuu1=\034, kbs=^H, khome=^Z, - kf1=^VA\r, kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, - kf6=^VF\r, kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, kf0=^VJ\r, -ibm|ibm3101|3101|i3101|IBM 3101-10, - .if=/usr/lib/tabset/3101, - cr=^M, cud1=^J, ind=^J, bel=^G, tbc=\EH, hts=\E0, am, cub1=^H, - clear=\EK, lines#24, cols#80, cuf1=\EC, cuu1=\EA, ed=\EJ, el=\EI, - kcud1=\EB, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, - home=\EH, cup=\EY%p1%' '%+%c%p2%' '%+%c, ht=^I, diff --git a/usr/src/lib/libxcurses/src/terminfo/kimtron b/usr/src/lib/libxcurses/src/terminfo/kimtron deleted file mode 100644 index 7196b4e7cd..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/kimtron +++ /dev/null @@ -1,77 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# - -# -# Kimtron KT-7 with VT-100 emulation ROMs. -# This is a hack of the VC2100 VT-100 emulation. -# -kt7|kt7io|Kimtron KT-7, - cols#80, lines#24, am, bw, xon, - cr=^M, bel=^G, -# Status line - hs, dsl=\E[0;0z -# Cursor one position - cuu1=\E[A, cud1=^J, cuf1=\E[C, cub1=^H, -# Cursor multiple positions - cuu=\E[%p1%dA, cud=\E[%p1%dB, cuf=\E[%p1%dC, cub=\E[%p1%dD, -# Cursor position - cup=\E[%i%p1%d;%p2%dH, home=\E[H, -# Scrolling Region - csr=\E[%p1%d;%p2%dr, sc=\E7, rc=\E8, -# Scroll down and up - ind=^J, ri=\EM, -# Area Clears - contrary to documentation, \E2J doesn't home the cursor! - el=\E[K, ed=\E[J, clear=\E[H\E[2J, -# Attributes - bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[3m, sgr0=\E[m, - smul=\E[4m, rmul=\E[m, smso=\E[4;7m, rmso=\E[m, msgr, - sgr=\E[0;%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;2m, -# flash=\E[?5h\E[?5l, needs some kind of delay in the middle -# Tabs - ht=^I, tbc=\E[3g, hts=\EH, it#8, -# Screen editing - il1=\E[L, dl1=\E[M, ich1=\E[@, dch1=\E[P, smir=\E[4h, rmir=\E[4l, - il=\E[%p1%dL, dl=\E[%p1%dM, ich=\E[%p1%d@, dch=\E[%p1%dP, -# Keypad - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, - kf1=\Ef1, kf2=\Ef2, kf3=\Ef3, kf4=\Ef4, kf5=\Ef5, - kf6=\Ef6, kf7=\Ef7, kf8=\Ef8, kf9=\Ef9, kf10=\Ef0, - kf11=\EF1, kf12=\EF2, kf13=\EF3, kf14=\EF4, kf15=\EF5, - kf16=\EF6, kf17=\EF7, kf18=\EF8, kf19=\EF9, kf20=\EF0, - kdl1=\E[M, kil1=\EOQ, kich1=\EOP, kdch1=\E[P, - kclr=^L, - pfkey=\E[?%p1%dh/%p2%s/, -# Initialization - is1=\E<\017\E[0m\E[?7h\E[?1l\E[?11k\E[?10k\E>, - rs1=\E[0m\Ec, -# Applications dependent for 10 - initialize US keys as function keys - is2=\E|11\Ef1^Y\E|21\Ef2^Y\E|31\Ef3^Y\E|41\Ef4^Y\E|51\Ef5^Y\E|61\Ef6^Y\E|71\Ef7^Y\E|81\Ef8^Y\E|91\Ef9^Y\E|01\Ef0^Y, - -kt7new|Kimtron KT-7 with stupid eat newline, - am@, - xenl, - use=kt7, diff --git a/usr/src/lib/libxcurses/src/terminfo/lsi b/usr/src/lib/libxcurses/src/terminfo/lsi deleted file mode 100644 index 28e9485947..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/lsi +++ /dev/null @@ -1,70 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996, by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# lsi: LEAR SIEGLER (ADM) -# -# If the adm31 gives you trouble with standout mode, check the DIP switch -# in position 6, bank @c11, 25% from back end of pad. Should be OFF. -# If there is no such switch, you have an old adm31 and must use oadm31 -adm31|31|lsi adm31, - is2=\Eu\E0, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, - el=\ET, cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=\E*, ed=\EY, cols#80, - dch1=\EW, dl1=\ER, rmir=\Er, home=^^, smir=\Eq, - kf0=^A0\r, kf1=^A1\r, kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, - kf5=^A5\r, kf6=^A6\r, kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, - kcud1=^J, kcub1=^H, kcuf1=^L, kcuu1=^K, - lines#24, mir, cuf1=^L, - rmso=\EG0, smso=\EG1, cuu1=^K, smul=\EG1, rmul=\EG0, -adm2|lsi adm2, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE, am, cub1=^H, ed=\EY, el=\ET, - clear=\E;, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\EW, dl1=\ER, - home=^^, ich1=\EQ, kcud1=^J, khome=^^, kcub1=^H, kcuf1=^L, kcuu1=^K, - lines#24, cuf1=^L, cuu1=^K, -adm3|lsi adm3, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, clear=^Z, lines#24, cols#80, -adm42|42|lsi adm42, - cvvis=\EC\E3 \E3(, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE$<270>, - am, cub1=^H, ed=\EY, el=\ET, clear=\E;, cup=\E=%p1%' '%+%c%p2%' '%+%c, - cols#80, dch1=\EW, dl1=\ER, rmir=\Er, smir=\Eq, ip=$<6*>, lines#24, - cbt=\EI, cuf1=^L, rmso=\EG0, smso=\EG4, ht=\t, cuu1=^k, - pad=\177, -adm5|lsi adm5, - cr=^M, cud1=^J, ind=^J, bel=^G, - ed=\EY, el=\ET, cud1=^J, kbs=^H, khome=^^, - rmso=\EG, xmc#1, smso=\EG, use=adm3aplus, -adm3a|3a|lsi adm3a, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z$<1>, - cols#80, home=^^, lines#24, cuf1=^L, cuu1=^K, -# -# MPE/IX has trouble with files that have '+' in the name. -# adm3a+|3a+|adm3aplus|lsi adm3a+, -# -adm3aplus|lsi adm3a+, - kcub1=^H, kcud1=^J, kcuu1=^K, kcuf1=^L, use=adm3a, -oadm31|o31|old adm31, - smso=\EG4, smul@, rmul@, use=adm31, diff --git a/usr/src/lib/libxcurses/src/terminfo/microterm b/usr/src/lib/libxcurses/src/terminfo/microterm deleted file mode 100644 index 63cad360fe..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/microterm +++ /dev/null @@ -1,73 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# microterm: MICROTERM -# -microterm|act4|microterm act iv, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^_, el=^^, clear=^L, - cup=^T%p1%c%p2%c, cols#80, lines#24, cuf1=^X, cuu1=^Z, home=^], -# The padding on cuf1 for act5 and mime is a guess and not final. -# The act5 has hardware tabs, but in cols 8, 16, 24, 32, 41 (!), 49, ... -microterm5|act5|microterm act v, - uc=\EA, ri=\EH$<3>, kcuu1=^Z, kcud1=^K, kcub1=^H, kcuf1=^X, use=act4, -# Act V in split screen mode. act5s is not tested and said not to work. -# Could have been because of the funny tabs - it might work now. -act5s|skinny act5, - smcup=\EP, rmcup=\EQ, lines#48, cols#39, use=act5, -# These mime1 entries refer to the Microterm Mime I or Mime II. -# The default mime is assumed to be in enhanced act iv mode. -# There is a ^Q in is2 to unwedge any lines that wedge on ^S. -mime|mime1|mime2|mimei|mimeii|microterm mime1, - cup=^T%p1%{24}%+%c%p2%?%p2%{32}%>%t%{48}%+%;%{80}%+%c, cols#80, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<80>, am, cub1=^H, - ed=^_, el=^^, clear=\035^C, dl1=^W$<80>, ht=^I, lines#24, - cuf1=^X, uc=^U, cuu1=^z, home=\035, cud1=^K, is2=\E^S^Q, - kcuu1=^Z, kcud1=^K, kcub1=^H, kcuf1=^X, ri=^R$<3>, vt#9, -mime-3a|mime-adm3a|mime1 emulating adm3a, - am@, kcuu1=^Z, kcud1=^K, kcub1=^H, kcuf1=^X, use=adm3a, -mime-3ax|mime-adm3ax|mime1 emulating enhanced adm3a, - il1=^A$<80>, dl1=^W$<80>, ht=^I$<3>, el=^X, ed=^_, use=mime-3a, -# Mimes using brightness for standout. Half bright is very dim unless -# you turn up the brightness so far that lines show up on the screen. -mime-fb|full bright mime1, - smso=^Y, rmso=^S, is2=^S\E^Q, use=mime, -mime-hb|half bright mime1, - smso=^S, rmso=^Y, is2=^Y\E, use=mime, -# These entries (for mime 2a) put the terminal in low intensity mode -# since high intensity mode is so obnoxious. -# This is the preferred mode (but ^X can't be used as a kill character (?)) -mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52), - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<20*>, cub1=^H, ed=\EQ$<20*>, - cols#80, el=\EP, clear=\EL, cup=\EY%p1%' '%+%c%p2%' '%+%c, is2=^Y, - dch1=^N, dl1=^W$<20*>, ip=$<2>, rmir=^Z, home=\EH, smir=^O, cuu1=\EA, - ri=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, kcuu1=\EA, lines#24, - cuf1=\EC, ht=^I, rmso=\E9, smso=\E8, smul=\E4, rmul=\E5, -mime2a-s|microterm mime2a (emulating an enhanced soroc iq120), - cr=^M, cud1=^J, ind=^J, bel=^G, il1=^A$<20*>, am, cub1=^H, ed=\EJ$<20*>, - el=\EK, clear=\EL, cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\ED, - dl1=^W$<20*>, kcub1=^H, kcuf1=^L, kcuu1=^K, kcud1=^J, home=^^, is2=\E), - ri=\EI, smir=\EE, rmir=^Z, ip=$<2>, lines#24, cuf1=^L, cuu1=\EI, - smso=\E:, rmso=\E;, smul=\E6, rmul=\E7, diff --git a/usr/src/lib/libxcurses/src/terminfo/misc b/usr/src/lib/libxcurses/src/terminfo/misc deleted file mode 100644 index d611245326..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/misc +++ /dev/null @@ -1,254 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# misc: MISCELLANEOUS TERMINALS -# -# ---------------------------------------------------------------- -# -# BB&N BitGraph -# The function keys kf0-kf9 are the codes generated by the keypad keys 0-9 -# NOTE that this means that PF1-PF4 are not represented here at all. -bg|bitg|bitgraph|BBN BitGraph, - msgr, xon, cols#85, lines#64, - bel=^G, cr=^M, tbc=\E[g, clear=\E[H\E[J, el=\E[K, ed=\E[J, - cup=\E[%i%p1%d;%p2%dH, home=\E[H, - cub=\E[%p1%dD, cub1=\E[D, cuf=\E[%p1%dC, cuf1=\E[C, - cud=\E[%p1%dB, cud1=\E[B, cuu=\E[%p1%dA, cuu1=\E[A, - dl=\E[%p1%dM, dl1=\E[M, il=\E[%p1%dL, il1=\E[L, -# dch=\E[%p1%dP, dch1=\E[P, ich=\E[%p1%d@, ich1=\E[@, - smso=\E[4m, rmso=\E[m, smul=\E[4m, rmul=\E[m, - bold=\E[m, rev=\E[7m, sgr0=\E[m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - is2=\E:e\E[m\E(B^O\E[1;64r\E[H\E[J\E[20l\E[?1;6l\E[?5;7;50;52h\E=, - kbs=^H, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, kcuu1=\E[A, - kf0=\EOp, kf1=\EOq, kf2=\EOr, kf3=\EOs, kf4=\EOt, - kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, - sc=\E7, rc=\E8, ind=\ED, ri=\EM, nel=\EE, - hts=\EH, ht=^I, -# -# Vanilla ANSI terminal. This is assumed to implement all the normal -# ANSI stuff with no extensions. It assumes insert/delete line/char -# is there, so it won't work with vt100 clones. It assumes video -# attributes for bold, blink, underline, and reverse, which won't -# matter much if the terminal can't do some of those. Padding is -# assumed to be zero, which shouldn't hurt since xon/xoff is assumed. -# This entry is based on the Ann Arbor Ambassador. -ansi|generic ansi standard terminal, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E[L, am, cub1=^H, ed=\E[J, - el=\E[K, clear=\E[H\E[J, cup=\E[%i%p1%d;%p2%dH, cols#80, lines#24, - dch1=\E[P, dl1=\E[M, home=\E[H, - ich=\E[%p1%d@, ich1=\E[@, smir=\E6, rmir=\E6, - bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[8m, sgr0=\E[0m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, - cuf1=\E[C, ht=^I, cuu1=\E[A, xon, rep=%p1%c\E[%p2%{1}%-%db, - rmul=\E[m, smul=\E[4m, rmso=\E[m, smso=\E[7m, -# The tab 132 uses xon/xoff, so no padding needed. -# smkx/rmkx have nothing to do with arrow keys. -# is2 sets 80 col mode, normal video, autowrap on (for am). -# Seems to be no way to get rid of status line. -tab132|tab|tab 132/15, - is2=\E[?7h\E[?3l\E[?5l, smkx@, rmkx@, cr=^M, cud1=^J, ind=^J, - bel=^G, lm#96, da, db, il1=\E[L, dl1=\E[M, dch1=\E[P, - rmir=\E[4l, smir=\E[4h, cup=\E[%i%p1%d;%p2%dH, - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, use=vt100, -tab132w, - cols#132, is2=\E[?7h\E[?3h\E[?5l, use=tab132, -tab132rv, - is2=\E[?7h\E[?3l\E[?5h, use=tab132, -tab132wrv, - is2=\E[?7h\E[?3h\E[?5h, use=tab132w, -# This used to say "de#001202" which presumably refers to the stty bits -# that need to be set for some version of Unix. We need the real delay -# requirements here. -mw2|Multiwriter 2, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#132, hc, os, -trs80|trs-80|Radio Shack TRS-80 model I, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cols#64, lines#16, -# I think the direct is supposed to be vt100 compatible, so all this -# should probably be replaced by a use=vt100, but I can't test it. -d800|direct|direct800|Direct 800/A, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, - clear=\E[1;1H\E[2J, cub1=^H, cup=\E[%i%p1%d;%p2%dH, - cuf1=\E[C, cuu1=\E[A, el=\E[K, ed=\E[J, smso=\E[7m, rmso=\E[0m, - smul=\E[4m, rmul=\E[0m, xhp, cvvis=\E[>12l, cnorm=\E[>12h, - ind=\ED, ri=\EM, da, db, rmacs=\E[1m, smacs=\E[0m, msgr, ht=^I, - kcub1=\E[D, kcuf1=\E[C, kcuu1=\E[A, kcud1=\E[B, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -vc404|volker-craig 404, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^W$<40>, el=^V$<20>, - clear=^X$<40>, cup=^P%p1%' '%+%c%p2%' '%+%c, cols#80, home=^Y$<40>, - kcud1=^J, kcub1=^H, kcuf1=^U, kcuu1=^Z, lines#24, cuf1=^U, cuu1=^Z, -vc404s|volker-craig 404 w/standout mode, - cr=^M, cud1=^J, ind=^J, bel=^G, rmso=^O, smso=^N, use=vc404, -vc404na|volker-craig 404 w/no arrow keys, - kcuf1@, kcuu1@, use=vc404, -vc404sna|volker-craig 404 w/standout mode and no arrow keys, - rmso=^O, smso=^N, use=vc404na, -# missing in vc303a and vc303 descriptions: they scroll 2 lines at a time -# every other linefeed. -vc303a|vc403a|volker-craig 303a, - cr=^M, cud1=^J, bel=^G, am, cub1=^H, el=^V$<20>, clear=^X$<40>, - cols#80, home=^Y$<40>, kcud1=^J, kcub1=^H, kcuf1=^U, - kcuu1=^Z, lines#24, ll=^P^@W, cuf1=^U, cuu1=^Z, -vc303|vc103|vc203|volker-craig 303, - cr=^M, cud1=^J, bel=^G, am, cub1=^H, clear=^L$<40>, cols#80, - home=^K$<40>, kcud1=^J, kcub1=^H, kcuf1=^I, kcuu1=^N, lines#24, - ll=^O$<1>W, cuf1=^I, cuu1=^N, -# From cbosg!ucbvax!SRC:george Fri Sep 11 22:38:32 1981 -ampex|d80|dialogue|dialogue80|ampex dialogue 80, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\EA, smul=\El, rmul=\Em, - am, cub1=^H, ht=^I, clear=\E*$<75>, cup=\E=%p1%' '%+%c%p2%' '%+%c, - il1=\EE$<5*>, cbt=\EI, ich1=\EQ, dl1=\ER$<5*>, dch1=\EW, - el=\Et, ed=\Ey, smso=\Ej, rmso=\Ek, lines#24, cols#80, cuf1=^L, cuu1=^K, -d132|datagraphix|datagraphix 132a, - cr=^M, cud1=^J, ind=^J, bel=^G, - cols#80, lines#30, clear=^l, home=\Et, da, db, ind=\Ev, ri=\Ew, - cuu1=\Ek, cuf1=\El, cvvis=\Ex, cnorm=\Em\En, - il1=\E3, ich1=\E5, dch1=\E6, in, ich1=\E5, -soroc|Soroc 120, - cr=^M, cud1=^J, ind=^J, bel=^G, - ed=\EY, el=\ET, clear=\E*$<2>, - kcub1=^H, kcuu1=^K, kcuf1=^L, kcud1=^J, use=adm3a, -# tec is2 untested, and taken from CB/Unix virtual terminal driver. -# Upper case terminal, uses lower case for control sequences!!! -# The driver shows the C ~ operator used on CM coordinates. -tec400|tec scope, - cr=^M, cud1=^J, ind=^J, bel=^G, cup=l%p2%~%c%p1%~%c, - cuu1=x, cud1=h, cuf1=g, cub1=w, home=i, smso={, rmso=|, - xmc#1, clear=f, il1=e, dl1=u, ich1=d, dch1=t, el=c, ed=s, -# From ucbvax!geoff Mon Sep 21 21:15:45 1981 -# This entry has been tested. -tec500|tec 500, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z$<20>, - cols#80, home=^^, lines#24, cuf1=^L, cuu1=^K, smso=^], rmso=^\, -# I would appreciate more information on this terminal, such as the -# manufacturer and the model number. There are too many 'tecs' in here. -tec, - lines#24, cols#80, clear=^l, cuu1=^k, cuf1=\037, am, - cub1=^H, home=\036, cr=^M, cud1=^J, ind=^J, bel=^G, -teletec|Teletec Datascreen, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cols#80, clear=^l, home=^^, lines#24, cuf1=^_, cuu1=^k, -aed512|aed|AED 512, - if=/usr/lib/tabset/aed, - cr=^M, cud1=^J, bel=^G, - cols#64, lines#40, clear=^L, - cub1=^H, cuf1=\Ei0800\001, - cnorm=\E\072004=000200??\001, - flash=\EK0001??0000K0001202080\001, - smso=\E\07200>8000140[80C00\001, rmso=\E[00C80\001, - smul=\E\07200>8000140\001, rmul=\E\07200>8000100\001, - uc=\Ei???>l0800i0102\001, - smcup=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001, - rmcup=\E\07200>8000100{804<0??00001000L80\072004=000200??\001, - ind=\E;1100\072004=000200??;1300\047\200\001\n\E\072004=0002??00;1200\001\n, - cuu1=^K, .cup=\E;1300%p1%c%p2%c\001, -digilog|333|digilog 333, - cub1=^H, cols#80, el=\030, home=^n, lines#16, cuf1=^i, cuu1=^o, - cr=^M, cud1=^J, ind=^J, bel=^G, -ep48|ep4080|execuport 4080, - am, cub1=^H, os, cols#80, hu=\036, hd=\034, - cr=^M, cud1=^J, ind=^J, bel=^G, -ep40|ep4000|execuport 4000, - am, cub1=^H, os, cols#136, hu=\036, hd=\034, - cr=^M, cud1=^J, ind=^J, bel=^G, -terminet1200|terminet300|tn1200|tn300|terminet|ge terminet 1200, - cols#120, hc, os, - cr=^M, cud1=^J, ind=^J, bel=^G, -datapoint|dp3|dp3360|datapoint 3360, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=^_, el=^^, clear=^]^_, cols#82, home=^], lines#25, cuf1=^x, cuu1=^z, -dg|dg6053|data general 6053, - cr=^M, cud1=^J, ind=^J, bel=^G, - am, cub1=^H, cup=^P%p2%c%p1%c, clear=^L, home=^H, cuf1=^S, - cuu1=^W, el=^K, cols#80, lines#24, -cdi|cdi1203, - am, cub1=^H, hc, os, cols#80, - cr=^M$<200>, cud1=^J, ind=^J, bel=^G, -# ^S is an arrow key! Boy is this guy in for a surprise on v7! -sol, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, cup=\E^1%p1%c\E^2%p2%c, - clear=^K, home=^N, cols#64, lines#16, cuf1=^S, cuu1=^W, - kcub1=^A, kcuf1=^S, kcuu1=^W, kcud1=^Z, -xl83|cybernex XL-83, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, ed=^P$<62>, el=^O$<3>, - clear=^L$<62>, cup=^W%p1%' '%+%c%p2%' '%+%c, cols#80, home=^K, - kcud1=^J, kcub1=^H, kcuu1=^N, lines#24, cuu1=^N, cuf1=^I, -omron|Omron 8025AG, - cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL, am, cub1=^H, ed=\ER, - cols#80, el=\EK, clear=\EJ, da, db, dch1=\EP, dl1=\EM, home=\EH, - lines#24, cuf1=\EC, rmso=\E4, ind=\ES, smso=\Ef, ri=\ET, - cuu1=\EA, cnorm=, cvvis=\EN, -plasma|plasma panel, - am, cub1=^H, clear=^L, cols#85, home=^^, lines#45, cuf1=\030, cuu1=\026, - cr=^M, cud1=^J, ind=^J, bel=^G, -swtp|ct82|Southwest Technical Products CT82, - cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, il1=^\^y, - ed=^v, el=^F, clear=^L, cup=^k%p2%c%p1%c, cols#82, lines#20, dl1=^z, - cuf1=^s, cuu1=^a, smso=^^^v, rmso=^^^F, dch1=^\^h, ich1=^\^x, home=^p, - ind=^n, ri=^o, ll=^c, - is2=^\^r^^^s^^^d^]^w^i^s^^^]^^^o^]^w^r^i, -terak|Terak emulating Datamedia 1520, - use=dm1520, -remote|virtual remote terminal, - cols#79, am@, use=virtual, -virtual|CB-UNIX virtual terminal, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, clear=\E\112, - cub1=^H, cup=\E\107%p2%c%p1%c, cuf1=\E\103, cuu1=\E\101, el=\E\113, - ed=\E\114, il1=\E\120, dl1=\E\116, ich1=\E\117, lm#0, da, db, - kcub1=\E\104, kcuf1=\E\103, kcuu1=\E\101, kcud1=\E\102, khome=\E\105, - smso=\E\141\004, rmso=\E\142\004, smul=\E\141\001, rmul=\E\142\001, -# This is untested. The cup sequence is hairy enough that it probably -# needs work. The idea is ctrl(O), dd(row), dd(col), where dd(x) -# is x - 2*(x%16) + '9' -delta|dd5000|delta data 5000, - cud1=^J, ind=^J, bel=^G, am, cub1=^H, clear=^NR, - cup=^O%p1%p1%{16}%m%{2}%*%-%'9'%+%c%p2%p2%{16}%m%{2}%*%-%'9'%+%c, - cols#80, lines#27, home=^NQ, cuf1=^Y, cuu1=^Z, el=^NU, dch1=^NV, -mdl110|cybernex mdl-110, - cup=^P%p1%' '%+%c%p2%' '%+%c, cols#80, lines#24, am, clear=^X$<70>, - cub1=^H, cr=^M, cud1=^J, ind=^J, bel=^G, cuf1=^U, cuu1=^Z, home=^Y, - el=^N@^V$<145>, ed=^NA^W$<145>, il1=^NA^N^]$<65>, dl1=^NA^N^^$<40>, - ich1=^NA^]$<3.5>, smdc=, rmdc=, dch1=^NA^^$<3.5>, smso=^NF, rmso=^NG, - ht=\t$<43>, ed=^N@^V$<6>, -zen30|z30|zentec 30, - cr=^M, cud1=^J, ind=^J, bel=^G, mir, cols#80, lines#24, - ul, il1=\EE$<1.5*>, cub1=^H, el=\ET$<1.0*>, - cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=\E*, home=^^, cuf1=^L, - rmso=\EG0, smso=\EG6, cuu1=^K, smir=\Eq, rmir=\Er, - am, dch1=\EW, dl1=\ER$<1.5*>, ed=\EY, -# Test version for Falco ts-1. See "arpavax.hickman@ucb" for info -falco|ts1|ts-1|falco ts-1, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, ht=^I, - is2=\Eu\E3, il1=\EE, am, el=\ET\EG0^H, cup=\E=%p1%' '%+%c%p2%' '%+%c, - clear=\E*, ed=\EY, dch1=\EW, cub1=^H, dl1=\ER, rmir=\Er, smir=\Eq, - home=^^, kf0=^A0\r, kcud1=^J, kcub1=^H, kcuf1=^L, kcuu1=^K, cuf1=^L, - rmso=\Eg0, smso=\Eg1, cuu1=^K, smul=\Eg1, rmul=\Eg0, diff --git a/usr/src/lib/libxcurses/src/terminfo/okimtron b/usr/src/lib/libxcurses/src/terminfo/okimtron deleted file mode 100644 index 9abaf7c127..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/okimtron +++ /dev/null @@ -1,64 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# - -# -# Kimtron KT-7 with VT-100 emulation ROMs. -# This is a hack of the VC2100 VT-100 emulation. -# -kt7|kt7io|Kimtron KT-7, - cols#80, lines#24, am, bw, xon, - cr=^M, bel=^G, -# Status line - hs, dsl=\E[0;0z -# Cursor one position - cuu1=\E[A, cud1=^J, cuf1=\E[C, cub1=^H, -# Cursor multiple positions - cuu=\E[%p1%dA, cud=\E[%p1%dB, cuf=\E[%p1%dC, cub=\E[%p1%dD, -# Cursor position - cup=\E[%i%p1%d;%p2%dH, home=\E[H, -# Scrolling Region - csr=\E[%p1%d;%p2%dr, sc=\E7, rc=\E8, -# Scroll down and up - ind=^J, ri=\EM, -# Area Clears - contrary to documentation, \E2J doesn't home the cursor! - el=\E[K, ed=\E[J, clear=\E[H\E[2J, -# Attributes - bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[3m, sgr0=\E[m, - smul=\E[4m, rmul=\E[m, smso=\E[4;7m, rmso=\E[m, msgr, - sgr=\E[0;%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;2m, -# Tabs - ht=^I, tbc=\E[3g, hts=\EH, it#8, -# Keypad - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - pfkey=\E[?%p1%dh/%p2%s/, -# Initialization - is1=\E<\017\E[0m\E[?7h\E[?1l\E[?11k\E[?10k\E>, - rs1=\E[0m\Ec, -# Applications dependent for 10 - initialize US keys as function keys - is2=\E|11\EOP^Y\E|21\EOQ^Y\E|31\EOR^Y\E|41\EOS^Y\E|51\Ef5^Y\E|61\Ef6^Y\E|71\Ef7^Y\E|81\Ef8^Y\E|91\Ef9^Y\E|01\Ef0^Y, - kf5=\Ef5, kf6=\Ef6, kf7=\Ef7, kf8=\Ef8, kf9=\Ef9, kf10=\Ef0, diff --git a/usr/src/lib/libxcurses/src/terminfo/perkinelmer b/usr/src/lib/libxcurses/src/terminfo/perkinelmer deleted file mode 100644 index 7b4ec5684c..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/perkinelmer +++ /dev/null @@ -1,45 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# Copyright (c) 1996 by Sun Microsystems, Inc. -# All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" -# -# perkinelmer: PERKIN ELMER -# -bantam|pe550|perkin elmer 550, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#80, el=\EI$<20>, - clear=\EK$<20>, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, home=\EH, - lines#24, ll=\EH\EA, cuf1=\EC, cuu1=\EA, ed=^N@^V$<6>, -fox|perkin elmer 1100, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H, - ed=\EJ$<5.5*>, el=\EI, clear=\EH\EJ$<132>, cols#80, home=\EH, lines#24, - ll=\EH\EA, cuf1=\EC, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, - cuu1=\EA, flash=^P^B^P^C, -owl|perkin elmer 1200, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<5.5*>, - am, cub1=^H, ed=\EJ$<5.5*>, el=\EI$<5.5>, clear=\EH\EJ$<132>, home=\EH, - ll=\EH\EA, cup=\EX%p1%' '%+%c\EY%p2%' '%+%c, cols#80, dch1=\EO$<5.5*>, - dl1=\EM$<5.5*>, ich1=\EN, ip=$<5.5*>, kbs=^h, in, lines#24, - cuf1=\EC, cuu1=\EA, rmso=\E!\200, smso=\E!^H, flash=^P^B^P^C, - kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, kf5=\ERE, kf6=\ERF, - kf7=\ERG, kf8=\ERH, kf9=\ERI, kf0=\ERJ, diff --git a/usr/src/lib/libxcurses/src/terminfo/print b/usr/src/lib/libxcurses/src/terminfo/print deleted file mode 100644 index 9386a2ac03..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/print +++ /dev/null @@ -1,38 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)print 1.1 print 5/19/82 -# -# print: PRINTERS -# -# Generic line printer. We assume it can backspace, since even those -# line printers that can't have this hidden by UNIX lpr driver. -lpr|lp|printer|print|printing|line printer, - cr=^M, cud1=^J, ff=^L, bel=^G, cub1=^H, cols#132, hc, os, -citoh|ci8510|8510|c.itoh 8510a, - cols#80, ri=\Er, bold=\E!, smul=\EX, rmul=\EY, sgr0=\E"\EY, - is2=\E(009\054017\054025\054033\054041\054049\054057\054065\054073., - rep=\ER%p2%3d%p1%c, use=lpr, diff --git a/usr/src/lib/libxcurses/src/terminfo/simple b/usr/src/lib/libxcurses/src/terminfo/simple deleted file mode 100644 index b8a63dc96e..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/simple +++ /dev/null @@ -1,61 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# - -simple52|Minimum VT52 definitions required for Curses, -# -# These should not be required. Curses can determine the -# screen dimensions from the stty values or environment -# variables LINES and COLUMNS. -# - cols#80, - lines#24, -# -# These functions are required. -# - clear=\EH\EJ$<100>, - cud1=\EB, - cub1=\ED, - cuu1=\EA, - cuf1=\EC, - -simple100|Minimum VT100 definitions required for Curses, -# -# These should not be required. Curses can determine the -# screen dimensions from the stty values or environment -# variables LINES and COLUMNS. -# - cols#80, - lines#24, -# -# These functions are required. -# - clear=\E[H\E[J$<100>, - cud1=\E[B, - cub1=\E[D, - cuu1=\E[A, - cuf1=\E[C, - diff --git a/usr/src/lib/libxcurses/src/terminfo/special b/usr/src/lib/libxcurses/src/terminfo/special deleted file mode 100644 index 500b2d3213..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/special +++ /dev/null @@ -1,49 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)special 1.5 5/19/82 -# -# special: SPECIALS -# -# Generic "terminals". These are used to label tty lines when you don't -# know what kind of terminal is on it. The characteristics of an unknown -# terminal are the lowest common denominator - they look about like a ti 700. -arpanet|network, - use=unknown, -bussiplexer, - use=unknown, -dialup, - use=unknown, -ethernet|network, - use=unknown, -plugboard|patch|patchboard, - use=unknown, -dumb, - am, bel=^G, cols#80, cr=^M, cud1=^J, ind=^J, -unknown, - gn, use=dumb, -switch|intelligent switch, - use=unknown, diff --git a/usr/src/lib/libxcurses/src/terminfo/tektronix b/usr/src/lib/libxcurses/src/terminfo/tektronix deleted file mode 100644 index 85560bcf85..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/tektronix +++ /dev/null @@ -1,88 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)tektronix 1.5 5/20/82 -# -# tektronix: TEKTRONIX -# -tek|tek4012|4012|tektronix 4012, - cr=^M, cud1=^J, bel=^G, ff=^L$<1000>, - is2=\E^O, cub1=^H, clear=\E^L$<1000>, cols#75, lines#35, os, -tek4013|4013|tektronix 4013, - rmacs=\E^N, smacs=\E^O, use=4012, -tek4014|4014|tektronix 4014, - is2=\E^O\E9, cols#81, lines#38, use=tek4012, -tek4015|4015|tektronix 4015, - rmacs=\E^N, smacs=\E^O, use=4014, -tek4014-sm|4014-sm|tektronix 4014 in small font, - is2=\E^O\E\072, cols#121, lines#58, use=tek4014, -tek4015-sm|4015-sm|tektronix 4015 in small font, - rmacs=\E^N, smacs=\E^O, use=4014-sm, -tek4023|4023|tex|tektronix 4023, - cr=^M, cud1=^J, ind=^J, bel=^G, smso=^_P, rmso=^_@, - cup=\034%p2%' '%+%c%p1%' '%+%c, cuf1=\t, cub1=^H, - clear=\E^L$<4>, cols#80, lines#24, am, vt#4, -# Can't use cursor motion because it's memory relative, and because -# it only works in the workspace, not the monitor. Same for home. -# Likewise, standout only works in the workspace. -# el was commented out since vi and rogue seem to work better simulating -# it with lots of spaces! -4025|4027|4024|tek4025|tek4027|tek4024|4025cu|4027cu|tektronix 4024/4025/4027, - cr=^M, ind=^F^J, cud1=^F^J, bel=^G, am, da, db, ht=^I, - cub1=^H, lm#0, lines#34, cols#80, clear=^_era\r\n\n, - is2=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r, - smkx=^_lea p4 /h/\r^_lea p8 /k/\r^_lea p6 / /\r^_lea p2 /j/\r^_lea f5 /H/\r, - rmkx=^_lea p2\r^_lea p4\r^_lea p6\r^_lea p8\r^_lea f5\r, - cuu1=^K, cuf1=^_rig\r, il1=^_up\r^_ili\r$<145>, dl1=^_dli\r^F, - dch1=^_dch\r, smir=^_ich\r, rmir=^F^_dow\r^K, - .el=^_dch 80\r, ed=^_dli 50\r, cmdch=^_, - il=^_up\r^_ili %p1%d\r$<145>, dl1=^_dli %p1%d\r^F, - cuu=^_up %p1%d\r, cud=^_dow %p1%d\r, cub=^_lef %p1%d\r, cuf=^_rig %p1%d\r, -4025-17|4027-17|tek 4025 17 line window, - lines#17, use=4025, -4025-17ws|4027-17ws|tek 4025 17 line window in workspace, - is2=\41com 31\r\n^_sto 9 17 25 33 41 49 57 65 73\r^_wor 17\r^_mon 17\r, - smcup=^_wor h\r, rmcup=^_mon h\r, smso=^_att e\r, rmso=^_att s\r, use=4025-17, -4025ex|4027ex|tek 4025 w/!, - smcup=\41com 31\r, rmcup=^_com 33\r, - is2=^_com 33\r\n\41sto 9 17 25 33 41 49 57 65 73\r, use=4025, -# The 4110 series may be a wonderful graphics series, but they make the 4025 -# look good for screen editing. In the dialog area, you can't move the cursor -# off the bottom line. Out of the dialog area, ^K moves it up, but there -# is no way to scroll. Note that there is a floppy for free from Tek that -# makes the 4112 emulate the vt52 (use the vt52 termcap). There is also -# an expected enhancement that will use ANSI standard sequences. -4112|4113|4114|tek4112|tektronix 4110 series, - cub1=^H, cr=^M, cud1=^J, bel=^G, am, - clear=\ELZ, lines#34, cols#80, -# 4112 in non-dialog area pretending to scroll. It really wraps but vi is -# said to work (more or less) in this mode. -4112-fs, - ind=^J, ri=^K, -4112-nd|4112 not in dialog area, - cuu1=^K, use=4112, -4112-5|4112 in 5 line dialog area, - lines#5, use=4112, diff --git a/usr/src/lib/libxcurses/src/terminfo/teleray b/usr/src/lib/libxcurses/src/terminfo/teleray deleted file mode 100644 index ec91283c16..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/teleray +++ /dev/null @@ -1,50 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)teleray 1.4 5/19/82 -# -# teleray: TELERAY -# -# Note two things called "teleray". Reorder should move the common one -# to the front if you have either. A dumb teleray with the cursor stuck -# on the bottom and no obvious model number is probably a 3700. -t3700|teleray|dumb teleray 3700, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, clear=^L, cols#80, lines#24, -t3800|teleray 3800 series, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, ed=\EJ, el=\EK, clear=^L, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - cud1=\n, home=\EH, lines#24, ll=\EY7 , cuf1=\EC, ht=^I, cuu1=^K, -t1061|t10|teleray 1061, - tbc=\EG, hts=\EF, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<2*>, - am, cub1=^H, ed=\EJ$<1>, el=\EK, clear=^L$<1>, - cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, - dch1=\EQ, dl1=\EM$<2*>, home=\EH, ich1=\EP, ip=$<0.4*>, - kf1=^Z1, kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, kf6=^Z6, kf7=^Z7, kf8=^Z8, - lines#24, cuf1=\EC, ht=^I, rmso=\ER@, smso= \ERD, km, - is2=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef, - cuu1=\EA, smul=\ERH, rmul=\ER@, xhp, xt, xmc#1, -t1061f|teleray 1061 with fast PROMs, - il1=\EL, ip@, dl1=\EM, use=t1061, diff --git a/usr/src/lib/libxcurses/src/terminfo/teletype b/usr/src/lib/libxcurses/src/terminfo/teletype deleted file mode 100644 index bfb7afa184..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/teletype +++ /dev/null @@ -1,76 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)teletype 1.7 5/19/82 -# -# teletype: TELETYPE -# -# This works on the default blit, except that output is by exclusive or, -# and insert line leaves 1/2 line at the bottom of the screen. -blit|jerq, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#88, lines#72, ht=^I, - am, ul, eo, mir, il=\Ef%p1%' '%+%c, dl=\Ee%p1%' '%+%c, - dl1=\EE, rmir=\ER, smir=\EQ, dch1=\EO, cub1=\ED, da, db, - il1=\EF, ed=\EJ, el=\EK, clear=^L, cup=\EY%p2%' '%+%c%p1%' '%+%c, - cuf1=\EC, cuu1=\EA, kcuu1=\EA, kcud1=\EB, kcuf1=\EC, kcub1=\ED, - flash=\E^G, smso=\EU!, rmso=\EV!, smul=\EU", rmul=\EV", -blitlayer|layer|vitty, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, ht=^I, - am, clear=^L, cup=\EY%p2%' '%+%c%p1%' '%+%c, el=\EK, il=\EI, dl=\ED, -33|tty33|tty|model 33 teletype, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#72, hc, os, -# The Dataspeed 40's have lots of braindamage, such as xmc (?) and printing -# a visible newline indicator after each newline. The 40-1 is a half duplex -# terminal and is hopeless. The 40-2 is braindamaged but has hope and is -# described here. The 40-4 is a 3270 lookalike and beyond hope. -# The terminal has blinking standout. It also has visible bell but I don't -# know it - it's null here to prevent it from showing the BL character. -# I am not sure if the 40 has xmc or not, it looked like it didn't. -# Note also that the control characters have been randomly rearranged, -# for example, to get escape you type control-P! -40|tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2, - clear=\ER$<160>, ed=\EJ$<160>, il1=\EL$<160>, dl1=\EM$<160>, - dch1=\EP$<50>, ich1=\E\^$<50>, cuf1=\EC, cuu1=\E7, cub1=^H, cr=\EG, - ind=^J, cud1=\EB, cols#80, lines#24, flash=, smso=\E3, rmso=\E4, -43|tty43|model 43 teletype, - cr=^M, cud1=^J, ind=^J, bel=^G, - kbs=^h, am, cub1=^H, hc, os, cols#132, -37|tty37|model 37 teletype, - cr=^M, cud1=^J, ind=^J, bel=^G, - cub1=^H, hc, hu=\E8, hd=\E9, cuu1=\E7, os, -# From jwb Wed Mar 31 13:25:09 1982 remote from ihuxp -# This description seems to avoid line 1 - I don't know why. -# It looks a lot like a vt100 with ins/del line/char. -# But the insert char is not ANSI standard! -4424|tty4424|teletype 4424m, - il1=\EL, da, db, ip=$<2>, ich1=\E^, dch1=\EP, dl1=\EM, - cols#80, lines#23, am, clear=\E[2;H\E[J, cub1=^H, - cup=\E[%i%p1%2d;%p2%2dH\E[B, - cuf1=\E[C, cuu1=\E[A, mir, ri=\ET, - el=\E[K, smso=\E[7m, rmso=\E[m, smul=\E[4m, rmul=\E[m, - is2=\E[m\E[2;24r, - kcud1=\E[B, kcub1=\E[D, kcuu1=\E[A, kcuf1=\E[C, - khome=\E[H, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, diff --git a/usr/src/lib/libxcurses/src/terminfo/televideo b/usr/src/lib/libxcurses/src/terminfo/televideo deleted file mode 100644 index 32b35c1073..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/televideo +++ /dev/null @@ -1,157 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)televideo 1.4 5/19/82 -# -# televideo: TELEVIDEO -# -# There are some tvi's that require incredible amounts of padding and -# some that don't. I'm assuming 912 and 920 are the old slow ones, -# and 912b, 912c, 920b, 920c are the new ones that don't need padding. -tvi912|912|920|tvi920|old televideo, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EE$<33*>, am, - cub1=^H, el=\ET, cup=\E=%p1%' '%+%c%p2%' '%+%c, clear=^Z, - cols#80, dch1=\EW, dl1=\ER$<33*>, - kbs=^h, kcuu1=^K, kcud1=^J, kcub1=^H, kcuf1=^L, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, - kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, - home=^^, ich1=\EQ, lines#24, cuf1=^L, ht=^I, - rmso=\Ek, smso=\Ej, cuu1=^K, smul=\El, rmul=\Em, xmc#1, -# the 912 has a <funct> key that's like shift: <funct>8 xmits "^A8\r". -# The 920 has this plus real function keys that xmit different things. -# Terminfo makes you use the funct key on the 912 but the real keys on the 920. -912b|912c|tvi912b|tvi912c|tvi|new televideo 912, - il1=\EE$<5*>, dl1=\ER$<5*>, use=tvi912, -920b|920c|tvi920b|tvi920c|new televideo 920, - kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, - kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, use=tvi912b, -# Two page TVI 912/920. -# set to page 1 when entering ex (\E-17 ) -# reset to page 0 when exiting ex (\E-07 ) -tvi912-2p|tvi920-2p|912-2p|920-2p|tvi-2p|televideo w/2 pages, - smcup=\E-17 , rmcup=\E-07 , use=tvi912, -tvi950-ap|tvi 950 w/alt pages, - is2=\E\\1, smcup=\E-06 , rmcup=\E-16 , use=tvi950, -tvi950-b|bare tvi950 no is2, - is2@, smkx=\El, rmkx=\Ek, use=tvi950, -tvi950-ns|tvi950 w/no standout, - smso@, rmso@, smul@, rmul@, use=tvi950, -# The following tvi descriptions from B:pjphar -# Now that we have is1, is2, and is3, these should be factored. -# -# is2 for all 950's. It sets the following attributes: -# full duplex (\EDF) write protect off (\E() -# conversation mode (\EC) graphics mode off (\E%) -# white on black (\Ed) auto page flip off (\Ew) -# turn off status line (\Eg) clear status line (\Ef\r) -# normal video (\E0) monitor mode off (\EX or \Eu) -# edit mode (\Er) load blank char to space (\Ee\040) -# line edit mode (\EO) enable buffer control (^O) -# protect mode off (\E\047) local edit keys (\Ek) -# program unshifted send key to send line all (\E016) -# program shifted send key to send line unprotected (\E004) -# set the following to nulls: -# field delimiter (\Ex0\0\0) -# line delimiter (\Ex1\0\0) -# start-protected field delimiter (\Ex2\0\0) -# end-protected field delimiter (\Ex3\0\0) -# set end of text delimiter to carriage return/null (\Ex4\r\0) -# -# tvi950 sets duplex (send) edit keys (\El) when entering vi -# sets local (no send) edit keys (\Ek) when exiting vi -# -tvi950|950|televideo950, - tbc=\E3, hts=\E1, cr=^M, cud1=^J, ind=^J, bel=^G, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\Ef\r\El, - il1=\EE, am, cub1=^H, cbt=\EI, ed=\Ey, el=\Et, clear=\E*, - cup=\E=%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\EW, dl1=\ER, - cud1=^V, rmir=\Er, home=^^, smir=\Eq, kf0=^A0\r, - kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, - kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, kbs=^H, kcud1=^V, khome=^^, kcub1=^H, - kcuf1=^L, kcuu1=^K, lines#24, mir, msgr, cuf1=^L, - ht=^I, rmso=\EG0, xmc#1, smso=\EG4, ri=\Ej, - rmul=\EG0, cuu1=^K, smul=\EG8, - flash=\Eb$<20>\Ed, cnorm=\Ek, cvvis=\El, xenl, - hs, tsl=\Eg\Ef, fsl=\r, -# -# is2 for 950 with two pages adds the following: -# set 48 line page (\E\\2) -# place cursor at page 0, line 24, column 1 (\E-07 ) -# -# two page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 48 line page (\E\\2) -# place cursor at 0,24,1 (\E-07 ) -# -tvi950-2p|950-2p|televideo950 w/2 pages, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\2\E-07 - rmcup=\E\\2\E-07 , smcup=\E\\1\E-07 , use=tvi950, -# -# is2 for 950 with four pages adds the following: -# set 96 line page (\E\\3) -# place cursor at page 0, line 24, column 1 (\E-07 ) -# -# four page 950 adds the following: -# when entering ex, set 24 line page (\E\\1) -# when exiting ex, reset 96 line page (\E\\3) -# place cursor at 0,24,1 (\E-07 ) -# -tvi950-4p|950-4p|televideo950 w/4 pages, - is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\3\E-07 - rmcup=\E\\3\E-07 , smcup=\E\\1\E-07 , use=tvi950, -# -# is2 for reverse video 950 changes the following: -# set reverse video (\Ed) -# -# set flash accordingly (\Eb ...nulls... \Ed) -# -tvi950-rv|950-rv|televideo950 rev video, - tbc=\E3, hts=\E1, - is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0, flash=\Ed$<20>\Eb, use=tvi950, -# -# uses the appropriate entries from 9502p and 950rv -# -tvi950-rv2p|950-rv2p|televideo950 rev video w/2 pages, - is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\2\E-07 - rmcup=\E\\2\E-07 , smcup=\E\\1\E-07 , use=tvi950rv, -# -# uses the appropriate entries from 9504p and 950rv -# -tvi950-rv4p|950-rv4p|televideo950 rev video w/4 pages, - is2=\EDF\EC\Eb\EG0\Er\EO\E\047\E(\E%\Ew\EX\Ee ^O - \Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0 - \Ex3\0\0\Ex4\r\0\E\\3\E-07 - rmcup=\E\\3\E-07 , smcup=\E\\1\E-07 , use=tvi950rv, diff --git a/usr/src/lib/libxcurses/src/terminfo/testterm b/usr/src/lib/libxcurses/src/terminfo/testterm deleted file mode 100644 index 93b48c5e29..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/testterm +++ /dev/null @@ -1,386 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# - -testterm|test.term|HP Curses Test Terminal, -# Booleans - .bw, am, .bce, .ccc, .xhp, .xhpa, - .cpix, .crxm, .xt, .xenl, .eo, .gn, - .hc, .chts, .km, .daisy, .hs, .hls, - .in, .lpix, .da, .db, .mir, msgr, - .nxon, .xsb, .npc, .nrrmc, .os, .mc5i, - .xvpa, .sam, .eslok, .hz, .ul, xon, -# Numbers - bufsz#100, cols#80, - spinh#100, spinv#100, - it#8, lh#100, - lw#100, lines#24, - lm#100, .xmc#100, - colors#100, maddr#100, - mjump#100, pairs#100, - mcs#100, mls#100, - ncv#100, nlab#100, - .npins#100, orc#100, - orhi#100, orl#100, - orvi#100, pb#100, - .vt#100, widcs#100, - wsl#80, -# Strings - acsc=x|q-l+k+m+j+u+t+v+w+n+o-s_`+a:f\'g#~o\,<+>.v-^h#I#0#, - cbt=<cbt>\n, - bel=<bel>\n, - cr=<cr>\n, - cpi=<cpi>\n, - lpi=<lpi>\n, - chr=<chr>\n, - csr=<csr %p1%d %p2%d>\n, - rmp=<rmp>\n, - csnm=<csnm>\n, - tbc=<tbc>\n, - mgc=<mgc>\n, - clear=<clear>\n, - el1=<el1>\n, - el=<el>\n, - ed=<ed>\n, - .hpa=<hpa %p1%d>\n, - cmdch=<cmdch>\n, - cup=<cup %p1%d %p2%d>\n, - .cud1=<cud1>\n, - .home=<home>\n, - civis=<civis>\n, - .cub1=<cub1>\n, - .mrcup=<mrcup>\n, - cnorm=<cnorm>\n, - .cuf1=<cuf1>\n, - .ll=<ll>\n, - .cuu1=<cuu1>\n, - cvvis=<cvvis>\n, - defc=<defc>\n, - dch1=<dch1>\n, - dl1=<dl1>\n, - dsl=<dsl>\n, - .hd=<hd>\n, - .enacs=<enacs>\n, - .smacs=<smacs>\n, - smam=<smam>\n, - blink=<blink>\n, - bold=<bold>\n, - smcup=<smcup>\n, - smdc=<smdc>\n, - dim=<dim>\n, - swidm=<swidm>\n, - sdrfq=<sdrfq>\n, - .smir=<smir>\n, - sitm=<sitm>\n, - slm=<slm>\n, - smicm=<smicm>\n, - snlq=<snlq>\n, - snrmq=<snrmq>\n, - prot=<prot>\n, - rev=<rev>\n, - invis=<invis>\n, - sshm=<sshm>\n, - smso=<smso>\n, - ssubm=<ssubm>\n, - ssupm=<ssupm>\n, - smul=<smul>\n, - sum=<sum>\n, - smxon=<smxon>\n, - ech=<ech %p1%d>\n, - .rmacs=<rmacs>\n, - rmam=<rmam>\n, - sgr0=<sgr0>\n, - rmcup=<rmcup>\n, - rmdc=<rmdc>\n, - rwidm=<rwidm>\n, - .rmir=<rmir>\n, - ritm=<ritm>\n, - rlm=<rlm>\n, - rmicm=<rmicm>\n, - rshm=<rshm>\n, - rmso=<rmso>\n, - rsubm=<rsubm>\n, - rsupm=<rsupm>\n, - rmul=<rmul>\n, - rum=<rum>\n, - rmxon=<rmxon>\n, - flash=<flash>\n, - ff=<ff>\n, - fsl=<fsl>\n, - is1=<is1>\n, - is2=<is2>\n, - is3=<is3>\n, - if=<if>\n, - iprog=<iprog>\n, - initc=<initc>\n, - initp=<initp>\n, - ich1=<ich1>\n, - il1=<il1>\n, - ip=<ip>\n, - ka1=<ka1>\n, - ka3=<ka3>\n, - kb2=<kb2>\n, - kbs=<kbs>\n, - kbeg=<kbeg>\n, - kcbt=<kcbt>\n, - kc1=<kc1>\n, - kc3=<kc3>\n, - kcan=<kcan>\n, - ktbc=<ktbc>\n, - kclr=<kclr>\n, - kclo=<kclo>\n, - kcmd=<kcmd>\n, - kcpy=<kcpy>\n, - .kcrt=<kcrt>\n, - kctab=<kctab>\n, - kdch1=<kdch1>\n, - kdl1=<kdl1>\n, - kcud1=<kcud1>\n, - krmir=<krmir>\n, - kend=<kend>\n, - kent=<kent>\n, - kel=<kel>\n, - ked=<ked>\n, - kext=<kext>\n, - kf0=<kf0>\n, - kf1=<kf1>\n, - kf10=<kf10>\n, - kf11=<kf11>\n, - kf12=<kf12>\n, - kf13=<kf13>\n, - kf14=<kf14>\n, - kf15=<kf15>\n, - kf16=<kf16>\n, - kf17=<kf17>\n, - kf18=<kf18>\n, - kf19=<kf19>\n, - kf2=<kf2>\n, - kf20=<kf20>\n, - kf21=<kf21>\n, - kf22=<kf22>\n, - kf23=<kf23>\n, - kf24=<kf24>\n, - kf25=<kf25>\n, - kf26=<kf26>\n, - kf27=<kf27>\n, - kf28=<kf28>\n, - kf29=<kf29>\n, - kf3=<kf3>\n, - kf30=<kf30>\n, - kf31=<kf31>\n, - kf32=<kf32>\n, - kf33=<kf33>\n, - kf34=<kf34>\n, - kf35=<kf35>\n, - kf36=<kf36>\n, - kf37=<kf37>\n, - kf38=<kf38>\n, - kf39=<kf39>\n, - kf4=<kf4>\n, - kf40=<kf40>\n, - kf41=<kf41>\n, - kf42=<kf42>\n, - kf43=<kf43>\n, - kf44=<kf44>\n, - kf45=<kf45>\n, - kf46=<kf46>\n, - kf47=<kf47>\n, - kf48=<kf48>\n, - kf49=<kf49>\n, - kf5=<kf5>\n, - kf50=<kf50>\n, - kf51=<kf51>\n, - kf52=<kf52>\n, - kf53=<kf53>\n, - kf54=<kf54>\n, - kf55=<kf55>\n, - kf56=<kf56>\n, - kf57=<kf57>\n, - kf58=<kf58>\n, - kf59=<kf59>\n, - kf6=<kf6>\n, - kf60=<kf60>\n, - kf61=<kf61>\n, - kf62=<kf62>\n, - kf63=<kf63>\n, - kf7=<kf7>\n, - kf8=<kf8>\n, - kf9=<kf9>\n, - kfnd=<kfnd>\n, - khlp=<khlp>\n, - khome=<khome>\n, - kich1=<kich1>\n, - kil1=<kil1>\n, - kcub1=<kcub1>\n, - kll=<kll>\n, - kmrk=<kmrk>\n, - kmsg=<kmsg>\n, - kmov=<kmov>\n, - knxt=<knxt>\n, - knp=<knp>\n, - kopn=<kopn>\n, - kopt=<kopt>\n, - kpp=<kpp>\n, - kprv=<kprv>\n, - kprt=<kprt>\n, - krdo=<krdo>\n, - kref=<kref>\n, - krfr=<krfr>\n, - krpl=<krpl>\n, - krst=<krst>\n, - kres=<kres>\n, - kcuf1=<kcuf1>\n, - ksav=<ksav>\n, - kBEG=<kBEG>\n, - kCAN=<kCAN>\n, - kCMD=<kCMD>\n, - kCPY=<kCPY>\n, - kCRT=<kCRT>\n, - kDC=<kDC>\n, - kDL=<kDL>\n, - kslt=<kslt>\n, - kEND=<kEND>\n, - kEOL=<kEOL>\n, - kEXT=<kEXT>\n, - kind=<kind>\n, - kFND=<kFND>\n, - kHLP=<kHLP>\n, - kHOM=<kHOM>\n, - kIC=<kIC>\n, - kLFT=<kLFT>\n, - kMSG=<kMSG>\n, - kMOV=<kMOV>\n, - kNXT=<kNXT>\n, - kOPT=<kOPT>\n, - kPRV=<kPRV>\n, - kPRT=<kPRT>\n, - kri=<kri>\n, - kRDO=<kRDO>\n, - kRPL=<kRPL>\n, - kRIT=<kRIT>\n, - kRES=<kRES>\n, - kSAV=<kSAV>\n, - kSPD=<kSPD>\n, - khts=<khts>\n, - kUND=<kUND>\n, - kspd=<kspd>\n, - kund=<kund>\n, - kcuu1=<kcuu1>\n, - rmkx=<rmkx>\n, - smkx=<smkx>\n, - lf0=<lf0>\n, - lf1=<lf1>\n, - lf10=<lf10>\n, - lf2=<lf2>\n, - lf3=<lf3>\n, - lf4=<lf4>\n, - lf5=<lf5>\n, - lf6=<lf6>\n, - lf7=<lf7>\n, - lf8=<lf8>\n, - lf9=<lf9>\n, - rmln=<rmln>\n, - smln=<smln>\n, - rmm=<rmm>\n, - smm=<smm>\n, - mhpa=<mhpa %p1%d>\n, - .mcud1=<mcud1>\n, - .mcub1=<mcub1>\n, - .mcuf1=<mcuf1>\n, - .mvpa=<mvpa %p1%d>\n, - .mcuu1=<mcuu1>\n, - nel=<nel>\n, - porder=<porder>\n, - oc=<oc>\n, - op=<op>\n, - pad=P, - dch=<dch %p1%d>\n, - .dl=<dl %p1%d>\n, - .cud=<cud %p1%d>\n, - .mcud=<mcud %p1%d>\n, - ich=<ich %p1%d>\n, - indn=<indn %p1%d>\n, - .il=<il %p1%d>\n, - .cub=<cub %p1%d>\n, - .mcub=<mcub %p1%d>\n, - .cuf=<cuf %p1%d>\n, - .mcuf=<mcuf %p1%d>\n, - rin=<rin %p1%d>\n, - .cuu=<cuu %p1%d>\n, - .mcuu=<mcuu %p1%d>\n, - pfkey=<pfkey %p1%d %p2%d>\n, - pfloc=<pfloc %p1%d %p2%d>\n, - pfx=<pfx %p1%d %p2%d>\n, - pln=<pln %p1%d %p2%d>\n, - mc0=<mc0>\n, - mc5p=<mc5p>\n, - mc4=<mc4 %p1%d>\n, - mc5=<mc5>\n, - rep=<rep %p1%d %p2%d>\n, - rfi=<rfi>\n, - rs1=<rs1>\n, - rs2=<rs2>\n, - rs3=<rs3>\n, - rf=<rf>\n, - rc=<rc>\n, - .vpa=<vpa %p1%d>\n, - sc=<sc>\n, - ind=<ind>\n, - ri=<ri>\n, - scs=<scs>\n, - sgr=<sgr%?%p1%t standout%;%?%p2%t underline%;%?%p3%t reverse%;%?%p4%t blink%;%?%p5%t dim%;%?%p6%t bold%;%?%p7%t invis%;%?%p8%t protect%;%?%p9%t altcharset%;>\n, - .setb=<setb>\n, - smgb=<smgb>\n, - smgbp=<smgbp %p1%d %p2%d>\n, - scp=<scp>\n, - setf=<setf>\n, - smgl=<smgl>\n, - smglp=<smglp %p1%d %p2%d>\n, - smgr=<smgr>\n, - smgrp=<smgrp %p1%d>\n, - hts=<hts>\n, - smgt=<smgt>\n, - smgtp=<smgtp %p1%d %p2%d>\n, - wind=<wind %p1%d %p2%d %p3%d %p4%d>\n, - sbim=<sbim>\n, - scsd=<scsd>\n, - rbim=<rbim>\n, - rcsd=<rcsd>\n, - subcs=<subcs>\n, - supcs=<supcs>\n, - ht=<ht>\n, - docr=<docr>\n, - tsl=<tsl %p1%d>\n, - uc=<uc>\n, - hu=<hu>\n, - xoffc=<xoffc>\n, - xonc=<xonc>\n, - zerom=<zerom>\n, - -testterm-hp|Test Term with HP glitch support, - xhp, - msgr@, - use=testterm, diff --git a/usr/src/lib/libxcurses/src/terminfo/ti b/usr/src/lib/libxcurses/src/terminfo/ti deleted file mode 100644 index 25a1cea7ee..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/ti +++ /dev/null @@ -1,36 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)ti 1.4 5/20/82 -# -# ti: TEXAS INSTRUMENTS -# -ti700|ti733|735|ti735|ti silent 700, - cr=^M$<162>, use=ti745, -ti|ti745|745|743|ti silent 745, - cr=^M, cud1=^J, ind=^J, bel=^G, cub1=^H, cols#80, hc, os, -ti800|ti omni 800, - cols#132, use=ti745, diff --git a/usr/src/lib/libxcurses/src/terminfo/trailer b/usr/src/lib/libxcurses/src/terminfo/trailer deleted file mode 100644 index da3181612f..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/trailer +++ /dev/null @@ -1,94 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# -# The following have been included for upward compatibility with previous -# names. They are considered obsolete and the new name (which typically -# contains an extra dash) should be used instead. These names will go -# away eventually (read: "soon") so you should start converting! -# -aaa20, use=aaa-20, -aaa20rev, use=aaa-20-rv, -aaa30, use=aaa-30, -aaa30rev, use=aaa-30-rv, -aaa40, use=aaa-40, -aaa40rev, use=aaa-40-rv, -aaa48, use=aaa-48, -aaa48rev, use=aaa-48-rv, -aaarev, use=aaa-48-rv, -aaa60, use=aaa-60, -aaa60rev, use=aaa-60-rv, -vt100-np, use=vt100, -aaa-29-np, use=aaa-29, -hp2621nl|2621nl, use=2621-nl, -hp2621nt|2621nt, use=2621-nt, -hp2621wl|2621wl, use=2621-wl, -9122p, use=912-2p, -9202p, use=920-2p, -9502p, use=950-2p, -9504p, use=950-4p, -950rv, use=950-rv, -950rv2p, use=950-rv2p, -950rv4p, use=950-rv4p, -aaadb, use=aaa-db, -c1004p, use=c100-4p, -c100rv, use=c100-rv, -c100rv4p, use=c100-rv4p, -c100rv4pna, use=c100-rv4pna, -c100rv4ppp, use=c100-rv4ppp, -c100rvna, use=c100-rvna, -c100rvpp, use=c100-rvpp, -c100rvs, use=c100-rvs, -c100s, use=c100-s, -c108-4, use=c108-4p, -c108-8, use=c108-8p, -c100-s|concept-s|concept100-s, use=c100, -c100-rvs|concept-rvs|concept100-rvs, use=c100-rv, -h19a|h19A, use=h19-a, -h19b, use=h19-b, -h19bs, use=h19-bs, -h19u, use=h19-u, -mime2as, use=mime2a-s, -mime2av, use=mime2a-v, -mimefb, use=mime-fb, -mimehb, use=mime-hb, -tvi2p, use=tvi-2p, -tvi9122p, use=tvi912-2p, -tvi9202p, use=tvi920-2p, -tvi9502p, use=tvi950-2p, -tvi9504p, use=tvi950-4p, -tvi950b, use=tvi950-b, -tvi950ns, use=tvi950-ns, -tvi950rv, use=tvi950-rv, -tvi950rv2p, use=tvi950-rv2p, -tvi950rv4p, use=tvi950-rv4p, -vt100am, use=vt100-am, -vt100nam, use=vt100-nam, -vt100s, use=vt100-s, -vt100w, use=vt100-w, -# -# END OF TERMINFO -# ------------------------ diff --git a/usr/src/lib/libxcurses/src/terminfo/vc b/usr/src/lib/libxcurses/src/terminfo/vc deleted file mode 100644 index 3e6f68e75c..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/vc +++ /dev/null @@ -1,78 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# - -# -# Volker Craig 2100 in ansi mode. -# -vc2100|vc2100io|Volker Craig 2100, - cols#80, lines#24, am, bw, xon, - cr=^M, bel=^G, -# Status line - hs, dsl=\E[?8k, -# Cursor one position - cuu1=\E[A, cud1=^J, cuf1=\E[C, cub1=^H, -# Cursor multiple positions - cuu=\E[%p1%dA, cud=\E[%p1%dB, cuf=\E[%p1%dC, cub=\E[%p1%dD, -# Cursor position - cup=\E[%i%p1%d;%p2%dH, home=\E[H, -# Scrolling Region - csr=\E[%p1%d;%p2%dr, sc=\E7, rc=\E8, -# Scroll down and up - ind=^J, ri=\EM, -# Area Clears - contrary to documentation, \E2J doesn't home the cursor! - el=\E[K, ed=\E[J, clear=\E[H\E[2J, -# Attributes - bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[3m, sgr0=\E[m, - smul=\E[4m, rmul=\E[m, smso=\E[4;7m, rmso=\E[m, msgr, - sgr=\E[0;%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;2m, -# Tabs - ht=^I, tbc=\E[3g, hts=\EH, it#8, -# Keypad - kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H, - kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, - pfkey=\E[?%p1%dh/%p2%s/, -# Initialization - is1=\E<\E(B\E)0\017\E[m\E[?7h\E[?3l\E[?1l\E[?11k\E[?10k\E>, - rs1=\Ec, -# Applications dependent for 10 - initialize US keys as function keys - is3=\E[?1j/\Ef5/\E[?2j/\Ef6/\E[?3j/\Ef7/\E[?4j/\Ef8/\E[?5j/\Ef9/\E[?6j/\Ef0/\E[?7j/\EF1/\E[?8j/\EF2/, - kf5=\Ef5, kf6=\Ef6, kf7=\Ef7, kf8=\Ef8, kf9=\Ef9, kf10=\Ef0, kf11=\EF1, - kf12=\EF2, - lf5=US1, lf5=US2, lf6=US3, lf7=US4, lf8=US5, lf9=US6, lf10=US7, -# -# System V only supports 10 function key labels. -# lf11=US8, lf12=US9, - -vc4404adm3a|4404adm3a|Volker Craig 4404 The Chat ADM-3A mode, - kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\E , kf5=\E\041, - kf6=\E", kf7=\E#, kf8=\E$, kf9=\E%, - ed=\EY$<40>, el=\ET$<20>, rmso=\E(, smso=\E), - use=adm3aplus, - -vc4604adm3a|4604adm3a|Volker Craig 4604 in ADM-3A mode, - kf10=\E&, kf11=\E', kf12=\E*, khome=^^, smul=\E), rmul=\E), - use=4404adm3a, diff --git a/usr/src/lib/libxcurses/src/terminfo/visual b/usr/src/lib/libxcurses/src/terminfo/visual deleted file mode 100644 index 689b2130ab..0000000000 --- a/usr/src/lib/libxcurses/src/terminfo/visual +++ /dev/null @@ -1,64 +0,0 @@ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -#ident "%Z%%M% %I% %E% SMI" -# -# @(#)visual 1.4 5/20/82 -# -# visual: VISUAL -# -# The Visual 200 beeps when you type a character in insert mode. -# This is a horribly obnoxious misfeature, and some of the entries -# below try to get around the problem by ignoring the feature or -# turning it off when inputting a character. They are said not to -# work well at 300 baud. (You could always cut the wire to the bell!) -vi200|visual 200 with function keys, - cr=^M, cud1=^J, ind=^J, bel=^G, lines#24, cols#80, - il1=\EL, am, cub1=^H, ed=\Ey, el=\Ex$<4*>, clear=\Ev, - cup=\EY%p1%' '%+%c%p2%' '%+%c, dch1=\EO$<4*>, dl1=\EM$<4*>, - home=\EH, ich1=\Ei \b\Ej, is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, - kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E , kf4=\E!, kf5=\E", kf6=\E#, - kf7=\E$, kf8=\E%, kf9=\E&, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EH, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, cvvis=\Ed, cnorm=\Ec, -vi200-rv-ic|visual 200 reverse video using insert char, - rmir=\Ej, smir=\Ei, ich1@, use=vi200-rv, -# The older Visuals didn't come with function keys. This entry uses -# smkx and rmkx so that the keypad keys can be used as function keys. -# If your version of vi doesn't support function keys you may want -# to use vi200-f. -vi200-f|visual|visual 200 no function keys, - cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, - il1=\EL, am, cub1=^H, ed=\Ey, el=\Ex$<4*>, clear=\Ev, - cup=\EY%p1%' '%+%c%p2%' '%+%c, dch1=\EO$<4*>, dl1=\EM$<4*>, - home=\EH, ich1=\Ei \b\Ej, is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, - smkx=\E=, rmkx=\E>, - kf0=\E?p, kf1=\E?q, kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, - kf7=\E?w, kf8=\E?x, kf9=\E?y, - kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EH, - cuf1=\EC, ht=^I, ri=\EI, cuu1=\EA, cvvis=\Ed, cnorm=\Ec, -vi200-rv|visual 200 reverse video, - smso=\E4, rmso=\E3, ri@, cvvis@, cnorm@, use=vi200, -vi200-ic|visual 200 using insert char, - rmir=\Ej, smir=\Ei, ich1@, use=vi200, diff --git a/usr/src/lib/smbsrv/libsmb/common/smb_util.c b/usr/src/lib/smbsrv/libsmb/common/smb_util.c index 102708b26a..27d770912a 100644 --- a/usr/src/lib/smbsrv/libsmb/common/smb_util.c +++ b/usr/src/lib/smbsrv/libsmb/common/smb_util.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ #include <ctype.h> @@ -418,8 +419,8 @@ smb_chk_hostaccess(smb_inaddr_t *ipaddr, char *access_list) char *host; int off; int i; - int netgroup_match; int response; + int clres; struct nd_hostservlist *clnames; struct in_addr inaddr; struct sockaddr_in sa; @@ -450,10 +451,7 @@ smb_chk_hostaccess(smb_inaddr_t *ipaddr, char *access_list) if (config == NULL) return (1); - if (__netdir_getbyaddr_nosrv(config, &clnames, &buf)) { - freenetconfigent(config); - return (0); - } + clres = __netdir_getbyaddr_nosrv(config, &clnames, &buf); freenetconfigent(config); for (gr = strtok_r(access_list, ":", &lasts); @@ -472,8 +470,20 @@ smb_chk_hostaccess(smb_inaddr_t *ipaddr, char *access_list) } /* - * The following loops through all the - * client's aliases. Usually it's just one name. + * First check if we have '@' entry, as smb_netmatch doesn't + * care if client address can be resolved. + */ + if (*gr == '@') + if (smb_netmatch(&buf, gr + 1)) + return (response); + /* + * No other checks can be performed if client address + * can't be resolved. + */ + if (clres) + continue; + /* + * Otherwise loop through all client hostname aliases. */ for (i = 0; i < clnames->h_cnt; i++) { host = clnames->h_hostservs[i].h_host; @@ -495,30 +505,21 @@ smb_chk_hostaccess(smb_inaddr_t *ipaddr, char *access_list) } } } else { - /* - * If the list name begins with an at - * sign then do a network comparison. + * Just do a hostname match */ - if (*gr == '@') { - if (smb_netmatch(&buf, gr + 1)) - return (response); - } else { - /* - * Just do a hostname match - */ - if (strcasecmp(gr, host) == 0) - return (response); + if (strcasecmp(gr, host) == 0) + return (response); } } - } nentries++; } - netgroup_match = smb_netgroup_match(clnames, access_list, nentries); + if (clres) + return (0); - return (netgroup_match); + return (smb_netgroup_match(clnames, access_list, nentries)); } /* diff --git a/usr/src/man/man1/find.1 b/usr/src/man/man1/find.1 index 06703ab991..29185df519 100644 --- a/usr/src/man/man1/find.1 +++ b/usr/src/man/man1/find.1 @@ -1,21 +1,45 @@ '\" te -.\" Copyright 1989 AT&T Copyright (c) -.\" 2008, Sun Microsystems, Inc. All Rights Reserved +.\" Copyright 1989 AT&T +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved. .\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved -.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at +.\" +.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for +.\" permission to reproduce portions of its copyrighted documentation. +.\" Original documentation from The Open Group can be obtained online at .\" http://www.opengroup.org/bookstore/. -.\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html. -.\" This notice shall appear on any product containing this material. -.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. -.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. -.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] -.TH find 1 "15 Aug 2008" "SunOS 5.11" "User Commands" +.\" The Institute of Electrical and Electronics Engineers and The Open Group, +.\" have given us permission to reprint portions of their documentation. +.\" In the following statement, the phrase "this text" refers to portions of +.\" the system documentation. Portions of this text are reprinted and +.\" reproduced in electronic form in the Sun OS Reference Manual, from +.\" IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- +.\" Portable Operating System Interface (POSIX), The Open Group Base +.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of +.\" Electrical and Electronics Engineers, Inc and The Open Group. In the event +.\" of any discrepancy between these versions and the original IEEE and +.\" The Open Group Standard, the original IEEE and The Open Group Standard +.\" is the referee document. The original Standard can be obtained online +.\" at http://www.opengroup.org/unix/online.html. +.\" This notice shall appear on any product containing this material. +.\" The contents of this file are subject to the terms of the Common Development +.\" and Distribution License (the "License"). You may not use this file except +.\" in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or +.\" http://www.opensolaris.org/os/licensing. See the License for the specific +.\" language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and +.\" include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, +.\" add the following below this CDDL HEADER, with the fields enclosed by +.\" brackets "[]" replaced with your own identifying information: +.\" Portions Copyright [yyyy] [name of copyright owner] +.TH find 1 "5 Sep 2011" "SunOS 5.11" "User Commands" .SH NAME find \- find files .SH SYNOPSIS .LP .nf -\fB/usr/bin/find\fR [\fB-H\fR | \fB-L\fR] \fIpath\fR... \fIexpression\fR +\fB/usr/bin/find\fR [\fB-E\fR] [\fB-H\fR | \fB-L\fR] \fIpath\fR... \fIexpression\fR .fi .LP @@ -46,6 +70,18 @@ The following options are supported: .ne 2 .mk .na +\fB\fB-E\fR\fR +.ad +.RS 6n +.rt +Interpret regular expressions followed by \fB-regex\fR and \fB-iregex\fR +primaries as extended regular expressions. +.RE + +.sp +.ne 2 +.mk +.na \fB\fB-H\fR\fR .ad .RS 6n @@ -73,7 +109,7 @@ be those of the file referenced by the link, and not the link itself. See .sp .LP Specifying more than one of the mutually-exclusive options \fB-H\fR and -\fB-L\fRis not considered an error. The last option specified determines the +\fB-L\fR is not considered an error. The last option specified determines the behavior of the utility. .SH OPERANDS .sp @@ -279,8 +315,31 @@ True if the filesystem to which the file belongs is of type \fItype\fR. .RS 17n .rt True if the file belongs to the group \fIgname\fR. If \fIgname\fR is numeric -and does not appear in the \fB/etc/group\fR file, or in the -\fBNIS\fR/\fBNIS+\fR tables, it is taken as a group \fBID\fR. +and there's no such group name, it is taken as a group \fBID\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fB-groupacl\fR \fIgname\fR\fR +.ad +.RS 17n +.rt +True if the file's ACL contains an entry for the group \fIgname\fR. +If \fIgname\fR is numeric and there's no such group name, it is taken +as a group \fBID\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fB-iname\fR \fIpattern\fR\fR +.ad +.RS 17n +.rt +Like \fB-name\fR, but the match is case insensitive. .RE .sp @@ -298,6 +357,17 @@ True if the file has inode number \fIn\fR. .ne 2 .mk .na +\fB\fB-iregex\fR \fIpattern\fR\fR +.ad +.RS 17n +.rt +Like \fB-regex\fR, but the match is case insensitive. +.RE + +.sp +.ne 2 +.mk +.na \fB\fB-links\fR \fIn\fR\fR .ad .RS 17n @@ -392,6 +462,35 @@ Formatting is done internally, without executing the \fBls\fR program. .ne 2 .mk .na +\fB\fB-maxdepth\fR \fIn\fR\fR +.ad +.RS 17n +.rt +Always true; descend at most \fIn\fR directory levels below the command +line arguments. If any \fB-maxdepth\fR primary is specified, it +applies to the entire expression even if it would not normally be +evaluated. \fB-maxdepth 0\fR limits the whole search to +the command line arguments. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fB-mindepth\fR \fIn\fR\fR +.ad +.RS 17n +.rt +Always true; do not apply any tests or actions at levels less +than \fIn\fR. If any \fB-mindepth\fR primary is specified, it applies to the +entire expression even if it would not normally be evaluated. +\fB-mindepth 1\fR processes all but the command line arguments. +.RE + +.sp +.ne 2 +.mk +.na \fB\fB-mmin\fR \fIn\fR\fR .ad .RS 17n @@ -474,8 +573,7 @@ True if the current file has been modified more recently than the argument .ad .RS 17n .rt -True if the file belongs to a group not in the \fB/etc/group\fR file, or in the -\fBNIS\fR/\fBNIS+\fR tables. +True if the file belongs to non-existing group. .RE .sp @@ -486,8 +584,7 @@ True if the file belongs to a group not in the \fB/etc/group\fR file, or in the .ad .RS 17n .rt -True if the file belongs to a user not in the \fB/etc/passwd\fR file, or in the -\fBNIS\fR/\fBNIS+\fR tables. +True if the file belongs to non-existing user. .RE .sp @@ -590,6 +687,18 @@ Always true. Causes the current pathname to be printed. .ne 2 .mk .na +\fB\fB-print0\fR\fR +.ad +.RS 17n +.rt +Always true. Causes the current pathname to be printed, terminated by an ASCII +NUL character (character code 0) instead of a newline. +.RE + +.sp +.ne 2 +.mk +.na \fB\fB-prune\fR\fR .ad .RS 17n @@ -603,6 +712,18 @@ is specified, \fB-prune\fR has no effect. .ne 2 .mk .na +\fB\fB-regex\fR \fIpattern\fR\fB +.ad +.RS 17n +.rt +True if the full path of the file matches \fIpattern\fR using regular +expressions. +.RE + +.sp +.ne 2 +.mk +.na \fB\fB-size\fR \fIn\fR[\fBc\fR]\fR .ad .RS 17n @@ -634,8 +755,20 @@ pipe), or socket, respectively. .RS 17n .rt True if the file belongs to the user \fIuname\fR. If \fIuname\fR is numeric and -does not appear as a login name in the \fB/etc/passwd\fR file, or in the -\fBNIS\fR/\fBNIS+\fR tables, it is taken as a user \fBID\fR. +there's no such user name, it is taken as a user \fBID\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fB-useracl\fR \fIuname\fR\fR +.ad +.RS 17n +.rt +True if the file's ACL contains an entry for the user \fIuname\fR. +If \fIuname\fR is numeric and there's no such user name, it is +taken as a user \fBID\fR. .RE .sp @@ -1019,9 +1152,9 @@ StandardSee \fBstandards\fR(5). .sp .LP \fBchmod\fR(1), \fBcpio\fR(1), \fBsh\fR(1), \fBtest\fR(1), \fBls\fR(1B), -\fBacl\fR(2), \fBstat\fR(2), \fBumask\fR(2), \fBattributes\fR(5), -\fBenviron\fR(5), \fBfsattr\fR(5), \fBlargefile\fR(5), \fBlocale\fR(5), -\fBstandards\fR(5) +\fBacl\fR(5), \fBregex\fR(5), \fBstat\fR(2), \fBumask\fR(2), +\fBattributes\fR(5), \fBenviron\fR(5), \fBfsattr\fR(5), \fBlargefile\fR(5), +\fBlocale\fR(5), \fBstandards\fR(5) .SH WARNINGS .sp .LP diff --git a/usr/src/man/man1m/tic.1m b/usr/src/man/man1m/tic.1m index 9fd8edc64c..cd3af131c4 100644 --- a/usr/src/man/man1m/tic.1m +++ b/usr/src/man/man1m/tic.1m @@ -1,10 +1,11 @@ '\" te .\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved. .\" Copyright 1989 AT&T +.\" Copyright 2011 Nexenta Systems, Inc. All rights Reserved. .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] -.TH tic 1M "5 Jul 1990" "SunOS 5.11" "System Administration Commands" +.TH tic 1M "Jun 25, 2011" "SunOS 5.11" "System Administration Commands" .SH NAME tic \- terminfo compiler .SH SYNOPSIS @@ -27,8 +28,7 @@ placed there instead of \fB/usr/share/lib/terminfo\fR. .sp .LP Total compiled entries cannot exceed 4096 bytes. The name field cannot exceed -128 bytes. Terminal names exceeding 14 characters will be truncated to 14 -characters and a warning message will be printed. +128 bytes. .SH OPTIONS .sp .LP diff --git a/usr/src/pkg/manifests/SUNWcs.mf b/usr/src/pkg/manifests/SUNWcs.mf index ff84521970..e504f3b98b 100644 --- a/usr/src/pkg/manifests/SUNWcs.mf +++ b/usr/src/pkg/manifests/SUNWcs.mf @@ -20,7 +20,7 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. -# Copyright 2010 Nexenta Systems, Inc. All rights reserved. +# Copyright 2010,2011 Nexenta Systems, Inc. All rights reserved. <include SUNWcs.man1.inc> <include SUNWcs.man1m.inc> @@ -246,14 +246,6 @@ dir path=usr/share/lib dir path=usr/share/lib/mailx dir path=usr/share/lib/pub dir path=usr/share/lib/tabset -dir path=usr/share/lib/terminfo -dir path=usr/share/lib/terminfo/3 -dir path=usr/share/lib/terminfo/A -dir path=usr/share/lib/terminfo/a -dir path=usr/share/lib/terminfo/s -dir path=usr/share/lib/terminfo/u -dir path=usr/share/lib/terminfo/v -dir path=usr/share/lib/terminfo/x dir path=usr/share/lib/xml group=sys dir path=usr/share/lib/xml/dtd group=sys dir path=usr/share/lib/xml/style group=sys @@ -1503,64 +1495,6 @@ file path=usr/share/lib/tabset/vt100 file path=usr/share/lib/tabset/wyse-adds file path=usr/share/lib/tabset/xerox1720 file path=usr/share/lib/termcap -file path=usr/share/lib/terminfo/A/AT386-DOS -file path=usr/share/lib/terminfo/A/AT386-DOS-M -file path=usr/share/lib/terminfo/a/ansi -file path=usr/share/lib/terminfo/a/ansi+arrows -file path=usr/share/lib/terminfo/a/ansi+cup -file path=usr/share/lib/terminfo/a/ansi+erase -file path=usr/share/lib/terminfo/a/ansi+idc -file path=usr/share/lib/terminfo/a/ansi+idl -file path=usr/share/lib/terminfo/a/ansi+idl1 -file path=usr/share/lib/terminfo/a/ansi+inittabs -file path=usr/share/lib/terminfo/a/ansi+local -file path=usr/share/lib/terminfo/a/ansi+local1 -file path=usr/share/lib/terminfo/a/ansi+pp -file path=usr/share/lib/terminfo/a/ansi+rca -file path=usr/share/lib/terminfo/a/ansi+rep -file path=usr/share/lib/terminfo/a/ansi+sgr -file path=usr/share/lib/terminfo/a/ansi+sgrbold -file path=usr/share/lib/terminfo/a/ansi+sgrdim -file path=usr/share/lib/terminfo/a/ansi+sgrso -file path=usr/share/lib/terminfo/a/ansi+sgrul -file path=usr/share/lib/terminfo/a/ansi+tabs -file path=usr/share/lib/terminfo/a/at386 -file path=usr/share/lib/terminfo/a/at386-m -file path=usr/share/lib/terminfo/s/screen -file path=usr/share/lib/terminfo/s/screen-w -file path=usr/share/lib/terminfo/s/sun -file path=usr/share/lib/terminfo/s/sun-1 -file path=usr/share/lib/terminfo/s/sun-12 -file path=usr/share/lib/terminfo/s/sun-17 -file path=usr/share/lib/terminfo/s/sun-24 -file path=usr/share/lib/terminfo/s/sun-34 -file path=usr/share/lib/terminfo/s/sun-48 -file path=usr/share/lib/terminfo/s/sun-cmd -file path=usr/share/lib/terminfo/s/sun-color -file path=usr/share/lib/terminfo/s/sun-e -file path=usr/share/lib/terminfo/s/sun-e-s -file path=usr/share/lib/terminfo/s/sun-na -file path=usr/share/lib/terminfo/s/sun-s -file path=usr/share/lib/terminfo/u/unknown -file path=usr/share/lib/terminfo/v/vs100 -file path=usr/share/lib/terminfo/v/vs100s -file path=usr/share/lib/terminfo/v/vt100 -file path=usr/share/lib/terminfo/v/vt100-bot-s -file path=usr/share/lib/terminfo/v/vt100-nam -file path=usr/share/lib/terminfo/v/vt100-nam-w -file path=usr/share/lib/terminfo/v/vt100-nav -file path=usr/share/lib/terminfo/v/vt100-nav-w -file path=usr/share/lib/terminfo/v/vt100-np -file path=usr/share/lib/terminfo/v/vt100-s -file path=usr/share/lib/terminfo/v/vt100-w -file path=usr/share/lib/terminfo/v/vt100am -file path=usr/share/lib/terminfo/v/vt100nam -file path=usr/share/lib/terminfo/v/vt100s -file path=usr/share/lib/terminfo/v/vt100w -file path=usr/share/lib/terminfo/v/vt132 -file path=usr/share/lib/terminfo/v/vt220 -file path=usr/share/lib/terminfo/x/xtermc -file path=usr/share/lib/terminfo/x/xtermm file path=usr/share/lib/unittab file path=usr/share/lib/xml/dtd/adt_record.dtd.1 file path=usr/share/lib/xml/dtd/kmfpolicy.dtd @@ -2225,48 +2159,6 @@ hardlink path=usr/sbin/tapes target=./devfsadm hardlink path=usr/sbin/unshare target=../../usr/sbin/sharemgr hardlink path=usr/sbin/update_drv target=../../usr/lib/isaexec hardlink path=usr/sbin/whodo target=../../usr/lib/isaexec -hardlink path=usr/share/lib/terminfo/3/386AT \ - target=../../../../../usr/share/lib/terminfo/a/at386 -hardlink path=usr/share/lib/terminfo/3/386AT-M \ - target=../../../../../usr/share/lib/terminfo/a/at386-m -hardlink path=usr/share/lib/terminfo/3/386at \ - target=../../../../../usr/share/lib/terminfo/a/at386 -hardlink path=usr/share/lib/terminfo/3/386at-m \ - target=../../../../../usr/share/lib/terminfo/a/at386-m -hardlink path=usr/share/lib/terminfo/A/AT386 \ - target=../../../../../usr/share/lib/terminfo/a/at386 -hardlink path=usr/share/lib/terminfo/A/AT386-M \ - target=../../../../../usr/share/lib/terminfo/a/at386-m -hardlink path=usr/share/lib/terminfo/s/sun-nic \ - target=../../../../../usr/share/lib/terminfo/s/sun-e -hardlink path=usr/share/lib/terminfo/s/sun-s-e \ - target=../../../../../usr/share/lib/terminfo/s/sun-e-s -hardlink path=usr/share/lib/terminfo/s/sun1 \ - target=../../../../../usr/share/lib/terminfo/s/sun -hardlink path=usr/share/lib/terminfo/s/sun2 \ - target=../../../../../usr/share/lib/terminfo/s/sun -hardlink path=usr/share/lib/terminfo/s/sune \ - target=../../../../../usr/share/lib/terminfo/s/sun-e -hardlink path=usr/share/lib/terminfo/v/vt100-am \ - target=../../../../../usr/share/lib/terminfo/v/vt100 -hardlink path=usr/share/lib/terminfo/v/vt100-s-bot \ - target=../../../../../usr/share/lib/terminfo/v/vt100-bot-s -hardlink path=usr/share/lib/terminfo/v/vt100-s-top \ - target=../../../../../usr/share/lib/terminfo/v/vt100-s -hardlink path=usr/share/lib/terminfo/v/vt100-top-s \ - target=../../../../../usr/share/lib/terminfo/v/vt100-s -hardlink path=usr/share/lib/terminfo/v/vt100-w-am \ - target=../../../../../usr/share/lib/terminfo/v/vt100-w -hardlink path=usr/share/lib/terminfo/v/vt100-w-nam \ - target=../../../../../usr/share/lib/terminfo/v/vt100-nam-w -hardlink path=usr/share/lib/terminfo/v/vt100-w-nav \ - target=../../../../../usr/share/lib/terminfo/v/vt100-nav-w -hardlink path=usr/share/lib/terminfo/x/xterm \ - target=../../../../../usr/share/lib/terminfo/v/vs100 -hardlink path=usr/share/lib/terminfo/x/xterm-color \ - target=../../../../../usr/share/lib/terminfo/x/xtermc -hardlink path=usr/share/lib/terminfo/x/xterms \ - target=../../../../../usr/share/lib/terminfo/v/vs100s hardlink path=usr/share/lib/zoneinfo/Africa/Asmera \ target=../../../../../usr/share/lib/zoneinfo/Africa/Asmara hardlink path=usr/share/lib/zoneinfo/Africa/Timbuktu \ @@ -2764,3 +2656,7 @@ depend fmri=runtime/perl-584 type=require # The loadkeys binary needs the keytables. # depend fmri=system/data/keyboard/keytables type=require +# +# Depend on terminfo data. +# +depend fmri=system/data/terminfo type=require diff --git a/usr/src/pkg/manifests/crypto-ca-certificates.mf b/usr/src/pkg/manifests/crypto-ca-certificates.mf index e1741a5b21..de0bc6fe86 100644 --- a/usr/src/pkg/manifests/crypto-ca-certificates.mf +++ b/usr/src/pkg/manifests/crypto-ca-certificates.mf @@ -69,7 +69,6 @@ file path=etc/certs/CA/Deutsche_Telekom_Root_CA_2.pem group=sys file path=etc/certs/CA/DigiCert_Assured_ID_Root_CA.pem group=sys file path=etc/certs/CA/DigiCert_Global_Root_CA.pem group=sys file path=etc/certs/CA/DigiCert_High_Assurance_EV_Root_CA.pem group=sys -file path=etc/certs/CA/DigiNotar_Root_CA.pem group=sys file path=etc/certs/CA/Digital_Signature_Trust_Co._Global_CA_1.pem group=sys file path=etc/certs/CA/Digital_Signature_Trust_Co._Global_CA_2.pem group=sys file path=etc/certs/CA/Digital_Signature_Trust_Co._Global_CA_3.pem group=sys @@ -419,8 +418,6 @@ link path=etc/openssl/certs/bf64f35b.0 \ target=../../certs/CA/Entrust_Root_Certification_Authority.pem link path=etc/openssl/certs/bf87590f.0 \ target=../../certs/CA/beTRUSTed_Root_CA_-_RSA_Implementation.pem -link path=etc/openssl/certs/c0cafbd2.0 \ - target=../../certs/CA/DigiNotar_Root_CA.pem link path=etc/openssl/certs/c19d42c7.0 \ target=../../certs/CA/Verisign_Class_1_Public_Primary_Certification_Authority_-_G2.pem link path=etc/openssl/certs/c215bc69.0 \ diff --git a/usr/src/pkg/manifests/print-lp.mf b/usr/src/pkg/manifests/print-lp.mf index 2e8347afa3..a8088194a7 100644 --- a/usr/src/pkg/manifests/print-lp.mf +++ b/usr/src/pkg/manifests/print-lp.mf @@ -21,6 +21,7 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright 2011 Nexenta Systems, Inc. All rights reserved. # set name=pkg.fmri value=pkg:/print/lp@$(PKGVERS) @@ -55,13 +56,6 @@ dir path=usr/lib/lp/model group=lp dir path=usr/lib/print group=lp dir path=usr/sbin dir path=usr/share -dir path=usr/share/lib -dir path=usr/share/lib/terminfo -dir path=usr/share/lib/terminfo/4 -dir path=usr/share/lib/terminfo/5 -dir path=usr/share/lib/terminfo/G -dir path=usr/share/lib/terminfo/P -dir path=usr/share/lib/terminfo/a dir path=usr/share/man dir path=usr/share/man/man1m dir path=usr/share/man/man4 @@ -132,87 +126,6 @@ file path=usr/sbin/lpforms group=lp mode=0555 file path=usr/sbin/lpshut group=lp mode=0555 file path=usr/sbin/lpsystem group=lp mode=0555 file path=usr/sbin/lpusers group=lp mode=0555 -file path=usr/share/lib/terminfo/4/40-132-6 -file path=usr/share/lib/terminfo/4/40-132-8 -file path=usr/share/lib/terminfo/4/40-80-6 -file path=usr/share/lib/terminfo/4/40-80-8 -file path=usr/share/lib/terminfo/4/442 -file path=usr/share/lib/terminfo/4/444 -file path=usr/share/lib/terminfo/4/446 -file path=usr/share/lib/terminfo/4/455 -file path=usr/share/lib/terminfo/4/457 -file path=usr/share/lib/terminfo/4/470 -file path=usr/share/lib/terminfo/4/471 -file path=usr/share/lib/terminfo/4/473 -file path=usr/share/lib/terminfo/4/474 -file path=usr/share/lib/terminfo/4/475 -file path=usr/share/lib/terminfo/4/476 -file path=usr/share/lib/terminfo/4/477 -file path=usr/share/lib/terminfo/4/477-455 -file path=usr/share/lib/terminfo/4/477-470 -file path=usr/share/lib/terminfo/4/477-5x6 -file path=usr/share/lib/terminfo/4/477-hi -file path=usr/share/lib/terminfo/4/477ibmc -file path=usr/share/lib/terminfo/4/477ibmg -file path=usr/share/lib/terminfo/4/478 -file path=usr/share/lib/terminfo/4/479 -file path=usr/share/lib/terminfo/4/495hp -file path=usr/share/lib/terminfo/4/495ibm -file path=usr/share/lib/terminfo/4/495qume -file path=usr/share/lib/terminfo/5/5310 -file path=usr/share/lib/terminfo/5/5320 -file path=usr/share/lib/terminfo/5/53x0+high -file path=usr/share/lib/terminfo/5/570eps -file path=usr/share/lib/terminfo/5/570ibm -file path=usr/share/lib/terminfo/5/571eps -file path=usr/share/lib/terminfo/5/571ibm -file path=usr/share/lib/terminfo/5/572 -file path=usr/share/lib/terminfo/5/573 -file path=usr/share/lib/terminfo/5/580eps -file path=usr/share/lib/terminfo/5/580eps-hi -file path=usr/share/lib/terminfo/5/580ibm -file path=usr/share/lib/terminfo/5/581eps -file path=usr/share/lib/terminfo/5/581eps-hi -file path=usr/share/lib/terminfo/5/581ibm -file path=usr/share/lib/terminfo/5/583eps -file path=usr/share/lib/terminfo/5/583eps-80 -file path=usr/share/lib/terminfo/5/583eps-hi -file path=usr/share/lib/terminfo/5/583eps-hi-80 -file path=usr/share/lib/terminfo/5/583ibm -file path=usr/share/lib/terminfo/5/583ibm-80 -file path=usr/share/lib/terminfo/5/593eps -file path=usr/share/lib/terminfo/5/593hp -file path=usr/share/lib/terminfo/5/593ibm -file path=usr/share/lib/terminfo/G/Gcitoh+basic -file path=usr/share/lib/terminfo/G/Gcitoh+low -file path=usr/share/lib/terminfo/G/Gdaisy+basic -file path=usr/share/lib/terminfo/G/Gdaisy+lowres -file path=usr/share/lib/terminfo/G/Gdec+basic -file path=usr/share/lib/terminfo/G/Gdec+low -file path=usr/share/lib/terminfo/G/Gep2500+basic -file path=usr/share/lib/terminfo/G/Gep2500+color -file path=usr/share/lib/terminfo/G/Gep2500+high -file path=usr/share/lib/terminfo/G/Gep2500+low -file path=usr/share/lib/terminfo/G/Gepson+basic -file path=usr/share/lib/terminfo/G/Gepson+low -file path=usr/share/lib/terminfo/G/Ghplaser+II -file path=usr/share/lib/terminfo/G/Ghplaser+basic -file path=usr/share/lib/terminfo/G/Ghplaser+high -file path=usr/share/lib/terminfo/G/Gibmc+basic -file path=usr/share/lib/terminfo/G/Gibmc+color -file path=usr/share/lib/terminfo/G/Gibmc+low+1x1 -file path=usr/share/lib/terminfo/G/Gibmc+low+5x6 -file path=usr/share/lib/terminfo/G/Gibmg+basic -file path=usr/share/lib/terminfo/G/Gibmg+low -file path=usr/share/lib/terminfo/G/Gibmxl+basic -file path=usr/share/lib/terminfo/G/Gibmxl+high+1x1 -file path=usr/share/lib/terminfo/G/Gibmxl+low+1x1 -file path=usr/share/lib/terminfo/G/Gibmxl+low+5x6 -file path=usr/share/lib/terminfo/G/Gibmxlagm+basic -file path=usr/share/lib/terminfo/P/PS -file path=usr/share/lib/terminfo/a/att477+basic1 -file path=usr/share/lib/terminfo/a/att477+basic2 -file path=usr/share/lib/terminfo/a/att583+basic file path=usr/share/man/man1m/conv_lp.1m file path=usr/share/man/man1m/conv_lpd.1m file path=usr/share/man/man1m/in.lpd.1m @@ -228,122 +141,6 @@ file path=usr/share/man/man4/printers.4 file path=usr/share/man/man4/printers.conf.4 file path=var/spool/cron/crontabs/lp group=root mode=0400 \ original_name=SUNWps:var/spool/cron/crontabs/lp preserve=true -hardlink path=usr/share/lib/terminfo/4/458 \ - target=../../../../../usr/share/lib/terminfo/4/457 -hardlink path=usr/share/lib/terminfo/4/477qume \ - target=../../../../../usr/share/lib/terminfo/4/477-455 -hardlink path=usr/share/lib/terminfo/P/PS-b \ - target=../../../../../usr/share/lib/terminfo/P/PS -hardlink path=usr/share/lib/terminfo/P/PS-br \ - target=../../../../../usr/share/lib/terminfo/P/PS -hardlink path=usr/share/lib/terminfo/P/PS-r \ - target=../../../../../usr/share/lib/terminfo/P/PS -hardlink path=usr/share/lib/terminfo/P/PSR \ - target=../../../../../usr/share/lib/terminfo/P/PS -hardlink path=usr/share/lib/terminfo/a/att40-132-6 \ - target=../../../../../usr/share/lib/terminfo/4/40-132-6 -hardlink path=usr/share/lib/terminfo/a/att40-132-8 \ - target=../../../../../usr/share/lib/terminfo/4/40-132-8 -hardlink path=usr/share/lib/terminfo/a/att40-80-6 \ - target=../../../../../usr/share/lib/terminfo/4/40-80-6 -hardlink path=usr/share/lib/terminfo/a/att40-80-8 \ - target=../../../../../usr/share/lib/terminfo/4/40-80-8 -hardlink path=usr/share/lib/terminfo/a/att442 \ - target=../../../../../usr/share/lib/terminfo/4/442 -hardlink path=usr/share/lib/terminfo/a/att444 \ - target=../../../../../usr/share/lib/terminfo/4/444 -hardlink path=usr/share/lib/terminfo/a/att446 \ - target=../../../../../usr/share/lib/terminfo/4/446 -hardlink path=usr/share/lib/terminfo/a/att455 \ - target=../../../../../usr/share/lib/terminfo/4/455 -hardlink path=usr/share/lib/terminfo/a/att457 \ - target=../../../../../usr/share/lib/terminfo/4/457 -hardlink path=usr/share/lib/terminfo/a/att458 \ - target=../../../../../usr/share/lib/terminfo/4/457 -hardlink path=usr/share/lib/terminfo/a/att470 \ - target=../../../../../usr/share/lib/terminfo/4/470 -hardlink path=usr/share/lib/terminfo/a/att471 \ - target=../../../../../usr/share/lib/terminfo/4/471 -hardlink path=usr/share/lib/terminfo/a/att473 \ - target=../../../../../usr/share/lib/terminfo/4/473 -hardlink path=usr/share/lib/terminfo/a/att474 \ - target=../../../../../usr/share/lib/terminfo/4/474 -hardlink path=usr/share/lib/terminfo/a/att475 \ - target=../../../../../usr/share/lib/terminfo/4/475 -hardlink path=usr/share/lib/terminfo/a/att476 \ - target=../../../../../usr/share/lib/terminfo/4/476 -hardlink path=usr/share/lib/terminfo/a/att477 \ - target=../../../../../usr/share/lib/terminfo/4/477 -hardlink path=usr/share/lib/terminfo/a/att477-455 \ - target=../../../../../usr/share/lib/terminfo/4/477-455 -hardlink path=usr/share/lib/terminfo/a/att477-470 \ - target=../../../../../usr/share/lib/terminfo/4/477-470 -hardlink path=usr/share/lib/terminfo/a/att477-5x6 \ - target=../../../../../usr/share/lib/terminfo/4/477-5x6 -hardlink path=usr/share/lib/terminfo/a/att477-hi \ - target=../../../../../usr/share/lib/terminfo/4/477-hi -hardlink path=usr/share/lib/terminfo/a/att477ibmc \ - target=../../../../../usr/share/lib/terminfo/4/477ibmc -hardlink path=usr/share/lib/terminfo/a/att477ibmg \ - target=../../../../../usr/share/lib/terminfo/4/477ibmg -hardlink path=usr/share/lib/terminfo/a/att477qume \ - target=../../../../../usr/share/lib/terminfo/4/477-455 -hardlink path=usr/share/lib/terminfo/a/att478 \ - target=../../../../../usr/share/lib/terminfo/4/478 -hardlink path=usr/share/lib/terminfo/a/att479 \ - target=../../../../../usr/share/lib/terminfo/4/479 -hardlink path=usr/share/lib/terminfo/a/att495hp \ - target=../../../../../usr/share/lib/terminfo/4/495hp -hardlink path=usr/share/lib/terminfo/a/att495ibm \ - target=../../../../../usr/share/lib/terminfo/4/495ibm -hardlink path=usr/share/lib/terminfo/a/att495qume \ - target=../../../../../usr/share/lib/terminfo/4/495qume -hardlink path=usr/share/lib/terminfo/a/att5310 \ - target=../../../../../usr/share/lib/terminfo/5/5310 -hardlink path=usr/share/lib/terminfo/a/att5320 \ - target=../../../../../usr/share/lib/terminfo/5/5320 -hardlink path=usr/share/lib/terminfo/a/att570eps \ - target=../../../../../usr/share/lib/terminfo/5/570eps -hardlink path=usr/share/lib/terminfo/a/att570ibm \ - target=../../../../../usr/share/lib/terminfo/5/570ibm -hardlink path=usr/share/lib/terminfo/a/att571eps \ - target=../../../../../usr/share/lib/terminfo/5/571eps -hardlink path=usr/share/lib/terminfo/a/att571ibm \ - target=../../../../../usr/share/lib/terminfo/5/571ibm -hardlink path=usr/share/lib/terminfo/a/att572 \ - target=../../../../../usr/share/lib/terminfo/5/572 -hardlink path=usr/share/lib/terminfo/a/att573 \ - target=../../../../../usr/share/lib/terminfo/5/573 -hardlink path=usr/share/lib/terminfo/a/att580eps \ - target=../../../../../usr/share/lib/terminfo/5/580eps -hardlink path=usr/share/lib/terminfo/a/att580eps-hi \ - target=../../../../../usr/share/lib/terminfo/5/580eps-hi -hardlink path=usr/share/lib/terminfo/a/att580ibm \ - target=../../../../../usr/share/lib/terminfo/5/580ibm -hardlink path=usr/share/lib/terminfo/a/att581eps \ - target=../../../../../usr/share/lib/terminfo/5/581eps -hardlink path=usr/share/lib/terminfo/a/att581eps-hi \ - target=../../../../../usr/share/lib/terminfo/5/581eps-hi -hardlink path=usr/share/lib/terminfo/a/att581ibm \ - target=../../../../../usr/share/lib/terminfo/5/581ibm -hardlink path=usr/share/lib/terminfo/a/att583eps \ - target=../../../../../usr/share/lib/terminfo/5/583eps -hardlink path=usr/share/lib/terminfo/a/att583eps-80 \ - target=../../../../../usr/share/lib/terminfo/5/583eps-80 -hardlink path=usr/share/lib/terminfo/a/att583eps-hi \ - target=../../../../../usr/share/lib/terminfo/5/583eps-hi -hardlink path=usr/share/lib/terminfo/a/att583eps-hi-80 \ - target=../../../../../usr/share/lib/terminfo/5/583eps-hi-80 -hardlink path=usr/share/lib/terminfo/a/att583ibm \ - target=../../../../../usr/share/lib/terminfo/5/583ibm -hardlink path=usr/share/lib/terminfo/a/att583ibm-80 \ - target=../../../../../usr/share/lib/terminfo/5/583ibm-80 -hardlink path=usr/share/lib/terminfo/a/att593eps \ - target=../../../../../usr/share/lib/terminfo/5/593eps -hardlink path=usr/share/lib/terminfo/a/att593hp \ - target=../../../../../usr/share/lib/terminfo/5/593hp -hardlink path=usr/share/lib/terminfo/a/att593ibm \ - target=../../../../../usr/share/lib/terminfo/5/593ibm legacy pkg=SUNWpsr \ desc="configuration and start-up files for the print service" \ name="Solaris Print - LP Server, (root)" version=13.1,REV=2009.11.11 @@ -368,3 +165,7 @@ link path=var/spool/lp/admins/lp target=../../../../etc/lp link path=var/spool/lp/bin target=../../../usr/lib/lp/bin link path=var/spool/lp/logs target=../../lp/logs link path=var/spool/lp/model target=../../../usr/lib/lp/model +# +# Depend on terminfo data. +# +depend fmri=system/data/terminfo type=require diff --git a/usr/src/pkg/manifests/system-data-terminfo.mf b/usr/src/pkg/manifests/system-data-terminfo.mf index e624311dd6..a584a7ff1e 100644 --- a/usr/src/pkg/manifests/system-data-terminfo.mf +++ b/usr/src/pkg/manifests/system-data-terminfo.mf @@ -21,6 +21,7 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright 2011 Nexenta Systems, Inc. All rights reserved. # set name=pkg.fmri value=pkg:/system/data/terminfo@$(PKGVERS) @@ -44,11 +45,13 @@ dir path=usr/share/lib/terminfo/7 dir path=usr/share/lib/terminfo/8 dir path=usr/share/lib/terminfo/9 dir path=usr/share/lib/terminfo/A -dir path=usr/share/lib/terminfo/B -dir path=usr/share/lib/terminfo/H +dir path=usr/share/lib/terminfo/E +dir path=usr/share/lib/terminfo/L dir path=usr/share/lib/terminfo/M +dir path=usr/share/lib/terminfo/N dir path=usr/share/lib/terminfo/P -dir path=usr/share/lib/terminfo/S +dir path=usr/share/lib/terminfo/Q +dir path=usr/share/lib/terminfo/X dir path=usr/share/lib/terminfo/a dir path=usr/share/lib/terminfo/b dir path=usr/share/lib/terminfo/c @@ -73,203 +76,15 @@ dir path=usr/share/lib/terminfo/u dir path=usr/share/lib/terminfo/v dir path=usr/share/lib/terminfo/w dir path=usr/share/lib/terminfo/x -dir path=usr/share/lib/terminfo/y dir path=usr/share/lib/terminfo/z -file path=usr/share/lib/terminfo/1/1520 -file path=usr/share/lib/terminfo/1/1620 -file path=usr/share/lib/terminfo/1/1620-m8 -file path=usr/share/lib/terminfo/1/1700 -file path=usr/share/lib/terminfo/1/1line -file path=usr/share/lib/terminfo/1/1linepty -file path=usr/share/lib/terminfo/2/2300 -file path=usr/share/lib/terminfo/2/2300-x40 -file path=usr/share/lib/terminfo/2/2350 -file path=usr/share/lib/terminfo/2/2350-x40 -file path=usr/share/lib/terminfo/2/2397 -file path=usr/share/lib/terminfo/2/2500 -file path=usr/share/lib/terminfo/2/2621 -file path=usr/share/lib/terminfo/2/2621-48 -file path=usr/share/lib/terminfo/2/2621-a -file path=usr/share/lib/terminfo/2/2621-ba -file path=usr/share/lib/terminfo/2/2621-fl -file path=usr/share/lib/terminfo/2/2621-nl -file path=usr/share/lib/terminfo/2/2621-nt -file path=usr/share/lib/terminfo/2/2621P -file path=usr/share/lib/terminfo/2/2621b -file path=usr/share/lib/terminfo/2/2621b-kx -file path=usr/share/lib/terminfo/2/2621b-kx-p -file path=usr/share/lib/terminfo/2/2621b-p -file path=usr/share/lib/terminfo/2/2621k45 -file path=usr/share/lib/terminfo/2/2621nl -file path=usr/share/lib/terminfo/2/2621nt -file path=usr/share/lib/terminfo/2/2621p-a -file path=usr/share/lib/terminfo/2/2621wl -file path=usr/share/lib/terminfo/2/2622 -file path=usr/share/lib/terminfo/2/2623 -file path=usr/share/lib/terminfo/2/2624 -file path=usr/share/lib/terminfo/2/2624-10p -file path=usr/share/lib/terminfo/2/2626 -file path=usr/share/lib/terminfo/2/2626-12 -file path=usr/share/lib/terminfo/2/2626-12-s -file path=usr/share/lib/terminfo/2/2626-12x40 -file path=usr/share/lib/terminfo/2/2626-ns -file path=usr/share/lib/terminfo/2/2626-s -file path=usr/share/lib/terminfo/2/2626-x40 -file path=usr/share/lib/terminfo/2/2640 -file path=usr/share/lib/terminfo/2/2640b -file path=usr/share/lib/terminfo/2/2645 -file path=usr/share/lib/terminfo/2/2648 -file path=usr/share/lib/terminfo/3/300 -file path=usr/share/lib/terminfo/3/3045 -file path=usr/share/lib/terminfo/3/31 -file path=usr/share/lib/terminfo/3/3101 -file path=usr/share/lib/terminfo/3/33 -file path=usr/share/lib/terminfo/3/333 -file path=usr/share/lib/terminfo/3/35 -file path=usr/share/lib/terminfo/3/36 -file path=usr/share/lib/terminfo/3/37 -file path=usr/share/lib/terminfo/3/380 -file path=usr/share/lib/terminfo/3/382 -file path=usr/share/lib/terminfo/3/3a -file path=usr/share/lib/terminfo/3/3a+ -file path=usr/share/lib/terminfo/4/40 -file path=usr/share/lib/terminfo/4/400 -file path=usr/share/lib/terminfo/4/4012 -file path=usr/share/lib/terminfo/4/4013 -file path=usr/share/lib/terminfo/4/4014 -file path=usr/share/lib/terminfo/4/4014-sm -file path=usr/share/lib/terminfo/4/4015 -file path=usr/share/lib/terminfo/4/4015-sm -file path=usr/share/lib/terminfo/4/4023 -file path=usr/share/lib/terminfo/4/4024 -file path=usr/share/lib/terminfo/4/4025-17 -file path=usr/share/lib/terminfo/4/4025-17-ws -file path=usr/share/lib/terminfo/4/4025-ex -file path=usr/share/lib/terminfo/4/4080 -file path=usr/share/lib/terminfo/4/4105 -file path=usr/share/lib/terminfo/4/4105-30 -file path=usr/share/lib/terminfo/4/4107 -file path=usr/share/lib/terminfo/4/4112 -file path=usr/share/lib/terminfo/4/4112-5 -file path=usr/share/lib/terminfo/4/4112-d -file path=usr/share/lib/terminfo/4/4115 -file path=usr/share/lib/terminfo/4/42 -file path=usr/share/lib/terminfo/4/42-nl -file path=usr/share/lib/terminfo/4/4205 -file path=usr/share/lib/terminfo/4/43 -file path=usr/share/lib/terminfo/4/4410 -file path=usr/share/lib/terminfo/4/4410-nfk -file path=usr/share/lib/terminfo/4/4410-nsl -file path=usr/share/lib/terminfo/4/4410-w -file path=usr/share/lib/terminfo/4/4410v1 -file path=usr/share/lib/terminfo/4/4410v1-w -file path=usr/share/lib/terminfo/4/4415 -file path=usr/share/lib/terminfo/4/4415+nl -file path=usr/share/lib/terminfo/4/4415-nl -file path=usr/share/lib/terminfo/4/4415-rv -file path=usr/share/lib/terminfo/4/4415-rv-nl -file path=usr/share/lib/terminfo/4/4415-w -file path=usr/share/lib/terminfo/4/4415-w-nl -file path=usr/share/lib/terminfo/4/4415-w-rv -file path=usr/share/lib/terminfo/4/4415-w-rv-nl -file path=usr/share/lib/terminfo/4/4418 -file path=usr/share/lib/terminfo/4/4418-w -file path=usr/share/lib/terminfo/4/4420 -file path=usr/share/lib/terminfo/4/4424 -file path=usr/share/lib/terminfo/4/4424-1 -file path=usr/share/lib/terminfo/4/4425 -file path=usr/share/lib/terminfo/4/4425-fk -file path=usr/share/lib/terminfo/4/4425-nl -file path=usr/share/lib/terminfo/4/4425-nl-w -file path=usr/share/lib/terminfo/4/4425-w -file path=usr/share/lib/terminfo/4/4425-w-fk -file path=usr/share/lib/terminfo/4/4426 -file path=usr/share/lib/terminfo/5/500 -file path=usr/share/lib/terminfo/5/505 -file path=usr/share/lib/terminfo/5/505-22 -file path=usr/share/lib/terminfo/5/505-24 -file path=usr/share/lib/terminfo/5/5051 -file path=usr/share/lib/terminfo/5/510A -file path=usr/share/lib/terminfo/5/510D -file path=usr/share/lib/terminfo/5/513 -file path=usr/share/lib/terminfo/5/5420_2 -file path=usr/share/lib/terminfo/5/5420_2-w -file path=usr/share/lib/terminfo/5/5520 -file path=usr/share/lib/terminfo/5/5620 -file path=usr/share/lib/terminfo/5/5620-24 -file path=usr/share/lib/terminfo/5/5620-34 -file path=usr/share/lib/terminfo/5/5630 -file path=usr/share/lib/terminfo/5/5630-24 -file path=usr/share/lib/terminfo/6/605 -file path=usr/share/lib/terminfo/6/605-w -file path=usr/share/lib/terminfo/6/605V2 -file path=usr/share/lib/terminfo/6/605V2-w -file path=usr/share/lib/terminfo/6/610 -file path=usr/share/lib/terminfo/6/610-103k -file path=usr/share/lib/terminfo/6/610-103k-w -file path=usr/share/lib/terminfo/6/610-w -file path=usr/share/lib/terminfo/6/615 -file path=usr/share/lib/terminfo/6/615-103k -file path=usr/share/lib/terminfo/6/615-103k-w -file path=usr/share/lib/terminfo/6/615-w -file path=usr/share/lib/terminfo/6/615CMT-102k -file path=usr/share/lib/terminfo/6/615CMT-102k-w -file path=usr/share/lib/terminfo/6/615CMT-98k -file path=usr/share/lib/terminfo/6/615CMT-98k-w -file path=usr/share/lib/terminfo/6/620 -file path=usr/share/lib/terminfo/6/620-103k -file path=usr/share/lib/terminfo/6/620-103k-w -file path=usr/share/lib/terminfo/6/620-w -file path=usr/share/lib/terminfo/6/6300+ -file path=usr/share/lib/terminfo/7/705c -file path=usr/share/lib/terminfo/7/730 -file path=usr/share/lib/terminfo/7/730-24 -file path=usr/share/lib/terminfo/7/730-41 -file path=usr/share/lib/terminfo/7/7300 -file path=usr/share/lib/terminfo/7/730MTG-41r -file path=usr/share/lib/terminfo/7/730MTGr -file path=usr/share/lib/terminfo/7/730MTGr-24 -file path=usr/share/lib/terminfo/7/735 -file path=usr/share/lib/terminfo/7/743 -file path=usr/share/lib/terminfo/7/7550 -file path=usr/share/lib/terminfo/7/7900 -file path=usr/share/lib/terminfo/7/7900-na -file path=usr/share/lib/terminfo/7/7900iv -file path=usr/share/lib/terminfo/7/7901 -file path=usr/share/lib/terminfo/8/8001 -file path=usr/share/lib/terminfo/8/820 -file path=usr/share/lib/terminfo/8/8510 -file path=usr/share/lib/terminfo/9/910 -file path=usr/share/lib/terminfo/9/910+ -file path=usr/share/lib/terminfo/9/912 -file path=usr/share/lib/terminfo/9/912-2p -file path=usr/share/lib/terminfo/9/9122p -file path=usr/share/lib/terminfo/9/912b -file path=usr/share/lib/terminfo/9/912cc -file path=usr/share/lib/terminfo/9/9202p -file path=usr/share/lib/terminfo/9/920b -file path=usr/share/lib/terminfo/9/925 -file path=usr/share/lib/terminfo/9/950 -file path=usr/share/lib/terminfo/9/950-2p -file path=usr/share/lib/terminfo/9/950-4p -file path=usr/share/lib/terminfo/9/950-rv -file path=usr/share/lib/terminfo/9/950-rv-2p -file path=usr/share/lib/terminfo/9/950-rv-4p -file path=usr/share/lib/terminfo/9/9502p -file path=usr/share/lib/terminfo/9/9504p -file path=usr/share/lib/terminfo/9/950rv -file path=usr/share/lib/terminfo/9/950rv2p -file path=usr/share/lib/terminfo/9/950rv4p -file path=usr/share/lib/terminfo/9/970 -file path=usr/share/lib/terminfo/9/970-ns -file path=usr/share/lib/terminfo/9/970-r -file path=usr/share/lib/terminfo/9/970-rw -file path=usr/share/lib/terminfo/M/MZ -file path=usr/share/lib/terminfo/S/SYS75 -file path=usr/share/lib/terminfo/S/SYS75-103k -file path=usr/share/lib/terminfo/S/SYS75-103k-w -file path=usr/share/lib/terminfo/S/SYS75-w -file path=usr/share/lib/terminfo/a/a980 +file path=usr/share/lib/terminfo/9/9term +file path=usr/share/lib/terminfo/E/Eterm +file path=usr/share/lib/terminfo/E/Eterm-256color +file path=usr/share/lib/terminfo/E/Eterm-88color +file path=usr/share/lib/terminfo/M/MtxOrb +file path=usr/share/lib/terminfo/M/MtxOrb162 +file path=usr/share/lib/terminfo/M/MtxOrb204 +file path=usr/share/lib/terminfo/N/NCR260VT300WPP file path=usr/share/lib/terminfo/a/aaa file path=usr/share/lib/terminfo/a/aaa+dec file path=usr/share/lib/terminfo/a/aaa+rv @@ -282,182 +97,475 @@ file path=usr/share/lib/terminfo/a/aaa-24 file path=usr/share/lib/terminfo/a/aaa-24-rv file path=usr/share/lib/terminfo/a/aaa-26 file path=usr/share/lib/terminfo/a/aaa-28 -file path=usr/share/lib/terminfo/a/aaa-29 -file path=usr/share/lib/terminfo/a/aaa-29-ctxt -file path=usr/share/lib/terminfo/a/aaa-29-np -file path=usr/share/lib/terminfo/a/aaa-29-rv -file path=usr/share/lib/terminfo/a/aaa-29-rv-ctxt file path=usr/share/lib/terminfo/a/aaa-30-ctxt file path=usr/share/lib/terminfo/a/aaa-30-rv file path=usr/share/lib/terminfo/a/aaa-30-rv-ctxt file path=usr/share/lib/terminfo/a/aaa-30-s -file path=usr/share/lib/terminfo/a/aaa-30-s-ctxt file path=usr/share/lib/terminfo/a/aaa-30-s-rv -file path=usr/share/lib/terminfo/a/aaa-30-s-rv-ct file path=usr/share/lib/terminfo/a/aaa-36 file path=usr/share/lib/terminfo/a/aaa-36-rv file path=usr/share/lib/terminfo/a/aaa-40 file path=usr/share/lib/terminfo/a/aaa-40-rv file path=usr/share/lib/terminfo/a/aaa-48 file path=usr/share/lib/terminfo/a/aaa-48-rv -file path=usr/share/lib/terminfo/a/aaa-59 file path=usr/share/lib/terminfo/a/aaa-60 +file path=usr/share/lib/terminfo/a/aaa-60-dec-rv file path=usr/share/lib/terminfo/a/aaa-60-rv file path=usr/share/lib/terminfo/a/aaa-60-s file path=usr/share/lib/terminfo/a/aaa-60-s-rv -file path=usr/share/lib/terminfo/a/aaa-60-s-rv-de file path=usr/share/lib/terminfo/a/aaa-db file path=usr/share/lib/terminfo/a/aaa-rv-unk -file path=usr/share/lib/terminfo/a/aaa18 -file path=usr/share/lib/terminfo/a/aaa20 -file path=usr/share/lib/terminfo/a/aaa22 -file path=usr/share/lib/terminfo/a/aaa24 -file path=usr/share/lib/terminfo/a/aaa26 -file path=usr/share/lib/terminfo/a/aaa28 -file path=usr/share/lib/terminfo/a/aaa29 -file path=usr/share/lib/terminfo/a/aaa30 -file path=usr/share/lib/terminfo/a/aaa36 -file path=usr/share/lib/terminfo/a/aaa40 -file path=usr/share/lib/terminfo/a/aaa48 -file path=usr/share/lib/terminfo/a/aaa59 -file path=usr/share/lib/terminfo/a/aaa60 -file path=usr/share/lib/terminfo/a/aaadb +file path=usr/share/lib/terminfo/a/aaa-s-ctxt +file path=usr/share/lib/terminfo/a/aaa-s-rv-ctxt +file path=usr/share/lib/terminfo/a/aas1901 +file path=usr/share/lib/terminfo/a/abm80 +file path=usr/share/lib/terminfo/a/abm85 +file path=usr/share/lib/terminfo/a/abm85e +file path=usr/share/lib/terminfo/a/abm85h +file path=usr/share/lib/terminfo/a/abm85h-old file path=usr/share/lib/terminfo/a/act4 file path=usr/share/lib/terminfo/a/act5 -file path=usr/share/lib/terminfo/a/act5-s file path=usr/share/lib/terminfo/a/addrinfo -file path=usr/share/lib/terminfo/a/adm1 +file path=usr/share/lib/terminfo/a/adds980 +file path=usr/share/lib/terminfo/a/adm+sgr +file path=usr/share/lib/terminfo/a/adm11 +file path=usr/share/lib/terminfo/a/adm1178 +file path=usr/share/lib/terminfo/a/adm12 +file path=usr/share/lib/terminfo/a/adm1a file path=usr/share/lib/terminfo/a/adm2 +file path=usr/share/lib/terminfo/a/adm20 file path=usr/share/lib/terminfo/a/adm21 +file path=usr/share/lib/terminfo/a/adm22 file path=usr/share/lib/terminfo/a/adm3 +file path=usr/share/lib/terminfo/a/adm31 +file path=usr/share/lib/terminfo/a/adm31-old +file path=usr/share/lib/terminfo/a/adm36 +file path=usr/share/lib/terminfo/a/adm3a +file path=usr/share/lib/terminfo/a/adm3a+ +file path=usr/share/lib/terminfo/a/adm42 +file path=usr/share/lib/terminfo/a/adm42-ns file path=usr/share/lib/terminfo/a/adm5 -file path=usr/share/lib/terminfo/a/aed -file path=usr/share/lib/terminfo/a/agile -file path=usr/share/lib/terminfo/a/aj +file path=usr/share/lib/terminfo/a/aepro +file path=usr/share/lib/terminfo/a/aixterm +file path=usr/share/lib/terminfo/a/aixterm-16color +file path=usr/share/lib/terminfo/a/aixterm-m +file path=usr/share/lib/terminfo/a/aixterm-m-old +file path=usr/share/lib/terminfo/a/aj510 +file path=usr/share/lib/terminfo/a/aj830 file path=usr/share/lib/terminfo/a/alto-h19 -file path=usr/share/lib/terminfo/a/ampex +file path=usr/share/lib/terminfo/a/altos2 +file path=usr/share/lib/terminfo/a/altos3 +file path=usr/share/lib/terminfo/a/altos4 +file path=usr/share/lib/terminfo/a/altos7 +file path=usr/share/lib/terminfo/a/altos7pc +file path=usr/share/lib/terminfo/a/amiga +file path=usr/share/lib/terminfo/a/amiga-8bit +file path=usr/share/lib/terminfo/a/amiga-h +file path=usr/share/lib/terminfo/a/amiga-vnc file path=usr/share/lib/terminfo/a/ampex175 file path=usr/share/lib/terminfo/a/ampex175-b -file path=usr/share/lib/terminfo/a/apple +file path=usr/share/lib/terminfo/a/ampex210 +file path=usr/share/lib/terminfo/a/ampex219 +file path=usr/share/lib/terminfo/a/ampex219w +file path=usr/share/lib/terminfo/a/ampex232 +file path=usr/share/lib/terminfo/a/ampex232w +file path=usr/share/lib/terminfo/a/ampex80 +file path=usr/share/lib/terminfo/a/annarbor4080 +file path=usr/share/lib/terminfo/a/ansi +file path=usr/share/lib/terminfo/a/ansi+arrows +file path=usr/share/lib/terminfo/a/ansi+csr +file path=usr/share/lib/terminfo/a/ansi+cup +file path=usr/share/lib/terminfo/a/ansi+enq +file path=usr/share/lib/terminfo/a/ansi+erase +file path=usr/share/lib/terminfo/a/ansi+idc +file path=usr/share/lib/terminfo/a/ansi+idl +file path=usr/share/lib/terminfo/a/ansi+idl1 +file path=usr/share/lib/terminfo/a/ansi+inittabs +file path=usr/share/lib/terminfo/a/ansi+local +file path=usr/share/lib/terminfo/a/ansi+local1 +file path=usr/share/lib/terminfo/a/ansi+pp +file path=usr/share/lib/terminfo/a/ansi+rca +file path=usr/share/lib/terminfo/a/ansi+rep +file path=usr/share/lib/terminfo/a/ansi+sgr +file path=usr/share/lib/terminfo/a/ansi+sgrbold +file path=usr/share/lib/terminfo/a/ansi+sgrdim +file path=usr/share/lib/terminfo/a/ansi+sgrso +file path=usr/share/lib/terminfo/a/ansi+sgrul +file path=usr/share/lib/terminfo/a/ansi+tabs +file path=usr/share/lib/terminfo/a/ansi-color-2-emx +file path=usr/share/lib/terminfo/a/ansi-color-3-emx +file path=usr/share/lib/terminfo/a/ansi-emx +file path=usr/share/lib/terminfo/a/ansi-generic +file path=usr/share/lib/terminfo/a/ansi-m +file path=usr/share/lib/terminfo/a/ansi-mini +file path=usr/share/lib/terminfo/a/ansi-mr +file path=usr/share/lib/terminfo/a/ansi-mtabs +file path=usr/share/lib/terminfo/a/ansi-nt +file path=usr/share/lib/terminfo/a/ansi.sys +file path=usr/share/lib/terminfo/a/ansi.sys-old +file path=usr/share/lib/terminfo/a/ansi.sysk +file path=usr/share/lib/terminfo/a/ansi77 +file path=usr/share/lib/terminfo/a/apollo +file path=usr/share/lib/terminfo/a/apollo_15P +file path=usr/share/lib/terminfo/a/apollo_19L +file path=usr/share/lib/terminfo/a/apollo_color +file path=usr/share/lib/terminfo/a/apple-80 +file path=usr/share/lib/terminfo/a/apple-ae file path=usr/share/lib/terminfo/a/apple-soroc -file path=usr/share/lib/terminfo/a/arpanet -file path=usr/share/lib/terminfo/a/attgeneric +file path=usr/share/lib/terminfo/a/apple-uterm +file path=usr/share/lib/terminfo/a/apple-uterm-vb +file path=usr/share/lib/terminfo/a/apple-videx +file path=usr/share/lib/terminfo/a/apple-videx2 +file path=usr/share/lib/terminfo/a/apple-videx3 +file path=usr/share/lib/terminfo/a/apple-vm80 +file path=usr/share/lib/terminfo/a/apple2e +file path=usr/share/lib/terminfo/a/apple2e-p +file path=usr/share/lib/terminfo/a/apple80p +file path=usr/share/lib/terminfo/a/appleII +file path=usr/share/lib/terminfo/a/appleIIgs +file path=usr/share/lib/terminfo/a/arm100 +file path=usr/share/lib/terminfo/a/arm100-w +file path=usr/share/lib/terminfo/a/atari-old +file path=usr/share/lib/terminfo/a/aterm +file path=usr/share/lib/terminfo/a/att2300 +file path=usr/share/lib/terminfo/a/att2350 +file path=usr/share/lib/terminfo/a/att4410 +file path=usr/share/lib/terminfo/a/att4410v1-w +file path=usr/share/lib/terminfo/a/att4415 +file path=usr/share/lib/terminfo/a/att4415+nl +file path=usr/share/lib/terminfo/a/att4415-nl +file path=usr/share/lib/terminfo/a/att4415-rv +file path=usr/share/lib/terminfo/a/att4415-rv-nl +file path=usr/share/lib/terminfo/a/att4415-w +file path=usr/share/lib/terminfo/a/att4415-w-nl +file path=usr/share/lib/terminfo/a/att4415-w-rv +file path=usr/share/lib/terminfo/a/att4415-w-rv-n +file path=usr/share/lib/terminfo/a/att4418 +file path=usr/share/lib/terminfo/a/att4418-w +file path=usr/share/lib/terminfo/a/att4420 +file path=usr/share/lib/terminfo/a/att4424 +file path=usr/share/lib/terminfo/a/att4424-1 +file path=usr/share/lib/terminfo/a/att4424m +file path=usr/share/lib/terminfo/a/att4426 +file path=usr/share/lib/terminfo/a/att500 +file path=usr/share/lib/terminfo/a/att505 +file path=usr/share/lib/terminfo/a/att505-24 +file path=usr/share/lib/terminfo/a/att510a +file path=usr/share/lib/terminfo/a/att510d +file path=usr/share/lib/terminfo/a/att5310 +file path=usr/share/lib/terminfo/a/att5410-w +file path=usr/share/lib/terminfo/a/att5410v1 +file path=usr/share/lib/terminfo/a/att5420_2 +file path=usr/share/lib/terminfo/a/att5420_2-w +file path=usr/share/lib/terminfo/a/att5425 +file path=usr/share/lib/terminfo/a/att5425-nl +file path=usr/share/lib/terminfo/a/att5425-w +file path=usr/share/lib/terminfo/a/att5620 +file path=usr/share/lib/terminfo/a/att5620-1 +file path=usr/share/lib/terminfo/a/att5620-24 +file path=usr/share/lib/terminfo/a/att5620-34 +file path=usr/share/lib/terminfo/a/att5620-s +file path=usr/share/lib/terminfo/a/att605 +file path=usr/share/lib/terminfo/a/att605-pc +file path=usr/share/lib/terminfo/a/att605-w +file path=usr/share/lib/terminfo/a/att610 +file path=usr/share/lib/terminfo/a/att610-103k +file path=usr/share/lib/terminfo/a/att610-103k-w +file path=usr/share/lib/terminfo/a/att610-w +file path=usr/share/lib/terminfo/a/att615 +file path=usr/share/lib/terminfo/a/att615-103k +file path=usr/share/lib/terminfo/a/att615-103k-w +file path=usr/share/lib/terminfo/a/att615-w +file path=usr/share/lib/terminfo/a/att620 +file path=usr/share/lib/terminfo/a/att620-103k +file path=usr/share/lib/terminfo/a/att620-103k-w +file path=usr/share/lib/terminfo/a/att620-w +file path=usr/share/lib/terminfo/a/att630 +file path=usr/share/lib/terminfo/a/att630-24 +file path=usr/share/lib/terminfo/a/att6386 +file path=usr/share/lib/terminfo/a/att700 +file path=usr/share/lib/terminfo/a/att730 +file path=usr/share/lib/terminfo/a/att730-24 +file path=usr/share/lib/terminfo/a/att730-41 +file path=usr/share/lib/terminfo/a/att7300 +file path=usr/share/lib/terminfo/a/att730r +file path=usr/share/lib/terminfo/a/att730r-24 +file path=usr/share/lib/terminfo/a/att730r-41 +file path=usr/share/lib/terminfo/a/avatar +file path=usr/share/lib/terminfo/a/avatar0 +file path=usr/share/lib/terminfo/a/avatar0+ file path=usr/share/lib/terminfo/a/avt file path=usr/share/lib/terminfo/a/avt+s file path=usr/share/lib/terminfo/a/avt-ns file path=usr/share/lib/terminfo/a/avt-rv file path=usr/share/lib/terminfo/a/avt-rv-ns -file path=usr/share/lib/terminfo/a/avt-rv-w file path=usr/share/lib/terminfo/a/avt-w file path=usr/share/lib/terminfo/a/avt-w-ns +file path=usr/share/lib/terminfo/a/avt-w-rv file path=usr/share/lib/terminfo/a/avt-w-rv-ns +file path=usr/share/lib/terminfo/a/aws +file path=usr/share/lib/terminfo/a/awsc file path=usr/share/lib/terminfo/b/bantam -file path=usr/share/lib/terminfo/b/bc +file path=usr/share/lib/terminfo/b/basis file path=usr/share/lib/terminfo/b/beacon -file path=usr/share/lib/terminfo/b/beacon-s +file path=usr/share/lib/terminfo/b/beehive +file path=usr/share/lib/terminfo/b/beehive3 file path=usr/share/lib/terminfo/b/beehive4 -file path=usr/share/lib/terminfo/b/beehiveIIIm +file path=usr/share/lib/terminfo/b/beterm file path=usr/share/lib/terminfo/b/bg1.25 file path=usr/share/lib/terminfo/b/bg1.25nv file path=usr/share/lib/terminfo/b/bg1.25rv file path=usr/share/lib/terminfo/b/bg2.0 -file path=usr/share/lib/terminfo/b/bg2.0nv file path=usr/share/lib/terminfo/b/bg2.0rv -file path=usr/share/lib/terminfo/b/bg3.10 -file path=usr/share/lib/terminfo/b/bg3.10nv -file path=usr/share/lib/terminfo/b/bg3.10rv file path=usr/share/lib/terminfo/b/bitgraph file path=usr/share/lib/terminfo/b/blit -file path=usr/share/lib/terminfo/b/blitlayer -file path=usr/share/lib/terminfo/b/bussiplexer +file path=usr/share/lib/terminfo/b/bobcat +file path=usr/share/lib/terminfo/b/bq300 +file path=usr/share/lib/terminfo/b/bq300-8 +file path=usr/share/lib/terminfo/b/bq300-8-pc +file path=usr/share/lib/terminfo/b/bq300-8-pc-rv +file path=usr/share/lib/terminfo/b/bq300-8-pc-w +file path=usr/share/lib/terminfo/b/bq300-8-pc-w-rv +file path=usr/share/lib/terminfo/b/bq300-8rv +file path=usr/share/lib/terminfo/b/bq300-8w +file path=usr/share/lib/terminfo/b/bq300-pc +file path=usr/share/lib/terminfo/b/bq300-pc-rv +file path=usr/share/lib/terminfo/b/bq300-pc-w +file path=usr/share/lib/terminfo/b/bq300-pc-w-rv +file path=usr/share/lib/terminfo/b/bq300-rv +file path=usr/share/lib/terminfo/b/bq300-w +file path=usr/share/lib/terminfo/b/bq300-w-8rv +file path=usr/share/lib/terminfo/b/bq300-w-rv +file path=usr/share/lib/terminfo/b/bsdos-pc +file path=usr/share/lib/terminfo/b/bsdos-pc-m +file path=usr/share/lib/terminfo/b/bsdos-pc-nobold +file path=usr/share/lib/terminfo/b/bsdos-ppc +file path=usr/share/lib/terminfo/b/bsdos-sparc +file path=usr/share/lib/terminfo/b/bterm file path=usr/share/lib/terminfo/c/c100 -file path=usr/share/lib/terminfo/c/c100-1p file path=usr/share/lib/terminfo/c/c100-rv -file path=usr/share/lib/terminfo/c/c100-rv-4p-na -file path=usr/share/lib/terminfo/c/c100-rv-pp -file path=usr/share/lib/terminfo/c/c1004p -file path=usr/share/lib/terminfo/c/c100rv -file path=usr/share/lib/terminfo/c/c100rv4p -file path=usr/share/lib/terminfo/c/c100rv4pna -file path=usr/share/lib/terminfo/c/c100rv4ppp -file path=usr/share/lib/terminfo/c/c100rvna -file path=usr/share/lib/terminfo/c/c100rvpp -file path=usr/share/lib/terminfo/c/c100rvs -file path=usr/share/lib/terminfo/c/c100s file path=usr/share/lib/terminfo/c/c108 -file path=usr/share/lib/terminfo/c/c108+acs -file path=usr/share/lib/terminfo/c/c108-4 file path=usr/share/lib/terminfo/c/c108-4p -file path=usr/share/lib/terminfo/c/c108-4p-acs -file path=usr/share/lib/terminfo/c/c108-8 -file path=usr/share/lib/terminfo/c/c108-8p-acs -file path=usr/share/lib/terminfo/c/c108-8p-na -file path=usr/share/lib/terminfo/c/c108-8p-rv-na -file path=usr/share/lib/terminfo/c/c108-na-acs file path=usr/share/lib/terminfo/c/c108-rv file path=usr/share/lib/terminfo/c/c108-rv-4p -file path=usr/share/lib/terminfo/c/c108-rv-4p-acs -file path=usr/share/lib/terminfo/c/c108-rv-8p-acs -file path=usr/share/lib/terminfo/c/c108-rv-na-acs file path=usr/share/lib/terminfo/c/c108-w -file path=usr/share/lib/terminfo/c/c108-w-acs file path=usr/share/lib/terminfo/c/ca22851 -file path=usr/share/lib/terminfo/c/carlock -file path=usr/share/lib/terminfo/c/cb-unix +file path=usr/share/lib/terminfo/c/cad68-2 +file path=usr/share/lib/terminfo/c/cad68-3 file path=usr/share/lib/terminfo/c/cbblit -file path=usr/share/lib/terminfo/c/cdc -file path=usr/share/lib/terminfo/c/cdc456tst -file path=usr/share/lib/terminfo/c/cdi +file path=usr/share/lib/terminfo/c/cbunix +file path=usr/share/lib/terminfo/c/cci +file path=usr/share/lib/terminfo/c/cdc456 +file path=usr/share/lib/terminfo/c/cdc721 +file path=usr/share/lib/terminfo/c/cdc721-esc +file path=usr/share/lib/terminfo/c/cdc721ll +file path=usr/share/lib/terminfo/c/cdc752 +file path=usr/share/lib/terminfo/c/cdc756 file path=usr/share/lib/terminfo/c/cg7900 -file path=usr/share/lib/terminfo/c/citoh+basic -file path=usr/share/lib/terminfo/c/citoh+low -file path=usr/share/lib/terminfo/c/coherent -file path=usr/share/lib/terminfo/c/colorscan -file path=usr/share/lib/terminfo/c/compucolor2 -file path=usr/share/lib/terminfo/c/cops +file path=usr/share/lib/terminfo/c/cit101 +file path=usr/share/lib/terminfo/c/cit101e +file path=usr/share/lib/terminfo/c/cit101e-132 +file path=usr/share/lib/terminfo/c/cit101e-n +file path=usr/share/lib/terminfo/c/cit101e-n132 +file path=usr/share/lib/terminfo/c/cit101e-rv +file path=usr/share/lib/terminfo/c/cit500 +file path=usr/share/lib/terminfo/c/cit80 +file path=usr/share/lib/terminfo/c/citoh +file path=usr/share/lib/terminfo/c/citoh-6lpi +file path=usr/share/lib/terminfo/c/citoh-8lpi +file path=usr/share/lib/terminfo/c/citoh-comp +file path=usr/share/lib/terminfo/c/citoh-elite +file path=usr/share/lib/terminfo/c/citoh-pica +file path=usr/share/lib/terminfo/c/citoh-prop +file path=usr/share/lib/terminfo/c/coco3 +file path=usr/share/lib/terminfo/c/color_xterm +file path=usr/share/lib/terminfo/c/commodore +file path=usr/share/lib/terminfo/c/cons25 +file path=usr/share/lib/terminfo/c/cons25-debian +file path=usr/share/lib/terminfo/c/cons25-m +file path=usr/share/lib/terminfo/c/cons25l1 +file path=usr/share/lib/terminfo/c/cons25l1-m +file path=usr/share/lib/terminfo/c/cons25r +file path=usr/share/lib/terminfo/c/cons25r-m +file path=usr/share/lib/terminfo/c/cons25w +file path=usr/share/lib/terminfo/c/cons30 +file path=usr/share/lib/terminfo/c/cons30-m +file path=usr/share/lib/terminfo/c/cons43 +file path=usr/share/lib/terminfo/c/cons43-m +file path=usr/share/lib/terminfo/c/cons50 +file path=usr/share/lib/terminfo/c/cons50-m +file path=usr/share/lib/terminfo/c/cons50l1 +file path=usr/share/lib/terminfo/c/cons50l1-m +file path=usr/share/lib/terminfo/c/cons50r +file path=usr/share/lib/terminfo/c/cons50r-m +file path=usr/share/lib/terminfo/c/cons60 +file path=usr/share/lib/terminfo/c/cons60-m +file path=usr/share/lib/terminfo/c/cons60l1 +file path=usr/share/lib/terminfo/c/cons60l1-m +file path=usr/share/lib/terminfo/c/cons60r +file path=usr/share/lib/terminfo/c/cons60r-m +file path=usr/share/lib/terminfo/c/contel300 +file path=usr/share/lib/terminfo/c/contel301 +file path=usr/share/lib/terminfo/c/cops10 +file path=usr/share/lib/terminfo/c/crt +file path=usr/share/lib/terminfo/c/cs10 file path=usr/share/lib/terminfo/c/cs10-w -file path=usr/share/lib/terminfo/c/ct82 file path=usr/share/lib/terminfo/c/ct8500 file path=usr/share/lib/terminfo/c/ctrm -file path=usr/share/lib/terminfo/d/d100 +file path=usr/share/lib/terminfo/c/cyb110 +file path=usr/share/lib/terminfo/c/cyb83 +file path=usr/share/lib/terminfo/c/cygwin +file path=usr/share/lib/terminfo/c/cygwinB19 +file path=usr/share/lib/terminfo/c/cygwinDBG file path=usr/share/lib/terminfo/d/d132 +file path=usr/share/lib/terminfo/d/d200 +file path=usr/share/lib/terminfo/d/d210 +file path=usr/share/lib/terminfo/d/d210-dg +file path=usr/share/lib/terminfo/d/d211 +file path=usr/share/lib/terminfo/d/d211-7b +file path=usr/share/lib/terminfo/d/d211-dg +file path=usr/share/lib/terminfo/d/d216-dg +file path=usr/share/lib/terminfo/d/d216-unix +file path=usr/share/lib/terminfo/d/d216-unix-25 +file path=usr/share/lib/terminfo/d/d217-unix +file path=usr/share/lib/terminfo/d/d217-unix-25 +file path=usr/share/lib/terminfo/d/d220 +file path=usr/share/lib/terminfo/d/d220-7b +file path=usr/share/lib/terminfo/d/d220-dg +file path=usr/share/lib/terminfo/d/d230c +file path=usr/share/lib/terminfo/d/d230c-dg +file path=usr/share/lib/terminfo/d/d400 +file path=usr/share/lib/terminfo/d/d410 +file path=usr/share/lib/terminfo/d/d410-7b +file path=usr/share/lib/terminfo/d/d410-7b-w +file path=usr/share/lib/terminfo/d/d410-dg +file path=usr/share/lib/terminfo/d/d410-w +file path=usr/share/lib/terminfo/d/d412-dg +file path=usr/share/lib/terminfo/d/d412-unix +file path=usr/share/lib/terminfo/d/d412-unix-25 +file path=usr/share/lib/terminfo/d/d412-unix-s +file path=usr/share/lib/terminfo/d/d412-unix-sr +file path=usr/share/lib/terminfo/d/d412-unix-w +file path=usr/share/lib/terminfo/d/d413-unix +file path=usr/share/lib/terminfo/d/d413-unix-25 +file path=usr/share/lib/terminfo/d/d413-unix-s +file path=usr/share/lib/terminfo/d/d413-unix-sr +file path=usr/share/lib/terminfo/d/d413-unix-w +file path=usr/share/lib/terminfo/d/d414-unix +file path=usr/share/lib/terminfo/d/d414-unix-25 +file path=usr/share/lib/terminfo/d/d414-unix-s +file path=usr/share/lib/terminfo/d/d414-unix-sr +file path=usr/share/lib/terminfo/d/d414-unix-w +file path=usr/share/lib/terminfo/d/d430c-dg +file path=usr/share/lib/terminfo/d/d430c-dg-ccc +file path=usr/share/lib/terminfo/d/d430c-unix +file path=usr/share/lib/terminfo/d/d430c-unix-25 +file path=usr/share/lib/terminfo/d/d430c-unix-25-ccc +file path=usr/share/lib/terminfo/d/d430c-unix-ccc +file path=usr/share/lib/terminfo/d/d430c-unix-s +file path=usr/share/lib/terminfo/d/d430c-unix-s-ccc +file path=usr/share/lib/terminfo/d/d430c-unix-sr +file path=usr/share/lib/terminfo/d/d430c-unix-sr-ccc +file path=usr/share/lib/terminfo/d/d430c-unix-w +file path=usr/share/lib/terminfo/d/d430c-unix-w-ccc +file path=usr/share/lib/terminfo/d/d470c +file path=usr/share/lib/terminfo/d/d470c-7b +file path=usr/share/lib/terminfo/d/d470c-dg +file path=usr/share/lib/terminfo/d/d555 +file path=usr/share/lib/terminfo/d/d555-7b +file path=usr/share/lib/terminfo/d/d555-7b-w +file path=usr/share/lib/terminfo/d/d555-dg +file path=usr/share/lib/terminfo/d/d555-w +file path=usr/share/lib/terminfo/d/d577 +file path=usr/share/lib/terminfo/d/d577-7b +file path=usr/share/lib/terminfo/d/d577-7b-w +file path=usr/share/lib/terminfo/d/d577-dg +file path=usr/share/lib/terminfo/d/d577-w +file path=usr/share/lib/terminfo/d/d578 +file path=usr/share/lib/terminfo/d/d578-7b file path=usr/share/lib/terminfo/d/d800 -file path=usr/share/lib/terminfo/d/daisy -file path=usr/share/lib/terminfo/d/daisy+basic -file path=usr/share/lib/terminfo/d/daisy+lowres -file path=usr/share/lib/terminfo/d/datakit -file path=usr/share/lib/terminfo/d/datapoint -file path=usr/share/lib/terminfo/d/dd5000 -file path=usr/share/lib/terminfo/d/dec+basic -file path=usr/share/lib/terminfo/d/dec+low -file path=usr/share/lib/terminfo/d/decwriter -file path=usr/share/lib/terminfo/d/dg -file path=usr/share/lib/terminfo/d/dialup +file path=usr/share/lib/terminfo/d/ddr +file path=usr/share/lib/terminfo/d/dec-vt100 +file path=usr/share/lib/terminfo/d/dec-vt220 +file path=usr/share/lib/terminfo/d/decansi +file path=usr/share/lib/terminfo/d/delta +file path=usr/share/lib/terminfo/d/dg+ccc +file path=usr/share/lib/terminfo/d/dg+color +file path=usr/share/lib/terminfo/d/dg+color8 +file path=usr/share/lib/terminfo/d/dg+fixed +file path=usr/share/lib/terminfo/d/dg-generic +file path=usr/share/lib/terminfo/d/dg200 +file path=usr/share/lib/terminfo/d/dg210 +file path=usr/share/lib/terminfo/d/dg211 +file path=usr/share/lib/terminfo/d/dg450 +file path=usr/share/lib/terminfo/d/dg460-ansi +file path=usr/share/lib/terminfo/d/dg6053 +file path=usr/share/lib/terminfo/d/dg6053-old +file path=usr/share/lib/terminfo/d/dgkeys+11 +file path=usr/share/lib/terminfo/d/dgkeys+15 +file path=usr/share/lib/terminfo/d/dgkeys+7b +file path=usr/share/lib/terminfo/d/dgkeys+8b +file path=usr/share/lib/terminfo/d/dgmode+color +file path=usr/share/lib/terminfo/d/dgmode+color8 +file path=usr/share/lib/terminfo/d/dgunix+ccc +file path=usr/share/lib/terminfo/d/dgunix+fixed +file path=usr/share/lib/terminfo/d/diablo1620 +file path=usr/share/lib/terminfo/d/diablo1620-m8 +file path=usr/share/lib/terminfo/d/diablo1640 +file path=usr/share/lib/terminfo/d/diablo1640-lm +file path=usr/share/lib/terminfo/d/diablo1740-lm +file path=usr/share/lib/terminfo/d/digilog +file path=usr/share/lib/terminfo/d/djgpp +file path=usr/share/lib/terminfo/d/djgpp203 +file path=usr/share/lib/terminfo/d/djgpp204 +file path=usr/share/lib/terminfo/d/dku7003 +file path=usr/share/lib/terminfo/d/dku7003-dumb +file path=usr/share/lib/terminfo/d/dku7102-old +file path=usr/share/lib/terminfo/d/dku7202 +file path=usr/share/lib/terminfo/d/dm1520 +file path=usr/share/lib/terminfo/d/dm2500 file path=usr/share/lib/terminfo/d/dm3025 +file path=usr/share/lib/terminfo/d/dm3045 file path=usr/share/lib/terminfo/d/dm80 -file path=usr/share/lib/terminfo/d/dm80-w +file path=usr/share/lib/terminfo/d/dm80w +file path=usr/share/lib/terminfo/d/dmchat +file path=usr/share/lib/terminfo/d/dmterm +file path=usr/share/lib/terminfo/d/dp3360 +file path=usr/share/lib/terminfo/d/dp8242 +file path=usr/share/lib/terminfo/d/dt100 +file path=usr/share/lib/terminfo/d/dt100w +file path=usr/share/lib/terminfo/d/dt110 +file path=usr/share/lib/terminfo/d/dt80-sas +file path=usr/share/lib/terminfo/d/dtc300s +file path=usr/share/lib/terminfo/d/dtc382 file path=usr/share/lib/terminfo/d/dtterm file path=usr/share/lib/terminfo/d/dumb file path=usr/share/lib/terminfo/d/dw1 +file path=usr/share/lib/terminfo/d/dw2 file path=usr/share/lib/terminfo/d/dw3 file path=usr/share/lib/terminfo/d/dw4 -file path=usr/share/lib/terminfo/e/emots +file path=usr/share/lib/terminfo/d/dwk +file path=usr/share/lib/terminfo/e/ecma+color +file path=usr/share/lib/terminfo/e/ecma+sgr +file path=usr/share/lib/terminfo/e/elks +file path=usr/share/lib/terminfo/e/elks-ansi +file path=usr/share/lib/terminfo/e/elks-glasstty +file path=usr/share/lib/terminfo/e/elks-vt52 +file path=usr/share/lib/terminfo/e/emu +file path=usr/share/lib/terminfo/e/emu-220 +file path=usr/share/lib/terminfo/e/emx-base file path=usr/share/lib/terminfo/e/env230 -file path=usr/share/lib/terminfo/e/ep2500+basic -file path=usr/share/lib/terminfo/e/ep2500+color -file path=usr/share/lib/terminfo/e/ep2500+high -file path=usr/share/lib/terminfo/e/ep2500+low file path=usr/share/lib/terminfo/e/ep40 -file path=usr/share/lib/terminfo/e/ep4080 -file path=usr/share/lib/terminfo/e/epson2500 -file path=usr/share/lib/terminfo/e/epson2500-80 -file path=usr/share/lib/terminfo/e/epson2500-hi -file path=usr/share/lib/terminfo/e/epson2500-hi80 +file path=usr/share/lib/terminfo/e/ep48 file path=usr/share/lib/terminfo/e/ergo4000 file path=usr/share/lib/terminfo/e/esprit -file path=usr/share/lib/terminfo/e/ethernet -file path=usr/share/lib/terminfo/e/ex3000 -file path=usr/share/lib/terminfo/e/exidy +file path=usr/share/lib/terminfo/e/esprit-am +file path=usr/share/lib/terminfo/e/eterm +file path=usr/share/lib/terminfo/e/eterm-color +file path=usr/share/lib/terminfo/e/ex155 +file path=usr/share/lib/terminfo/e/excel62 +file path=usr/share/lib/terminfo/e/excel62-rv +file path=usr/share/lib/terminfo/e/excel62-w file path=usr/share/lib/terminfo/f/f100 file path=usr/share/lib/terminfo/f/f100-rv file path=usr/share/lib/terminfo/f/f110 @@ -471,20 +579,37 @@ file path=usr/share/lib/terminfo/f/f200vi file path=usr/share/lib/terminfo/f/f200vi-w file path=usr/share/lib/terminfo/f/falco file path=usr/share/lib/terminfo/f/falco-p -file path=usr/share/lib/terminfo/f/fortune +file path=usr/share/lib/terminfo/f/fos file path=usr/share/lib/terminfo/f/fox -file path=usr/share/lib/terminfo/f/fviewpoint +file path=usr/share/lib/terminfo/g/gator +file path=usr/share/lib/terminfo/g/gator-52 +file path=usr/share/lib/terminfo/g/gator-52t +file path=usr/share/lib/terminfo/g/gator-t file path=usr/share/lib/terminfo/g/gigi +file path=usr/share/lib/terminfo/g/glasstty +file path=usr/share/lib/terminfo/g/gnome +file path=usr/share/lib/terminfo/g/gnome+pcfkeys +file path=usr/share/lib/terminfo/g/gnome-2007 +file path=usr/share/lib/terminfo/g/gnome-2008 +file path=usr/share/lib/terminfo/g/gnome-256color +file path=usr/share/lib/terminfo/g/gnome-fc5 +file path=usr/share/lib/terminfo/g/gnome-rh62 +file path=usr/share/lib/terminfo/g/gnome-rh72 +file path=usr/share/lib/terminfo/g/gnome-rh80 +file path=usr/share/lib/terminfo/g/gnome-rh90 +file path=usr/share/lib/terminfo/g/go140 +file path=usr/share/lib/terminfo/g/go140w +file path=usr/share/lib/terminfo/g/go225 +file path=usr/share/lib/terminfo/g/graphos +file path=usr/share/lib/terminfo/g/graphos-30 +file path=usr/share/lib/terminfo/g/gs6300 file path=usr/share/lib/terminfo/g/gsi -file path=usr/share/lib/terminfo/g/gt100 file path=usr/share/lib/terminfo/g/gt40 file path=usr/share/lib/terminfo/g/gt42 file path=usr/share/lib/terminfo/g/guru file path=usr/share/lib/terminfo/g/guru+rv file path=usr/share/lib/terminfo/g/guru+s file path=usr/share/lib/terminfo/g/guru-24 -file path=usr/share/lib/terminfo/g/guru-33-rv -file path=usr/share/lib/terminfo/g/guru-33-s file path=usr/share/lib/terminfo/g/guru-44 file path=usr/share/lib/terminfo/g/guru-44-s file path=usr/share/lib/terminfo/g/guru-76 @@ -494,34 +619,25 @@ file path=usr/share/lib/terminfo/g/guru-76-w file path=usr/share/lib/terminfo/g/guru-76-w-s file path=usr/share/lib/terminfo/g/guru-76-wm file path=usr/share/lib/terminfo/g/guru-nctxt -file path=usr/share/lib/terminfo/h/h1000 -file path=usr/share/lib/terminfo/h/h1420 -file path=usr/share/lib/terminfo/h/h1500 -file path=usr/share/lib/terminfo/h/h1510 -file path=usr/share/lib/terminfo/h/h1510t -file path=usr/share/lib/terminfo/h/h1520 -file path=usr/share/lib/terminfo/h/h1552 -file path=usr/share/lib/terminfo/h/h1552-rv +file path=usr/share/lib/terminfo/g/guru-rv +file path=usr/share/lib/terminfo/g/guru-s file path=usr/share/lib/terminfo/h/h19 file path=usr/share/lib/terminfo/h/h19-a file path=usr/share/lib/terminfo/h/h19-bs -file path=usr/share/lib/terminfo/h/h19-smul +file path=usr/share/lib/terminfo/h/h19-g file path=usr/share/lib/terminfo/h/h19-u -file path=usr/share/lib/terminfo/h/h19A -file path=usr/share/lib/terminfo/h/h19b -file path=usr/share/lib/terminfo/h/h19bs -file path=usr/share/lib/terminfo/h/h19u -file path=usr/share/lib/terminfo/h/h2000 -file path=usr/share/lib/terminfo/h/h89 -file path=usr/share/lib/terminfo/h/hds-w -file path=usr/share/lib/terminfo/h/hds17 -file path=usr/share/lib/terminfo/h/hds17-w +file path=usr/share/lib/terminfo/h/h19-us +file path=usr/share/lib/terminfo/h/h19k +file path=usr/share/lib/terminfo/h/ha8675 +file path=usr/share/lib/terminfo/h/ha8686 +file path=usr/share/lib/terminfo/h/hazel file path=usr/share/lib/terminfo/h/hds200 -file path=usr/share/lib/terminfo/h/hds24 -file path=usr/share/lib/terminfo/h/hds24-w -file path=usr/share/lib/terminfo/h/hds7 -file path=usr/share/lib/terminfo/h/hds7-w -file path=usr/share/lib/terminfo/h/hewlett-packar +file path=usr/share/lib/terminfo/h/hft-c +file path=usr/share/lib/terminfo/h/hft-c-old +file path=usr/share/lib/terminfo/h/hft-old +file path=usr/share/lib/terminfo/h/hirez100 +file path=usr/share/lib/terminfo/h/hirez100-w +file path=usr/share/lib/terminfo/h/hmod1 file path=usr/share/lib/terminfo/h/hp+arrows file path=usr/share/lib/terminfo/h/hp+color file path=usr/share/lib/terminfo/h/hp+labels @@ -531,199 +647,892 @@ file path=usr/share/lib/terminfo/h/hp+pfk-cr file path=usr/share/lib/terminfo/h/hp+printer file path=usr/share/lib/terminfo/h/hp110 file path=usr/share/lib/terminfo/h/hp150 -file path=usr/share/lib/terminfo/h/hp2382 +file path=usr/share/lib/terminfo/h/hp2 +file path=usr/share/lib/terminfo/h/hp236 +file path=usr/share/lib/terminfo/h/hp2382a +file path=usr/share/lib/terminfo/h/hp2392 +file path=usr/share/lib/terminfo/h/hp2397a +file path=usr/share/lib/terminfo/h/hp2621 +file path=usr/share/lib/terminfo/h/hp2621-48 +file path=usr/share/lib/terminfo/h/hp2621-a +file path=usr/share/lib/terminfo/h/hp2621-ba +file path=usr/share/lib/terminfo/h/hp2621-fl +file path=usr/share/lib/terminfo/h/hp2621-k45 +file path=usr/share/lib/terminfo/h/hp2621-nl +file path=usr/share/lib/terminfo/h/hp2621-nt +file path=usr/share/lib/terminfo/h/hp2621b +file path=usr/share/lib/terminfo/h/hp2621b-kx +file path=usr/share/lib/terminfo/h/hp2621b-kx-p +file path=usr/share/lib/terminfo/h/hp2621b-p +file path=usr/share/lib/terminfo/h/hp2621p +file path=usr/share/lib/terminfo/h/hp2621p-a +file path=usr/share/lib/terminfo/h/hp2622 +file path=usr/share/lib/terminfo/h/hp2623 +file path=usr/share/lib/terminfo/h/hp2624 +file path=usr/share/lib/terminfo/h/hp2624-10p file path=usr/share/lib/terminfo/h/hp2624b-10p-p -file path=usr/share/lib/terminfo/h/hp2624b-4p-p +file path=usr/share/lib/terminfo/h/hp2624b-p +file path=usr/share/lib/terminfo/h/hp2626 +file path=usr/share/lib/terminfo/h/hp2626-12 +file path=usr/share/lib/terminfo/h/hp2626-12-s +file path=usr/share/lib/terminfo/h/hp2626-12x40 +file path=usr/share/lib/terminfo/h/hp2626-ns +file path=usr/share/lib/terminfo/h/hp2626-s +file path=usr/share/lib/terminfo/h/hp2626-x40 +file path=usr/share/lib/terminfo/h/hp2627a +file path=usr/share/lib/terminfo/h/hp2627a-rev +file path=usr/share/lib/terminfo/h/hp2627c file path=usr/share/lib/terminfo/h/hp262x -file path=usr/share/lib/terminfo/h/hplaser -file path=usr/share/lib/terminfo/h/hplaser+basic -file path=usr/share/lib/terminfo/h/hplaser+high -file path=usr/share/lib/terminfo/i/i279 +file path=usr/share/lib/terminfo/h/hp2640a +file path=usr/share/lib/terminfo/h/hp2640b +file path=usr/share/lib/terminfo/h/hp2641a +file path=usr/share/lib/terminfo/h/hp2645 +file path=usr/share/lib/terminfo/h/hp2648 +file path=usr/share/lib/terminfo/h/hp300h +file path=usr/share/lib/terminfo/h/hp700-wy +file path=usr/share/lib/terminfo/h/hp70092 +file path=usr/share/lib/terminfo/h/hp9837 +file path=usr/share/lib/terminfo/h/hp9845 +file path=usr/share/lib/terminfo/h/hp98550 +file path=usr/share/lib/terminfo/h/hpansi +file path=usr/share/lib/terminfo/h/hpex +file path=usr/share/lib/terminfo/h/hpgeneric +file path=usr/share/lib/terminfo/h/hpsub +file path=usr/share/lib/terminfo/h/hpterm +file path=usr/share/lib/terminfo/h/hpterm-color +file path=usr/share/lib/terminfo/h/hurd +file path=usr/share/lib/terminfo/h/hz1000 +file path=usr/share/lib/terminfo/h/hz1420 +file path=usr/share/lib/terminfo/h/hz1500 +file path=usr/share/lib/terminfo/h/hz1510 +file path=usr/share/lib/terminfo/h/hz1520 +file path=usr/share/lib/terminfo/h/hz1520-noesc +file path=usr/share/lib/terminfo/h/hz1552 +file path=usr/share/lib/terminfo/h/hz1552-rv +file path=usr/share/lib/terminfo/h/hz2000 +file path=usr/share/lib/terminfo/i/i100 +file path=usr/share/lib/terminfo/i/i400 +file path=usr/share/lib/terminfo/i/iTerm.app +file path=usr/share/lib/terminfo/i/ibcs2 +file path=usr/share/lib/terminfo/i/ibm+16color +file path=usr/share/lib/terminfo/i/ibm+color +file path=usr/share/lib/terminfo/i/ibm-apl +file path=usr/share/lib/terminfo/i/ibm-pc file path=usr/share/lib/terminfo/i/ibm-system1 -file path=usr/share/lib/terminfo/i/ibmc+basic -file path=usr/share/lib/terminfo/i/ibmc+color -file path=usr/share/lib/terminfo/i/ibmc+low+1x1 -file path=usr/share/lib/terminfo/i/ibmc+low+5x6 -file path=usr/share/lib/terminfo/i/ibmcolor -file path=usr/share/lib/terminfo/i/ibmcolor-1x1 -file path=usr/share/lib/terminfo/i/ibmg+basic -file path=usr/share/lib/terminfo/i/ibmg+low -file path=usr/share/lib/terminfo/i/ibmgraphics -file path=usr/share/lib/terminfo/i/ibmxl -file path=usr/share/lib/terminfo/i/ibmxl+basic -file path=usr/share/lib/terminfo/i/ibmxl+high+1x1 -file path=usr/share/lib/terminfo/i/ibmxl+low+1x1 -file path=usr/share/lib/terminfo/i/ibmxl+low+5x6 -file path=usr/share/lib/terminfo/i/ibmxl-1x1 -file path=usr/share/lib/terminfo/i/ibmxl-1x1-80 -file path=usr/share/lib/terminfo/i/ibmxl-1x1-hi -file path=usr/share/lib/terminfo/i/ibmxl-1x1-hi80 -file path=usr/share/lib/terminfo/i/ibmxl-80 -file path=usr/share/lib/terminfo/i/ibmxlagm+basic +file path=usr/share/lib/terminfo/i/ibm3101 +file path=usr/share/lib/terminfo/i/ibm3151 +file path=usr/share/lib/terminfo/i/ibm3161 +file path=usr/share/lib/terminfo/i/ibm3161-C +file path=usr/share/lib/terminfo/i/ibm3162 +file path=usr/share/lib/terminfo/i/ibm3164 +file path=usr/share/lib/terminfo/i/ibm327x +file path=usr/share/lib/terminfo/i/ibm5081 +file path=usr/share/lib/terminfo/i/ibm5081-c +file path=usr/share/lib/terminfo/i/ibm5151 +file path=usr/share/lib/terminfo/i/ibm5154 +file path=usr/share/lib/terminfo/i/ibm6153 +file path=usr/share/lib/terminfo/i/ibm6153-40 +file path=usr/share/lib/terminfo/i/ibm6153-90 +file path=usr/share/lib/terminfo/i/ibm6154 +file path=usr/share/lib/terminfo/i/ibm6155 +file path=usr/share/lib/terminfo/i/ibm8503 +file path=usr/share/lib/terminfo/i/ibm8512 +file path=usr/share/lib/terminfo/i/ibm8514 +file path=usr/share/lib/terminfo/i/ibm8514-c +file path=usr/share/lib/terminfo/i/ibmaed +file path=usr/share/lib/terminfo/i/ibmapa8c +file path=usr/share/lib/terminfo/i/ibmapa8c-c +file path=usr/share/lib/terminfo/i/ibmega +file path=usr/share/lib/terminfo/i/ibmega-c +file path=usr/share/lib/terminfo/i/ibmmono +file path=usr/share/lib/terminfo/i/ibmpc +file path=usr/share/lib/terminfo/i/ibmpc3 +file path=usr/share/lib/terminfo/i/ibmpcx +file path=usr/share/lib/terminfo/i/ibmvga +file path=usr/share/lib/terminfo/i/ibmvga-c +file path=usr/share/lib/terminfo/i/icl6404 +file path=usr/share/lib/terminfo/i/icl6404-w +file path=usr/share/lib/terminfo/i/ifmr +file path=usr/share/lib/terminfo/i/ims-ansi +file path=usr/share/lib/terminfo/i/ims950 +file path=usr/share/lib/terminfo/i/ims950-b +file path=usr/share/lib/terminfo/i/ims950-rv file path=usr/share/lib/terminfo/i/infoton -file path=usr/share/lib/terminfo/i/infotonKAS -file path=usr/share/lib/terminfo/i/intertec +file path=usr/share/lib/terminfo/i/interix +file path=usr/share/lib/terminfo/i/interix-nti +file path=usr/share/lib/terminfo/i/intertube file path=usr/share/lib/terminfo/i/intertube2 file path=usr/share/lib/terminfo/i/intext file path=usr/share/lib/terminfo/i/intext2 -file path=usr/share/lib/terminfo/i/iq120 -file path=usr/share/lib/terminfo/i/iq140 -file path=usr/share/lib/terminfo/l/la100 +file path=usr/share/lib/terminfo/i/iris-ansi +file path=usr/share/lib/terminfo/i/iris-ansi-ap +file path=usr/share/lib/terminfo/i/iris-color +file path=usr/share/lib/terminfo/j/jaixterm +file path=usr/share/lib/terminfo/j/jaixterm-m +file path=usr/share/lib/terminfo/k/kaypro +file path=usr/share/lib/terminfo/k/kermit +file path=usr/share/lib/terminfo/k/kermit-am +file path=usr/share/lib/terminfo/k/klone+acs +file path=usr/share/lib/terminfo/k/klone+color +file path=usr/share/lib/terminfo/k/klone+koi8acs +file path=usr/share/lib/terminfo/k/klone+sgr +file path=usr/share/lib/terminfo/k/klone+sgr-dumb +file path=usr/share/lib/terminfo/k/klone+sgr8 +file path=usr/share/lib/terminfo/k/kon +file path=usr/share/lib/terminfo/k/konsole +file path=usr/share/lib/terminfo/k/konsole+pcfkeys +file path=usr/share/lib/terminfo/k/konsole-16color +file path=usr/share/lib/terminfo/k/konsole-256color +file path=usr/share/lib/terminfo/k/konsole-base +file path=usr/share/lib/terminfo/k/konsole-linux +file path=usr/share/lib/terminfo/k/konsole-solaris +file path=usr/share/lib/terminfo/k/konsole-vt100 +file path=usr/share/lib/terminfo/k/konsole-vt420pc +file path=usr/share/lib/terminfo/k/konsole-xf3x +file path=usr/share/lib/terminfo/k/konsole-xf4x +file path=usr/share/lib/terminfo/k/kt7 +file path=usr/share/lib/terminfo/k/kt7ix +file path=usr/share/lib/terminfo/k/kterm +file path=usr/share/lib/terminfo/k/kterm-color +file path=usr/share/lib/terminfo/k/kvt +file path=usr/share/lib/terminfo/l/lft +file path=usr/share/lib/terminfo/l/linux +file path=usr/share/lib/terminfo/l/linux-16color +file path=usr/share/lib/terminfo/l/linux-basic +file path=usr/share/lib/terminfo/l/linux-c +file path=usr/share/lib/terminfo/l/linux-c-nc +file path=usr/share/lib/terminfo/l/linux-koi8 +file path=usr/share/lib/terminfo/l/linux-koi8r +file path=usr/share/lib/terminfo/l/linux-lat +file path=usr/share/lib/terminfo/l/linux-m +file path=usr/share/lib/terminfo/l/linux-nic +file path=usr/share/lib/terminfo/l/linux-vt +file path=usr/share/lib/terminfo/l/linux2.2 +file path=usr/share/lib/terminfo/l/linux2.6 +file path=usr/share/lib/terminfo/l/linux2.6.26 +file path=usr/share/lib/terminfo/l/linux3.0 +file path=usr/share/lib/terminfo/l/lisa +file path=usr/share/lib/terminfo/l/lisaterm +file path=usr/share/lib/terminfo/l/lisaterm-w +file path=usr/share/lib/terminfo/l/liswb file path=usr/share/lib/terminfo/l/ln03 -file path=usr/share/lib/terminfo/m/mdl110 +file path=usr/share/lib/terminfo/l/ln03-w +file path=usr/share/lib/terminfo/l/lpr +file path=usr/share/lib/terminfo/l/luna +file path=usr/share/lib/terminfo/m/m2-nam +file path=usr/share/lib/terminfo/m/mac +file path=usr/share/lib/terminfo/m/mac-w +file path=usr/share/lib/terminfo/m/mach +file path=usr/share/lib/terminfo/m/mach-bold +file path=usr/share/lib/terminfo/m/mach-color +file path=usr/share/lib/terminfo/m/mai +file path=usr/share/lib/terminfo/m/masscomp +file path=usr/share/lib/terminfo/m/masscomp1 +file path=usr/share/lib/terminfo/m/masscomp2 file path=usr/share/lib/terminfo/m/megatek file path=usr/share/lib/terminfo/m/memhp +file path=usr/share/lib/terminfo/m/mgr +file path=usr/share/lib/terminfo/m/mgr-linux +file path=usr/share/lib/terminfo/m/mgr-sun +file path=usr/share/lib/terminfo/m/mgt +file path=usr/share/lib/terminfo/m/mgterm file path=usr/share/lib/terminfo/m/microb -file path=usr/share/lib/terminfo/m/microkit file path=usr/share/lib/terminfo/m/mime -file path=usr/share/lib/terminfo/m/mime-3a -file path=usr/share/lib/terminfo/m/mime-3ax file path=usr/share/lib/terminfo/m/mime-fb file path=usr/share/lib/terminfo/m/mime-hb -file path=usr/share/lib/terminfo/m/mime-na file path=usr/share/lib/terminfo/m/mime2a file path=usr/share/lib/terminfo/m/mime2a-s -file path=usr/share/lib/terminfo/m/mime2as -file path=usr/share/lib/terminfo/m/mime2av file path=usr/share/lib/terminfo/m/mime314 -file path=usr/share/lib/terminfo/m/mimefb -file path=usr/share/lib/terminfo/m/mimehb -file path=usr/share/lib/terminfo/m/minansi -file path=usr/share/lib/terminfo/m/mransi -file path=usr/share/lib/terminfo/m/mw2 -file path=usr/share/lib/terminfo/n/netronics -file path=usr/share/lib/terminfo/n/netty -file path=usr/share/lib/terminfo/n/netty-Tabs -file path=usr/share/lib/terminfo/n/netty-vi +file path=usr/share/lib/terminfo/m/mime3a +file path=usr/share/lib/terminfo/m/mime3ax +file path=usr/share/lib/terminfo/m/minitel1 +file path=usr/share/lib/terminfo/m/minitel1b +file path=usr/share/lib/terminfo/m/minitel1b-80 +file path=usr/share/lib/terminfo/m/minix +file path=usr/share/lib/terminfo/m/minix-1.7 +file path=usr/share/lib/terminfo/m/minix-3.0 +file path=usr/share/lib/terminfo/m/minix-old +file path=usr/share/lib/terminfo/m/minix-old-am +file path=usr/share/lib/terminfo/m/mlterm +file path=usr/share/lib/terminfo/m/mlterm+pcfkeys +file path=usr/share/lib/terminfo/m/mlterm-256color +file path=usr/share/lib/terminfo/m/mm340 +file path=usr/share/lib/terminfo/m/modgraph +file path=usr/share/lib/terminfo/m/modgraph2 +file path=usr/share/lib/terminfo/m/modgraph48 +file path=usr/share/lib/terminfo/m/mono-emx +file path=usr/share/lib/terminfo/m/morphos +file path=usr/share/lib/terminfo/m/mrxvt +file path=usr/share/lib/terminfo/m/mrxvt-256color +file path=usr/share/lib/terminfo/m/ms-vt-utf8 +file path=usr/share/lib/terminfo/m/ms-vt100 +file path=usr/share/lib/terminfo/m/ms-vt100+ +file path=usr/share/lib/terminfo/m/ms-vt100-color +file path=usr/share/lib/terminfo/m/msk227 +file path=usr/share/lib/terminfo/m/msk22714 +file path=usr/share/lib/terminfo/m/msk227am +file path=usr/share/lib/terminfo/m/mt4520-rv +file path=usr/share/lib/terminfo/m/mt70 +file path=usr/share/lib/terminfo/m/mterm +file path=usr/share/lib/terminfo/m/mterm-ansi +file path=usr/share/lib/terminfo/m/mvterm +file path=usr/share/lib/terminfo/n/nansi.sys +file path=usr/share/lib/terminfo/n/nansi.sysk +file path=usr/share/lib/terminfo/n/ncr160vppp +file path=usr/share/lib/terminfo/n/ncr160vpwpp +file path=usr/share/lib/terminfo/n/ncr160vt100an +file path=usr/share/lib/terminfo/n/ncr160vt100pp +file path=usr/share/lib/terminfo/n/ncr160vt100wan +file path=usr/share/lib/terminfo/n/ncr160vt100wpp +file path=usr/share/lib/terminfo/n/ncr160vt200an +file path=usr/share/lib/terminfo/n/ncr160vt200pp +file path=usr/share/lib/terminfo/n/ncr160vt200wan +file path=usr/share/lib/terminfo/n/ncr160vt200wpp +file path=usr/share/lib/terminfo/n/ncr160vt300an +file path=usr/share/lib/terminfo/n/ncr160vt300pp +file path=usr/share/lib/terminfo/n/ncr160vt300wan +file path=usr/share/lib/terminfo/n/ncr160vt300wpp +file path=usr/share/lib/terminfo/n/ncr160wy50+pp +file path=usr/share/lib/terminfo/n/ncr160wy50+wpp +file path=usr/share/lib/terminfo/n/ncr160wy60pp +file path=usr/share/lib/terminfo/n/ncr160wy60wpp +file path=usr/share/lib/terminfo/n/ncr260intan +file path=usr/share/lib/terminfo/n/ncr260intpp +file path=usr/share/lib/terminfo/n/ncr260intwan +file path=usr/share/lib/terminfo/n/ncr260intwpp +file path=usr/share/lib/terminfo/n/ncr260vppp +file path=usr/share/lib/terminfo/n/ncr260vpwpp +file path=usr/share/lib/terminfo/n/ncr260vt100an +file path=usr/share/lib/terminfo/n/ncr260vt100pp +file path=usr/share/lib/terminfo/n/ncr260vt100wan +file path=usr/share/lib/terminfo/n/ncr260vt100wpp +file path=usr/share/lib/terminfo/n/ncr260vt200an +file path=usr/share/lib/terminfo/n/ncr260vt200pp +file path=usr/share/lib/terminfo/n/ncr260vt200wan +file path=usr/share/lib/terminfo/n/ncr260vt200wpp +file path=usr/share/lib/terminfo/n/ncr260vt300an +file path=usr/share/lib/terminfo/n/ncr260vt300pp +file path=usr/share/lib/terminfo/n/ncr260vt300wan +file path=usr/share/lib/terminfo/n/ncr260wy325pp +file path=usr/share/lib/terminfo/n/ncr260wy325wpp +file path=usr/share/lib/terminfo/n/ncr260wy350pp +file path=usr/share/lib/terminfo/n/ncr260wy350wpp +file path=usr/share/lib/terminfo/n/ncr260wy50+pp +file path=usr/share/lib/terminfo/n/ncr260wy50+wpp +file path=usr/share/lib/terminfo/n/ncr260wy60pp +file path=usr/share/lib/terminfo/n/ncr260wy60wpp +file path=usr/share/lib/terminfo/n/ncr7900i +file path=usr/share/lib/terminfo/n/ncr7900iv +file path=usr/share/lib/terminfo/n/ncr7901 +file path=usr/share/lib/terminfo/n/ncrvt100an +file path=usr/share/lib/terminfo/n/ncrvt100wan +file path=usr/share/lib/terminfo/n/ncsa +file path=usr/share/lib/terminfo/n/ncsa-m +file path=usr/share/lib/terminfo/n/ncsa-m-ns +file path=usr/share/lib/terminfo/n/ncsa-ns +file path=usr/share/lib/terminfo/n/ncsa-vt220 +file path=usr/share/lib/terminfo/n/ndr9500 +file path=usr/share/lib/terminfo/n/ndr9500-25 +file path=usr/share/lib/terminfo/n/ndr9500-25-mc +file path=usr/share/lib/terminfo/n/ndr9500-25-mc-nl +file path=usr/share/lib/terminfo/n/ndr9500-25-nl +file path=usr/share/lib/terminfo/n/ndr9500-mc +file path=usr/share/lib/terminfo/n/ndr9500-mc-nl +file path=usr/share/lib/terminfo/n/ndr9500-nl +file path=usr/share/lib/terminfo/n/nec5520 file path=usr/share/lib/terminfo/n/newhp file path=usr/share/lib/terminfo/n/newhpkeyboard -file path=usr/share/lib/terminfo/n/nuc -file path=usr/share/lib/terminfo/o/o31 +file path=usr/share/lib/terminfo/n/news-29 +file path=usr/share/lib/terminfo/n/news-29-euc +file path=usr/share/lib/terminfo/n/news-29-sjis +file path=usr/share/lib/terminfo/n/news-33 +file path=usr/share/lib/terminfo/n/news-33-euc +file path=usr/share/lib/terminfo/n/news-33-sjis +file path=usr/share/lib/terminfo/n/news-42 +file path=usr/share/lib/terminfo/n/news-42-euc +file path=usr/share/lib/terminfo/n/news-42-sjis +file path=usr/share/lib/terminfo/n/news-old-unk +file path=usr/share/lib/terminfo/n/news-unk +file path=usr/share/lib/terminfo/n/news28 +file path=usr/share/lib/terminfo/n/news29 +file path=usr/share/lib/terminfo/n/next +file path=usr/share/lib/terminfo/n/nextshell +file path=usr/share/lib/terminfo/n/northstar +file path=usr/share/lib/terminfo/n/nsterm +file path=usr/share/lib/terminfo/n/nsterm+7 +file path=usr/share/lib/terminfo/n/nsterm+acs +file path=usr/share/lib/terminfo/n/nsterm+c +file path=usr/share/lib/terminfo/n/nsterm+c41 +file path=usr/share/lib/terminfo/n/nsterm+mac +file path=usr/share/lib/terminfo/n/nsterm+s +file path=usr/share/lib/terminfo/n/nsterm-16color +file path=usr/share/lib/terminfo/n/nsterm-7 +file path=usr/share/lib/terminfo/n/nsterm-7-c +file path=usr/share/lib/terminfo/n/nsterm-acs +file path=usr/share/lib/terminfo/n/nsterm-bce +file path=usr/share/lib/terminfo/n/nsterm-c +file path=usr/share/lib/terminfo/n/nsterm-c-acs +file path=usr/share/lib/terminfo/n/nsterm-c-s +file path=usr/share/lib/terminfo/n/nsterm-c-s-7 +file path=usr/share/lib/terminfo/n/nsterm-c-s-acs +file path=usr/share/lib/terminfo/n/nsterm-m +file path=usr/share/lib/terminfo/n/nsterm-m-7 +file path=usr/share/lib/terminfo/n/nsterm-m-acs +file path=usr/share/lib/terminfo/n/nsterm-m-s +file path=usr/share/lib/terminfo/n/nsterm-m-s-7 +file path=usr/share/lib/terminfo/n/nsterm-m-s-acs +file path=usr/share/lib/terminfo/n/nsterm-old +file path=usr/share/lib/terminfo/n/nsterm-s +file path=usr/share/lib/terminfo/n/nsterm-s-7 +file path=usr/share/lib/terminfo/n/nsterm-s-acs +file path=usr/share/lib/terminfo/n/nwp511 +file path=usr/share/lib/terminfo/n/nwp512 +file path=usr/share/lib/terminfo/n/nwp512-a +file path=usr/share/lib/terminfo/n/nwp512-o +file path=usr/share/lib/terminfo/n/nwp513 +file path=usr/share/lib/terminfo/n/nwp513-a +file path=usr/share/lib/terminfo/n/nwp513-o +file path=usr/share/lib/terminfo/n/nwp517 +file path=usr/share/lib/terminfo/n/nwp517-w file path=usr/share/lib/terminfo/o/oblit -file path=usr/share/lib/terminfo/o/ofortune +file path=usr/share/lib/terminfo/o/oc100 +file path=usr/share/lib/terminfo/o/ofcons +file path=usr/share/lib/terminfo/o/oldpc3 +file path=usr/share/lib/terminfo/o/oldsun file path=usr/share/lib/terminfo/o/omron +file path=usr/share/lib/terminfo/o/opennt-100 +file path=usr/share/lib/terminfo/o/opennt-100-nti +file path=usr/share/lib/terminfo/o/opennt-35 +file path=usr/share/lib/terminfo/o/opennt-35-nti +file path=usr/share/lib/terminfo/o/opennt-35-w +file path=usr/share/lib/terminfo/o/opennt-50 +file path=usr/share/lib/terminfo/o/opennt-50-nti +file path=usr/share/lib/terminfo/o/opennt-50-w +file path=usr/share/lib/terminfo/o/opennt-60 +file path=usr/share/lib/terminfo/o/opennt-60-nti +file path=usr/share/lib/terminfo/o/opennt-60-w +file path=usr/share/lib/terminfo/o/opennt-w +file path=usr/share/lib/terminfo/o/opennt-w-vt +file path=usr/share/lib/terminfo/o/opus3n1+ +file path=usr/share/lib/terminfo/o/origpc3 file path=usr/share/lib/terminfo/o/osborne -file path=usr/share/lib/terminfo/o/otty5410 -file path=usr/share/lib/terminfo/o/otty5420 -file path=usr/share/lib/terminfo/o/ovi300 +file path=usr/share/lib/terminfo/o/osborne-w +file path=usr/share/lib/terminfo/o/osexec +file path=usr/share/lib/terminfo/o/otek4112 +file path=usr/share/lib/terminfo/o/otek4115 file path=usr/share/lib/terminfo/o/owl -file path=usr/share/lib/terminfo/p/patch -file path=usr/share/lib/terminfo/p/pc +file path=usr/share/lib/terminfo/p/p19 +file path=usr/share/lib/terminfo/p/p8gl +file path=usr/share/lib/terminfo/p/pc-coherent +file path=usr/share/lib/terminfo/p/pc-minix file path=usr/share/lib/terminfo/p/pc-venix -file path=usr/share/lib/terminfo/p/pc52 +file path=usr/share/lib/terminfo/p/pc3 +file path=usr/share/lib/terminfo/p/pc6300plus +file path=usr/share/lib/terminfo/p/pcansi +file path=usr/share/lib/terminfo/p/pcansi-25 +file path=usr/share/lib/terminfo/p/pcansi-25-m +file path=usr/share/lib/terminfo/p/pcansi-33 +file path=usr/share/lib/terminfo/p/pcansi-33-m +file path=usr/share/lib/terminfo/p/pcansi-43 +file path=usr/share/lib/terminfo/p/pcansi-43-m +file path=usr/share/lib/terminfo/p/pcansi-m +file path=usr/share/lib/terminfo/p/pccons +file path=usr/share/lib/terminfo/p/pcix +file path=usr/share/lib/terminfo/p/pckermit +file path=usr/share/lib/terminfo/p/pckermit120 +file path=usr/share/lib/terminfo/p/pcmw +file path=usr/share/lib/terminfo/p/pcplot +file path=usr/share/lib/terminfo/p/pcvt25 +file path=usr/share/lib/terminfo/p/pcvt25-color +file path=usr/share/lib/terminfo/p/pcvt25w +file path=usr/share/lib/terminfo/p/pcvt28 +file path=usr/share/lib/terminfo/p/pcvt28w +file path=usr/share/lib/terminfo/p/pcvt35 +file path=usr/share/lib/terminfo/p/pcvt35w +file path=usr/share/lib/terminfo/p/pcvt40 +file path=usr/share/lib/terminfo/p/pcvt40w +file path=usr/share/lib/terminfo/p/pcvt43 +file path=usr/share/lib/terminfo/p/pcvt43w +file path=usr/share/lib/terminfo/p/pcvt50 +file path=usr/share/lib/terminfo/p/pcvt50w +file path=usr/share/lib/terminfo/p/pcvtXX file path=usr/share/lib/terminfo/p/pe1251 file path=usr/share/lib/terminfo/p/pe7000c file path=usr/share/lib/terminfo/p/pe7000m -file path=usr/share/lib/terminfo/p/plasma +file path=usr/share/lib/terminfo/p/pilot +file path=usr/share/lib/terminfo/p/pmcons +file path=usr/share/lib/terminfo/p/prism12 +file path=usr/share/lib/terminfo/p/prism12-m +file path=usr/share/lib/terminfo/p/prism12-m-w +file path=usr/share/lib/terminfo/p/prism12-w +file path=usr/share/lib/terminfo/p/prism14 +file path=usr/share/lib/terminfo/p/prism14-m +file path=usr/share/lib/terminfo/p/prism14-m-w +file path=usr/share/lib/terminfo/p/prism14-w +file path=usr/share/lib/terminfo/p/prism2 +file path=usr/share/lib/terminfo/p/prism4 +file path=usr/share/lib/terminfo/p/prism5 +file path=usr/share/lib/terminfo/p/prism7 +file path=usr/share/lib/terminfo/p/prism8 +file path=usr/share/lib/terminfo/p/prism8-w +file path=usr/share/lib/terminfo/p/prism9 +file path=usr/share/lib/terminfo/p/prism9-8 +file path=usr/share/lib/terminfo/p/prism9-8-w +file path=usr/share/lib/terminfo/p/prism9-w +file path=usr/share/lib/terminfo/p/pro350 +file path=usr/share/lib/terminfo/p/ps300 +file path=usr/share/lib/terminfo/p/psterm +file path=usr/share/lib/terminfo/p/psterm-80x24 +file path=usr/share/lib/terminfo/p/psterm-90x28 +file path=usr/share/lib/terminfo/p/psterm-96x48 +file path=usr/share/lib/terminfo/p/psterm-fast +file path=usr/share/lib/terminfo/p/pt100 +file path=usr/share/lib/terminfo/p/pt100w +file path=usr/share/lib/terminfo/p/pt210 +file path=usr/share/lib/terminfo/p/pt250 +file path=usr/share/lib/terminfo/p/pt250w file path=usr/share/lib/terminfo/p/pty -file path=usr/share/lib/terminfo/q/qume +file path=usr/share/lib/terminfo/p/putty +file path=usr/share/lib/terminfo/p/putty-256color +file path=usr/share/lib/terminfo/p/putty-vt100 +file path=usr/share/lib/terminfo/q/qansi +file path=usr/share/lib/terminfo/q/qansi-g +file path=usr/share/lib/terminfo/q/qansi-m +file path=usr/share/lib/terminfo/q/qansi-t +file path=usr/share/lib/terminfo/q/qansi-w +file path=usr/share/lib/terminfo/q/qdss +file path=usr/share/lib/terminfo/q/qnx +file path=usr/share/lib/terminfo/q/qnxm +file path=usr/share/lib/terminfo/q/qnxt +file path=usr/share/lib/terminfo/q/qnxt2 +file path=usr/share/lib/terminfo/q/qnxtmono +file path=usr/share/lib/terminfo/q/qnxw file path=usr/share/lib/terminfo/q/qume5 -file path=usr/share/lib/terminfo/r/ramtek +file path=usr/share/lib/terminfo/q/qvt101 +file path=usr/share/lib/terminfo/q/qvt101+ +file path=usr/share/lib/terminfo/q/qvt102 +file path=usr/share/lib/terminfo/q/qvt103 +file path=usr/share/lib/terminfo/q/qvt103-w +file path=usr/share/lib/terminfo/q/qvt119+ +file path=usr/share/lib/terminfo/q/qvt119+-25 +file path=usr/share/lib/terminfo/q/qvt119+-25-w +file path=usr/share/lib/terminfo/q/qvt119+-w +file path=usr/share/lib/terminfo/q/qvt203 +file path=usr/share/lib/terminfo/q/qvt203-25 +file path=usr/share/lib/terminfo/q/qvt203-25-w +file path=usr/share/lib/terminfo/q/qvt203-w +file path=usr/share/lib/terminfo/r/rbcomm +file path=usr/share/lib/terminfo/r/rbcomm-nam +file path=usr/share/lib/terminfo/r/rbcomm-w +file path=usr/share/lib/terminfo/r/rca +file path=usr/share/lib/terminfo/r/rcons +file path=usr/share/lib/terminfo/r/rcons-color file path=usr/share/lib/terminfo/r/regent file path=usr/share/lib/terminfo/r/regent100 file path=usr/share/lib/terminfo/r/regent20 -file path=usr/share/lib/terminfo/r/regent200 file path=usr/share/lib/terminfo/r/regent25 file path=usr/share/lib/terminfo/r/regent40 file path=usr/share/lib/terminfo/r/regent40+ -file path=usr/share/lib/terminfo/r/regent60-na -file path=usr/share/lib/terminfo/s/s1500 -file path=usr/share/lib/terminfo/s/sb +file path=usr/share/lib/terminfo/r/regent60 +file path=usr/share/lib/terminfo/r/rt6221 +file path=usr/share/lib/terminfo/r/rt6221-w +file path=usr/share/lib/terminfo/r/rtpc +file path=usr/share/lib/terminfo/r/rxvt +file path=usr/share/lib/terminfo/r/rxvt+pcfkeys +file path=usr/share/lib/terminfo/r/rxvt-16color +file path=usr/share/lib/terminfo/r/rxvt-256color +file path=usr/share/lib/terminfo/r/rxvt-88color +file path=usr/share/lib/terminfo/r/rxvt-basic +file path=usr/share/lib/terminfo/r/rxvt-color +file path=usr/share/lib/terminfo/r/rxvt-cygwin +file path=usr/share/lib/terminfo/r/rxvt-cygwin-native +file path=usr/share/lib/terminfo/r/rxvt-xpm +file path=usr/share/lib/terminfo/s/sb1 file path=usr/share/lib/terminfo/s/sb2 file path=usr/share/lib/terminfo/s/sbi -file path=usr/share/lib/terminfo/s/sc410 -file path=usr/share/lib/terminfo/s/scanset-n +file path=usr/share/lib/terminfo/s/scanset +file path=usr/share/lib/terminfo/s/scoansi +file path=usr/share/lib/terminfo/s/scoansi-new +file path=usr/share/lib/terminfo/s/scoansi-old +file path=usr/share/lib/terminfo/s/screen +file path=usr/share/lib/terminfo/s/screen+fkeys +file path=usr/share/lib/terminfo/s/screen-16color +file path=usr/share/lib/terminfo/s/screen-16color-bce +file path=usr/share/lib/terminfo/s/screen-16color-bce-s +file path=usr/share/lib/terminfo/s/screen-16color-s +file path=usr/share/lib/terminfo/s/screen-256color +file path=usr/share/lib/terminfo/s/screen-256color-bce +file path=usr/share/lib/terminfo/s/screen-256color-bce-s +file path=usr/share/lib/terminfo/s/screen-256color-s +file path=usr/share/lib/terminfo/s/screen-bce +file path=usr/share/lib/terminfo/s/screen-bce.Eterm +file path=usr/share/lib/terminfo/s/screen-bce.gnome +file path=usr/share/lib/terminfo/s/screen-bce.konsole +file path=usr/share/lib/terminfo/s/screen-bce.linux +file path=usr/share/lib/terminfo/s/screen-bce.mlterm +file path=usr/share/lib/terminfo/s/screen-bce.mrxvt +file path=usr/share/lib/terminfo/s/screen-bce.rxvt +file path=usr/share/lib/terminfo/s/screen-bce.xterm-new +file path=usr/share/lib/terminfo/s/screen-s +file path=usr/share/lib/terminfo/s/screen-w +file path=usr/share/lib/terminfo/s/screen.Eterm +file path=usr/share/lib/terminfo/s/screen.gnome +file path=usr/share/lib/terminfo/s/screen.konsole +file path=usr/share/lib/terminfo/s/screen.linux +file path=usr/share/lib/terminfo/s/screen.mlterm +file path=usr/share/lib/terminfo/s/screen.mrxvt +file path=usr/share/lib/terminfo/s/screen.rxvt +file path=usr/share/lib/terminfo/s/screen.teraterm +file path=usr/share/lib/terminfo/s/screen.vte +file path=usr/share/lib/terminfo/s/screen.xterm-r6 +file path=usr/share/lib/terminfo/s/screen.xterm-xfree86 +file path=usr/share/lib/terminfo/s/screen2 +file path=usr/share/lib/terminfo/s/screen3 file path=usr/share/lib/terminfo/s/screwpoint file path=usr/share/lib/terminfo/s/scrhp -file path=usr/share/lib/terminfo/s/sexidy +file path=usr/share/lib/terminfo/s/sibo +file path=usr/share/lib/terminfo/s/simpleterm file path=usr/share/lib/terminfo/s/simterm -file path=usr/share/lib/terminfo/s/smarterm -file path=usr/share/lib/terminfo/s/smartvid -file path=usr/share/lib/terminfo/s/sol -file path=usr/share/lib/terminfo/s/sol2 +file path=usr/share/lib/terminfo/s/soroc120 +file path=usr/share/lib/terminfo/s/soroc140 +file path=usr/share/lib/terminfo/s/st-16color +file path=usr/share/lib/terminfo/s/st-256color +file path=usr/share/lib/terminfo/s/st52 +file path=usr/share/lib/terminfo/s/st52-color +file path=usr/share/lib/terminfo/s/st52-old +file path=usr/share/lib/terminfo/s/stv52 +file path=usr/share/lib/terminfo/s/stv52pc +file path=usr/share/lib/terminfo/s/sun +file path=usr/share/lib/terminfo/s/sun-1 +file path=usr/share/lib/terminfo/s/sun-12 +file path=usr/share/lib/terminfo/s/sun-17 +file path=usr/share/lib/terminfo/s/sun-24 +file path=usr/share/lib/terminfo/s/sun-34 +file path=usr/share/lib/terminfo/s/sun-48 +file path=usr/share/lib/terminfo/s/sun-c +file path=usr/share/lib/terminfo/s/sun-cgsix +file path=usr/share/lib/terminfo/s/sun-color +file path=usr/share/lib/terminfo/s/sun-e +file path=usr/share/lib/terminfo/s/sun-e-s +file path=usr/share/lib/terminfo/s/sun-il +file path=usr/share/lib/terminfo/s/sun-s +file path=usr/share/lib/terminfo/s/sun-type4 +file path=usr/share/lib/terminfo/s/superbee-xsb +file path=usr/share/lib/terminfo/s/superbeeic file path=usr/share/lib/terminfo/s/superbrain -file path=usr/share/lib/terminfo/s/switch +file path=usr/share/lib/terminfo/s/swtp +file path=usr/share/lib/terminfo/s/synertek file path=usr/share/lib/terminfo/t/t10 +file path=usr/share/lib/terminfo/t/t1061 file path=usr/share/lib/terminfo/t/t1061f file path=usr/share/lib/terminfo/t/t16 file path=usr/share/lib/terminfo/t/t3700 file path=usr/share/lib/terminfo/t/t3800 -file path=usr/share/lib/terminfo/t/t500 -file path=usr/share/lib/terminfo/t/t88 -file path=usr/share/lib/terminfo/t/t88-nr -file path=usr/share/lib/terminfo/t/tab +file path=usr/share/lib/terminfo/t/tab132 file path=usr/share/lib/terminfo/t/tab132-rv file path=usr/share/lib/terminfo/t/tab132-w file path=usr/share/lib/terminfo/t/tab132-w-rv -file path=usr/share/lib/terminfo/t/tec -file path=usr/share/lib/terminfo/t/tec400 -file path=usr/share/lib/terminfo/t/tec500 +file path=usr/share/lib/terminfo/t/tandem6510 +file path=usr/share/lib/terminfo/t/tandem653 +file path=usr/share/lib/terminfo/t/tek +file path=usr/share/lib/terminfo/t/tek4013 +file path=usr/share/lib/terminfo/t/tek4014 +file path=usr/share/lib/terminfo/t/tek4014-sm +file path=usr/share/lib/terminfo/t/tek4015 +file path=usr/share/lib/terminfo/t/tek4015-sm +file path=usr/share/lib/terminfo/t/tek4023 +file path=usr/share/lib/terminfo/t/tek4024 +file path=usr/share/lib/terminfo/t/tek4025-17 +file path=usr/share/lib/terminfo/t/tek4025-17-ws +file path=usr/share/lib/terminfo/t/tek4025-cr +file path=usr/share/lib/terminfo/t/tek4025-ex +file path=usr/share/lib/terminfo/t/tek4025a +file path=usr/share/lib/terminfo/t/tek4025ex +file path=usr/share/lib/terminfo/t/tek4105 +file path=usr/share/lib/terminfo/t/tek4105-30 +file path=usr/share/lib/terminfo/t/tek4105a +file path=usr/share/lib/terminfo/t/tek4106brl +file path=usr/share/lib/terminfo/t/tek4107 +file path=usr/share/lib/terminfo/t/tek4112 +file path=usr/share/lib/terminfo/t/tek4112-5 +file path=usr/share/lib/terminfo/t/tek4112-nd +file path=usr/share/lib/terminfo/t/tek4113 +file path=usr/share/lib/terminfo/t/tek4113-34 +file path=usr/share/lib/terminfo/t/tek4113-nd +file path=usr/share/lib/terminfo/t/tek4115 +file path=usr/share/lib/terminfo/t/tek4125 +file path=usr/share/lib/terminfo/t/tek4205 +file path=usr/share/lib/terminfo/t/tek4207 +file path=usr/share/lib/terminfo/t/tek4207-s +file path=usr/share/lib/terminfo/t/tek4404 file path=usr/share/lib/terminfo/t/teletec -file path=usr/share/lib/terminfo/t/terak -file path=usr/share/lib/terminfo/t/terminet -file path=usr/share/lib/terminfo/t/ti800 -file path=usr/share/lib/terminfo/t/trs-80 +file path=usr/share/lib/terminfo/t/teraterm +file path=usr/share/lib/terminfo/t/teraterm2.3 +file path=usr/share/lib/terminfo/t/teraterm4.59 +file path=usr/share/lib/terminfo/t/terminator +file path=usr/share/lib/terminfo/t/terminet1200 +file path=usr/share/lib/terminfo/t/ti700 +file path=usr/share/lib/terminfo/t/ti916 +file path=usr/share/lib/terminfo/t/ti916-132 +file path=usr/share/lib/terminfo/t/ti916-8 +file path=usr/share/lib/terminfo/t/ti916-8-132 +file path=usr/share/lib/terminfo/t/ti924 +file path=usr/share/lib/terminfo/t/ti924-8 +file path=usr/share/lib/terminfo/t/ti924-8w +file path=usr/share/lib/terminfo/t/ti924w +file path=usr/share/lib/terminfo/t/ti926 +file path=usr/share/lib/terminfo/t/ti926-8 +file path=usr/share/lib/terminfo/t/ti928 +file path=usr/share/lib/terminfo/t/ti928-8 +file path=usr/share/lib/terminfo/t/ti931 +file path=usr/share/lib/terminfo/t/ti_ansi file path=usr/share/lib/terminfo/t/trs16 file path=usr/share/lib/terminfo/t/trs2 file path=usr/share/lib/terminfo/t/ts100 file path=usr/share/lib/terminfo/t/ts100-ctxt -file path=usr/share/lib/terminfo/t/ttywilliams -file path=usr/share/lib/terminfo/t/tvi2p +file path=usr/share/lib/terminfo/t/tt +file path=usr/share/lib/terminfo/t/tt505-22 +file path=usr/share/lib/terminfo/t/tt52 +file path=usr/share/lib/terminfo/t/tty33 +file path=usr/share/lib/terminfo/t/tty37 +file path=usr/share/lib/terminfo/t/tty40 +file path=usr/share/lib/terminfo/t/tty43 file path=usr/share/lib/terminfo/t/tvi803 -file path=usr/share/lib/terminfo/t/tvi914 -file path=usr/share/lib/terminfo/t/tvi950-ap -file path=usr/share/lib/terminfo/t/tvi950-b -file path=usr/share/lib/terminfo/t/tvi950-ns -file path=usr/share/lib/terminfo/t/tvi950b -file path=usr/share/lib/terminfo/t/tvi950ns -file path=usr/share/lib/terminfo/u/ubell -file path=usr/share/lib/terminfo/u/unitrm18 +file path=usr/share/lib/terminfo/t/tvi9065 +file path=usr/share/lib/terminfo/t/tvi910 +file path=usr/share/lib/terminfo/t/tvi910+ +file path=usr/share/lib/terminfo/t/tvi912 +file path=usr/share/lib/terminfo/t/tvi912b +file path=usr/share/lib/terminfo/t/tvi912b+2p +file path=usr/share/lib/terminfo/t/tvi912b+dim +file path=usr/share/lib/terminfo/t/tvi912b+mc +file path=usr/share/lib/terminfo/t/tvi912b+printer +file path=usr/share/lib/terminfo/t/tvi912b+vb +file path=usr/share/lib/terminfo/t/tvi912b-2p +file path=usr/share/lib/terminfo/t/tvi912b-2p-mc +file path=usr/share/lib/terminfo/t/tvi912b-2p-p +file path=usr/share/lib/terminfo/t/tvi912b-2p-unk +file path=usr/share/lib/terminfo/t/tvi912b-mc +file path=usr/share/lib/terminfo/t/tvi912b-p +file path=usr/share/lib/terminfo/t/tvi912b-unk +file path=usr/share/lib/terminfo/t/tvi912b-vb +file path=usr/share/lib/terminfo/t/tvi912b-vb-mc +file path=usr/share/lib/terminfo/t/tvi912b-vb-p +file path=usr/share/lib/terminfo/t/tvi912b-vb-unk +file path=usr/share/lib/terminfo/t/tvi912cc +file path=usr/share/lib/terminfo/t/tvi920b +file path=usr/share/lib/terminfo/t/tvi920b+fn +file path=usr/share/lib/terminfo/t/tvi920b-2p +file path=usr/share/lib/terminfo/t/tvi920b-2p-mc +file path=usr/share/lib/terminfo/t/tvi920b-2p-p +file path=usr/share/lib/terminfo/t/tvi920b-2p-unk +file path=usr/share/lib/terminfo/t/tvi920b-mc +file path=usr/share/lib/terminfo/t/tvi920b-p +file path=usr/share/lib/terminfo/t/tvi920b-unk +file path=usr/share/lib/terminfo/t/tvi920b-vb +file path=usr/share/lib/terminfo/t/tvi920b-vb-mc +file path=usr/share/lib/terminfo/t/tvi920b-vb-p +file path=usr/share/lib/terminfo/t/tvi920b-vb-unk +file path=usr/share/lib/terminfo/t/tvi921 +file path=usr/share/lib/terminfo/t/tvi924 +file path=usr/share/lib/terminfo/t/tvi925 +file path=usr/share/lib/terminfo/t/tvi925-hi +file path=usr/share/lib/terminfo/t/tvi92B +file path=usr/share/lib/terminfo/t/tvi92D +file path=usr/share/lib/terminfo/t/tvi950 +file path=usr/share/lib/terminfo/t/tvi950-2p +file path=usr/share/lib/terminfo/t/tvi950-4p +file path=usr/share/lib/terminfo/t/tvi950-rv +file path=usr/share/lib/terminfo/t/tvi950-rv-2p +file path=usr/share/lib/terminfo/t/tvi950-rv-4p +file path=usr/share/lib/terminfo/t/tvi955 +file path=usr/share/lib/terminfo/t/tvi955-hb +file path=usr/share/lib/terminfo/t/tvi955-w +file path=usr/share/lib/terminfo/t/tvi970 +file path=usr/share/lib/terminfo/t/tvi970-2p +file path=usr/share/lib/terminfo/t/tvi970-vb +file path=usr/share/lib/terminfo/t/tvipt +file path=usr/share/lib/terminfo/t/tw100 +file path=usr/share/lib/terminfo/t/tw52 +file path=usr/share/lib/terminfo/t/tw52-m +file path=usr/share/lib/terminfo/t/tws-generic +file path=usr/share/lib/terminfo/t/tws2102-sna +file path=usr/share/lib/terminfo/t/tws2103 +file path=usr/share/lib/terminfo/t/tws2103-sna +file path=usr/share/lib/terminfo/u/uniterm +file path=usr/share/lib/terminfo/u/unknown file path=usr/share/lib/terminfo/u/uts30 +file path=usr/share/lib/terminfo/u/uwin +file path=usr/share/lib/terminfo/v/v3220 file path=usr/share/lib/terminfo/v/v5410 -file path=usr/share/lib/terminfo/v/v90 file path=usr/share/lib/terminfo/v/vanilla -file path=usr/share/lib/terminfo/v/vc103 -file path=usr/share/lib/terminfo/v/vc303-a +file path=usr/share/lib/terminfo/v/vc303 +file path=usr/share/lib/terminfo/v/vc303a file path=usr/share/lib/terminfo/v/vc404 -file path=usr/share/lib/terminfo/v/vc404-na file path=usr/share/lib/terminfo/v/vc404-s -file path=usr/share/lib/terminfo/v/vc404-s-na +file path=usr/share/lib/terminfo/v/vc414 file path=usr/share/lib/terminfo/v/vc415 +file path=usr/share/lib/terminfo/v/versaterm file path=usr/share/lib/terminfo/v/vi200 file path=usr/share/lib/terminfo/v/vi200-f -file path=usr/share/lib/terminfo/v/vi200-ic file path=usr/share/lib/terminfo/v/vi200-rv -file path=usr/share/lib/terminfo/v/vi200-rv-ic file path=usr/share/lib/terminfo/v/vi300 -file path=usr/share/lib/terminfo/v/vi300-aw -file path=usr/share/lib/terminfo/v/vi300-rv -file path=usr/share/lib/terminfo/v/vi300-ss +file path=usr/share/lib/terminfo/v/vi300-old file path=usr/share/lib/terminfo/v/vi50 +file path=usr/share/lib/terminfo/v/vi500 +file path=usr/share/lib/terminfo/v/vi50adm +file path=usr/share/lib/terminfo/v/vi55 file path=usr/share/lib/terminfo/v/vi550 -file path=usr/share/lib/terminfo/v/vic +file path=usr/share/lib/terminfo/v/vi603 file path=usr/share/lib/terminfo/v/viewpoint -file path=usr/share/lib/terminfo/v/vt-61 +file path=usr/share/lib/terminfo/v/vip +file path=usr/share/lib/terminfo/v/vip-H +file path=usr/share/lib/terminfo/v/vip-Hw +file path=usr/share/lib/terminfo/v/vip-w +file path=usr/share/lib/terminfo/v/visa50 +file path=usr/share/lib/terminfo/v/vp3a+ +file path=usr/share/lib/terminfo/v/vp60 +file path=usr/share/lib/terminfo/v/vp90 +file path=usr/share/lib/terminfo/v/vremote +file path=usr/share/lib/terminfo/v/vsc +file path=usr/share/lib/terminfo/v/vt100 +file path=usr/share/lib/terminfo/v/vt100+enq +file path=usr/share/lib/terminfo/v/vt100+fnkeys +file path=usr/share/lib/terminfo/v/vt100+keypad +file path=usr/share/lib/terminfo/v/vt100+pfkeys +file path=usr/share/lib/terminfo/v/vt100-nav +file path=usr/share/lib/terminfo/v/vt100-nav-w +file path=usr/share/lib/terminfo/v/vt100-putty +file path=usr/share/lib/terminfo/v/vt100-s +file path=usr/share/lib/terminfo/v/vt100-s-bot +file path=usr/share/lib/terminfo/v/vt100-vb +file path=usr/share/lib/terminfo/v/vt100-w +file path=usr/share/lib/terminfo/v/vt100-w-nam +file path=usr/share/lib/terminfo/v/vt100nam file path=usr/share/lib/terminfo/v/vt102 +file path=usr/share/lib/terminfo/v/vt102+enq +file path=usr/share/lib/terminfo/v/vt102-nsgr +file path=usr/share/lib/terminfo/v/vt102-w file path=usr/share/lib/terminfo/v/vt125 +file path=usr/share/lib/terminfo/v/vt131 +file path=usr/share/lib/terminfo/v/vt132 +file path=usr/share/lib/terminfo/v/vt200-js +file path=usr/share/lib/terminfo/v/vt220 +file path=usr/share/lib/terminfo/v/vt220+keypad +file path=usr/share/lib/terminfo/v/vt220-8bit +file path=usr/share/lib/terminfo/v/vt220-nam +file path=usr/share/lib/terminfo/v/vt220-old +file path=usr/share/lib/terminfo/v/vt220-w +file path=usr/share/lib/terminfo/v/vt220d +file path=usr/share/lib/terminfo/v/vt320 +file path=usr/share/lib/terminfo/v/vt320-k3 +file path=usr/share/lib/terminfo/v/vt320-k311 +file path=usr/share/lib/terminfo/v/vt320-nam +file path=usr/share/lib/terminfo/v/vt320-w +file path=usr/share/lib/terminfo/v/vt320-w-nam +file path=usr/share/lib/terminfo/v/vt320nam +file path=usr/share/lib/terminfo/v/vt340 +file path=usr/share/lib/terminfo/v/vt400 +file path=usr/share/lib/terminfo/v/vt420 +file path=usr/share/lib/terminfo/v/vt420f +file path=usr/share/lib/terminfo/v/vt420pc +file path=usr/share/lib/terminfo/v/vt420pcdos file path=usr/share/lib/terminfo/v/vt50 file path=usr/share/lib/terminfo/v/vt50h +file path=usr/share/lib/terminfo/v/vt510 +file path=usr/share/lib/terminfo/v/vt510pc +file path=usr/share/lib/terminfo/v/vt510pcdos file path=usr/share/lib/terminfo/v/vt52 -file path=usr/share/lib/terminfo/w/wy-50 -file path=usr/share/lib/terminfo/w/wy-50-vb -file path=usr/share/lib/terminfo/w/wy-50-w -file path=usr/share/lib/terminfo/w/wy-50-wvb +file path=usr/share/lib/terminfo/v/vt520 +file path=usr/share/lib/terminfo/v/vt525 +file path=usr/share/lib/terminfo/v/vt61 +file path=usr/share/lib/terminfo/v/vte +file path=usr/share/lib/terminfo/v/vte+pcfkeys +file path=usr/share/lib/terminfo/v/vte-2007 +file path=usr/share/lib/terminfo/v/vte-2008 +file path=usr/share/lib/terminfo/v/vte-256color +file path=usr/share/lib/terminfo/v/vwmterm +file path=usr/share/lib/terminfo/w/wsiris +file path=usr/share/lib/terminfo/w/wsvt25 +file path=usr/share/lib/terminfo/w/wsvt25m +file path=usr/share/lib/terminfo/w/wy100 +file path=usr/share/lib/terminfo/w/wy100q +file path=usr/share/lib/terminfo/w/wy120 +file path=usr/share/lib/terminfo/w/wy120-25 +file path=usr/share/lib/terminfo/w/wy120-25-w +file path=usr/share/lib/terminfo/w/wy120-vb +file path=usr/share/lib/terminfo/w/wy120-w +file path=usr/share/lib/terminfo/w/wy120-w-vb +file path=usr/share/lib/terminfo/w/wy160 +file path=usr/share/lib/terminfo/w/wy160-25 +file path=usr/share/lib/terminfo/w/wy160-25-w +file path=usr/share/lib/terminfo/w/wy160-42 +file path=usr/share/lib/terminfo/w/wy160-42-w +file path=usr/share/lib/terminfo/w/wy160-43 +file path=usr/share/lib/terminfo/w/wy160-43-w +file path=usr/share/lib/terminfo/w/wy160-tek +file path=usr/share/lib/terminfo/w/wy160-vb +file path=usr/share/lib/terminfo/w/wy160-w +file path=usr/share/lib/terminfo/w/wy160-w-vb +file path=usr/share/lib/terminfo/w/wy185 +file path=usr/share/lib/terminfo/w/wy185-24 +file path=usr/share/lib/terminfo/w/wy185-vb +file path=usr/share/lib/terminfo/w/wy185-w +file path=usr/share/lib/terminfo/w/wy185-wvb file path=usr/share/lib/terminfo/w/wy30 file path=usr/share/lib/terminfo/w/wy30-mc file path=usr/share/lib/terminfo/w/wy30-vb -file path=usr/share/lib/terminfo/w/wy30p -file path=usr/share/lib/terminfo/w/wy30p-mc -file path=usr/share/lib/terminfo/w/wy30p-vb -file path=usr/share/lib/terminfo/w/wy50vp -file path=usr/share/lib/terminfo/w/wy50vp-nk +file path=usr/share/lib/terminfo/w/wy325 +file path=usr/share/lib/terminfo/w/wy325-25 +file path=usr/share/lib/terminfo/w/wy325-25w +file path=usr/share/lib/terminfo/w/wy325-42 +file path=usr/share/lib/terminfo/w/wy325-42w +file path=usr/share/lib/terminfo/w/wy325-42w-vb +file path=usr/share/lib/terminfo/w/wy325-43 +file path=usr/share/lib/terminfo/w/wy325-43w +file path=usr/share/lib/terminfo/w/wy325-43w-vb +file path=usr/share/lib/terminfo/w/wy325-vb +file path=usr/share/lib/terminfo/w/wy325-w +file path=usr/share/lib/terminfo/w/wy325-w-vb +file path=usr/share/lib/terminfo/w/wy350 +file path=usr/share/lib/terminfo/w/wy350-vb +file path=usr/share/lib/terminfo/w/wy350-w +file path=usr/share/lib/terminfo/w/wy350-wvb +file path=usr/share/lib/terminfo/w/wy370 +file path=usr/share/lib/terminfo/w/wy370-105k +file path=usr/share/lib/terminfo/w/wy370-EPC +file path=usr/share/lib/terminfo/w/wy370-nk +file path=usr/share/lib/terminfo/w/wy370-rv +file path=usr/share/lib/terminfo/w/wy370-tek +file path=usr/share/lib/terminfo/w/wy370-vb +file path=usr/share/lib/terminfo/w/wy370-w +file path=usr/share/lib/terminfo/w/wy370-wvb +file path=usr/share/lib/terminfo/w/wy50 +file path=usr/share/lib/terminfo/w/wy50-mc +file path=usr/share/lib/terminfo/w/wy50-vb +file path=usr/share/lib/terminfo/w/wy50-w +file path=usr/share/lib/terminfo/w/wy50-wvb +file path=usr/share/lib/terminfo/w/wy520 +file path=usr/share/lib/terminfo/w/wy520-24 +file path=usr/share/lib/terminfo/w/wy520-36 +file path=usr/share/lib/terminfo/w/wy520-36pc +file path=usr/share/lib/terminfo/w/wy520-36w +file path=usr/share/lib/terminfo/w/wy520-36wpc +file path=usr/share/lib/terminfo/w/wy520-48 +file path=usr/share/lib/terminfo/w/wy520-48pc +file path=usr/share/lib/terminfo/w/wy520-48w +file path=usr/share/lib/terminfo/w/wy520-48wpc +file path=usr/share/lib/terminfo/w/wy520-epc +file path=usr/share/lib/terminfo/w/wy520-epc-24 +file path=usr/share/lib/terminfo/w/wy520-epc-vb +file path=usr/share/lib/terminfo/w/wy520-epc-w +file path=usr/share/lib/terminfo/w/wy520-epc-wvb +file path=usr/share/lib/terminfo/w/wy520-vb +file path=usr/share/lib/terminfo/w/wy520-w +file path=usr/share/lib/terminfo/w/wy520-wvb file path=usr/share/lib/terminfo/w/wy60 file path=usr/share/lib/terminfo/w/wy60-25 file path=usr/share/lib/terminfo/w/wy60-25-w -file path=usr/share/lib/terminfo/w/wy60-2p file path=usr/share/lib/terminfo/w/wy60-42 file path=usr/share/lib/terminfo/w/wy60-42-w file path=usr/share/lib/terminfo/w/wy60-43 @@ -736,1578 +1545,1211 @@ file path=usr/share/lib/terminfo/w/wy75-mc file path=usr/share/lib/terminfo/w/wy75-vb file path=usr/share/lib/terminfo/w/wy75-w file path=usr/share/lib/terminfo/w/wy75-wvb +file path=usr/share/lib/terminfo/w/wy75ap file path=usr/share/lib/terminfo/w/wy85 +file path=usr/share/lib/terminfo/w/wy85-8bit file path=usr/share/lib/terminfo/w/wy85-vb file path=usr/share/lib/terminfo/w/wy85-w file path=usr/share/lib/terminfo/w/wy85-wvb -file path=usr/share/lib/terminfo/w/wy925 +file path=usr/share/lib/terminfo/w/wy99-ansi +file path=usr/share/lib/terminfo/w/wy99a-ansi +file path=usr/share/lib/terminfo/w/wy99f +file path=usr/share/lib/terminfo/w/wy99fa file path=usr/share/lib/terminfo/w/wy99gt file path=usr/share/lib/terminfo/w/wy99gt-25 file path=usr/share/lib/terminfo/w/wy99gt-25-w -file path=usr/share/lib/terminfo/w/wy99gt-2p +file path=usr/share/lib/terminfo/w/wy99gt-tek file path=usr/share/lib/terminfo/w/wy99gt-vb file path=usr/share/lib/terminfo/w/wy99gt-w file path=usr/share/lib/terminfo/w/wy99gt-w-vb -file path=usr/share/lib/terminfo/x/xitex -file path=usr/share/lib/terminfo/x/xl83 -file path=usr/share/lib/terminfo/x/xpcterm -file path=usr/share/lib/terminfo/x/xpcterms +file path=usr/share/lib/terminfo/w/wyse-vp +file path=usr/share/lib/terminfo/x/x10term +file path=usr/share/lib/terminfo/x/x68k +file path=usr/share/lib/terminfo/x/xerox1720 +file path=usr/share/lib/terminfo/x/xerox820 +file path=usr/share/lib/terminfo/x/xfce +file path=usr/share/lib/terminfo/x/xiterm +file path=usr/share/lib/terminfo/x/xnuppc +file path=usr/share/lib/terminfo/x/xnuppc+100x37 +file path=usr/share/lib/terminfo/x/xnuppc+112x37 +file path=usr/share/lib/terminfo/x/xnuppc+128x40 +file path=usr/share/lib/terminfo/x/xnuppc+128x48 +file path=usr/share/lib/terminfo/x/xnuppc+144x48 +file path=usr/share/lib/terminfo/x/xnuppc+160x64 +file path=usr/share/lib/terminfo/x/xnuppc+200x64 +file path=usr/share/lib/terminfo/x/xnuppc+200x75 +file path=usr/share/lib/terminfo/x/xnuppc+256x96 +file path=usr/share/lib/terminfo/x/xnuppc+80x25 +file path=usr/share/lib/terminfo/x/xnuppc+80x30 +file path=usr/share/lib/terminfo/x/xnuppc+90x30 +file path=usr/share/lib/terminfo/x/xnuppc+b +file path=usr/share/lib/terminfo/x/xnuppc+basic +file path=usr/share/lib/terminfo/x/xnuppc+c +file path=usr/share/lib/terminfo/x/xnuppc+f +file path=usr/share/lib/terminfo/x/xnuppc+f2 +file path=usr/share/lib/terminfo/x/xnuppc-100x37 +file path=usr/share/lib/terminfo/x/xnuppc-100x37-m +file path=usr/share/lib/terminfo/x/xnuppc-112x37 +file path=usr/share/lib/terminfo/x/xnuppc-112x37-m +file path=usr/share/lib/terminfo/x/xnuppc-128x40 +file path=usr/share/lib/terminfo/x/xnuppc-128x40-m +file path=usr/share/lib/terminfo/x/xnuppc-128x48 +file path=usr/share/lib/terminfo/x/xnuppc-128x48-m +file path=usr/share/lib/terminfo/x/xnuppc-144x48 +file path=usr/share/lib/terminfo/x/xnuppc-144x48-m +file path=usr/share/lib/terminfo/x/xnuppc-160x64 +file path=usr/share/lib/terminfo/x/xnuppc-160x64-m +file path=usr/share/lib/terminfo/x/xnuppc-200x64 +file path=usr/share/lib/terminfo/x/xnuppc-200x64-m +file path=usr/share/lib/terminfo/x/xnuppc-200x75 +file path=usr/share/lib/terminfo/x/xnuppc-200x75-m +file path=usr/share/lib/terminfo/x/xnuppc-256x96 +file path=usr/share/lib/terminfo/x/xnuppc-256x96-m +file path=usr/share/lib/terminfo/x/xnuppc-80x25 +file path=usr/share/lib/terminfo/x/xnuppc-80x25-m +file path=usr/share/lib/terminfo/x/xnuppc-80x30 +file path=usr/share/lib/terminfo/x/xnuppc-80x30-m +file path=usr/share/lib/terminfo/x/xnuppc-90x30 +file path=usr/share/lib/terminfo/x/xnuppc-90x30-m +file path=usr/share/lib/terminfo/x/xnuppc-b +file path=usr/share/lib/terminfo/x/xnuppc-f +file path=usr/share/lib/terminfo/x/xnuppc-f2 +file path=usr/share/lib/terminfo/x/xnuppc-m +file path=usr/share/lib/terminfo/x/xnuppc-m-b +file path=usr/share/lib/terminfo/x/xnuppc-m-f +file path=usr/share/lib/terminfo/x/xnuppc-m-f2 file path=usr/share/lib/terminfo/x/xtalk +file path=usr/share/lib/terminfo/x/xterm +file path=usr/share/lib/terminfo/x/xterm+256color +file path=usr/share/lib/terminfo/x/xterm+88color +file path=usr/share/lib/terminfo/x/xterm+app +file path=usr/share/lib/terminfo/x/xterm+edit +file path=usr/share/lib/terminfo/x/xterm+noapp +file path=usr/share/lib/terminfo/x/xterm+pc+edit +file path=usr/share/lib/terminfo/x/xterm+pcc0 +file path=usr/share/lib/terminfo/x/xterm+pcc1 +file path=usr/share/lib/terminfo/x/xterm+pcc2 +file path=usr/share/lib/terminfo/x/xterm+pcc3 +file path=usr/share/lib/terminfo/x/xterm+pce2 +file path=usr/share/lib/terminfo/x/xterm+pcf0 +file path=usr/share/lib/terminfo/x/xterm+pcf2 +file path=usr/share/lib/terminfo/x/xterm+pcfkeys +file path=usr/share/lib/terminfo/x/xterm+r6f2 +file path=usr/share/lib/terminfo/x/xterm+sl +file path=usr/share/lib/terminfo/x/xterm+sl-twm +file path=usr/share/lib/terminfo/x/xterm+tmux +file path=usr/share/lib/terminfo/x/xterm+vt+edit +file path=usr/share/lib/terminfo/x/xterm-1002 +file path=usr/share/lib/terminfo/x/xterm-1003 +file path=usr/share/lib/terminfo/x/xterm-16color +file path=usr/share/lib/terminfo/x/xterm-24 +file path=usr/share/lib/terminfo/x/xterm-256color +file path=usr/share/lib/terminfo/x/xterm-88color +file path=usr/share/lib/terminfo/x/xterm-8bit +file path=usr/share/lib/terminfo/x/xterm-basic +file path=usr/share/lib/terminfo/x/xterm-bold +file path=usr/share/lib/terminfo/x/xterm-color +file path=usr/share/lib/terminfo/x/xterm-hp +file path=usr/share/lib/terminfo/x/xterm-new +file path=usr/share/lib/terminfo/x/xterm-nic +file path=usr/share/lib/terminfo/x/xterm-noapp +file path=usr/share/lib/terminfo/x/xterm-pcolor +file path=usr/share/lib/terminfo/x/xterm-r5 +file path=usr/share/lib/terminfo/x/xterm-r6 +file path=usr/share/lib/terminfo/x/xterm-sco +file path=usr/share/lib/terminfo/x/xterm-sun +file path=usr/share/lib/terminfo/x/xterm-utf8 +file path=usr/share/lib/terminfo/x/xterm-vt220 +file path=usr/share/lib/terminfo/x/xterm-vt52 +file path=usr/share/lib/terminfo/x/xterm-xf86-v32 +file path=usr/share/lib/terminfo/x/xterm-xf86-v33 +file path=usr/share/lib/terminfo/x/xterm-xf86-v333 +file path=usr/share/lib/terminfo/x/xterm-xf86-v40 +file path=usr/share/lib/terminfo/x/xterm-xf86-v43 +file path=usr/share/lib/terminfo/x/xterm-xf86-v44 +file path=usr/share/lib/terminfo/x/xterm-xfree86 +file path=usr/share/lib/terminfo/x/xterm-xi +file path=usr/share/lib/terminfo/x/xterm1 +file path=usr/share/lib/terminfo/x/xtermc +file path=usr/share/lib/terminfo/x/xtermm +file path=usr/share/lib/terminfo/x/xterms-sun +file path=usr/share/lib/terminfo/z/z100 +file path=usr/share/lib/terminfo/z/z100bw file path=usr/share/lib/terminfo/z/z29 -file path=usr/share/lib/terminfo/z/z30 -hardlink path=usr/share/lib/terminfo/1/1521 \ - target=../../../../../usr/share/lib/terminfo/1/1520 -hardlink path=usr/share/lib/terminfo/1/1640 \ - target=../../../../../usr/share/lib/terminfo/1/1620 -hardlink path=usr/share/lib/terminfo/1/1640-m8 \ - target=../../../../../usr/share/lib/terminfo/1/1620-m8 -hardlink path=usr/share/lib/terminfo/2/2397a \ - target=../../../../../usr/share/lib/terminfo/2/2397 -hardlink path=usr/share/lib/terminfo/2/2621-wl \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/2/2621A \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/2/2621a \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/2/2621p \ - target=../../../../../usr/share/lib/terminfo/2/2621P -hardlink path=usr/share/lib/terminfo/2/2622a \ - target=../../../../../usr/share/lib/terminfo/2/2622 -hardlink path=usr/share/lib/terminfo/2/2623a \ - target=../../../../../usr/share/lib/terminfo/2/2623 -hardlink path=usr/share/lib/terminfo/2/2624-4p \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/2/2624a \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/2/2624a-10p \ - target=../../../../../usr/share/lib/terminfo/2/2624-10p -hardlink path=usr/share/lib/terminfo/2/2624b \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/2/2624b-10p \ - target=../../../../../usr/share/lib/terminfo/2/2624-10p -hardlink path=usr/share/lib/terminfo/2/2626A \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/2/2626P \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/2/2626a \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/2/2626p \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/2/2640a \ - target=../../../../../usr/share/lib/terminfo/2/2640 -hardlink path=usr/share/lib/terminfo/2/2644a \ - target=../../../../../usr/share/lib/terminfo/2/2640b -hardlink path=usr/share/lib/terminfo/2/2648A \ - target=../../../../../usr/share/lib/terminfo/2/2648 -hardlink path=usr/share/lib/terminfo/2/2648a \ - target=../../../../../usr/share/lib/terminfo/2/2648 -hardlink path=usr/share/lib/terminfo/3/300s \ - target=../../../../../usr/share/lib/terminfo/3/300 -hardlink path=usr/share/lib/terminfo/4/4000awtc \ - target=../../../../../usr/share/lib/terminfo/7/705c -hardlink path=usr/share/lib/terminfo/4/4025 \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/4/4025-17ws \ - target=../../../../../usr/share/lib/terminfo/4/4025-17-ws -hardlink path=usr/share/lib/terminfo/4/4025cu \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/4/4025ex \ - target=../../../../../usr/share/lib/terminfo/4/4025-ex -hardlink path=usr/share/lib/terminfo/4/4027 \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/4/4027-17 \ - target=../../../../../usr/share/lib/terminfo/4/4025-17 -hardlink path=usr/share/lib/terminfo/4/4027-17-ws \ - target=../../../../../usr/share/lib/terminfo/4/4025-17-ws -hardlink path=usr/share/lib/terminfo/4/4027-ex \ - target=../../../../../usr/share/lib/terminfo/4/4025-ex -hardlink path=usr/share/lib/terminfo/4/4027cu \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/4/4109 \ - target=../../../../../usr/share/lib/terminfo/4/4107 -hardlink path=usr/share/lib/terminfo/4/4112-nd \ - target=../../../../../usr/share/lib/terminfo/4/4112 -hardlink path=usr/share/lib/terminfo/4/4113 \ - target=../../../../../usr/share/lib/terminfo/4/4112 -hardlink path=usr/share/lib/terminfo/4/4114 \ - target=../../../../../usr/share/lib/terminfo/4/4112 -hardlink path=usr/share/lib/terminfo/4/4424-3 \ - target=../../../../../usr/share/lib/terminfo/4/4424 -hardlink path=usr/share/lib/terminfo/4/450 \ - target=../../../../../usr/share/lib/terminfo/1/1620 -hardlink path=usr/share/lib/terminfo/5/510a \ - target=../../../../../usr/share/lib/terminfo/5/510A -hardlink path=usr/share/lib/terminfo/5/510d \ - target=../../../../../usr/share/lib/terminfo/5/510D -hardlink path=usr/share/lib/terminfo/5/513-page \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/5/513bct \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/5/5410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/5/5410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/5/5410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/5/5410-w \ - target=../../../../../usr/share/lib/terminfo/4/4410-w -hardlink path=usr/share/lib/terminfo/5/5410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/5/5410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/5/5418 \ - target=../../../../../usr/share/lib/terminfo/4/4418 -hardlink path=usr/share/lib/terminfo/5/5418-w \ - target=../../../../../usr/share/lib/terminfo/4/4418-w -hardlink path=usr/share/lib/terminfo/5/5420 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/5/5420+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/5/5420-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/5/5420-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/5/5420-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/5/5420-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/5/5420-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/5/5420-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv -hardlink path=usr/share/lib/terminfo/5/5420-w-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/5/5425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/5/5425-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-fk -hardlink path=usr/share/lib/terminfo/5/5425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/5/5425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/5/5425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/5/5425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/5/5430 \ - target=../../../../../usr/share/lib/terminfo/5/505 -hardlink path=usr/share/lib/terminfo/5/5430-22 \ - target=../../../../../usr/share/lib/terminfo/5/505-22 -hardlink path=usr/share/lib/terminfo/5/5430-24 \ - target=../../../../../usr/share/lib/terminfo/5/505-24 -hardlink path=usr/share/lib/terminfo/5/5630DMD \ - target=../../../../../usr/share/lib/terminfo/5/5630 -hardlink path=usr/share/lib/terminfo/5/5630DMD-24 \ - target=../../../../../usr/share/lib/terminfo/5/5630-24 -hardlink path=usr/share/lib/terminfo/6/605V2bct \ - target=../../../../../usr/share/lib/terminfo/6/605V2 -hardlink path=usr/share/lib/terminfo/6/605V2bct-w \ - target=../../../../../usr/share/lib/terminfo/6/605V2-w -hardlink path=usr/share/lib/terminfo/6/605bct \ - target=../../../../../usr/share/lib/terminfo/6/605 -hardlink path=usr/share/lib/terminfo/6/605bct-w \ - target=../../../../../usr/share/lib/terminfo/6/605-w -hardlink path=usr/share/lib/terminfo/6/610bct \ - target=../../../../../usr/share/lib/terminfo/6/610 -hardlink path=usr/share/lib/terminfo/6/610bct-103k \ - target=../../../../../usr/share/lib/terminfo/6/610-103k -hardlink path=usr/share/lib/terminfo/6/610bct-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/610-103k-w -hardlink path=usr/share/lib/terminfo/6/610bct-w \ - target=../../../../../usr/share/lib/terminfo/6/610-w -hardlink path=usr/share/lib/terminfo/6/615cmt-102k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k -hardlink path=usr/share/lib/terminfo/6/615cmt-102k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k-w -hardlink path=usr/share/lib/terminfo/6/615cmt-98k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k -hardlink path=usr/share/lib/terminfo/6/615cmt-98k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k-w -hardlink path=usr/share/lib/terminfo/6/615mt \ - target=../../../../../usr/share/lib/terminfo/6/615 -hardlink path=usr/share/lib/terminfo/6/615mt-103k \ - target=../../../../../usr/share/lib/terminfo/6/615-103k -hardlink path=usr/share/lib/terminfo/6/615mt-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/615-103k-w -hardlink path=usr/share/lib/terminfo/6/615mt-w \ - target=../../../../../usr/share/lib/terminfo/6/615-w -hardlink path=usr/share/lib/terminfo/6/620mtg \ - target=../../../../../usr/share/lib/terminfo/6/620 -hardlink path=usr/share/lib/terminfo/6/620mtg-103k \ - target=../../../../../usr/share/lib/terminfo/6/620-103k -hardlink path=usr/share/lib/terminfo/6/620mtg-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/620-103k-w -hardlink path=usr/share/lib/terminfo/6/620mtg-w \ - target=../../../../../usr/share/lib/terminfo/6/620-w -hardlink path=usr/share/lib/terminfo/6/630 \ - target=../../../../../usr/share/lib/terminfo/5/5630 -hardlink path=usr/share/lib/terminfo/6/630-24 \ - target=../../../../../usr/share/lib/terminfo/5/5630-24 -hardlink path=usr/share/lib/terminfo/6/6300PLUS \ - target=../../../../../usr/share/lib/terminfo/6/6300+ -hardlink path=usr/share/lib/terminfo/6/6300plus \ - target=../../../../../usr/share/lib/terminfo/6/6300+ -hardlink path=usr/share/lib/terminfo/6/630MTG \ - target=../../../../../usr/share/lib/terminfo/5/5630 -hardlink path=usr/share/lib/terminfo/6/630MTG-24 \ - target=../../../../../usr/share/lib/terminfo/5/5630-24 -hardlink path=usr/share/lib/terminfo/7/705 \ - target=../../../../../usr/share/lib/terminfo/6/605 -hardlink path=usr/share/lib/terminfo/7/730MTG \ - target=../../../../../usr/share/lib/terminfo/7/730 -hardlink path=usr/share/lib/terminfo/7/730MTG-24 \ - target=../../../../../usr/share/lib/terminfo/7/730-24 -hardlink path=usr/share/lib/terminfo/7/730MTG-41 \ - target=../../../../../usr/share/lib/terminfo/7/730-41 -hardlink path=usr/share/lib/terminfo/7/730r \ - target=../../../../../usr/share/lib/terminfo/7/730MTGr -hardlink path=usr/share/lib/terminfo/7/730r-24 \ - target=../../../../../usr/share/lib/terminfo/7/730MTGr-24 -hardlink path=usr/share/lib/terminfo/7/730r-41 \ - target=../../../../../usr/share/lib/terminfo/7/730MTG-41r -hardlink path=usr/share/lib/terminfo/7/745 \ - target=../../../../../usr/share/lib/terminfo/7/743 -hardlink path=usr/share/lib/terminfo/7/7900i \ - target=../../../../../usr/share/lib/terminfo/7/7900 -hardlink path=usr/share/lib/terminfo/7/7900i-na \ - target=../../../../../usr/share/lib/terminfo/7/7900-na -hardlink path=usr/share/lib/terminfo/8/820-2 \ - target=../../../../../usr/share/lib/terminfo/8/820 -hardlink path=usr/share/lib/terminfo/9/912c \ - target=../../../../../usr/share/lib/terminfo/9/912b -hardlink path=usr/share/lib/terminfo/9/920 \ - target=../../../../../usr/share/lib/terminfo/9/912 -hardlink path=usr/share/lib/terminfo/9/920-2p \ - target=../../../../../usr/share/lib/terminfo/9/912-2p -hardlink path=usr/share/lib/terminfo/9/920c \ - target=../../../../../usr/share/lib/terminfo/9/920b -hardlink path=usr/share/lib/terminfo/A/A615CMT-102k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k -hardlink path=usr/share/lib/terminfo/A/A615CMT-102k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k-w -hardlink path=usr/share/lib/terminfo/A/A615CMT-98k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k -hardlink path=usr/share/lib/terminfo/A/A615CMT-98k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k-w -hardlink path=usr/share/lib/terminfo/A/ATT2300 \ - target=../../../../../usr/share/lib/terminfo/2/2300 -hardlink path=usr/share/lib/terminfo/A/ATT2300-x40 \ - target=../../../../../usr/share/lib/terminfo/2/2300-x40 -hardlink path=usr/share/lib/terminfo/A/ATT2350 \ - target=../../../../../usr/share/lib/terminfo/2/2350 -hardlink path=usr/share/lib/terminfo/A/ATT2350-x40 \ - target=../../../../../usr/share/lib/terminfo/2/2350-x40 -hardlink path=usr/share/lib/terminfo/A/ATT4410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/A/ATT4410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/A/ATT4410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/A/ATT4410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/A/ATT4410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/A/ATT4415 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/A/ATT4415+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/A/ATT4415-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/A/ATT4415-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/A/ATT4415-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/A/ATT4415-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/A/ATT4415-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/A/ATT4415-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv -hardlink path=usr/share/lib/terminfo/A/ATT4415-w-rv-n \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/A/ATT4418 \ - target=../../../../../usr/share/lib/terminfo/4/4418 -hardlink path=usr/share/lib/terminfo/A/ATT4418-w \ - target=../../../../../usr/share/lib/terminfo/4/4418-w -hardlink path=usr/share/lib/terminfo/A/ATT4424 \ - target=../../../../../usr/share/lib/terminfo/4/4424 -hardlink path=usr/share/lib/terminfo/A/ATT4424-1 \ - target=../../../../../usr/share/lib/terminfo/4/4424-1 -hardlink path=usr/share/lib/terminfo/A/ATT4425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/A/ATT4425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/A/ATT4425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/A/ATT4425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/A/ATT4425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/A/ATT4426 \ - target=../../../../../usr/share/lib/terminfo/4/4426 -hardlink path=usr/share/lib/terminfo/A/ATT500 \ - target=../../../../../usr/share/lib/terminfo/5/500 -hardlink path=usr/share/lib/terminfo/A/ATT513 \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/A/ATT5410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/A/ATT5410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/A/ATT5410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/A/ATT5410-w \ - target=../../../../../usr/share/lib/terminfo/4/4410-w -hardlink path=usr/share/lib/terminfo/A/ATT5410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/A/ATT5410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/A/ATT5418 \ - target=../../../../../usr/share/lib/terminfo/4/4418 -hardlink path=usr/share/lib/terminfo/A/ATT5418-w \ - target=../../../../../usr/share/lib/terminfo/4/4418-w -hardlink path=usr/share/lib/terminfo/A/ATT5420 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/A/ATT5420+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/A/ATT5420-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/A/ATT5420-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/A/ATT5420-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/A/ATT5420-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/A/ATT5420-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/A/ATT5420-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv -hardlink path=usr/share/lib/terminfo/A/ATT5420-w-rv-n \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/A/ATT5420_2 \ - target=../../../../../usr/share/lib/terminfo/5/5420_2 -hardlink path=usr/share/lib/terminfo/A/ATT5420_2-w \ - target=../../../../../usr/share/lib/terminfo/5/5420_2-w -hardlink path=usr/share/lib/terminfo/A/ATT5425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/A/ATT5425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/A/ATT5425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/A/ATT5425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/A/ATT5425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/A/ATT5620 \ - target=../../../../../usr/share/lib/terminfo/5/5620 -hardlink path=usr/share/lib/terminfo/A/ATT5620-24 \ - target=../../../../../usr/share/lib/terminfo/5/5620-24 -hardlink path=usr/share/lib/terminfo/A/ATT5620-34 \ - target=../../../../../usr/share/lib/terminfo/5/5620-34 -hardlink path=usr/share/lib/terminfo/A/ATT605 \ - target=../../../../../usr/share/lib/terminfo/6/605 -hardlink path=usr/share/lib/terminfo/A/ATT605-w \ - target=../../../../../usr/share/lib/terminfo/6/605-w -hardlink path=usr/share/lib/terminfo/A/ATT605V2 \ - target=../../../../../usr/share/lib/terminfo/6/605V2 -hardlink path=usr/share/lib/terminfo/A/ATT605V2-w \ - target=../../../../../usr/share/lib/terminfo/6/605V2-w -hardlink path=usr/share/lib/terminfo/A/ATT610 \ - target=../../../../../usr/share/lib/terminfo/6/610 -hardlink path=usr/share/lib/terminfo/A/ATT610-103k \ - target=../../../../../usr/share/lib/terminfo/6/610-103k -hardlink path=usr/share/lib/terminfo/A/ATT610-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/610-103k-w -hardlink path=usr/share/lib/terminfo/A/ATT610-w \ - target=../../../../../usr/share/lib/terminfo/6/610-w -hardlink path=usr/share/lib/terminfo/A/ATT615 \ - target=../../../../../usr/share/lib/terminfo/6/615 -hardlink path=usr/share/lib/terminfo/A/ATT615-103k \ - target=../../../../../usr/share/lib/terminfo/6/615-103k -hardlink path=usr/share/lib/terminfo/A/ATT615-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/615-103k-w -hardlink path=usr/share/lib/terminfo/A/ATT615-w \ - target=../../../../../usr/share/lib/terminfo/6/615-w -hardlink path=usr/share/lib/terminfo/A/ATT620 \ - target=../../../../../usr/share/lib/terminfo/6/620 -hardlink path=usr/share/lib/terminfo/A/ATT620-103k \ - target=../../../../../usr/share/lib/terminfo/6/620-103k -hardlink path=usr/share/lib/terminfo/A/ATT620-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/620-103k-w -hardlink path=usr/share/lib/terminfo/A/ATT620-w \ - target=../../../../../usr/share/lib/terminfo/6/620-w -hardlink path=usr/share/lib/terminfo/A/ATT705C \ - target=../../../../../usr/share/lib/terminfo/7/705c -hardlink path=usr/share/lib/terminfo/B/BCT500 \ - target=../../../../../usr/share/lib/terminfo/5/500 -hardlink path=usr/share/lib/terminfo/H/HP7550 \ - target=../../../../../usr/share/lib/terminfo/7/7550 -hardlink path=usr/share/lib/terminfo/P/PC6300PLUS \ - target=../../../../../usr/share/lib/terminfo/6/6300+ -hardlink path=usr/share/lib/terminfo/P/PC7300 \ - target=../../../../../usr/share/lib/terminfo/7/7300 -hardlink path=usr/share/lib/terminfo/a/a615CMT-102k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k -hardlink path=usr/share/lib/terminfo/a/a615CMT-102k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-102k-w -hardlink path=usr/share/lib/terminfo/a/a615CMT-98k \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k -hardlink path=usr/share/lib/terminfo/a/a615CMT-98k-w \ - target=../../../../../usr/share/lib/terminfo/6/615CMT-98k-w -hardlink path=usr/share/lib/terminfo/a/aa \ - target=../../../../../usr/share/lib/terminfo/4/4080 -hardlink path=usr/share/lib/terminfo/a/aaa-30 \ - target=../../../../../usr/share/lib/terminfo/a/aaa -hardlink path=usr/share/lib/terminfo/a/aaa-30-srvctxt \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-s-rv-ct -hardlink path=usr/share/lib/terminfo/a/aaa-60-s-rvdec \ - target=../../../../../usr/share/lib/terminfo/a/aaa-60-s-rv-de -hardlink path=usr/share/lib/terminfo/a/aaa-ctxt \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-ctxt -hardlink path=usr/share/lib/terminfo/a/aaa-rv \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-rv -hardlink path=usr/share/lib/terminfo/a/aaa-rv-ctxt \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-rv-ctxt -hardlink path=usr/share/lib/terminfo/a/aaa-s \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-s -hardlink path=usr/share/lib/terminfo/a/aaa-s-ctxt \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-s-ctxt -hardlink path=usr/share/lib/terminfo/a/aaa-s-rv \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-s-rv -hardlink path=usr/share/lib/terminfo/a/aaa-s-rv-ctxt \ - target=../../../../../usr/share/lib/terminfo/a/aaa-30-s-rv-ct -hardlink path=usr/share/lib/terminfo/a/aaa-unk \ - target=../../../../../usr/share/lib/terminfo/a/aaa+unk -hardlink path=usr/share/lib/terminfo/a/act5s \ - target=../../../../../usr/share/lib/terminfo/a/act5-s -hardlink path=usr/share/lib/terminfo/a/adm1a \ - target=../../../../../usr/share/lib/terminfo/a/adm1 -hardlink path=usr/share/lib/terminfo/a/adm31 \ - target=../../../../../usr/share/lib/terminfo/3/31 -hardlink path=usr/share/lib/terminfo/a/adm36 \ - target=../../../../../usr/share/lib/terminfo/3/36 -hardlink path=usr/share/lib/terminfo/a/adm3a \ - target=../../../../../usr/share/lib/terminfo/3/3a -hardlink path=usr/share/lib/terminfo/a/adm3a+ \ - target=../../../../../usr/share/lib/terminfo/3/3a+ -hardlink path=usr/share/lib/terminfo/a/adm3aplus \ - target=../../../../../usr/share/lib/terminfo/3/3a+ -hardlink path=usr/share/lib/terminfo/a/adm42 \ - target=../../../../../usr/share/lib/terminfo/4/42 -hardlink path=usr/share/lib/terminfo/a/adm42-nl \ - target=../../../../../usr/share/lib/terminfo/4/42-nl -hardlink path=usr/share/lib/terminfo/a/aed512 \ - target=../../../../../usr/share/lib/terminfo/a/aed -hardlink path=usr/share/lib/terminfo/a/agiles \ - target=../../../../../usr/share/lib/terminfo/a/agile -hardlink path=usr/share/lib/terminfo/a/aj830 \ - target=../../../../../usr/share/lib/terminfo/a/aj -hardlink path=usr/share/lib/terminfo/a/aj832 \ - target=../../../../../usr/share/lib/terminfo/a/aj -hardlink path=usr/share/lib/terminfo/a/alto-heath \ - target=../../../../../usr/share/lib/terminfo/a/alto-h19 -hardlink path=usr/share/lib/terminfo/a/altoh19 \ - target=../../../../../usr/share/lib/terminfo/a/alto-h19 -hardlink path=usr/share/lib/terminfo/a/altoheath \ - target=../../../../../usr/share/lib/terminfo/a/alto-h19 -hardlink path=usr/share/lib/terminfo/a/ambas \ - target=../../../../../usr/share/lib/terminfo/a/aaa -hardlink path=usr/share/lib/terminfo/a/ambassador \ - target=../../../../../usr/share/lib/terminfo/a/aaa -hardlink path=usr/share/lib/terminfo/a/annarbor \ - target=../../../../../usr/share/lib/terminfo/4/4080 -hardlink path=usr/share/lib/terminfo/a/apple-v80 \ - target=../../../../../usr/share/lib/terminfo/a/apple -hardlink path=usr/share/lib/terminfo/a/att2300 \ - target=../../../../../usr/share/lib/terminfo/2/2300 -hardlink path=usr/share/lib/terminfo/a/att2300-x40 \ - target=../../../../../usr/share/lib/terminfo/2/2300-x40 -hardlink path=usr/share/lib/terminfo/a/att2350 \ - target=../../../../../usr/share/lib/terminfo/2/2350 -hardlink path=usr/share/lib/terminfo/a/att2350-x40 \ - target=../../../../../usr/share/lib/terminfo/2/2350-x40 -hardlink path=usr/share/lib/terminfo/a/att4410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/a/att4410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/a/att4410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/a/att4410-w \ - target=../../../../../usr/share/lib/terminfo/4/4410-w -hardlink path=usr/share/lib/terminfo/a/att4410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/a/att4410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/a/att4415 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/a/att4415+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/a/att4415-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/a/att4415-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/a/att4415-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/a/att4415-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/a/att4415-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/a/att4415-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv -hardlink path=usr/share/lib/terminfo/a/att4415-w-rv-n \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/a/att4418 \ - target=../../../../../usr/share/lib/terminfo/4/4418 -hardlink path=usr/share/lib/terminfo/a/att4418-w \ - target=../../../../../usr/share/lib/terminfo/4/4418-w -hardlink path=usr/share/lib/terminfo/a/att4424 \ - target=../../../../../usr/share/lib/terminfo/4/4424 -hardlink path=usr/share/lib/terminfo/a/att4424-1 \ - target=../../../../../usr/share/lib/terminfo/4/4424-1 -hardlink path=usr/share/lib/terminfo/a/att4425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/a/att4425-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-fk -hardlink path=usr/share/lib/terminfo/a/att4425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/a/att4425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/a/att4425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/a/att4425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/a/att4426 \ - target=../../../../../usr/share/lib/terminfo/4/4426 -hardlink path=usr/share/lib/terminfo/a/att500 \ - target=../../../../../usr/share/lib/terminfo/5/500 -hardlink path=usr/share/lib/terminfo/a/att510a \ - target=../../../../../usr/share/lib/terminfo/5/510A -hardlink path=usr/share/lib/terminfo/a/att510d \ - target=../../../../../usr/share/lib/terminfo/5/510D -hardlink path=usr/share/lib/terminfo/a/att513 \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/a/att513-page \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/a/att5410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/a/att5410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/a/att5410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/a/att5410-w \ - target=../../../../../usr/share/lib/terminfo/4/4410-w -hardlink path=usr/share/lib/terminfo/a/att5410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/a/att5410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/a/att5418 \ - target=../../../../../usr/share/lib/terminfo/4/4418 -hardlink path=usr/share/lib/terminfo/a/att5418-w \ - target=../../../../../usr/share/lib/terminfo/4/4418-w -hardlink path=usr/share/lib/terminfo/a/att5420 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/a/att5420+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/a/att5420-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/a/att5420-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/a/att5420-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/a/att5420-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/a/att5420-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/a/att5420-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv +file path=usr/share/lib/terminfo/z/z29a +file path=usr/share/lib/terminfo/z/z29a-kc-uc +file path=usr/share/lib/terminfo/z/z29a-nkc-bc +file path=usr/share/lib/terminfo/z/z29a-nkc-uc +file path=usr/share/lib/terminfo/z/z340 +file path=usr/share/lib/terminfo/z/z340-nam +file path=usr/share/lib/terminfo/z/z39-a +file path=usr/share/lib/terminfo/z/zen30 +file path=usr/share/lib/terminfo/z/zen50 +file path=usr/share/lib/terminfo/z/ztx +hardlink path=usr/share/lib/terminfo/1/1178 target=../a/adm1178 +hardlink path=usr/share/lib/terminfo/1/1730-lm target=../d/diablo1740-lm +hardlink path=usr/share/lib/terminfo/2/2621 target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/2/2621-wl target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/2/2621A target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/2/2621a target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/3/386at target=../a/att6386 +hardlink path=usr/share/lib/terminfo/3/3b1 target=../a/att7300 +hardlink path=usr/share/lib/terminfo/4/4025ex target=../t/tek4025ex +hardlink path=usr/share/lib/terminfo/4/4027ex target=../t/tek4025ex +hardlink path=usr/share/lib/terminfo/4/4410-w target=../a/att5410-w +hardlink path=usr/share/lib/terminfo/5/5051 target=../i/ibm-pc +hardlink path=usr/share/lib/terminfo/5/5410-w target=../a/att5410-w +hardlink path=usr/share/lib/terminfo/5/5620 target=../a/att5620 +hardlink path=usr/share/lib/terminfo/5/5630-24 target=../a/att630-24 +hardlink path=usr/share/lib/terminfo/5/5630DMD-24 target=../a/att630-24 +hardlink path=usr/share/lib/terminfo/6/6053 target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/6/6053-dg target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/6/605x target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/6/605x-dg target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/6/630-lm target=../d/diablo1740-lm +hardlink path=usr/share/lib/terminfo/6/630MTG-24 target=../a/att630-24 +hardlink path=usr/share/lib/terminfo/7/730MTG-24 target=../a/att730-24 +hardlink path=usr/share/lib/terminfo/7/730MTG-41 target=../a/att730-41 +hardlink path=usr/share/lib/terminfo/7/730MTG-41r target=../a/att730r-41 +hardlink path=usr/share/lib/terminfo/7/730MTGr target=../a/att730r +hardlink path=usr/share/lib/terminfo/7/730MTGr-24 target=../a/att730r-24 +hardlink path=usr/share/lib/terminfo/8/8510 target=../c/citoh +hardlink path=usr/share/lib/terminfo/9/955-hb target=../t/tvi955-hb +hardlink path=usr/share/lib/terminfo/9/955-w target=../t/tvi955-w +hardlink path=usr/share/lib/terminfo/A/Apple_Terminal target=../n/nsterm +hardlink path=usr/share/lib/terminfo/E/Eterm-color target=../E/Eterm +hardlink path=usr/share/lib/terminfo/L/LFT-PC850 target=../l/lft +hardlink path=usr/share/lib/terminfo/N/NCRVT100WPP target=../n/ncrvt100wan +hardlink path=usr/share/lib/terminfo/P/P12 target=../p/prism12 +hardlink path=usr/share/lib/terminfo/P/P12-M target=../p/prism12-m +hardlink path=usr/share/lib/terminfo/P/P12-M-W target=../p/prism12-m-w +hardlink path=usr/share/lib/terminfo/P/P12-W target=../p/prism12-w +hardlink path=usr/share/lib/terminfo/P/P14 target=../p/prism14 +hardlink path=usr/share/lib/terminfo/P/P14-M target=../p/prism14-m +hardlink path=usr/share/lib/terminfo/P/P14-M-W target=../p/prism14-m-w +hardlink path=usr/share/lib/terminfo/P/P14-W target=../p/prism14-w +hardlink path=usr/share/lib/terminfo/P/P4 target=../p/prism4 +hardlink path=usr/share/lib/terminfo/P/P5 target=../p/prism5 +hardlink path=usr/share/lib/terminfo/P/P7 target=../p/prism7 +hardlink path=usr/share/lib/terminfo/P/P8 target=../p/prism8 +hardlink path=usr/share/lib/terminfo/P/P8-W target=../p/prism8-w +hardlink path=usr/share/lib/terminfo/P/P9 target=../p/prism9 +hardlink path=usr/share/lib/terminfo/P/P9-8 target=../p/prism9-8 +hardlink path=usr/share/lib/terminfo/P/P9-8-W target=../p/prism9-8-w +hardlink path=usr/share/lib/terminfo/P/P9-W target=../p/prism9-w +hardlink path=usr/share/lib/terminfo/Q/Q306-8-pc target=../b/bq300-8-pc +hardlink path=usr/share/lib/terminfo/Q/Q310-vip-H target=../v/vip-H +hardlink path=usr/share/lib/terminfo/Q/Q310-vip-H-am target=../v/vip-H +hardlink path=usr/share/lib/terminfo/Q/Q310-vip-Hw target=../v/vip-Hw +hardlink path=usr/share/lib/terminfo/Q/Q310-vip-w target=../v/vip-w +hardlink path=usr/share/lib/terminfo/Q/Q310-vip-w-am target=../v/vip-w +hardlink path=usr/share/lib/terminfo/X/X-hpterm target=../h/hpterm +hardlink path=usr/share/lib/terminfo/a/a210 target=../a/ampex210 +hardlink path=usr/share/lib/terminfo/a/a80 target=../a/ampex80 +hardlink path=usr/share/lib/terminfo/a/a980 target=../a/adds980 +hardlink path=usr/share/lib/terminfo/a/aa4080 target=../a/annarbor4080 +hardlink path=usr/share/lib/terminfo/a/aaa-30 target=../a/aaa +hardlink path=usr/share/lib/terminfo/a/aaa-30-s-ctxt target=../a/aaa-s-ctxt +hardlink path=usr/share/lib/terminfo/a/aaa-30-s-rv-ct \ + target=../a/aaa-s-rv-ctxt +hardlink path=usr/share/lib/terminfo/a/aaa-ctxt target=../a/aaa-30-ctxt +hardlink path=usr/share/lib/terminfo/a/aaa-rv target=../a/aaa-30-rv +hardlink path=usr/share/lib/terminfo/a/aaa-rv-ctxt target=../a/aaa-30-rv-ctxt +hardlink path=usr/share/lib/terminfo/a/aaa-s target=../a/aaa-30-s +hardlink path=usr/share/lib/terminfo/a/aaa-s-rv target=../a/aaa-30-s-rv +hardlink path=usr/share/lib/terminfo/a/aaa-unk target=../a/aaa+unk +hardlink path=usr/share/lib/terminfo/a/addsviewpoint target=../v/viewpoint +hardlink path=usr/share/lib/terminfo/a/addsvp60 target=../v/vp60 +hardlink path=usr/share/lib/terminfo/a/adm1 target=../a/adm1a +hardlink path=usr/share/lib/terminfo/a/aj target=../a/aj830 +hardlink path=usr/share/lib/terminfo/a/aj832 target=../a/aj830 +hardlink path=usr/share/lib/terminfo/a/alt2 target=../a/altos2 +hardlink path=usr/share/lib/terminfo/a/alt3 target=../a/altos3 +hardlink path=usr/share/lib/terminfo/a/alt4 target=../a/altos4 +hardlink path=usr/share/lib/terminfo/a/alt5 target=../a/altos3 +hardlink path=usr/share/lib/terminfo/a/alt7 target=../a/altos7 +hardlink path=usr/share/lib/terminfo/a/alt7pc target=../a/altos7pc +hardlink path=usr/share/lib/terminfo/a/alto-heath target=../a/alto-h19 +hardlink path=usr/share/lib/terminfo/a/altoh19 target=../a/alto-h19 +hardlink path=usr/share/lib/terminfo/a/altoheath target=../a/alto-h19 +hardlink path=usr/share/lib/terminfo/a/altos-2 target=../a/altos2 +hardlink path=usr/share/lib/terminfo/a/altos-3 target=../a/altos3 +hardlink path=usr/share/lib/terminfo/a/altos-4 target=../a/altos4 +hardlink path=usr/share/lib/terminfo/a/altos-5 target=../a/altos3 +hardlink path=usr/share/lib/terminfo/a/altos5 target=../a/altos3 +hardlink path=usr/share/lib/terminfo/a/ambas target=../a/aaa +hardlink path=usr/share/lib/terminfo/a/ambassador target=../a/aaa +hardlink path=usr/share/lib/terminfo/a/amp219 target=../a/ampex219 +hardlink path=usr/share/lib/terminfo/a/amp219w target=../a/ampex219w +hardlink path=usr/share/lib/terminfo/a/ampex-219 target=../a/ampex219 +hardlink path=usr/share/lib/terminfo/a/ampex-219w target=../a/ampex219w +hardlink path=usr/share/lib/terminfo/a/ampex-232 target=../a/ampex232 +hardlink path=usr/share/lib/terminfo/a/ansi-mono target=../a/ansi-m +hardlink path=usr/share/lib/terminfo/a/ansi43m target=../p/pcansi-43-m +hardlink path=usr/share/lib/terminfo/a/ansi80x25 target=../c/cons25 +hardlink path=usr/share/lib/terminfo/a/ansi80x25-mono target=../c/cons25-m +hardlink path=usr/share/lib/terminfo/a/ansi80x25-raw target=../c/cons25w +hardlink path=usr/share/lib/terminfo/a/ansi80x30 target=../c/cons30 +hardlink path=usr/share/lib/terminfo/a/ansi80x30-mono target=../c/cons30-m +hardlink path=usr/share/lib/terminfo/a/ansi80x43 target=../c/cons43 +hardlink path=usr/share/lib/terminfo/a/ansi80x43-mono target=../c/cons43-m +hardlink path=usr/share/lib/terminfo/a/ansi80x50 target=../c/cons50 +hardlink path=usr/share/lib/terminfo/a/ansi80x50-mono target=../c/cons50-m +hardlink path=usr/share/lib/terminfo/a/ansi80x60 target=../c/cons60 +hardlink path=usr/share/lib/terminfo/a/ansi80x60-mono target=../c/cons60-m +hardlink path=usr/share/lib/terminfo/a/ansil target=../c/cons50 +hardlink path=usr/share/lib/terminfo/a/ansil-mono target=../c/cons50-m +hardlink path=usr/share/lib/terminfo/a/ansis target=../c/cons25 +hardlink path=usr/share/lib/terminfo/a/ansis-mono target=../c/cons25-m +hardlink path=usr/share/lib/terminfo/a/ansisysk target=../a/ansi.sysk +hardlink path=usr/share/lib/terminfo/a/ansiw target=../c/cons25w +hardlink path=usr/share/lib/terminfo/a/ap-vm80 target=../a/apple-vm80 +hardlink path=usr/share/lib/terminfo/a/apl target=../i/ibm-apl +hardlink path=usr/share/lib/terminfo/a/appleIIc target=../a/appleIIgs +hardlink path=usr/share/lib/terminfo/a/appleIIe target=../a/appleIIgs +hardlink path=usr/share/lib/terminfo/a/arm100-am target=../a/arm100 +hardlink path=usr/share/lib/terminfo/a/arm100-wam target=../a/arm100-w +hardlink path=usr/share/lib/terminfo/a/at target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/at-color target=../s/st52-color +hardlink path=usr/share/lib/terminfo/a/at-m target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/at386 target=../a/att6386 +hardlink path=usr/share/lib/terminfo/a/atari target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/atari-color target=../s/st52-color +hardlink path=usr/share/lib/terminfo/a/atari-m target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/atari_st target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/atari_st-color target=../s/st52-color +hardlink path=usr/share/lib/terminfo/a/atarist-m target=../s/st52 +hardlink path=usr/share/lib/terminfo/a/att4410-w target=../a/att5410-w +hardlink path=usr/share/lib/terminfo/a/att4410v1 target=../a/att5410v1 +hardlink path=usr/share/lib/terminfo/a/att4425 target=../a/att5425 +hardlink path=usr/share/lib/terminfo/a/att4425-nl target=../a/att5425-nl +hardlink path=usr/share/lib/terminfo/a/att4425-w target=../a/att5425-w +hardlink path=usr/share/lib/terminfo/a/att513 target=../a/att500 +hardlink path=usr/share/lib/terminfo/a/att5320 target=../a/att5310 +hardlink path=usr/share/lib/terminfo/a/att5410 target=../a/att4410 +hardlink path=usr/share/lib/terminfo/a/att5410v1-w target=../a/att4410v1-w +hardlink path=usr/share/lib/terminfo/a/att5418 target=../a/att4418 +hardlink path=usr/share/lib/terminfo/a/att5418-w target=../a/att4418-w +hardlink path=usr/share/lib/terminfo/a/att5420 target=../a/att4415 +hardlink path=usr/share/lib/terminfo/a/att5420+nl target=../a/att4415+nl +hardlink path=usr/share/lib/terminfo/a/att5420-nl target=../a/att4415-nl +hardlink path=usr/share/lib/terminfo/a/att5420-rv target=../a/att4415-rv +hardlink path=usr/share/lib/terminfo/a/att5420-rv-nl target=../a/att4415-rv-nl +hardlink path=usr/share/lib/terminfo/a/att5420-w target=../a/att4415-w +hardlink path=usr/share/lib/terminfo/a/att5420-w-nl target=../a/att4415-w-nl +hardlink path=usr/share/lib/terminfo/a/att5420-w-rv target=../a/att4415-w-rv hardlink path=usr/share/lib/terminfo/a/att5420-w-rv-n \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/a/att5420_2 \ - target=../../../../../usr/share/lib/terminfo/5/5420_2 -hardlink path=usr/share/lib/terminfo/a/att5420_2-w \ - target=../../../../../usr/share/lib/terminfo/5/5420_2-w -hardlink path=usr/share/lib/terminfo/a/att5425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/a/att5425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/a/att5425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/a/att5425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/a/att5425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/a/att5620 \ - target=../../../../../usr/share/lib/terminfo/5/5620 -hardlink path=usr/share/lib/terminfo/a/att5620-24 \ - target=../../../../../usr/share/lib/terminfo/5/5620-24 -hardlink path=usr/share/lib/terminfo/a/att5620-34 \ - target=../../../../../usr/share/lib/terminfo/5/5620-34 -hardlink path=usr/share/lib/terminfo/a/att605 \ - target=../../../../../usr/share/lib/terminfo/6/605 -hardlink path=usr/share/lib/terminfo/a/att605-w \ - target=../../../../../usr/share/lib/terminfo/6/605-w -hardlink path=usr/share/lib/terminfo/a/att605V2 \ - target=../../../../../usr/share/lib/terminfo/6/605V2 -hardlink path=usr/share/lib/terminfo/a/att605V2-w \ - target=../../../../../usr/share/lib/terminfo/6/605V2-w -hardlink path=usr/share/lib/terminfo/a/att610 \ - target=../../../../../usr/share/lib/terminfo/6/610 -hardlink path=usr/share/lib/terminfo/a/att610-103k \ - target=../../../../../usr/share/lib/terminfo/6/610-103k -hardlink path=usr/share/lib/terminfo/a/att610-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/610-103k-w -hardlink path=usr/share/lib/terminfo/a/att610-w \ - target=../../../../../usr/share/lib/terminfo/6/610-w -hardlink path=usr/share/lib/terminfo/a/att615 \ - target=../../../../../usr/share/lib/terminfo/6/615 -hardlink path=usr/share/lib/terminfo/a/att615-103k \ - target=../../../../../usr/share/lib/terminfo/6/615-103k -hardlink path=usr/share/lib/terminfo/a/att615-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/615-103k-w -hardlink path=usr/share/lib/terminfo/a/att615-w \ - target=../../../../../usr/share/lib/terminfo/6/615-w -hardlink path=usr/share/lib/terminfo/a/att620 \ - target=../../../../../usr/share/lib/terminfo/6/620 -hardlink path=usr/share/lib/terminfo/a/att620-103k \ - target=../../../../../usr/share/lib/terminfo/6/620-103k -hardlink path=usr/share/lib/terminfo/a/att620-103k-w \ - target=../../../../../usr/share/lib/terminfo/6/620-103k-w -hardlink path=usr/share/lib/terminfo/a/att620-w \ - target=../../../../../usr/share/lib/terminfo/6/620-w -hardlink path=usr/share/lib/terminfo/a/att630 \ - target=../../../../../usr/share/lib/terminfo/5/5630 -hardlink path=usr/share/lib/terminfo/a/att630-24 \ - target=../../../../../usr/share/lib/terminfo/5/5630-24 -hardlink path=usr/share/lib/terminfo/a/att705c \ - target=../../../../../usr/share/lib/terminfo/7/705c -hardlink path=usr/share/lib/terminfo/a/att730 \ - target=../../../../../usr/share/lib/terminfo/7/730 -hardlink path=usr/share/lib/terminfo/a/att730-24 \ - target=../../../../../usr/share/lib/terminfo/7/730-24 -hardlink path=usr/share/lib/terminfo/a/att730-41 \ - target=../../../../../usr/share/lib/terminfo/7/730-41 -hardlink path=usr/share/lib/terminfo/a/att730r \ - target=../../../../../usr/share/lib/terminfo/7/730MTGr -hardlink path=usr/share/lib/terminfo/a/att730r-24 \ - target=../../../../../usr/share/lib/terminfo/7/730MTGr-24 -hardlink path=usr/share/lib/terminfo/a/att730r-41 \ - target=../../../../../usr/share/lib/terminfo/7/730MTG-41r -hardlink path=usr/share/lib/terminfo/a/attis513-pfk \ - target=../../../../../usr/share/lib/terminfo/5/513 -hardlink path=usr/share/lib/terminfo/a/avt-rv-s \ - target=../../../../../usr/share/lib/terminfo/a/avt-rv -hardlink path=usr/share/lib/terminfo/a/avt-s \ - target=../../../../../usr/share/lib/terminfo/a/avt -hardlink path=usr/share/lib/terminfo/a/avt-s-rv \ - target=../../../../../usr/share/lib/terminfo/a/avt-rv -hardlink path=usr/share/lib/terminfo/a/avt-w-rv \ - target=../../../../../usr/share/lib/terminfo/a/avt-rv-w -hardlink path=usr/share/lib/terminfo/a/avt-w-rv-s \ - target=../../../../../usr/share/lib/terminfo/a/avt-rv-w -hardlink path=usr/share/lib/terminfo/a/avt-w-s \ - target=../../../../../usr/share/lib/terminfo/a/avt-w -hardlink path=usr/share/lib/terminfo/a/avt-w-s-rv \ - target=../../../../../usr/share/lib/terminfo/a/avt-rv-w -hardlink path=usr/share/lib/terminfo/b/bct500 \ - target=../../../../../usr/share/lib/terminfo/5/500 -hardlink path=usr/share/lib/terminfo/b/bct510a \ - target=../../../../../usr/share/lib/terminfo/5/510A -hardlink path=usr/share/lib/terminfo/b/bct510d \ - target=../../../../../usr/share/lib/terminfo/5/510D -hardlink path=usr/share/lib/terminfo/b/bgn \ - target=../../../../../usr/share/lib/terminfo/b/bg3.10 -hardlink path=usr/share/lib/terminfo/b/bgnv \ - target=../../../../../usr/share/lib/terminfo/b/bg3.10nv -hardlink path=usr/share/lib/terminfo/b/bgrv \ - target=../../../../../usr/share/lib/terminfo/b/bg3.10rv -hardlink path=usr/share/lib/terminfo/b/bh3m \ - target=../../../../../usr/share/lib/terminfo/b/beehiveIIIm -hardlink path=usr/share/lib/terminfo/b/bh4 \ - target=../../../../../usr/share/lib/terminfo/b/beehive4 -hardlink path=usr/share/lib/terminfo/c/c100-4p \ - target=../../../../../usr/share/lib/terminfo/c/c100 -hardlink path=usr/share/lib/terminfo/c/c100-rv-4p \ - target=../../../../../usr/share/lib/terminfo/c/c100-rv -hardlink path=usr/share/lib/terminfo/c/c100-rv-4p-pp \ - target=../../../../../usr/share/lib/terminfo/c/c100-rv -hardlink path=usr/share/lib/terminfo/c/c100-rv-na \ - target=../../../../../usr/share/lib/terminfo/c/c100-rv-4p-na -hardlink path=usr/share/lib/terminfo/c/c104 \ - target=../../../../../usr/share/lib/terminfo/c/c100 -hardlink path=usr/share/lib/terminfo/c/c108-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108 -hardlink path=usr/share/lib/terminfo/c/c108-na \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-na -hardlink path=usr/share/lib/terminfo/c/c108-na-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-na -hardlink path=usr/share/lib/terminfo/c/c108-rv-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-rv -hardlink path=usr/share/lib/terminfo/c/c108-rv-na \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-rv-na -hardlink path=usr/share/lib/terminfo/c/c108-rv-na-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-rv-na -hardlink path=usr/share/lib/terminfo/c/c108-w-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-w -hardlink path=usr/share/lib/terminfo/c/c5 \ - target=../../../../../usr/share/lib/terminfo/a/avt -hardlink path=usr/share/lib/terminfo/c/cbunix \ - target=../../../../../usr/share/lib/terminfo/c/cb-unix -hardlink path=usr/share/lib/terminfo/c/cdc456 \ - target=../../../../../usr/share/lib/terminfo/c/cdc -hardlink path=usr/share/lib/terminfo/c/cdi1203 \ - target=../../../../../usr/share/lib/terminfo/c/cdi -hardlink path=usr/share/lib/terminfo/c/chromatics \ - target=../../../../../usr/share/lib/terminfo/c/cg7900 -hardlink path=usr/share/lib/terminfo/c/citoh \ - target=../../../../../usr/share/lib/terminfo/8/8510 -hardlink path=usr/share/lib/terminfo/c/compucolorii \ - target=../../../../../usr/share/lib/terminfo/c/compucolor2 -hardlink path=usr/share/lib/terminfo/c/concept \ - target=../../../../../usr/share/lib/terminfo/c/c100 -hardlink path=usr/share/lib/terminfo/c/concept-avt \ - target=../../../../../usr/share/lib/terminfo/a/avt -hardlink path=usr/share/lib/terminfo/c/concept100 \ - target=../../../../../usr/share/lib/terminfo/c/c100 -hardlink path=usr/share/lib/terminfo/c/concept100-rv \ - target=../../../../../usr/share/lib/terminfo/c/c100-rv -hardlink path=usr/share/lib/terminfo/c/concept108 \ - target=../../../../../usr/share/lib/terminfo/c/c108 -hardlink path=usr/share/lib/terminfo/c/concept108-4p \ - target=../../../../../usr/share/lib/terminfo/c/c108-4p -hardlink path=usr/share/lib/terminfo/c/concept108-8p \ - target=../../../../../usr/share/lib/terminfo/c/c108 -hardlink path=usr/share/lib/terminfo/c/concept108-na- \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-na -hardlink path=usr/share/lib/terminfo/c/concept108-rv- \ - target=../../../../../usr/share/lib/terminfo/c/c108-rv-4p -hardlink path=usr/share/lib/terminfo/c/concept108-w-8 \ - target=../../../../../usr/share/lib/terminfo/c/c108-w -hardlink path=usr/share/lib/terminfo/c/concept108-w8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-w -hardlink path=usr/share/lib/terminfo/c/concept108na8p \ - target=../../../../../usr/share/lib/terminfo/c/c108-8p-na -hardlink path=usr/share/lib/terminfo/c/concept108rv4p \ - target=../../../../../usr/share/lib/terminfo/c/c108-rv-4p -hardlink path=usr/share/lib/terminfo/c/conceptavt \ - target=../../../../../usr/share/lib/terminfo/a/avt -hardlink path=usr/share/lib/terminfo/c/cops-10 \ - target=../../../../../usr/share/lib/terminfo/c/cops -hardlink path=usr/share/lib/terminfo/c/cops10 \ - target=../../../../../usr/share/lib/terminfo/c/cops -hardlink path=usr/share/lib/terminfo/c/cs10 \ - target=../../../../../usr/share/lib/terminfo/c/colorscan -hardlink path=usr/share/lib/terminfo/d/d200 \ - target=../../../../../usr/share/lib/terminfo/d/d100 -hardlink path=usr/share/lib/terminfo/d/d80 \ - target=../../../../../usr/share/lib/terminfo/a/ampex -hardlink path=usr/share/lib/terminfo/d/datagraphix \ - target=../../../../../usr/share/lib/terminfo/d/d132 -hardlink path=usr/share/lib/terminfo/d/datamedia2500 \ - target=../../../../../usr/share/lib/terminfo/2/2500 -hardlink path=usr/share/lib/terminfo/d/dataspeed40 \ - target=../../../../../usr/share/lib/terminfo/4/40 -hardlink path=usr/share/lib/terminfo/d/delta \ - target=../../../../../usr/share/lib/terminfo/d/dd5000 -hardlink path=usr/share/lib/terminfo/d/dg6053 \ - target=../../../../../usr/share/lib/terminfo/d/dg -hardlink path=usr/share/lib/terminfo/d/diablo \ - target=../../../../../usr/share/lib/terminfo/1/1620 -hardlink path=usr/share/lib/terminfo/d/diablo-m8 \ - target=../../../../../usr/share/lib/terminfo/1/1620-m8 -hardlink path=usr/share/lib/terminfo/d/dialogue \ - target=../../../../../usr/share/lib/terminfo/a/ampex -hardlink path=usr/share/lib/terminfo/d/dialogue80 \ - target=../../../../../usr/share/lib/terminfo/a/ampex -hardlink path=usr/share/lib/terminfo/d/digilog \ - target=../../../../../usr/share/lib/terminfo/3/333 -hardlink path=usr/share/lib/terminfo/d/direct \ - target=../../../../../usr/share/lib/terminfo/d/d800 -hardlink path=usr/share/lib/terminfo/d/direct800 \ - target=../../../../../usr/share/lib/terminfo/d/d800 -hardlink path=usr/share/lib/terminfo/d/dm1520 \ - target=../../../../../usr/share/lib/terminfo/1/1520 -hardlink path=usr/share/lib/terminfo/d/dm1521 \ - target=../../../../../usr/share/lib/terminfo/1/1520 -hardlink path=usr/share/lib/terminfo/d/dm2500 \ - target=../../../../../usr/share/lib/terminfo/2/2500 -hardlink path=usr/share/lib/terminfo/d/dm3045 \ - target=../../../../../usr/share/lib/terminfo/3/3045 -hardlink path=usr/share/lib/terminfo/d/dmd \ - target=../../../../../usr/share/lib/terminfo/5/5620 -hardlink path=usr/share/lib/terminfo/d/dmd-24 \ - target=../../../../../usr/share/lib/terminfo/5/5620-24 -hardlink path=usr/share/lib/terminfo/d/dmd-34 \ - target=../../../../../usr/share/lib/terminfo/5/5620-34 -hardlink path=usr/share/lib/terminfo/d/dmdt80 \ - target=../../../../../usr/share/lib/terminfo/d/dm80 -hardlink path=usr/share/lib/terminfo/d/dmdt80-w \ - target=../../../../../usr/share/lib/terminfo/d/dm80-w -hardlink path=usr/share/lib/terminfo/d/dp3 \ - target=../../../../../usr/share/lib/terminfo/d/datapoint -hardlink path=usr/share/lib/terminfo/d/dp3360 \ - target=../../../../../usr/share/lib/terminfo/d/datapoint -hardlink path=usr/share/lib/terminfo/d/ds40 \ - target=../../../../../usr/share/lib/terminfo/4/40 -hardlink path=usr/share/lib/terminfo/d/ds40-2 \ - target=../../../../../usr/share/lib/terminfo/4/40 -hardlink path=usr/share/lib/terminfo/d/dt80 \ - target=../../../../../usr/share/lib/terminfo/d/dm80 -hardlink path=usr/share/lib/terminfo/d/dt80-w \ - target=../../../../../usr/share/lib/terminfo/d/dm80-w -hardlink path=usr/share/lib/terminfo/d/dtc \ - target=../../../../../usr/share/lib/terminfo/3/300 -hardlink path=usr/share/lib/terminfo/d/dtc300s \ - target=../../../../../usr/share/lib/terminfo/3/300 -hardlink path=usr/share/lib/terminfo/d/dtc382 \ - target=../../../../../usr/share/lib/terminfo/3/382 -hardlink path=usr/share/lib/terminfo/d/dw \ - target=../../../../../usr/share/lib/terminfo/d/decwriter -hardlink path=usr/share/lib/terminfo/d/dw2 \ - target=../../../../../usr/share/lib/terminfo/d/decwriter -hardlink path=usr/share/lib/terminfo/e/envision230 \ - target=../../../../../usr/share/lib/terminfo/e/env230 -hardlink path=usr/share/lib/terminfo/e/ep4000 \ - target=../../../../../usr/share/lib/terminfo/e/ep40 -hardlink path=usr/share/lib/terminfo/e/ep48 \ - target=../../../../../usr/share/lib/terminfo/e/ep4080 -hardlink path=usr/share/lib/terminfo/e/exidy2500 \ - target=../../../../../usr/share/lib/terminfo/e/exidy -hardlink path=usr/share/lib/terminfo/f/f1720a \ - target=../../../../../usr/share/lib/terminfo/f/f1720 -hardlink path=usr/share/lib/terminfo/f/falco-tsl-1sp \ - target=../../../../../usr/share/lib/terminfo/f/falco-p -hardlink path=usr/share/lib/terminfo/f/fixterm \ - target=../../../../../usr/share/lib/terminfo/c/cbblit -hardlink path=usr/share/lib/terminfo/f/freedom \ - target=../../../../../usr/share/lib/terminfo/f/f100 -hardlink path=usr/share/lib/terminfo/f/freedom-rv \ - target=../../../../../usr/share/lib/terminfo/f/f100-rv -hardlink path=usr/share/lib/terminfo/f/freedom100 \ - target=../../../../../usr/share/lib/terminfo/f/f100 -hardlink path=usr/share/lib/terminfo/f/freedom110 \ - target=../../../../../usr/share/lib/terminfo/f/f110 -hardlink path=usr/share/lib/terminfo/f/freedom200 \ - target=../../../../../usr/share/lib/terminfo/f/f200 -hardlink path=usr/share/lib/terminfo/g/gs5430 \ - target=../../../../../usr/share/lib/terminfo/5/505 -hardlink path=usr/share/lib/terminfo/g/gs5430-22 \ - target=../../../../../usr/share/lib/terminfo/5/505-22 -hardlink path=usr/share/lib/terminfo/g/gs5430-24 \ - target=../../../../../usr/share/lib/terminfo/5/505-24 -hardlink path=usr/share/lib/terminfo/g/gs6300 \ - target=../../../../../usr/share/lib/terminfo/e/emots -hardlink path=usr/share/lib/terminfo/g/gt100a \ - target=../../../../../usr/share/lib/terminfo/g/gt100 -hardlink path=usr/share/lib/terminfo/g/guru+unk \ - target=../../../../../usr/share/lib/terminfo/g/guru -hardlink path=usr/share/lib/terminfo/g/guru-33 \ - target=../../../../../usr/share/lib/terminfo/g/guru -hardlink path=usr/share/lib/terminfo/g/guru-lp \ - target=../../../../../usr/share/lib/terminfo/g/guru-76-lp -hardlink path=usr/share/lib/terminfo/g/guru-rv \ - target=../../../../../usr/share/lib/terminfo/g/guru-33-rv -hardlink path=usr/share/lib/terminfo/g/guru-s \ - target=../../../../../usr/share/lib/terminfo/g/guru-33-s -hardlink path=usr/share/lib/terminfo/h/h19-b \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/h/h19a \ - target=../../../../../usr/share/lib/terminfo/h/h19A -hardlink path=usr/share/lib/terminfo/h/heath \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/h/heath-19 \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/h/heath-ansi \ - target=../../../../../usr/share/lib/terminfo/h/h19-a -hardlink path=usr/share/lib/terminfo/h/heathkit \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/h/heathkit-a \ - target=../../../../../usr/share/lib/terminfo/h/h19-a -hardlink path=usr/share/lib/terminfo/h/hewlettpackard \ - target=../../../../../usr/share/lib/terminfo/h/hewlett-packar -hardlink path=usr/share/lib/terminfo/h/hp \ - target=../../../../../usr/share/lib/terminfo/h/hewlett-packar -hardlink path=usr/share/lib/terminfo/h/hp2382a \ - target=../../../../../usr/share/lib/terminfo/h/hp2382 -hardlink path=usr/share/lib/terminfo/h/hp2397 \ - target=../../../../../usr/share/lib/terminfo/2/2397 -hardlink path=usr/share/lib/terminfo/h/hp2397a \ - target=../../../../../usr/share/lib/terminfo/2/2397 -hardlink path=usr/share/lib/terminfo/h/hp2621 \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/h/hp2621-48 \ - target=../../../../../usr/share/lib/terminfo/2/2621-48 -hardlink path=usr/share/lib/terminfo/h/hp2621-a \ - target=../../../../../usr/share/lib/terminfo/2/2621-a -hardlink path=usr/share/lib/terminfo/h/hp2621-ba \ - target=../../../../../usr/share/lib/terminfo/2/2621-ba -hardlink path=usr/share/lib/terminfo/h/hp2621-fl \ - target=../../../../../usr/share/lib/terminfo/2/2621-fl -hardlink path=usr/share/lib/terminfo/h/hp2621-k45 \ - target=../../../../../usr/share/lib/terminfo/2/2621k45 -hardlink path=usr/share/lib/terminfo/h/hp2621-nl \ - target=../../../../../usr/share/lib/terminfo/2/2621-nl -hardlink path=usr/share/lib/terminfo/h/hp2621-nt \ - target=../../../../../usr/share/lib/terminfo/2/2621-nt -hardlink path=usr/share/lib/terminfo/h/hp2621-wl \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/h/hp2621A \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/h/hp2621a \ - target=../../../../../usr/share/lib/terminfo/2/2621 -hardlink path=usr/share/lib/terminfo/h/hp2621a-a \ - target=../../../../../usr/share/lib/terminfo/2/2621-a -hardlink path=usr/share/lib/terminfo/h/hp2621b \ - target=../../../../../usr/share/lib/terminfo/2/2621b -hardlink path=usr/share/lib/terminfo/h/hp2621b-kx \ - target=../../../../../usr/share/lib/terminfo/2/2621b-kx -hardlink path=usr/share/lib/terminfo/h/hp2621b-kx-p \ - target=../../../../../usr/share/lib/terminfo/2/2621b-kx-p -hardlink path=usr/share/lib/terminfo/h/hp2621b-p \ - target=../../../../../usr/share/lib/terminfo/2/2621b-p -hardlink path=usr/share/lib/terminfo/h/hp2621k45 \ - target=../../../../../usr/share/lib/terminfo/2/2621k45 -hardlink path=usr/share/lib/terminfo/h/hp2621nl \ - target=../../../../../usr/share/lib/terminfo/2/2621nl -hardlink path=usr/share/lib/terminfo/h/hp2621nt \ - target=../../../../../usr/share/lib/terminfo/2/2621nt -hardlink path=usr/share/lib/terminfo/h/hp2621p \ - target=../../../../../usr/share/lib/terminfo/2/2621P -hardlink path=usr/share/lib/terminfo/h/hp2621p-a \ - target=../../../../../usr/share/lib/terminfo/2/2621p-a -hardlink path=usr/share/lib/terminfo/h/hp2621wl \ - target=../../../../../usr/share/lib/terminfo/2/2621wl -hardlink path=usr/share/lib/terminfo/h/hp2622 \ - target=../../../../../usr/share/lib/terminfo/2/2622 -hardlink path=usr/share/lib/terminfo/h/hp2622a \ - target=../../../../../usr/share/lib/terminfo/2/2622 -hardlink path=usr/share/lib/terminfo/h/hp2623 \ - target=../../../../../usr/share/lib/terminfo/2/2623 -hardlink path=usr/share/lib/terminfo/h/hp2623a \ - target=../../../../../usr/share/lib/terminfo/2/2623 -hardlink path=usr/share/lib/terminfo/h/hp2624 \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/h/hp2624-10p \ - target=../../../../../usr/share/lib/terminfo/2/2624-10p -hardlink path=usr/share/lib/terminfo/h/hp2624a \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/h/hp2624a-10p \ - target=../../../../../usr/share/lib/terminfo/2/2624-10p -hardlink path=usr/share/lib/terminfo/h/hp2624b \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/h/hp2624b-10p \ - target=../../../../../usr/share/lib/terminfo/2/2624-10p -hardlink path=usr/share/lib/terminfo/h/hp2624b-4p \ - target=../../../../../usr/share/lib/terminfo/2/2624 -hardlink path=usr/share/lib/terminfo/h/hp2624b-p \ - target=../../../../../usr/share/lib/terminfo/h/hp2624b-4p-p -hardlink path=usr/share/lib/terminfo/h/hp2626 \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/h/hp2626-12 \ - target=../../../../../usr/share/lib/terminfo/2/2626-12 -hardlink path=usr/share/lib/terminfo/h/hp2626-12-s \ - target=../../../../../usr/share/lib/terminfo/2/2626-12-s -hardlink path=usr/share/lib/terminfo/h/hp2626-12x40 \ - target=../../../../../usr/share/lib/terminfo/2/2626-12x40 -hardlink path=usr/share/lib/terminfo/h/hp2626-ns \ - target=../../../../../usr/share/lib/terminfo/2/2626-ns -hardlink path=usr/share/lib/terminfo/h/hp2626-s \ - target=../../../../../usr/share/lib/terminfo/2/2626-s -hardlink path=usr/share/lib/terminfo/h/hp2626-x40 \ - target=../../../../../usr/share/lib/terminfo/2/2626-x40 -hardlink path=usr/share/lib/terminfo/h/hp2626a \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/h/hp2626p \ - target=../../../../../usr/share/lib/terminfo/2/2626 -hardlink path=usr/share/lib/terminfo/h/hp2640a \ - target=../../../../../usr/share/lib/terminfo/2/2640 -hardlink path=usr/share/lib/terminfo/h/hp2640b \ - target=../../../../../usr/share/lib/terminfo/2/2640b -hardlink path=usr/share/lib/terminfo/h/hp2644a \ - target=../../../../../usr/share/lib/terminfo/2/2640b -hardlink path=usr/share/lib/terminfo/h/hp2645 \ - target=../../../../../usr/share/lib/terminfo/2/2645 -hardlink path=usr/share/lib/terminfo/h/hp2648 \ - target=../../../../../usr/share/lib/terminfo/2/2648 -hardlink path=usr/share/lib/terminfo/h/hp2648a \ - target=../../../../../usr/share/lib/terminfo/2/2648 -hardlink path=usr/share/lib/terminfo/h/hp45 \ - target=../../../../../usr/share/lib/terminfo/2/2645 -hardlink path=usr/share/lib/terminfo/h/hp7550 \ - target=../../../../../usr/share/lib/terminfo/7/7550 -hardlink path=usr/share/lib/terminfo/h/hplaserjet \ - target=../../../../../usr/share/lib/terminfo/h/hplaser -hardlink path=usr/share/lib/terminfo/i/i100 \ - target=../../../../../usr/share/lib/terminfo/g/gt100 -hardlink path=usr/share/lib/terminfo/i/i3101 \ - target=../../../../../usr/share/lib/terminfo/3/3101 -hardlink path=usr/share/lib/terminfo/i/i400 \ - target=../../../../../usr/share/lib/terminfo/4/400 -hardlink path=usr/share/lib/terminfo/i/ibm \ - target=../../../../../usr/share/lib/terminfo/3/3101 -hardlink path=usr/share/lib/terminfo/i/ibm-pc \ - target=../../../../../usr/share/lib/terminfo/5/5051 -hardlink path=usr/share/lib/terminfo/i/ibm3101 \ - target=../../../../../usr/share/lib/terminfo/3/3101 -hardlink path=usr/share/lib/terminfo/i/ibm5051 \ - target=../../../../../usr/share/lib/terminfo/5/5051 -hardlink path=usr/share/lib/terminfo/i/ibmpc \ - target=../../../../../usr/share/lib/terminfo/5/5051 -hardlink path=usr/share/lib/terminfo/i/ibmproprinter \ - target=../../../../../usr/share/lib/terminfo/i/ibmgraphics -hardlink path=usr/share/lib/terminfo/i/intertube \ - target=../../../../../usr/share/lib/terminfo/i/intertec -hardlink path=usr/share/lib/terminfo/i/intextii \ - target=../../../../../usr/share/lib/terminfo/i/intext2 -hardlink path=usr/share/lib/terminfo/i/isc \ - target=../../../../../usr/share/lib/terminfo/8/8001 -hardlink path=usr/share/lib/terminfo/i/isc8001 \ - target=../../../../../usr/share/lib/terminfo/8/8001 -hardlink path=usr/share/lib/terminfo/i/it \ - target=../../../../../usr/share/lib/terminfo/i/intertec -hardlink path=usr/share/lib/terminfo/i/it2 \ - target=../../../../../usr/share/lib/terminfo/i/intertube2 -hardlink path=usr/share/lib/terminfo/j/jerq \ - target=../../../../../usr/share/lib/terminfo/b/blit -hardlink path=usr/share/lib/terminfo/k/k45 \ - target=../../../../../usr/share/lib/terminfo/2/2621k45 -hardlink path=usr/share/lib/terminfo/k/klc \ - target=../../../../../usr/share/lib/terminfo/c/carlock -hardlink path=usr/share/lib/terminfo/k/ktm \ - target=../../../../../usr/share/lib/terminfo/3/380 -hardlink path=usr/share/lib/terminfo/l/la120 \ - target=../../../../../usr/share/lib/terminfo/d/dw3 -hardlink path=usr/share/lib/terminfo/m/m-100 \ - target=../../../../../usr/share/lib/terminfo/M/MZ -hardlink path=usr/share/lib/terminfo/m/m100 \ - target=../../../../../usr/share/lib/terminfo/M/MZ -hardlink path=usr/share/lib/terminfo/m/m8 \ - target=../../../../../usr/share/lib/terminfo/e/ergo4000 -hardlink path=usr/share/lib/terminfo/m/microbee \ - target=../../../../../usr/share/lib/terminfo/m/microb -hardlink path=usr/share/lib/terminfo/m/microterm \ - target=../../../../../usr/share/lib/terminfo/a/act4 -hardlink path=usr/share/lib/terminfo/m/microterm5 \ - target=../../../../../usr/share/lib/terminfo/a/act5 -hardlink path=usr/share/lib/terminfo/m/mime-adm3a \ - target=../../../../../usr/share/lib/terminfo/m/mime-3a -hardlink path=usr/share/lib/terminfo/m/mime-adm3ax \ - target=../../../../../usr/share/lib/terminfo/m/mime-3ax -hardlink path=usr/share/lib/terminfo/m/mime1 \ - target=../../../../../usr/share/lib/terminfo/m/mime -hardlink path=usr/share/lib/terminfo/m/mime2 \ - target=../../../../../usr/share/lib/terminfo/m/mime -hardlink path=usr/share/lib/terminfo/m/mime2a-v \ - target=../../../../../usr/share/lib/terminfo/m/mime2a -hardlink path=usr/share/lib/terminfo/m/mimei \ - target=../../../../../usr/share/lib/terminfo/m/mime -hardlink path=usr/share/lib/terminfo/m/mimeii \ - target=../../../../../usr/share/lib/terminfo/m/mime -hardlink path=usr/share/lib/terminfo/m/mkt \ - target=../../../../../usr/share/lib/terminfo/m/microkit -hardlink path=usr/share/lib/terminfo/m/mm3 \ - target=../../../../../usr/share/lib/terminfo/m/mime314 -hardlink path=usr/share/lib/terminfo/m/mm314 \ - target=../../../../../usr/share/lib/terminfo/m/mime314 -hardlink path=usr/share/lib/terminfo/n/ncr7900 \ - target=../../../../../usr/share/lib/terminfo/7/7900 -hardlink path=usr/share/lib/terminfo/n/ncr7900-na \ - target=../../../../../usr/share/lib/terminfo/7/7900-na -hardlink path=usr/share/lib/terminfo/n/ncr7900i \ - target=../../../../../usr/share/lib/terminfo/7/7900 -hardlink path=usr/share/lib/terminfo/n/ncr7900i-na \ - target=../../../../../usr/share/lib/terminfo/7/7900-na -hardlink path=usr/share/lib/terminfo/n/ncr7900iv \ - target=../../../../../usr/share/lib/terminfo/7/7900iv -hardlink path=usr/share/lib/terminfo/n/ncr7901 \ - target=../../../../../usr/share/lib/terminfo/7/7901 -hardlink path=usr/share/lib/terminfo/n/nec \ - target=../../../../../usr/share/lib/terminfo/5/5520 -hardlink path=usr/share/lib/terminfo/n/net \ - target=../../../../../usr/share/lib/terminfo/a/arpanet -hardlink path=usr/share/lib/terminfo/n/network \ - target=../../../../../usr/share/lib/terminfo/a/arpanet -hardlink path=usr/share/lib/terminfo/n/netx \ - target=../../../../../usr/share/lib/terminfo/n/netronics -hardlink path=usr/share/lib/terminfo/n/nucterm \ - target=../../../../../usr/share/lib/terminfo/n/nuc -hardlink path=usr/share/lib/terminfo/o/oadm31 \ - target=../../../../../usr/share/lib/terminfo/o/o31 -hardlink path=usr/share/lib/terminfo/o/oc100 \ - target=../../../../../usr/share/lib/terminfo/c/c100-1p -hardlink path=usr/share/lib/terminfo/o/oconcept \ - target=../../../../../usr/share/lib/terminfo/c/c100-1p -hardlink path=usr/share/lib/terminfo/o/ofos \ - target=../../../../../usr/share/lib/terminfo/o/ofortune -hardlink path=usr/share/lib/terminfo/o/ojerq \ - target=../../../../../usr/share/lib/terminfo/o/oblit -hardlink path=usr/share/lib/terminfo/o/one_line \ - target=../../../../../usr/share/lib/terminfo/1/1line -hardlink path=usr/share/lib/terminfo/o/one_linepty \ - target=../../../../../usr/share/lib/terminfo/1/1linepty -hardlink path=usr/share/lib/terminfo/o/osborne1 \ - target=../../../../../usr/share/lib/terminfo/o/osborne -hardlink path=usr/share/lib/terminfo/o/ozzie \ - target=../../../../../usr/share/lib/terminfo/o/osborne -hardlink path=usr/share/lib/terminfo/p/patchboard \ - target=../../../../../usr/share/lib/terminfo/p/patch -hardlink path=usr/share/lib/terminfo/p/pc-coherent \ - target=../../../../../usr/share/lib/terminfo/c/coherent -hardlink path=usr/share/lib/terminfo/p/pc6300plus \ - target=../../../../../usr/share/lib/terminfo/6/6300+ -hardlink path=usr/share/lib/terminfo/p/pc7300 \ - target=../../../../../usr/share/lib/terminfo/7/7300 -hardlink path=usr/share/lib/terminfo/p/pcz19 \ - target=../../../../../usr/share/lib/terminfo/c/coherent -hardlink path=usr/share/lib/terminfo/p/pe1100 \ - target=../../../../../usr/share/lib/terminfo/f/fox -hardlink path=usr/share/lib/terminfo/p/pe1200 \ - target=../../../../../usr/share/lib/terminfo/o/owl -hardlink path=usr/share/lib/terminfo/p/pe550 \ - target=../../../../../usr/share/lib/terminfo/b/bantam -hardlink path=usr/share/lib/terminfo/p/pe6100 \ - target=../../../../../usr/share/lib/terminfo/b/bantam -hardlink path=usr/share/lib/terminfo/p/pe6300 \ - target=../../../../../usr/share/lib/terminfo/p/pe1251 -hardlink path=usr/share/lib/terminfo/p/pe6312 \ - target=../../../../../usr/share/lib/terminfo/p/pe1251 -hardlink path=usr/share/lib/terminfo/p/plugboard \ - target=../../../../../usr/share/lib/terminfo/p/patch -hardlink path=usr/share/lib/terminfo/p/proprinter \ - target=../../../../../usr/share/lib/terminfo/i/ibmgraphics -hardlink path=usr/share/lib/terminfo/p/ps \ - target=../../../../../usr/share/lib/terminfo/3/382 -hardlink path=usr/share/lib/terminfo/p/pt505 \ - target=../../../../../usr/share/lib/terminfo/5/505 -hardlink path=usr/share/lib/terminfo/p/pt505-22 \ - target=../../../../../usr/share/lib/terminfo/5/505-22 -hardlink path=usr/share/lib/terminfo/p/pt505-24 \ - target=../../../../../usr/share/lib/terminfo/5/505-24 -hardlink path=usr/share/lib/terminfo/r/rayterm \ - target=../../../../../usr/share/lib/terminfo/n/nuc -hardlink path=usr/share/lib/terminfo/r/reach \ - target=../../../../../usr/share/lib/terminfo/h/h89 -hardlink path=usr/share/lib/terminfo/r/regent40-s \ - target=../../../../../usr/share/lib/terminfo/r/regent40+ -hardlink path=usr/share/lib/terminfo/r/regent60 \ - target=../../../../../usr/share/lib/terminfo/r/regent200 -hardlink path=usr/share/lib/terminfo/s/sb1 \ - target=../../../../../usr/share/lib/terminfo/s/sb -hardlink path=usr/share/lib/terminfo/s/sb3 \ - target=../../../../../usr/share/lib/terminfo/s/sb2 -hardlink path=usr/share/lib/terminfo/s/sbg \ - target=../../../../../usr/share/lib/terminfo/s/sb -hardlink path=usr/share/lib/terminfo/s/sc415 \ - target=../../../../../usr/share/lib/terminfo/s/sc410 -hardlink path=usr/share/lib/terminfo/s/scanset \ - target=../../../../../usr/share/lib/terminfo/s/sc410 -hardlink path=usr/share/lib/terminfo/s/smarterm-s \ - target=../../../../../usr/share/lib/terminfo/s/smarterm -hardlink path=usr/share/lib/terminfo/s/sol1 \ - target=../../../../../usr/share/lib/terminfo/s/sol -hardlink path=usr/share/lib/terminfo/s/soroc \ - target=../../../../../usr/share/lib/terminfo/i/iq120 -hardlink path=usr/share/lib/terminfo/s/spinwriter \ - target=../../../../../usr/share/lib/terminfo/5/5520 -hardlink path=usr/share/lib/terminfo/s/sprint11 \ - target=../../../../../usr/share/lib/terminfo/q/qume -hardlink path=usr/share/lib/terminfo/s/superbee \ - target=../../../../../usr/share/lib/terminfo/s/sbi -hardlink path=usr/share/lib/terminfo/s/sv40 \ - target=../../../../../usr/share/lib/terminfo/2/2300-x40 -hardlink path=usr/share/lib/terminfo/s/sv80 \ - target=../../../../../usr/share/lib/terminfo/2/2300 -hardlink path=usr/share/lib/terminfo/s/swtp \ - target=../../../../../usr/share/lib/terminfo/c/ct82 -hardlink path=usr/share/lib/terminfo/s/synertek \ - target=../../../../../usr/share/lib/terminfo/3/380 -hardlink path=usr/share/lib/terminfo/s/sys75 \ - target=../../../../../usr/share/lib/terminfo/S/SYS75 -hardlink path=usr/share/lib/terminfo/s/sys75-103k \ - target=../../../../../usr/share/lib/terminfo/S/SYS75-103k -hardlink path=usr/share/lib/terminfo/s/sys75-103k-w \ - target=../../../../../usr/share/lib/terminfo/S/SYS75-103k-w -hardlink path=usr/share/lib/terminfo/s/sys75-w \ - target=../../../../../usr/share/lib/terminfo/S/SYS75-w -hardlink path=usr/share/lib/terminfo/s/system1 \ - target=../../../../../usr/share/lib/terminfo/i/ibm-system1 -hardlink path=usr/share/lib/terminfo/t/t1061 \ - target=../../../../../usr/share/lib/terminfo/t/t10 -hardlink path=usr/share/lib/terminfo/t/tab132 \ - target=../../../../../usr/share/lib/terminfo/t/tab -hardlink path=usr/share/lib/terminfo/t/tek \ - target=../../../../../usr/share/lib/terminfo/4/4012 -hardlink path=usr/share/lib/terminfo/t/tek4012 \ - target=../../../../../usr/share/lib/terminfo/4/4012 -hardlink path=usr/share/lib/terminfo/t/tek4013 \ - target=../../../../../usr/share/lib/terminfo/4/4013 -hardlink path=usr/share/lib/terminfo/t/tek4014 \ - target=../../../../../usr/share/lib/terminfo/4/4014 -hardlink path=usr/share/lib/terminfo/t/tek4014-sm \ - target=../../../../../usr/share/lib/terminfo/4/4014-sm -hardlink path=usr/share/lib/terminfo/t/tek4015 \ - target=../../../../../usr/share/lib/terminfo/4/4015 -hardlink path=usr/share/lib/terminfo/t/tek4015-sm \ - target=../../../../../usr/share/lib/terminfo/4/4015-sm -hardlink path=usr/share/lib/terminfo/t/tek4023 \ - target=../../../../../usr/share/lib/terminfo/4/4023 -hardlink path=usr/share/lib/terminfo/t/tek4024 \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/t/tek4025 \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/t/tek4025-17 \ - target=../../../../../usr/share/lib/terminfo/4/4025-17 -hardlink path=usr/share/lib/terminfo/t/tek4025-17-ws \ - target=../../../../../usr/share/lib/terminfo/4/4025-17-ws -hardlink path=usr/share/lib/terminfo/t/tek4025-ex \ - target=../../../../../usr/share/lib/terminfo/4/4025-ex -hardlink path=usr/share/lib/terminfo/t/tek4027 \ - target=../../../../../usr/share/lib/terminfo/4/4024 -hardlink path=usr/share/lib/terminfo/t/tek4105 \ - target=../../../../../usr/share/lib/terminfo/4/4105 -hardlink path=usr/share/lib/terminfo/t/tek4105-30 \ - target=../../../../../usr/share/lib/terminfo/4/4105-30 -hardlink path=usr/share/lib/terminfo/t/tek4107 \ - target=../../../../../usr/share/lib/terminfo/4/4107 -hardlink path=usr/share/lib/terminfo/t/tek4109 \ - target=../../../../../usr/share/lib/terminfo/4/4107 -hardlink path=usr/share/lib/terminfo/t/tek4112 \ - target=../../../../../usr/share/lib/terminfo/4/4112 -hardlink path=usr/share/lib/terminfo/t/tek4112-5 \ - target=../../../../../usr/share/lib/terminfo/4/4112-5 -hardlink path=usr/share/lib/terminfo/t/tek4112-d \ - target=../../../../../usr/share/lib/terminfo/4/4112-d -hardlink path=usr/share/lib/terminfo/t/tek4115 \ - target=../../../../../usr/share/lib/terminfo/4/4115 -hardlink path=usr/share/lib/terminfo/t/tek4205 \ - target=../../../../../usr/share/lib/terminfo/4/4205 -hardlink path=usr/share/lib/terminfo/t/teleray \ - target=../../../../../usr/share/lib/terminfo/t/t10 -hardlink path=usr/share/lib/terminfo/t/teleray3700 \ - target=../../../../../usr/share/lib/terminfo/t/t3700 -hardlink path=usr/share/lib/terminfo/t/televideo950 \ - target=../../../../../usr/share/lib/terminfo/9/950 -hardlink path=usr/share/lib/terminfo/t/terminet1200 \ - target=../../../../../usr/share/lib/terminfo/t/terminet -hardlink path=usr/share/lib/terminfo/t/terminet300 \ - target=../../../../../usr/share/lib/terminfo/t/terminet -hardlink path=usr/share/lib/terminfo/t/tex \ - target=../../../../../usr/share/lib/terminfo/4/4023 -hardlink path=usr/share/lib/terminfo/t/ti \ - target=../../../../../usr/share/lib/terminfo/7/743 -hardlink path=usr/share/lib/terminfo/t/ti700 \ - target=../../../../../usr/share/lib/terminfo/7/735 -hardlink path=usr/share/lib/terminfo/t/ti733 \ - target=../../../../../usr/share/lib/terminfo/7/735 -hardlink path=usr/share/lib/terminfo/t/ti735 \ - target=../../../../../usr/share/lib/terminfo/7/735 -hardlink path=usr/share/lib/terminfo/t/ti745 \ - target=../../../../../usr/share/lib/terminfo/7/743 -hardlink path=usr/share/lib/terminfo/t/tn1200 \ - target=../../../../../usr/share/lib/terminfo/t/terminet -hardlink path=usr/share/lib/terminfo/t/tn300 \ - target=../../../../../usr/share/lib/terminfo/t/terminet -hardlink path=usr/share/lib/terminfo/t/trs-100 \ - target=../../../../../usr/share/lib/terminfo/M/MZ -hardlink path=usr/share/lib/terminfo/t/trs100 \ - target=../../../../../usr/share/lib/terminfo/M/MZ -hardlink path=usr/share/lib/terminfo/t/trs80 \ - target=../../../../../usr/share/lib/terminfo/t/trs-80 -hardlink path=usr/share/lib/terminfo/t/trs80-1 \ - target=../../../../../usr/share/lib/terminfo/t/trs-80 -hardlink path=usr/share/lib/terminfo/t/trs80-100 \ - target=../../../../../usr/share/lib/terminfo/M/MZ -hardlink path=usr/share/lib/terminfo/t/trs80-16 \ - target=../../../../../usr/share/lib/terminfo/t/trs16 -hardlink path=usr/share/lib/terminfo/t/trs80II \ - target=../../../../../usr/share/lib/terminfo/t/trs2 -hardlink path=usr/share/lib/terminfo/t/trsII \ - target=../../../../../usr/share/lib/terminfo/t/trs2 -hardlink path=usr/share/lib/terminfo/t/ts-1 \ - target=../../../../../usr/share/lib/terminfo/f/falco -hardlink path=usr/share/lib/terminfo/t/ts1 \ - target=../../../../../usr/share/lib/terminfo/f/falco -hardlink path=usr/share/lib/terminfo/t/ts100-sp \ - target=../../../../../usr/share/lib/terminfo/t/ts100 -hardlink path=usr/share/lib/terminfo/t/tty \ - target=../../../../../usr/share/lib/terminfo/3/33 -hardlink path=usr/share/lib/terminfo/t/tty33 \ - target=../../../../../usr/share/lib/terminfo/3/33 -hardlink path=usr/share/lib/terminfo/t/tty35 \ - target=../../../../../usr/share/lib/terminfo/3/35 -hardlink path=usr/share/lib/terminfo/t/tty37 \ - target=../../../../../usr/share/lib/terminfo/3/37 -hardlink path=usr/share/lib/terminfo/t/tty40 \ - target=../../../../../usr/share/lib/terminfo/4/40 -hardlink path=usr/share/lib/terminfo/t/tty43 \ - target=../../../../../usr/share/lib/terminfo/4/43 -hardlink path=usr/share/lib/terminfo/t/tty4420 \ - target=../../../../../usr/share/lib/terminfo/4/4420 -hardlink path=usr/share/lib/terminfo/t/tty4424 \ - target=../../../../../usr/share/lib/terminfo/4/4424 -hardlink path=usr/share/lib/terminfo/t/tty4424-1 \ - target=../../../../../usr/share/lib/terminfo/4/4424-1 -hardlink path=usr/share/lib/terminfo/t/tty4426 \ - target=../../../../../usr/share/lib/terminfo/4/4426 -hardlink path=usr/share/lib/terminfo/t/tty5410 \ - target=../../../../../usr/share/lib/terminfo/4/4410 -hardlink path=usr/share/lib/terminfo/t/tty5410-nfk \ - target=../../../../../usr/share/lib/terminfo/4/4410-nfk -hardlink path=usr/share/lib/terminfo/t/tty5410-nsl \ - target=../../../../../usr/share/lib/terminfo/4/4410-nsl -hardlink path=usr/share/lib/terminfo/t/tty5410-w \ - target=../../../../../usr/share/lib/terminfo/4/4410-w -hardlink path=usr/share/lib/terminfo/t/tty5410v1 \ - target=../../../../../usr/share/lib/terminfo/4/4410v1 -hardlink path=usr/share/lib/terminfo/t/tty5410v1-w \ - target=../../../../../usr/share/lib/terminfo/4/4410v1-w -hardlink path=usr/share/lib/terminfo/t/tty5420 \ - target=../../../../../usr/share/lib/terminfo/4/4415 -hardlink path=usr/share/lib/terminfo/t/tty5420+nl \ - target=../../../../../usr/share/lib/terminfo/4/4415+nl -hardlink path=usr/share/lib/terminfo/t/tty5420-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-nl -hardlink path=usr/share/lib/terminfo/t/tty5420-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv -hardlink path=usr/share/lib/terminfo/t/tty5420-rv-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-rv-nl -hardlink path=usr/share/lib/terminfo/t/tty5420-w \ - target=../../../../../usr/share/lib/terminfo/4/4415-w -hardlink path=usr/share/lib/terminfo/t/tty5420-w-nl \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-nl -hardlink path=usr/share/lib/terminfo/t/tty5420-w-rv \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv + target=../a/att4415-w-rv-n +hardlink path=usr/share/lib/terminfo/a/att5430 target=../a/att505 +hardlink path=usr/share/lib/terminfo/a/avatar1 target=../a/avatar +hardlink path=usr/share/lib/terminfo/a/avt-rv-s target=../a/avt-rv +hardlink path=usr/share/lib/terminfo/a/avt-s target=../a/avt +hardlink path=usr/share/lib/terminfo/a/avt-w-rv-s target=../a/avt-w-rv +hardlink path=usr/share/lib/terminfo/a/avt-w-s target=../a/avt-w +hardlink path=usr/share/lib/terminfo/b/b-128 target=../c/commodore +hardlink path=usr/share/lib/terminfo/b/basic4 target=../m/mai +hardlink path=usr/share/lib/terminfo/b/bct510a target=../a/att510a +hardlink path=usr/share/lib/terminfo/b/bct510d target=../a/att510d +hardlink path=usr/share/lib/terminfo/b/bee target=../b/beehive +hardlink path=usr/share/lib/terminfo/b/beehiveIIIm target=../b/beehive3 +hardlink path=usr/share/lib/terminfo/b/bg2.0nv target=../b/bitgraph +hardlink path=usr/share/lib/terminfo/b/bg3.10 target=../b/bg2.0 +hardlink path=usr/share/lib/terminfo/b/bg3.10nv target=../b/bitgraph +hardlink path=usr/share/lib/terminfo/b/bg3.10rv target=../b/bg2.0rv +hardlink path=usr/share/lib/terminfo/b/bh3m target=../b/beehive3 +hardlink path=usr/share/lib/terminfo/b/bh4 target=../b/beehive4 +hardlink path=usr/share/lib/terminfo/b/bsdos-pc-mono target=../b/bsdos-pc-m +hardlink path=usr/share/lib/terminfo/c/c100-1p target=../o/oc100 +hardlink path=usr/share/lib/terminfo/c/c100-4p target=../c/c100 +hardlink path=usr/share/lib/terminfo/c/c100-rv-4p target=../c/c100-rv +hardlink path=usr/share/lib/terminfo/c/c104 target=../c/c100 +hardlink path=usr/share/lib/terminfo/c/c108-8p target=../c/c108 +hardlink path=usr/share/lib/terminfo/c/c108-rv-8p target=../c/c108-rv +hardlink path=usr/share/lib/terminfo/c/c108-w-8p target=../c/c108-w +hardlink path=usr/share/lib/terminfo/c/c300 target=../c/contel300 +hardlink path=usr/share/lib/terminfo/c/c301 target=../c/contel301 +hardlink path=usr/share/lib/terminfo/c/c321 target=../c/contel301 +hardlink path=usr/share/lib/terminfo/c/cci1 target=../c/cci +hardlink path=usr/share/lib/terminfo/c/cgc2 target=../c/cad68-2 +hardlink path=usr/share/lib/terminfo/c/cgc3 target=../c/cad68-3 +hardlink path=usr/share/lib/terminfo/c/chromatics target=../c/cg7900 +hardlink path=usr/share/lib/terminfo/c/ci8510 target=../c/citoh +hardlink path=usr/share/lib/terminfo/c/cit-80 target=../c/cit80 +hardlink path=usr/share/lib/terminfo/c/citc target=../c/cit101 +hardlink path=usr/share/lib/terminfo/c/citoh-ps target=../c/citoh-prop +hardlink path=usr/share/lib/terminfo/c/coherent target=../p/pc-coherent +hardlink path=usr/share/lib/terminfo/c/colorscan target=../c/cs10 +hardlink path=usr/share/lib/terminfo/c/concept target=../c/c100 +hardlink path=usr/share/lib/terminfo/c/concept-avt target=../a/avt +hardlink path=usr/share/lib/terminfo/c/concept100 target=../c/c100 +hardlink path=usr/share/lib/terminfo/c/concept100-rv target=../c/c100-rv +hardlink path=usr/share/lib/terminfo/c/concept108 target=../c/c108 +hardlink path=usr/share/lib/terminfo/c/concept108-4p target=../c/c108-4p +hardlink path=usr/share/lib/terminfo/c/concept108-8p target=../c/c108 +hardlink path=usr/share/lib/terminfo/c/concept108-w-8 target=../c/c108-w +hardlink path=usr/share/lib/terminfo/c/concept108-w8p target=../c/c108-w +hardlink path=usr/share/lib/terminfo/c/concept108rv4p target=../c/c108-rv-4p +hardlink path=usr/share/lib/terminfo/c/cons25-iso-m target=../c/cons25l1-m +hardlink path=usr/share/lib/terminfo/c/cons25-iso8859 target=../c/cons25l1 +hardlink path=usr/share/lib/terminfo/c/cons25-koi8-r target=../c/cons25r +hardlink path=usr/share/lib/terminfo/c/cons25-koi8r-m target=../c/cons25r-m +hardlink path=usr/share/lib/terminfo/c/cons50-iso-m target=../c/cons50l1-m +hardlink path=usr/share/lib/terminfo/c/cons50-iso8859 target=../c/cons50l1 +hardlink path=usr/share/lib/terminfo/c/cons50-koi8r target=../c/cons50r +hardlink path=usr/share/lib/terminfo/c/cons50-koi8r-m target=../c/cons50r-m +hardlink path=usr/share/lib/terminfo/c/cons60-iso target=../c/cons60l1 +hardlink path=usr/share/lib/terminfo/c/cons60-iso-m target=../c/cons60l1-m +hardlink path=usr/share/lib/terminfo/c/cons60-koi8r target=../c/cons60r +hardlink path=usr/share/lib/terminfo/c/cons60-koi8r-m target=../c/cons60r-m +hardlink path=usr/share/lib/terminfo/c/contel320 target=../c/contel300 +hardlink path=usr/share/lib/terminfo/c/contel321 target=../c/contel301 +hardlink path=usr/share/lib/terminfo/c/cops target=../c/cops10 +hardlink path=usr/share/lib/terminfo/c/cops-10 target=../c/cops10 +hardlink path=usr/share/lib/terminfo/c/crt-vt220 target=../c/crt +hardlink path=usr/share/lib/terminfo/c/ct82 target=../s/swtp +hardlink path=usr/share/lib/terminfo/c/cx target=../c/color_xterm +hardlink path=usr/share/lib/terminfo/c/cx100 target=../c/color_xterm +hardlink path=usr/share/lib/terminfo/d/d2 target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/d/d2-dg target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/d/d200-dg target=../d/d200 +hardlink path=usr/share/lib/terminfo/d/d214 target=../d/d210 +hardlink path=usr/share/lib/terminfo/d/d214-dg target=../d/d210-dg +hardlink path=usr/share/lib/terminfo/d/d215 target=../d/d211 +hardlink path=usr/share/lib/terminfo/d/d215-7b target=../d/d211-7b +hardlink path=usr/share/lib/terminfo/d/d215-dg target=../d/d211-dg +hardlink path=usr/share/lib/terminfo/d/d216+ target=../d/d216-unix +hardlink path=usr/share/lib/terminfo/d/d216+25 target=../d/d216-unix-25 +hardlink path=usr/share/lib/terminfo/d/d216+dg target=../d/d216-dg +hardlink path=usr/share/lib/terminfo/d/d216e+ target=../d/d216-unix +hardlink path=usr/share/lib/terminfo/d/d216e+dg target=../d/d216-dg +hardlink path=usr/share/lib/terminfo/d/d216e-dg target=../d/d216-dg +hardlink path=usr/share/lib/terminfo/d/d216e-unix target=../d/d216-unix +hardlink path=usr/share/lib/terminfo/d/d217-dg target=../d/d216-dg +hardlink path=usr/share/lib/terminfo/d/d230 target=../d/d230c +hardlink path=usr/share/lib/terminfo/d/d230-dg target=../d/d230c-dg +hardlink path=usr/share/lib/terminfo/d/d400-dg target=../d/d400 +hardlink path=usr/share/lib/terminfo/d/d411 target=../d/d410 +hardlink path=usr/share/lib/terminfo/d/d411-7b target=../d/d410-7b +hardlink path=usr/share/lib/terminfo/d/d411-7b-w target=../d/d410-7b-w +hardlink path=usr/share/lib/terminfo/d/d411-dg target=../d/d410-dg +hardlink path=usr/share/lib/terminfo/d/d411-w target=../d/d410-w +hardlink path=usr/share/lib/terminfo/d/d412+ target=../d/d412-unix +hardlink path=usr/share/lib/terminfo/d/d412+25 target=../d/d412-unix-25 +hardlink path=usr/share/lib/terminfo/d/d412+dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d412+s target=../d/d412-unix-s +hardlink path=usr/share/lib/terminfo/d/d412+sr target=../d/d412-unix-sr +hardlink path=usr/share/lib/terminfo/d/d412+w target=../d/d412-unix-w +hardlink path=usr/share/lib/terminfo/d/d413-dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d430-dg target=../d/d430c-dg +hardlink path=usr/share/lib/terminfo/d/d430-dg-ccc target=../d/d430c-dg-ccc +hardlink path=usr/share/lib/terminfo/d/d430-unix target=../d/d430c-unix +hardlink path=usr/share/lib/terminfo/d/d430-unix-25 target=../d/d430c-unix-25 +hardlink path=usr/share/lib/terminfo/d/d430-unix-25-ccc \ + target=../d/d430c-unix-25-ccc +hardlink path=usr/share/lib/terminfo/d/d430-unix-ccc \ + target=../d/d430c-unix-ccc +hardlink path=usr/share/lib/terminfo/d/d430-unix-s target=../d/d430c-unix-s +hardlink path=usr/share/lib/terminfo/d/d430-unix-s-ccc \ + target=../d/d430c-unix-s-ccc +hardlink path=usr/share/lib/terminfo/d/d430-unix-sr target=../d/d430c-unix-sr +hardlink path=usr/share/lib/terminfo/d/d430-unix-sr-ccc \ + target=../d/d430c-unix-sr-ccc +hardlink path=usr/share/lib/terminfo/d/d430-unix-w target=../d/d430c-unix-w +hardlink path=usr/share/lib/terminfo/d/d430-unix-w-ccc \ + target=../d/d430c-unix-w-ccc +hardlink path=usr/share/lib/terminfo/d/d450 target=../d/d400 +hardlink path=usr/share/lib/terminfo/d/d450-dg target=../d/d400 +hardlink path=usr/share/lib/terminfo/d/d460 target=../d/d410 +hardlink path=usr/share/lib/terminfo/d/d460-7b target=../d/d410-7b +hardlink path=usr/share/lib/terminfo/d/d460-7b-w target=../d/d410-7b-w +hardlink path=usr/share/lib/terminfo/d/d460-dg target=../d/d410-dg +hardlink path=usr/share/lib/terminfo/d/d460-w target=../d/d410-w +hardlink path=usr/share/lib/terminfo/d/d461 target=../d/d410 +hardlink path=usr/share/lib/terminfo/d/d461-7b target=../d/d410-7b +hardlink path=usr/share/lib/terminfo/d/d461-7b-w target=../d/d410-7b-w +hardlink path=usr/share/lib/terminfo/d/d461-dg target=../d/d410-dg +hardlink path=usr/share/lib/terminfo/d/d461-w target=../d/d410-w +hardlink path=usr/share/lib/terminfo/d/d462+ target=../d/d412-unix +hardlink path=usr/share/lib/terminfo/d/d462+25 target=../d/d412-unix-25 +hardlink path=usr/share/lib/terminfo/d/d462+dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d462+s target=../d/d412-unix-s +hardlink path=usr/share/lib/terminfo/d/d462+sr target=../d/d412-unix-sr +hardlink path=usr/share/lib/terminfo/d/d462+w target=../d/d412-unix-w +hardlink path=usr/share/lib/terminfo/d/d462-dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d462-unix target=../d/d412-unix +hardlink path=usr/share/lib/terminfo/d/d462-unix-25 target=../d/d412-unix-25 +hardlink path=usr/share/lib/terminfo/d/d462-unix-s target=../d/d412-unix-s +hardlink path=usr/share/lib/terminfo/d/d462-unix-sr target=../d/d412-unix-sr +hardlink path=usr/share/lib/terminfo/d/d462-unix-w target=../d/d412-unix-w +hardlink path=usr/share/lib/terminfo/d/d462e-dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d463-dg target=../d/d412-dg +hardlink path=usr/share/lib/terminfo/d/d463-unix target=../d/d413-unix +hardlink path=usr/share/lib/terminfo/d/d463-unix-25 target=../d/d413-unix-25 +hardlink path=usr/share/lib/terminfo/d/d463-unix-s target=../d/d413-unix-s +hardlink path=usr/share/lib/terminfo/d/d463-unix-sr target=../d/d413-unix-sr +hardlink path=usr/share/lib/terminfo/d/d463-unix-w target=../d/d413-unix-w +hardlink path=usr/share/lib/terminfo/d/d464-unix target=../d/d414-unix +hardlink path=usr/share/lib/terminfo/d/d464-unix-25 target=../d/d414-unix-25 +hardlink path=usr/share/lib/terminfo/d/d464-unix-s target=../d/d414-unix-s +hardlink path=usr/share/lib/terminfo/d/d464-unix-sr target=../d/d414-unix-sr +hardlink path=usr/share/lib/terminfo/d/d464-unix-w target=../d/d414-unix-w +hardlink path=usr/share/lib/terminfo/d/d470 target=../d/d470c +hardlink path=usr/share/lib/terminfo/d/d470-7b target=../d/d470c-7b +hardlink path=usr/share/lib/terminfo/d/d470-dg target=../d/d470c-dg +hardlink path=usr/share/lib/terminfo/d/d578-dg target=../d/d577-dg +hardlink path=usr/share/lib/terminfo/d/d80 target=../a/ampex80 +hardlink path=usr/share/lib/terminfo/d/darwin target=../x/xnuppc +hardlink path=usr/share/lib/terminfo/d/darwin-100x37 target=../x/xnuppc-100x37 +hardlink path=usr/share/lib/terminfo/d/darwin-100x37-m \ + target=../x/xnuppc-100x37-m +hardlink path=usr/share/lib/terminfo/d/darwin-112x37 target=../x/xnuppc-112x37 +hardlink path=usr/share/lib/terminfo/d/darwin-112x37-m \ + target=../x/xnuppc-112x37-m +hardlink path=usr/share/lib/terminfo/d/darwin-128x40 target=../x/xnuppc-128x40 +hardlink path=usr/share/lib/terminfo/d/darwin-128x40-m \ + target=../x/xnuppc-128x40-m +hardlink path=usr/share/lib/terminfo/d/darwin-128x48 target=../x/xnuppc-128x48 +hardlink path=usr/share/lib/terminfo/d/darwin-128x48-m \ + target=../x/xnuppc-128x48-m +hardlink path=usr/share/lib/terminfo/d/darwin-144x48 target=../x/xnuppc-144x48 +hardlink path=usr/share/lib/terminfo/d/darwin-144x48-m \ + target=../x/xnuppc-144x48-m +hardlink path=usr/share/lib/terminfo/d/darwin-160x64 target=../x/xnuppc-160x64 +hardlink path=usr/share/lib/terminfo/d/darwin-160x64-m \ + target=../x/xnuppc-160x64-m +hardlink path=usr/share/lib/terminfo/d/darwin-200x64 target=../x/xnuppc-200x64 +hardlink path=usr/share/lib/terminfo/d/darwin-200x64-m \ + target=../x/xnuppc-200x64-m +hardlink path=usr/share/lib/terminfo/d/darwin-200x75 target=../x/xnuppc-200x75 +hardlink path=usr/share/lib/terminfo/d/darwin-200x75-m \ + target=../x/xnuppc-200x75-m +hardlink path=usr/share/lib/terminfo/d/darwin-256x96 target=../x/xnuppc-256x96 +hardlink path=usr/share/lib/terminfo/d/darwin-256x96-m \ + target=../x/xnuppc-256x96-m +hardlink path=usr/share/lib/terminfo/d/darwin-80x25 target=../x/xnuppc-80x25 +hardlink path=usr/share/lib/terminfo/d/darwin-80x25-m \ + target=../x/xnuppc-80x25-m +hardlink path=usr/share/lib/terminfo/d/darwin-80x30 target=../x/xnuppc-80x30 +hardlink path=usr/share/lib/terminfo/d/darwin-80x30-m \ + target=../x/xnuppc-80x30-m +hardlink path=usr/share/lib/terminfo/d/darwin-90x30 target=../x/xnuppc-90x30 +hardlink path=usr/share/lib/terminfo/d/darwin-90x30-m \ + target=../x/xnuppc-90x30-m +hardlink path=usr/share/lib/terminfo/d/darwin-b target=../x/xnuppc-b +hardlink path=usr/share/lib/terminfo/d/darwin-f target=../x/xnuppc-f +hardlink path=usr/share/lib/terminfo/d/darwin-f2 target=../x/xnuppc-f2 +hardlink path=usr/share/lib/terminfo/d/darwin-m target=../x/xnuppc-m +hardlink path=usr/share/lib/terminfo/d/darwin-m-b target=../x/xnuppc-m-b +hardlink path=usr/share/lib/terminfo/d/darwin-m-f target=../x/xnuppc-m-f +hardlink path=usr/share/lib/terminfo/d/darwin-m-f2 target=../x/xnuppc-m-f2 +hardlink path=usr/share/lib/terminfo/d/datagraphix target=../d/d132 +hardlink path=usr/share/lib/terminfo/d/datamedia2500 target=../d/dm2500 +hardlink path=usr/share/lib/terminfo/d/datapoint target=../d/dp3360 +hardlink path=usr/share/lib/terminfo/d/dataspeed40 target=../t/tty40 +hardlink path=usr/share/lib/terminfo/d/dd5000 target=../d/delta +hardlink path=usr/share/lib/terminfo/d/ddr3180 target=../d/ddr +hardlink path=usr/share/lib/terminfo/d/dec-vt330 target=../v/vt340 +hardlink path=usr/share/lib/terminfo/d/dec-vt340 target=../v/vt340 +hardlink path=usr/share/lib/terminfo/d/dec-vt400 target=../v/vt400 +hardlink path=usr/share/lib/terminfo/d/decpro target=../p/pro350 +hardlink path=usr/share/lib/terminfo/d/decwriter target=../d/dw2 +hardlink path=usr/share/lib/terminfo/d/dg-ansi target=../d/dg210 +hardlink path=usr/share/lib/terminfo/d/dg100 target=../d/dg6053-old +hardlink path=usr/share/lib/terminfo/d/dg605x target=../d/dg6053 +hardlink path=usr/share/lib/terminfo/d/dg6134 target=../d/dg450 +hardlink path=usr/share/lib/terminfo/d/diablo target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/d/diablo-lm target=../d/diablo1640-lm +hardlink path=usr/share/lib/terminfo/d/diablo1640-m8 target=../d/diablo1620-m8 +hardlink path=usr/share/lib/terminfo/d/diablo1720 target=../d/diablo1620 +hardlink path=usr/share/lib/terminfo/d/diablo1730 target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/d/diablo1740 target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/d/diablo450 target=../d/diablo1620 +hardlink path=usr/share/lib/terminfo/d/diablo630 target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/d/dialogue target=../a/ampex80 +hardlink path=usr/share/lib/terminfo/d/dialogue80 target=../a/ampex80 +hardlink path=usr/share/lib/terminfo/d/dku7102 target=../t/tws-generic +hardlink path=usr/share/lib/terminfo/d/dku7102-sna target=../t/tws2102-sna +hardlink path=usr/share/lib/terminfo/d/dku7103-sna target=../t/tws2103-sna +hardlink path=usr/share/lib/terminfo/d/dm1521 target=../d/dm1520 +hardlink path=usr/share/lib/terminfo/d/dmd target=../a/att5620 +hardlink path=usr/share/lib/terminfo/d/dmd-24 target=../a/att5620-24 +hardlink path=usr/share/lib/terminfo/d/dmd-34 target=../a/att5620-34 +hardlink path=usr/share/lib/terminfo/d/dmd1 target=../a/att5620-1 +hardlink path=usr/share/lib/terminfo/d/dmdt80 target=../d/dm80 +hardlink path=usr/share/lib/terminfo/d/dmdt80w target=../d/dm80w +hardlink path=usr/share/lib/terminfo/d/ds40 target=../t/tty40 +hardlink path=usr/share/lib/terminfo/d/ds40-2 target=../t/tty40 +hardlink path=usr/share/lib/terminfo/d/dt-100 target=../d/dt100 +hardlink path=usr/share/lib/terminfo/d/dt-100w target=../d/dt100w +hardlink path=usr/share/lib/terminfo/d/dt80 target=../d/dm80 +hardlink path=usr/share/lib/terminfo/d/dt80w target=../d/dm80w +hardlink path=usr/share/lib/terminfo/d/dw target=../d/dw2 +hardlink path=usr/share/lib/terminfo/d/dwk-vt target=../d/dwk +hardlink path=usr/share/lib/terminfo/e/emots target=../g/gs6300 +hardlink path=usr/share/lib/terminfo/e/envision230 target=../e/env230 +hardlink path=usr/share/lib/terminfo/e/ep4000 target=../e/ep40 +hardlink path=usr/share/lib/terminfo/e/ep4080 target=../e/ep48 +hardlink path=usr/share/lib/terminfo/e/excel64 target=../e/excel62 +hardlink path=usr/share/lib/terminfo/e/excel64-rv target=../e/excel62-rv +hardlink path=usr/share/lib/terminfo/e/excel64-w target=../e/excel62-w +hardlink path=usr/share/lib/terminfo/e/exec80 target=../h/hazel +hardlink path=usr/share/lib/terminfo/f/f1720a target=../f/f1720 +hardlink path=usr/share/lib/terminfo/f/fenix target=../p/pt100 +hardlink path=usr/share/lib/terminfo/f/fenixw target=../p/pt100w +hardlink path=usr/share/lib/terminfo/f/fixterm target=../c/cbblit +hardlink path=usr/share/lib/terminfo/f/fortune target=../f/fos +hardlink path=usr/share/lib/terminfo/f/freedom target=../f/f100 +hardlink path=usr/share/lib/terminfo/f/freedom-rv target=../f/f100-rv +hardlink path=usr/share/lib/terminfo/f/freedom100 target=../f/f100 +hardlink path=usr/share/lib/terminfo/f/freedom110 target=../f/f110 +hardlink path=usr/share/lib/terminfo/f/freedom200 target=../f/f200 +hardlink path=usr/share/lib/terminfo/g/go-225 target=../g/go225 +hardlink path=usr/share/lib/terminfo/g/gs5430 target=../a/att505 +hardlink path=usr/share/lib/terminfo/g/gs5430-22 target=../t/tt505-22 +hardlink path=usr/share/lib/terminfo/g/gs5430-24 target=../a/att505-24 +hardlink path=usr/share/lib/terminfo/g/gt100 target=../i/i100 +hardlink path=usr/share/lib/terminfo/g/gt100a target=../i/i100 +hardlink path=usr/share/lib/terminfo/g/guru+unk target=../g/guru +hardlink path=usr/share/lib/terminfo/g/guru-33 target=../g/guru +hardlink path=usr/share/lib/terminfo/g/guru-33-rv target=../g/guru-rv +hardlink path=usr/share/lib/terminfo/g/guru-33-s target=../g/guru-s +hardlink path=usr/share/lib/terminfo/g/guru-lp target=../g/guru-76-lp +hardlink path=usr/share/lib/terminfo/h/h-100 target=../z/z100 +hardlink path=usr/share/lib/terminfo/h/h-100bw target=../z/z100bw +hardlink path=usr/share/lib/terminfo/h/h100 target=../z/z100 +hardlink path=usr/share/lib/terminfo/h/h100bw target=../z/z100bw +hardlink path=usr/share/lib/terminfo/h/h19-b target=../h/h19 +hardlink path=usr/share/lib/terminfo/h/h19-smul target=../h/h19-us +hardlink path=usr/share/lib/terminfo/h/h19a target=../h/h19-a +hardlink path=usr/share/lib/terminfo/h/h19g target=../h/h19-g +hardlink path=usr/share/lib/terminfo/h/h19kermit target=../h/h19k +hardlink path=usr/share/lib/terminfo/h/h19us target=../h/h19-us +hardlink path=usr/share/lib/terminfo/h/h29a-kc-bc target=../z/z29a +hardlink path=usr/share/lib/terminfo/h/h29a-kc-uc target=../z/z29a-kc-uc +hardlink path=usr/share/lib/terminfo/h/h29a-nkc-bc target=../z/z29a-nkc-bc +hardlink path=usr/share/lib/terminfo/h/h29a-nkc-uc target=../z/z29a-nkc-uc +hardlink path=usr/share/lib/terminfo/h/h80 target=../h/hazel +hardlink path=usr/share/lib/terminfo/h/he80 target=../h/hazel +hardlink path=usr/share/lib/terminfo/h/heath target=../h/h19 +hardlink path=usr/share/lib/terminfo/h/heath-19 target=../h/h19 +hardlink path=usr/share/lib/terminfo/h/heath-ansi target=../h/h19-a +hardlink path=usr/share/lib/terminfo/h/heathkit target=../h/h19 +hardlink path=usr/share/lib/terminfo/h/heathkit-a target=../h/h19-a +hardlink path=usr/share/lib/terminfo/h/hft target=../i/ibm5081 +hardlink path=usr/share/lib/terminfo/h/hp target=../h/hpgeneric +hardlink path=usr/share/lib/terminfo/h/hp2382 target=../h/hp2382a +hardlink path=usr/share/lib/terminfo/h/hp2397 target=../h/hp2397a +hardlink path=usr/share/lib/terminfo/h/hp2621-wl target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/h/hp2621A target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/h/hp2621a target=../h/hp2621 +hardlink path=usr/share/lib/terminfo/h/hp2621a-a target=../h/hp2621-a +hardlink path=usr/share/lib/terminfo/h/hp2621k45 target=../h/hp2621-k45 +hardlink path=usr/share/lib/terminfo/h/hp2622a target=../h/hp2622 +hardlink path=usr/share/lib/terminfo/h/hp2623a target=../h/hp2623 +hardlink path=usr/share/lib/terminfo/h/hp2624a target=../h/hp2624 +hardlink path=usr/share/lib/terminfo/h/hp2624a-10p target=../h/hp2624-10p +hardlink path=usr/share/lib/terminfo/h/hp2624b target=../h/hp2624 +hardlink path=usr/share/lib/terminfo/h/hp2624b-10p target=../h/hp2624-10p +hardlink path=usr/share/lib/terminfo/h/hp2624b-4p target=../h/hp2624 +hardlink path=usr/share/lib/terminfo/h/hp2624b-4p-p target=../h/hp2624b-p +hardlink path=usr/share/lib/terminfo/h/hp2626a target=../h/hp2626 +hardlink path=usr/share/lib/terminfo/h/hp2626p target=../h/hp2626 +hardlink path=usr/share/lib/terminfo/h/hp2644a target=../h/hp2640b +hardlink path=usr/share/lib/terminfo/h/hp2645a target=../h/hp2641a +hardlink path=usr/share/lib/terminfo/h/hp2647a target=../h/hp2641a +hardlink path=usr/share/lib/terminfo/h/hp2648a target=../h/hp2648 +hardlink path=usr/share/lib/terminfo/h/hp45 target=../h/hp2645 +hardlink path=usr/share/lib/terminfo/h/hp700 target=../h/hpansi +hardlink path=usr/share/lib/terminfo/h/hp70092A target=../h/hp70092 +hardlink path=usr/share/lib/terminfo/h/hp70092a target=../h/hp70092 +hardlink path=usr/share/lib/terminfo/h/hp98550a target=../h/hp98550 +hardlink path=usr/share/lib/terminfo/h/hp98720 target=../h/hp9837 +hardlink path=usr/share/lib/terminfo/h/hp98721 target=../h/hp9837 +hardlink path=usr/share/lib/terminfo/h/hpex2 target=../h/hp2 +hardlink path=usr/share/lib/terminfo/h/htx11 target=../z/ztx +hardlink path=usr/share/lib/terminfo/i/i3101 target=../i/ibm3101 +hardlink path=usr/share/lib/terminfo/i/i3164 target=../i/ibm3164 +hardlink path=usr/share/lib/terminfo/i/ibm3163 target=../i/ibm3161 +hardlink path=usr/share/lib/terminfo/i/ibm5051 target=../i/ibm-pc +hardlink path=usr/share/lib/terminfo/i/ibm5154-c target=../i/ibmega-c +hardlink path=usr/share/lib/terminfo/i/ibm6154-c target=../i/ibmapa8c-c +hardlink path=usr/share/lib/terminfo/i/ibm8507 target=../i/ibm8503 +hardlink path=usr/share/lib/terminfo/i/ibm8513 target=../i/ibm8512 +hardlink path=usr/share/lib/terminfo/i/ibm8604 target=../i/ibm8503 +hardlink path=usr/share/lib/terminfo/i/ibmapa16 target=../r/rtpc +hardlink path=usr/share/lib/terminfo/i/ibmapa8 target=../i/ibmapa8c +hardlink path=usr/share/lib/terminfo/i/ibmmpel-c target=../i/ibm5081-c +hardlink path=usr/share/lib/terminfo/i/ibmpc3r target=../c/cons25r +hardlink path=usr/share/lib/terminfo/i/ibmpc3r-mono target=../c/cons25r-m +hardlink path=usr/share/lib/terminfo/i/ibmx target=../i/ibmpcx +hardlink path=usr/share/lib/terminfo/i/icl6402 target=../i/icl6404 +hardlink path=usr/share/lib/terminfo/i/intertec target=../i/intertube +hardlink path=usr/share/lib/terminfo/i/intextii target=../i/intext2 +hardlink path=usr/share/lib/terminfo/i/ips target=../c/citoh-prop +hardlink path=usr/share/lib/terminfo/i/ipsi target=../d/diablo1620 +hardlink path=usr/share/lib/terminfo/i/iq120 target=../s/soroc120 +hardlink path=usr/share/lib/terminfo/i/iq140 target=../s/soroc140 +hardlink path=usr/share/lib/terminfo/i/iris-ansi-net target=../i/iris-ansi +hardlink path=usr/share/lib/terminfo/i/iris40 target=../w/wsiris +hardlink path=usr/share/lib/terminfo/j/jerq target=../b/blit +hardlink path=usr/share/lib/terminfo/j/jfbterm target=../k/kon +hardlink path=usr/share/lib/terminfo/k/k45 target=../h/hp2621-k45 +hardlink path=usr/share/lib/terminfo/k/kaypro2 target=../k/kaypro +hardlink path=usr/share/lib/terminfo/k/kds6402 target=../i/icl6404 +hardlink path=usr/share/lib/terminfo/k/kds7372 target=../i/icl6404 +hardlink path=usr/share/lib/terminfo/k/kds7372-w target=../i/icl6404-w +hardlink path=usr/share/lib/terminfo/k/kon2 target=../k/kon +hardlink path=usr/share/lib/terminfo/k/kterm-co target=../k/kterm-color +hardlink path=usr/share/lib/terminfo/k/ktm target=../s/synertek +hardlink path=usr/share/lib/terminfo/l/la120 target=../d/dw3 +hardlink path=usr/share/lib/terminfo/l/layer target=../a/att5620-s +hardlink path=usr/share/lib/terminfo/l/lft-pc850 target=../l/lft +hardlink path=usr/share/lib/terminfo/l/luna68k target=../l/luna +hardlink path=usr/share/lib/terminfo/m/macintosh target=../m/mac +hardlink path=usr/share/lib/terminfo/m/macterminal-w target=../m/mac-w +hardlink path=usr/share/lib/terminfo/m/mdl110 target=../c/cyb110 +hardlink path=usr/share/lib/terminfo/m/microbee target=../m/microb +hardlink path=usr/share/lib/terminfo/m/microterm target=../a/act4 +hardlink path=usr/share/lib/terminfo/m/microterm5 target=../a/act5 +hardlink path=usr/share/lib/terminfo/m/mime-3ax target=../m/mime3ax +hardlink path=usr/share/lib/terminfo/m/mime1 target=../m/mime +hardlink path=usr/share/lib/terminfo/m/mime2 target=../m/mime +hardlink path=usr/share/lib/terminfo/m/mime2a-v target=../m/mime2a +hardlink path=usr/share/lib/terminfo/m/mime340 target=../m/mm340 +hardlink path=usr/share/lib/terminfo/m/mimei target=../m/mime +hardlink path=usr/share/lib/terminfo/m/mimeii target=../m/mime +hardlink path=usr/share/lib/terminfo/m/minitel target=../m/m2-nam +hardlink path=usr/share/lib/terminfo/m/minitel-2 target=../m/m2-nam +hardlink path=usr/share/lib/terminfo/m/minitel-2-nam target=../m/m2-nam +hardlink path=usr/share/lib/terminfo/m/minix-1.5 target=../m/minix-old +hardlink path=usr/share/lib/terminfo/m/mm314 target=../m/mime314 +hardlink path=usr/share/lib/terminfo/m/mod target=../m/modgraph48 +hardlink path=usr/share/lib/terminfo/m/mod24 target=../m/modgraph +hardlink path=usr/share/lib/terminfo/m/mouse-sun target=../m/mterm +hardlink path=usr/share/lib/terminfo/m/mskermit227 target=../m/msk227 +hardlink path=usr/share/lib/terminfo/m/mskermit22714 target=../m/msk22714 +hardlink path=usr/share/lib/terminfo/m/mskermit227am target=../m/msk227am +hardlink path=usr/share/lib/terminfo/m/mt-70 target=../m/mt70 +hardlink path=usr/share/lib/terminfo/n/nansisys target=../n/nansi.sys +hardlink path=usr/share/lib/terminfo/n/nansisysk target=../n/nansi.sysk +hardlink path=usr/share/lib/terminfo/n/ncr260vt300wpp \ + target=../N/NCR260VT300WPP +hardlink path=usr/share/lib/terminfo/n/ncr7900 target=../n/ncr7900i +hardlink path=usr/share/lib/terminfo/n/ncrvt100pp target=../n/ncrvt100an +hardlink path=usr/share/lib/terminfo/n/ncrvt100wpp target=../n/ncrvt100wan +hardlink path=usr/share/lib/terminfo/n/ncsa-vt220-8 target=../n/ncsa-m +hardlink path=usr/share/lib/terminfo/n/nd9500 target=../n/ndr9500 +hardlink path=usr/share/lib/terminfo/n/nec target=../n/nec5520 +hardlink path=usr/share/lib/terminfo/n/news target=../n/nwp512 +hardlink path=usr/share/lib/terminfo/n/news-a target=../n/nwp512-a +hardlink path=usr/share/lib/terminfo/n/news-o target=../n/nwp512-o +hardlink path=usr/share/lib/terminfo/n/news28-a target=../n/news29 +hardlink path=usr/share/lib/terminfo/n/news31 target=../n/nwp513 +hardlink path=usr/share/lib/terminfo/n/news31-a target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/news31-o target=../n/nwp513-o +hardlink path=usr/share/lib/terminfo/n/news33 target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/news40 target=../n/nwp512 +hardlink path=usr/share/lib/terminfo/n/news40-a target=../n/nwp512-a +hardlink path=usr/share/lib/terminfo/n/news40-o target=../n/nwp512-o +hardlink path=usr/share/lib/terminfo/n/news42 target=../n/nwp512-a +hardlink path=usr/share/lib/terminfo/n/newscbm target=../n/nwp513 +hardlink path=usr/share/lib/terminfo/n/newscbm-a target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/newscbm-o target=../n/nwp513-o +hardlink path=usr/share/lib/terminfo/n/newscbm33 target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/nsterm-7-c-s target=../n/nsterm-c-s-7 +hardlink path=usr/share/lib/terminfo/n/nsterm-7-m target=../n/nsterm-m-7 +hardlink path=usr/share/lib/terminfo/n/nsterm-7-m-s target=../n/nsterm-m-s-7 +hardlink path=usr/share/lib/terminfo/n/nsterm-7-s target=../n/nsterm-s-7 +hardlink path=usr/share/lib/terminfo/n/nsterm-acs-c target=../n/nsterm-c-acs +hardlink path=usr/share/lib/terminfo/n/nsterm-acs-c-s \ + target=../n/nsterm-c-s-acs +hardlink path=usr/share/lib/terminfo/n/nsterm-acs-m target=../n/nsterm-m-acs +hardlink path=usr/share/lib/terminfo/n/nsterm-acs-m-s \ + target=../n/nsterm-m-s-acs +hardlink path=usr/share/lib/terminfo/n/nsterm-acs-s target=../n/nsterm-s-acs +hardlink path=usr/share/lib/terminfo/n/nsterm-c-7 target=../n/nsterm-7-c +hardlink path=usr/share/lib/terminfo/n/ntconsole target=../i/interix +hardlink path=usr/share/lib/terminfo/n/ntconsole-100 target=../o/opennt-100 +hardlink path=usr/share/lib/terminfo/n/ntconsole-100-nti \ + target=../o/opennt-100-nti +hardlink path=usr/share/lib/terminfo/n/ntconsole-25 target=../i/interix +hardlink path=usr/share/lib/terminfo/n/ntconsole-25-nti \ + target=../i/interix-nti +hardlink path=usr/share/lib/terminfo/n/ntconsole-25-w target=../o/opennt-w +hardlink path=usr/share/lib/terminfo/n/ntconsole-25-w-vt \ + target=../o/opennt-w-vt +hardlink path=usr/share/lib/terminfo/n/ntconsole-35 target=../o/opennt-35 +hardlink path=usr/share/lib/terminfo/n/ntconsole-35-nti \ + target=../o/opennt-35-nti +hardlink path=usr/share/lib/terminfo/n/ntconsole-35-w target=../o/opennt-35-w +hardlink path=usr/share/lib/terminfo/n/ntconsole-50 target=../o/opennt-50 +hardlink path=usr/share/lib/terminfo/n/ntconsole-50-nti \ + target=../o/opennt-50-nti +hardlink path=usr/share/lib/terminfo/n/ntconsole-50-w target=../o/opennt-50-w +hardlink path=usr/share/lib/terminfo/n/ntconsole-60 target=../o/opennt-60 +hardlink path=usr/share/lib/terminfo/n/ntconsole-60-nti \ + target=../o/opennt-60-nti +hardlink path=usr/share/lib/terminfo/n/ntconsole-60-w target=../o/opennt-60-w +hardlink path=usr/share/lib/terminfo/n/ntconsole-w target=../o/opennt-w +hardlink path=usr/share/lib/terminfo/n/ntconsole-w-vt target=../o/opennt-w-vt +hardlink path=usr/share/lib/terminfo/n/nwe501 target=../n/nwp513 +hardlink path=usr/share/lib/terminfo/n/nwe501-a target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/nwe501-o target=../n/nwp513-o +hardlink path=usr/share/lib/terminfo/n/nwp-511 target=../n/nwp511 +hardlink path=usr/share/lib/terminfo/n/nwp-517 target=../n/nwp517 +hardlink path=usr/share/lib/terminfo/n/nwp-517-w target=../n/nwp517-w +hardlink path=usr/share/lib/terminfo/n/nwp251-a target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/nwp251-o target=../n/nwp513-o +hardlink path=usr/share/lib/terminfo/n/nwp514 target=../n/nwp512 +hardlink path=usr/share/lib/terminfo/n/nwp514-a target=../n/nwp512-a +hardlink path=usr/share/lib/terminfo/n/nwp514-o target=../n/nwp512-o +hardlink path=usr/share/lib/terminfo/n/nwp518 target=../n/nwp513 +hardlink path=usr/share/lib/terminfo/n/nwp518-a target=../n/nwp513-a +hardlink path=usr/share/lib/terminfo/n/nwp518-o target=../n/nwp513-o +hardlink path=usr/share/lib/terminfo/n/nxterm target=../x/xterm-color +hardlink path=usr/share/lib/terminfo/o/o31 target=../a/adm31-old +hardlink path=usr/share/lib/terminfo/o/o4112-nd target=../o/otek4112 +hardlink path=usr/share/lib/terminfo/o/o85h target=../a/abm85h-old +hardlink path=usr/share/lib/terminfo/o/oabm85h target=../a/abm85h-old +hardlink path=usr/share/lib/terminfo/o/oconcept target=../o/oc100 +hardlink path=usr/share/lib/terminfo/o/ojerq target=../o/oblit +hardlink path=usr/share/lib/terminfo/o/oldibmpc3 target=../o/oldpc3 +hardlink path=usr/share/lib/terminfo/o/opennt target=../i/interix +hardlink path=usr/share/lib/terminfo/o/opennt-25 target=../i/interix +hardlink path=usr/share/lib/terminfo/o/opennt-25-nti target=../i/interix-nti +hardlink path=usr/share/lib/terminfo/o/opennt-25-w target=../o/opennt-w +hardlink path=usr/share/lib/terminfo/o/opennt-25-w-vt target=../o/opennt-w-vt +hardlink path=usr/share/lib/terminfo/o/opennt-nti target=../i/interix-nti +hardlink path=usr/share/lib/terminfo/o/origibmpc3 target=../o/origpc3 +hardlink path=usr/share/lib/terminfo/o/os9LII target=../c/coco3 +hardlink path=usr/share/lib/terminfo/o/osborne1 target=../o/osborne +hardlink path=usr/share/lib/terminfo/o/osborne1-w target=../o/osborne-w +hardlink path=usr/share/lib/terminfo/o/otek4113 target=../o/otek4112 +hardlink path=usr/share/lib/terminfo/o/otek4114 target=../o/otek4112 +hardlink path=usr/share/lib/terminfo/p/p12 target=../p/prism12 +hardlink path=usr/share/lib/terminfo/p/p12-m target=../p/prism12-m +hardlink path=usr/share/lib/terminfo/p/p12-m-w target=../p/prism12-m-w +hardlink path=usr/share/lib/terminfo/p/p12-w target=../p/prism12-w +hardlink path=usr/share/lib/terminfo/p/p14 target=../p/prism14 +hardlink path=usr/share/lib/terminfo/p/p14-m target=../p/prism14-m +hardlink path=usr/share/lib/terminfo/p/p14-m-w target=../p/prism14-m-w +hardlink path=usr/share/lib/terminfo/p/p14-w target=../p/prism14-w +hardlink path=usr/share/lib/terminfo/p/p4 target=../p/prism4 +hardlink path=usr/share/lib/terminfo/p/p5 target=../p/prism5 +hardlink path=usr/share/lib/terminfo/p/p7 target=../p/prism7 +hardlink path=usr/share/lib/terminfo/p/p8 target=../p/prism8 +hardlink path=usr/share/lib/terminfo/p/p8-w target=../p/prism8-w +hardlink path=usr/share/lib/terminfo/p/p9 target=../p/prism9 +hardlink path=usr/share/lib/terminfo/p/p9-8 target=../p/prism9-8 +hardlink path=usr/share/lib/terminfo/p/p9-8-w target=../p/prism9-8-w +hardlink path=usr/share/lib/terminfo/p/p9-w target=../p/prism9-w +hardlink path=usr/share/lib/terminfo/p/pc3-bold target=../i/ibmpc3 +hardlink path=usr/share/lib/terminfo/p/pc3r target=../c/cons25r +hardlink path=usr/share/lib/terminfo/p/pc3r-m target=../c/cons25r-m +hardlink path=usr/share/lib/terminfo/p/pc7300 target=../a/att7300 +hardlink path=usr/share/lib/terminfo/p/pcansi-mono target=../p/pcansi-m +hardlink path=usr/share/lib/terminfo/p/pcansi25 target=../p/pcansi-25 +hardlink path=usr/share/lib/terminfo/p/pcansi25m target=../p/pcansi-25-m +hardlink path=usr/share/lib/terminfo/p/pcansi33 target=../p/pcansi-33 +hardlink path=usr/share/lib/terminfo/p/pcansi33m target=../p/pcansi-33-m +hardlink path=usr/share/lib/terminfo/p/pcansi43 target=../p/pcansi-43 +hardlink path=usr/share/lib/terminfo/p/pcconsole target=../p/pccons +hardlink path=usr/share/lib/terminfo/p/pckermit12 target=../p/pckermit +hardlink path=usr/share/lib/terminfo/p/pcz19 target=../p/pc-coherent +hardlink path=usr/share/lib/terminfo/p/pe1100 target=../f/fox +hardlink path=usr/share/lib/terminfo/p/pe1200 target=../o/owl +hardlink path=usr/share/lib/terminfo/p/pe550 target=../b/bantam +hardlink path=usr/share/lib/terminfo/p/pe6100 target=../b/bantam +hardlink path=usr/share/lib/terminfo/p/pe6300 target=../p/pe1251 +hardlink path=usr/share/lib/terminfo/p/pe6312 target=../p/pe1251 +hardlink path=usr/share/lib/terminfo/p/pmconsole target=../p/pmcons +hardlink path=usr/share/lib/terminfo/p/printer target=../l/lpr +hardlink path=usr/share/lib/terminfo/p/prism8gl target=../p/p8gl +hardlink path=usr/share/lib/terminfo/p/psterm-basic target=../p/psterm +hardlink path=usr/share/lib/terminfo/p/psx_ansi target=../a/ansi-nt +hardlink path=usr/share/lib/terminfo/p/pt200 target=../p/pt100 +hardlink path=usr/share/lib/terminfo/p/pt200w target=../p/pt100w +hardlink path=usr/share/lib/terminfo/p/pt505 target=../a/att505 +hardlink path=usr/share/lib/terminfo/p/pt505-22 target=../t/tt505-22 +hardlink path=usr/share/lib/terminfo/p/pt505-24 target=../a/att505-24 +hardlink path=usr/share/lib/terminfo/q/qdcons target=../q/qdss +hardlink path=usr/share/lib/terminfo/q/qnx4 target=../q/qnx +hardlink path=usr/share/lib/terminfo/q/qnxt4 target=../q/qnxt +hardlink path=usr/share/lib/terminfo/q/qume target=../q/qume5 +hardlink path=usr/share/lib/terminfo/q/qvt101p target=../q/qvt101+ +hardlink path=usr/share/lib/terminfo/q/qvt108 target=../q/qvt101 +hardlink path=usr/share/lib/terminfo/q/qvt119 target=../q/qvt119+ +hardlink path=usr/share/lib/terminfo/q/qvt119-25-w target=../q/qvt119+-25-w +hardlink path=usr/share/lib/terminfo/q/qvt119-w target=../q/qvt119+-w +hardlink path=usr/share/lib/terminfo/q/qvt119p target=../q/qvt119+ +hardlink path=usr/share/lib/terminfo/q/qvt119p-25 target=../q/qvt119+-25 +hardlink path=usr/share/lib/terminfo/q/qvt119p-25-w target=../q/qvt119+-25-w +hardlink path=usr/share/lib/terminfo/q/qvt119p-w target=../q/qvt119+-w +hardlink path=usr/share/lib/terminfo/q/qvt203+ target=../q/qvt203 +hardlink path=usr/share/lib/terminfo/q/qvt203-w-am target=../q/qvt203-w +hardlink path=usr/share/lib/terminfo/r/rebus3180 target=../d/ddr +hardlink path=usr/share/lib/terminfo/r/regent200 target=../r/regent60 +hardlink path=usr/share/lib/terminfo/s/s4 target=../a/att7300 +hardlink path=usr/share/lib/terminfo/s/sb3 target=../s/sb2 +hardlink path=usr/share/lib/terminfo/s/sbobcat target=../b/bobcat +hardlink path=usr/share/lib/terminfo/s/sc410 target=../s/scanset +hardlink path=usr/share/lib/terminfo/s/sc415 target=../s/scanset +hardlink path=usr/share/lib/terminfo/s/screen.xterm-new \ + target=../s/screen.xterm-xfree86 +hardlink path=usr/share/lib/terminfo/s/soroc target=../s/soroc120 +hardlink path=usr/share/lib/terminfo/s/spinwriter target=../n/nec5520 +hardlink path=usr/share/lib/terminfo/s/st target=../s/simpleterm +hardlink path=usr/share/lib/terminfo/s/st52-m target=../s/st52 +hardlink path=usr/share/lib/terminfo/s/sun-cmd target=../s/sun-c +hardlink path=usr/share/lib/terminfo/s/sun-nic target=../s/sun-e +hardlink path=usr/share/lib/terminfo/s/sun-s-e target=../s/sun-e-s +hardlink path=usr/share/lib/terminfo/s/sun-ss5 target=../s/sun-cgsix +hardlink path=usr/share/lib/terminfo/s/sun1 target=../s/sun +hardlink path=usr/share/lib/terminfo/s/sun2 target=../s/sun +hardlink path=usr/share/lib/terminfo/s/sune target=../s/sun-e +hardlink path=usr/share/lib/terminfo/s/superbee target=../s/sbi +hardlink path=usr/share/lib/terminfo/s/sv80 target=../a/att2300 +hardlink path=usr/share/lib/terminfo/s/synertek380 target=../s/synertek +hardlink path=usr/share/lib/terminfo/s/system1 target=../i/ibm-system1 +hardlink path=usr/share/lib/terminfo/t/t653x target=../t/tandem653 +hardlink path=usr/share/lib/terminfo/t/tab target=../t/tab132 +hardlink path=usr/share/lib/terminfo/t/tab132-15 target=../t/tab132 +hardlink path=usr/share/lib/terminfo/t/tek4012 target=../t/tek +hardlink path=usr/share/lib/terminfo/t/tek4025 target=../t/tek4024 +hardlink path=usr/share/lib/terminfo/t/tek4027 target=../t/tek4024 +hardlink path=usr/share/lib/terminfo/t/tek4027-ex target=../t/tek4025-ex +hardlink path=usr/share/lib/terminfo/t/tek4107brl target=../t/tek4106brl +hardlink path=usr/share/lib/terminfo/t/tek4109 target=../t/tek4107 +hardlink path=usr/share/lib/terminfo/t/tek4109brl target=../t/tek4106brl +hardlink path=usr/share/lib/terminfo/t/tek4114 target=../t/tek4112 +hardlink path=usr/share/lib/terminfo/t/teleray target=../t/t1061 +hardlink path=usr/share/lib/terminfo/t/terminet target=../t/terminet1200 +hardlink path=usr/share/lib/terminfo/t/terminet300 target=../t/terminet1200 +hardlink path=usr/share/lib/terminfo/t/tgtelnet target=../p/pilot +hardlink path=usr/share/lib/terminfo/t/ti733 target=../t/ti700 +hardlink path=usr/share/lib/terminfo/t/ti735 target=../t/ti700 +hardlink path=usr/share/lib/terminfo/t/ti745 target=../t/ti700 +hardlink path=usr/share/lib/terminfo/t/ti800 target=../t/ti700 +hardlink path=usr/share/lib/terminfo/t/ti916-220-7 target=../t/ti916 +hardlink path=usr/share/lib/terminfo/t/ti916-220-8 target=../t/ti916-8 +hardlink path=usr/share/lib/terminfo/t/tkterm target=../t/tt +hardlink path=usr/share/lib/terminfo/t/tn1200 target=../t/terminet1200 +hardlink path=usr/share/lib/terminfo/t/tn300 target=../t/terminet1200 +hardlink path=usr/share/lib/terminfo/t/trs80II target=../t/trs2 +hardlink path=usr/share/lib/terminfo/t/trsII target=../t/trs2 +hardlink path=usr/share/lib/terminfo/t/ts-1 target=../f/falco +hardlink path=usr/share/lib/terminfo/t/ts-1p target=../f/falco-p +hardlink path=usr/share/lib/terminfo/t/ts1 target=../f/falco +hardlink path=usr/share/lib/terminfo/t/ts100-sp target=../t/ts100 +hardlink path=usr/share/lib/terminfo/t/ts1p target=../f/falco-p +hardlink path=usr/share/lib/terminfo/t/tty35 target=../t/tty33 +hardlink path=usr/share/lib/terminfo/t/tty4420 target=../a/att4420 +hardlink path=usr/share/lib/terminfo/t/tty4424 target=../a/att4424 +hardlink path=usr/share/lib/terminfo/t/tty4424-1 target=../a/att4424-1 +hardlink path=usr/share/lib/terminfo/t/tty4424m target=../a/att4424m +hardlink path=usr/share/lib/terminfo/t/tty4426 target=../a/att4426 +hardlink path=usr/share/lib/terminfo/t/tty5410 target=../a/att4410 +hardlink path=usr/share/lib/terminfo/t/tty5410-w target=../a/att5410-w +hardlink path=usr/share/lib/terminfo/t/tty5410v1 target=../a/att5410v1 +hardlink path=usr/share/lib/terminfo/t/tty5410v1-w target=../a/att4410v1-w +hardlink path=usr/share/lib/terminfo/t/tty5420 target=../a/att4415 +hardlink path=usr/share/lib/terminfo/t/tty5420+nl target=../a/att4415+nl +hardlink path=usr/share/lib/terminfo/t/tty5420-nl target=../a/att4415-nl +hardlink path=usr/share/lib/terminfo/t/tty5420-rv target=../a/att4415-rv +hardlink path=usr/share/lib/terminfo/t/tty5420-rv-nl target=../a/att4415-rv-nl +hardlink path=usr/share/lib/terminfo/t/tty5420-w target=../a/att4415-w +hardlink path=usr/share/lib/terminfo/t/tty5420-w-nl target=../a/att4415-w-nl +hardlink path=usr/share/lib/terminfo/t/tty5420-w-rv target=../a/att4415-w-rv hardlink path=usr/share/lib/terminfo/t/tty5420-w-rv-n \ - target=../../../../../usr/share/lib/terminfo/4/4415-w-rv-nl -hardlink path=usr/share/lib/terminfo/t/tty5425 \ - target=../../../../../usr/share/lib/terminfo/4/4425 -hardlink path=usr/share/lib/terminfo/t/tty5425-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-fk -hardlink path=usr/share/lib/terminfo/t/tty5425-nl \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl -hardlink path=usr/share/lib/terminfo/t/tty5425-nl-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-nl-w -hardlink path=usr/share/lib/terminfo/t/tty5425-w \ - target=../../../../../usr/share/lib/terminfo/4/4425-w -hardlink path=usr/share/lib/terminfo/t/tty5425-w-fk \ - target=../../../../../usr/share/lib/terminfo/4/4425-w-fk -hardlink path=usr/share/lib/terminfo/t/tty5620 \ - target=../../../../../usr/share/lib/terminfo/5/5620 -hardlink path=usr/share/lib/terminfo/t/ttydmd \ - target=../../../../../usr/share/lib/terminfo/5/5620 -hardlink path=usr/share/lib/terminfo/t/tvi \ - target=../../../../../usr/share/lib/terminfo/9/912b -hardlink path=usr/share/lib/terminfo/t/tvi-2p \ - target=../../../../../usr/share/lib/terminfo/9/912-2p -hardlink path=usr/share/lib/terminfo/t/tvi910 \ - target=../../../../../usr/share/lib/terminfo/9/910 -hardlink path=usr/share/lib/terminfo/t/tvi910+ \ - target=../../../../../usr/share/lib/terminfo/9/910+ -hardlink path=usr/share/lib/terminfo/t/tvi912 \ - target=../../../../../usr/share/lib/terminfo/9/912 -hardlink path=usr/share/lib/terminfo/t/tvi912-2p \ - target=../../../../../usr/share/lib/terminfo/9/912-2p -hardlink path=usr/share/lib/terminfo/t/tvi9122p \ - target=../../../../../usr/share/lib/terminfo/9/9122p -hardlink path=usr/share/lib/terminfo/t/tvi912b \ - target=../../../../../usr/share/lib/terminfo/9/912b -hardlink path=usr/share/lib/terminfo/t/tvi912c \ - target=../../../../../usr/share/lib/terminfo/9/912b -hardlink path=usr/share/lib/terminfo/t/tvi912cc \ - target=../../../../../usr/share/lib/terminfo/9/912cc -hardlink path=usr/share/lib/terminfo/t/tvi920 \ - target=../../../../../usr/share/lib/terminfo/9/912 -hardlink path=usr/share/lib/terminfo/t/tvi920-2p \ - target=../../../../../usr/share/lib/terminfo/9/912-2p -hardlink path=usr/share/lib/terminfo/t/tvi9202p \ - target=../../../../../usr/share/lib/terminfo/9/9202p -hardlink path=usr/share/lib/terminfo/t/tvi920b \ - target=../../../../../usr/share/lib/terminfo/9/920b -hardlink path=usr/share/lib/terminfo/t/tvi920c \ - target=../../../../../usr/share/lib/terminfo/9/920b -hardlink path=usr/share/lib/terminfo/t/tvi925 \ - target=../../../../../usr/share/lib/terminfo/9/925 -hardlink path=usr/share/lib/terminfo/t/tvi950 \ - target=../../../../../usr/share/lib/terminfo/9/950 -hardlink path=usr/share/lib/terminfo/t/tvi950-2p \ - target=../../../../../usr/share/lib/terminfo/9/950-2p -hardlink path=usr/share/lib/terminfo/t/tvi950-4p \ - target=../../../../../usr/share/lib/terminfo/9/950-4p -hardlink path=usr/share/lib/terminfo/t/tvi950-rv \ - target=../../../../../usr/share/lib/terminfo/9/950-rv -hardlink path=usr/share/lib/terminfo/t/tvi950-rv-2p \ - target=../../../../../usr/share/lib/terminfo/9/950-rv-2p -hardlink path=usr/share/lib/terminfo/t/tvi950-rv-4p \ - target=../../../../../usr/share/lib/terminfo/9/950-rv-4p -hardlink path=usr/share/lib/terminfo/t/tvi9502p \ - target=../../../../../usr/share/lib/terminfo/9/9502p -hardlink path=usr/share/lib/terminfo/t/tvi9504p \ - target=../../../../../usr/share/lib/terminfo/9/9504p -hardlink path=usr/share/lib/terminfo/t/tvi950rv \ - target=../../../../../usr/share/lib/terminfo/9/950rv -hardlink path=usr/share/lib/terminfo/t/tvi950rv2p \ - target=../../../../../usr/share/lib/terminfo/9/950rv2p -hardlink path=usr/share/lib/terminfo/t/tvi950rv4p \ - target=../../../../../usr/share/lib/terminfo/9/950rv4p -hardlink path=usr/share/lib/terminfo/t/tvi970 \ - target=../../../../../usr/share/lib/terminfo/9/970 -hardlink path=usr/share/lib/terminfo/t/tvi970-ns \ - target=../../../../../usr/share/lib/terminfo/9/970-ns -hardlink path=usr/share/lib/terminfo/t/tvi970-r \ - target=../../../../../usr/share/lib/terminfo/9/970-r -hardlink path=usr/share/lib/terminfo/t/tvi970-rw \ - target=../../../../../usr/share/lib/terminfo/9/970-rw -hardlink path=usr/share/lib/terminfo/u/ubellchar \ - target=../../../../../usr/share/lib/terminfo/u/ubell -hardlink path=usr/share/lib/terminfo/u/unix_pc \ - target=../../../../../usr/share/lib/terminfo/7/7300 -hardlink path=usr/share/lib/terminfo/u/unixpc \ - target=../../../../../usr/share/lib/terminfo/7/7300 -hardlink path=usr/share/lib/terminfo/v/vc203 \ - target=../../../../../usr/share/lib/terminfo/v/vc103 -hardlink path=usr/share/lib/terminfo/v/vc303 \ - target=../../../../../usr/share/lib/terminfo/v/vc103 -hardlink path=usr/share/lib/terminfo/v/vc403a \ - target=../../../../../usr/share/lib/terminfo/v/vc303-a -hardlink path=usr/share/lib/terminfo/v/venix \ - target=../../../../../usr/share/lib/terminfo/p/pc-venix -hardlink path=usr/share/lib/terminfo/v/vic20 \ - target=../../../../../usr/share/lib/terminfo/v/vic -hardlink path=usr/share/lib/terminfo/v/viewpoint-90 \ - target=../../../../../usr/share/lib/terminfo/v/v90 -hardlink path=usr/share/lib/terminfo/v/virtual \ - target=../../../../../usr/share/lib/terminfo/c/cb-unix -hardlink path=usr/share/lib/terminfo/v/visual \ - target=../../../../../usr/share/lib/terminfo/v/vi200-f -hardlink path=usr/share/lib/terminfo/v/visual50 \ - target=../../../../../usr/share/lib/terminfo/v/vi50 -hardlink path=usr/share/lib/terminfo/v/vitty \ - target=../../../../../usr/share/lib/terminfo/b/blitlayer -hardlink path=usr/share/lib/terminfo/v/vk100 \ - target=../../../../../usr/share/lib/terminfo/g/gigi -hardlink path=usr/share/lib/terminfo/v/vt-102 \ - target=../../../../../usr/share/lib/terminfo/v/vt102 -hardlink path=usr/share/lib/terminfo/v/vt61 \ - target=../../../../../usr/share/lib/terminfo/v/vt-61 -hardlink path=usr/share/lib/terminfo/v/vt61.5 \ - target=../../../../../usr/share/lib/terminfo/v/vt-61 -hardlink path=usr/share/lib/terminfo/w/wy50 \ - target=../../../../../usr/share/lib/terminfo/w/wy-50 -hardlink path=usr/share/lib/terminfo/w/wy50-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-vb -hardlink path=usr/share/lib/terminfo/w/wy50-w \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-w -hardlink path=usr/share/lib/terminfo/w/wy50-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-wvb -hardlink path=usr/share/lib/terminfo/w/wy60-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy60-w-vb -hardlink path=usr/share/lib/terminfo/w/wy99gt-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-w-vb -hardlink path=usr/share/lib/terminfo/w/wyse-50 \ - target=../../../../../usr/share/lib/terminfo/w/wy-50 -hardlink path=usr/share/lib/terminfo/w/wyse-50-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-vb -hardlink path=usr/share/lib/terminfo/w/wyse-50-w \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-w -hardlink path=usr/share/lib/terminfo/w/wyse-50-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-wvb -hardlink path=usr/share/lib/terminfo/w/wyse-vp \ - target=../../../../../usr/share/lib/terminfo/w/wy50vp -hardlink path=usr/share/lib/terminfo/w/wyse-vp-nk \ - target=../../../../../usr/share/lib/terminfo/w/wy50vp-nk -hardlink path=usr/share/lib/terminfo/w/wyse30 \ - target=../../../../../usr/share/lib/terminfo/w/wy30 -hardlink path=usr/share/lib/terminfo/w/wyse30-mc \ - target=../../../../../usr/share/lib/terminfo/w/wy30-mc -hardlink path=usr/share/lib/terminfo/w/wyse30-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy30-vb -hardlink path=usr/share/lib/terminfo/w/wyse30p \ - target=../../../../../usr/share/lib/terminfo/w/wy30p -hardlink path=usr/share/lib/terminfo/w/wyse30p-mc \ - target=../../../../../usr/share/lib/terminfo/w/wy30p-mc -hardlink path=usr/share/lib/terminfo/w/wyse30p-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy30p-vb -hardlink path=usr/share/lib/terminfo/w/wyse50 \ - target=../../../../../usr/share/lib/terminfo/w/wy-50 -hardlink path=usr/share/lib/terminfo/w/wyse50-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-vb -hardlink path=usr/share/lib/terminfo/w/wyse50-w \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-w -hardlink path=usr/share/lib/terminfo/w/wyse50-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy-50-wvb -hardlink path=usr/share/lib/terminfo/w/wyse60 \ - target=../../../../../usr/share/lib/terminfo/w/wy60 -hardlink path=usr/share/lib/terminfo/w/wyse60-25 \ - target=../../../../../usr/share/lib/terminfo/w/wy60-25 -hardlink path=usr/share/lib/terminfo/w/wyse60-25-w \ - target=../../../../../usr/share/lib/terminfo/w/wy60-25-w -hardlink path=usr/share/lib/terminfo/w/wyse60-42 \ - target=../../../../../usr/share/lib/terminfo/w/wy60-42 -hardlink path=usr/share/lib/terminfo/w/wyse60-42-w \ - target=../../../../../usr/share/lib/terminfo/w/wy60-42-w -hardlink path=usr/share/lib/terminfo/w/wyse60-43 \ - target=../../../../../usr/share/lib/terminfo/w/wy60-43 -hardlink path=usr/share/lib/terminfo/w/wyse60-43-w \ - target=../../../../../usr/share/lib/terminfo/w/wy60-43-w -hardlink path=usr/share/lib/terminfo/w/wyse60-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy60-vb -hardlink path=usr/share/lib/terminfo/w/wyse60-w \ - target=../../../../../usr/share/lib/terminfo/w/wy60-w -hardlink path=usr/share/lib/terminfo/w/wyse60-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy60-w-vb -hardlink path=usr/share/lib/terminfo/w/wyse75 \ - target=../../../../../usr/share/lib/terminfo/w/wy75 -hardlink path=usr/share/lib/terminfo/w/wyse75-mc \ - target=../../../../../usr/share/lib/terminfo/w/wy75-mc -hardlink path=usr/share/lib/terminfo/w/wyse75-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy75-vb -hardlink path=usr/share/lib/terminfo/w/wyse75-w \ - target=../../../../../usr/share/lib/terminfo/w/wy75-w -hardlink path=usr/share/lib/terminfo/w/wyse75-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy75-wvb -hardlink path=usr/share/lib/terminfo/w/wyse85 \ - target=../../../../../usr/share/lib/terminfo/w/wy85 -hardlink path=usr/share/lib/terminfo/w/wyse85-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy85-vb -hardlink path=usr/share/lib/terminfo/w/wyse85-w \ - target=../../../../../usr/share/lib/terminfo/w/wy85-w -hardlink path=usr/share/lib/terminfo/w/wyse85-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy85-wvb -hardlink path=usr/share/lib/terminfo/w/wyse925 \ - target=../../../../../usr/share/lib/terminfo/w/wy925 -hardlink path=usr/share/lib/terminfo/w/wyse99gt \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt -hardlink path=usr/share/lib/terminfo/w/wyse99gt-25 \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-25 -hardlink path=usr/share/lib/terminfo/w/wyse99gt-25-w \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-25-w -hardlink path=usr/share/lib/terminfo/w/wyse99gt-vb \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-vb -hardlink path=usr/share/lib/terminfo/w/wyse99gt-w \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-w -hardlink path=usr/share/lib/terminfo/w/wyse99gt-wvb \ - target=../../../../../usr/share/lib/terminfo/w/wy99gt-w-vb -hardlink path=usr/share/lib/terminfo/x/x1700 \ - target=../../../../../usr/share/lib/terminfo/1/1700 -hardlink path=usr/share/lib/terminfo/x/x1720 \ - target=../../../../../usr/share/lib/terminfo/1/1700 -hardlink path=usr/share/lib/terminfo/x/x1750 \ - target=../../../../../usr/share/lib/terminfo/1/1700 -hardlink path=usr/share/lib/terminfo/x/x820 \ - target=../../../../../usr/share/lib/terminfo/8/820 -hardlink path=usr/share/lib/terminfo/y/ya \ - target=../../../../../usr/share/lib/terminfo/t/t16 -hardlink path=usr/share/lib/terminfo/z/z19 \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/z/z29b \ - target=../../../../../usr/share/lib/terminfo/z/z29 -hardlink path=usr/share/lib/terminfo/z/zen30 \ - target=../../../../../usr/share/lib/terminfo/z/z30 -hardlink path=usr/share/lib/terminfo/z/zenith \ - target=../../../../../usr/share/lib/terminfo/h/h19 -hardlink path=usr/share/lib/terminfo/z/zenith29 \ - target=../../../../../usr/share/lib/terminfo/z/z29 + target=../a/att4415-w-rv-n +hardlink path=usr/share/lib/terminfo/t/tty5425 target=../a/att5425 +hardlink path=usr/share/lib/terminfo/t/tty5425-nl target=../a/att5425-nl +hardlink path=usr/share/lib/terminfo/t/tty5425-w target=../a/att5425-w +hardlink path=usr/share/lib/terminfo/t/tty5620 target=../a/att5620 +hardlink path=usr/share/lib/terminfo/t/tty5620-1 target=../a/att5620-1 +hardlink path=usr/share/lib/terminfo/t/tty5620-24 target=../a/att5620-24 +hardlink path=usr/share/lib/terminfo/t/tty5620-34 target=../a/att5620-34 +hardlink path=usr/share/lib/terminfo/t/tty5620-s target=../a/att5620-s +hardlink path=usr/share/lib/terminfo/t/ttydmd target=../a/att5620 +hardlink path=usr/share/lib/terminfo/t/tvi912b-mc-2p target=../t/tvi912b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi912b-mc-vb target=../t/tvi912b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi912b-p-2p target=../t/tvi912b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi912b-p-vb target=../t/tvi912b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi912b-unk-2p \ + target=../t/tvi912b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi912b-unk-vb \ + target=../t/tvi912b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tvi912c target=../t/tvi912b +hardlink path=usr/share/lib/terminfo/t/tvi912c-2p target=../t/tvi912b-2p +hardlink path=usr/share/lib/terminfo/t/tvi912c-2p-mc target=../t/tvi912b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi912c-2p-p target=../t/tvi912b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi912c-2p-unk \ + target=../t/tvi912b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi912c-mc target=../t/tvi912b-mc +hardlink path=usr/share/lib/terminfo/t/tvi912c-mc-2p target=../t/tvi912b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi912c-mc-vb target=../t/tvi912b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi912c-p target=../t/tvi912b-p +hardlink path=usr/share/lib/terminfo/t/tvi912c-p-2p target=../t/tvi912b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi912c-p-vb target=../t/tvi912b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi912c-unk target=../t/tvi912b-unk +hardlink path=usr/share/lib/terminfo/t/tvi912c-unk-2p \ + target=../t/tvi912b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi912c-unk-vb \ + target=../t/tvi912b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tvi912c-vb target=../t/tvi912b-vb +hardlink path=usr/share/lib/terminfo/t/tvi912c-vb-mc target=../t/tvi912b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi912c-vb-p target=../t/tvi912b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi912c-vb-unk \ + target=../t/tvi912b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tvi914 target=../t/tvi912 +hardlink path=usr/share/lib/terminfo/t/tvi920 target=../t/tvi912 +hardlink path=usr/share/lib/terminfo/t/tvi920b-mc-2p target=../t/tvi920b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi920b-mc-vb target=../t/tvi920b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi920b-p-2p target=../t/tvi920b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi920b-p-vb target=../t/tvi920b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi920b-unk-2p \ + target=../t/tvi920b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi920b-unk-vb \ + target=../t/tvi920b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tvi920c target=../t/tvi920b +hardlink path=usr/share/lib/terminfo/t/tvi920c-2p target=../t/tvi920b-2p +hardlink path=usr/share/lib/terminfo/t/tvi920c-2p-mc target=../t/tvi920b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi920c-2p-p target=../t/tvi920b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi920c-2p-unk \ + target=../t/tvi920b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi920c-mc target=../t/tvi920b-mc +hardlink path=usr/share/lib/terminfo/t/tvi920c-mc-2p target=../t/tvi920b-2p-mc +hardlink path=usr/share/lib/terminfo/t/tvi920c-mc-vb target=../t/tvi920b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi920c-p target=../t/tvi920b-p +hardlink path=usr/share/lib/terminfo/t/tvi920c-p-2p target=../t/tvi920b-2p-p +hardlink path=usr/share/lib/terminfo/t/tvi920c-p-vb target=../t/tvi920b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi920c-unk target=../t/tvi920b-unk +hardlink path=usr/share/lib/terminfo/t/tvi920c-unk-2p \ + target=../t/tvi920b-2p-unk +hardlink path=usr/share/lib/terminfo/t/tvi920c-unk-vb \ + target=../t/tvi920b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tvi920c-vb target=../t/tvi920b-vb +hardlink path=usr/share/lib/terminfo/t/tvi920c-vb-mc target=../t/tvi920b-vb-mc +hardlink path=usr/share/lib/terminfo/t/tvi920c-vb-p target=../t/tvi920b-vb-p +hardlink path=usr/share/lib/terminfo/t/tvi920c-vb-unk \ + target=../t/tvi920b-vb-unk +hardlink path=usr/share/lib/terminfo/t/tw52-color target=../t/tw52 +hardlink path=usr/share/lib/terminfo/u/ultima2 target=../i/ims-ansi +hardlink path=usr/share/lib/terminfo/u/ultimaII target=../i/ims-ansi +hardlink path=usr/share/lib/terminfo/u/uniterm49 target=../u/uniterm +hardlink path=usr/share/lib/terminfo/u/unixpc target=../a/att7300 +hardlink path=usr/share/lib/terminfo/v/v200-nam target=../v/vt220-nam +hardlink path=usr/share/lib/terminfo/v/v320n target=../v/vt320nam +hardlink path=usr/share/lib/terminfo/v/vapple target=../a/apple-videx3 +hardlink path=usr/share/lib/terminfo/v/vc103 target=../v/vc303 +hardlink path=usr/share/lib/terminfo/v/vc203 target=../v/vc303 +hardlink path=usr/share/lib/terminfo/v/vc403a target=../v/vc303a +hardlink path=usr/share/lib/terminfo/v/vc414h target=../v/vc414 +hardlink path=usr/share/lib/terminfo/v/venix target=../p/pc-venix +hardlink path=usr/share/lib/terminfo/v/viewpoint3a+ target=../v/vp3a+ +hardlink path=usr/share/lib/terminfo/v/viewpoint60 target=../v/vp60 +hardlink path=usr/share/lib/terminfo/v/viewpoint90 target=../v/vp90 +hardlink path=usr/share/lib/terminfo/v/vip7800-H target=../v/vip-H +hardlink path=usr/share/lib/terminfo/v/vip7800-Hw target=../v/vip-Hw +hardlink path=usr/share/lib/terminfo/v/vip7800-w target=../v/vip-w +hardlink path=usr/share/lib/terminfo/v/visual603 target=../v/vi603 +hardlink path=usr/share/lib/terminfo/v/vitty target=../a/att5620-s +hardlink path=usr/share/lib/terminfo/v/vk100 target=../g/gigi +hardlink path=usr/share/lib/terminfo/v/vs100 target=../x/xterm-24 +hardlink path=usr/share/lib/terminfo/v/vs100-x10 target=../x/x10term +hardlink path=usr/share/lib/terminfo/v/vt-61 target=../v/vt61 +hardlink path=usr/share/lib/terminfo/v/vt-utf8 target=../m/ms-vt-utf8 +hardlink path=usr/share/lib/terminfo/v/vt100+ target=../m/ms-vt100+ +hardlink path=usr/share/lib/terminfo/v/vt100-am target=../v/vt100 +hardlink path=usr/share/lib/terminfo/v/vt100-bm target=../n/nwp512 +hardlink path=usr/share/lib/terminfo/v/vt100-bm-o target=../n/nwp512-o +hardlink path=usr/share/lib/terminfo/v/vt100-bot-s target=../v/vt100-s-bot +hardlink path=usr/share/lib/terminfo/v/vt100-nam target=../v/vt100nam +hardlink path=usr/share/lib/terminfo/v/vt100-nam-w target=../v/vt100-w-nam +hardlink path=usr/share/lib/terminfo/v/vt100-s-top target=../v/vt100-s +hardlink path=usr/share/lib/terminfo/v/vt100-top-s target=../v/vt100-s +hardlink path=usr/share/lib/terminfo/v/vt100-w-am target=../v/vt100-w +hardlink path=usr/share/lib/terminfo/v/vt100-w-nav target=../v/vt100-nav-w +hardlink path=usr/share/lib/terminfo/v/vt200 target=../v/vt220 +hardlink path=usr/share/lib/terminfo/v/vt200-8 target=../v/vt220-8bit +hardlink path=usr/share/lib/terminfo/v/vt200-8bit target=../v/vt220-8bit +hardlink path=usr/share/lib/terminfo/v/vt200-old target=../v/vt220-old +hardlink path=usr/share/lib/terminfo/v/vt200-w target=../v/vt220-w +hardlink path=usr/share/lib/terminfo/v/vt220-8 target=../v/vt220-8bit +hardlink path=usr/share/lib/terminfo/v/vt220-js target=../v/vt200-js +hardlink path=usr/share/lib/terminfo/v/vt300 target=../v/vt320 +hardlink path=usr/share/lib/terminfo/v/vt300-nam target=../v/vt320-nam +hardlink path=usr/share/lib/terminfo/v/vt300-w target=../v/vt320-w +hardlink path=usr/share/lib/terminfo/v/vt300-w-nam target=../v/vt320-w-nam +hardlink path=usr/share/lib/terminfo/v/vt330 target=../v/vt340 +hardlink path=usr/share/lib/terminfo/v/vt400-24 target=../v/vt400 +hardlink path=usr/share/lib/terminfo/v/vt61.5 target=../v/vt61 +hardlink path=usr/share/lib/terminfo/v/vtnt target=../m/ms-vt100-color +hardlink path=usr/share/lib/terminfo/v/vv100 target=../m/mvterm +hardlink path=usr/share/lib/terminfo/w/wren target=../p/pt100 +hardlink path=usr/share/lib/terminfo/w/wrenw target=../p/pt100w +hardlink path=usr/share/lib/terminfo/w/wy-75ap target=../w/wy75ap +hardlink path=usr/share/lib/terminfo/w/wy-99fgt target=../w/wy99f +hardlink path=usr/share/lib/terminfo/w/wy-99fgta target=../w/wy99fa +hardlink path=usr/share/lib/terminfo/w/wy120-wvb target=../w/wy120-w-vb +hardlink path=usr/share/lib/terminfo/w/wy150 target=../w/wy120 +hardlink path=usr/share/lib/terminfo/w/wy150-25 target=../w/wy120-25 +hardlink path=usr/share/lib/terminfo/w/wy150-25-w target=../w/wy120-25-w +hardlink path=usr/share/lib/terminfo/w/wy150-vb target=../w/wy120-vb +hardlink path=usr/share/lib/terminfo/w/wy150-w target=../w/wy120-w +hardlink path=usr/share/lib/terminfo/w/wy150-w-vb target=../w/wy120-w-vb +hardlink path=usr/share/lib/terminfo/w/wy160-wvb target=../w/wy160-w-vb +hardlink path=usr/share/lib/terminfo/w/wy325-42wvb target=../w/wy325-42w-vb +hardlink path=usr/share/lib/terminfo/w/wy325-43wvb target=../w/wy325-43w-vb +hardlink path=usr/share/lib/terminfo/w/wy325-80 target=../w/wy325-25 +hardlink path=usr/share/lib/terminfo/w/wy325-wvb target=../w/wy325-w-vb +hardlink path=usr/share/lib/terminfo/w/wy325w-24 target=../w/wy325-w +hardlink path=usr/share/lib/terminfo/w/wy370-101k target=../w/wy370 +hardlink path=usr/share/lib/terminfo/w/wy60-316X target=../i/ibm3161 +hardlink path=usr/share/lib/terminfo/w/wy60-AT target=../i/ibm5151 +hardlink path=usr/share/lib/terminfo/w/wy60-PC target=../i/ibmpc +hardlink path=usr/share/lib/terminfo/w/wy60-wvb target=../w/wy60-w-vb +hardlink path=usr/share/lib/terminfo/w/wy99fgt target=../w/wy99f +hardlink path=usr/share/lib/terminfo/w/wy99fgta target=../w/wy99fa +hardlink path=usr/share/lib/terminfo/w/wy99gt-wvb target=../w/wy99gt-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse-325 target=../w/wy325-25 +hardlink path=usr/share/lib/terminfo/w/wyse-75ap target=../w/wy75ap +hardlink path=usr/share/lib/terminfo/w/wyse120 target=../w/wy120 +hardlink path=usr/share/lib/terminfo/w/wyse120-25 target=../w/wy120-25 +hardlink path=usr/share/lib/terminfo/w/wyse120-25-w target=../w/wy120-25-w +hardlink path=usr/share/lib/terminfo/w/wyse120-vb target=../w/wy120-vb +hardlink path=usr/share/lib/terminfo/w/wyse120-w target=../w/wy120-w +hardlink path=usr/share/lib/terminfo/w/wyse120-wvb target=../w/wy120-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse150 target=../w/wy120 +hardlink path=usr/share/lib/terminfo/w/wyse150-25 target=../w/wy120-25 +hardlink path=usr/share/lib/terminfo/w/wyse150-25-w target=../w/wy120-25-w +hardlink path=usr/share/lib/terminfo/w/wyse150-vb target=../w/wy120-vb +hardlink path=usr/share/lib/terminfo/w/wyse150-w target=../w/wy120-w +hardlink path=usr/share/lib/terminfo/w/wyse150-w-vb target=../w/wy120-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse160 target=../w/wy160 +hardlink path=usr/share/lib/terminfo/w/wyse160-25 target=../w/wy160-25 +hardlink path=usr/share/lib/terminfo/w/wyse160-25-w target=../w/wy160-25-w +hardlink path=usr/share/lib/terminfo/w/wyse160-42 target=../w/wy160-42 +hardlink path=usr/share/lib/terminfo/w/wyse160-42-w target=../w/wy160-42-w +hardlink path=usr/share/lib/terminfo/w/wyse160-43 target=../w/wy160-43 +hardlink path=usr/share/lib/terminfo/w/wyse160-43-w target=../w/wy160-43-w +hardlink path=usr/share/lib/terminfo/w/wyse160-vb target=../w/wy160-vb +hardlink path=usr/share/lib/terminfo/w/wyse160-w target=../w/wy160-w +hardlink path=usr/share/lib/terminfo/w/wyse160-wvb target=../w/wy160-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse185 target=../w/wy185 +hardlink path=usr/share/lib/terminfo/w/wyse185-24 target=../w/wy185-24 +hardlink path=usr/share/lib/terminfo/w/wyse185-vb target=../w/wy185-vb +hardlink path=usr/share/lib/terminfo/w/wyse185-w target=../w/wy185-w +hardlink path=usr/share/lib/terminfo/w/wyse185-wvb target=../w/wy185-wvb +hardlink path=usr/share/lib/terminfo/w/wyse30 target=../w/wy30 +hardlink path=usr/share/lib/terminfo/w/wyse30-mc target=../w/wy30-mc +hardlink path=usr/share/lib/terminfo/w/wyse30-vb target=../w/wy30-vb +hardlink path=usr/share/lib/terminfo/w/wyse325 target=../w/wy325 +hardlink path=usr/share/lib/terminfo/w/wyse325-25 target=../w/wy325-25 +hardlink path=usr/share/lib/terminfo/w/wyse325-25w target=../w/wy325-25w +hardlink path=usr/share/lib/terminfo/w/wyse325-42 target=../w/wy325-42 +hardlink path=usr/share/lib/terminfo/w/wyse325-42w target=../w/wy325-42w +hardlink path=usr/share/lib/terminfo/w/wyse325-43 target=../w/wy325-43 +hardlink path=usr/share/lib/terminfo/w/wyse325-43w target=../w/wy325-43w +hardlink path=usr/share/lib/terminfo/w/wyse325-vb target=../w/wy325-vb +hardlink path=usr/share/lib/terminfo/w/wyse325-w target=../w/wy325-w +hardlink path=usr/share/lib/terminfo/w/wyse325-wvb target=../w/wy325-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse350 target=../w/wy350 +hardlink path=usr/share/lib/terminfo/w/wyse350-vb target=../w/wy350-vb +hardlink path=usr/share/lib/terminfo/w/wyse350-w target=../w/wy350-w +hardlink path=usr/share/lib/terminfo/w/wyse350-wvb target=../w/wy350-wvb +hardlink path=usr/share/lib/terminfo/w/wyse370 target=../w/wy370 +hardlink path=usr/share/lib/terminfo/w/wyse50 target=../w/wy50 +hardlink path=usr/share/lib/terminfo/w/wyse50-mc target=../w/wy50-mc +hardlink path=usr/share/lib/terminfo/w/wyse50-vb target=../w/wy50-vb +hardlink path=usr/share/lib/terminfo/w/wyse50-w target=../w/wy50-w +hardlink path=usr/share/lib/terminfo/w/wyse50-wvb target=../w/wy50-wvb +hardlink path=usr/share/lib/terminfo/w/wyse520 target=../w/wy520 +hardlink path=usr/share/lib/terminfo/w/wyse520-24 target=../w/wy520-24 +hardlink path=usr/share/lib/terminfo/w/wyse520-36 target=../w/wy520-36 +hardlink path=usr/share/lib/terminfo/w/wyse520-36pc target=../w/wy520-36pc +hardlink path=usr/share/lib/terminfo/w/wyse520-36w target=../w/wy520-36w +hardlink path=usr/share/lib/terminfo/w/wyse520-36wpc target=../w/wy520-36wpc +hardlink path=usr/share/lib/terminfo/w/wyse520-48 target=../w/wy520-48 +hardlink path=usr/share/lib/terminfo/w/wyse520-48pc target=../w/wy520-48pc +hardlink path=usr/share/lib/terminfo/w/wyse520-48w target=../w/wy520-48w +hardlink path=usr/share/lib/terminfo/w/wyse520-48wpc target=../w/wy520-48wpc +hardlink path=usr/share/lib/terminfo/w/wyse520-epc target=../w/wy520-epc +hardlink path=usr/share/lib/terminfo/w/wyse520-epc-w target=../w/wy520-epc-w +hardlink path=usr/share/lib/terminfo/w/wyse520-p-wvb target=../w/wy520-epc-wvb +hardlink path=usr/share/lib/terminfo/w/wyse520-pc-24 target=../w/wy520-epc-24 +hardlink path=usr/share/lib/terminfo/w/wyse520-pc-vb target=../w/wy520-epc-vb +hardlink path=usr/share/lib/terminfo/w/wyse520-vb target=../w/wy520-vb +hardlink path=usr/share/lib/terminfo/w/wyse520-w target=../w/wy520-w +hardlink path=usr/share/lib/terminfo/w/wyse520-wvb target=../w/wy520-wvb +hardlink path=usr/share/lib/terminfo/w/wyse60 target=../w/wy60 +hardlink path=usr/share/lib/terminfo/w/wyse60-25 target=../w/wy60-25 +hardlink path=usr/share/lib/terminfo/w/wyse60-25-w target=../w/wy60-25-w +hardlink path=usr/share/lib/terminfo/w/wyse60-316X target=../i/ibm3161 +hardlink path=usr/share/lib/terminfo/w/wyse60-42 target=../w/wy60-42 +hardlink path=usr/share/lib/terminfo/w/wyse60-42-w target=../w/wy60-42-w +hardlink path=usr/share/lib/terminfo/w/wyse60-43 target=../w/wy60-43 +hardlink path=usr/share/lib/terminfo/w/wyse60-43-w target=../w/wy60-43-w +hardlink path=usr/share/lib/terminfo/w/wyse60-AT target=../i/ibm5151 +hardlink path=usr/share/lib/terminfo/w/wyse60-PC target=../i/ibmpc +hardlink path=usr/share/lib/terminfo/w/wyse60-vb target=../w/wy60-vb +hardlink path=usr/share/lib/terminfo/w/wyse60-w target=../w/wy60-w +hardlink path=usr/share/lib/terminfo/w/wyse60-wvb target=../w/wy60-w-vb +hardlink path=usr/share/lib/terminfo/w/wyse75 target=../w/wy75 +hardlink path=usr/share/lib/terminfo/w/wyse75-mc target=../w/wy75-mc +hardlink path=usr/share/lib/terminfo/w/wyse75-vb target=../w/wy75-vb +hardlink path=usr/share/lib/terminfo/w/wyse75-w target=../w/wy75-w +hardlink path=usr/share/lib/terminfo/w/wyse75-wvb target=../w/wy75-wvb +hardlink path=usr/share/lib/terminfo/w/wyse75ap target=../w/wy75ap +hardlink path=usr/share/lib/terminfo/w/wyse85 target=../w/wy85 +hardlink path=usr/share/lib/terminfo/w/wyse85-8bit target=../w/wy85-8bit +hardlink path=usr/share/lib/terminfo/w/wyse85-vb target=../w/wy85-vb +hardlink path=usr/share/lib/terminfo/w/wyse85-w target=../w/wy85-w +hardlink path=usr/share/lib/terminfo/w/wyse85-wvb target=../w/wy85-wvb +hardlink path=usr/share/lib/terminfo/w/wyse99gt target=../w/wy99gt +hardlink path=usr/share/lib/terminfo/w/wyse99gt-25 target=../w/wy99gt-25 +hardlink path=usr/share/lib/terminfo/w/wyse99gt-25-w target=../w/wy99gt-25-w +hardlink path=usr/share/lib/terminfo/w/wyse99gt-vb target=../w/wy99gt-vb +hardlink path=usr/share/lib/terminfo/w/wyse99gt-w target=../w/wy99gt-w +hardlink path=usr/share/lib/terminfo/w/wyse99gt-wvb target=../w/wy99gt-w-vb +hardlink path=usr/share/lib/terminfo/x/x1700 target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/x/x1700-lm target=../d/diablo1740-lm +hardlink path=usr/share/lib/terminfo/x/x1720 target=../x/xerox1720 +hardlink path=usr/share/lib/terminfo/x/x1750 target=../x/xerox1720 +hardlink path=usr/share/lib/terminfo/x/x68k-ite target=../x/x68k +hardlink path=usr/share/lib/terminfo/x/x820 target=../x/xerox820 +hardlink path=usr/share/lib/terminfo/x/xdku target=../t/tws2103 +hardlink path=usr/share/lib/terminfo/x/xenix target=../i/ibmpcx +hardlink path=usr/share/lib/terminfo/x/xerox target=../d/diablo1640 +hardlink path=usr/share/lib/terminfo/x/xerox-lm target=../d/diablo1640-lm +hardlink path=usr/share/lib/terminfo/x/xl83 target=../c/cyb83 +hardlink path=usr/share/lib/terminfo/x/xterm-old target=../x/xterm-r6 +hardlink path=usr/share/lib/terminfo/x/xterms target=../x/xterm-24 +hardlink path=usr/share/lib/terminfo/x/xwsh target=../i/iris-color +hardlink path=usr/share/lib/terminfo/z/z-100 target=../z/z100 +hardlink path=usr/share/lib/terminfo/z/z-100bw target=../z/z100bw +hardlink path=usr/share/lib/terminfo/z/z110 target=../z/z100 +hardlink path=usr/share/lib/terminfo/z/z110bw target=../z/z100bw +hardlink path=usr/share/lib/terminfo/z/z19 target=../h/h19 +hardlink path=usr/share/lib/terminfo/z/z29a-kc-bc target=../z/z29a +hardlink path=usr/share/lib/terminfo/z/z29b target=../z/z29 +hardlink path=usr/share/lib/terminfo/z/z30 target=../z/zen30 +hardlink path=usr/share/lib/terminfo/z/z39a target=../z/z39-a +hardlink path=usr/share/lib/terminfo/z/z50 target=../z/zen50 +hardlink path=usr/share/lib/terminfo/z/z8001 target=../c/cci +hardlink path=usr/share/lib/terminfo/z/zen8001 target=../c/cci +hardlink path=usr/share/lib/terminfo/z/zenith target=../h/h19 +hardlink path=usr/share/lib/terminfo/z/zenith29 target=../z/z29 +hardlink path=usr/share/lib/terminfo/z/zenith39-a target=../z/z39-a +hardlink path=usr/share/lib/terminfo/z/zenith39-ansi target=../z/z39-a +hardlink path=usr/share/lib/terminfo/z/zt-1 target=../z/ztx +hardlink path=usr/share/lib/terminfo/z/ztx-1-a target=../z/ztx +hardlink path=usr/share/lib/terminfo/z/ztx11 target=../z/ztx legacy pkg=SUNWter \ desc="extensive terminfo database entries describing capabilities of terminals and pseudoterminals" \ name="Terminal Information" +license cr_Sun license=cr_Sun +license lic_CDDL license=lic_CDDL license usr/src/cmd/terminfo/THIRDPARTYLICENSE \ license=usr/src/cmd/terminfo/THIRDPARTYLICENSE link path=usr/lib/tabset target=../share/lib/tabset diff --git a/usr/src/pkg/manifests/system-dtrace-tests.mf b/usr/src/pkg/manifests/system-dtrace-tests.mf index 41f730a6d6..968dde6851 100644 --- a/usr/src/pkg/manifests/system-dtrace-tests.mf +++ b/usr/src/pkg/manifests/system-dtrace-tests.mf @@ -128,6 +128,7 @@ file path=opt/SUNWdtrt/bin/badioctl mode=0555 file path=opt/SUNWdtrt/bin/chkargs mode=0555 file path=opt/SUNWdtrt/bin/dstyle mode=0555 file path=opt/SUNWdtrt/bin/dtest mode=0555 +file path=opt/SUNWdtrt/bin/dtfailures mode=0555 file path=opt/SUNWdtrt/bin/exception.lst mode=0444 file path=opt/SUNWdtrt/bin/jdtrace mode=0555 file path=opt/SUNWdtrt/lib/java/jdtrace.jar @@ -747,6 +748,8 @@ file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_ARG.copyoutbadarg.d \ file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_ARG.mobadarg.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_ARG.raisebadarg.d \ mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_ARG.tolower.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_ARG.toupper.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.allocanoarg.d \ mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.badbreakpoint.d \ @@ -773,6 +776,12 @@ file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.panicbadarg.d \ file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.progenyofbad2.d \ mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.stopbadarg.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.tolower.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.tolowertoomany.d \ + mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.toupper.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/err.D_PROTO_LEN.touppertoomany.d \ + mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_STRINGOF_TYPE.badstringof.d \ mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/err.D_VAR_UNDEF.badvar.d mode=0444 @@ -819,6 +828,8 @@ file path=opt/SUNWdtrt/tst/common/funcs/tst.inet_ntop.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.inet_ntop.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.lltostr.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.lltostr.d.out mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/tst.lltostrbase.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/tst.lltostrbase.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.mutex_owned.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.mutex_owner.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.mutex_type_adaptive.d mode=0444 @@ -839,6 +850,8 @@ file path=opt/SUNWdtrt/tst/common/funcs/tst.substrminate.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.substrminate.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.system.d mode=0444 file path=opt/SUNWdtrt/tst/common/funcs/tst.system.d.out mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/tst.tolower.d mode=0444 +file path=opt/SUNWdtrt/tst/common/funcs/tst.toupper.d mode=0444 file path=opt/SUNWdtrt/tst/common/grammar/err.D_ADDROF_LVAL.d mode=0444 file path=opt/SUNWdtrt/tst/common/grammar/err.D_EMPTY.empty.d mode=0444 file path=opt/SUNWdtrt/tst/common/grammar/tst.clauses.d mode=0444 @@ -1299,7 +1312,10 @@ file path=opt/SUNWdtrt/tst/common/printf/tst.widths1.d mode=0444 file path=opt/SUNWdtrt/tst/common/printf/tst.wp.d mode=0444 file path=opt/SUNWdtrt/tst/common/printf/tst.wp.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/privs/tst.func_access.ksh mode=0444 +file path=opt/SUNWdtrt/tst/common/privs/tst.noprivdrop.ksh mode=0444 +file path=opt/SUNWdtrt/tst/common/privs/tst.noprivrestrict.ksh mode=0444 file path=opt/SUNWdtrt/tst/common/privs/tst.op_access.ksh mode=0444 +file path=opt/SUNWdtrt/tst/common/privs/tst.tick.ksh mode=0444 file path=opt/SUNWdtrt/tst/common/privs/tst.unpriv_funcs.ksh mode=0444 file path=opt/SUNWdtrt/tst/common/probes/err.D_PDESC_ZERO.probeqtn.d mode=0444 file path=opt/SUNWdtrt/tst/common/probes/err.D_PDESC_ZERO.probestar.d \ @@ -1528,6 +1544,8 @@ file path=opt/SUNWdtrt/tst/common/sizeof/err.D_IDENT_BADREF.SizeofAssoc.d \ mode=0444 file path=opt/SUNWdtrt/tst/common/sizeof/err.D_IDENT_UNDEF.UnknownSymbol.d \ mode=0444 +file path=opt/SUNWdtrt/tst/common/sizeof/err.D_SIZEOF_TYPE.badstruct.d \ + mode=0444 file path=opt/SUNWdtrt/tst/common/sizeof/err.D_SIZEOF_TYPE.d mode=0444 file path=opt/SUNWdtrt/tst/common/sizeof/err.D_SYNTAX.SizeofBadType.d \ mode=0444 @@ -1742,14 +1760,19 @@ file path=opt/SUNWdtrt/tst/common/trace/tst.qstring.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/trace/tst.string.d mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/err.D_PROTO_ARG.badsize.d mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/err.D_PROTO_LEN.toofew.d mode=0444 -file path=opt/SUNWdtrt/tst/common/tracemem/err.D_PROTO_LEN.toomany.d mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/err.D_TRACEMEM_ADDR.badaddr.d \ mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/err.D_TRACEMEM_ARGS.d mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/err.D_TRACEMEM_DYNSIZE.d mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/err.D_TRACEMEM_SIZE.negsize.d \ mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/err.D_TRACEMEM_SIZE.zerosize.d \ mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/tst.dynsize.d mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/tst.dynsize.d.out mode=0444 file path=opt/SUNWdtrt/tst/common/tracemem/tst.rootvp.d mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/tst.smallsize.d mode=0444 +file path=opt/SUNWdtrt/tst/common/tracemem/tst.smallsize.d.out mode=0444 file \ path=opt/SUNWdtrt/tst/common/translators/err.D_DECL_TYPERED.BadTransDecl.d \ mode=0444 diff --git a/usr/src/tools/env/illumos.sh b/usr/src/tools/env/illumos.sh index e3ec47ec5f..24475d0d37 100644 --- a/usr/src/tools/env/illumos.sh +++ b/usr/src/tools/env/illumos.sh @@ -143,14 +143,17 @@ export ON_CRYPTO_BINS="$CODEMGR_WS/on-crypto.$MACH.tar.bz2" # export REF_PROTO_LIST="$PARENT_WS/usr/src/proto_list_${MACH}" + +export ROOT="$CODEMGR_WS/proto/root_${MACH}" +export SRC="$CODEMGR_WS/usr/src" +export MULTI_PROTO="no" + # # build environment variables, including version info for mcs, motd, # motd, uname and boot messages. Mostly you shouldn't change this except # when the release slips (nah) or you move an environment file to a new # release # -export ROOT="$CODEMGR_WS/proto/root_${MACH}" -export SRC="$CODEMGR_WS/usr/src" export VERSION="$GATE" # diff --git a/usr/src/uts/Makefile.uts b/usr/src/uts/Makefile.uts index ce51bdef92..61ce96b688 100644 --- a/usr/src/uts/Makefile.uts +++ b/usr/src/uts/Makefile.uts @@ -21,6 +21,7 @@ # # Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # @@ -150,7 +151,7 @@ LHEAD = $(ECHO) "\n$@"; # Note: egrep returns "failure" if there are no matches, which is # exactly the opposite of what we need. -LGREP.2 = if egrep -v ' (_init|_fini|_info|_depends_on) '; then false; else true; fi +LGREP.2 = if egrep -v ' (_init|_fini|_info) '; then false; else true; fi LTAIL = diff --git a/usr/src/uts/common/c2/audit_event.c b/usr/src/uts/common/c2/audit_event.c index 81ee3e7f69..3ca2c75070 100644 --- a/usr/src/uts/common/c2/audit_event.c +++ b/usr/src/uts/common/c2/audit_event.c @@ -21,6 +21,7 @@ /* * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -77,9 +78,6 @@ #include <sys/ddi.h> #include <sys/port_impl.h> - -char _depends_on[] = "fs/sockfs"; - static au_event_t aui_fchownat(au_event_t); static au_event_t aui_fchmodat(au_event_t); static au_event_t aui_open(au_event_t); diff --git a/usr/src/uts/common/cpr/cpr_mod.c b/usr/src/uts/common/cpr/cpr_mod.c index 901d21bceb..23f9d69f48 100644 --- a/usr/src/uts/common/cpr/cpr_mod.c +++ b/usr/src/uts/common/cpr/cpr_mod.c @@ -21,6 +21,7 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -66,8 +67,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlmisc, NULL }; -char _depends_on[] = "misc/bootdev"; /* i_devname_to_promname() */ - int cpr_reusable_mode; kmutex_t cpr_slock; /* cpr serial lock */ diff --git a/usr/src/uts/common/disp/ia.c b/usr/src/uts/common/disp/ia.c index 982035d9b9..63ddbe5485 100644 --- a/usr/src/uts/common/disp/ia.c +++ b/usr/src/uts/common/disp/ia.c @@ -21,10 +21,9 @@ /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/param.h> #include <sys/class.h> @@ -50,10 +49,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlsched, NULL }; -#ifndef lint -char _depends_on[] = "sched/TS"; -#endif - int _init() { diff --git a/usr/src/uts/common/dtrace/dcpc.c b/usr/src/uts/common/dtrace/dcpc.c index d4ca1d308b..8fd96cc24c 100644 --- a/usr/src/uts/common/dtrace/dcpc.c +++ b/usr/src/uts/common/dtrace/dcpc.c @@ -339,9 +339,13 @@ dcpc_destroy(void *arg, dtrace_id_t id, void *parg) /*ARGSUSED*/ static int -dcpc_usermode(void *arg, dtrace_id_t id, void *parg) +dcpc_mode(void *arg, dtrace_id_t id, void *parg) { - return (CPU->cpu_cpcprofile_pc == 0); + if (CPU->cpu_cpcprofile_pc == 0) { + return (DTRACE_MODE_NOPRIV_DROP | DTRACE_MODE_USER); + } else { + return (DTRACE_MODE_NOPRIV_DROP | DTRACE_MODE_KERNEL); + } } static void @@ -1013,7 +1017,7 @@ static dtrace_pops_t dcpc_pops = { NULL, NULL, NULL, - dcpc_usermode, + dcpc_mode, dcpc_destroy }; diff --git a/usr/src/uts/common/dtrace/dtrace.c b/usr/src/uts/common/dtrace/dtrace.c index c352f66d5d..a430f656b4 100644 --- a/usr/src/uts/common/dtrace/dtrace.c +++ b/usr/src/uts/common/dtrace/dtrace.c @@ -1108,10 +1108,13 @@ dtrace_priv_proc_common_nocd() } static int -dtrace_priv_proc_destructive(dtrace_state_t *state) +dtrace_priv_proc_destructive(dtrace_state_t *state, dtrace_mstate_t *mstate) { int action = state->dts_cred.dcr_action; + if (!(mstate->dtms_access & DTRACE_ACCESS_PROC)) + goto bad; + if (((action & DTRACE_CRA_PROC_DESTRUCTIVE_ALLZONE) == 0) && dtrace_priv_proc_common_zone(state) == 0) goto bad; @@ -1133,15 +1136,17 @@ bad: } static int -dtrace_priv_proc_control(dtrace_state_t *state) +dtrace_priv_proc_control(dtrace_state_t *state, dtrace_mstate_t *mstate) { - if (state->dts_cred.dcr_action & DTRACE_CRA_PROC_CONTROL) - return (1); + if (mstate->dtms_access & DTRACE_ACCESS_PROC) { + if (state->dts_cred.dcr_action & DTRACE_CRA_PROC_CONTROL) + return (1); - if (dtrace_priv_proc_common_zone(state) && - dtrace_priv_proc_common_user(state) && - dtrace_priv_proc_common_nocd()) - return (1); + if (dtrace_priv_proc_common_zone(state) && + dtrace_priv_proc_common_user(state) && + dtrace_priv_proc_common_nocd()) + return (1); + } cpu_core[CPU->cpu_id].cpuc_dtrace_flags |= CPU_DTRACE_UPRIV; @@ -1149,9 +1154,10 @@ dtrace_priv_proc_control(dtrace_state_t *state) } static int -dtrace_priv_proc(dtrace_state_t *state) +dtrace_priv_proc(dtrace_state_t *state, dtrace_mstate_t *mstate) { - if (state->dts_cred.dcr_action & DTRACE_CRA_PROC) + if ((mstate->dtms_access & DTRACE_ACCESS_PROC) && + (state->dts_cred.dcr_action & DTRACE_CRA_PROC)) return (1); cpu_core[CPU->cpu_id].cpuc_dtrace_flags |= CPU_DTRACE_UPRIV; @@ -1182,6 +1188,109 @@ dtrace_priv_kernel_destructive(dtrace_state_t *state) } /* + * Determine if the dte_cond of the specified ECB allows for processing of + * the current probe to continue. Note that this routine may allow continued + * processing, but with access(es) stripped from the mstate's dtms_access + * field. + */ +static int +dtrace_priv_probe(dtrace_state_t *state, dtrace_mstate_t *mstate, + dtrace_ecb_t *ecb) +{ + dtrace_probe_t *probe = ecb->dte_probe; + dtrace_provider_t *prov = probe->dtpr_provider; + dtrace_pops_t *pops = &prov->dtpv_pops; + int mode = DTRACE_MODE_NOPRIV_DROP; + + ASSERT(ecb->dte_cond); + + if (pops->dtps_mode != NULL) { + mode = pops->dtps_mode(prov->dtpv_arg, + probe->dtpr_id, probe->dtpr_arg); + + ASSERT((mode & DTRACE_MODE_USER) || + (mode & DTRACE_MODE_KERNEL)); + ASSERT((mode & DTRACE_MODE_NOPRIV_RESTRICT) || + (mode & DTRACE_MODE_NOPRIV_DROP)); + } + + /* + * If the dte_cond bits indicate that this consumer is only allowed to + * see user-mode firings of this probe, call the provider's dtps_mode() + * entry point to check that the probe was fired while in a user + * context. If that's not the case, use the policy specified by the + * provider to determine if we drop the probe or merely restrict + * operation. + */ + if (ecb->dte_cond & DTRACE_COND_USERMODE) { + ASSERT(mode != DTRACE_MODE_NOPRIV_DROP); + + if (!(mode & DTRACE_MODE_USER)) { + if (mode & DTRACE_MODE_NOPRIV_DROP) + return (0); + + mstate->dtms_access &= ~DTRACE_ACCESS_ARGS; + } + } + + /* + * This is more subtle than it looks. We have to be absolutely certain + * that CRED() isn't going to change out from under us so it's only + * legit to examine that structure if we're in constrained situations. + * Currently, the only times we'll this check is if a non-super-user + * has enabled the profile or syscall providers -- providers that + * allow visibility of all processes. For the profile case, the check + * above will ensure that we're examining a user context. + */ + if (ecb->dte_cond & DTRACE_COND_OWNER) { + cred_t *cr; + cred_t *s_cr = state->dts_cred.dcr_cred; + proc_t *proc; + + ASSERT(s_cr != NULL); + + if ((cr = CRED()) == NULL || + s_cr->cr_uid != cr->cr_uid || + s_cr->cr_uid != cr->cr_ruid || + s_cr->cr_uid != cr->cr_suid || + s_cr->cr_gid != cr->cr_gid || + s_cr->cr_gid != cr->cr_rgid || + s_cr->cr_gid != cr->cr_sgid || + (proc = ttoproc(curthread)) == NULL || + (proc->p_flag & SNOCD)) { + if (mode & DTRACE_MODE_NOPRIV_DROP) + return (0); + + mstate->dtms_access &= ~DTRACE_ACCESS_PROC; + } + } + + /* + * If our dte_cond is set to DTRACE_COND_ZONEOWNER and we are not + * in our zone, check to see if our mode policy is to restrict rather + * than to drop; if to restrict, strip away both DTRACE_ACCESS_PROC + * and DTRACE_ACCESS_ARGS + */ + if (ecb->dte_cond & DTRACE_COND_ZONEOWNER) { + cred_t *cr; + cred_t *s_cr = state->dts_cred.dcr_cred; + + ASSERT(s_cr != NULL); + + if ((cr = CRED()) == NULL || + s_cr->cr_zone->zone_id != cr->cr_zone->zone_id) { + if (mode & DTRACE_MODE_NOPRIV_DROP) + return (0); + + mstate->dtms_access &= + ~(DTRACE_ACCESS_PROC | DTRACE_ACCESS_ARGS); + } + } + + return (1); +} + +/* * Note: not called from probe context. This function is called * asynchronously (and at a regular interval) from outside of probe context to * clean the dirty dynamic variable lists on all CPUs. Dynamic variable @@ -2713,6 +2822,12 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, switch (v) { case DIF_VAR_ARGS: + if (!(mstate->dtms_access & DTRACE_ACCESS_ARGS)) { + cpu_core[CPU->cpu_id].cpuc_dtrace_flags |= + CPU_DTRACE_KPRIV; + return (0); + } + ASSERT(mstate->dtms_present & DTRACE_MSTATE_ARGS); if (ndx >= sizeof (mstate->dtms_arg) / sizeof (mstate->dtms_arg[0])) { @@ -2748,7 +2863,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, case DIF_VAR_UREGS: { klwp_t *lwp; - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); if ((lwp = curthread->t_lwp) == NULL) { @@ -2828,7 +2943,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, return (mstate->dtms_stackdepth); case DIF_VAR_USTACKDEPTH: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); if (!(mstate->dtms_present & DTRACE_MSTATE_USTACKDEPTH)) { /* @@ -2883,7 +2998,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, return (mstate->dtms_caller); case DIF_VAR_UCALLER: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); if (!(mstate->dtms_present & DTRACE_MSTATE_UCALLER)) { @@ -2931,7 +3046,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, state, mstate)); case DIF_VAR_PID: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -2953,7 +3068,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, return ((uint64_t)curthread->t_procp->p_pidp->pid_id); case DIF_VAR_PPID: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -2980,7 +3095,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, return ((uint64_t)curthread->t_tid); case DIF_VAR_EXECNAME: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -3000,7 +3115,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, state, mstate)); case DIF_VAR_ZONENAME: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -3020,7 +3135,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, state, mstate)); case DIF_VAR_UID: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -3041,7 +3156,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, return ((uint64_t)curthread->t_procp->p_cred->cr_uid); case DIF_VAR_GID: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -3063,7 +3178,7 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v, case DIF_VAR_ERRNO: { klwp_t *lwp; - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, mstate)) return (0); /* @@ -3403,7 +3518,7 @@ dtrace_dif_subr(uint_t subr, uint_t rd, uint64_t *regs, uint64_t size = tupregs[2].dttk_value; if (!dtrace_destructive_disallow && - dtrace_priv_proc_control(state) && + dtrace_priv_proc_control(state, mstate) && !dtrace_istoxic(kaddr, size)) { DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); dtrace_copyout(kaddr, uaddr, size, flags); @@ -3418,7 +3533,7 @@ dtrace_dif_subr(uint_t subr, uint_t rd, uint64_t *regs, uint64_t size = tupregs[2].dttk_value; if (!dtrace_destructive_disallow && - dtrace_priv_proc_control(state) && + dtrace_priv_proc_control(state, mstate) && !dtrace_istoxic(kaddr, size)) { DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); dtrace_copyoutstr(kaddr, uaddr, size, flags); @@ -3789,7 +3904,54 @@ dtrace_dif_subr(uint_t subr, uint_t rd, uint64_t *regs, break; } - case DIF_SUBR_GETMAJOR: + case DIF_SUBR_TOUPPER: + case DIF_SUBR_TOLOWER: { + uintptr_t s = tupregs[0].dttk_value; + uint64_t size = state->dts_options[DTRACEOPT_STRSIZE]; + char *dest = (char *)mstate->dtms_scratch_ptr, c; + size_t len = dtrace_strlen((char *)s, size); + char lower, upper, convert; + int64_t i; + + if (subr == DIF_SUBR_TOUPPER) { + lower = 'a'; + upper = 'z'; + convert = 'A'; + } else { + lower = 'A'; + upper = 'Z'; + convert = 'a'; + } + + if (!dtrace_canload(s, len + 1, mstate, vstate)) { + regs[rd] = NULL; + break; + } + + if (!DTRACE_INSCRATCH(mstate, size)) { + DTRACE_CPUFLAG_SET(CPU_DTRACE_NOSCRATCH); + regs[rd] = NULL; + break; + } + + for (i = 0; i < size - 1; i++) { + if ((c = dtrace_load8(s + i)) == '\0') + break; + + if (c >= lower && c <= upper) + c = convert + (c - lower); + + dest[i] = c; + } + + ASSERT(i < size); + dest[i] = '\0'; + regs[rd] = (uintptr_t)dest; + mstate->dtms_scratch_ptr += size; + break; + } + +case DIF_SUBR_GETMAJOR: #ifdef _LP64 regs[rd] = (tupregs[0].dttk_value >> NBITSMINOR64) & MAXMAJ64; #else @@ -4051,9 +4213,20 @@ dtrace_dif_subr(uint_t subr, uint_t rd, uint64_t *regs, case DIF_SUBR_LLTOSTR: { int64_t i = (int64_t)tupregs[0].dttk_value; - int64_t val = i < 0 ? i * -1 : i; - uint64_t size = 22; /* enough room for 2^64 in decimal */ + uint64_t val, digit; + uint64_t size = 65; /* enough room for 2^64 in binary */ char *end = (char *)mstate->dtms_scratch_ptr + size - 1; + int base = 10; + + if (nargs > 1) { + if ((base = tupregs[1].dttk_value) <= 1 || + base > ('z' - 'a' + 1) + ('9' - '0' + 1)) { + *flags |= CPU_DTRACE_ILLOP; + break; + } + } + + val = (base == 10 && i < 0) ? i * -1 : i; if (!DTRACE_INSCRATCH(mstate, size)) { DTRACE_CPUFLAG_SET(CPU_DTRACE_NOSCRATCH); @@ -4061,13 +4234,24 @@ dtrace_dif_subr(uint_t subr, uint_t rd, uint64_t *regs, break; } - for (*end-- = '\0'; val; val /= 10) - *end-- = '0' + (val % 10); + for (*end-- = '\0'; val; val /= base) { + if ((digit = val % base) <= '9' - '0') { + *end-- = '0' + digit; + } else { + *end-- = 'a' + (digit - ('9' - '0') - 1); + } + } + + if (i == 0 && base == 16) + *end-- = '0'; - if (i == 0) + if (base == 16) + *end-- = 'x'; + + if (i == 0 || base == 8 || base == 16) *end-- = '0'; - if (i < 0) + if (i < 0 && base == 10) *end-- = '-'; regs[rd] = (uintptr_t)end + 1; @@ -5702,6 +5886,7 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, dtrace_buffer_t *aggbuf = &state->dts_aggbuffer[cpuid]; dtrace_vstate_t *vstate = &state->dts_vstate; dtrace_provider_t *prov = probe->dtpr_provider; + uint64_t tracememsize = 0; int committed = 0; caddr_t tomax; @@ -5722,6 +5907,7 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, #endif mstate.dtms_present = DTRACE_MSTATE_ARGS | DTRACE_MSTATE_PROBE; + mstate.dtms_access = DTRACE_ACCESS_ARGS | DTRACE_ACCESS_PROC; *flags &= ~CPU_DTRACE_ERROR; if (prov == dtrace_provider) { @@ -5759,65 +5945,8 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, } } - if (ecb->dte_cond) { - /* - * If the dte_cond bits indicate that this - * consumer is only allowed to see user-mode firings - * of this probe, call the provider's dtps_usermode() - * entry point to check that the probe was fired - * while in a user context. Skip this ECB if that's - * not the case. - */ - if ((ecb->dte_cond & DTRACE_COND_USERMODE) && - prov->dtpv_pops.dtps_usermode(prov->dtpv_arg, - probe->dtpr_id, probe->dtpr_arg) == 0) - continue; - - /* - * This is more subtle than it looks. We have to be - * absolutely certain that CRED() isn't going to - * change out from under us so it's only legit to - * examine that structure if we're in constrained - * situations. Currently, the only times we'll this - * check is if a non-super-user has enabled the - * profile or syscall providers -- providers that - * allow visibility of all processes. For the - * profile case, the check above will ensure that - * we're examining a user context. - */ - if (ecb->dte_cond & DTRACE_COND_OWNER) { - cred_t *cr; - cred_t *s_cr = - ecb->dte_state->dts_cred.dcr_cred; - proc_t *proc; - - ASSERT(s_cr != NULL); - - if ((cr = CRED()) == NULL || - s_cr->cr_uid != cr->cr_uid || - s_cr->cr_uid != cr->cr_ruid || - s_cr->cr_uid != cr->cr_suid || - s_cr->cr_gid != cr->cr_gid || - s_cr->cr_gid != cr->cr_rgid || - s_cr->cr_gid != cr->cr_sgid || - (proc = ttoproc(curthread)) == NULL || - (proc->p_flag & SNOCD)) - continue; - } - - if (ecb->dte_cond & DTRACE_COND_ZONEOWNER) { - cred_t *cr; - cred_t *s_cr = - ecb->dte_state->dts_cred.dcr_cred; - - ASSERT(s_cr != NULL); - - if ((cr = CRED()) == NULL || - s_cr->cr_zone->zone_id != - cr->cr_zone->zone_id) - continue; - } - } + if (ecb->dte_cond && !dtrace_priv_probe(state, &mstate, ecb)) + continue; if (now - state->dts_alive > dtrace_deadman_timeout) { /* @@ -5857,9 +5986,7 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, mstate.dtms_present |= DTRACE_MSTATE_EPID; if (state->dts_cred.dcr_visible & DTRACE_CRV_KERNEL) - mstate.dtms_access = DTRACE_ACCESS_KERNEL; - else - mstate.dtms_access = 0; + mstate.dtms_access |= DTRACE_ACCESS_KERNEL; if (pred != NULL) { dtrace_difo_t *dp = pred->dtp_difo; @@ -5919,7 +6046,8 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, switch (act->dta_kind) { case DTRACEACT_STOP: - if (dtrace_priv_proc_destructive(state)) + if (dtrace_priv_proc_destructive(state, + &mstate)) dtrace_action_stop(); continue; @@ -5946,7 +6074,7 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, case DTRACEACT_JSTACK: case DTRACEACT_USTACK: - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, &mstate)) continue; /* @@ -6032,7 +6160,8 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, continue; case DTRACEACT_RAISE: - if (dtrace_priv_proc_destructive(state)) + if (dtrace_priv_proc_destructive(state, + &mstate)) dtrace_action_raise(val); continue; @@ -6059,6 +6188,11 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, case DTRACEACT_PRINTA: case DTRACEACT_SYSTEM: case DTRACEACT_FREOPEN: + case DTRACEACT_TRACEMEM: + break; + + case DTRACEACT_TRACEMEM_DYNSIZE: + tracememsize = val; break; case DTRACEACT_SYM: @@ -6072,7 +6206,7 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, case DTRACEACT_UADDR: { struct pid *pid = curthread->t_procp->p_pidp; - if (!dtrace_priv_proc(state)) + if (!dtrace_priv_proc(state, &mstate)) continue; DTRACE_STORE(uint64_t, tomax, @@ -6124,6 +6258,12 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, if (dp->dtdo_rtype.dtdt_flags & DIF_TF_BYREF) { uintptr_t end = valoffs + size; + if (tracememsize != 0 && + valoffs + tracememsize < end) { + end = valoffs + tracememsize; + tracememsize = 0; + } + if (!dtrace_vcanload((void *)(uintptr_t)val, &dp->dtdo_rtype, &mstate, vstate)) continue; @@ -7004,9 +7144,9 @@ dtrace_register(const char *name, const dtrace_pattr_t *pap, uint32_t priv, if ((priv & DTRACE_PRIV_KERNEL) && (priv & (DTRACE_PRIV_USER | DTRACE_PRIV_OWNER)) && - pops->dtps_usermode == NULL) { + pops->dtps_mode == NULL) { cmn_err(CE_WARN, "failed to register provider '%s': need " - "dtps_usermode() op for given privilege attributes", name); + "dtps_mode() op for given privilege attributes", name); return (EINVAL); } @@ -9697,6 +9837,8 @@ dtrace_ecb_action_add(dtrace_ecb_t *ecb, dtrace_actdesc_t *desc) /*FALLTHROUGH*/ case DTRACEACT_LIBACT: case DTRACEACT_DIFEXPR: + case DTRACEACT_TRACEMEM: + case DTRACEACT_TRACEMEM_DYNSIZE: if (dp == NULL) return (EINVAL); @@ -10229,14 +10371,17 @@ dtrace_buffer_activate(dtrace_state_t *state) static int dtrace_buffer_alloc(dtrace_buffer_t *bufs, size_t size, int flags, - processorid_t cpu) + processorid_t cpu, int *factor) { cpu_t *cp; dtrace_buffer_t *buf; + int allocated = 0, desired = 0; ASSERT(MUTEX_HELD(&cpu_lock)); ASSERT(MUTEX_HELD(&dtrace_lock)); + *factor = 1; + if (size > dtrace_nonroot_maxsize && !PRIV_POLICY_CHOICE(CRED(), PRIV_ALL, B_FALSE)) return (EFBIG); @@ -10261,7 +10406,8 @@ dtrace_buffer_alloc(dtrace_buffer_t *bufs, size_t size, int flags, ASSERT(buf->dtb_xamot == NULL); - if ((buf->dtb_tomax = kmem_zalloc(size, KM_NOSLEEP)) == NULL) + if ((buf->dtb_tomax = kmem_zalloc(size, + KM_NOSLEEP | KM_NORMALPRI)) == NULL) goto err; buf->dtb_size = size; @@ -10272,7 +10418,8 @@ dtrace_buffer_alloc(dtrace_buffer_t *bufs, size_t size, int flags, if (flags & DTRACEBUF_NOSWITCH) continue; - if ((buf->dtb_xamot = kmem_zalloc(size, KM_NOSLEEP)) == NULL) + if ((buf->dtb_xamot = kmem_zalloc(size, + KM_NOSLEEP | KM_NORMALPRI)) == NULL) goto err; } while ((cp = cp->cpu_next) != cpu_list); @@ -10286,16 +10433,19 @@ err: continue; buf = &bufs[cp->cpu_id]; + desired += 2; if (buf->dtb_xamot != NULL) { ASSERT(buf->dtb_tomax != NULL); ASSERT(buf->dtb_size == size); kmem_free(buf->dtb_xamot, size); + allocated++; } if (buf->dtb_tomax != NULL) { ASSERT(buf->dtb_size == size); kmem_free(buf->dtb_tomax, size); + allocated++; } buf->dtb_tomax = NULL; @@ -10303,6 +10453,8 @@ err: buf->dtb_size = 0; } while ((cp = cp->cpu_next) != cpu_list); + *factor = desired / (allocated > 0 ? allocated : 1); + return (ENOMEM); } @@ -12201,7 +12353,7 @@ dtrace_dstate_init(dtrace_dstate_t *dstate, size_t size) if (size < (min = dstate->dtds_chunksize + sizeof (dtrace_dynhash_t))) size = min; - if ((base = kmem_zalloc(size, KM_NOSLEEP)) == NULL) + if ((base = kmem_zalloc(size, KM_NOSLEEP | KM_NORMALPRI)) == NULL) return (ENOMEM); dstate->dtds_size = size; @@ -12563,7 +12715,7 @@ dtrace_state_buffer(dtrace_state_t *state, dtrace_buffer_t *buf, int which) { dtrace_optval_t *opt = state->dts_options, size; processorid_t cpu; - int flags = 0, rval; + int flags = 0, rval, factor, divisor = 1; ASSERT(MUTEX_HELD(&dtrace_lock)); ASSERT(MUTEX_HELD(&cpu_lock)); @@ -12593,7 +12745,7 @@ dtrace_state_buffer(dtrace_state_t *state, dtrace_buffer_t *buf, int which) flags |= DTRACEBUF_INACTIVE; } - for (size = opt[which]; size >= sizeof (uint64_t); size >>= 1) { + for (size = opt[which]; size >= sizeof (uint64_t); size /= divisor) { /* * The size must be 8-byte aligned. If the size is not 8-byte * aligned, drop it down by the difference. @@ -12611,7 +12763,7 @@ dtrace_state_buffer(dtrace_state_t *state, dtrace_buffer_t *buf, int which) return (E2BIG); } - rval = dtrace_buffer_alloc(buf, size, flags, cpu); + rval = dtrace_buffer_alloc(buf, size, flags, cpu, &factor); if (rval != ENOMEM) { opt[which] = size; @@ -12620,6 +12772,9 @@ dtrace_state_buffer(dtrace_state_t *state, dtrace_buffer_t *buf, int which) if (opt[DTRACEOPT_BUFRESIZE] == DTRACEOPT_BUFRESIZE_MANUAL) return (rval); + + for (divisor = 2; divisor < factor; divisor <<= 1) + continue; } return (ENOMEM); @@ -12719,7 +12874,8 @@ dtrace_state_go(dtrace_state_t *state, processorid_t *cpu) goto out; } - spec = kmem_zalloc(nspec * sizeof (dtrace_speculation_t), KM_NOSLEEP); + spec = kmem_zalloc(nspec * sizeof (dtrace_speculation_t), + KM_NOSLEEP | KM_NORMALPRI); if (spec == NULL) { rval = ENOMEM; @@ -12730,7 +12886,8 @@ dtrace_state_go(dtrace_state_t *state, processorid_t *cpu) state->dts_nspeculations = (int)nspec; for (i = 0; i < nspec; i++) { - if ((buf = kmem_zalloc(bufsize, KM_NOSLEEP)) == NULL) { + if ((buf = kmem_zalloc(bufsize, + KM_NOSLEEP | KM_NORMALPRI)) == NULL) { rval = ENOMEM; goto err; } diff --git a/usr/src/uts/common/dtrace/profile.c b/usr/src/uts/common/dtrace/profile.c index c1a2d1f1c1..fc809d3579 100644 --- a/usr/src/uts/common/dtrace/profile.c +++ b/usr/src/uts/common/dtrace/profile.c @@ -23,6 +23,9 @@ * Use is subject to license terms. */ +/* + * Copyright (c) 2011, Joyent, Inc. All rights reserved. + */ #include <sys/errno.h> #include <sys/stat.h> @@ -408,9 +411,25 @@ profile_disable(void *arg, dtrace_id_t id, void *parg) /*ARGSUSED*/ static int -profile_usermode(void *arg, dtrace_id_t id, void *parg) +profile_mode(void *arg, dtrace_id_t id, void *parg) { - return (CPU->cpu_profile_pc == 0); + profile_probe_t *prof = parg; + int mode; + + if (CPU->cpu_profile_pc != 0) { + mode = DTRACE_MODE_KERNEL; + } else { + mode = DTRACE_MODE_USER; + } + + if (prof->prof_kind == PROF_TICK) { + mode |= DTRACE_MODE_NOPRIV_RESTRICT; + } else { + ASSERT(prof->prof_kind == PROF_PROFILE); + mode |= DTRACE_MODE_NOPRIV_DROP; + } + + return (mode); } static dtrace_pattr_t profile_attr = { @@ -430,7 +449,7 @@ static dtrace_pops_t profile_pops = { NULL, NULL, NULL, - profile_usermode, + profile_mode, profile_destroy }; diff --git a/usr/src/uts/common/exec/aout/aout.c b/usr/src/uts/common/exec/aout/aout.c index 56f890bfab..fc45bd9544 100644 --- a/usr/src/uts/common/exec/aout/aout.c +++ b/usr/src/uts/common/exec/aout/aout.c @@ -21,10 +21,9 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/param.h> #include <sys/systm.h> @@ -65,8 +64,6 @@ extern int elf32exec(vnode_t *, execa_t *, uarg_t *, intpdata_t *, int, extern int elf32core(vnode_t *, proc_t *, cred_t *, rlim64_t, int, core_content_t); -char _depends_on[] = "exec/elfexec"; - static struct execsw nesw = { aout_nmagicstr, 2, diff --git a/usr/src/uts/common/fs/autofs/auto_vfsops.c b/usr/src/uts/common/fs/autofs/auto_vfsops.c index 52c0368dda..f8c6169d47 100644 --- a/usr/src/uts/common/fs/autofs/auto_vfsops.c +++ b/usr/src/uts/common/fs/autofs/auto_vfsops.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/param.h> @@ -109,11 +110,6 @@ static struct modlinkage modlinkage = { }; /* - * There are not enough stubs for rpcmod so we must force load it - */ -char _depends_on[] = "strmod/rpcmod misc/rpcsec fs/mntfs"; - -/* * This is the module initialization routine. */ int diff --git a/usr/src/uts/common/fs/cachefs/cachefs_module.c b/usr/src/uts/common/fs/cachefs/cachefs_module.c index 5e68d9f4ce..12eeb2b837 100644 --- a/usr/src/uts/common/fs/cachefs/cachefs_module.c +++ b/usr/src/uts/common/fs/cachefs/cachefs_module.c @@ -22,10 +22,9 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/errno.h> #include <sys/param.h> #include <sys/types.h> @@ -89,8 +88,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlfs, NULL }; -char _depends_on[] = "strmod/rpcmod"; - int _init(void) { diff --git a/usr/src/uts/common/fs/hsfs/hsfs_vfsops.c b/usr/src/uts/common/fs/hsfs/hsfs_vfsops.c index 058d6925e3..9b11f3bddf 100644 --- a/usr/src/uts/common/fs/hsfs/hsfs_vfsops.c +++ b/usr/src/uts/common/fs/hsfs/hsfs_vfsops.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -160,8 +161,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlfs, NULL }; -char _depends_on[] = "fs/specfs"; - extern void hsched_init_caches(void); extern void hsched_fini_caches(void); diff --git a/usr/src/uts/common/fs/nfs/nfs_common.c b/usr/src/uts/common/fs/nfs/nfs_common.c index 5588a511c8..16a467e64c 100644 --- a/usr/src/uts/common/fs/nfs/nfs_common.c +++ b/usr/src/uts/common/fs/nfs/nfs_common.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -195,12 +196,6 @@ static struct modlinkage_big modlinkage = { }; /* - * specfs - for getfsname only?? - * rpcmod - too many symbols to build stubs for them all - */ -char _depends_on[] = "fs/specfs strmod/rpcmod misc/rpcsec"; - -/* * This routine is invoked automatically when the kernel module * containing this routine is loaded. This allows module specific * initialization to be done when the module is loaded. diff --git a/usr/src/uts/common/fs/nfs/nfs_server.c b/usr/src/uts/common/fs/nfs/nfs_server.c index 71e068887a..ad2fed01dc 100644 --- a/usr/src/uts/common/fs/nfs/nfs_server.c +++ b/usr/src/uts/common/fs/nfs/nfs_server.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -103,8 +104,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlmisc, NULL }; -char _depends_on[] = "misc/klmmod"; - kmem_cache_t *nfs_xuio_cache; int nfs_loaned_buffers = 0; diff --git a/usr/src/uts/common/fs/udfs/udf_vfsops.c b/usr/src/uts/common/fs/udfs/udf_vfsops.c index bc8ca1096d..479898fe9c 100644 --- a/usr/src/uts/common/fs/udfs/udf_vfsops.c +++ b/usr/src/uts/common/fs/udfs/udf_vfsops.c @@ -21,10 +21,9 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/t_lock.h> #include <sys/param.h> @@ -144,8 +143,6 @@ static struct modlinkage modlinkage = { MODREV_1, (void *)&modlfs, NULL }; -char _depends_on[] = "fs/specfs"; - int32_t udf_fstype = -1; int diff --git a/usr/src/uts/common/gssapi/gssdmod.c b/usr/src/uts/common/gssapi/gssdmod.c index f47ae5c297..e41b44088b 100644 --- a/usr/src/uts/common/gssapi/gssdmod.c +++ b/usr/src/uts/common/gssapi/gssdmod.c @@ -22,17 +22,14 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/modctl.h> #include <sys/errno.h> #include <gssapi/kgssapi_defs.h> -char _depends_on[] = "strmod/rpcmod misc/rpcsec misc/tlimod"; - static struct modlmisc modlmisc = { &mod_miscops, "in-kernel GSSAPI" }; diff --git a/usr/src/uts/common/gssapi/mechs/dummy/dmech.c b/usr/src/uts/common/gssapi/mechs/dummy/dmech.c index 9adf29bc40..04f0949d24 100644 --- a/usr/src/uts/common/gssapi/mechs/dummy/dmech.c +++ b/usr/src/uts/common/gssapi/mechs/dummy/dmech.c @@ -22,10 +22,9 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * A module that implements a dummy security mechanism. * It's mainly used to test GSS-API application. Multiple tokens @@ -33,8 +32,6 @@ * specified through dummy_mech.conf located in /etc. */ -char _depends_on[] = "misc/kgssapi"; - #include <sys/types.h> #include <sys/modctl.h> #include <sys/errno.h> diff --git a/usr/src/uts/common/gssapi/mechs/krb5/krb5mech.c b/usr/src/uts/common/gssapi/mechs/krb5/krb5mech.c index cd93a6a8fb..00a8d7be18 100644 --- a/usr/src/uts/common/gssapi/mechs/krb5/krb5mech.c +++ b/usr/src/uts/common/gssapi/mechs/krb5/krb5mech.c @@ -21,15 +21,12 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. * * A module for Kerberos V5 security mechanism. * */ -#pragma ident "%Z%%M% %I% %E% SMI" - -char _depends_on[] = "misc/kgssapi crypto/md5"; - #include <sys/types.h> #include <sys/modctl.h> #include <sys/errno.h> diff --git a/usr/src/uts/common/inet/nca/ncaddi.c b/usr/src/uts/common/inet/nca/ncaddi.c index 737f16775f..233fc4e5e3 100644 --- a/usr/src/uts/common/inet/nca/ncaddi.c +++ b/usr/src/uts/common/inet/nca/ncaddi.c @@ -21,10 +21,9 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/conf.h> #include <sys/modctl.h> @@ -39,8 +38,6 @@ #include "ncaconf.h" -char _depends_on[] = "fs/sockfs drv/ip"; - extern caddr_t nca_g_nd; /* Head of 'named dispatch' variable list */ #define INET_NAME "nca" diff --git a/usr/src/uts/common/inet/tcp/tcp.c b/usr/src/uts/common/inet/tcp/tcp.c index 0734468ea0..1bb87e5c56 100644 --- a/usr/src/uts/common/inet/tcp/tcp.c +++ b/usr/src/uts/common/inet/tcp/tcp.c @@ -2228,6 +2228,10 @@ tcp_reinit_values(tcp) tcp->tcp_eager_prev_drop_q0 == NULL) || tcp->tcp_eager_next_drop_q0 == tcp->tcp_eager_prev_drop_q0); + DONTCARE(tcp->tcp_ka_rinterval); /* Init in tcp_init_values */ + DONTCARE(tcp->tcp_ka_abort_thres); /* Init in tcp_init_values */ + DONTCARE(tcp->tcp_ka_cnt); /* Init in tcp_init_values */ + tcp->tcp_client_errno = 0; DONTCARE(connp->conn_sum); /* Init in tcp_init_values */ @@ -2384,6 +2388,8 @@ tcp_init_values(tcp_t *tcp, tcp_t *parent) tcp->tcp_ka_interval = parent->tcp_ka_interval; tcp->tcp_ka_abort_thres = parent->tcp_ka_abort_thres; + tcp->tcp_ka_cnt = parent->tcp_ka_cnt; + tcp->tcp_ka_rinterval = parent->tcp_ka_rinterval; tcp->tcp_init_cwnd = parent->tcp_init_cwnd; } @@ -3921,7 +3927,7 @@ tcp_iss_init(tcp_t *tcp) tcp_stack_t *tcps = tcp->tcp_tcps; conn_t *connp = tcp->tcp_connp; - tcps->tcps_iss_incr_extra += (ISS_INCR >> 1); + tcps->tcps_iss_incr_extra += (tcps->tcps_iss_incr >> 1); tcp->tcp_iss = tcps->tcps_iss_incr_extra; switch (tcps->tcps_strong_iss) { case 2: @@ -3944,7 +3950,8 @@ tcp_iss_init(tcp_t *tcp) tcp->tcp_iss += (gethrtime() >> ISS_NSEC_SHT) + tcp_random(); break; default: - tcp->tcp_iss += (uint32_t)gethrestime_sec() * ISS_INCR; + tcp->tcp_iss += (uint32_t)gethrestime_sec() * + tcps->tcps_iss_incr; break; } tcp->tcp_valid_bits = TCP_ISS_VALID; diff --git a/usr/src/uts/common/inet/tcp/tcp_opt_data.c b/usr/src/uts/common/inet/tcp/tcp_opt_data.c index bcec93fcd3..7ac8feeecb 100644 --- a/usr/src/uts/common/inet/tcp/tcp_opt_data.c +++ b/usr/src/uts/common/inet/tcp/tcp_opt_data.c @@ -694,19 +694,29 @@ tcp_opt_set(conn_t *connp, uint_t optset_context, int level, int name, * privilege to set the initial cwnd to be larger * than allowed by RFC 3390. */ - if (val <= MIN(4, MAX(2, 4380 / tcp->tcp_mss))) { - tcp->tcp_init_cwnd = val; - break; - } - if ((reterr = secpolicy_ip_config(cr, B_TRUE)) != 0) { - *outlenp = 0; - return (reterr); - } - if (val > tcp_max_init_cwnd) { - *outlenp = 0; - return (EINVAL); + if (val > MIN(4, MAX(2, 4380 / tcp->tcp_mss))) { + if ((reterr = secpolicy_ip_config(cr, B_TRUE)) + != 0) { + *outlenp = 0; + return (reterr); + } + if (val > tcp_max_init_cwnd) { + *outlenp = 0; + return (EINVAL); + } } + tcp->tcp_init_cwnd = val; + + /* + * If the socket is connected, AND no outbound data + * has been sent, reset the actual cwnd values. + */ + if (tcp->tcp_state == TCPS_ESTABLISHED && + tcp->tcp_iss == tcp->tcp_snxt - 1) { + tcp->tcp_cwnd = + MIN(tcp->tcp_rwnd, val * tcp->tcp_mss); + } break; /* diff --git a/usr/src/uts/common/inet/tcp/tcp_time_wait.c b/usr/src/uts/common/inet/tcp/tcp_time_wait.c index eb058a1c5f..6f896fa740 100644 --- a/usr/src/uts/common/inet/tcp/tcp_time_wait.c +++ b/usr/src/uts/common/inet/tcp/tcp_time_wait.c @@ -21,6 +21,7 @@ /* * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, Joyent Inc. All rights reserved. */ /* @@ -510,11 +511,11 @@ tcp_time_wait_processing(tcp_t *tcp, mblk_t *mp, uint32_t seg_seq, if ((flags & TH_SYN) && gap > 0 && rgap < 0) { /* * Make sure that when we accept the connection, pick - * an ISS greater than (tcp_snxt + ISS_INCR/2) for the + * an ISS greater than (tcp_snxt + tcp_iss_incr/2) for the * old connection. * * The next ISS generated is equal to tcp_iss_incr_extra - * + ISS_INCR/2 + other components depending on the + * + tcp_iss_incr/2 + other components depending on the * value of tcp_strong_iss. We pre-calculate the new * ISS here and compare with tcp_snxt to determine if * we need to make adjustment to tcp_iss_incr_extra. @@ -557,12 +558,13 @@ tcp_time_wait_processing(tcp_t *tcp, mblk_t *mp, uint32_t seg_seq, break; default: /* Add only time component. */ - new_iss += (uint32_t)gethrestime_sec() * ISS_INCR; + new_iss += (uint32_t)gethrestime_sec() * + tcps->tcps_iss_incr; break; } if ((adj = (int32_t)(tcp->tcp_snxt - new_iss)) > 0) { /* - * New ISS not guaranteed to be ISS_INCR/2 + * New ISS not guaranteed to be tcp_iss_incr/2 * ahead of the current tcp_snxt, so add the * difference to tcp_iss_incr_extra. */ diff --git a/usr/src/uts/common/inet/tcp/tcp_tunables.c b/usr/src/uts/common/inet/tcp/tcp_tunables.c index f055ca0272..a1792f71ed 100644 --- a/usr/src/uts/common/inet/tcp/tcp_tunables.c +++ b/usr/src/uts/common/inet/tcp/tcp_tunables.c @@ -20,6 +20,7 @@ */ /* * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, Joyent Inc. All rights reserved. */ /* Copyright (c) 1990 Mentat Inc. */ @@ -472,6 +473,11 @@ mod_prop_info_t tcp_propinfo_tbl[] = { { "_listener_limit_conf_del", MOD_PROTO_TCP, tcp_listener_conf_del, NULL, {0}, {0} }, + { "_iss_incr", MOD_PROTO_TCP, + mod_set_uint32, mod_get_uint32, + {1, ISS_INCR, ISS_INCR}, + {ISS_INCR} }, + { "?", MOD_PROTO_TCP, NULL, mod_get_allprop, {0}, {0} }, { NULL, 0, NULL, NULL, {0}, {0} } diff --git a/usr/src/uts/common/inet/tcp_impl.h b/usr/src/uts/common/inet/tcp_impl.h index 12f201b960..fd7827f689 100644 --- a/usr/src/uts/common/inet/tcp_impl.h +++ b/usr/src/uts/common/inet/tcp_impl.h @@ -497,6 +497,7 @@ extern uint32_t tcp_early_abort; #define tcps_wroff_xtra tcps_propinfo_tbl[57].prop_cur_uval #define tcps_dev_flow_ctl tcps_propinfo_tbl[58].prop_cur_bval #define tcps_reass_timeout tcps_propinfo_tbl[59].prop_cur_uval +#define tcps_iss_incr tcps_propinfo_tbl[65].prop_cur_uval extern struct qinit tcp_rinitv4, tcp_rinitv6; extern boolean_t do_tcp_fusion; diff --git a/usr/src/uts/common/io/emul64.c b/usr/src/uts/common/io/emul64.c index f5e5166223..e8d18d109f 100644 --- a/usr/src/uts/common/io/emul64.c +++ b/usr/src/uts/common/io/emul64.c @@ -21,6 +21,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -204,8 +205,6 @@ static struct dev_ops emul64_ops = { ddi_quiesce_not_needed, /* quiesce */ }; -char _depends_on[] = "misc/scsi"; - static struct modldrv modldrv = { &mod_driverops, /* module type - driver */ "emul64 SCSI Host Bus Adapter", /* module name */ diff --git a/usr/src/uts/common/io/fibre-channel/fca/emlxs/emlxs_solaris.c b/usr/src/uts/common/io/fibre-channel/fca/emlxs/emlxs_solaris.c index d8cb82076d..695bf6a712 100644 --- a/usr/src/uts/common/io/fibre-channel/fca/emlxs/emlxs_solaris.c +++ b/usr/src/uts/common/io/fibre-channel/fca/emlxs/emlxs_solaris.c @@ -22,6 +22,7 @@ /* * Copyright 2010 Emulex. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -384,14 +385,6 @@ static fc_fca_tran_t emlxs_fca_tran = { #endif /* EMLXS_MODREV2 */ /* - * This is needed when the module gets loaded by the kernel - * so ddi library calls get resolved. - */ -#ifndef MODSYM_SUPPORT -char _depends_on[] = "misc/fctl"; -#endif /* MODSYM_SUPPORT */ - -/* * state pointer which the implementation uses as a place to * hang a set of per-driver structures; * diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_82598.c b/usr/src/uts/common/io/ixgbe/ixgbe_82598.c index 104841aee5..1e7432953d 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_82598.c +++ b/usr/src/uts/common/io/ixgbe/ixgbe_82598.c @@ -1,34 +1,36 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.167 scm_061610_003709 */ +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ #include "ixgbe_type.h" #include "ixgbe_api.h" @@ -38,48 +40,51 @@ u32 ixgbe_get_pcie_msix_count_82598(struct ixgbe_hw *hw); s32 ixgbe_init_ops_82598(struct ixgbe_hw *hw); static s32 ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *autoneg); + ixgbe_link_speed *speed, + bool *autoneg); static enum ixgbe_media_type ixgbe_get_media_type_82598(struct ixgbe_hw *hw); s32 ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num); static s32 ixgbe_start_mac_link_82598(struct ixgbe_hw *hw, bool autoneg_wait_to_complete); static s32 ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *link_up, bool link_up_wait_to_complete); + ixgbe_link_speed *speed, bool *link_up, + bool link_up_wait_to_complete); static s32 ixgbe_setup_mac_link_82598(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, - bool autoneg_wait_to_complete); + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); static s32 ixgbe_setup_copper_link_82598(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete); + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); static s32 ixgbe_reset_hw_82598(struct ixgbe_hw *hw); s32 ixgbe_start_hw_82598(struct ixgbe_hw *hw); void ixgbe_enable_relaxed_ordering_82598(struct ixgbe_hw *hw); s32 ixgbe_set_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq); static s32 ixgbe_clear_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq); s32 ixgbe_set_vfta_82598(struct ixgbe_hw *hw, u32 vlan, - u32 vind, bool vlan_on); + u32 vind, bool vlan_on); static s32 ixgbe_clear_vfta_82598(struct ixgbe_hw *hw); s32 ixgbe_read_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 *val); s32 ixgbe_write_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 val); s32 ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, - u8 *eeprom_data); + u8 *eeprom_data); u32 ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw); s32 ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw); void ixgbe_set_lan_id_multi_port_pcie_82598(struct ixgbe_hw *hw); void ixgbe_set_pcie_completion_timeout(struct ixgbe_hw *hw); -static s32 ixgbe_validate_link_ready(struct ixgbe_hw *hw); -/* - * ixgbe_set_pcie_completion_timeout - set pci-e completion timeout - * @hw: pointer to the HW structure +/** + * ixgbe_set_pcie_completion_timeout - set pci-e completion timeout + * @hw: pointer to the HW structure * - * The defaults for 82598 should be in the range of 50us to 50ms, - * however the hardware default for these parts is 500us to 1ms which is less - * than the 10ms recommended by the pci-e spec. To address this we need to - * increase the value to either 10ms to 250ms for capability version 1 config, - * or 16ms to 55ms for version 2. - */ -void -ixgbe_set_pcie_completion_timeout(struct ixgbe_hw *hw) + * The defaults for 82598 should be in the range of 50us to 50ms, + * however the hardware default for these parts is 500us to 1ms which is less + * than the 10ms recommended by the pci-e spec. To address this we need to + * increase the value to either 10ms to 250ms for capability version 1 config, + * or 16ms to 55ms for version 2. + **/ +void ixgbe_set_pcie_completion_timeout(struct ixgbe_hw *hw) { u32 gcr = IXGBE_READ_REG(hw, IXGBE_GCR); u16 pcie_devctl2; @@ -111,15 +116,14 @@ out: IXGBE_WRITE_REG(hw, IXGBE_GCR, gcr); } -/* - * ixgbe_get_pcie_msix_count_82598 - Gets MSI-X vector count - * @hw: pointer to hardware structure +/** + * ixgbe_get_pcie_msix_count_82598 - Gets MSI-X vector count + * @hw: pointer to hardware structure * - * Read PCIe configuration space, and get the MSI-X vector count from - * the capabilities table. - */ -u32 -ixgbe_get_pcie_msix_count_82598(struct ixgbe_hw *hw) + * Read PCIe configuration space, and get the MSI-X vector count from + * the capabilities table. + **/ +u32 ixgbe_get_pcie_msix_count_82598(struct ixgbe_hw *hw) { u32 msix_count = 18; @@ -127,27 +131,24 @@ ixgbe_get_pcie_msix_count_82598(struct ixgbe_hw *hw) if (hw->mac.msix_vectors_from_pcie) { msix_count = IXGBE_READ_PCIE_WORD(hw, - IXGBE_PCIE_MSIX_82598_CAPS); + IXGBE_PCIE_MSIX_82598_CAPS); msix_count &= IXGBE_PCIE_MSIX_TBL_SZ_MASK; - /* - * MSI-X count is zero-based in HW, so increment to give - * proper value - */ + /* MSI-X count is zero-based in HW, so increment to give + * proper value */ msix_count++; } - return (msix_count); + return msix_count; } -/* - * ixgbe_init_ops_82598 - Inits func ptrs and MAC type - * @hw: pointer to hardware structure +/** + * ixgbe_init_ops_82598 - Inits func ptrs and MAC type + * @hw: pointer to hardware structure * - * Initialize the function pointers and assign the MAC type for 82598. - * Does not touch the hardware. - */ -s32 -ixgbe_init_ops_82598(struct ixgbe_hw *hw) + * Initialize the function pointers and assign the MAC type for 82598. + * Does not touch the hardware. + **/ +s32 ixgbe_init_ops_82598(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; struct ixgbe_phy_info *phy = &hw->phy; @@ -167,7 +168,7 @@ ixgbe_init_ops_82598(struct ixgbe_hw *hw) mac->ops.reset_hw = &ixgbe_reset_hw_82598; mac->ops.get_media_type = &ixgbe_get_media_type_82598; mac->ops.get_supported_physical_layer = - &ixgbe_get_supported_physical_layer_82598; + &ixgbe_get_supported_physical_layer_82598; mac->ops.read_analog_reg8 = &ixgbe_read_analog_reg8_82598; mac->ops.write_analog_reg8 = &ixgbe_write_analog_reg8_82598; mac->ops.set_lan_id = &ixgbe_set_lan_id_multi_port_pcie_82598; @@ -181,11 +182,12 @@ ixgbe_init_ops_82598(struct ixgbe_hw *hw) /* Flow Control */ mac->ops.fc_enable = &ixgbe_fc_enable_82598; - mac->mcft_size = 128; - mac->vft_size = 128; + mac->mcft_size = 128; + mac->vft_size = 128; mac->num_rar_entries = 16; - mac->max_tx_queues = 32; - mac->max_rx_queues = 64; + mac->rx_pb_size = 512; + mac->max_tx_queues = 32; + mac->max_rx_queues = 64; mac->max_msix_vectors = ixgbe_get_pcie_msix_count_82598(hw); /* SFP+ Module */ @@ -196,22 +198,21 @@ ixgbe_init_ops_82598(struct ixgbe_hw *hw) mac->ops.setup_link = &ixgbe_setup_mac_link_82598; mac->ops.flap_tx_laser = NULL; mac->ops.get_link_capabilities = - &ixgbe_get_link_capabilities_82598; + &ixgbe_get_link_capabilities_82598; - return (ret_val); + return ret_val; } -/* - * ixgbe_init_phy_ops_82598 - PHY/SFP specific init - * @hw: pointer to hardware structure +/** + * ixgbe_init_phy_ops_82598 - PHY/SFP specific init + * @hw: pointer to hardware structure * - * Initialize any function pointers that were not able to be - * set during init_shared_code because the PHY/SFP type was - * not known. Perform the SFP init if necessary. + * Initialize any function pointers that were not able to be + * set during init_shared_code because the PHY/SFP type was + * not known. Perform the SFP init if necessary. * - */ -s32 -ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) + **/ +s32 ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; struct ixgbe_phy_info *phy = &hw->phy; @@ -227,7 +228,7 @@ ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) if (mac->ops.get_media_type(hw) == ixgbe_media_type_copper) { mac->ops.setup_link = &ixgbe_setup_copper_link_82598; mac->ops.get_link_capabilities = - &ixgbe_get_copper_link_capabilities_generic; + &ixgbe_get_copper_link_capabilities_generic; } switch (hw->phy.type) { @@ -235,11 +236,11 @@ ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) phy->ops.setup_link = &ixgbe_setup_phy_link_tnx; phy->ops.check_link = &ixgbe_check_phy_link_tnx; phy->ops.get_firmware_version = - &ixgbe_get_phy_firmware_version_tnx; + &ixgbe_get_phy_firmware_version_tnx; break; case ixgbe_phy_aq: phy->ops.get_firmware_version = - &ixgbe_get_phy_firmware_version_generic; + &ixgbe_get_phy_firmware_version_generic; break; case ixgbe_phy_nl: phy->ops.reset = &ixgbe_reset_phy_nl; @@ -255,7 +256,8 @@ ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) /* Check to see if SFP+ module is supported */ ret_val = ixgbe_get_sfp_init_sequence_offsets(hw, - &list_offset, &data_offset); + &list_offset, + &data_offset); if (ret_val != IXGBE_SUCCESS) { ret_val = IXGBE_ERR_SFP_NOT_SUPPORTED; goto out; @@ -264,19 +266,20 @@ ixgbe_init_phy_ops_82598(struct ixgbe_hw *hw) default: break; } + out: - return (ret_val); + return ret_val; } -/* - * ixgbe_start_hw_82598 - Prepare hardware for Tx/Rx - * @hw: pointer to hardware structure +/** + * ixgbe_start_hw_82598 - Prepare hardware for Tx/Rx + * @hw: pointer to hardware structure + * + * Starts the hardware using the generic start_hw function. + * Disables relaxed ordering Then set pcie completion timeout * - * Starts the hardware using the generic start_hw function. - * Disables relaxed ordering Then set pcie completion timeout - */ -s32 -ixgbe_start_hw_82598(struct ixgbe_hw *hw) + **/ +s32 ixgbe_start_hw_82598(struct ixgbe_hw *hw) { u32 regval; u32 i; @@ -286,21 +289,19 @@ ixgbe_start_hw_82598(struct ixgbe_hw *hw) ret_val = ixgbe_start_hw_generic(hw); - /* - * Disable relaxed ordering - */ + /* Disable relaxed ordering */ for (i = 0; ((i < hw->mac.max_tx_queues) && - (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { + (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL(i)); regval &= ~IXGBE_DCA_TXCTRL_TX_WB_RO_EN; IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL(i), regval); } for (i = 0; ((i < hw->mac.max_rx_queues) && - (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { + (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); regval &= ~(IXGBE_DCA_RXCTRL_DESC_WRO_EN | - IXGBE_DCA_RXCTRL_DESC_HSRO_EN); + IXGBE_DCA_RXCTRL_DESC_HSRO_EN); IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); } @@ -308,20 +309,20 @@ ixgbe_start_hw_82598(struct ixgbe_hw *hw) if (ret_val == IXGBE_SUCCESS) ixgbe_set_pcie_completion_timeout(hw); - return (ret_val); + return ret_val; } -/* - * ixgbe_get_link_capabilities_82598 - Determines link capabilities - * @hw: pointer to hardware structure - * @speed: pointer to link speed - * @autoneg: boolean auto-negotiation value +/** + * ixgbe_get_link_capabilities_82598 - Determines link capabilities + * @hw: pointer to hardware structure + * @speed: pointer to link speed + * @autoneg: boolean auto-negotiation value * - * Determines the link capabilities by reading the AUTOC register. - */ -static s32 -ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *autoneg) + * Determines the link capabilities by reading the AUTOC register. + **/ +static s32 ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, + ixgbe_link_speed *speed, + bool *autoneg) { s32 status = IXGBE_SUCCESS; u32 autoc = 0; @@ -341,17 +342,17 @@ ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, switch (autoc & IXGBE_AUTOC_LMS_MASK) { case IXGBE_AUTOC_LMS_1G_LINK_NO_AN: *speed = IXGBE_LINK_SPEED_1GB_FULL; - *autoneg = false; + *autoneg = FALSE; break; case IXGBE_AUTOC_LMS_10G_LINK_NO_AN: *speed = IXGBE_LINK_SPEED_10GB_FULL; - *autoneg = false; + *autoneg = FALSE; break; case IXGBE_AUTOC_LMS_1G_AN: *speed = IXGBE_LINK_SPEED_1GB_FULL; - *autoneg = true; + *autoneg = TRUE; break; case IXGBE_AUTOC_LMS_KX4_AN: @@ -361,7 +362,7 @@ ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, *speed |= IXGBE_LINK_SPEED_10GB_FULL; if (autoc & IXGBE_AUTOC_KX_SUPP) *speed |= IXGBE_LINK_SPEED_1GB_FULL; - *autoneg = true; + *autoneg = TRUE; break; default: @@ -369,28 +370,30 @@ ixgbe_get_link_capabilities_82598(struct ixgbe_hw *hw, break; } - return (status); + return status; } -/* - * ixgbe_get_media_type_82598 - Determines media type - * @hw: pointer to hardware structure +/** + * ixgbe_get_media_type_82598 - Determines media type + * @hw: pointer to hardware structure * - * Returns the media type (fiber, copper, backplane) - */ -static enum ixgbe_media_type -ixgbe_get_media_type_82598(struct ixgbe_hw *hw) + * Returns the media type (fiber, copper, backplane) + **/ +static enum ixgbe_media_type ixgbe_get_media_type_82598(struct ixgbe_hw *hw) { enum ixgbe_media_type media_type; DEBUGFUNC("ixgbe_get_media_type_82598"); /* Detect if there is a copper PHY attached. */ - if (hw->phy.type == ixgbe_phy_cu_unknown || - hw->phy.type == ixgbe_phy_tn || - hw->phy.type == ixgbe_phy_aq) { + switch (hw->phy.type) { + case ixgbe_phy_cu_unknown: + case ixgbe_phy_tn: + case ixgbe_phy_aq: media_type = ixgbe_media_type_copper; goto out; + default: + break; } /* Media type for I82598 is based on device ID */ @@ -421,23 +424,23 @@ ixgbe_get_media_type_82598(struct ixgbe_hw *hw) break; } out: - return (media_type); + return media_type; } -/* - * ixgbe_fc_enable_82598 - Enable flow control - * @hw: pointer to hardware structure - * @packetbuf_num: packet buffer number (0-7) +/** + * ixgbe_fc_enable_82598 - Enable flow control + * @hw: pointer to hardware structure + * @packetbuf_num: packet buffer number (0-7) * - * Enable flow control according to the current settings. - */ -s32 -ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) + * Enable flow control according to the current settings. + **/ +s32 ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) { s32 ret_val = IXGBE_SUCCESS; u32 fctrl_reg; u32 rmcs_reg; u32 reg; + u32 rx_pba_size; u32 link_speed = 0; bool link_up; @@ -448,7 +451,7 @@ ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) * so if it's on turn it off once we know link_speed. For * more details see 82598 Specification update. */ - hw->mac.ops.check_link(hw, &link_speed, &link_up, false); + hw->mac.ops.check_link(hw, &link_speed, &link_up, FALSE); if (link_up && link_speed == IXGBE_LINK_SPEED_1GB_FULL) { switch (hw->fc.requested_mode) { case ixgbe_fc_full: @@ -481,7 +484,7 @@ ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) * 1: Rx flow control is enabled (we can receive pause frames, * but not send pause frames). * 2: Tx flow control is enabled (we can send pause frames but - * we do not support receiving pause frames). + * we do not support receiving pause frames). * 3: Both Rx and Tx flow control (symmetric) are enabled. * other: Invalid. */ @@ -528,16 +531,19 @@ ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) /* Set up and enable Rx high/low water mark thresholds, enable XON. */ if (hw->fc.current_mode & ixgbe_fc_tx_pause) { - if (hw->fc.send_xon) { - IXGBE_WRITE_REG(hw, IXGBE_FCRTL(packetbuf_num), - (hw->fc.low_water | IXGBE_FCRTL_XONE)); - } else { - IXGBE_WRITE_REG(hw, IXGBE_FCRTL(packetbuf_num), - hw->fc.low_water); - } + rx_pba_size = IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(packetbuf_num)); + rx_pba_size >>= IXGBE_RXPBSIZE_SHIFT; + + reg = (rx_pba_size - hw->fc.low_water) << 6; + if (hw->fc.send_xon) + reg |= IXGBE_FCRTL_XONE; - IXGBE_WRITE_REG(hw, IXGBE_FCRTH(packetbuf_num), - (hw->fc.high_water | IXGBE_FCRTH_FCEN)); + IXGBE_WRITE_REG(hw, IXGBE_FCRTL(packetbuf_num), reg); + + reg = (rx_pba_size - hw->fc.high_water) << 6; + reg |= IXGBE_FCRTH_FCEN; + + IXGBE_WRITE_REG(hw, IXGBE_FCRTH(packetbuf_num), reg); } /* Configure pause time (2 TCs per register) */ @@ -551,18 +557,18 @@ ixgbe_fc_enable_82598(struct ixgbe_hw *hw, s32 packetbuf_num) IXGBE_WRITE_REG(hw, IXGBE_FCRTV, (hw->fc.pause_time >> 1)); out: - return (ret_val); + return ret_val; } -/* - * ixgbe_start_mac_link_82598 - Configures MAC link settings - * @hw: pointer to hardware structure +/** + * ixgbe_start_mac_link_82598 - Configures MAC link settings + * @hw: pointer to hardware structure * - * Configures link settings based on values in the ixgbe_hw struct. - * Restarts the link. Performs autonegotiation if needed. - */ -static s32 -ixgbe_start_mac_link_82598(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) + * Configures link settings based on values in the ixgbe_hw struct. + * Restarts the link. Performs autonegotiation if needed. + **/ +static s32 ixgbe_start_mac_link_82598(struct ixgbe_hw *hw, + bool autoneg_wait_to_complete) { u32 autoc_reg; u32 links_reg; @@ -579,9 +585,9 @@ ixgbe_start_mac_link_82598(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) /* Only poll for autoneg to complete if specified to do so */ if (autoneg_wait_to_complete) { if ((autoc_reg & IXGBE_AUTOC_LMS_MASK) == - IXGBE_AUTOC_LMS_KX4_AN || + IXGBE_AUTOC_LMS_KX4_AN || (autoc_reg & IXGBE_AUTOC_LMS_MASK) == - IXGBE_AUTOC_LMS_KX4_AN_1G_AN) { + IXGBE_AUTOC_LMS_KX4_AN_1G_AN) { links_reg = 0; /* Just in case Autoneg time = 0 */ for (i = 0; i < IXGBE_AUTO_NEG_TIME; i++) { links_reg = IXGBE_READ_REG(hw, IXGBE_LINKS); @@ -599,21 +605,56 @@ ixgbe_start_mac_link_82598(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) /* Add delay to filter out noises during initial link setup */ msec_delay(50); - return (status); + return status; } -/* - * ixgbe_check_mac_link_82598 - Get link/speed status - * @hw: pointer to hardware structure - * @speed: pointer to link speed - * @link_up: true is link is up, false otherwise - * @link_up_wait_to_complete: bool used to wait for link up or not +/** + * ixgbe_validate_link_ready - Function looks for phy link + * @hw: pointer to hardware structure * - * Reads the links register to determine if link is up and the current speed - */ -static s32 -ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up, bool link_up_wait_to_complete) + * Function indicates success when phy link is available. If phy is not ready + * within 5 seconds of MAC indicating link, the function returns error. + **/ +static s32 ixgbe_validate_link_ready(struct ixgbe_hw *hw) +{ + u32 timeout; + u16 an_reg; + + if (hw->device_id != IXGBE_DEV_ID_82598AT2) + return IXGBE_SUCCESS; + + for (timeout = 0; + timeout < IXGBE_VALIDATE_LINK_READY_TIMEOUT; timeout++) { + hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_STATUS, + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &an_reg); + + if ((an_reg & IXGBE_MII_AUTONEG_COMPLETE) && + (an_reg & IXGBE_MII_AUTONEG_LINK_UP)) + break; + + msec_delay(100); + } + + if (timeout == IXGBE_VALIDATE_LINK_READY_TIMEOUT) { + DEBUGOUT("Link was indicated but link is down\n"); + return IXGBE_ERR_LINK_SETUP; + } + + return IXGBE_SUCCESS; +} + +/** + * ixgbe_check_mac_link_82598 - Get link/speed status + * @hw: pointer to hardware structure + * @speed: pointer to link speed + * @link_up: TRUE is link is up, FALSE otherwise + * @link_up_wait_to_complete: bool used to wait for link up or not + * + * Reads the links register to determine if link is up and the current speed + **/ +static s32 ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, + ixgbe_link_speed *speed, bool *link_up, + bool link_up_wait_to_complete) { u32 links_reg; u32 i; @@ -631,31 +672,32 @@ ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, ixgbe_link_speed *speed, hw->phy.ops.read_reg(hw, 0xC79F, IXGBE_TWINAX_DEV, &link_reg); hw->phy.ops.read_reg(hw, 0xC79F, IXGBE_TWINAX_DEV, &link_reg); hw->phy.ops.read_reg(hw, 0xC00C, IXGBE_TWINAX_DEV, - &adapt_comp_reg); + &adapt_comp_reg); if (link_up_wait_to_complete) { for (i = 0; i < IXGBE_LINK_UP_TIME; i++) { if ((link_reg & 1) && ((adapt_comp_reg & 1) == 0)) { - *link_up = true; + *link_up = TRUE; break; } else { - *link_up = false; + *link_up = FALSE; } msec_delay(100); hw->phy.ops.read_reg(hw, 0xC79F, - IXGBE_TWINAX_DEV, &link_reg); + IXGBE_TWINAX_DEV, + &link_reg); hw->phy.ops.read_reg(hw, 0xC00C, - IXGBE_TWINAX_DEV, &adapt_comp_reg); + IXGBE_TWINAX_DEV, + &adapt_comp_reg); } } else { - if ((link_reg & 1) && - ((adapt_comp_reg & 1) == 0)) - *link_up = true; + if ((link_reg & 1) && ((adapt_comp_reg & 1) == 0)) + *link_up = TRUE; else - *link_up = false; + *link_up = FALSE; } - if (*link_up == false) + if (*link_up == FALSE) goto out; } @@ -663,19 +705,19 @@ ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, ixgbe_link_speed *speed, if (link_up_wait_to_complete) { for (i = 0; i < IXGBE_LINK_UP_TIME; i++) { if (links_reg & IXGBE_LINKS_UP) { - *link_up = true; + *link_up = TRUE; break; } else { - *link_up = false; + *link_up = FALSE; } msec_delay(100); links_reg = IXGBE_READ_REG(hw, IXGBE_LINKS); } } else { if (links_reg & IXGBE_LINKS_UP) - *link_up = true; + *link_up = TRUE; else - *link_up = false; + *link_up = FALSE; } if (links_reg & IXGBE_LINKS_SPEED) @@ -683,39 +725,37 @@ ixgbe_check_mac_link_82598(struct ixgbe_hw *hw, ixgbe_link_speed *speed, else *speed = IXGBE_LINK_SPEED_1GB_FULL; - if ((hw->device_id == IXGBE_DEV_ID_82598AT2) && (*link_up == true) && + if ((hw->device_id == IXGBE_DEV_ID_82598AT2) && (*link_up == TRUE) && (ixgbe_validate_link_ready(hw) != IXGBE_SUCCESS)) - *link_up = false; + *link_up = FALSE; /* if link is down, zero out the current_mode */ - if (*link_up == false) { + if (*link_up == FALSE) { hw->fc.current_mode = ixgbe_fc_none; - hw->fc.fc_was_autonegged = false; + hw->fc.fc_was_autonegged = FALSE; } - out: - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_setup_mac_link_82598 - Set MAC link speed - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true when waiting for completion is needed +/** + * ixgbe_setup_mac_link_82598 - Set MAC link speed + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE when waiting for completion is needed * - * Set the link speed in the AUTOC register and restarts link. - */ -static s32 -ixgbe_setup_mac_link_82598(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, - bool autoneg_wait_to_complete) + * Set the link speed in the AUTOC register and restarts link. + **/ +static s32 ixgbe_setup_mac_link_82598(struct ixgbe_hw *hw, + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete) { - s32 status = IXGBE_SUCCESS; + s32 status = IXGBE_SUCCESS; ixgbe_link_speed link_capabilities = IXGBE_LINK_SPEED_UNKNOWN; - u32 curr_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); - u32 autoc = curr_autoc; - u32 link_mode = autoc & IXGBE_AUTOC_LMS_MASK; + u32 curr_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); + u32 autoc = curr_autoc; + u32 link_mode = autoc & IXGBE_AUTOC_LMS_MASK; DEBUGFUNC("ixgbe_setup_mac_link_82598"); @@ -723,11 +763,12 @@ ixgbe_setup_mac_link_82598(struct ixgbe_hw *hw, (void) ixgbe_get_link_capabilities(hw, &link_capabilities, &autoneg); speed &= link_capabilities; - if (speed == IXGBE_LINK_SPEED_UNKNOWN) { + if (speed == IXGBE_LINK_SPEED_UNKNOWN) status = IXGBE_ERR_LINK_SETUP; - } else if (link_mode == IXGBE_AUTOC_LMS_KX4_AN || - link_mode == IXGBE_AUTOC_LMS_KX4_AN_1G_AN) { - /* Set KX4/KX support according to speed requested */ + + /* Set KX4/KX support according to speed requested */ + else if (link_mode == IXGBE_AUTOC_LMS_KX4_AN || + link_mode == IXGBE_AUTOC_LMS_KX4_AN_1G_AN) { autoc &= ~IXGBE_AUTOC_KX4_KX_SUPP_MASK; if (speed & IXGBE_LINK_SPEED_10GB_FULL) autoc |= IXGBE_AUTOC_KX4_SUPP; @@ -744,26 +785,26 @@ ixgbe_setup_mac_link_82598(struct ixgbe_hw *hw, * stored values */ status = ixgbe_start_mac_link_82598(hw, - autoneg_wait_to_complete); + autoneg_wait_to_complete); } - return (status); + return status; } -/* - * ixgbe_setup_copper_link_82598 - Set the PHY autoneg advertised field - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true if waiting is needed to complete + +/** + * ixgbe_setup_copper_link_82598 - Set the PHY autoneg advertised field + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE if waiting is needed to complete * - * Sets the link speed in the AUTOC register in the MAC and restarts link. - */ -static s32 -ixgbe_setup_copper_link_82598(struct ixgbe_hw *hw, - ixgbe_link_speed speed, - bool autoneg, - bool autoneg_wait_to_complete) + * Sets the link speed in the AUTOC register in the MAC and restarts link. + **/ +static s32 ixgbe_setup_copper_link_82598(struct ixgbe_hw *hw, + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete) { s32 status; @@ -771,24 +812,22 @@ ixgbe_setup_copper_link_82598(struct ixgbe_hw *hw, /* Setup the PHY according to input speed */ status = hw->phy.ops.setup_link_speed(hw, speed, autoneg, - autoneg_wait_to_complete); - + autoneg_wait_to_complete); /* Set up MAC */ (void) ixgbe_start_mac_link_82598(hw, autoneg_wait_to_complete); - return (status); + return status; } -/* - * ixgbe_reset_hw_82598 - Performs hardware reset - * @hw: pointer to hardware structure +/** + * ixgbe_reset_hw_82598 - Performs hardware reset + * @hw: pointer to hardware structure * - * Resets the hardware by resetting the transmit and receive units, masks and - * clears all interrupts, performing a PHY reset, and performing a link (MAC) - * reset. - */ -static s32 -ixgbe_reset_hw_82598(struct ixgbe_hw *hw) + * Resets the hardware by resetting the transmit and receive units, masks and + * clears all interrupts, performing a PHY reset, and performing a link (MAC) + * reset. + **/ +static s32 ixgbe_reset_hw_82598(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; s32 phy_status = IXGBE_SUCCESS; @@ -812,32 +851,32 @@ ixgbe_reset_hw_82598(struct ixgbe_hw *hw) if (analog_val & IXGBE_ATLAS_PDN_TX_REG_EN) { /* Enable Tx Atlas so packets can be transmitted again */ hw->mac.ops.read_analog_reg8(hw, IXGBE_ATLAS_PDN_LPBK, - &analog_val); + &analog_val); analog_val &= ~IXGBE_ATLAS_PDN_TX_REG_EN; hw->mac.ops.write_analog_reg8(hw, IXGBE_ATLAS_PDN_LPBK, - analog_val); + analog_val); hw->mac.ops.read_analog_reg8(hw, IXGBE_ATLAS_PDN_10G, - &analog_val); + &analog_val); analog_val &= ~IXGBE_ATLAS_PDN_TX_10G_QL_ALL; hw->mac.ops.write_analog_reg8(hw, IXGBE_ATLAS_PDN_10G, - analog_val); + analog_val); hw->mac.ops.read_analog_reg8(hw, IXGBE_ATLAS_PDN_1G, - &analog_val); + &analog_val); analog_val &= ~IXGBE_ATLAS_PDN_TX_1G_QL_ALL; hw->mac.ops.write_analog_reg8(hw, IXGBE_ATLAS_PDN_1G, - analog_val); + analog_val); hw->mac.ops.read_analog_reg8(hw, IXGBE_ATLAS_PDN_AN, - &analog_val); + &analog_val); analog_val &= ~IXGBE_ATLAS_PDN_TX_AN_QL_ALL; hw->mac.ops.write_analog_reg8(hw, IXGBE_ATLAS_PDN_AN, - analog_val); + analog_val); } /* Reset PHY */ - if (hw->phy.reset_disable == false) { + if (hw->phy.reset_disable == FALSE) { /* PHY ops must be identified and initialized prior to reset */ /* Init PHY and function pointers, perform SFP setup */ @@ -858,7 +897,6 @@ no_phy_reset: (void) ixgbe_disable_pcie_master(hw); mac_reset_top: - /* * Issue global reset to the MAC. This needs to be a SW reset. * If link reset is used, it might reset the MAC when mng is using it @@ -891,6 +929,7 @@ mac_reset_top: usec_delay(1); goto mac_reset_top; } + msec_delay(50); gheccr = IXGBE_READ_REG(hw, IXGBE_GHECCR); @@ -903,9 +942,9 @@ mac_reset_top: * AUTOC value since the reset operation sets back to deaults. */ autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); - if (hw->mac.orig_link_settings_stored == false) { + if (hw->mac.orig_link_settings_stored == FALSE) { hw->mac.orig_autoc = autoc; - hw->mac.orig_link_settings_stored = true; + hw->mac.orig_link_settings_stored = TRUE; } else if (autoc != hw->mac.orig_autoc) { IXGBE_WRITE_REG(hw, IXGBE_AUTOC, hw->mac.orig_autoc); } @@ -923,67 +962,74 @@ reset_hw_out: if (phy_status != IXGBE_SUCCESS) status = phy_status; - return (status); + return status; } -/* - * ixgbe_set_vmdq_82598 - Associate a VMDq set index with a rx address - * @hw: pointer to hardware struct - * @rar: receive address register index to associate with a VMDq index - * @vmdq: VMDq set index - */ -s32 -ixgbe_set_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_set_vmdq_82598 - Associate a VMDq set index with a rx address + * @hw: pointer to hardware struct + * @rar: receive address register index to associate with a VMDq index + * @vmdq: VMDq set index + **/ +s32 ixgbe_set_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { u32 rar_high; + u32 rar_entries = hw->mac.num_rar_entries; DEBUGFUNC("ixgbe_set_vmdq_82598"); + /* Make sure we are using a valid rar index range */ + if (rar >= rar_entries) { + DEBUGOUT1("RAR index %d is out of range.\n", rar); + return IXGBE_ERR_INVALID_ARGUMENT; + } + rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(rar)); rar_high &= ~IXGBE_RAH_VIND_MASK; rar_high |= ((vmdq << IXGBE_RAH_VIND_SHIFT) & IXGBE_RAH_VIND_MASK); IXGBE_WRITE_REG(hw, IXGBE_RAH(rar), rar_high); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_clear_vmdq_82598 - Disassociate a VMDq set index from an rx address - * @hw: pointer to hardware struct - * @rar: receive address register index to associate with a VMDq index - * @vmdq: VMDq clear index (not used in 82598, but elsewhere) - */ -static s32 -ixgbe_clear_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_clear_vmdq_82598 - Disassociate a VMDq set index from an rx address + * @hw: pointer to hardware struct + * @rar: receive address register index to associate with a VMDq index + * @vmdq: VMDq clear index (not used in 82598, but elsewhere) + **/ +static s32 ixgbe_clear_vmdq_82598(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { u32 rar_high; u32 rar_entries = hw->mac.num_rar_entries; UNREFERENCED_PARAMETER(vmdq); - if (rar < rar_entries) { - rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(rar)); - if (rar_high & IXGBE_RAH_VIND_MASK) { - rar_high &= ~IXGBE_RAH_VIND_MASK; - IXGBE_WRITE_REG(hw, IXGBE_RAH(rar), rar_high); - } - } else { + /* Make sure we are using a valid rar index range */ + if (rar >= rar_entries) { DEBUGOUT1("RAR index %d is out of range.\n", rar); + return IXGBE_ERR_INVALID_ARGUMENT; + } + + rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(rar)); + if (rar_high & IXGBE_RAH_VIND_MASK) { + rar_high &= ~IXGBE_RAH_VIND_MASK; + IXGBE_WRITE_REG(hw, IXGBE_RAH(rar), rar_high); } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_set_vfta_82598 - Set VLAN filter table - * @hw: pointer to hardware structure - * @vlan: VLAN id to write to VLAN filter - * @vind: VMDq output index that maps queue to VLAN id in VFTA - * @vlan_on: boolean flag to turn on/off VLAN in VFTA +/** + * ixgbe_set_vfta_82598 - Set VLAN filter table + * @hw: pointer to hardware structure + * @vlan: VLAN id to write to VLAN filter + * @vind: VMDq output index that maps queue to VLAN id in VFTA + * @vlan_on: boolean flag to turn on/off VLAN in VFTA * - * Turn on/off specified VLAN in the VLAN filter table. - */ -s32 -ixgbe_set_vfta_82598(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) + * Turn on/off specified VLAN in the VLAN filter table. + **/ +s32 ixgbe_set_vfta_82598(struct ixgbe_hw *hw, u32 vlan, u32 vind, + bool vlan_on) { u32 regindex; u32 bitindex; @@ -993,7 +1039,7 @@ ixgbe_set_vfta_82598(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) DEBUGFUNC("ixgbe_set_vfta_82598"); if (vlan > 4095) - return (IXGBE_ERR_PARAM); + return IXGBE_ERR_PARAM; /* Determine 32-bit word position in array */ regindex = (vlan >> 5) & 0x7F; /* upper seven bits */ @@ -1020,17 +1066,16 @@ ixgbe_set_vfta_82598(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) bits &= ~(1 << bitindex); IXGBE_WRITE_REG(hw, IXGBE_VFTA(regindex), bits); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_clear_vfta_82598 - Clear VLAN filter table - * @hw: pointer to hardware structure +/** + * ixgbe_clear_vfta_82598 - Clear VLAN filter table + * @hw: pointer to hardware structure * - * Clears the VLAN filer table, and the VMDq index associated with the filter - */ -static s32 -ixgbe_clear_vfta_82598(struct ixgbe_hw *hw) + * Clears the VLAN filer table, and the VMDq index associated with the filter + **/ +static s32 ixgbe_clear_vfta_82598(struct ixgbe_hw *hw) { u32 offset; u32 vlanbyte; @@ -1042,47 +1087,45 @@ ixgbe_clear_vfta_82598(struct ixgbe_hw *hw) for (vlanbyte = 0; vlanbyte < 4; vlanbyte++) for (offset = 0; offset < hw->mac.vft_size; offset++) - IXGBE_WRITE_REG(hw, - IXGBE_VFTAVIND(vlanbyte, offset), 0); + IXGBE_WRITE_REG(hw, IXGBE_VFTAVIND(vlanbyte, offset), + 0); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_read_analog_reg8_82598 - Reads 8 bit Atlas analog register - * @hw: pointer to hardware structure - * @reg: analog register to read - * @val: read value +/** + * ixgbe_read_analog_reg8_82598 - Reads 8 bit Atlas analog register + * @hw: pointer to hardware structure + * @reg: analog register to read + * @val: read value * - * Performs read operation to Atlas analog register specified. - */ -s32 -ixgbe_read_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 *val) + * Performs read operation to Atlas analog register specified. + **/ +s32 ixgbe_read_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 *val) { u32 atlas_ctl; DEBUGFUNC("ixgbe_read_analog_reg8_82598"); IXGBE_WRITE_REG(hw, IXGBE_ATLASCTL, - IXGBE_ATLASCTL_WRITE_CMD | (reg << 8)); + IXGBE_ATLASCTL_WRITE_CMD | (reg << 8)); IXGBE_WRITE_FLUSH(hw); usec_delay(10); atlas_ctl = IXGBE_READ_REG(hw, IXGBE_ATLASCTL); *val = (u8)atlas_ctl; - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_write_analog_reg8_82598 - Writes 8 bit Atlas analog register - * @hw: pointer to hardware structure - * @reg: atlas register to write - * @val: value to write +/** + * ixgbe_write_analog_reg8_82598 - Writes 8 bit Atlas analog register + * @hw: pointer to hardware structure + * @reg: atlas register to write + * @val: value to write * - * Performs write operation to Atlas analog register specified. - */ -s32 -ixgbe_write_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 val) + * Performs write operation to Atlas analog register specified. + **/ +s32 ixgbe_write_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 val) { u32 atlas_ctl; @@ -1093,20 +1136,19 @@ ixgbe_write_analog_reg8_82598(struct ixgbe_hw *hw, u32 reg, u8 val) IXGBE_WRITE_FLUSH(hw); usec_delay(10); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_read_i2c_eeprom_82598 - Reads 8 bit word over I2C interface. - * @hw: pointer to hardware structure - * @byte_offset: EEPROM byte offset to read - * @eeprom_data: value read +/** + * ixgbe_read_i2c_eeprom_82598 - Reads 8 bit word over I2C interface. + * @hw: pointer to hardware structure + * @byte_offset: EEPROM byte offset to read + * @eeprom_data: value read * - * Performs 8 byte read operation to SFP module's EEPROM over I2C interface. - */ -s32 -ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, - u8 *eeprom_data) + * Performs 8 byte read operation to SFP module's EEPROM over I2C interface. + **/ +s32 ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, + u8 *eeprom_data) { s32 status = IXGBE_SUCCESS; u16 sfp_addr = 0; @@ -1124,14 +1166,17 @@ ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, */ sfp_addr = (IXGBE_I2C_EEPROM_DEV_ADDR << 8) + byte_offset; sfp_addr = (sfp_addr | IXGBE_I2C_EEPROM_READ_MASK); - hw->phy.ops.write_reg(hw, IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, sfp_addr); + hw->phy.ops.write_reg(hw, + IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + sfp_addr); /* Poll status */ for (i = 0; i < 100; i++) { hw->phy.ops.read_reg(hw, - IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &sfp_stat); + IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &sfp_stat); sfp_stat = sfp_stat & IXGBE_I2C_EEPROM_STATUS_MASK; if (sfp_stat != IXGBE_I2C_EEPROM_STATUS_IN_PROGRESS) break; @@ -1146,7 +1191,7 @@ ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, /* Read data */ hw->phy.ops.read_reg(hw, IXGBE_MDIO_PMA_PMD_SDA_SCL_DATA, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &sfp_data); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &sfp_data); *eeprom_data = (u8)(sfp_data >> 8); } else { @@ -1155,17 +1200,16 @@ ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset, } out: - return (status); + return status; } -/* - * ixgbe_get_supported_physical_layer_82598 - Returns physical layer type - * @hw: pointer to hardware structure +/** + * ixgbe_get_supported_physical_layer_82598 - Returns physical layer type + * @hw: pointer to hardware structure * - * Determines physical layer capabilities of the current configuration. - */ -u32 -ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw) + * Determines physical layer capabilities of the current configuration. + **/ +u32 ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw) { u32 physical_layer = IXGBE_PHYSICAL_LAYER_UNKNOWN; u32 autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); @@ -1177,14 +1221,14 @@ ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw) hw->phy.ops.identify(hw); - /* - * Copper PHY must be checked before AUTOC LMS to determine correct - * physical layer because 10GBase-T PHYs use LMS = KX4/KX - */ - if (hw->phy.type == ixgbe_phy_tn || - hw->phy.type == ixgbe_phy_cu_unknown) { + /* Copper PHY must be checked before AUTOC LMS to determine correct + * physical layer because 10GBase-T PHYs use LMS = KX4/KX */ + switch (hw->phy.type) { + case ixgbe_phy_tn: + case ixgbe_phy_aq: + case ixgbe_phy_cu_unknown: hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_EXT_ABILITY, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &ext_ability); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &ext_ability); if (ext_ability & IXGBE_MDIO_PHY_10GBASET_ABILITY) physical_layer |= IXGBE_PHYSICAL_LAYER_10GBASE_T; if (ext_ability & IXGBE_MDIO_PHY_1000BASET_ABILITY) @@ -1192,6 +1236,8 @@ ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw) if (ext_ability & IXGBE_MDIO_PHY_100BASETX_ABILITY) physical_layer |= IXGBE_PHYSICAL_LAYER_100BASE_TX; goto out; + default: + break; } switch (autoc & IXGBE_AUTOC_LMS_MASK) { @@ -1257,22 +1303,22 @@ ixgbe_get_supported_physical_layer_82598(struct ixgbe_hw *hw) } out: - return (physical_layer); + return physical_layer; } -/* - * ixgbe_set_lan_id_multi_port_pcie_82598 - Set LAN id for PCIe multiple - * port devices. - * @hw: pointer to the HW structure +/** + * ixgbe_set_lan_id_multi_port_pcie_82598 - Set LAN id for PCIe multiple + * port devices. + * @hw: pointer to the HW structure * - * Calls common function and corrects issue with some single port devices - * that enable LAN1 but not LAN0. - */ -void -ixgbe_set_lan_id_multi_port_pcie_82598(struct ixgbe_hw *hw) + * Calls common function and corrects issue with some single port devices + * that enable LAN1 but not LAN0. + **/ +void ixgbe_set_lan_id_multi_port_pcie_82598(struct ixgbe_hw *hw) { struct ixgbe_bus_info *bus = &hw->bus; - u16 pci_gen, pci_ctrl2; + u16 pci_gen = 0; + u16 pci_ctrl2 = 0; DEBUGFUNC("ixgbe_set_lan_id_multi_port_pcie_82598"); @@ -1281,59 +1327,25 @@ ixgbe_set_lan_id_multi_port_pcie_82598(struct ixgbe_hw *hw) /* check if LAN0 is disabled */ hw->eeprom.ops.read(hw, IXGBE_PCIE_GENERAL_PTR, &pci_gen); if ((pci_gen != 0) && (pci_gen != 0xFFFF)) { + hw->eeprom.ops.read(hw, pci_gen + IXGBE_PCIE_CTRL2, &pci_ctrl2); /* if LAN0 is completely disabled force function to 0 */ if ((pci_ctrl2 & IXGBE_PCIE_CTRL2_LAN_DISABLE) && !(pci_ctrl2 & IXGBE_PCIE_CTRL2_DISABLE_SELECT) && !(pci_ctrl2 & IXGBE_PCIE_CTRL2_DUMMY_ENABLE)) { + bus->func = 0; } } } -/* - * ixgbe_validate_link_ready - Function looks for phy link - * @hw: pointer to hardware structure +/** + * ixgbe_enable_relaxed_ordering_82598 - enable relaxed ordering + * @hw: pointer to hardware structure * - * Function indicates success when phy link is available. If phy is not ready - * within 5 seconds of MAC indicating link, the function returns error. - */ -static s32 -ixgbe_validate_link_ready(struct ixgbe_hw *hw) -{ - u32 timeout; - u16 an_reg; - - if (hw->device_id != IXGBE_DEV_ID_82598AT2) - return (IXGBE_SUCCESS); - - for (timeout = 0; - timeout < IXGBE_VALIDATE_LINK_READY_TIMEOUT; timeout++) { - hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_STATUS, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &an_reg); - - if ((an_reg & IXGBE_MII_AUTONEG_COMPLETE) && - (an_reg & IXGBE_MII_AUTONEG_LINK_UP)) - break; - - msec_delay(100); - } - - if (timeout == IXGBE_VALIDATE_LINK_READY_TIMEOUT) { - DEBUGOUT("Link was indicated but link is down\n"); - return (IXGBE_ERR_LINK_SETUP); - } - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_enable_relaxed_ordering_82598 - enable relaxed ordering - * @hw: pointer to hardware structure - */ -void -ixgbe_enable_relaxed_ordering_82598(struct ixgbe_hw *hw) + **/ +void ixgbe_enable_relaxed_ordering_82598(struct ixgbe_hw *hw) { u32 regval; u32 i; @@ -1342,17 +1354,18 @@ ixgbe_enable_relaxed_ordering_82598(struct ixgbe_hw *hw) /* Enable relaxed ordering */ for (i = 0; ((i < hw->mac.max_tx_queues) && - (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { + (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL(i)); regval |= IXGBE_DCA_TXCTRL_TX_WB_RO_EN; IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL(i), regval); } for (i = 0; ((i < hw->mac.max_rx_queues) && - (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { + (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) { regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); regval |= (IXGBE_DCA_RXCTRL_DESC_WRO_EN | - IXGBE_DCA_RXCTRL_DESC_HSRO_EN); + IXGBE_DCA_RXCTRL_DESC_HSRO_EN); IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); } + } diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_82599.c b/usr/src/uts/common/io/ixgbe/ixgbe_82599.c index 61e98ed064..d6562dd641 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_82599.c +++ b/usr/src/uts/common/io/ixgbe/ixgbe_82599.c @@ -1,34 +1,36 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.217 scm_061610_003709 */ +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ #include "ixgbe_type.h" #include "ixgbe_api.h" @@ -37,76 +39,87 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw); s32 ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *autoneg); + ixgbe_link_speed *speed, + bool *autoneg); enum ixgbe_media_type ixgbe_get_media_type_82599(struct ixgbe_hw *hw); void ixgbe_disable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); void ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); void ixgbe_flap_tx_laser_multispeed_fiber(struct ixgbe_hw *hw); s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete); + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete); s32 ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete); + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete); s32 ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, - bool autoneg_wait_to_complete); + bool autoneg_wait_to_complete); s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, - bool autoneg_wait_to_complete); + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); static s32 ixgbe_setup_copper_link_82599(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, - bool autoneg_wait_to_complete); + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); s32 ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw); void ixgbe_init_mac_link_ops_82599(struct ixgbe_hw *hw); s32 ixgbe_reset_hw_82599(struct ixgbe_hw *hw); s32 ixgbe_read_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 *val); s32 ixgbe_write_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 val); s32 ixgbe_start_hw_rev_1_82599(struct ixgbe_hw *hw); -void ixgbe_enable_relaxed_ordering_82599(struct ixgbe_hw *hw); s32 ixgbe_identify_phy_82599(struct ixgbe_hw *hw); s32 ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw); u32 ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw); s32 ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval); -s32 ixgbe_get_device_caps_82599(struct ixgbe_hw *hw, u16 *device_caps); static s32 ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw); +bool ixgbe_verify_lesm_fw_enabled_82599(struct ixgbe_hw *hw); + -void -ixgbe_init_mac_link_ops_82599(struct ixgbe_hw *hw) +void ixgbe_init_mac_link_ops_82599(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; DEBUGFUNC("ixgbe_init_mac_link_ops_82599"); - if (hw->phy.multispeed_fiber) { - /* Set up dual speed SFP+ support */ - mac->ops.setup_link = &ixgbe_setup_mac_link_multispeed_fiber; + /* enable the laser control functions for SFP+ fiber */ + if (mac->ops.get_media_type(hw) == ixgbe_media_type_fiber) { mac->ops.disable_tx_laser = - &ixgbe_disable_tx_laser_multispeed_fiber; + &ixgbe_disable_tx_laser_multispeed_fiber; mac->ops.enable_tx_laser = - &ixgbe_enable_tx_laser_multispeed_fiber; + &ixgbe_enable_tx_laser_multispeed_fiber; mac->ops.flap_tx_laser = &ixgbe_flap_tx_laser_multispeed_fiber; + } else { mac->ops.disable_tx_laser = NULL; mac->ops.enable_tx_laser = NULL; mac->ops.flap_tx_laser = NULL; + } + + if (hw->phy.multispeed_fiber) { + /* Set up dual speed SFP+ support */ + mac->ops.setup_link = &ixgbe_setup_mac_link_multispeed_fiber; + } else { if ((ixgbe_get_media_type(hw) == ixgbe_media_type_backplane) && - (hw->phy.smart_speed == ixgbe_smart_speed_auto || - hw->phy.smart_speed == ixgbe_smart_speed_on)) + (hw->phy.smart_speed == ixgbe_smart_speed_auto || + hw->phy.smart_speed == ixgbe_smart_speed_on) && + !ixgbe_verify_lesm_fw_enabled_82599(hw)) { mac->ops.setup_link = &ixgbe_setup_mac_link_smartspeed; - else + } else { mac->ops.setup_link = &ixgbe_setup_mac_link_82599; + } } } -/* - * ixgbe_init_phy_ops_82599 - PHY/SFP specific init - * @hw: pointer to hardware structure +/** + * ixgbe_init_phy_ops_82599 - PHY/SFP specific init + * @hw: pointer to hardware structure * - * Initialize any function pointers that were not able to be - * set during init_shared_code because the PHY/SFP type was - * not known. Perform the SFP init if necessary. + * Initialize any function pointers that were not able to be + * set during init_shared_code because the PHY/SFP type was + * not known. Perform the SFP init if necessary. * - */ -s32 -ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw) + **/ +s32 ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; struct ixgbe_phy_info *phy = &hw->phy; @@ -128,7 +141,7 @@ ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw) if (mac->ops.get_media_type(hw) == ixgbe_media_type_copper) { mac->ops.setup_link = &ixgbe_setup_copper_link_82599; mac->ops.get_link_capabilities = - &ixgbe_get_copper_link_capabilities_generic; + &ixgbe_get_copper_link_capabilities_generic; } /* Set necessary function pointers based on phy type */ @@ -137,24 +150,24 @@ ixgbe_init_phy_ops_82599(struct ixgbe_hw *hw) phy->ops.setup_link = &ixgbe_setup_phy_link_tnx; phy->ops.check_link = &ixgbe_check_phy_link_tnx; phy->ops.get_firmware_version = - &ixgbe_get_phy_firmware_version_tnx; + &ixgbe_get_phy_firmware_version_tnx; break; case ixgbe_phy_aq: phy->ops.get_firmware_version = - &ixgbe_get_phy_firmware_version_generic; + &ixgbe_get_phy_firmware_version_generic; break; default: break; } - init_phy_ops_out: - return (ret_val); + return ret_val; } -s32 -ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw) +s32 ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw) { s32 ret_val = IXGBE_SUCCESS; + u32 reg_anlp1 = 0; + u32 i = 0; u16 list_offset, data_offset, data_value; DEBUGFUNC("ixgbe_setup_sfp_modules_82599"); @@ -165,8 +178,7 @@ ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw) hw->phy.ops.reset = NULL; ret_val = ixgbe_get_sfp_init_sequence_offsets(hw, &list_offset, - &data_offset); - + &data_offset); if (ret_val != IXGBE_SUCCESS) goto setup_sfp_out; @@ -183,30 +195,49 @@ ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw) IXGBE_WRITE_FLUSH(hw); hw->eeprom.ops.read(hw, ++data_offset, &data_value); } - /* Now restart DSP by setting Restart_AN */ - IXGBE_WRITE_REG(hw, IXGBE_AUTOC, - (IXGBE_READ_REG(hw, IXGBE_AUTOC) | IXGBE_AUTOC_AN_RESTART)); /* Release the semaphore */ ixgbe_release_swfw_sync(hw, IXGBE_GSSR_MAC_CSR_SM); /* Delay obtaining semaphore again to allow FW access */ msec_delay(hw->eeprom.semaphore_delay); + + /* Now restart DSP by setting Restart_AN and clearing LMS */ + IXGBE_WRITE_REG(hw, IXGBE_AUTOC, ((IXGBE_READ_REG(hw, + IXGBE_AUTOC) & ~IXGBE_AUTOC_LMS_MASK) | + IXGBE_AUTOC_AN_RESTART)); + + /* Wait for AN to leave state 0 */ + for (i = 0; i < 10; i++) { + msec_delay(4); + reg_anlp1 = IXGBE_READ_REG(hw, IXGBE_ANLP1); + if (reg_anlp1 & IXGBE_ANLP1_AN_STATE_MASK) + break; + } + if (!(reg_anlp1 & IXGBE_ANLP1_AN_STATE_MASK)) { + DEBUGOUT("sfp module setup not complete\n"); + ret_val = IXGBE_ERR_SFP_SETUP_NOT_COMPLETE; + goto setup_sfp_out; + } + + /* Restart DSP by setting Restart_AN and return to SFI mode */ + IXGBE_WRITE_REG(hw, IXGBE_AUTOC, (IXGBE_READ_REG(hw, + IXGBE_AUTOC) | IXGBE_AUTOC_LMS_10G_SERIAL | + IXGBE_AUTOC_AN_RESTART)); } setup_sfp_out: - return (ret_val); + return ret_val; } -/* - * ixgbe_init_ops_82599 - Inits func ptrs and MAC type - * @hw: pointer to hardware structure +/** + * ixgbe_init_ops_82599 - Inits func ptrs and MAC type + * @hw: pointer to hardware structure * - * Initialize the function pointers and assign the MAC type for 82599. - * Does not touch the hardware. - */ + * Initialize the function pointers and assign the MAC type for 82599. + * Does not touch the hardware. + **/ -s32 -ixgbe_init_ops_82599(struct ixgbe_hw *hw) +s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; struct ixgbe_phy_info *phy = &hw->phy; @@ -223,18 +254,17 @@ ixgbe_init_ops_82599(struct ixgbe_hw *hw) /* MAC */ mac->ops.reset_hw = &ixgbe_reset_hw_82599; - mac->ops.enable_relaxed_ordering = &ixgbe_enable_relaxed_ordering_82599; + mac->ops.enable_relaxed_ordering = &ixgbe_enable_relaxed_ordering_gen2; mac->ops.get_media_type = &ixgbe_get_media_type_82599; mac->ops.get_supported_physical_layer = - &ixgbe_get_supported_physical_layer_82599; + &ixgbe_get_supported_physical_layer_82599; mac->ops.enable_rx_dma = &ixgbe_enable_rx_dma_82599; mac->ops.read_analog_reg8 = &ixgbe_read_analog_reg8_82599; mac->ops.write_analog_reg8 = &ixgbe_write_analog_reg8_82599; mac->ops.start_hw = &ixgbe_start_hw_rev_1_82599; - mac->ops.enable_relaxed_ordering = &ixgbe_enable_relaxed_ordering_82599; mac->ops.get_san_mac_addr = &ixgbe_get_san_mac_addr_generic; mac->ops.set_san_mac_addr = &ixgbe_set_san_mac_addr_generic; - mac->ops.get_device_caps = &ixgbe_get_device_caps_82599; + mac->ops.get_device_caps = &ixgbe_get_device_caps_generic; mac->ops.get_wwn_prefix = &ixgbe_get_wwn_prefix_generic; mac->ops.get_fcoe_boot_status = &ixgbe_get_fcoe_boot_status_generic; @@ -247,44 +277,48 @@ ixgbe_init_ops_82599(struct ixgbe_hw *hw) mac->ops.clear_vfta = &ixgbe_clear_vfta_generic; mac->ops.init_uta_tables = &ixgbe_init_uta_tables_generic; mac->ops.setup_sfp = &ixgbe_setup_sfp_modules_82599; + mac->ops.set_mac_anti_spoofing = &ixgbe_set_mac_anti_spoofing; + mac->ops.set_vlan_anti_spoofing = &ixgbe_set_vlan_anti_spoofing; /* Link */ mac->ops.get_link_capabilities = &ixgbe_get_link_capabilities_82599; - mac->ops.check_link = &ixgbe_check_mac_link_generic; + mac->ops.check_link = &ixgbe_check_mac_link_generic; ixgbe_init_mac_link_ops_82599(hw); - mac->mcft_size = 128; - mac->vft_size = 128; - mac->num_rar_entries = 128; - mac->max_tx_queues = 128; - mac->max_rx_queues = 128; + mac->mcft_size = 128; + mac->vft_size = 128; + mac->num_rar_entries = 128; + mac->rx_pb_size = 512; + mac->max_tx_queues = 128; + mac->max_rx_queues = 128; mac->max_msix_vectors = ixgbe_get_pcie_msix_count_generic(hw); - return (ret_val); + return ret_val; } -/* - * ixgbe_get_link_capabilities_82599 - Determines link capabilities - * @hw: pointer to hardware structure - * @speed: pointer to link speed - * @negotiation: true when autoneg or autotry is enabled +/** + * ixgbe_get_link_capabilities_82599 - Determines link capabilities + * @hw: pointer to hardware structure + * @speed: pointer to link speed + * @negotiation: TRUE when autoneg or autotry is enabled * - * Determines the link capabilities by reading the AUTOC register. - */ -s32 -ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *negotiation) + * Determines the link capabilities by reading the AUTOC register. + **/ +s32 ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, + ixgbe_link_speed *speed, + bool *negotiation) { s32 status = IXGBE_SUCCESS; u32 autoc = 0; DEBUGFUNC("ixgbe_get_link_capabilities_82599"); + /* Check if 1G SFP module. */ if (hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core0 || hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core1) { *speed = IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = true; + *negotiation = TRUE; goto out; } @@ -301,22 +335,22 @@ ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, switch (autoc & IXGBE_AUTOC_LMS_MASK) { case IXGBE_AUTOC_LMS_1G_LINK_NO_AN: *speed = IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = false; + *negotiation = FALSE; break; case IXGBE_AUTOC_LMS_10G_LINK_NO_AN: *speed = IXGBE_LINK_SPEED_10GB_FULL; - *negotiation = false; + *negotiation = FALSE; break; case IXGBE_AUTOC_LMS_1G_AN: *speed = IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = true; + *negotiation = TRUE; break; case IXGBE_AUTOC_LMS_10G_SERIAL: *speed = IXGBE_LINK_SPEED_10GB_FULL; - *negotiation = false; + *negotiation = FALSE; break; case IXGBE_AUTOC_LMS_KX4_KX_KR: @@ -328,7 +362,7 @@ ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, *speed |= IXGBE_LINK_SPEED_10GB_FULL; if (autoc & IXGBE_AUTOC_KX_SUPP) *speed |= IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = true; + *negotiation = TRUE; break; case IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII: @@ -339,12 +373,12 @@ ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, *speed |= IXGBE_LINK_SPEED_10GB_FULL; if (autoc & IXGBE_AUTOC_KX_SUPP) *speed |= IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = true; + *negotiation = TRUE; break; case IXGBE_AUTOC_LMS_SGMII_1G_100M: *speed = IXGBE_LINK_SPEED_1GB_FULL | IXGBE_LINK_SPEED_100_FULL; - *negotiation = false; + *negotiation = FALSE; break; default: @@ -354,46 +388,48 @@ ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, if (hw->phy.multispeed_fiber) { *speed |= IXGBE_LINK_SPEED_10GB_FULL | - IXGBE_LINK_SPEED_1GB_FULL; - *negotiation = true; + IXGBE_LINK_SPEED_1GB_FULL; + *negotiation = TRUE; } out: - return (status); + return status; } -/* - * ixgbe_get_media_type_82599 - Get media type - * @hw: pointer to hardware structure +/** + * ixgbe_get_media_type_82599 - Get media type + * @hw: pointer to hardware structure * - * Returns the media type (fiber, copper, backplane) - */ -enum ixgbe_media_type -ixgbe_get_media_type_82599(struct ixgbe_hw *hw) + * Returns the media type (fiber, copper, backplane) + **/ +enum ixgbe_media_type ixgbe_get_media_type_82599(struct ixgbe_hw *hw) { enum ixgbe_media_type media_type; DEBUGFUNC("ixgbe_get_media_type_82599"); /* Detect if there is a copper PHY attached. */ - if (hw->phy.type == ixgbe_phy_cu_unknown || - hw->phy.type == ixgbe_phy_tn || - hw->phy.type == ixgbe_phy_aq) { + switch (hw->phy.type) { + case ixgbe_phy_cu_unknown: + case ixgbe_phy_tn: + case ixgbe_phy_aq: media_type = ixgbe_media_type_copper; goto out; + default: + break; } switch (hw->device_id) { case IXGBE_DEV_ID_82599_KX4: case IXGBE_DEV_ID_82599_KX4_MEZZ: case IXGBE_DEV_ID_82599_COMBO_BACKPLANE: - case IXGBE_DEV_ID_82599_KR: + case IXGBE_DEV_ID_82599_BACKPLANE_FCOE: case IXGBE_DEV_ID_82599_XAUI_LOM: /* Default device ID is mezzanine card KX/KX4 */ media_type = ixgbe_media_type_backplane; break; case IXGBE_DEV_ID_82599_SFP: - case IXGBE_DEV_ID_82599_SFP_EM: + case IXGBE_DEV_ID_82599_SFP_FCOE: media_type = ixgbe_media_type_fiber; break; case IXGBE_DEV_ID_82599_CX4: @@ -407,18 +443,19 @@ ixgbe_get_media_type_82599(struct ixgbe_hw *hw) break; } out: - return (media_type); + return media_type; } -/* - * ixgbe_start_mac_link_82599 - Setup MAC link settings - * @hw: pointer to hardware structure +/** + * ixgbe_start_mac_link_82599 - Setup MAC link settings + * @hw: pointer to hardware structure + * @autoneg_wait_to_complete: TRUE when waiting for completion is needed * - * Configures link settings based on values in the ixgbe_hw struct. - * Restarts the link. Performs autonegotiation if needed. - */ -s32 -ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) + * Configures link settings based on values in the ixgbe_hw struct. + * Restarts the link. Performs autonegotiation if needed. + **/ +s32 ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, + bool autoneg_wait_to_complete) { u32 autoc_reg; u32 links_reg; @@ -427,6 +464,7 @@ ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) DEBUGFUNC("ixgbe_start_mac_link_82599"); + /* Restart link */ autoc_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC); autoc_reg |= IXGBE_AUTOC_AN_RESTART; @@ -435,11 +473,11 @@ ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) /* Only poll for autoneg to complete if specified to do so */ if (autoneg_wait_to_complete) { if ((autoc_reg & IXGBE_AUTOC_LMS_MASK) == - IXGBE_AUTOC_LMS_KX4_KX_KR || + IXGBE_AUTOC_LMS_KX4_KX_KR || (autoc_reg & IXGBE_AUTOC_LMS_MASK) == - IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN || + IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN || (autoc_reg & IXGBE_AUTOC_LMS_MASK) == - IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII) { + IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII) { links_reg = 0; /* Just in case Autoneg time = 0 */ for (i = 0; i < IXGBE_AUTO_NEG_TIME; i++) { links_reg = IXGBE_READ_REG(hw, IXGBE_LINKS); @@ -457,97 +495,90 @@ ixgbe_start_mac_link_82599(struct ixgbe_hw *hw, bool autoneg_wait_to_complete) /* Add delay to filter out noises during initial link setup */ msec_delay(50); - return (status); + return status; } -/* - * ixgbe_disable_tx_laser_multispeed_fiber - Disable Tx laser - * @hw: pointer to hardware structure +/** + * ixgbe_disable_tx_laser_multispeed_fiber - Disable Tx laser + * @hw: pointer to hardware structure * - * The base drivers may require better control over SFP+ module - * PHY states. This includes selectively shutting down the Tx - * laser on the PHY, effectively halting physical link. - */ -void -ixgbe_disable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) + * The base drivers may require better control over SFP+ module + * PHY states. This includes selectively shutting down the Tx + * laser on the PHY, effectively halting physical link. + **/ +void ixgbe_disable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) { u32 esdp_reg = IXGBE_READ_REG(hw, IXGBE_ESDP); - /* - * Disable tx laser; allow 100us to go dark per spec - */ + /* Disable tx laser; allow 100us to go dark per spec */ esdp_reg |= IXGBE_ESDP_SDP3; IXGBE_WRITE_REG(hw, IXGBE_ESDP, esdp_reg); IXGBE_WRITE_FLUSH(hw); usec_delay(100); } -/* - * ixgbe_enable_tx_laser_multispeed_fiber - Enable Tx laser - * @hw: pointer to hardware structure +/** + * ixgbe_enable_tx_laser_multispeed_fiber - Enable Tx laser + * @hw: pointer to hardware structure * - * The base drivers may require better control over SFP+ module - * PHY states. This includes selectively turning on the Tx - * laser on the PHY, effectively starting physical link. - */ -void -ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) + * The base drivers may require better control over SFP+ module + * PHY states. This includes selectively turning on the Tx + * laser on the PHY, effectively starting physical link. + **/ +void ixgbe_enable_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) { u32 esdp_reg = IXGBE_READ_REG(hw, IXGBE_ESDP); - /* - * Enable tx laser; allow 100ms to light up - */ + /* Enable tx laser; allow 100ms to light up */ esdp_reg &= ~IXGBE_ESDP_SDP3; IXGBE_WRITE_REG(hw, IXGBE_ESDP, esdp_reg); IXGBE_WRITE_FLUSH(hw); msec_delay(100); } -/* - * ixgbe_flap_tx_laser_multispeed_fiber - Flap Tx laser - * @hw: pointer to hardware structure +/** + * ixgbe_flap_tx_laser_multispeed_fiber - Flap Tx laser + * @hw: pointer to hardware structure * - * When the driver changes the link speeds that it can support, - * it sets autotry_restart to true to indicate that we need to - * initiate a new autotry session with the link partner. To do - * so, we set the speed then disable and re-enable the tx laser, to - * alert the link partner that it also needs to restart autotry on its - * end. This is consistent with true clause 37 autoneg, which also - * involves a loss of signal. - */ -void -ixgbe_flap_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) + * When the driver changes the link speeds that it can support, + * it sets autotry_restart to TRUE to indicate that we need to + * initiate a new autotry session with the link partner. To do + * so, we set the speed then disable and re-enable the tx laser, to + * alert the link partner that it also needs to restart autotry on its + * end. This is consistent with TRUE clause 37 autoneg, which also + * involves a loss of signal. + **/ +void ixgbe_flap_tx_laser_multispeed_fiber(struct ixgbe_hw *hw) { DEBUGFUNC("ixgbe_flap_tx_laser_multispeed_fiber"); if (hw->mac.autotry_restart) { ixgbe_disable_tx_laser_multispeed_fiber(hw); ixgbe_enable_tx_laser_multispeed_fiber(hw); - hw->mac.autotry_restart = false; + hw->mac.autotry_restart = FALSE; } } -/* - * ixgbe_setup_mac_link_multispeed_fiber - Set MAC link speed - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true when waiting for completion is needed +/** + * ixgbe_setup_mac_link_multispeed_fiber - Set MAC link speed + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE when waiting for completion is needed * - * Set the link speed in the AUTOC register and restarts link. - */ -s32 -ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete) + * Set the link speed in the AUTOC register and restarts link. + **/ +s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete) { s32 status = IXGBE_SUCCESS; - ixgbe_link_speed link_speed; + ixgbe_link_speed link_speed = IXGBE_LINK_SPEED_UNKNOWN; ixgbe_link_speed highest_link_speed = IXGBE_LINK_SPEED_UNKNOWN; u32 speedcnt = 0; u32 esdp_reg = IXGBE_READ_REG(hw, IXGBE_ESDP); u32 i = 0; - bool link_up = false; + bool link_up = FALSE; bool negotiation; DEBUGFUNC("ixgbe_setup_mac_link_multispeed_fiber"); @@ -555,7 +586,7 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, /* Mask off requested but non-supported speeds */ status = ixgbe_get_link_capabilities(hw, &link_speed, &negotiation); if (status != IXGBE_SUCCESS) - return (status); + return status; speed &= link_speed; @@ -568,9 +599,9 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, highest_link_speed = IXGBE_LINK_SPEED_10GB_FULL; /* If we already have link at this speed, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); + status = ixgbe_check_link(hw, &link_speed, &link_up, FALSE); if (status != IXGBE_SUCCESS) - return (status); + return status; if ((link_speed == IXGBE_LINK_SPEED_10GB_FULL) && link_up) goto out; @@ -583,11 +614,12 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, /* Allow module to change analog characteristics (1G->10G) */ msec_delay(40); - status = ixgbe_setup_mac_link_82599( - hw, IXGBE_LINK_SPEED_10GB_FULL, autoneg, - autoneg_wait_to_complete); + status = ixgbe_setup_mac_link_82599(hw, + IXGBE_LINK_SPEED_10GB_FULL, + autoneg, + autoneg_wait_to_complete); if (status != IXGBE_SUCCESS) - return (status); + return status; /* Flap the tx laser if it has not already been done */ ixgbe_flap_tx_laser(hw); @@ -603,9 +635,9 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, /* If we have link, just jump out */ status = ixgbe_check_link(hw, &link_speed, - &link_up, false); + &link_up, FALSE); if (status != IXGBE_SUCCESS) - return (status); + return status; if (link_up) goto out; @@ -618,9 +650,9 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, highest_link_speed = IXGBE_LINK_SPEED_1GB_FULL; /* If we already have link at this speed, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); + status = ixgbe_check_link(hw, &link_speed, &link_up, FALSE); if (status != IXGBE_SUCCESS) - return (status); + return status; if ((link_speed == IXGBE_LINK_SPEED_1GB_FULL) && link_up) goto out; @@ -634,11 +666,12 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, /* Allow module to change analog characteristics (10G->1G) */ msec_delay(40); - status = ixgbe_setup_mac_link_82599( - hw, IXGBE_LINK_SPEED_1GB_FULL, autoneg, - autoneg_wait_to_complete); + status = ixgbe_setup_mac_link_82599(hw, + IXGBE_LINK_SPEED_1GB_FULL, + autoneg, + autoneg_wait_to_complete); if (status != IXGBE_SUCCESS) - return (status); + return status; /* Flap the tx laser if it has not already been done */ ixgbe_flap_tx_laser(hw); @@ -647,9 +680,9 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, msec_delay(100); /* If we have link, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); + status = ixgbe_check_link(hw, &link_speed, &link_up, FALSE); if (status != IXGBE_SUCCESS) - return (status); + return status; if (link_up) goto out; @@ -662,7 +695,7 @@ ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, */ if (speedcnt > 1) status = ixgbe_setup_mac_link_multispeed_fiber(hw, - highest_link_speed, autoneg, autoneg_wait_to_complete); + highest_link_speed, autoneg, autoneg_wait_to_complete); out: /* Set autoneg_advertised value based on input link speed */ @@ -674,31 +707,31 @@ out: if (speed & IXGBE_LINK_SPEED_1GB_FULL) hw->phy.autoneg_advertised |= IXGBE_LINK_SPEED_1GB_FULL; - return (status); + return status; } -/* - * ixgbe_setup_mac_link_smartspeed - Set MAC link speed using SmartSpeed - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true when waiting for completion is needed +/** + * ixgbe_setup_mac_link_smartspeed - Set MAC link speed using SmartSpeed + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE when waiting for completion is needed * - * Implements the Intel SmartSpeed algorithm. - */ -s32 -ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete) + * Implements the Intel SmartSpeed algorithm. + **/ +s32 ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete) { s32 status = IXGBE_SUCCESS; ixgbe_link_speed link_speed = IXGBE_LINK_SPEED_UNKNOWN; s32 i, j; - bool link_up = false; + bool link_up = FALSE; u32 autoc_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC); DEBUGFUNC("ixgbe_setup_mac_link_smartspeed"); - /* Set autoneg_advertised value based on input link speed */ + /* Set autoneg_advertised value based on input link speed */ hw->phy.autoneg_advertised = 0; if (speed & IXGBE_LINK_SPEED_10GB_FULL) @@ -718,10 +751,10 @@ ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, */ /* First, try to get link with full advertisement */ - hw->phy.smart_speed_active = false; + hw->phy.smart_speed_active = FALSE; for (j = 0; j < IXGBE_SMARTSPEED_MAX_RETRIES; j++) { status = ixgbe_setup_mac_link_82599(hw, speed, autoneg, - autoneg_wait_to_complete); + autoneg_wait_to_complete); if (status != IXGBE_SUCCESS) goto out; @@ -736,7 +769,7 @@ ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, /* If we have link, just jump out */ status = ixgbe_check_link(hw, &link_speed, &link_up, - false); + FALSE); if (status != IXGBE_SUCCESS) goto out; @@ -754,9 +787,9 @@ ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, goto out; /* Turn SmartSpeed on to disable KR support */ - hw->phy.smart_speed_active = true; + hw->phy.smart_speed_active = TRUE; status = ixgbe_setup_mac_link_82599(hw, speed, autoneg, - autoneg_wait_to_complete); + autoneg_wait_to_complete); if (status != IXGBE_SUCCESS) goto out; @@ -770,7 +803,7 @@ ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, msec_delay(100); /* If we have link, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); + status = ixgbe_check_link(hw, &link_speed, &link_up, FALSE); if (status != IXGBE_SUCCESS) goto out; @@ -779,29 +812,29 @@ ixgbe_setup_mac_link_smartspeed(struct ixgbe_hw *hw, } /* We didn't get link. Turn SmartSpeed back off. */ - hw->phy.smart_speed_active = false; + hw->phy.smart_speed_active = FALSE; status = ixgbe_setup_mac_link_82599(hw, speed, autoneg, - autoneg_wait_to_complete); + autoneg_wait_to_complete); out: if (link_up && (link_speed == IXGBE_LINK_SPEED_1GB_FULL)) DEBUGOUT("Smartspeed has downgraded the link speed " "from the maximum advertised\n"); - return (status); + return status; } -/* - * ixgbe_setup_mac_link_82599 - Set MAC link speed - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true when waiting for completion is needed +/** + * ixgbe_setup_mac_link_82599 - Set MAC link speed + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE when waiting for completion is needed * - * Set the link speed in the AUTOC register and restarts link. - */ -s32 -ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete) + * Set the link speed in the AUTOC register and restarts link. + **/ +s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, + ixgbe_link_speed speed, bool autoneg, + bool autoneg_wait_to_complete) { s32 status = IXGBE_SUCCESS; u32 autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); @@ -829,9 +862,7 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, goto out; } - /* - * Use stored value (EEPROM defaults) of AUTOC to find KR/KX4 support - */ + /* Use stored value (EEPROM defaults) of AUTOC to find KR/KX4 support*/ if (hw->mac.orig_link_settings_stored) orig_autoc = hw->mac.orig_autoc; else @@ -846,13 +877,13 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, if (orig_autoc & IXGBE_AUTOC_KX4_SUPP) autoc |= IXGBE_AUTOC_KX4_SUPP; if ((orig_autoc & IXGBE_AUTOC_KR_SUPP) && - (hw->phy.smart_speed_active == false)) + (hw->phy.smart_speed_active == FALSE)) autoc |= IXGBE_AUTOC_KR_SUPP; if (speed & IXGBE_LINK_SPEED_1GB_FULL) autoc |= IXGBE_AUTOC_KX_SUPP; } else if ((pma_pmd_1g == IXGBE_AUTOC_1G_SFI) && - (link_mode == IXGBE_AUTOC_LMS_1G_LINK_NO_AN || - link_mode == IXGBE_AUTOC_LMS_1G_AN)) { + (link_mode == IXGBE_AUTOC_LMS_1G_LINK_NO_AN || + link_mode == IXGBE_AUTOC_LMS_1G_AN)) { /* Switch from 1G SFI to 10G SFI if requested */ if ((speed == IXGBE_LINK_SPEED_10GB_FULL) && (pma_pmd_10g_serial == IXGBE_AUTOC2_10G_SFI)) { @@ -860,7 +891,7 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, autoc |= IXGBE_AUTOC_LMS_10G_SERIAL; } } else if ((pma_pmd_10g_serial == IXGBE_AUTOC2_10G_SFI) && - (link_mode == IXGBE_AUTOC_LMS_10G_SERIAL)) { + (link_mode == IXGBE_AUTOC_LMS_10G_SERIAL)) { /* Switch from 10G SFI to 1G SFI if requested */ if ((speed == IXGBE_LINK_SPEED_1GB_FULL) && (pma_pmd_1g == IXGBE_AUTOC_1G_SFI)) { @@ -869,7 +900,7 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, autoc |= IXGBE_AUTOC_LMS_1G_AN; else autoc |= IXGBE_AUTOC_LMS_1G_LINK_NO_AN; - } + } } if (autoc != start_autoc) { @@ -882,17 +913,17 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, if (link_mode == IXGBE_AUTOC_LMS_KX4_KX_KR || link_mode == IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN || link_mode == IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII) { - links_reg = 0; /* Just in case Autoneg time=0 */ + links_reg = 0; /*Just in case Autoneg time=0*/ for (i = 0; i < IXGBE_AUTO_NEG_TIME; i++) { links_reg = - IXGBE_READ_REG(hw, IXGBE_LINKS); + IXGBE_READ_REG(hw, IXGBE_LINKS); if (links_reg & IXGBE_LINKS_KX_AN_COMP) break; msec_delay(100); } if (!(links_reg & IXGBE_LINKS_KX_AN_COMP)) { status = - IXGBE_ERR_AUTONEG_NOT_COMPLETE; + IXGBE_ERR_AUTONEG_NOT_COMPLETE; DEBUGOUT("Autoneg did not complete.\n"); } } @@ -903,21 +934,22 @@ ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, } out: - return (status); + return status; } -/* - * ixgbe_setup_copper_link_82599 - Set the PHY autoneg advertised field - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - * @autoneg_wait_to_complete: true if waiting is needed to complete +/** + * ixgbe_setup_copper_link_82599 - Set the PHY autoneg advertised field + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + * @autoneg_wait_to_complete: TRUE if waiting is needed to complete * - * Restarts link on PHY and MAC based on settings passed in. - */ -static s32 -ixgbe_setup_copper_link_82599(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete) + * Restarts link on PHY and MAC based on settings passed in. + **/ +static s32 ixgbe_setup_copper_link_82599(struct ixgbe_hw *hw, + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete) { s32 status; @@ -925,22 +957,22 @@ ixgbe_setup_copper_link_82599(struct ixgbe_hw *hw, /* Setup the PHY according to input speed */ status = hw->phy.ops.setup_link_speed(hw, speed, autoneg, - autoneg_wait_to_complete); + autoneg_wait_to_complete); /* Set up MAC */ (void) ixgbe_start_mac_link_82599(hw, autoneg_wait_to_complete); - return (status); + return status; } -/* - * ixgbe_reset_hw_82599 - Perform hardware reset - * @hw: pointer to hardware structure + +/** + * ixgbe_reset_hw_82599 - Perform hardware reset + * @hw: pointer to hardware structure * - * Resets the hardware by resetting the transmit and receive units, masks - * and clears all interrupts, perform a PHY reset, and perform a link (MAC) - * reset. - */ -s32 -ixgbe_reset_hw_82599(struct ixgbe_hw *hw) + * Resets the hardware by resetting the transmit and receive units, masks + * and clears all interrupts, perform a PHY reset, and perform a link (MAC) + * reset. + **/ +s32 ixgbe_reset_hw_82599(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 ctrl; @@ -964,14 +996,14 @@ ixgbe_reset_hw_82599(struct ixgbe_hw *hw) /* Setup SFP module if there is one present. */ if (hw->phy.sfp_setup_needed) { status = hw->mac.ops.setup_sfp(hw); - hw->phy.sfp_setup_needed = false; + hw->phy.sfp_setup_needed = FALSE; } if (status == IXGBE_ERR_SFP_NOT_SUPPORTED) goto reset_hw_out; /* Reset PHY */ - if (hw->phy.reset_disable == false && hw->phy.ops.reset != NULL) + if (hw->phy.reset_disable == FALSE && hw->phy.ops.reset != NULL) hw->phy.ops.reset(hw); /* @@ -993,9 +1025,8 @@ mac_reset_top: for (i = 0; i < 10; i++) { usec_delay(1); ctrl = IXGBE_READ_REG(hw, IXGBE_CTRL); - if (!(ctrl & IXGBE_CTRL_RST)) { + if (!(ctrl & IXGBE_CTRL_RST)) break; - } } if (ctrl & IXGBE_CTRL_RST) { status = IXGBE_ERR_RESET_FAILED; @@ -1024,21 +1055,20 @@ mac_reset_top: */ autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2); - if (hw->mac.orig_link_settings_stored == false) { + if (hw->mac.orig_link_settings_stored == FALSE) { hw->mac.orig_autoc = autoc; hw->mac.orig_autoc2 = autoc2; - hw->mac.orig_link_settings_stored = true; + hw->mac.orig_link_settings_stored = TRUE; } else { - if (autoc != hw->mac.orig_autoc) { + if (autoc != hw->mac.orig_autoc) IXGBE_WRITE_REG(hw, IXGBE_AUTOC, (hw->mac.orig_autoc | - IXGBE_AUTOC_AN_RESTART)); - } + IXGBE_AUTOC_AN_RESTART)); if ((autoc2 & IXGBE_AUTOC2_UPPER_MASK) != (hw->mac.orig_autoc2 & IXGBE_AUTOC2_UPPER_MASK)) { autoc2 &= ~IXGBE_AUTOC2_UPPER_MASK; autoc2 |= (hw->mac.orig_autoc2 & - IXGBE_AUTOC2_UPPER_MASK); + IXGBE_AUTOC2_UPPER_MASK); IXGBE_WRITE_REG(hw, IXGBE_AUTOC2, autoc2); } } @@ -1060,7 +1090,7 @@ mac_reset_top: /* Add the SAN MAC address to the RAR only if it's a valid address */ if (ixgbe_validate_mac_addr(hw->mac.san_addr) == 0) { hw->mac.ops.set_rar(hw, hw->mac.num_rar_entries - 1, - hw->mac.san_addr, 0, IXGBE_RAH_AV); + hw->mac.san_addr, 0, IXGBE_RAH_AV); /* Reserve the last RAR for the SAN MAC address */ hw->mac.num_rar_entries--; @@ -1068,18 +1098,17 @@ mac_reset_top: /* Store the alternative WWNN/WWPN prefix */ hw->mac.ops.get_wwn_prefix(hw, &hw->mac.wwnn_prefix, - &hw->mac.wwpn_prefix); + &hw->mac.wwpn_prefix); reset_hw_out: - return (status); + return status; } -/* - * ixgbe_reinit_fdir_tables_82599 - Reinitialize Flow Director tables. - * @hw: pointer to hardware structure - */ -s32 -ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) +/** + * ixgbe_reinit_fdir_tables_82599 - Reinitialize Flow Director tables. + * @hw: pointer to hardware structure + **/ +s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) { int i; u32 fdirctrl = IXGBE_READ_REG(hw, IXGBE_FDIRCTRL); @@ -1093,14 +1122,14 @@ ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) */ for (i = 0; i < IXGBE_FDIRCMD_CMD_POLL; i++) { if (!(IXGBE_READ_REG(hw, IXGBE_FDIRCMD) & - IXGBE_FDIRCMD_CMD_MASK)) + IXGBE_FDIRCMD_CMD_MASK)) break; usec_delay(10); } if (i >= IXGBE_FDIRCMD_CMD_POLL) { DEBUGOUT("Flow Director previous command isn't complete, " - "aborting table re-initialization. \n"); - return (IXGBE_ERR_FDIR_REINIT_FAILED); + "aborting table re-initialization. \n"); + return IXGBE_ERR_FDIR_REINIT_FAILED; } IXGBE_WRITE_REG(hw, IXGBE_FDIRFREE, 0); @@ -1113,12 +1142,12 @@ ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) * - write 0 to bit 8 of FDIRCMD register */ IXGBE_WRITE_REG(hw, IXGBE_FDIRCMD, - (IXGBE_READ_REG(hw, IXGBE_FDIRCMD) | - IXGBE_FDIRCMD_CLEARHT)); + (IXGBE_READ_REG(hw, IXGBE_FDIRCMD) | + IXGBE_FDIRCMD_CLEARHT)); IXGBE_WRITE_FLUSH(hw); IXGBE_WRITE_REG(hw, IXGBE_FDIRCMD, - (IXGBE_READ_REG(hw, IXGBE_FDIRCMD) & - ~IXGBE_FDIRCMD_CLEARHT)); + (IXGBE_READ_REG(hw, IXGBE_FDIRCMD) & + ~IXGBE_FDIRCMD_CLEARHT)); IXGBE_WRITE_FLUSH(hw); /* * Clear FDIR Hash register to clear any leftover hashes @@ -1133,13 +1162,13 @@ ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) /* Poll init-done after we write FDIRCTRL register */ for (i = 0; i < IXGBE_FDIR_INIT_DONE_POLL; i++) { if (IXGBE_READ_REG(hw, IXGBE_FDIRCTRL) & - IXGBE_FDIRCTRL_INIT_DONE) + IXGBE_FDIRCTRL_INIT_DONE) break; usec_delay(10); } if (i >= IXGBE_FDIR_INIT_DONE_POLL) { DEBUGOUT("Flow Director Signature poll time exceeded!\n"); - return (IXGBE_ERR_FDIR_REINIT_FAILED); + return IXGBE_ERR_FDIR_REINIT_FAILED; } /* Clear FDIR statistics registers (read to clear) */ @@ -1149,16 +1178,15 @@ ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) (void) IXGBE_READ_REG(hw, IXGBE_FDIRMISS); (void) IXGBE_READ_REG(hw, IXGBE_FDIRLEN); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_init_fdir_signature_82599 - Initialize Flow Director signature filters - * @hw: pointer to hardware structure - * @pballoc: which mode to allocate filters with - */ -s32 -ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc) +/** + * ixgbe_init_fdir_signature_82599 - Initialize Flow Director signature filters + * @hw: pointer to hardware structure + * @pballoc: which mode to allocate filters with + **/ +s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc) { u32 fdirctrl = 0; u32 pbsize; @@ -1173,7 +1201,7 @@ ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc) */ pbsize = (1 << (IXGBE_FDIR_PBALLOC_SIZE_SHIFT + pballoc)); IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(0), - IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(0)) - pbsize); + (IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(0)) - pbsize)); /* * The defaults in the HW for RX PB 1-7 are not zero and so should be @@ -1205,25 +1233,24 @@ ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc) break; default: /* bad value */ - return (IXGBE_ERR_CONFIG); + return IXGBE_ERR_CONFIG; }; /* Move the flexible bytes to use the ethertype - shift 6 words */ fdirctrl |= (0x6 << IXGBE_FDIRCTRL_FLEX_SHIFT); + /* Prime the keys for hashing */ - IXGBE_WRITE_REG(hw, IXGBE_FDIRHKEY, - IXGBE_HTONL(IXGBE_ATR_BUCKET_HASH_KEY)); - IXGBE_WRITE_REG(hw, IXGBE_FDIRSKEY, - IXGBE_HTONL(IXGBE_ATR_SIGNATURE_HASH_KEY)); + IXGBE_WRITE_REG(hw, IXGBE_FDIRHKEY, IXGBE_ATR_BUCKET_HASH_KEY); + IXGBE_WRITE_REG(hw, IXGBE_FDIRSKEY, IXGBE_ATR_SIGNATURE_HASH_KEY); /* * Poll init-done after we write the register. Estimated times: - * 10G: PBALLOC = 11b, timing is 60us - * 1G: PBALLOC = 11b, timing is 600us - * 100M: PBALLOC = 11b, timing is 6ms + * 10G: PBALLOC = 11b, timing is 60us + * 1G: PBALLOC = 11b, timing is 600us + * 100M: PBALLOC = 11b, timing is 6ms * - * Multiple these timings by 4 if under full Rx load + * Multiple these timings by 4 if under full Rx load * * So we'll poll for IXGBE_FDIR_INIT_DONE_POLL times, sleeping for * 1 msec per poll time. If we're at line rate and drop to 100M, then @@ -1234,25 +1261,22 @@ ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc) IXGBE_WRITE_FLUSH(hw); for (i = 0; i < IXGBE_FDIR_INIT_DONE_POLL; i++) { if (IXGBE_READ_REG(hw, IXGBE_FDIRCTRL) & - IXGBE_FDIRCTRL_INIT_DONE) + IXGBE_FDIRCTRL_INIT_DONE) break; - msec_delay(1); } - if (i >= IXGBE_FDIR_INIT_DONE_POLL) { + if (i >= IXGBE_FDIR_INIT_DONE_POLL) DEBUGOUT("Flow Director Signature poll time exceeded!\n"); - } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_init_fdir_perfect_82599 - Initialize Flow Director perfect filters - * @hw: pointer to hardware structure - * @pballoc: which mode to allocate filters with - */ -s32 -ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) +/** + * ixgbe_init_fdir_perfect_82599 - Initialize Flow Director perfect filters + * @hw: pointer to hardware structure + * @pballoc: which mode to allocate filters with + **/ +s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) { u32 fdirctrl = 0; u32 pbsize; @@ -1265,10 +1289,9 @@ ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) * must be reduced. The new value is the current size minus * flow director memory usage size. */ - pbsize = (1 << (IXGBE_FDIR_PBALLOC_SIZE_SHIFT + pballoc)); IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(0), - IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(0)) - pbsize); + (IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(0)) - pbsize)); /* * The defaults in the HW for RX PB 1-7 are not zero and so should be @@ -1300,7 +1323,7 @@ ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) break; default: /* bad value */ - return (IXGBE_ERR_CONFIG); + return IXGBE_ERR_CONFIG; }; /* Turn perfect match filtering on */ @@ -1311,18 +1334,16 @@ ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) fdirctrl |= (0x6 << IXGBE_FDIRCTRL_FLEX_SHIFT); /* Prime the keys for hashing */ - IXGBE_WRITE_REG(hw, IXGBE_FDIRHKEY, - IXGBE_HTONL(IXGBE_ATR_BUCKET_HASH_KEY)); - IXGBE_WRITE_REG(hw, IXGBE_FDIRSKEY, - IXGBE_HTONL(IXGBE_ATR_SIGNATURE_HASH_KEY)); + IXGBE_WRITE_REG(hw, IXGBE_FDIRHKEY, IXGBE_ATR_BUCKET_HASH_KEY); + IXGBE_WRITE_REG(hw, IXGBE_FDIRSKEY,IXGBE_ATR_SIGNATURE_HASH_KEY); /* * Poll init-done after we write the register. Estimated times: - * 10G: PBALLOC = 11b, timing is 60us - * 1G: PBALLOC = 11b, timing is 600us - * 100M: PBALLOC = 11b, timing is 6ms + * 10G: PBALLOC = 11b, timing is 60us + * 1G: PBALLOC = 11b, timing is 600us + * 100M: PBALLOC = 11b, timing is 6ms * - * Multiple these timings by 4 if under full Rx load + * Multiple these timings by 4 if under full Rx load * * So we'll poll for IXGBE_FDIR_INIT_DONE_POLL times, sleeping for * 1 msec per poll time. If we're at line rate and drop to 100M, then @@ -1337,25 +1358,23 @@ ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc) IXGBE_WRITE_FLUSH(hw); for (i = 0; i < IXGBE_FDIR_INIT_DONE_POLL; i++) { if (IXGBE_READ_REG(hw, IXGBE_FDIRCTRL) & - IXGBE_FDIRCTRL_INIT_DONE) + IXGBE_FDIRCTRL_INIT_DONE) break; - msec_delay(1); } - if (i >= IXGBE_FDIR_INIT_DONE_POLL) { + if (i >= IXGBE_FDIR_INIT_DONE_POLL) DEBUGOUT("Flow Director Perfect poll time exceeded!\n"); - } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_atr_compute_hash_82599 - Compute the hashes for SW ATR - * @stream: input bitstream to compute the hash on - * @key: 32-bit hash key - */ -u16 -ixgbe_atr_compute_hash_82599(struct ixgbe_atr_input *atr_input, u32 key) +/** + * ixgbe_atr_compute_hash_82599 - Compute the hashes for SW ATR + * @stream: input bitstream to compute the hash on + * @key: 32-bit hash key + **/ +u32 ixgbe_atr_compute_hash_82599(union ixgbe_atr_input *atr_input, + u32 key) { /* * The algorithm is as follows: @@ -1364,710 +1383,311 @@ ixgbe_atr_compute_hash_82599(struct ixgbe_atr_input *atr_input, u32 key) * and A[n] x B[n] is bitwise AND between same length strings * * K[n] is 16 bits, defined as: - * for n modulo 32 >= 15, K[n] = K[n % 32 : (n % 32) - 15] - * for n modulo 32 < 15, K[n] = - * K[(n % 32:0) | (31:31 - (14 - (n % 32)))] + * for n modulo 32 >= 15, K[n] = K[n % 32 : (n % 32) - 15] + * for n modulo 32 < 15, K[n] = + * K[(n % 32:0) | (31:31 - (14 - (n % 32)))] * * S[n] is 16 bits, defined as: - * for n >= 15, S[n] = S[n:n - 15] - * for n < 15, S[n] = S[(n:0) | (350:350 - (14 - n))] + * for n >= 15, S[n] = S[n:n - 15] + * for n < 15, S[n] = S[(n:0) | (350:350 - (14 - n))] * * To simplify for programming, the algorithm is implemented * in software this way: * - * Key[31:0], Stream[335:0] + * key[31:0], hi_hash_dword[31:0], lo_hash_dword[31:0], hash[15:0] + * + * for (i = 0; i < 352; i+=32) + * hi_hash_dword[31:0] ^= Stream[(i+31):i]; + * + * lo_hash_dword[15:0] ^= Stream[15:0]; + * lo_hash_dword[15:0] ^= hi_hash_dword[31:16]; + * lo_hash_dword[31:16] ^= hi_hash_dword[15:0]; * - * tmp_key[11 * 32 - 1:0] = 11{Key[31:0] = key concatenated 11 times - * int_key[350:0] = tmp_key[351:1] - * int_stream[365:0] = Stream[14:0] | Stream[335:0] | Stream[335:321] + * hi_hash_dword[31:0] ^= Stream[351:320]; * - * hash[15:0] = 0; - * for (i = 0; i < 351; i++) { - * if (int_key[i]) - * hash ^= int_stream[(i + 15):i]; + * if(key[0]) + * hash[15:0] ^= Stream[15:0]; + * + * for (i = 0; i < 16; i++) { + * if (key[i]) + * hash[15:0] ^= lo_hash_dword[(i+15):i]; + * if (key[i + 16]) + * hash[15:0] ^= hi_hash_dword[(i+15):i]; * } + * */ + __be32 common_hash_dword = 0; + u32 hi_hash_dword, lo_hash_dword, flow_vm_vlan; + u32 hash_result = 0; + u8 i; - union { - u64 fill[6]; - u32 key[11]; - u8 key_stream[44]; - } tmp_key; + /* record the flow_vm_vlan bits as they are a key part to the hash */ + flow_vm_vlan = IXGBE_NTOHL(atr_input->dword_stream[0]); - u8 *stream = (u8 *)atr_input; - u8 int_key[44]; /* upper-most bit unused */ - u8 hash_str[46]; /* upper-most 2 bits unused */ - u16 hash_result = 0; - int i, j, k, h; + /* generate common hash dword */ + for (i = 10; i; i -= 2) + common_hash_dword ^= atr_input->dword_stream[i] ^ + atr_input->dword_stream[i - 1]; - DEBUGFUNC("ixgbe_atr_compute_hash_82599"); + hi_hash_dword = IXGBE_NTOHL(common_hash_dword); - /* - * Initialize the fill member to prevent warnings - * on some compilers - */ - tmp_key.fill[0] = 0; + /* low dword is word swapped version of common */ + lo_hash_dword = (hi_hash_dword >> 16) | (hi_hash_dword << 16); - /* First load the temporary key stream */ - for (i = 0; i < 6; i++) { - u64 fillkey = ((u64)key << 32) | key; - tmp_key.fill[i] = fillkey; - } + /* apply flow ID/VM pool/VLAN ID bits to hash words */ + hi_hash_dword ^= flow_vm_vlan ^ (flow_vm_vlan >> 16); - /* - * Set the interim key for the hashing. Bit 352 is unused, so we must - * shift and compensate when building the key. - */ - int_key[0] = tmp_key.key_stream[0] >> 1; - for (i = 1, j = 0; i < 44; i++) { - unsigned int this_key = tmp_key.key_stream[j] << 7; - j++; - int_key[i] = (u8)(this_key | (tmp_key.key_stream[j] >> 1)); - } + /* Process bits 0 and 16 */ + if (key & 0x0001) hash_result ^= lo_hash_dword; + if (key & 0x00010000) hash_result ^= hi_hash_dword; /* - * Set the interim bit string for the hashing. Bits 368 and 367 are - * unused, so shift and compensate when building the string. + * apply flow ID/VM pool/VLAN ID bits to lo hash dword, we had to + * delay this because bit 0 of the stream should not be processed + * so we do not add the vlan until after bit 0 was processed */ - hash_str[0] = (stream[40] & 0x7f) >> 1; - for (i = 1, j = 40; i < 46; i++) { - unsigned int this_str = stream[j] << 7; - j++; - if (j > 41) - j = 0; - hash_str[i] = (u8)(this_str | (stream[j] >> 1)); - } - - /* - * Now compute the hash. i is the index into hash_str, j is into our - * key stream, k is counting the number of bits, and h interates within - * each byte. - */ - for (i = 45, j = 43, k = 0; k < 351 && i >= 2 && j >= 0; i--, j--) { - for (h = 0; h < 8 && k < 351; h++, k++) { - if (int_key[j] & (1 << h)) { - /* - * Key bit is set, XOR in the current 16-bit - * string. Example of processing: - * h = 0, - * tmp = (hash_str[i - 2] & 0 << 16) | - * (hash_str[i - 1] & 0xff << 8) | - * (hash_str[i] & 0xff >> 0) - * So tmp = hash_str[15 + k:k], since the - * i + 2 clause rolls off the 16-bit value - * h = 7, - * tmp = (hash_str[i - 2] & 0x7f << 9) | - * (hash_str[i - 1] & 0xff << 1) | - * (hash_str[i] & 0x80 >> 7) - */ - int tmp = (hash_str[i] >> h); - tmp |= (hash_str[i - 1] << (8 - h)); - tmp |= (int)(hash_str[i - 2] & ((1 << h) - 1)) - << (16 - h); - hash_result ^= (u16)tmp; - } - } - } - - return (hash_result); -} - -/* - * ixgbe_atr_set_vlan_id_82599 - Sets the VLAN id in the ATR input stream - * @input: input stream to modify - * @vlan: the VLAN id to load - */ -s32 -ixgbe_atr_set_vlan_id_82599(struct ixgbe_atr_input *input, u16 vlan) -{ - DEBUGFUNC("ixgbe_atr_set_vlan_id_82599"); - - input->byte_stream[IXGBE_ATR_VLAN_OFFSET + 1] = vlan >> 8; - input->byte_stream[IXGBE_ATR_VLAN_OFFSET] = vlan & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_src_ipv4_82599 - Sets the source IPv4 address - * @input: input stream to modify - * @src_addr: the IP address to load - */ -s32 -ixgbe_atr_set_src_ipv4_82599(struct ixgbe_atr_input *input, u32 src_addr) -{ - DEBUGFUNC("ixgbe_atr_set_src_ipv4_82599"); - - input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 3] = src_addr >> 24; - input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 2] = - (src_addr >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 1] = - (src_addr >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET] = src_addr & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_dst_ipv4_82599 - Sets the destination IPv4 address - * @input: input stream to modify - * @dst_addr: the IP address to load - */ -s32 -ixgbe_atr_set_dst_ipv4_82599(struct ixgbe_atr_input *input, u32 dst_addr) -{ - DEBUGFUNC("ixgbe_atr_set_dst_ipv4_82599"); - - input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 3] = dst_addr >> 24; - input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 2] = - (dst_addr >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 1] = - (dst_addr >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET] = dst_addr & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_src_ipv6_82599 - Sets the source IPv6 address - * @input: input stream to modify - * @src_addr_1: the first 4 bytes of the IP address to load - * @src_addr_2: the second 4 bytes of the IP address to load - * @src_addr_3: the third 4 bytes of the IP address to load - * @src_addr_4: the fourth 4 bytes of the IP address to load - */ -s32 -ixgbe_atr_set_src_ipv6_82599(struct ixgbe_atr_input *input, - u32 src_addr_1, u32 src_addr_2, u32 src_addr_3, u32 src_addr_4) -{ - DEBUGFUNC("ixgbe_atr_set_src_ipv6_82599"); - - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET] = src_addr_4 & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 1] = - (src_addr_4 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 2] = - (src_addr_4 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 3] = src_addr_4 >> 24; - - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 4] = src_addr_3 & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 5] = - (src_addr_3 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 6] = - (src_addr_3 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 7] = src_addr_3 >> 24; - - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 8] = src_addr_2 & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 9] = - (src_addr_2 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 10] = - (src_addr_2 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 11] = src_addr_2 >> 24; - - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 12] = src_addr_1 & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 13] = - (src_addr_1 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 14] = - (src_addr_1 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 15] = src_addr_1 >> 24; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_dst_ipv6_82599 - Sets the destination IPv6 address - * @input: input stream to modify - * @dst_addr_1: the first 4 bytes of the IP address to load - * @dst_addr_2: the second 4 bytes of the IP address to load - * @dst_addr_3: the third 4 bytes of the IP address to load - * @dst_addr_4: the fourth 4 bytes of the IP address to load - */ -s32 -ixgbe_atr_set_dst_ipv6_82599(struct ixgbe_atr_input *input, - u32 dst_addr_1, u32 dst_addr_2, u32 dst_addr_3, u32 dst_addr_4) -{ - DEBUGFUNC("ixgbe_atr_set_dst_ipv6_82599"); - - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET] = dst_addr_4 & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 1] = - (dst_addr_4 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 2] = - (dst_addr_4 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 3] = dst_addr_4 >> 24; - - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 4] = dst_addr_3 & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 5] = - (dst_addr_3 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 6] = - (dst_addr_3 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 7] = dst_addr_3 >> 24; - - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 8] = dst_addr_2 & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 9] = - (dst_addr_2 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 10] = - (dst_addr_2 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 11] = dst_addr_2 >> 24; - - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 12] = dst_addr_1 & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 13] = - (dst_addr_1 >> 8) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 14] = - (dst_addr_1 >> 16) & 0xff; - input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 15] = dst_addr_1 >> 24; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_src_port_82599 - Sets the source port - * @input: input stream to modify - * @src_port: the source port to load - */ -s32 -ixgbe_atr_set_src_port_82599(struct ixgbe_atr_input *input, u16 src_port) -{ - DEBUGFUNC("ixgbe_atr_set_src_port_82599"); + lo_hash_dword ^= flow_vm_vlan ^ (flow_vm_vlan << 16); - input->byte_stream[IXGBE_ATR_SRC_PORT_OFFSET + 1] = src_port >> 8; - input->byte_stream[IXGBE_ATR_SRC_PORT_OFFSET] = src_port & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_dst_port_82599 - Sets the destination port - * @input: input stream to modify - * @dst_port: the destination port to load - */ -s32 -ixgbe_atr_set_dst_port_82599(struct ixgbe_atr_input *input, u16 dst_port) -{ - DEBUGFUNC("ixgbe_atr_set_dst_port_82599"); - input->byte_stream[IXGBE_ATR_DST_PORT_OFFSET + 1] = dst_port >> 8; - input->byte_stream[IXGBE_ATR_DST_PORT_OFFSET] = dst_port & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_flex_byte_82599 - Sets the flexible bytes - * @input: input stream to modify - * @flex_bytes: the flexible bytes to load - */ -s32 -ixgbe_atr_set_flex_byte_82599(struct ixgbe_atr_input *input, u16 flex_byte) -{ - DEBUGFUNC("ixgbe_atr_set_flex_byte_82599"); - - input->byte_stream[IXGBE_ATR_FLEX_BYTE_OFFSET + 1] = flex_byte >> 8; - input->byte_stream[IXGBE_ATR_FLEX_BYTE_OFFSET] = flex_byte & 0xff; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_vm_pool_82599 - Sets the Virtual Machine pool - * @input: input stream to modify - * @vm_pool: the Virtual Machine pool to load - */ -s32 -ixgbe_atr_set_vm_pool_82599(struct ixgbe_atr_input *input, u8 vm_pool) -{ - DEBUGFUNC("ixgbe_atr_set_vm_pool_82599"); - - input->byte_stream[IXGBE_ATR_VM_POOL_OFFSET] = vm_pool; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_set_l4type_82599 - Sets the layer 4 packet type - * @input: input stream to modify - * @l4type: the layer 4 type value to load - */ -s32 -ixgbe_atr_set_l4type_82599(struct ixgbe_atr_input *input, u8 l4type) -{ - DEBUGFUNC("ixgbe_atr_set_l4type_82599"); - - input->byte_stream[IXGBE_ATR_L4TYPE_OFFSET] = l4type; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_vlan_id_82599 - Gets the VLAN id from the ATR input stream - * @input: input stream to search - * @vlan: the VLAN id to load - */ -s32 -ixgbe_atr_get_vlan_id_82599(struct ixgbe_atr_input *input, u16 *vlan) -{ - DEBUGFUNC("ixgbe_atr_get_vlan_id_82599"); - - *vlan = input->byte_stream[IXGBE_ATR_VLAN_OFFSET]; - *vlan |= input->byte_stream[IXGBE_ATR_VLAN_OFFSET + 1] << 8; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_src_ipv4_82599 - Gets the source IPv4 address - * @input: input stream to search - * @src_addr: the IP address to load - */ -s32 -ixgbe_atr_get_src_ipv4_82599(struct ixgbe_atr_input *input, u32 *src_addr) -{ - DEBUGFUNC("ixgbe_atr_get_src_ipv4_82599"); - - *src_addr = input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET]; - *src_addr |= input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 1] << 8; - *src_addr |= input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 2] << 16; - *src_addr |= input->byte_stream[IXGBE_ATR_SRC_IPV4_OFFSET + 3] << 24; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_dst_ipv4_82599 - Gets the destination IPv4 address - * @input: input stream to search - * @dst_addr: the IP address to load - */ -s32 -ixgbe_atr_get_dst_ipv4_82599(struct ixgbe_atr_input *input, u32 *dst_addr) -{ - DEBUGFUNC("ixgbe_atr_get_dst_ipv4_82599"); - - *dst_addr = input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET]; - *dst_addr |= input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 1] << 8; - *dst_addr |= input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 2] << 16; - *dst_addr |= input->byte_stream[IXGBE_ATR_DST_IPV4_OFFSET + 3] << 24; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_src_ipv6_82599 - Gets the source IPv6 address - * @input: input stream to search - * @src_addr_1: the first 4 bytes of the IP address to load - * @src_addr_2: the second 4 bytes of the IP address to load - * @src_addr_3: the third 4 bytes of the IP address to load - * @src_addr_4: the fourth 4 bytes of the IP address to load - */ -s32 -ixgbe_atr_get_src_ipv6_82599(struct ixgbe_atr_input *input, - u32 *src_addr_1, u32 *src_addr_2, u32 *src_addr_3, u32 *src_addr_4) -{ - DEBUGFUNC("ixgbe_atr_get_src_ipv6_82599"); - - *src_addr_1 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 12]; - *src_addr_1 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 13] << 8; - *src_addr_1 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 14] << 16; - *src_addr_1 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 15] << 24; - - *src_addr_2 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 8]; - *src_addr_2 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 9] << 8; - *src_addr_2 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 10] << 16; - *src_addr_2 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 11] << 24; - - *src_addr_3 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 4]; - *src_addr_3 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 5] << 8; - *src_addr_3 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 6] << 16; - *src_addr_3 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 7] << 24; - - *src_addr_4 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET]; - *src_addr_4 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 1] << 8; - *src_addr_4 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 2] << 16; - *src_addr_4 = input->byte_stream[IXGBE_ATR_SRC_IPV6_OFFSET + 3] << 24; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_dst_ipv6_82599 - Gets the destination IPv6 address - * @input: input stream to search - * @dst_addr_1: the first 4 bytes of the IP address to load - * @dst_addr_2: the second 4 bytes of the IP address to load - * @dst_addr_3: the third 4 bytes of the IP address to load - * @dst_addr_4: the fourth 4 bytes of the IP address to load - */ -s32 -ixgbe_atr_get_dst_ipv6_82599(struct ixgbe_atr_input *input, - u32 *dst_addr_1, u32 *dst_addr_2, u32 *dst_addr_3, u32 *dst_addr_4) -{ - DEBUGFUNC("ixgbe_atr_get_dst_ipv6_82599"); - - *dst_addr_1 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 12]; - *dst_addr_1 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 13] << 8; - *dst_addr_1 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 14] << 16; - *dst_addr_1 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 15] << 24; - - *dst_addr_2 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 8]; - *dst_addr_2 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 9] << 8; - *dst_addr_2 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 10] << 16; - *dst_addr_2 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 11] << 24; - - *dst_addr_3 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 4]; - *dst_addr_3 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 5] << 8; - *dst_addr_3 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 6] << 16; - *dst_addr_3 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 7] << 24; - - *dst_addr_4 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET]; - *dst_addr_4 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 1] << 8; - *dst_addr_4 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 2] << 16; - *dst_addr_4 = input->byte_stream[IXGBE_ATR_DST_IPV6_OFFSET + 3] << 24; + /* process the remaining 30 bits in the key 2 bits at a time */ + for (i = 15; i; i-- ) { + if (key & (0x0001 << i)) hash_result ^= lo_hash_dword >> i; + if (key & (0x00010000 << i)) hash_result ^= hi_hash_dword >> i; + } - return (IXGBE_SUCCESS); + return hash_result & IXGBE_ATR_HASH_MASK; } /* - * ixgbe_atr_get_src_port_82599 - Gets the source port - * @input: input stream to modify - * @src_port: the source port to load - * - * Even though the input is given in big-endian, the FDIRPORT registers - * expect the ports to be programmed in little-endian. Hence the need to swap - * endianness when retrieving the data. This can be confusing since the - * internal hash engine expects it to be big-endian. + * These defines allow us to quickly generate all of the necessary instructions + * in the function below by simply calling out IXGBE_COMPUTE_SIG_HASH_ITERATION + * for values 0 through 15 */ -s32 -ixgbe_atr_get_src_port_82599(struct ixgbe_atr_input *input, u16 *src_port) -{ - DEBUGFUNC("ixgbe_atr_get_src_port_82599"); - - *src_port = input->byte_stream[IXGBE_ATR_SRC_PORT_OFFSET] << 8; - *src_port |= input->byte_stream[IXGBE_ATR_SRC_PORT_OFFSET + 1]; - - return (IXGBE_SUCCESS); +#define IXGBE_ATR_COMMON_HASH_KEY \ + (IXGBE_ATR_BUCKET_HASH_KEY & IXGBE_ATR_SIGNATURE_HASH_KEY) +#define IXGBE_COMPUTE_SIG_HASH_ITERATION(_n) \ +{ \ + u32 n = (_n); \ + if (IXGBE_ATR_COMMON_HASH_KEY & (0x01 << n)) \ + common_hash ^= lo_hash_dword >> n; \ + else if (IXGBE_ATR_BUCKET_HASH_KEY & (0x01 << n)) \ + bucket_hash ^= lo_hash_dword >> n; \ + else if (IXGBE_ATR_SIGNATURE_HASH_KEY & (0x01 << n)) \ + sig_hash ^= lo_hash_dword << (16 - n); \ + if (IXGBE_ATR_COMMON_HASH_KEY & (0x01 << (n + 16))) \ + common_hash ^= hi_hash_dword >> n; \ + else if (IXGBE_ATR_BUCKET_HASH_KEY & (0x01 << (n + 16))) \ + bucket_hash ^= hi_hash_dword >> n; \ + else if (IXGBE_ATR_SIGNATURE_HASH_KEY & (0x01 << (n + 16))) \ + sig_hash ^= hi_hash_dword << (16 - n); \ } -/* - * ixgbe_atr_get_dst_port_82599 - Gets the destination port - * @input: input stream to modify - * @dst_port: the destination port to load +/** + * ixgbe_atr_compute_sig_hash_82599 - Compute the signature hash + * @stream: input bitstream to compute the hash on * - * Even though the input is given in big-endian, the FDIRPORT registers - * expect the ports to be programmed in little-endian. Hence the need to swap - * endianness when retrieving the data. This can be confusing since the - * internal hash engine expects it to be big-endian. - */ -s32 -ixgbe_atr_get_dst_port_82599(struct ixgbe_atr_input *input, u16 *dst_port) -{ - DEBUGFUNC("ixgbe_atr_get_dst_port_82599"); - - *dst_port = input->byte_stream[IXGBE_ATR_DST_PORT_OFFSET] << 8; - *dst_port |= input->byte_stream[IXGBE_ATR_DST_PORT_OFFSET + 1]; - - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_atr_get_flex_byte_82599 - Gets the flexible bytes - * @input: input stream to modify - * @flex_bytes: the flexible bytes to load - */ -s32 -ixgbe_atr_get_flex_byte_82599(struct ixgbe_atr_input *input, u16 *flex_byte) + * This function is almost identical to the function above but contains + * several optomizations such as unwinding all of the loops, letting the + * compiler work out all of the conditional ifs since the keys are static + * defines, and computing two keys at once since the hashed dword stream + * will be the same for both keys. + **/ +static u32 ixgbe_atr_compute_sig_hash_82599(union ixgbe_atr_hash_dword input, + union ixgbe_atr_hash_dword common) { - DEBUGFUNC("ixgbe_atr_get_flex_byte_82599"); + u32 hi_hash_dword, lo_hash_dword, flow_vm_vlan; + u32 sig_hash = 0, bucket_hash = 0, common_hash = 0; - *flex_byte = input->byte_stream[IXGBE_ATR_FLEX_BYTE_OFFSET]; - *flex_byte |= input->byte_stream[IXGBE_ATR_FLEX_BYTE_OFFSET + 1] << 8; + /* record the flow_vm_vlan bits as they are a key part to the hash */ + flow_vm_vlan = IXGBE_NTOHL(input.dword); - return (IXGBE_SUCCESS); -} + /* generate common hash dword */ + hi_hash_dword = IXGBE_NTOHL(common.dword); -/* - * ixgbe_atr_get_vm_pool_82599 - Gets the Virtual Machine pool - * @input: input stream to modify - * @vm_pool: the Virtual Machine pool to load - */ -s32 -ixgbe_atr_get_vm_pool_82599(struct ixgbe_atr_input *input, u8 *vm_pool) -{ - DEBUGFUNC("ixgbe_atr_get_vm_pool_82599"); + /* low dword is word swapped version of common */ + lo_hash_dword = (hi_hash_dword >> 16) | (hi_hash_dword << 16); - *vm_pool = input->byte_stream[IXGBE_ATR_VM_POOL_OFFSET]; + /* apply flow ID/VM pool/VLAN ID bits to hash words */ + hi_hash_dword ^= flow_vm_vlan ^ (flow_vm_vlan >> 16); - return (IXGBE_SUCCESS); -} + /* Process bits 0 and 16 */ + IXGBE_COMPUTE_SIG_HASH_ITERATION(0); -/* - * ixgbe_atr_get_l4type_82599 - Gets the layer 4 packet type - * @input: input stream to modify - * @l4type: the layer 4 type value to load - */ -s32 -ixgbe_atr_get_l4type_82599(struct ixgbe_atr_input *input, u8 *l4type) -{ - DEBUGFUNC("ixgbe_atr_get_l4type__82599"); + /* + * apply flow ID/VM pool/VLAN ID bits to lo hash dword, we had to + * delay this because bit 0 of the stream should not be processed + * so we do not add the vlan until after bit 0 was processed + */ + lo_hash_dword ^= flow_vm_vlan ^ (flow_vm_vlan << 16); + + /* Process remaining 30 bit of the key */ + IXGBE_COMPUTE_SIG_HASH_ITERATION(1); + IXGBE_COMPUTE_SIG_HASH_ITERATION(2); + IXGBE_COMPUTE_SIG_HASH_ITERATION(3); + IXGBE_COMPUTE_SIG_HASH_ITERATION(4); + IXGBE_COMPUTE_SIG_HASH_ITERATION(5); + IXGBE_COMPUTE_SIG_HASH_ITERATION(6); + IXGBE_COMPUTE_SIG_HASH_ITERATION(7); + IXGBE_COMPUTE_SIG_HASH_ITERATION(8); + IXGBE_COMPUTE_SIG_HASH_ITERATION(9); + IXGBE_COMPUTE_SIG_HASH_ITERATION(10); + IXGBE_COMPUTE_SIG_HASH_ITERATION(11); + IXGBE_COMPUTE_SIG_HASH_ITERATION(12); + IXGBE_COMPUTE_SIG_HASH_ITERATION(13); + IXGBE_COMPUTE_SIG_HASH_ITERATION(14); + IXGBE_COMPUTE_SIG_HASH_ITERATION(15); + + /* combine common_hash result with signature and bucket hashes */ + bucket_hash ^= common_hash; + bucket_hash &= IXGBE_ATR_HASH_MASK; - *l4type = input->byte_stream[IXGBE_ATR_L4TYPE_OFFSET]; + sig_hash ^= common_hash << 16; + sig_hash &= IXGBE_ATR_HASH_MASK << 16; - return (IXGBE_SUCCESS); + /* return completed signature hash */ + return sig_hash ^ bucket_hash; } -/* - * ixgbe_atr_add_signature_filter_82599 - Adds a signature hash filter - * @hw: pointer to hardware structure - * @stream: input bitstream - * @queue: queue index to direct traffic to - */ -s32 -ixgbe_fdir_add_signature_filter_82599(struct ixgbe_hw *hw, - struct ixgbe_atr_input *input, u8 queue) +/** + * ixgbe_atr_add_signature_filter_82599 - Adds a signature hash filter + * @hw: pointer to hardware structure + * @stream: input bitstream + * @queue: queue index to direct traffic to + **/ +s32 ixgbe_fdir_add_signature_filter_82599(struct ixgbe_hw *hw, + union ixgbe_atr_hash_dword input, + union ixgbe_atr_hash_dword common, + u8 queue) { u64 fdirhashcmd; - u64 fdircmd; - u32 fdirhash; - u16 bucket_hash, sig_hash; - u8 l4type; + u32 fdircmd; DEBUGFUNC("ixgbe_fdir_add_signature_filter_82599"); - bucket_hash = ixgbe_atr_compute_hash_82599(input, - IXGBE_ATR_BUCKET_HASH_KEY); - - /* bucket_hash is only 15 bits */ - bucket_hash &= IXGBE_ATR_HASH_MASK; - - sig_hash = ixgbe_atr_compute_hash_82599(input, - IXGBE_ATR_SIGNATURE_HASH_KEY); + /* + * Get the flow_type in order to program FDIRCMD properly + * lowest 2 bits are FDIRCMD.L4TYPE, third lowest bit is FDIRCMD.IPV6 + */ + switch (input.formatted.flow_type) { + case IXGBE_ATR_FLOW_TYPE_TCPV4: + case IXGBE_ATR_FLOW_TYPE_UDPV4: + case IXGBE_ATR_FLOW_TYPE_SCTPV4: + case IXGBE_ATR_FLOW_TYPE_TCPV6: + case IXGBE_ATR_FLOW_TYPE_UDPV6: + case IXGBE_ATR_FLOW_TYPE_SCTPV6: + break; + default: + DEBUGOUT(" Error on flow type input\n"); + return IXGBE_ERR_CONFIG; + } - /* Get the l4type in order to program FDIRCMD properly */ - /* lowest 2 bits are FDIRCMD.L4TYPE, third lowest bit is FDIRCMD.IPV6 */ - (void) ixgbe_atr_get_l4type_82599(input, &l4type); + /* configure FDIRCMD register */ + fdircmd = IXGBE_FDIRCMD_CMD_ADD_FLOW | IXGBE_FDIRCMD_FILTER_UPDATE | + IXGBE_FDIRCMD_LAST | IXGBE_FDIRCMD_QUEUE_EN; + fdircmd |= input.formatted.flow_type << IXGBE_FDIRCMD_FLOW_TYPE_SHIFT; + fdircmd |= (u32)queue << IXGBE_FDIRCMD_RX_QUEUE_SHIFT; /* * The lower 32-bits of fdirhashcmd is for FDIRHASH, the upper 32-bits * is for FDIRCMD. Then do a 64-bit register write from FDIRHASH. */ - fdirhash = sig_hash << IXGBE_FDIRHASH_SIG_SW_INDEX_SHIFT | bucket_hash; + fdirhashcmd = (u64)fdircmd << 32; + fdirhashcmd |= ixgbe_atr_compute_sig_hash_82599(input, common); + IXGBE_WRITE_REG64(hw, IXGBE_FDIRHASH, fdirhashcmd); - fdircmd = (IXGBE_FDIRCMD_CMD_ADD_FLOW | IXGBE_FDIRCMD_FILTER_UPDATE | - IXGBE_FDIRCMD_LAST | IXGBE_FDIRCMD_QUEUE_EN); + DEBUGOUT2("Tx Queue=%x hash=%x\n", queue, (u32)fdirhashcmd); - switch (l4type & IXGBE_ATR_L4TYPE_MASK) { - case IXGBE_ATR_L4TYPE_TCP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_TCP; - break; - case IXGBE_ATR_L4TYPE_UDP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_UDP; - break; - case IXGBE_ATR_L4TYPE_SCTP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_SCTP; - break; - default: - DEBUGOUT(" Error on l4type input\n"); - return (IXGBE_ERR_CONFIG); - } + return IXGBE_SUCCESS; +} - if (l4type & IXGBE_ATR_L4TYPE_IPV6_MASK) - fdircmd |= IXGBE_FDIRCMD_IPV6; +/** + * ixgbe_get_fdirtcpm_82599 - generate a tcp port from atr_input_masks + * @input_mask: mask to be bit swapped + * + * The source and destination port masks for flow director are bit swapped + * in that bit 15 effects bit 0, 14 effects 1, 13, 2 etc. In order to + * generate a correctly swapped value we need to bit swap the mask and that + * is what is accomplished by this function. + **/ +static u32 ixgbe_get_fdirtcpm_82599(struct ixgbe_atr_input_masks *input_masks) +{ + u32 mask = IXGBE_NTOHS(input_masks->dst_port_mask); + mask <<= IXGBE_FDIRTCPM_DPORTM_SHIFT; + mask |= IXGBE_NTOHS(input_masks->src_port_mask); + mask = ((mask & 0x55555555) << 1) | ((mask & 0xAAAAAAAA) >> 1); + mask = ((mask & 0x33333333) << 2) | ((mask & 0xCCCCCCCC) >> 2); + mask = ((mask & 0x0F0F0F0F) << 4) | ((mask & 0xF0F0F0F0) >> 4); + return ((mask & 0x00FF00FF) << 8) | ((mask & 0xFF00FF00) >> 8); +} - fdircmd |= ((u64)queue << IXGBE_FDIRCMD_RX_QUEUE_SHIFT); - fdirhashcmd = ((fdircmd << 32) | fdirhash); +/* + * These two macros are meant to address the fact that we have registers + * that are either all or in part big-endian. As a result on big-endian + * systems we will end up byte swapping the value to little-endian before + * it is byte swapped again and written to the hardware in the original + * big-endian format. + */ +#define IXGBE_STORE_AS_BE32(_value) \ + (((u32)(_value) >> 24) | (((u32)(_value) & 0x00FF0000) >> 8) | \ + (((u32)(_value) & 0x0000FF00) << 8) | ((u32)(_value) << 24)) - DEBUGOUT2("Tx Queue=%x hash=%x\n", queue, fdirhash & 0x7FFF7FFF); - IXGBE_WRITE_REG64(hw, IXGBE_FDIRHASH, fdirhashcmd); +#define IXGBE_WRITE_REG_BE32(a, reg, value) \ + IXGBE_WRITE_REG((a), (reg), IXGBE_STORE_AS_BE32(IXGBE_NTOHL(value))) - return (IXGBE_SUCCESS); -} +#define IXGBE_STORE_AS_BE16(_value) \ + (((u16)(_value) >> 8) | ((u16)(_value) << 8)) -/* - * ixgbe_fdir_add_perfect_filter_82599 - Adds a perfect filter - * @hw: pointer to hardware structure - * @input: input bitstream - * @input_masks: masks for the input bitstream - * @soft_id: software index for the filters - * @queue: queue index to direct traffic to + +/** + * ixgbe_fdir_add_perfect_filter_82599 - Adds a perfect filter + * @hw: pointer to hardware structure + * @input: input bitstream + * @input_masks: masks for the input bitstream + * @soft_id: software index for the filters + * @queue: queue index to direct traffic to * - * Note that the caller to this function must lock before calling, since the - * hardware writes must be protected from one another. - */ -s32 -ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, - struct ixgbe_atr_input *input, struct ixgbe_atr_input_masks *input_masks, - u16 soft_id, u8 queue) + * Note that the caller to this function must lock before calling, since the + * hardware writes must be protected from one another. + **/ +s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, + union ixgbe_atr_input *input, + struct ixgbe_atr_input_masks *input_masks, + u16 soft_id, u8 queue) { - u32 fdircmd = 0; u32 fdirhash; - u32 src_ipv4 = 0, dst_ipv4 = 0; - u32 src_ipv6_1, src_ipv6_2, src_ipv6_3, src_ipv6_4; - u16 src_port, dst_port, vlan_id, flex_bytes; - u16 bucket_hash; - u8 l4type; - u8 fdirm = 0; + u32 fdircmd; + u32 fdirport, fdirtcpm; + u32 fdirvlan; + /* start with VLAN, flex bytes, VM pool, and IPv6 destination masked */ + u32 fdirm = IXGBE_FDIRM_VLANID | IXGBE_FDIRM_VLANP | IXGBE_FDIRM_FLEX | + IXGBE_FDIRM_POOL | IXGBE_FDIRM_DIPv6; DEBUGFUNC("ixgbe_fdir_add_perfect_filter_82599"); - /* Get our input values */ - (void) ixgbe_atr_get_l4type_82599(input, &l4type); - /* - * Check l4type formatting, and bail out before we touch the hardware + * Check flow_type formatting, and bail out before we touch the hardware * if there's a configuration issue */ - switch (l4type & IXGBE_ATR_L4TYPE_MASK) { - case IXGBE_ATR_L4TYPE_TCP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_TCP; + switch (input->formatted.flow_type) { + case IXGBE_ATR_FLOW_TYPE_IPV4: + /* use the L4 protocol mask for raw IPv4/IPv6 traffic */ + fdirm |= IXGBE_FDIRM_L4P; + /* FALLTHRU */ + case IXGBE_ATR_FLOW_TYPE_SCTPV4: + if (input_masks->dst_port_mask || input_masks->src_port_mask) { + DEBUGOUT(" Error on src/dst port mask\n"); + return IXGBE_ERR_CONFIG; + } break; - case IXGBE_ATR_L4TYPE_UDP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_UDP; + case IXGBE_ATR_FLOW_TYPE_TCPV4: break; - case IXGBE_ATR_L4TYPE_SCTP: - fdircmd |= IXGBE_FDIRCMD_L4TYPE_SCTP; + case IXGBE_ATR_FLOW_TYPE_UDPV4: break; default: - DEBUGOUT(" Error on l4type input\n"); - return (IXGBE_ERR_CONFIG); + DEBUGOUT(" Error on flow type input\n"); + return IXGBE_ERR_CONFIG; } - bucket_hash = ixgbe_atr_compute_hash_82599(input, - IXGBE_ATR_BUCKET_HASH_KEY); - - /* bucket_hash is only 15 bits */ - bucket_hash &= IXGBE_ATR_HASH_MASK; - - (void) ixgbe_atr_get_vlan_id_82599(input, &vlan_id); - (void) ixgbe_atr_get_src_port_82599(input, &src_port); - (void) ixgbe_atr_get_dst_port_82599(input, &dst_port); - (void) ixgbe_atr_get_flex_byte_82599(input, &flex_bytes); - - fdirhash = soft_id << IXGBE_FDIRHASH_SIG_SW_INDEX_SHIFT | bucket_hash; - - /* Now figure out if we're IPv4 or IPv6 */ - if (l4type & IXGBE_ATR_L4TYPE_IPV6_MASK) { - /* IPv6 */ - (void) ixgbe_atr_get_src_ipv6_82599(input, &src_ipv6_1, - &src_ipv6_2, &src_ipv6_3, &src_ipv6_4); - - IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(0), src_ipv6_1); - IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(1), src_ipv6_2); - IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(2), src_ipv6_3); - /* The last 4 bytes is the same register as IPv4 */ - IXGBE_WRITE_REG(hw, IXGBE_FDIRIPSA, src_ipv6_4); - - fdircmd |= IXGBE_FDIRCMD_IPV6; - fdircmd |= IXGBE_FDIRCMD_IPv6DMATCH; - } else { - /* IPv4 */ - (void) ixgbe_atr_get_src_ipv4_82599(input, &src_ipv4); - IXGBE_WRITE_REG(hw, IXGBE_FDIRIPSA, src_ipv4); - - } - - (void) ixgbe_atr_get_dst_ipv4_82599(input, &dst_ipv4); - IXGBE_WRITE_REG(hw, IXGBE_FDIRIPDA, dst_ipv4); - - IXGBE_WRITE_REG(hw, IXGBE_FDIRVLAN, (vlan_id | - (flex_bytes << IXGBE_FDIRVLAN_FLEX_SHIFT))); - IXGBE_WRITE_REG(hw, IXGBE_FDIRPORT, (src_port | - (dst_port << IXGBE_FDIRPORT_DESTINATION_SHIFT))); - /* * Program the relevant mask registers. If src/dst_port or src/dst_addr * are zero, then assume a full mask for that field. Also assume that @@ -2077,115 +1697,131 @@ ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, * This also assumes IPv4 only. IPv6 masking isn't supported at this * point in time. */ - if (src_ipv4 == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRSIP4M, 0xffffffff); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRSIP4M, input_masks->src_ip_mask); - - if (dst_ipv4 == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRDIP4M, 0xffffffff); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRDIP4M, input_masks->dst_ip_mask); - switch (l4type & IXGBE_ATR_L4TYPE_MASK) { - case IXGBE_ATR_L4TYPE_TCP: - if (src_port == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRTCPM, 0xffff); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRTCPM, - input_masks->src_port_mask); - - if (dst_port == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRTCPM, - (IXGBE_READ_REG(hw, IXGBE_FDIRTCPM) | - 0xffff0000)); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRTCPM, - (IXGBE_READ_REG(hw, IXGBE_FDIRTCPM) | - (input_masks->dst_port_mask << 16))); + /* Program FDIRM */ + switch (IXGBE_NTOHS(input_masks->vlan_id_mask) & 0xEFFF) { + case 0xEFFF: + /* Unmask VLAN ID - bit 0 and fall through to unmask prio */ + fdirm &= ~IXGBE_FDIRM_VLANID; + /* FALLTHRU */ + case 0xE000: + /* Unmask VLAN prio - bit 1 */ + fdirm &= ~IXGBE_FDIRM_VLANP; break; - case IXGBE_ATR_L4TYPE_UDP: - if (src_port == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRUDPM, 0xffff); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRUDPM, - input_masks->src_port_mask); - - if (dst_port == 0) - IXGBE_WRITE_REG(hw, IXGBE_FDIRUDPM, - (IXGBE_READ_REG(hw, IXGBE_FDIRUDPM) | - 0xffff0000)); - else - IXGBE_WRITE_REG(hw, IXGBE_FDIRUDPM, - (IXGBE_READ_REG(hw, IXGBE_FDIRUDPM) | - (input_masks->src_port_mask << 16))); + case 0x0FFF: + /* Unmask VLAN ID - bit 0 */ + fdirm &= ~IXGBE_FDIRM_VLANID; break; - default: - /* this already would have failed above */ + case 0x0000: + /* do nothing, vlans already masked */ break; + default: + DEBUGOUT(" Error on VLAN mask\n"); + return IXGBE_ERR_CONFIG; } - /* Program the last mask register, FDIRM */ - if (input_masks->vlan_id_mask || !vlan_id) - /* Mask both VLAN and VLANP - bits 0 and 1 */ - fdirm |= (IXGBE_FDIRM_VLANID | IXGBE_FDIRM_VLANP); - - if (input_masks->data_mask || !flex_bytes) - /* Flex bytes need masking, so mask the whole thing - bit 4 */ - fdirm |= IXGBE_FDIRM_FLEX; + if (input_masks->flex_mask & 0xFFFF) { + if ((input_masks->flex_mask & 0xFFFF) != 0xFFFF) { + DEBUGOUT(" Error on flexible byte mask\n"); + return IXGBE_ERR_CONFIG; + } + /* Unmask Flex Bytes - bit 4 */ + fdirm &= ~IXGBE_FDIRM_FLEX; + } /* Now mask VM pool and destination IPv6 - bits 5 and 2 */ - fdirm |= (IXGBE_FDIRM_POOL | IXGBE_FDIRM_DIPv6); - IXGBE_WRITE_REG(hw, IXGBE_FDIRM, fdirm); - fdircmd |= IXGBE_FDIRCMD_CMD_ADD_FLOW; - fdircmd |= IXGBE_FDIRCMD_FILTER_UPDATE; - fdircmd |= IXGBE_FDIRCMD_LAST; - fdircmd |= IXGBE_FDIRCMD_QUEUE_EN; - fdircmd |= queue << IXGBE_FDIRCMD_RX_QUEUE_SHIFT; + /* store the TCP/UDP port masks, bit reversed from port layout */ + fdirtcpm = ixgbe_get_fdirtcpm_82599(input_masks); + + /* write both the same so that UDP and TCP use the same mask */ + IXGBE_WRITE_REG(hw, IXGBE_FDIRTCPM, ~fdirtcpm); + IXGBE_WRITE_REG(hw, IXGBE_FDIRUDPM, ~fdirtcpm); + + /* store source and destination IP masks (big-enian) */ + IXGBE_WRITE_REG_BE32(hw, IXGBE_FDIRSIP4M, + ~input_masks->src_ip_mask[0]); + IXGBE_WRITE_REG_BE32(hw, IXGBE_FDIRDIP4M, + ~input_masks->dst_ip_mask[0]); + + /* Apply masks to input data */ + input->formatted.vlan_id &= input_masks->vlan_id_mask; + input->formatted.flex_bytes &= input_masks->flex_mask; + input->formatted.src_port &= input_masks->src_port_mask; + input->formatted.dst_port &= input_masks->dst_port_mask; + input->formatted.src_ip[0] &= input_masks->src_ip_mask[0]; + input->formatted.dst_ip[0] &= input_masks->dst_ip_mask[0]; + + /* record vlan (little-endian) and flex_bytes(big-endian) */ + fdirvlan = + IXGBE_STORE_AS_BE16(IXGBE_NTOHS(input->formatted.flex_bytes)); + fdirvlan <<= IXGBE_FDIRVLAN_FLEX_SHIFT; + fdirvlan |= IXGBE_NTOHS(input->formatted.vlan_id); + IXGBE_WRITE_REG(hw, IXGBE_FDIRVLAN, fdirvlan); + + /* record source and destination port (little-endian)*/ + fdirport = IXGBE_NTOHS(input->formatted.dst_port); + fdirport <<= IXGBE_FDIRPORT_DESTINATION_SHIFT; + fdirport |= IXGBE_NTOHS(input->formatted.src_port); + IXGBE_WRITE_REG(hw, IXGBE_FDIRPORT, fdirport); + + /* record the first 32 bits of the destination address (big-endian) */ + IXGBE_WRITE_REG_BE32(hw, IXGBE_FDIRIPDA, input->formatted.dst_ip[0]); + + /* record the source address (big-endian) */ + IXGBE_WRITE_REG_BE32(hw, IXGBE_FDIRIPSA, input->formatted.src_ip[0]); + + /* configure FDIRCMD register */ + fdircmd = IXGBE_FDIRCMD_CMD_ADD_FLOW | IXGBE_FDIRCMD_FILTER_UPDATE | + IXGBE_FDIRCMD_LAST | IXGBE_FDIRCMD_QUEUE_EN; + fdircmd |= input->formatted.flow_type << IXGBE_FDIRCMD_FLOW_TYPE_SHIFT; + fdircmd |= (u32)queue << IXGBE_FDIRCMD_RX_QUEUE_SHIFT; + + /* we only want the bucket hash so drop the upper 16 bits */ + fdirhash = ixgbe_atr_compute_hash_82599(input, + IXGBE_ATR_BUCKET_HASH_KEY); + fdirhash |= soft_id << IXGBE_FDIRHASH_SIG_SW_INDEX_SHIFT; IXGBE_WRITE_REG(hw, IXGBE_FDIRHASH, fdirhash); IXGBE_WRITE_REG(hw, IXGBE_FDIRCMD, fdircmd); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_read_analog_reg8_82599 - Reads 8 bit Omer analog register - * @hw: pointer to hardware structure - * @reg: analog register to read - * @val: read value +/** + * ixgbe_read_analog_reg8_82599 - Reads 8 bit Omer analog register + * @hw: pointer to hardware structure + * @reg: analog register to read + * @val: read value * - * Performs read operation to Omer analog register specified. - */ -s32 -ixgbe_read_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 *val) + * Performs read operation to Omer analog register specified. + **/ +s32 ixgbe_read_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 *val) { u32 core_ctl; DEBUGFUNC("ixgbe_read_analog_reg8_82599"); IXGBE_WRITE_REG(hw, IXGBE_CORECTL, IXGBE_CORECTL_WRITE_CMD | - (reg << 8)); + (reg << 8)); IXGBE_WRITE_FLUSH(hw); usec_delay(10); core_ctl = IXGBE_READ_REG(hw, IXGBE_CORECTL); *val = (u8)core_ctl; - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_write_analog_reg8_82599 - Writes 8 bit Omer analog register - * @hw: pointer to hardware structure - * @reg: atlas register to write - * @val: value to write +/** + * ixgbe_write_analog_reg8_82599 - Writes 8 bit Omer analog register + * @hw: pointer to hardware structure + * @reg: atlas register to write + * @val: value to write * - * Performs write operation to Omer analog register specified. - */ -s32 -ixgbe_write_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 val) + * Performs write operation to Omer analog register specified. + **/ +s32 ixgbe_write_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 val) { u32 core_ctl; @@ -2196,68 +1832,49 @@ ixgbe_write_analog_reg8_82599(struct ixgbe_hw *hw, u32 reg, u8 val) IXGBE_WRITE_FLUSH(hw); usec_delay(10); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_start_hw_rev_1_82599 - Prepare hardware for Tx/Rx - * @hw: pointer to hardware structure +/** + * ixgbe_start_hw_rev_1_82599 - Prepare hardware for Tx/Rx + * @hw: pointer to hardware structure * - * Starts the hardware using the generic start_hw function. - * Then performs revision-specific operations: - * Clears the rate limiter registers. - */ -s32 -ixgbe_start_hw_rev_1_82599(struct ixgbe_hw *hw) + * Starts the hardware using the generic start_hw function + * and the generation start_hw function. + * Then performs revision-specific operations, if any. + **/ +s32 ixgbe_start_hw_rev_1_82599(struct ixgbe_hw *hw) { - u32 i; - u32 regval; s32 ret_val = IXGBE_SUCCESS; DEBUGFUNC("ixgbe_start_hw_rev_1__82599"); ret_val = ixgbe_start_hw_generic(hw); + if (ret_val != IXGBE_SUCCESS) + goto out; - /* Clear the rate limiters */ - for (i = 0; i < hw->mac.max_tx_queues; i++) { - IXGBE_WRITE_REG(hw, IXGBE_RTTDQSEL, i); - IXGBE_WRITE_REG(hw, IXGBE_RTTBCNRC, 0); - } - IXGBE_WRITE_FLUSH(hw); - - /* Disable relaxed ordering */ - for (i = 0; i < hw->mac.max_tx_queues; i++) { - regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(i)); - regval &= ~IXGBE_DCA_TXCTRL_TX_WB_RO_EN; - IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(i), regval); - } - - for (i = 0; i < hw->mac.max_rx_queues; i++) { - regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); - regval &= ~(IXGBE_DCA_RXCTRL_DESC_WRO_EN | - IXGBE_DCA_RXCTRL_DESC_HSRO_EN); - IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); - } + ret_val = ixgbe_start_hw_gen2(hw); + if (ret_val != IXGBE_SUCCESS) + goto out; /* We need to run link autotry after the driver loads */ - hw->mac.autotry_restart = true; + hw->mac.autotry_restart = TRUE; if (ret_val == IXGBE_SUCCESS) ret_val = ixgbe_verify_fw_version_82599(hw); - - return (ret_val); +out: + return ret_val; } -/* - * ixgbe_identify_phy_82599 - Get physical layer module - * @hw: pointer to hardware structure +/** + * ixgbe_identify_phy_82599 - Get physical layer module + * @hw: pointer to hardware structure * - * Determines the physical layer module found on the current adapter. - * If PHY already detected, maintains current PHY type in hw struct, - * otherwise executes the PHY detection routine. - */ -s32 -ixgbe_identify_phy_82599(struct ixgbe_hw *hw) + * Determines the physical layer module found on the current adapter. + * If PHY already detected, maintains current PHY type in hw struct, + * otherwise executes the PHY detection routine. + **/ +s32 ixgbe_identify_phy_82599(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_PHY_ADDR_INVALID; @@ -2265,8 +1882,14 @@ ixgbe_identify_phy_82599(struct ixgbe_hw *hw) /* Detect PHY if not unknown - returns success if already detected. */ status = ixgbe_identify_phy_generic(hw); - if (status != IXGBE_SUCCESS) - status = ixgbe_identify_sfp_module_generic(hw); + if (status != IXGBE_SUCCESS) { + /* 82599 10GBASE-T requires an external PHY */ + if (hw->mac.ops.get_media_type(hw) == ixgbe_media_type_copper) + goto out; + else + status = ixgbe_identify_sfp_module_generic(hw); + } + /* Set PHY type none if no PHY detected */ if (hw->phy.type == ixgbe_phy_unknown) { hw->phy.type = ixgbe_phy_none; @@ -2277,17 +1900,17 @@ ixgbe_identify_phy_82599(struct ixgbe_hw *hw) if (hw->phy.type == ixgbe_phy_sfp_unsupported) status = IXGBE_ERR_SFP_NOT_SUPPORTED; - return (status); +out: + return status; } -/* - * ixgbe_get_supported_physical_layer_82599 - Returns physical layer type - * @hw: pointer to hardware structure +/** + * ixgbe_get_supported_physical_layer_82599 - Returns physical layer type + * @hw: pointer to hardware structure * - * Determines physical layer capabilities of the current configuration. - */ -u32 -ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) + * Determines physical layer capabilities of the current configuration. + **/ +u32 ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) { u32 physical_layer = IXGBE_PHYSICAL_LAYER_UNKNOWN; u32 autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); @@ -2303,11 +1926,12 @@ ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) hw->phy.ops.identify(hw); - if (hw->phy.type == ixgbe_phy_tn || - hw->phy.type == ixgbe_phy_aq || - hw->phy.type == ixgbe_phy_cu_unknown) { + switch (hw->phy.type) { + case ixgbe_phy_tn: + case ixgbe_phy_aq: + case ixgbe_phy_cu_unknown: hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_EXT_ABILITY, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &ext_ability); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &ext_ability); if (ext_ability & IXGBE_MDIO_PHY_10GBASET_ABILITY) physical_layer |= IXGBE_PHYSICAL_LAYER_10GBASE_T; if (ext_ability & IXGBE_MDIO_PHY_1000BASET_ABILITY) @@ -2315,6 +1939,8 @@ ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) if (ext_ability & IXGBE_MDIO_PHY_100BASETX_ABILITY) physical_layer |= IXGBE_PHYSICAL_LAYER_100BASE_TX; goto out; + default: + break; } switch (autoc & IXGBE_AUTOC_LMS_MASK) { @@ -2324,10 +1950,9 @@ ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) physical_layer = IXGBE_PHYSICAL_LAYER_1000BASE_KX | IXGBE_PHYSICAL_LAYER_1000BASE_BX; goto out; - } else { - /* SFI mode so read SFP module */ - goto sfp_check; } + /* SFI mode so read SFP module */ + goto sfp_check; case IXGBE_AUTOC_LMS_10G_LINK_NO_AN: if (pma_pmd_10g_parallel == IXGBE_AUTOC_10G_CX4) physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_CX4; @@ -2357,11 +1982,9 @@ ixgbe_get_supported_physical_layer_82599(struct ixgbe_hw *hw) } sfp_check: - /* - * SFP check must be done last since DA modules are sometimes used to + /* SFP check must be done last since DA modules are sometimes used to * test KR mode - we need to id KR mode correctly before SFP module. - * Call identify_sfp because the pluggable module may have changed - */ + * Call identify_sfp because the pluggable module may have changed */ hw->phy.ops.identify_sfp(hw); if (hw->phy.sfp_type == ixgbe_sfp_type_not_present) goto out; @@ -2380,9 +2003,9 @@ sfp_check: case ixgbe_phy_sfp_intel: case ixgbe_phy_sfp_unknown: hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_1GBE_COMP_CODES, &comp_codes_1g); + IXGBE_SFF_1GBE_COMP_CODES, &comp_codes_1g); hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_10GBE_COMP_CODES, &comp_codes_10g); + IXGBE_SFF_10GBE_COMP_CODES, &comp_codes_10g); if (comp_codes_10g & IXGBE_SFF_10GBASESR_CAPABLE) physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_SR; else if (comp_codes_10g & IXGBE_SFF_10GBASELR_CAPABLE) @@ -2395,20 +2018,19 @@ sfp_check: } out: - return (physical_layer); + return physical_layer; } -/* - * ixgbe_enable_rx_dma_82599 - Enable the Rx DMA unit on 82599 - * @hw: pointer to hardware structure - * @regval: register value to write to RXCTRL +/** + * ixgbe_enable_rx_dma_82599 - Enable the Rx DMA unit on 82599 + * @hw: pointer to hardware structure + * @regval: register value to write to RXCTRL * - * Enables the Rx DMA unit for 82599 - */ -s32 -ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval) + * Enables the Rx DMA unit for 82599 + **/ +s32 ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval) { -#define IXGBE_MAX_SECRX_POLL 30 +#define IXGBE_MAX_SECRX_POLL 30 int i; int secrxreg; @@ -2435,7 +2057,7 @@ ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval) /* For informational purposes only */ if (i >= IXGBE_MAX_SECRX_POLL) DEBUGOUT("Rx unit being enabled before security " - "path fully disabled. Continuing with init.\n"); + "path fully disabled. Continuing with init.\n"); IXGBE_WRITE_REG(hw, IXGBE_RXCTRL, regval); secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL); @@ -2443,39 +2065,20 @@ ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval) IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg); IXGBE_WRITE_FLUSH(hw); - return (IXGBE_SUCCESS); -} - -/* - * ixgbe_get_device_caps_82599 - Get additional device capabilities - * @hw: pointer to hardware structure - * @device_caps: the EEPROM word with the extra device capabilities - * - * This function will read the EEPROM location for the device capabilities, - * and return the word through device_caps. - */ -s32 -ixgbe_get_device_caps_82599(struct ixgbe_hw *hw, u16 *device_caps) -{ - DEBUGFUNC("ixgbe_get_device_caps_82599"); - - hw->eeprom.ops.read(hw, IXGBE_DEVICE_CAPS, device_caps); - - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_verify_fw_version_82599 - verify fw version for 82599 - * @hw: pointer to hardware structure +/** + * ixgbe_verify_fw_version_82599 - verify fw version for 82599 + * @hw: pointer to hardware structure * - * Verifies that installed the firmware version is 0.6 or higher - * for SFI devices. All 82599 SFI devices should have version 0.6 or higher. + * Verifies that installed the firmware version is 0.6 or higher + * for SFI devices. All 82599 SFI devices should have version 0.6 or higher. * - * Returns IXGBE_ERR_EEPROM_VERSION if the FW is not present or - * if the FW version is not supported. - */ -static s32 -ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw) + * Returns IXGBE_ERR_EEPROM_VERSION if the FW is not present or + * if the FW version is not supported. + **/ +static s32 ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_EEPROM_VERSION; u16 fw_offset, fw_ptp_cfg_offset; @@ -2497,45 +2100,66 @@ ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw) /* get the offset to the Pass Through Patch Configuration block */ hw->eeprom.ops.read(hw, (fw_offset + - IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR), &fw_ptp_cfg_offset); + IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR), + &fw_ptp_cfg_offset); if ((fw_ptp_cfg_offset == 0) || (fw_ptp_cfg_offset == 0xFFFF)) goto fw_version_out; /* get the firmware version */ - hw->eeprom.ops.read(hw, (fw_ptp_cfg_offset + IXGBE_FW_PATCH_VERSION_4), - &fw_version); + hw->eeprom.ops.read(hw, (fw_ptp_cfg_offset + + IXGBE_FW_PATCH_VERSION_4), + &fw_version); if (fw_version > 0x5) status = IXGBE_SUCCESS; fw_version_out: - return (status); + return status; } -/* - * ixgbe_enable_relaxed_ordering_82599 - Enable relaxed ordering - * @hw: pointer to hardware structure - */ -void -ixgbe_enable_relaxed_ordering_82599(struct ixgbe_hw *hw) +/** + * ixgbe_verify_lesm_fw_enabled_82599 - Checks LESM FW module state. + * @hw: pointer to hardware structure + * + * Returns TRUE if the LESM FW module is present and enabled. Otherwise + * returns FALSE. Smart Speed must be disabled if LESM FW module is enabled. + **/ +bool ixgbe_verify_lesm_fw_enabled_82599(struct ixgbe_hw *hw) { - u32 regval; - u32 i; + bool lesm_enabled = FALSE; + u16 fw_offset, fw_lesm_param_offset, fw_lesm_state; + s32 status; - DEBUGFUNC("ixgbe_enable_relaxed_ordering_82599"); + DEBUGFUNC("ixgbe_verify_lesm_fw_enabled_82599"); - /* Enable relaxed ordering */ - for (i = 0; i < hw->mac.max_tx_queues; i++) { - regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(i)); - regval |= IXGBE_DCA_TXCTRL_TX_WB_RO_EN; - IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(i), regval); - } + /* get the offset to the Firmware Module block */ + status = hw->eeprom.ops.read(hw, IXGBE_FW_PTR, &fw_offset); - for (i = 0; i < hw->mac.max_rx_queues; i++) { - regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); - regval |= (IXGBE_DCA_RXCTRL_DESC_WRO_EN | - IXGBE_DCA_RXCTRL_DESC_HSRO_EN); - IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); - } + if ((status != IXGBE_SUCCESS) || + (fw_offset == 0) || (fw_offset == 0xFFFF)) + goto out; + + /* get the offset to the LESM Parameters block */ + status = hw->eeprom.ops.read(hw, (fw_offset + + IXGBE_FW_LESM_PARAMETERS_PTR), + &fw_lesm_param_offset); + + if ((status != IXGBE_SUCCESS) || + (fw_lesm_param_offset == 0) || (fw_lesm_param_offset == 0xFFFF)) + goto out; + + /* get the lesm state word */ + status = hw->eeprom.ops.read(hw, (fw_lesm_param_offset + + IXGBE_FW_LESM_STATE_1), + &fw_lesm_state); + + if ((status == IXGBE_SUCCESS) && + (fw_lesm_state & IXGBE_FW_LESM_STATE_ENABLED)) + lesm_enabled = TRUE; + +out: + return lesm_enabled; } + + diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_api.c b/usr/src/uts/common/io/ixgbe/ixgbe_api.c index e06315e934..397655f802 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_api.c +++ b/usr/src/uts/common/io/ixgbe/ixgbe_api.c @@ -1,34 +1,36 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.140 scm_061610_003709 */ +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ #include "ixgbe_api.h" #include "ixgbe_common.h" @@ -36,20 +38,19 @@ extern s32 ixgbe_init_ops_82598(struct ixgbe_hw *hw); extern s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw); -/* - * ixgbe_init_shared_code - Initialize the shared code - * @hw: pointer to hardware structure - * - * This will assign function pointers and assign the MAC type and PHY code. - * Does not touch the hardware. This function must be called prior to any - * other function in the shared code. The ixgbe_hw structure should be - * memset to 0 prior to calling this function. The following fields in - * hw structure should be filled in prior to calling this function: - * hw_addr, back, device_id, vendor_id, subsystem_device_id, - * subsystem_vendor_id, and revision_id - */ -s32 -ixgbe_init_shared_code(struct ixgbe_hw *hw) +/** + * ixgbe_init_shared_code - Initialize the shared code + * @hw: pointer to hardware structure + * + * This will assign function pointers and assign the MAC type and PHY code. + * Does not touch the hardware. This function must be called prior to any + * other function in the shared code. The ixgbe_hw structure should be + * memset to 0 prior to calling this function. The following fields in + * hw structure should be filled in prior to calling this function: + * hw_addr, back, device_id, vendor_id, subsystem_device_id, + * subsystem_vendor_id, and revision_id + **/ +s32 ixgbe_init_shared_code(struct ixgbe_hw *hw) { s32 status; @@ -72,18 +73,17 @@ ixgbe_init_shared_code(struct ixgbe_hw *hw) break; } - return (status); + return status; } -/* - * ixgbe_set_mac_type - Sets MAC type - * @hw: pointer to the HW structure +/** + * ixgbe_set_mac_type - Sets MAC type + * @hw: pointer to the HW structure * - * This function sets the mac type of the adapter based on the - * vendor ID and device ID stored in the hw structure. - */ -s32 -ixgbe_set_mac_type(struct ixgbe_hw *hw) + * This function sets the mac type of the adapter based on the + * vendor ID and device ID stored in the hw structure. + **/ +s32 ixgbe_set_mac_type(struct ixgbe_hw *hw) { s32 ret_val = IXGBE_SUCCESS; @@ -109,9 +109,9 @@ ixgbe_set_mac_type(struct ixgbe_hw *hw) case IXGBE_DEV_ID_82599_KX4_MEZZ: case IXGBE_DEV_ID_82599_XAUI_LOM: case IXGBE_DEV_ID_82599_COMBO_BACKPLANE: - case IXGBE_DEV_ID_82599_KR: case IXGBE_DEV_ID_82599_SFP: - case IXGBE_DEV_ID_82599_SFP_EM: + case IXGBE_DEV_ID_82599_BACKPLANE_FCOE: + case IXGBE_DEV_ID_82599_SFP_FCOE: case IXGBE_DEV_ID_82599_CX4: case IXGBE_DEV_ID_82599_T3_LOM: hw->mac.type = ixgbe_mac_82599EB; @@ -125,976 +125,946 @@ ixgbe_set_mac_type(struct ixgbe_hw *hw) } DEBUGOUT2("ixgbe_set_mac_type found mac: %d, returns: %d\n", - hw->mac.type, ret_val); - - return (ret_val); + hw->mac.type, ret_val); + return ret_val; } -/* - * ixgbe_init_hw - Initialize the hardware - * @hw: pointer to hardware structure +/** + * ixgbe_init_hw - Initialize the hardware + * @hw: pointer to hardware structure * - * Initialize the hardware by resetting and then starting the hardware - */ -s32 -ixgbe_init_hw(struct ixgbe_hw *hw) + * Initialize the hardware by resetting and then starting the hardware + **/ +s32 ixgbe_init_hw(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.init_hw, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_reset_hw - Performs a hardware reset - * @hw: pointer to hardware structure +/** + * ixgbe_reset_hw - Performs a hardware reset + * @hw: pointer to hardware structure * - * Resets the hardware by resetting the transmit and receive units, masks and - * clears all interrupts, performs a PHY reset, and performs a MAC reset - */ -s32 -ixgbe_reset_hw(struct ixgbe_hw *hw) + * Resets the hardware by resetting the transmit and receive units, masks and + * clears all interrupts, performs a PHY reset, and performs a MAC reset + **/ +s32 ixgbe_reset_hw(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.reset_hw, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_start_hw - Prepares hardware for Rx/Tx - * @hw: pointer to hardware structure +/** + * ixgbe_start_hw - Prepares hardware for Rx/Tx + * @hw: pointer to hardware structure * - * Starts the hardware by filling the bus info structure and media type, - * clears all on chip counters, initializes receive address registers, - * multicast table, VLAN filter table, calls routine to setup link and - * flow control settings, and leaves transmit and receive units disabled - * and uninitialized. - */ -s32 -ixgbe_start_hw(struct ixgbe_hw *hw) + * Starts the hardware by filling the bus info structure and media type, + * clears all on chip counters, initializes receive address registers, + * multicast table, VLAN filter table, calls routine to setup link and + * flow control settings, and leaves transmit and receive units disabled + * and uninitialized. + **/ +s32 ixgbe_start_hw(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.start_hw, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_enable_relaxed_ordering - Enables tx relaxed ordering, - * which is disabled by default in ixgbe_start_hw(); +/** + * ixgbe_enable_relaxed_ordering - Enables tx relaxed ordering, + * which is disabled by default in ixgbe_start_hw(); * - * @hw: pointer to hardware structure + * @hw: pointer to hardware structure * - * Enable relaxed ordering; - */ -void -ixgbe_enable_relaxed_ordering(struct ixgbe_hw *hw) + * Enable relaxed ordering; + **/ +void ixgbe_enable_relaxed_ordering(struct ixgbe_hw *hw) { if (hw->mac.ops.enable_relaxed_ordering) hw->mac.ops.enable_relaxed_ordering(hw); } -/* - * ixgbe_clear_hw_cntrs - Clear hardware counters - * @hw: pointer to hardware structure +/** + * ixgbe_clear_hw_cntrs - Clear hardware counters + * @hw: pointer to hardware structure * - * Clears all hardware statistics counters by reading them from the hardware - * Statistics counters are clear on read. - */ -s32 -ixgbe_clear_hw_cntrs(struct ixgbe_hw *hw) + * Clears all hardware statistics counters by reading them from the hardware + * Statistics counters are clear on read. + **/ +s32 ixgbe_clear_hw_cntrs(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.clear_hw_cntrs, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_media_type - Get media type - * @hw: pointer to hardware structure +/** + * ixgbe_get_media_type - Get media type + * @hw: pointer to hardware structure * - * Returns the media type (fiber, copper, backplane) - */ -enum ixgbe_media_type -ixgbe_get_media_type(struct ixgbe_hw *hw) + * Returns the media type (fiber, copper, backplane) + **/ +enum ixgbe_media_type ixgbe_get_media_type(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.get_media_type, (hw), - ixgbe_media_type_unknown); + ixgbe_media_type_unknown); } -/* - * ixgbe_get_mac_addr - Get MAC address - * @hw: pointer to hardware structure - * @mac_addr: Adapter MAC address +/** + * ixgbe_get_mac_addr - Get MAC address + * @hw: pointer to hardware structure + * @mac_addr: Adapter MAC address * - * Reads the adapter's MAC address from the first Receive Address Register - * (RAR0) A reset of the adapter must have been performed prior to calling - * this function in order for the MAC address to have been loaded from the - * EEPROM into RAR0 - */ -s32 -ixgbe_get_mac_addr(struct ixgbe_hw *hw, u8 *mac_addr) + * Reads the adapter's MAC address from the first Receive Address Register + * (RAR0) A reset of the adapter must have been performed prior to calling + * this function in order for the MAC address to have been loaded from the + * EEPROM into RAR0 + **/ +s32 ixgbe_get_mac_addr(struct ixgbe_hw *hw, u8 *mac_addr) { return ixgbe_call_func(hw, hw->mac.ops.get_mac_addr, - (hw, mac_addr), IXGBE_NOT_IMPLEMENTED); + (hw, mac_addr), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_san_mac_addr - Get SAN MAC address - * @hw: pointer to hardware structure - * @san_mac_addr: SAN MAC address +/** + * ixgbe_get_san_mac_addr - Get SAN MAC address + * @hw: pointer to hardware structure + * @san_mac_addr: SAN MAC address * - * Reads the SAN MAC address from the EEPROM, if it's available. This is - * per-port, so set_lan_id() must be called before reading the addresses. - */ -s32 -ixgbe_get_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr) + * Reads the SAN MAC address from the EEPROM, if it's available. This is + * per-port, so set_lan_id() must be called before reading the addresses. + **/ +s32 ixgbe_get_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr) { return ixgbe_call_func(hw, hw->mac.ops.get_san_mac_addr, - (hw, san_mac_addr), IXGBE_NOT_IMPLEMENTED); + (hw, san_mac_addr), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_set_san_mac_addr - Write a SAN MAC address - * @hw: pointer to hardware structure - * @san_mac_addr: SAN MAC address +/** + * ixgbe_set_san_mac_addr - Write a SAN MAC address + * @hw: pointer to hardware structure + * @san_mac_addr: SAN MAC address * - * Writes A SAN MAC address to the EEPROM. - */ -s32 -ixgbe_set_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr) + * Writes A SAN MAC address to the EEPROM. + **/ +s32 ixgbe_set_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr) { return ixgbe_call_func(hw, hw->mac.ops.set_san_mac_addr, - (hw, san_mac_addr), IXGBE_NOT_IMPLEMENTED); + (hw, san_mac_addr), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_device_caps - Get additional device capabilities - * @hw: pointer to hardware structure - * @device_caps: the EEPROM word for device capabilities +/** + * ixgbe_get_device_caps - Get additional device capabilities + * @hw: pointer to hardware structure + * @device_caps: the EEPROM word for device capabilities * - * Reads the extra device capabilities from the EEPROM - */ -s32 -ixgbe_get_device_caps(struct ixgbe_hw *hw, u16 *device_caps) + * Reads the extra device capabilities from the EEPROM + **/ +s32 ixgbe_get_device_caps(struct ixgbe_hw *hw, u16 *device_caps) { return ixgbe_call_func(hw, hw->mac.ops.get_device_caps, - (hw, device_caps), IXGBE_NOT_IMPLEMENTED); + (hw, device_caps), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_wwn_prefix - Get alternative WWNN/WWPN prefix from the EEPROM - * @hw: pointer to hardware structure - * @wwnn_prefix: the alternative WWNN prefix - * @wwpn_prefix: the alternative WWPN prefix +/** + * ixgbe_get_wwn_prefix - Get alternative WWNN/WWPN prefix from the EEPROM + * @hw: pointer to hardware structure + * @wwnn_prefix: the alternative WWNN prefix + * @wwpn_prefix: the alternative WWPN prefix * - * This function will read the EEPROM from the alternative SAN MAC address - * block to check the support for the alternative WWNN/WWPN prefix support. - */ -s32 -ixgbe_get_wwn_prefix(struct ixgbe_hw *hw, u16 *wwnn_prefix, u16 *wwpn_prefix) + * This function will read the EEPROM from the alternative SAN MAC address + * block to check the support for the alternative WWNN/WWPN prefix support. + **/ +s32 ixgbe_get_wwn_prefix(struct ixgbe_hw *hw, u16 *wwnn_prefix, + u16 *wwpn_prefix) { return ixgbe_call_func(hw, hw->mac.ops.get_wwn_prefix, - (hw, wwnn_prefix, wwpn_prefix), IXGBE_NOT_IMPLEMENTED); + (hw, wwnn_prefix, wwpn_prefix), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_fcoe_boot_status - Get FCOE boot status from EEPROM - * @hw: pointer to hardware structure - * @bs: the fcoe boot status +/** + * ixgbe_get_fcoe_boot_status - Get FCOE boot status from EEPROM + * @hw: pointer to hardware structure + * @bs: the fcoe boot status * - * This function will read the FCOE boot status from the iSCSI FCOE block - */ -s32 -ixgbe_get_fcoe_boot_status(struct ixgbe_hw *hw, u16 *bs) + * This function will read the FCOE boot status from the iSCSI FCOE block + **/ +s32 ixgbe_get_fcoe_boot_status(struct ixgbe_hw *hw, u16 *bs) { return ixgbe_call_func(hw, hw->mac.ops.get_fcoe_boot_status, - (hw, bs), IXGBE_NOT_IMPLEMENTED); + (hw, bs), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_bus_info - Set PCI bus info - * @hw: pointer to hardware structure +/** + * ixgbe_get_bus_info - Set PCI bus info + * @hw: pointer to hardware structure * - * Sets the PCI bus info (speed, width, type) within the ixgbe_hw structure - */ -s32 -ixgbe_get_bus_info(struct ixgbe_hw *hw) + * Sets the PCI bus info (speed, width, type) within the ixgbe_hw structure + **/ +s32 ixgbe_get_bus_info(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.get_bus_info, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_num_of_tx_queues - Get Tx queues - * @hw: pointer to hardware structure +/** + * ixgbe_get_num_of_tx_queues - Get Tx queues + * @hw: pointer to hardware structure * - * Returns the number of transmit queues for the given adapter. - */ -u32 -ixgbe_get_num_of_tx_queues(struct ixgbe_hw *hw) + * Returns the number of transmit queues for the given adapter. + **/ +u32 ixgbe_get_num_of_tx_queues(struct ixgbe_hw *hw) { - return (hw->mac.max_tx_queues); + return hw->mac.max_tx_queues; } -/* - * ixgbe_get_num_of_rx_queues - Get Rx queues - * @hw: pointer to hardware structure +/** + * ixgbe_get_num_of_rx_queues - Get Rx queues + * @hw: pointer to hardware structure * - * Returns the number of receive queues for the given adapter. - */ -u32 -ixgbe_get_num_of_rx_queues(struct ixgbe_hw *hw) + * Returns the number of receive queues for the given adapter. + **/ +u32 ixgbe_get_num_of_rx_queues(struct ixgbe_hw *hw) { - return (hw->mac.max_rx_queues); + return hw->mac.max_rx_queues; } -/* - * ixgbe_stop_adapter - Disable Rx/Tx units - * @hw: pointer to hardware structure +/** + * ixgbe_stop_adapter - Disable Rx/Tx units + * @hw: pointer to hardware structure * - * Sets the adapter_stopped flag within ixgbe_hw struct. Clears interrupts, - * disables transmit and receive units. The adapter_stopped flag is used by - * the shared code and drivers to determine if the adapter is in a stopped - * state and should not touch the hardware. - */ -s32 -ixgbe_stop_adapter(struct ixgbe_hw *hw) + * Sets the adapter_stopped flag within ixgbe_hw struct. Clears interrupts, + * disables transmit and receive units. The adapter_stopped flag is used by + * the shared code and drivers to determine if the adapter is in a stopped + * state and should not touch the hardware. + **/ +s32 ixgbe_stop_adapter(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.stop_adapter, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_read_pba_num - Reads part number from EEPROM - * @hw: pointer to hardware structure - * @pba_num: stores the part number from the EEPROM +/** + * ixgbe_read_pba_string - Reads part number string from EEPROM + * @hw: pointer to hardware structure + * @pba_num: stores the part number string from the EEPROM + * @pba_num_size: part number string buffer length * - * Reads the part number from the EEPROM. - */ -s32 -ixgbe_read_pba_num(struct ixgbe_hw *hw, u32 *pba_num) + * Reads the part number string from the EEPROM. + **/ +s32 ixgbe_read_pba_string(struct ixgbe_hw *hw, u8 *pba_num, u32 pba_num_size) { - return (ixgbe_read_pba_num_generic(hw, pba_num)); + return ixgbe_read_pba_string_generic(hw, pba_num, pba_num_size); } -/* - * ixgbe_identify_phy - Get PHY type - * @hw: pointer to hardware structure +/** + * ixgbe_read_pba_length - Reads part number string length from EEPROM + * @hw: pointer to hardware structure + * @pba_num_size: part number string buffer length * - * Determines the physical layer module found on the current adapter. - */ -s32 -ixgbe_identify_phy(struct ixgbe_hw *hw) + * Reads the part number length from the EEPROM. + * Returns expected buffer size in pba_num_size. + **/ +s32 ixgbe_read_pba_length(struct ixgbe_hw *hw, u32 *pba_num_size) +{ + return ixgbe_read_pba_length_generic(hw, pba_num_size); +} + +/** + * ixgbe_read_pba_num - Reads part number from EEPROM + * @hw: pointer to hardware structure + * @pba_num: stores the part number from the EEPROM + * + * Reads the part number from the EEPROM. + **/ +s32 ixgbe_read_pba_num(struct ixgbe_hw *hw, u32 *pba_num) +{ + return ixgbe_read_pba_num_generic(hw, pba_num); +} + +/** + * ixgbe_identify_phy - Get PHY type + * @hw: pointer to hardware structure + * + * Determines the physical layer module found on the current adapter. + **/ +s32 ixgbe_identify_phy(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; if (hw->phy.type == ixgbe_phy_unknown) { - status = ixgbe_call_func(hw, - hw->phy.ops.identify, - (hw), - IXGBE_NOT_IMPLEMENTED); + status = ixgbe_call_func(hw, hw->phy.ops.identify, (hw), + IXGBE_NOT_IMPLEMENTED); } - return (status); + return status; } -/* - * ixgbe_reset_phy - Perform a PHY reset - * @hw: pointer to hardware structure - */ -s32 -ixgbe_reset_phy(struct ixgbe_hw *hw) +/** + * ixgbe_reset_phy - Perform a PHY reset + * @hw: pointer to hardware structure + **/ +s32 ixgbe_reset_phy(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; if (hw->phy.type == ixgbe_phy_unknown) { - if (ixgbe_identify_phy(hw) != IXGBE_SUCCESS) { + if (ixgbe_identify_phy(hw) != IXGBE_SUCCESS) status = IXGBE_ERR_PHY; - } } if (status == IXGBE_SUCCESS) { status = ixgbe_call_func(hw, hw->phy.ops.reset, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } - return (status); + return status; } -/* - * ixgbe_get_phy_firmware_version - - * @hw: pointer to hardware structure - * @firmware_version: pointer to firmware version - */ -s32 -ixgbe_get_phy_firmware_version(struct ixgbe_hw *hw, u16 *firmware_version) +/** + * ixgbe_get_phy_firmware_version - + * @hw: pointer to hardware structure + * @firmware_version: pointer to firmware version + **/ +s32 ixgbe_get_phy_firmware_version(struct ixgbe_hw *hw, u16 *firmware_version) { s32 status = IXGBE_SUCCESS; status = ixgbe_call_func(hw, hw->phy.ops.get_firmware_version, - (hw, firmware_version), IXGBE_NOT_IMPLEMENTED); - return (status); + (hw, firmware_version), + IXGBE_NOT_IMPLEMENTED); + return status; } -/* - * ixgbe_read_phy_reg - Read PHY register - * @hw: pointer to hardware structure - * @reg_addr: 32 bit address of PHY register to read - * @phy_data: Pointer to read data from PHY register +/** + * ixgbe_read_phy_reg - Read PHY register + * @hw: pointer to hardware structure + * @reg_addr: 32 bit address of PHY register to read + * @phy_data: Pointer to read data from PHY register * - * Reads a value from a specified PHY register - */ -s32 -ixgbe_read_phy_reg(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, - u16 *phy_data) + * Reads a value from a specified PHY register + **/ +s32 ixgbe_read_phy_reg(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, + u16 *phy_data) { if (hw->phy.id == 0) (void) ixgbe_identify_phy(hw); return ixgbe_call_func(hw, hw->phy.ops.read_reg, (hw, reg_addr, - device_type, phy_data), IXGBE_NOT_IMPLEMENTED); + device_type, phy_data), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_write_phy_reg - Write PHY register - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @phy_data: Data to write to the PHY register +/** + * ixgbe_write_phy_reg - Write PHY register + * @hw: pointer to hardware structure + * @reg_addr: 32 bit PHY register to write + * @phy_data: Data to write to the PHY register * - * Writes a value to specified PHY register - */ + * Writes a value to specified PHY register + **/ s32 ixgbe_write_phy_reg(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, - u16 phy_data) + u16 phy_data) { if (hw->phy.id == 0) (void) ixgbe_identify_phy(hw); return ixgbe_call_func(hw, hw->phy.ops.write_reg, (hw, reg_addr, - device_type, phy_data), IXGBE_NOT_IMPLEMENTED); + device_type, phy_data), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_setup_phy_link - Restart PHY autoneg - * @hw: pointer to hardware structure +/** + * ixgbe_setup_phy_link - Restart PHY autoneg + * @hw: pointer to hardware structure * - * Restart autonegotiation and PHY and waits for completion. - */ -s32 -ixgbe_setup_phy_link(struct ixgbe_hw *hw) + * Restart autonegotiation and PHY and waits for completion. + **/ +s32 ixgbe_setup_phy_link(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->phy.ops.setup_link, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_check_phy_link - Determine link and speed status - * @hw: pointer to hardware structure +/** + * ixgbe_check_phy_link - Determine link and speed status + * @hw: pointer to hardware structure * - * Reads a PHY register to determine if link is up and the current speed for - * the PHY. - */ + * Reads a PHY register to determine if link is up and the current speed for + * the PHY. + **/ s32 ixgbe_check_phy_link(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up) + bool *link_up) { return ixgbe_call_func(hw, hw->phy.ops.check_link, (hw, speed, - link_up), IXGBE_NOT_IMPLEMENTED); + link_up), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_setup_phy_link_speed - Set auto advertise - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled +/** + * ixgbe_setup_phy_link_speed - Set auto advertise + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled * - * Sets the auto advertised capabilities - */ -s32 -ixgbe_setup_phy_link_speed(struct ixgbe_hw *hw, ixgbe_link_speed speed, - bool autoneg, - bool autoneg_wait_to_complete) + * Sets the auto advertised capabilities + **/ +s32 ixgbe_setup_phy_link_speed(struct ixgbe_hw *hw, ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete) { return ixgbe_call_func(hw, hw->phy.ops.setup_link_speed, (hw, speed, - autoneg, autoneg_wait_to_complete), - IXGBE_NOT_IMPLEMENTED); + autoneg, autoneg_wait_to_complete), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_check_link - Get link and speed status - * @hw: pointer to hardware structure +/** + * ixgbe_check_link - Get link and speed status + * @hw: pointer to hardware structure * - * Reads the links register to determine if link is up and the current speed - */ -s32 -ixgbe_check_link(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up, bool link_up_wait_to_complete) + * Reads the links register to determine if link is up and the current speed + **/ +s32 ixgbe_check_link(struct ixgbe_hw *hw, ixgbe_link_speed *speed, + bool *link_up, bool link_up_wait_to_complete) { return ixgbe_call_func(hw, hw->mac.ops.check_link, (hw, speed, - link_up, link_up_wait_to_complete), IXGBE_NOT_IMPLEMENTED); + link_up, link_up_wait_to_complete), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_disable_tx_laser - Disable Tx laser - * @hw: pointer to hardware structure +/** + * ixgbe_disable_tx_laser - Disable Tx laser + * @hw: pointer to hardware structure * - * If the driver needs to disable the laser on SFI optics. - */ -void -ixgbe_disable_tx_laser(struct ixgbe_hw *hw) + * If the driver needs to disable the laser on SFI optics. + **/ +void ixgbe_disable_tx_laser(struct ixgbe_hw *hw) { if (hw->mac.ops.disable_tx_laser) hw->mac.ops.disable_tx_laser(hw); } -/* - * ixgbe_enable_tx_laser - Enable Tx laser - * @hw: pointer to hardware structure +/** + * ixgbe_enable_tx_laser - Enable Tx laser + * @hw: pointer to hardware structure * - * If the driver needs to enable the laser on SFI optics. - */ -void -ixgbe_enable_tx_laser(struct ixgbe_hw *hw) + * If the driver needs to enable the laser on SFI optics. + **/ +void ixgbe_enable_tx_laser(struct ixgbe_hw *hw) { if (hw->mac.ops.enable_tx_laser) hw->mac.ops.enable_tx_laser(hw); } -/* - * ixgbe_flap_tx_laser - flap Tx laser to start autotry process - * @hw: pointer to hardware structure +/** + * ixgbe_flap_tx_laser - flap Tx laser to start autotry process + * @hw: pointer to hardware structure * - * When the driver changes the link speeds that it can support then - * flap the tx laser to alert the link partner to start autotry - * process on its end. - */ -void -ixgbe_flap_tx_laser(struct ixgbe_hw *hw) + * When the driver changes the link speeds that it can support then + * flap the tx laser to alert the link partner to start autotry + * process on its end. + **/ +void ixgbe_flap_tx_laser(struct ixgbe_hw *hw) { if (hw->mac.ops.flap_tx_laser) hw->mac.ops.flap_tx_laser(hw); } -/* - * ixgbe_setup_link - Set link speed - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled +/** + * ixgbe_setup_link - Set link speed + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled * - * Configures link settings. Restarts the link. - * Performs autonegotiation if needed. - */ + * Configures link settings. Restarts the link. + * Performs autonegotiation if needed. + **/ s32 ixgbe_setup_link(struct ixgbe_hw *hw, ixgbe_link_speed speed, - bool autoneg, - bool autoneg_wait_to_complete) + bool autoneg, + bool autoneg_wait_to_complete) { return ixgbe_call_func(hw, hw->mac.ops.setup_link, (hw, speed, - autoneg, autoneg_wait_to_complete), - IXGBE_NOT_IMPLEMENTED); + autoneg, autoneg_wait_to_complete), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_link_capabilities - Returns link capabilities - * @hw: pointer to hardware structure +/** + * ixgbe_get_link_capabilities - Returns link capabilities + * @hw: pointer to hardware structure * - * Determines the link capabilities of the current configuration. - */ -s32 -ixgbe_get_link_capabilities(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *autoneg) + * Determines the link capabilities of the current configuration. + **/ +s32 ixgbe_get_link_capabilities(struct ixgbe_hw *hw, ixgbe_link_speed *speed, + bool *autoneg) { return ixgbe_call_func(hw, hw->mac.ops.get_link_capabilities, (hw, - speed, autoneg), IXGBE_NOT_IMPLEMENTED); + speed, autoneg), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_led_on - Turn on LEDs - * @hw: pointer to hardware structure - * @index: led number to turn on +/** + * ixgbe_led_on - Turn on LEDs + * @hw: pointer to hardware structure + * @index: led number to turn on * - * Turns on the software controllable LEDs. - */ -s32 -ixgbe_led_on(struct ixgbe_hw *hw, u32 index) + * Turns on the software controllable LEDs. + **/ +s32 ixgbe_led_on(struct ixgbe_hw *hw, u32 index) { return ixgbe_call_func(hw, hw->mac.ops.led_on, (hw, index), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_led_off - Turn off LEDs - * @hw: pointer to hardware structure - * @index: led number to turn off +/** + * ixgbe_led_off - Turn off LEDs + * @hw: pointer to hardware structure + * @index: led number to turn off * - * Turns off the software controllable LEDs. - */ -s32 -ixgbe_led_off(struct ixgbe_hw *hw, u32 index) + * Turns off the software controllable LEDs. + **/ +s32 ixgbe_led_off(struct ixgbe_hw *hw, u32 index) { return ixgbe_call_func(hw, hw->mac.ops.led_off, (hw, index), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_blink_led_start - Blink LEDs - * @hw: pointer to hardware structure - * @index: led number to blink +/** + * ixgbe_blink_led_start - Blink LEDs + * @hw: pointer to hardware structure + * @index: led number to blink * - * Blink LED based on index. - */ -s32 -ixgbe_blink_led_start(struct ixgbe_hw *hw, u32 index) + * Blink LED based on index. + **/ +s32 ixgbe_blink_led_start(struct ixgbe_hw *hw, u32 index) { return ixgbe_call_func(hw, hw->mac.ops.blink_led_start, (hw, index), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_blink_led_stop - Stop blinking LEDs - * @hw: pointer to hardware structure +/** + * ixgbe_blink_led_stop - Stop blinking LEDs + * @hw: pointer to hardware structure * - * Stop blinking LED based on index. - */ -s32 -ixgbe_blink_led_stop(struct ixgbe_hw *hw, u32 index) + * Stop blinking LED based on index. + **/ +s32 ixgbe_blink_led_stop(struct ixgbe_hw *hw, u32 index) { return ixgbe_call_func(hw, hw->mac.ops.blink_led_stop, (hw, index), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_init_eeprom_params - Initialize EEPROM parameters - * @hw: pointer to hardware structure +/** + * ixgbe_init_eeprom_params - Initialize EEPROM parameters + * @hw: pointer to hardware structure * - * Initializes the EEPROM parameters ixgbe_eeprom_info within the - * ixgbe_hw struct in order to set up EEPROM access. - */ -s32 -ixgbe_init_eeprom_params(struct ixgbe_hw *hw) + * Initializes the EEPROM parameters ixgbe_eeprom_info within the + * ixgbe_hw struct in order to set up EEPROM access. + **/ +s32 ixgbe_init_eeprom_params(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->eeprom.ops.init_params, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_write_eeprom - Write word to EEPROM - * @hw: pointer to hardware structure - * @offset: offset within the EEPROM to be written to - * @data: 16 bit word to be written to the EEPROM +/** + * ixgbe_write_eeprom - Write word to EEPROM + * @hw: pointer to hardware structure + * @offset: offset within the EEPROM to be written to + * @data: 16 bit word to be written to the EEPROM * - * Writes 16 bit value to EEPROM. If ixgbe_eeprom_update_checksum is not - * called after this function, the EEPROM will most likely contain an - * invalid checksum. - */ -s32 -ixgbe_write_eeprom(struct ixgbe_hw *hw, u16 offset, u16 data) + * Writes 16 bit value to EEPROM. If ixgbe_eeprom_update_checksum is not + * called after this function, the EEPROM will most likely contain an + * invalid checksum. + **/ +s32 ixgbe_write_eeprom(struct ixgbe_hw *hw, u16 offset, u16 data) { return ixgbe_call_func(hw, hw->eeprom.ops.write, (hw, offset, data), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_read_eeprom - Read word from EEPROM - * @hw: pointer to hardware structure - * @offset: offset within the EEPROM to be read - * @data: read 16 bit value from EEPROM +/** + * ixgbe_read_eeprom - Read word from EEPROM + * @hw: pointer to hardware structure + * @offset: offset within the EEPROM to be read + * @data: read 16 bit value from EEPROM * - * Reads 16 bit value from EEPROM - */ -s32 -ixgbe_read_eeprom(struct ixgbe_hw *hw, u16 offset, u16 *data) + * Reads 16 bit value from EEPROM + **/ +s32 ixgbe_read_eeprom(struct ixgbe_hw *hw, u16 offset, u16 *data) { return ixgbe_call_func(hw, hw->eeprom.ops.read, (hw, offset, data), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_validate_eeprom_checksum - Validate EEPROM checksum - * @hw: pointer to hardware structure - * @checksum_val: calculated checksum +/** + * ixgbe_validate_eeprom_checksum - Validate EEPROM checksum + * @hw: pointer to hardware structure + * @checksum_val: calculated checksum * - * Performs checksum calculation and validates the EEPROM checksum - */ -s32 -ixgbe_validate_eeprom_checksum(struct ixgbe_hw *hw, u16 *checksum_val) + * Performs checksum calculation and validates the EEPROM checksum + **/ +s32 ixgbe_validate_eeprom_checksum(struct ixgbe_hw *hw, u16 *checksum_val) { return ixgbe_call_func(hw, hw->eeprom.ops.validate_checksum, - (hw, checksum_val), IXGBE_NOT_IMPLEMENTED); + (hw, checksum_val), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_eeprom_update_checksum - Updates the EEPROM checksum - * @hw: pointer to hardware structure - */ -s32 -ixgbe_update_eeprom_checksum(struct ixgbe_hw *hw) +/** + * ixgbe_eeprom_update_checksum - Updates the EEPROM checksum + * @hw: pointer to hardware structure + **/ +s32 ixgbe_update_eeprom_checksum(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->eeprom.ops.update_checksum, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_insert_mac_addr - Find a RAR for this mac address - * @hw: pointer to hardware structure - * @addr: Address to put into receive address register - * @vmdq: VMDq pool to assign +/** + * ixgbe_insert_mac_addr - Find a RAR for this mac address + * @hw: pointer to hardware structure + * @addr: Address to put into receive address register + * @vmdq: VMDq pool to assign * - * Puts an ethernet address into a receive address register, or - * finds the rar that it is aleady in; adds to the pool list - */ -s32 -ixgbe_insert_mac_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) + * Puts an ethernet address into a receive address register, or + * finds the rar that it is aleady in; adds to the pool list + **/ +s32 ixgbe_insert_mac_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) { return ixgbe_call_func(hw, hw->mac.ops.insert_mac_addr, - (hw, addr, vmdq), IXGBE_NOT_IMPLEMENTED); + (hw, addr, vmdq), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_set_rar - Set Rx address register - * @hw: pointer to hardware structure - * @index: Receive address register to write - * @addr: Address to put into receive address register - * @vmdq: VMDq "set" - * @enable_addr: set flag that address is active +/** + * ixgbe_set_rar - Set Rx address register + * @hw: pointer to hardware structure + * @index: Receive address register to write + * @addr: Address to put into receive address register + * @vmdq: VMDq "set" + * @enable_addr: set flag that address is active * - * Puts an ethernet address into a receive address register. - */ -s32 -ixgbe_set_rar(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, - u32 enable_addr) + * Puts an ethernet address into a receive address register. + **/ +s32 ixgbe_set_rar(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, + u32 enable_addr) { return ixgbe_call_func(hw, hw->mac.ops.set_rar, (hw, index, addr, vmdq, - enable_addr), IXGBE_NOT_IMPLEMENTED); + enable_addr), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_clear_rar - Clear Rx address register - * @hw: pointer to hardware structure - * @index: Receive address register to write +/** + * ixgbe_clear_rar - Clear Rx address register + * @hw: pointer to hardware structure + * @index: Receive address register to write * - * Puts an ethernet address into a receive address register. - */ -s32 -ixgbe_clear_rar(struct ixgbe_hw *hw, u32 index) + * Puts an ethernet address into a receive address register. + **/ +s32 ixgbe_clear_rar(struct ixgbe_hw *hw, u32 index) { return ixgbe_call_func(hw, hw->mac.ops.clear_rar, (hw, index), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_set_vmdq - Associate a VMDq index with a receive address - * @hw: pointer to hardware structure - * @rar: receive address register index to associate with VMDq index - * @vmdq: VMDq set or pool index - */ -s32 -ixgbe_set_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_set_vmdq - Associate a VMDq index with a receive address + * @hw: pointer to hardware structure + * @rar: receive address register index to associate with VMDq index + * @vmdq: VMDq set or pool index + **/ +s32 ixgbe_set_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { return ixgbe_call_func(hw, hw->mac.ops.set_vmdq, (hw, rar, vmdq), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_clear_vmdq - Disassociate a VMDq index from a receive address - * @hw: pointer to hardware structure - * @rar: receive address register index to disassociate with VMDq index - * @vmdq: VMDq set or pool index - */ -s32 -ixgbe_clear_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_clear_vmdq - Disassociate a VMDq index from a receive address + * @hw: pointer to hardware structure + * @rar: receive address register index to disassociate with VMDq index + * @vmdq: VMDq set or pool index + **/ +s32 ixgbe_clear_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { return ixgbe_call_func(hw, hw->mac.ops.clear_vmdq, (hw, rar, vmdq), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_init_rx_addrs - Initializes receive address filters. - * @hw: pointer to hardware structure +/** + * ixgbe_init_rx_addrs - Initializes receive address filters. + * @hw: pointer to hardware structure * - * Places the MAC address in receive address register 0 and clears the rest - * of the receive address registers. Clears the multicast table. Assumes - * the receiver is in reset when the routine is called. - */ -s32 -ixgbe_init_rx_addrs(struct ixgbe_hw *hw) + * Places the MAC address in receive address register 0 and clears the rest + * of the receive address registers. Clears the multicast table. Assumes + * the receiver is in reset when the routine is called. + **/ +s32 ixgbe_init_rx_addrs(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.init_rx_addrs, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_num_rx_addrs - Returns the number of RAR entries. - * @hw: pointer to hardware structure - */ -u32 -ixgbe_get_num_rx_addrs(struct ixgbe_hw *hw) +/** + * ixgbe_get_num_rx_addrs - Returns the number of RAR entries. + * @hw: pointer to hardware structure + **/ +u32 ixgbe_get_num_rx_addrs(struct ixgbe_hw *hw) { - return (hw->mac.num_rar_entries); + return hw->mac.num_rar_entries; } -/* - * ixgbe_update_uc_addr_list - Updates the MAC's list of secondary addresses - * @hw: pointer to hardware structure - * @addr_list: the list of new multicast addresses - * @addr_count: number of addresses - * @func: iterator function to walk the multicast address list +/** + * ixgbe_update_uc_addr_list - Updates the MAC's list of secondary addresses + * @hw: pointer to hardware structure + * @addr_list: the list of new multicast addresses + * @addr_count: number of addresses + * @func: iterator function to walk the multicast address list * - * The given list replaces any existing list. Clears the secondary addrs from - * receive address registers. Uses unused receive address registers for the - * first secondary addresses, and falls back to promiscuous mode as needed. - */ -s32 -ixgbe_update_uc_addr_list(struct ixgbe_hw *hw, u8 *addr_list, - u32 addr_count, ixgbe_mc_addr_itr func) + * The given list replaces any existing list. Clears the secondary addrs from + * receive address registers. Uses unused receive address registers for the + * first secondary addresses, and falls back to promiscuous mode as needed. + **/ +s32 ixgbe_update_uc_addr_list(struct ixgbe_hw *hw, u8 *addr_list, + u32 addr_count, ixgbe_mc_addr_itr func) { return ixgbe_call_func(hw, hw->mac.ops.update_uc_addr_list, (hw, - addr_list, addr_count, func), - IXGBE_NOT_IMPLEMENTED); -} - -/* - * ixgbe_update_mc_addr_list - Updates the MAC's list of multicast addresses - * @hw: pointer to hardware structure - * @mc_addr_list: the list of new multicast addresses - * @mc_addr_count: number of addresses - * @func: iterator function to walk the multicast address list - * - * The given list replaces any existing list. Clears the MC addrs from receive - * address registers and the multicast table. Uses unused receive address - * registers for the first multicast addresses, and hashes the rest into the - * multicast table. - */ -s32 -ixgbe_update_mc_addr_list(struct ixgbe_hw *hw, u8 *mc_addr_list, - u32 mc_addr_count, ixgbe_mc_addr_itr func) + addr_list, addr_count, func), + IXGBE_NOT_IMPLEMENTED); +} + +/** + * ixgbe_update_mc_addr_list - Updates the MAC's list of multicast addresses + * @hw: pointer to hardware structure + * @mc_addr_list: the list of new multicast addresses + * @mc_addr_count: number of addresses + * @func: iterator function to walk the multicast address list + * + * The given list replaces any existing list. Clears the MC addrs from receive + * address registers and the multicast table. Uses unused receive address + * registers for the first multicast addresses, and hashes the rest into the + * multicast table. + **/ +s32 ixgbe_update_mc_addr_list(struct ixgbe_hw *hw, u8 *mc_addr_list, + u32 mc_addr_count, ixgbe_mc_addr_itr func) { return ixgbe_call_func(hw, hw->mac.ops.update_mc_addr_list, (hw, - mc_addr_list, mc_addr_count, func), - IXGBE_NOT_IMPLEMENTED); + mc_addr_list, mc_addr_count, func), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_enable_mc - Enable multicast address in RAR - * @hw: pointer to hardware structure +/** + * ixgbe_enable_mc - Enable multicast address in RAR + * @hw: pointer to hardware structure * - * Enables multicast address in RAR and the use of the multicast hash table. - */ -s32 -ixgbe_enable_mc(struct ixgbe_hw *hw) + * Enables multicast address in RAR and the use of the multicast hash table. + **/ +s32 ixgbe_enable_mc(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.enable_mc, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_disable_mc - Disable multicast address in RAR - * @hw: pointer to hardware structure +/** + * ixgbe_disable_mc - Disable multicast address in RAR + * @hw: pointer to hardware structure * - * Disables multicast address in RAR and the use of the multicast hash table. - */ -s32 -ixgbe_disable_mc(struct ixgbe_hw *hw) + * Disables multicast address in RAR and the use of the multicast hash table. + **/ +s32 ixgbe_disable_mc(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.disable_mc, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_clear_vfta - Clear VLAN filter table - * @hw: pointer to hardware structure +/** + * ixgbe_clear_vfta - Clear VLAN filter table + * @hw: pointer to hardware structure * - * Clears the VLAN filer table, and the VMDq index associated with the filter - */ -s32 -ixgbe_clear_vfta(struct ixgbe_hw *hw) + * Clears the VLAN filer table, and the VMDq index associated with the filter + **/ +s32 ixgbe_clear_vfta(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.clear_vfta, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_set_vfta - Set VLAN filter table - * @hw: pointer to hardware structure - * @vlan: VLAN id to write to VLAN filter - * @vind: VMDq output index that maps queue to VLAN id in VFTA - * @vlan_on: boolean flag to turn on/off VLAN in VFTA +/** + * ixgbe_set_vfta - Set VLAN filter table + * @hw: pointer to hardware structure + * @vlan: VLAN id to write to VLAN filter + * @vind: VMDq output index that maps queue to VLAN id in VFTA + * @vlan_on: boolean flag to turn on/off VLAN in VFTA * - * Turn on/off specified VLAN in the VLAN filter table. - */ -s32 -ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) + * Turn on/off specified VLAN in the VLAN filter table. + **/ +s32 ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) { return ixgbe_call_func(hw, hw->mac.ops.set_vfta, (hw, vlan, vind, - vlan_on), IXGBE_NOT_IMPLEMENTED); + vlan_on), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_fc_enable - Enable flow control - * @hw: pointer to hardware structure - * @packetbuf_num: packet buffer number (0-7) +/** + * ixgbe_fc_enable - Enable flow control + * @hw: pointer to hardware structure + * @packetbuf_num: packet buffer number (0-7) * - * Configures the flow control settings based on SW configuration. - */ -s32 -ixgbe_fc_enable(struct ixgbe_hw *hw, s32 packetbuf_num) + * Configures the flow control settings based on SW configuration. + **/ +s32 ixgbe_fc_enable(struct ixgbe_hw *hw, s32 packetbuf_num) { return ixgbe_call_func(hw, hw->mac.ops.fc_enable, (hw, packetbuf_num), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_read_analog_reg8 - Reads 8 bit analog register - * @hw: pointer to hardware structure - * @reg: analog register to read - * @val: read value +/** + * ixgbe_read_analog_reg8 - Reads 8 bit analog register + * @hw: pointer to hardware structure + * @reg: analog register to read + * @val: read value * - * Performs write operation to analog register specified. - */ -s32 -ixgbe_read_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 *val) + * Performs write operation to analog register specified. + **/ +s32 ixgbe_read_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 *val) { return ixgbe_call_func(hw, hw->mac.ops.read_analog_reg8, (hw, reg, - val), IXGBE_NOT_IMPLEMENTED); + val), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_write_analog_reg8 - Writes 8 bit analog register - * @hw: pointer to hardware structure - * @reg: analog register to write - * @val: value to write +/** + * ixgbe_write_analog_reg8 - Writes 8 bit analog register + * @hw: pointer to hardware structure + * @reg: analog register to write + * @val: value to write * - * Performs write operation to Atlas analog register specified. - */ -s32 -ixgbe_write_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 val) + * Performs write operation to Atlas analog register specified. + **/ +s32 ixgbe_write_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 val) { return ixgbe_call_func(hw, hw->mac.ops.write_analog_reg8, (hw, reg, - val), IXGBE_NOT_IMPLEMENTED); + val), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_init_uta_tables - Initializes Unicast Table Arrays. - * @hw: pointer to hardware structure +/** + * ixgbe_init_uta_tables - Initializes Unicast Table Arrays. + * @hw: pointer to hardware structure * - * Initializes the Unicast Table Arrays to zero on device load. This - * is part of the Rx init addr execution path. - */ -s32 -ixgbe_init_uta_tables(struct ixgbe_hw *hw) + * Initializes the Unicast Table Arrays to zero on device load. This + * is part of the Rx init addr execution path. + **/ +s32 ixgbe_init_uta_tables(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.init_uta_tables, (hw), - IXGBE_NOT_IMPLEMENTED); + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_read_i2c_byte - Reads 8 bit word over I2C at specified device address - * @hw: pointer to hardware structure - * @byte_offset: byte offset to read - * @data: value read +/** + * ixgbe_read_i2c_byte - Reads 8 bit word over I2C at specified device address + * @hw: pointer to hardware structure + * @byte_offset: byte offset to read + * @data: value read * - * Performs byte read operation to SFP module's EEPROM over I2C interface. - */ -s32 -ixgbe_read_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, - u8 *data) + * Performs byte read operation to SFP module's EEPROM over I2C interface. + **/ +s32 ixgbe_read_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, + u8 *data) { return ixgbe_call_func(hw, hw->phy.ops.read_i2c_byte, (hw, byte_offset, - dev_addr, data), IXGBE_NOT_IMPLEMENTED); + dev_addr, data), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_write_i2c_byte - Writes 8 bit word over I2C - * @hw: pointer to hardware structure - * @byte_offset: byte offset to write - * @data: value to write +/** + * ixgbe_write_i2c_byte - Writes 8 bit word over I2C + * @hw: pointer to hardware structure + * @byte_offset: byte offset to write + * @data: value to write * - * Performs byte write operation to SFP module's EEPROM over I2C interface - * at a specified device address. - */ -s32 -ixgbe_write_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, - u8 data) + * Performs byte write operation to SFP module's EEPROM over I2C interface + * at a specified device address. + **/ +s32 ixgbe_write_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, + u8 data) { - return ixgbe_call_func(hw, hw->phy.ops.write_i2c_byte, - (hw, byte_offset, dev_addr, data), IXGBE_NOT_IMPLEMENTED); + return ixgbe_call_func(hw, hw->phy.ops.write_i2c_byte, (hw, byte_offset, + dev_addr, data), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_write_i2c_eeprom - Writes 8 bit EEPROM word over I2C interface - * @hw: pointer to hardware structure - * @byte_offset: EEPROM byte offset to write - * @eeprom_data: value to write +/** + * ixgbe_write_i2c_eeprom - Writes 8 bit EEPROM word over I2C interface + * @hw: pointer to hardware structure + * @byte_offset: EEPROM byte offset to write + * @eeprom_data: value to write * - * Performs byte write operation to SFP module's EEPROM over I2C interface. - */ -s32 -ixgbe_write_i2c_eeprom(struct ixgbe_hw *hw, u8 byte_offset, u8 eeprom_data) + * Performs byte write operation to SFP module's EEPROM over I2C interface. + **/ +s32 ixgbe_write_i2c_eeprom(struct ixgbe_hw *hw, + u8 byte_offset, u8 eeprom_data) { return ixgbe_call_func(hw, hw->phy.ops.write_i2c_eeprom, - (hw, byte_offset, eeprom_data), IXGBE_NOT_IMPLEMENTED); + (hw, byte_offset, eeprom_data), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_read_i2c_eeprom - Reads 8 bit EEPROM word over I2C interface - * @hw: pointer to hardware structure - * @byte_offset: EEPROM byte offset to read - * @eeprom_data: value read +/** + * ixgbe_read_i2c_eeprom - Reads 8 bit EEPROM word over I2C interface + * @hw: pointer to hardware structure + * @byte_offset: EEPROM byte offset to read + * @eeprom_data: value read * - * Performs byte read operation to SFP module's EEPROM over I2C interface. - */ -s32 -ixgbe_read_i2c_eeprom(struct ixgbe_hw *hw, u8 byte_offset, u8 *eeprom_data) + * Performs byte read operation to SFP module's EEPROM over I2C interface. + **/ +s32 ixgbe_read_i2c_eeprom(struct ixgbe_hw *hw, u8 byte_offset, u8 *eeprom_data) { return ixgbe_call_func(hw, hw->phy.ops.read_i2c_eeprom, - (hw, byte_offset, eeprom_data), IXGBE_NOT_IMPLEMENTED); + (hw, byte_offset, eeprom_data), + IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_get_supported_physical_layer - Returns physical layer type - * @hw: pointer to hardware structure +/** + * ixgbe_get_supported_physical_layer - Returns physical layer type + * @hw: pointer to hardware structure * - * Determines physical layer capabilities of the current configuration. - */ -u32 -ixgbe_get_supported_physical_layer(struct ixgbe_hw *hw) + * Determines physical layer capabilities of the current configuration. + **/ +u32 ixgbe_get_supported_physical_layer(struct ixgbe_hw *hw) { return ixgbe_call_func(hw, hw->mac.ops.get_supported_physical_layer, - (hw), IXGBE_NOT_IMPLEMENTED); + (hw), IXGBE_PHYSICAL_LAYER_UNKNOWN); } -/* - * ixgbe_enable_rx_dma - Enables Rx DMA unit, dependant on device specifics - * @hw: pointer to hardware structure - * @regval: bitfield to write to the Rx DMA register +/** + * ixgbe_enable_rx_dma - Enables Rx DMA unit, dependant on device specifics + * @hw: pointer to hardware structure + * @regval: bitfield to write to the Rx DMA register * - * Enables the Rx DMA unit of the device. - */ -s32 -ixgbe_enable_rx_dma(struct ixgbe_hw *hw, u32 regval) + * Enables the Rx DMA unit of the device. + **/ +s32 ixgbe_enable_rx_dma(struct ixgbe_hw *hw, u32 regval) { return ixgbe_call_func(hw, hw->mac.ops.enable_rx_dma, - (hw, regval), IXGBE_NOT_IMPLEMENTED); + (hw, regval), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_acquire_swfw_semaphore - Acquire SWFW semaphore - * @hw: pointer to hardware structure - * @mask: Mask to specify which semaphore to acquire +/** + * ixgbe_acquire_swfw_semaphore - Acquire SWFW semaphore + * @hw: pointer to hardware structure + * @mask: Mask to specify which semaphore to acquire * - * Acquires the SWFW semaphore through SW_FW_SYNC register for the specified - * function (CSR, PHY0, PHY1, EEPROM, Flash) - */ -s32 -ixgbe_acquire_swfw_semaphore(struct ixgbe_hw *hw, u16 mask) + * Acquires the SWFW semaphore through SW_FW_SYNC register for the specified + * function (CSR, PHY0, PHY1, EEPROM, Flash) + **/ +s32 ixgbe_acquire_swfw_semaphore(struct ixgbe_hw *hw, u16 mask) { return ixgbe_call_func(hw, hw->mac.ops.acquire_swfw_sync, - (hw, mask), IXGBE_NOT_IMPLEMENTED); + (hw, mask), IXGBE_NOT_IMPLEMENTED); } -/* - * ixgbe_release_swfw_semaphore - Release SWFW semaphore - * @hw: pointer to hardware structure - * @mask: Mask to specify which semaphore to release +/** + * ixgbe_release_swfw_semaphore - Release SWFW semaphore + * @hw: pointer to hardware structure + * @mask: Mask to specify which semaphore to release * - * Releases the SWFW semaphore through SW_FW_SYNC register for the specified - * function (CSR, PHY0, PHY1, EEPROM, Flash) - */ -void -ixgbe_release_swfw_semaphore(struct ixgbe_hw *hw, u16 mask) + * Releases the SWFW semaphore through SW_FW_SYNC register for the specified + * function (CSR, PHY0, PHY1, EEPROM, Flash) + **/ +void ixgbe_release_swfw_semaphore(struct ixgbe_hw *hw, u16 mask) { if (hw->mac.ops.release_swfw_sync) hw->mac.ops.release_swfw_sync(hw, mask); } + diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_api.h b/usr/src/uts/common/io/ixgbe/ixgbe_api.h index df6cf1b414..b22c73f3f9 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_api.h +++ b/usr/src/uts/common/io/ixgbe/ixgbe_api.h @@ -1,37 +1,38 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ +/****************************************************************************** -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ +******************************************************************************/ -/* IntelVersion: 1.82 scm_061610_003709 */ - -#ifndef _IXGBE_API_H -#define _IXGBE_API_H +#ifndef _IXGBE_API_H_ +#define _IXGBE_API_H_ #include "ixgbe_type.h" @@ -50,28 +51,33 @@ u32 ixgbe_get_num_of_tx_queues(struct ixgbe_hw *hw); u32 ixgbe_get_num_of_rx_queues(struct ixgbe_hw *hw); s32 ixgbe_stop_adapter(struct ixgbe_hw *hw); s32 ixgbe_read_pba_num(struct ixgbe_hw *hw, u32 *pba_num); +s32 ixgbe_read_pba_string(struct ixgbe_hw *hw, u8 *pba_num, u32 pba_num_size); +s32 ixgbe_read_pba_length(struct ixgbe_hw *hw, u32 *pba_num_size); s32 ixgbe_identify_phy(struct ixgbe_hw *hw); s32 ixgbe_reset_phy(struct ixgbe_hw *hw); s32 ixgbe_read_phy_reg(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, - u16 *phy_data); + u16 *phy_data); s32 ixgbe_write_phy_reg(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, - u16 phy_data); + u16 phy_data); s32 ixgbe_setup_phy_link(struct ixgbe_hw *hw); s32 ixgbe_check_phy_link(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *link_up); -s32 ixgbe_setup_phy_link_speed(struct ixgbe_hw *hw, ixgbe_link_speed speed, - bool autoneg, bool autoneg_wait_to_complete); + ixgbe_link_speed *speed, + bool *link_up); +s32 ixgbe_setup_phy_link_speed(struct ixgbe_hw *hw, + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); void ixgbe_disable_tx_laser(struct ixgbe_hw *hw); void ixgbe_enable_tx_laser(struct ixgbe_hw *hw); void ixgbe_flap_tx_laser(struct ixgbe_hw *hw); s32 ixgbe_setup_link(struct ixgbe_hw *hw, ixgbe_link_speed speed, - bool autoneg, bool autoneg_wait_to_complete); + bool autoneg, bool autoneg_wait_to_complete); s32 ixgbe_check_link(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up, bool link_up_wait_to_complete); + bool *link_up, bool link_up_wait_to_complete); s32 ixgbe_get_link_capabilities(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *autoneg); + bool *autoneg); s32 ixgbe_led_on(struct ixgbe_hw *hw, u32 index); s32 ixgbe_led_off(struct ixgbe_hw *hw, u32 index); s32 ixgbe_blink_led_start(struct ixgbe_hw *hw, u32 index); @@ -85,27 +91,28 @@ s32 ixgbe_update_eeprom_checksum(struct ixgbe_hw *hw); s32 ixgbe_insert_mac_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq); s32 ixgbe_set_rar(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, - u32 enable_addr); + u32 enable_addr); s32 ixgbe_clear_rar(struct ixgbe_hw *hw, u32 index); s32 ixgbe_set_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq); s32 ixgbe_clear_vmdq(struct ixgbe_hw *hw, u32 rar, u32 vmdq); s32 ixgbe_init_rx_addrs(struct ixgbe_hw *hw); u32 ixgbe_get_num_rx_addrs(struct ixgbe_hw *hw); s32 ixgbe_update_uc_addr_list(struct ixgbe_hw *hw, u8 *addr_list, - u32 addr_count, ixgbe_mc_addr_itr func); + u32 addr_count, ixgbe_mc_addr_itr func); s32 ixgbe_update_mc_addr_list(struct ixgbe_hw *hw, u8 *mc_addr_list, - u32 mc_addr_count, ixgbe_mc_addr_itr func); + u32 mc_addr_count, ixgbe_mc_addr_itr func); void ixgbe_add_uc_addr(struct ixgbe_hw *hw, u8 *addr_list, u32 vmdq); s32 ixgbe_enable_mc(struct ixgbe_hw *hw); s32 ixgbe_disable_mc(struct ixgbe_hw *hw); s32 ixgbe_clear_vfta(struct ixgbe_hw *hw); -s32 ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on); +s32 ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, + u32 vind, bool vlan_on); s32 ixgbe_fc_enable(struct ixgbe_hw *hw, s32 packetbuf_num); void ixgbe_set_mta(struct ixgbe_hw *hw, u8 *mc_addr); s32 ixgbe_get_phy_firmware_version(struct ixgbe_hw *hw, - u16 *firmware_version); + u16 *firmware_version); s32 ixgbe_read_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 *val); s32 ixgbe_write_analog_reg8(struct ixgbe_hw *hw, u32 reg, u8 val); s32 ixgbe_init_uta_tables(struct ixgbe_hw *hw); @@ -116,40 +123,19 @@ s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw); s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 pballoc); s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc); s32 ixgbe_fdir_add_signature_filter_82599(struct ixgbe_hw *hw, - struct ixgbe_atr_input *input, u8 queue); + union ixgbe_atr_hash_dword input, + union ixgbe_atr_hash_dword common, + u8 queue); s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, - struct ixgbe_atr_input *input, struct ixgbe_atr_input_masks *masks, - u16 soft_id, u8 queue); -u16 ixgbe_atr_compute_hash_82599(struct ixgbe_atr_input *input, u32 key); -s32 ixgbe_atr_set_vlan_id_82599(struct ixgbe_atr_input *input, u16 vlan_id); -s32 ixgbe_atr_set_src_ipv4_82599(struct ixgbe_atr_input *input, u32 src_addr); -s32 ixgbe_atr_set_dst_ipv4_82599(struct ixgbe_atr_input *input, u32 dst_addr); -s32 ixgbe_atr_set_src_ipv6_82599(struct ixgbe_atr_input *input, u32 src_addr_1, - u32 src_addr_2, u32 src_addr_3, u32 src_addr_4); -s32 ixgbe_atr_set_dst_ipv6_82599(struct ixgbe_atr_input *input, u32 dst_addr_1, - u32 dst_addr_2, u32 dst_addr_3, u32 dst_addr_4); -s32 ixgbe_atr_set_src_port_82599(struct ixgbe_atr_input *input, u16 src_port); -s32 ixgbe_atr_set_dst_port_82599(struct ixgbe_atr_input *input, u16 dst_port); -s32 ixgbe_atr_set_flex_byte_82599(struct ixgbe_atr_input *input, u16 flex_byte); -s32 ixgbe_atr_set_vm_pool_82599(struct ixgbe_atr_input *input, u8 vm_pool); -s32 ixgbe_atr_set_l4type_82599(struct ixgbe_atr_input *input, u8 l4type); -s32 ixgbe_atr_get_vlan_id_82599(struct ixgbe_atr_input *input, u16 *vlan_id); -s32 ixgbe_atr_get_src_ipv4_82599(struct ixgbe_atr_input *input, u32 *src_addr); -s32 ixgbe_atr_get_dst_ipv4_82599(struct ixgbe_atr_input *input, u32 *dst_addr); -s32 ixgbe_atr_get_src_ipv6_82599(struct ixgbe_atr_input *input, u32 *src_addr_1, - u32 *src_addr_2, u32 *src_addr_3, u32 *src_addr_4); -s32 ixgbe_atr_get_dst_ipv6_82599(struct ixgbe_atr_input *input, u32 *dst_addr_1, - u32 *dst_addr_2, u32 *dst_addr_3, u32 *dst_addr_4); -s32 ixgbe_atr_get_src_port_82599(struct ixgbe_atr_input *input, u16 *src_port); -s32 ixgbe_atr_get_dst_port_82599(struct ixgbe_atr_input *input, u16 *dst_port); -s32 ixgbe_atr_get_flex_byte_82599(struct ixgbe_atr_input *input, - u16 *flex_byte); -s32 ixgbe_atr_get_vm_pool_82599(struct ixgbe_atr_input *input, u8 *vm_pool); -s32 ixgbe_atr_get_l4type_82599(struct ixgbe_atr_input *input, u8 *l4type); + union ixgbe_atr_input *input, + struct ixgbe_atr_input_masks *masks, + u16 soft_id, + u8 queue); +u32 ixgbe_atr_compute_hash_82599(union ixgbe_atr_input *input, u32 key); s32 ixgbe_read_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, - u8 *data); + u8 *data); s32 ixgbe_write_i2c_byte(struct ixgbe_hw *hw, u8 byte_offset, u8 dev_addr, - u8 data); + u8 data); s32 ixgbe_write_i2c_eeprom(struct ixgbe_hw *hw, u8 byte_offset, u8 eeprom_data); s32 ixgbe_get_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr); s32 ixgbe_set_san_mac_addr(struct ixgbe_hw *hw, u8 *san_mac_addr); @@ -157,7 +143,8 @@ s32 ixgbe_get_device_caps(struct ixgbe_hw *hw, u16 *device_caps); s32 ixgbe_acquire_swfw_semaphore(struct ixgbe_hw *hw, u16 mask); void ixgbe_release_swfw_semaphore(struct ixgbe_hw *hw, u16 mask); s32 ixgbe_get_wwn_prefix(struct ixgbe_hw *hw, u16 *wwnn_prefix, - u16 *wwpn_prefix); + u16 *wwpn_prefix); s32 ixgbe_get_fcoe_boot_status(struct ixgbe_hw *hw, u16 *bs); -#endif /* _IXGBE_API_H */ + +#endif /* _IXGBE_API_H_ */ diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_common.c b/usr/src/uts/common/io/ixgbe/ixgbe_common.c index 1487e27f11..0a3b62b895 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_common.c +++ b/usr/src/uts/common/io/ixgbe/ixgbe_common.c @@ -1,33 +1,36 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.238 scm_061610_003709 */ +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ #include "ixgbe_common.h" #include "ixgbe_phy.h" @@ -39,7 +42,7 @@ static void ixgbe_release_eeprom_semaphore(struct ixgbe_hw *hw); static s32 ixgbe_ready_eeprom(struct ixgbe_hw *hw); static void ixgbe_standby_eeprom(struct ixgbe_hw *hw); static void ixgbe_shift_out_eeprom_bits(struct ixgbe_hw *hw, u16 data, - u16 count); + u16 count); static u16 ixgbe_shift_in_eeprom_bits(struct ixgbe_hw *hw, u16 count); static void ixgbe_raise_eeprom_clk(struct ixgbe_hw *hw, u32 *eec); static void ixgbe_lower_eeprom_clk(struct ixgbe_hw *hw, u32 *eec); @@ -47,23 +50,23 @@ static void ixgbe_release_eeprom(struct ixgbe_hw *hw); static s32 ixgbe_mta_vector(struct ixgbe_hw *hw, u8 *mc_addr); static s32 ixgbe_get_san_mac_addr_offset(struct ixgbe_hw *hw, - u16 *san_mac_offset); + u16 *san_mac_offset); static s32 ixgbe_fc_autoneg_fiber(struct ixgbe_hw *hw); static s32 ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw); static s32 ixgbe_fc_autoneg_copper(struct ixgbe_hw *hw); static s32 ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw); static s32 ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg, - u32 adv_sym, u32 adv_asm, u32 lp_sym, u32 lp_asm); + u32 adv_sym, u32 adv_asm, u32 lp_sym, u32 lp_asm); + s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan); -/* - * ixgbe_init_ops_generic - Inits function ptrs - * @hw: pointer to the hardware structure +/** + * ixgbe_init_ops_generic - Inits function ptrs + * @hw: pointer to the hardware structure * - * Initialize the function pointers. - */ -s32 -ixgbe_init_ops_generic(struct ixgbe_hw *hw) + * Initialize the function pointers. + **/ +s32 ixgbe_init_ops_generic(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; struct ixgbe_mac_info *mac = &hw->mac; @@ -80,7 +83,7 @@ ixgbe_init_ops_generic(struct ixgbe_hw *hw) eeprom->ops.read = &ixgbe_read_eeprom_bit_bang_generic; eeprom->ops.write = &ixgbe_write_eeprom_generic; eeprom->ops.validate_checksum = - &ixgbe_validate_eeprom_checksum_generic; + &ixgbe_validate_eeprom_checksum_generic; eeprom->ops.update_checksum = &ixgbe_update_eeprom_checksum_generic; eeprom->ops.calc_checksum = &ixgbe_calc_eeprom_checksum_generic; @@ -128,20 +131,19 @@ ixgbe_init_ops_generic(struct ixgbe_hw *hw) mac->ops.setup_link = NULL; mac->ops.check_link = NULL; - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_start_hw_generic - Prepare hardware for Tx/Rx - * @hw: pointer to hardware structure +/** + * ixgbe_start_hw_generic - Prepare hardware for Tx/Rx + * @hw: pointer to hardware structure * - * Starts the hardware by filling the bus info structure and media type, clears - * all on chip counters, initializes receive address registers, multicast - * table, VLAN filter table, calls routine to set up link and flow control - * settings, and leaves transmit and receive units disabled and uninitialized - */ -s32 -ixgbe_start_hw_generic(struct ixgbe_hw *hw) + * Starts the hardware by filling the bus info structure and media type, clears + * all on chip counters, initializes receive address registers, multicast + * table, VLAN filter table, calls routine to set up link and flow control + * settings, and leaves transmit and receive units disabled and uninitialized + **/ +s32 ixgbe_start_hw_generic(struct ixgbe_hw *hw) { u32 ctrl_ext; @@ -168,25 +170,63 @@ ixgbe_start_hw_generic(struct ixgbe_hw *hw) (void) ixgbe_setup_fc(hw, 0); /* Clear adapter stopped flag */ - hw->adapter_stopped = false; + hw->adapter_stopped = FALSE; - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_init_hw_generic - Generic hardware initialization - * @hw: pointer to hardware structure +/** + * ixgbe_start_hw_gen2 - Init sequence for common device family + * @hw: pointer to hw structure * - * Initialize the hardware by resetting the hardware, filling the bus info - * structure and media type, clears all on chip counters, initializes receive - * address registers, multicast table, VLAN filter table, calls routine to set - * up link and flow control settings, and leaves transmit and receive units - * disabled and uninitialized - */ -s32 -ixgbe_init_hw_generic(struct ixgbe_hw *hw) + * Performs the init sequence common to the second generation + * of 10 GbE devices. + * Devices in the second generation: + * 82599 + * X540 + **/ +s32 ixgbe_start_hw_gen2(struct ixgbe_hw *hw) { - s32 status = IXGBE_SUCCESS; + u32 i; + u32 regval; + + /* Clear the rate limiters */ + for (i = 0; i < hw->mac.max_tx_queues; i++) { + IXGBE_WRITE_REG(hw, IXGBE_RTTDQSEL, i); + IXGBE_WRITE_REG(hw, IXGBE_RTTBCNRC, 0); + } + IXGBE_WRITE_FLUSH(hw); + + /* Disable relaxed ordering */ + for (i = 0; i < hw->mac.max_tx_queues; i++) { + regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(i)); + regval &= ~IXGBE_DCA_TXCTRL_TX_WB_RO_EN; + IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(i), regval); + } + + for (i = 0; i < hw->mac.max_rx_queues; i++) { + regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); + regval &= ~(IXGBE_DCA_RXCTRL_DESC_WRO_EN | + IXGBE_DCA_RXCTRL_DESC_HSRO_EN); + IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); + } + + return IXGBE_SUCCESS; +} + +/** + * ixgbe_init_hw_generic - Generic hardware initialization + * @hw: pointer to hardware structure + * + * Initialize the hardware by resetting the hardware, filling the bus info + * structure and media type, clears all on chip counters, initializes receive + * address registers, multicast table, VLAN filter table, calls routine to set + * up link and flow control settings, and leaves transmit and receive units + * disabled and uninitialized + **/ +s32 ixgbe_init_hw_generic(struct ixgbe_hw *hw) +{ + s32 status; DEBUGFUNC("ixgbe_init_hw_generic"); @@ -198,18 +238,17 @@ ixgbe_init_hw_generic(struct ixgbe_hw *hw) status = hw->mac.ops.start_hw(hw); } - return (status); + return status; } -/* - * ixgbe_clear_hw_cntrs_generic - Generic clear hardware counters - * @hw: pointer to hardware structure +/** + * ixgbe_clear_hw_cntrs_generic - Generic clear hardware counters + * @hw: pointer to hardware structure * - * Clears all hardware statistics counters by reading them from the hardware - * Statistics counters are clear on read. - */ -s32 -ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw) + * Clears all hardware statistics counters by reading them from the hardware + * Statistics counters are clear on read. + **/ +s32 ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw) { u16 i = 0; @@ -249,7 +288,6 @@ ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw) if (hw->mac.type >= ixgbe_mac_82599EB) for (i = 0; i < 8; i++) (void) IXGBE_READ_REG(hw, IXGBE_PXON2OFFCNT(i)); - (void) IXGBE_READ_REG(hw, IXGBE_PRC64); (void) IXGBE_READ_REG(hw, IXGBE_PRC127); (void) IXGBE_READ_REG(hw, IXGBE_PRC255); @@ -300,18 +338,188 @@ ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw) } } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_read_pba_num_generic - Reads part number from EEPROM - * @hw: pointer to hardware structure - * @pba_num: stores the part number from the EEPROM +/** + * ixgbe_read_pba_string_generic - Reads part number string from EEPROM + * @hw: pointer to hardware structure + * @pba_num: stores the part number string from the EEPROM + * @pba_num_size: part number string buffer length * - * Reads the part number from the EEPROM. - */ -s32 -ixgbe_read_pba_num_generic(struct ixgbe_hw *hw, u32 *pba_num) + * Reads the part number string from the EEPROM. + **/ +s32 ixgbe_read_pba_string_generic(struct ixgbe_hw *hw, u8 *pba_num, + u32 pba_num_size) +{ + s32 ret_val; + u16 data; + u16 pba_ptr; + u16 offset; + u16 length; + + DEBUGFUNC("ixgbe_read_pba_string_generic"); + + if (pba_num == NULL) { + DEBUGOUT("PBA string buffer was null\n"); + return IXGBE_ERR_INVALID_ARGUMENT; + } + + ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM0_PTR, &data); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM1_PTR, &pba_ptr); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + /* + * if data is not ptr guard the PBA must be in legacy format which + * means pba_ptr is actually our second data word for the PBA number + * and we can decode it into an ascii string + */ + if (data != IXGBE_PBANUM_PTR_GUARD) { + DEBUGOUT("NVM PBA number is not stored as string\n"); + + /* we will need 11 characters to store the PBA */ + if (pba_num_size < 11) { + DEBUGOUT("PBA string buffer too small\n"); + return IXGBE_ERR_NO_SPACE; + } + + /* extract hex string from data and pba_ptr */ + pba_num[0] = (data >> 12) & 0xF; + pba_num[1] = (data >> 8) & 0xF; + pba_num[2] = (data >> 4) & 0xF; + pba_num[3] = data & 0xF; + pba_num[4] = (pba_ptr >> 12) & 0xF; + pba_num[5] = (pba_ptr >> 8) & 0xF; + pba_num[6] = '-'; + pba_num[7] = 0; + pba_num[8] = (pba_ptr >> 4) & 0xF; + pba_num[9] = pba_ptr & 0xF; + + /* put a null character on the end of our string */ + pba_num[10] = '\0'; + + /* switch all the data but the '-' to hex char */ + for (offset = 0; offset < 10; offset++) { + if (pba_num[offset] < 0xA) + pba_num[offset] += '0'; + else if (pba_num[offset] < 0x10) + pba_num[offset] += 'A' - 0xA; + } + + return IXGBE_SUCCESS; + } + + ret_val = hw->eeprom.ops.read(hw, pba_ptr, &length); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + if (length == 0xFFFF || length == 0) { + DEBUGOUT("NVM PBA number section invalid length\n"); + return IXGBE_ERR_PBA_SECTION; + } + + /* check if pba_num buffer is big enough */ + if (pba_num_size < (((u32)length * 2) - 1)) { + DEBUGOUT("PBA string buffer too small\n"); + return IXGBE_ERR_NO_SPACE; + } + + /* trim pba length from start of string */ + pba_ptr++; + length--; + + for (offset = 0; offset < length; offset++) { + ret_val = hw->eeprom.ops.read(hw, pba_ptr + offset, &data); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + pba_num[offset * 2] = (u8)(data >> 8); + pba_num[(offset * 2) + 1] = (u8)(data & 0xFF); + } + pba_num[offset * 2] = '\0'; + + return IXGBE_SUCCESS; +} + +/** + * ixgbe_read_pba_length_generic - Reads part number length from EEPROM + * @hw: pointer to hardware structure + * @pba_num_size: part number string buffer length + * + * Reads the part number length from the EEPROM. + * Returns expected buffer size in pba_num_size + **/ +s32 ixgbe_read_pba_length_generic(struct ixgbe_hw *hw, u32 *pba_num_size) +{ + s32 ret_val; + u16 data; + u16 pba_ptr; + u16 length; + + DEBUGFUNC("ixgbe_read_pba_length_generic"); + + if (pba_num_size == NULL) { + DEBUGOUT("PBA buffer size was null\n"); + return IXGBE_ERR_INVALID_ARGUMENT; + } + + ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM0_PTR, &data); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM1_PTR, &pba_ptr); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + /* if data is not ptr guard the PBA must be in legacy format */ + if (data != IXGBE_PBANUM_PTR_GUARD) { + *pba_num_size = 11; + return IXGBE_SUCCESS; + } + + ret_val = hw->eeprom.ops.read(hw, pba_ptr, &length); + if (ret_val) { + DEBUGOUT("NVM Read Error\n"); + return ret_val; + } + + if (length == 0xFFFF || length == 0) { + DEBUGOUT("NVM PBA number section invalid length\n"); + return IXGBE_ERR_PBA_SECTION; + } + + /* + * Convert from length in u16 values to u8 chars, add 1 for NULL, + * and subtract 2 because length field is included in length. + */ + *pba_num_size = ((u32)length * 2) - 1; + + return IXGBE_SUCCESS; +} + +/** + * ixgbe_read_pba_num_generic - Reads part number from EEPROM + * @hw: pointer to hardware structure + * @pba_num: stores the part number from the EEPROM + * + * Reads the part number from the EEPROM. + **/ +s32 ixgbe_read_pba_num_generic(struct ixgbe_hw *hw, u32 *pba_num) { s32 ret_val; u16 data; @@ -321,31 +529,33 @@ ixgbe_read_pba_num_generic(struct ixgbe_hw *hw, u32 *pba_num) ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM0_PTR, &data); if (ret_val) { DEBUGOUT("NVM Read Error\n"); - return (ret_val); + return ret_val; + } else if (data == IXGBE_PBANUM_PTR_GUARD) { + DEBUGOUT("NVM Not supported\n"); + return IXGBE_NOT_IMPLEMENTED; } *pba_num = (u32)(data << 16); ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM1_PTR, &data); if (ret_val) { DEBUGOUT("NVM Read Error\n"); - return (ret_val); + return ret_val; } *pba_num |= data; - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_mac_addr_generic - Generic get MAC address - * @hw: pointer to hardware structure - * @mac_addr: Adapter MAC address +/** + * ixgbe_get_mac_addr_generic - Generic get MAC address + * @hw: pointer to hardware structure + * @mac_addr: Adapter MAC address * - * Reads the adapter's MAC address from first Receive Address Register (RAR0) - * A reset of the adapter must be performed prior to calling this function - * in order for the MAC address to have been loaded from the EEPROM into RAR0 - */ -s32 -ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr) + * Reads the adapter's MAC address from first Receive Address Register (RAR0) + * A reset of the adapter must be performed prior to calling this function + * in order for the MAC address to have been loaded from the EEPROM into RAR0 + **/ +s32 ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr) { u32 rar_high; u32 rar_low; @@ -362,17 +572,16 @@ ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr) for (i = 0; i < 2; i++) mac_addr[i+4] = (u8)(rar_high >> (i*8)); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_bus_info_generic - Generic set PCI bus info - * @hw: pointer to hardware structure +/** + * ixgbe_get_bus_info_generic - Generic set PCI bus info + * @hw: pointer to hardware structure * - * Sets the PCI bus info (speed, width, type) within the ixgbe_hw structure - */ -s32 -ixgbe_get_bus_info_generic(struct ixgbe_hw *hw) + * Sets the PCI bus info (speed, width, type) within the ixgbe_hw structure + **/ +s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw) { struct ixgbe_mac_info *mac = &hw->mac; u16 link_status; @@ -416,19 +625,17 @@ ixgbe_get_bus_info_generic(struct ixgbe_hw *hw) mac->ops.set_lan_id(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } - -/* - * ixgbe_set_lan_id_multi_port_pcie - Set LAN id for PCIe multiple port devices - * @hw: pointer to the HW structure +/** + * ixgbe_set_lan_id_multi_port_pcie - Set LAN id for PCIe multiple port devices + * @hw: pointer to the HW structure * - * Determines the LAN function id by reading memory-mapped registers - * and swaps the port value if requested. - */ -void -ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw) + * Determines the LAN function id by reading memory-mapped registers + * and swaps the port value if requested. + **/ +void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw) { struct ixgbe_bus_info *bus = &hw->bus; u32 reg; @@ -445,17 +652,16 @@ ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw) bus->func ^= 0x1; } -/* - * ixgbe_stop_adapter_generic - Generic stop Tx/Rx units - * @hw: pointer to hardware structure +/** + * ixgbe_stop_adapter_generic - Generic stop Tx/Rx units + * @hw: pointer to hardware structure * - * Sets the adapter_stopped flag within ixgbe_hw struct. Clears interrupts, - * disables transmit and receive units. The adapter_stopped flag is used by - * the shared code and drivers to determine if the adapter is in a stopped - * state and should not touch the hardware. - */ -s32 -ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) + * Sets the adapter_stopped flag within ixgbe_hw struct. Clears interrupts, + * disables transmit and receive units. The adapter_stopped flag is used by + * the shared code and drivers to determine if the adapter is in a stopped + * state and should not touch the hardware. + **/ +s32 ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) { u32 number_of_queues; u32 reg_val; @@ -467,7 +673,7 @@ ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) * Set the adapter_stopped flag so other driver functions stop touching * the hardware */ - hw->adapter_stopped = true; + hw->adapter_stopped = TRUE; /* Disable the receive unit */ reg_val = IXGBE_READ_REG(hw, IXGBE_RXCTRL); @@ -498,16 +704,15 @@ ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) */ (void) ixgbe_disable_pcie_master(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_led_on_generic - Turns on the software controllable LEDs. - * @hw: pointer to hardware structure - * @index: led number to turn on - */ -s32 -ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index) +/** + * ixgbe_led_on_generic - Turns on the software controllable LEDs. + * @hw: pointer to hardware structure + * @index: led number to turn on + **/ +s32 ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index) { u32 led_reg = IXGBE_READ_REG(hw, IXGBE_LEDCTL); @@ -519,16 +724,15 @@ ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index) IXGBE_WRITE_REG(hw, IXGBE_LEDCTL, led_reg); IXGBE_WRITE_FLUSH(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_led_off_generic - Turns off the software controllable LEDs. - * @hw: pointer to hardware structure - * @index: led number to turn off - */ -s32 -ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index) +/** + * ixgbe_led_off_generic - Turns off the software controllable LEDs. + * @hw: pointer to hardware structure + * @index: led number to turn off + **/ +s32 ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index) { u32 led_reg = IXGBE_READ_REG(hw, IXGBE_LEDCTL); @@ -540,18 +744,17 @@ ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index) IXGBE_WRITE_REG(hw, IXGBE_LEDCTL, led_reg); IXGBE_WRITE_FLUSH(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_init_eeprom_params_generic - Initialize EEPROM params - * @hw: pointer to hardware structure +/** + * ixgbe_init_eeprom_params_generic - Initialize EEPROM params + * @hw: pointer to hardware structure * - * Initializes the EEPROM parameters ixgbe_eeprom_info within the - * ixgbe_hw struct in order to set up EEPROM access. - */ -s32 -ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) + * Initializes the EEPROM parameters ixgbe_eeprom_info within the + * ixgbe_hw struct in order to set up EEPROM access. + **/ +s32 ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; u32 eec; @@ -561,10 +764,8 @@ ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) if (eeprom->type == ixgbe_eeprom_uninitialized) { eeprom->type = ixgbe_eeprom_none; - /* - * Set default semaphore delay to 10ms which is a well - * tested value - */ + /* Set default semaphore delay to 10ms which is a well + * tested value */ eeprom->semaphore_delay = 10; /* @@ -580,9 +781,9 @@ ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) * change if a future EEPROM is not SPI. */ eeprom_size = (u16)((eec & IXGBE_EEC_SIZE) >> - IXGBE_EEC_SIZE_SHIFT); + IXGBE_EEC_SIZE_SHIFT); eeprom->word_size = 1 << (eeprom_size + - IXGBE_EEPROM_WORD_SIZE_BASE_SHIFT); + IXGBE_EEPROM_WORD_SIZE_BASE_SHIFT); } if (eec & IXGBE_EEC_ADDR_SIZE) @@ -590,24 +791,23 @@ ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) else eeprom->address_bits = 8; DEBUGOUT3("Eeprom params: type = %d, size = %d, address bits: " - "%d\n", eeprom->type, eeprom->word_size, - eeprom->address_bits); + "%d\n", eeprom->type, eeprom->word_size, + eeprom->address_bits); } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_write_eeprom_generic - Writes 16 bit value to EEPROM - * @hw: pointer to hardware structure - * @offset: offset within the EEPROM to be written to - * @data: 16 bit word to be written to the EEPROM +/** + * ixgbe_write_eeprom_generic - Writes 16 bit value to EEPROM + * @hw: pointer to hardware structure + * @offset: offset within the EEPROM to be written to + * @data: 16 bit word to be written to the EEPROM * - * If ixgbe_eeprom_update_checksum is not called after this function, the - * EEPROM will most likely contain an invalid checksum. - */ -s32 -ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data) + * If ixgbe_eeprom_update_checksum is not called after this function, the + * EEPROM will most likely contain an invalid checksum. + **/ +s32 ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data) { s32 status; u8 write_opcode = IXGBE_EEPROM_WRITE_OPCODE_SPI; @@ -636,7 +836,7 @@ ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data) /* Send the WRITE ENABLE command (8 bit opcode ) */ ixgbe_shift_out_eeprom_bits(hw, IXGBE_EEPROM_WREN_OPCODE_SPI, - IXGBE_EEPROM_OPCODE_BITS); + IXGBE_EEPROM_OPCODE_BITS); ixgbe_standby_eeprom(hw); @@ -649,9 +849,9 @@ ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data) /* Send the Write command (8-bit opcode + addr) */ ixgbe_shift_out_eeprom_bits(hw, write_opcode, - IXGBE_EEPROM_OPCODE_BITS); + IXGBE_EEPROM_OPCODE_BITS); ixgbe_shift_out_eeprom_bits(hw, (u16)(offset*2), - hw->eeprom.address_bits); + hw->eeprom.address_bits); /* Send the data */ data = (data >> 8) | (data << 8); @@ -663,20 +863,19 @@ ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data) } out: - return (status); + return status; } -/* - * ixgbe_read_eeprom_bit_bang_generic - Read EEPROM word using bit-bang - * @hw: pointer to hardware structure - * @offset: offset within the EEPROM to be read - * @data: read 16 bit value from EEPROM +/** + * ixgbe_read_eeprom_bit_bang_generic - Read EEPROM word using bit-bang + * @hw: pointer to hardware structure + * @offset: offset within the EEPROM to be read + * @data: read 16 bit value from EEPROM * - * Reads 16 bit value from EEPROM through bit-bang method - */ -s32 -ixgbe_read_eeprom_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, - u16 *data) + * Reads 16 bit value from EEPROM through bit-bang method + **/ +s32 ixgbe_read_eeprom_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, + u16 *data) { s32 status; u16 word_in; @@ -713,9 +912,9 @@ ixgbe_read_eeprom_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, /* Send the READ command (opcode + addr) */ ixgbe_shift_out_eeprom_bits(hw, read_opcode, - IXGBE_EEPROM_OPCODE_BITS); + IXGBE_EEPROM_OPCODE_BITS); ixgbe_shift_out_eeprom_bits(hw, (u16)(offset*2), - hw->eeprom.address_bits); + hw->eeprom.address_bits); /* Read the data. */ word_in = ixgbe_shift_in_eeprom_bits(hw, 16); @@ -726,19 +925,18 @@ ixgbe_read_eeprom_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, } out: - return (status); + return status; } -/* - * ixgbe_read_eerd_generic - Read EEPROM word using EERD - * @hw: pointer to hardware structure - * @offset: offset of word in the EEPROM to read - * @data: word read from the EEPROM +/** + * ixgbe_read_eerd_generic - Read EEPROM word using EERD + * @hw: pointer to hardware structure + * @offset: offset of word in the EEPROM to read + * @data: word read from the EEPROM * - * Reads a 16 bit word from the EEPROM using the EERD register. - */ -s32 -ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data) + * Reads a 16 bit word from the EEPROM using the EERD register. + **/ +s32 ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data) { u32 eerd; s32 status; @@ -753,31 +951,73 @@ ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data) } eerd = (offset << IXGBE_EEPROM_RW_ADDR_SHIFT) + - IXGBE_EEPROM_RW_REG_START; + IXGBE_EEPROM_RW_REG_START; IXGBE_WRITE_REG(hw, IXGBE_EERD, eerd); status = ixgbe_poll_eerd_eewr_done(hw, IXGBE_NVM_POLL_READ); if (status == IXGBE_SUCCESS) *data = (IXGBE_READ_REG(hw, IXGBE_EERD) >> - IXGBE_EEPROM_RW_REG_DATA); + IXGBE_EEPROM_RW_REG_DATA); else DEBUGOUT("Eeprom read timed out\n"); out: - return (status); + return status; +} + +/** + * ixgbe_write_eewr_generic - Write EEPROM word using EEWR + * @hw: pointer to hardware structure + * @offset: offset of word in the EEPROM to write + * @data: word write to the EEPROM + * + * Write a 16 bit word to the EEPROM using the EEWR register. + **/ +s32 ixgbe_write_eewr_generic(struct ixgbe_hw *hw, u16 offset, u16 data) +{ + u32 eewr; + s32 status; + + DEBUGFUNC("ixgbe_write_eewr_generic"); + + hw->eeprom.ops.init_params(hw); + + if (offset >= hw->eeprom.word_size) { + status = IXGBE_ERR_EEPROM; + goto out; + } + + eewr = (offset << IXGBE_EEPROM_RW_ADDR_SHIFT) | + (data << IXGBE_EEPROM_RW_REG_DATA) | IXGBE_EEPROM_RW_REG_START; + + status = ixgbe_poll_eerd_eewr_done(hw, IXGBE_NVM_POLL_WRITE); + if (status != IXGBE_SUCCESS) { + DEBUGOUT("Eeprom write EEWR timed out\n"); + goto out; + } + + IXGBE_WRITE_REG(hw, IXGBE_EEWR, eewr); + + status = ixgbe_poll_eerd_eewr_done(hw, IXGBE_NVM_POLL_WRITE); + if (status != IXGBE_SUCCESS) { + DEBUGOUT("Eeprom write EEWR timed out\n"); + goto out; + } + +out: + return status; } -/* - * ixgbe_poll_eerd_eewr_done - Poll EERD read or EEWR write status - * @hw: pointer to hardware structure - * @ee_reg: EEPROM flag for polling +/** + * ixgbe_poll_eerd_eewr_done - Poll EERD read or EEWR write status + * @hw: pointer to hardware structure + * @ee_reg: EEPROM flag for polling * - * Polls the status bit (bit 1) of the EERD or EEWR to determine when the - * read or write is done respectively. - */ -s32 -ixgbe_poll_eerd_eewr_done(struct ixgbe_hw *hw, u32 ee_reg) + * Polls the status bit (bit 1) of the EERD or EEWR to determine when the + * read or write is done respectively. + **/ +s32 ixgbe_poll_eerd_eewr_done(struct ixgbe_hw *hw, u32 ee_reg) { u32 i; u32 reg; @@ -797,18 +1037,17 @@ ixgbe_poll_eerd_eewr_done(struct ixgbe_hw *hw, u32 ee_reg) } usec_delay(5); } - return (status); + return status; } -/* - * ixgbe_acquire_eeprom - Acquire EEPROM using bit-bang - * @hw: pointer to hardware structure +/** + * ixgbe_acquire_eeprom - Acquire EEPROM using bit-bang + * @hw: pointer to hardware structure * - * Prepares EEPROM for access using bit-bang method. This function should - * be called before issuing a command to the EEPROM. - */ -static s32 -ixgbe_acquire_eeprom(struct ixgbe_hw *hw) + * Prepares EEPROM for access using bit-bang method. This function should + * be called before issuing a command to the EEPROM. + **/ +static s32 ixgbe_acquire_eeprom(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 eec; @@ -842,27 +1081,26 @@ ixgbe_acquire_eeprom(struct ixgbe_hw *hw) ixgbe_release_swfw_sync(hw, IXGBE_GSSR_EEP_SM); status = IXGBE_ERR_EEPROM; } - } - /* Setup EEPROM for Read/Write */ - if (status == IXGBE_SUCCESS) { - /* Clear CS and SK */ - eec &= ~(IXGBE_EEC_CS | IXGBE_EEC_SK); - IXGBE_WRITE_REG(hw, IXGBE_EEC, eec); - IXGBE_WRITE_FLUSH(hw); - usec_delay(1); + /* Setup EEPROM for Read/Write */ + if (status == IXGBE_SUCCESS) { + /* Clear CS and SK */ + eec &= ~(IXGBE_EEC_CS | IXGBE_EEC_SK); + IXGBE_WRITE_REG(hw, IXGBE_EEC, eec); + IXGBE_WRITE_FLUSH(hw); + usec_delay(1); + } } - return (status); + return status; } -/* - * ixgbe_get_eeprom_semaphore - Get hardware semaphore - * @hw: pointer to hardware structure +/** + * ixgbe_get_eeprom_semaphore - Get hardware semaphore + * @hw: pointer to hardware structure * - * Sets the hardware semaphores so EEPROM access can occur for bit-bang method - */ -static s32 -ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw) + * Sets the hardware semaphores so EEPROM access can occur for bit-bang method + **/ +static s32 ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_EEPROM; u32 timeout = 2000; @@ -871,6 +1109,7 @@ ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_get_eeprom_semaphore"); + /* Get SMBI software semaphore between device drivers first */ for (i = 0; i < timeout; i++) { /* @@ -911,26 +1150,25 @@ ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw) */ if (i >= timeout) { DEBUGOUT("SWESMBI Software EEPROM semaphore " - "not granted.\n"); + "not granted.\n"); ixgbe_release_eeprom_semaphore(hw); status = IXGBE_ERR_EEPROM; } } else { DEBUGOUT("Software semaphore SMBI between device drivers " - "not granted.\n"); + "not granted.\n"); } - return (status); + return status; } -/* - * ixgbe_release_eeprom_semaphore - Release hardware semaphore - * @hw: pointer to hardware structure +/** + * ixgbe_release_eeprom_semaphore - Release hardware semaphore + * @hw: pointer to hardware structure * - * This function clears hardware semaphore bits. - */ -static void -ixgbe_release_eeprom_semaphore(struct ixgbe_hw *hw) + * This function clears hardware semaphore bits. + **/ +static void ixgbe_release_eeprom_semaphore(struct ixgbe_hw *hw) { u32 swsm; @@ -944,12 +1182,11 @@ ixgbe_release_eeprom_semaphore(struct ixgbe_hw *hw) IXGBE_WRITE_FLUSH(hw); } -/* - * ixgbe_ready_eeprom - Polls for EEPROM ready - * @hw: pointer to hardware structure - */ -static s32 -ixgbe_ready_eeprom(struct ixgbe_hw *hw) +/** + * ixgbe_ready_eeprom - Polls for EEPROM ready + * @hw: pointer to hardware structure + **/ +static s32 ixgbe_ready_eeprom(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u16 i; @@ -965,7 +1202,7 @@ ixgbe_ready_eeprom(struct ixgbe_hw *hw) */ for (i = 0; i < IXGBE_EEPROM_MAX_RETRY_SPI; i += 5) { ixgbe_shift_out_eeprom_bits(hw, IXGBE_EEPROM_RDSR_OPCODE_SPI, - IXGBE_EEPROM_OPCODE_BITS); + IXGBE_EEPROM_OPCODE_BITS); spi_stat_reg = (u8)ixgbe_shift_in_eeprom_bits(hw, 8); if (!(spi_stat_reg & IXGBE_EEPROM_STATUS_RDY_SPI)) break; @@ -983,15 +1220,14 @@ ixgbe_ready_eeprom(struct ixgbe_hw *hw) status = IXGBE_ERR_EEPROM; } - return (status); + return status; } -/* - * ixgbe_standby_eeprom - Returns EEPROM to a "standby" state - * @hw: pointer to hardware structure - */ -static void -ixgbe_standby_eeprom(struct ixgbe_hw *hw) +/** + * ixgbe_standby_eeprom - Returns EEPROM to a "standby" state + * @hw: pointer to hardware structure + **/ +static void ixgbe_standby_eeprom(struct ixgbe_hw *hw) { u32 eec; @@ -1010,15 +1246,14 @@ ixgbe_standby_eeprom(struct ixgbe_hw *hw) usec_delay(1); } -/* - * ixgbe_shift_out_eeprom_bits - Shift data bits out to the EEPROM. - * @hw: pointer to hardware structure - * @data: data to send to the EEPROM - * @count: number of bits to shift out - */ -static void -ixgbe_shift_out_eeprom_bits(struct ixgbe_hw *hw, u16 data, - u16 count) +/** + * ixgbe_shift_out_eeprom_bits - Shift data bits out to the EEPROM. + * @hw: pointer to hardware structure + * @data: data to send to the EEPROM + * @count: number of bits to shift out + **/ +static void ixgbe_shift_out_eeprom_bits(struct ixgbe_hw *hw, u16 data, + u16 count) { u32 eec; u32 mask; @@ -1068,12 +1303,11 @@ ixgbe_shift_out_eeprom_bits(struct ixgbe_hw *hw, u16 data, IXGBE_WRITE_FLUSH(hw); } -/* - * ixgbe_shift_in_eeprom_bits - Shift data bits in from the EEPROM - * @hw: pointer to hardware structure - */ -static u16 -ixgbe_shift_in_eeprom_bits(struct ixgbe_hw *hw, u16 count) +/** + * ixgbe_shift_in_eeprom_bits - Shift data bits in from the EEPROM + * @hw: pointer to hardware structure + **/ +static u16 ixgbe_shift_in_eeprom_bits(struct ixgbe_hw *hw, u16 count) { u32 eec; u32 i; @@ -1105,16 +1339,15 @@ ixgbe_shift_in_eeprom_bits(struct ixgbe_hw *hw, u16 count) ixgbe_lower_eeprom_clk(hw, &eec); } - return (data); + return data; } -/* - * ixgbe_raise_eeprom_clk - Raises the EEPROM's clock input. - * @hw: pointer to hardware structure - * @eec: EEC register's current value - */ -static void -ixgbe_raise_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) +/** + * ixgbe_raise_eeprom_clk - Raises the EEPROM's clock input. + * @hw: pointer to hardware structure + * @eec: EEC register's current value + **/ +static void ixgbe_raise_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) { DEBUGFUNC("ixgbe_raise_eeprom_clk"); @@ -1128,13 +1361,12 @@ ixgbe_raise_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) usec_delay(1); } -/* - * ixgbe_lower_eeprom_clk - Lowers the EEPROM's clock input. - * @hw: pointer to hardware structure - * @eecd: EECD's current value - */ -static void -ixgbe_lower_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) +/** + * ixgbe_lower_eeprom_clk - Lowers the EEPROM's clock input. + * @hw: pointer to hardware structure + * @eecd: EECD's current value + **/ +static void ixgbe_lower_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) { DEBUGFUNC("ixgbe_lower_eeprom_clk"); @@ -1148,12 +1380,11 @@ ixgbe_lower_eeprom_clk(struct ixgbe_hw *hw, u32 *eec) usec_delay(1); } -/* - * ixgbe_release_eeprom - Release EEPROM, release semaphores - * @hw: pointer to hardware structure - */ -static void -ixgbe_release_eeprom(struct ixgbe_hw *hw) +/** + * ixgbe_release_eeprom - Release EEPROM, release semaphores + * @hw: pointer to hardware structure + **/ +static void ixgbe_release_eeprom(struct ixgbe_hw *hw) { u32 eec; @@ -1179,12 +1410,11 @@ ixgbe_release_eeprom(struct ixgbe_hw *hw) msec_delay(hw->eeprom.semaphore_delay); } -/* - * ixgbe_calc_eeprom_checksum_generic - Calculates and returns the checksum - * @hw: pointer to hardware structure - */ -u16 -ixgbe_calc_eeprom_checksum_generic(struct ixgbe_hw *hw) +/** + * ixgbe_calc_eeprom_checksum_generic - Calculates and returns the checksum + * @hw: pointer to hardware structure + **/ +u16 ixgbe_calc_eeprom_checksum_generic(struct ixgbe_hw *hw) { u16 i; u16 j; @@ -1223,20 +1453,19 @@ ixgbe_calc_eeprom_checksum_generic(struct ixgbe_hw *hw) checksum = (u16)IXGBE_EEPROM_SUM - checksum; - return (checksum); + return checksum; } -/* - * ixgbe_validate_eeprom_checksum_generic - Validate EEPROM checksum - * @hw: pointer to hardware structure - * @checksum_val: calculated checksum +/** + * ixgbe_validate_eeprom_checksum_generic - Validate EEPROM checksum + * @hw: pointer to hardware structure + * @checksum_val: calculated checksum * - * Performs checksum calculation and validates the EEPROM checksum. If the - * caller does not need checksum_val, the value can be NULL. - */ -s32 -ixgbe_validate_eeprom_checksum_generic(struct ixgbe_hw *hw, - u16 *checksum_val) + * Performs checksum calculation and validates the EEPROM checksum. If the + * caller does not need checksum_val, the value can be NULL. + **/ +s32 ixgbe_validate_eeprom_checksum_generic(struct ixgbe_hw *hw, + u16 *checksum_val) { s32 status; u16 checksum; @@ -1270,15 +1499,14 @@ ixgbe_validate_eeprom_checksum_generic(struct ixgbe_hw *hw, DEBUGOUT("EEPROM read failed\n"); } - return (status); + return status; } -/* - * ixgbe_update_eeprom_checksum_generic - Updates the EEPROM checksum - * @hw: pointer to hardware structure - */ -s32 -ixgbe_update_eeprom_checksum_generic(struct ixgbe_hw *hw) +/** + * ixgbe_update_eeprom_checksum_generic - Updates the EEPROM checksum + * @hw: pointer to hardware structure + **/ +s32 ixgbe_update_eeprom_checksum_generic(struct ixgbe_hw *hw) { s32 status; u16 checksum; @@ -1295,22 +1523,21 @@ ixgbe_update_eeprom_checksum_generic(struct ixgbe_hw *hw) if (status == IXGBE_SUCCESS) { checksum = hw->eeprom.ops.calc_checksum(hw); status = hw->eeprom.ops.write(hw, IXGBE_EEPROM_CHECKSUM, - checksum); + checksum); } else { DEBUGOUT("EEPROM read failed\n"); } - return (status); + return status; } -/* - * ixgbe_validate_mac_addr - Validate MAC address - * @mac_addr: pointer to MAC address. +/** + * ixgbe_validate_mac_addr - Validate MAC address + * @mac_addr: pointer to MAC address. * - * Tests a MAC address to ensure it is a valid Individual Address - */ -s32 -ixgbe_validate_mac_addr(u8 *mac_addr) + * Tests a MAC address to ensure it is a valid Individual Address + **/ +s32 ixgbe_validate_mac_addr(u8 *mac_addr) { s32 status = IXGBE_SUCCESS; @@ -1326,75 +1553,74 @@ ixgbe_validate_mac_addr(u8 *mac_addr) status = IXGBE_ERR_INVALID_MAC_ADDR; /* Reject the zero address */ } else if (mac_addr[0] == 0 && mac_addr[1] == 0 && mac_addr[2] == 0 && - mac_addr[3] == 0 && mac_addr[4] == 0 && mac_addr[5] == 0) { + mac_addr[3] == 0 && mac_addr[4] == 0 && mac_addr[5] == 0) { DEBUGOUT("MAC address is all zeros\n"); status = IXGBE_ERR_INVALID_MAC_ADDR; } - return (status); + return status; } -/* - * ixgbe_set_rar_generic - Set Rx address register - * @hw: pointer to hardware structure - * @index: Receive address register to write - * @addr: Address to put into receive address register - * @vmdq: VMDq "set" or "pool" index - * @enable_addr: set flag that address is active +/** + * ixgbe_set_rar_generic - Set Rx address register + * @hw: pointer to hardware structure + * @index: Receive address register to write + * @addr: Address to put into receive address register + * @vmdq: VMDq "set" or "pool" index + * @enable_addr: set flag that address is active * - * Puts an ethernet address into a receive address register. - */ -s32 -ixgbe_set_rar_generic(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, - u32 enable_addr) + * Puts an ethernet address into a receive address register. + **/ +s32 ixgbe_set_rar_generic(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, + u32 enable_addr) { u32 rar_low, rar_high; u32 rar_entries = hw->mac.num_rar_entries; DEBUGFUNC("ixgbe_set_rar_generic"); + /* Make sure we are using a valid rar index range */ + if (index >= rar_entries) { + DEBUGOUT1("RAR index %d is out of range.\n", index); + return IXGBE_ERR_INVALID_ARGUMENT; + } + /* setup VMDq pool selection before this RAR gets enabled */ hw->mac.ops.set_vmdq(hw, index, vmdq); - /* Make sure we are using a valid rar index range */ - if (index < rar_entries) { - /* - * HW expects these in little endian so we reverse the byte - * order from network order (big endian) to little endian - */ - rar_low = ((u32)addr[0] | - ((u32)addr[1] << 8) | - ((u32)addr[2] << 16) | - ((u32)addr[3] << 24)); - /* - * Some parts put the VMDq setting in the extra RAH bits, - * so save everything except the lower 16 bits that hold part - * of the address and the address valid bit. - */ - rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(index)); - rar_high &= ~(0x0000FFFF | IXGBE_RAH_AV); - rar_high |= ((u32)addr[4] | ((u32)addr[5] << 8)); + /* + * HW expects these in little endian so we reverse the byte + * order from network order (big endian) to little endian + */ + rar_low = ((u32)addr[0] | + ((u32)addr[1] << 8) | + ((u32)addr[2] << 16) | + ((u32)addr[3] << 24)); + /* + * Some parts put the VMDq setting in the extra RAH bits, + * so save everything except the lower 16 bits that hold part + * of the address and the address valid bit. + */ + rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(index)); + rar_high &= ~(0x0000FFFF | IXGBE_RAH_AV); + rar_high |= ((u32)addr[4] | ((u32)addr[5] << 8)); - if (enable_addr != 0) - rar_high |= IXGBE_RAH_AV; + if (enable_addr != 0) + rar_high |= IXGBE_RAH_AV; - IXGBE_WRITE_REG(hw, IXGBE_RAL(index), rar_low); - IXGBE_WRITE_REG(hw, IXGBE_RAH(index), rar_high); - } else { - DEBUGOUT1("RAR index %d is out of range.\n", index); - } + IXGBE_WRITE_REG(hw, IXGBE_RAL(index), rar_low); + IXGBE_WRITE_REG(hw, IXGBE_RAH(index), rar_high); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_clear_rar_generic - Remove Rx address register - * @hw: pointer to hardware structure - * @index: Receive address register to write +/** + * ixgbe_clear_rar_generic - Remove Rx address register + * @hw: pointer to hardware structure + * @index: Receive address register to write * - * Clears an ethernet address from a receive address register. - */ -s32 -ixgbe_clear_rar_generic(struct ixgbe_hw *hw, u32 index) + * Clears an ethernet address from a receive address register. + **/ +s32 ixgbe_clear_rar_generic(struct ixgbe_hw *hw, u32 index) { u32 rar_high; u32 rar_entries = hw->mac.num_rar_entries; @@ -1402,37 +1628,37 @@ ixgbe_clear_rar_generic(struct ixgbe_hw *hw, u32 index) DEBUGFUNC("ixgbe_clear_rar_generic"); /* Make sure we are using a valid rar index range */ - if (index < rar_entries) { - /* - * Some parts put the VMDq setting in the extra RAH bits, - * so save everything except the lower 16 bits that hold part - * of the address and the address valid bit. - */ - rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(index)); - rar_high &= ~(0x0000FFFF | IXGBE_RAH_AV); - - IXGBE_WRITE_REG(hw, IXGBE_RAL(index), 0); - IXGBE_WRITE_REG(hw, IXGBE_RAH(index), rar_high); - } else { + if (index >= rar_entries) { DEBUGOUT1("RAR index %d is out of range.\n", index); + return IXGBE_ERR_INVALID_ARGUMENT; } + /* + * Some parts put the VMDq setting in the extra RAH bits, + * so save everything except the lower 16 bits that hold part + * of the address and the address valid bit. + */ + rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(index)); + rar_high &= ~(0x0000FFFF | IXGBE_RAH_AV); + + IXGBE_WRITE_REG(hw, IXGBE_RAL(index), 0); + IXGBE_WRITE_REG(hw, IXGBE_RAH(index), rar_high); + /* clear VMDq pool/queue selection for this RAR */ hw->mac.ops.clear_vmdq(hw, index, IXGBE_CLEAR_VMDQ_ALL); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_init_rx_addrs_generic - Initializes receive address filters. - * @hw: pointer to hardware structure +/** + * ixgbe_init_rx_addrs_generic - Initializes receive address filters. + * @hw: pointer to hardware structure * - * Places the MAC address in receive address register 0 and clears the rest - * of the receive address registers. Clears the multicast table. Assumes - * the receiver is in reset when the routine is called. - */ -s32 -ixgbe_init_rx_addrs_generic(struct ixgbe_hw *hw) + * Places the MAC address in receive address register 0 and clears the rest + * of the receive address registers. Clears the multicast table. Assumes + * the receiver is in reset when the routine is called. + **/ +s32 ixgbe_init_rx_addrs_generic(struct ixgbe_hw *hw) { u32 i; u32 rar_entries = hw->mac.num_rar_entries; @@ -1450,20 +1676,23 @@ ixgbe_init_rx_addrs_generic(struct ixgbe_hw *hw) hw->mac.ops.get_mac_addr(hw, hw->mac.addr); DEBUGOUT3(" Keeping Current RAR0 Addr =%.2X %.2X %.2X ", - hw->mac.addr[0], hw->mac.addr[1], - hw->mac.addr[2]); + hw->mac.addr[0], hw->mac.addr[1], + hw->mac.addr[2]); DEBUGOUT3("%.2X %.2X %.2X\n", hw->mac.addr[3], - hw->mac.addr[4], hw->mac.addr[5]); + hw->mac.addr[4], hw->mac.addr[5]); } else { /* Setup the receive address. */ DEBUGOUT("Overriding MAC Address in RAR[0]\n"); DEBUGOUT3(" New MAC Addr =%.2X %.2X %.2X ", - hw->mac.addr[0], hw->mac.addr[1], - hw->mac.addr[2]); + hw->mac.addr[0], hw->mac.addr[1], + hw->mac.addr[2]); DEBUGOUT3("%.2X %.2X %.2X\n", hw->mac.addr[3], - hw->mac.addr[4], hw->mac.addr[5]); + hw->mac.addr[4], hw->mac.addr[5]); hw->mac.ops.set_rar(hw, 0, hw->mac.addr, 0, IXGBE_RAH_AV); + + /* clear VMDq pool/queue selection for RAR 0 */ + hw->mac.ops.clear_vmdq(hw, 0, IXGBE_CLEAR_VMDQ_ALL); } hw->addr_ctrl.overflow_promisc = 0; @@ -1486,19 +1715,17 @@ ixgbe_init_rx_addrs_generic(struct ixgbe_hw *hw) (void) ixgbe_init_uta_tables(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } - -/* - * ixgbe_add_uc_addr - Adds a secondary unicast address. - * @hw: pointer to hardware structure - * @addr: new address +/** + * ixgbe_add_uc_addr - Adds a secondary unicast address. + * @hw: pointer to hardware structure + * @addr: new address * - * Adds it to unused receive address register or goes into promiscuous mode. - */ -void -ixgbe_add_uc_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) + * Adds it to unused receive address register or goes into promiscuous mode. + **/ +void ixgbe_add_uc_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) { u32 rar_entries = hw->mac.num_rar_entries; u32 rar; @@ -1506,7 +1733,7 @@ ixgbe_add_uc_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) DEBUGFUNC("ixgbe_add_uc_addr"); DEBUGOUT6(" UC Addr = %.2X %.2X %.2X %.2X %.2X %.2X\n", - addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); + addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); /* * Place this address in the RAR if there is room, @@ -1524,23 +1751,22 @@ ixgbe_add_uc_addr(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) DEBUGOUT("ixgbe_add_uc_addr Complete\n"); } -/* - * ixgbe_update_uc_addr_list_generic - Updates MAC list of secondary addresses - * @hw: pointer to hardware structure - * @addr_list: the list of new addresses - * @addr_count: number of addresses - * @next: iterator function to walk the address list +/** + * ixgbe_update_uc_addr_list_generic - Updates MAC list of secondary addresses + * @hw: pointer to hardware structure + * @addr_list: the list of new addresses + * @addr_count: number of addresses + * @next: iterator function to walk the address list * - * The given list replaces any existing list. Clears the secondary addrs from - * receive address registers. Uses unused receive address registers for the - * first secondary addresses, and falls back to promiscuous mode as needed. + * The given list replaces any existing list. Clears the secondary addrs from + * receive address registers. Uses unused receive address registers for the + * first secondary addresses, and falls back to promiscuous mode as needed. * - * Drivers using secondary unicast addresses must set user_set_promisc when - * manually putting the device into promiscuous mode. - */ -s32 -ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw, u8 *addr_list, - u32 addr_count, ixgbe_mc_addr_itr next) + * Drivers using secondary unicast addresses must set user_set_promisc when + * manually putting the device into promiscuous mode. + **/ +s32 ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw, u8 *addr_list, + u32 addr_count, ixgbe_mc_addr_itr next) { u8 *addr; u32 i; @@ -1560,10 +1786,10 @@ ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw, u8 *addr_list, hw->addr_ctrl.overflow_promisc = 0; /* Zero out the other receive addresses */ - DEBUGOUT1("Clearing RAR[1-%d]\n", uc_addr_in_use + 1); + DEBUGOUT1("Clearing RAR[1-%d]\n", uc_addr_in_use+1); for (i = 0; i < uc_addr_in_use; i++) { - IXGBE_WRITE_REG(hw, IXGBE_RAL(i + 1), 0); - IXGBE_WRITE_REG(hw, IXGBE_RAH(i + 1), 0); + IXGBE_WRITE_REG(hw, IXGBE_RAL(1+i), 0); + IXGBE_WRITE_REG(hw, IXGBE_RAH(1+i), 0); } /* Add the new addresses */ @@ -1592,23 +1818,22 @@ ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw, u8 *addr_list, } DEBUGOUT("ixgbe_update_uc_addr_list_generic Complete\n"); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_mta_vector - Determines bit-vector in multicast table to set - * @hw: pointer to hardware structure - * @mc_addr: the multicast address +/** + * ixgbe_mta_vector - Determines bit-vector in multicast table to set + * @hw: pointer to hardware structure + * @mc_addr: the multicast address * - * Extracts the 12 bits, from a multicast address, to determine which - * bit-vector to set in the multicast table. The hardware uses 12 bits, from - * incoming rx multicast addresses, to determine the bit-vector to check in - * the MTA. Which of the 4 combination, of 12-bits, the hardware uses is set - * by the MO field of the MCSTCTRL. The MO field is set during initialization - * to mc_filter_type. - */ -static s32 -ixgbe_mta_vector(struct ixgbe_hw *hw, u8 *mc_addr) + * Extracts the 12 bits, from a multicast address, to determine which + * bit-vector to set in the multicast table. The hardware uses 12 bits, from + * incoming rx multicast addresses, to determine the bit-vector to check in + * the MTA. Which of the 4 combination, of 12-bits, the hardware uses is set + * by the MO field of the MCSTCTRL. The MO field is set during initialization + * to mc_filter_type. + **/ +static s32 ixgbe_mta_vector(struct ixgbe_hw *hw, u8 *mc_addr) { u32 vector = 0; @@ -1635,18 +1860,17 @@ ixgbe_mta_vector(struct ixgbe_hw *hw, u8 *mc_addr) /* vector can only be 12-bits or boundary will be exceeded */ vector &= 0xFFF; - return (vector); + return vector; } -/* - * ixgbe_set_mta - Set bit-vector in multicast table - * @hw: pointer to hardware structure - * @hash_value: Multicast address hash value +/** + * ixgbe_set_mta - Set bit-vector in multicast table + * @hw: pointer to hardware structure + * @hash_value: Multicast address hash value * - * Sets the bit-vector in the multicast table. - */ -void -ixgbe_set_mta(struct ixgbe_hw *hw, u8 *mc_addr) + * Sets the bit-vector in the multicast table. + **/ +void ixgbe_set_mta(struct ixgbe_hw *hw, u8 *mc_addr) { u32 vector; u32 vector_bit; @@ -1673,21 +1897,20 @@ ixgbe_set_mta(struct ixgbe_hw *hw, u8 *mc_addr) hw->mac.mta_shadow[vector_reg] |= (1 << vector_bit); } -/* - * ixgbe_update_mc_addr_list_generic - Updates MAC list of multicast addresses - * @hw: pointer to hardware structure - * @mc_addr_list: the list of new multicast addresses - * @mc_addr_count: number of addresses - * @next: iterator function to walk the multicast address list +/** + * ixgbe_update_mc_addr_list_generic - Updates MAC list of multicast addresses + * @hw: pointer to hardware structure + * @mc_addr_list: the list of new multicast addresses + * @mc_addr_count: number of addresses + * @next: iterator function to walk the multicast address list * - * The given list replaces any existing list. Clears the MC addrs from receive - * address registers and the multicast table. Uses unused receive address - * registers for the first multicast addresses, and hashes the rest into the - * multicast table. - */ -s32 -ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw, u8 *mc_addr_list, - u32 mc_addr_count, ixgbe_mc_addr_itr next) + * The given list replaces any existing list. Clears the MC addrs from receive + * address registers and the multicast table. Uses unused receive address + * registers for the first multicast addresses, and hashes the rest into the + * multicast table. + **/ +s32 ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw, u8 *mc_addr_list, + u32 mc_addr_count, ixgbe_mc_addr_itr next) { u32 i; u32 vmdq; @@ -1703,7 +1926,7 @@ ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw, u8 *mc_addr_list, /* Clear mta_shadow */ DEBUGOUT(" Clearing MTA\n"); - (void) memset(&hw->mac.mta_shadow, 0, sizeof (hw->mac.mta_shadow)); + (void) memset(&hw->mac.mta_shadow, 0, sizeof(hw->mac.mta_shadow)); /* Update mta_shadow */ for (i = 0; i < mc_addr_count; i++) { @@ -1714,24 +1937,23 @@ ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw, u8 *mc_addr_list, /* Enable mta */ for (i = 0; i < hw->mac.mcft_size; i++) IXGBE_WRITE_REG_ARRAY(hw, IXGBE_MTA(0), i, - hw->mac.mta_shadow[i]); + hw->mac.mta_shadow[i]); if (hw->addr_ctrl.mta_in_use > 0) IXGBE_WRITE_REG(hw, IXGBE_MCSTCTRL, - IXGBE_MCSTCTRL_MFE | hw->mac.mc_filter_type); + IXGBE_MCSTCTRL_MFE | hw->mac.mc_filter_type); DEBUGOUT("ixgbe_update_mc_addr_list_generic Complete\n"); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_enable_mc_generic - Enable multicast address in RAR - * @hw: pointer to hardware structure +/** + * ixgbe_enable_mc_generic - Enable multicast address in RAR + * @hw: pointer to hardware structure * - * Enables multicast address in RAR and the use of the multicast hash table. - */ -s32 -ixgbe_enable_mc_generic(struct ixgbe_hw *hw) + * Enables multicast address in RAR and the use of the multicast hash table. + **/ +s32 ixgbe_enable_mc_generic(struct ixgbe_hw *hw) { struct ixgbe_addr_filter_info *a = &hw->addr_ctrl; @@ -1739,19 +1961,18 @@ ixgbe_enable_mc_generic(struct ixgbe_hw *hw) if (a->mta_in_use > 0) IXGBE_WRITE_REG(hw, IXGBE_MCSTCTRL, IXGBE_MCSTCTRL_MFE | - hw->mac.mc_filter_type); + hw->mac.mc_filter_type); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_disable_mc_generic - Disable multicast address in RAR - * @hw: pointer to hardware structure +/** + * ixgbe_disable_mc_generic - Disable multicast address in RAR + * @hw: pointer to hardware structure * - * Disables multicast address in RAR and the use of the multicast hash table. - */ -s32 -ixgbe_disable_mc_generic(struct ixgbe_hw *hw) + * Disables multicast address in RAR and the use of the multicast hash table. + **/ +s32 ixgbe_disable_mc_generic(struct ixgbe_hw *hw) { struct ixgbe_addr_filter_info *a = &hw->addr_ctrl; @@ -1760,23 +1981,23 @@ ixgbe_disable_mc_generic(struct ixgbe_hw *hw) if (a->mta_in_use > 0) IXGBE_WRITE_REG(hw, IXGBE_MCSTCTRL, hw->mac.mc_filter_type); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_fc_enable_generic - Enable flow control - * @hw: pointer to hardware structure - * @packetbuf_num: packet buffer number (0-7) +/** + * ixgbe_fc_enable_generic - Enable flow control + * @hw: pointer to hardware structure + * @packetbuf_num: packet buffer number (0-7) * - * Enable flow control according to the current settings. - */ -s32 -ixgbe_fc_enable_generic(struct ixgbe_hw *hw, s32 packetbuf_num) + * Enable flow control according to the current settings. + **/ +s32 ixgbe_fc_enable_generic(struct ixgbe_hw *hw, s32 packetbuf_num) { s32 ret_val = IXGBE_SUCCESS; u32 mflcn_reg, fccfg_reg; u32 reg; u32 rx_pba_size; + u32 fcrtl, fcrth; DEBUGFUNC("ixgbe_fc_enable_generic"); @@ -1843,40 +2064,21 @@ ixgbe_fc_enable_generic(struct ixgbe_hw *hw, s32 packetbuf_num) IXGBE_WRITE_REG(hw, IXGBE_MFLCN, mflcn_reg); IXGBE_WRITE_REG(hw, IXGBE_FCCFG, fccfg_reg); - reg = IXGBE_READ_REG(hw, IXGBE_MTQC); - /* Thresholds are different for link flow control when in DCB mode */ - if (reg & IXGBE_MTQC_RT_ENA) { - rx_pba_size = IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(packetbuf_num)); + rx_pba_size = IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(packetbuf_num)); + rx_pba_size >>= IXGBE_RXPBSIZE_SHIFT; - /* Always disable XON for LFC when in DCB mode */ - reg = (rx_pba_size >> 5) & 0xFFE0; - IXGBE_WRITE_REG(hw, IXGBE_FCRTL_82599(packetbuf_num), reg); + fcrth = (rx_pba_size - hw->fc.high_water) << 10; + fcrtl = (rx_pba_size - hw->fc.low_water) << 10; - reg = (rx_pba_size >> 2) & 0xFFE0; - if (hw->fc.current_mode & ixgbe_fc_tx_pause) - reg |= IXGBE_FCRTH_FCEN; - IXGBE_WRITE_REG(hw, IXGBE_FCRTH_82599(packetbuf_num), reg); - } else { - /* - * Set up and enable Rx high/low water mark thresholds, - * enable XON. - */ - if (hw->fc.current_mode & ixgbe_fc_tx_pause) { - if (hw->fc.send_xon) { - IXGBE_WRITE_REG(hw, - IXGBE_FCRTL_82599(packetbuf_num), - (hw->fc.low_water | IXGBE_FCRTL_XONE)); - } else { - IXGBE_WRITE_REG(hw, - IXGBE_FCRTL_82599(packetbuf_num), - hw->fc.low_water); - } - - IXGBE_WRITE_REG(hw, IXGBE_FCRTH_82599(packetbuf_num), - (hw->fc.high_water | IXGBE_FCRTH_FCEN)); - } + if (hw->fc.current_mode & ixgbe_fc_tx_pause) { + fcrth |= IXGBE_FCRTH_FCEN; + if (hw->fc.send_xon) + fcrtl |= IXGBE_FCRTL_XONE; } + IXGBE_WRITE_REG(hw, IXGBE_FCRTH_82599(packetbuf_num), fcrth); + IXGBE_WRITE_REG(hw, IXGBE_FCRTL_82599(packetbuf_num), fcrtl); + /* Configure pause time (2 TCs per register) */ reg = IXGBE_READ_REG(hw, IXGBE_FCTTV(packetbuf_num / 2)); if ((packetbuf_num & 1) == 0) @@ -1888,18 +2090,17 @@ ixgbe_fc_enable_generic(struct ixgbe_hw *hw, s32 packetbuf_num) IXGBE_WRITE_REG(hw, IXGBE_FCRTV, (hw->fc.pause_time >> 1)); out: - return (ret_val); + return ret_val; } -/* - * ixgbe_fc_autoneg - Configure flow control - * @hw: pointer to hardware structure +/** + * ixgbe_fc_autoneg - Configure flow control + * @hw: pointer to hardware structure * - * Compares our advertised flow control capabilities to those advertised by - * our link partner, and determines the proper flow control mode to use. - */ -s32 -ixgbe_fc_autoneg(struct ixgbe_hw *hw) + * Compares our advertised flow control capabilities to those advertised by + * our link partner, and determines the proper flow control mode to use. + **/ +s32 ixgbe_fc_autoneg(struct ixgbe_hw *hw) { s32 ret_val = IXGBE_ERR_FC_NOT_NEGOTIATED; ixgbe_link_speed speed; @@ -1917,9 +2118,9 @@ ixgbe_fc_autoneg(struct ixgbe_hw *hw) * - link is not up. * * Since we're being called from an LSC, link is already known to be up. - * So use link_up_wait_to_complete=false. + * So use link_up_wait_to_complete=FALSE. */ - hw->mac.ops.check_link(hw, &speed, &link_up, false); + hw->mac.ops.check_link(hw, &speed, &link_up, FALSE); if (!link_up) { ret_val = IXGBE_ERR_FLOW_CONTROL; goto out; @@ -1949,24 +2150,23 @@ ixgbe_fc_autoneg(struct ixgbe_hw *hw) out: if (ret_val == IXGBE_SUCCESS) { - hw->fc.fc_was_autonegged = true; + hw->fc.fc_was_autonegged = TRUE; } else { - hw->fc.fc_was_autonegged = false; + hw->fc.fc_was_autonegged = FALSE; hw->fc.current_mode = hw->fc.requested_mode; } - return (ret_val); + return ret_val; } -/* - * ixgbe_fc_autoneg_fiber - Enable flow control on 1 gig fiber - * @hw: pointer to hardware structure - * @speed: - * @link_up +/** + * ixgbe_fc_autoneg_fiber - Enable flow control on 1 gig fiber + * @hw: pointer to hardware structure + * @speed: + * @link_up * - * Enable flow control according on 1 gig fiber. - */ -static s32 -ixgbe_fc_autoneg_fiber(struct ixgbe_hw *hw) + * Enable flow control according on 1 gig fiber. + **/ +static s32 ixgbe_fc_autoneg_fiber(struct ixgbe_hw *hw) { u32 pcs_anadv_reg, pcs_lpab_reg, linkstat; s32 ret_val; @@ -1987,24 +2187,23 @@ ixgbe_fc_autoneg_fiber(struct ixgbe_hw *hw) pcs_anadv_reg = IXGBE_READ_REG(hw, IXGBE_PCS1GANA); pcs_lpab_reg = IXGBE_READ_REG(hw, IXGBE_PCS1GANLP); - ret_val = ixgbe_negotiate_fc(hw, pcs_anadv_reg, - pcs_lpab_reg, IXGBE_PCS1GANA_SYM_PAUSE, - IXGBE_PCS1GANA_ASM_PAUSE, - IXGBE_PCS1GANA_SYM_PAUSE, - IXGBE_PCS1GANA_ASM_PAUSE); + ret_val = ixgbe_negotiate_fc(hw, pcs_anadv_reg, + pcs_lpab_reg, IXGBE_PCS1GANA_SYM_PAUSE, + IXGBE_PCS1GANA_ASM_PAUSE, + IXGBE_PCS1GANA_SYM_PAUSE, + IXGBE_PCS1GANA_ASM_PAUSE); out: - return (ret_val); + return ret_val; } -/* - * ixgbe_fc_autoneg_backplane - Enable flow control IEEE clause 37 - * @hw: pointer to hardware structure +/** + * ixgbe_fc_autoneg_backplane - Enable flow control IEEE clause 37 + * @hw: pointer to hardware structure * - * Enable flow control according to IEEE clause 37. - */ -static s32 -ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw) + * Enable flow control according to IEEE clause 37. + **/ +static s32 ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw) { u32 links2, anlp1_reg, autoc_reg, links; s32 ret_val; @@ -2016,7 +2215,7 @@ ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw) */ links = IXGBE_READ_REG(hw, IXGBE_LINKS); if ((links & IXGBE_LINKS_KX_AN_COMP) == 0) { - hw->fc.fc_was_autonegged = false; + hw->fc.fc_was_autonegged = FALSE; hw->fc.current_mode = hw->fc.requested_mode; ret_val = IXGBE_ERR_FC_NOT_NEGOTIATED; goto out; @@ -2025,7 +2224,7 @@ ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw) if (hw->mac.type == ixgbe_mac_82599EB) { links2 = IXGBE_READ_REG(hw, IXGBE_LINKS2); if ((links2 & IXGBE_LINKS2_AN_SUPPORTED) == 0) { - hw->fc.fc_was_autonegged = false; + hw->fc.fc_was_autonegged = FALSE; hw->fc.current_mode = hw->fc.requested_mode; ret_val = IXGBE_ERR_FC_NOT_NEGOTIATED; goto out; @@ -2039,55 +2238,55 @@ ixgbe_fc_autoneg_backplane(struct ixgbe_hw *hw) anlp1_reg = IXGBE_READ_REG(hw, IXGBE_ANLP1); ret_val = ixgbe_negotiate_fc(hw, autoc_reg, - anlp1_reg, IXGBE_AUTOC_SYM_PAUSE, IXGBE_AUTOC_ASM_PAUSE, - IXGBE_ANLP1_SYM_PAUSE, IXGBE_ANLP1_ASM_PAUSE); + anlp1_reg, IXGBE_AUTOC_SYM_PAUSE, IXGBE_AUTOC_ASM_PAUSE, + IXGBE_ANLP1_SYM_PAUSE, IXGBE_ANLP1_ASM_PAUSE); out: - return (ret_val); + return ret_val; } -/* - * ixgbe_fc_autoneg_copper - Enable flow control IEEE clause 37 - * @hw: pointer to hardware structure +/** + * ixgbe_fc_autoneg_copper - Enable flow control IEEE clause 37 + * @hw: pointer to hardware structure * - * Enable flow control according to IEEE clause 37. - */ -static s32 -ixgbe_fc_autoneg_copper(struct ixgbe_hw *hw) + * Enable flow control according to IEEE clause 37. + **/ +static s32 ixgbe_fc_autoneg_copper(struct ixgbe_hw *hw) { u16 technology_ability_reg = 0; u16 lp_technology_ability_reg = 0; hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_ADVT, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &technology_ability_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &technology_ability_reg); hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_LP, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &lp_technology_ability_reg); - - return (ixgbe_negotiate_fc(hw, (u32)technology_ability_reg, - (u32)lp_technology_ability_reg, - IXGBE_TAF_SYM_PAUSE, IXGBE_TAF_ASM_PAUSE, - IXGBE_TAF_SYM_PAUSE, IXGBE_TAF_ASM_PAUSE)); -} - -/* - * ixgbe_negotiate_fc - Negotiate flow control - * @hw: pointer to hardware structure - * @adv_reg: flow control advertised settings - * @lp_reg: link partner's flow control settings - * @adv_sym: symmetric pause bit in advertisement - * @adv_asm: asymmetric pause bit in advertisement - * @lp_sym: symmetric pause bit in link partner advertisement - * @lp_asm: asymmetric pause bit in link partner advertisement + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &lp_technology_ability_reg); + + return ixgbe_negotiate_fc(hw, (u32)technology_ability_reg, + (u32)lp_technology_ability_reg, + IXGBE_TAF_SYM_PAUSE, IXGBE_TAF_ASM_PAUSE, + IXGBE_TAF_SYM_PAUSE, IXGBE_TAF_ASM_PAUSE); +} + +/** + * ixgbe_negotiate_fc - Negotiate flow control + * @hw: pointer to hardware structure + * @adv_reg: flow control advertised settings + * @lp_reg: link partner's flow control settings + * @adv_sym: symmetric pause bit in advertisement + * @adv_asm: asymmetric pause bit in advertisement + * @lp_sym: symmetric pause bit in link partner advertisement + * @lp_asm: asymmetric pause bit in link partner advertisement * - * Find the intersection between advertised settings and link partner's - * advertised settings - */ -static s32 -ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg, - u32 adv_sym, u32 adv_asm, u32 lp_sym, u32 lp_asm) + * Find the intersection between advertised settings and link partner's + * advertised settings + **/ +static s32 ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg, + u32 adv_sym, u32 adv_asm, u32 lp_sym, u32 lp_asm) { - if ((!(adv_reg)) || (!(lp_reg))) - return (IXGBE_ERR_FC_NOT_NEGOTIATED); + if ((!(adv_reg)) || (!(lp_reg))) + return IXGBE_ERR_FC_NOT_NEGOTIATED; if ((adv_reg & adv_sym) && (lp_reg & lp_sym)) { /* @@ -2105,28 +2304,27 @@ ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg, DEBUGOUT("Flow Control=RX PAUSE frames only\n"); } } else if (!(adv_reg & adv_sym) && (adv_reg & adv_asm) && - (lp_reg & lp_sym) && (lp_reg & lp_asm)) { + (lp_reg & lp_sym) && (lp_reg & lp_asm)) { hw->fc.current_mode = ixgbe_fc_tx_pause; DEBUGOUT("Flow Control = TX PAUSE frames only.\n"); } else if ((adv_reg & adv_sym) && (adv_reg & adv_asm) && - !(lp_reg & lp_sym) && (lp_reg & lp_asm)) { + !(lp_reg & lp_sym) && (lp_reg & lp_asm)) { hw->fc.current_mode = ixgbe_fc_rx_pause; DEBUGOUT("Flow Control = RX PAUSE frames only.\n"); } else { hw->fc.current_mode = ixgbe_fc_none; DEBUGOUT("Flow Control = NONE.\n"); } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_setup_fc - Set up flow control - * @hw: pointer to hardware structure +/** + * ixgbe_setup_fc - Set up flow control + * @hw: pointer to hardware structure * - * Called at init time to set up flow control. - */ -s32 -ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) + * Called at init time to set up flow control. + **/ +s32 ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) { s32 ret_val = IXGBE_SUCCESS; u32 reg = 0, reg_bp = 0; @@ -2137,7 +2335,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) /* Validate the packetbuf configuration */ if (packetbuf_num < 0 || packetbuf_num > 7) { DEBUGOUT1("Invalid packet buffer number [%d], expected range is" - " 0-7\n", packetbuf_num); + " 0-7\n", packetbuf_num); ret_val = IXGBE_ERR_INVALID_LINK_SETTINGS; goto out; } @@ -2174,6 +2372,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) * HW will be able to do fc autoneg once the cable is plugged in. If * we link at 10G, the 1G advertisement is harmless and vice versa. */ + switch (hw->phy.media_type) { case ixgbe_media_type_fiber: case ixgbe_media_type_backplane: @@ -2183,7 +2382,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) case ixgbe_media_type_copper: hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_ADVT, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, ®_cu); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, ®_cu); break; default: @@ -2206,7 +2405,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) reg &= ~(IXGBE_PCS1GANA_SYM_PAUSE | IXGBE_PCS1GANA_ASM_PAUSE); if (hw->phy.media_type == ixgbe_media_type_backplane) reg_bp &= ~(IXGBE_AUTOC_SYM_PAUSE | - IXGBE_AUTOC_ASM_PAUSE); + IXGBE_AUTOC_ASM_PAUSE); else if (hw->phy.media_type == ixgbe_media_type_copper) reg_cu &= ~(IXGBE_TAF_SYM_PAUSE | IXGBE_TAF_ASM_PAUSE); break; @@ -2222,7 +2421,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) reg |= (IXGBE_PCS1GANA_SYM_PAUSE | IXGBE_PCS1GANA_ASM_PAUSE); if (hw->phy.media_type == ixgbe_media_type_backplane) reg_bp |= (IXGBE_AUTOC_SYM_PAUSE | - IXGBE_AUTOC_ASM_PAUSE); + IXGBE_AUTOC_ASM_PAUSE); else if (hw->phy.media_type == ixgbe_media_type_copper) reg_cu |= (IXGBE_TAF_SYM_PAUSE | IXGBE_TAF_ASM_PAUSE); break; @@ -2246,7 +2445,7 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) reg |= (IXGBE_PCS1GANA_SYM_PAUSE | IXGBE_PCS1GANA_ASM_PAUSE); if (hw->phy.media_type == ixgbe_media_type_backplane) reg_bp |= (IXGBE_AUTOC_SYM_PAUSE | - IXGBE_AUTOC_ASM_PAUSE); + IXGBE_AUTOC_ASM_PAUSE); else if (hw->phy.media_type == ixgbe_media_type_copper) reg_cu |= (IXGBE_TAF_SYM_PAUSE | IXGBE_TAF_ASM_PAUSE); break; @@ -2256,6 +2455,10 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) goto out; } + /* + * Enable auto-negotiation between the MAC & PHY; + * the MAC will advertise clause 37 flow control. + */ IXGBE_WRITE_REG(hw, IXGBE_PCS1GANA, reg); reg = IXGBE_READ_REG(hw, IXGBE_PCS1GLCTL); @@ -2267,35 +2470,34 @@ ixgbe_setup_fc(struct ixgbe_hw *hw, s32 packetbuf_num) DEBUGOUT1("Set up FC; PCS1GLCTL = 0x%08X\n", reg); /* - * AUTOC restart handles negotiation of 1G and 10G. There is - * no need to set the PCS1GCTL register. + * AUTOC restart handles negotiation of 1G and 10G on backplane + * and copper. There is no need to set the PCS1GCTL register. + * */ if (hw->phy.media_type == ixgbe_media_type_backplane) { reg_bp |= IXGBE_AUTOC_AN_RESTART; IXGBE_WRITE_REG(hw, IXGBE_AUTOC, reg_bp); } else if ((hw->phy.media_type == ixgbe_media_type_copper) && - (ixgbe_device_supports_autoneg_fc(hw) == IXGBE_SUCCESS)) { + (ixgbe_device_supports_autoneg_fc(hw) == IXGBE_SUCCESS)) { hw->phy.ops.write_reg(hw, IXGBE_MDIO_AUTO_NEG_ADVT, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, reg_cu); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, reg_cu); } DEBUGOUT1("Set up FC; IXGBE_AUTOC = 0x%08X\n", reg); - out: - return (ret_val); + return ret_val; } -/* - * ixgbe_disable_pcie_master - Disable PCI-express master access - * @hw: pointer to hardware structure +/** + * ixgbe_disable_pcie_master - Disable PCI-express master access + * @hw: pointer to hardware structure * - * Disables PCI-Express master access and verifies there are no pending - * requests. IXGBE_ERR_MASTER_REQUESTS_PENDING is returned if master disable - * bit hasn't caused the master requests to be disabled, else IXGBE_SUCCESS - * is returned signifying master requests disabled. - */ -s32 -ixgbe_disable_pcie_master(struct ixgbe_hw *hw) + * Disables PCI-Express master access and verifies there are no pending + * requests. IXGBE_ERR_MASTER_REQUESTS_PENDING is returned if master disable + * bit hasn't caused the master requests to be disabled, else IXGBE_SUCCESS + * is returned signifying master requests disabled. + **/ +s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) { u32 i; u32 reg_val; @@ -2324,7 +2526,7 @@ ixgbe_disable_pcie_master(struct ixgbe_hw *hw) for (i = 0; i < IXGBE_PCI_MASTER_DISABLE_TIMEOUT; i++) { if (!(IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_GIO)) - goto out; + goto check_device_status; usec_delay(100); } @@ -2332,21 +2534,21 @@ ixgbe_disable_pcie_master(struct ixgbe_hw *hw) status = IXGBE_ERR_MASTER_REQUESTS_PENDING; /* - * The GIO Master Disable bit didn't clear. There are multiple reasons - * for this listed in the datasheet 5.2.5.3.2 Master Disable, and they - * all require a double reset to recover from. Before proceeding, we - * first wait a little more to try to ensure that, at a minimum, the - * PCIe block has no transactions pending. + * Before proceeding, make sure that the PCIe block does not have + * transactions pending. */ +check_device_status: for (i = 0; i < IXGBE_PCI_MASTER_DISABLE_TIMEOUT; i++) { if (!(IXGBE_READ_PCIE_WORD(hw, IXGBE_PCI_DEVICE_STATUS) & - IXGBE_PCI_DEVICE_STATUS_TRANSACTION_PENDING)) + IXGBE_PCI_DEVICE_STATUS_TRANSACTION_PENDING)) break; usec_delay(100); } if (i == IXGBE_PCI_MASTER_DISABLE_TIMEOUT) DEBUGOUT("PCIe transaction pending bit also did not clear.\n"); + else + goto out; /* * Two consecutive resets are required via CTRL.RST per datasheet @@ -2356,22 +2558,22 @@ ixgbe_disable_pcie_master(struct ixgbe_hw *hw) * remaining completions from the PCIe bus to trickle in, and then reset * again to clear out any effects they may have had on our device. */ - hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED; + hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED; out: - return (status); + return status; } -/* - * ixgbe_acquire_swfw_sync - Acquire SWFW semaphore - * @hw: pointer to hardware structure - * @mask: Mask to specify which semaphore to acquire + +/** + * ixgbe_acquire_swfw_sync - Acquire SWFW semaphore + * @hw: pointer to hardware structure + * @mask: Mask to specify which semaphore to acquire * - * Acquires the SWFW semaphore thought the GSSR register for the specified - * function (CSR, PHY0, PHY1, EEPROM, Flash) - */ -s32 -ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u16 mask) + * Acquires the SWFW semaphore thought the GSSR register for the specified + * function (CSR, PHY0, PHY1, EEPROM, Flash) + **/ +s32 ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u16 mask) { u32 gssr; u32 swmask = mask; @@ -2386,7 +2588,7 @@ ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u16 mask) * SW_FW_SYNC/GSSR bits (not just EEPROM) */ if (ixgbe_get_eeprom_semaphore(hw)) - return (IXGBE_ERR_SWFW_SYNC); + return IXGBE_ERR_SWFW_SYNC; gssr = IXGBE_READ_REG(hw, IXGBE_GSSR); if (!(gssr & (fwmask | swmask))) @@ -2403,26 +2605,25 @@ ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u16 mask) if (!timeout) { DEBUGOUT("Driver can't access resource, SW_FW_SYNC timeout.\n"); - return (IXGBE_ERR_SWFW_SYNC); + return IXGBE_ERR_SWFW_SYNC; } gssr |= swmask; IXGBE_WRITE_REG(hw, IXGBE_GSSR, gssr); ixgbe_release_eeprom_semaphore(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_release_swfw_sync - Release SWFW semaphore - * @hw: pointer to hardware structure - * @mask: Mask to specify which semaphore to release +/** + * ixgbe_release_swfw_sync - Release SWFW semaphore + * @hw: pointer to hardware structure + * @mask: Mask to specify which semaphore to release * - * Releases the SWFW semaphore thought the GSSR register for the specified - * function (CSR, PHY0, PHY1, EEPROM, Flash) - */ -void -ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u16 mask) + * Releases the SWFW semaphore thought the GSSR register for the specified + * function (CSR, PHY0, PHY1, EEPROM, Flash) + **/ +void ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u16 mask) { u32 gssr; u32 swmask = mask; @@ -2438,30 +2639,28 @@ ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u16 mask) ixgbe_release_eeprom_semaphore(hw); } -/* - * ixgbe_enable_rx_dma_generic - Enable the Rx DMA unit - * @hw: pointer to hardware structure - * @regval: register value to write to RXCTRL +/** + * ixgbe_enable_rx_dma_generic - Enable the Rx DMA unit + * @hw: pointer to hardware structure + * @regval: register value to write to RXCTRL * - * Enables the Rx DMA unit - */ -s32 -ixgbe_enable_rx_dma_generic(struct ixgbe_hw *hw, u32 regval) + * Enables the Rx DMA unit + **/ +s32 ixgbe_enable_rx_dma_generic(struct ixgbe_hw *hw, u32 regval) { DEBUGFUNC("ixgbe_enable_rx_dma_generic"); IXGBE_WRITE_REG(hw, IXGBE_RXCTRL, regval); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_blink_led_start_generic - Blink LED based on index. - * @hw: pointer to hardware structure - * @index: led number to blink - */ -s32 -ixgbe_blink_led_start_generic(struct ixgbe_hw *hw, u32 index) +/** + * ixgbe_blink_led_start_generic - Blink LED based on index. + * @hw: pointer to hardware structure + * @index: led number to blink + **/ +s32 ixgbe_blink_led_start_generic(struct ixgbe_hw *hw, u32 index) { ixgbe_link_speed speed = 0; bool link_up = 0; @@ -2474,7 +2673,7 @@ ixgbe_blink_led_start_generic(struct ixgbe_hw *hw, u32 index) * Link must be up to auto-blink the LEDs; * Force it if link is down. */ - hw->mac.ops.check_link(hw, &speed, &link_up, false); + hw->mac.ops.check_link(hw, &speed, &link_up, FALSE); if (!link_up) { autoc_reg |= IXGBE_AUTOC_AN_RESTART; @@ -2488,22 +2687,22 @@ ixgbe_blink_led_start_generic(struct ixgbe_hw *hw, u32 index) IXGBE_WRITE_REG(hw, IXGBE_LEDCTL, led_reg); IXGBE_WRITE_FLUSH(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_blink_led_stop_generic - Stop blinking LED based on index. - * @hw: pointer to hardware structure - * @index: led number to stop blinking - */ -s32 -ixgbe_blink_led_stop_generic(struct ixgbe_hw *hw, u32 index) +/** + * ixgbe_blink_led_stop_generic - Stop blinking LED based on index. + * @hw: pointer to hardware structure + * @index: led number to stop blinking + **/ +s32 ixgbe_blink_led_stop_generic(struct ixgbe_hw *hw, u32 index) { u32 autoc_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC); u32 led_reg = IXGBE_READ_REG(hw, IXGBE_LEDCTL); DEBUGFUNC("ixgbe_blink_led_stop_generic"); + autoc_reg &= ~IXGBE_AUTOC_FLU; autoc_reg |= IXGBE_AUTOC_AN_RESTART; IXGBE_WRITE_REG(hw, IXGBE_AUTOC, autoc_reg); @@ -2514,20 +2713,20 @@ ixgbe_blink_led_stop_generic(struct ixgbe_hw *hw, u32 index) IXGBE_WRITE_REG(hw, IXGBE_LEDCTL, led_reg); IXGBE_WRITE_FLUSH(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_san_mac_addr_offset - Get SAN MAC address offset from the EEPROM - * @hw: pointer to hardware structure - * @san_mac_offset: SAN MAC address offset +/** + * ixgbe_get_san_mac_addr_offset - Get SAN MAC address offset from the EEPROM + * @hw: pointer to hardware structure + * @san_mac_offset: SAN MAC address offset * - * This function will read the EEPROM location for the SAN MAC address - * pointer, and returns the value at that location. This is used in both - * get and set mac_addr routines. - */ -static s32 -ixgbe_get_san_mac_addr_offset(struct ixgbe_hw *hw, u16 *san_mac_offset) + * This function will read the EEPROM location for the SAN MAC address + * pointer, and returns the value at that location. This is used in both + * get and set mac_addr routines. + **/ +static s32 ixgbe_get_san_mac_addr_offset(struct ixgbe_hw *hw, + u16 *san_mac_offset) { DEBUGFUNC("ixgbe_get_san_mac_addr_offset"); @@ -2537,21 +2736,20 @@ ixgbe_get_san_mac_addr_offset(struct ixgbe_hw *hw, u16 *san_mac_offset) */ hw->eeprom.ops.read(hw, IXGBE_SAN_MAC_ADDR_PTR, san_mac_offset); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_san_mac_addr_generic - SAN MAC address retrieval from the EEPROM - * @hw: pointer to hardware structure - * @san_mac_addr: SAN MAC address +/** + * ixgbe_get_san_mac_addr_generic - SAN MAC address retrieval from the EEPROM + * @hw: pointer to hardware structure + * @san_mac_addr: SAN MAC address * - * Reads the SAN MAC address from the EEPROM, if it's available. This is - * per-port, so set_lan_id() must be called before reading the addresses. - * set_lan_id() is called by identify_sfp(), but this cannot be relied - * upon for non-SFP connections, so we must call it here. - */ -s32 -ixgbe_get_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) + * Reads the SAN MAC address from the EEPROM, if it's available. This is + * per-port, so set_lan_id() must be called before reading the addresses. + * set_lan_id() is called by identify_sfp(), but this cannot be relied + * upon for non-SFP connections, so we must call it here. + **/ +s32 ixgbe_get_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) { u16 san_mac_data, san_mac_offset; u8 i; @@ -2579,7 +2777,7 @@ ixgbe_get_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) hw->mac.ops.set_lan_id(hw); /* apply the port offset to the address offset */ (hw->bus.func) ? (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT1_OFFSET) : - (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT0_OFFSET); + (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT0_OFFSET); for (i = 0; i < 3; i++) { hw->eeprom.ops.read(hw, san_mac_offset, &san_mac_data); san_mac_addr[i * 2] = (u8)(san_mac_data); @@ -2588,18 +2786,17 @@ ixgbe_get_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) } san_mac_addr_out: - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_set_san_mac_addr_generic - Write the SAN MAC address to the EEPROM - * @hw: pointer to hardware structure - * @san_mac_addr: SAN MAC address +/** + * ixgbe_set_san_mac_addr_generic - Write the SAN MAC address to the EEPROM + * @hw: pointer to hardware structure + * @san_mac_addr: SAN MAC address * - * Write a SAN MAC address to the EEPROM. - */ -s32 -ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) + * Write a SAN MAC address to the EEPROM. + **/ +s32 ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) { s32 status = IXGBE_SUCCESS; u16 san_mac_data, san_mac_offset; @@ -2619,7 +2816,7 @@ ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) hw->mac.ops.set_lan_id(hw); /* Apply the port offset to the address offset */ (hw->bus.func) ? (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT1_OFFSET) : - (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT0_OFFSET); + (san_mac_offset += IXGBE_SAN_MAC_ADDR_PORT0_OFFSET); for (i = 0; i < 3; i++) { san_mac_data = (u16)((u16)(san_mac_addr[i * 2 + 1]) << 8); @@ -2629,48 +2826,44 @@ ixgbe_set_san_mac_addr_generic(struct ixgbe_hw *hw, u8 *san_mac_addr) } san_mac_addr_out: - return (status); + return status; } -/* - * ixgbe_get_pcie_msix_count_generic - Gets MSI-X vector count - * @hw: pointer to hardware structure +/** + * ixgbe_get_pcie_msix_count_generic - Gets MSI-X vector count + * @hw: pointer to hardware structure * - * Read PCIe configuration space, and get the MSI-X vector count from - * the capabilities table. - */ -u32 -ixgbe_get_pcie_msix_count_generic(struct ixgbe_hw *hw) + * Read PCIe configuration space, and get the MSI-X vector count from + * the capabilities table. + **/ +u32 ixgbe_get_pcie_msix_count_generic(struct ixgbe_hw *hw) { u32 msix_count = 64; DEBUGFUNC("ixgbe_get_pcie_msix_count_generic"); if (hw->mac.msix_vectors_from_pcie) { msix_count = IXGBE_READ_PCIE_WORD(hw, - IXGBE_PCIE_MSIX_82599_CAPS); + IXGBE_PCIE_MSIX_82599_CAPS); msix_count &= IXGBE_PCIE_MSIX_TBL_SZ_MASK; - /* - * MSI-X count is zero-based in HW, so increment to give - * proper value. - */ + /* MSI-X count is zero-based in HW, so increment to give + * proper value */ msix_count++; } - return (msix_count); + return msix_count; } -/* - * ixgbe_insert_mac_addr_generic - Find a RAR for this mac address - * @hw: pointer to hardware structure - * @addr: Address to put into receive address register - * @vmdq: VMDq pool to assign +/** + * ixgbe_insert_mac_addr_generic - Find a RAR for this mac address + * @hw: pointer to hardware structure + * @addr: Address to put into receive address register + * @vmdq: VMDq pool to assign * - * Puts an ethernet address into a receive address register, or - * finds the rar that it is aleady in; adds to the pool list - */ -s32 -ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) + * Puts an ethernet address into a receive address register, or + * finds the rar that it is aleady in; adds to the pool list + **/ +s32 ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) { static const u32 NO_EMPTY_RAR_FOUND = 0xFFFFFFFF; u32 first_empty_rar = NO_EMPTY_RAR_FOUND; @@ -2682,8 +2875,8 @@ ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) /* swap bytes for HW little endian */ addr_low = addr[0] | (addr[1] << 8) - | (addr[2] << 16) - | (addr[3] << 24); + | (addr[2] << 16) + | (addr[3] << 24); addr_high = addr[4] | (addr[5] << 8); /* @@ -2695,8 +2888,8 @@ ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) for (rar = 0; rar < hw->mac.rar_highwater; rar++) { rar_high = IXGBE_READ_REG(hw, IXGBE_RAH(rar)); - if (((IXGBE_RAH_AV & rar_high) == 0) && - first_empty_rar == NO_EMPTY_RAR_FOUND) { + if (((IXGBE_RAH_AV & rar_high) == 0) + && first_empty_rar == NO_EMPTY_RAR_FOUND) { first_empty_rar = rar; } else if ((rar_high & 0xFFFF) == addr_high) { rar_low = IXGBE_READ_REG(hw, IXGBE_RAL(rar)); @@ -2717,7 +2910,7 @@ ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) (void) ixgbe_set_rar(hw, rar, addr, vmdq, IXGBE_RAH_AV); hw->mac.rar_highwater++; } else if (rar >= hw->mac.num_rar_entries) { - return (IXGBE_ERR_INVALID_MAC_ADDR); + return IXGBE_ERR_INVALID_MAC_ADDR; } /* @@ -2727,94 +2920,94 @@ ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq) if (rar == 0) (void) ixgbe_clear_vmdq(hw, rar, 0); - return (rar); + return rar; } -/* - * ixgbe_clear_vmdq_generic - Disassociate a VMDq pool index from a rx address - * @hw: pointer to hardware struct - * @rar: receive address register index to disassociate - * @vmdq: VMDq pool index to remove from the rar - */ -s32 -ixgbe_clear_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_clear_vmdq_generic - Disassociate a VMDq pool index from a rx address + * @hw: pointer to hardware struct + * @rar: receive address register index to disassociate + * @vmdq: VMDq pool index to remove from the rar + **/ +s32 ixgbe_clear_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { u32 mpsar_lo, mpsar_hi; u32 rar_entries = hw->mac.num_rar_entries; DEBUGFUNC("ixgbe_clear_vmdq_generic"); - if (rar < rar_entries) { - mpsar_lo = IXGBE_READ_REG(hw, IXGBE_MPSAR_LO(rar)); - mpsar_hi = IXGBE_READ_REG(hw, IXGBE_MPSAR_HI(rar)); + /* Make sure we are using a valid rar index range */ + if (rar >= rar_entries) { + DEBUGOUT1("RAR index %d is out of range.\n", rar); + return IXGBE_ERR_INVALID_ARGUMENT; + } - if (!mpsar_lo && !mpsar_hi) - goto done; + mpsar_lo = IXGBE_READ_REG(hw, IXGBE_MPSAR_LO(rar)); + mpsar_hi = IXGBE_READ_REG(hw, IXGBE_MPSAR_HI(rar)); - if (vmdq == IXGBE_CLEAR_VMDQ_ALL) { - if (mpsar_lo) { - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), 0); - mpsar_lo = 0; - } - if (mpsar_hi) { - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), 0); - mpsar_hi = 0; - } - } else if (vmdq < 32) { - mpsar_lo &= ~(1 << vmdq); - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), mpsar_lo); - } else { - mpsar_hi &= ~(1 << (vmdq - 32)); - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), mpsar_hi); - } + if (!mpsar_lo && !mpsar_hi) + goto done; - /* was that the last pool using this rar? */ - if (mpsar_lo == 0 && mpsar_hi == 0 && rar != 0) - hw->mac.ops.clear_rar(hw, rar); + if (vmdq == IXGBE_CLEAR_VMDQ_ALL) { + if (mpsar_lo) { + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), 0); + mpsar_lo = 0; + } + if (mpsar_hi) { + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), 0); + mpsar_hi = 0; + } + } else if (vmdq < 32) { + mpsar_lo &= ~(1 << vmdq); + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), mpsar_lo); } else { - DEBUGOUT1("RAR index %d is out of range.\n", rar); + mpsar_hi &= ~(1 << (vmdq - 32)); + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), mpsar_hi); } + /* was that the last pool using this rar? */ + if (mpsar_lo == 0 && mpsar_hi == 0 && rar != 0) + hw->mac.ops.clear_rar(hw, rar); done: - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_set_vmdq_generic - Associate a VMDq pool index with a rx address - * @hw: pointer to hardware struct - * @rar: receive address register index to associate with a VMDq index - * @vmdq: VMDq pool index - */ -s32 -ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) +/** + * ixgbe_set_vmdq_generic - Associate a VMDq pool index with a rx address + * @hw: pointer to hardware struct + * @rar: receive address register index to associate with a VMDq index + * @vmdq: VMDq pool index + **/ +s32 ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) { u32 mpsar; u32 rar_entries = hw->mac.num_rar_entries; DEBUGFUNC("ixgbe_set_vmdq_generic"); - if (rar < rar_entries) { - if (vmdq < 32) { - mpsar = IXGBE_READ_REG(hw, IXGBE_MPSAR_LO(rar)); - mpsar |= 1 << vmdq; - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), mpsar); - } else { - mpsar = IXGBE_READ_REG(hw, IXGBE_MPSAR_HI(rar)); - mpsar |= 1 << (vmdq - 32); - IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), mpsar); - } - } else { + /* Make sure we are using a valid rar index range */ + if (rar >= rar_entries) { DEBUGOUT1("RAR index %d is out of range.\n", rar); + return IXGBE_ERR_INVALID_ARGUMENT; } - return (IXGBE_SUCCESS); + + if (vmdq < 32) { + mpsar = IXGBE_READ_REG(hw, IXGBE_MPSAR_LO(rar)); + mpsar |= 1 << vmdq; + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_LO(rar), mpsar); + } else { + mpsar = IXGBE_READ_REG(hw, IXGBE_MPSAR_HI(rar)); + mpsar |= 1 << (vmdq - 32); + IXGBE_WRITE_REG(hw, IXGBE_MPSAR_HI(rar), mpsar); + } + return IXGBE_SUCCESS; } -/* - * ixgbe_init_uta_tables_generic - Initialize the Unicast Table Array - * @hw: pointer to hardware structure - */ -s32 -ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw) +/** + * ixgbe_init_uta_tables_generic - Initialize the Unicast Table Array + * @hw: pointer to hardware structure + **/ +s32 ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw) { int i; @@ -2824,19 +3017,18 @@ ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw) for (i = 0; i < 128; i++) IXGBE_WRITE_REG(hw, IXGBE_UTA(i), 0); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_find_vlvf_slot - find the vlanid or the first empty slot - * @hw: pointer to hardware structure - * @vlan: VLAN id to write to VLAN filter +/** + * ixgbe_find_vlvf_slot - find the vlanid or the first empty slot + * @hw: pointer to hardware structure + * @vlan: VLAN id to write to VLAN filter * - * return the VLVF index where this VLAN id should be placed + * return the VLVF index where this VLAN id should be placed * - */ -s32 -ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan) + **/ +s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan) { u32 bits = 0; u32 first_empty_slot = 0; @@ -2844,12 +3036,12 @@ ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan) /* short cut the special case */ if (vlan == 0) - return (0); + return 0; /* - * Search for the vlan id in the VLVF entries. Save off the first empty - * slot found along the way - */ + * Search for the vlan id in the VLVF entries. Save off the first empty + * slot found along the way + */ for (regindex = 1; regindex < IXGBE_VLVF_ENTRIES; regindex++) { bits = IXGBE_READ_REG(hw, IXGBE_VLVF(regindex)); if (!bits && !(first_empty_slot)) @@ -2859,10 +3051,10 @@ ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan) } /* - * If regindex is less than IXGBE_VLVF_ENTRIES, then we found the vlan - * in the VLVF. Else use the first empty VLVF register for this - * vlan id. - */ + * If regindex is less than IXGBE_VLVF_ENTRIES, then we found the vlan + * in the VLVF. Else use the first empty VLVF register for this + * vlan id. + */ if (regindex >= IXGBE_VLVF_ENTRIES) { if (first_empty_slot) regindex = first_empty_slot; @@ -2872,20 +3064,20 @@ ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan) } } - return (regindex); + return regindex; } -/* - * ixgbe_set_vfta_generic - Set VLAN filter table - * @hw: pointer to hardware structure - * @vlan: VLAN id to write to VLAN filter - * @vind: VMDq output index that maps queue to VLAN id in VFVFB - * @vlan_on: boolean flag to turn on/off VLAN in VFVF +/** + * ixgbe_set_vfta_generic - Set VLAN filter table + * @hw: pointer to hardware structure + * @vlan: VLAN id to write to VLAN filter + * @vind: VMDq output index that maps queue to VLAN id in VFVFB + * @vlan_on: boolean flag to turn on/off VLAN in VFVF * - * Turn on/off specified VLAN in the VLAN filter table. - */ -s32 -ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) + * Turn on/off specified VLAN in the VLAN filter table. + **/ +s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, + bool vlan_on) { s32 regindex; u32 bitindex; @@ -2893,12 +3085,12 @@ ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) u32 bits; u32 vt; u32 targetbit; - bool vfta_changed = false; + bool vfta_changed = FALSE; DEBUGFUNC("ixgbe_set_vfta_generic"); if (vlan > 4095) - return (IXGBE_ERR_PARAM); + return IXGBE_ERR_PARAM; /* * this is a 2 part operation - first the VFTA, then the @@ -2906,8 +3098,7 @@ ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) * We don't write the VFTA until we know the VLVF part succeeded. */ - /* - * Part 1 + /* Part 1 * The VFTA is a bitstring made up of 128 32-bit registers * that enable the particular VLAN id, much like the MTA: * bits[11-5]: which register @@ -2921,24 +3112,22 @@ ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) if (vlan_on) { if (!(vfta & targetbit)) { vfta |= targetbit; - vfta_changed = true; + vfta_changed = TRUE; } } else { if ((vfta & targetbit)) { vfta &= ~targetbit; - vfta_changed = true; + vfta_changed = TRUE; } } - - /* - * Part 2 + /* Part 2 * If VT Mode is set - * Either vlan_on - * make sure the vlan is in VLVF - * set the vind bit in the matching VLVFB - * Or !vlan_on - * clear the pool bit and possibly the vind + * Either vlan_on + * make sure the vlan is in VLVF + * set the vind bit in the matching VLVFB + * Or !vlan_on + * clear the pool bit and possibly the vind */ vt = IXGBE_READ_REG(hw, IXGBE_VT_CTL); if (vt & IXGBE_VT_CTL_VT_ENABLE) { @@ -2946,45 +3135,45 @@ ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) vlvf_index = ixgbe_find_vlvf_slot(hw, vlan); if (vlvf_index < 0) - return (vlvf_index); + return vlvf_index; if (vlan_on) { /* set the pool bit */ if (vind < 32) { bits = IXGBE_READ_REG(hw, - IXGBE_VLVFB(vlvf_index * 2)); + IXGBE_VLVFB(vlvf_index*2)); bits |= (1 << vind); IXGBE_WRITE_REG(hw, - IXGBE_VLVFB(vlvf_index * 2), - bits); + IXGBE_VLVFB(vlvf_index*2), + bits); } else { bits = IXGBE_READ_REG(hw, - IXGBE_VLVFB((vlvf_index * 2) + 1)); - bits |= (1 << (vind - 32)); + IXGBE_VLVFB((vlvf_index*2)+1)); + bits |= (1 << (vind-32)); IXGBE_WRITE_REG(hw, - IXGBE_VLVFB((vlvf_index * 2) + 1), - bits); + IXGBE_VLVFB((vlvf_index*2)+1), + bits); } } else { /* clear the pool bit */ if (vind < 32) { bits = IXGBE_READ_REG(hw, - IXGBE_VLVFB(vlvf_index * 2)); + IXGBE_VLVFB(vlvf_index*2)); bits &= ~(1 << vind); IXGBE_WRITE_REG(hw, - IXGBE_VLVFB(vlvf_index * 2), - bits); + IXGBE_VLVFB(vlvf_index*2), + bits); bits |= IXGBE_READ_REG(hw, - IXGBE_VLVFB((vlvf_index * 2) + 1)); + IXGBE_VLVFB((vlvf_index*2)+1)); } else { bits = IXGBE_READ_REG(hw, - IXGBE_VLVFB((vlvf_index * 2) + 1)); - bits &= ~(1 << (vind - 32)); + IXGBE_VLVFB((vlvf_index*2)+1)); + bits &= ~(1 << (vind-32)); IXGBE_WRITE_REG(hw, - IXGBE_VLVFB((vlvf_index * 2) + 1), - bits); + IXGBE_VLVFB((vlvf_index*2)+1), + bits); bits |= IXGBE_READ_REG(hw, - IXGBE_VLVFB(vlvf_index * 2)); + IXGBE_VLVFB(vlvf_index*2)); } } @@ -3005,34 +3194,31 @@ ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on) */ if (bits) { IXGBE_WRITE_REG(hw, IXGBE_VLVF(vlvf_index), - (IXGBE_VLVF_VIEN | vlan)); + (IXGBE_VLVF_VIEN | vlan)); if (!vlan_on) { - /* - * someone wants to clear the vfta entry + /* someone wants to clear the vfta entry * but some pools/VFs are still using it. - * Ignore it. - */ - vfta_changed = false; + * Ignore it. */ + vfta_changed = FALSE; } - } else { - IXGBE_WRITE_REG(hw, IXGBE_VLVF(vlvf_index), 0); } + else + IXGBE_WRITE_REG(hw, IXGBE_VLVF(vlvf_index), 0); } if (vfta_changed) IXGBE_WRITE_REG(hw, IXGBE_VFTA(regindex), vfta); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_clear_vfta_generic - Clear VLAN filter table - * @hw: pointer to hardware structure +/** + * ixgbe_clear_vfta_generic - Clear VLAN filter table + * @hw: pointer to hardware structure * - * Clears the VLAN filer table, and the VMDq index associated with the filter - */ -s32 -ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) + * Clears the VLAN filer table, and the VMDq index associated with the filter + **/ +s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) { u32 offset; @@ -3047,21 +3233,20 @@ ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) IXGBE_WRITE_REG(hw, IXGBE_VLVFB((offset*2)+1), 0); } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_check_mac_link_generic - Determine link and speed status - * @hw: pointer to hardware structure - * @speed: pointer to link speed - * @link_up: true when link is up - * @link_up_wait_to_complete: bool used to wait for link up or not +/** + * ixgbe_check_mac_link_generic - Determine link and speed status + * @hw: pointer to hardware structure + * @speed: pointer to link speed + * @link_up: TRUE when link is up + * @link_up_wait_to_complete: bool used to wait for link up or not * - * Reads the links register to determine if link is up and the current speed - */ -s32 -ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up, bool link_up_wait_to_complete) + * Reads the links register to determine if link is up and the current speed + **/ +s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, + bool *link_up, bool link_up_wait_to_complete) { u32 links_reg, links_orig; u32 i; @@ -3075,61 +3260,60 @@ ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, if (links_orig != links_reg) { DEBUGOUT2("LINKS changed from %08X to %08X\n", - links_orig, links_reg); + links_orig, links_reg); } if (link_up_wait_to_complete) { for (i = 0; i < IXGBE_LINK_UP_TIME; i++) { if (links_reg & IXGBE_LINKS_UP) { - *link_up = true; + *link_up = TRUE; break; } else { - *link_up = false; + *link_up = FALSE; } msec_delay(100); links_reg = IXGBE_READ_REG(hw, IXGBE_LINKS); } } else { if (links_reg & IXGBE_LINKS_UP) - *link_up = true; + *link_up = TRUE; else - *link_up = false; + *link_up = FALSE; } if ((links_reg & IXGBE_LINKS_SPEED_82599) == IXGBE_LINKS_SPEED_10G_82599) *speed = IXGBE_LINK_SPEED_10GB_FULL; else if ((links_reg & IXGBE_LINKS_SPEED_82599) == - IXGBE_LINKS_SPEED_1G_82599) + IXGBE_LINKS_SPEED_1G_82599) *speed = IXGBE_LINK_SPEED_1GB_FULL; else if ((links_reg & IXGBE_LINKS_SPEED_82599) == - IXGBE_LINKS_SPEED_100_82599) + IXGBE_LINKS_SPEED_100_82599) *speed = IXGBE_LINK_SPEED_100_FULL; else *speed = IXGBE_LINK_SPEED_UNKNOWN; /* if link is down, zero out the current_mode */ - if (*link_up == false) { + if (*link_up == FALSE) { hw->fc.current_mode = ixgbe_fc_none; - hw->fc.fc_was_autonegged = false; + hw->fc.fc_was_autonegged = FALSE; } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_wwn_prefix_generic - Get alternative WWNN/WWPN prefix from - * the EEPROM - * @hw: pointer to hardware structure - * @wwnn_prefix: the alternative WWNN prefix - * @wwpn_prefix: the alternative WWPN prefix +/** + * ixgbe_get_wwn_prefix_generic - Get alternative WWNN/WWPN prefix from + * the EEPROM + * @hw: pointer to hardware structure + * @wwnn_prefix: the alternative WWNN prefix + * @wwpn_prefix: the alternative WWPN prefix * - * This function will read the EEPROM from the alternative SAN MAC address - * block to check the support for the alternative WWNN/WWPN prefix support. - */ -s32 -ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, - u16 *wwpn_prefix) + * This function will read the EEPROM from the alternative SAN MAC address + * block to check the support for the alternative WWNN/WWPN prefix support. + **/ +s32 ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, + u16 *wwpn_prefix) { u16 offset, caps; u16 alt_san_mac_blk_offset; @@ -3142,7 +3326,7 @@ ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, /* check if alternative SAN MAC is supported */ hw->eeprom.ops.read(hw, IXGBE_ALT_SAN_MAC_ADDR_BLK_PTR, - &alt_san_mac_blk_offset); + &alt_san_mac_blk_offset); if ((alt_san_mac_blk_offset == 0) || (alt_san_mac_blk_offset == 0xFFFF)) @@ -3162,18 +3346,17 @@ ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, hw->eeprom.ops.read(hw, offset, wwpn_prefix); wwn_prefix_out: - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_fcoe_boot_status_generic - Get FCOE boot status from EEPROM - * @hw: pointer to hardware structure - * @bs: the fcoe boot status +/** + * ixgbe_get_fcoe_boot_status_generic - Get FCOE boot status from EEPROM + * @hw: pointer to hardware structure + * @bs: the fcoe boot status * - * This function will read the FCOE boot status from the iSCSI FCOE block - */ -s32 -ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs) + * This function will read the FCOE boot status from the iSCSI FCOE block + **/ +s32 ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs) { u16 offset, caps, flags; s32 status; @@ -3212,18 +3395,18 @@ ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs) *bs = ixgbe_fcoe_bootstatus_disabled; out: - return (status); + return status; } -/* - * ixgbe_device_supports_autoneg_fc - Check if phy supports autoneg flow - * control - * @hw: pointer to hardware structure +/** + * ixgbe_device_supports_autoneg_fc - Check if phy supports autoneg flow + * control + * @hw: pointer to hardware structure * - * There are several phys that do not support autoneg flow control. This - * function check the device id to see if the associated phy supports - * autoneg flow control. - */ + * There are several phys that do not support autoneg flow control. This + * function check the device id to see if the associated phy supports + * autoneg flow control. + **/ static s32 ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) { @@ -3231,8 +3414,117 @@ static s32 ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) switch (hw->device_id) { case IXGBE_DEV_ID_82599_T3_LOM: - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; default: - return (IXGBE_ERR_FC_NOT_SUPPORTED); + return IXGBE_ERR_FC_NOT_SUPPORTED; + } +} + +/** + * ixgbe_set_mac_anti_spoofing - Enable/Disable MAC anti-spoofing + * @hw: pointer to hardware structure + * @enable: enable or disable switch for anti-spoofing + * @pf: Physical Function pool - do not enable anti-spoofing for the PF + * + **/ +void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int pf) +{ + int j; + int pf_target_reg = pf >> 3; + int pf_target_shift = pf % 8; + u32 pfvfspoof = 0; + + if (hw->mac.type == ixgbe_mac_82598EB) + return; + + if (enable) + pfvfspoof = IXGBE_SPOOF_MACAS_MASK; + + /* + * PFVFSPOOF register array is size 8 with 8 bits assigned to + * MAC anti-spoof enables in each register array element. + */ + for (j = 0; j < IXGBE_PFVFSPOOF_REG_COUNT; j++) + IXGBE_WRITE_REG(hw, IXGBE_PFVFSPOOF(j), pfvfspoof); + + /* If not enabling anti-spoofing then done */ + if (!enable) + return; + + /* + * The PF should be allowed to spoof so that it can support + * emulation mode NICs. Reset the bit assigned to the PF + */ + pfvfspoof = IXGBE_READ_REG(hw, IXGBE_PFVFSPOOF(pf_target_reg)); + pfvfspoof ^= (1 << pf_target_shift); + IXGBE_WRITE_REG(hw, IXGBE_PFVFSPOOF(pf_target_reg), pfvfspoof); +} + +/** + * ixgbe_set_vlan_anti_spoofing - Enable/Disable VLAN anti-spoofing + * @hw: pointer to hardware structure + * @enable: enable or disable switch for VLAN anti-spoofing + * @pf: Virtual Function pool - VF Pool to set for VLAN anti-spoofing + * + **/ +void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf) +{ + int vf_target_reg = vf >> 3; + int vf_target_shift = vf % 8 + IXGBE_SPOOF_VLANAS_SHIFT; + u32 pfvfspoof; + + if (hw->mac.type == ixgbe_mac_82598EB) + return; + + pfvfspoof = IXGBE_READ_REG(hw, IXGBE_PFVFSPOOF(vf_target_reg)); + if (enable) + pfvfspoof |= (1 << vf_target_shift); + else + pfvfspoof &= ~(1 << vf_target_shift); + IXGBE_WRITE_REG(hw, IXGBE_PFVFSPOOF(vf_target_reg), pfvfspoof); +} + +/** + * ixgbe_get_device_caps_generic - Get additional device capabilities + * @hw: pointer to hardware structure + * @device_caps: the EEPROM word with the extra device capabilities + * + * This function will read the EEPROM location for the device capabilities, + * and return the word through device_caps. + **/ +s32 ixgbe_get_device_caps_generic(struct ixgbe_hw *hw, u16 *device_caps) +{ + DEBUGFUNC("ixgbe_get_device_caps_generic"); + + hw->eeprom.ops.read(hw, IXGBE_DEVICE_CAPS, device_caps); + + return IXGBE_SUCCESS; +} + +/** + * ixgbe_enable_relaxed_ordering_gen2 - Enable relaxed ordering + * @hw: pointer to hardware structure + * + **/ +void ixgbe_enable_relaxed_ordering_gen2(struct ixgbe_hw *hw) +{ + u32 regval; + u32 i; + + DEBUGFUNC("ixgbe_enable_relaxed_ordering_gen2"); + + /* Enable relaxed ordering */ + for (i = 0; i < hw->mac.max_tx_queues; i++) { + regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(i)); + regval |= IXGBE_DCA_TXCTRL_TX_WB_RO_EN; + IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(i), regval); } + + for (i = 0; i < hw->mac.max_rx_queues; i++) { + regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i)); + regval |= (IXGBE_DCA_RXCTRL_DESC_WRO_EN | + IXGBE_DCA_RXCTRL_DESC_HSRO_EN); + IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval); + } + } diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_common.h b/usr/src/uts/common/io/ixgbe/ixgbe_common.h index 2068fa2854..e9df4c71b0 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_common.h +++ b/usr/src/uts/common/io/ixgbe/ixgbe_common.h @@ -1,54 +1,58 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.95 scm_061610_003709 */ - -#ifndef _IXGBE_COMMON_H -#define _IXGBE_COMMON_H +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + +#ifndef _IXGBE_COMMON_H_ +#define _IXGBE_COMMON_H_ #include "ixgbe_type.h" -#ifndef IXGBE_WRITE_REG64 -#define IXGBE_WRITE_REG64(hw, reg, value) \ - do { \ +#define IXGBE_WRITE_REG64(hw, reg, value) \ + { \ IXGBE_WRITE_REG(hw, reg, (u32) value); \ IXGBE_WRITE_REG(hw, reg + 4, (u32) (value >> 32)); \ - } while (0) -#endif /* IXGBE_WRITE_REG64 */ + } u32 ixgbe_get_pcie_msix_count_generic(struct ixgbe_hw *hw); s32 ixgbe_init_ops_generic(struct ixgbe_hw *hw); s32 ixgbe_init_hw_generic(struct ixgbe_hw *hw); s32 ixgbe_start_hw_generic(struct ixgbe_hw *hw); +s32 ixgbe_start_hw_gen2(struct ixgbe_hw *hw); s32 ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw); s32 ixgbe_read_pba_num_generic(struct ixgbe_hw *hw, u32 *pba_num); +s32 ixgbe_read_pba_string_generic(struct ixgbe_hw *hw, u8 *pba_num, + u32 pba_num_size); +s32 ixgbe_read_pba_length_generic(struct ixgbe_hw *hw, u32 *pba_num_size); s32 ixgbe_get_mac_addr_generic(struct ixgbe_hw *hw, u8 *mac_addr); s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw); void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw); @@ -60,23 +64,24 @@ s32 ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index); s32 ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw); s32 ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data); s32 ixgbe_read_eerd_generic(struct ixgbe_hw *hw, u16 offset, u16 *data); +s32 ixgbe_write_eewr_generic(struct ixgbe_hw *hw, u16 offset, u16 data); s32 ixgbe_read_eeprom_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, - u16 *data); + u16 *data); u16 ixgbe_calc_eeprom_checksum_generic(struct ixgbe_hw *hw); s32 ixgbe_validate_eeprom_checksum_generic(struct ixgbe_hw *hw, - u16 *checksum_val); + u16 *checksum_val); s32 ixgbe_update_eeprom_checksum_generic(struct ixgbe_hw *hw); s32 ixgbe_poll_eerd_eewr_done(struct ixgbe_hw *hw, u32 ee_reg); s32 ixgbe_set_rar_generic(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, - u32 enable_addr); + u32 enable_addr); s32 ixgbe_clear_rar_generic(struct ixgbe_hw *hw, u32 index); s32 ixgbe_init_rx_addrs_generic(struct ixgbe_hw *hw); s32 ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw, u8 *mc_addr_list, - u32 mc_addr_count, - ixgbe_mc_addr_itr func); + u32 mc_addr_count, + ixgbe_mc_addr_itr func); s32 ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw, u8 *addr_list, - u32 addr_count, ixgbe_mc_addr_itr func); + u32 addr_count, ixgbe_mc_addr_itr func); s32 ixgbe_enable_mc_generic(struct ixgbe_hw *hw); s32 ixgbe_disable_mc_generic(struct ixgbe_hw *hw); s32 ixgbe_enable_rx_dma_generic(struct ixgbe_hw *hw, u32 regval); @@ -101,14 +106,19 @@ s32 ixgbe_clear_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq); s32 ixgbe_insert_mac_addr_generic(struct ixgbe_hw *hw, u8 *addr, u32 vmdq); s32 ixgbe_init_uta_tables_generic(struct ixgbe_hw *hw); s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, - u32 vind, bool vlan_on); + u32 vind, bool vlan_on); s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw); s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *link_up, bool link_up_wait_to_complete); + ixgbe_link_speed *speed, + bool *link_up, bool link_up_wait_to_complete); s32 ixgbe_get_wwn_prefix_generic(struct ixgbe_hw *hw, u16 *wwnn_prefix, - u16 *wwpn_prefix); -s32 ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs); + u16 *wwpn_prefix); -#endif /* _IXGBE_COMMON_H */ +s32 ixgbe_get_fcoe_boot_status_generic(struct ixgbe_hw *hw, u16 *bs); +void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int pf); +void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); +s32 ixgbe_get_device_caps_generic(struct ixgbe_hw *hw, u16 *device_caps); +void ixgbe_enable_relaxed_ordering_gen2(struct ixgbe_hw *hw); +#endif /* IXGBE_COMMON */ diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_osdep.h b/usr/src/uts/common/io/ixgbe/ixgbe_osdep.h index 9fbb390331..09b97b3049 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_osdep.h +++ b/usr/src/uts/common/io/ixgbe/ixgbe_osdep.h @@ -66,6 +66,8 @@ void ixgbe_write_pci_cfg(struct ixgbe_hw *, uint32_t, uint32_t); #define false B_FALSE #define true B_TRUE +#define FALSE B_FALSE +#define TRUE B_TRUE #define IXGBE_READ_PCIE_WORD ixgbe_read_pci_cfg #define IXGBE_WRITE_PCIE_WORD ixgbe_write_pci_cfg @@ -93,15 +95,10 @@ void ixgbe_write_pci_cfg(struct ixgbe_hw *, uint32_t, uint32_t); #define IXGBE_READ_REG_ARRAY(a, reg, index) \ IXGBE_READ_REG(a, ((reg) + ((index) << 2))) -#define IXGBE_WRITE_REG64(hw, reg, value) \ - do { \ - IXGBE_WRITE_REG(hw, reg, (u32) value); \ - IXGBE_WRITE_REG(hw, reg + 4, (u32) (value >> 32)); \ - _NOTE(CONSTCOND) \ - } while (0) - #define msec_delay_irq msec_delay #define IXGBE_HTONL htonl +#define IXGBE_NTOHL ntohl +#define IXGBE_NTOHS ntohs #define UNREFERENCED_PARAMETER(x) _NOTE(ARGUNUSED(x)) diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_phy.c b/usr/src/uts/common/io/ixgbe/ixgbe_phy.c index 3e7794cf4c..ee3915971c 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_phy.c +++ b/usr/src/uts/common/io/ixgbe/ixgbe_phy.c @@ -1,34 +1,36 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.109 scm_061610_003709 */ +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ #include "ixgbe_api.h" #include "ixgbe_common.h" @@ -47,14 +49,13 @@ static s32 ixgbe_set_i2c_data(struct ixgbe_hw *hw, u32 *i2cctl, bool data); static bool ixgbe_get_i2c_data(u32 *i2cctl); void ixgbe_i2c_bus_clear(struct ixgbe_hw *hw); -/* - * ixgbe_init_phy_ops_generic - Inits PHY function ptrs - * @hw: pointer to the hardware structure +/** + * ixgbe_init_phy_ops_generic - Inits PHY function ptrs + * @hw: pointer to the hardware structure * - * Initialize the function pointers. - */ -s32 -ixgbe_init_phy_ops_generic(struct ixgbe_hw *hw) + * Initialize the function pointers. + **/ +s32 ixgbe_init_phy_ops_generic(struct ixgbe_hw *hw) { struct ixgbe_phy_info *phy = &hw->phy; @@ -77,18 +78,16 @@ ixgbe_init_phy_ops_generic(struct ixgbe_hw *hw) phy->ops.identify_sfp = &ixgbe_identify_sfp_module_generic; phy->sfp_type = ixgbe_sfp_type_unknown; phy->ops.check_overtemp = &ixgbe_tn_check_overtemp; - - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_identify_phy_generic - Get physical layer module - * @hw: pointer to hardware structure +/** + * ixgbe_identify_phy_generic - Get physical layer module + * @hw: pointer to hardware structure * - * Determines the physical layer module found on the current adapter. - */ -s32 -ixgbe_identify_phy_generic(struct ixgbe_hw *hw) + * Determines the physical layer module found on the current adapter. + **/ +s32 ixgbe_identify_phy_generic(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_PHY_ADDR_INVALID; u32 phy_addr; @@ -102,67 +101,65 @@ ixgbe_identify_phy_generic(struct ixgbe_hw *hw) hw->phy.addr = phy_addr; (void) ixgbe_get_phy_id(hw); hw->phy.type = - ixgbe_get_phy_type_from_id(hw->phy.id); + ixgbe_get_phy_type_from_id(hw->phy.id); if (hw->phy.type == ixgbe_phy_unknown) { hw->phy.ops.read_reg(hw, - IXGBE_MDIO_PHY_EXT_ABILITY, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, - &ext_ability); + IXGBE_MDIO_PHY_EXT_ABILITY, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &ext_ability); if (ext_ability & - IXGBE_MDIO_PHY_10GBASET_ABILITY || - ext_ability & - IXGBE_MDIO_PHY_1000BASET_ABILITY) + (IXGBE_MDIO_PHY_10GBASET_ABILITY | + IXGBE_MDIO_PHY_1000BASET_ABILITY)) hw->phy.type = - ixgbe_phy_cu_unknown; + ixgbe_phy_cu_unknown; else hw->phy.type = - ixgbe_phy_generic; + ixgbe_phy_generic; } status = IXGBE_SUCCESS; break; } } + /* clear value if nothing found */ if (status != IXGBE_SUCCESS) hw->phy.addr = 0; } else { status = IXGBE_SUCCESS; } - return (status); + return status; } -/* - * ixgbe_validate_phy_addr - Determines phy address is valid - * @hw: pointer to hardware structure +/** + * ixgbe_validate_phy_addr - Determines phy address is valid + * @hw: pointer to hardware structure * - */ -bool -ixgbe_validate_phy_addr(struct ixgbe_hw *hw, u32 phy_addr) + **/ +bool ixgbe_validate_phy_addr(struct ixgbe_hw *hw, u32 phy_addr) { u16 phy_id = 0; - bool valid = false; + bool valid = FALSE; DEBUGFUNC("ixgbe_validate_phy_addr"); hw->phy.addr = phy_addr; hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_ID_HIGH, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &phy_id); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &phy_id); if (phy_id != 0xFFFF && phy_id != 0x0) - valid = true; + valid = TRUE; - return (valid); + return valid; } -/* - * ixgbe_get_phy_id - Get the phy type - * @hw: pointer to hardware structure +/** + * ixgbe_get_phy_id - Get the phy type + * @hw: pointer to hardware structure * - */ -s32 -ixgbe_get_phy_id(struct ixgbe_hw *hw) + **/ +s32 ixgbe_get_phy_id(struct ixgbe_hw *hw) { u32 status; u16 phy_id_high = 0; @@ -171,28 +168,26 @@ ixgbe_get_phy_id(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_get_phy_id"); status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_ID_HIGH, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, - &phy_id_high); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &phy_id_high); if (status == IXGBE_SUCCESS) { hw->phy.id = (u32)(phy_id_high << 16); status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_ID_LOW, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, - &phy_id_low); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &phy_id_low); hw->phy.id |= (u32)(phy_id_low & IXGBE_PHY_REVISION_MASK); hw->phy.revision = (u32)(phy_id_low & ~IXGBE_PHY_REVISION_MASK); } - - return (status); + return status; } -/* - * ixgbe_get_phy_type_from_id - Get the phy type - * @hw: pointer to hardware structure +/** + * ixgbe_get_phy_type_from_id - Get the phy type + * @hw: pointer to hardware structure * - */ -enum ixgbe_phy_type -ixgbe_get_phy_type_from_id(u32 phy_id) + **/ +enum ixgbe_phy_type ixgbe_get_phy_type_from_id(u32 phy_id) { enum ixgbe_phy_type phy_type; @@ -217,16 +212,14 @@ ixgbe_get_phy_type_from_id(u32 phy_id) } DEBUGOUT1("phy type found is %d\n", phy_type); - - return (phy_type); + return phy_type; } -/* - * ixgbe_reset_phy_generic - Performs a PHY reset - * @hw: pointer to hardware structure - */ -s32 -ixgbe_reset_phy_generic(struct ixgbe_hw *hw) +/** + * ixgbe_reset_phy_generic - Performs a PHY reset + * @hw: pointer to hardware structure + **/ +s32 ixgbe_reset_phy_generic(struct ixgbe_hw *hw) { u32 i; u16 ctrl = 0; @@ -240,19 +233,18 @@ ixgbe_reset_phy_generic(struct ixgbe_hw *hw) if (status != IXGBE_SUCCESS || hw->phy.type == ixgbe_phy_none) goto out; + /* Don't reset PHY if it's shut down due to overtemp. */ if (!hw->phy.reset_if_overtemp && - (IXGBE_ERR_OVERTEMP == hw->phy.ops.check_overtemp(hw))) { - /* Don't reset PHY if it's shut down due to overtemp. */ + (IXGBE_ERR_OVERTEMP == hw->phy.ops.check_overtemp(hw))) goto out; - } /* * Perform soft PHY reset to the PHY_XS. * This will cause a soft reset to the PHY */ hw->phy.ops.write_reg(hw, IXGBE_MDIO_PHY_XS_CONTROL, - IXGBE_MDIO_PHY_XS_DEV_TYPE, - IXGBE_MDIO_PHY_XS_RESET); + IXGBE_MDIO_PHY_XS_DEV_TYPE, + IXGBE_MDIO_PHY_XS_RESET); /* * Poll for reset bit to self-clear indicating reset is complete. @@ -262,7 +254,7 @@ ixgbe_reset_phy_generic(struct ixgbe_hw *hw) for (i = 0; i < 30; i++) { msec_delay(100); hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_XS_CONTROL, - IXGBE_MDIO_PHY_XS_DEV_TYPE, &ctrl); + IXGBE_MDIO_PHY_XS_DEV_TYPE, &ctrl); if (!(ctrl & IXGBE_MDIO_PHY_XS_RESET)) { usec_delay(2); break; @@ -275,18 +267,17 @@ ixgbe_reset_phy_generic(struct ixgbe_hw *hw) } out: - return (status); + return status; } -/* - * ixgbe_read_phy_reg_generic - Reads a value from a specified PHY register - * @hw: pointer to hardware structure - * @reg_addr: 32 bit address of PHY register to read - * @phy_data: Pointer to read data from PHY register - */ -s32 -ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u16 *phy_data) +/** + * ixgbe_read_phy_reg_generic - Reads a value from a specified PHY register + * @hw: pointer to hardware structure + * @reg_addr: 32 bit address of PHY register to read + * @phy_data: Pointer to read data from PHY register + **/ +s32 ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, + u32 device_type, u16 *phy_data) { u32 command; u32 i; @@ -307,9 +298,9 @@ ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, if (status == IXGBE_SUCCESS) { /* Setup and write the address cycle command */ command = ((reg_addr << IXGBE_MSCA_NP_ADDR_SHIFT) | - (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | - (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | - (IXGBE_MSCA_ADDR_CYCLE | IXGBE_MSCA_MDI_COMMAND)); + (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | + (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | + (IXGBE_MSCA_ADDR_CYCLE | IXGBE_MSCA_MDI_COMMAND)); IXGBE_WRITE_REG(hw, IXGBE_MSCA, command); @@ -323,9 +314,8 @@ ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, command = IXGBE_READ_REG(hw, IXGBE_MSCA); - if ((command & IXGBE_MSCA_MDI_COMMAND) == 0) { + if ((command & IXGBE_MSCA_MDI_COMMAND) == 0) break; - } } if ((command & IXGBE_MSCA_MDI_COMMAND) != 0) { @@ -339,9 +329,9 @@ ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, * command */ command = ((reg_addr << IXGBE_MSCA_NP_ADDR_SHIFT) | - (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | - (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | - (IXGBE_MSCA_READ | IXGBE_MSCA_MDI_COMMAND)); + (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | + (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | + (IXGBE_MSCA_READ | IXGBE_MSCA_MDI_COMMAND)); IXGBE_WRITE_REG(hw, IXGBE_MSCA, command); @@ -376,18 +366,18 @@ ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, ixgbe_release_swfw_sync(hw, gssr); } - return (status); + return status; } -/* - * ixgbe_write_phy_reg_generic - Writes a value to specified PHY register - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @device_type: 5 bit device type - * @phy_data: Data to write to the PHY register - */ +/** + * ixgbe_write_phy_reg_generic - Writes a value to specified PHY register + * @hw: pointer to hardware structure + * @reg_addr: 32 bit PHY register to write + * @device_type: 5 bit device type + * @phy_data: Data to write to the PHY register + **/ s32 ixgbe_write_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u16 phy_data) + u32 device_type, u16 phy_data) { u32 command; u32 i; @@ -405,16 +395,14 @@ s32 ixgbe_write_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, status = IXGBE_ERR_SWFW_SYNC; if (status == IXGBE_SUCCESS) { - /* - * Put the data in the MDI single read and write data register - */ + /* Put the data in the MDI single read and write data register*/ IXGBE_WRITE_REG(hw, IXGBE_MSRWD, (u32)phy_data); /* Setup and write the address cycle command */ command = ((reg_addr << IXGBE_MSCA_NP_ADDR_SHIFT) | - (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | - (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | - (IXGBE_MSCA_ADDR_CYCLE | IXGBE_MSCA_MDI_COMMAND)); + (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | + (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | + (IXGBE_MSCA_ADDR_CYCLE | IXGBE_MSCA_MDI_COMMAND)); IXGBE_WRITE_REG(hw, IXGBE_MSCA, command); @@ -443,9 +431,9 @@ s32 ixgbe_write_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, * command */ command = ((reg_addr << IXGBE_MSCA_NP_ADDR_SHIFT) | - (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | - (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | - (IXGBE_MSCA_WRITE | IXGBE_MSCA_MDI_COMMAND)); + (device_type << IXGBE_MSCA_DEV_TYPE_SHIFT) | + (hw->phy.addr << IXGBE_MSCA_PHY_ADDR_SHIFT) | + (IXGBE_MSCA_WRITE | IXGBE_MSCA_MDI_COMMAND)); IXGBE_WRITE_REG(hw, IXGBE_MSCA, command); @@ -472,23 +460,22 @@ s32 ixgbe_write_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, ixgbe_release_swfw_sync(hw, gssr); } - return (status); + return status; } -/* - * ixgbe_setup_phy_link_generic - Set and restart autoneg - * @hw: pointer to hardware structure +/** + * ixgbe_setup_phy_link_generic - Set and restart autoneg + * @hw: pointer to hardware structure * - * Restart autonegotiation and PHY and waits for completion. - */ -s32 -ixgbe_setup_phy_link_generic(struct ixgbe_hw *hw) + * Restart autonegotiation and PHY and waits for completion. + **/ +s32 ixgbe_setup_phy_link_generic(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 time_out; u32 max_time_out = 10; u16 autoneg_reg = IXGBE_MII_AUTONEG_REG; - bool autoneg = false; + bool autoneg = FALSE; ixgbe_link_speed speed; DEBUGFUNC("ixgbe_setup_phy_link_generic"); @@ -498,66 +485,66 @@ ixgbe_setup_phy_link_generic(struct ixgbe_hw *hw) if (speed & IXGBE_LINK_SPEED_10GB_FULL) { /* Set or unset auto-negotiation 10G advertisement */ hw->phy.ops.read_reg(hw, IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_10GBASE_T_ADVERTISE; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_10GB_FULL) autoneg_reg |= IXGBE_MII_10GBASE_T_ADVERTISE; hw->phy.ops.write_reg(hw, IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } if (speed & IXGBE_LINK_SPEED_1GB_FULL) { /* Set or unset auto-negotiation 1G advertisement */ hw->phy.ops.read_reg(hw, - IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG, + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_1GBASE_T_ADVERTISE; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_1GB_FULL) autoneg_reg |= IXGBE_MII_1GBASE_T_ADVERTISE; hw->phy.ops.write_reg(hw, - IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG, + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } if (speed & IXGBE_LINK_SPEED_100_FULL) { /* Set or unset auto-negotiation 100M advertisement */ hw->phy.ops.read_reg(hw, IXGBE_MII_AUTONEG_ADVERTISE_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_100BASE_T_ADVERTISE; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_100_FULL) autoneg_reg |= IXGBE_MII_100BASE_T_ADVERTISE; hw->phy.ops.write_reg(hw, IXGBE_MII_AUTONEG_ADVERTISE_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } /* Restart PHY autonegotiation and wait for completion */ hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_CONTROL, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &autoneg_reg); autoneg_reg |= IXGBE_MII_RESTART; hw->phy.ops.write_reg(hw, IXGBE_MDIO_AUTO_NEG_CONTROL, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, autoneg_reg); /* Wait for autonegotiation to finish */ for (time_out = 0; time_out < max_time_out; time_out++) { usec_delay(10); /* Restart PHY autonegotiation and wait for completion */ status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_STATUS, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= IXGBE_MII_AUTONEG_COMPLETE; if (autoneg_reg == IXGBE_MII_AUTONEG_COMPLETE) { @@ -570,20 +557,19 @@ ixgbe_setup_phy_link_generic(struct ixgbe_hw *hw) DEBUGOUT("ixgbe_setup_phy_link_generic: time out"); } - return (status); + return status; } -/* - * ixgbe_setup_phy_link_speed_generic - Sets the auto advertised capabilities - * @hw: pointer to hardware structure - * @speed: new link speed - * @autoneg: true if autonegotiation enabled - */ -s32 -ixgbe_setup_phy_link_speed_generic(struct ixgbe_hw *hw, - ixgbe_link_speed speed, - bool autoneg, - bool autoneg_wait_to_complete) +/** + * ixgbe_setup_phy_link_speed_generic - Sets the auto advertised capabilities + * @hw: pointer to hardware structure + * @speed: new link speed + * @autoneg: TRUE if autonegotiation enabled + **/ +s32 ixgbe_setup_phy_link_speed_generic(struct ixgbe_hw *hw, + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete) { UNREFERENCED_PARAMETER(autoneg); UNREFERENCED_PARAMETER(autoneg_wait_to_complete); @@ -596,13 +582,11 @@ ixgbe_setup_phy_link_speed_generic(struct ixgbe_hw *hw, */ hw->phy.autoneg_advertised = 0; - if (speed & IXGBE_LINK_SPEED_10GB_FULL) { + if (speed & IXGBE_LINK_SPEED_10GB_FULL) hw->phy.autoneg_advertised |= IXGBE_LINK_SPEED_10GB_FULL; - } - if (speed & IXGBE_LINK_SPEED_1GB_FULL) { + if (speed & IXGBE_LINK_SPEED_1GB_FULL) hw->phy.autoneg_advertised |= IXGBE_LINK_SPEED_1GB_FULL; - } if (speed & IXGBE_LINK_SPEED_100_FULL) hw->phy.autoneg_advertised |= IXGBE_LINK_SPEED_100_FULL; @@ -610,20 +594,20 @@ ixgbe_setup_phy_link_speed_generic(struct ixgbe_hw *hw, /* Setup link based on the new speed settings */ hw->phy.ops.setup_link(hw); - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_get_copper_link_capabilities_generic - Determines link capabilities - * @hw: pointer to hardware structure - * @speed: pointer to link speed - * @autoneg: boolean auto-negotiation value +/** + * ixgbe_get_copper_link_capabilities_generic - Determines link capabilities + * @hw: pointer to hardware structure + * @speed: pointer to link speed + * @autoneg: boolean auto-negotiation value * - * Determines the link capabilities by reading the AUTOC register. - */ -s32 -ixgbe_get_copper_link_capabilities_generic(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *autoneg) + * Determines the link capabilities by reading the AUTOC register. + **/ +s32 ixgbe_get_copper_link_capabilities_generic(struct ixgbe_hw *hw, + ixgbe_link_speed *speed, + bool *autoneg) { s32 status = IXGBE_ERR_LINK_SETUP; u16 speed_ability; @@ -631,10 +615,11 @@ ixgbe_get_copper_link_capabilities_generic(struct ixgbe_hw *hw, DEBUGFUNC("ixgbe_get_copper_link_capabilities_generic"); *speed = 0; - *autoneg = true; + *autoneg = TRUE; status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_SPEED_ABILITY, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &speed_ability); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &speed_ability); if (status == IXGBE_SUCCESS) { if (speed_ability & IXGBE_MDIO_PHY_SPEED_10G) @@ -645,19 +630,18 @@ ixgbe_get_copper_link_capabilities_generic(struct ixgbe_hw *hw, *speed |= IXGBE_LINK_SPEED_100_FULL; } - return (status); + return status; } -/* - * ixgbe_check_phy_link_tnx - Determine link and speed status - * @hw: pointer to hardware structure +/** + * ixgbe_check_phy_link_tnx - Determine link and speed status + * @hw: pointer to hardware structure * - * Reads the VS1 register to determine if link is up and the current speed for - * the PHY. - */ -s32 -ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, ixgbe_link_speed *speed, - bool *link_up) + * Reads the VS1 register to determine if link is up and the current speed for + * the PHY. + **/ +s32 ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, ixgbe_link_speed *speed, + bool *link_up) { s32 status = IXGBE_SUCCESS; u32 time_out; @@ -669,7 +653,7 @@ ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, ixgbe_link_speed *speed, DEBUGFUNC("ixgbe_check_phy_link_tnx"); /* Initialize speed and link to default case */ - *link_up = false; + *link_up = FALSE; *speed = IXGBE_LINK_SPEED_10GB_FULL; /* @@ -680,15 +664,15 @@ ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, ixgbe_link_speed *speed, for (time_out = 0; time_out < max_time_out; time_out++) { usec_delay(10); status = hw->phy.ops.read_reg(hw, - IXGBE_MDIO_VENDOR_SPECIFIC_1_STATUS, - IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, - &phy_data); + IXGBE_MDIO_VENDOR_SPECIFIC_1_STATUS, + IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, + &phy_data); phy_link = phy_data & - IXGBE_MDIO_VENDOR_SPECIFIC_1_LINK_STATUS; + IXGBE_MDIO_VENDOR_SPECIFIC_1_LINK_STATUS; phy_speed = phy_data & - IXGBE_MDIO_VENDOR_SPECIFIC_1_SPEED_STATUS; + IXGBE_MDIO_VENDOR_SPECIFIC_1_SPEED_STATUS; if (phy_link == IXGBE_MDIO_VENDOR_SPECIFIC_1_LINK_STATUS) { - *link_up = true; + *link_up = TRUE; if (phy_speed == IXGBE_MDIO_VENDOR_SPECIFIC_1_SPEED_STATUS) *speed = IXGBE_LINK_SPEED_1GB_FULL; @@ -696,23 +680,22 @@ ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, ixgbe_link_speed *speed, } } - return (status); + return status; } -/* - * ixgbe_setup_phy_link_tnx - Set and restart autoneg - * @hw: pointer to hardware structure +/** + * ixgbe_setup_phy_link_tnx - Set and restart autoneg + * @hw: pointer to hardware structure * - * Restart autonegotiation and PHY and waits for completion. - */ -s32 -ixgbe_setup_phy_link_tnx(struct ixgbe_hw *hw) + * Restart autonegotiation and PHY and waits for completion. + **/ +s32 ixgbe_setup_phy_link_tnx(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 time_out; u32 max_time_out = 10; u16 autoneg_reg = IXGBE_MII_AUTONEG_REG; - bool autoneg = false; + bool autoneg = FALSE; ixgbe_link_speed speed; DEBUGFUNC("ixgbe_setup_phy_link_tnx"); @@ -722,64 +705,64 @@ ixgbe_setup_phy_link_tnx(struct ixgbe_hw *hw) if (speed & IXGBE_LINK_SPEED_10GB_FULL) { /* Set or unset auto-negotiation 10G advertisement */ hw->phy.ops.read_reg(hw, IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_10GBASE_T_ADVERTISE; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_10GB_FULL) autoneg_reg |= IXGBE_MII_10GBASE_T_ADVERTISE; hw->phy.ops.write_reg(hw, IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } if (speed & IXGBE_LINK_SPEED_1GB_FULL) { /* Set or unset auto-negotiation 1G advertisement */ hw->phy.ops.read_reg(hw, IXGBE_MII_AUTONEG_XNP_TX_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_1GBASE_T_ADVERTISE_XNP_TX; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_1GB_FULL) autoneg_reg |= IXGBE_MII_1GBASE_T_ADVERTISE_XNP_TX; hw->phy.ops.write_reg(hw, IXGBE_MII_AUTONEG_XNP_TX_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } if (speed & IXGBE_LINK_SPEED_100_FULL) { /* Set or unset auto-negotiation 100M advertisement */ hw->phy.ops.read_reg(hw, IXGBE_MII_AUTONEG_ADVERTISE_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= ~IXGBE_MII_100BASE_T_ADVERTISE; if (hw->phy.autoneg_advertised & IXGBE_LINK_SPEED_100_FULL) autoneg_reg |= IXGBE_MII_100BASE_T_ADVERTISE; hw->phy.ops.write_reg(hw, IXGBE_MII_AUTONEG_ADVERTISE_REG, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + autoneg_reg); } /* Restart PHY autonegotiation and wait for completion */ hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_CONTROL, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, &autoneg_reg); autoneg_reg |= IXGBE_MII_RESTART; hw->phy.ops.write_reg(hw, IXGBE_MDIO_AUTO_NEG_CONTROL, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, autoneg_reg); /* Wait for autonegotiation to finish */ for (time_out = 0; time_out < max_time_out; time_out++) { usec_delay(10); /* Restart PHY autonegotiation and wait for completion */ status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_AUTO_NEG_STATUS, - IXGBE_MDIO_AUTO_NEG_DEV_TYPE, - &autoneg_reg); + IXGBE_MDIO_AUTO_NEG_DEV_TYPE, + &autoneg_reg); autoneg_reg &= IXGBE_MII_AUTONEG_COMPLETE; if (autoneg_reg == IXGBE_MII_AUTONEG_COMPLETE) { @@ -792,55 +775,55 @@ ixgbe_setup_phy_link_tnx(struct ixgbe_hw *hw) DEBUGOUT("ixgbe_setup_phy_link_tnx: time out"); } - return (status); + return status; } -/* - * ixgbe_get_phy_firmware_version_tnx - Gets the PHY Firmware Version - * @hw: pointer to hardware structure - * @firmware_version: pointer to the PHY Firmware Version - */ -s32 -ixgbe_get_phy_firmware_version_tnx(struct ixgbe_hw *hw, u16 *firmware_version) +/** + * ixgbe_get_phy_firmware_version_tnx - Gets the PHY Firmware Version + * @hw: pointer to hardware structure + * @firmware_version: pointer to the PHY Firmware Version + **/ +s32 ixgbe_get_phy_firmware_version_tnx(struct ixgbe_hw *hw, + u16 *firmware_version) { s32 status = IXGBE_SUCCESS; DEBUGFUNC("ixgbe_get_phy_firmware_version_tnx"); status = hw->phy.ops.read_reg(hw, TNX_FW_REV, - IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, firmware_version); + IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, + firmware_version); - return (status); + return status; } -/* - * ixgbe_get_phy_firmware_version_generic - Gets the PHY Firmware Version - * @hw: pointer to hardware structure - * @firmware_version: pointer to the PHY Firmware Version - */ -s32 -ixgbe_get_phy_firmware_version_generic(struct ixgbe_hw *hw, - u16 *firmware_version) +/** + * ixgbe_get_phy_firmware_version_generic - Gets the PHY Firmware Version + * @hw: pointer to hardware structure + * @firmware_version: pointer to the PHY Firmware Version + **/ +s32 ixgbe_get_phy_firmware_version_generic(struct ixgbe_hw *hw, + u16 *firmware_version) { s32 status = IXGBE_SUCCESS; DEBUGFUNC("ixgbe_get_phy_firmware_version_generic"); status = hw->phy.ops.read_reg(hw, AQ_FW_REV, - IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, firmware_version); + IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE, + firmware_version); - return (status); + return status; } -/* - * ixgbe_reset_phy_nl - Performs a PHY reset - * @hw: pointer to hardware structure - */ -s32 -ixgbe_reset_phy_nl(struct ixgbe_hw *hw) +/** + * ixgbe_reset_phy_nl - Performs a PHY reset + * @hw: pointer to hardware structure + **/ +s32 ixgbe_reset_phy_nl(struct ixgbe_hw *hw) { u16 phy_offset, control, eword, edata, block_crc; - bool end_data = false; + bool end_data = FALSE; u16 list_offset, data_offset; u16 phy_data = 0; s32 ret_val = IXGBE_SUCCESS; @@ -849,16 +832,16 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_reset_phy_nl"); hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_XS_CONTROL, - IXGBE_MDIO_PHY_XS_DEV_TYPE, &phy_data); + IXGBE_MDIO_PHY_XS_DEV_TYPE, &phy_data); /* reset the PHY and poll for completion */ hw->phy.ops.write_reg(hw, IXGBE_MDIO_PHY_XS_CONTROL, - IXGBE_MDIO_PHY_XS_DEV_TYPE, - (phy_data | IXGBE_MDIO_PHY_XS_RESET)); + IXGBE_MDIO_PHY_XS_DEV_TYPE, + (phy_data | IXGBE_MDIO_PHY_XS_RESET)); for (i = 0; i < 100; i++) { hw->phy.ops.read_reg(hw, IXGBE_MDIO_PHY_XS_CONTROL, - IXGBE_MDIO_PHY_XS_DEV_TYPE, &phy_data); + IXGBE_MDIO_PHY_XS_DEV_TYPE, &phy_data); if ((phy_data & IXGBE_MDIO_PHY_XS_RESET) == 0) break; msec_delay(10); @@ -872,7 +855,7 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) /* Get init offsets */ ret_val = ixgbe_get_sfp_init_sequence_offsets(hw, &list_offset, - &data_offset); + &data_offset); if (ret_val != IXGBE_SUCCESS) goto out; @@ -884,7 +867,7 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) */ ret_val = hw->eeprom.ops.read(hw, data_offset, &eword); control = (eword & IXGBE_CONTROL_MASK_NL) >> - IXGBE_CONTROL_SHIFT_NL; + IXGBE_CONTROL_SHIFT_NL; edata = eword & IXGBE_DATA_MASK_NL; switch (control) { case IXGBE_DELAY_NL: @@ -895,13 +878,14 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) case IXGBE_DATA_NL: DEBUGOUT("DATA: \n"); data_offset++; - hw->eeprom.ops.read(hw, data_offset++, &phy_offset); + hw->eeprom.ops.read(hw, data_offset++, + &phy_offset); for (i = 0; i < edata; i++) { hw->eeprom.ops.read(hw, data_offset, &eword); hw->phy.ops.write_reg(hw, phy_offset, - IXGBE_TWINAX_DEV, eword); + IXGBE_TWINAX_DEV, eword); DEBUGOUT2("Wrote %4.4x to %4.4x\n", eword, - phy_offset); + phy_offset); data_offset++; phy_offset++; } @@ -911,7 +895,7 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) DEBUGOUT("CONTROL: \n"); if (edata == IXGBE_CONTROL_EOL_NL) { DEBUGOUT("EOL\n"); - end_data = true; + end_data = TRUE; } else if (edata == IXGBE_CONTROL_SOL_NL) { DEBUGOUT("SOL\n"); } else { @@ -928,17 +912,16 @@ ixgbe_reset_phy_nl(struct ixgbe_hw *hw) } out: - return (ret_val); + return ret_val; } -/* - * ixgbe_identify_sfp_module_generic - Identifies SFP module - * @hw: pointer to hardware structure +/** + * ixgbe_identify_sfp_module_generic - Identifies SFP modules + * @hw: pointer to hardware structure * - * Searches for and identifies the SFP module and assigns appropriate PHY type. - */ -s32 -ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) + * Searches for and identifies the SFP module and assigns appropriate PHY type. + **/ +s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_PHY_ADDR_INVALID; u32 vendor_oui = 0; @@ -960,17 +943,13 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) } status = hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_IDENTIFIER, &identifier); + IXGBE_SFF_IDENTIFIER, + &identifier); - if (status == IXGBE_ERR_SFP_NOT_PRESENT || status == IXGBE_ERR_I2C) { - status = IXGBE_ERR_SFP_NOT_PRESENT; - hw->phy.sfp_type = ixgbe_sfp_type_not_present; - if (hw->phy.type != ixgbe_phy_nl) { - hw->phy.id = 0; - hw->phy.type = ixgbe_phy_unknown; - } - goto out; - } + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; /* LAN ID is needed for sfp_type determination */ hw->mac.ops.set_lan_id(hw); @@ -979,28 +958,46 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) hw->phy.type = ixgbe_phy_sfp_unsupported; status = IXGBE_ERR_SFP_NOT_SUPPORTED; } else { - hw->phy.ops.read_i2c_eeprom(hw, IXGBE_SFF_1GBE_COMP_CODES, - &comp_codes_1g); - hw->phy.ops.read_i2c_eeprom(hw, IXGBE_SFF_10GBE_COMP_CODES, - &comp_codes_10g); - hw->phy.ops.read_i2c_eeprom(hw, IXGBE_SFF_CABLE_TECHNOLOGY, - &cable_tech); - - /* - * ID Module - * ============ - * 0 SFP_DA_CU - * 1 SFP_SR - * 2 SFP_LR - * 3 SFP_DA_CORE0 - 82599-specific - * 4 SFP_DA_CORE1 - 82599-specific - * 5 SFP_SR/LR_CORE0 - 82599-specific - * 6 SFP_SR/LR_CORE1 - 82599-specific - * 7 SFP_act_lmt_DA_CORE0 - 82599-specific - * 8 SFP_act_lmt_DA_CORE1 - 82599-specific - * 9 SFP_1g_cu_CORE0 - 82599-specific - * 10 SFP_1g_cu_CORE1 - 82599-specific - */ + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_1GBE_COMP_CODES, + &comp_codes_1g); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; + + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_10GBE_COMP_CODES, + &comp_codes_10g); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_CABLE_TECHNOLOGY, + &cable_tech); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; + + /* ID Module + * ========= + * 0 SFP_DA_CU + * 1 SFP_SR + * 2 SFP_LR + * 3 SFP_DA_CORE0 - 82599-specific + * 4 SFP_DA_CORE1 - 82599-specific + * 5 SFP_SR/LR_CORE0 - 82599-specific + * 6 SFP_SR/LR_CORE1 - 82599-specific + * 7 SFP_act_lmt_DA_CORE0 - 82599-specific + * 8 SFP_act_lmt_DA_CORE1 - 82599-specific + * 9 SFP_1g_cu_CORE0 - 82599-specific + * 10 SFP_1g_cu_CORE1 - 82599-specific + */ if (hw->mac.type == ixgbe_mac_82598EB) { if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) hw->phy.sfp_type = ixgbe_sfp_type_da_cu; @@ -1014,77 +1011,98 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) { if (hw->bus.lan_id == 0) hw->phy.sfp_type = - ixgbe_sfp_type_da_cu_core0; + ixgbe_sfp_type_da_cu_core0; else hw->phy.sfp_type = - ixgbe_sfp_type_da_cu_core1; + ixgbe_sfp_type_da_cu_core1; } else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) { hw->phy.ops.read_i2c_eeprom( - hw, IXGBE_SFF_CABLE_SPEC_COMP, &cable_spec); + hw, IXGBE_SFF_CABLE_SPEC_COMP, + &cable_spec); if (cable_spec & IXGBE_SFF_DA_SPEC_ACTIVE_LIMITING) { if (hw->bus.lan_id == 0) - hw->phy.sfp_type = - ixgbe_sfp_type_da_act_lmt_core0; + hw->phy.sfp_type = + ixgbe_sfp_type_da_act_lmt_core0; else + hw->phy.sfp_type = + ixgbe_sfp_type_da_act_lmt_core1; + } else { hw->phy.sfp_type = - ixgbe_sfp_type_da_act_lmt_core1; - } else - hw->phy.sfp_type = - ixgbe_sfp_type_unknown; + ixgbe_sfp_type_unknown; + } } else if (comp_codes_10g & - (IXGBE_SFF_10GBASESR_CAPABLE | - IXGBE_SFF_10GBASELR_CAPABLE)) { + (IXGBE_SFF_10GBASESR_CAPABLE | + IXGBE_SFF_10GBASELR_CAPABLE)) { if (hw->bus.lan_id == 0) hw->phy.sfp_type = - ixgbe_sfp_type_srlr_core0; + ixgbe_sfp_type_srlr_core0; else hw->phy.sfp_type = - ixgbe_sfp_type_srlr_core1; + ixgbe_sfp_type_srlr_core1; } else if (comp_codes_1g & IXGBE_SFF_1GBASET_CAPABLE) { if (hw->bus.lan_id == 0) hw->phy.sfp_type = - ixgbe_sfp_type_1g_cu_core0; + ixgbe_sfp_type_1g_cu_core0; else hw->phy.sfp_type = - ixgbe_sfp_type_1g_cu_core1; + ixgbe_sfp_type_1g_cu_core1; } else { hw->phy.sfp_type = ixgbe_sfp_type_unknown; } } if (hw->phy.sfp_type != stored_sfp_type) - hw->phy.sfp_setup_needed = true; + hw->phy.sfp_setup_needed = TRUE; /* Determine if the SFP+ PHY is dual speed or not. */ - hw->phy.multispeed_fiber = false; + hw->phy.multispeed_fiber = FALSE; if (((comp_codes_1g & IXGBE_SFF_1GBASESX_CAPABLE) && - (comp_codes_10g & IXGBE_SFF_10GBASESR_CAPABLE)) || - ((comp_codes_1g & IXGBE_SFF_1GBASELX_CAPABLE) && - (comp_codes_10g & IXGBE_SFF_10GBASELR_CAPABLE))) - hw->phy.multispeed_fiber = true; + (comp_codes_10g & IXGBE_SFF_10GBASESR_CAPABLE)) || + ((comp_codes_1g & IXGBE_SFF_1GBASELX_CAPABLE) && + (comp_codes_10g & IXGBE_SFF_10GBASELR_CAPABLE))) + hw->phy.multispeed_fiber = TRUE; /* Determine PHY vendor */ if (hw->phy.type != ixgbe_phy_nl) { hw->phy.id = identifier; - hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_VENDOR_OUI_BYTE0, &oui_bytes[0]); - hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_VENDOR_OUI_BYTE1, &oui_bytes[1]); - hw->phy.ops.read_i2c_eeprom(hw, - IXGBE_SFF_VENDOR_OUI_BYTE2, &oui_bytes[2]); + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_VENDOR_OUI_BYTE0, + &oui_bytes[0]); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; + + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_VENDOR_OUI_BYTE1, + &oui_bytes[1]); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; + + status = hw->phy.ops.read_i2c_eeprom(hw, + IXGBE_SFF_VENDOR_OUI_BYTE2, + &oui_bytes[2]); + + if (status == IXGBE_ERR_SWFW_SYNC || + status == IXGBE_ERR_I2C || + status == IXGBE_ERR_SFP_NOT_PRESENT) + goto err_read_i2c_eeprom; vendor_oui = - ((oui_bytes[0] << - IXGBE_SFF_VENDOR_OUI_BYTE0_SHIFT) | - (oui_bytes[1] << IXGBE_SFF_VENDOR_OUI_BYTE1_SHIFT) | - (oui_bytes[2] << IXGBE_SFF_VENDOR_OUI_BYTE2_SHIFT)); + ((oui_bytes[0] << IXGBE_SFF_VENDOR_OUI_BYTE0_SHIFT) | + (oui_bytes[1] << IXGBE_SFF_VENDOR_OUI_BYTE1_SHIFT) | + (oui_bytes[2] << IXGBE_SFF_VENDOR_OUI_BYTE2_SHIFT)); switch (vendor_oui) { case IXGBE_SFF_VENDOR_OUI_TYCO: if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) hw->phy.type = - ixgbe_phy_sfp_passive_tyco; + ixgbe_phy_sfp_passive_tyco; break; case IXGBE_SFF_VENDOR_OUI_FTL: if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) @@ -1101,10 +1119,10 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) default: if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) hw->phy.type = - ixgbe_phy_sfp_passive_unknown; + ixgbe_phy_sfp_passive_unknown; else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) hw->phy.type = - ixgbe_phy_sfp_active_unknown; + ixgbe_phy_sfp_active_unknown; else hw->phy.type = ixgbe_phy_sfp_unknown; break; @@ -1118,10 +1136,10 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) goto out; } - /* Verify supporteed 1G SFP modules */ + /* Verify supported 1G SFP modules */ if (comp_codes_10g == 0 && !(hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core1 || - hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core0)) { + hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core0)) { hw->phy.type = ixgbe_phy_sfp_unsupported; status = IXGBE_ERR_SFP_NOT_SUPPORTED; goto out; @@ -1136,7 +1154,7 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) (void) ixgbe_get_device_caps(hw, &enforce_sfp); if (!(enforce_sfp & IXGBE_DEVICE_CAPS_ALLOW_ANY_SFP) && !((hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core0) || - (hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core1))) { + (hw->phy.sfp_type == ixgbe_sfp_type_1g_cu_core1))) { /* Make sure we're a supported PHY type */ if (hw->phy.type == ixgbe_phy_sfp_intel) { status = IXGBE_SUCCESS; @@ -1151,21 +1169,29 @@ ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) } out: - return (status); -} + return status; +err_read_i2c_eeprom: + hw->phy.sfp_type = ixgbe_sfp_type_not_present; + if (hw->phy.type != ixgbe_phy_nl) { + hw->phy.id = 0; + hw->phy.type = ixgbe_phy_unknown; + } + return IXGBE_ERR_SFP_NOT_PRESENT; +} -/* - * ixgbe_get_sfp_init_sequence_offsets - Provides offset of PHY init sequence - * @hw: pointer to hardware structure - * @list_offset: offset to the SFP ID list - * @data_offset: offset to the SFP data block +/** + * ixgbe_get_sfp_init_sequence_offsets - Provides offset of PHY init sequence + * @hw: pointer to hardware structure + * @list_offset: offset to the SFP ID list + * @data_offset: offset to the SFP data block * - * Checks the MAC's EEPROM to see if it supports a given SFP+ module type, if - * so it returns the offsets to the phy init sequence block. - */ + * Checks the MAC's EEPROM to see if it supports a given SFP+ module type, if + * so it returns the offsets to the phy init sequence block. + **/ s32 ixgbe_get_sfp_init_sequence_offsets(struct ixgbe_hw *hw, - u16 *list_offset, u16 *data_offset) + u16 *list_offset, + u16 *data_offset) { u16 sfp_id; u16 sfp_type = hw->phy.sfp_type; @@ -1173,14 +1199,14 @@ s32 ixgbe_get_sfp_init_sequence_offsets(struct ixgbe_hw *hw, DEBUGFUNC("ixgbe_get_sfp_init_sequence_offsets"); if (hw->phy.sfp_type == ixgbe_sfp_type_unknown) - return (IXGBE_ERR_SFP_NOT_SUPPORTED); + return IXGBE_ERR_SFP_NOT_SUPPORTED; if (hw->phy.sfp_type == ixgbe_sfp_type_not_present) - return (IXGBE_ERR_SFP_NOT_PRESENT); + return IXGBE_ERR_SFP_NOT_PRESENT; if ((hw->device_id == IXGBE_DEV_ID_82598_SR_DUAL_PORT_EM) && (hw->phy.sfp_type == ixgbe_sfp_type_da_cu)) - return (IXGBE_ERR_SFP_NOT_SUPPORTED); + return IXGBE_ERR_SFP_NOT_SUPPORTED; /* * Limiting active cables and 1G Phys must be initialized as @@ -1190,14 +1216,14 @@ s32 ixgbe_get_sfp_init_sequence_offsets(struct ixgbe_hw *hw, sfp_type == ixgbe_sfp_type_1g_cu_core0) sfp_type = ixgbe_sfp_type_srlr_core0; else if (sfp_type == ixgbe_sfp_type_da_act_lmt_core1 || - sfp_type == ixgbe_sfp_type_1g_cu_core1) + sfp_type == ixgbe_sfp_type_1g_cu_core1) sfp_type = ixgbe_sfp_type_srlr_core1; /* Read offset to PHY init contents */ hw->eeprom.ops.read(hw, IXGBE_PHY_INIT_OFFSET_NL, list_offset); if ((!*list_offset) || (*list_offset == 0xFFFF)) - return (IXGBE_ERR_SFP_NO_INIT_SEQ_PRESENT); + return IXGBE_ERR_SFP_NO_INIT_SEQ_PRESENT; /* Shift offset to first ID word */ (*list_offset)++; @@ -1214,72 +1240,72 @@ s32 ixgbe_get_sfp_init_sequence_offsets(struct ixgbe_hw *hw, hw->eeprom.ops.read(hw, *list_offset, data_offset); if ((!*data_offset) || (*data_offset == 0xFFFF)) { DEBUGOUT("SFP+ module not supported\n"); - return (IXGBE_ERR_SFP_NOT_SUPPORTED); + return IXGBE_ERR_SFP_NOT_SUPPORTED; } else { break; } } else { (*list_offset) += 2; if (hw->eeprom.ops.read(hw, *list_offset, &sfp_id)) - return (IXGBE_ERR_PHY); + return IXGBE_ERR_PHY; } } if (sfp_id == IXGBE_PHY_INIT_END_NL) { DEBUGOUT("No matching SFP+ module found\n"); - return (IXGBE_ERR_SFP_NOT_SUPPORTED); + return IXGBE_ERR_SFP_NOT_SUPPORTED; } - return (IXGBE_SUCCESS); + return IXGBE_SUCCESS; } -/* - * ixgbe_read_i2c_eeprom_generic - Reads 8 bit EEPROM word over I2C interface - * @hw: pointer to hardware structure - * @byte_offset: EEPROM byte offset to read - * @eeprom_data: value read +/** + * ixgbe_read_i2c_eeprom_generic - Reads 8 bit EEPROM word over I2C interface + * @hw: pointer to hardware structure + * @byte_offset: EEPROM byte offset to read + * @eeprom_data: value read * - * Performs byte read operation to SFP module's EEPROM over I2C interface. - */ -s32 -ixgbe_read_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 *eeprom_data) + * Performs byte read operation to SFP module's EEPROM over I2C interface. + **/ +s32 ixgbe_read_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset, + u8 *eeprom_data) { DEBUGFUNC("ixgbe_read_i2c_eeprom_generic"); - return (hw->phy.ops.read_i2c_byte(hw, byte_offset, - IXGBE_I2C_EEPROM_DEV_ADDR, eeprom_data)); + return hw->phy.ops.read_i2c_byte(hw, byte_offset, + IXGBE_I2C_EEPROM_DEV_ADDR, + eeprom_data); } -/* - * ixgbe_write_i2c_eeprom_generic - Writes 8 bit EEPROM word over I2C interface - * @hw: pointer to hardware structure - * @byte_offset: EEPROM byte offset to write - * @eeprom_data: value to write +/** + * ixgbe_write_i2c_eeprom_generic - Writes 8 bit EEPROM word over I2C interface + * @hw: pointer to hardware structure + * @byte_offset: EEPROM byte offset to write + * @eeprom_data: value to write * - * Performs byte write operation to SFP module's EEPROM over I2C interface. - */ + * Performs byte write operation to SFP module's EEPROM over I2C interface. + **/ s32 ixgbe_write_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 eeprom_data) + u8 eeprom_data) { DEBUGFUNC("ixgbe_write_i2c_eeprom_generic"); - return (hw->phy.ops.write_i2c_byte(hw, byte_offset, - IXGBE_I2C_EEPROM_DEV_ADDR, eeprom_data)); + return hw->phy.ops.write_i2c_byte(hw, byte_offset, + IXGBE_I2C_EEPROM_DEV_ADDR, + eeprom_data); } -/* - * ixgbe_read_i2c_byte_generic - Reads 8 bit word over I2C - * @hw: pointer to hardware structure - * @byte_offset: byte offset to read - * @data: value read +/** + * ixgbe_read_i2c_byte_generic - Reads 8 bit word over I2C + * @hw: pointer to hardware structure + * @byte_offset: byte offset to read + * @data: value read * - * Performs byte read operation to SFP module's EEPROM over I2C interface at - * a specified deivce address. - */ -s32 -ixgbe_read_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 dev_addr, u8 *data) + * Performs byte read operation to SFP module's EEPROM over I2C interface at + * a specified deivce address. + **/ +s32 ixgbe_read_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, + u8 dev_addr, u8 *data) { s32 status = IXGBE_SUCCESS; u32 max_retry = 10; @@ -1350,26 +1376,26 @@ fail: DEBUGOUT("I2C byte read error - Retrying.\n"); else DEBUGOUT("I2C byte read error.\n"); + } while (retry < max_retry); ixgbe_release_swfw_sync(hw, swfw_mask); read_byte_out: - return (status); + return status; } -/* - * ixgbe_write_i2c_byte_generic - Writes 8 bit word over I2C - * @hw: pointer to hardware structure - * @byte_offset: byte offset to write - * @data: value to write +/** + * ixgbe_write_i2c_byte_generic - Writes 8 bit word over I2C + * @hw: pointer to hardware structure + * @byte_offset: byte offset to write + * @data: value to write * - * Performs byte write operation to SFP module's EEPROM over I2C interface at - * a specified device address. - */ -s32 -ixgbe_write_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 dev_addr, u8 data) + * Performs byte write operation to SFP module's EEPROM over I2C interface at + * a specified device address. + **/ +s32 ixgbe_write_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, + u8 dev_addr, u8 data) { s32 status = IXGBE_SUCCESS; u32 max_retry = 1; @@ -1430,17 +1456,16 @@ fail: ixgbe_release_swfw_sync(hw, swfw_mask); write_byte_out: - return (status); + return status; } -/* - * ixgbe_i2c_start - Sets I2C start condition - * @hw: pointer to hardware structure +/** + * ixgbe_i2c_start - Sets I2C start condition + * @hw: pointer to hardware structure * - * Sets I2C start condition (High -> Low on SDA while SCL is High) - */ -static void -ixgbe_i2c_start(struct ixgbe_hw *hw) + * Sets I2C start condition (High -> Low on SDA while SCL is High) + **/ +static void ixgbe_i2c_start(struct ixgbe_hw *hw) { u32 i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); @@ -1462,16 +1487,16 @@ ixgbe_i2c_start(struct ixgbe_hw *hw) /* Minimum low period of clock is 4.7 us */ usec_delay(IXGBE_I2C_T_LOW); + } -/* - * ixgbe_i2c_stop - Sets I2C stop condition - * @hw: pointer to hardware structure +/** + * ixgbe_i2c_stop - Sets I2C stop condition + * @hw: pointer to hardware structure * - * Sets I2C stop condition (Low -> High on SDA while SCL is High) - */ -static void -ixgbe_i2c_stop(struct ixgbe_hw *hw) + * Sets I2C stop condition (Low -> High on SDA while SCL is High) + **/ +static void ixgbe_i2c_stop(struct ixgbe_hw *hw) { u32 i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); @@ -1486,19 +1511,18 @@ ixgbe_i2c_stop(struct ixgbe_hw *hw) (void) ixgbe_set_i2c_data(hw, &i2cctl, 1); - /* bus free time between stop and start (4.7us) */ + /* bus free time between stop and start (4.7us)*/ usec_delay(IXGBE_I2C_T_BUF); } -/* - * ixgbe_clock_in_i2c_byte - Clocks in one byte via I2C - * @hw: pointer to hardware structure - * @data: data byte to clock in +/** + * ixgbe_clock_in_i2c_byte - Clocks in one byte via I2C + * @hw: pointer to hardware structure + * @data: data byte to clock in * - * Clocks in one byte data via I2C data/clock - */ -static s32 -ixgbe_clock_in_i2c_byte(struct ixgbe_hw *hw, u8 *data) + * Clocks in one byte data via I2C data/clock + **/ +static s32 ixgbe_clock_in_i2c_byte(struct ixgbe_hw *hw, u8 *data) { s32 status = IXGBE_SUCCESS; s32 i; @@ -1508,24 +1532,23 @@ ixgbe_clock_in_i2c_byte(struct ixgbe_hw *hw, u8 *data) for (i = 7; i >= 0; i--) { status = ixgbe_clock_in_i2c_bit(hw, &bit); - *data |= bit<<i; + *data |= bit << i; if (status != IXGBE_SUCCESS) break; } - return (status); + return status; } -/* - * ixgbe_clock_out_i2c_byte - Clocks out one byte via I2C - * @hw: pointer to hardware structure - * @data: data byte clocked out +/** + * ixgbe_clock_out_i2c_byte - Clocks out one byte via I2C + * @hw: pointer to hardware structure + * @data: data byte clocked out * - * Clocks out one byte data via I2C data/clock - */ -static s32 -ixgbe_clock_out_i2c_byte(struct ixgbe_hw *hw, u8 data) + * Clocks out one byte data via I2C data/clock + **/ +static s32 ixgbe_clock_out_i2c_byte(struct ixgbe_hw *hw, u8 data) { s32 status = IXGBE_SUCCESS; s32 i; @@ -1547,17 +1570,16 @@ ixgbe_clock_out_i2c_byte(struct ixgbe_hw *hw, u8 data) i2cctl |= IXGBE_I2C_DATA_OUT; IXGBE_WRITE_REG(hw, IXGBE_I2CCTL, i2cctl); - return (status); + return status; } -/* - * ixgbe_get_i2c_ack - Polls for I2C ACK - * @hw: pointer to hardware structure +/** + * ixgbe_get_i2c_ack - Polls for I2C ACK + * @hw: pointer to hardware structure * - * Clocks in/out one bit via I2C data/clock - */ -static s32 -ixgbe_get_i2c_ack(struct ixgbe_hw *hw) + * Clocks in/out one bit via I2C data/clock + **/ +static s32 ixgbe_get_i2c_ack(struct ixgbe_hw *hw) { s32 status; u32 i = 0; @@ -1575,10 +1597,8 @@ ixgbe_get_i2c_ack(struct ixgbe_hw *hw) /* Minimum high period of clock is 4us */ usec_delay(IXGBE_I2C_T_HIGH); - /* - * Poll for ACK. Note that ACK in I2C spec is - * transition from 1 to 0 - */ + /* Poll for ACK. Note that ACK in I2C spec is + * transition from 1 to 0 */ for (i = 0; i < timeout; i++) { i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); ack = ixgbe_get_i2c_data(&i2cctl); @@ -1599,18 +1619,17 @@ ixgbe_get_i2c_ack(struct ixgbe_hw *hw) usec_delay(IXGBE_I2C_T_LOW); out: - return (status); + return status; } -/* - * ixgbe_clock_in_i2c_bit - Clocks in one bit via I2C data/clock - * @hw: pointer to hardware structure - * @data: read data value +/** + * ixgbe_clock_in_i2c_bit - Clocks in one bit via I2C data/clock + * @hw: pointer to hardware structure + * @data: read data value * - * Clocks in one bit via I2C data/clock - */ -static s32 -ixgbe_clock_in_i2c_bit(struct ixgbe_hw *hw, bool *data) + * Clocks in one bit via I2C data/clock + **/ +static s32 ixgbe_clock_in_i2c_bit(struct ixgbe_hw *hw, bool *data) { s32 status; u32 i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); @@ -1630,18 +1649,17 @@ ixgbe_clock_in_i2c_bit(struct ixgbe_hw *hw, bool *data) /* Minimum low period of clock is 4.7 us */ usec_delay(IXGBE_I2C_T_LOW); - return (status); + return status; } -/* - * ixgbe_clock_out_i2c_bit - Clocks in/out one bit via I2C data/clock - * @hw: pointer to hardware structure - * @data: data value to write +/** + * ixgbe_clock_out_i2c_bit - Clocks in/out one bit via I2C data/clock + * @hw: pointer to hardware structure + * @data: data value to write * - * Clocks out one bit via I2C data/clock - */ -static s32 -ixgbe_clock_out_i2c_bit(struct ixgbe_hw *hw, bool data) + * Clocks out one bit via I2C data/clock + **/ +static s32 ixgbe_clock_out_i2c_bit(struct ixgbe_hw *hw, bool data) { s32 status; u32 i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); @@ -1657,8 +1675,7 @@ ixgbe_clock_out_i2c_bit(struct ixgbe_hw *hw, bool data) ixgbe_lower_i2c_clk(hw, &i2cctl); - /* - * Minimum low period of clock is 4.7 us. + /* Minimum low period of clock is 4.7 us. * This also takes care of the data hold time. */ usec_delay(IXGBE_I2C_T_LOW); @@ -1667,18 +1684,16 @@ ixgbe_clock_out_i2c_bit(struct ixgbe_hw *hw, bool data) DEBUGOUT1("I2C data was not set to %X\n", data); } - return (status); + return status; } - -/* - * ixgbe_raise_i2c_clk - Raises the I2C SCL clock - * @hw: pointer to hardware structure - * @i2cctl: Current value of I2CCTL register +/** + * ixgbe_raise_i2c_clk - Raises the I2C SCL clock + * @hw: pointer to hardware structure + * @i2cctl: Current value of I2CCTL register * - * Raises the I2C clock line '0'->'1' - */ -static s32 -ixgbe_raise_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) + * Raises the I2C clock line '0'->'1' + **/ +static s32 ixgbe_raise_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) { s32 status = IXGBE_SUCCESS; @@ -1691,19 +1706,19 @@ ixgbe_raise_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) /* SCL rise time (1000ns) */ usec_delay(IXGBE_I2C_T_RISE); - return (status); + return status; } -/* - * ixgbe_lower_i2c_clk - Lowers the I2C SCL clock - * @hw: pointer to hardware structure - * @i2cctl: Current value of I2CCTL register +/** + * ixgbe_lower_i2c_clk - Lowers the I2C SCL clock + * @hw: pointer to hardware structure + * @i2cctl: Current value of I2CCTL register * - * Lowers the I2C clock line '1'->'0' - */ -static void -ixgbe_lower_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) + * Lowers the I2C clock line '1'->'0' + **/ +static void ixgbe_lower_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) { + DEBUGFUNC("ixgbe_lower_i2c_clk"); *i2cctl &= ~IXGBE_I2C_CLK_OUT; @@ -1714,16 +1729,15 @@ ixgbe_lower_i2c_clk(struct ixgbe_hw *hw, u32 *i2cctl) usec_delay(IXGBE_I2C_T_FALL); } -/* - * ixgbe_set_i2c_data - Sets the I2C data bit - * @hw: pointer to hardware structure - * @i2cctl: Current value of I2CCTL register - * @data: I2C data value (0 or 1) to set +/** + * ixgbe_set_i2c_data - Sets the I2C data bit + * @hw: pointer to hardware structure + * @i2cctl: Current value of I2CCTL register + * @data: I2C data value (0 or 1) to set * - * Sets the I2C data bit - */ -static s32 -ixgbe_set_i2c_data(struct ixgbe_hw *hw, u32 *i2cctl, bool data) + * Sets the I2C data bit + **/ +static s32 ixgbe_set_i2c_data(struct ixgbe_hw *hw, u32 *i2cctl, bool data) { s32 status = IXGBE_SUCCESS; @@ -1746,18 +1760,17 @@ ixgbe_set_i2c_data(struct ixgbe_hw *hw, u32 *i2cctl, bool data) DEBUGOUT1("Error - I2C data was not set to %X.\n", data); } - return (status); + return status; } -/* - * ixgbe_get_i2c_data - Reads the I2C SDA data bit - * @hw: pointer to hardware structure - * @i2cctl: Current value of I2CCTL register +/** + * ixgbe_get_i2c_data - Reads the I2C SDA data bit + * @hw: pointer to hardware structure + * @i2cctl: Current value of I2CCTL register * - * Returns the I2C data bit value - */ -static bool -ixgbe_get_i2c_data(u32 *i2cctl) + * Returns the I2C data bit value + **/ +static bool ixgbe_get_i2c_data(u32 *i2cctl) { bool data; @@ -1768,18 +1781,17 @@ ixgbe_get_i2c_data(u32 *i2cctl) else data = 0; - return (data); + return data; } -/* - * ixgbe_i2c_bus_clear - Clears the I2C bus - * @hw: pointer to hardware structure +/** + * ixgbe_i2c_bus_clear - Clears the I2C bus + * @hw: pointer to hardware structure * - * Clears the I2C bus by sending nine clock pulses. - * Used when data line is stuck low. - */ -void -ixgbe_i2c_bus_clear(struct ixgbe_hw *hw) + * Clears the I2C bus by sending nine clock pulses. + * Used when data line is stuck low. + **/ +void ixgbe_i2c_bus_clear(struct ixgbe_hw *hw) { u32 i2cctl = IXGBE_READ_REG(hw, IXGBE_I2CCTL); u32 i; @@ -1798,7 +1810,7 @@ ixgbe_i2c_bus_clear(struct ixgbe_hw *hw) ixgbe_lower_i2c_clk(hw, &i2cctl); - /* Min low period of clock is 4.7us */ + /* Min low period of clock is 4.7us*/ usec_delay(IXGBE_I2C_T_LOW); } @@ -1808,14 +1820,13 @@ ixgbe_i2c_bus_clear(struct ixgbe_hw *hw) ixgbe_i2c_stop(hw); } -/* - * ixgbe_tn_check_overtemp - Checks if an overtemp occured. - * @hw: pointer to hardware structure +/** + * ixgbe_tn_check_overtemp - Checks if an overtemp occured. + * @hw: pointer to hardware structure * - * Checks if the LASI temp alarm status was triggered due to overtemp - */ -s32 -ixgbe_tn_check_overtemp(struct ixgbe_hw *hw) + * Checks if the LASI temp alarm status was triggered due to overtemp + **/ +s32 ixgbe_tn_check_overtemp(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u16 phy_data = 0; @@ -1827,12 +1838,12 @@ ixgbe_tn_check_overtemp(struct ixgbe_hw *hw) /* Check that the LASI temp alarm status was triggered */ hw->phy.ops.read_reg(hw, IXGBE_TN_LASI_STATUS_REG, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &phy_data); + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &phy_data); if (!(phy_data & IXGBE_TN_LASI_STATUS_TEMP_ALARM)) goto out; status = IXGBE_ERR_OVERTEMP; out: - return (status); + return status; } diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_phy.h b/usr/src/uts/common/io/ixgbe/ixgbe_phy.h index a520170490..5c5dfa6d6d 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_phy.h +++ b/usr/src/uts/common/io/ixgbe/ixgbe_phy.h @@ -1,98 +1,99 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.43 scm_061610_003709 */ - -#ifndef _IXGBE_PHY_H -#define _IXGBE_PHY_H +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + +#ifndef _IXGBE_PHY_H_ +#define _IXGBE_PHY_H_ #include "ixgbe_type.h" - -#define IXGBE_I2C_EEPROM_DEV_ADDR 0xA0 +#define IXGBE_I2C_EEPROM_DEV_ADDR 0xA0 /* EEPROM byte offsets */ -#define IXGBE_SFF_IDENTIFIER 0x0 -#define IXGBE_SFF_IDENTIFIER_SFP 0x3 -#define IXGBE_SFF_VENDOR_OUI_BYTE0 0x25 -#define IXGBE_SFF_VENDOR_OUI_BYTE1 0x26 -#define IXGBE_SFF_VENDOR_OUI_BYTE2 0x27 -#define IXGBE_SFF_1GBE_COMP_CODES 0x6 -#define IXGBE_SFF_10GBE_COMP_CODES 0x3 -#define IXGBE_SFF_CABLE_TECHNOLOGY 0x8 -#define IXGBE_SFF_CABLE_SPEC_COMP 0x3C +#define IXGBE_SFF_IDENTIFIER 0x0 +#define IXGBE_SFF_IDENTIFIER_SFP 0x3 +#define IXGBE_SFF_VENDOR_OUI_BYTE0 0x25 +#define IXGBE_SFF_VENDOR_OUI_BYTE1 0x26 +#define IXGBE_SFF_VENDOR_OUI_BYTE2 0x27 +#define IXGBE_SFF_1GBE_COMP_CODES 0x6 +#define IXGBE_SFF_10GBE_COMP_CODES 0x3 +#define IXGBE_SFF_CABLE_TECHNOLOGY 0x8 +#define IXGBE_SFF_CABLE_SPEC_COMP 0x3C /* Bitmasks */ -#define IXGBE_SFF_DA_PASSIVE_CABLE 0x4 -#define IXGBE_SFF_DA_ACTIVE_CABLE 0x8 -#define IXGBE_SFF_DA_SPEC_ACTIVE_LIMITING 0x4 -#define IXGBE_SFF_1GBASESX_CAPABLE 0x1 -#define IXGBE_SFF_1GBASELX_CAPABLE 0x2 -#define IXGBE_SFF_1GBASET_CAPABLE 0x8 -#define IXGBE_SFF_10GBASESR_CAPABLE 0x10 -#define IXGBE_SFF_10GBASELR_CAPABLE 0x20 -#define IXGBE_I2C_EEPROM_READ_MASK 0x100 -#define IXGBE_I2C_EEPROM_STATUS_MASK 0x3 -#define IXGBE_I2C_EEPROM_STATUS_NO_OPERATION 0x0 -#define IXGBE_I2C_EEPROM_STATUS_PASS 0x1 -#define IXGBE_I2C_EEPROM_STATUS_FAIL 0x2 -#define IXGBE_I2C_EEPROM_STATUS_IN_PROGRESS 0x3 +#define IXGBE_SFF_DA_PASSIVE_CABLE 0x4 +#define IXGBE_SFF_DA_ACTIVE_CABLE 0x8 +#define IXGBE_SFF_DA_SPEC_ACTIVE_LIMITING 0x4 +#define IXGBE_SFF_1GBASESX_CAPABLE 0x1 +#define IXGBE_SFF_1GBASELX_CAPABLE 0x2 +#define IXGBE_SFF_1GBASET_CAPABLE 0x8 +#define IXGBE_SFF_10GBASESR_CAPABLE 0x10 +#define IXGBE_SFF_10GBASELR_CAPABLE 0x20 +#define IXGBE_I2C_EEPROM_READ_MASK 0x100 +#define IXGBE_I2C_EEPROM_STATUS_MASK 0x3 +#define IXGBE_I2C_EEPROM_STATUS_NO_OPERATION 0x0 +#define IXGBE_I2C_EEPROM_STATUS_PASS 0x1 +#define IXGBE_I2C_EEPROM_STATUS_FAIL 0x2 +#define IXGBE_I2C_EEPROM_STATUS_IN_PROGRESS 0x3 /* Flow control defines */ -#define IXGBE_TAF_SYM_PAUSE 0x400 -#define IXGBE_TAF_ASM_PAUSE 0x800 +#define IXGBE_TAF_SYM_PAUSE 0x400 +#define IXGBE_TAF_ASM_PAUSE 0x800 /* Bit-shift macros */ -#define IXGBE_SFF_VENDOR_OUI_BYTE0_SHIFT 24 -#define IXGBE_SFF_VENDOR_OUI_BYTE1_SHIFT 16 -#define IXGBE_SFF_VENDOR_OUI_BYTE2_SHIFT 8 +#define IXGBE_SFF_VENDOR_OUI_BYTE0_SHIFT 24 +#define IXGBE_SFF_VENDOR_OUI_BYTE1_SHIFT 16 +#define IXGBE_SFF_VENDOR_OUI_BYTE2_SHIFT 8 /* Vendor OUIs: format of OUI is 0x[byte0][byte1][byte2][00] */ -#define IXGBE_SFF_VENDOR_OUI_TYCO 0x00407600 -#define IXGBE_SFF_VENDOR_OUI_FTL 0x00906500 -#define IXGBE_SFF_VENDOR_OUI_AVAGO 0x00176A00 -#define IXGBE_SFF_VENDOR_OUI_INTEL 0x001B2100 +#define IXGBE_SFF_VENDOR_OUI_TYCO 0x00407600 +#define IXGBE_SFF_VENDOR_OUI_FTL 0x00906500 +#define IXGBE_SFF_VENDOR_OUI_AVAGO 0x00176A00 +#define IXGBE_SFF_VENDOR_OUI_INTEL 0x001B2100 /* I2C SDA and SCL timing parameters for standard mode */ -#define IXGBE_I2C_T_HD_STA 4 -#define IXGBE_I2C_T_LOW 5 -#define IXGBE_I2C_T_HIGH 4 -#define IXGBE_I2C_T_SU_STA 5 -#define IXGBE_I2C_T_HD_DATA 5 -#define IXGBE_I2C_T_SU_DATA 1 -#define IXGBE_I2C_T_RISE 1 -#define IXGBE_I2C_T_FALL 1 -#define IXGBE_I2C_T_SU_STO 4 -#define IXGBE_I2C_T_BUF 5 - -#define IXGBE_TN_LASI_STATUS_REG 0x9005 -#define IXGBE_TN_LASI_STATUS_TEMP_ALARM 0x0008 +#define IXGBE_I2C_T_HD_STA 4 +#define IXGBE_I2C_T_LOW 5 +#define IXGBE_I2C_T_HIGH 4 +#define IXGBE_I2C_T_SU_STA 5 +#define IXGBE_I2C_T_HD_DATA 5 +#define IXGBE_I2C_T_SU_DATA 1 +#define IXGBE_I2C_T_RISE 1 +#define IXGBE_I2C_T_FALL 1 +#define IXGBE_I2C_T_SU_STO 4 +#define IXGBE_I2C_T_BUF 5 + +#define IXGBE_TN_LASI_STATUS_REG 0x9005 +#define IXGBE_TN_LASI_STATUS_TEMP_ALARM 0x0008 s32 ixgbe_init_phy_ops_generic(struct ixgbe_hw *hw); bool ixgbe_validate_phy_addr(struct ixgbe_hw *hw, u32 phy_addr); @@ -101,36 +102,40 @@ s32 ixgbe_get_phy_id(struct ixgbe_hw *hw); s32 ixgbe_identify_phy_generic(struct ixgbe_hw *hw); s32 ixgbe_reset_phy_generic(struct ixgbe_hw *hw); s32 ixgbe_read_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u16 *phy_data); + u32 device_type, u16 *phy_data); s32 ixgbe_write_phy_reg_generic(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u16 phy_data); + u32 device_type, u16 phy_data); s32 ixgbe_setup_phy_link_generic(struct ixgbe_hw *hw); s32 ixgbe_setup_phy_link_speed_generic(struct ixgbe_hw *hw, - ixgbe_link_speed speed, bool autoneg, bool autoneg_wait_to_complete); + ixgbe_link_speed speed, + bool autoneg, + bool autoneg_wait_to_complete); s32 ixgbe_get_copper_link_capabilities_generic(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *autoneg); + ixgbe_link_speed *speed, + bool *autoneg); /* PHY specific */ s32 ixgbe_check_phy_link_tnx(struct ixgbe_hw *hw, - ixgbe_link_speed *speed, bool *link_up); + ixgbe_link_speed *speed, + bool *link_up); s32 ixgbe_setup_phy_link_tnx(struct ixgbe_hw *hw); s32 ixgbe_get_phy_firmware_version_tnx(struct ixgbe_hw *hw, - u16 *firmware_version); + u16 *firmware_version); s32 ixgbe_get_phy_firmware_version_generic(struct ixgbe_hw *hw, - u16 *firmware_version); + u16 *firmware_version); s32 ixgbe_reset_phy_nl(struct ixgbe_hw *hw); s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw); s32 ixgbe_get_sfp_init_sequence_offsets(struct ixgbe_hw *hw, - u16 *list_offset, u16 *data_offset); + u16 *list_offset, + u16 *data_offset); s32 ixgbe_tn_check_overtemp(struct ixgbe_hw *hw); s32 ixgbe_read_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 dev_addr, u8 *data); + u8 dev_addr, u8 *data); s32 ixgbe_write_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 dev_addr, u8 data); + u8 dev_addr, u8 data); s32 ixgbe_read_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 *eeprom_data); + u8 *eeprom_data); s32 ixgbe_write_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset, - u8 eeprom_data); - -#endif /* _IXGBE_PHY_H */ + u8 eeprom_data); +#endif /* _IXGBE_PHY_H_ */ diff --git a/usr/src/uts/common/io/ixgbe/ixgbe_type.h b/usr/src/uts/common/io/ixgbe/ixgbe_type.h index 099e5f36e3..671a59113f 100644 --- a/usr/src/uts/common/io/ixgbe/ixgbe_type.h +++ b/usr/src/uts/common/io/ixgbe/ixgbe_type.h @@ -1,1369 +1,1398 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at: - * http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When using or redistributing this file, you may do so under the - * License only. No other modification of this header is permitted. - * - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright(c) 2007-2010 Intel Corporation. All rights reserved. - */ - -/* - * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. - */ - -/* IntelVersion: 1.397 scm_061610_003709 */ - -#ifndef _IXGBE_TYPE_H -#define _IXGBE_TYPE_H +/****************************************************************************** + + Copyright (c) 2001-2010, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ + +#ifndef _IXGBE_TYPE_H_ +#define _IXGBE_TYPE_H_ #include "ixgbe_osdep.h" + /* Vendor ID */ -#define IXGBE_INTEL_VENDOR_ID 0x8086 +#define IXGBE_INTEL_VENDOR_ID 0x8086 /* Device IDs */ -#define IXGBE_DEV_ID_82598 0x10B6 -#define IXGBE_DEV_ID_82598_BX 0x1508 -#define IXGBE_DEV_ID_82598AF_DUAL_PORT 0x10C6 -#define IXGBE_DEV_ID_82598AF_SINGLE_PORT 0x10C7 -#define IXGBE_DEV_ID_82598AT 0x10C8 -#define IXGBE_DEV_ID_82598AT2 0x150B -#define IXGBE_DEV_ID_82598EB_SFP_LOM 0x10DB -#define IXGBE_DEV_ID_82598EB_CX4 0x10DD -#define IXGBE_DEV_ID_82598_CX4_DUAL_PORT 0x10EC -#define IXGBE_DEV_ID_82598_DA_DUAL_PORT 0x10F1 -#define IXGBE_DEV_ID_82598_SR_DUAL_PORT_EM 0x10E1 -#define IXGBE_DEV_ID_82598EB_XF_LR 0x10F4 -#define IXGBE_DEV_ID_82599_KX4 0x10F7 -#define IXGBE_DEV_ID_82599_KX4_MEZZ 0x1514 -#define IXGBE_DEV_ID_82599_KR 0x1517 -#define IXGBE_DEV_ID_82599_COMBO_BACKPLANE 0x10F8 -#define IXGBE_SUBDEV_ID_82599_KX4_KR_MEZZ 0x000C -#define IXGBE_DEV_ID_82599_CX4 0x10F9 -#define IXGBE_DEV_ID_82599_SFP 0x10FB -#define IXGBE_DEV_ID_82599_SFP_EM 0x1507 -#define IXGBE_DEV_ID_82599_XAUI_LOM 0x10FC -#define IXGBE_DEV_ID_82599_T3_LOM 0x151C +#define IXGBE_DEV_ID_82598 0x10B6 +#define IXGBE_DEV_ID_82598_BX 0x1508 +#define IXGBE_DEV_ID_82598AF_DUAL_PORT 0x10C6 +#define IXGBE_DEV_ID_82598AF_SINGLE_PORT 0x10C7 +#define IXGBE_DEV_ID_82598AT 0x10C8 +#define IXGBE_DEV_ID_82598AT2 0x150B +#define IXGBE_DEV_ID_82598EB_SFP_LOM 0x10DB +#define IXGBE_DEV_ID_82598EB_CX4 0x10DD +#define IXGBE_DEV_ID_82598_CX4_DUAL_PORT 0x10EC +#define IXGBE_DEV_ID_82598_DA_DUAL_PORT 0x10F1 +#define IXGBE_DEV_ID_82598_SR_DUAL_PORT_EM 0x10E1 +#define IXGBE_DEV_ID_82598EB_XF_LR 0x10F4 +#define IXGBE_DEV_ID_82599_KX4 0x10F7 +#define IXGBE_DEV_ID_82599_KX4_MEZZ 0x1514 +#define IXGBE_DEV_ID_82599_COMBO_BACKPLANE 0x10F8 +#define IXGBE_SUBDEV_ID_82599_KX4_KR_MEZZ 0x000C +#define IXGBE_DEV_ID_82599_CX4 0x10F9 +#define IXGBE_DEV_ID_82599_SFP 0x10FB +#define IXGBE_SUBDEV_ID_82599_SFP 0x11A9 +#define IXGBE_DEV_ID_82599_BACKPLANE_FCOE 0x152A +#define IXGBE_DEV_ID_82599_SFP_FCOE 0x1529 +#define IXGBE_DEV_ID_82599_XAUI_LOM 0x10FC +#define IXGBE_DEV_ID_82599_T3_LOM 0x151C +#define IXGBE_DEV_ID_82599_VF 0x10ED /* General Registers */ -#define IXGBE_CTRL 0x00000 -#define IXGBE_STATUS 0x00008 -#define IXGBE_CTRL_EXT 0x00018 -#define IXGBE_ESDP 0x00020 -#define IXGBE_EODSDP 0x00028 -#define IXGBE_I2CCTL 0x00028 -#define IXGBE_LEDCTL 0x00200 -#define IXGBE_FRTIMER 0x00048 -#define IXGBE_TCPTIMER 0x0004C -#define IXGBE_CORESPARE 0x00600 -#define IXGBE_EXVET 0x05078 +#define IXGBE_CTRL 0x00000 +#define IXGBE_STATUS 0x00008 +#define IXGBE_CTRL_EXT 0x00018 +#define IXGBE_ESDP 0x00020 +#define IXGBE_EODSDP 0x00028 +#define IXGBE_I2CCTL 0x00028 +#define IXGBE_LEDCTL 0x00200 +#define IXGBE_FRTIMER 0x00048 +#define IXGBE_TCPTIMER 0x0004C +#define IXGBE_CORESPARE 0x00600 +#define IXGBE_EXVET 0x05078 /* NVM Registers */ -#define IXGBE_EEC 0x10010 -#define IXGBE_EERD 0x10014 -#define IXGBE_EEWR 0x10018 -#define IXGBE_FLA 0x1001C -#define IXGBE_EEMNGCTL 0x10110 -#define IXGBE_EEMNGDATA 0x10114 -#define IXGBE_FLMNGCTL 0x10118 -#define IXGBE_FLMNGDATA 0x1011C -#define IXGBE_FLMNGCNT 0x10120 -#define IXGBE_FLOP 0x1013C -#define IXGBE_GRC 0x10200 +#define IXGBE_EEC 0x10010 +#define IXGBE_EERD 0x10014 +#define IXGBE_EEWR 0x10018 +#define IXGBE_FLA 0x1001C +#define IXGBE_EEMNGCTL 0x10110 +#define IXGBE_EEMNGDATA 0x10114 +#define IXGBE_FLMNGCTL 0x10118 +#define IXGBE_FLMNGDATA 0x1011C +#define IXGBE_FLMNGCNT 0x10120 +#define IXGBE_FLOP 0x1013C +#define IXGBE_GRC 0x10200 /* General Receive Control */ -#define IXGBE_GRC_MNG 0x00000001 /* Manageability Enable */ -#define IXGBE_GRC_APME 0x00000002 /* APM enabled in EEPROM */ +#define IXGBE_GRC_MNG 0x00000001 /* Manageability Enable */ +#define IXGBE_GRC_APME 0x00000002 /* APM enabled in EEPROM */ -#define IXGBE_VPDDIAG0 0x10204 -#define IXGBE_VPDDIAG1 0x10208 +#define IXGBE_VPDDIAG0 0x10204 +#define IXGBE_VPDDIAG1 0x10208 /* I2CCTL Bit Masks */ -#define IXGBE_I2C_CLK_IN 0x00000001 -#define IXGBE_I2C_CLK_OUT 0x00000002 -#define IXGBE_I2C_DATA_IN 0x00000004 -#define IXGBE_I2C_DATA_OUT 0x00000008 +#define IXGBE_I2C_CLK_IN 0x00000001 +#define IXGBE_I2C_CLK_OUT 0x00000002 +#define IXGBE_I2C_DATA_IN 0x00000004 +#define IXGBE_I2C_DATA_OUT 0x00000008 /* Interrupt Registers */ -#define IXGBE_EICR 0x00800 -#define IXGBE_EICS 0x00808 -#define IXGBE_EIMS 0x00880 -#define IXGBE_EIMC 0x00888 -#define IXGBE_EIAC 0x00810 -#define IXGBE_EIAM 0x00890 -#define IXGBE_EICS_EX(_i) (0x00A90 + (_i) * 4) -#define IXGBE_EIMS_EX(_i) (0x00AA0 + (_i) * 4) -#define IXGBE_EIMC_EX(_i) (0x00AB0 + (_i) * 4) -#define IXGBE_EIAM_EX(_i) (0x00AD0 + (_i) * 4) +#define IXGBE_EICR 0x00800 +#define IXGBE_EICS 0x00808 +#define IXGBE_EIMS 0x00880 +#define IXGBE_EIMC 0x00888 +#define IXGBE_EIAC 0x00810 +#define IXGBE_EIAM 0x00890 +#define IXGBE_EICS_EX(_i) (0x00A90 + (_i) * 4) +#define IXGBE_EIMS_EX(_i) (0x00AA0 + (_i) * 4) +#define IXGBE_EIMC_EX(_i) (0x00AB0 + (_i) * 4) +#define IXGBE_EIAM_EX(_i) (0x00AD0 + (_i) * 4) /* 82599 EITR is only 12 bits, with the lower 3 always zero */ /* * 82598 EITR is 16 bits but set the limits based on the max * supported by all ixgbe hardware */ -#define IXGBE_MAX_INT_RATE 488281 -#define IXGBE_MIN_INT_RATE 956 -#define IXGBE_MAX_EITR 0x00000FF8 -#define IXGBE_MIN_EITR 8 -#define IXGBE_EITR(_i) (((_i) <= 23) ? \ - (0x00820 + ((_i) * 4)) : (0x012300 + (((_i) - 24) * 4))) -#define IXGBE_EITR_ITR_INT_MASK 0x00000FF8 -#define IXGBE_EITR_LLI_MOD 0x00008000 -#define IXGBE_EITR_CNT_WDIS 0x80000000 -#define IXGBE_IVAR(_i) (0x00900 + ((_i) * 4)) /* 24 at 0x900-0x960 */ -#define IXGBE_IVAR_MISC 0x00A00 /* misc MSI-X interrupt causes */ -#define IXGBE_EITRSEL 0x00894 -#define IXGBE_MSIXT 0x00000 /* MSI-X Table. 0x0000 - 0x01C */ -#define IXGBE_MSIXPBA 0x02000 /* MSI-X Pending bit array */ -#define IXGBE_PBACL(_i) (((_i) == 0) ? (0x11068) : (0x110C0 + ((_i) * 4))) -#define IXGBE_GPIE 0x00898 +#define IXGBE_MAX_INT_RATE 488281 +#define IXGBE_MIN_INT_RATE 956 +#define IXGBE_MAX_EITR 0x00000FF8 +#define IXGBE_MIN_EITR 8 +#define IXGBE_EITR(_i) (((_i) <= 23) ? (0x00820 + ((_i) * 4)) : \ + (0x012300 + (((_i) - 24) * 4))) +#define IXGBE_EITR_ITR_INT_MASK 0x00000FF8 +#define IXGBE_EITR_LLI_MOD 0x00008000 +#define IXGBE_EITR_CNT_WDIS 0x80000000 +#define IXGBE_IVAR(_i) (0x00900 + ((_i) * 4)) /* 24 at 0x900-0x960 */ +#define IXGBE_IVAR_MISC 0x00A00 /* misc MSI-X interrupt causes */ +#define IXGBE_EITRSEL 0x00894 +#define IXGBE_MSIXT 0x00000 /* MSI-X Table. 0x0000 - 0x01C */ +#define IXGBE_MSIXPBA 0x02000 /* MSI-X Pending bit array */ +#define IXGBE_PBACL(_i) (((_i) == 0) ? (0x11068) : (0x110C0 + ((_i) * 4))) +#define IXGBE_GPIE 0x00898 /* Flow Control Registers */ -#define IXGBE_FCADBUL 0x03210 -#define IXGBE_FCADBUH 0x03214 -#define IXGBE_FCAMACL 0x04328 -#define IXGBE_FCAMACH 0x0432C -#define IXGBE_FCRTH_82599(_i) (0x03260 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_FCRTL_82599(_i) (0x03220 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_PFCTOP 0x03008 -#define IXGBE_FCTTV(_i) (0x03200 + ((_i) * 4)) /* 4 of these (0-3) */ -#define IXGBE_FCRTL(_i) (0x03220 + ((_i) * 8)) /* 8 of these (0-7) */ -#define IXGBE_FCRTH(_i) (0x03260 + ((_i) * 8)) /* 8 of these (0-7) */ -#define IXGBE_FCRTV 0x032A0 -#define IXGBE_FCCFG 0x03D00 -#define IXGBE_TFCS 0x0CE00 +#define IXGBE_FCADBUL 0x03210 +#define IXGBE_FCADBUH 0x03214 +#define IXGBE_FCAMACL 0x04328 +#define IXGBE_FCAMACH 0x0432C +#define IXGBE_FCRTH_82599(_i) (0x03260 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_FCRTL_82599(_i) (0x03220 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_PFCTOP 0x03008 +#define IXGBE_FCTTV(_i) (0x03200 + ((_i) * 4)) /* 4 of these (0-3) */ +#define IXGBE_FCRTL(_i) (0x03220 + ((_i) * 8)) /* 8 of these (0-7) */ +#define IXGBE_FCRTH(_i) (0x03260 + ((_i) * 8)) /* 8 of these (0-7) */ +#define IXGBE_FCRTV 0x032A0 +#define IXGBE_FCCFG 0x03D00 +#define IXGBE_TFCS 0x0CE00 /* Receive DMA Registers */ -#define IXGBE_RDBAL(_i) (((_i) < 64) ? \ - (0x01000 + ((_i) * 0x40)) : (0x0D000 + ((_i - 64) * 0x40))) -#define IXGBE_RDBAH(_i) (((_i) < 64) ? \ - (0x01004 + ((_i) * 0x40)) : (0x0D004 + ((_i - 64) * 0x40))) -#define IXGBE_RDLEN(_i) (((_i) < 64) ? \ - (0x01008 + ((_i) * 0x40)) : (0x0D008 + ((_i - 64) * 0x40))) -#define IXGBE_RDH(_i) (((_i) < 64) ? \ - (0x01010 + ((_i) * 0x40)) : (0x0D010 + ((_i - 64) * 0x40))) -#define IXGBE_RDT(_i) (((_i) < 64) ? \ - (0x01018 + ((_i) * 0x40)) : (0x0D018 + ((_i - 64) * 0x40))) -#define IXGBE_RXDCTL(_i) (((_i) < 64) ? \ - (0x01028 + ((_i) * 0x40)) : (0x0D028 + ((_i - 64) * 0x40))) -#define IXGBE_RSCCTL(_i) (((_i) < 64) ? \ - (0x0102C + ((_i) * 0x40)) : (0x0D02C + ((_i - 64) * 0x40))) -#define IXGBE_RSCDBU 0x03028 -#define IXGBE_RDDCC 0x02F20 -#define IXGBE_RXMEMWRAP 0x03190 -#define IXGBE_STARCTRL 0x03024 +#define IXGBE_RDBAL(_i) (((_i) < 64) ? (0x01000 + ((_i) * 0x40)) : \ + (0x0D000 + ((_i - 64) * 0x40))) +#define IXGBE_RDBAH(_i) (((_i) < 64) ? (0x01004 + ((_i) * 0x40)) : \ + (0x0D004 + ((_i - 64) * 0x40))) +#define IXGBE_RDLEN(_i) (((_i) < 64) ? (0x01008 + ((_i) * 0x40)) : \ + (0x0D008 + ((_i - 64) * 0x40))) +#define IXGBE_RDH(_i) (((_i) < 64) ? (0x01010 + ((_i) * 0x40)) : \ + (0x0D010 + ((_i - 64) * 0x40))) +#define IXGBE_RDT(_i) (((_i) < 64) ? (0x01018 + ((_i) * 0x40)) : \ + (0x0D018 + ((_i - 64) * 0x40))) +#define IXGBE_RXDCTL(_i) (((_i) < 64) ? (0x01028 + ((_i) * 0x40)) : \ + (0x0D028 + ((_i - 64) * 0x40))) +#define IXGBE_RSCCTL(_i) (((_i) < 64) ? (0x0102C + ((_i) * 0x40)) : \ + (0x0D02C + ((_i - 64) * 0x40))) +#define IXGBE_RSCDBU 0x03028 +#define IXGBE_RDDCC 0x02F20 +#define IXGBE_RXMEMWRAP 0x03190 +#define IXGBE_STARCTRL 0x03024 /* * Split and Replication Receive Control Registers * 00-15 : 0x02100 + n*4 * 16-64 : 0x01014 + n*0x40 * 64-127: 0x0D014 + (n-64)*0x40 */ -#define IXGBE_SRRCTL(_i) (((_i) <= 15) ? (0x02100 + ((_i) * 4)) : \ - (((_i) < 64) ? (0x01014 + ((_i) * 0x40)) : \ - (0x0D014 + ((_i - 64) * 0x40)))) +#define IXGBE_SRRCTL(_i) (((_i) <= 15) ? (0x02100 + ((_i) * 4)) : \ + (((_i) < 64) ? (0x01014 + ((_i) * 0x40)) : \ + (0x0D014 + ((_i - 64) * 0x40)))) /* * Rx DCA Control Register: * 00-15 : 0x02200 + n*4 * 16-64 : 0x0100C + n*0x40 * 64-127: 0x0D00C + (n-64)*0x40 */ -#define IXGBE_DCA_RXCTRL(_i) (((_i) <= 15) ? (0x02200 + ((_i) * 4)) : \ - (((_i) < 64) ? (0x0100C + ((_i) * 0x40)) : \ - (0x0D00C + ((_i - 64) * 0x40)))) -#define IXGBE_RDRXCTL 0x02F00 -#define IXGBE_RDRXCTL_RSC_PUSH 0x80 -/* 8 of these 0x03C00 - 0x03C1C */ -#define IXGBE_RXPBSIZE(_i) (0x03C00 + ((_i) * 4)) -#define IXGBE_RXCTRL 0x03000 -#define IXGBE_DROPEN 0x03D04 -#define IXGBE_RXPBSIZE_SHIFT 10 +#define IXGBE_DCA_RXCTRL(_i) (((_i) <= 15) ? (0x02200 + ((_i) * 4)) : \ + (((_i) < 64) ? (0x0100C + ((_i) * 0x40)) : \ + (0x0D00C + ((_i - 64) * 0x40)))) +#define IXGBE_RDRXCTL 0x02F00 +#define IXGBE_RDRXCTL_RSC_PUSH 0x80 +#define IXGBE_RXPBSIZE(_i) (0x03C00 + ((_i) * 4)) + /* 8 of these 0x03C00 - 0x03C1C */ +#define IXGBE_RXCTRL 0x03000 +#define IXGBE_DROPEN 0x03D04 +#define IXGBE_RXPBSIZE_SHIFT 10 /* Receive Registers */ -#define IXGBE_RXCSUM 0x05000 -#define IXGBE_RFCTL 0x05008 -#define IXGBE_DRECCCTL 0x02F08 -#define IXGBE_DRECCCTL_DISABLE 0 +#define IXGBE_RXCSUM 0x05000 +#define IXGBE_RFCTL 0x05008 +#define IXGBE_DRECCCTL 0x02F08 +#define IXGBE_DRECCCTL_DISABLE 0 + /* Multicast Table Array - 128 entries */ -#define IXGBE_MTA(_i) (0x05200 + ((_i) * 4)) -#define IXGBE_RAL(_i) (((_i) <= 15) ? \ - (0x05400 + ((_i) * 8)) : (0x0A200 + ((_i) * 8))) -#define IXGBE_RAH(_i) (((_i) <= 15) ? \ - (0x05404 + ((_i) * 8)) : (0x0A204 + ((_i) * 8))) -#define IXGBE_MPSAR_LO(_i) (0x0A600 + ((_i) * 8)) -#define IXGBE_MPSAR_HI(_i) (0x0A604 + ((_i) * 8)) +#define IXGBE_MTA(_i) (0x05200 + ((_i) * 4)) +#define IXGBE_RAL(_i) (((_i) <= 15) ? (0x05400 + ((_i) * 8)) : \ + (0x0A200 + ((_i) * 8))) +#define IXGBE_RAH(_i) (((_i) <= 15) ? (0x05404 + ((_i) * 8)) : \ + (0x0A204 + ((_i) * 8))) +#define IXGBE_MPSAR_LO(_i) (0x0A600 + ((_i) * 8)) +#define IXGBE_MPSAR_HI(_i) (0x0A604 + ((_i) * 8)) /* Packet split receive type */ -#define IXGBE_PSRTYPE(_i) (((_i) <= 15) ? \ - (0x05480 + ((_i) * 4)) : (0x0EA00 + ((_i) * 4))) +#define IXGBE_PSRTYPE(_i) (((_i) <= 15) ? (0x05480 + ((_i) * 4)) : \ + (0x0EA00 + ((_i) * 4))) /* array of 4096 1-bit vlan filters */ -#define IXGBE_VFTA(_i) (0x0A000 + ((_i) * 4)) -/* array of 4096 4-bit vlan vmdq indices */ -#define IXGBE_VFTAVIND(_j, _i) (0x0A200 + ((_j) * 0x200) + ((_i) * 4)) -#define IXGBE_FCTRL 0x05080 -#define IXGBE_VLNCTRL 0x05088 -#define IXGBE_MCSTCTRL 0x05090 -#define IXGBE_MRQC 0x05818 -#define IXGBE_SAQF(_i) (0x0E000 + ((_i) * 4)) /* Source Address Queue Filter */ -#define IXGBE_DAQF(_i) (0x0E200 + ((_i) * 4)) /* Dest. Address Queue Filter */ -#define IXGBE_SDPQF(_i) (0x0E400 + ((_i) * 4)) /* Src Dest. Addr Queue Filter */ -#define IXGBE_FTQF(_i) (0x0E600 + ((_i) * 4)) /* Five Tuple Queue Filter */ -#define IXGBE_ETQF(_i) (0x05128 + ((_i) * 4)) /* EType Queue Filter */ -#define IXGBE_ETQS(_i) (0x0EC00 + ((_i) * 4)) /* EType Queue Select */ -#define IXGBE_SYNQF 0x0EC30 /* SYN Packet Queue Filter */ -#define IXGBE_RQTC 0x0EC70 -#define IXGBE_MTQC 0x08120 -#define IXGBE_VLVF(_i) (0x0F100 + ((_i) * 4)) /* 64 of these (0-63) */ -#define IXGBE_VLVFB(_i) (0x0F200 + ((_i) * 4)) /* 128 of these (0-127) */ -#define IXGBE_VMVIR(_i) (0x08000 + ((_i) * 4)) /* 64 of these (0-63) */ -#define IXGBE_VT_CTL 0x051B0 -#define IXGBE_VFRE(_i) (0x051E0 + ((_i) * 4)) -#define IXGBE_VFTE(_i) (0x08110 + ((_i) * 4)) -#define IXGBE_QDE 0x2F04 -#define IXGBE_VMOLR(_i) (0x0F000 + ((_i) * 4)) /* 64 total */ -#define IXGBE_UTA(_i) (0x0F400 + ((_i) * 4)) -#define IXGBE_VMRCTL(_i) (0x0F600 + ((_i) * 4)) -#define IXGBE_VMRVLAN(_i) (0x0F610 + ((_i) * 4)) -#define IXGBE_VMRVM(_i) (0x0F630 + ((_i) * 4)) -#define IXGBE_L34T_IMIR(_i) (0x0E800 + ((_i) * 4)) - /* 128 of these (0-127) */ -#define IXGBE_LLITHRESH 0x0EC90 -#define IXGBE_IMIR(_i) (0x05A80 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_IMIREXT(_i) (0x05AA0 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_IMIRVP 0x05AC0 -#define IXGBE_VMD_CTL 0x0581C -#define IXGBE_RETA(_i) (0x05C00 + ((_i) * 4)) /* 32 of these (0-31) */ -#define IXGBE_RSSRK(_i) (0x05C80 + ((_i) * 4)) /* 10 of these (0-9) */ +#define IXGBE_VFTA(_i) (0x0A000 + ((_i) * 4)) +/*array of 4096 4-bit vlan vmdq indices */ +#define IXGBE_VFTAVIND(_j, _i) (0x0A200 + ((_j) * 0x200) + ((_i) * 4)) +#define IXGBE_FCTRL 0x05080 +#define IXGBE_VLNCTRL 0x05088 +#define IXGBE_MCSTCTRL 0x05090 +#define IXGBE_MRQC 0x05818 +#define IXGBE_SAQF(_i) (0x0E000 + ((_i) * 4)) /* Source Address Queue Filter */ +#define IXGBE_DAQF(_i) (0x0E200 + ((_i) * 4)) /* Dest. Address Queue Filter */ +#define IXGBE_SDPQF(_i) (0x0E400 + ((_i) * 4)) /* Src Dest. Addr Queue Filter */ +#define IXGBE_FTQF(_i) (0x0E600 + ((_i) * 4)) /* Five Tuple Queue Filter */ +#define IXGBE_ETQF(_i) (0x05128 + ((_i) * 4)) /* EType Queue Filter */ +#define IXGBE_ETQS(_i) (0x0EC00 + ((_i) * 4)) /* EType Queue Select */ +#define IXGBE_SYNQF 0x0EC30 /* SYN Packet Queue Filter */ +#define IXGBE_RQTC 0x0EC70 +#define IXGBE_MTQC 0x08120 +#define IXGBE_VLVF(_i) (0x0F100 + ((_i) * 4)) /* 64 of these (0-63) */ +#define IXGBE_VLVFB(_i) (0x0F200 + ((_i) * 4)) /* 128 of these (0-127) */ +#define IXGBE_VMVIR(_i) (0x08000 + ((_i) * 4)) /* 64 of these (0-63) */ +#define IXGBE_VT_CTL 0x051B0 +#define IXGBE_VFRE(_i) (0x051E0 + ((_i) * 4)) +#define IXGBE_VFTE(_i) (0x08110 + ((_i) * 4)) +#define IXGBE_VMECM(_i) (0x08790 + ((_i) * 4)) +#define IXGBE_QDE 0x2F04 +#define IXGBE_VMOLR(_i) (0x0F000 + ((_i) * 4)) /* 64 total */ +#define IXGBE_UTA(_i) (0x0F400 + ((_i) * 4)) +#define IXGBE_VMRCTL(_i) (0x0F600 + ((_i) * 4)) +#define IXGBE_VMRVLAN(_i) (0x0F610 + ((_i) * 4)) +#define IXGBE_VMRVM(_i) (0x0F630 + ((_i) * 4)) +#define IXGBE_L34T_IMIR(_i) (0x0E800 + ((_i) * 4)) /*128 of these (0-127)*/ +#define IXGBE_LLITHRESH 0x0EC90 +#define IXGBE_IMIR(_i) (0x05A80 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_IMIREXT(_i) (0x05AA0 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_IMIRVP 0x05AC0 +#define IXGBE_VMD_CTL 0x0581C +#define IXGBE_RETA(_i) (0x05C00 + ((_i) * 4)) /* 32 of these (0-31) */ +#define IXGBE_RSSRK(_i) (0x05C80 + ((_i) * 4)) /* 10 of these (0-9) */ /* Flow Director registers */ -#define IXGBE_FDIRCTRL 0x0EE00 -#define IXGBE_FDIRHKEY 0x0EE68 -#define IXGBE_FDIRSKEY 0x0EE6C -#define IXGBE_FDIRDIP4M 0x0EE3C -#define IXGBE_FDIRSIP4M 0x0EE40 -#define IXGBE_FDIRTCPM 0x0EE44 -#define IXGBE_FDIRUDPM 0x0EE48 -#define IXGBE_FDIRIP6M 0x0EE74 -#define IXGBE_FDIRM 0x0EE70 +#define IXGBE_FDIRCTRL 0x0EE00 +#define IXGBE_FDIRHKEY 0x0EE68 +#define IXGBE_FDIRSKEY 0x0EE6C +#define IXGBE_FDIRDIP4M 0x0EE3C +#define IXGBE_FDIRSIP4M 0x0EE40 +#define IXGBE_FDIRTCPM 0x0EE44 +#define IXGBE_FDIRUDPM 0x0EE48 +#define IXGBE_FDIRIP6M 0x0EE74 +#define IXGBE_FDIRM 0x0EE70 /* Flow Director Stats registers */ -#define IXGBE_FDIRFREE 0x0EE38 -#define IXGBE_FDIRLEN 0x0EE4C -#define IXGBE_FDIRUSTAT 0x0EE50 -#define IXGBE_FDIRFSTAT 0x0EE54 -#define IXGBE_FDIRMATCH 0x0EE58 -#define IXGBE_FDIRMISS 0x0EE5C +#define IXGBE_FDIRFREE 0x0EE38 +#define IXGBE_FDIRLEN 0x0EE4C +#define IXGBE_FDIRUSTAT 0x0EE50 +#define IXGBE_FDIRFSTAT 0x0EE54 +#define IXGBE_FDIRMATCH 0x0EE58 +#define IXGBE_FDIRMISS 0x0EE5C /* Flow Director Programming registers */ -#define IXGBE_FDIRSIPv6(_i) (0x0EE0C + ((_i) * 4)) /* 3 of these (0-2) */ -#define IXGBE_FDIRIPSA 0x0EE18 -#define IXGBE_FDIRIPDA 0x0EE1C -#define IXGBE_FDIRPORT 0x0EE20 -#define IXGBE_FDIRVLAN 0x0EE24 -#define IXGBE_FDIRHASH 0x0EE28 -#define IXGBE_FDIRCMD 0x0EE2C +#define IXGBE_FDIRSIPv6(_i) (0x0EE0C + ((_i) * 4)) /* 3 of these (0-2) */ +#define IXGBE_FDIRIPSA 0x0EE18 +#define IXGBE_FDIRIPDA 0x0EE1C +#define IXGBE_FDIRPORT 0x0EE20 +#define IXGBE_FDIRVLAN 0x0EE24 +#define IXGBE_FDIRHASH 0x0EE28 +#define IXGBE_FDIRCMD 0x0EE2C /* Transmit DMA registers */ -#define IXGBE_TDBAL(_i) (0x06000 + ((_i) * 0x40)) /* 32 of these (0-31) */ -#define IXGBE_TDBAH(_i) (0x06004 + ((_i) * 0x40)) -#define IXGBE_TDLEN(_i) (0x06008 + ((_i) * 0x40)) -#define IXGBE_TDH(_i) (0x06010 + ((_i) * 0x40)) -#define IXGBE_TDT(_i) (0x06018 + ((_i) * 0x40)) -#define IXGBE_TXDCTL(_i) (0x06028 + ((_i) * 0x40)) -#define IXGBE_TDWBAL(_i) (0x06038 + ((_i) * 0x40)) -#define IXGBE_TDWBAH(_i) (0x0603C + ((_i) * 0x40)) -#define IXGBE_DTXCTL 0x07E00 - -#define IXGBE_DMATXCTL 0x04A80 -#define IXGBE_PFDTXGSWC 0x08220 -#define IXGBE_DTXMXSZRQ 0x08100 -#define IXGBE_DTXTCPFLGL 0x04A88 -#define IXGBE_DTXTCPFLGH 0x04A8C -#define IXGBE_LBDRPEN 0x0CA00 -#define IXGBE_TXPBTHRESH(_i) (0x04950 + ((_i) * 4)) /* 8 of these 0 - 7 */ - -#define IXGBE_DMATXCTL_TE 0x1 /* Transmit Enable */ -#define IXGBE_DMATXCTL_NS 0x2 /* No Snoop LSO hdr buffer */ -#define IXGBE_DMATXCTL_GDV 0x8 /* Global Double VLAN */ -#define IXGBE_DMATXCTL_VT_SHIFT 16 /* VLAN EtherType */ - -#define IXGBE_PFDTXGSWC_VT_LBEN 0x1 /* Local L2 VT switch enable */ -#define IXGBE_DCA_TXCTRL(_i) (0x07200 + ((_i) * 4)) /* 16 of these (0-15) */ +#define IXGBE_TDBAL(_i) (0x06000 + ((_i) * 0x40)) /* 32 of these (0-31)*/ +#define IXGBE_TDBAH(_i) (0x06004 + ((_i) * 0x40)) +#define IXGBE_TDLEN(_i) (0x06008 + ((_i) * 0x40)) +#define IXGBE_TDH(_i) (0x06010 + ((_i) * 0x40)) +#define IXGBE_TDT(_i) (0x06018 + ((_i) * 0x40)) +#define IXGBE_TXDCTL(_i) (0x06028 + ((_i) * 0x40)) +#define IXGBE_TDWBAL(_i) (0x06038 + ((_i) * 0x40)) +#define IXGBE_TDWBAH(_i) (0x0603C + ((_i) * 0x40)) +#define IXGBE_DTXCTL 0x07E00 + +#define IXGBE_DMATXCTL 0x04A80 +#define IXGBE_PFVFSPOOF(_i) (0x08200 + ((_i) * 4)) /* 8 of these 0 - 7 */ +#define IXGBE_PFDTXGSWC 0x08220 +#define IXGBE_DTXMXSZRQ 0x08100 +#define IXGBE_DTXTCPFLGL 0x04A88 +#define IXGBE_DTXTCPFLGH 0x04A8C +#define IXGBE_LBDRPEN 0x0CA00 +#define IXGBE_TXPBTHRESH(_i) (0x04950 + ((_i) * 4)) /* 8 of these 0 - 7 */ + +#define IXGBE_DMATXCTL_TE 0x1 /* Transmit Enable */ +#define IXGBE_DMATXCTL_NS 0x2 /* No Snoop LSO hdr buffer */ +#define IXGBE_DMATXCTL_GDV 0x8 /* Global Double VLAN */ +#define IXGBE_DMATXCTL_VT_SHIFT 16 /* VLAN EtherType */ + +#define IXGBE_PFDTXGSWC_VT_LBEN 0x1 /* Local L2 VT switch enable */ + +/* Anti-spoofing defines */ +#define IXGBE_SPOOF_MACAS_MASK 0xFF +#define IXGBE_SPOOF_VLANAS_MASK 0xFF00 +#define IXGBE_SPOOF_VLANAS_SHIFT 8 +#define IXGBE_PFVFSPOOF_REG_COUNT 8 +#define IXGBE_DCA_TXCTRL(_i) (0x07200 + ((_i) * 4)) /* 16 of these (0-15) */ /* Tx DCA Control register : 128 of these (0-127) */ -#define IXGBE_DCA_TXCTRL_82599(_i) (0x0600C + ((_i) * 0x40)) -#define IXGBE_TIPG 0x0CB00 -#define IXGBE_TXPBSIZE(_i) (0x0CC00 + ((_i) *0x04)) /* 8 of these */ -#define IXGBE_MNGTXMAP 0x0CD10 -#define IXGBE_TIPG_FIBER_DEFAULT 3 -#define IXGBE_TXPBSIZE_SHIFT 10 +#define IXGBE_DCA_TXCTRL_82599(_i) (0x0600C + ((_i) * 0x40)) +#define IXGBE_TIPG 0x0CB00 +#define IXGBE_TXPBSIZE(_i) (0x0CC00 + ((_i) * 4)) /* 8 of these */ +#define IXGBE_MNGTXMAP 0x0CD10 +#define IXGBE_TIPG_FIBER_DEFAULT 3 +#define IXGBE_TXPBSIZE_SHIFT 10 /* Wake up registers */ -#define IXGBE_WUC 0x05800 -#define IXGBE_WUFC 0x05808 -#define IXGBE_WUS 0x05810 -#define IXGBE_IPAV 0x05838 -#define IXGBE_IP4AT 0x05840 /* IPv4 table 0x5840-0x5858 */ -#define IXGBE_IP6AT 0x05880 /* IPv6 table 0x5880-0x588F */ -#define IXGBE_WUPL 0x05900 -#define IXGBE_WUPM 0x05A00 /* wake up pkt memory 0x5A00-0x5A7C */ -#define IXGBE_FHFT(_n) (0x09000 + (_n * 0x100)) /* Flex host filter table */ -/* Ext Flexible Host Filter Table */ -#define IXGBE_FHFT_EXT(_n) (0x09800 + (_n * 0x100)) -#define IXGBE_FLEXIBLE_FILTER_COUNT_MAX 4 -#define IXGBE_EXT_FLEXIBLE_FILTER_COUNT_MAX 2 +#define IXGBE_WUC 0x05800 +#define IXGBE_WUFC 0x05808 +#define IXGBE_WUS 0x05810 +#define IXGBE_IPAV 0x05838 +#define IXGBE_IP4AT 0x05840 /* IPv4 table 0x5840-0x5858 */ +#define IXGBE_IP6AT 0x05880 /* IPv6 table 0x5880-0x588F */ + +#define IXGBE_WUPL 0x05900 +#define IXGBE_WUPM 0x05A00 /* wake up pkt memory 0x5A00-0x5A7C */ +#define IXGBE_FHFT(_n) (0x09000 + (_n * 0x100)) /* Flex host filter table */ +#define IXGBE_FHFT_EXT(_n) (0x09800 + (_n * 0x100)) /* Ext Flexible Host + * Filter Table */ + +#define IXGBE_FLEXIBLE_FILTER_COUNT_MAX 4 +#define IXGBE_EXT_FLEXIBLE_FILTER_COUNT_MAX 2 /* Each Flexible Filter is at most 128 (0x80) bytes in length */ -#define IXGBE_FLEXIBLE_FILTER_SIZE_MAX 128 -#define IXGBE_FHFT_LENGTH_OFFSET 0xFC /* Length byte in FHFT */ -#define IXGBE_FHFT_LENGTH_MASK 0x0FF /* Length in lower byte */ +#define IXGBE_FLEXIBLE_FILTER_SIZE_MAX 128 +#define IXGBE_FHFT_LENGTH_OFFSET 0xFC /* Length byte in FHFT */ +#define IXGBE_FHFT_LENGTH_MASK 0x0FF /* Length in lower byte */ /* Definitions for power management and wakeup registers */ /* Wake Up Control */ -#define IXGBE_WUC_PME_EN 0x00000002 /* PME Enable */ -#define IXGBE_WUC_PME_STATUS 0x00000004 /* PME Status */ -#define IXGBE_WUC_WKEN 0x00000010 /* Enable PE_WAKE_N pin assertion */ +#define IXGBE_WUC_PME_EN 0x00000002 /* PME Enable */ +#define IXGBE_WUC_PME_STATUS 0x00000004 /* PME Status */ +#define IXGBE_WUC_WKEN 0x00000010 /* Enable PE_WAKE_N pin assertion */ /* Wake Up Filter Control */ -#define IXGBE_WUFC_LNKC 0x00000001 /* Link Status Change Wakeup Enable */ -#define IXGBE_WUFC_MAG 0x00000002 /* Magic Packet Wakeup Enable */ -#define IXGBE_WUFC_EX 0x00000004 /* Directed Exact Wakeup Enable */ -#define IXGBE_WUFC_MC 0x00000008 /* Directed Multicast Wakeup Enable */ -#define IXGBE_WUFC_BC 0x00000010 /* Broadcast Wakeup Enable */ -#define IXGBE_WUFC_ARP 0x00000020 /* ARP Request Packet Wakeup Enable */ -#define IXGBE_WUFC_IPV4 0x00000040 /* Directed IPv4 Packet Wakeup Enable */ -#define IXGBE_WUFC_IPV6 0x00000080 /* Directed IPv6 Packet Wakeup Enable */ -#define IXGBE_WUFC_MNG 0x00000100 /* Directed Mgmt Packet Wakeup Enable */ - -#define IXGBE_WUFC_IGNORE_TCO 0x00008000 /* Ignore WakeOn TCO packets */ -#define IXGBE_WUFC_FLX0 0x00010000 /* Flexible Filter 0 Enable */ -#define IXGBE_WUFC_FLX1 0x00020000 /* Flexible Filter 1 Enable */ -#define IXGBE_WUFC_FLX2 0x00040000 /* Flexible Filter 2 Enable */ -#define IXGBE_WUFC_FLX3 0x00080000 /* Flexible Filter 3 Enable */ -#define IXGBE_WUFC_FLX4 0x00100000 /* Flexible Filter 4 Enable */ -#define IXGBE_WUFC_FLX5 0x00200000 /* Flexible Filter 5 Enable */ -#define IXGBE_WUFC_FLX_FILTERS 0x000F0000 /* Mask for 4 flex filters */ -#define IXGBE_WUFC_EXT_FLX_FILTERS 0x00300000 /* Mask for Ext. flex filters */ -#define IXGBE_WUFC_ALL_FILTERS 0x003F00FF /* Mask for all wakeup filters */ -#define IXGBE_WUFC_FLX_OFFSET 16 /* Offset to the Flexible Filters bits */ +#define IXGBE_WUFC_LNKC 0x00000001 /* Link Status Change Wakeup Enable */ +#define IXGBE_WUFC_MAG 0x00000002 /* Magic Packet Wakeup Enable */ +#define IXGBE_WUFC_EX 0x00000004 /* Directed Exact Wakeup Enable */ +#define IXGBE_WUFC_MC 0x00000008 /* Directed Multicast Wakeup Enable */ +#define IXGBE_WUFC_BC 0x00000010 /* Broadcast Wakeup Enable */ +#define IXGBE_WUFC_ARP 0x00000020 /* ARP Request Packet Wakeup Enable */ +#define IXGBE_WUFC_IPV4 0x00000040 /* Directed IPv4 Packet Wakeup Enable */ +#define IXGBE_WUFC_IPV6 0x00000080 /* Directed IPv6 Packet Wakeup Enable */ +#define IXGBE_WUFC_MNG 0x00000100 /* Directed Mgmt Packet Wakeup Enable */ + +#define IXGBE_WUFC_IGNORE_TCO 0x00008000 /* Ignore WakeOn TCO packets */ +#define IXGBE_WUFC_FLX0 0x00010000 /* Flexible Filter 0 Enable */ +#define IXGBE_WUFC_FLX1 0x00020000 /* Flexible Filter 1 Enable */ +#define IXGBE_WUFC_FLX2 0x00040000 /* Flexible Filter 2 Enable */ +#define IXGBE_WUFC_FLX3 0x00080000 /* Flexible Filter 3 Enable */ +#define IXGBE_WUFC_FLX4 0x00100000 /* Flexible Filter 4 Enable */ +#define IXGBE_WUFC_FLX5 0x00200000 /* Flexible Filter 5 Enable */ +#define IXGBE_WUFC_FLX_FILTERS 0x000F0000 /* Mask for 4 flex filters */ +#define IXGBE_WUFC_EXT_FLX_FILTERS 0x00300000 /* Mask for Ext. flex filters */ +#define IXGBE_WUFC_ALL_FILTERS 0x003F00FF /* Mask for all wakeup filters */ +#define IXGBE_WUFC_FLX_OFFSET 16 /* Offset to the Flexible Filters bits */ /* Wake Up Status */ -#define IXGBE_WUS_LNKC IXGBE_WUFC_LNKC -#define IXGBE_WUS_MAG IXGBE_WUFC_MAG -#define IXGBE_WUS_EX IXGBE_WUFC_EX -#define IXGBE_WUS_MC IXGBE_WUFC_MC -#define IXGBE_WUS_BC IXGBE_WUFC_BC -#define IXGBE_WUS_ARP IXGBE_WUFC_ARP -#define IXGBE_WUS_IPV4 IXGBE_WUFC_IPV4 -#define IXGBE_WUS_IPV6 IXGBE_WUFC_IPV6 -#define IXGBE_WUS_MNG IXGBE_WUFC_MNG -#define IXGBE_WUS_FLX0 IXGBE_WUFC_FLX0 -#define IXGBE_WUS_FLX1 IXGBE_WUFC_FLX1 -#define IXGBE_WUS_FLX2 IXGBE_WUFC_FLX2 -#define IXGBE_WUS_FLX3 IXGBE_WUFC_FLX3 -#define IXGBE_WUS_FLX4 IXGBE_WUFC_FLX4 -#define IXGBE_WUS_FLX5 IXGBE_WUFC_FLX5 -#define IXGBE_WUS_FLX_FILTERS IXGBE_WUFC_FLX_FILTERS +#define IXGBE_WUS_LNKC IXGBE_WUFC_LNKC +#define IXGBE_WUS_MAG IXGBE_WUFC_MAG +#define IXGBE_WUS_EX IXGBE_WUFC_EX +#define IXGBE_WUS_MC IXGBE_WUFC_MC +#define IXGBE_WUS_BC IXGBE_WUFC_BC +#define IXGBE_WUS_ARP IXGBE_WUFC_ARP +#define IXGBE_WUS_IPV4 IXGBE_WUFC_IPV4 +#define IXGBE_WUS_IPV6 IXGBE_WUFC_IPV6 +#define IXGBE_WUS_MNG IXGBE_WUFC_MNG +#define IXGBE_WUS_FLX0 IXGBE_WUFC_FLX0 +#define IXGBE_WUS_FLX1 IXGBE_WUFC_FLX1 +#define IXGBE_WUS_FLX2 IXGBE_WUFC_FLX2 +#define IXGBE_WUS_FLX3 IXGBE_WUFC_FLX3 +#define IXGBE_WUS_FLX4 IXGBE_WUFC_FLX4 +#define IXGBE_WUS_FLX5 IXGBE_WUFC_FLX5 +#define IXGBE_WUS_FLX_FILTERS IXGBE_WUFC_FLX_FILTERS /* Wake Up Packet Length */ -#define IXGBE_WUPL_LENGTH_MASK 0xFFFF +#define IXGBE_WUPL_LENGTH_MASK 0xFFFF /* DCB registers */ -#define IXGBE_RMCS 0x03D00 -#define IXGBE_DPMCS 0x07F40 -#define IXGBE_PDPMCS 0x0CD00 -#define IXGBE_RUPPBMR 0x050A0 -#define IXGBE_RT2CR(_i) (0x03C20 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RT2SR(_i) (0x03C40 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_TDTQ2TCCR(_i) (0x0602C + ((_i) * 0x40)) /* 8 of these (0-7) */ -#define IXGBE_TDTQ2TCSR(_i) (0x0622C + ((_i) * 0x40)) /* 8 of these (0-7) */ -#define IXGBE_TDPT2TCCR(_i) (0x0CD20 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_TDPT2TCSR(_i) (0x0CD40 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RMCS 0x03D00 +#define IXGBE_DPMCS 0x07F40 +#define IXGBE_PDPMCS 0x0CD00 +#define IXGBE_RUPPBMR 0x050A0 +#define IXGBE_RT2CR(_i) (0x03C20 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RT2SR(_i) (0x03C40 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_TDTQ2TCCR(_i) (0x0602C + ((_i) * 0x40)) /* 8 of these (0-7) */ +#define IXGBE_TDTQ2TCSR(_i) (0x0622C + ((_i) * 0x40)) /* 8 of these (0-7) */ +#define IXGBE_TDPT2TCCR(_i) (0x0CD20 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_TDPT2TCSR(_i) (0x0CD40 + ((_i) * 4)) /* 8 of these (0-7) */ + /* Security Control Registers */ -#define IXGBE_SECTXCTRL 0x08800 -#define IXGBE_SECTXSTAT 0x08804 -#define IXGBE_SECTXBUFFAF 0x08808 -#define IXGBE_SECTXMINIFG 0x08810 -#define IXGBE_SECTXSTAT 0x08804 -#define IXGBE_SECRXCTRL 0x08D00 -#define IXGBE_SECRXSTAT 0x08D04 +#define IXGBE_SECTXCTRL 0x08800 +#define IXGBE_SECTXSTAT 0x08804 +#define IXGBE_SECTXBUFFAF 0x08808 +#define IXGBE_SECTXMINIFG 0x08810 +#define IXGBE_SECTXSTAT 0x08804 +#define IXGBE_SECRXCTRL 0x08D00 +#define IXGBE_SECRXSTAT 0x08D04 /* Security Bit Fields and Masks */ -#define IXGBE_SECTXCTRL_SECTX_DIS 0x00000001 -#define IXGBE_SECTXCTRL_TX_DIS 0x00000002 -#define IXGBE_SECTXCTRL_STORE_FORWARD 0x00000004 +#define IXGBE_SECTXCTRL_SECTX_DIS 0x00000001 +#define IXGBE_SECTXCTRL_TX_DIS 0x00000002 +#define IXGBE_SECTXCTRL_STORE_FORWARD 0x00000004 -#define IXGBE_SECTXSTAT_SECTX_RDY 0x00000001 -#define IXGBE_SECTXSTAT_ECC_TXERR 0x00000002 +#define IXGBE_SECTXSTAT_SECTX_RDY 0x00000001 +#define IXGBE_SECTXSTAT_ECC_TXERR 0x00000002 -#define IXGBE_SECRXCTRL_SECRX_DIS 0x00000001 -#define IXGBE_SECRXCTRL_RX_DIS 0x00000002 +#define IXGBE_SECRXCTRL_SECRX_DIS 0x00000001 +#define IXGBE_SECRXCTRL_RX_DIS 0x00000002 -#define IXGBE_SECRXSTAT_SECRX_RDY 0x00000001 -#define IXGBE_SECRXSTAT_ECC_RXERR 0x00000002 +#define IXGBE_SECRXSTAT_SECRX_RDY 0x00000001 +#define IXGBE_SECRXSTAT_ECC_RXERR 0x00000002 /* LinkSec (MacSec) Registers */ -#define IXGBE_LSECTXCAP 0x08A00 -#define IXGBE_LSECRXCAP 0x08F00 -#define IXGBE_LSECTXCTRL 0x08A04 -#define IXGBE_LSECTXSCL 0x08A08 /* SCI Low */ -#define IXGBE_LSECTXSCH 0x08A0C /* SCI High */ -#define IXGBE_LSECTXSA 0x08A10 -#define IXGBE_LSECTXPN0 0x08A14 -#define IXGBE_LSECTXPN1 0x08A18 -#define IXGBE_LSECTXKEY0(_n) (0x08A1C + (4 * (_n))) /* 4 of these (0-3) */ -#define IXGBE_LSECTXKEY1(_n) (0x08A2C + (4 * (_n))) /* 4 of these (0-3) */ -#define IXGBE_LSECRXCTRL 0x08F04 -#define IXGBE_LSECRXSCL 0x08F08 -#define IXGBE_LSECRXSCH 0x08F0C -#define IXGBE_LSECRXSA(_i) (0x08F10 + (4 * (_i))) /* 2 of these (0-1) */ -#define IXGBE_LSECRXPN(_i) (0x08F18 + (4 * (_i))) /* 2 of these (0-1) */ -#define IXGBE_LSECRXKEY(_n, _m) (0x08F20 + ((0x10 * (_n)) + (4 * (_m)))) -#define IXGBE_LSECTXUT 0x08A3C /* OutPktsUntagged */ -#define IXGBE_LSECTXPKTE 0x08A40 /* OutPktsEncrypted */ -#define IXGBE_LSECTXPKTP 0x08A44 /* OutPktsProtected */ -#define IXGBE_LSECTXOCTE 0x08A48 /* OutOctetsEncrypted */ -#define IXGBE_LSECTXOCTP 0x08A4C /* OutOctetsProtected */ -#define IXGBE_LSECRXUT 0x08F40 /* InPktsUntagged/InPktsNoTag */ -#define IXGBE_LSECRXOCTD 0x08F44 /* InOctetsDecrypted */ -#define IXGBE_LSECRXOCTV 0x08F48 /* InOctetsValidated */ -#define IXGBE_LSECRXBAD 0x08F4C /* InPktsBadTag */ -#define IXGBE_LSECRXNOSCI 0x08F50 /* InPktsNoSci */ -#define IXGBE_LSECRXUNSCI 0x08F54 /* InPktsUnknownSci */ -#define IXGBE_LSECRXUNCH 0x08F58 /* InPktsUnchecked */ -#define IXGBE_LSECRXDELAY 0x08F5C /* InPktsDelayed */ -#define IXGBE_LSECRXLATE 0x08F60 /* InPktsLate */ -#define IXGBE_LSECRXOK(_n) (0x08F64 + (0x04 * (_n))) /* InPktsOk */ -#define IXGBE_LSECRXINV(_n) (0x08F6C + (0x04 * (_n))) /* InPktsInvalid */ -#define IXGBE_LSECRXNV(_n) (0x08F74 + (0x04 * (_n))) /* InPktsNotValid */ -#define IXGBE_LSECRXUNSA 0x08F7C /* InPktsUnusedSa */ -#define IXGBE_LSECRXNUSA 0x08F80 /* InPktsNotUsingSa */ +#define IXGBE_LSECTXCAP 0x08A00 +#define IXGBE_LSECRXCAP 0x08F00 +#define IXGBE_LSECTXCTRL 0x08A04 +#define IXGBE_LSECTXSCL 0x08A08 /* SCI Low */ +#define IXGBE_LSECTXSCH 0x08A0C /* SCI High */ +#define IXGBE_LSECTXSA 0x08A10 +#define IXGBE_LSECTXPN0 0x08A14 +#define IXGBE_LSECTXPN1 0x08A18 +#define IXGBE_LSECTXKEY0(_n) (0x08A1C + (4 * (_n))) /* 4 of these (0-3) */ +#define IXGBE_LSECTXKEY1(_n) (0x08A2C + (4 * (_n))) /* 4 of these (0-3) */ +#define IXGBE_LSECRXCTRL 0x08F04 +#define IXGBE_LSECRXSCL 0x08F08 +#define IXGBE_LSECRXSCH 0x08F0C +#define IXGBE_LSECRXSA(_i) (0x08F10 + (4 * (_i))) /* 2 of these (0-1) */ +#define IXGBE_LSECRXPN(_i) (0x08F18 + (4 * (_i))) /* 2 of these (0-1) */ +#define IXGBE_LSECRXKEY(_n, _m) (0x08F20 + ((0x10 * (_n)) + (4 * (_m)))) +#define IXGBE_LSECTXUT 0x08A3C /* OutPktsUntagged */ +#define IXGBE_LSECTXPKTE 0x08A40 /* OutPktsEncrypted */ +#define IXGBE_LSECTXPKTP 0x08A44 /* OutPktsProtected */ +#define IXGBE_LSECTXOCTE 0x08A48 /* OutOctetsEncrypted */ +#define IXGBE_LSECTXOCTP 0x08A4C /* OutOctetsProtected */ +#define IXGBE_LSECRXUT 0x08F40 /* InPktsUntagged/InPktsNoTag */ +#define IXGBE_LSECRXOCTD 0x08F44 /* InOctetsDecrypted */ +#define IXGBE_LSECRXOCTV 0x08F48 /* InOctetsValidated */ +#define IXGBE_LSECRXBAD 0x08F4C /* InPktsBadTag */ +#define IXGBE_LSECRXNOSCI 0x08F50 /* InPktsNoSci */ +#define IXGBE_LSECRXUNSCI 0x08F54 /* InPktsUnknownSci */ +#define IXGBE_LSECRXUNCH 0x08F58 /* InPktsUnchecked */ +#define IXGBE_LSECRXDELAY 0x08F5C /* InPktsDelayed */ +#define IXGBE_LSECRXLATE 0x08F60 /* InPktsLate */ +#define IXGBE_LSECRXOK(_n) (0x08F64 + (0x04 * (_n))) /* InPktsOk */ +#define IXGBE_LSECRXINV(_n) (0x08F6C + (0x04 * (_n))) /* InPktsInvalid */ +#define IXGBE_LSECRXNV(_n) (0x08F74 + (0x04 * (_n))) /* InPktsNotValid */ +#define IXGBE_LSECRXUNSA 0x08F7C /* InPktsUnusedSa */ +#define IXGBE_LSECRXNUSA 0x08F80 /* InPktsNotUsingSa */ /* LinkSec (MacSec) Bit Fields and Masks */ -#define IXGBE_LSECTXCAP_SUM_MASK 0x00FF0000 -#define IXGBE_LSECTXCAP_SUM_SHIFT 16 -#define IXGBE_LSECRXCAP_SUM_MASK 0x00FF0000 -#define IXGBE_LSECRXCAP_SUM_SHIFT 16 - -#define IXGBE_LSECTXCTRL_EN_MASK 0x00000003 -#define IXGBE_LSECTXCTRL_DISABLE 0x0 -#define IXGBE_LSECTXCTRL_AUTH 0x1 -#define IXGBE_LSECTXCTRL_AUTH_ENCRYPT 0x2 -#define IXGBE_LSECTXCTRL_AISCI 0x00000020 -#define IXGBE_LSECTXCTRL_PNTHRSH_MASK 0xFFFFFF00 -#define IXGBE_LSECTXCTRL_RSV_MASK 0x000000D8 - -#define IXGBE_LSECRXCTRL_EN_MASK 0x0000000C -#define IXGBE_LSECRXCTRL_EN_SHIFT 2 -#define IXGBE_LSECRXCTRL_DISABLE 0x0 -#define IXGBE_LSECRXCTRL_CHECK 0x1 -#define IXGBE_LSECRXCTRL_STRICT 0x2 -#define IXGBE_LSECRXCTRL_DROP 0x3 -#define IXGBE_LSECRXCTRL_PLSH 0x00000040 -#define IXGBE_LSECRXCTRL_RP 0x00000080 -#define IXGBE_LSECRXCTRL_RSV_MASK 0xFFFFFF33 +#define IXGBE_LSECTXCAP_SUM_MASK 0x00FF0000 +#define IXGBE_LSECTXCAP_SUM_SHIFT 16 +#define IXGBE_LSECRXCAP_SUM_MASK 0x00FF0000 +#define IXGBE_LSECRXCAP_SUM_SHIFT 16 + +#define IXGBE_LSECTXCTRL_EN_MASK 0x00000003 +#define IXGBE_LSECTXCTRL_DISABLE 0x0 +#define IXGBE_LSECTXCTRL_AUTH 0x1 +#define IXGBE_LSECTXCTRL_AUTH_ENCRYPT 0x2 +#define IXGBE_LSECTXCTRL_AISCI 0x00000020 +#define IXGBE_LSECTXCTRL_PNTHRSH_MASK 0xFFFFFF00 +#define IXGBE_LSECTXCTRL_RSV_MASK 0x000000D8 + +#define IXGBE_LSECRXCTRL_EN_MASK 0x0000000C +#define IXGBE_LSECRXCTRL_EN_SHIFT 2 +#define IXGBE_LSECRXCTRL_DISABLE 0x0 +#define IXGBE_LSECRXCTRL_CHECK 0x1 +#define IXGBE_LSECRXCTRL_STRICT 0x2 +#define IXGBE_LSECRXCTRL_DROP 0x3 +#define IXGBE_LSECRXCTRL_PLSH 0x00000040 +#define IXGBE_LSECRXCTRL_RP 0x00000080 +#define IXGBE_LSECRXCTRL_RSV_MASK 0xFFFFFF33 /* IpSec Registers */ -#define IXGBE_IPSTXIDX 0x08900 -#define IXGBE_IPSTXSALT 0x08904 -#define IXGBE_IPSTXKEY(_i) (0x08908 + (4 * (_i))) /* 4 of these (0-3) */ -#define IXGBE_IPSRXIDX 0x08E00 -#define IXGBE_IPSRXIPADDR(_i) (0x08E04 + (4 * (_i))) /* 4 of these (0-3) */ -#define IXGBE_IPSRXSPI 0x08E14 -#define IXGBE_IPSRXIPIDX 0x08E18 -#define IXGBE_IPSRXKEY(_i) (0x08E1C + (4 * (_i))) /* 4 of these (0-3) */ -#define IXGBE_IPSRXSALT 0x08E2C -#define IXGBE_IPSRXMOD 0x08E30 - -#define IXGBE_SECTXCTRL_STORE_FORWARD_ENABLE 0x4 +#define IXGBE_IPSTXIDX 0x08900 +#define IXGBE_IPSTXSALT 0x08904 +#define IXGBE_IPSTXKEY(_i) (0x08908 + (4 * (_i))) /* 4 of these (0-3) */ +#define IXGBE_IPSRXIDX 0x08E00 +#define IXGBE_IPSRXIPADDR(_i) (0x08E04 + (4 * (_i))) /* 4 of these (0-3) */ +#define IXGBE_IPSRXSPI 0x08E14 +#define IXGBE_IPSRXIPIDX 0x08E18 +#define IXGBE_IPSRXKEY(_i) (0x08E1C + (4 * (_i))) /* 4 of these (0-3) */ +#define IXGBE_IPSRXSALT 0x08E2C +#define IXGBE_IPSRXMOD 0x08E30 + +#define IXGBE_SECTXCTRL_STORE_FORWARD_ENABLE 0x4 /* DCB registers */ -#define IXGBE_RTRPCS 0x02430 -#define IXGBE_RTTDCS 0x04900 -#define IXGBE_RTTDCS_ARBDIS 0x00000040 /* DCB arbiter disable */ -#define IXGBE_RTTPCS 0x0CD00 -#define IXGBE_RTRUP2TC 0x03020 -#define IXGBE_RTTUP2TC 0x0C800 -#define IXGBE_RTRPT4C(_i) (0x02140 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTRPT4S(_i) (0x02160 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTTDT2C(_i) (0x04910 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTTDT2S(_i) (0x04930 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTTPT2C(_i) (0x0CD20 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTTPT2S(_i) (0x0CD40 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_RTTDQSEL 0x04904 -#define IXGBE_RTTDT1C 0x04908 -#define IXGBE_RTTDT1S 0x0490C -#define IXGBE_RTTDTECC 0x04990 -#define IXGBE_RTTDTECC_NO_BCN 0x00000100 - -#define IXGBE_RTTBCNRC 0x04984 +#define IXGBE_RTRPCS 0x02430 +#define IXGBE_RTTDCS 0x04900 +#define IXGBE_RTTDCS_ARBDIS 0x00000040 /* DCB arbiter disable */ +#define IXGBE_RTTPCS 0x0CD00 +#define IXGBE_RTRUP2TC 0x03020 +#define IXGBE_RTTUP2TC 0x0C800 +#define IXGBE_RTRPT4C(_i) (0x02140 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTRPT4S(_i) (0x02160 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTTDT2C(_i) (0x04910 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTTDT2S(_i) (0x04930 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTTPT2C(_i) (0x0CD20 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTTPT2S(_i) (0x0CD40 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_RTTDQSEL 0x04904 +#define IXGBE_RTTDT1C 0x04908 +#define IXGBE_RTTDT1S 0x0490C +#define IXGBE_RTTDTECC 0x04990 +#define IXGBE_RTTDTECC_NO_BCN 0x00000100 + +#define IXGBE_RTTBCNRC 0x04984 +#define IXGBE_RTTBCNRC_RS_ENA 0x80000000 +#define IXGBE_RTTBCNRC_RF_DEC_MASK 0x00003FFF +#define IXGBE_RTTBCNRC_RF_INT_SHIFT 14 +#define IXGBE_RTTBCNRC_RF_INT_MASK \ + (IXGBE_RTTBCNRC_RF_DEC_MASK << IXGBE_RTTBCNRC_RF_INT_SHIFT) + +/* BCN (for DCB) Registers */ +#define IXGBE_RTTBCNRM 0x04980 +#define IXGBE_RTTBCNRS 0x04988 +#define IXGBE_RTTBCNCR 0x08B00 +#define IXGBE_RTTBCNACH 0x08B04 +#define IXGBE_RTTBCNACL 0x08B08 +#define IXGBE_RTTBCNTG 0x04A90 +#define IXGBE_RTTBCNIDX 0x08B0C +#define IXGBE_RTTBCNCP 0x08B10 +#define IXGBE_RTFRTIMER 0x08B14 +#define IXGBE_RTTBCNRTT 0x05150 +#define IXGBE_RTTBCNRD 0x0498C /* FCoE DMA Context Registers */ -#define IXGBE_FCPTRL 0x02410 /* FC User Desc. PTR Low */ -#define IXGBE_FCPTRH 0x02414 /* FC USer Desc. PTR High */ -#define IXGBE_FCBUFF 0x02418 /* FC Buffer Control */ -#define IXGBE_FCDMARW 0x02420 /* FC Receive DMA RW */ -#define IXGBE_FCINVST0 0x03FC0 /* FC Invalid DMA Context Status Reg 0 */ -#define IXGBE_FCINVST(_i) (IXGBE_FCINVST0 + ((_i) * 4)) -#define IXGBE_FCBUFF_VALID (1 << 0) /* DMA Context Valid */ -#define IXGBE_FCBUFF_BUFFSIZE (3 << 3) /* User Buffer Size */ -#define IXGBE_FCBUFF_WRCONTX (1 << 7) /* 0: Initiator, 1: Target */ -#define IXGBE_FCBUFF_BUFFCNT 0x0000ff00 /* Number of User Buffers */ -#define IXGBE_FCBUFF_OFFSET 0xffff0000 /* User Buffer Offset */ -#define IXGBE_FCBUFF_BUFFSIZE_SHIFT 3 -#define IXGBE_FCBUFF_BUFFCNT_SHIFT 8 -#define IXGBE_FCBUFF_OFFSET_SHIFT 16 -#define IXGBE_FCDMARW_WE (1 << 14) /* Write enable */ -#define IXGBE_FCDMARW_RE (1 << 15) /* Read enable */ -#define IXGBE_FCDMARW_FCOESEL 0x000001ff /* FC X_ID: 11 bits */ -#define IXGBE_FCDMARW_LASTSIZE 0xffff0000 /* Last User Buffer Size */ -#define IXGBE_FCDMARW_LASTSIZE_SHIFT 16 +#define IXGBE_FCPTRL 0x02410 /* FC User Desc. PTR Low */ +#define IXGBE_FCPTRH 0x02414 /* FC USer Desc. PTR High */ +#define IXGBE_FCBUFF 0x02418 /* FC Buffer Control */ +#define IXGBE_FCDMARW 0x02420 /* FC Receive DMA RW */ +#define IXGBE_FCINVST0 0x03FC0 /* FC Invalid DMA Context Status Reg 0 */ +#define IXGBE_FCINVST(_i) (IXGBE_FCINVST0 + ((_i) * 4)) +#define IXGBE_FCBUFF_VALID (1 << 0) /* DMA Context Valid */ +#define IXGBE_FCBUFF_BUFFSIZE (3 << 3) /* User Buffer Size */ +#define IXGBE_FCBUFF_WRCONTX (1 << 7) /* 0: Initiator, 1: Target */ +#define IXGBE_FCBUFF_BUFFCNT 0x0000ff00 /* Number of User Buffers */ +#define IXGBE_FCBUFF_OFFSET 0xffff0000 /* User Buffer Offset */ +#define IXGBE_FCBUFF_BUFFSIZE_SHIFT 3 +#define IXGBE_FCBUFF_BUFFCNT_SHIFT 8 +#define IXGBE_FCBUFF_OFFSET_SHIFT 16 +#define IXGBE_FCDMARW_WE (1 << 14) /* Write enable */ +#define IXGBE_FCDMARW_RE (1 << 15) /* Read enable */ +#define IXGBE_FCDMARW_FCOESEL 0x000001ff /* FC X_ID: 11 bits */ +#define IXGBE_FCDMARW_LASTSIZE 0xffff0000 /* Last User Buffer Size */ +#define IXGBE_FCDMARW_LASTSIZE_SHIFT 16 /* FCoE SOF/EOF */ -#define IXGBE_TEOFF 0x04A94 /* Tx FC EOF */ -#define IXGBE_TSOFF 0x04A98 /* Tx FC SOF */ -#define IXGBE_REOFF 0x05158 /* Rx FC EOF */ -#define IXGBE_RSOFF 0x051F8 /* Rx FC SOF */ +#define IXGBE_TEOFF 0x04A94 /* Tx FC EOF */ +#define IXGBE_TSOFF 0x04A98 /* Tx FC SOF */ +#define IXGBE_REOFF 0x05158 /* Rx FC EOF */ +#define IXGBE_RSOFF 0x051F8 /* Rx FC SOF */ /* FCoE Filter Context Registers */ -#define IXGBE_FCFLT 0x05108 /* FC FLT Context */ -#define IXGBE_FCFLTRW 0x05110 /* FC Filter RW Control */ -#define IXGBE_FCPARAM 0x051d8 /* FC Offset Parameter */ -#define IXGBE_FCFLT_VALID (1 << 0) /* Filter Context Valid */ -#define IXGBE_FCFLT_FIRST (1 << 1) /* Filter First */ -#define IXGBE_FCFLT_SEQID 0x00ff0000 /* Sequence ID */ -#define IXGBE_FCFLT_SEQCNT 0xff000000 /* Sequence Count */ -#define IXGBE_FCFLTRW_RVALDT (1 << 13) /* Fast Re-Validation */ -#define IXGBE_FCFLTRW_WE (1 << 14) /* Write Enable */ -#define IXGBE_FCFLTRW_RE (1 << 15) /* Read Enable */ +#define IXGBE_FCFLT 0x05108 /* FC FLT Context */ +#define IXGBE_FCFLTRW 0x05110 /* FC Filter RW Control */ +#define IXGBE_FCPARAM 0x051d8 /* FC Offset Parameter */ +#define IXGBE_FCFLT_VALID (1 << 0) /* Filter Context Valid */ +#define IXGBE_FCFLT_FIRST (1 << 1) /* Filter First */ +#define IXGBE_FCFLT_SEQID 0x00ff0000 /* Sequence ID */ +#define IXGBE_FCFLT_SEQCNT 0xff000000 /* Sequence Count */ +#define IXGBE_FCFLTRW_RVALDT (1 << 13) /* Fast Re-Validation */ +#define IXGBE_FCFLTRW_WE (1 << 14) /* Write Enable */ +#define IXGBE_FCFLTRW_RE (1 << 15) /* Read Enable */ /* FCoE Receive Control */ -#define IXGBE_FCRXCTRL 0x05100 /* FC Receive Control */ -#define IXGBE_FCRXCTRL_FCOELLI (1 << 0) /* Low latency interrupt */ -#define IXGBE_FCRXCTRL_SAVBAD (1 << 1) /* Save Bad Frames */ -#define IXGBE_FCRXCTRL_FRSTRDH (1 << 2) /* EN 1st Read Header */ -#define IXGBE_FCRXCTRL_LASTSEQH (1 << 3) /* EN Last Header in Seq */ -#define IXGBE_FCRXCTRL_ALLH (1 << 4) /* EN All Headers */ -#define IXGBE_FCRXCTRL_FRSTSEQH (1 << 5) /* EN 1st Seq. Header */ -#define IXGBE_FCRXCTRL_ICRC (1 << 6) /* Ignore Bad FC CRC */ -#define IXGBE_FCRXCTRL_FCCRCBO (1 << 7) /* FC CRC Byte Ordering */ -#define IXGBE_FCRXCTRL_FCOEVER 0x00000f00 /* FCoE Version: 4 bits */ -#define IXGBE_FCRXCTRL_FCOEVER_SHIFT 8 +#define IXGBE_FCRXCTRL 0x05100 /* FC Receive Control */ +#define IXGBE_FCRXCTRL_FCOELLI (1 << 0) /* Low latency interrupt */ +#define IXGBE_FCRXCTRL_SAVBAD (1 << 1) /* Save Bad Frames */ +#define IXGBE_FCRXCTRL_FRSTRDH (1 << 2) /* EN 1st Read Header */ +#define IXGBE_FCRXCTRL_LASTSEQH (1 << 3) /* EN Last Header in Seq */ +#define IXGBE_FCRXCTRL_ALLH (1 << 4) /* EN All Headers */ +#define IXGBE_FCRXCTRL_FRSTSEQH (1 << 5) /* EN 1st Seq. Header */ +#define IXGBE_FCRXCTRL_ICRC (1 << 6) /* Ignore Bad FC CRC */ +#define IXGBE_FCRXCTRL_FCCRCBO (1 << 7) /* FC CRC Byte Ordering */ +#define IXGBE_FCRXCTRL_FCOEVER 0x00000f00 /* FCoE Version: 4 bits */ +#define IXGBE_FCRXCTRL_FCOEVER_SHIFT 8 /* FCoE Redirection */ -#define IXGBE_FCRECTL 0x0ED00 /* FC Redirection Control */ -#define IXGBE_FCRETA0 0x0ED10 /* FC Redirection Table 0 */ -#define IXGBE_FCRETA(_i) (IXGBE_FCRETA0 + ((_i) * 4)) /* FCoE Redir */ -#define IXGBE_FCRECTL_ENA 0x1 /* FCoE Redir Table Enable */ -#define IXGBE_FCRETA_SIZE 8 /* Max entries in FCRETA */ -#define IXGBE_FCRETA_ENTRY_MASK 0x0000007f /* 7 bits for the queue index */ +#define IXGBE_FCRECTL 0x0ED00 /* FC Redirection Control */ +#define IXGBE_FCRETA0 0x0ED10 /* FC Redirection Table 0 */ +#define IXGBE_FCRETA(_i) (IXGBE_FCRETA0 + ((_i) * 4)) /* FCoE Redir */ +#define IXGBE_FCRECTL_ENA 0x1 /* FCoE Redir Table Enable */ +#define IXGBE_FCRETA_SIZE 8 /* Max entries in FCRETA */ +#define IXGBE_FCRETA_ENTRY_MASK 0x0000007f /* 7 bits for the queue index */ /* Stats registers */ -#define IXGBE_CRCERRS 0x04000 -#define IXGBE_ILLERRC 0x04004 -#define IXGBE_ERRBC 0x04008 -#define IXGBE_MSPDC 0x04010 -#define IXGBE_MPC(_i) (0x03FA0 + ((_i) * 4)) /* 8 of these 3FA0-3FBC */ -#define IXGBE_MLFC 0x04034 -#define IXGBE_MRFC 0x04038 -#define IXGBE_RLEC 0x04040 -#define IXGBE_LXONTXC 0x03F60 -#define IXGBE_LXONRXC 0x0CF60 -#define IXGBE_LXOFFTXC 0x03F68 -#define IXGBE_LXOFFRXC 0x0CF68 -#define IXGBE_LXONRXCNT 0x041A4 -#define IXGBE_LXOFFRXCNT 0x041A8 -#define IXGBE_PXONRXCNT(_i) (0x04140 + ((_i) * 4)) /* 8 of these */ -#define IXGBE_PXOFFRXCNT(_i) (0x04160 + ((_i) * 4)) /* 8 of these */ -#define IXGBE_PXON2OFFCNT(_i) (0x03240 + ((_i) * 4)) /* 8 of these */ -#define IXGBE_PXONTXC(_i) (0x03F00 + ((_i) * 4)) /* 8 of these 3F00-3F1C */ -#define IXGBE_PXONRXC(_i) (0x0CF00 + ((_i) * 4)) /* 8 of these CF00-CF1C */ -#define IXGBE_PXOFFTXC(_i) (0x03F20 + ((_i) * 4)) /* 8 of these 3F20-3F3C */ -#define IXGBE_PXOFFRXC(_i) (0x0CF20 + ((_i) * 4)) /* 8 of these CF20-CF3C */ -#define IXGBE_PRC64 0x0405C -#define IXGBE_PRC127 0x04060 -#define IXGBE_PRC255 0x04064 -#define IXGBE_PRC511 0x04068 -#define IXGBE_PRC1023 0x0406C -#define IXGBE_PRC1522 0x04070 -#define IXGBE_GPRC 0x04074 -#define IXGBE_BPRC 0x04078 -#define IXGBE_MPRC 0x0407C -#define IXGBE_GPTC 0x04080 -#define IXGBE_GORCL 0x04088 -#define IXGBE_GORCH 0x0408C -#define IXGBE_GOTCL 0x04090 -#define IXGBE_GOTCH 0x04094 -#define IXGBE_RNBC(_i) (0x03FC0 + ((_i) * 4)) /* 8 of these 3FC0-3FDC */ -#define IXGBE_RUC 0x040A4 -#define IXGBE_RFC 0x040A8 -#define IXGBE_ROC 0x040AC -#define IXGBE_RJC 0x040B0 -#define IXGBE_MNGPRC 0x040B4 -#define IXGBE_MNGPDC 0x040B8 -#define IXGBE_MNGPTC 0x0CF90 -#define IXGBE_TORL 0x040C0 -#define IXGBE_TORH 0x040C4 -#define IXGBE_TPR 0x040D0 -#define IXGBE_TPT 0x040D4 -#define IXGBE_PTC64 0x040D8 -#define IXGBE_PTC127 0x040DC -#define IXGBE_PTC255 0x040E0 -#define IXGBE_PTC511 0x040E4 -#define IXGBE_PTC1023 0x040E8 -#define IXGBE_PTC1522 0x040EC -#define IXGBE_MPTC 0x040F0 -#define IXGBE_BPTC 0x040F4 -#define IXGBE_XEC 0x04120 -#define IXGBE_SSVPC 0x08780 - -#define IXGBE_RQSMR(_i) (0x02300 + ((_i) * 4)) -#define IXGBE_TQSMR(_i) (((_i) <= 7) ? \ - (0x07300 + ((_i) * 4)) : (0x08600 + ((_i) * 4))) -#define IXGBE_TQSM(_i) (0x08600 + ((_i) * 4)) - -#define IXGBE_QPRC(_i) (0x01030 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QPTC(_i) (0x06030 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QBRC(_i) (0x01034 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QBTC(_i) (0x06034 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QBRC_L(_i) (0x01034 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QBRC_H(_i) (0x01038 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QPRDC(_i) (0x01430 + ((_i) * 0x40)) /* 16 of these */ -#define IXGBE_QBTC_L(_i) (0x08700 + ((_i) * 0x8)) /* 16 of these */ -#define IXGBE_QBTC_H(_i) (0x08704 + ((_i) * 0x8)) /* 16 of these */ -#define IXGBE_FCCRC 0x05118 /* Count of Good Eth CRC w/ Bad FC CRC */ -#define IXGBE_FCOERPDC 0x0241C /* FCoE Rx Packets Dropped Count */ -#define IXGBE_FCLAST 0x02424 /* FCoE Last Error Count */ -#define IXGBE_FCOEPRC 0x02428 /* Number of FCoE Packets Received */ -#define IXGBE_FCOEDWRC 0x0242C /* Number of FCoE DWords Received */ -#define IXGBE_FCOEPTC 0x08784 /* Number of FCoE Packets Transmitted */ -#define IXGBE_FCOEDWTC 0x08788 /* Number of FCoE DWords Transmitted */ -#define IXGBE_FCCRC_CNT_MASK 0x0000FFFF /* CRC_CNT: bit 0 - 15 */ -#define IXGBE_FCLAST_CNT_MASK 0x0000FFFF /* Last_CNT: bit 0 - 15 */ +#define IXGBE_CRCERRS 0x04000 +#define IXGBE_ILLERRC 0x04004 +#define IXGBE_ERRBC 0x04008 +#define IXGBE_MSPDC 0x04010 +#define IXGBE_MPC(_i) (0x03FA0 + ((_i) * 4)) /* 8 of these 3FA0-3FBC*/ +#define IXGBE_MLFC 0x04034 +#define IXGBE_MRFC 0x04038 +#define IXGBE_RLEC 0x04040 +#define IXGBE_LXONTXC 0x03F60 +#define IXGBE_LXONRXC 0x0CF60 +#define IXGBE_LXOFFTXC 0x03F68 +#define IXGBE_LXOFFRXC 0x0CF68 +#define IXGBE_LXONRXCNT 0x041A4 +#define IXGBE_LXOFFRXCNT 0x041A8 +#define IXGBE_PXONRXCNT(_i) (0x04140 + ((_i) * 4)) /* 8 of these */ +#define IXGBE_PXOFFRXCNT(_i) (0x04160 + ((_i) * 4)) /* 8 of these */ +#define IXGBE_PXON2OFFCNT(_i) (0x03240 + ((_i) * 4)) /* 8 of these */ +#define IXGBE_PXONTXC(_i) (0x03F00 + ((_i) * 4)) /* 8 of these 3F00-3F1C*/ +#define IXGBE_PXONRXC(_i) (0x0CF00 + ((_i) * 4)) /* 8 of these CF00-CF1C*/ +#define IXGBE_PXOFFTXC(_i) (0x03F20 + ((_i) * 4)) /* 8 of these 3F20-3F3C*/ +#define IXGBE_PXOFFRXC(_i) (0x0CF20 + ((_i) * 4)) /* 8 of these CF20-CF3C*/ +#define IXGBE_PRC64 0x0405C +#define IXGBE_PRC127 0x04060 +#define IXGBE_PRC255 0x04064 +#define IXGBE_PRC511 0x04068 +#define IXGBE_PRC1023 0x0406C +#define IXGBE_PRC1522 0x04070 +#define IXGBE_GPRC 0x04074 +#define IXGBE_BPRC 0x04078 +#define IXGBE_MPRC 0x0407C +#define IXGBE_GPTC 0x04080 +#define IXGBE_GORCL 0x04088 +#define IXGBE_GORCH 0x0408C +#define IXGBE_GOTCL 0x04090 +#define IXGBE_GOTCH 0x04094 +#define IXGBE_RNBC(_i) (0x03FC0 + ((_i) * 4)) /* 8 of these 3FC0-3FDC*/ +#define IXGBE_RUC 0x040A4 +#define IXGBE_RFC 0x040A8 +#define IXGBE_ROC 0x040AC +#define IXGBE_RJC 0x040B0 +#define IXGBE_MNGPRC 0x040B4 +#define IXGBE_MNGPDC 0x040B8 +#define IXGBE_MNGPTC 0x0CF90 +#define IXGBE_TORL 0x040C0 +#define IXGBE_TORH 0x040C4 +#define IXGBE_TPR 0x040D0 +#define IXGBE_TPT 0x040D4 +#define IXGBE_PTC64 0x040D8 +#define IXGBE_PTC127 0x040DC +#define IXGBE_PTC255 0x040E0 +#define IXGBE_PTC511 0x040E4 +#define IXGBE_PTC1023 0x040E8 +#define IXGBE_PTC1522 0x040EC +#define IXGBE_MPTC 0x040F0 +#define IXGBE_BPTC 0x040F4 +#define IXGBE_XEC 0x04120 +#define IXGBE_SSVPC 0x08780 + +#define IXGBE_RQSMR(_i) (0x02300 + ((_i) * 4)) +#define IXGBE_TQSMR(_i) (((_i) <= 7) ? (0x07300 + ((_i) * 4)) : \ + (0x08600 + ((_i) * 4))) +#define IXGBE_TQSM(_i) (0x08600 + ((_i) * 4)) + +#define IXGBE_QPRC(_i) (0x01030 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QPTC(_i) (0x06030 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QBRC(_i) (0x01034 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QBTC(_i) (0x06034 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QBRC_L(_i) (0x01034 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QBRC_H(_i) (0x01038 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QPRDC(_i) (0x01430 + ((_i) * 0x40)) /* 16 of these */ +#define IXGBE_QBTC_L(_i) (0x08700 + ((_i) * 0x8)) /* 16 of these */ +#define IXGBE_QBTC_H(_i) (0x08704 + ((_i) * 0x8)) /* 16 of these */ +#define IXGBE_FCCRC 0x05118 /* Count of Good Eth CRC w/ Bad FC CRC */ +#define IXGBE_FCOERPDC 0x0241C /* FCoE Rx Packets Dropped Count */ +#define IXGBE_FCLAST 0x02424 /* FCoE Last Error Count */ +#define IXGBE_FCOEPRC 0x02428 /* Number of FCoE Packets Received */ +#define IXGBE_FCOEDWRC 0x0242C /* Number of FCoE DWords Received */ +#define IXGBE_FCOEPTC 0x08784 /* Number of FCoE Packets Transmitted */ +#define IXGBE_FCOEDWTC 0x08788 /* Number of FCoE DWords Transmitted */ +#define IXGBE_FCCRC_CNT_MASK 0x0000FFFF /* CRC_CNT: bit 0 - 15 */ +#define IXGBE_FCLAST_CNT_MASK 0x0000FFFF /* Last_CNT: bit 0 - 15 */ /* Management */ -#define IXGBE_MAVTV(_i) (0x05010 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_MFUTP(_i) (0x05030 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_MANC 0x05820 -#define IXGBE_MFVAL 0x05824 -#define IXGBE_MANC2H 0x05860 -#define IXGBE_MDEF(_i) (0x05890 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_MIPAF 0x058B0 -#define IXGBE_MMAL(_i) (0x05910 + ((_i) * 8)) /* 4 of these (0-3) */ -#define IXGBE_MMAH(_i) (0x05914 + ((_i) * 8)) /* 4 of these (0-3) */ -#define IXGBE_FTFT 0x09400 /* 0x9400-0x97FC */ -#define IXGBE_METF(_i) (0x05190 + ((_i) * 4)) /* 4 of these (0-3) */ -#define IXGBE_MDEF_EXT(_i) (0x05160 + ((_i) * 4)) /* 8 of these (0-7) */ -#define IXGBE_LSWFW 0x15014 +#define IXGBE_MAVTV(_i) (0x05010 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_MFUTP(_i) (0x05030 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_MANC 0x05820 +#define IXGBE_MFVAL 0x05824 +#define IXGBE_MANC2H 0x05860 +#define IXGBE_MDEF(_i) (0x05890 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_MIPAF 0x058B0 +#define IXGBE_MMAL(_i) (0x05910 + ((_i) * 8)) /* 4 of these (0-3) */ +#define IXGBE_MMAH(_i) (0x05914 + ((_i) * 8)) /* 4 of these (0-3) */ +#define IXGBE_FTFT 0x09400 /* 0x9400-0x97FC */ +#define IXGBE_METF(_i) (0x05190 + ((_i) * 4)) /* 4 of these (0-3) */ +#define IXGBE_MDEF_EXT(_i) (0x05160 + ((_i) * 4)) /* 8 of these (0-7) */ +#define IXGBE_LSWFW 0x15014 /* ARC Subsystem registers */ -#define IXGBE_HICR 0x15F00 -#define IXGBE_FWSTS 0x15F0C -#define IXGBE_HSMC0R 0x15F04 -#define IXGBE_HSMC1R 0x15F08 -#define IXGBE_SWSR 0x15F10 -#define IXGBE_HFDR 0x15FE8 -#define IXGBE_FLEX_MNG 0x15800 /* 0x15800 - 0x15EFC */ +#define IXGBE_HICR 0x15F00 +#define IXGBE_FWSTS 0x15F0C +#define IXGBE_HSMC0R 0x15F04 +#define IXGBE_HSMC1R 0x15F08 +#define IXGBE_SWSR 0x15F10 +#define IXGBE_HFDR 0x15FE8 +#define IXGBE_FLEX_MNG 0x15800 /* 0x15800 - 0x15EFC */ /* PCI-E registers */ -#define IXGBE_GCR 0x11000 -#define IXGBE_GTV 0x11004 -#define IXGBE_FUNCTAG 0x11008 -#define IXGBE_GLT 0x1100C -#define IXGBE_GSCL_1 0x11010 -#define IXGBE_GSCL_2 0x11014 -#define IXGBE_GSCL_3 0x11018 -#define IXGBE_GSCL_4 0x1101C -#define IXGBE_GSCN_0 0x11020 -#define IXGBE_GSCN_1 0x11024 -#define IXGBE_GSCN_2 0x11028 -#define IXGBE_GSCN_3 0x1102C -#define IXGBE_FACTPS 0x10150 -#define IXGBE_PCIEANACTL 0x11040 -#define IXGBE_SWSM 0x10140 -#define IXGBE_FWSM 0x10148 -#define IXGBE_GSSR 0x10160 -#define IXGBE_MREVID 0x11064 -#define IXGBE_DCA_ID 0x11070 -#define IXGBE_DCA_CTRL 0x11074 -#define IXGBE_SWFW_SYNC IXGBE_GSSR +#define IXGBE_GCR 0x11000 +#define IXGBE_GTV 0x11004 +#define IXGBE_FUNCTAG 0x11008 +#define IXGBE_GLT 0x1100C +#define IXGBE_GSCL_1 0x11010 +#define IXGBE_GSCL_2 0x11014 +#define IXGBE_GSCL_3 0x11018 +#define IXGBE_GSCL_4 0x1101C +#define IXGBE_GSCN_0 0x11020 +#define IXGBE_GSCN_1 0x11024 +#define IXGBE_GSCN_2 0x11028 +#define IXGBE_GSCN_3 0x1102C +#define IXGBE_FACTPS 0x10150 +#define IXGBE_PCIEANACTL 0x11040 +#define IXGBE_SWSM 0x10140 +#define IXGBE_FWSM 0x10148 +#define IXGBE_GSSR 0x10160 +#define IXGBE_MREVID 0x11064 +#define IXGBE_DCA_ID 0x11070 +#define IXGBE_DCA_CTRL 0x11074 +#define IXGBE_SWFW_SYNC IXGBE_GSSR /* PCI-E registers 82599-Specific */ -#define IXGBE_GCR_EXT 0x11050 -#define IXGBE_GSCL_5_82599 0x11030 -#define IXGBE_GSCL_6_82599 0x11034 -#define IXGBE_GSCL_7_82599 0x11038 -#define IXGBE_GSCL_8_82599 0x1103C -#define IXGBE_PHYADR_82599 0x11040 -#define IXGBE_PHYDAT_82599 0x11044 -#define IXGBE_PHYCTL_82599 0x11048 -#define IXGBE_PBACLR_82599 0x11068 -#define IXGBE_CIAA_82599 0x11088 -#define IXGBE_CIAD_82599 0x1108C -#define IXGBE_INTRPT_CSR_82599 0x110B0 -#define IXGBE_INTRPT_MASK_82599 0x110B8 -#define IXGBE_CDQ_MBR_82599 0x110B4 -#define IXGBE_MISC_REG_82599 0x110F0 -#define IXGBE_ECC_CTRL_0_82599 0x11100 -#define IXGBE_ECC_CTRL_1_82599 0x11104 -#define IXGBE_ECC_STATUS_82599 0x110E0 -#define IXGBE_BAR_CTRL_82599 0x110F4 +#define IXGBE_GCR_EXT 0x11050 +#define IXGBE_GSCL_5_82599 0x11030 +#define IXGBE_GSCL_6_82599 0x11034 +#define IXGBE_GSCL_7_82599 0x11038 +#define IXGBE_GSCL_8_82599 0x1103C +#define IXGBE_PHYADR_82599 0x11040 +#define IXGBE_PHYDAT_82599 0x11044 +#define IXGBE_PHYCTL_82599 0x11048 +#define IXGBE_PBACLR_82599 0x11068 +#define IXGBE_CIAA_82599 0x11088 +#define IXGBE_CIAD_82599 0x1108C +#define IXGBE_INTRPT_CSR_82599 0x110B0 +#define IXGBE_INTRPT_MASK_82599 0x110B8 +#define IXGBE_CDQ_MBR_82599 0x110B4 +#define IXGBE_MISC_REG_82599 0x110F0 +#define IXGBE_ECC_CTRL_0_82599 0x11100 +#define IXGBE_ECC_CTRL_1_82599 0x11104 +#define IXGBE_ECC_STATUS_82599 0x110E0 +#define IXGBE_BAR_CTRL_82599 0x110F4 /* PCI Express Control */ -#define IXGBE_GCR_CMPL_TMOUT_MASK 0x0000F000 -#define IXGBE_GCR_CMPL_TMOUT_10ms 0x00001000 -#define IXGBE_GCR_CMPL_TMOUT_RESEND 0x00010000 -#define IXGBE_GCR_CAP_VER2 0x00040000 - -#define IXGBE_GCR_EXT_MSIX_EN 0x80000000 -#define IXGBE_GCR_EXT_VT_MODE_16 0x00000001 -#define IXGBE_GCR_EXT_VT_MODE_32 0x00000002 -#define IXGBE_GCR_EXT_VT_MODE_64 0x00000003 -#define IXGBE_GCR_EXT_SRIOV (IXGBE_GCR_EXT_MSIX_EN | \ - IXGBE_GCR_EXT_VT_MODE_64) +#define IXGBE_GCR_CMPL_TMOUT_MASK 0x0000F000 +#define IXGBE_GCR_CMPL_TMOUT_10ms 0x00001000 +#define IXGBE_GCR_CMPL_TMOUT_RESEND 0x00010000 +#define IXGBE_GCR_CAP_VER2 0x00040000 + +#define IXGBE_GCR_EXT_MSIX_EN 0x80000000 +#define IXGBE_GCR_EXT_VT_MODE_16 0x00000001 +#define IXGBE_GCR_EXT_VT_MODE_32 0x00000002 +#define IXGBE_GCR_EXT_VT_MODE_64 0x00000003 +#define IXGBE_GCR_EXT_SRIOV (IXGBE_GCR_EXT_MSIX_EN | \ + IXGBE_GCR_EXT_VT_MODE_64) /* Time Sync Registers */ -#define IXGBE_TSYNCRXCTL 0x05188 /* Rx Time Sync Control register - RW */ -#define IXGBE_TSYNCTXCTL 0x08C00 /* Tx Time Sync Control register - RW */ -#define IXGBE_RXSTMPL 0x051E8 /* Rx timestamp Low - RO */ -#define IXGBE_RXSTMPH 0x051A4 /* Rx timestamp High - RO */ -#define IXGBE_RXSATRL 0x051A0 /* Rx timestamp attribute low - RO */ -#define IXGBE_RXSATRH 0x051A8 /* Rx timestamp attribute high - RO */ -#define IXGBE_RXMTRL 0x05120 /* RX message type register low - RW */ -#define IXGBE_TXSTMPL 0x08C04 /* Tx timestamp value Low - RO */ -#define IXGBE_TXSTMPH 0x08C08 /* Tx timestamp value High - RO */ -#define IXGBE_SYSTIML 0x08C0C /* System time register Low - RO */ -#define IXGBE_SYSTIMH 0x08C10 /* System time register High - RO */ -#define IXGBE_TIMINCA 0x08C14 /* Increment attributes register - RW */ -#define IXGBE_RXUDP 0x08C1C /* Time Sync Rx UDP Port - RW */ +#define IXGBE_TSYNCRXCTL 0x05188 /* Rx Time Sync Control register - RW */ +#define IXGBE_TSYNCTXCTL 0x08C00 /* Tx Time Sync Control register - RW */ +#define IXGBE_RXSTMPL 0x051E8 /* Rx timestamp Low - RO */ +#define IXGBE_RXSTMPH 0x051A4 /* Rx timestamp High - RO */ +#define IXGBE_RXSATRL 0x051A0 /* Rx timestamp attribute low - RO */ +#define IXGBE_RXSATRH 0x051A8 /* Rx timestamp attribute high - RO */ +#define IXGBE_RXMTRL 0x05120 /* RX message type register low - RW */ +#define IXGBE_TXSTMPL 0x08C04 /* Tx timestamp value Low - RO */ +#define IXGBE_TXSTMPH 0x08C08 /* Tx timestamp value High - RO */ +#define IXGBE_SYSTIML 0x08C0C /* System time register Low - RO */ +#define IXGBE_SYSTIMH 0x08C10 /* System time register High - RO */ +#define IXGBE_TIMINCA 0x08C14 /* Increment attributes register - RW */ +#define IXGBE_RXUDP 0x08C1C /* Time Sync Rx UDP Port - RW */ /* Diagnostic Registers */ -#define IXGBE_RDSTATCTL 0x02C20 -#define IXGBE_RDSTAT(_i) (0x02C00 + ((_i) * 4)) /* 0x02C00-0x02C1C */ -#define IXGBE_RDHMPN 0x02F08 -#define IXGBE_RIC_DW(_i) (0x02F10 + ((_i) * 4)) -#define IXGBE_RDPROBE 0x02F20 -#define IXGBE_RDMAM 0x02F30 -#define IXGBE_RDMAD 0x02F34 -#define IXGBE_TDSTATCTL 0x07C20 -#define IXGBE_TDSTAT(_i) (0x07C00 + ((_i) * 4)) /* 0x07C00 - 0x07C1C */ -#define IXGBE_TDHMPN 0x07F08 -#define IXGBE_TDHMPN2 0x082FC -#define IXGBE_TXDESCIC 0x082CC -#define IXGBE_TIC_DW(_i) (0x07F10 + ((_i) * 4)) -#define IXGBE_TIC_DW2(_i) (0x082B0 + ((_i) * 4)) -#define IXGBE_TDPROBE 0x07F20 -#define IXGBE_TXBUFCTRL 0x0C600 -#define IXGBE_TXBUFDATA0 0x0C610 -#define IXGBE_TXBUFDATA1 0x0C614 -#define IXGBE_TXBUFDATA2 0x0C618 -#define IXGBE_TXBUFDATA3 0x0C61C -#define IXGBE_RXBUFCTRL 0x03600 -#define IXGBE_RXBUFDATA0 0x03610 -#define IXGBE_RXBUFDATA1 0x03614 -#define IXGBE_RXBUFDATA2 0x03618 -#define IXGBE_RXBUFDATA3 0x0361C -#define IXGBE_PCIE_DIAG(_i) (0x11090 + ((_i) * 4)) /* 8 of these */ -#define IXGBE_RFVAL 0x050A4 -#define IXGBE_MDFTC1 0x042B8 -#define IXGBE_MDFTC2 0x042C0 -#define IXGBE_MDFTFIFO1 0x042C4 -#define IXGBE_MDFTFIFO2 0x042C8 -#define IXGBE_MDFTS 0x042CC -#define IXGBE_RXDATAWRPTR(_i) (0x03700 + ((_i) * 4)) /* 8 of these 3700-370C */ -#define IXGBE_RXDESCWRPTR(_i) (0x03710 + ((_i) * 4)) /* 8 of these 3710-371C */ -#define IXGBE_RXDATARDPTR(_i) (0x03720 + ((_i) * 4)) /* 8 of these 3720-372C */ -#define IXGBE_RXDESCRDPTR(_i) (0x03730 + ((_i) * 4)) /* 8 of these 3730-373C */ -#define IXGBE_TXDATAWRPTR(_i) (0x0C700 + ((_i) * 4)) /* 8 of these C700-C70C */ -#define IXGBE_TXDESCWRPTR(_i) (0x0C710 + ((_i) * 4)) /* 8 of these C710-C71C */ -#define IXGBE_TXDATARDPTR(_i) (0x0C720 + ((_i) * 4)) /* 8 of these C720-C72C */ -#define IXGBE_TXDESCRDPTR(_i) (0x0C730 + ((_i) * 4)) /* 8 of these C730-C73C */ -#define IXGBE_PCIEECCCTL 0x1106C -#define IXGBE_RXWRPTR(_i) (0x03100 + ((_i) * 4)) /* 8 of these 3100-310C */ -#define IXGBE_RXUSED(_i) (0x03120 + ((_i) * 4)) /* 8 of these 3120-312C */ -#define IXGBE_RXRDPTR(_i) (0x03140 + ((_i) * 4)) /* 8 of these 3140-314C */ -#define IXGBE_RXRDWRPTR(_i) (0x03160 + ((_i) * 4)) /* 8 of these 3160-310C */ -#define IXGBE_TXWRPTR(_i) (0x0C100 + ((_i) * 4)) /* 8 of these C100-C10C */ -#define IXGBE_TXUSED(_i) (0x0C120 + ((_i) * 4)) /* 8 of these C120-C12C */ -#define IXGBE_TXRDPTR(_i) (0x0C140 + ((_i) * 4)) /* 8 of these C140-C14C */ -#define IXGBE_TXRDWRPTR(_i) (0x0C160 + ((_i) * 4)) /* 8 of these C160-C10C */ -#define IXGBE_PCIEECCCTL0 0x11100 -#define IXGBE_PCIEECCCTL1 0x11104 -#define IXGBE_RXDBUECC 0x03F70 -#define IXGBE_TXDBUECC 0x0CF70 -#define IXGBE_RXDBUEST 0x03F74 -#define IXGBE_TXDBUEST 0x0CF74 -#define IXGBE_PBTXECC 0x0C300 -#define IXGBE_PBRXECC 0x03300 -#define IXGBE_GHECCR 0x110B0 +#define IXGBE_RDSTATCTL 0x02C20 +#define IXGBE_RDSTAT(_i) (0x02C00 + ((_i) * 4)) /* 0x02C00-0x02C1C */ +#define IXGBE_RDHMPN 0x02F08 +#define IXGBE_RIC_DW(_i) (0x02F10 + ((_i) * 4)) +#define IXGBE_RDPROBE 0x02F20 +#define IXGBE_RDMAM 0x02F30 +#define IXGBE_RDMAD 0x02F34 +#define IXGBE_TDSTATCTL 0x07C20 +#define IXGBE_TDSTAT(_i) (0x07C00 + ((_i) * 4)) /* 0x07C00 - 0x07C1C */ +#define IXGBE_TDHMPN 0x07F08 +#define IXGBE_TDHMPN2 0x082FC +#define IXGBE_TXDESCIC 0x082CC +#define IXGBE_TIC_DW(_i) (0x07F10 + ((_i) * 4)) +#define IXGBE_TIC_DW2(_i) (0x082B0 + ((_i) * 4)) +#define IXGBE_TDPROBE 0x07F20 +#define IXGBE_TXBUFCTRL 0x0C600 +#define IXGBE_TXBUFDATA0 0x0C610 +#define IXGBE_TXBUFDATA1 0x0C614 +#define IXGBE_TXBUFDATA2 0x0C618 +#define IXGBE_TXBUFDATA3 0x0C61C +#define IXGBE_RXBUFCTRL 0x03600 +#define IXGBE_RXBUFDATA0 0x03610 +#define IXGBE_RXBUFDATA1 0x03614 +#define IXGBE_RXBUFDATA2 0x03618 +#define IXGBE_RXBUFDATA3 0x0361C +#define IXGBE_PCIE_DIAG(_i) (0x11090 + ((_i) * 4)) /* 8 of these */ +#define IXGBE_RFVAL 0x050A4 +#define IXGBE_MDFTC1 0x042B8 +#define IXGBE_MDFTC2 0x042C0 +#define IXGBE_MDFTFIFO1 0x042C4 +#define IXGBE_MDFTFIFO2 0x042C8 +#define IXGBE_MDFTS 0x042CC +#define IXGBE_RXDATAWRPTR(_i) (0x03700 + ((_i) * 4)) /* 8 of these 3700-370C*/ +#define IXGBE_RXDESCWRPTR(_i) (0x03710 + ((_i) * 4)) /* 8 of these 3710-371C*/ +#define IXGBE_RXDATARDPTR(_i) (0x03720 + ((_i) * 4)) /* 8 of these 3720-372C*/ +#define IXGBE_RXDESCRDPTR(_i) (0x03730 + ((_i) * 4)) /* 8 of these 3730-373C*/ +#define IXGBE_TXDATAWRPTR(_i) (0x0C700 + ((_i) * 4)) /* 8 of these C700-C70C*/ +#define IXGBE_TXDESCWRPTR(_i) (0x0C710 + ((_i) * 4)) /* 8 of these C710-C71C*/ +#define IXGBE_TXDATARDPTR(_i) (0x0C720 + ((_i) * 4)) /* 8 of these C720-C72C*/ +#define IXGBE_TXDESCRDPTR(_i) (0x0C730 + ((_i) * 4)) /* 8 of these C730-C73C*/ +#define IXGBE_PCIEECCCTL 0x1106C +#define IXGBE_RXWRPTR(_i) (0x03100 + ((_i) * 4)) /* 8 of these 3100-310C*/ +#define IXGBE_RXUSED(_i) (0x03120 + ((_i) * 4)) /* 8 of these 3120-312C*/ +#define IXGBE_RXRDPTR(_i) (0x03140 + ((_i) * 4)) /* 8 of these 3140-314C*/ +#define IXGBE_RXRDWRPTR(_i) (0x03160 + ((_i) * 4)) /* 8 of these 3160-310C*/ +#define IXGBE_TXWRPTR(_i) (0x0C100 + ((_i) * 4)) /* 8 of these C100-C10C*/ +#define IXGBE_TXUSED(_i) (0x0C120 + ((_i) * 4)) /* 8 of these C120-C12C*/ +#define IXGBE_TXRDPTR(_i) (0x0C140 + ((_i) * 4)) /* 8 of these C140-C14C*/ +#define IXGBE_TXRDWRPTR(_i) (0x0C160 + ((_i) * 4)) /* 8 of these C160-C10C*/ +#define IXGBE_PCIEECCCTL0 0x11100 +#define IXGBE_PCIEECCCTL1 0x11104 +#define IXGBE_RXDBUECC 0x03F70 +#define IXGBE_TXDBUECC 0x0CF70 +#define IXGBE_RXDBUEST 0x03F74 +#define IXGBE_TXDBUEST 0x0CF74 +#define IXGBE_PBTXECC 0x0C300 +#define IXGBE_PBRXECC 0x03300 +#define IXGBE_GHECCR 0x110B0 /* MAC Registers */ -#define IXGBE_PCS1GCFIG 0x04200 -#define IXGBE_PCS1GLCTL 0x04208 -#define IXGBE_PCS1GLSTA 0x0420C -#define IXGBE_PCS1GDBG0 0x04210 -#define IXGBE_PCS1GDBG1 0x04214 -#define IXGBE_PCS1GANA 0x04218 -#define IXGBE_PCS1GANLP 0x0421C -#define IXGBE_PCS1GANNP 0x04220 -#define IXGBE_PCS1GANLPNP 0x04224 -#define IXGBE_HLREG0 0x04240 -#define IXGBE_HLREG1 0x04244 -#define IXGBE_PAP 0x04248 -#define IXGBE_MACA 0x0424C -#define IXGBE_APAE 0x04250 -#define IXGBE_ARD 0x04254 -#define IXGBE_AIS 0x04258 -#define IXGBE_MSCA 0x0425C -#define IXGBE_MSRWD 0x04260 -#define IXGBE_MLADD 0x04264 -#define IXGBE_MHADD 0x04268 -#define IXGBE_MAXFRS 0x04268 -#define IXGBE_TREG 0x0426C -#define IXGBE_PCSS1 0x04288 -#define IXGBE_PCSS2 0x0428C -#define IXGBE_XPCSS 0x04290 -#define IXGBE_MFLCN 0x04294 -#define IXGBE_SERDESC 0x04298 -#define IXGBE_MACS 0x0429C -#define IXGBE_AUTOC 0x042A0 -#define IXGBE_LINKS 0x042A4 -#define IXGBE_LINKS2 0x04324 -#define IXGBE_AUTOC2 0x042A8 -#define IXGBE_AUTOC3 0x042AC -#define IXGBE_ANLP1 0x042B0 -#define IXGBE_ANLP2 0x042B4 -#define IXGBE_ATLASCTL 0x04800 -#define IXGBE_MMNGC 0x042D0 -#define IXGBE_ANLPNP1 0x042D4 -#define IXGBE_ANLPNP2 0x042D8 -#define IXGBE_KRPCSFC 0x042E0 -#define IXGBE_KRPCSS 0x042E4 -#define IXGBE_FECS1 0x042E8 -#define IXGBE_FECS2 0x042EC -#define IXGBE_SMADARCTL 0x14F10 -#define IXGBE_MPVC 0x04318 -#define IXGBE_SGMIIC 0x04314 +#define IXGBE_PCS1GCFIG 0x04200 +#define IXGBE_PCS1GLCTL 0x04208 +#define IXGBE_PCS1GLSTA 0x0420C +#define IXGBE_PCS1GDBG0 0x04210 +#define IXGBE_PCS1GDBG1 0x04214 +#define IXGBE_PCS1GANA 0x04218 +#define IXGBE_PCS1GANLP 0x0421C +#define IXGBE_PCS1GANNP 0x04220 +#define IXGBE_PCS1GANLPNP 0x04224 +#define IXGBE_HLREG0 0x04240 +#define IXGBE_HLREG1 0x04244 +#define IXGBE_PAP 0x04248 +#define IXGBE_MACA 0x0424C +#define IXGBE_APAE 0x04250 +#define IXGBE_ARD 0x04254 +#define IXGBE_AIS 0x04258 +#define IXGBE_MSCA 0x0425C +#define IXGBE_MSRWD 0x04260 +#define IXGBE_MLADD 0x04264 +#define IXGBE_MHADD 0x04268 +#define IXGBE_MAXFRS 0x04268 +#define IXGBE_TREG 0x0426C +#define IXGBE_PCSS1 0x04288 +#define IXGBE_PCSS2 0x0428C +#define IXGBE_XPCSS 0x04290 +#define IXGBE_MFLCN 0x04294 +#define IXGBE_SERDESC 0x04298 +#define IXGBE_MACS 0x0429C +#define IXGBE_AUTOC 0x042A0 +#define IXGBE_LINKS 0x042A4 +#define IXGBE_LINKS2 0x04324 +#define IXGBE_AUTOC2 0x042A8 +#define IXGBE_AUTOC3 0x042AC +#define IXGBE_ANLP1 0x042B0 +#define IXGBE_ANLP2 0x042B4 +#define IXGBE_ATLASCTL 0x04800 +#define IXGBE_MMNGC 0x042D0 +#define IXGBE_ANLPNP1 0x042D4 +#define IXGBE_ANLPNP2 0x042D8 +#define IXGBE_KRPCSFC 0x042E0 +#define IXGBE_KRPCSS 0x042E4 +#define IXGBE_FECS1 0x042E8 +#define IXGBE_FECS2 0x042EC +#define IXGBE_SMADARCTL 0x14F10 +#define IXGBE_MPVC 0x04318 +#define IXGBE_SGMIIC 0x04314 /* Copper Pond 2 link timeout */ -#define IXGBE_VALIDATE_LINK_READY_TIMEOUT 50 +#define IXGBE_VALIDATE_LINK_READY_TIMEOUT 50 /* Omer CORECTL */ -#define IXGBE_CORECTL 0x014F00 +#define IXGBE_CORECTL 0x014F00 /* BARCTRL */ -#define IXGBE_BARCTRL 0x110F4 -#define IXGBE_BARCTRL_FLSIZE 0x0700 -#define IXGBE_BARCTRL_FLSIZE_SHIFT 8 -#define IXGBE_BARCTRL_CSRSIZE 0x2000 +#define IXGBE_BARCTRL 0x110F4 +#define IXGBE_BARCTRL_FLSIZE 0x0700 +#define IXGBE_BARCTRL_FLSIZE_SHIFT 8 +#define IXGBE_BARCTRL_CSRSIZE 0x2000 /* RSCCTL Bit Masks */ -#define IXGBE_RSCCTL_RSCEN 0x01 -#define IXGBE_RSCCTL_MAXDESC_1 0x00 -#define IXGBE_RSCCTL_MAXDESC_4 0x04 -#define IXGBE_RSCCTL_MAXDESC_8 0x08 -#define IXGBE_RSCCTL_MAXDESC_16 0x0C +#define IXGBE_RSCCTL_RSCEN 0x01 +#define IXGBE_RSCCTL_MAXDESC_1 0x00 +#define IXGBE_RSCCTL_MAXDESC_4 0x04 +#define IXGBE_RSCCTL_MAXDESC_8 0x08 +#define IXGBE_RSCCTL_MAXDESC_16 0x0C /* RSCDBU Bit Masks */ -#define IXGBE_RSCDBU_RSCSMALDIS_MASK 0x0000007F -#define IXGBE_RSCDBU_RSCACKDIS 0x00000080 +#define IXGBE_RSCDBU_RSCSMALDIS_MASK 0x0000007F +#define IXGBE_RSCDBU_RSCACKDIS 0x00000080 /* RDRXCTL Bit Masks */ -#define IXGBE_RDRXCTL_RDMTS_1_2 0x00000000 /* Rx Desc Min Threshold Size */ -#define IXGBE_RDRXCTL_CRCSTRIP 0x00000002 /* CRC Strip */ -#define IXGBE_RDRXCTL_MVMEN 0x00000020 -#define IXGBE_RDRXCTL_DMAIDONE 0x00000008 /* DMA init cycle done */ -#define IXGBE_RDRXCTL_AGGDIS 0x00010000 /* Aggregation disable */ -#define IXGBE_RDRXCTL_RSCFRSTSIZE 0x003E0000 /* RSC First packet size */ -#define IXGBE_RDRXCTL_RSCLLIDIS 0x00800000 /* Disable RSC compl on LLI */ -#define IXGBE_RDRXCTL_RSCACKC 0x02000000 /* must set 1 when RSC enabled */ -#define IXGBE_RDRXCTL_FCOE_WRFIX 0x04000000 /* must set 1 when RSC enabled */ +#define IXGBE_RDRXCTL_RDMTS_1_2 0x00000000 /* Rx Desc Min Threshold Size */ +#define IXGBE_RDRXCTL_CRCSTRIP 0x00000002 /* CRC Strip */ +#define IXGBE_RDRXCTL_MVMEN 0x00000020 +#define IXGBE_RDRXCTL_DMAIDONE 0x00000008 /* DMA init cycle done */ +#define IXGBE_RDRXCTL_AGGDIS 0x00010000 /* Aggregation disable */ +#define IXGBE_RDRXCTL_RSCFRSTSIZE 0x003E0000 /* RSC First packet size */ +#define IXGBE_RDRXCTL_RSCLLIDIS 0x00800000 /* Disable RSC compl on LLI */ +#define IXGBE_RDRXCTL_RSCACKC 0x02000000 /* must set 1 when RSC enabled */ +#define IXGBE_RDRXCTL_FCOE_WRFIX 0x04000000 /* must set 1 when RSC enabled */ /* RQTC Bit Masks and Shifts */ -#define IXGBE_RQTC_SHIFT_TC(_i) ((_i) * 4) -#define IXGBE_RQTC_TC0_MASK (0x7 << 0) -#define IXGBE_RQTC_TC1_MASK (0x7 << 4) -#define IXGBE_RQTC_TC2_MASK (0x7 << 8) -#define IXGBE_RQTC_TC3_MASK (0x7 << 12) -#define IXGBE_RQTC_TC4_MASK (0x7 << 16) -#define IXGBE_RQTC_TC5_MASK (0x7 << 20) -#define IXGBE_RQTC_TC6_MASK (0x7 << 24) -#define IXGBE_RQTC_TC7_MASK (0x7 << 28) +#define IXGBE_RQTC_SHIFT_TC(_i) ((_i) * 4) +#define IXGBE_RQTC_TC0_MASK (0x7 << 0) +#define IXGBE_RQTC_TC1_MASK (0x7 << 4) +#define IXGBE_RQTC_TC2_MASK (0x7 << 8) +#define IXGBE_RQTC_TC3_MASK (0x7 << 12) +#define IXGBE_RQTC_TC4_MASK (0x7 << 16) +#define IXGBE_RQTC_TC5_MASK (0x7 << 20) +#define IXGBE_RQTC_TC6_MASK (0x7 << 24) +#define IXGBE_RQTC_TC7_MASK (0x7 << 28) /* PSRTYPE.RQPL Bit masks and shift */ -#define IXGBE_PSRTYPE_RQPL_MASK 0x7 -#define IXGBE_PSRTYPE_RQPL_SHIFT 29 +#define IXGBE_PSRTYPE_RQPL_MASK 0x7 +#define IXGBE_PSRTYPE_RQPL_SHIFT 29 /* CTRL Bit Masks */ -#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Master Disable bit */ -#define IXGBE_CTRL_LNK_RST 0x00000008 /* Link Reset. Resets everything. */ -#define IXGBE_CTRL_RST 0x04000000 /* Reset (SW) */ +#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Master Disable bit */ +#define IXGBE_CTRL_LNK_RST 0x00000008 /* Link Reset. Resets everything. */ +#define IXGBE_CTRL_RST 0x04000000 /* Reset (SW) */ /* FACTPS */ -#define IXGBE_FACTPS_LFS 0x40000000 /* LAN Function Select */ +#define IXGBE_FACTPS_LFS 0x40000000 /* LAN Function Select */ /* MHADD Bit Masks */ -#define IXGBE_MHADD_MFS_MASK 0xFFFF0000 -#define IXGBE_MHADD_MFS_SHIFT 16 +#define IXGBE_MHADD_MFS_MASK 0xFFFF0000 +#define IXGBE_MHADD_MFS_SHIFT 16 /* Extended Device Control */ -#define IXGBE_CTRL_EXT_PFRSTD 0x00004000 /* Physical Function Reset Done */ -#define IXGBE_CTRL_EXT_NS_DIS 0x00010000 /* No Snoop disable */ -#define IXGBE_CTRL_EXT_RO_DIS 0x00020000 /* Relaxed Ordering disable */ -#define IXGBE_CTRL_EXT_DRV_LOAD 0x10000000 /* Driver loaded bit for FW */ +#define IXGBE_CTRL_EXT_PFRSTD 0x00004000 /* Physical Function Reset Done */ +#define IXGBE_CTRL_EXT_NS_DIS 0x00010000 /* No Snoop disable */ +#define IXGBE_CTRL_EXT_RO_DIS 0x00020000 /* Relaxed Ordering disable */ +#define IXGBE_CTRL_EXT_DRV_LOAD 0x10000000 /* Driver loaded bit for FW */ /* Direct Cache Access (DCA) definitions */ -#define IXGBE_DCA_CTRL_DCA_ENABLE 0x00000000 /* DCA Enable */ -#define IXGBE_DCA_CTRL_DCA_DISABLE 0x00000001 /* DCA Disable */ - -#define IXGBE_DCA_CTRL_DCA_MODE_CB1 0x00 /* DCA Mode CB1 */ -#define IXGBE_DCA_CTRL_DCA_MODE_CB2 0x02 /* DCA Mode CB2 */ - -#define IXGBE_DCA_RXCTRL_CPUID_MASK 0x0000001F /* Rx CPUID Mask */ -#define IXGBE_DCA_RXCTRL_CPUID_MASK_82599 0xFF000000 /* Rx CPUID Mask */ -#define IXGBE_DCA_RXCTRL_CPUID_SHIFT_82599 24 /* Rx CPUID Shift */ -#define IXGBE_DCA_RXCTRL_DESC_DCA_EN (1 << 5) /* DCA Rx Desc enable */ -#define IXGBE_DCA_RXCTRL_HEAD_DCA_EN (1 << 6) /* DCA Rx Desc header enable */ -#define IXGBE_DCA_RXCTRL_DATA_DCA_EN (1 << 7) /* DCA Rx Desc payload enable */ -#define IXGBE_DCA_RXCTRL_DESC_RRO_EN (1 << 9) /* DCA Rx rd Desc Relax Order */ -#define IXGBE_DCA_RXCTRL_DESC_WRO_EN (1 << 13) /* DCA Rx wr Desc Relax Order */ -#define IXGBE_DCA_RXCTRL_DESC_HSRO_EN (1 << 15) /* DCA Rx Split Header RO */ - -#define IXGBE_DCA_TXCTRL_CPUID_MASK 0x0000001F /* Tx CPUID Mask */ -#define IXGBE_DCA_TXCTRL_CPUID_MASK_82599 0xFF000000 /* Tx CPUID Mask */ -#define IXGBE_DCA_TXCTRL_CPUID_SHIFT_82599 24 /* Tx CPUID Shift */ -#define IXGBE_DCA_TXCTRL_DESC_DCA_EN (1 << 5) /* DCA Tx Desc enable */ -#define IXGBE_DCA_TXCTRL_TX_WB_RO_EN (1 << 11) /* Tx Desc writeback RO bit */ -#define IXGBE_DCA_MAX_QUEUES_82598 16 /* DCA regs only on 16 queues */ +#define IXGBE_DCA_CTRL_DCA_ENABLE 0x00000000 /* DCA Enable */ +#define IXGBE_DCA_CTRL_DCA_DISABLE 0x00000001 /* DCA Disable */ + +#define IXGBE_DCA_CTRL_DCA_MODE_CB1 0x00 /* DCA Mode CB1 */ +#define IXGBE_DCA_CTRL_DCA_MODE_CB2 0x02 /* DCA Mode CB2 */ + +#define IXGBE_DCA_RXCTRL_CPUID_MASK 0x0000001F /* Rx CPUID Mask */ +#define IXGBE_DCA_RXCTRL_CPUID_MASK_82599 0xFF000000 /* Rx CPUID Mask */ +#define IXGBE_DCA_RXCTRL_CPUID_SHIFT_82599 24 /* Rx CPUID Shift */ +#define IXGBE_DCA_RXCTRL_DESC_DCA_EN (1 << 5) /* DCA Rx Desc enable */ +#define IXGBE_DCA_RXCTRL_HEAD_DCA_EN (1 << 6) /* DCA Rx Desc header enable */ +#define IXGBE_DCA_RXCTRL_DATA_DCA_EN (1 << 7) /* DCA Rx Desc payload enable */ +#define IXGBE_DCA_RXCTRL_DESC_RRO_EN (1 << 9) /* DCA Rx rd Desc Relax Order */ +#define IXGBE_DCA_RXCTRL_DESC_WRO_EN (1 << 13) /* DCA Rx wr Desc Relax Order */ +#define IXGBE_DCA_RXCTRL_DESC_HSRO_EN (1 << 15) /* DCA Rx Split Header RO */ + +#define IXGBE_DCA_TXCTRL_CPUID_MASK 0x0000001F /* Tx CPUID Mask */ +#define IXGBE_DCA_TXCTRL_CPUID_MASK_82599 0xFF000000 /* Tx CPUID Mask */ +#define IXGBE_DCA_TXCTRL_CPUID_SHIFT_82599 24 /* Tx CPUID Shift */ +#define IXGBE_DCA_TXCTRL_DESC_DCA_EN (1 << 5) /* DCA Tx Desc enable */ +#define IXGBE_DCA_TXCTRL_TX_WB_RO_EN (1 << 11) /* Tx Desc writeback RO bit */ +#define IXGBE_DCA_MAX_QUEUES_82598 16 /* DCA regs only on 16 queues */ /* MSCA Bit Masks */ -#define IXGBE_MSCA_NP_ADDR_MASK 0x0000FFFF - /* MDI Address (new protocol) */ -#define IXGBE_MSCA_NP_ADDR_SHIFT 0 -#define IXGBE_MSCA_DEV_TYPE_MASK 0x001F0000 - /* Device Type (new protocol) */ -#define IXGBE_MSCA_DEV_TYPE_SHIFT 16 /* Register Address (old protocol */ -#define IXGBE_MSCA_PHY_ADDR_MASK 0x03E00000 /* PHY Address mask */ -#define IXGBE_MSCA_PHY_ADDR_SHIFT 21 /* PHY Address shift */ -#define IXGBE_MSCA_OP_CODE_MASK 0x0C000000 /* OP CODE mask */ -#define IXGBE_MSCA_OP_CODE_SHIFT 26 /* OP CODE shift */ -#define IXGBE_MSCA_ADDR_CYCLE 0x00000000 /* OP CODE 00 (addr cycle) */ -#define IXGBE_MSCA_WRITE 0x04000000 /* OP CODE 01 (write) */ -#define IXGBE_MSCA_READ 0x08000000 /* OP CODE 10 (read) */ -#define IXGBE_MSCA_READ_AUTOINC 0x0C000000 - /* OP CODE 11 (read, auto inc) */ -#define IXGBE_MSCA_ST_CODE_MASK 0x30000000 /* ST Code mask */ -#define IXGBE_MSCA_ST_CODE_SHIFT 28 /* ST Code shift */ -#define IXGBE_MSCA_NEW_PROTOCOL 0x00000000 - /* ST CODE 00 (new protocol) */ -#define IXGBE_MSCA_OLD_PROTOCOL 0x10000000 - /* ST CODE 01 (old protocol) */ -#define IXGBE_MSCA_MDI_COMMAND 0x40000000 /* Initiate MDI command */ -#define IXGBE_MSCA_MDI_IN_PROG_EN 0x80000000 /* MDI in progress enable */ +#define IXGBE_MSCA_NP_ADDR_MASK 0x0000FFFF /* MDI Address (new protocol) */ +#define IXGBE_MSCA_NP_ADDR_SHIFT 0 +#define IXGBE_MSCA_DEV_TYPE_MASK 0x001F0000 /* Device Type (new protocol) */ +#define IXGBE_MSCA_DEV_TYPE_SHIFT 16 /* Register Address (old protocol */ +#define IXGBE_MSCA_PHY_ADDR_MASK 0x03E00000 /* PHY Address mask */ +#define IXGBE_MSCA_PHY_ADDR_SHIFT 21 /* PHY Address shift*/ +#define IXGBE_MSCA_OP_CODE_MASK 0x0C000000 /* OP CODE mask */ +#define IXGBE_MSCA_OP_CODE_SHIFT 26 /* OP CODE shift */ +#define IXGBE_MSCA_ADDR_CYCLE 0x00000000 /* OP CODE 00 (addr cycle) */ +#define IXGBE_MSCA_WRITE 0x04000000 /* OP CODE 01 (write) */ +#define IXGBE_MSCA_READ 0x0C000000 /* OP CODE 11 (read) */ +#define IXGBE_MSCA_READ_AUTOINC 0x08000000 /* OP CODE 10 (read, auto inc)*/ +#define IXGBE_MSCA_ST_CODE_MASK 0x30000000 /* ST Code mask */ +#define IXGBE_MSCA_ST_CODE_SHIFT 28 /* ST Code shift */ +#define IXGBE_MSCA_NEW_PROTOCOL 0x00000000 /* ST CODE 00 (new protocol) */ +#define IXGBE_MSCA_OLD_PROTOCOL 0x10000000 /* ST CODE 01 (old protocol) */ +#define IXGBE_MSCA_MDI_COMMAND 0x40000000 /* Initiate MDI command */ +#define IXGBE_MSCA_MDI_IN_PROG_EN 0x80000000 /* MDI in progress enable */ /* MSRWD bit masks */ -#define IXGBE_MSRWD_WRITE_DATA_MASK 0x0000FFFF -#define IXGBE_MSRWD_WRITE_DATA_SHIFT 0 -#define IXGBE_MSRWD_READ_DATA_MASK 0xFFFF0000 -#define IXGBE_MSRWD_READ_DATA_SHIFT 16 +#define IXGBE_MSRWD_WRITE_DATA_MASK 0x0000FFFF +#define IXGBE_MSRWD_WRITE_DATA_SHIFT 0 +#define IXGBE_MSRWD_READ_DATA_MASK 0xFFFF0000 +#define IXGBE_MSRWD_READ_DATA_SHIFT 16 /* Atlas registers */ -#define IXGBE_ATLAS_PDN_LPBK 0x24 -#define IXGBE_ATLAS_PDN_10G 0xB -#define IXGBE_ATLAS_PDN_1G 0xC -#define IXGBE_ATLAS_PDN_AN 0xD +#define IXGBE_ATLAS_PDN_LPBK 0x24 +#define IXGBE_ATLAS_PDN_10G 0xB +#define IXGBE_ATLAS_PDN_1G 0xC +#define IXGBE_ATLAS_PDN_AN 0xD /* Atlas bit masks */ -#define IXGBE_ATLASCTL_WRITE_CMD 0x00010000 -#define IXGBE_ATLAS_PDN_TX_REG_EN 0x10 -#define IXGBE_ATLAS_PDN_TX_10G_QL_ALL 0xF0 -#define IXGBE_ATLAS_PDN_TX_1G_QL_ALL 0xF0 -#define IXGBE_ATLAS_PDN_TX_AN_QL_ALL 0xF0 +#define IXGBE_ATLASCTL_WRITE_CMD 0x00010000 +#define IXGBE_ATLAS_PDN_TX_REG_EN 0x10 +#define IXGBE_ATLAS_PDN_TX_10G_QL_ALL 0xF0 +#define IXGBE_ATLAS_PDN_TX_1G_QL_ALL 0xF0 +#define IXGBE_ATLAS_PDN_TX_AN_QL_ALL 0xF0 /* Omer bit masks */ -#define IXGBE_CORECTL_WRITE_CMD 0x00010000 +#define IXGBE_CORECTL_WRITE_CMD 0x00010000 /* Device Type definitions for new protocol MDIO commands */ -#define IXGBE_MDIO_PMA_PMD_DEV_TYPE 0x1 -#define IXGBE_MDIO_PCS_DEV_TYPE 0x3 -#define IXGBE_MDIO_PHY_XS_DEV_TYPE 0x4 -#define IXGBE_MDIO_AUTO_NEG_DEV_TYPE 0x7 -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE 0x1E /* Device 30 */ -#define IXGBE_TWINAX_DEV 1 - -#define IXGBE_MDIO_COMMAND_TIMEOUT 100 /* PHY Timeout for 1 GB mode */ - -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_CONTROL 0x0 /* VS1 Control Reg */ -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_STATUS 0x1 /* VS1 Status Reg */ -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_LINK_STATUS 0x0008 /* 1 = Link Up */ -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_SPEED_STATUS 0x0010 /* 0 - 10G, 1 - 1G */ -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_10G_SPEED 0x0018 -#define IXGBE_MDIO_VENDOR_SPECIFIC_1_1G_SPEED 0x0010 - -#define IXGBE_MDIO_AUTO_NEG_CONTROL 0x0 /* AUTO_NEG Control Reg */ -#define IXGBE_MDIO_AUTO_NEG_STATUS 0x1 /* AUTO_NEG Status Reg */ -#define IXGBE_MDIO_AUTO_NEG_ADVT 0x10 /* AUTO_NEG Advt Reg */ -#define IXGBE_MDIO_AUTO_NEG_LP 0x13 /* AUTO_NEG LP Status Reg */ -#define IXGBE_MDIO_PHY_XS_CONTROL 0x0 /* PHY_XS Control Reg */ -#define IXGBE_MDIO_PHY_XS_RESET 0x8000 /* PHY_XS Reset */ -#define IXGBE_MDIO_PHY_ID_HIGH 0x2 /* PHY ID High Reg */ -#define IXGBE_MDIO_PHY_ID_LOW 0x3 /* PHY ID Low Reg */ -#define IXGBE_MDIO_PHY_SPEED_ABILITY 0x4 /* Speed Ability Reg */ -#define IXGBE_MDIO_PHY_SPEED_10G 0x0001 /* 10G capable */ -#define IXGBE_MDIO_PHY_SPEED_1G 0x0010 /* 1G capable */ -#define IXGBE_MDIO_PHY_SPEED_100M 0x0020 /* 100M capable */ -#define IXGBE_MDIO_PHY_EXT_ABILITY 0xB /* Ext Ability Reg */ -#define IXGBE_MDIO_PHY_10GBASET_ABILITY 0x0004 /* 10GBaseT capable */ -#define IXGBE_MDIO_PHY_1000BASET_ABILITY 0x0020 /* 1000BaseT capable */ -#define IXGBE_MDIO_PHY_100BASETX_ABILITY 0x0080 /* 100BaseTX capable */ -#define IXGBE_MDIO_PHY_SET_LOW_POWER_MODE 0x0800 /* Set low power mode */ - -#define IXGBE_MDIO_PMA_PMD_CONTROL_ADDR 0x0000 /* PMA/PMD Control Reg */ - -#define IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR 0xC30A /* PHY_XS SDA/SCL Addr Reg */ -#define IXGBE_MDIO_PMA_PMD_SDA_SCL_DATA 0xC30B /* PHY_XS SDA/SCL Data Reg */ -#define IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT 0xC30C /* PHY_XS SDA/SCL Status Reg */ +#define IXGBE_MDIO_PMA_PMD_DEV_TYPE 0x1 +#define IXGBE_MDIO_PCS_DEV_TYPE 0x3 +#define IXGBE_MDIO_PHY_XS_DEV_TYPE 0x4 +#define IXGBE_MDIO_AUTO_NEG_DEV_TYPE 0x7 +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_DEV_TYPE 0x1E /* Device 30 */ +#define IXGBE_TWINAX_DEV 1 + +#define IXGBE_MDIO_COMMAND_TIMEOUT 100 /* PHY Timeout for 1 GB mode */ + +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_CONTROL 0x0 /* VS1 Control Reg */ +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_STATUS 0x1 /* VS1 Status Reg */ +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_LINK_STATUS 0x0008 /* 1 = Link Up */ +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_SPEED_STATUS 0x0010 /* 0 - 10G, 1 - 1G */ +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_10G_SPEED 0x0018 +#define IXGBE_MDIO_VENDOR_SPECIFIC_1_1G_SPEED 0x0010 + +#define IXGBE_MDIO_AUTO_NEG_CONTROL 0x0 /* AUTO_NEG Control Reg */ +#define IXGBE_MDIO_AUTO_NEG_STATUS 0x1 /* AUTO_NEG Status Reg */ +#define IXGBE_MDIO_AUTO_NEG_ADVT 0x10 /* AUTO_NEG Advt Reg */ +#define IXGBE_MDIO_AUTO_NEG_LP 0x13 /* AUTO_NEG LP Status Reg */ +#define IXGBE_MDIO_PHY_XS_CONTROL 0x0 /* PHY_XS Control Reg */ +#define IXGBE_MDIO_PHY_XS_RESET 0x8000 /* PHY_XS Reset */ +#define IXGBE_MDIO_PHY_ID_HIGH 0x2 /* PHY ID High Reg*/ +#define IXGBE_MDIO_PHY_ID_LOW 0x3 /* PHY ID Low Reg*/ +#define IXGBE_MDIO_PHY_SPEED_ABILITY 0x4 /* Speed Ability Reg */ +#define IXGBE_MDIO_PHY_SPEED_10G 0x0001 /* 10G capable */ +#define IXGBE_MDIO_PHY_SPEED_1G 0x0010 /* 1G capable */ +#define IXGBE_MDIO_PHY_SPEED_100M 0x0020 /* 100M capable */ +#define IXGBE_MDIO_PHY_EXT_ABILITY 0xB /* Ext Ability Reg */ +#define IXGBE_MDIO_PHY_10GBASET_ABILITY 0x0004 /* 10GBaseT capable */ +#define IXGBE_MDIO_PHY_1000BASET_ABILITY 0x0020 /* 1000BaseT capable */ +#define IXGBE_MDIO_PHY_100BASETX_ABILITY 0x0080 /* 100BaseTX capable */ +#define IXGBE_MDIO_PHY_SET_LOW_POWER_MODE 0x0800 /* Set low power mode */ + +#define IXGBE_MDIO_PMA_PMD_CONTROL_ADDR 0x0000 /* PMA/PMD Control Reg */ +#define IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR 0xC30A /* PHY_XS SDA/SCL Addr Reg */ +#define IXGBE_MDIO_PMA_PMD_SDA_SCL_DATA 0xC30B /* PHY_XS SDA/SCL Data Reg */ +#define IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT 0xC30C /* PHY_XS SDA/SCL Status Reg */ /* MII clause 22/28 definitions */ -#define IXGBE_MDIO_PHY_LOW_POWER_MODE 0x0800 - -#define IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG 0x20 /* 10G Control Reg */ -#define IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG 0xC400 /* 1G Provisioning 1 */ -#define IXGBE_MII_AUTONEG_XNP_TX_REG 0x17 /* 1G XNP Transmit */ -#define IXGBE_MII_AUTONEG_ADVERTISE_REG 0x10 /* 100M Advertisement */ -#define IXGBE_MII_10GBASE_T_ADVERTISE 0x1000 /* full duplex, bit:12 */ -#define IXGBE_MII_1GBASE_T_ADVERTISE_XNP_TX 0x4000 /* full duplex, bit:14 */ -#define IXGBE_MII_1GBASE_T_ADVERTISE 0x8000 /* full duplex, bit:15 */ -#define IXGBE_MII_100BASE_T_ADVERTISE 0x0100 /* full duplex, bit:8 */ -#define IXGBE_MII_RESTART 0x200 -#define IXGBE_MII_AUTONEG_COMPLETE 0x20 -#define IXGBE_MII_AUTONEG_LINK_UP 0x04 -#define IXGBE_MII_AUTONEG_REG 0x0 - -#define IXGBE_PHY_REVISION_MASK 0xFFFFFFF0 -#define IXGBE_MAX_PHY_ADDR 32 - -/* PHY IDs */ -#define TN1010_PHY_ID 0x00A19410 -#define TNX_FW_REV 0xB -#define AQ1002_PHY_ID 0x03A1B420 -#define AQ_FW_REV 0x20 -#define QT2022_PHY_ID 0x0043A400 -#define ATH_PHY_ID 0x03429050 +#define IXGBE_MDIO_PHY_LOW_POWER_MODE 0x0800 + +#define IXGBE_MII_10GBASE_T_AUTONEG_CTRL_REG 0x20 /* 10G Control Reg */ +#define IXGBE_MII_AUTONEG_VENDOR_PROVISION_1_REG 0xC400 /* 1G Provisioning 1 */ +#define IXGBE_MII_AUTONEG_XNP_TX_REG 0x17 /* 1G XNP Transmit */ +#define IXGBE_MII_AUTONEG_ADVERTISE_REG 0x10 /* 100M Advertisement */ +#define IXGBE_MII_10GBASE_T_ADVERTISE 0x1000 /* full duplex, bit:12*/ +#define IXGBE_MII_1GBASE_T_ADVERTISE_XNP_TX 0x4000 /* full duplex, bit:14*/ +#define IXGBE_MII_1GBASE_T_ADVERTISE 0x8000 /* full duplex, bit:15*/ +#define IXGBE_MII_100BASE_T_ADVERTISE 0x0100 /* full duplex, bit:8 */ +#define IXGBE_MII_RESTART 0x200 +#define IXGBE_MII_AUTONEG_COMPLETE 0x20 +#define IXGBE_MII_AUTONEG_LINK_UP 0x04 +#define IXGBE_MII_AUTONEG_REG 0x0 + +#define IXGBE_PHY_REVISION_MASK 0xFFFFFFF0 +#define IXGBE_MAX_PHY_ADDR 32 + +/* PHY IDs*/ +#define TN1010_PHY_ID 0x00A19410 +#define TNX_FW_REV 0xB +#define AQ1002_PHY_ID 0x03A1B420 +#define AQ_FW_REV 0x20 +#define QT2022_PHY_ID 0x0043A400 +#define ATH_PHY_ID 0x03429050 /* PHY Types */ -#define IXGBE_M88E1145_E_PHY_ID 0x01410CD0 +#define IXGBE_M88E1145_E_PHY_ID 0x01410CD0 /* Special PHY Init Routine */ -#define IXGBE_PHY_INIT_OFFSET_NL 0x002B -#define IXGBE_PHY_INIT_END_NL 0xFFFF -#define IXGBE_CONTROL_MASK_NL 0xF000 -#define IXGBE_DATA_MASK_NL 0x0FFF -#define IXGBE_CONTROL_SHIFT_NL 12 -#define IXGBE_DELAY_NL 0 -#define IXGBE_DATA_NL 1 -#define IXGBE_CONTROL_NL 0x000F -#define IXGBE_CONTROL_EOL_NL 0x0FFF -#define IXGBE_CONTROL_SOL_NL 0x0000 +#define IXGBE_PHY_INIT_OFFSET_NL 0x002B +#define IXGBE_PHY_INIT_END_NL 0xFFFF +#define IXGBE_CONTROL_MASK_NL 0xF000 +#define IXGBE_DATA_MASK_NL 0x0FFF +#define IXGBE_CONTROL_SHIFT_NL 12 +#define IXGBE_DELAY_NL 0 +#define IXGBE_DATA_NL 1 +#define IXGBE_CONTROL_NL 0x000F +#define IXGBE_CONTROL_EOL_NL 0x0FFF +#define IXGBE_CONTROL_SOL_NL 0x0000 /* General purpose Interrupt Enable */ -#define IXGBE_SDP0_GPIEN 0x00000001 /* SDP0 */ -#define IXGBE_SDP1_GPIEN 0x00000002 /* SDP1 */ -#define IXGBE_SDP2_GPIEN 0x00000004 /* SDP2 */ -#define IXGBE_GPIE_MSIX_MODE 0x00000010 /* MSI-X mode */ -#define IXGBE_GPIE_OCD 0x00000020 /* Other Clear Disable */ -#define IXGBE_GPIE_EIMEN 0x00000040 /* Immediate Interrupt Enable */ -#define IXGBE_GPIE_EIAME 0x40000000 -#define IXGBE_GPIE_PBA_SUPPORT 0x80000000 -#define IXGBE_GPIE_RSC_DELAY_SHIFT 11 -#define IXGBE_GPIE_VTMODE_MASK 0x0000C000 /* VT Mode Mask */ -#define IXGBE_GPIE_VTMODE_16 0x00004000 /* 16 VFs 8 queues per VF */ -#define IXGBE_GPIE_VTMODE_32 0x00008000 /* 32 VFs 4 queues per VF */ -#define IXGBE_GPIE_VTMODE_64 0x0000C000 /* 64 VFs 2 queues per VF */ +#define IXGBE_SDP0_GPIEN 0x00000001 /* SDP0 */ +#define IXGBE_SDP1_GPIEN 0x00000002 /* SDP1 */ +#define IXGBE_SDP2_GPIEN 0x00000004 /* SDP2 */ +#define IXGBE_GPIE_MSIX_MODE 0x00000010 /* MSI-X mode */ +#define IXGBE_GPIE_OCD 0x00000020 /* Other Clear Disable */ +#define IXGBE_GPIE_EIMEN 0x00000040 /* Immediate Interrupt Enable */ +#define IXGBE_GPIE_EIAME 0x40000000 +#define IXGBE_GPIE_PBA_SUPPORT 0x80000000 +#define IXGBE_GPIE_RSC_DELAY_SHIFT 11 +#define IXGBE_GPIE_VTMODE_MASK 0x0000C000 /* VT Mode Mask */ +#define IXGBE_GPIE_VTMODE_16 0x00004000 /* 16 VFs 8 queues per VF */ +#define IXGBE_GPIE_VTMODE_32 0x00008000 /* 32 VFs 4 queues per VF */ +#define IXGBE_GPIE_VTMODE_64 0x0000C000 /* 64 VFs 2 queues per VF */ /* Transmit Flow Control status */ -#define IXGBE_TFCS_TXOFF 0x00000001 -#define IXGBE_TFCS_TXOFF0 0x00000100 -#define IXGBE_TFCS_TXOFF1 0x00000200 -#define IXGBE_TFCS_TXOFF2 0x00000400 -#define IXGBE_TFCS_TXOFF3 0x00000800 -#define IXGBE_TFCS_TXOFF4 0x00001000 -#define IXGBE_TFCS_TXOFF5 0x00002000 -#define IXGBE_TFCS_TXOFF6 0x00004000 -#define IXGBE_TFCS_TXOFF7 0x00008000 +#define IXGBE_TFCS_TXOFF 0x00000001 +#define IXGBE_TFCS_TXOFF0 0x00000100 +#define IXGBE_TFCS_TXOFF1 0x00000200 +#define IXGBE_TFCS_TXOFF2 0x00000400 +#define IXGBE_TFCS_TXOFF3 0x00000800 +#define IXGBE_TFCS_TXOFF4 0x00001000 +#define IXGBE_TFCS_TXOFF5 0x00002000 +#define IXGBE_TFCS_TXOFF6 0x00004000 +#define IXGBE_TFCS_TXOFF7 0x00008000 /* TCP Timer */ -#define IXGBE_TCPTIMER_KS 0x00000100 -#define IXGBE_TCPTIMER_COUNT_ENABLE 0x00000200 -#define IXGBE_TCPTIMER_COUNT_FINISH 0x00000400 -#define IXGBE_TCPTIMER_LOOP 0x00000800 -#define IXGBE_TCPTIMER_DURATION_MASK 0x000000FF +#define IXGBE_TCPTIMER_KS 0x00000100 +#define IXGBE_TCPTIMER_COUNT_ENABLE 0x00000200 +#define IXGBE_TCPTIMER_COUNT_FINISH 0x00000400 +#define IXGBE_TCPTIMER_LOOP 0x00000800 +#define IXGBE_TCPTIMER_DURATION_MASK 0x000000FF /* HLREG0 Bit Masks */ -#define IXGBE_HLREG0_TXCRCEN 0x00000001 /* bit 0 */ -#define IXGBE_HLREG0_RXCRCSTRP 0x00000002 /* bit 1 */ -#define IXGBE_HLREG0_JUMBOEN 0x00000004 /* bit 2 */ -#define IXGBE_HLREG0_TXPADEN 0x00000400 /* bit 10 */ -#define IXGBE_HLREG0_TXPAUSEEN 0x00001000 /* bit 12 */ -#define IXGBE_HLREG0_RXPAUSEEN 0x00004000 /* bit 14 */ -#define IXGBE_HLREG0_LPBK 0x00008000 /* bit 15 */ -#define IXGBE_HLREG0_MDCSPD 0x00010000 /* bit 16 */ -#define IXGBE_HLREG0_CONTMDC 0x00020000 /* bit 17 */ -#define IXGBE_HLREG0_CTRLFLTR 0x00040000 /* bit 18 */ -#define IXGBE_HLREG0_PREPEND 0x00F00000 /* bits 20-23 */ -#define IXGBE_HLREG0_PRIPAUSEEN 0x01000000 /* bit 24 */ -#define IXGBE_HLREG0_RXPAUSERECDA 0x06000000 /* bits 25-26 */ -#define IXGBE_HLREG0_RXLNGTHERREN 0x08000000 /* bit 27 */ -#define IXGBE_HLREG0_RXPADSTRIPEN 0x10000000 /* bit 28 */ +#define IXGBE_HLREG0_TXCRCEN 0x00000001 /* bit 0 */ +#define IXGBE_HLREG0_RXCRCSTRP 0x00000002 /* bit 1 */ +#define IXGBE_HLREG0_JUMBOEN 0x00000004 /* bit 2 */ +#define IXGBE_HLREG0_TXPADEN 0x00000400 /* bit 10 */ +#define IXGBE_HLREG0_TXPAUSEEN 0x00001000 /* bit 12 */ +#define IXGBE_HLREG0_RXPAUSEEN 0x00004000 /* bit 14 */ +#define IXGBE_HLREG0_LPBK 0x00008000 /* bit 15 */ +#define IXGBE_HLREG0_MDCSPD 0x00010000 /* bit 16 */ +#define IXGBE_HLREG0_CONTMDC 0x00020000 /* bit 17 */ +#define IXGBE_HLREG0_CTRLFLTR 0x00040000 /* bit 18 */ +#define IXGBE_HLREG0_PREPEND 0x00F00000 /* bits 20-23 */ +#define IXGBE_HLREG0_PRIPAUSEEN 0x01000000 /* bit 24 */ +#define IXGBE_HLREG0_RXPAUSERECDA 0x06000000 /* bits 25-26 */ +#define IXGBE_HLREG0_RXLNGTHERREN 0x08000000 /* bit 27 */ +#define IXGBE_HLREG0_RXPADSTRIPEN 0x10000000 /* bit 28 */ /* VMD_CTL bitmasks */ -#define IXGBE_VMD_CTL_VMDQ_EN 0x00000001 -#define IXGBE_VMD_CTL_VMDQ_FILTER 0x00000002 +#define IXGBE_VMD_CTL_VMDQ_EN 0x00000001 +#define IXGBE_VMD_CTL_VMDQ_FILTER 0x00000002 /* VT_CTL bitmasks */ -#define IXGBE_VT_CTL_DIS_DEFPL 0x20000000 /* disable default pool */ -#define IXGBE_VT_CTL_REPLEN 0x40000000 /* replication enabled */ -#define IXGBE_VT_CTL_VT_ENABLE 0x00000001 /* Enable VT Mode */ -#define IXGBE_VT_CTL_POOL_SHIFT 7 -#define IXGBE_VT_CTL_POOL_MASK (0x3F << IXGBE_VT_CTL_POOL_SHIFT) +#define IXGBE_VT_CTL_DIS_DEFPL 0x20000000 /* disable default pool */ +#define IXGBE_VT_CTL_REPLEN 0x40000000 /* replication enabled */ +#define IXGBE_VT_CTL_VT_ENABLE 0x00000001 /* Enable VT Mode */ +#define IXGBE_VT_CTL_POOL_SHIFT 7 +#define IXGBE_VT_CTL_POOL_MASK (0x3F << IXGBE_VT_CTL_POOL_SHIFT) /* VMOLR bitmasks */ -#define IXGBE_VMOLR_AUPE 0x01000000 /* accept untagged packets */ -#define IXGBE_VMOLR_ROMPE 0x02000000 /* accept packets in MTA tbl */ -#define IXGBE_VMOLR_ROPE 0x04000000 /* accept packets in UC tbl */ -#define IXGBE_VMOLR_BAM 0x08000000 /* accept broadcast packets */ -#define IXGBE_VMOLR_MPE 0x10000000 /* multicast promiscuous */ +#define IXGBE_VMOLR_AUPE 0x01000000 /* accept untagged packets */ +#define IXGBE_VMOLR_ROMPE 0x02000000 /* accept packets in MTA tbl */ +#define IXGBE_VMOLR_ROPE 0x04000000 /* accept packets in UC tbl */ +#define IXGBE_VMOLR_BAM 0x08000000 /* accept broadcast packets */ +#define IXGBE_VMOLR_MPE 0x10000000 /* multicast promiscuous */ /* VFRE bitmask */ -#define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF +#define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF -#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */ +#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */ /* RDHMPN and TDHMPN bitmasks */ -#define IXGBE_RDHMPN_RDICADDR 0x007FF800 -#define IXGBE_RDHMPN_RDICRDREQ 0x00800000 -#define IXGBE_RDHMPN_RDICADDR_SHIFT 11 -#define IXGBE_TDHMPN_TDICADDR 0x003FF800 -#define IXGBE_TDHMPN_TDICRDREQ 0x00800000 -#define IXGBE_TDHMPN_TDICADDR_SHIFT 11 - -#define IXGBE_RDMAM_MEM_SEL_SHIFT 13 -#define IXGBE_RDMAM_DWORD_SHIFT 9 -#define IXGBE_RDMAM_DESC_COMP_FIFO 1 -#define IXGBE_RDMAM_DFC_CMD_FIFO 2 -#define IXGBE_RDMAM_RSC_HEADER_ADDR 3 -#define IXGBE_RDMAM_TCN_STATUS_RAM 4 -#define IXGBE_RDMAM_WB_COLL_FIFO 5 -#define IXGBE_RDMAM_QSC_CNT_RAM 6 -#define IXGBE_RDMAM_QSC_FCOE_RAM 7 -#define IXGBE_RDMAM_QSC_QUEUE_CNT 8 -#define IXGBE_RDMAM_QSC_QUEUE_RAM 0xA -#define IXGBE_RDMAM_QSC_RSC_RAM 0xB -#define IXGBE_RDMAM_DESC_COM_FIFO_RANGE 135 -#define IXGBE_RDMAM_DESC_COM_FIFO_COUNT 4 -#define IXGBE_RDMAM_DFC_CMD_FIFO_RANGE 48 -#define IXGBE_RDMAM_DFC_CMD_FIFO_COUNT 7 -#define IXGBE_RDMAM_RSC_HEADER_ADDR_RANGE 32 -#define IXGBE_RDMAM_RSC_HEADER_ADDR_COUNT 4 -#define IXGBE_RDMAM_TCN_STATUS_RAM_RANGE 256 -#define IXGBE_RDMAM_TCN_STATUS_RAM_COUNT 9 -#define IXGBE_RDMAM_WB_COLL_FIFO_RANGE 8 -#define IXGBE_RDMAM_WB_COLL_FIFO_COUNT 4 -#define IXGBE_RDMAM_QSC_CNT_RAM_RANGE 64 -#define IXGBE_RDMAM_QSC_CNT_RAM_COUNT 4 -#define IXGBE_RDMAM_QSC_FCOE_RAM_RANGE 512 -#define IXGBE_RDMAM_QSC_FCOE_RAM_COUNT 5 -#define IXGBE_RDMAM_QSC_QUEUE_CNT_RANGE 32 -#define IXGBE_RDMAM_QSC_QUEUE_CNT_COUNT 4 -#define IXGBE_RDMAM_QSC_QUEUE_RAM_RANGE 128 -#define IXGBE_RDMAM_QSC_QUEUE_RAM_COUNT 8 -#define IXGBE_RDMAM_QSC_RSC_RAM_RANGE 32 -#define IXGBE_RDMAM_QSC_RSC_RAM_COUNT 8 - -#define IXGBE_TXDESCIC_READY 0x80000000 +#define IXGBE_RDHMPN_RDICADDR 0x007FF800 +#define IXGBE_RDHMPN_RDICRDREQ 0x00800000 +#define IXGBE_RDHMPN_RDICADDR_SHIFT 11 +#define IXGBE_TDHMPN_TDICADDR 0x003FF800 +#define IXGBE_TDHMPN_TDICRDREQ 0x00800000 +#define IXGBE_TDHMPN_TDICADDR_SHIFT 11 + +#define IXGBE_RDMAM_MEM_SEL_SHIFT 13 +#define IXGBE_RDMAM_DWORD_SHIFT 9 +#define IXGBE_RDMAM_DESC_COMP_FIFO 1 +#define IXGBE_RDMAM_DFC_CMD_FIFO 2 +#define IXGBE_RDMAM_RSC_HEADER_ADDR 3 +#define IXGBE_RDMAM_TCN_STATUS_RAM 4 +#define IXGBE_RDMAM_WB_COLL_FIFO 5 +#define IXGBE_RDMAM_QSC_CNT_RAM 6 +#define IXGBE_RDMAM_QSC_FCOE_RAM 7 +#define IXGBE_RDMAM_QSC_QUEUE_CNT 8 +#define IXGBE_RDMAM_QSC_QUEUE_RAM 0xA +#define IXGBE_RDMAM_QSC_RSC_RAM 0xB +#define IXGBE_RDMAM_DESC_COM_FIFO_RANGE 135 +#define IXGBE_RDMAM_DESC_COM_FIFO_COUNT 4 +#define IXGBE_RDMAM_DFC_CMD_FIFO_RANGE 48 +#define IXGBE_RDMAM_DFC_CMD_FIFO_COUNT 7 +#define IXGBE_RDMAM_RSC_HEADER_ADDR_RANGE 32 +#define IXGBE_RDMAM_RSC_HEADER_ADDR_COUNT 4 +#define IXGBE_RDMAM_TCN_STATUS_RAM_RANGE 256 +#define IXGBE_RDMAM_TCN_STATUS_RAM_COUNT 9 +#define IXGBE_RDMAM_WB_COLL_FIFO_RANGE 8 +#define IXGBE_RDMAM_WB_COLL_FIFO_COUNT 4 +#define IXGBE_RDMAM_QSC_CNT_RAM_RANGE 64 +#define IXGBE_RDMAM_QSC_CNT_RAM_COUNT 4 +#define IXGBE_RDMAM_QSC_FCOE_RAM_RANGE 512 +#define IXGBE_RDMAM_QSC_FCOE_RAM_COUNT 5 +#define IXGBE_RDMAM_QSC_QUEUE_CNT_RANGE 32 +#define IXGBE_RDMAM_QSC_QUEUE_CNT_COUNT 4 +#define IXGBE_RDMAM_QSC_QUEUE_RAM_RANGE 128 +#define IXGBE_RDMAM_QSC_QUEUE_RAM_COUNT 8 +#define IXGBE_RDMAM_QSC_RSC_RAM_RANGE 32 +#define IXGBE_RDMAM_QSC_RSC_RAM_COUNT 8 + +#define IXGBE_TXDESCIC_READY 0x80000000 /* Receive Checksum Control */ -#define IXGBE_RXCSUM_IPPCSE 0x00001000 /* IP payload checksum enable */ -#define IXGBE_RXCSUM_PCSD 0x00002000 /* packet checksum disabled */ +#define IXGBE_RXCSUM_IPPCSE 0x00001000 /* IP payload checksum enable */ +#define IXGBE_RXCSUM_PCSD 0x00002000 /* packet checksum disabled */ /* FCRTL Bit Masks */ -#define IXGBE_FCRTL_XONE 0x80000000 /* XON enable */ -#define IXGBE_FCRTH_FCEN 0x80000000 /* Packet buffer fc enable */ +#define IXGBE_FCRTL_XONE 0x80000000 /* XON enable */ +#define IXGBE_FCRTH_FCEN 0x80000000 /* Packet buffer fc enable */ -/* PAP bit masks */ -#define IXGBE_PAP_TXPAUSECNT_MASK 0x0000FFFF /* Pause counter mask */ +/* PAP bit masks*/ +#define IXGBE_PAP_TXPAUSECNT_MASK 0x0000FFFF /* Pause counter mask */ /* RMCS Bit Masks */ -#define IXGBE_RMCS_RRM 0x00000002 /* Receive Recycle Mode enable */ +#define IXGBE_RMCS_RRM 0x00000002 /* Receive Recycle Mode enable */ /* Receive Arbitration Control: 0 Round Robin, 1 DFP */ -#define IXGBE_RMCS_RAC 0x00000004 -#define IXGBE_RMCS_DFP IXGBE_RMCS_RAC /* Deficit Fixed Priority ena */ -#define IXGBE_RMCS_TFCE_802_3X 0x00000008 /* Tx Priority FC ena */ -#define IXGBE_RMCS_TFCE_PRIORITY 0x00000010 /* Tx Priority FC ena */ -#define IXGBE_RMCS_ARBDIS 0x00000040 /* Arbitration disable bit */ +#define IXGBE_RMCS_RAC 0x00000004 +#define IXGBE_RMCS_DFP IXGBE_RMCS_RAC /* Deficit Fixed Priority ena */ +#define IXGBE_RMCS_TFCE_802_3X 0x00000008 /* Tx Priority FC ena */ +#define IXGBE_RMCS_TFCE_PRIORITY 0x00000010 /* Tx Priority FC ena */ +#define IXGBE_RMCS_ARBDIS 0x00000040 /* Arbitration disable bit */ /* FCCFG Bit Masks */ -#define IXGBE_FCCFG_TFCE_802_3X 0x00000008 /* Tx link FC enable */ -#define IXGBE_FCCFG_TFCE_PRIORITY 0x00000010 /* Tx priority FC enable */ +#define IXGBE_FCCFG_TFCE_802_3X 0x00000008 /* Tx link FC enable */ +#define IXGBE_FCCFG_TFCE_PRIORITY 0x00000010 /* Tx priority FC enable */ /* Interrupt register bitmasks */ /* Extended Interrupt Cause Read */ -#define IXGBE_EICR_RTX_QUEUE 0x0000FFFF /* RTx Queue Interrupt */ -#define IXGBE_EICR_FLOW_DIR 0x00010000 /* FDir Exception */ -#define IXGBE_EICR_RX_MISS 0x00020000 /* Packet Buffer Overrun */ -#define IXGBE_EICR_PCI 0x00040000 /* PCI Exception */ -#define IXGBE_EICR_MAILBOX 0x00080000 /* VF to PF Mailbox Interrupt */ -#define IXGBE_EICR_LSC 0x00100000 /* Link Status Change */ -#define IXGBE_EICR_LINKSEC 0x00200000 /* PN Threshold */ -#define IXGBE_EICR_MNG 0x00400000 /* Manageability Event Interrupt */ -#define IXGBE_EICR_GPI_SDP0 0x01000000 /* Gen Purpose Interrupt on SDP0 */ -#define IXGBE_EICR_GPI_SDP1 0x02000000 /* Gen Purpose Interrupt on SDP1 */ -#define IXGBE_EICR_GPI_SDP2 0x04000000 /* Gen Purpose Interrupt on SDP2 */ -#define IXGBE_EICR_ECC 0x10000000 /* ECC Error */ -#define IXGBE_EICR_PBUR 0x10000000 /* Packet Buffer Handler Error */ -#define IXGBE_EICR_DHER 0x20000000 /* Descriptor Handler Error */ -#define IXGBE_EICR_TCP_TIMER 0x40000000 /* TCP Timer */ -#define IXGBE_EICR_OTHER 0x80000000 /* Interrupt Cause Active */ +#define IXGBE_EICR_RTX_QUEUE 0x0000FFFF /* RTx Queue Interrupt */ +#define IXGBE_EICR_FLOW_DIR 0x00010000 /* FDir Exception */ +#define IXGBE_EICR_RX_MISS 0x00020000 /* Packet Buffer Overrun */ +#define IXGBE_EICR_PCI 0x00040000 /* PCI Exception */ +#define IXGBE_EICR_MAILBOX 0x00080000 /* VF to PF Mailbox Interrupt */ +#define IXGBE_EICR_LSC 0x00100000 /* Link Status Change */ +#define IXGBE_EICR_LINKSEC 0x00200000 /* PN Threshold */ +#define IXGBE_EICR_MNG 0x00400000 /* Manageability Event Interrupt */ +#define IXGBE_EICR_GPI_SDP0 0x01000000 /* Gen Purpose Interrupt on SDP0 */ +#define IXGBE_EICR_GPI_SDP1 0x02000000 /* Gen Purpose Interrupt on SDP1 */ +#define IXGBE_EICR_GPI_SDP2 0x04000000 /* Gen Purpose Interrupt on SDP2 */ +#define IXGBE_EICR_ECC 0x10000000 /* ECC Error */ +#define IXGBE_EICR_PBUR 0x10000000 /* Packet Buffer Handler Error */ +#define IXGBE_EICR_DHER 0x20000000 /* Descriptor Handler Error */ +#define IXGBE_EICR_TCP_TIMER 0x40000000 /* TCP Timer */ +#define IXGBE_EICR_OTHER 0x80000000 /* Interrupt Cause Active */ /* Extended Interrupt Cause Set */ -#define IXGBE_EICS_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ -#define IXGBE_EICS_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ -#define IXGBE_EICS_RX_MISS IXGBE_EICR_RX_MISS /* Pkt Buffer Overrun */ -#define IXGBE_EICS_PCI IXGBE_EICR_PCI /* PCI Exception */ -#define IXGBE_EICS_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ -#define IXGBE_EICS_LSC IXGBE_EICR_LSC /* Link Status Change */ -#define IXGBE_EICS_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ -#define IXGBE_EICS_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ -#define IXGBE_EICS_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ -#define IXGBE_EICS_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ -#define IXGBE_EICS_ECC IXGBE_EICR_ECC /* ECC Error */ -#define IXGBE_EICS_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Error */ -#define IXGBE_EICS_DHER IXGBE_EICR_DHER /* Desc Handler Error */ -#define IXGBE_EICS_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ -#define IXGBE_EICS_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ +#define IXGBE_EICS_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ +#define IXGBE_EICS_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ +#define IXGBE_EICS_RX_MISS IXGBE_EICR_RX_MISS /* Pkt Buffer Overrun */ +#define IXGBE_EICS_PCI IXGBE_EICR_PCI /* PCI Exception */ +#define IXGBE_EICS_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ +#define IXGBE_EICS_LSC IXGBE_EICR_LSC /* Link Status Change */ +#define IXGBE_EICS_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ +#define IXGBE_EICS_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ +#define IXGBE_EICS_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ +#define IXGBE_EICS_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ +#define IXGBE_EICS_ECC IXGBE_EICR_ECC /* ECC Error */ +#define IXGBE_EICS_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Err */ +#define IXGBE_EICS_DHER IXGBE_EICR_DHER /* Desc Handler Error */ +#define IXGBE_EICS_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ +#define IXGBE_EICS_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ /* Extended Interrupt Mask Set */ -#define IXGBE_EIMS_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ -#define IXGBE_EIMS_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ -#define IXGBE_EIMS_RX_MISS IXGBE_EICR_RX_MISS /* Packet Buffer Overrun */ -#define IXGBE_EIMS_PCI IXGBE_EICR_PCI /* PCI Exception */ -#define IXGBE_EIMS_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ -#define IXGBE_EIMS_LSC IXGBE_EICR_LSC /* Link Status Change */ -#define IXGBE_EIMS_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ -#define IXGBE_EIMS_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ -#define IXGBE_EIMS_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ -#define IXGBE_EIMS_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ -#define IXGBE_EIMS_ECC IXGBE_EICR_ECC /* ECC Error */ -#define IXGBE_EIMS_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Error */ -#define IXGBE_EIMS_DHER IXGBE_EICR_DHER /* Descr Handler Error */ -#define IXGBE_EIMS_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ -#define IXGBE_EIMS_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ +#define IXGBE_EIMS_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ +#define IXGBE_EIMS_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ +#define IXGBE_EIMS_RX_MISS IXGBE_EICR_RX_MISS /* Packet Buffer Overrun */ +#define IXGBE_EIMS_PCI IXGBE_EICR_PCI /* PCI Exception */ +#define IXGBE_EIMS_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ +#define IXGBE_EIMS_LSC IXGBE_EICR_LSC /* Link Status Change */ +#define IXGBE_EIMS_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ +#define IXGBE_EIMS_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ +#define IXGBE_EIMS_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ +#define IXGBE_EIMS_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ +#define IXGBE_EIMS_ECC IXGBE_EICR_ECC /* ECC Error */ +#define IXGBE_EIMS_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Err */ +#define IXGBE_EIMS_DHER IXGBE_EICR_DHER /* Descr Handler Error */ +#define IXGBE_EIMS_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ +#define IXGBE_EIMS_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ /* Extended Interrupt Mask Clear */ -#define IXGBE_EIMC_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ -#define IXGBE_EIMC_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ -#define IXGBE_EIMC_RX_MISS IXGBE_EICR_RX_MISS /* Packet Buffer Overrun */ -#define IXGBE_EIMC_PCI IXGBE_EICR_PCI /* PCI Exception */ -#define IXGBE_EIMC_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ -#define IXGBE_EIMC_LSC IXGBE_EICR_LSC /* Link Status Change */ -#define IXGBE_EIMC_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ -#define IXGBE_EIMC_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ -#define IXGBE_EIMC_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ -#define IXGBE_EIMC_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ -#define IXGBE_EIMC_ECC IXGBE_EICR_ECC /* ECC Error */ -#define IXGBE_EIMC_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Error */ -#define IXGBE_EIMC_DHER IXGBE_EICR_DHER /* Desc Handler Error */ -#define IXGBE_EIMC_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ -#define IXGBE_EIMC_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ - -#define IXGBE_EIMS_ENABLE_MASK ( \ - IXGBE_EIMS_RTX_QUEUE | IXGBE_EIMS_LSC | \ - IXGBE_EIMS_TCP_TIMER | IXGBE_EIMS_OTHER) +#define IXGBE_EIMC_RTX_QUEUE IXGBE_EICR_RTX_QUEUE /* RTx Queue Interrupt */ +#define IXGBE_EIMC_FLOW_DIR IXGBE_EICR_FLOW_DIR /* FDir Exception */ +#define IXGBE_EIMC_RX_MISS IXGBE_EICR_RX_MISS /* Packet Buffer Overrun */ +#define IXGBE_EIMC_PCI IXGBE_EICR_PCI /* PCI Exception */ +#define IXGBE_EIMC_MAILBOX IXGBE_EICR_MAILBOX /* VF to PF Mailbox Int */ +#define IXGBE_EIMC_LSC IXGBE_EICR_LSC /* Link Status Change */ +#define IXGBE_EIMC_MNG IXGBE_EICR_MNG /* MNG Event Interrupt */ +#define IXGBE_EIMC_GPI_SDP0 IXGBE_EICR_GPI_SDP0 /* SDP0 Gen Purpose Int */ +#define IXGBE_EIMC_GPI_SDP1 IXGBE_EICR_GPI_SDP1 /* SDP1 Gen Purpose Int */ +#define IXGBE_EIMC_GPI_SDP2 IXGBE_EICR_GPI_SDP2 /* SDP2 Gen Purpose Int */ +#define IXGBE_EIMC_ECC IXGBE_EICR_ECC /* ECC Error */ +#define IXGBE_EIMC_PBUR IXGBE_EICR_PBUR /* Pkt Buf Handler Err */ +#define IXGBE_EIMC_DHER IXGBE_EICR_DHER /* Desc Handler Err */ +#define IXGBE_EIMC_TCP_TIMER IXGBE_EICR_TCP_TIMER /* TCP Timer */ +#define IXGBE_EIMC_OTHER IXGBE_EICR_OTHER /* INT Cause Active */ + +#define IXGBE_EIMS_ENABLE_MASK ( \ + IXGBE_EIMS_RTX_QUEUE | \ + IXGBE_EIMS_LSC | \ + IXGBE_EIMS_TCP_TIMER | \ + IXGBE_EIMS_OTHER) /* Immediate Interrupt Rx (A.K.A. Low Latency Interrupt) */ -#define IXGBE_IMIR_PORT_IM_EN 0x00010000 /* TCP port enable */ -#define IXGBE_IMIR_PORT_BP 0x00020000 /* TCP port check bypass */ -#define IXGBE_IMIREXT_SIZE_BP 0x00001000 /* Packet size bypass */ -#define IXGBE_IMIREXT_CTRL_URG 0x00002000 /* Check URG bit in header */ -#define IXGBE_IMIREXT_CTRL_ACK 0x00004000 /* Check ACK bit in header */ -#define IXGBE_IMIREXT_CTRL_PSH 0x00008000 /* Check PSH bit in header */ -#define IXGBE_IMIREXT_CTRL_RST 0x00010000 /* Check RST bit in header */ -#define IXGBE_IMIREXT_CTRL_SYN 0x00020000 /* Check SYN bit in header */ -#define IXGBE_IMIREXT_CTRL_FIN 0x00040000 /* Check FIN bit in header */ -#define IXGBE_IMIREXT_CTRL_BP 0x00080000 /* Bypass check of control bits */ -#define IXGBE_IMIR_SIZE_BP_82599 0x00001000 /* Packet size bypass */ -#define IXGBE_IMIR_CTRL_URG_82599 0x00002000 /* Check URG bit in header */ -#define IXGBE_IMIR_CTRL_ACK_82599 0x00004000 /* Check ACK bit in header */ -#define IXGBE_IMIR_CTRL_PSH_82599 0x00008000 /* Check PSH bit in header */ -#define IXGBE_IMIR_CTRL_RST_82599 0x00010000 /* Check RST bit in header */ -#define IXGBE_IMIR_CTRL_SYN_82599 0x00020000 /* Check SYN bit in header */ -#define IXGBE_IMIR_CTRL_FIN_82599 0x00040000 /* Check FIN bit in header */ -#define IXGBE_IMIR_CTRL_BP_82599 0x00080000 /* Bypass check of control bits */ -#define IXGBE_IMIR_LLI_EN_82599 0x00100000 /* Enables low latency Int */ -#define IXGBE_IMIR_RX_QUEUE_MASK_82599 0x0000007F /* Rx Queue Mask */ -#define IXGBE_IMIR_RX_QUEUE_SHIFT_82599 21 /* Rx Queue Shift */ -#define IXGBE_IMIRVP_PRIORITY_MASK 0x00000007 /* VLAN priority mask */ -#define IXGBE_IMIRVP_PRIORITY_EN 0x00000008 /* VLAN priority enable */ - -#define IXGBE_MAX_FTQF_FILTERS 128 -#define IXGBE_FTQF_PROTOCOL_MASK 0x00000003 -#define IXGBE_FTQF_PROTOCOL_TCP 0x00000000 -#define IXGBE_FTQF_PROTOCOL_UDP 0x00000001 -#define IXGBE_FTQF_PROTOCOL_SCTP 2 -#define IXGBE_FTQF_PRIORITY_MASK 0x00000007 -#define IXGBE_FTQF_PRIORITY_SHIFT 2 -#define IXGBE_FTQF_POOL_MASK 0x0000003F -#define IXGBE_FTQF_POOL_SHIFT 8 -#define IXGBE_FTQF_5TUPLE_MASK_MASK 0x0000001F -#define IXGBE_FTQF_5TUPLE_MASK_SHIFT 25 -#define IXGBE_FTQF_SOURCE_ADDR_MASK 0x1E -#define IXGBE_FTQF_DEST_ADDR_MASK 0x1D -#define IXGBE_FTQF_SOURCE_PORT_MASK 0x1B -#define IXGBE_FTQF_DEST_PORT_MASK 0x17 -#define IXGBE_FTQF_PROTOCOL_COMP_MASK 0x0F -#define IXGBE_FTQF_POOL_MASK_EN 0x40000000 -#define IXGBE_FTQF_QUEUE_ENABLE 0x80000000 +#define IXGBE_IMIR_PORT_IM_EN 0x00010000 /* TCP port enable */ +#define IXGBE_IMIR_PORT_BP 0x00020000 /* TCP port check bypass */ +#define IXGBE_IMIREXT_SIZE_BP 0x00001000 /* Packet size bypass */ +#define IXGBE_IMIREXT_CTRL_URG 0x00002000 /* Check URG bit in header */ +#define IXGBE_IMIREXT_CTRL_ACK 0x00004000 /* Check ACK bit in header */ +#define IXGBE_IMIREXT_CTRL_PSH 0x00008000 /* Check PSH bit in header */ +#define IXGBE_IMIREXT_CTRL_RST 0x00010000 /* Check RST bit in header */ +#define IXGBE_IMIREXT_CTRL_SYN 0x00020000 /* Check SYN bit in header */ +#define IXGBE_IMIREXT_CTRL_FIN 0x00040000 /* Check FIN bit in header */ +#define IXGBE_IMIREXT_CTRL_BP 0x00080000 /* Bypass check of control bits */ +#define IXGBE_IMIR_SIZE_BP_82599 0x00001000 /* Packet size bypass */ +#define IXGBE_IMIR_CTRL_URG_82599 0x00002000 /* Check URG bit in header */ +#define IXGBE_IMIR_CTRL_ACK_82599 0x00004000 /* Check ACK bit in header */ +#define IXGBE_IMIR_CTRL_PSH_82599 0x00008000 /* Check PSH bit in header */ +#define IXGBE_IMIR_CTRL_RST_82599 0x00010000 /* Check RST bit in header */ +#define IXGBE_IMIR_CTRL_SYN_82599 0x00020000 /* Check SYN bit in header */ +#define IXGBE_IMIR_CTRL_FIN_82599 0x00040000 /* Check FIN bit in header */ +#define IXGBE_IMIR_CTRL_BP_82599 0x00080000 /* Bypass check of control bits */ +#define IXGBE_IMIR_LLI_EN_82599 0x00100000 /* Enables low latency Int */ +#define IXGBE_IMIR_RX_QUEUE_MASK_82599 0x0000007F /* Rx Queue Mask */ +#define IXGBE_IMIR_RX_QUEUE_SHIFT_82599 21 /* Rx Queue Shift */ +#define IXGBE_IMIRVP_PRIORITY_MASK 0x00000007 /* VLAN priority mask */ +#define IXGBE_IMIRVP_PRIORITY_EN 0x00000008 /* VLAN priority enable */ + +#define IXGBE_MAX_FTQF_FILTERS 128 +#define IXGBE_FTQF_PROTOCOL_MASK 0x00000003 +#define IXGBE_FTQF_PROTOCOL_TCP 0x00000000 +#define IXGBE_FTQF_PROTOCOL_UDP 0x00000001 +#define IXGBE_FTQF_PROTOCOL_SCTP 2 +#define IXGBE_FTQF_PRIORITY_MASK 0x00000007 +#define IXGBE_FTQF_PRIORITY_SHIFT 2 +#define IXGBE_FTQF_POOL_MASK 0x0000003F +#define IXGBE_FTQF_POOL_SHIFT 8 +#define IXGBE_FTQF_5TUPLE_MASK_MASK 0x0000001F +#define IXGBE_FTQF_5TUPLE_MASK_SHIFT 25 +#define IXGBE_FTQF_SOURCE_ADDR_MASK 0x1E +#define IXGBE_FTQF_DEST_ADDR_MASK 0x1D +#define IXGBE_FTQF_SOURCE_PORT_MASK 0x1B +#define IXGBE_FTQF_DEST_PORT_MASK 0x17 +#define IXGBE_FTQF_PROTOCOL_COMP_MASK 0x0F +#define IXGBE_FTQF_POOL_MASK_EN 0x40000000 +#define IXGBE_FTQF_QUEUE_ENABLE 0x80000000 /* Interrupt clear mask */ -#define IXGBE_IRQ_CLEAR_MASK 0xFFFFFFFF +#define IXGBE_IRQ_CLEAR_MASK 0xFFFFFFFF /* Interrupt Vector Allocation Registers */ -#define IXGBE_IVAR_REG_NUM 25 -#define IXGBE_IVAR_REG_NUM_82599 64 -#define IXGBE_IVAR_TXRX_ENTRY 96 -#define IXGBE_IVAR_RX_ENTRY 64 -#define IXGBE_IVAR_RX_QUEUE(_i) (0 + (_i)) -#define IXGBE_IVAR_TX_QUEUE(_i) (64 + (_i)) -#define IXGBE_IVAR_TX_ENTRY 32 +#define IXGBE_IVAR_REG_NUM 25 +#define IXGBE_IVAR_REG_NUM_82599 64 +#define IXGBE_IVAR_TXRX_ENTRY 96 +#define IXGBE_IVAR_RX_ENTRY 64 +#define IXGBE_IVAR_RX_QUEUE(_i) (0 + (_i)) +#define IXGBE_IVAR_TX_QUEUE(_i) (64 + (_i)) +#define IXGBE_IVAR_TX_ENTRY 32 -#define IXGBE_IVAR_TCP_TIMER_INDEX 96 /* 0 based index */ -#define IXGBE_IVAR_OTHER_CAUSES_INDEX 97 /* 0 based index */ +#define IXGBE_IVAR_TCP_TIMER_INDEX 96 /* 0 based index */ +#define IXGBE_IVAR_OTHER_CAUSES_INDEX 97 /* 0 based index */ -#define IXGBE_MSIX_VECTOR(_i) (0 + (_i)) +#define IXGBE_MSIX_VECTOR(_i) (0 + (_i)) -#define IXGBE_IVAR_ALLOC_VAL 0x80 /* Interrupt Allocation valid */ +#define IXGBE_IVAR_ALLOC_VAL 0x80 /* Interrupt Allocation valid */ /* ETYPE Queue Filter/Select Bit Masks */ -#define IXGBE_MAX_ETQF_FILTERS 8 -#define IXGBE_ETQF_FCOE 0x08000000 /* bit 27 */ -#define IXGBE_ETQF_BCN 0x10000000 /* bit 28 */ -#define IXGBE_ETQF_1588 0x40000000 /* bit 30 */ -#define IXGBE_ETQF_FILTER_EN 0x80000000 /* bit 31 */ -#define IXGBE_ETQF_POOL_ENABLE (1 << 26) /* bit 26 */ - -#define IXGBE_ETQS_RX_QUEUE 0x007F0000 /* bits 22:16 */ -#define IXGBE_ETQS_RX_QUEUE_SHIFT 16 -#define IXGBE_ETQS_LLI 0x20000000 /* bit 29 */ -#define IXGBE_ETQS_QUEUE_EN 0x80000000 /* bit 31 */ +#define IXGBE_MAX_ETQF_FILTERS 8 +#define IXGBE_ETQF_FCOE 0x08000000 /* bit 27 */ +#define IXGBE_ETQF_BCN 0x10000000 /* bit 28 */ +#define IXGBE_ETQF_1588 0x40000000 /* bit 30 */ +#define IXGBE_ETQF_FILTER_EN 0x80000000 /* bit 31 */ +#define IXGBE_ETQF_POOL_ENABLE (1 << 26) /* bit 26 */ + +#define IXGBE_ETQS_RX_QUEUE 0x007F0000 /* bits 22:16 */ +#define IXGBE_ETQS_RX_QUEUE_SHIFT 16 +#define IXGBE_ETQS_LLI 0x20000000 /* bit 29 */ +#define IXGBE_ETQS_QUEUE_EN 0x80000000 /* bit 31 */ /* * ETQF filter list: one static filter per filter consumer. This is @@ -1376,764 +1405,722 @@ * 1588 (0x88f7): Filter 3 * FIP (0x8914): Filter 4 */ -#define IXGBE_ETQF_FILTER_EAPOL 0 -#define IXGBE_ETQF_FILTER_FCOE 2 -#define IXGBE_ETQF_FILTER_1588 3 -#define IXGBE_ETQF_FILTER_FIP 4 - +#define IXGBE_ETQF_FILTER_EAPOL 0 +#define IXGBE_ETQF_FILTER_FCOE 2 +#define IXGBE_ETQF_FILTER_1588 3 +#define IXGBE_ETQF_FILTER_FIP 4 /* VLAN Control Bit Masks */ -#define IXGBE_VLNCTRL_VET 0x0000FFFF /* bits 0-15 */ -#define IXGBE_VLNCTRL_CFI 0x10000000 /* bit 28 */ -#define IXGBE_VLNCTRL_CFIEN 0x20000000 /* bit 29 */ -#define IXGBE_VLNCTRL_VFE 0x40000000 /* bit 30 */ -#define IXGBE_VLNCTRL_VME 0x80000000 /* bit 31 */ +#define IXGBE_VLNCTRL_VET 0x0000FFFF /* bits 0-15 */ +#define IXGBE_VLNCTRL_CFI 0x10000000 /* bit 28 */ +#define IXGBE_VLNCTRL_CFIEN 0x20000000 /* bit 29 */ +#define IXGBE_VLNCTRL_VFE 0x40000000 /* bit 30 */ +#define IXGBE_VLNCTRL_VME 0x80000000 /* bit 31 */ /* VLAN pool filtering masks */ -#define IXGBE_VLVF_VIEN 0x80000000 /* filter is valid */ -#define IXGBE_VLVF_ENTRIES 64 -#define IXGBE_VLVF_VLANID_MASK 0x00000FFF +#define IXGBE_VLVF_VIEN 0x80000000 /* filter is valid */ +#define IXGBE_VLVF_ENTRIES 64 +#define IXGBE_VLVF_VLANID_MASK 0x00000FFF /* Per VF Port VLAN insertion rules */ -#define IXGBE_VMVIR_VLANA_DEFAULT 0x40000000 /* Always use default VLAN */ -#define IXGBE_VMVIR_VLANA_NEVER 0x80000000 /* Never insert VLAN tag */ - +#define IXGBE_VMVIR_VLANA_DEFAULT 0x40000000 /* Always use default VLAN */ +#define IXGBE_VMVIR_VLANA_NEVER 0x80000000 /* Never insert VLAN tag */ -#define IXGBE_ETHERNET_IEEE_VLAN_TYPE 0x8100 /* 802.1q protocol */ +#define IXGBE_ETHERNET_IEEE_VLAN_TYPE 0x8100 /* 802.1q protocol */ /* STATUS Bit Masks */ -#define IXGBE_STATUS_LAN_ID 0x0000000C /* LAN ID */ -#define IXGBE_STATUS_LAN_ID_SHIFT 2 /* LAN ID Shift */ -#define IXGBE_STATUS_GIO 0x00080000 /* GIO Master Enable Status */ +#define IXGBE_STATUS_LAN_ID 0x0000000C /* LAN ID */ +#define IXGBE_STATUS_LAN_ID_SHIFT 2 /* LAN ID Shift*/ +#define IXGBE_STATUS_GIO 0x00080000 /* GIO Master Enable Status */ -#define IXGBE_STATUS_LAN_ID_0 0x00000000 /* LAN ID 0 */ -#define IXGBE_STATUS_LAN_ID_1 0x00000004 /* LAN ID 1 */ +#define IXGBE_STATUS_LAN_ID_0 0x00000000 /* LAN ID 0 */ +#define IXGBE_STATUS_LAN_ID_1 0x00000004 /* LAN ID 1 */ /* ESDP Bit Masks */ -#define IXGBE_ESDP_SDP0 0x00000001 /* SDP0 Data Value */ -#define IXGBE_ESDP_SDP1 0x00000002 /* SDP1 Data Value */ -#define IXGBE_ESDP_SDP2 0x00000004 /* SDP2 Data Value */ -#define IXGBE_ESDP_SDP3 0x00000008 /* SDP3 Data Value */ -#define IXGBE_ESDP_SDP4 0x00000010 /* SDP4 Data Value */ -#define IXGBE_ESDP_SDP5 0x00000020 /* SDP5 Data Value */ -#define IXGBE_ESDP_SDP6 0x00000040 /* SDP6 Data Value */ -#define IXGBE_ESDP_SDP4_DIR 0x00000004 /* SDP4 IO direction */ -#define IXGBE_ESDP_SDP5_DIR 0x00002000 /* SDP5 IO direction */ +#define IXGBE_ESDP_SDP0 0x00000001 /* SDP0 Data Value */ +#define IXGBE_ESDP_SDP1 0x00000002 /* SDP1 Data Value */ +#define IXGBE_ESDP_SDP2 0x00000004 /* SDP2 Data Value */ +#define IXGBE_ESDP_SDP3 0x00000008 /* SDP3 Data Value */ +#define IXGBE_ESDP_SDP4 0x00000010 /* SDP4 Data Value */ +#define IXGBE_ESDP_SDP5 0x00000020 /* SDP5 Data Value */ +#define IXGBE_ESDP_SDP6 0x00000040 /* SDP6 Data Value */ +#define IXGBE_ESDP_SDP4_DIR 0x00000004 /* SDP4 IO direction */ +#define IXGBE_ESDP_SDP5_DIR 0x00002000 /* SDP5 IO direction */ /* LEDCTL Bit Masks */ -#define IXGBE_LED_IVRT_BASE 0x00000040 -#define IXGBE_LED_BLINK_BASE 0x00000080 -#define IXGBE_LED_MODE_MASK_BASE 0x0000000F -#define IXGBE_LED_OFFSET(_base, _i) (_base << (8 * (_i))) -#define IXGBE_LED_MODE_SHIFT(_i) (8*(_i)) -#define IXGBE_LED_IVRT(_i) IXGBE_LED_OFFSET(IXGBE_LED_IVRT_BASE, _i) -#define IXGBE_LED_BLINK(_i) IXGBE_LED_OFFSET(IXGBE_LED_BLINK_BASE, _i) -#define IXGBE_LED_MODE_MASK(_i) IXGBE_LED_OFFSET(IXGBE_LED_MODE_MASK_BASE, _i) +#define IXGBE_LED_IVRT_BASE 0x00000040 +#define IXGBE_LED_BLINK_BASE 0x00000080 +#define IXGBE_LED_MODE_MASK_BASE 0x0000000F +#define IXGBE_LED_OFFSET(_base, _i) (_base << (8 * (_i))) +#define IXGBE_LED_MODE_SHIFT(_i) (8*(_i)) +#define IXGBE_LED_IVRT(_i) IXGBE_LED_OFFSET(IXGBE_LED_IVRT_BASE, _i) +#define IXGBE_LED_BLINK(_i) IXGBE_LED_OFFSET(IXGBE_LED_BLINK_BASE, _i) +#define IXGBE_LED_MODE_MASK(_i) IXGBE_LED_OFFSET(IXGBE_LED_MODE_MASK_BASE, _i) /* LED modes */ -#define IXGBE_LED_LINK_UP 0x0 -#define IXGBE_LED_LINK_10G 0x1 -#define IXGBE_LED_MAC 0x2 -#define IXGBE_LED_FILTER 0x3 -#define IXGBE_LED_LINK_ACTIVE 0x4 -#define IXGBE_LED_LINK_1G 0x5 -#define IXGBE_LED_ON 0xE -#define IXGBE_LED_OFF 0xF +#define IXGBE_LED_LINK_UP 0x0 +#define IXGBE_LED_LINK_10G 0x1 +#define IXGBE_LED_MAC 0x2 +#define IXGBE_LED_FILTER 0x3 +#define IXGBE_LED_LINK_ACTIVE 0x4 +#define IXGBE_LED_LINK_1G 0x5 +#define IXGBE_LED_ON 0xE +#define IXGBE_LED_OFF 0xF /* AUTOC Bit Masks */ -#define IXGBE_AUTOC_KX4_KX_SUPP_MASK 0xC0000000 -#define IXGBE_AUTOC_KX4_SUPP 0x80000000 -#define IXGBE_AUTOC_KX_SUPP 0x40000000 -#define IXGBE_AUTOC_PAUSE 0x30000000 -#define IXGBE_AUTOC_ASM_PAUSE 0x20000000 -#define IXGBE_AUTOC_SYM_PAUSE 0x10000000 -#define IXGBE_AUTOC_RF 0x08000000 -#define IXGBE_AUTOC_PD_TMR 0x06000000 -#define IXGBE_AUTOC_AN_RX_LOOSE 0x01000000 -#define IXGBE_AUTOC_AN_RX_DRIFT 0x00800000 -#define IXGBE_AUTOC_AN_RX_ALIGN 0x007C0000 -#define IXGBE_AUTOC_FECA 0x00040000 -#define IXGBE_AUTOC_FECR 0x00020000 -#define IXGBE_AUTOC_KR_SUPP 0x00010000 -#define IXGBE_AUTOC_AN_RESTART 0x00001000 -#define IXGBE_AUTOC_FLU 0x00000001 -#define IXGBE_AUTOC_LMS_SHIFT 13 -#define IXGBE_AUTOC_LMS_10G_SERIAL (0x3 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_KX4_KX_KR (0x4 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_SGMII_1G_100M (0x5 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN (0x6 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII (0x7 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_MASK (0x7 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_1G_LINK_NO_AN (0x0 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_10G_LINK_NO_AN (0x1 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_1G_AN (0x2 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_KX4_AN (0x4 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_KX4_AN_1G_AN (0x6 << IXGBE_AUTOC_LMS_SHIFT) -#define IXGBE_AUTOC_LMS_ATTACH_TYPE (0x7 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) - -#define IXGBE_AUTOC_1G_PMA_PMD_MASK 0x00000200 -#define IXGBE_AUTOC_1G_PMA_PMD_SHIFT 9 -#define IXGBE_AUTOC_10G_PMA_PMD_MASK 0x00000180 -#define IXGBE_AUTOC_10G_PMA_PMD_SHIFT 7 -#define IXGBE_AUTOC_10G_XAUI (0x0 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_10G_KX4 (0x1 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_10G_CX4 (0x2 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_1G_BX (0x0 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_1G_KX (0x1 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_1G_SFI (0x0 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) -#define IXGBE_AUTOC_1G_KX_BX (0x1 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) - -#define IXGBE_AUTOC2_UPPER_MASK 0xFFFF0000 -#define IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_MASK 0x00030000 -#define IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT 16 -#define IXGBE_AUTOC2_10G_KR (0x0 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) -#define IXGBE_AUTOC2_10G_XFI (0x1 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) -#define IXGBE_AUTOC2_10G_SFI (0x2 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_KX4_KX_SUPP_MASK 0xC0000000 +#define IXGBE_AUTOC_KX4_SUPP 0x80000000 +#define IXGBE_AUTOC_KX_SUPP 0x40000000 +#define IXGBE_AUTOC_PAUSE 0x30000000 +#define IXGBE_AUTOC_ASM_PAUSE 0x20000000 +#define IXGBE_AUTOC_SYM_PAUSE 0x10000000 +#define IXGBE_AUTOC_RF 0x08000000 +#define IXGBE_AUTOC_PD_TMR 0x06000000 +#define IXGBE_AUTOC_AN_RX_LOOSE 0x01000000 +#define IXGBE_AUTOC_AN_RX_DRIFT 0x00800000 +#define IXGBE_AUTOC_AN_RX_ALIGN 0x007C0000 +#define IXGBE_AUTOC_FECA 0x00040000 +#define IXGBE_AUTOC_FECR 0x00020000 +#define IXGBE_AUTOC_KR_SUPP 0x00010000 +#define IXGBE_AUTOC_AN_RESTART 0x00001000 +#define IXGBE_AUTOC_FLU 0x00000001 +#define IXGBE_AUTOC_LMS_SHIFT 13 +#define IXGBE_AUTOC_LMS_10G_SERIAL (0x3 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_KX4_KX_KR (0x4 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_SGMII_1G_100M (0x5 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN (0x6 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_KX4_KX_KR_SGMII (0x7 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_MASK (0x7 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_1G_LINK_NO_AN (0x0 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_10G_LINK_NO_AN (0x1 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_1G_AN (0x2 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_KX4_AN (0x4 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_KX4_AN_1G_AN (0x6 << IXGBE_AUTOC_LMS_SHIFT) +#define IXGBE_AUTOC_LMS_ATTACH_TYPE (0x7 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) + +#define IXGBE_AUTOC_1G_PMA_PMD_MASK 0x00000200 +#define IXGBE_AUTOC_1G_PMA_PMD_SHIFT 9 +#define IXGBE_AUTOC_10G_PMA_PMD_MASK 0x00000180 +#define IXGBE_AUTOC_10G_PMA_PMD_SHIFT 7 +#define IXGBE_AUTOC_10G_XAUI (0x0 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_10G_KX4 (0x1 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_10G_CX4 (0x2 << IXGBE_AUTOC_10G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_1G_BX (0x0 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_1G_KX (0x1 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_1G_SFI (0x0 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) +#define IXGBE_AUTOC_1G_KX_BX (0x1 << IXGBE_AUTOC_1G_PMA_PMD_SHIFT) + +#define IXGBE_AUTOC2_UPPER_MASK 0xFFFF0000 +#define IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_MASK 0x00030000 +#define IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT 16 +#define IXGBE_AUTOC2_10G_KR (0x0 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) +#define IXGBE_AUTOC2_10G_XFI (0x1 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) +#define IXGBE_AUTOC2_10G_SFI (0x2 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT) + /* LINKS Bit Masks */ -#define IXGBE_LINKS_KX_AN_COMP 0x80000000 -#define IXGBE_LINKS_UP 0x40000000 -#define IXGBE_LINKS_SPEED 0x20000000 -#define IXGBE_LINKS_MODE 0x18000000 -#define IXGBE_LINKS_RX_MODE 0x06000000 -#define IXGBE_LINKS_TX_MODE 0x01800000 -#define IXGBE_LINKS_XGXS_EN 0x00400000 -#define IXGBE_LINKS_SGMII_EN 0x02000000 -#define IXGBE_LINKS_PCS_1G_EN 0x00200000 -#define IXGBE_LINKS_1G_AN_EN 0x00100000 -#define IXGBE_LINKS_KX_AN_IDLE 0x00080000 -#define IXGBE_LINKS_1G_SYNC 0x00040000 -#define IXGBE_LINKS_10G_ALIGN 0x00020000 -#define IXGBE_LINKS_10G_LANE_SYNC 0x00017000 -#define IXGBE_LINKS_TL_FAULT 0x00001000 -#define IXGBE_LINKS_SIGNAL 0x00000F00 - -#define IXGBE_LINKS_SPEED_82599 0x30000000 -#define IXGBE_LINKS_SPEED_10G_82599 0x30000000 -#define IXGBE_LINKS_SPEED_1G_82599 0x20000000 -#define IXGBE_LINKS_SPEED_100_82599 0x10000000 -#define IXGBE_LINK_UP_TIME 90 /* 9.0 Seconds */ -#define IXGBE_AUTO_NEG_TIME 45 /* 4.5 Seconds */ - -#define IXGBE_LINKS2_AN_SUPPORTED 0x00000040 +#define IXGBE_LINKS_KX_AN_COMP 0x80000000 +#define IXGBE_LINKS_UP 0x40000000 +#define IXGBE_LINKS_SPEED 0x20000000 +#define IXGBE_LINKS_MODE 0x18000000 +#define IXGBE_LINKS_RX_MODE 0x06000000 +#define IXGBE_LINKS_TX_MODE 0x01800000 +#define IXGBE_LINKS_XGXS_EN 0x00400000 +#define IXGBE_LINKS_SGMII_EN 0x02000000 +#define IXGBE_LINKS_PCS_1G_EN 0x00200000 +#define IXGBE_LINKS_1G_AN_EN 0x00100000 +#define IXGBE_LINKS_KX_AN_IDLE 0x00080000 +#define IXGBE_LINKS_1G_SYNC 0x00040000 +#define IXGBE_LINKS_10G_ALIGN 0x00020000 +#define IXGBE_LINKS_10G_LANE_SYNC 0x00017000 +#define IXGBE_LINKS_TL_FAULT 0x00001000 +#define IXGBE_LINKS_SIGNAL 0x00000F00 + +#define IXGBE_LINKS_SPEED_82599 0x30000000 +#define IXGBE_LINKS_SPEED_10G_82599 0x30000000 +#define IXGBE_LINKS_SPEED_1G_82599 0x20000000 +#define IXGBE_LINKS_SPEED_100_82599 0x10000000 +#define IXGBE_LINK_UP_TIME 90 /* 9.0 Seconds */ +#define IXGBE_AUTO_NEG_TIME 45 /* 4.5 Seconds */ + +#define IXGBE_LINKS2_AN_SUPPORTED 0x00000040 /* PCS1GLSTA Bit Masks */ -#define IXGBE_PCS1GLSTA_LINK_OK 1 -#define IXGBE_PCS1GLSTA_SYNK_OK 0x10 -#define IXGBE_PCS1GLSTA_AN_COMPLETE 0x10000 -#define IXGBE_PCS1GLSTA_AN_PAGE_RX 0x20000 -#define IXGBE_PCS1GLSTA_AN_TIMED_OUT 0x40000 -#define IXGBE_PCS1GLSTA_AN_REMOTE_FAULT 0x80000 -#define IXGBE_PCS1GLSTA_AN_ERROR_RWS 0x100000 +#define IXGBE_PCS1GLSTA_LINK_OK 1 +#define IXGBE_PCS1GLSTA_SYNK_OK 0x10 +#define IXGBE_PCS1GLSTA_AN_COMPLETE 0x10000 +#define IXGBE_PCS1GLSTA_AN_PAGE_RX 0x20000 +#define IXGBE_PCS1GLSTA_AN_TIMED_OUT 0x40000 +#define IXGBE_PCS1GLSTA_AN_REMOTE_FAULT 0x80000 +#define IXGBE_PCS1GLSTA_AN_ERROR_RWS 0x100000 -#define IXGBE_PCS1GANA_SYM_PAUSE 0x80 -#define IXGBE_PCS1GANA_ASM_PAUSE 0x100 +#define IXGBE_PCS1GANA_SYM_PAUSE 0x80 +#define IXGBE_PCS1GANA_ASM_PAUSE 0x100 /* PCS1GLCTL Bit Masks */ -#define IXGBE_PCS1GLCTL_AN_1G_TIMEOUT_EN 0x00040000 /* PCS 1G autoneg to en */ -#define IXGBE_PCS1GLCTL_FLV_LINK_UP 1 -#define IXGBE_PCS1GLCTL_FORCE_LINK 0x20 -#define IXGBE_PCS1GLCTL_LOW_LINK_LATCH 0x40 -#define IXGBE_PCS1GLCTL_AN_ENABLE 0x10000 -#define IXGBE_PCS1GLCTL_AN_RESTART 0x20000 +#define IXGBE_PCS1GLCTL_AN_1G_TIMEOUT_EN 0x00040000 /* PCS 1G autoneg to en */ +#define IXGBE_PCS1GLCTL_FLV_LINK_UP 1 +#define IXGBE_PCS1GLCTL_FORCE_LINK 0x20 +#define IXGBE_PCS1GLCTL_LOW_LINK_LATCH 0x40 +#define IXGBE_PCS1GLCTL_AN_ENABLE 0x10000 +#define IXGBE_PCS1GLCTL_AN_RESTART 0x20000 /* ANLP1 Bit Masks */ -#define IXGBE_ANLP1_PAUSE 0x0C00 -#define IXGBE_ANLP1_SYM_PAUSE 0x0400 -#define IXGBE_ANLP1_ASM_PAUSE 0x0800 +#define IXGBE_ANLP1_PAUSE 0x0C00 +#define IXGBE_ANLP1_SYM_PAUSE 0x0400 +#define IXGBE_ANLP1_ASM_PAUSE 0x0800 +#define IXGBE_ANLP1_AN_STATE_MASK 0x000f0000 /* SW Semaphore Register bitmasks */ -#define IXGBE_SWSM_SMBI 0x00000001 /* Driver Semaphore bit */ -#define IXGBE_SWSM_SWESMBI 0x00000002 /* FW Semaphore bit */ -#define IXGBE_SWSM_WMNG 0x00000004 /* Wake MNG Clock */ -#define IXGBE_SWFW_REGSMP 0x80000000 /* Register Semaphore bit 31 */ +#define IXGBE_SWSM_SMBI 0x00000001 /* Driver Semaphore bit */ +#define IXGBE_SWSM_SWESMBI 0x00000002 /* FW Semaphore bit */ +#define IXGBE_SWSM_WMNG 0x00000004 /* Wake MNG Clock */ +#define IXGBE_SWFW_REGSMP 0x80000000 /* Register Semaphore bit 31 */ /* SW_FW_SYNC/GSSR definitions */ -#define IXGBE_GSSR_EEP_SM 0x0001 -#define IXGBE_GSSR_PHY0_SM 0x0002 -#define IXGBE_GSSR_PHY1_SM 0x0004 -#define IXGBE_GSSR_MAC_CSR_SM 0x0008 -#define IXGBE_GSSR_FLASH_SM 0x0010 +#define IXGBE_GSSR_EEP_SM 0x0001 +#define IXGBE_GSSR_PHY0_SM 0x0002 +#define IXGBE_GSSR_PHY1_SM 0x0004 +#define IXGBE_GSSR_MAC_CSR_SM 0x0008 +#define IXGBE_GSSR_FLASH_SM 0x0010 /* EEC Register */ -#define IXGBE_EEC_SK 0x00000001 /* EEPROM Clock */ -#define IXGBE_EEC_CS 0x00000002 /* EEPROM Chip Select */ -#define IXGBE_EEC_DI 0x00000004 /* EEPROM Data In */ -#define IXGBE_EEC_DO 0x00000008 /* EEPROM Data Out */ -#define IXGBE_EEC_FWE_MASK 0x00000030 /* FLASH Write Enable */ -#define IXGBE_EEC_FWE_DIS 0x00000010 /* Disable FLASH writes */ -#define IXGBE_EEC_FWE_EN 0x00000020 /* Enable FLASH writes */ -#define IXGBE_EEC_FWE_SHIFT 4 -#define IXGBE_EEC_REQ 0x00000040 /* EEPROM Access Request */ -#define IXGBE_EEC_GNT 0x00000080 /* EEPROM Access Grant */ -#define IXGBE_EEC_PRES 0x00000100 /* EEPROM Present */ -#define IXGBE_EEC_ARD 0x00000200 /* EEPROM Auto Read Done */ -#define IXGBE_EEC_FLUP 0x00800000 /* Flash update command */ -#define IXGBE_EEC_FLUDONE 0x04000000 /* Flash update done */ +#define IXGBE_EEC_SK 0x00000001 /* EEPROM Clock */ +#define IXGBE_EEC_CS 0x00000002 /* EEPROM Chip Select */ +#define IXGBE_EEC_DI 0x00000004 /* EEPROM Data In */ +#define IXGBE_EEC_DO 0x00000008 /* EEPROM Data Out */ +#define IXGBE_EEC_FWE_MASK 0x00000030 /* FLASH Write Enable */ +#define IXGBE_EEC_FWE_DIS 0x00000010 /* Disable FLASH writes */ +#define IXGBE_EEC_FWE_EN 0x00000020 /* Enable FLASH writes */ +#define IXGBE_EEC_FWE_SHIFT 4 +#define IXGBE_EEC_REQ 0x00000040 /* EEPROM Access Request */ +#define IXGBE_EEC_GNT 0x00000080 /* EEPROM Access Grant */ +#define IXGBE_EEC_PRES 0x00000100 /* EEPROM Present */ +#define IXGBE_EEC_ARD 0x00000200 /* EEPROM Auto Read Done */ +#define IXGBE_EEC_FLUP 0x00800000 /* Flash update command */ +#define IXGBE_EEC_SEC1VAL 0x02000000 /* Sector 1 Valid */ +#define IXGBE_EEC_FLUDONE 0x04000000 /* Flash update done */ /* EEPROM Addressing bits based on type (0-small, 1-large) */ -#define IXGBE_EEC_ADDR_SIZE 0x00000400 -#define IXGBE_EEC_SIZE 0x00007800 /* EEPROM Size */ +#define IXGBE_EEC_ADDR_SIZE 0x00000400 +#define IXGBE_EEC_SIZE 0x00007800 /* EEPROM Size */ -#define IXGBE_EEC_SIZE_SHIFT 11 -#define IXGBE_EEPROM_WORD_SIZE_BASE_SHIFT 6 -#define IXGBE_EEPROM_OPCODE_BITS 8 +#define IXGBE_EEC_SIZE_SHIFT 11 +#define IXGBE_EEPROM_WORD_SIZE_BASE_SHIFT 6 +#define IXGBE_EEPROM_OPCODE_BITS 8 + +/* Part Number String Length */ +#define IXGBE_PBANUM_LENGTH 11 /* Checksum and EEPROM pointers */ -#define IXGBE_EEPROM_CHECKSUM 0x3F -#define IXGBE_EEPROM_SUM 0xBABA -#define IXGBE_PCIE_ANALOG_PTR 0x03 -#define IXGBE_ATLAS0_CONFIG_PTR 0x04 -#define IXGBE_PHY_PTR 0x04 -#define IXGBE_ATLAS1_CONFIG_PTR 0x05 -#define IXGBE_OPTION_ROM_PTR 0x05 -#define IXGBE_PCIE_GENERAL_PTR 0x06 -#define IXGBE_PCIE_CONFIG0_PTR 0x07 -#define IXGBE_PCIE_CONFIG1_PTR 0x08 -#define IXGBE_CORE0_PTR 0x09 -#define IXGBE_CORE1_PTR 0x0A -#define IXGBE_MAC0_PTR 0x0B -#define IXGBE_MAC1_PTR 0x0C -#define IXGBE_CSR0_CONFIG_PTR 0x0D -#define IXGBE_CSR1_CONFIG_PTR 0x0E -#define IXGBE_FW_PTR 0x0F -#define IXGBE_PBANUM0_PTR 0x15 -#define IXGBE_PBANUM1_PTR 0x16 -#define IXGBE_SAN_MAC_ADDR_PTR 0x28 -#define IXGBE_DEVICE_CAPS 0x2C -#define IXGBE_SERIAL_NUMBER_MAC_ADDR 0x11 -#define IXGBE_PCIE_MSIX_82599_CAPS 0x72 -#define IXGBE_PCIE_MSIX_82598_CAPS 0x62 +#define IXGBE_PBANUM_PTR_GUARD 0xFAFA +#define IXGBE_EEPROM_CHECKSUM 0x3F +#define IXGBE_EEPROM_SUM 0xBABA +#define IXGBE_PCIE_ANALOG_PTR 0x03 +#define IXGBE_ATLAS0_CONFIG_PTR 0x04 +#define IXGBE_PHY_PTR 0x04 +#define IXGBE_ATLAS1_CONFIG_PTR 0x05 +#define IXGBE_OPTION_ROM_PTR 0x05 +#define IXGBE_PCIE_GENERAL_PTR 0x06 +#define IXGBE_PCIE_CONFIG0_PTR 0x07 +#define IXGBE_PCIE_CONFIG1_PTR 0x08 +#define IXGBE_CORE0_PTR 0x09 +#define IXGBE_CORE1_PTR 0x0A +#define IXGBE_MAC0_PTR 0x0B +#define IXGBE_MAC1_PTR 0x0C +#define IXGBE_CSR0_CONFIG_PTR 0x0D +#define IXGBE_CSR1_CONFIG_PTR 0x0E +#define IXGBE_FW_PTR 0x0F +#define IXGBE_PBANUM0_PTR 0x15 +#define IXGBE_PBANUM1_PTR 0x16 +#define IXGBE_SAN_MAC_ADDR_PTR 0x28 +#define IXGBE_DEVICE_CAPS 0x2C +#define IXGBE_SERIAL_NUMBER_MAC_ADDR 0x11 +#define IXGBE_PCIE_MSIX_82599_CAPS 0x72 +#define IXGBE_PCIE_MSIX_82598_CAPS 0x62 /* MSI-X capability fields masks */ -#define IXGBE_PCIE_MSIX_TBL_SZ_MASK 0x7FF +#define IXGBE_PCIE_MSIX_TBL_SZ_MASK 0x7FF /* Legacy EEPROM word offsets */ -#define IXGBE_ISCSI_BOOT_CAPS 0x0033 -#define IXGBE_ISCSI_SETUP_PORT_0 0x0030 -#define IXGBE_ISCSI_SETUP_PORT_1 0x0034 +#define IXGBE_ISCSI_BOOT_CAPS 0x0033 +#define IXGBE_ISCSI_SETUP_PORT_0 0x0030 +#define IXGBE_ISCSI_SETUP_PORT_1 0x0034 /* EEPROM Commands - SPI */ -#define IXGBE_EEPROM_MAX_RETRY_SPI 5000 /* Max wait 5ms for RDY signal */ -#define IXGBE_EEPROM_STATUS_RDY_SPI 0x01 -#define IXGBE_EEPROM_READ_OPCODE_SPI 0x03 /* EEPROM read opcode */ -#define IXGBE_EEPROM_WRITE_OPCODE_SPI 0x02 /* EEPROM write opcode */ -#define IXGBE_EEPROM_A8_OPCODE_SPI 0x08 /* opcode bit-3 = addr bit-8 */ -#define IXGBE_EEPROM_WREN_OPCODE_SPI 0x06 /* EEPROM set Write Ena latch */ +#define IXGBE_EEPROM_MAX_RETRY_SPI 5000 /* Max wait 5ms for RDY signal */ +#define IXGBE_EEPROM_STATUS_RDY_SPI 0x01 +#define IXGBE_EEPROM_READ_OPCODE_SPI 0x03 /* EEPROM read opcode */ +#define IXGBE_EEPROM_WRITE_OPCODE_SPI 0x02 /* EEPROM write opcode */ +#define IXGBE_EEPROM_A8_OPCODE_SPI 0x08 /* opcode bit-3 = addr bit-8 */ +#define IXGBE_EEPROM_WREN_OPCODE_SPI 0x06 /* EEPROM set Write Ena latch */ /* EEPROM reset Write Enable latch */ -#define IXGBE_EEPROM_WRDI_OPCODE_SPI 0x04 -#define IXGBE_EEPROM_RDSR_OPCODE_SPI 0x05 /* EEPROM read Status reg */ -#define IXGBE_EEPROM_WRSR_OPCODE_SPI 0x01 /* EEPROM write Status reg */ -#define IXGBE_EEPROM_ERASE4K_OPCODE_SPI 0x20 /* EEPROM ERASE 4KB */ -#define IXGBE_EEPROM_ERASE64K_OPCODE_SPI 0xD8 /* EEPROM ERASE 64KB */ -#define IXGBE_EEPROM_ERASE256_OPCODE_SPI 0xDB /* EEPROM ERASE 256B */ +#define IXGBE_EEPROM_WRDI_OPCODE_SPI 0x04 +#define IXGBE_EEPROM_RDSR_OPCODE_SPI 0x05 /* EEPROM read Status reg */ +#define IXGBE_EEPROM_WRSR_OPCODE_SPI 0x01 /* EEPROM write Status reg */ +#define IXGBE_EEPROM_ERASE4K_OPCODE_SPI 0x20 /* EEPROM ERASE 4KB */ +#define IXGBE_EEPROM_ERASE64K_OPCODE_SPI 0xD8 /* EEPROM ERASE 64KB */ +#define IXGBE_EEPROM_ERASE256_OPCODE_SPI 0xDB /* EEPROM ERASE 256B */ /* EEPROM Read Register */ -#define IXGBE_EEPROM_RW_REG_DATA 16 /* data offset in EEPROM read reg */ -#define IXGBE_EEPROM_RW_REG_DONE 2 /* Offset to READ done bit */ -#define IXGBE_EEPROM_RW_REG_START 1 /* First bit to start operation */ -#define IXGBE_EEPROM_RW_ADDR_SHIFT 2 /* Shift to the address bits */ -#define IXGBE_NVM_POLL_WRITE 1 /* Flag for polling for write complete */ -#define IXGBE_NVM_POLL_READ 0 /* Flag for polling for read complete */ +#define IXGBE_EEPROM_RW_REG_DATA 16 /* data offset in EEPROM read reg */ +#define IXGBE_EEPROM_RW_REG_DONE 2 /* Offset to READ done bit */ +#define IXGBE_EEPROM_RW_REG_START 1 /* First bit to start operation */ +#define IXGBE_EEPROM_RW_ADDR_SHIFT 2 /* Shift to the address bits */ +#define IXGBE_NVM_POLL_WRITE 1 /* Flag for polling for write complete */ +#define IXGBE_NVM_POLL_READ 0 /* Flag for polling for read complete */ -#define IXGBE_ETH_LENGTH_OF_ADDRESS 6 +#define IXGBE_ETH_LENGTH_OF_ADDRESS 6 #ifndef IXGBE_EEPROM_GRANT_ATTEMPTS -#define IXGBE_EEPROM_GRANT_ATTEMPTS 1000 /* EEPROM # attempts to gain grant */ +#define IXGBE_EEPROM_GRANT_ATTEMPTS 1000 /* EEPROM # attempts to gain grant */ #endif -#ifndef IXGBE_EERD_EEWR_ATTEMPTS -/* - * Number of 5 microseconds we wait for EERD read and - * EERW write to complete - */ -#define IXGBE_EERD_EEWR_ATTEMPTS 100000 -#endif +/* Number of 5 microseconds we wait for EERD read and + * EERW write to complete */ +#define IXGBE_EERD_EEWR_ATTEMPTS 100000 -#ifndef IXGBE_FLUDONE_ATTEMPTS /* # attempts we wait for flush update to complete */ -#define IXGBE_FLUDONE_ATTEMPTS 20000 -#endif - -#define IXGBE_PCIE_CTRL2 0x5 /* PCIe Control 2 Offset */ -#define IXGBE_PCIE_CTRL2_DUMMY_ENABLE 0x8 /* Dummy Function Enable */ -#define IXGBE_PCIE_CTRL2_LAN_DISABLE 0x2 /* LAN PCI Disable */ -#define IXGBE_PCIE_CTRL2_DISABLE_SELECT 0x1 /* LAN Disable Select */ - -#define IXGBE_SAN_MAC_ADDR_PORT0_OFFSET 0x0 -#define IXGBE_SAN_MAC_ADDR_PORT1_OFFSET 0x3 -#define IXGBE_DEVICE_CAPS_ALLOW_ANY_SFP 0x1 -#define IXGBE_DEVICE_CAPS_FCOE_OFFLOADS 0x2 -#define IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR 0x4 -#define IXGBE_FW_PATCH_VERSION_4 0x7 -#define IXGBE_FCOE_IBA_CAPS_BLK_PTR 0x33 /* iSCSI/FCOE block */ -#define IXGBE_FCOE_IBA_CAPS_FCOE 0x20 /* FCOE flags */ -#define IXGBE_ISCSI_FCOE_BLK_PTR 0x17 /* iSCSI/FCOE block */ -#define IXGBE_ISCSI_FCOE_FLAGS_OFFSET 0x0 /* FCOE flags */ -#define IXGBE_ISCSI_FCOE_FLAGS_ENABLE 0x1 /* FCOE flags enable bit */ -#define IXGBE_ALT_SAN_MAC_ADDR_BLK_PTR 0x27 /* Alt. SAN MAC block */ -#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_OFFSET 0x0 /* Alt. SAN MAC capability */ -#define IXGBE_ALT_SAN_MAC_ADDR_PORT0_OFFSET 0x1 /* Alt. SAN MAC 0 offset */ -#define IXGBE_ALT_SAN_MAC_ADDR_PORT1_OFFSET 0x4 /* Alt. SAN MAC 1 offset */ -#define IXGBE_ALT_SAN_MAC_ADDR_WWNN_OFFSET 0x7 /* Alt. WWNN prefix offset */ -#define IXGBE_ALT_SAN_MAC_ADDR_WWPN_OFFSET 0x8 /* Alt. WWPN prefix offset */ -#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_SANMAC 0x0 /* Alt. SAN MAC exists */ -#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_ALTWWN 0x1 /* Alt. WWN base exists */ +#define IXGBE_FLUDONE_ATTEMPTS 20000 + +#define IXGBE_PCIE_CTRL2 0x5 /* PCIe Control 2 Offset */ +#define IXGBE_PCIE_CTRL2_DUMMY_ENABLE 0x8 /* Dummy Function Enable */ +#define IXGBE_PCIE_CTRL2_LAN_DISABLE 0x2 /* LAN PCI Disable */ +#define IXGBE_PCIE_CTRL2_DISABLE_SELECT 0x1 /* LAN Disable Select */ + +#define IXGBE_SAN_MAC_ADDR_PORT0_OFFSET 0x0 +#define IXGBE_SAN_MAC_ADDR_PORT1_OFFSET 0x3 +#define IXGBE_DEVICE_CAPS_ALLOW_ANY_SFP 0x1 +#define IXGBE_DEVICE_CAPS_FCOE_OFFLOADS 0x2 +#define IXGBE_FW_LESM_PARAMETERS_PTR 0x2 +#define IXGBE_FW_LESM_STATE_1 0x1 +#define IXGBE_FW_LESM_STATE_ENABLED 0x8000 /* LESM Enable bit */ +#define IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR 0x4 +#define IXGBE_FW_PATCH_VERSION_4 0x7 +#define IXGBE_FCOE_IBA_CAPS_BLK_PTR 0x33 /* iSCSI/FCOE block */ +#define IXGBE_FCOE_IBA_CAPS_FCOE 0x20 /* FCOE flags */ +#define IXGBE_ISCSI_FCOE_BLK_PTR 0x17 /* iSCSI/FCOE block */ +#define IXGBE_ISCSI_FCOE_FLAGS_OFFSET 0x0 /* FCOE flags */ +#define IXGBE_ISCSI_FCOE_FLAGS_ENABLE 0x1 /* FCOE flags enable bit */ +#define IXGBE_ALT_SAN_MAC_ADDR_BLK_PTR 0x27 /* Alt. SAN MAC block */ +#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_OFFSET 0x0 /* Alt. SAN MAC capability */ +#define IXGBE_ALT_SAN_MAC_ADDR_PORT0_OFFSET 0x1 /* Alt. SAN MAC 0 offset */ +#define IXGBE_ALT_SAN_MAC_ADDR_PORT1_OFFSET 0x4 /* Alt. SAN MAC 1 offset */ +#define IXGBE_ALT_SAN_MAC_ADDR_WWNN_OFFSET 0x7 /* Alt. WWNN prefix offset */ +#define IXGBE_ALT_SAN_MAC_ADDR_WWPN_OFFSET 0x8 /* Alt. WWPN prefix offset */ +#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_SANMAC 0x0 /* Alt. SAN MAC exists */ +#define IXGBE_ALT_SAN_MAC_ADDR_CAPS_ALTWWN 0x1 /* Alt. WWN base exists */ /* PCI Bus Info */ -#define IXGBE_PCI_DEVICE_STATUS 0xAA -#define IXGBE_PCI_DEVICE_STATUS_TRANSACTION_PENDING 0x0020 -#define IXGBE_PCI_LINK_STATUS 0xB2 -#define IXGBE_PCI_DEVICE_CONTROL2 0xC8 -#define IXGBE_PCI_LINK_WIDTH 0x3F0 -#define IXGBE_PCI_LINK_WIDTH_1 0x10 -#define IXGBE_PCI_LINK_WIDTH_2 0x20 -#define IXGBE_PCI_LINK_WIDTH_4 0x40 -#define IXGBE_PCI_LINK_WIDTH_8 0x80 -#define IXGBE_PCI_LINK_SPEED 0xF -#define IXGBE_PCI_LINK_SPEED_2500 0x1 -#define IXGBE_PCI_LINK_SPEED_5000 0x2 -#define IXGBE_PCI_HEADER_TYPE_REGISTER 0x0E -#define IXGBE_PCI_HEADER_TYPE_MULTIFUNC 0x80 -#define IXGBE_PCI_DEVICE_CONTROL2_16ms 0x0005 +#define IXGBE_PCI_DEVICE_STATUS 0xAA +#define IXGBE_PCI_DEVICE_STATUS_TRANSACTION_PENDING 0x0020 +#define IXGBE_PCI_LINK_STATUS 0xB2 +#define IXGBE_PCI_DEVICE_CONTROL2 0xC8 +#define IXGBE_PCI_LINK_WIDTH 0x3F0 +#define IXGBE_PCI_LINK_WIDTH_1 0x10 +#define IXGBE_PCI_LINK_WIDTH_2 0x20 +#define IXGBE_PCI_LINK_WIDTH_4 0x40 +#define IXGBE_PCI_LINK_WIDTH_8 0x80 +#define IXGBE_PCI_LINK_SPEED 0xF +#define IXGBE_PCI_LINK_SPEED_2500 0x1 +#define IXGBE_PCI_LINK_SPEED_5000 0x2 +#define IXGBE_PCI_HEADER_TYPE_REGISTER 0x0E +#define IXGBE_PCI_HEADER_TYPE_MULTIFUNC 0x80 +#define IXGBE_PCI_DEVICE_CONTROL2_16ms 0x0005 /* Number of 100 microseconds we wait for PCI Express master disable */ -#define IXGBE_PCI_MASTER_DISABLE_TIMEOUT 800 +#define IXGBE_PCI_MASTER_DISABLE_TIMEOUT 800 -/* Check whether address is multicast. This is little-endian specific check. */ -#define IXGBE_IS_MULTICAST(Address) \ - (bool)(((u8 *)(Address))[0] & ((u8)0x01)) +/* Check whether address is multicast. This is little-endian specific check.*/ +#define IXGBE_IS_MULTICAST(Address) \ + (bool)(((u8 *)(Address))[0] & ((u8)0x01)) /* Check whether an address is broadcast. */ -#define IXGBE_IS_BROADCAST(Address) \ - ((((u8 *)(Address))[0] == ((u8)0xff)) && \ - (((u8 *)(Address))[1] == ((u8)0xff))) +#define IXGBE_IS_BROADCAST(Address) \ + ((((u8 *)(Address))[0] == ((u8)0xff)) && \ + (((u8 *)(Address))[1] == ((u8)0xff))) /* RAH */ -#define IXGBE_RAH_VIND_MASK 0x003C0000 -#define IXGBE_RAH_VIND_SHIFT 18 -#define IXGBE_RAH_AV 0x80000000 -#define IXGBE_CLEAR_VMDQ_ALL 0xFFFFFFFF +#define IXGBE_RAH_VIND_MASK 0x003C0000 +#define IXGBE_RAH_VIND_SHIFT 18 +#define IXGBE_RAH_AV 0x80000000 +#define IXGBE_CLEAR_VMDQ_ALL 0xFFFFFFFF /* Header split receive */ -#define IXGBE_RFCTL_ISCSI_DIS 0x00000001 -#define IXGBE_RFCTL_ISCSI_DWC_MASK 0x0000003E -#define IXGBE_RFCTL_ISCSI_DWC_SHIFT 1 -#define IXGBE_RFCTL_NFSW_DIS 0x00000040 -#define IXGBE_RFCTL_NFSR_DIS 0x00000080 -#define IXGBE_RFCTL_NFS_VER_MASK 0x00000300 -#define IXGBE_RFCTL_NFS_VER_SHIFT 8 -#define IXGBE_RFCTL_NFS_VER_2 0 -#define IXGBE_RFCTL_NFS_VER_3 1 -#define IXGBE_RFCTL_NFS_VER_4 2 -#define IXGBE_RFCTL_IPV6_DIS 0x00000400 -#define IXGBE_RFCTL_IPV6_XSUM_DIS 0x00000800 -#define IXGBE_RFCTL_IPFRSP_DIS 0x00004000 -#define IXGBE_RFCTL_IPV6_EX_DIS 0x00010000 -#define IXGBE_RFCTL_NEW_IPV6_EXT_DIS 0x00020000 +#define IXGBE_RFCTL_ISCSI_DIS 0x00000001 +#define IXGBE_RFCTL_ISCSI_DWC_MASK 0x0000003E +#define IXGBE_RFCTL_ISCSI_DWC_SHIFT 1 +#define IXGBE_RFCTL_NFSW_DIS 0x00000040 +#define IXGBE_RFCTL_NFSR_DIS 0x00000080 +#define IXGBE_RFCTL_NFS_VER_MASK 0x00000300 +#define IXGBE_RFCTL_NFS_VER_SHIFT 8 +#define IXGBE_RFCTL_NFS_VER_2 0 +#define IXGBE_RFCTL_NFS_VER_3 1 +#define IXGBE_RFCTL_NFS_VER_4 2 +#define IXGBE_RFCTL_IPV6_DIS 0x00000400 +#define IXGBE_RFCTL_IPV6_XSUM_DIS 0x00000800 +#define IXGBE_RFCTL_IPFRSP_DIS 0x00004000 +#define IXGBE_RFCTL_IPV6_EX_DIS 0x00010000 +#define IXGBE_RFCTL_NEW_IPV6_EXT_DIS 0x00020000 /* Transmit Config masks */ -#define IXGBE_TXDCTL_ENABLE 0x02000000 /* Enable specific Tx Queue */ -#define IXGBE_TXDCTL_SWFLSH 0x04000000 /* Tx Desc. write-back flushing */ -#define IXGBE_TXDCTL_WTHRESH_SHIFT 16 /* shift to WTHRESH bits */ +#define IXGBE_TXDCTL_ENABLE 0x02000000 /* Enable specific Tx Queue */ +#define IXGBE_TXDCTL_SWFLSH 0x04000000 /* Tx Desc. write-back flushing */ +#define IXGBE_TXDCTL_WTHRESH_SHIFT 16 /* shift to WTHRESH bits */ /* Enable short packet padding to 64 bytes */ -#define IXGBE_TX_PAD_ENABLE 0x00000400 -#define IXGBE_JUMBO_FRAME_ENABLE 0x00000004 /* Allow jumbo frames */ +#define IXGBE_TX_PAD_ENABLE 0x00000400 +#define IXGBE_JUMBO_FRAME_ENABLE 0x00000004 /* Allow jumbo frames */ /* This allows for 16K packets + 4k for vlan */ -#define IXGBE_MAX_FRAME_SZ 0x40040000 +#define IXGBE_MAX_FRAME_SZ 0x40040000 -#define IXGBE_TDWBAL_HEAD_WB_ENABLE 0x1 /* Tx head write-back enable */ -#define IXGBE_TDWBAL_SEQNUM_WB_ENABLE 0x2 /* Tx seq# write-back enable */ +#define IXGBE_TDWBAL_HEAD_WB_ENABLE 0x1 /* Tx head write-back enable */ +#define IXGBE_TDWBAL_SEQNUM_WB_ENABLE 0x2 /* Tx seq# write-back enable */ /* Receive Config masks */ -#define IXGBE_RXCTRL_RXEN 0x00000001 /* Enable Receiver */ -#define IXGBE_RXCTRL_DMBYPS 0x00000002 /* Descriptor Monitor Bypass */ -#define IXGBE_RXDCTL_ENABLE 0x02000000 /* Enable specific Rx Queue */ -#define IXGBE_RXDCTL_VME 0x40000000 /* VLAN mode enable */ - -#define IXGBE_FCTRL_SBP 0x00000002 /* Store Bad Packet */ -#define IXGBE_FCTRL_MPE 0x00000100 /* Multicast Promiscuous Ena */ -#define IXGBE_FCTRL_UPE 0x00000200 /* Unicast Promiscuous Ena */ -#define IXGBE_FCTRL_BAM 0x00000400 /* Broadcast Accept Mode */ -#define IXGBE_FCTRL_PMCF 0x00001000 /* Pass MAC Control Frames */ -#define IXGBE_FCTRL_DPF 0x00002000 /* Discard Pause Frame */ +#define IXGBE_RXCTRL_RXEN 0x00000001 /* Enable Receiver */ +#define IXGBE_RXCTRL_DMBYPS 0x00000002 /* Descriptor Monitor Bypass */ +#define IXGBE_RXDCTL_ENABLE 0x02000000 /* Enable specific Rx Queue */ +#define IXGBE_RXDCTL_VME 0x40000000 /* VLAN mode enable */ + +#define IXGBE_FCTRL_SBP 0x00000002 /* Store Bad Packet */ +#define IXGBE_FCTRL_MPE 0x00000100 /* Multicast Promiscuous Ena*/ +#define IXGBE_FCTRL_UPE 0x00000200 /* Unicast Promiscuous Ena */ +#define IXGBE_FCTRL_BAM 0x00000400 /* Broadcast Accept Mode */ +#define IXGBE_FCTRL_PMCF 0x00001000 /* Pass MAC Control Frames */ +#define IXGBE_FCTRL_DPF 0x00002000 /* Discard Pause Frame */ /* Receive Priority Flow Control Enable */ -#define IXGBE_FCTRL_RPFCE 0x00004000 -#define IXGBE_FCTRL_RFCE 0x00008000 /* Receive Flow Control Ena */ -#define IXGBE_MFLCN_PMCF 0x00000001 /* Pass MAC Control Frames */ -#define IXGBE_MFLCN_DPF 0x00000002 /* Discard Pause Frame */ -#define IXGBE_MFLCN_RPFCE 0x00000004 /* Receive Priority FC Enable */ -#define IXGBE_MFLCN_RFCE 0x00000008 /* Receive FC Enable */ +#define IXGBE_FCTRL_RPFCE 0x00004000 +#define IXGBE_FCTRL_RFCE 0x00008000 /* Receive Flow Control Ena */ +#define IXGBE_MFLCN_PMCF 0x00000001 /* Pass MAC Control Frames */ +#define IXGBE_MFLCN_DPF 0x00000002 /* Discard Pause Frame */ +#define IXGBE_MFLCN_RPFCE 0x00000004 /* Receive Priority FC Enable */ +#define IXGBE_MFLCN_RFCE 0x00000008 /* Receive FC Enable */ /* Multiple Receive Queue Control */ -#define IXGBE_MRQC_RSSEN 0x00000001 /* RSS Enable */ -#define IXGBE_MRQC_MRQE_MASK 0xF /* Bits 3:0 */ -#define IXGBE_MRQC_RT8TCEN 0x00000002 /* 8 TC no RSS */ -#define IXGBE_MRQC_RT4TCEN 0x00000003 /* 4 TC no RSS */ -#define IXGBE_MRQC_RTRSS8TCEN 0x00000004 /* 8 TC w/ RSS */ -#define IXGBE_MRQC_RTRSS4TCEN 0x00000005 /* 4 TC w/ RSS */ -#define IXGBE_MRQC_VMDQEN 0x00000008 /* VMDq2 64 pools no RSS */ -#define IXGBE_MRQC_VMDQRSS32EN 0x0000000A /* VMDq2 32 pools w/ RSS */ -#define IXGBE_MRQC_VMDQRSS64EN 0x0000000B /* VMDq2 64 pools w/ RSS */ -#define IXGBE_MRQC_VMDQRT8TCEN 0x0000000C /* VMDq2/RT 16 pool 8 TC */ -#define IXGBE_MRQC_VMDQRT4TCEN 0x0000000D /* VMDq2/RT 32 pool 4 TC */ -#define IXGBE_MRQC_RSS_FIELD_MASK 0xFFFF0000 -#define IXGBE_MRQC_RSS_FIELD_IPV4_TCP 0x00010000 -#define IXGBE_MRQC_RSS_FIELD_IPV4 0x00020000 -#define IXGBE_MRQC_RSS_FIELD_IPV6_EX_TCP 0x00040000 -#define IXGBE_MRQC_RSS_FIELD_IPV6_EX 0x00080000 -#define IXGBE_MRQC_RSS_FIELD_IPV6 0x00100000 -#define IXGBE_MRQC_RSS_FIELD_IPV6_TCP 0x00200000 -#define IXGBE_MRQC_RSS_FIELD_IPV4_UDP 0x00400000 -#define IXGBE_MRQC_RSS_FIELD_IPV6_UDP 0x00800000 -#define IXGBE_MRQC_RSS_FIELD_IPV6_EX_UDP 0x01000000 -#define IXGBE_MRQC_L3L4TXSWEN 0x00008000 +#define IXGBE_MRQC_RSSEN 0x00000001 /* RSS Enable */ +#define IXGBE_MRQC_MRQE_MASK 0xF /* Bits 3:0 */ +#define IXGBE_MRQC_RT8TCEN 0x00000002 /* 8 TC no RSS */ +#define IXGBE_MRQC_RT4TCEN 0x00000003 /* 4 TC no RSS */ +#define IXGBE_MRQC_RTRSS8TCEN 0x00000004 /* 8 TC w/ RSS */ +#define IXGBE_MRQC_RTRSS4TCEN 0x00000005 /* 4 TC w/ RSS */ +#define IXGBE_MRQC_VMDQEN 0x00000008 /* VMDq2 64 pools no RSS */ +#define IXGBE_MRQC_VMDQRSS32EN 0x0000000A /* VMDq2 32 pools w/ RSS */ +#define IXGBE_MRQC_VMDQRSS64EN 0x0000000B /* VMDq2 64 pools w/ RSS */ +#define IXGBE_MRQC_VMDQRT8TCEN 0x0000000C /* VMDq2/RT 16 pool 8 TC */ +#define IXGBE_MRQC_VMDQRT4TCEN 0x0000000D /* VMDq2/RT 32 pool 4 TC */ +#define IXGBE_MRQC_RSS_FIELD_MASK 0xFFFF0000 +#define IXGBE_MRQC_RSS_FIELD_IPV4_TCP 0x00010000 +#define IXGBE_MRQC_RSS_FIELD_IPV4 0x00020000 +#define IXGBE_MRQC_RSS_FIELD_IPV6_EX_TCP 0x00040000 +#define IXGBE_MRQC_RSS_FIELD_IPV6_EX 0x00080000 +#define IXGBE_MRQC_RSS_FIELD_IPV6 0x00100000 +#define IXGBE_MRQC_RSS_FIELD_IPV6_TCP 0x00200000 +#define IXGBE_MRQC_RSS_FIELD_IPV4_UDP 0x00400000 +#define IXGBE_MRQC_RSS_FIELD_IPV6_UDP 0x00800000 +#define IXGBE_MRQC_RSS_FIELD_IPV6_EX_UDP 0x01000000 +#define IXGBE_MRQC_L3L4TXSWEN 0x00008000 /* Queue Drop Enable */ -#define IXGBE_QDE_ENABLE 0x00000001 -#define IXGBE_QDE_IDX_MASK 0x00007F00 -#define IXGBE_QDE_IDX_SHIFT 8 - -#define IXGBE_TXD_POPTS_IXSM 0x01 /* Insert IP checksum */ -#define IXGBE_TXD_POPTS_TXSM 0x02 /* Insert TCP/UDP checksum */ -#define IXGBE_TXD_CMD_EOP 0x01000000 /* End of Packet */ -#define IXGBE_TXD_CMD_IFCS 0x02000000 /* Insert FCS (Ethernet CRC) */ -#define IXGBE_TXD_CMD_IC 0x04000000 /* Insert Checksum */ -#define IXGBE_TXD_CMD_RS 0x08000000 /* Report Status */ -#define IXGBE_TXD_CMD_DEXT 0x20000000 - /* Descriptor extension (0 = legacy) */ -#define IXGBE_TXD_CMD_VLE 0x40000000 /* Add VLAN tag */ -#define IXGBE_TXD_STAT_DD 0x00000001 /* Descriptor Done */ - -#define IXGBE_RXDADV_IPSEC_STATUS_SECP 0x00020000 -#define IXGBE_RXDADV_IPSEC_ERROR_INVALID_PROTOCOL 0x08000000 -#define IXGBE_RXDADV_IPSEC_ERROR_INVALID_LENGTH 0x10000000 -#define IXGBE_RXDADV_IPSEC_ERROR_AUTH_FAILED 0x18000000 -#define IXGBE_RXDADV_IPSEC_ERROR_BIT_MASK 0x18000000 - +#define IXGBE_QDE_ENABLE 0x00000001 +#define IXGBE_QDE_IDX_MASK 0x00007F00 +#define IXGBE_QDE_IDX_SHIFT 8 + +#define IXGBE_TXD_POPTS_IXSM 0x01 /* Insert IP checksum */ +#define IXGBE_TXD_POPTS_TXSM 0x02 /* Insert TCP/UDP checksum */ +#define IXGBE_TXD_CMD_EOP 0x01000000 /* End of Packet */ +#define IXGBE_TXD_CMD_IFCS 0x02000000 /* Insert FCS (Ethernet CRC) */ +#define IXGBE_TXD_CMD_IC 0x04000000 /* Insert Checksum */ +#define IXGBE_TXD_CMD_RS 0x08000000 /* Report Status */ +#define IXGBE_TXD_CMD_DEXT 0x20000000 /* Descriptor extension (0 = legacy) */ +#define IXGBE_TXD_CMD_VLE 0x40000000 /* Add VLAN tag */ +#define IXGBE_TXD_STAT_DD 0x00000001 /* Descriptor Done */ + +#define IXGBE_RXDADV_IPSEC_STATUS_SECP 0x00020000 +#define IXGBE_RXDADV_IPSEC_ERROR_INVALID_PROTOCOL 0x08000000 +#define IXGBE_RXDADV_IPSEC_ERROR_INVALID_LENGTH 0x10000000 +#define IXGBE_RXDADV_IPSEC_ERROR_AUTH_FAILED 0x18000000 +#define IXGBE_RXDADV_IPSEC_ERROR_BIT_MASK 0x18000000 /* Multiple Transmit Queue Command Register */ -#define IXGBE_MTQC_RT_ENA 0x1 /* DCB Enable */ -#define IXGBE_MTQC_VT_ENA 0x2 /* VMDQ2 Enable */ -#define IXGBE_MTQC_64Q_1PB 0x0 /* 64 queues 1 pack buffer */ -#define IXGBE_MTQC_32VF 0x8 /* 4 TX Queues per pool w/32VF's */ -#define IXGBE_MTQC_64VF 0x4 /* 2 TX Queues per pool w/64VF's */ -#define IXGBE_MTQC_4TC_4TQ 0x8 /* 4 TC if RT_ENA and VT_ENA */ -#define IXGBE_MTQC_8TC_8TQ 0xC /* 8 TC if RT_ENA or 8 TQ if VT_ENA */ +#define IXGBE_MTQC_RT_ENA 0x1 /* DCB Enable */ +#define IXGBE_MTQC_VT_ENA 0x2 /* VMDQ2 Enable */ +#define IXGBE_MTQC_64Q_1PB 0x0 /* 64 queues 1 pack buffer */ +#define IXGBE_MTQC_32VF 0x8 /* 4 TX Queues per pool w/32VF's */ +#define IXGBE_MTQC_64VF 0x4 /* 2 TX Queues per pool w/64VF's */ +#define IXGBE_MTQC_4TC_4TQ 0x8 /* 4 TC if RT_ENA and VT_ENA */ +#define IXGBE_MTQC_8TC_8TQ 0xC /* 8 TC if RT_ENA or 8 TQ if VT_ENA */ /* Receive Descriptor bit definitions */ -#define IXGBE_RXD_STAT_DD 0x01 /* Descriptor Done */ -#define IXGBE_RXD_STAT_EOP 0x02 /* End of Packet */ -#define IXGBE_RXD_STAT_FLM 0x04 /* FDir Match */ -#define IXGBE_RXD_STAT_VP 0x08 /* IEEE VLAN Packet */ -#define IXGBE_RXDADV_NEXTP_MASK 0x000FFFF0 /* Next Descriptor Index */ -#define IXGBE_RXDADV_NEXTP_SHIFT 0x00000004 -#define IXGBE_RXD_STAT_UDPCS 0x10 /* UDP xsum calculated */ -#define IXGBE_RXD_STAT_L4CS 0x20 /* L4 xsum calculated */ -#define IXGBE_RXD_STAT_IPCS 0x40 /* IP xsum calculated */ -#define IXGBE_RXD_STAT_PIF 0x80 /* passed in-exact filter */ -#define IXGBE_RXD_STAT_CRCV 0x100 /* Speculative CRC Valid */ -#define IXGBE_RXD_STAT_VEXT 0x200 /* 1st VLAN found */ -#define IXGBE_RXD_STAT_UDPV 0x400 /* Valid UDP checksum */ -#define IXGBE_RXD_STAT_DYNINT 0x800 /* Pkt caused INT via DYNINT */ -#define IXGBE_RXD_STAT_LLINT 0x800 /* Pkt caused Low Latency Interrupt */ -#define IXGBE_RXD_STAT_TS 0x10000 /* Time Stamp */ -#define IXGBE_RXD_STAT_SECP 0x20000 /* Security Processing */ -#define IXGBE_RXD_STAT_LB 0x40000 /* Loopback Status */ -#define IXGBE_RXD_STAT_ACK 0x8000 /* ACK Packet indication */ -#define IXGBE_RXD_ERR_CE 0x01 /* CRC Error */ -#define IXGBE_RXD_ERR_LE 0x02 /* Length Error */ -#define IXGBE_RXD_ERR_PE 0x08 /* Packet Error */ -#define IXGBE_RXD_ERR_OSE 0x10 /* Oversize Error */ -#define IXGBE_RXD_ERR_USE 0x20 /* Undersize Error */ -#define IXGBE_RXD_ERR_TCPE 0x40 /* TCP/UDP Checksum Error */ -#define IXGBE_RXD_ERR_IPE 0x80 /* IP Checksum Error */ -#define IXGBE_RXDADV_ERR_MASK 0xfff00000 /* RDESC.ERRORS mask */ -#define IXGBE_RXDADV_ERR_SHIFT 20 /* RDESC.ERRORS shift */ -#define IXGBE_RXDADV_ERR_FCEOFE 0x80000000 /* FCoEFe/IPE */ -#define IXGBE_RXDADV_ERR_FCERR 0x00700000 /* FCERR/FDIRERR */ -#define IXGBE_RXDADV_ERR_FDIR_LEN 0x00100000 /* FDIR Length error */ -#define IXGBE_RXDADV_ERR_FDIR_DROP 0x00200000 /* FDIR Drop error */ -#define IXGBE_RXDADV_ERR_FDIR_COLL 0x00400000 /* FDIR Collision error */ -#define IXGBE_RXDADV_ERR_HBO 0x00800000 /* Header Buffer Overflow */ -#define IXGBE_RXDADV_ERR_CE 0x01000000 /* CRC Error */ -#define IXGBE_RXDADV_ERR_LE 0x02000000 /* Length Error */ -#define IXGBE_RXDADV_ERR_PE 0x08000000 /* Packet Error */ -#define IXGBE_RXDADV_ERR_OSE 0x10000000 /* Oversize Error */ -#define IXGBE_RXDADV_ERR_USE 0x20000000 /* Undersize Error */ -#define IXGBE_RXDADV_ERR_TCPE 0x40000000 /* TCP/UDP Checksum Error */ -#define IXGBE_RXDADV_ERR_IPE 0x80000000 /* IP Checksum Error */ -#define IXGBE_RXD_VLAN_ID_MASK 0x0FFF /* VLAN ID is in lower 12 bits */ -#define IXGBE_RXD_PRI_MASK 0xE000 /* Priority is in upper 3 bits */ -#define IXGBE_RXD_PRI_SHIFT 13 -#define IXGBE_RXD_CFI_MASK 0x1000 /* CFI is bit 12 */ -#define IXGBE_RXD_CFI_SHIFT 12 - -#define IXGBE_RXDADV_STAT_DD IXGBE_RXD_STAT_DD /* Done */ -#define IXGBE_RXDADV_STAT_EOP IXGBE_RXD_STAT_EOP /* End of Packet */ -#define IXGBE_RXDADV_STAT_FLM IXGBE_RXD_STAT_FLM /* FDir Match */ -#define IXGBE_RXDADV_STAT_VP IXGBE_RXD_STAT_VP /* IEEE VLAN Pkt */ -#define IXGBE_RXDADV_STAT_MASK 0x000fffff /* Stat/NEXTP: bit 0-19 */ -#define IXGBE_RXDADV_STAT_FCEOFS 0x00000040 /* FCoE EOF/SOF Stat */ -#define IXGBE_RXDADV_STAT_FCSTAT 0x00000030 /* FCoE Pkt Stat */ -#define IXGBE_RXDADV_STAT_FCSTAT_NOMTCH 0x00000000 /* 00: No Ctxt Match */ -#define IXGBE_RXDADV_STAT_FCSTAT_NODDP 0x00000010 /* 01: Ctxt w/o DDP */ -#define IXGBE_RXDADV_STAT_FCSTAT_FCPRSP 0x00000020 /* 10: Recv. FCP_RSP */ -#define IXGBE_RXDADV_STAT_FCSTAT_DDP 0x00000030 /* 11: Ctxt w/ DDP */ +#define IXGBE_RXD_STAT_DD 0x01 /* Descriptor Done */ +#define IXGBE_RXD_STAT_EOP 0x02 /* End of Packet */ +#define IXGBE_RXD_STAT_FLM 0x04 /* FDir Match */ +#define IXGBE_RXD_STAT_VP 0x08 /* IEEE VLAN Packet */ +#define IXGBE_RXDADV_NEXTP_MASK 0x000FFFF0 /* Next Descriptor Index */ +#define IXGBE_RXDADV_NEXTP_SHIFT 0x00000004 +#define IXGBE_RXD_STAT_UDPCS 0x10 /* UDP xsum calculated */ +#define IXGBE_RXD_STAT_L4CS 0x20 /* L4 xsum calculated */ +#define IXGBE_RXD_STAT_IPCS 0x40 /* IP xsum calculated */ +#define IXGBE_RXD_STAT_PIF 0x80 /* passed in-exact filter */ +#define IXGBE_RXD_STAT_CRCV 0x100 /* Speculative CRC Valid */ +#define IXGBE_RXD_STAT_VEXT 0x200 /* 1st VLAN found */ +#define IXGBE_RXD_STAT_UDPV 0x400 /* Valid UDP checksum */ +#define IXGBE_RXD_STAT_DYNINT 0x800 /* Pkt caused INT via DYNINT */ +#define IXGBE_RXD_STAT_LLINT 0x800 /* Pkt caused Low Latency Interrupt */ +#define IXGBE_RXD_STAT_TS 0x10000 /* Time Stamp */ +#define IXGBE_RXD_STAT_SECP 0x20000 /* Security Processing */ +#define IXGBE_RXD_STAT_LB 0x40000 /* Loopback Status */ +#define IXGBE_RXD_STAT_ACK 0x8000 /* ACK Packet indication */ +#define IXGBE_RXD_ERR_CE 0x01 /* CRC Error */ +#define IXGBE_RXD_ERR_LE 0x02 /* Length Error */ +#define IXGBE_RXD_ERR_PE 0x08 /* Packet Error */ +#define IXGBE_RXD_ERR_OSE 0x10 /* Oversize Error */ +#define IXGBE_RXD_ERR_USE 0x20 /* Undersize Error */ +#define IXGBE_RXD_ERR_TCPE 0x40 /* TCP/UDP Checksum Error */ +#define IXGBE_RXD_ERR_IPE 0x80 /* IP Checksum Error */ +#define IXGBE_RXDADV_ERR_MASK 0xfff00000 /* RDESC.ERRORS mask */ +#define IXGBE_RXDADV_ERR_SHIFT 20 /* RDESC.ERRORS shift */ +#define IXGBE_RXDADV_ERR_FCEOFE 0x80000000 /* FCoEFe/IPE */ +#define IXGBE_RXDADV_ERR_FCERR 0x00700000 /* FCERR/FDIRERR */ +#define IXGBE_RXDADV_ERR_FDIR_LEN 0x00100000 /* FDIR Length error */ +#define IXGBE_RXDADV_ERR_FDIR_DROP 0x00200000 /* FDIR Drop error */ +#define IXGBE_RXDADV_ERR_FDIR_COLL 0x00400000 /* FDIR Collision error */ +#define IXGBE_RXDADV_ERR_HBO 0x00800000 /*Header Buffer Overflow */ +#define IXGBE_RXDADV_ERR_CE 0x01000000 /* CRC Error */ +#define IXGBE_RXDADV_ERR_LE 0x02000000 /* Length Error */ +#define IXGBE_RXDADV_ERR_PE 0x08000000 /* Packet Error */ +#define IXGBE_RXDADV_ERR_OSE 0x10000000 /* Oversize Error */ +#define IXGBE_RXDADV_ERR_USE 0x20000000 /* Undersize Error */ +#define IXGBE_RXDADV_ERR_TCPE 0x40000000 /* TCP/UDP Checksum Error */ +#define IXGBE_RXDADV_ERR_IPE 0x80000000 /* IP Checksum Error */ +#define IXGBE_RXD_VLAN_ID_MASK 0x0FFF /* VLAN ID is in lower 12 bits */ +#define IXGBE_RXD_PRI_MASK 0xE000 /* Priority is in upper 3 bits */ +#define IXGBE_RXD_PRI_SHIFT 13 +#define IXGBE_RXD_CFI_MASK 0x1000 /* CFI is bit 12 */ +#define IXGBE_RXD_CFI_SHIFT 12 + +#define IXGBE_RXDADV_STAT_DD IXGBE_RXD_STAT_DD /* Done */ +#define IXGBE_RXDADV_STAT_EOP IXGBE_RXD_STAT_EOP /* End of Packet */ +#define IXGBE_RXDADV_STAT_FLM IXGBE_RXD_STAT_FLM /* FDir Match */ +#define IXGBE_RXDADV_STAT_VP IXGBE_RXD_STAT_VP /* IEEE VLAN Pkt */ +#define IXGBE_RXDADV_STAT_MASK 0x000fffff /* Stat/NEXTP: bit 0-19 */ +#define IXGBE_RXDADV_STAT_FCEOFS 0x00000040 /* FCoE EOF/SOF Stat */ +#define IXGBE_RXDADV_STAT_FCSTAT 0x00000030 /* FCoE Pkt Stat */ +#define IXGBE_RXDADV_STAT_FCSTAT_NOMTCH 0x00000000 /* 00: No Ctxt Match */ +#define IXGBE_RXDADV_STAT_FCSTAT_NODDP 0x00000010 /* 01: Ctxt w/o DDP */ +#define IXGBE_RXDADV_STAT_FCSTAT_FCPRSP 0x00000020 /* 10: Recv. FCP_RSP */ +#define IXGBE_RXDADV_STAT_FCSTAT_DDP 0x00000030 /* 11: Ctxt w/ DDP */ /* PSRTYPE bit definitions */ -#define IXGBE_PSRTYPE_TCPHDR 0x00000010 -#define IXGBE_PSRTYPE_UDPHDR 0x00000020 -#define IXGBE_PSRTYPE_IPV4HDR 0x00000100 -#define IXGBE_PSRTYPE_IPV6HDR 0x00000200 -#define IXGBE_PSRTYPE_L2HDR 0x00001000 +#define IXGBE_PSRTYPE_TCPHDR 0x00000010 +#define IXGBE_PSRTYPE_UDPHDR 0x00000020 +#define IXGBE_PSRTYPE_IPV4HDR 0x00000100 +#define IXGBE_PSRTYPE_IPV6HDR 0x00000200 +#define IXGBE_PSRTYPE_L2HDR 0x00001000 /* SRRCTL bit definitions */ -#define IXGBE_SRRCTL_BSIZEPKT_SHIFT 10 /* so many KBs */ -#define IXGBE_SRRCTL_RDMTS_SHIFT 22 -#define IXGBE_SRRCTL_RDMTS_MASK 0x01C00000 -#define IXGBE_SRRCTL_DROP_EN 0x10000000 -#define IXGBE_SRRCTL_BSIZEPKT_MASK 0x0000007F -#define IXGBE_SRRCTL_BSIZEHDR_MASK 0x00003F00 -#define IXGBE_SRRCTL_DESCTYPE_LEGACY 0x00000000 -#define IXGBE_SRRCTL_DESCTYPE_ADV_ONEBUF 0x02000000 -#define IXGBE_SRRCTL_DESCTYPE_HDR_SPLIT 0x04000000 -#define IXGBE_SRRCTL_DESCTYPE_HDR_REPLICATION_LARGE_PKT 0x08000000 -#define IXGBE_SRRCTL_DESCTYPE_HDR_SPLIT_ALWAYS 0x0A000000 -#define IXGBE_SRRCTL_DESCTYPE_MASK 0x0E000000 - -#define IXGBE_RXDPS_HDRSTAT_HDRSP 0x00008000 -#define IXGBE_RXDPS_HDRSTAT_HDRLEN_MASK 0x000003FF - -#define IXGBE_RXDADV_RSSTYPE_MASK 0x0000000F -#define IXGBE_RXDADV_PKTTYPE_MASK 0x0000FFF0 -#define IXGBE_RXDADV_PKTTYPE_MASK_EX 0x0001FFF0 -#define IXGBE_RXDADV_HDRBUFLEN_MASK 0x00007FE0 -#define IXGBE_RXDADV_RSCCNT_MASK 0x001E0000 -#define IXGBE_RXDADV_RSCCNT_SHIFT 17 -#define IXGBE_RXDADV_HDRBUFLEN_SHIFT 5 -#define IXGBE_RXDADV_SPLITHEADER_EN 0x00001000 -#define IXGBE_RXDADV_SPH 0x8000 +#define IXGBE_SRRCTL_BSIZEPKT_SHIFT 10 /* so many KBs */ +#define IXGBE_SRRCTL_RDMTS_SHIFT 22 +#define IXGBE_SRRCTL_RDMTS_MASK 0x01C00000 +#define IXGBE_SRRCTL_DROP_EN 0x10000000 +#define IXGBE_SRRCTL_BSIZEPKT_MASK 0x0000007F +#define IXGBE_SRRCTL_BSIZEHDR_MASK 0x00003F00 +#define IXGBE_SRRCTL_DESCTYPE_LEGACY 0x00000000 +#define IXGBE_SRRCTL_DESCTYPE_ADV_ONEBUF 0x02000000 +#define IXGBE_SRRCTL_DESCTYPE_HDR_SPLIT 0x04000000 +#define IXGBE_SRRCTL_DESCTYPE_HDR_REPLICATION_LARGE_PKT 0x08000000 +#define IXGBE_SRRCTL_DESCTYPE_HDR_SPLIT_ALWAYS 0x0A000000 +#define IXGBE_SRRCTL_DESCTYPE_MASK 0x0E000000 + +#define IXGBE_RXDPS_HDRSTAT_HDRSP 0x00008000 +#define IXGBE_RXDPS_HDRSTAT_HDRLEN_MASK 0x000003FF + +#define IXGBE_RXDADV_RSSTYPE_MASK 0x0000000F +#define IXGBE_RXDADV_PKTTYPE_MASK 0x0000FFF0 +#define IXGBE_RXDADV_PKTTYPE_MASK_EX 0x0001FFF0 +#define IXGBE_RXDADV_HDRBUFLEN_MASK 0x00007FE0 +#define IXGBE_RXDADV_RSCCNT_MASK 0x001E0000 +#define IXGBE_RXDADV_RSCCNT_SHIFT 17 +#define IXGBE_RXDADV_HDRBUFLEN_SHIFT 5 +#define IXGBE_RXDADV_SPLITHEADER_EN 0x00001000 +#define IXGBE_RXDADV_SPH 0x8000 /* RSS Hash results */ -#define IXGBE_RXDADV_RSSTYPE_NONE 0x00000000 -#define IXGBE_RXDADV_RSSTYPE_IPV4_TCP 0x00000001 -#define IXGBE_RXDADV_RSSTYPE_IPV4 0x00000002 -#define IXGBE_RXDADV_RSSTYPE_IPV6_TCP 0x00000003 -#define IXGBE_RXDADV_RSSTYPE_IPV6_EX 0x00000004 -#define IXGBE_RXDADV_RSSTYPE_IPV6 0x00000005 -#define IXGBE_RXDADV_RSSTYPE_IPV6_TCP_EX 0x00000006 -#define IXGBE_RXDADV_RSSTYPE_IPV4_UDP 0x00000007 -#define IXGBE_RXDADV_RSSTYPE_IPV6_UDP 0x00000008 -#define IXGBE_RXDADV_RSSTYPE_IPV6_UDP_EX 0x00000009 +#define IXGBE_RXDADV_RSSTYPE_NONE 0x00000000 +#define IXGBE_RXDADV_RSSTYPE_IPV4_TCP 0x00000001 +#define IXGBE_RXDADV_RSSTYPE_IPV4 0x00000002 +#define IXGBE_RXDADV_RSSTYPE_IPV6_TCP 0x00000003 +#define IXGBE_RXDADV_RSSTYPE_IPV6_EX 0x00000004 +#define IXGBE_RXDADV_RSSTYPE_IPV6 0x00000005 +#define IXGBE_RXDADV_RSSTYPE_IPV6_TCP_EX 0x00000006 +#define IXGBE_RXDADV_RSSTYPE_IPV4_UDP 0x00000007 +#define IXGBE_RXDADV_RSSTYPE_IPV6_UDP 0x00000008 +#define IXGBE_RXDADV_RSSTYPE_IPV6_UDP_EX 0x00000009 /* RSS Packet Types as indicated in the receive descriptor. */ -#define IXGBE_RXDADV_PKTTYPE_NONE 0x00000000 -#define IXGBE_RXDADV_PKTTYPE_IPV4 0x00000010 /* IPv4 hdr present */ -#define IXGBE_RXDADV_PKTTYPE_IPV4_EX 0x00000020 /* IPv4 hdr + extensions */ -#define IXGBE_RXDADV_PKTTYPE_IPV6 0x00000040 /* IPv6 hdr present */ -#define IXGBE_RXDADV_PKTTYPE_IPV6_EX 0x00000080 /* IPv6 hdr + extensions */ -#define IXGBE_RXDADV_PKTTYPE_TCP 0x00000100 /* TCP hdr present */ -#define IXGBE_RXDADV_PKTTYPE_UDP 0x00000200 /* UDP hdr present */ -#define IXGBE_RXDADV_PKTTYPE_SCTP 0x00000400 /* SCTP hdr present */ -#define IXGBE_RXDADV_PKTTYPE_NFS 0x00000800 /* NFS hdr present */ -#define IXGBE_RXDADV_PKTTYPE_IPSEC_ESP 0x00001000 /* IPSec ESP */ -#define IXGBE_RXDADV_PKTTYPE_IPSEC_AH 0x00002000 /* IPSec AH */ -#define IXGBE_RXDADV_PKTTYPE_LINKSEC 0x00004000 /* LinkSec Encap */ -#define IXGBE_RXDADV_PKTTYPE_ETQF 0x00008000 /* PKTTYPE is ETQF index */ -#define IXGBE_RXDADV_PKTTYPE_ETQF_MASK 0x00000070 /* ETQF has 8 indices */ -#define IXGBE_RXDADV_PKTTYPE_ETQF_SHIFT 4 /* Right-shift 4 bits */ +#define IXGBE_RXDADV_PKTTYPE_NONE 0x00000000 +#define IXGBE_RXDADV_PKTTYPE_IPV4 0x00000010 /* IPv4 hdr present */ +#define IXGBE_RXDADV_PKTTYPE_IPV4_EX 0x00000020 /* IPv4 hdr + extensions */ +#define IXGBE_RXDADV_PKTTYPE_IPV6 0x00000040 /* IPv6 hdr present */ +#define IXGBE_RXDADV_PKTTYPE_IPV6_EX 0x00000080 /* IPv6 hdr + extensions */ +#define IXGBE_RXDADV_PKTTYPE_TCP 0x00000100 /* TCP hdr present */ +#define IXGBE_RXDADV_PKTTYPE_UDP 0x00000200 /* UDP hdr present */ +#define IXGBE_RXDADV_PKTTYPE_SCTP 0x00000400 /* SCTP hdr present */ +#define IXGBE_RXDADV_PKTTYPE_NFS 0x00000800 /* NFS hdr present */ +#define IXGBE_RXDADV_PKTTYPE_IPSEC_ESP 0x00001000 /* IPSec ESP */ +#define IXGBE_RXDADV_PKTTYPE_IPSEC_AH 0x00002000 /* IPSec AH */ +#define IXGBE_RXDADV_PKTTYPE_LINKSEC 0x00004000 /* LinkSec Encap */ +#define IXGBE_RXDADV_PKTTYPE_ETQF 0x00008000 /* PKTTYPE is ETQF index */ +#define IXGBE_RXDADV_PKTTYPE_ETQF_MASK 0x00000070 /* ETQF has 8 indices */ +#define IXGBE_RXDADV_PKTTYPE_ETQF_SHIFT 4 /* Right-shift 4 bits */ /* Security Processing bit Indication */ -#define IXGBE_RXDADV_LNKSEC_STATUS_SECP 0x00020000 -#define IXGBE_RXDADV_LNKSEC_ERROR_NO_SA_MATCH 0x08000000 -#define IXGBE_RXDADV_LNKSEC_ERROR_REPLAY_ERROR 0x10000000 -#define IXGBE_RXDADV_LNKSEC_ERROR_BIT_MASK 0x18000000 -#define IXGBE_RXDADV_LNKSEC_ERROR_BAD_SIG 0x18000000 +#define IXGBE_RXDADV_LNKSEC_STATUS_SECP 0x00020000 +#define IXGBE_RXDADV_LNKSEC_ERROR_NO_SA_MATCH 0x08000000 +#define IXGBE_RXDADV_LNKSEC_ERROR_REPLAY_ERROR 0x10000000 +#define IXGBE_RXDADV_LNKSEC_ERROR_BIT_MASK 0x18000000 +#define IXGBE_RXDADV_LNKSEC_ERROR_BAD_SIG 0x18000000 /* Masks to determine if packets should be dropped due to frame errors */ -#define IXGBE_RXD_ERR_FRAME_ERR_MASK ( \ - IXGBE_RXD_ERR_CE | IXGBE_RXD_ERR_LE | \ - IXGBE_RXD_ERR_PE | IXGBE_RXD_ERR_OSE | IXGBE_RXD_ERR_USE) - -#define IXGBE_RXDADV_ERR_FRAME_ERR_MASK ( \ - IXGBE_RXDADV_ERR_CE | IXGBE_RXDADV_ERR_LE | \ - IXGBE_RXDADV_ERR_PE | IXGBE_RXDADV_ERR_OSE | IXGBE_RXDADV_ERR_USE) +#define IXGBE_RXD_ERR_FRAME_ERR_MASK ( \ + IXGBE_RXD_ERR_CE | \ + IXGBE_RXD_ERR_LE | \ + IXGBE_RXD_ERR_PE | \ + IXGBE_RXD_ERR_OSE | \ + IXGBE_RXD_ERR_USE) + +#define IXGBE_RXDADV_ERR_FRAME_ERR_MASK ( \ + IXGBE_RXDADV_ERR_CE | \ + IXGBE_RXDADV_ERR_LE | \ + IXGBE_RXDADV_ERR_PE | \ + IXGBE_RXDADV_ERR_OSE | \ + IXGBE_RXDADV_ERR_USE) /* Multicast bit mask */ -#define IXGBE_MCSTCTRL_MFE 0x4 +#define IXGBE_MCSTCTRL_MFE 0x4 /* Number of Transmit and Receive Descriptors must be a multiple of 8 */ -#define IXGBE_REQ_TX_DESCRIPTOR_MULTIPLE 8 -#define IXGBE_REQ_RX_DESCRIPTOR_MULTIPLE 8 -#define IXGBE_REQ_TX_BUFFER_GRANULARITY 1024 +#define IXGBE_REQ_TX_DESCRIPTOR_MULTIPLE 8 +#define IXGBE_REQ_RX_DESCRIPTOR_MULTIPLE 8 +#define IXGBE_REQ_TX_BUFFER_GRANULARITY 1024 /* Vlan-specific macros */ -#define IXGBE_RX_DESC_SPECIAL_VLAN_MASK 0x0FFF /* VLAN ID in lower 12 bits */ -#define IXGBE_RX_DESC_SPECIAL_PRI_MASK 0xE000 /* Priority in upper 3 bits */ -#define IXGBE_RX_DESC_SPECIAL_PRI_SHIFT 0x000D /* Priority in upper 3 of 16 */ -#define IXGBE_TX_DESC_SPECIAL_PRI_SHIFT IXGBE_RX_DESC_SPECIAL_PRI_SHIFT +#define IXGBE_RX_DESC_SPECIAL_VLAN_MASK 0x0FFF /* VLAN ID in lower 12 bits */ +#define IXGBE_RX_DESC_SPECIAL_PRI_MASK 0xE000 /* Priority in upper 3 bits */ +#define IXGBE_RX_DESC_SPECIAL_PRI_SHIFT 0x000D /* Priority in upper 3 of 16 */ +#define IXGBE_TX_DESC_SPECIAL_PRI_SHIFT IXGBE_RX_DESC_SPECIAL_PRI_SHIFT /* SR-IOV specific macros */ -#define IXGBE_MBVFICR_INDEX(vf_number) (vf_number >> 4) -#define IXGBE_MBVFICR(_i) (0x00710 + (_i * 4)) -#define IXGBE_VFLRE(_i) (((_i & 1) ? 0x001C0 : 0x00600)) -#define IXGBE_VFLREC(_i) (0x00700 + (_i * 4)) -/* Translated register #defines */ -#define IXGBE_PVFCTRL(P) (0x00300 + (4 * P)) -#define IXGBE_PVFSTATUS(P) (0x00008 + (0 * P)) -#define IXGBE_PVFLINKS(P) (0x042A4 + (0 * P)) -#define IXGBE_PVFRTIMER(P) (0x00048 + (0 * P)) -#define IXGBE_PVFMAILBOX(P) (0x04C00 + (4 * P)) -#define IXGBE_PVFRXMEMWRAP(P) (0x03190 + (0 * P)) -#define IXGBE_PVTEICR(P) (0x00B00 + (4 * P)) -#define IXGBE_PVTEICS(P) (0x00C00 + (4 * P)) -#define IXGBE_PVTEIMS(P) (0x00D00 + (4 * P)) -#define IXGBE_PVTEIMC(P) (0x00E00 + (4 * P)) -#define IXGBE_PVTEIAC(P) (0x00F00 + (4 * P)) -#define IXGBE_PVTEIAM(P) (0x04D00 + (4 * P)) -#define IXGBE_PVTEITR(P) (((P) < 24) ? (0x00820 + ((P) * 4)) : \ - (0x012300 + (((P) - 24) * 4))) -#define IXGBE_PVTIVAR(P) (0x12500 + (4 * P)) -#define IXGBE_PVTIVAR_MISC(P) (0x04E00 + (4 * P)) -#define IXGBE_PVTRSCINT(P) (0x12000 + (4 * P)) -#define IXGBE_VFPBACL(P) (0x110C8 + (4 * P)) -#define IXGBE_PVFRDBAL(P) ((P < 64) ? (0x01000 + (0x40 * P)) \ - : (0x0D000 + (0x40 * (P - 64)))) -#define IXGBE_PVFRDBAH(P) ((P < 64) ? (0x01004 + (0x40 * P)) \ - : (0x0D004 + (0x40 * (P - 64)))) -#define IXGBE_PVFRDLEN(P) ((P < 64) ? (0x01008 + (0x40 * P)) \ - : (0x0D008 + (0x40 * (P - 64)))) -#define IXGBE_PVFRDH(P) ((P < 64) ? (0x01010 + (0x40 * P)) \ - : (0x0D010 + (0x40 * (P - 64)))) -#define IXGBE_PVFRDT(P) ((P < 64) ? (0x01018 + (0x40 * P)) \ - : (0x0D018 + (0x40 * (P - 64)))) -#define IXGBE_PVFRXDCTL(P) ((P < 64) ? (0x01028 + (0x40 * P)) \ - : (0x0D028 + (0x40 * (P - 64)))) -#define IXGBE_PVFSRRCTL(P) ((P < 64) ? (0x01014 + (0x40 * P)) \ - : (0x0D014 + (0x40 * (P - 64)))) -#define IXGBE_PVFPSRTYPE(P) (0x0EA00 + (4 * P)) -#define IXGBE_PVFTDBAL(P) (0x06000 + (0x40 * P)) -#define IXGBE_PVFTDBAH(P) (0x06004 + (0x40 * P)) -#define IXGBE_PVFTTDLEN(P) (0x06008 + (0x40 * P)) -#define IXGBE_PVFTDH(P) (0x06010 + (0x40 * P)) -#define IXGBE_PVFTDT(P) (0x06018 + (0x40 * P)) -#define IXGBE_PVFTXDCTL(P) (0x06028 + (0x40 * P)) -#define IXGBE_PVFTDWBAL(P) (0x06038 + (0x40 * P)) -#define IXGBE_PVFTDWBAH(P) (0x0603C + (0x40 * P)) -#define IXGBE_PVFDCA_RXCTRL(P) ((P < 64) ? (0x0100C + (0x40 * P)) \ - : (0x0D00C + (0x40 * (P - 64)))) -#define IXGBE_PVFDCA_TXCTRL(P) (0x0600C + (0x40 * P)) -#define IXGBE_PVFGPRC(x) (0x0101C + (0x40 * x)) -#define IXGBE_PVFGPTC(x) (0x08300 + (0x04 * x)) -#define IXGBE_PVFGORC_LSB(x) (0x01020 + (0x40 * x)) -#define IXGBE_PVFGORC_MSB(x) (0x0D020 + (0x40 * x)) -#define IXGBE_PVFGOTC_LSB(x) (0x08400 + (0x08 * x)) -#define IXGBE_PVFGOTC_MSB(x) (0x08404 + (0x08 * x)) -#define IXGBE_PVFMPRC(x) (0x0D01C + (0x40 * x)) - -#ifndef __le16 -/* Little Endian defines */ -#define __le16 u16 +#define IXGBE_MBVFICR_INDEX(vf_number) (vf_number >> 4) +#define IXGBE_MBVFICR(_i) (0x00710 + (_i * 4)) +#define IXGBE_VFLRE(_i) (((_i & 1) ? 0x001C0 : 0x00600)) +#define IXGBE_VFLREC(_i) (0x00700 + (_i * 4)) -#define __le32 u32 -#define __le64 u64 +/* Little Endian defines */ +#ifndef __le16 +#define __le16 u16 +#endif +#ifndef __le32 +#define __le32 u32 #endif +#ifndef __le64 +#define __le64 u64 -#ifndef __be16 -/* Big Endian defines */ -#define __be16 u16 -#define __be32 u32 -#define __be64 u64 #endif +#ifndef __be16 +/* Big Endian defines */ +#define __be16 u16 +#define __be32 u32 +#define __be64 u64 +#endif enum ixgbe_fdir_pballoc_type { IXGBE_FDIR_PBALLOC_64K = 0, IXGBE_FDIR_PBALLOC_128K, IXGBE_FDIR_PBALLOC_256K, }; -#define IXGBE_FDIR_PBALLOC_SIZE_SHIFT 16 +#define IXGBE_FDIR_PBALLOC_SIZE_SHIFT 16 /* Flow Director register values */ -#define IXGBE_FDIRCTRL_PBALLOC_64K 0x00000001 -#define IXGBE_FDIRCTRL_PBALLOC_128K 0x00000002 -#define IXGBE_FDIRCTRL_PBALLOC_256K 0x00000003 -#define IXGBE_FDIRCTRL_INIT_DONE 0x00000008 -#define IXGBE_FDIRCTRL_PERFECT_MATCH 0x00000010 -#define IXGBE_FDIRCTRL_REPORT_STATUS 0x00000020 -#define IXGBE_FDIRCTRL_REPORT_STATUS_ALWAYS 0x00000080 -#define IXGBE_FDIRCTRL_DROP_Q_SHIFT 8 -#define IXGBE_FDIRCTRL_FLEX_SHIFT 16 -#define IXGBE_FDIRCTRL_SEARCHLIM 0x00800000 -#define IXGBE_FDIRCTRL_MAX_LENGTH_SHIFT 24 -#define IXGBE_FDIRCTRL_FULL_THRESH_MASK 0xF0000000 -#define IXGBE_FDIRCTRL_FULL_THRESH_SHIFT 28 - -#define IXGBE_FDIRTCPM_DPORTM_SHIFT 16 -#define IXGBE_FDIRUDPM_DPORTM_SHIFT 16 -#define IXGBE_FDIRIP6M_DIPM_SHIFT 16 -#define IXGBE_FDIRM_VLANID 0x00000001 -#define IXGBE_FDIRM_VLANP 0x00000002 -#define IXGBE_FDIRM_POOL 0x00000004 -#define IXGBE_FDIRM_L4P 0x00000008 -#define IXGBE_FDIRM_FLEX 0x00000010 -#define IXGBE_FDIRM_DIPv6 0x00000020 - -#define IXGBE_FDIRFREE_FREE_MASK 0xFFFF -#define IXGBE_FDIRFREE_FREE_SHIFT 0 -#define IXGBE_FDIRFREE_COLL_MASK 0x7FFF0000 -#define IXGBE_FDIRFREE_COLL_SHIFT 16 -#define IXGBE_FDIRLEN_MAXLEN_MASK 0x3F -#define IXGBE_FDIRLEN_MAXLEN_SHIFT 0 -#define IXGBE_FDIRLEN_MAXHASH_MASK 0x7FFF0000 -#define IXGBE_FDIRLEN_MAXHASH_SHIFT 16 -#define IXGBE_FDIRUSTAT_ADD_MASK 0xFFFF -#define IXGBE_FDIRUSTAT_ADD_SHIFT 0 -#define IXGBE_FDIRUSTAT_REMOVE_MASK 0xFFFF0000 -#define IXGBE_FDIRUSTAT_REMOVE_SHIFT 16 -#define IXGBE_FDIRFSTAT_FADD_MASK 0x00FF -#define IXGBE_FDIRFSTAT_FADD_SHIFT 0 -#define IXGBE_FDIRFSTAT_FREMOVE_MASK 0xFF00 -#define IXGBE_FDIRFSTAT_FREMOVE_SHIFT 8 -#define IXGBE_FDIRPORT_DESTINATION_SHIFT 16 -#define IXGBE_FDIRVLAN_FLEX_SHIFT 16 -#define IXGBE_FDIRHASH_BUCKET_VALID_SHIFT 15 -#define IXGBE_FDIRHASH_SIG_SW_INDEX_SHIFT 16 - -#define IXGBE_FDIRCMD_CMD_MASK 0x00000003 -#define IXGBE_FDIRCMD_CMD_ADD_FLOW 0x00000001 -#define IXGBE_FDIRCMD_CMD_REMOVE_FLOW 0x00000002 -#define IXGBE_FDIRCMD_CMD_QUERY_REM_FILT 0x00000003 -#define IXGBE_FDIRCMD_CMD_QUERY_REM_HASH 0x00000007 -#define IXGBE_FDIRCMD_FILTER_UPDATE 0x00000008 -#define IXGBE_FDIRCMD_IPv6DMATCH 0x00000010 -#define IXGBE_FDIRCMD_L4TYPE_UDP 0x00000020 -#define IXGBE_FDIRCMD_L4TYPE_TCP 0x00000040 -#define IXGBE_FDIRCMD_L4TYPE_SCTP 0x00000060 -#define IXGBE_FDIRCMD_IPV6 0x00000080 -#define IXGBE_FDIRCMD_CLEARHT 0x00000100 -#define IXGBE_FDIRCMD_DROP 0x00000200 -#define IXGBE_FDIRCMD_INT 0x00000400 -#define IXGBE_FDIRCMD_LAST 0x00000800 -#define IXGBE_FDIRCMD_COLLISION 0x00001000 -#define IXGBE_FDIRCMD_QUEUE_EN 0x00008000 -#define IXGBE_FDIRCMD_RX_QUEUE_SHIFT 16 -#define IXGBE_FDIRCMD_VT_POOL_SHIFT 24 -#define IXGBE_FDIR_INIT_DONE_POLL 10 -#define IXGBE_FDIRCMD_CMD_POLL 10 +#define IXGBE_FDIRCTRL_PBALLOC_64K 0x00000001 +#define IXGBE_FDIRCTRL_PBALLOC_128K 0x00000002 +#define IXGBE_FDIRCTRL_PBALLOC_256K 0x00000003 +#define IXGBE_FDIRCTRL_INIT_DONE 0x00000008 +#define IXGBE_FDIRCTRL_PERFECT_MATCH 0x00000010 +#define IXGBE_FDIRCTRL_REPORT_STATUS 0x00000020 +#define IXGBE_FDIRCTRL_REPORT_STATUS_ALWAYS 0x00000080 +#define IXGBE_FDIRCTRL_DROP_Q_SHIFT 8 +#define IXGBE_FDIRCTRL_FLEX_SHIFT 16 +#define IXGBE_FDIRCTRL_SEARCHLIM 0x00800000 +#define IXGBE_FDIRCTRL_MAX_LENGTH_SHIFT 24 +#define IXGBE_FDIRCTRL_FULL_THRESH_MASK 0xF0000000 +#define IXGBE_FDIRCTRL_FULL_THRESH_SHIFT 28 + +#define IXGBE_FDIRTCPM_DPORTM_SHIFT 16 +#define IXGBE_FDIRUDPM_DPORTM_SHIFT 16 +#define IXGBE_FDIRIP6M_DIPM_SHIFT 16 +#define IXGBE_FDIRM_VLANID 0x00000001 +#define IXGBE_FDIRM_VLANP 0x00000002 +#define IXGBE_FDIRM_POOL 0x00000004 +#define IXGBE_FDIRM_L4P 0x00000008 +#define IXGBE_FDIRM_FLEX 0x00000010 +#define IXGBE_FDIRM_DIPv6 0x00000020 + +#define IXGBE_FDIRFREE_FREE_MASK 0xFFFF +#define IXGBE_FDIRFREE_FREE_SHIFT 0 +#define IXGBE_FDIRFREE_COLL_MASK 0x7FFF0000 +#define IXGBE_FDIRFREE_COLL_SHIFT 16 +#define IXGBE_FDIRLEN_MAXLEN_MASK 0x3F +#define IXGBE_FDIRLEN_MAXLEN_SHIFT 0 +#define IXGBE_FDIRLEN_MAXHASH_MASK 0x7FFF0000 +#define IXGBE_FDIRLEN_MAXHASH_SHIFT 16 +#define IXGBE_FDIRUSTAT_ADD_MASK 0xFFFF +#define IXGBE_FDIRUSTAT_ADD_SHIFT 0 +#define IXGBE_FDIRUSTAT_REMOVE_MASK 0xFFFF0000 +#define IXGBE_FDIRUSTAT_REMOVE_SHIFT 16 +#define IXGBE_FDIRFSTAT_FADD_MASK 0x00FF +#define IXGBE_FDIRFSTAT_FADD_SHIFT 0 +#define IXGBE_FDIRFSTAT_FREMOVE_MASK 0xFF00 +#define IXGBE_FDIRFSTAT_FREMOVE_SHIFT 8 +#define IXGBE_FDIRPORT_DESTINATION_SHIFT 16 +#define IXGBE_FDIRVLAN_FLEX_SHIFT 16 +#define IXGBE_FDIRHASH_BUCKET_VALID_SHIFT 15 +#define IXGBE_FDIRHASH_SIG_SW_INDEX_SHIFT 16 + +#define IXGBE_FDIRCMD_CMD_MASK 0x00000003 +#define IXGBE_FDIRCMD_CMD_ADD_FLOW 0x00000001 +#define IXGBE_FDIRCMD_CMD_REMOVE_FLOW 0x00000002 +#define IXGBE_FDIRCMD_CMD_QUERY_REM_FILT 0x00000003 +#define IXGBE_FDIRCMD_CMD_QUERY_REM_HASH 0x00000007 +#define IXGBE_FDIRCMD_FILTER_UPDATE 0x00000008 +#define IXGBE_FDIRCMD_IPv6DMATCH 0x00000010 +#define IXGBE_FDIRCMD_L4TYPE_UDP 0x00000020 +#define IXGBE_FDIRCMD_L4TYPE_TCP 0x00000040 +#define IXGBE_FDIRCMD_L4TYPE_SCTP 0x00000060 +#define IXGBE_FDIRCMD_IPV6 0x00000080 +#define IXGBE_FDIRCMD_CLEARHT 0x00000100 +#define IXGBE_FDIRCMD_DROP 0x00000200 +#define IXGBE_FDIRCMD_INT 0x00000400 +#define IXGBE_FDIRCMD_LAST 0x00000800 +#define IXGBE_FDIRCMD_COLLISION 0x00001000 +#define IXGBE_FDIRCMD_QUEUE_EN 0x00008000 +#define IXGBE_FDIRCMD_FLOW_TYPE_SHIFT 5 +#define IXGBE_FDIRCMD_RX_QUEUE_SHIFT 16 +#define IXGBE_FDIRCMD_VT_POOL_SHIFT 24 +#define IXGBE_FDIR_INIT_DONE_POLL 10 +#define IXGBE_FDIRCMD_CMD_POLL 10 /* Transmit Descriptor - Legacy */ struct ixgbe_legacy_tx_desc { - u64 buffer_addr; /* Address of the descriptor's data buffer */ + u64 buffer_addr; /* Address of the descriptor's data buffer */ union { __le32 data; struct { - __le16 length; /* Data buffer length */ - u8 cso; /* Checksum offset */ - u8 cmd; /* Descriptor control */ + __le16 length; /* Data buffer length */ + u8 cso; /* Checksum offset */ + u8 cmd; /* Descriptor control */ } flags; } lower; union { __le32 data; struct { - u8 status; /* Descriptor status */ - u8 css; /* Checksum start */ + u8 status; /* Descriptor status */ + u8 css; /* Checksum start */ __le16 vlan; } fields; } upper; @@ -2142,12 +2129,12 @@ struct ixgbe_legacy_tx_desc { /* Transmit Descriptor - Advanced */ union ixgbe_adv_tx_desc { struct { - __le64 buffer_addr; /* Address of descriptor's data buf */ + __le64 buffer_addr; /* Address of descriptor's data buf */ __le32 cmd_type_len; __le32 olinfo_status; } read; struct { - __le64 rsvd; /* Reserved */ + __le64 rsvd; /* Reserved */ __le32 nxtseq_seed; __le32 status; } wb; @@ -2155,11 +2142,11 @@ union ixgbe_adv_tx_desc { /* Receive Descriptor - Legacy */ struct ixgbe_legacy_rx_desc { - __le64 buffer_addr; /* Address of the descriptor's data buffer */ - __le16 length; /* Length of data DMAed into data buffer */ - __le16 csum; /* Packet checksum */ - u8 status; /* Descriptor status */ - u8 errors; /* Descriptor Errors */ + __le64 buffer_addr; /* Address of the descriptor's data buffer */ + __le16 length; /* Length of data DMAed into data buffer */ + __le16 csum; /* Packet checksum */ + u8 status; /* Descriptor status */ + u8 errors; /* Descriptor Errors */ __le16 vlan; }; @@ -2174,10 +2161,8 @@ union ixgbe_adv_rx_desc { union { __le32 data; struct { - /* RSS type, Packet type */ - __le16 pkt_info; - /* Split Header, header len */ - __le16 hdr_info; + __le16 pkt_info; /* RSS, Pkt type */ + __le16 hdr_info; /* Splithdr, hdrlen */ } hs_rss; } lo_dword; union { @@ -2205,139 +2190,177 @@ struct ixgbe_adv_tx_context_desc { }; /* Adv Transmit Descriptor Config Masks */ -#define IXGBE_ADVTXD_DTALEN_MASK 0x0000FFFF /* Data buffer length(bytes) */ -#define IXGBE_ADVTXD_MAC_LINKSEC 0x00040000 /* Insert LinkSec */ -#define IXGBE_ADVTXD_IPSEC_SA_INDEX_MASK 0x000003FF /* IPSec SA index */ -#define IXGBE_ADVTXD_IPSEC_ESP_LEN_MASK 0x000001FF /* IPSec ESP length */ -#define IXGBE_ADVTXD_DTYP_MASK 0x00F00000 /* DTYP mask */ -#define IXGBE_ADVTXD_DTYP_CTXT 0x00200000 /* Advanced Context Desc */ -#define IXGBE_ADVTXD_DTYP_DATA 0x00300000 /* Advanced Data Descriptor */ -#define IXGBE_ADVTXD_DCMD_EOP IXGBE_TXD_CMD_EOP /* End of Packet */ -#define IXGBE_ADVTXD_DCMD_IFCS IXGBE_TXD_CMD_IFCS /* Insert FCS */ -#define IXGBE_ADVTXD_DCMD_RS IXGBE_TXD_CMD_RS /* Report Status */ -#define IXGBE_ADVTXD_DCMD_DDTYP_ISCSI 0x10000000 /* DDP hdr type or iSCSI */ -#define IXGBE_ADVTXD_DCMD_DEXT IXGBE_TXD_CMD_DEXT /* Desc ext (1=Adv) */ -#define IXGBE_ADVTXD_DCMD_VLE IXGBE_TXD_CMD_VLE /* VLAN pkt enable */ -#define IXGBE_ADVTXD_DCMD_TSE 0x80000000 /* TCP Seg enable */ -#define IXGBE_ADVTXD_STAT_DD IXGBE_TXD_STAT_DD /* Descriptor Done */ -#define IXGBE_ADVTXD_STAT_SN_CRC 0x00000002 /* NXTSEQ/SEED present in WB */ -#define IXGBE_ADVTXD_STAT_RSV 0x0000000C /* STA Reserved */ -#define IXGBE_ADVTXD_IDX_SHIFT 4 /* Adv desc Index shift */ -#define IXGBE_ADVTXD_CC 0x00000080 /* Check Context */ -#define IXGBE_ADVTXD_POPTS_SHIFT 8 /* Adv desc POPTS shift */ -#define IXGBE_ADVTXD_POPTS_IXSM (IXGBE_TXD_POPTS_IXSM << \ - IXGBE_ADVTXD_POPTS_SHIFT) -#define IXGBE_ADVTXD_POPTS_TXSM (IXGBE_TXD_POPTS_TXSM << \ - IXGBE_ADVTXD_POPTS_SHIFT) -#define IXGBE_ADVTXD_POPTS_ISCO_1ST 0x00000000 /* 1st TSO of iSCSI PDU */ -#define IXGBE_ADVTXD_POPTS_ISCO_MDL 0x00000800 /* Middle TSO of iSCSI PDU */ -#define IXGBE_ADVTXD_POPTS_ISCO_LAST 0x00001000 /* Last TSO of iSCSI PDU */ -#define IXGBE_ADVTXD_POPTS_ISCO_FULL 0x00001800 - /* 1st&Last TSO-full iSCSI PDU */ -#define IXGBE_ADVTXD_POPTS_RSV 0x00002000 /* POPTS Reserved */ -#define IXGBE_ADVTXD_PAYLEN_SHIFT 14 /* Adv desc PAYLEN shift */ -#define IXGBE_ADVTXD_MACLEN_SHIFT 9 /* Adv ctxt desc mac len shift */ -#define IXGBE_ADVTXD_VLAN_SHIFT 16 /* Adv ctxt vlan tag shift */ -#define IXGBE_ADVTXD_TUCMD_IPV4 0x00000400 /* IP Packet Type: 1=IPv4 */ -#define IXGBE_ADVTXD_TUCMD_IPV6 0x00000000 /* IP Packet Type: 0=IPv6 */ -#define IXGBE_ADVTXD_TUCMD_L4T_UDP 0x00000000 /* L4 Packet TYPE of UDP */ -#define IXGBE_ADVTXD_TUCMD_L4T_TCP 0x00000800 /* L4 Packet TYPE of TCP */ -#define IXGBE_ADVTXD_TUCMD_L4T_SCTP 0x00001000 /* L4 Packet TYPE of SCTP */ -#define IXGBE_ADVTXD_TUCMD_MKRREQ 0x00002000 /* Req requires Markers and CRC */ -#define IXGBE_ADVTXD_POPTS_IPSEC 0x00000400 /* IPSec offload request */ -#define IXGBE_ADVTXD_TUCMD_IPSEC_TYPE_ESP 0x00002000 /* IPSec Type ESP */ -#define IXGBE_ADVTXD_TUCMD_IPSEC_ENCRYPT_EN 0x00004000 /* ESP Encrypt Enable */ -#define IXGBE_ADVTXT_TUCMD_FCOE 0x00008000 /* FCoE Frame Type */ -#define IXGBE_ADVTXD_FCOEF_EOF_MASK (0x3 << 10) /* FC EOF index */ -#define IXGBE_ADVTXD_FCOEF_SOF ((1 << 2) << 10) /* FC SOF index */ -#define IXGBE_ADVTXD_FCOEF_PARINC ((1 << 3) << 10) /* Rel_Off in F_CTL */ -#define IXGBE_ADVTXD_FCOEF_ORIE ((1 << 4) << 10) /* Orientation: End */ -#define IXGBE_ADVTXD_FCOEF_ORIS ((1 << 5) << 10) /* Orientation: Start */ -#define IXGBE_ADVTXD_FCOEF_EOF_N (0x0 << 10) /* 00: EOFn */ -#define IXGBE_ADVTXD_FCOEF_EOF_T (0x1 << 10) /* 01: EOFt */ -#define IXGBE_ADVTXD_FCOEF_EOF_NI (0x2 << 10) /* 10: EOFni */ -#define IXGBE_ADVTXD_FCOEF_EOF_A (0x3 << 10) /* 11: EOFa */ -#define IXGBE_ADVTXD_L4LEN_SHIFT 8 /* Adv ctxt L4LEN shift */ -#define IXGBE_ADVTXD_MSS_SHIFT 16 /* Adv ctxt MSS shift */ +#define IXGBE_ADVTXD_DTALEN_MASK 0x0000FFFF /* Data buf length(bytes) */ +#define IXGBE_ADVTXD_MAC_LINKSEC 0x00040000 /* Insert LinkSec */ +#define IXGBE_ADVTXD_IPSEC_SA_INDEX_MASK 0x000003FF /* IPSec SA index */ +#define IXGBE_ADVTXD_IPSEC_ESP_LEN_MASK 0x000001FF /* IPSec ESP length */ +#define IXGBE_ADVTXD_DTYP_MASK 0x00F00000 /* DTYP mask */ +#define IXGBE_ADVTXD_DTYP_CTXT 0x00200000 /* Advanced Context Desc */ +#define IXGBE_ADVTXD_DTYP_DATA 0x00300000 /* Advanced Data Descriptor */ +#define IXGBE_ADVTXD_DCMD_EOP IXGBE_TXD_CMD_EOP /* End of Packet */ +#define IXGBE_ADVTXD_DCMD_IFCS IXGBE_TXD_CMD_IFCS /* Insert FCS */ +#define IXGBE_ADVTXD_DCMD_RS IXGBE_TXD_CMD_RS /* Report Status */ +#define IXGBE_ADVTXD_DCMD_DDTYP_ISCSI 0x10000000 /* DDP hdr type or iSCSI */ +#define IXGBE_ADVTXD_DCMD_DEXT IXGBE_TXD_CMD_DEXT /* Desc ext (1=Adv) */ +#define IXGBE_ADVTXD_DCMD_VLE IXGBE_TXD_CMD_VLE /* VLAN pkt enable */ +#define IXGBE_ADVTXD_DCMD_TSE 0x80000000 /* TCP Seg enable */ +#define IXGBE_ADVTXD_STAT_DD IXGBE_TXD_STAT_DD /* Descriptor Done */ +#define IXGBE_ADVTXD_STAT_SN_CRC 0x00000002 /* NXTSEQ/SEED pres in WB */ +#define IXGBE_ADVTXD_STAT_RSV 0x0000000C /* STA Reserved */ +#define IXGBE_ADVTXD_IDX_SHIFT 4 /* Adv desc Index shift */ +#define IXGBE_ADVTXD_CC 0x00000080 /* Check Context */ +#define IXGBE_ADVTXD_POPTS_SHIFT 8 /* Adv desc POPTS shift */ +#define IXGBE_ADVTXD_POPTS_IXSM (IXGBE_TXD_POPTS_IXSM << \ + IXGBE_ADVTXD_POPTS_SHIFT) +#define IXGBE_ADVTXD_POPTS_TXSM (IXGBE_TXD_POPTS_TXSM << \ + IXGBE_ADVTXD_POPTS_SHIFT) +#define IXGBE_ADVTXD_POPTS_ISCO_1ST 0x00000000 /* 1st TSO of iSCSI PDU */ +#define IXGBE_ADVTXD_POPTS_ISCO_MDL 0x00000800 /* Middle TSO of iSCSI PDU */ +#define IXGBE_ADVTXD_POPTS_ISCO_LAST 0x00001000 /* Last TSO of iSCSI PDU */ +#define IXGBE_ADVTXD_POPTS_ISCO_FULL 0x00001800 /* 1st&Last TSO-full iSCSI PDU */ +#define IXGBE_ADVTXD_POPTS_RSV 0x00002000 /* POPTS Reserved */ +#define IXGBE_ADVTXD_PAYLEN_SHIFT 14 /* Adv desc PAYLEN shift */ +#define IXGBE_ADVTXD_MACLEN_SHIFT 9 /* Adv ctxt desc mac len shift */ +#define IXGBE_ADVTXD_VLAN_SHIFT 16 /* Adv ctxt vlan tag shift */ +#define IXGBE_ADVTXD_TUCMD_IPV4 0x00000400 /* IP Packet Type: 1=IPv4 */ +#define IXGBE_ADVTXD_TUCMD_IPV6 0x00000000 /* IP Packet Type: 0=IPv6 */ +#define IXGBE_ADVTXD_TUCMD_L4T_UDP 0x00000000 /* L4 Packet TYPE of UDP */ +#define IXGBE_ADVTXD_TUCMD_L4T_TCP 0x00000800 /* L4 Packet TYPE of TCP */ +#define IXGBE_ADVTXD_TUCMD_L4T_SCTP 0x00001000 /* L4 Packet TYPE of SCTP */ +#define IXGBE_ADVTXD_TUCMD_MKRREQ 0x00002000 /*Req requires Markers and CRC*/ +#define IXGBE_ADVTXD_POPTS_IPSEC 0x00000400 /* IPSec offload request */ +#define IXGBE_ADVTXD_TUCMD_IPSEC_TYPE_ESP 0x00002000 /* IPSec Type ESP */ +#define IXGBE_ADVTXD_TUCMD_IPSEC_ENCRYPT_EN 0x00004000/* ESP Encrypt Enable */ +#define IXGBE_ADVTXT_TUCMD_FCOE 0x00008000 /* FCoE Frame Type */ +#define IXGBE_ADVTXD_FCOEF_EOF_MASK (0x3 << 10) /* FC EOF index */ +#define IXGBE_ADVTXD_FCOEF_SOF ((1 << 2) << 10) /* FC SOF index */ +#define IXGBE_ADVTXD_FCOEF_PARINC ((1 << 3) << 10) /* Rel_Off in F_CTL */ +#define IXGBE_ADVTXD_FCOEF_ORIE ((1 << 4) << 10) /* Orientation: End */ +#define IXGBE_ADVTXD_FCOEF_ORIS ((1 << 5) << 10) /* Orientation: Start */ +#define IXGBE_ADVTXD_FCOEF_EOF_N (0x0 << 10) /* 00: EOFn */ +#define IXGBE_ADVTXD_FCOEF_EOF_T (0x1 << 10) /* 01: EOFt */ +#define IXGBE_ADVTXD_FCOEF_EOF_NI (0x2 << 10) /* 10: EOFni */ +#define IXGBE_ADVTXD_FCOEF_EOF_A (0x3 << 10) /* 11: EOFa */ +#define IXGBE_ADVTXD_L4LEN_SHIFT 8 /* Adv ctxt L4LEN shift */ +#define IXGBE_ADVTXD_MSS_SHIFT 16 /* Adv ctxt MSS shift */ /* Autonegotiation advertised speeds */ typedef u32 ixgbe_autoneg_advertised; /* Link speed */ typedef u32 ixgbe_link_speed; -#define IXGBE_LINK_SPEED_UNKNOWN 0 -#define IXGBE_LINK_SPEED_100_FULL 0x0008 -#define IXGBE_LINK_SPEED_1GB_FULL 0x0020 -#define IXGBE_LINK_SPEED_10GB_FULL 0x0080 -#define IXGBE_LINK_SPEED_82598_AUTONEG (IXGBE_LINK_SPEED_1GB_FULL | \ - IXGBE_LINK_SPEED_10GB_FULL) -#define IXGBE_LINK_SPEED_82599_AUTONEG (IXGBE_LINK_SPEED_100_FULL | \ - IXGBE_LINK_SPEED_1GB_FULL | IXGBE_LINK_SPEED_10GB_FULL) +#define IXGBE_LINK_SPEED_UNKNOWN 0 +#define IXGBE_LINK_SPEED_100_FULL 0x0008 +#define IXGBE_LINK_SPEED_1GB_FULL 0x0020 +#define IXGBE_LINK_SPEED_10GB_FULL 0x0080 +#define IXGBE_LINK_SPEED_82598_AUTONEG (IXGBE_LINK_SPEED_1GB_FULL | \ + IXGBE_LINK_SPEED_10GB_FULL) +#define IXGBE_LINK_SPEED_82599_AUTONEG (IXGBE_LINK_SPEED_100_FULL | \ + IXGBE_LINK_SPEED_1GB_FULL | \ + IXGBE_LINK_SPEED_10GB_FULL) + /* Physical layer type */ typedef u32 ixgbe_physical_layer; -#define IXGBE_PHYSICAL_LAYER_UNKNOWN 0 -#define IXGBE_PHYSICAL_LAYER_10GBASE_T 0x0001 -#define IXGBE_PHYSICAL_LAYER_1000BASE_T 0x0002 -#define IXGBE_PHYSICAL_LAYER_100BASE_TX 0x0004 -#define IXGBE_PHYSICAL_LAYER_SFP_PLUS_CU 0x0008 -#define IXGBE_PHYSICAL_LAYER_10GBASE_LR 0x0010 -#define IXGBE_PHYSICAL_LAYER_10GBASE_LRM 0x0020 -#define IXGBE_PHYSICAL_LAYER_10GBASE_SR 0x0040 -#define IXGBE_PHYSICAL_LAYER_10GBASE_KX4 0x0080 -#define IXGBE_PHYSICAL_LAYER_10GBASE_CX4 0x0100 -#define IXGBE_PHYSICAL_LAYER_1000BASE_KX 0x0200 -#define IXGBE_PHYSICAL_LAYER_1000BASE_BX 0x0400 -#define IXGBE_PHYSICAL_LAYER_10GBASE_KR 0x0800 -#define IXGBE_PHYSICAL_LAYER_10GBASE_XAUI 0x1000 -#define IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA 0x2000 +#define IXGBE_PHYSICAL_LAYER_UNKNOWN 0 +#define IXGBE_PHYSICAL_LAYER_10GBASE_T 0x0001 +#define IXGBE_PHYSICAL_LAYER_1000BASE_T 0x0002 +#define IXGBE_PHYSICAL_LAYER_100BASE_TX 0x0004 +#define IXGBE_PHYSICAL_LAYER_SFP_PLUS_CU 0x0008 +#define IXGBE_PHYSICAL_LAYER_10GBASE_LR 0x0010 +#define IXGBE_PHYSICAL_LAYER_10GBASE_LRM 0x0020 +#define IXGBE_PHYSICAL_LAYER_10GBASE_SR 0x0040 +#define IXGBE_PHYSICAL_LAYER_10GBASE_KX4 0x0080 +#define IXGBE_PHYSICAL_LAYER_10GBASE_CX4 0x0100 +#define IXGBE_PHYSICAL_LAYER_1000BASE_KX 0x0200 +#define IXGBE_PHYSICAL_LAYER_1000BASE_BX 0x0400 +#define IXGBE_PHYSICAL_LAYER_10GBASE_KR 0x0800 +#define IXGBE_PHYSICAL_LAYER_10GBASE_XAUI 0x1000 +#define IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA 0x2000 + +/* Flow Control Macros */ +#define PAUSE_RTT 8 +#define PAUSE_MTU(MTU) ((MTU + 1024 - 1) / 1024) + +#define FC_HIGH_WATER(MTU) ((((PAUSE_RTT + PAUSE_MTU(MTU)) * 144) + 99) / 100 +\ + PAUSE_MTU(MTU)) +#define FC_LOW_WATER(MTU) (2 * (2 * PAUSE_MTU(MTU) + PAUSE_RTT)) /* Software ATR hash keys */ -#define IXGBE_ATR_BUCKET_HASH_KEY 0xE214AD3D -#define IXGBE_ATR_SIGNATURE_HASH_KEY 0x14364D17 - -/* Software ATR input stream offsets and masks */ -#define IXGBE_ATR_VLAN_OFFSET 0 -#define IXGBE_ATR_SRC_IPV6_OFFSET 2 -#define IXGBE_ATR_SRC_IPV4_OFFSET 14 -#define IXGBE_ATR_DST_IPV6_OFFSET 18 -#define IXGBE_ATR_DST_IPV4_OFFSET 30 -#define IXGBE_ATR_SRC_PORT_OFFSET 34 -#define IXGBE_ATR_DST_PORT_OFFSET 36 -#define IXGBE_ATR_FLEX_BYTE_OFFSET 38 -#define IXGBE_ATR_VM_POOL_OFFSET 40 -#define IXGBE_ATR_L4TYPE_OFFSET 41 - -#define IXGBE_ATR_L4TYPE_MASK 0x3 -#define IXGBE_ATR_L4TYPE_IPV6_MASK 0x4 -#define IXGBE_ATR_L4TYPE_UDP 0x1 -#define IXGBE_ATR_L4TYPE_TCP 0x2 -#define IXGBE_ATR_L4TYPE_SCTP 0x3 -#define IXGBE_ATR_HASH_MASK 0x7fff +#define IXGBE_ATR_BUCKET_HASH_KEY 0x3DAD14E2 +#define IXGBE_ATR_SIGNATURE_HASH_KEY 0x174D3614 + +/* Software ATR input stream values and masks */ +#define IXGBE_ATR_HASH_MASK 0x7fff +#define IXGBE_ATR_L4TYPE_MASK 0x3 +#define IXGBE_ATR_L4TYPE_UDP 0x1 +#define IXGBE_ATR_L4TYPE_TCP 0x2 +#define IXGBE_ATR_L4TYPE_SCTP 0x3 +#define IXGBE_ATR_L4TYPE_IPV6_MASK 0x4 +enum ixgbe_atr_flow_type { + IXGBE_ATR_FLOW_TYPE_IPV4 = 0x0, + IXGBE_ATR_FLOW_TYPE_UDPV4 = 0x1, + IXGBE_ATR_FLOW_TYPE_TCPV4 = 0x2, + IXGBE_ATR_FLOW_TYPE_SCTPV4 = 0x3, + IXGBE_ATR_FLOW_TYPE_IPV6 = 0x4, + IXGBE_ATR_FLOW_TYPE_UDPV6 = 0x5, + IXGBE_ATR_FLOW_TYPE_TCPV6 = 0x6, + IXGBE_ATR_FLOW_TYPE_SCTPV6 = 0x7, +}; /* Flow Director ATR input struct. */ -struct ixgbe_atr_input { +union ixgbe_atr_input { /* * Byte layout in order, all values with MSB first: * - * vlan_id - 2 bytes - * src_ip - 16 bytes - * dst_ip - 16 bytes - * src_port - 2 bytes - * dst_port - 2 bytes - * flex_bytes - 2 bytes - * vm_pool - 1 byte - * l4type - 1 byte + * vm_pool - 1 byte + * flow_type - 1 byte + * vlan_id - 2 bytes + * src_ip - 16 bytes + * dst_ip - 16 bytes + * src_port - 2 bytes + * dst_port - 2 bytes + * flex_bytes - 2 bytes + * rsvd0 - 2 bytes - space reserved must be 0. */ - u8 byte_stream[42]; + struct { + u8 vm_pool; + u8 flow_type; + __be16 vlan_id; + __be32 dst_ip[4]; + __be32 src_ip[4]; + __be16 src_port; + __be16 dst_port; + __be16 flex_bytes; + __be16 rsvd0; + } formatted; + __be32 dword_stream[11]; }; +/* Flow Director compressed ATR hash input struct */ +union ixgbe_atr_hash_dword { + struct { + u8 vm_pool; + u8 flow_type; + __be16 vlan_id; + } formatted; + __be32 ip; + struct { + __be16 src; + __be16 dst; + } port; + __be16 flex_bytes; + __be32 dword; +}; + + struct ixgbe_atr_input_masks { - u32 src_ip_mask; - u32 dst_ip_mask; - u16 src_port_mask; - u16 dst_port_mask; - u16 vlan_id_mask; - u16 data_mask; + __be16 rsvd0; + __be16 vlan_id_mask; + __be32 dst_ip_mask[4]; + __be32 src_ip_mask[4]; + __be16 src_port_mask; + __be16 dst_port_mask; + __be16 flex_mask; }; /* @@ -2346,9 +2369,9 @@ struct ixgbe_atr_input_masks { * Enabled: Present; boot order is set for at least one target on the port. */ enum ixgbe_fcoe_boot_status { - ixgbe_fcoe_bootstatus_disabled = 0, - ixgbe_fcoe_bootstatus_enabled = 1, - ixgbe_fcoe_bootstatus_unavailable = 0xFFFF + ixgbe_fcoe_bootstatus_disabled = 0, + ixgbe_fcoe_bootstatus_enabled = 1, + ixgbe_fcoe_bootstatus_unavailable = 0xFFFF }; enum ixgbe_eeprom_type { @@ -2382,18 +2405,18 @@ enum ixgbe_phy_type { ixgbe_phy_sfp_ftl_active, ixgbe_phy_sfp_unknown, ixgbe_phy_sfp_intel, - ixgbe_phy_sfp_unsupported, /* Enforce bit set with unsupported module */ + ixgbe_phy_sfp_unsupported, /*Enforce bit set with unsupported module*/ ixgbe_phy_generic }; /* * SFP+ module type IDs: * - * ID Module Type + * ID Module Type * ============= - * 0 SFP_DA_CU - * 1 SFP_SR - * 2 SFP_LR + * 0 SFP_DA_CU + * 1 SFP_SR + * 2 SFP_LR * 3 SFP_DA_CU_CORE0 - 82599-specific * 4 SFP_DA_CU_CORE1 - 82599-specific * 5 SFP_SR/LR_CORE0 - 82599-specific @@ -2434,7 +2457,7 @@ enum ixgbe_fc_mode { }; /* Smart Speed Settings */ -#define IXGBE_SMARTSPEED_MAX_RETRIES 3 +#define IXGBE_SMARTSPEED_MAX_RETRIES 3 enum ixgbe_smart_speed { ixgbe_smart_speed_auto = 0, ixgbe_smart_speed_on, @@ -2453,13 +2476,13 @@ enum ixgbe_bus_type { /* PCI bus speeds */ enum ixgbe_bus_speed { ixgbe_bus_speed_unknown = 0, - ixgbe_bus_speed_33 = 33, - ixgbe_bus_speed_66 = 66, - ixgbe_bus_speed_100 = 100, - ixgbe_bus_speed_120 = 120, - ixgbe_bus_speed_133 = 133, - ixgbe_bus_speed_2500 = 2500, - ixgbe_bus_speed_5000 = 5000, + ixgbe_bus_speed_33 = 33, + ixgbe_bus_speed_66 = 66, + ixgbe_bus_speed_100 = 100, + ixgbe_bus_speed_120 = 120, + ixgbe_bus_speed_133 = 133, + ixgbe_bus_speed_2500 = 2500, + ixgbe_bus_speed_5000 = 5000, ixgbe_bus_speed_reserved }; @@ -2470,8 +2493,8 @@ enum ixgbe_bus_width { ixgbe_bus_width_pcie_x2 = 2, ixgbe_bus_width_pcie_x4 = 4, ixgbe_bus_width_pcie_x8 = 8, - ixgbe_bus_width_32 = 32, - ixgbe_bus_width_64 = 64, + ixgbe_bus_width_32 = 32, + ixgbe_bus_width_64 = 64, ixgbe_bus_width_reserved }; @@ -2583,7 +2606,7 @@ struct ixgbe_hw; /* iterator type for walking multicast address lists */ typedef u8* (*ixgbe_mc_addr_itr) (struct ixgbe_hw *hw, u8 **mc_addr_ptr, - u32 *vmdq); + u32 *vmdq); /* Function pointer table */ struct ixgbe_eeprom_operations { @@ -2612,8 +2635,8 @@ struct ixgbe_mac_operations { s32 (*stop_adapter)(struct ixgbe_hw *); s32 (*get_bus_info)(struct ixgbe_hw *); void (*set_lan_id)(struct ixgbe_hw *); - s32 (*read_analog_reg8)(struct ixgbe_hw *, u32, u8 *); - s32 (*write_analog_reg8)(struct ixgbe_hw *, u32, u8); + s32 (*read_analog_reg8)(struct ixgbe_hw*, u32, u8*); + s32 (*write_analog_reg8)(struct ixgbe_hw*, u32, u8); s32 (*setup_sfp)(struct ixgbe_hw *); s32 (*enable_rx_dma)(struct ixgbe_hw *, u32); s32 (*acquire_swfw_sync)(struct ixgbe_hw *, u16); @@ -2626,7 +2649,7 @@ struct ixgbe_mac_operations { s32 (*setup_link)(struct ixgbe_hw *, ixgbe_link_speed, bool, bool); s32 (*check_link)(struct ixgbe_hw *, ixgbe_link_speed *, bool *, bool); s32 (*get_link_capabilities)(struct ixgbe_hw *, ixgbe_link_speed *, - bool *); + bool *); /* LED */ s32 (*led_on)(struct ixgbe_hw *, u32); @@ -2642,14 +2665,16 @@ struct ixgbe_mac_operations { s32 (*clear_vmdq)(struct ixgbe_hw *, u32, u32); s32 (*init_rx_addrs)(struct ixgbe_hw *); s32 (*update_uc_addr_list)(struct ixgbe_hw *, u8 *, u32, - ixgbe_mc_addr_itr); + ixgbe_mc_addr_itr); s32 (*update_mc_addr_list)(struct ixgbe_hw *, u8 *, u32, - ixgbe_mc_addr_itr); + ixgbe_mc_addr_itr); s32 (*enable_mc)(struct ixgbe_hw *); s32 (*disable_mc)(struct ixgbe_hw *); s32 (*clear_vfta)(struct ixgbe_hw *); s32 (*set_vfta)(struct ixgbe_hw *, u32, u32, bool); s32 (*init_uta_tables)(struct ixgbe_hw *); + void (*set_mac_anti_spoofing)(struct ixgbe_hw *, bool, int); + void (*set_vlan_anti_spoofing)(struct ixgbe_hw *, bool, int); /* Flow Control */ s32 (*fc_enable)(struct ixgbe_hw *, s32); @@ -2664,129 +2689,128 @@ struct ixgbe_phy_operations { s32 (*write_reg)(struct ixgbe_hw *, u32, u32, u16); s32 (*setup_link)(struct ixgbe_hw *); s32 (*setup_link_speed)(struct ixgbe_hw *, ixgbe_link_speed, bool, - bool); + bool); s32 (*check_link)(struct ixgbe_hw *, ixgbe_link_speed *, bool *); s32 (*get_firmware_version)(struct ixgbe_hw *, u16 *); s32 (*read_i2c_byte)(struct ixgbe_hw *, u8, u8, u8 *); s32 (*write_i2c_byte)(struct ixgbe_hw *, u8, u8, u8); - s32 (*read_i2c_eeprom)(struct ixgbe_hw *, u8, u8 *); + s32 (*read_i2c_eeprom)(struct ixgbe_hw *, u8 , u8 *); s32 (*write_i2c_eeprom)(struct ixgbe_hw *, u8, u8); void (*i2c_bus_clear)(struct ixgbe_hw *); s32 (*check_overtemp)(struct ixgbe_hw *); }; struct ixgbe_eeprom_info { - struct ixgbe_eeprom_operations ops; - enum ixgbe_eeprom_type type; - u32 semaphore_delay; - u16 word_size; - u16 address_bits; + struct ixgbe_eeprom_operations ops; + enum ixgbe_eeprom_type type; + u32 semaphore_delay; + u16 word_size; + u16 address_bits; }; -#define IXGBE_FLAGS_DOUBLE_RESET_REQUIRED 0x01 +#define IXGBE_FLAGS_DOUBLE_RESET_REQUIRED 0x01 struct ixgbe_mac_info { - struct ixgbe_mac_operations ops; - enum ixgbe_mac_type type; - u8 addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; - u8 perm_addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; - u8 san_addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; + struct ixgbe_mac_operations ops; + enum ixgbe_mac_type type; + u8 addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; + u8 perm_addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; + u8 san_addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; /* prefix for World Wide Node Name (WWNN) */ - u16 wwnn_prefix; + u16 wwnn_prefix; /* prefix for World Wide Port Name (WWPN) */ - u16 wwpn_prefix; -#define IXGBE_MAX_MTA 128 + u16 wwpn_prefix; +#define IXGBE_MAX_MTA 128 u32 mta_shadow[IXGBE_MAX_MTA]; - s32 mc_filter_type; - u32 mcft_size; - u32 vft_size; - u32 num_rar_entries; - u32 rar_highwater; - u32 max_tx_queues; - u32 max_rx_queues; - u32 max_msix_vectors; - bool msix_vectors_from_pcie; - u32 orig_autoc; - u32 orig_autoc2; - bool orig_link_settings_stored; - bool autotry_restart; - u8 flags; + s32 mc_filter_type; + u32 mcft_size; + u32 vft_size; + u32 num_rar_entries; + u32 rar_highwater; + u32 rx_pb_size; + u32 max_tx_queues; + u32 max_rx_queues; + u32 max_msix_vectors; + bool msix_vectors_from_pcie; + u32 orig_autoc; + u32 orig_autoc2; + bool orig_link_settings_stored; + bool autotry_restart; + u8 flags; }; struct ixgbe_phy_info { - struct ixgbe_phy_operations ops; - enum ixgbe_phy_type type; - u32 addr; - u32 id; - enum ixgbe_sfp_type sfp_type; - bool sfp_setup_needed; - u32 revision; - enum ixgbe_media_type media_type; - bool reset_disable; - ixgbe_autoneg_advertised autoneg_advertised; - enum ixgbe_smart_speed smart_speed; - bool smart_speed_active; - bool multispeed_fiber; - bool reset_if_overtemp; + struct ixgbe_phy_operations ops; + enum ixgbe_phy_type type; + u32 addr; + u32 id; + enum ixgbe_sfp_type sfp_type; + bool sfp_setup_needed; + u32 revision; + enum ixgbe_media_type media_type; + bool reset_disable; + ixgbe_autoneg_advertised autoneg_advertised; + enum ixgbe_smart_speed smart_speed; + bool smart_speed_active; + bool multispeed_fiber; + bool reset_if_overtemp; }; struct ixgbe_hw { - u8 *hw_addr; - void *back; - struct ixgbe_mac_info mac; - struct ixgbe_addr_filter_info addr_ctrl; - struct ixgbe_fc_info fc; - struct ixgbe_phy_info phy; - struct ixgbe_eeprom_info eeprom; - struct ixgbe_bus_info bus; - u16 device_id; - u16 vendor_id; - u16 subsystem_device_id; - u16 subsystem_vendor_id; - u8 revision_id; - bool adapter_stopped; + u8 *hw_addr; + void *back; + struct ixgbe_mac_info mac; + struct ixgbe_addr_filter_info addr_ctrl; + struct ixgbe_fc_info fc; + struct ixgbe_phy_info phy; + struct ixgbe_eeprom_info eeprom; + struct ixgbe_bus_info bus; + u16 device_id; + u16 vendor_id; + u16 subsystem_device_id; + u16 subsystem_vendor_id; + u8 revision_id; + bool adapter_stopped; }; -#define ixgbe_call_func(hw, func, params, error) \ - (func != NULL) ? func params: error +#define ixgbe_call_func(hw, func, params, error) \ + (func != NULL) ? func params : error -/* Error Codes */ -#define IXGBE_SUCCESS 0 -#define IXGBE_ERR_EEPROM -1 -#define IXGBE_ERR_EEPROM_CHECKSUM -2 -#define IXGBE_ERR_PHY -3 -#define IXGBE_ERR_CONFIG -4 -#define IXGBE_ERR_PARAM -5 -#define IXGBE_ERR_MAC_TYPE -6 -#define IXGBE_ERR_UNKNOWN_PHY -7 -#define IXGBE_ERR_LINK_SETUP -8 -#define IXGBE_ERR_ADAPTER_STOPPED -9 -#define IXGBE_ERR_INVALID_MAC_ADDR -10 -#define IXGBE_ERR_DEVICE_NOT_SUPPORTED -11 -#define IXGBE_ERR_MASTER_REQUESTS_PENDING -12 -#define IXGBE_ERR_INVALID_LINK_SETTINGS -13 -#define IXGBE_ERR_AUTONEG_NOT_COMPLETE -14 -#define IXGBE_ERR_RESET_FAILED -15 -#define IXGBE_ERR_SWFW_SYNC -16 -#define IXGBE_ERR_PHY_ADDR_INVALID -17 -#define IXGBE_ERR_I2C -18 -#define IXGBE_ERR_SFP_NOT_SUPPORTED -19 -#define IXGBE_ERR_SFP_NOT_PRESENT -20 -#define IXGBE_ERR_SFP_NO_INIT_SEQ_PRESENT -21 -#define IXGBE_ERR_NO_SAN_ADDR_PTR -22 -#define IXGBE_ERR_FDIR_REINIT_FAILED -23 -#define IXGBE_ERR_EEPROM_VERSION -24 -#define IXGBE_ERR_NO_SPACE -25 -#define IXGBE_ERR_OVERTEMP -26 -#define IXGBE_ERR_FC_NOT_NEGOTIATED -27 -#define IXGBE_ERR_FC_NOT_SUPPORTED -28 -#define IXGBE_ERR_FLOW_CONTROL -29 -#define IXGBE_NOT_IMPLEMENTED 0x7FFFFFFF - -#ifndef UNREFERENCED_PARAMETER -#define UNREFERENCED_PARAMETER(_p) (_p); -#define UNREFERENCED_2PARAMETER(_p, _q) (_p); (_q); -#define UNREFERENCED_3PARAMETER(_p, _q, _r) (_p); (_q); (_r); -#define UNREFERENCED_4PARAMETER(_p, _q, _r, _s) (_p); (_q); (_r); (_s); -#endif -#endif /* _IXGBE_TYPE_H */ +/* Error Codes */ +#define IXGBE_SUCCESS 0 +#define IXGBE_ERR_EEPROM -1 +#define IXGBE_ERR_EEPROM_CHECKSUM -2 +#define IXGBE_ERR_PHY -3 +#define IXGBE_ERR_CONFIG -4 +#define IXGBE_ERR_PARAM -5 +#define IXGBE_ERR_MAC_TYPE -6 +#define IXGBE_ERR_UNKNOWN_PHY -7 +#define IXGBE_ERR_LINK_SETUP -8 +#define IXGBE_ERR_ADAPTER_STOPPED -9 +#define IXGBE_ERR_INVALID_MAC_ADDR -10 +#define IXGBE_ERR_DEVICE_NOT_SUPPORTED -11 +#define IXGBE_ERR_MASTER_REQUESTS_PENDING -12 +#define IXGBE_ERR_INVALID_LINK_SETTINGS -13 +#define IXGBE_ERR_AUTONEG_NOT_COMPLETE -14 +#define IXGBE_ERR_RESET_FAILED -15 +#define IXGBE_ERR_SWFW_SYNC -16 +#define IXGBE_ERR_PHY_ADDR_INVALID -17 +#define IXGBE_ERR_I2C -18 +#define IXGBE_ERR_SFP_NOT_SUPPORTED -19 +#define IXGBE_ERR_SFP_NOT_PRESENT -20 +#define IXGBE_ERR_SFP_NO_INIT_SEQ_PRESENT -21 +#define IXGBE_ERR_NO_SAN_ADDR_PTR -22 +#define IXGBE_ERR_FDIR_REINIT_FAILED -23 +#define IXGBE_ERR_EEPROM_VERSION -24 +#define IXGBE_ERR_NO_SPACE -25 +#define IXGBE_ERR_OVERTEMP -26 +#define IXGBE_ERR_FC_NOT_NEGOTIATED -27 +#define IXGBE_ERR_FC_NOT_SUPPORTED -28 +#define IXGBE_ERR_FLOW_CONTROL -29 +#define IXGBE_ERR_SFP_SETUP_NOT_COMPLETE -30 +#define IXGBE_ERR_PBA_SECTION -31 +#define IXGBE_ERR_INVALID_ARGUMENT -32 +#define IXGBE_NOT_IMPLEMENTED 0x7FFFFFFF + + +#endif /* _IXGBE_TYPE_H_ */ diff --git a/usr/src/uts/common/io/lvm/hotspares/hotspares.c b/usr/src/uts/common/io/lvm/hotspares/hotspares.c index 59251a571f..13ce78287d 100644 --- a/usr/src/uts/common/io/lvm/hotspares/hotspares.c +++ b/usr/src/uts/common/io/lvm/hotspares/hotspares.c @@ -21,10 +21,9 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/param.h> #include <sys/systm.h> #include <sys/conf.h> @@ -52,7 +51,6 @@ md_ops_t hotspares_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &hotspares_md_ops; #endif diff --git a/usr/src/uts/common/io/lvm/md/md.c b/usr/src/uts/common/io/lvm/md/md.c index 89a329e1b9..4fcd89708a 100644 --- a/usr/src/uts/common/io/lvm/md/md.c +++ b/usr/src/uts/common/io/lvm/md/md.c @@ -21,6 +21,7 @@ /* * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -75,9 +76,6 @@ #include <sys/priv_names.h> #include <sys/modhash.h> -#ifndef lint -char _depends_on[] = "strmod/rpcmod"; -#endif /* lint */ int md_init_debug = 0; /* module binding debug */ /* diff --git a/usr/src/uts/common/io/lvm/mirror/mirror.c b/usr/src/uts/common/io/lvm/mirror/mirror.c index 121a8cf33c..e138fe2f64 100644 --- a/usr/src/uts/common/io/lvm/mirror/mirror.c +++ b/usr/src/uts/common/io/lvm/mirror/mirror.c @@ -21,6 +21,7 @@ /* * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/param.h> @@ -60,7 +61,6 @@ md_ops_t mirror_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &mirror_md_ops; #endif diff --git a/usr/src/uts/common/io/lvm/notify/md_notify.c b/usr/src/uts/common/io/lvm/notify/md_notify.c index a96b201887..693793f285 100644 --- a/usr/src/uts/common/io/lvm/notify/md_notify.c +++ b/usr/src/uts/common/io/lvm/notify/md_notify.c @@ -21,10 +21,9 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/systm.h> #include <sys/cmn_err.h> #include <sys/errno.h> @@ -37,7 +36,6 @@ md_ops_t event_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &event_md_ops; #endif diff --git a/usr/src/uts/common/io/lvm/raid/raid.c b/usr/src/uts/common/io/lvm/raid/raid.c index 2240e46aa9..940a3e99df 100644 --- a/usr/src/uts/common/io/lvm/raid/raid.c +++ b/usr/src/uts/common/io/lvm/raid/raid.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -75,7 +76,6 @@ md_ops_t raid_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &raid_md_ops; #endif /* lint */ diff --git a/usr/src/uts/common/io/lvm/softpart/sp.c b/usr/src/uts/common/io/lvm/softpart/sp.c index 1dd17b5b5d..0ffe12a33e 100644 --- a/usr/src/uts/common/io/lvm/softpart/sp.c +++ b/usr/src/uts/common/io/lvm/softpart/sp.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -103,7 +104,6 @@ md_ops_t sp_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &sp_md_ops; #endif diff --git a/usr/src/uts/common/io/lvm/stripe/stripe.c b/usr/src/uts/common/io/lvm/stripe/stripe.c index cfc7d6ddcf..79c9590974 100644 --- a/usr/src/uts/common/io/lvm/stripe/stripe.c +++ b/usr/src/uts/common/io/lvm/stripe/stripe.c @@ -21,6 +21,7 @@ /* * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/param.h> @@ -55,7 +56,6 @@ md_ops_t stripe_md_ops; #ifndef lint -char _depends_on[] = "drv/md"; md_ops_t *md_interface_ops = &stripe_md_ops; #endif diff --git a/usr/src/uts/common/io/lvm/trans/mdtrans.c b/usr/src/uts/common/io/lvm/trans/mdtrans.c index 75c8cb3643..a8a4cb8822 100644 --- a/usr/src/uts/common/io/lvm/trans/mdtrans.c +++ b/usr/src/uts/common/io/lvm/trans/mdtrans.c @@ -22,6 +22,7 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/param.h> @@ -57,7 +58,6 @@ md_ops_t trans_md_ops; #ifndef lint -char _depends_on[] = "drv/md fs/ufs"; md_ops_t *md_interface_ops = &trans_md_ops; #endif /* lint */ diff --git a/usr/src/uts/common/io/mega_sas/megaraid_sas.c b/usr/src/uts/common/io/mega_sas/megaraid_sas.c index 61515efcc0..a63e7e488a 100644 --- a/usr/src/uts/common/io/mega_sas/megaraid_sas.c +++ b/usr/src/uts/common/io/mega_sas/megaraid_sas.c @@ -41,6 +41,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/types.h> @@ -142,8 +143,6 @@ static struct dev_ops megasas_ops = { ddi_quiesce_not_supported, /* devo_quiesce */ }; -char _depends_on[] = "misc/scsi"; - static struct modldrv modldrv = { &mod_driverops, /* module type - driver */ MEGASAS_VERSION, diff --git a/usr/src/uts/common/io/mr_sas/mr_sas.c b/usr/src/uts/common/io/mr_sas/mr_sas.c index 2209f389f1..922fc78f8d 100644 --- a/usr/src/uts/common/io/mr_sas/mr_sas.c +++ b/usr/src/uts/common/io/mr_sas/mr_sas.c @@ -42,6 +42,7 @@ /* * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/types.h> @@ -167,8 +168,6 @@ static struct dev_ops mrsas_ops = { #endif /* __sparc */ }; -char _depends_on[] = "misc/scsi"; - static struct modldrv modldrv = { &mod_driverops, /* module type - driver */ MRSAS_VERSION, diff --git a/usr/src/uts/common/io/ppp/spppasyn/spppasyn_mod.c b/usr/src/uts/common/io/ppp/spppasyn/spppasyn_mod.c index 64fed2b252..e9ac3f021a 100644 --- a/usr/src/uts/common/io/ppp/spppasyn/spppasyn_mod.c +++ b/usr/src/uts/common/io/ppp/spppasyn/spppasyn_mod.c @@ -1,6 +1,20 @@ /* * spppasyn_mod.c - modload support for PPP AHDLC STREAMS module * + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. + * Use is subject to license terms. + * + * CONTRIBUTOR MAKES NO REPRESENTATION OR WARRANTIES ABOUT THE SUITABILITY + * OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED + * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A + * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. CONTRIBUTOR SHALL NOT BE LIABLE + * FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR + * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES + * + * Permission to use, copy, modify, and distribute this software and its + * documentation is hereby granted, provided that the above copyright + * notice appears in all copies. + * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * @@ -41,8 +55,6 @@ * $Id: ppp_mod.c,v 1.3 1999/02/26 10:53:28 paulus Exp $ */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/conf.h> #include <sys/ddi.h> @@ -53,7 +65,6 @@ /* * Globals for PPP AHDLC loadable module wrapper */ -char _depends_on[] = "drv/sppp"; /* we need some helper routines */ extern struct streamtab spppasyn_tab; extern const char spppasyn_module_description[]; diff --git a/usr/src/uts/common/io/ppp/spppcomp/spppcomp_mod.c b/usr/src/uts/common/io/ppp/spppcomp/spppcomp_mod.c index 887e2d5322..db1f052776 100644 --- a/usr/src/uts/common/io/ppp/spppcomp/spppcomp_mod.c +++ b/usr/src/uts/common/io/ppp/spppcomp/spppcomp_mod.c @@ -1,6 +1,15 @@ /* * spppcomp_mod.c - modload support for PPP compression STREAMS module. * + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. + * + * CONTRIBUTOR MAKES NO REPRESENTATION OR WARRANTIES ABOUT THE SUITABILITY + * OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED + * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A + * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. CONTRIBUTOR SHALL NOT BE LIABLE + * FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR + * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES + * * Copyright (c) 2000 by Sun Microsystems, Inc. * All rights reserved. * @@ -46,9 +55,6 @@ * performance and scalability. */ -#pragma ident "%Z%%M% %I% %E% SMI" -#define RCSID "$Id: spppcomp_mod.c,v 1.0 2000/05/08 01:10:12 masputra Exp $" - #include <sys/types.h> #include <sys/syslog.h> #include <sys/conf.h> @@ -63,7 +69,6 @@ /* * Globals for PPP compression loadable module wrapper */ -char _depends_on[] = "drv/sppp"; /* we need some helper routines */ extern struct streamtab spppcomp_tab; extern const char spppcomp_module_description[]; diff --git a/usr/src/uts/common/io/scsi/targets/sd.c b/usr/src/uts/common/io/scsi/targets/sd.c index f4ffcb693f..b330a50f34 100644 --- a/usr/src/uts/common/io/scsi/targets/sd.c +++ b/usr/src/uts/common/io/scsi/targets/sd.c @@ -24,6 +24,7 @@ */ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* * Copyright 2011 cyril.galibern@opensvc.com @@ -78,10 +79,8 @@ */ #if (defined(__fibre)) #define SD_MODULE_NAME "SCSI SSA/FCAL Disk Driver" -char _depends_on[] = "misc/scsi misc/cmlb drv/fcp"; #else /* !__fibre */ #define SD_MODULE_NAME "SCSI Disk Driver" -char _depends_on[] = "misc/scsi misc/cmlb"; #endif /* !__fibre */ /* diff --git a/usr/src/uts/common/io/scsi/targets/ses.c b/usr/src/uts/common/io/scsi/targets/ses.c index 0894043ec6..cc224296ed 100644 --- a/usr/src/uts/common/io/scsi/targets/ses.c +++ b/usr/src/uts/common/io/scsi/targets/ses.c @@ -23,6 +23,7 @@ * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/modctl.h> @@ -179,7 +180,6 @@ static const char *fail_msg = "%stransport failed: reason '%s': %s"; /* * autoconfiguration routines. */ -char _depends_on[] = "misc/scsi"; static struct modldrv modldrv = { &mod_driverops, diff --git a/usr/src/uts/common/io/scsi/targets/st.c b/usr/src/uts/common/io/scsi/targets/st.c index c797ea120e..431fbaae56 100644 --- a/usr/src/uts/common/io/scsi/targets/st.c +++ b/usr/src/uts/common/io/scsi/targets/st.c @@ -21,6 +21,7 @@ /* * Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -686,7 +687,6 @@ _NOTE(DATA_READABLE_WITHOUT_LOCK(st_drivetype scsi_address)) /* * autoconfiguration routines. */ -char _depends_on[] = "misc/scsi"; static struct modldrv modldrv = { &mod_driverops, /* Type of module. This one is a driver */ diff --git a/usr/src/uts/common/io/tty_pts.c b/usr/src/uts/common/io/tty_pts.c index 84bb7c6ada..1ea7fed353 100644 --- a/usr/src/uts/common/io/tty_pts.c +++ b/usr/src/uts/common/io/tty_pts.c @@ -1,4 +1,5 @@ /* + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -134,8 +135,6 @@ DDI_DEFINE_STREAM_OPS(ptsl_ops, nulldev, nulldev, #include <sys/errno.h> #include <sys/modctl.h> -char _depends_on[] = "drv/ptc"; - /* * Module linkage information for the kernel. */ diff --git a/usr/src/uts/common/os/dumpsubr.c b/usr/src/uts/common/os/dumpsubr.c index a8a36633e7..3f2bef8221 100644 --- a/usr/src/uts/common/os/dumpsubr.c +++ b/usr/src/uts/common/os/dumpsubr.c @@ -3069,7 +3069,7 @@ dump_set_uuid(const char *uuidstr) (void) strncpy(dump_osimage_uuid, uuidstr, 36 + 1); - cmn_err(CE_CONT, "?This Solaris instance has UUID %s", + cmn_err(CE_CONT, "?This Solaris instance has UUID %s\n", dump_osimage_uuid); return (0); diff --git a/usr/src/uts/common/os/sunddi.c b/usr/src/uts/common/os/sunddi.c index ab6e26a124..ee3fa51b95 100644 --- a/usr/src/uts/common/os/sunddi.c +++ b/usr/src/uts/common/os/sunddi.c @@ -7332,24 +7332,6 @@ ddi_dma_mem_alloc(ddi_dma_handle_t handle, size_t length, if (*handlep == NULL) return (DDI_FAILURE); -/* SPARC mappings are always cacheable, as SPARC guarantees cache coherency. */ -#ifndef __sparc - /* Transform attributes into correct cache flags. */ - if ((flags & IOMEM_DATA_MASK) == 0) { - switch (accattrp->devacc_attr_dataorder) { - case DDI_STRICTORDER_ACC: - flags |= IOMEM_DATA_UNCACHED; - break; - case DDI_MERGING_OK_ACC: - flags |= IOMEM_DATA_UC_WR_COMBINE; - break; - default: - flags |= IOMEM_DATA_CACHED; - break; - } - } -#endif - /* check if the cache attributes are supported */ if (i_ddi_check_cache_attr(flags) == B_FALSE) return (DDI_FAILURE); diff --git a/usr/src/uts/common/pcmcia/nexus/pcmcia.c b/usr/src/uts/common/pcmcia/nexus/pcmcia.c index 069c1897d4..3b08cbcc18 100644 --- a/usr/src/uts/common/pcmcia/nexus/pcmcia.c +++ b/usr/src/uts/common/pcmcia/nexus/pcmcia.c @@ -362,7 +362,7 @@ extern pri_t minclsyspri; * the attach routine must make sure that everything needed is present * including real hardware. The sequence of events is: * attempt to load all adapter drivers - * attempt to load Card Services (which _depends_on pcmcia) + * attempt to load Card Services * initialize logical sockets * report the nexus exists */ diff --git a/usr/src/uts/common/rpc/sec/secmod.c b/usr/src/uts/common/rpc/sec/secmod.c index 13899480a0..46e472e90d 100644 --- a/usr/src/uts/common/rpc/sec/secmod.c +++ b/usr/src/uts/common/rpc/sec/secmod.c @@ -22,16 +22,13 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.7 */ - #include <sys/types.h> #include <sys/modctl.h> #include <sys/errno.h> -char _depends_on[] = "strmod/rpcmod misc/tlimod"; - /* * Module linkage information for the kernel. */ diff --git a/usr/src/uts/common/rpc/sec_gss/rpcsec_gssmod.c b/usr/src/uts/common/rpc/sec_gss/rpcsec_gssmod.c index a852f31691..52494f77d1 100644 --- a/usr/src/uts/common/rpc/sec_gss/rpcsec_gssmod.c +++ b/usr/src/uts/common/rpc/sec_gss/rpcsec_gssmod.c @@ -22,16 +22,13 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/modctl.h> #include <sys/errno.h> -char _depends_on[] = "strmod/rpcmod misc/kgssapi"; - /* * Module linkage information for the kernel. */ diff --git a/usr/src/uts/common/sys/dtrace.h b/usr/src/uts/common/sys/dtrace.h index 834cfd6d55..c15799a4e4 100644 --- a/usr/src/uts/common/sys/dtrace.h +++ b/usr/src/uts/common/sys/dtrace.h @@ -285,8 +285,10 @@ typedef enum dtrace_probespec { #define DIF_SUBR_INET_NTOP 41 #define DIF_SUBR_INET_NTOA 42 #define DIF_SUBR_INET_NTOA6 43 +#define DIF_SUBR_TOUPPER 44 +#define DIF_SUBR_TOLOWER 45 -#define DIF_SUBR_MAX 43 /* max subroutine value */ +#define DIF_SUBR_MAX 45 /* max subroutine value */ typedef uint32_t dif_instr_t; @@ -395,6 +397,8 @@ typedef struct dtrace_difv { #define DTRACEACT_PRINTF 3 /* printf() action */ #define DTRACEACT_PRINTA 4 /* printa() action */ #define DTRACEACT_LIBACT 5 /* library-controlled action */ +#define DTRACEACT_TRACEMEM 6 /* tracemem() action */ +#define DTRACEACT_TRACEMEM_DYNSIZE 7 /* dynamic tracemem() size */ #define DTRACEACT_PROC 0x0100 #define DTRACEACT_USTACK (DTRACEACT_PROC + 1) @@ -1352,7 +1356,7 @@ typedef struct dof_helper { * dtps_resume() <-- Resume specified probe * dtps_getargdesc() <-- Get the argument description for args[X] * dtps_getargval() <-- Get the value for an argX or args[X] variable - * dtps_usermode() <-- Find out if the probe was fired in user mode + * dtps_mode() <-- Return the mode of the fired probe * dtps_destroy() <-- Destroy all state associated with this probe * * 1.2 void dtps_provide(void *arg, const dtrace_probedesc_t *spec) @@ -1601,24 +1605,32 @@ typedef struct dof_helper { * This is called from within dtrace_probe() meaning that interrupts * are disabled. No locks should be taken within this entry point. * - * 1.10 int dtps_usermode(void *arg, dtrace_id_t id, void *parg) + * 1.10 int dtps_mode(void *arg, dtrace_id_t id, void *parg) * * 1.10.1 Overview * - * Called to determine if the probe was fired in a user context. + * Called to determine the mode of a fired probe. * * 1.10.2 Arguments and notes * * The first argument is the cookie as passed to dtrace_register(). The - * second argument is the identifier of the current probe. The third + * second argument is the identifier of the current probe. The third * argument is the probe argument as passed to dtrace_probe_create(). This * entry point must not be left NULL for providers whose probes allow for - * mixed mode tracing, that is to say those probes that can fire during - * kernel- _or_ user-mode execution + * mixed mode tracing, that is to say those unanchored probes that can fire + * during kernel- or user-mode execution. * * 1.10.3 Return value * - * A boolean value. + * A bitwise OR that encapsulates both the mode (either DTRACE_MODE_KERNEL + * or DTRACE_MODE_USER) and the policy when the privilege of the enabling + * is insufficient for that mode (either DTRACE_MODE_NOPRIV_DROP or + * DTRACE_MODE_NOPRIV_RESTRICT). If the policy is DTRACE_MODE_NOPRIV_DROP, + * insufficient privilege will result in the probe firing being silently + * ignored for the enabling; if the policy is DTRACE_NODE_NOPRIV_RESTRICT, + * insufficient privilege will not prevent probe processing for the + * enabling, but restrictions will be in place that induce a UPRIV fault + * upon attempt to examine probe arguments or current process state. * * 1.10.4 Caller's context * @@ -2009,10 +2021,15 @@ typedef struct dtrace_pops { dtrace_argdesc_t *desc); uint64_t (*dtps_getargval)(void *arg, dtrace_id_t id, void *parg, int argno, int aframes); - int (*dtps_usermode)(void *arg, dtrace_id_t id, void *parg); + int (*dtps_mode)(void *arg, dtrace_id_t id, void *parg); void (*dtps_destroy)(void *arg, dtrace_id_t id, void *parg); } dtrace_pops_t; +#define DTRACE_MODE_KERNEL 0x01 +#define DTRACE_MODE_USER 0x02 +#define DTRACE_MODE_NOPRIV_DROP 0x10 +#define DTRACE_MODE_NOPRIV_RESTRICT 0x20 + typedef uintptr_t dtrace_provider_id_t; extern int dtrace_register(const char *, const dtrace_pattr_t *, uint32_t, diff --git a/usr/src/uts/common/sys/dtrace_impl.h b/usr/src/uts/common/sys/dtrace_impl.h index dc89cb1b0b..3bebd0cb30 100644 --- a/usr/src/uts/common/sys/dtrace_impl.h +++ b/usr/src/uts/common/sys/dtrace_impl.h @@ -929,7 +929,8 @@ typedef struct dtrace_mstate { * Access flag used by dtrace_mstate.dtms_access. */ #define DTRACE_ACCESS_KERNEL 0x1 /* the priv to read kmem */ - +#define DTRACE_ACCESS_PROC 0x2 /* the priv for proc state */ +#define DTRACE_ACCESS_ARGS 0x4 /* the priv to examine args */ /* * DTrace Activity diff --git a/usr/src/uts/common/syscall/pipe.c b/usr/src/uts/common/syscall/pipe.c index 7721cd2764..a626b2364a 100644 --- a/usr/src/uts/common/syscall/pipe.c +++ b/usr/src/uts/common/syscall/pipe.c @@ -21,14 +21,13 @@ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ -#pragma ident "%Z%%M% %I% %E% SMI" /* from SVr4.0 1.11 */ - #include <sys/types.h> #include <sys/sysmacros.h> #include <sys/param.h> @@ -49,8 +48,6 @@ #include <sys/modctl.h> #include <sys/syscall.h> -char _depends_on[] = "fs/fifofs"; - longlong_t pipe(); static struct sysent pipe_sysent = { diff --git a/usr/src/uts/i86pc/acpippm/Makefile b/usr/src/uts/i86pc/acpippm/Makefile index 2731469730..5844ddfca1 100644 --- a/usr/src/uts/i86pc/acpippm/Makefile +++ b/usr/src/uts/i86pc/acpippm/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the power managment # module for the ACPI subsystem @@ -65,6 +64,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Declare dependency on misc/acpica +# +LDFLAGS += -dy -N misc/acpica + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/i86pc/cpr/Makefile b/usr/src/uts/i86pc/cpr/Makefile index 115b4d0800..7e07865e48 100644 --- a/usr/src/uts/i86pc/cpr/Makefile +++ b/usr/src/uts/i86pc/cpr/Makefile @@ -22,8 +22,7 @@ # uts/i86pc/cpr/Makefile # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the cpr misc kernel module. # @@ -55,9 +54,11 @@ ROOTMODULE = $(ROOT_PSM_MISC_DIR)/$(MODULE) include $(UTSBASE)/i86pc/Makefile.i86pc # -# Override defaults +# bootdev required as per previous inline commenting referencing symbol +# i_devname_to_promname(), which may only be necessary on SPARC. Removing +# this symbol may be sufficient to remove depedency. # -LDFLAGS += -dy -N misc/acpica +LDFLAGS += -dy -N misc/acpica -N misc/bootdev # # Define targets diff --git a/usr/src/uts/i86pc/io/ppm/acpippm.c b/usr/src/uts/i86pc/io/ppm/acpippm.c index f5c9004220..476be5fdfb 100644 --- a/usr/src/uts/i86pc/io/ppm/acpippm.c +++ b/usr/src/uts/i86pc/io/ppm/acpippm.c @@ -22,6 +22,7 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/types.h> @@ -139,8 +140,6 @@ static kmutex_t appm_lock; /* * S3 stuff: */ -char _depends_on[] = "misc/acpica"; - extern int acpi_enter_sleepstate(s3a_t *); extern int acpi_exit_sleepstate(s3a_t *); diff --git a/usr/src/uts/i86pc/io/rootnex.c b/usr/src/uts/i86pc/io/rootnex.c index c538d6d2b7..ab2ffb503e 100644 --- a/usr/src/uts/i86pc/io/rootnex.c +++ b/usr/src/uts/i86pc/io/rootnex.c @@ -23,6 +23,7 @@ */ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -167,10 +168,6 @@ typedef paddr_t rootnex_addr_t; #define ROOTNEX_PADDR_TO_RBASE(pa) (pa) #endif -#if !defined(__xpv) -char _depends_on[] = "misc/iommulib misc/acpica"; -#endif - static struct cb_ops rootnex_cb_ops = { nodev, /* open */ nodev, /* close */ diff --git a/usr/src/uts/i86pc/rootnex/Makefile b/usr/src/uts/i86pc/rootnex/Makefile index 8f7ea9f7f1..2ef85546b3 100644 --- a/usr/src/uts/i86pc/rootnex/Makefile +++ b/usr/src/uts/i86pc/rootnex/Makefile @@ -21,6 +21,7 @@ # # uts/i86pc/rootnex/Makefile # Copyright 2010 Sun Microsystems, Inc. All rights reserved. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # Use is subject to license terms. # # This makefile drives the production of the rootnex driver @@ -55,9 +56,9 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) # -# Overrides. +# Define dependencies on iommulib and acpica # -LDFLAGS += -dy +LDFLAGS += -dy -N misc/iommulib -N misc/acpica # # For now, disable these lint checks; maintainers should endeavor diff --git a/usr/src/uts/intel/IA/Makefile b/usr/src/uts/intel/IA/Makefile index c76c8fb950..a8e23b88ff 100644 --- a/usr/src/uts/intel/IA/Makefile +++ b/usr/src/uts/intel/IA/Makefile @@ -24,8 +24,7 @@ # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the IA scheduling class # kernel module. @@ -59,6 +58,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on TS +# +LDFLAGS += -dy -N sched/TS + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/amr/Makefile b/usr/src/uts/intel/amr/Makefile index cc29aca0e2..679408abfa 100644 --- a/usr/src/uts/intel/amr/Makefile +++ b/usr/src/uts/intel/amr/Makefile @@ -1,8 +1,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the amr driver kernel module. # @@ -47,6 +46,11 @@ LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/ata/Makefile b/usr/src/uts/intel/ata/Makefile index 769e734f50..ce2e3d5c81 100644 --- a/usr/src/uts/intel/ata/Makefile +++ b/usr/src/uts/intel/ata/Makefile @@ -22,6 +22,7 @@ # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # # This makefile drives the production of the ata "drv" @@ -72,6 +73,11 @@ INC_PATH += -I$(UTSBASE)/intel/io/dktp/hba/ghd LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN # +# Depends on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/autofs/Makefile b/usr/src/uts/intel/autofs/Makefile index 5cb6e8be32..94c28816c9 100644 --- a/usr/src/uts/intel/autofs/Makefile +++ b/usr/src/uts/intel/autofs/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the autofs file system # kernel module. @@ -59,6 +58,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) # +# Define dependency on rpcmod, rpcsec, and mntfs +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/rpcsec -N fs/mntfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/c2audit/Makefile b/usr/src/uts/intel/c2audit/Makefile index b30966392b..316e3a35ee 100644 --- a/usr/src/uts/intel/c2audit/Makefile +++ b/usr/src/uts/intel/c2audit/Makefile @@ -23,6 +23,7 @@ # # Copyright 2010 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the c2audit driver kernel module. # @@ -55,6 +56,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on sockfs +# +LDFLAGS += -dy -N fs/sockfs + +# # lint pass one enforcement # CFLAGS += $(CCVERBOSE) diff --git a/usr/src/uts/intel/cachefs/Makefile b/usr/src/uts/intel/cachefs/Makefile index e574646a0a..b1254fe1df 100644 --- a/usr/src/uts/intel/cachefs/Makefile +++ b/usr/src/uts/intel/cachefs/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the cachefs file system # kernel module. @@ -58,6 +57,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on rpcmod +# +LDFLAGS += -dy -N strmod/rpcmod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/emlxs/Makefile b/usr/src/uts/intel/emlxs/Makefile index e19aba8b62..637f65b402 100644 --- a/usr/src/uts/intel/emlxs/Makefile +++ b/usr/src/uts/intel/emlxs/Makefile @@ -21,6 +21,7 @@ # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the emlxs driver kernel module. # @@ -73,8 +74,12 @@ INC_PATH += -I$(UTSBASE)/common/sys/fibre-channel/fca/emlxs INC_PATH += -I$(UTSBASE)/common/sys/fibre-channel/impl INC_PATH += -I$(UTSBASE)/common/sys/fibre-channel/ulp +# +# misc/fctl required because #ifdef MODSYM_LOAD code +# triggered by -DS11; uses DDI calls to load FCA symbols +# LDFLAGS += -dy -Nmisc/md5 -Nmisc/sha1 -LDFLAGS += -Nmisc/bignum +LDFLAGS += -Nmisc/bignum -Nmisc/fctl # # For now, disable these lint checks; maintainers should endeavor diff --git a/usr/src/uts/intel/emul64/Makefile b/usr/src/uts/intel/emul64/Makefile index fa08ef8d6e..565c57a367 100644 --- a/usr/src/uts/intel/emul64/Makefile +++ b/usr/src/uts/intel/emul64/Makefile @@ -20,8 +20,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the emul64 kernel # driver to testing hotplugging operations @@ -69,6 +68,11 @@ CFLAGS += $(CCVERBOSE) LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN # +# Depends on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/hsfs/Makefile b/usr/src/uts/intel/hsfs/Makefile index ad91acc922..ea8c25f22e 100644 --- a/usr/src/uts/intel/hsfs/Makefile +++ b/usr/src/uts/intel/hsfs/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the hsfs file system # kernel module. @@ -58,6 +57,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on specfs +# +LDFLAGS += -dy -N fs/specfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/intel_nb5000/Makefile b/usr/src/uts/intel/intel_nb5000/Makefile index 0e862eb9ac..ed3f586289 100644 --- a/usr/src/uts/intel/intel_nb5000/Makefile +++ b/usr/src/uts/intel/intel_nb5000/Makefile @@ -19,6 +19,7 @@ # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # @@ -70,6 +71,11 @@ LINT_TARGET = $(LINT_MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) # +# Depends on smbios +# +LDFLAGS += -dy -N drv/smbios + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/io/amr/amr.c b/usr/src/uts/intel/io/amr/amr.c index dfb47cb712..7026e4eba7 100644 --- a/usr/src/uts/intel/io/amr/amr.c +++ b/usr/src/uts/intel/io/amr/amr.c @@ -1,6 +1,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* * Copyright (c) 1999,2000 Michael Smith @@ -111,7 +112,6 @@ int amr_debug_var = 0; /* * driver interfaces */ -char _depends_on[] = "misc/scsi"; static uint_t amr_intr(caddr_t arg); static void amr_done(struct amr_softs *softs); diff --git a/usr/src/uts/intel/io/dktp/controller/ata/atapi.c b/usr/src/uts/intel/io/dktp/controller/ata/atapi.c index e98ba68ef1..92b2da6445 100644 --- a/usr/src/uts/intel/io/dktp/controller/ata/atapi.c +++ b/usr/src/uts/intel/io/dktp/controller/ata/atapi.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -60,11 +61,6 @@ static void atapi_complete(ata_drv_t *ata_drvp, ata_pkt_t *ata_pktp, static int atapi_id_update(ata_ctl_t *ata_ctlp, ata_drv_t *ata_drvp, ata_pkt_t *ata_pktp); - -/* external dependencies */ - -char _depends_on[] = "misc/scsi"; - /* * Local static data */ diff --git a/usr/src/uts/intel/io/intel_nb5000/intel_nbdrv.c b/usr/src/uts/intel/io/intel_nb5000/intel_nbdrv.c index 08c15857b5..ce4f8919be 100644 --- a/usr/src/uts/intel/io/intel_nb5000/intel_nbdrv.c +++ b/usr/src/uts/intel/io/intel_nb5000/intel_nbdrv.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/types.h> @@ -44,8 +45,6 @@ #include "nb_log.h" #include "nb5000.h" -char _depends_on[] = "drv/smbios"; - nvlist_t *inb_mc_nvl; krwlock_t inb_mc_lock; diff --git a/usr/src/uts/intel/kgssapi/Makefile b/usr/src/uts/intel/kgssapi/Makefile index cc9e3e8eb2..f9eed1a41e 100644 --- a/usr/src/uts/intel/kgssapi/Makefile +++ b/usr/src/uts/intel/kgssapi/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kgssapi kernel module. # @@ -56,6 +55,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_KGSS_DIR) # +# Define dependencies on rpcmod, rpcsec, and tlimod +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/rpcsec -N misc/tlimod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/kmech_dummy/Makefile b/usr/src/uts/intel/kmech_dummy/Makefile index 78354d4b91..417f32e2ad 100644 --- a/usr/src/uts/intel/kmech_dummy/Makefile +++ b/usr/src/uts/intel/kmech_dummy/Makefile @@ -24,8 +24,7 @@ # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kmech_dummy kernel module. # @@ -50,6 +49,11 @@ ROOTMODULE = $(ROOT_KGSS_DIR)/$(MODULE) include $(UTSBASE)/intel/Makefile.intel # +# Define dependency on kgssapi +# +LDFLAGS += -dy -N misc/kgssapi + +# # Define targets # ALL_TARGET = $(BINARY) diff --git a/usr/src/uts/intel/kmech_krb5/Makefile b/usr/src/uts/intel/kmech_krb5/Makefile index 984ab4d199..b1b63e5914 100644 --- a/usr/src/uts/intel/kmech_krb5/Makefile +++ b/usr/src/uts/intel/kmech_krb5/Makefile @@ -22,8 +22,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the gl_kmech_krb5 kernel module. @@ -56,6 +55,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Defined kgssapi and md5 as depdencies +# +LDFLAGS += -dy -N misc/kgssapi -N misc/md5 + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/md/Makefile b/usr/src/uts/intel/md/Makefile index 0605bdd41c..9c8fee7a19 100644 --- a/usr/src/uts/intel/md/Makefile +++ b/usr/src/uts/intel/md/Makefile @@ -22,8 +22,7 @@ # uts/intel/md/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md driver # @@ -72,6 +71,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) # +# Depends on rpcmod +# +LDFLAGS += -dy -N strmod/rpcmod + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_hotspares/Makefile b/usr/src/uts/intel/md_hotspares/Makefile index 5dd009774c..61aa35b74b 100644 --- a/usr/src/uts/intel/md_hotspares/Makefile +++ b/usr/src/uts/intel/md_hotspares/Makefile @@ -23,8 +23,7 @@ # uts/intel/md_hotspares/Makefile # Copyright (c) 1999, 2000 by Sun Microsystems, Inc. # All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. # # This makefile drives the production of the md_hotspares module # @@ -57,6 +56,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Depends on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_mirror/Makefile b/usr/src/uts/intel/md_mirror/Makefile index 0e51e4cff3..a07d5b91f5 100644 --- a/usr/src/uts/intel/md_mirror/Makefile +++ b/usr/src/uts/intel/md_mirror/Makefile @@ -21,8 +21,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md_mirror module # @@ -55,6 +54,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/md_notify/Makefile b/usr/src/uts/intel/md_notify/Makefile index 0a26648a4a..6fb1f8f9af 100644 --- a/usr/src/uts/intel/md_notify/Makefile +++ b/usr/src/uts/intel/md_notify/Makefile @@ -23,8 +23,7 @@ # uts/intel/md_notify/Makefile # Copyright (c) 1999, 2000 by Sun Microsystems, Inc. # All rights reserved. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the lvm notify module # @@ -57,6 +56,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Depends on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_raid/Makefile b/usr/src/uts/intel/md_raid/Makefile index e5d8062d1e..2a52496d9a 100644 --- a/usr/src/uts/intel/md_raid/Makefile +++ b/usr/src/uts/intel/md_raid/Makefile @@ -22,8 +22,7 @@ # uts/intel/md_raid/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md_raid module # @@ -68,6 +67,11 @@ LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_sp/Makefile b/usr/src/uts/intel/md_sp/Makefile index bf7e8076a0..cf349c711b 100644 --- a/usr/src/uts/intel/md_sp/Makefile +++ b/usr/src/uts/intel/md_sp/Makefile @@ -22,8 +22,7 @@ # uts/intel/md_sp/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md_sp module # @@ -65,6 +64,11 @@ LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW # +# Depends on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_stripe/Makefile b/usr/src/uts/intel/md_stripe/Makefile index 2bb32547fa..6c018bf3af 100644 --- a/usr/src/uts/intel/md_stripe/Makefile +++ b/usr/src/uts/intel/md_stripe/Makefile @@ -22,8 +22,7 @@ # uts/intel/md_stripe/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md_stripe module # @@ -68,6 +67,11 @@ LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/md_trans/Makefile b/usr/src/uts/intel/md_trans/Makefile index 143e93323a..8a6aeaa636 100644 --- a/usr/src/uts/intel/md_trans/Makefile +++ b/usr/src/uts/intel/md_trans/Makefile @@ -22,8 +22,7 @@ # uts/intel/md_trans/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the md_trans module # @@ -64,6 +63,11 @@ LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on md & ufs +# +LDFLAGS += -dy -N drv/md -N fs/ufs + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/nfs/Makefile b/usr/src/uts/intel/nfs/Makefile index c7e3db9953..28d6ba3a2b 100644 --- a/usr/src/uts/intel/nfs/Makefile +++ b/usr/src/uts/intel/nfs/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the nfs file system # kernel module. @@ -66,6 +65,11 @@ $(MODSTUBS_O) := AS_CPPFLAGS += -DNFS_MODULE CLEANFILES += $(MODSTUBS_O) # +# Define dependencies on specfs, rpcmod, and rpcsec +# +LDFLAGS += -dy -N fs/specfs -N strmod/rpcmod -N misc/rpcsec + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/pipe/Makefile b/usr/src/uts/intel/pipe/Makefile index 8364cad519..98020a0cb0 100644 --- a/usr/src/uts/intel/pipe/Makefile +++ b/usr/src/uts/intel/pipe/Makefile @@ -24,8 +24,7 @@ # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the pipe syscall module. # @@ -58,6 +57,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on fifofs +# +LDFLAGS += -dy -N fs/fifofs + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/ptsl/Makefile b/usr/src/uts/intel/ptsl/Makefile index 38714c775f..49506c0ea8 100644 --- a/usr/src/uts/intel/ptsl/Makefile +++ b/usr/src/uts/intel/ptsl/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ptsl driver # @@ -66,6 +65,11 @@ LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW # +# Depends on ptc +# +LDFLAGS += -dy -N drv/ptc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/rpcsec/Makefile b/usr/src/uts/intel/rpcsec/Makefile index b1f4114001..fde53d6aed 100644 --- a/usr/src/uts/intel/rpcsec/Makefile +++ b/usr/src/uts/intel/rpcsec/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kernel rpcsec module. # @@ -56,6 +55,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependencies on rpcmod and tlimod +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/tlimod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/rpcsec_gss/Makefile b/usr/src/uts/intel/rpcsec_gss/Makefile index 2f41d97154..7f34da31c9 100644 --- a/usr/src/uts/intel/rpcsec_gss/Makefile +++ b/usr/src/uts/intel/rpcsec_gss/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kernel rpcsec module. # @@ -56,6 +55,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on rpcmod and kgssapi +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/kgssapi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/intel/sd/Makefile b/usr/src/uts/intel/sd/Makefile index d15a46817f..067893854f 100644 --- a/usr/src/uts/intel/sd/Makefile +++ b/usr/src/uts/intel/sd/Makefile @@ -22,8 +22,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sd # kernel module. @@ -79,6 +78,11 @@ LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on scsi and cmlb +# +LDFLAGS += -dy -N misc/scsi -N misc/cmlb + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/ses/Makefile b/usr/src/uts/intel/ses/Makefile index 89cc5a426d..0e51fd521e 100644 --- a/usr/src/uts/intel/ses/Makefile +++ b/usr/src/uts/intel/ses/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ses (SCSI enclosure # services) driver kernel module. @@ -71,6 +70,11 @@ LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN # +# Depends on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/spppasyn/Makefile b/usr/src/uts/intel/spppasyn/Makefile index 51519da705..ecbd186207 100644 --- a/usr/src/uts/intel/spppasyn/Makefile +++ b/usr/src/uts/intel/spppasyn/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the spppasyn STREAMS # kernel module. @@ -76,6 +75,11 @@ LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW # +# Depends on sppp +# +LDFLAGS += -dy -N drv/sppp + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/spppcomp/Makefile b/usr/src/uts/intel/spppcomp/Makefile index 41cb9dc5e5..b97579b4aa 100644 --- a/usr/src/uts/intel/spppcomp/Makefile +++ b/usr/src/uts/intel/spppcomp/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the spppcomp STREAMS # kernel module. @@ -77,6 +76,11 @@ LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on sppp +# +LDFLAGS += -dy -N drv/sppp + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/st/Makefile b/usr/src/uts/intel/st/Makefile index 996bc01b09..e772736d09 100644 --- a/usr/src/uts/intel/st/Makefile +++ b/usr/src/uts/intel/st/Makefile @@ -22,8 +22,7 @@ # uts/intel/st/Makefile # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the st driver # kernel module. @@ -76,6 +75,11 @@ LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV # +# Depends on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/intel/udfs/Makefile b/usr/src/uts/intel/udfs/Makefile index 235ff96fd6..7f3baea29f 100644 --- a/usr/src/uts/intel/udfs/Makefile +++ b/usr/src/uts/intel/udfs/Makefile @@ -19,10 +19,9 @@ # CDDL HEADER END # # -#ident "%Z%%M% %I% %E% SMI" -# # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the udfs file system # kernel module. @@ -63,6 +62,11 @@ $(MODSTUBS_O) := AS_CPPFLAGS += -DUDFS_MODULE CLEANFILES += $(MODSTUBS_O) # +# Define dependency on specfs +# +LDFLAGS += -dy -N fs/specfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/IA/Makefile b/usr/src/uts/sparc/IA/Makefile index f206599438..c9fb876947 100644 --- a/usr/src/uts/sparc/IA/Makefile +++ b/usr/src/uts/sparc/IA/Makefile @@ -23,8 +23,7 @@ # uts/sparc/IA/Makefile # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the IA scheduling class # kernel module. @@ -63,6 +62,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on TS +# +LDFLAGS += -dy -N sched/TS + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/aoutexec/Makefile b/usr/src/uts/sparc/aoutexec/Makefile index ff374b7f23..cf30dcf77b 100644 --- a/usr/src/uts/sparc/aoutexec/Makefile +++ b/usr/src/uts/sparc/aoutexec/Makefile @@ -23,8 +23,7 @@ # uts/sparc/aoutexec/Makefile # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the aoutexec exec kernel # module (binary compatibility). @@ -63,6 +62,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on elfexec +# +LDFLAGS += -dy -N exec/elfexec + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/autofs/Makefile b/usr/src/uts/sparc/autofs/Makefile index 661b9ead06..1c3ad1c0fa 100644 --- a/usr/src/uts/sparc/autofs/Makefile +++ b/usr/src/uts/sparc/autofs/Makefile @@ -22,8 +22,7 @@ # uts/sparc/autofs/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the # autofs file system kernel module. @@ -63,6 +62,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) CFLAGS += $(CCVERBOSE) # +# Define dependencies on rpmod, rpcsec, and mntfs +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/rpcsec -N fs/mntfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/c2audit/Makefile b/usr/src/uts/sparc/c2audit/Makefile index 95a2df98bc..4b75b4db88 100644 --- a/usr/src/uts/sparc/c2audit/Makefile +++ b/usr/src/uts/sparc/c2audit/Makefile @@ -23,6 +23,7 @@ # # Copyright 2010 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the c2audit driver kernel module. # @@ -60,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on sockfs +# +LDFLAGS += -dy -N fs/sockfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/cachefs/Makefile b/usr/src/uts/sparc/cachefs/Makefile index 08568dc058..f584865505 100644 --- a/usr/src/uts/sparc/cachefs/Makefile +++ b/usr/src/uts/sparc/cachefs/Makefile @@ -22,8 +22,7 @@ # uts/sparc/cachefs/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the Cache file system # kernel module. @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on rpcmod +# +LDFLAGS += -dy -N strmod/rpcmod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/emlxs/Makefile b/usr/src/uts/sparc/emlxs/Makefile index 65ad0f11a7..351d9f934d 100644 --- a/usr/src/uts/sparc/emlxs/Makefile +++ b/usr/src/uts/sparc/emlxs/Makefile @@ -21,6 +21,7 @@ # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the emlxs driver kernel module. # @@ -74,7 +75,7 @@ INC_PATH += -I$(UTSBASE)/common/sys/fibre-channel/impl INC_PATH += -I$(UTSBASE)/common/sys/fibre-channel/ulp LDFLAGS += -dy -Nmisc/md5 -Nmisc/sha1 -LDFLAGS += -Nmisc/bignum +LDFLAGS += -Nmisc/bignum -Nmisc/fctl # # For now, disable these lint checks; maintainers should endeavor diff --git a/usr/src/uts/sparc/emul64/Makefile b/usr/src/uts/sparc/emul64/Makefile index b5945b8b90..cea352e91c 100644 --- a/usr/src/uts/sparc/emul64/Makefile +++ b/usr/src/uts/sparc/emul64/Makefile @@ -20,8 +20,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the emul64 kernel # driver to testing hotplugging operations @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/fas/Makefile b/usr/src/uts/sparc/fas/Makefile index b2fde302f7..06b5cc8e38 100644 --- a/usr/src/uts/sparc/fas/Makefile +++ b/usr/src/uts/sparc/fas/Makefile @@ -23,12 +23,11 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the fas driver kernel module. # # sparc architecture dependent -# -#ident "%Z%%M% %I% %E% SMI" # # Path to the base of the uts directory tree (usually /usr/src/uts). @@ -64,6 +63,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Defines dependency on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/fcode/Makefile b/usr/src/uts/sparc/fcode/Makefile index 09e5ad00c5..6077d2646a 100644 --- a/usr/src/uts/sparc/fcode/Makefile +++ b/usr/src/uts/sparc/fcode/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the fcode driver kernel module # @@ -76,6 +75,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fcodem +# +LDFLAGS += -dy -N misc/fcodem + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/fcpci/Makefile b/usr/src/uts/sparc/fcpci/Makefile index 5459084bf2..d491489be4 100644 --- a/usr/src/uts/sparc/fcpci/Makefile +++ b/usr/src/uts/sparc/fcpci/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the fcpci kernel misc module # @@ -74,6 +73,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fcodem and busra +# +LDFLAGS += -dy -N misc/fcodem -N misc/busra + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/hsfs/Makefile b/usr/src/uts/sparc/hsfs/Makefile index 8f6c85b3a2..7b3d8c6e79 100644 --- a/usr/src/uts/sparc/hsfs/Makefile +++ b/usr/src/uts/sparc/hsfs/Makefile @@ -22,8 +22,7 @@ # uts/sparc/hsfs/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the hsfs file system # kernel module. @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on specfs +# +LDFLAGS += -dy -N fs/specfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/kgssapi/Makefile b/usr/src/uts/sparc/kgssapi/Makefile index a54888afb1..ed0eed4bfb 100644 --- a/usr/src/uts/sparc/kgssapi/Makefile +++ b/usr/src/uts/sparc/kgssapi/Makefile @@ -21,8 +21,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kgssapi kernel module. # @@ -59,6 +58,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_KGSS_DIR) CFLAGS += $(CCVERBOSE) # +# Define dependencies on rpc, rpcsec, and tlimod +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/rpcsec -N misc/tlimod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/kmech_dummy/Makefile b/usr/src/uts/sparc/kmech_dummy/Makefile index d4c1cc59da..5741b4445d 100644 --- a/usr/src/uts/sparc/kmech_dummy/Makefile +++ b/usr/src/uts/sparc/kmech_dummy/Makefile @@ -22,8 +22,7 @@ # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kmech_dummy kernel module. # @@ -60,6 +59,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on kgssapi +# +LDFLAGS += -dy -N misc/kgssapi + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/kmech_krb5/Makefile b/usr/src/uts/sparc/kmech_krb5/Makefile index cbc8770096..ffaa3f2a94 100644 --- a/usr/src/uts/sparc/kmech_krb5/Makefile +++ b/usr/src/uts/sparc/kmech_krb5/Makefile @@ -22,8 +22,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the gl_kmech_krb5 kernel module. @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependencies on kgssapi and md5 +# +LDFLAGS += -dy -N misc/kgssapi -N crypto/md5 + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md/Makefile b/usr/src/uts/sparc/md/Makefile index d5ef775ebe..e5e32074e1 100644 --- a/usr/src/uts/sparc/md/Makefile +++ b/usr/src/uts/sparc/md/Makefile @@ -22,8 +22,7 @@ # uts/sparc/md/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's md driver module. # @@ -65,6 +64,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on rpcmod +# +LDFLAGS += -dy -N strmod/rpcmod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md_hotspares/Makefile b/usr/src/uts/sparc/md_hotspares/Makefile index 586a181b08..1f607f4e6a 100644 --- a/usr/src/uts/sparc/md_hotspares/Makefile +++ b/usr/src/uts/sparc/md_hotspares/Makefile @@ -23,8 +23,7 @@ # uts/sparc/md_hotspares/Makefile # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's hotspares misc module. # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/md_mirror/Makefile b/usr/src/uts/sparc/md_mirror/Makefile index cb007fee9e..57cc631696 100644 --- a/usr/src/uts/sparc/md_mirror/Makefile +++ b/usr/src/uts/sparc/md_mirror/Makefile @@ -22,8 +22,7 @@ # uts/sparc/md_mirror/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's mirror misc module. # @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md_notify/Makefile b/usr/src/uts/sparc/md_notify/Makefile index a4b095ea04..3d58c5da0b 100644 --- a/usr/src/uts/sparc/md_notify/Makefile +++ b/usr/src/uts/sparc/md_notify/Makefile @@ -23,8 +23,7 @@ # uts/sparc/notify/Makefile # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's notify misc module. # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/md_raid/Makefile b/usr/src/uts/sparc/md_raid/Makefile index 1665eeffcc..246808fe0b 100644 --- a/usr/src/uts/sparc/md_raid/Makefile +++ b/usr/src/uts/sparc/md_raid/Makefile @@ -22,8 +22,7 @@ # uts/sparc/raid/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's raid misc module. # @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md_sp/Makefile b/usr/src/uts/sparc/md_sp/Makefile index 3eab2a4781..4e3a8bef82 100644 --- a/usr/src/uts/sparc/md_sp/Makefile +++ b/usr/src/uts/sparc/md_sp/Makefile @@ -22,8 +22,7 @@ # uts/sparc/md_sp/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the soft partitioning module. # @@ -56,6 +55,11 @@ LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md_stripe/Makefile b/usr/src/uts/sparc/md_stripe/Makefile index 3a94d01447..b5ceaf8aa2 100644 --- a/usr/src/uts/sparc/md_stripe/Makefile +++ b/usr/src/uts/sparc/md_stripe/Makefile @@ -22,8 +22,7 @@ # uts/sparc/stripe/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's stripe misc module. # @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on md +# +LDFLAGS += -dy -N drv/md + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/md_trans/Makefile b/usr/src/uts/sparc/md_trans/Makefile index d0015c57ed..4f42b3cc68 100644 --- a/usr/src/uts/sparc/md_trans/Makefile +++ b/usr/src/uts/sparc/md_trans/Makefile @@ -22,8 +22,7 @@ # uts/sparc/md_trans/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the SLVM's trans misc module. # @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependencies on md and specfs +# +LDFLAGS += -dy -N drv/md -N fs/ufs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/nfs/Makefile b/usr/src/uts/sparc/nfs/Makefile index b6e45f1197..59443a2fdf 100644 --- a/usr/src/uts/sparc/nfs/Makefile +++ b/usr/src/uts/sparc/nfs/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the nfs file system # kernel module. @@ -67,6 +66,11 @@ CLEANFILES += $(MODSTUBS_O) CFLAGS += $(CCVERBOSE) # +# Define dependencies on specfs, rpcmod, and rpcsec +# +LDFLAGS += -dy -N fs/specfs -N strmod/rpcmod -N misc/rpcsec + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/pipe/Makefile b/usr/src/uts/sparc/pipe/Makefile index 4f005eb3a8..9db83bf5e7 100644 --- a/usr/src/uts/sparc/pipe/Makefile +++ b/usr/src/uts/sparc/pipe/Makefile @@ -23,8 +23,7 @@ # uts/sparc/pipe/Makefile # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the pipe system call module. # @@ -69,6 +68,11 @@ CLEANFILES += $(MODSTUBS_O) CFLAGS += $(CCVERBOSE) # +# Define dependency on fifofs +# +LDFLAGS += -dy -N fs/fifofs + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/ptsl/Makefile b/usr/src/uts/sparc/ptsl/Makefile index b59c1385db..7ee339ee9b 100644 --- a/usr/src/uts/sparc/ptsl/Makefile +++ b/usr/src/uts/sparc/ptsl/Makefile @@ -22,8 +22,7 @@ # uts/sparc/ptsl/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ptsl driver # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on ptc +# +LDFLAGS += -dy -N drv/ptc + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/rpcsec/Makefile b/usr/src/uts/sparc/rpcsec/Makefile index f07e244bf9..9b5bd81913 100644 --- a/usr/src/uts/sparc/rpcsec/Makefile +++ b/usr/src/uts/sparc/rpcsec/Makefile @@ -21,8 +21,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kernel rpcsec module. # @@ -59,6 +58,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependencies on rpcmod and tlimod +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/tlimod + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/rpcsec_gss/Makefile b/usr/src/uts/sparc/rpcsec_gss/Makefile index 4239c405f9..7bc39e9739 100644 --- a/usr/src/uts/sparc/rpcsec_gss/Makefile +++ b/usr/src/uts/sparc/rpcsec_gss/Makefile @@ -21,8 +21,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the kernel # rpcsec_gss module. @@ -60,6 +59,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependencies on rpcmod and kgssapi +# +LDFLAGS += -dy -N strmod/rpcmod -N misc/kgssapi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/sd/Makefile b/usr/src/uts/sparc/sd/Makefile index b734011655..b7d788d5d3 100644 --- a/usr/src/uts/sparc/sd/Makefile +++ b/usr/src/uts/sparc/sd/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sd driver kernel module. # @@ -66,6 +65,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependencies on scsi and cmlb +# +LDFLAGS += -dy -N misc/scsi -N misc/cmlb + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/ses/Makefile b/usr/src/uts/sparc/ses/Makefile index a65269d89b..76d1cd762c 100644 --- a/usr/src/uts/sparc/ses/Makefile +++ b/usr/src/uts/sparc/ses/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ses driver kernel module. # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CLEANFILES += $(WARLOCK_TARGETS) # +# Define dependency on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/spppasyn/Makefile b/usr/src/uts/sparc/spppasyn/Makefile index 0d519055ad..60acb99288 100644 --- a/usr/src/uts/sparc/spppasyn/Makefile +++ b/usr/src/uts/sparc/spppasyn/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the spppasyn STREAMS # kernel module. @@ -68,6 +67,11 @@ CPPFLAGS += -DINTERNAL_BUILD -DSOL2 INC_PATH += -I$(UTSBASE)/common/io/ppp/common CFLAGS += $(CCVERBOSE) +# +# Define dependency on sppp +# +LDFLAGS += -dy -N drv/sppp + CLEANLINTFILES += $(LINT64_FILES) # diff --git a/usr/src/uts/sparc/spppcomp/Makefile b/usr/src/uts/sparc/spppcomp/Makefile index 3f4a4d5cdb..9955b7f5a8 100644 --- a/usr/src/uts/sparc/spppcomp/Makefile +++ b/usr/src/uts/sparc/spppcomp/Makefile @@ -23,8 +23,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the spppcomp STREAMS # kernel module. @@ -68,6 +67,11 @@ CPPFLAGS += -DINTERNAL_BUILD -DSOL2 -DMUX_FRAME INC_PATH += -I$(UTSBASE)/common/io/ppp/common CFLAGS += $(CCVERBOSE) +# +# Define dependency on sppp +# +LDFLAGS += -dy -N drv/sppp + CLEANLINTFILES += $(LINT64_FILES) # diff --git a/usr/src/uts/sparc/ssd/Makefile b/usr/src/uts/sparc/ssd/Makefile index b9e44c0db5..524f11220e 100644 --- a/usr/src/uts/sparc/ssd/Makefile +++ b/usr/src/uts/sparc/ssd/Makefile @@ -23,8 +23,8 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # -#ident "%Z%%M% %I% %E% SMI" # # This makefile drives the production of the ssd driver kernel module. @@ -79,6 +79,12 @@ LINTTAGS += -erroff=E_STATIC_UNUSED LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON # +# Depends on scsi and cmlb +# fcp included for fibre support +# +LDFLAGS += -dy -N misc/scsi -N misc/cmlb -N drv/fcp + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sparc/st/Makefile b/usr/src/uts/sparc/st/Makefile index 3de91cd4d6..1b5bc60dfa 100644 --- a/usr/src/uts/sparc/st/Makefile +++ b/usr/src/uts/sparc/st/Makefile @@ -22,8 +22,7 @@ # # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the st driver kernel module. # @@ -65,6 +64,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sparc/udfs/Makefile b/usr/src/uts/sparc/udfs/Makefile index 984e69ba3a..8dec1e2f68 100644 --- a/usr/src/uts/sparc/udfs/Makefile +++ b/usr/src/uts/sparc/udfs/Makefile @@ -19,10 +19,9 @@ # CDDL HEADER END # # -# ident "%Z%%M% %I% %E% SMI" -# # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the udfs file system # kernel module. @@ -64,6 +63,11 @@ CLEANFILES += $(MODSTUBS_O) CFLAGS += $(CCVERBOSE) # +# Define dependency on specfs +# +LDFLAGS += -dy -N fs/specfs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sun/io/scsi/adapters/fas.c b/usr/src/uts/sun/io/scsi/adapters/fas.c index 06816a06ed..12e3aa3102 100644 --- a/usr/src/uts/sun/io/scsi/adapters/fas.c +++ b/usr/src/uts/sun/io/scsi/adapters/fas.c @@ -21,6 +21,7 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -382,8 +383,6 @@ static struct dev_ops fas_ops = { ddi_quiesce_not_supported, /* devo_quiesce */ }; -char _depends_on[] = "misc/scsi"; - static struct modldrv modldrv = { &mod_driverops, /* Type of module. This one is a driver */ "FAS SCSI HBA Driver", /* Name of the module. */ diff --git a/usr/src/uts/sun/io/scsi/adapters/sf.c b/usr/src/uts/sun/io/scsi/adapters/sf.c index 57e486d7cb..8bd12cd74e 100644 --- a/usr/src/uts/sun/io/scsi/adapters/sf.c +++ b/usr/src/uts/sun/io/scsi/adapters/sf.c @@ -21,6 +21,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -212,9 +213,6 @@ static struct dev_ops sf_ops = { ddi_quiesce_not_supported, /* devo_quiesce */ }; -/* to ensure this module gets loaded in memory when we do */ -char _depends_on[] = "misc/scsi"; - #define SF_NAME "FC-AL FCP Nexus Driver" /* Name of the module. */ static char sf_version[] = "1.72 08/19/2008"; /* version of the module */ diff --git a/usr/src/uts/sun/io/zs_hdlc.c b/usr/src/uts/sun/io/zs_hdlc.c index 99a41283af..229747ec03 100644 --- a/usr/src/uts/sun/io/zs_hdlc.c +++ b/usr/src/uts/sun/io/zs_hdlc.c @@ -21,6 +21,7 @@ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -135,9 +136,6 @@ int zsh_h_log_n[2]; } #endif - -char _depends_on[] = "drv/zs"; - #ifndef MAXZSH #define MAXZSH 2 #define MAXZSHCLONES (80) /* three clone opens per instance */ diff --git a/usr/src/uts/sun4/io/efcode/fcode.c b/usr/src/uts/sun4/io/efcode/fcode.c index 94059a56f5..8610697835 100644 --- a/usr/src/uts/sun4/io/efcode/fcode.c +++ b/usr/src/uts/sun4/io/efcode/fcode.c @@ -21,6 +21,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -128,10 +129,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "misc/fcodem"; -#endif - int _init(void) { diff --git a/usr/src/uts/sun4/io/efcode/fcpci.c b/usr/src/uts/sun4/io/efcode/fcpci.c index 85e3c6c746..cdebc156f3 100644 --- a/usr/src/uts/sun4/io/efcode/fcpci.c +++ b/usr/src/uts/sun4/io/efcode/fcpci.c @@ -22,6 +22,7 @@ /* * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -93,10 +94,6 @@ static ddi_dma_attr_t fcpci_dma_attr = { 0 /* DMA transfer flags */ }; -#ifndef lint -char _depends_on[] = "misc/fcodem misc/busra"; -#endif - #define HIADDR(n) ((uint32_t)(((uint64_t)(n) & 0xFFFFFFFF00000000)>> 32)) #define LOADDR(n)((uint32_t)((uint64_t)(n) & 0x00000000FFFFFFFF)) #define LADDR(lo, hi) (((uint64_t)(hi) << 32) | (uint32_t)(lo)) diff --git a/usr/src/uts/sun4u/cpr/Makefile b/usr/src/uts/sun4u/cpr/Makefile index a0389c669d..89f17571e7 100644 --- a/usr/src/uts/sun4u/cpr/Makefile +++ b/usr/src/uts/sun4u/cpr/Makefile @@ -22,8 +22,7 @@ # uts/sun4u/cpr/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the cpr misc kernel module. # @@ -76,6 +75,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Depends on bootdev +# +LDFLAGS += -dy -N misc/bootdev + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sun4u/montecarlo/io/pcf8574_nct.c b/usr/src/uts/sun4u/montecarlo/io/pcf8574_nct.c index 7e55a79b10..409d50a8d8 100644 --- a/usr/src/uts/sun4u/montecarlo/io/pcf8574_nct.c +++ b/usr/src/uts/sun4u/montecarlo/io/pcf8574_nct.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/param.h> @@ -178,8 +179,6 @@ static struct modlinkage pcf8574_modlinkage = { 0 }; -/* char _depends_on[] = "misc/i2c_svc drv/scsb"; */ - int _init(void) { diff --git a/usr/src/uts/sun4u/montecarlo/io/pcf8591_nct.c b/usr/src/uts/sun4u/montecarlo/io/pcf8591_nct.c index 75b3b78924..2ec1b326ab 100644 --- a/usr/src/uts/sun4u/montecarlo/io/pcf8591_nct.c +++ b/usr/src/uts/sun4u/montecarlo/io/pcf8591_nct.c @@ -21,6 +21,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ /* @@ -168,8 +169,6 @@ static struct modlinkage pcf8591_modlinkage = { 0 }; -char _depends_on[] = "misc/i2c_svc"; - int pcf8591_debug = 0x02; static uint8_t translate_cputemp(uint8_t value); diff --git a/usr/src/uts/sun4u/sf/Makefile b/usr/src/uts/sun4u/sf/Makefile index b60b37657a..0fa186b7fa 100644 --- a/usr/src/uts/sun4u/sf/Makefile +++ b/usr/src/uts/sun4u/sf/Makefile @@ -23,8 +23,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sf driver kernel module. # @@ -64,6 +63,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on scsi +# +LDFLAGS += -dy -N misc/scsi + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. diff --git a/usr/src/uts/sun4u/starfire/cvcredir/Makefile b/usr/src/uts/sun4u/starfire/cvcredir/Makefile index 7604cb170b..6725d33bef 100644 --- a/usr/src/uts/sun4u/starfire/cvcredir/Makefile +++ b/usr/src/uts/sun4u/starfire/cvcredir/Makefile @@ -20,10 +20,9 @@ # CDDL HEADER END # # -# ident "%Z%%M% %I% %E% SMI" -# # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the cvcredir driver module. # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Define dependency on cvc +# +LDFLAGS += -dy -N drv/cvc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/starfire/cvcredir/cvcredir.c b/usr/src/uts/sun4u/starfire/cvcredir/cvcredir.c index 7a823e92f6..05e9784933 100644 --- a/usr/src/uts/sun4u/starfire/cvcredir/cvcredir.c +++ b/usr/src/uts/sun4u/starfire/cvcredir/cvcredir.c @@ -21,6 +21,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -107,8 +108,6 @@ DDI_DEFINE_STREAM_OPS(cvcrops, nulldev, nulldev, cvcr_attach, cvcr_detach, nodev, cvcr_info, (D_MTPERQ | D_MP), &cvcrinfo, ddi_quiesce_not_supported); -char _depends_on[] = "drv/cvc"; - static struct modldrv modldrv = { &mod_driverops, /* Type of module. This one is a pseudo driver */ "CVC redirect driver 'cvcredir'", diff --git a/usr/src/uts/sun4u/starfire/io/drmach.c b/usr/src/uts/sun4u/starfire/io/drmach.c index 2bb0524d65..a4aab68a2b 100644 --- a/usr/src/uts/sun4u/starfire/io/drmach.c +++ b/usr/src/uts/sun4u/starfire/io/drmach.c @@ -22,6 +22,7 @@ /* * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ #include <sys/debug.h> @@ -295,14 +296,6 @@ static struct { #define MBYTE (1048576ull) /* - * This is necessary because the CPU support needs - * to call cvc_assign_iocpu. - */ -#ifndef lint -char _depends_on[] = "drv/cvc"; -#endif /* lint */ - -/* * drmach autoconfiguration data structures and interfaces */ diff --git a/usr/src/uts/sun4u/starfire/ngdrmach/Makefile b/usr/src/uts/sun4u/starfire/ngdrmach/Makefile index 9bfcfec543..8ad6a1b342 100644 --- a/usr/src/uts/sun4u/starfire/ngdrmach/Makefile +++ b/usr/src/uts/sun4u/starfire/ngdrmach/Makefile @@ -22,8 +22,7 @@ # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ngdrmach loadable module. # @@ -61,6 +60,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) CFLAGS += $(CCVERBOSE) # +# Define dependency on cvc +# +LDFLAGS += -dy -N drv/cvc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/sunfire/ac/Makefile b/usr/src/uts/sun4u/sunfire/ac/Makefile index 3201c46ef4..ca2e2cb4d6 100644 --- a/usr/src/uts/sun4u/sunfire/ac/Makefile +++ b/usr/src/uts/sun4u/sunfire/ac/Makefile @@ -22,8 +22,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the ac driver kernel module. # @@ -66,6 +65,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fhc +# +LDFLAGS += -dy -N drv/fhc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/sunfire/environ/Makefile b/usr/src/uts/sun4u/sunfire/environ/Makefile index 33d361c1cf..c3cf7a0f0f 100644 --- a/usr/src/uts/sun4u/sunfire/environ/Makefile +++ b/usr/src/uts/sun4u/sunfire/environ/Makefile @@ -22,8 +22,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the environ driver kernel # module. @@ -67,6 +66,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fhc +# +LDFLAGS += -dy -N drv/fhc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/sunfire/io/ac.c b/usr/src/uts/sun4u/sunfire/io/ac.c index 621890b640..c19cad9264 100644 --- a/usr/src/uts/sun4u/sunfire/io/ac.c +++ b/usr/src/uts/sun4u/sunfire/io/ac.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -173,10 +174,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "drv/fhc"; -#endif /* lint */ - /* * These are the module initialization routines. */ diff --git a/usr/src/uts/sun4u/sunfire/io/environ.c b/usr/src/uts/sun4u/sunfire/io/environ.c index 19bf15e75c..4b27fa088e 100644 --- a/usr/src/uts/sun4u/sunfire/io/environ.c +++ b/usr/src/uts/sun4u/sunfire/io/environ.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -139,10 +140,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "drv/fhc"; -#endif /* lint */ - /* * These are the module initialization routines. */ diff --git a/usr/src/uts/sun4u/sunfire/io/simmstat.c b/usr/src/uts/sun4u/sunfire/io/simmstat.c index 6637f5e9f7..2fe1d3c6c7 100644 --- a/usr/src/uts/sun4u/sunfire/io/simmstat.c +++ b/usr/src/uts/sun4u/sunfire/io/simmstat.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -121,10 +122,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "drv/fhc"; -#endif /* lint */ - /* * These are the module initialization routines. */ diff --git a/usr/src/uts/sun4u/sunfire/io/sram.c b/usr/src/uts/sun4u/sunfire/io/sram.c index a07f5e600c..426c8b8cd1 100644 --- a/usr/src/uts/sun4u/sunfire/io/sram.c +++ b/usr/src/uts/sun4u/sunfire/io/sram.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -117,10 +118,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "drv/fhc"; -#endif /* lint */ - /* * These are the module initialization routines. */ diff --git a/usr/src/uts/sun4u/sunfire/io/sysctrl.c b/usr/src/uts/sun4u/sunfire/io/sysctrl.c index df45a0e0d5..206829b2a2 100644 --- a/usr/src/uts/sun4u/sunfire/io/sysctrl.c +++ b/usr/src/uts/sun4u/sunfire/io/sysctrl.c @@ -22,6 +22,7 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright (c) 2011 Bayard G. Bell. All rights reserved. */ @@ -326,10 +327,6 @@ static struct modlinkage modlinkage = { NULL }; -#ifndef lint -char _depends_on[] = "drv/fhc"; -#endif /* lint */ - /* * These are the module initialization routines. */ diff --git a/usr/src/uts/sun4u/sunfire/simmstat/Makefile b/usr/src/uts/sun4u/sunfire/simmstat/Makefile index 0d18c647fc..e893eed9a9 100644 --- a/usr/src/uts/sun4u/sunfire/simmstat/Makefile +++ b/usr/src/uts/sun4u/sunfire/simmstat/Makefile @@ -22,8 +22,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the simmstat driver kernel # module. @@ -67,6 +66,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fhc +# +LDFLAGS += -dy -N drv/fhc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/sunfire/sram/Makefile b/usr/src/uts/sun4u/sunfire/sram/Makefile index 2c9ded11b6..2b27795593 100644 --- a/usr/src/uts/sun4u/sunfire/sram/Makefile +++ b/usr/src/uts/sun4u/sunfire/sram/Makefile @@ -22,8 +22,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sram driver kernel module. # @@ -66,6 +65,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fhc +# +LDFLAGS += -dy -N drv/fhc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/sunfire/sysctrl/Makefile b/usr/src/uts/sun4u/sunfire/sysctrl/Makefile index 4f2ff2f3e9..e89213b440 100644 --- a/usr/src/uts/sun4u/sunfire/sysctrl/Makefile +++ b/usr/src/uts/sun4u/sunfire/sysctrl/Makefile @@ -22,8 +22,7 @@ # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sysctrl driver # kernel module. @@ -67,6 +66,11 @@ CFLAGS += $(CCVERBOSE) CFLAGS += -dalign # +# Define dependency on fhc +# +LDFLAGS += -dy -N drv/fhc + +# # Default build targets. # .KEEP_STATE: diff --git a/usr/src/uts/sun4u/zsh/Makefile b/usr/src/uts/sun4u/zsh/Makefile index 0a196d3c1d..d48b7080ba 100644 --- a/usr/src/uts/sun4u/zsh/Makefile +++ b/usr/src/uts/sun4u/zsh/Makefile @@ -22,8 +22,7 @@ # uts/sun4u/zsh/Makefile # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2011 Bayard G. Bell. All rights reserved. # # This makefile drives the production of the sun4u "zsh" driver module. # @@ -62,6 +61,11 @@ INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) CFLAGS += $(CCVERBOSE) # +# Defined dependency on zs +# +LDFLAGS += -dy -N drv/zs + +# # For now, disable these lint checks; maintainers should endeavor # to investigate and remove these for maximum lint coverage. # Please do not carry these forward to new Makefiles. |