From 5a42e3e556d06d8ef1392615b80bc16c0de960e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Tue, 1 Jun 2004 09:30:19 +0000 Subject: [PATCH] Added Gnu termcap 1.3.1 git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7722 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/libs/Jamfile | 1 + src/libs/termcap/COPYING | 340 + src/libs/termcap/ChangeLog | 180 + src/libs/termcap/INSTALL | 183 + src/libs/termcap/Jamfile | 14 + src/libs/termcap/Makefile.in | 138 + src/libs/termcap/NEWS | 25 + src/libs/termcap/README | 34 + src/libs/termcap/configure | 998 ++ src/libs/termcap/configure.in | 23 + src/libs/termcap/install-sh | 238 + src/libs/termcap/mkinstalldirs | 32 + src/libs/termcap/termcap.c | 813 + src/libs/termcap/termcap.h | 62 + src/libs/termcap/termcap.info | 80 + src/libs/termcap/termcap.info-1 | 1114 ++ src/libs/termcap/termcap.info-2 | 974 + src/libs/termcap/termcap.info-3 | 1480 ++ src/libs/termcap/termcap.info-4 | 220 + src/libs/termcap/termcap.src | 28787 ++++++++++++++++++++++++++++++ src/libs/termcap/termcap.texi | 3618 ++++ src/libs/termcap/texinfo.tex | 5992 +++++++ src/libs/termcap/tparam.c | 332 + src/libs/termcap/version.c | 2 + 24 files changed, 45680 insertions(+) create mode 100644 src/libs/termcap/COPYING create mode 100644 src/libs/termcap/ChangeLog create mode 100644 src/libs/termcap/INSTALL create mode 100644 src/libs/termcap/Jamfile create mode 100644 src/libs/termcap/Makefile.in create mode 100644 src/libs/termcap/NEWS create mode 100644 src/libs/termcap/README create mode 100644 src/libs/termcap/configure create mode 100644 src/libs/termcap/configure.in create mode 100644 src/libs/termcap/install-sh create mode 100644 src/libs/termcap/mkinstalldirs create mode 100644 src/libs/termcap/termcap.c create mode 100644 src/libs/termcap/termcap.h create mode 100644 src/libs/termcap/termcap.info create mode 100644 src/libs/termcap/termcap.info-1 create mode 100644 src/libs/termcap/termcap.info-2 create mode 100644 src/libs/termcap/termcap.info-3 create mode 100644 src/libs/termcap/termcap.info-4 create mode 100644 src/libs/termcap/termcap.src create mode 100644 src/libs/termcap/termcap.texi create mode 100644 src/libs/termcap/texinfo.tex create mode 100644 src/libs/termcap/tparam.c create mode 100644 src/libs/termcap/version.c diff --git a/src/libs/Jamfile b/src/libs/Jamfile index 7178f85b24..69e0a960c8 100644 --- a/src/libs/Jamfile +++ b/src/libs/Jamfile @@ -3,3 +3,4 @@ SubDir OBOS_TOP src libs ; SubInclude OBOS_TOP src libs freetype2 ; SubInclude OBOS_TOP src libs zlib ; SubInclude OBOS_TOP src libs png ; +SubInclude OBOS_TOP src libs termcap ; diff --git a/src/libs/termcap/COPYING b/src/libs/termcap/COPYING new file mode 100644 index 0000000000..d60c31a97a --- /dev/null +++ b/src/libs/termcap/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/src/libs/termcap/ChangeLog b/src/libs/termcap/ChangeLog new file mode 100644 index 0000000000..335a2f7ee9 --- /dev/null +++ b/src/libs/termcap/ChangeLog @@ -0,0 +1,180 @@ +2002-02-25 Gary Wong + + * version.c: Version 1.3.1. + + * configure.in: Update obselete macros. + + * termcap.src: Regenerated from version 11.0.1 master file. + + * tparam.c [!emacs]: Move #define of bcopy to after + #include . Reported by Oleg Kornilov and Iyer Viswanathan. + + * termcap.c [!emacs]: Replace ospeed for building standalone + libtermcap, for binary compatibility. + +2001-05-28 Gerd Moellmann + + * termcap.c (speeds): Put in #if 0. + +2000-12-08 Gerd Moellmann + + * tparam.c (tparam1): Change the way buffers are reallocated to be + portable and less obfuscated. + + * termcap.c (tgetent): Change the way buffers are reallocated to + be portable and less obfuscated. + +2000-11-19 Gerd Moellmann + + * termcap.c (ospeed): Remove. + (tputs) [!emacs]: Remove unused code. + (tgetent): Avoid a compiler warning. + +2000-06-20 Dave Love + + * tparam.c [emacs]: Include lisp.h. + + * termcap.c [emacs]: Test HAVE_FCNTL_H, not USG5. Include lisp.h + and unistd.h. + +2000-04-13 Gerd Moellmann + + * tparam.c (tparam1): Abort when encountering an unknown `%'-specifier. + +Wed Aug 16 20:45:44 1995 David J. MacKenzie + + * version.c: Version 1.3. + + * termcap.c (tgetent): Use the user-supplied buffer even if we + don't find a matching terminal, so the program can set the buffer + if they want (`less' does this). From Bob Pegram + . + +Wed Jul 26 11:44:51 1995 David J. MacKenzie + + * termcap.c: TERMCAP_NAME -> TERMCAP_FILE. + + * configure.in: Add --enable-install-termcap and --with-termcap + options. + + * Makefile.in: Add hooks for new configure options. + + * Makefile.in (DISTFILES): Add termcap.src. + (DEFS): Remove -DNO_ARG_ARRAY. + (install-data, uninstall-data): New targets. + + * tparam.c (tparam): Remove arg array version and the #ifdef. + + * termcap.c: Move #define of bcopy to after #include . + + * termcap.h: Prototype the arg to the tputs outfun arg. + + * Makefile.in: realclean -> maintainer-clean. Use @prefix@ and + @exec_prefix@. + + * Makefile.in (DISTFILES): Add install-sh. + +Fri Apr 7 14:57:45 1995 Richard Stallman + + * termcap.c (tgetent): Don't try to return the allocated address. + Always return 1 if successful. + +Tue Feb 14 02:34:43 1995 Richard Stallman + + * termcap.c (speeds): Make it ints. Add some higher speeds. + (tputs) [emacs]: If speed is high, convert to smaller units. + (tputs): Really use SPEED to calculate PADCOUNT. + +Sat Dec 17 07:20:24 1994 Richard Stallman + + * termcap.c (tgetst1): Let ^? stand for DEL character. + +Thu Jun 30 04:35:50 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in: Use AC_HAVE_HEADERS instead of AC_UNISTD_H. + Add AC_PROG_RANLIB. + * Makefile.in (AR, RANLIB): New variables. + (install, libtermcap.a): Use them instead of hard-wired commands. + +Sat Jun 4 12:21:41 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * termcap.c [HAVE_CONFIG_H]: Include , and include + #ifdef USG5, so we get O_* defns. + +Wed May 25 19:05:30 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * termcap.c (O_RDONLY): Define to 0 if not already defined. + (tgetent): Use O_RDONLY instead of explicit 0 in call to open. + +Wed Jan 5 22:20:15 1993 Morten Welinder (terra@diku.dk) + + * termcap.c (tgetent) [INTERNAL_TERMINAL]: Fake internal terminal + without reading any files. + (valid_file_name, tgetent) [MSDOS]: Drive letter support. + (tgetent) [MSDOS]: Use text mode for database. + +Fri Dec 17 00:22:43 1993 Mike Long (mike.long@analog.com) + + * termcap.c (tgetent): Replaced literal filenames for termcap + database with preprocessor symbol TERMCAP_NAME. + (TERMCAP_NAME): Define if not defined. + +Fri Sep 10 00:35:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile.in (.c.o): Put -I. before -I$(srcdir). + * termcap.c: Include instead of "config.h". + * tparam.c: Likewise. + +Thu Jul 29 20:53:30 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) + + * Makefile.in (config.status): Run config.status --recheck, not + configure, to get the right args passed. + +Thu Apr 15 12:45:10 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) + + * Version 1.2. + + * tparam.c [!emacs] (xmalloc, xrealloc, memory_out): New functions. + (tparam1): Use them. + + * termcap.c, tparam.c: Use NULL or '\0' where appropriate + instead of 0. Rename some vars. + * termcap.c (tgetent): If EOF is reached on termcap file, + free allocated resources before returning. + + * termcap.c (tgetent): Use /etc/termcap if TERMCAP is an entry + for a term type other than TERM. + From pjr@jet.UK (Paul J Rippin). + +Sat Apr 10 23:55:12 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * tparam.c (tparam1): Don't set the 0200 bit on a non-0 character code. + From junio@twinsun.COM (Junio Hamano). + +Tue Dec 8 22:02:15 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) + + * termcap.c, tparam.c: Use HAVE_STRING_H instead of USG. + +Thu Dec 3 13:47:56 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * termcap.c, tparam.c [HAVE_CONFIG_H]: Include config.h. + +Fri Oct 23 12:35:29 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * termcap.h [__STDC__]: Add consts. From Franc,ois Pinard. + +Tue Oct 13 15:52:21 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * Version 1.1. + +Tue Sep 29 21:04:39 1992 David J. MacKenzie (djm@geech.gnu.ai.mit.edu) + + * termcap.[ch], tparam.c: Fix some lint. + + * version.c: New file. + +Local Variables: +mode: indented-text +left-margin: 8 +version-control: never +End: diff --git a/src/libs/termcap/INSTALL b/src/libs/termcap/INSTALL new file mode 100644 index 0000000000..50dbe439d0 --- /dev/null +++ b/src/libs/termcap/INSTALL @@ -0,0 +1,183 @@ +Basic Installation +================== + + These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' if you want to change +it or regenerate `configure' using a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not supports the `VPATH' +variable, you have to compile the package for one architecture at a time +in the source code directory. After you have installed the package for +one architecture, use `make distclean' before reconfiguring for another +architecture. + +Installation Names +================== + + By default, `make install' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=PATH' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + + Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + + There may be some features `configure' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +Sharing Defaults +================ + + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/src/libs/termcap/Jamfile b/src/libs/termcap/Jamfile new file mode 100644 index 0000000000..049753e4ff --- /dev/null +++ b/src/libs/termcap/Jamfile @@ -0,0 +1,14 @@ +SubDir OBOS_TOP src libs termcap ; + +# set some additional defines +{ + SubDirCcFlags -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DTERMCAP_FILE=\'\"/etc/termcap\"\' ; +} + +StaticLibrary termcap : + termcap.c tparam.c version.c + : STATIC_LIBRARY_DIR +; + +MakeLocate termcap : $(OBOS_ETC_DIR) ; +File termcap : termcap.src ; diff --git a/src/libs/termcap/Makefile.in b/src/libs/termcap/Makefile.in new file mode 100644 index 0000000000..66e5d02f5f --- /dev/null +++ b/src/libs/termcap/Makefile.in @@ -0,0 +1,138 @@ +# Makefile for GNU termcap library. +# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +#### Start of system configuration section. #### + +srcdir = @srcdir@ +VPATH = @srcdir@ + +CC = @CC@ +AR = ar +RANLIB = @RANLIB@ + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +MAKEINFO = makeinfo + +DEFS = @DEFS@ -DTERMCAP_FILE=\"$(termcapfile)\" + +CFLAGS = -g + +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +# Directory in which to install libtermcap.a. +libdir = $(exec_prefix)/lib + +# Directory in which to install termcap.h. +includedir = $(prefix)/include + +# Directory in which to optionally also install termcap.h, +# so compilers besides gcc can find it by default. +# If it is empty or not defined, termcap.h will only be installed in +# includedir. +oldincludedir = /usr/include + +# Directory in which to install the documentation info files. +infodir = $(prefix)/info + +# File to which `install-data' should install the data file +# if --enable-install-termcap was given. +termcapfile = @termcapfile@ + +#### End of system configuration section. #### + +SHELL = /bin/sh + +SRCS = termcap.c tparam.c version.c +OBJS = termcap.o tparam.o version.o +HDRS = termcap.h +DISTFILES = $(SRCS) $(HDRS) ChangeLog COPYING README INSTALL NEWS \ +termcap.src termcap.texi termcap.info* \ +texinfo.tex Makefile.in configure configure.in mkinstalldirs install-sh + +all: libtermcap.a info + +.c.o: + $(CC) -c $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) $(CFLAGS) $< + +install: all installdirs @installdata@ + $(INSTALL_DATA) libtermcap.a $(libdir)/libtermcap.a + -$(RANLIB) $(libdir)/libtermcap.a + cd $(srcdir); $(INSTALL_DATA) termcap.h $(includedir)/termcap.h + -cd $(srcdir); test -z "$(oldincludedir)" || \ + $(INSTALL_DATA) termcap.h $(oldincludedir)/termcap.h + cd $(srcdir); for f in termcap.info*; \ + do $(INSTALL_DATA) $$f $(infodir)/$$f; done + +uninstall: @uninstalldata@ + rm -f $(libdir)/libtermcap.a $(includedir)/termcap.h + test -z "$(oldincludedir)" || rm -f $(oldincludedir)/termcap.h + rm -f $(infodir)/termcap.info* + +# These are separate targets to avoid trashing the user's existing +# termcap file unexpectedly. +install-data: + $(INSTALL_DATA) ${srcdir}/termcap.src ${termcapfile} + +uninstall-data: + rm -f ${termcapfile} + +installdirs: + $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(libdir) \ + $(includedir) $(infodir) + +Makefile: Makefile.in config.status + $(SHELL) config.status +config.status: configure + $(SHELL) config.status --recheck +configure: configure.in + cd $(srcdir) && autoconf + +libtermcap.a: $(OBJS) + $(AR) rc $@ $(OBJS) + -$(RANLIB) $@ + +info: termcap.info + +termcap.info: termcap.texi + $(MAKEINFO) $(srcdir)/termcap.texi --output=$@ + +TAGS: $(SRCS) + etags $(SRCS) + +clean: + rm -f *.a *.o core + +mostlyclean: clean + +distclean: clean + rm -f Makefile config.status config.cache config.log + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "rebuilding the deleted files requires makeinfo." + rm -f TAGS *.info* + +dist: $(DISTFILES) + echo termcap-`sed -e '/version_string/!d' -e 's/[^0-9]*\([0-9a-z.]*\).*/\1/' -e q version.c` > .fname + rm -rf `cat .fname` + mkdir `cat .fname` + ln $(DISTFILES) `cat .fname` + tar chzf `cat .fname`.tar.gz `cat .fname` + rm -rf `cat .fname` .fname diff --git a/src/libs/termcap/NEWS b/src/libs/termcap/NEWS new file mode 100644 index 0000000000..5116dd7d6f --- /dev/null +++ b/src/libs/termcap/NEWS @@ -0,0 +1,25 @@ +Major changes in release 1.3.1: + +Termcap data file updated. +Bug fixes and portability changes. + +Major changes in release 1.3: + +Termcap data file is now included in distribution and may optionally + be installed, or used in a non-default location. +Support for a fake internal terminal (no external files). +Higher tty speeds supported. +Portability tweaks. + +Major changes in release 1.2: + +For `%.', only set the high bit on NUL. +Fix a file descriptor and memory leak. +Add const in termcap.h prototypes. +Configuration improvements. + +Major changes in release 1.1: + +Fix portability problems. +Improve configuration and installation. +Fix compiler warnings. diff --git a/src/libs/termcap/README b/src/libs/termcap/README new file mode 100644 index 0000000000..ba1a19c93d --- /dev/null +++ b/src/libs/termcap/README @@ -0,0 +1,34 @@ +This is the GNU termcap library -- a library of C functions that +enable programs to send control strings to terminals in a way +independent of the terminal type. The GNU termcap library does not +place an arbitrary limit on the size of termcap entries, unlike most +other termcap libraries. + +Most of this package is also distributed with GNU Emacs, but it is +available in this separate distribution to make it easier to install +as -ltermcap. However, use of termcap is discouraged. Termcap is +being phased out in favor of the terminfo-based ncurses library, which +contains an emulation of the termcap library routines in addition to +an excellent curses implementation. ncurses is available from the +usual GNU archive sites. + +See the file INSTALL for compilation and installation instructions. +Additionally: + +This package contains termcap.src, the latest official termcap data +file. By default, it is not installed. The current version contains +some entries that are more than 1023 bytes long, which is the largest +value that is safe to use with the many historical applications that +only allocate a 1024 byte termcap buffer (telnet, for example). If +you make sure that all of your programs allocate buffers of at least +2500 bytes, or let the termcap library do it by passing a NULL +pointer, then it is safe to install the new termcap file, as described +below. + +You can give configure two special options: + --enable-install-termcap install the termcap data file + --with-termcap=FILE use data file FILE instead of /etc/termcap + +Please report any bugs in this library to bug-gnu-emacs@prep.ai.mit.edu. +You can check which version of the library you have by using the RCS +`ident' command on libtermcap.a. diff --git a/src/libs/termcap/configure b/src/libs/termcap/configure new file mode 100644 index 0000000000..8a885fa5b4 --- /dev/null +++ b/src/libs/termcap/configure @@ -0,0 +1,998 @@ +#! /bin/sh + +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.4 +# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: +ac_help="$ac_help + --enable-install-termcap install the termcap data file" +ac_help="$ac_help + --with-termcap=FILE use data file FILE instead of /etc/termcap" + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE + +# Initialize some other variables. +subdirs= + +ac_prev= +for ac_option +do + + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval "$ac_prev=\$ac_option" + ac_prev= + continue + fi + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case "$ac_option" in + + -build | --build | --buil | --bui | --bu | --b) + ac_prev=build ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*) + build="$ac_optarg" ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "enable_${ac_feature}='$ac_optarg'" ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix="$ac_optarg" ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he) + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=PREFIX install architecture-dependent files in PREFIX + [same as prefix] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +--enable and --with options recognized:$ac_help +EOF + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$ac_optarg" ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix="$ac_optarg" ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix="$ac_optarg" ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix="$ac_optarg" ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name="$ac_optarg" ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site="$ac_optarg" ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir="$ac_optarg" ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.4" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + eval "with_${ac_package}=no" ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes="$ac_optarg" ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries="$ac_optarg" ;; + + -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 6 checking for... messages and results +# 5 compiler messages saved in config.log +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>./config.log + +echo "\ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. +" 1>&5 + +# Strip out --no-create and --no-recursion so they do not pile up. +# Also quote any args containing shell metacharacters. +ac_configure_args= +for ac_arg +do + case "$ac_arg" in + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) ;; + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) ac_configure_args="$ac_configure_args $ac_arg" ;; + esac +done + +# NLS nuisances. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +if test "${LANG+set}" = set; then LANG=C; export LANG; fi + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo > confdefs.h + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=termcap.h + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then its parent. + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + srcdir=$ac_confdir + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r $srcdir/$ac_unique_file; then + if test "$ac_srcdir_defaulted" = yes; then + { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# Prefer explicitly selected file to automatically selected ones. +if test -z "$CONFIG_SITE"; then + if test "x$prefix" != xNONE; then + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" + else + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" + fi +fi +for ac_site_file in $CONFIG_SITE; do + if test -r "$ac_site_file"; then + echo "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5 2>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5 2>&5' + +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + + +# Check whether --enable-install-termcap or --disable-install-termcap was given. +enableval="$enable_install_termcap" +if test -n "$enableval"; then + if test $enableval = yes; then + installdata=install-data uninstalldata=uninstall-data + fi +fi + + +# Check whether --with-termcap or --without-termcap was given. +withval="$with_termcap" +if test -n "$withval"; then + termcapfile=$withval +else + termcapfile=/etc/termcap +fi + + +# Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_CC" && ac_cv_prog_CC="cc" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <&5 | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 +if test $ac_cv_prog_gcc = yes; then + GCC=yes + if test "${CFLAGS+set}" != set; then + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_prog_gcc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_gcc_g=yes +else + ac_cv_prog_gcc_g=no +fi +rm -f conftest* + +fi + echo "$ac_t""$ac_cv_prog_gcc_g" 1>&6 + if test $ac_cv_prog_gcc_g = yes; then + CFLAGS="-g -O" + else + CFLAGS="-O" + fi + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + +# Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +ac_aux_dir= +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + for ac_prog in ginstall installbsd scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + # OSF/1 installbsd also uses dspmsg, but is usable. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_ifs" + # As a last resort, use the slow shell script. + test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh" +fi + INSTALL="$ac_cv_path_install" +fi +echo "$ac_t""$INSTALL" 1>&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # This must be in double quotes, not single quotes, because CPP may get + # substituted into the Makefile and "${CC-cc}" will confuse make. + CPP="${CC-cc} -E" + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext < +Syntax Error +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext < +Syntax Error +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + rm -rf conftest* + CPP=/lib/cpp +fi +rm -f conftest* +fi +rm -f conftest* + ac_cv_prog_CPP="$CPP" +fi + CPP="$ac_cv_prog_CPP" +else + ac_cv_prog_CPP="$CPP" +fi +echo "$ac_t""$CPP" 1>&6 + +for ac_hdr in string.h unistd.h +do +ac_safe=`echo "$ac_hdr" | tr './\055' '___'` +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + rm -rf conftest* + eval "ac_cv_header_$ac_safe=yes" +else + echo "$ac_err" >&5 + rm -rf conftest* + eval "ac_cv_header_$ac_safe=no" +fi +rm -f conftest* +fi +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_hdr=HAVE_`echo $ac_hdr | tr '[a-z]./\055' '[A-Z]___'` + cat >> confdefs.h <&6 +fi +done + +# If we cannot run a trivial program, we must be cross compiling. +echo $ac_n "checking whether cross-compiling""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_c_cross'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_c_cross=yes +else +cat > conftest.$ac_ext </dev/null; then + ac_cv_c_cross=no +else + ac_cv_c_cross=yes +fi +fi +rm -fr conftest* +fi +cross_compiling=$ac_cv_c_cross +echo "$ac_t""$ac_cv_c_cross" 1>&6 + +echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +#include +#include +#include +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + rm -rf conftest* + ac_cv_header_stdc=yes +else + echo "$ac_err" >&5 + rm -rf conftest* + ac_cv_header_stdc=no +fi +rm -f conftest* + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. +cat > conftest.$ac_ext < +EOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + egrep "memchr" >/dev/null 2>&1; then + : +else + rm -rf conftest* + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. +cat > conftest.$ac_ext < +EOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + egrep "free" >/dev/null 2>&1; then + : +else + rm -rf conftest* + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. +if test "$cross_compiling" = yes; then + ac_cv_header_stdc=no +else +cat > conftest.$ac_ext < +#define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int main () { int i; for (i = 0; i < 256; i++) +if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); +exit (0); } + +EOF +eval $ac_link +if test -s conftest && (./conftest; exit) 2>/dev/null; then + : +else + ac_cv_header_stdc=no +fi +fi +rm -fr conftest* +fi +fi +echo "$ac_t""$ac_cv_header_stdc" 1>&6 +if test $ac_cv_header_stdc = yes; then + cat >> confdefs.h <<\EOF +#define STDC_HEADERS 1 +EOF + +fi + + +trap '' 1 2 15 +cat > confcache <<\EOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +(set) 2>&1 | + sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \ + >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Any assignment to VPATH causes Sun make to only execute +# the first set of double-colon rules, so remove it if not needed. +# If there is a colon in the path, we need to keep it. +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' +fi + +trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 + +# Transform confdefs.h into DEFS. +# Protect against shell expansion while executing Makefile rules. +# Protect against Makefile macro expansion. +cat > conftest.defs <<\EOF +s%#define \([A-Za-z_][A-Za-z0-9_]*\) \(.*\)%-D\1=\2%g +s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g +s%\[%\\&%g +s%\]%\\&%g +s%\$%$$%g +EOF +DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` +rm -f conftest.defs + + +# Without the "./", some shells look in PATH for config.status. +: ${CONFIG_STATUS=./config.status} + +echo creating $CONFIG_STATUS +rm -f $CONFIG_STATUS +cat > $CONFIG_STATUS </dev/null | sed 1q`: +# +# $0 $ac_configure_args +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" +for ac_option +do + case "\$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" + exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "$CONFIG_STATUS generated by autoconf version 2.4" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "\$ac_cs_usage"; exit 0 ;; + *) echo "\$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=$srcdir +ac_given_INSTALL="$INSTALL" + +trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 + +# Protect against being on the right side of a sed subst in config.status. +sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\\\&%]/\\\\&/g; + s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF +$ac_vpsub +$extrasub +s%@CFLAGS@%$CFLAGS%g +s%@CPPFLAGS@%$CPPFLAGS%g +s%@CXXFLAGS@%$CXXFLAGS%g +s%@DEFS@%$DEFS%g +s%@LDFLAGS@%$LDFLAGS%g +s%@LIBS@%$LIBS%g +s%@exec_prefix@%$exec_prefix%g +s%@prefix@%$prefix%g +s%@program_transform_name@%$program_transform_name%g +s%@installdata@%$installdata%g +s%@uninstalldata@%$uninstalldata%g +s%@termcapfile@%$termcapfile%g +s%@CC@%$CC%g +s%@RANLIB@%$RANLIB%g +s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@CPP@%$CPP%g + +CEOF +EOF +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%.*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust relative srcdir, etc. for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file +fi; done +rm -f conftest.subs + + + +exit 0 +EOF +chmod +x $CONFIG_STATUS +rm -fr confdefs* $ac_clean_files +test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + diff --git a/src/libs/termcap/configure.in b/src/libs/termcap/configure.in new file mode 100644 index 0000000000..f3f944f9c5 --- /dev/null +++ b/src/libs/termcap/configure.in @@ -0,0 +1,23 @@ +dnl Process this file with autoconf to produce a configure script. +AC_INIT(termcap.h) + +AC_ARG_ENABLE(install-termcap, +[ --enable-install-termcap install the termcap data file], +[if test $enableval = yes; then + installdata=install-data uninstalldata=uninstall-data + fi]) +AC_SUBST(installdata)dnl +AC_SUBST(uninstalldata)dnl + +AC_ARG_WITH(termcap, +[ --with-termcap=FILE use data file FILE instead of /etc/termcap], +termcapfile=$withval, termcapfile=/etc/termcap) +AC_SUBST(termcapfile)dnl + +AC_PROG_CC +AC_PROG_RANLIB +AC_PROG_INSTALL +AC_HAVE_HEADERS(string.h unistd.h) +AC_STDC_HEADERS + +AC_OUTPUT(Makefile) diff --git a/src/libs/termcap/install-sh b/src/libs/termcap/install-sh new file mode 100644 index 0000000000..89fc9b098b --- /dev/null +++ b/src/libs/termcap/install-sh @@ -0,0 +1,238 @@ +#! /bin/sh +# +# install - install a program, script, or datafile +# This comes from X11R5. +# +# Calling this script install-sh is preferred over install.sh, to prevent +# `make' implicit rules from creating a file called install from it +# when there is no Makefile. +# +# This script is compatible with the BSD install script, but was written +# from scratch. +# + + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit="${DOITPROG-}" + + +# put in absolute paths if you don't have them in your path; or use env. vars. + +mvprog="${MVPROG-mv}" +cpprog="${CPPROG-cp}" +chmodprog="${CHMODPROG-chmod}" +chownprog="${CHOWNPROG-chown}" +chgrpprog="${CHGRPPROG-chgrp}" +stripprog="${STRIPPROG-strip}" +rmprog="${RMPROG-rm}" +mkdirprog="${MKDIRPROG-mkdir}" + +tranformbasename="" +transform_arg="" +instcmd="$mvprog" +chmodcmd="$chmodprog 0755" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +dst="" +dir_arg="" + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + -t=*) transformarg=`echo $1 | sed 's/-t=//'` + shift + continue;; + + -b=*) transformbasename=`echo $1 | sed 's/-b=//'` + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + else + # this colon is to work around a 386BSD /bin/sh bug + : + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +else + true +fi + +if [ x"$dir_arg" != x ]; then + dst=$src + src="" + + if [ -d $dst ]; then + instcmd=: + else + instcmd=mkdir + fi +else + +# Waiting for this to be detected by the "$instcmd $src $dsttmp" command +# might cause directories to be created, which would be especially bad +# if $src (and thus $dsttmp) contains '*'. + + if [ -f $src -o -d $src ] + then + true + else + echo "install: $src does not exist" + exit 1 + fi + + if [ x"$dst" = x ] + then + echo "install: no destination specified" + exit 1 + else + true + fi + +# If destination is a directory, append the input filename; if your system +# does not like double slashes in filenames, you may need to add some logic + + if [ -d $dst ] + then + dst="$dst"/`basename $src` + else + true + fi +fi + +## this sed command emulates the dirname command +dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + +# Make sure that the destination directory exists. +# this part is taken from Noah Friedman's mkinstalldirs script + +# Skip lots of stat calls in the usual case. +if [ ! -d "$dstdir" ]; then +defaultIFS=' +' +IFS="${IFS-${defaultIFS}}" + +oIFS="${IFS}" +# Some sh's can't handle IFS=/ for some reason. +IFS='%' +set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS="${oIFS}" + +pathcomp='' + +while [ $# -ne 0 ] ; do + pathcomp="${pathcomp}${1}" + shift + + if [ ! -d "${pathcomp}" ] ; + then + $mkdirprog "${pathcomp}" + else + true + fi + + pathcomp="${pathcomp}/" +done +fi + +if [ x"$dir_arg" != x ] +then + $doit $instcmd $dst && + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi +else + +# If we're going to rename the final executable, determine the name now. + + if [ x"$transformarg" = x ] + then + dstfile=`basename $dst` + else + dstfile=`basename $dst $transformbasename | + sed $transformarg`$transformbasename + fi + +# don't allow the sed command to completely eliminate the filename + + if [ x"$dstfile" = x ] + then + dstfile=`basename $dst` + else + true + fi + +# Make a temp file name in the proper directory. + + dsttmp=$dstdir/#inst.$$# + +# Move or copy the file name to the temp name + + $doit $instcmd $src $dsttmp && + + trap "rm -f ${dsttmp}" 0 && + +# and set any options; do chmod last to preserve setuid bits + +# If any of these fail, we abort the whole thing. If we want to +# ignore errors from any of these, just make sure not to ignore +# errors from the above "$doit $instcmd $src $dsttmp" command. + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && + +# Now rename the file to the real destination. + + $doit $rmcmd -f $dstdir/$dstfile && + $doit $mvcmd $dsttmp $dstdir/$dstfile + +fi && + + +exit 0 diff --git a/src/libs/termcap/mkinstalldirs b/src/libs/termcap/mkinstalldirs new file mode 100644 index 0000000000..cd1fe0a794 --- /dev/null +++ b/src/libs/termcap/mkinstalldirs @@ -0,0 +1,32 @@ +#! /bin/sh +# mkinstalldirs --- make directory hierarchy +# Author: Noah Friedman +# Created: 1993-05-16 +# Public domain + +errstatus=0 + +for file +do + set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + shift + + pathcomp= + for d in ${1+"$@"} ; do + pathcomp="$pathcomp$d" + case "$pathcomp" in + -* ) pathcomp=./$pathcomp ;; + esac + + if test ! -d "$pathcomp"; then + echo "mkdir $pathcomp" 1>&2 + mkdir "$pathcomp" || errstatus=$? + fi + + pathcomp="$pathcomp/" + done +done + +exit $errstatus + +# mkinstalldirs ends here diff --git a/src/libs/termcap/termcap.c b/src/libs/termcap/termcap.c new file mode 100644 index 0000000000..1a90751291 --- /dev/null +++ b/src/libs/termcap/termcap.c @@ -0,0 +1,813 @@ +/* Work-alike for termcap, plus extra features. + Copyright (C) 1985, 86, 93, 94, 95, 2000, 2001 + Free Software Foundation, Inc. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* Emacs config.h may rename various library functions such as malloc. */ +#ifdef HAVE_CONFIG_H +#include +#endif + +#ifdef emacs + +#include /* xmalloc is here */ +/* Get the O_* definitions for open et al. */ +#include +#ifdef HAVE_FCNTL_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif + +#else /* not emacs */ + +#ifdef STDC_HEADERS +#include +#include +#else +char *getenv (); +char *malloc (); +char *realloc (); +#endif + +/* Do this after the include, in case string.h prototypes bcopy. */ +#if (defined(HAVE_STRING_H) || defined(STDC_HEADERS)) && !defined(bcopy) +#define bcopy(s, d, n) memcpy ((d), (s), (n)) +#endif + +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef _POSIX_VERSION +#include +#endif + +#endif /* not emacs */ + +#ifndef NULL +#define NULL (char *) 0 +#endif + +#ifndef O_RDONLY +#define O_RDONLY 0 +#endif + +/* BUFSIZE is the initial size allocated for the buffer + for reading the termcap file. + It is not a limit. + Make it large normally for speed. + Make it variable when debugging, so can exercise + increasing the space dynamically. */ + +#ifndef BUFSIZE +#ifdef DEBUG +#define BUFSIZE bufsize + +int bufsize = 128; +#else +#define BUFSIZE 2048 +#endif +#endif + +#ifndef TERMCAP_FILE +#define TERMCAP_FILE "/etc/termcap" +#endif + +#ifndef emacs +static void +memory_out () +{ + write (2, "virtual memory exhausted\n", 25); + exit (1); +} + +static char * +xmalloc (size) + unsigned size; +{ + register char *tem = malloc (size); + + if (!tem) + memory_out (); + return tem; +} + +static char * +xrealloc (ptr, size) + char *ptr; + unsigned size; +{ + register char *tem = realloc (ptr, size); + + if (!tem) + memory_out (); + return tem; +} +#endif /* not emacs */ + +/* Looking up capabilities in the entry already found. */ + +/* The pointer to the data made by tgetent is left here + for tgetnum, tgetflag and tgetstr to find. */ +static char *term_entry; + +static char *tgetst1 (); + +/* Search entry BP for capability CAP. + Return a pointer to the capability (in BP) if found, + 0 if not found. */ + +static char * +find_capability (bp, cap) + register char *bp, *cap; +{ + for (; *bp; bp++) + if (bp[0] == ':' + && bp[1] == cap[0] + && bp[2] == cap[1]) + return &bp[4]; + return NULL; +} + +int +tgetnum (cap) + char *cap; +{ + register char *ptr = find_capability (term_entry, cap); + if (!ptr || ptr[-1] != '#') + return -1; + return atoi (ptr); +} + +int +tgetflag (cap) + char *cap; +{ + register char *ptr = find_capability (term_entry, cap); + return ptr && ptr[-1] == ':'; +} + +/* Look up a string-valued capability CAP. + If AREA is non-null, it points to a pointer to a block in which + to store the string. That pointer is advanced over the space used. + If AREA is null, space is allocated with `malloc'. */ + +char * +tgetstr (cap, area) + char *cap; + char **area; +{ + register char *ptr = find_capability (term_entry, cap); + if (!ptr || (ptr[-1] != '=' && ptr[-1] != '~')) + return NULL; + return tgetst1 (ptr, area); +} + +#ifdef IS_EBCDIC_HOST +/* Table, indexed by a character in range 0200 to 0300 with 0200 subtracted, + gives meaning of character following \, or a space if no special meaning. + Sixteen characters per line within the string. */ + +static char esctab[] + = " \057\026 \047\014 \ + \025 \015 \ + \005 \013 \ + "; +#else +/* Table, indexed by a character in range 0100 to 0140 with 0100 subtracted, + gives meaning of character following \, or a space if no special meaning. + Eight characters per line within the string. */ + +static char esctab[] + = " \007\010 \033\014 \ + \012 \ + \015 \011 \013 \ + "; +#endif + +/* PTR points to a string value inside a termcap entry. + Copy that value, processing \ and ^ abbreviations, + into the block that *AREA points to, + or to newly allocated storage if AREA is NULL. + Return the address to which we copied the value, + or NULL if PTR is NULL. */ + +static char * +tgetst1 (ptr, area) + char *ptr; + char **area; +{ + register char *p, *r; + register int c; + register int size; + char *ret; + register int c1; + + if (!ptr) + return NULL; + + /* `ret' gets address of where to store the string. */ + if (!area) + { + /* Compute size of block needed (may overestimate). */ + p = ptr; + while ((c = *p++) && c != ':' && c != '\n') + ; + ret = (char *) xmalloc (p - ptr + 1); + } + else + ret = *area; + + /* Copy the string value, stopping at null or colon. + Also process ^ and \ abbreviations. */ + p = ptr; + r = ret; + while ((c = *p++) && c != ':' && c != '\n') + { + if (c == '^') + { + c = *p++; + if (c == '?') + c = 0177; + else + c &= 037; + } + else if (c == '\\') + { + c = *p++; + if (c >= '0' && c <= '7') + { + c -= '0'; + size = 0; + + while (++size < 3 && (c1 = *p) >= '0' && c1 <= '7') + { + c *= 8; + c += c1 - '0'; + p++; + } + } +#ifdef IS_EBCDIC_HOST + else if (c >= 0200 && c < 0360) + { + c1 = esctab[(c & ~0100) - 0200]; + if (c1 != ' ') + c = c1; + } +#else + else if (c >= 0100 && c < 0200) + { + c1 = esctab[(c & ~040) - 0100]; + if (c1 != ' ') + c = c1; + } +#endif + } + *r++ = c; + } + *r = '\0'; + /* Update *AREA. */ + if (area) + *area = r + 1; + return ret; +} + +/* Outputting a string with padding. */ + +#ifndef emacs +short ospeed; +/* If OSPEED is 0, we use this as the actual baud rate. */ +int tputs_baud_rate; +#endif +char PC; + +#ifndef emacs +/* Actual baud rate if positive; + - baud rate / 100 if negative. */ + +static int speeds[] = + { +#ifdef VMS + 0, 50, 75, 110, 134, 150, -3, -6, -12, -18, + -20, -24, -36, -48, -72, -96, -192 +#else /* not VMS */ + 0, 50, 75, 110, 135, 150, -2, -3, -6, -12, + -18, -24, -48, -96, -192, -288, -384, -576, -1152 +#endif /* not VMS */ + }; + +#endif /* not emacs */ + +void +tputs (str, nlines, outfun) + register char *str; + int nlines; + register int (*outfun) (); +{ + register int padcount = 0; + register int speed; + +#ifdef emacs + extern int baud_rate; + speed = baud_rate; + /* For quite high speeds, convert to the smaller + units to avoid overflow. */ + if (speed > 10000) + speed = - speed / 100; +#else + if (ospeed == 0) + speed = tputs_baud_rate; + else + speed = speeds[ospeed]; +#endif + + if (!str) + return; + + while (*str >= '0' && *str <= '9') + { + padcount += *str++ - '0'; + padcount *= 10; + } + if (*str == '.') + { + str++; + padcount += *str++ - '0'; + } + if (*str == '*') + { + str++; + padcount *= nlines; + } + while (*str) + (*outfun) (*str++); + + /* PADCOUNT is now in units of tenths of msec. + SPEED is measured in characters per 10 seconds + or in characters per .1 seconds (if negative). + We use the smaller units for larger speeds to avoid overflow. */ + padcount *= speed; + padcount += 500; + padcount /= 1000; + if (speed < 0) + padcount = -padcount; + else + { + padcount += 50; + padcount /= 100; + } + + while (padcount-- > 0) + (*outfun) (PC); +} + +/* Finding the termcap entry in the termcap data base. */ + +struct termcap_buffer + { + char *beg; + int size; + char *ptr; + int ateof; + int full; + }; + +/* Forward declarations of static functions. */ + +static int scan_file (); +static char *gobble_line (); +static int compare_contin (); +static int name_match (); + +#ifdef VMS + +#include +#include +#include + +static int +valid_filename_p (fn) + char *fn; +{ + struct FAB fab = cc$rms_fab; + struct NAM nam = cc$rms_nam; + char esa[NAM$C_MAXRSS]; + + fab.fab$l_fna = fn; + fab.fab$b_fns = strlen(fn); + fab.fab$l_nam = &nam; + fab.fab$l_fop = FAB$M_NAM; + + nam.nam$l_esa = esa; + nam.nam$b_ess = sizeof esa; + + return SYS$PARSE(&fab, 0, 0) == RMS$_NORMAL; +} + +#else /* !VMS */ + +#ifdef MSDOS /* MW, May 1993 */ +static int +valid_filename_p (fn) + char *fn; +{ + return *fn == '/' || fn[1] == ':'; +} +#else +#define valid_filename_p(fn) (*(fn) == '/') +#endif + +#endif /* !VMS */ + +/* Find the termcap entry data for terminal type NAME + and store it in the block that BP points to. + Record its address for future use. + + If BP is null, space is dynamically allocated. + + Return -1 if there is some difficulty accessing the data base + of terminal types, + 0 if the data base is accessible but the type NAME is not defined + in it, and some other value otherwise. */ + +int +tgetent (bp, name) + char *bp, *name; +{ + register char *termcap_name; + register int fd; + struct termcap_buffer buf; + register char *bp1; + char *tc_search_point; + char *term; + int malloc_size = 0; + register int c; + char *tcenv = NULL; /* TERMCAP value, if it contains :tc=. */ + char *indirect = NULL; /* Terminal type in :tc= in TERMCAP value. */ + int filep; + +#ifdef INTERNAL_TERMINAL + /* For the internal terminal we don't want to read any termcap file, + so fake it. */ + if (!strcmp (name, "internal")) + { + term = INTERNAL_TERMINAL; + if (!bp) + { + malloc_size = 1 + strlen (term); + bp = (char *) xmalloc (malloc_size); + } + strcpy (bp, term); + goto ret; + } +#endif /* INTERNAL_TERMINAL */ + + /* For compatibility with programs like `less' that want to + put data in the termcap buffer themselves as a fallback. */ + if (bp) + term_entry = bp; + + termcap_name = getenv ("TERMCAP"); + if (termcap_name && *termcap_name == '\0') + termcap_name = NULL; +#if defined (MSDOS) && !defined (TEST) + if (termcap_name && (*termcap_name == '\\' + || *termcap_name == '/' + || termcap_name[1] == ':')) + dostounix_filename(termcap_name); +#endif + + filep = termcap_name && valid_filename_p (termcap_name); + + /* If termcap_name is non-null and starts with / (in the un*x case, that is), + it is a file name to use instead of /etc/termcap. + If it is non-null and does not start with /, + it is the entry itself, but only if + the name the caller requested matches the TERM variable. */ + + if (termcap_name && !filep && !strcmp (name, getenv ("TERM"))) + { + indirect = tgetst1 (find_capability (termcap_name, "tc"), (char **) 0); + if (!indirect) + { + if (!bp) + bp = termcap_name; + else + strcpy (bp, termcap_name); + goto ret; + } + else + { /* It has tc=. Need to read /etc/termcap. */ + tcenv = termcap_name; + termcap_name = NULL; + } + } + + if (!termcap_name || !filep) + termcap_name = TERMCAP_FILE; + + /* Here we know we must search a file and termcap_name has its name. */ + +#ifdef MSDOS + fd = open (termcap_name, O_RDONLY|O_TEXT, 0); +#else + fd = open (termcap_name, O_RDONLY, 0); +#endif + if (fd < 0) + return -1; + + buf.size = BUFSIZE; + /* Add 1 to size to ensure room for terminating null. */ + buf.beg = (char *) xmalloc (buf.size + 1); + term = indirect ? indirect : name; + + if (!bp) + { + malloc_size = indirect ? strlen (tcenv) + 1 : buf.size; + bp = (char *) xmalloc (malloc_size); + } + tc_search_point = bp1 = bp; + + if (indirect) + /* Copy the data from the environment variable. */ + { + strcpy (bp, tcenv); + bp1 += strlen (tcenv); + } + + while (term) + { + /* Scan the file, reading it via buf, till find start of main entry. */ + if (scan_file (term, fd, &buf) == 0) + { + close (fd); + free (buf.beg); + if (malloc_size) + free (bp); + return 0; + } + + /* Free old `term' if appropriate. */ + if (term != name) + free (term); + + /* If BP is malloc'd by us, make sure it is big enough. */ + if (malloc_size) + { + int offset1 = bp1 - bp, offset2 = tc_search_point - bp; + malloc_size = offset1 + buf.size; + bp = termcap_name = (char *) xrealloc (bp, malloc_size); + bp1 = termcap_name + offset1; + tc_search_point = termcap_name + offset2; + } + + /* Copy the line of the entry from buf into bp. */ + termcap_name = buf.ptr; + while ((*bp1++ = c = *termcap_name++) && c != '\n') + /* Drop out any \ newline sequence. */ + if (c == '\\' && *termcap_name == '\n') + { + bp1--; + termcap_name++; + } + *bp1 = '\0'; + + /* Does this entry refer to another terminal type's entry? + If something is found, copy it into heap and null-terminate it. */ + tc_search_point = find_capability (tc_search_point, "tc"); + term = tgetst1 (tc_search_point, (char **) 0); + } + + close (fd); + free (buf.beg); + + if (malloc_size) + bp = (char *) xrealloc (bp, bp1 - bp + 1); + + ret: + term_entry = bp; + return 1; +} + +/* Given file open on FD and buffer BUFP, + scan the file from the beginning until a line is found + that starts the entry for terminal type STR. + Return 1 if successful, with that line in BUFP, + or 0 if no entry is found in the file. */ + +static int +scan_file (str, fd, bufp) + char *str; + int fd; + register struct termcap_buffer *bufp; +{ + register char *end; + + bufp->ptr = bufp->beg; + bufp->full = 0; + bufp->ateof = 0; + *bufp->ptr = '\0'; + + lseek (fd, 0L, 0); + + while (!bufp->ateof) + { + /* Read a line into the buffer. */ + end = NULL; + do + { + /* if it is continued, append another line to it, + until a non-continued line ends. */ + end = gobble_line (fd, bufp, end); + } + while (!bufp->ateof && end[-2] == '\\'); + + if (*bufp->ptr != '#' + && name_match (bufp->ptr, str)) + return 1; + + /* Discard the line just processed. */ + bufp->ptr = end; + } + return 0; +} + +/* Return nonzero if NAME is one of the names specified + by termcap entry LINE. */ + +static int +name_match (line, name) + char *line, *name; +{ + register char *tem; + + if (!compare_contin (line, name)) + return 1; + /* This line starts an entry. Is it the right one? */ + for (tem = line; *tem && *tem != '\n' && *tem != ':'; tem++) + if (*tem == '|' && !compare_contin (tem + 1, name)) + return 1; + + return 0; +} + +static int +compare_contin (str1, str2) + register char *str1, *str2; +{ + register int c1, c2; + while (1) + { + c1 = *str1++; + c2 = *str2++; + while (c1 == '\\' && *str1 == '\n') + { + str1++; + while ((c1 = *str1++) == ' ' || c1 == '\t'); + } + if (c2 == '\0') + { + /* End of type being looked up. */ + if (c1 == '|' || c1 == ':') + /* If end of name in data base, we win. */ + return 0; + else + return 1; + } + else if (c1 != c2) + return 1; + } +} + +/* Make sure that the buffer <- BUFP contains a full line + of the file open on FD, starting at the place BUFP->ptr + points to. Can read more of the file, discard stuff before + BUFP->ptr, or make the buffer bigger. + + Return the pointer to after the newline ending the line, + or to the end of the file, if there is no newline to end it. + + Can also merge on continuation lines. If APPEND_END is + non-null, it points past the newline of a line that is + continued; we add another line onto it and regard the whole + thing as one line. The caller decides when a line is continued. */ + +static char * +gobble_line (fd, bufp, append_end) + int fd; + register struct termcap_buffer *bufp; + char *append_end; +{ + register char *end; + register int nread; + register char *buf = bufp->beg; + register char *tem; + + if (!append_end) + append_end = bufp->ptr; + + while (1) + { + end = append_end; + while (*end && *end != '\n') end++; + if (*end) + break; + if (bufp->ateof) + return buf + bufp->full; + if (bufp->ptr == buf) + { + if (bufp->full == bufp->size) + { + bufp->size *= 2; + /* Add 1 to size to ensure room for terminating null. */ + tem = (char *) xrealloc (buf, bufp->size + 1); + bufp->ptr = (bufp->ptr - buf) + tem; + append_end = (append_end - buf) + tem; + bufp->beg = buf = tem; + } + } + else + { + append_end -= bufp->ptr - buf; + bcopy (bufp->ptr, buf, bufp->full -= bufp->ptr - buf); + bufp->ptr = buf; + } + if (!(nread = read (fd, buf + bufp->full, bufp->size - bufp->full))) + bufp->ateof = 1; + bufp->full += nread; + buf[bufp->full] = '\0'; + } + return end + 1; +} + +#ifdef TEST + +#ifdef NULL +#undef NULL +#endif + +#include + +main (argc, argv) + int argc; + char **argv; +{ + char *term; + char *buf; + + term = argv[1]; + printf ("TERM: %s\n", term); + + buf = (char *) tgetent (0, term); + if ((int) buf <= 0) + { + printf ("No entry.\n"); + return 0; + } + + printf ("Entry: %s\n", buf); + + tprint ("cm"); + tprint ("AL"); + + printf ("co: %d\n", tgetnum ("co")); + printf ("am: %d\n", tgetflag ("am")); +} + +tprint (cap) + char *cap; +{ + char *x = tgetstr (cap, 0); + register char *y; + + printf ("%s: ", cap); + if (x) + { + for (y = x; *y; y++) + if (*y <= ' ' || *y == 0177) + printf ("\\%0o", *y); + else + putchar (*y); + free (x); + } + else + printf ("none"); + putchar ('\n'); +} + +#endif /* TEST */ diff --git a/src/libs/termcap/termcap.h b/src/libs/termcap/termcap.h new file mode 100644 index 0000000000..b19fb0a17b --- /dev/null +++ b/src/libs/termcap/termcap.h @@ -0,0 +1,62 @@ +/* Declarations for termcap library. + Copyright (C) 1991, 1992, 1995 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#ifndef _TERMCAP_H +#define _TERMCAP_H 1 + +#if __STDC__ + +extern int tgetent (char *buffer, const char *termtype); + +extern int tgetnum (const char *name); +extern int tgetflag (const char *name); +extern char *tgetstr (const char *name, char **area); + +extern char PC; +extern short ospeed; +extern void tputs (const char *string, int nlines, int (*outfun) (int)); + +extern char *tparam (const char *ctlstring, char *buffer, int size, ...); + +extern char *UP; +extern char *BC; + +extern char *tgoto (const char *cstring, int hpos, int vpos); + +#else /* not __STDC__ */ + +extern int tgetent (); + +extern int tgetnum (); +extern int tgetflag (); +extern char *tgetstr (); + +extern char PC; +extern short ospeed; + +extern void tputs (); + +extern char *tparam (); + +extern char *UP; +extern char *BC; + +extern char *tgoto (); + +#endif /* not __STDC__ */ + +#endif /* not _TERMCAP_H */ diff --git a/src/libs/termcap/termcap.info b/src/libs/termcap/termcap.info new file mode 100644 index 0000000000..f663195a33 --- /dev/null +++ b/src/libs/termcap/termcap.info @@ -0,0 +1,80 @@ +This is Info file ./termcap.info, produced by Makeinfo-1.55 from the +input file ./termcap.texi. + + This file documents the termcap library of the GNU system. + + Copyright (C) 1988 Free Software Foundation, Inc. + + Permission is granted to make and distribute verbatim copies of this +manual provided the copyright notice and this permission notice are +preserved on all copies. + + Permission is granted to copy and distribute modified versions of +this manual under the conditions for verbatim copying, provided that +the entire resulting derived work is distributed under the terms of a +permission notice identical to this one. + + Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be stated in a +translation approved by the Foundation. + + +Indirect: +termcap.info-1: 874 +termcap.info-2: 47411 +termcap.info-3: 90390 +termcap.info-4: 138827 + +Tag Table: +(Indirect) +Node: Top874 +Node: Introduction4105 +Node: Library5832 +Node: Preparation6851 +Node: Find8034 +Node: Interrogate11492 +Node: Initialize16800 +Node: Padding18440 +Node: Why Pad19146 +Node: Not Enough20768 +Node: Describe Padding23336 +Node: Output Padding24826 +Node: Parameters28441 +Node: Encode Parameters30101 +Node: Using Parameters36185 +Node: tparam36780 +Node: tgoto38806 +Node: Data Base41361 +Node: Format42257 +Node: Capability Format44346 +Node: Naming47411 +Node: Inheriting51980 +Node: Changing54224 +Node: Capabilities55388 +Node: Basic58127 +Node: Screen Size62180 +Node: Cursor Motion63920 +Node: Wrapping74062 +Node: Scrolling77091 +Node: Windows82980 +Node: Clearing83714 +Node: Insdel Line85478 +Node: Insdel Char90390 +Node: Standout100375 +Node: Underlining109433 +Node: Cursor Visibility111852 +Node: Bell112600 +Node: Keypad113149 +Node: Meta Key117864 +Node: Initialization118818 +Node: Pad Specs121369 +Node: Status Line123422 +Node: Half-Line125306 +Node: Printer126108 +Node: Summary127787 +Node: Var Index138114 +Node: Cap Index138827 +Node: Index145991 + +End Tag Table diff --git a/src/libs/termcap/termcap.info-1 b/src/libs/termcap/termcap.info-1 new file mode 100644 index 0000000000..a5b5da0bb7 --- /dev/null +++ b/src/libs/termcap/termcap.info-1 @@ -0,0 +1,1114 @@ +This is Info file ./termcap.info, produced by Makeinfo-1.55 from the +input file ./termcap.texi. + + This file documents the termcap library of the GNU system. + + Copyright (C) 1988 Free Software Foundation, Inc. + + Permission is granted to make and distribute verbatim copies of this +manual provided the copyright notice and this permission notice are +preserved on all copies. + + Permission is granted to copy and distribute modified versions of +this manual under the conditions for verbatim copying, provided that +the entire resulting derived work is distributed under the terms of a +permission notice identical to this one. + + Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be stated in a +translation approved by the Foundation. + + +File: termcap.info, Node: Top, Next: Introduction, Prev: (dir), Up: (dir) + +* Menu: + +* Introduction:: What is termcap? Why this manual? +* Library:: The termcap library functions. +* Data Base:: What terminal descriptions in `/etc/termcap' look like. +* Capabilities:: Definitions of the individual terminal capabilities: + how to write them in descriptions, and how to use + their values to do display updating. +* Summary:: Brief table of capability names and their meanings. +* Var Index:: Index of C functions and variables. +* Cap Index:: Index of termcap capabilities. +* Index:: Concept index. + + -- The Detailed Node Listing -- + +The Termcap Library + +* Preparation:: Preparing to use the termcap library. +* Find:: Finding the description of the terminal being used. +* Interrogate:: Interrogating the description for particular capabilities. +* Initialize:: Initialization for output using termcap. +* Padding:: Outputting padding. +* Parameters:: Encoding parameters such as cursor positions. + +Padding + +* Why Pad:: Explanation of padding. +* Not Enough:: When there is not enough padding. +* Describe Padding:: The data base says how much padding a terminal needs. +* Output Padding:: Using `tputs' to output the needed padding. + +Filling In Parameters + +* Encode Parameters:: The language for encoding parameters. +* Using Parameters:: Outputting a string command with parameters. + +Sending Display Commands with Parameters + +* tparam:: The general case, for GNU termcap only. +* tgoto:: The special case of cursor motion. + +The Format of the Data Base + +* Format:: Overall format of a terminal description. +* Capability Format:: Format of capabilities within a description. +* Naming:: Naming conventions for terminal types. +* Inheriting:: Inheriting part of a description from +a related terminal type. +* Changing:: When changes in the data base take effect. + +Definitions of the Terminal Capabilities + +* Basic:: Basic characteristics. +* Screen Size:: Screen size, and what happens when it changes. +* Cursor Motion:: Various ways to move the cursor. +* Wrapping:: What happens if you write a character in the last column. +* Scrolling:: Pushing text up and down on the screen. +* Windows:: Limiting the part of the window that output affects. +* Clearing:: Erasing one or many lines. +* Insdel Line:: Making new blank lines in mid-screen; deleting lines. +* Insdel Char:: Inserting and deleting characters within a line. +* Standout:: Highlighting some of the text. +* Underlining:: Underlining some of the text. +* Cursor Visibility:: Making the cursor more or less easy to spot. +* Bell:: Attracts user's attention; not localized on the screen. +* Keypad:: Recognizing when function keys or arrows are typed. +* Meta Key:: META acts like an extra shift key. +* Initialization:: Commands used to initialize or reset the terminal. +* Pad Specs:: Info for the kernel on how much padding is needed. +* Status Line:: A status line displays "background" information. +* Half-Line:: Moving by half-lines, for superscripts and subscripts. +* Printer:: Controlling auxiliary printers of display terminals. + + +File: termcap.info, Node: Introduction, Next: Library, Prev: Top, Up: Top + +Introduction +************ + + "Termcap" is a library and data base that enables programs to use +display terminals in a terminal-independent manner. It originated in +Berkeley Unix. + + The termcap data base describes the capabilities of hundreds of +different display terminals in great detail. Some examples of the +information recorded for a terminal could include how many columns wide +it is, what string to send to move the cursor to an arbitrary position +(including how to encode the row and column numbers), how to scroll the +screen up one or several lines, and how much padding is needed for such +a scrolling operation. + + The termcap library is provided for easy access this data base in +programs that want to do terminal-independent character-based display +output. + + This manual describes the GNU version of the termcap library, which +has some extensions over the Unix version. All the extensions are +identified as such, so this manual also tells you how to use the Unix +termcap. + + The GNU version of the termcap library is available free as source +code, for use in free programs, and runs on Unix and VMS systems (at +least). You can find it in the GNU Emacs distribution in the files +`termcap.c' and `tparam.c'. + + This manual was written for the GNU project, whose goal is to +develop a complete free operating system upward-compatible with Unix +for user programs. The project is approximately two thirds complete. +For more information on the GNU project, including the GNU Emacs editor +and the mostly-portable optimizing C compiler, send one dollar to + + Free Software Foundation + 675 Mass Ave + Cambridge, MA 02139 + + +File: termcap.info, Node: Library, Next: Data Base, Prev: Introduction, Up: Top + +The Termcap Library +******************* + + The termcap library is the application programmer's interface to the +termcap data base. It contains functions for the following purposes: + + * Finding the description of the user's terminal type (`tgetent'). + + * Interrogating the description for information on various topics + (`tgetnum', `tgetflag', `tgetstr'). + + * Computing and performing padding (`tputs'). + + * Encoding numeric parameters such as cursor positions into the + terminal-specific form required for display commands (`tparam', + `tgoto'). + +* Menu: + +* Preparation:: Preparing to use the termcap library. +* Find:: Finding the description of the terminal being used. +* Interrogate:: Interrogating the description for particular capabilities. +* Initialize:: Initialization for output using termcap. +* Padding:: Outputting padding. +* Parameters:: Encoding parameters such as cursor positions. + + +File: termcap.info, Node: Preparation, Next: Find, Up: Library + +Preparing to Use the Termcap Library +==================================== + + To use the termcap library in a program, you need two kinds of +preparation: + + * The compiler needs declarations of the functions and variables in + the library. + + On GNU systems, it suffices to include the header file `termcap.h' + in each source file that uses these functions and variables. + + On Unix systems, there is often no such header file. Then you must + explictly declare the variables as external. You can do likewise + for the functions, or let them be implicitly declared and cast + their values from type `int' to the appropriate type. + + We illustrate the declarations of the individual termcap library + functions with ANSI C prototypes because they show how to pass the + arguments. If you are not using the GNU C compiler, you probably + cannot use function prototypes, so omit the argument types and + names from your declarations. + + * The linker needs to search the library. Usually either + `-ltermcap' or `-ltermlib' as an argument when linking will do + this. + + +File: termcap.info, Node: Find, Next: Interrogate, Prev: Preparation, Up: Library + +Finding a Terminal Description: `tgetent' +========================================= + + An application program that is going to use termcap must first look +up the description of the terminal type in use. This is done by calling +`tgetent', whose declaration in ANSI Standard C looks like: + + int tgetent (char *BUFFER, char *TERMTYPE); + +This function finds the description and remembers it internally so that +you can interrogate it about specific terminal capabilities (*note +Interrogate::.). + + The argument TERMTYPE is a string which is the name for the type of +terminal to look up. Usually you would obtain this from the environment +variable `TERM' using `getenv ("TERM")'. + + If you are using the GNU version of termcap, you can alternatively +ask `tgetent' to allocate enough space. Pass a null pointer for +BUFFER, and `tgetent' itself allocates the storage using `malloc'. +There is no way to get the address that was allocated, and you +shouldn't try to free the storage. + + With the Unix version of termcap, you must allocate space for the +description yourself and pass the address of the space as the argument +BUFFER. There is no way you can tell how much space is needed, so the +convention is to allocate a buffer 2048 characters long and assume that +is enough. (Formerly the convention was to allocate 1024 characters and +assume that was enough. But one day, for one kind of terminal, that was +not enough.) + + No matter how the space to store the description has been obtained, +termcap records its address internally for use when you later +interrogate the description with `tgetnum', `tgetstr' or `tgetflag'. If +the buffer was allocated by termcap, it will be freed by termcap too if +you call `tgetent' again. If the buffer was provided by you, you must +make sure that its contents remain unchanged for as long as you still +plan to interrogate the description. + + The return value of `tgetent' is -1 if there is some difficulty +accessing the data base of terminal types, 0 if the data base is +accessible but the specified type is not defined in it, and some other +value otherwise. + + Here is how you might use the function `tgetent': + + #ifdef unix + static char term_buffer[2048]; + #else + #define term_buffer 0 + #endif + + init_terminal_data () + { + char *termtype = getenv ("TERM"); + int success; + + if (termtype == 0) + fatal ("Specify a terminal type with `setenv TERM '.\n"); + + success = tgetent (term_buffer, termtype); + if (success < 0) + fatal ("Could not access the termcap data base.\n"); + if (success == 0) + fatal ("Terminal type `%s' is not defined.\n", termtype); + } + +Here we assume the function `fatal' prints an error message and exits. + + If the environment variable `TERMCAP' is defined, its value is used +to override the terminal type data base. The function `tgetent' checks +the value of `TERMCAP' automatically. If the value starts with `/' +then it is taken as a file name to use as the data base file, instead +of `/etc/termcap' which is the standard data base. If the value does +not start with `/' then it is itself used as the terminal description, +provided that the terminal type TERMTYPE is among the types it claims +to apply to. *Note Data Base::, for information on the format of a +terminal description. + + +File: termcap.info, Node: Interrogate, Next: Initialize, Prev: Find, Up: Library + +Interrogating the Terminal Description +====================================== + + Each piece of information recorded in a terminal description is +called a "capability". Each defined terminal capability has a +two-letter code name and a specific meaning. For example, the number +of columns is named `co'. *Note Capabilities::, for definitions of all +the standard capability names. + + Once you have found the proper terminal description with `tgetent' +(*note Find::.), your application program must "interrogate" it for +various terminal capabilities. You must specify the two-letter code of +the capability whose value you seek. + + Capability values can be numeric, boolean (capability is either +present or absent) or strings. Any particular capability always has +the same value type; for example, `co' always has a numeric value, +while `am' (automatic wrap at margin) is always a flag, and `cm' +(cursor motion command) always has a string value. The documentation +of each capability says which type of value it has. + + There are three functions to use to get the value of a capability, +depending on the type of value the capability has. Here are their +declarations in ANSI C: + + int tgetnum (char *NAME); + int tgetflag (char *NAME); + char *tgetstr (char *NAME, char **AREA); + +`tgetnum' + Use `tgetnum' to get a capability value that is numeric. The + argument NAME is the two-letter code name of the capability. If + the capability is present, `tgetnum' returns the numeric value + (which is nonnegative). If the capability is not mentioned in the + terminal description, `tgetnum' returns -1. + +`tgetflag' + Use `tgetflag' to get a boolean value. If the capability NAME is + present in the terminal description, `tgetflag' returns 1; + otherwise, it returns 0. + +`tgetstr' + Use `tgetstr' to get a string value. It returns a pointer to a + string which is the capability value, or a null pointer if the + capability is not present in the terminal description. + + There are two ways `tgetstr' can find space to store the string + value: + + * You can ask `tgetstr' to allocate the space. Pass a null + pointer for the argument AREA, and `tgetstr' will use + `malloc' to allocate storage big enough for the value. + Termcap will never free this storage or refer to it again; you + should free it when you are finished with it. + + This method is more robust, since there is no need to guess + how much space is needed. But it is supported only by the GNU + termcap library. + + * You can provide the space. Provide for the argument AREA the + address of a pointer variable of type `char *'. Before + calling `tgetstr', initialize the variable to point at + available space. Then `tgetstr' will store the string value + in that space and will increment the pointer variable to + point after the space that has been used. You can use the + same pointer variable for many calls to `tgetstr'. + + There is no way to determine how much space is needed for a + single string, and no way for you to prevent or handle + overflow of the area you have provided. However, you can be + sure that the total size of all the string values you will + obtain from the terminal description is no greater than the + size of the description (unless you get the same capability + twice). You can determine that size with `strlen' on the + buffer you provided to `tgetent'. See below for an example. + + Providing the space yourself is the only method supported by + the Unix version of termcap. + + Note that you do not have to specify a terminal type or terminal +description for the interrogation functions. They automatically use the +description found by the most recent call to `tgetent'. + + Here is an example of interrogating a terminal description for +various capabilities, with conditionals to select between the Unix and +GNU methods of providing buffer space. + + char *tgetstr (); + + char *cl_string, *cm_string; + int height; + int width; + int auto_wrap; + + char PC; /* For tputs. */ + char *BC; /* For tgoto. */ + char *UP; + + interrogate_terminal () + { + #ifdef UNIX + /* Here we assume that an explicit term_buffer + was provided to tgetent. */ + char *buffer + = (char *) malloc (strlen (term_buffer)); + #define BUFFADDR &buffer + #else + #define BUFFADDR 0 + #endif + + char *temp; + + /* Extract information we will use. */ + cl_string = tgetstr ("cl", BUFFADDR); + cm_string = tgetstr ("cm", BUFFADDR); + auto_wrap = tgetflag ("am"); + height = tgetnum ("li"); + width = tgetnum ("co"); + + /* Extract information that termcap functions use. */ + temp = tgetstr ("pc", BUFFADDR); + PC = temp ? *temp : 0; + BC = tgetstr ("le", BUFFADDR); + UP = tgetstr ("up", BUFFADDR); + } + +*Note Padding::, for information on the variable `PC'. *Note Using +Parameters::, for information on `UP' and `BC'. + + +File: termcap.info, Node: Initialize, Next: Padding, Prev: Interrogate, Up: Library + +Initialization for Use of Termcap +================================= + + Before starting to output commands to a terminal using termcap, an +application program should do two things: + + * Initialize various global variables which termcap library output + functions refer to. These include `PC' and `ospeed' for padding + (*note Output Padding::.) and `UP' and `BC' for cursor motion + (*note tgoto::.). + + * Tell the kernel to turn off alteration and padding of + horizontal-tab characters sent to the terminal. + + To turn off output processing in Berkeley Unix you would use `ioctl' +with code `TIOCLSET' to set the bit named `LLITOUT', and clear the bits +`ANYDELAY' using `TIOCSETN'. In POSIX or System V, you must clear the +bit named `OPOST'. Refer to the system documentation for details. + + If you do not set the terminal flags properly, some older terminals +will not work. This is because their commands may contain the +characters that normally signify newline, carriage return and +horizontal tab--characters which the kernel thinks it ought to modify +before output. + + When you change the kernel's terminal flags, you must arrange to +restore them to their normal state when your program exits. This +implies that the program must catch fatal signals such as `SIGQUIT' and +`SIGINT' and restore the old terminal flags before actually terminating. + + Modern terminals' commands do not use these special characters, so +if you do not care about problems with old terminals, you can leave the +kernel's terminal flags unaltered. + + +File: termcap.info, Node: Padding, Next: Parameters, Prev: Initialize, Up: Library + +Padding +======= + + "Padding" means outputting null characters following a terminal +display command that takes a long time to execute. The terminal +description says which commands require padding and how much; the +function `tputs', described below, outputs a terminal command while +extracting from it the padding information, and then outputs the +padding that is necessary. + +* Menu: + +* Why Pad:: Explanation of padding. +* Not Enough:: When there is not enough padding. +* Describe Padding:: The data base says how much padding a terminal needs. +* Output Padding:: Using `tputs' to output the needed padding. + + +File: termcap.info, Node: Why Pad, Next: Not Enough, Up: Padding + +Why Pad, and How +---------------- + + Most types of terminal have commands that take longer to execute +than they do to send over a high-speed line. For example, clearing the +screen may take 20msec once the entire command is received. During +that time, on a 9600 bps line, the terminal could receive about 20 +additional output characters while still busy clearing the screen. +Every terminal has a certain amount of buffering capacity to remember +output characters that cannot be processed yet, but too many slow +commands in a row can cause the buffer to fill up. Then any additional +output that cannot be processed immediately will be lost. + + To avoid this problem, we normally follow each display command with +enough useless charaters (usually null characters) to fill up the time +that the display command needs to execute. This does the job if the +terminal throws away null characters without using up space in the +buffer (which most terminals do). If enough padding is used, no output +can ever be lost. The right amount of padding avoids loss of output +without slowing down operation, since the time used to transmit padding +is time that nothing else could be done. + + The number of padding characters needed for an operation depends on +the line speed. In fact, it is proportional to the line speed. A 9600 +baud line transmits about one character per msec, so the clear screen +command in the example above would need about 20 characters of padding. +At 1200 baud, however, only about 3 characters of padding are needed +to fill up 20msec. + + +File: termcap.info, Node: Not Enough, Next: Describe Padding, Prev: Why Pad, Up: Padding + +When There Is Not Enough Padding +-------------------------------- + + There are several common manifestations of insufficient padding. + + * Emacs displays `I-search: ^Q-' at the bottom of the screen. + + This means that the terminal thought its buffer was getting full of + display commands, so it tried to tell the computer to stop sending + any. + + * The screen is garbled intermittently, or the details of garbling + vary when you repeat the action. (A garbled screen could be due + to a command which is simply incorrect, or to user option in the + terminal which doesn't match the assumptions of the terminal + description, but this usually leads to reproducible failure.) + + This means that the buffer did get full, and some commands were + lost. Many changeable factors can change which ones are lost. + + * Screen is garbled at high output speeds but not at low speeds. + Padding problems nearly always go away at low speeds, usually even + at 1200 baud. + + This means that a high enough speed permits commands to arrive + faster than they can be executed. + + Although any obscure command on an obscure terminal might lack +padding, in practice problems arise most often from the clearing +commands `cl' and `cd' (*note Clearing::.), the scrolling commands `sf' +and `sr' (*note Scrolling::.), and the line insert/delete commands `al' +and `dl' (*note Insdel Line::.). + + Occasionally the terminal description fails to define `sf' and some +programs will use `do' instead, so you may get a problem with `do'. If +so, first define `sf' just like `do', then add some padding to `sf'. + + The best strategy is to add a lot of padding at first, perhaps 200 +msec. This is much more than enough; in fact, it should cause a +visible slowdown. (If you don't see a slowdown, the change has not +taken effect; *note Changing::..) If this makes the problem go away, +you have found the right place to add padding; now reduce the amount +until the problem comes back, then increase it again. If the problem +remains, either it is in some other capability or it is not a matter of +padding at all. + + Keep in mind that on many terminals the correct padding for +insert/delete line or for scrolling is cursor-position dependent. If +you get problems from scrolling a large region of the screen but not +from scrolling a small part (just a few lines moving), it may mean that +fixed padding should be replaced with position-dependent padding. + + +File: termcap.info, Node: Describe Padding, Next: Output Padding, Prev: Not Enough, Up: Padding + +Specifying Padding in a Terminal Description +-------------------------------------------- + + In the terminal description, the amount of padding required by each +display command is recorded as a sequence of digits at the front of the +command. These digits specify the padding time in milliseconds (msec). +They can be followed optionally by a decimal point and one more digit, +which is a number of tenths of msec. + + Sometimes the padding needed by a command depends on the cursor +position. For example, the time taken by an "insert line" command is +usually proportional to the number of lines that need to be moved down +or cleared. An asterisk (`*') following the padding time says that the +time should be multiplied by the number of screen lines affected by the +command. + + :al=1.3*\E[L: + +is used to describe the "insert line" command for a certain terminal. +The padding required is 1.3 msec per line affected. The command itself +is `ESC [ L'. + + The padding time specified in this way tells `tputs' how many pad +characters to output. *Note Output Padding::. + + Two special capability values affect padding for all commands. +These are the `pc' and `pb'. The variable `pc' specifies the character +to pad with, and `pb' the speed below which no padding is needed. The +defaults for these variables, a null character and 0, are correct for +most terminals. *Note Pad Specs::. + + +File: termcap.info, Node: Output Padding, Prev: Describe Padding, Up: Padding + +Performing Padding with `tputs' +------------------------------- + + Use the termcap function `tputs' to output a string containing an +optional padding spec of the form described above (*note Describe +Padding::.). The function `tputs' strips off and decodes the padding +spec, outputs the rest of the string, and then outputs the appropriate +padding. Here is its declaration in ANSI C: + + char PC; + short ospeed; + + int tputs (char *STRING, int NLINES, int (*OUTFUN) ()); + + Here STRING is the string (including padding spec) to be output; +NLINES is the number of lines affected by the operation, which is used +to multiply the amount of padding if the padding spec ends with a `*'. +Finally, OUTFUN is a function (such as `fputchar') that is called to +output each character. When actually called, OUTFUN should expect one +argument, a character. + + The operation of `tputs' is controlled by two global variables, +`ospeed' and `PC'. The value of `ospeed' is supposed to be the +terminal output speed, encoded as in the `ioctl' system call which gets +the speed information. This is needed to compute the number of padding +characters. The value of `PC' is the character used for padding. + + You are responsible for storing suitable values into these variables +before using `tputs'. The value stored into the `PC' variable should be +taken from the `pc' capability in the terminal description (*note Pad +Specs::.). Store zero in `PC' if there is no `pc' capability. + + The argument NLINES requires some thought. Normally, it should be +the number of lines whose contents will be cleared or moved by the +command. For cursor motion commands, or commands that do editing +within one line, use the value 1. For most commands that affect +multiple lines, such as `al' (insert a line) and `cd' (clear from the +cursor to the end of the screen), NLINES should be the screen height +minus the current vertical position (origin 0). For multiple insert +and scroll commands such as `AL' (insert multiple lines), that same +value for NLINES is correct; the number of lines being inserted is not +correct. + + If a "scroll window" feature is used to reduce the number of lines +affected by a command, the value of NLINES should take this into +account. This is because the delay time required depends on how much +work the terminal has to do, and the scroll window feature reduces the +work. *Note Scrolling::. + + Commands such as `ic' and `dc' (insert or delete characters) are +problematical because the padding needed by these commands is +proportional to the number of characters affected, which is the number +of columns from the cursor to the end of the line. It would be nice to +have a way to specify such a dependence, and there is no need for +dependence on vertical position in these commands, so it is an obvious +idea to say that for these commands NLINES should really be the number +of columns affected. However, the definition of termcap clearly says +that NLINES is always the number of lines affected, even in this case, +where it is always 1. It is not easy to change this rule now, because +too many programs and terminal descriptions have been written to follow +it. + + Because NLINES is always 1 for the `ic' and `dc' strings, there is +no reason for them to use `*', but some of them do. These should be +corrected by deleting the `*'. If, some day, such entries have +disappeared, it may be possible to change to a more useful convention +for the NLINES argument for these operations without breaking any +programs. + + +File: termcap.info, Node: Parameters, Prev: Padding, Up: Library + +Filling In Parameters +===================== + + Some terminal control strings require numeric "parameters". For +example, when you move the cursor, you need to say what horizontal and +vertical positions to move it to. The value of the terminal's `cm' +capability, which says how to move the cursor, cannot simply be a +string of characters; it must say how to express the cursor position +numbers and where to put them within the command. + + The specifications of termcap include conventions as to which +string-valued capabilities require parameters, how many parameters, and +what the parameters mean; for example, it defines the `cm' string to +take two parameters, the vertical and horizontal positions, with 0,0 +being the upper left corner. These conventions are described where the +individual commands are documented. + + Termcap also defines a language used within the capability +definition for specifying how and where to encode the parameters for +output. This language uses character sequences starting with `%'. +(This is the same idea as `printf', but the details are different.) +The language for parameter encoding is described in this section. + + A program that is doing display output calls the functions `tparam' +or `tgoto' to encode parameters according to the specifications. These +functions produce a string containing the actual commands to be output +(as well a padding spec which must be processed with `tputs'; *note +Padding::.). + +* Menu: + +* Encode Parameters:: The language for encoding parameters. +* Using Parameters:: Outputting a string command with parameters. + + +File: termcap.info, Node: Encode Parameters, Next: Using Parameters, Up: Parameters + +Describing the Encoding +----------------------- + + A terminal command string that requires parameters contains special +character sequences starting with `%' to say how to encode the +parameters. These sequences control the actions of `tparam' and +`tgoto'. + + The parameters values passed to `tparam' or `tgoto' are considered +to form a vector. A pointer into this vector determines the next +parameter to be processed. Some of the `%'-sequences encode one +parameter and advance the pointer to the next parameter. Other +`%'-sequences alter the pointer or alter the parameter values without +generating output. + + For example, the `cm' string for a standard ANSI terminal is written +as `\E[%i%d;%dH'. (`\E' stands for ESC.) `cm' by convention always +requires two parameters, the vertical and horizontal goal positions, so +this string specifies the encoding of two parameters. Here `%i' +increments the two values supplied, and each `%d' encodes one of the +values in decimal. If the cursor position values 20,58 are encoded +with this string, the result is `\E[21;59H'. + + First, here are the `%'-sequences that generate output. Except for +`%%', each of them encodes one parameter and advances the pointer to +the following parameter. + +`%%' + Output a single `%'. This is the only way to represent a literal + `%' in a terminal command with parameters. `%%' does not use up a + parameter. + +`%d' + As in `printf', output the next parameter in decimal. + +`%2' + Like `%02d' in `printf': output the next parameter in decimal, and + always use at least two digits. + +`%3' + Like `%03d' in `printf': output the next parameter in decimal, and + always use at least three digits. Note that `%4' and so on are + *not* defined. + +`%.' + Output the next parameter as a single character whose ASCII code is + the parameter value. Like `%c' in `printf'. + +`%+CHAR' + Add the next parameter to the character CHAR, and output the + resulting character. For example, `%+ ' represents 0 as a space, + 1 as `!', etc. + + The following `%'-sequences specify alteration of the parameters +(their values, or their order) rather than encoding a parameter for +output. They generate no output; they are used only for their side +effects on the parameters. Also, they do not advance the "next +parameter" pointer except as explicitly stated. Only `%i', `%r' and +`%>' are defined in standard Unix termcap. The others are GNU +extensions. + +`%i' + Increment the next two parameters. This is used for terminals that + expect cursor positions in origin 1. For example, `%i%d,%d' would + output two parameters with `1' for 0, `2' for 1, etc. + +`%r' + Interchange the next two parameters. This is used for terminals + whose cursor positioning command expects the horizontal position + first. + +`%s' + Skip the next parameter. Do not output anything. + +`%b' + Back up one parameter. The last parameter used will become once + again the next parameter to be output, and the next output command + will use it. Using `%b' more than once, you can back up any + number of parameters, and you can refer to each parameter any + number of times. + +`%>C1C2' + Conditionally increment the next parameter. Here C1 and C2 are + characters which stand for their ASCII codes as numbers. If the + next parameter is greater than the ASCII code of C1, the ASCII + code of C2 is added to it. + +`%a OP TYPE POS' + Perform arithmetic on the next parameter, do not use it up, and do + not output anything. Here OP specifies the arithmetic operation, + while TYPE and POS together specify the other operand. + + Spaces are used above to separate the operands for clarity; the + spaces don't appear in the data base, where this sequence is + exactly five characters long. + + The character OP says what kind of arithmetic operation to + perform. It can be any of these characters: + + `=' + assign a value to the next parameter, ignoring its old value. + The new value comes from the other operand. + + `+' + add the other operand to the next parameter. + + `-' + subtract the other operand from the next parameter. + + `*' + multiply the next parameter by the other operand. + + `/' + divide the next parameter by the other operand. + + The "other operand" may be another parameter's value or a constant; + the character TYPE says which. It can be: + + `p' + Use another parameter. The character POS says which + parameter to use. Subtract 64 from its ASCII code to get the + position of the desired parameter relative to this one. Thus, + the character `A' as POS means the parameter after the next + one; the character `?' means the parameter before the next + one. + + `c' + Use a constant value. The character POS specifies the value + of the constant. The 0200 bit is cleared out, so that 0200 + can be used to represent zero. + + The following `%'-sequences are special purpose hacks to compensate +for the weird designs of obscure terminals. They modify the next +parameter or the next two parameters but do not generate output and do +not use up any parameters. `%m' is a GNU extension; the others are +defined in standard Unix termcap. + +`%n' + Exclusive-or the next parameter with 0140, and likewise the + parameter after next. + +`%m' + Complement all the bits of the next parameter and the parameter + after next. + +`%B' + Encode the next parameter in BCD. It alters the value of the + parameter by adding six times the quotient of the parameter by ten. + Here is a C statement that shows how the new value is computed: + + PARM = (PARM / 10) * 16 + PARM % 10; + +`%D' + Transform the next parameter as needed by Delta Data terminals. + This involves subtracting twice the remainder of the parameter by + 16. + + PARM -= 2 * (PARM % 16); + + +File: termcap.info, Node: Using Parameters, Prev: Encode Parameters, Up: Parameters + +Sending Display Commands with Parameters +---------------------------------------- + + The termcap library functions `tparam' and `tgoto' serve as the +analog of `printf' for terminal string parameters. The newer function +`tparam' is a GNU extension, more general but missing from Unix +termcap. The original parameter-encoding function is `tgoto', which is +preferable for cursor motion. + +* Menu: + +* tparam:: The general case, for GNU termcap only. +* tgoto:: The special case of cursor motion. + + +File: termcap.info, Node: tparam, Next: tgoto, Up: Using Parameters + +`tparam' +........ + + The function `tparam' can encode display commands with any number of +parameters and allows you to specify the buffer space. It is the +preferred function for encoding parameters for all but the `cm' +capability. Its ANSI C declaration is as follows: + + char *tparam (char *CTLSTRING, char *BUFFER, int SIZE, int PARM1,...) + + The arguments are a control string CTLSTRING (the value of a terminal +capability, presumably), an output buffer BUFFER and SIZE, and any +number of integer parameters to be encoded. The effect of `tparam' is +to copy the control string into the buffer, encoding parameters +according to the `%' sequences in the control string. + + You describe the output buffer by its address, BUFFER, and its size +in bytes, SIZE. If the buffer is not big enough for the data to be +stored in it, `tparam' calls `malloc' to get a larger buffer. In +either case, `tparam' returns the address of the buffer it ultimately +uses. If the value equals BUFFER, your original buffer was used. +Otherwise, a new buffer was allocated, and you must free it after you +are done with printing the results. If you pass zero for SIZE and +BUFFER, `tparam' always allocates the space with `malloc'. + + All capabilities that require parameters also have the ability to +specify padding, so you should use `tputs' to output the string +produced by `tparam'. *Note Padding::. Here is an example. + + { + char *buf; + char buffer[40]; + + buf = tparam (command, buffer, 40, parm); + tputs (buf, 1, fputchar); + if (buf != buffer) + free (buf); + } + + If a parameter whose value is zero is encoded with `%.'-style +encoding, the result is a null character, which will confuse `tputs'. +This would be a serious problem, but luckily `%.' encoding is used only +by a few old models of terminal, and only for the `cm' capability. To +solve the problem, use `tgoto' rather than `tparam' to encode the `cm' +capability. + + +File: termcap.info, Node: tgoto, Prev: tparam, Up: Using Parameters + +`tgoto' +....... + + The special case of cursor motion is handled by `tgoto'. There are +two reasons why you might choose to use `tgoto': + + * For Unix compatibility, because Unix termcap does not have + `tparam'. + + * For the `cm' capability, since `tgoto' has a special feature to + avoid problems with null characters, tabs and newlines on certain + old terminal types that use `%.' encoding for that capability. + + Here is how `tgoto' might be declared in ANSI C: + + char *tgoto (char *CSTRING, int HPOS, int VPOS) + + There are three arguments, the terminal description's `cm' string and +the two cursor position numbers; `tgoto' computes the parametrized +string in an internal static buffer and returns the address of that +buffer. The next time you use `tgoto' the same buffer will be reused. + + Parameters encoded with `%.' encoding can generate null characters, +tabs or newlines. These might cause trouble: the null character because +`tputs' would think that was the end of the string, the tab because the +kernel or other software might expand it into spaces, and the newline +becaue the kernel might add a carriage-return, or padding characters +normally used for a newline. To prevent such problems, `tgoto' is +careful to avoid these characters. Here is how this works: if the +target cursor position value is such as to cause a problem (that is to +say, zero, nine or ten), `tgoto' increments it by one, then compensates +by appending a string to move the cursor back or up one position. + + The compensation strings to use for moving back or up are found in +global variables named `BC' and `UP'. These are actual external C +variables with upper case names; they are declared `char *'. It is up +to you to store suitable values in them, normally obtained from the +`le' and `up' terminal capabilities in the terminal description with +`tgetstr'. Alternatively, if these two variables are both zero, the +feature of avoiding nulls, tabs and newlines is turned off. + + It is safe to use `tgoto' for commands other than `cm' only if you +have stored zero in `BC' and `UP'. + + Note that `tgoto' reverses the order of its operands: the horizontal +position comes before the vertical position in the arguments to +`tgoto', even though the vertical position comes before the horizontal +in the parameters of the `cm' string. If you use `tgoto' with a +command such as `AL' that takes one parameter, you must pass the +parameter to `tgoto' as the "vertical position". + + +File: termcap.info, Node: Data Base, Next: Capabilities, Prev: Library, Up: Top + +The Format of the Data Base +*************************** + + The termcap data base of terminal descriptions is stored in the file +`/etc/termcap'. It contains terminal descriptions, blank lines, and +comments. + + A terminal description starts with one or more names for the +terminal type. The information in the description is a series of +"capability names" and values. The capability names have standard +meanings (*note Capabilities::.) and their values describe the terminal. + +* Menu: + +* Format:: Overall format of a terminal description. +* Capability Format:: Format of capabilities within a description. +* Naming:: Naming conventions for terminal types. +* Inheriting:: Inheriting part of a description from +a related terminal type. +* Changing:: When changes in the data base take effect. + + +File: termcap.info, Node: Format, Next: Capability Format, Up: Data Base + +Terminal Description Format +=========================== + + Aside from comments (lines starting with `#', which are ignored), +each nonblank line in the termcap data base is a terminal description. +A terminal description is nominally a single line, but it can be split +into multiple lines by inserting the two characters `\ newline'. This +sequence is ignored wherever it appears in a description. + + The preferred way to split the description is between capabilities: +insert the four characters `: \ newline tab' immediately before any +colon. This allows each sub-line to start with some indentation. This +works because, after the `\ newline' are ignored, the result is `: tab +:'; the first colon ends the preceding capability and the second colon +starts the next capability. If you split with `\ newline' alone, you +may not add any indentation after them. + + Here is a real example of a terminal description: + + dw|vt52|DEC vt52:\ + :cr=^M:do=^J:nl=^J:bl=^G:\ + :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :co#80:li#24:\ + :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\ + :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: + + Each terminal description begins with several names for the terminal +type. The names are separated by `|' characters, and a colon ends the +last name. The first name should be two characters long; it exists +only for the sake of very old Unix systems and is never used in modern +systems. The last name should be a fully verbose name such as "DEC +vt52" or "Ann Arbor Ambassador with 48 lines". The other names should +include whatever the user ought to be able to specify to get this +terminal type, such as `vt52' or `aaa-48'. *Note Naming::, for +information on how to choose terminal type names. + + After the terminal type names come the terminal capabilities, +separated by colons and with a colon after the last one. Each +capability has a two-letter name, such as `cm' for "cursor motion +string" or `li' for "number of display lines". + + +File: termcap.info, Node: Capability Format, Next: Naming, Prev: Format, Up: Data Base + +Writing the Capabilities +======================== + + There are three kinds of capabilities: flags, numbers, and strings. +Each kind has its own way of being written in the description. Each +defined capability has by convention a particular kind of value; for +example, `li' always has a numeric value and `cm' always a string value. + + A flag capability is thought of as having a boolean value: the value +is true if the capability is present, false if not. When the +capability is present, just write its name between two colons. + + A numeric capability has a value which is a nonnegative number. +Write the capability name, a `#', and the number, between two colons. +For example, `...:li#48:...' is how you specify the `li' capability for +48 lines. + + A string-valued capability has a value which is a sequence of +characters. Usually these are the characters used to perform some +display operation. Write the capability name, a `=', and the +characters of the value, between two colons. For example, +`...:cm=\E[%i%d;%dH:...' is how the cursor motion command for a +standard ANSI terminal would be specified. + + Special characters in the string value can be expressed using +`\'-escape sequences as in C; in addition, `\E' stands for ESC. `^' is +also a kind of escape character; `^' followed by CHAR stands for the +control-equivalent of CHAR. Thus, `^a' stands for the character +control-a, just like `\001'. `\' and `^' themselves can be represented +as `\\' and `\^'. + + To include a colon in the string, you must write `\072'. You might +ask, "Why can't `\:' be used to represent a colon?" The reason is that +the interrogation functions do not count slashes while looking for a +capability. Even if `:ce=ab\:cd:' were interpreted as giving the `ce' +capability the value `ab:cd', it would also appear to define `cd' as a +flag. + + The string value will often contain digits at the front to specify +padding (*note Padding::.) and/or `%'-sequences within to specify how +to encode parameters (*note Parameters::.). Although these things are +not to be output literally to the terminal, they are considered part of +the value of the capability. They are special only when the string +value is processed by `tputs', `tparam' or `tgoto'. By contrast, `\' +and `^' are considered part of the syntax for specifying the characters +in the string. + + Let's look at the VT52 example again: + + dw|vt52|DEC vt52:\ + :cr=^M:do=^J:nl=^J:bl=^G:\ + :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :co#80:li#24:\ + :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\ + :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: + + Here we see the numeric-valued capabilities `co' and `li', the flags +`bs' and `pt', and many string-valued capabilities. Most of the +strings start with ESC represented as `\E'. The rest contain control +characters represented using `^'. The meanings of the individual +capabilities are defined elsewhere (*note Capabilities::.). + diff --git a/src/libs/termcap/termcap.info-2 b/src/libs/termcap/termcap.info-2 new file mode 100644 index 0000000000..6098d62dfb --- /dev/null +++ b/src/libs/termcap/termcap.info-2 @@ -0,0 +1,974 @@ +This is Info file ./termcap.info, produced by Makeinfo-1.55 from the +input file ./termcap.texi. + + This file documents the termcap library of the GNU system. + + Copyright (C) 1988 Free Software Foundation, Inc. + + Permission is granted to make and distribute verbatim copies of this +manual provided the copyright notice and this permission notice are +preserved on all copies. + + Permission is granted to copy and distribute modified versions of +this manual under the conditions for verbatim copying, provided that +the entire resulting derived work is distributed under the terms of a +permission notice identical to this one. + + Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be stated in a +translation approved by the Foundation. + + +File: termcap.info, Node: Naming, Next: Inheriting, Prev: Capability Format, Up: Data Base + +Terminal Type Name Conventions +============================== + + There are conventions for choosing names of terminal types. For one +thing, all letters should be in lower case. The terminal type for a +terminal in its most usual or most fundamental mode of operation should +not have a hyphen in it. + + If the same terminal has other modes of operation which require +different terminal descriptions, these variant descriptions are given +names made by adding suffixes with hyphens. Such alternate descriptions +are used for two reasons: + + * When the terminal has a switch that changes its behavior. Since + the computer cannot tell how the switch is set, the user must tell + the computer by choosing the appropriate terminal type name. + + For example, the VT-100 has a setup flag that controls whether the + cursor wraps at the right margin. If this flag is set to "wrap", + you must use the terminal type `vt100-am'. Otherwise you must use + `vt100-nam'. Plain `vt100' is defined as a synonym for either + `vt100-am' or `vt100-nam' depending on the preferences of the + local site. + + The standard suffix `-am' stands for "automatic margins". + + * To give the user a choice in how to use the terminal. This is done + when the terminal has a switch that the computer normally controls. + + For example, the Ann Arbor Ambassador can be configured with many + screen sizes ranging from 20 to 60 lines. Fewer lines make bigger + characters but more lines let you see more of what you are editing. + As a result, users have different preferences. Therefore, termcap + provides terminal types for many screen sizes. If you choose type + `aaa-30', the terminal will be configured to use 30 lines; if you + choose `aaa-48', 48 lines will be used, and so on. + + Here is a list of standard suffixes and their conventional meanings: + +`-w' + Short for "wide". This is a mode that gives the terminal more + columns than usual. This is normally a user option. + +`-am' + "Automatic margins". This is an alternate description for use when + the terminal's margin-wrap switch is on; it contains the `am' + flag. The implication is that normally the switch is off and the + usual description for the terminal says that the switch is off. + +`-nam' + "No automatic margins". The opposite of `-am', this names an + alternative description which lacks the `am' flag. This implies + that the terminal is normally operated with the margin-wrap switch + turned on, and the normal description of the terminal says so. + +`-na' + "No arrows". This terminal description initializes the terminal to + keep its arrow keys in local mode. This is a user option. + +`-rv' + "Reverse video". This terminal description causes text output for + normal video to appear as reverse, and text output for reverse + video to come out as normal. Often this description differs from + the usual one by interchanging the two strings which turn reverse + video on and off. + + This is a user option; you can choose either the "reverse video" + variant terminal type or the normal terminal type, and termcap will + obey. + +`-s' + "Status". Says to enable use of a status line which ordinary + output does not touch (*note Status Line::.). + + Some terminals have a special line that is used only as a status + line. For these terminals, there is no need for an `-s' variant; + the status line commands should be defined by default. On other + terminals, enabling a status line means removing one screen line + from ordinary use and reducing the effective screen height. For + these terminals, the user can choose the `-s' variant type to + request use of a status line. + +`-NLINES' + Says to operate with NLINES lines on the screen, for terminals + such as the Ambassador which provide this as an option. Normally + this is a user option; by choosing the terminal type, you control + how many lines termcap will use. + +`-NPAGESp' + Says that the terminal has NPAGES pages worth of screen memory, + for terminals where this is a hardware option. + +`-unk' + Says that description is not for direct use, but only for + reference in `tc' capabilities. Such a description is a kind of + subroutine, because it describes the common characteristics of + several variant descriptions that would use other suffixes in + place of `-unk'. + + +File: termcap.info, Node: Inheriting, Next: Changing, Prev: Naming, Up: Data Base + +Inheriting from Related Descriptions +==================================== + + When two terminal descriptions are similar, their identical parts do +not need to be given twice. Instead, one of the two can be defined in +terms of the other, using the `tc' capability. We say that one +description "refers to" the other, or "inherits from" the other. + + The `tc' capability must be the last one in the terminal description, +and its value is a string which is the name of another terminal type +which is referred to. For example, + + N9|aaa|ambassador|aaa-30|ann arbor ambassador/30 lines:\ + :ti=\E[2J\E[30;0;0;30p:\ + :te=\E[60;0;0;30p\E[30;1H\E[J:\ + :li#30:tc=aaa-unk: + +defines the terminal type `aaa-30' (also known as plain `aaa') in terms +of `aaa-unk', which defines everything about the Ambassador that is +independent of screen height. The types `aaa-36', `aaa-48' and so on +for other screen heights are likewise defined to inherit from `aaa-unk'. + + The capabilities overridden by `aaa-30' include `li', which says how +many lines there are, and `ti' and `te', which configure the terminal +to use that many lines. + + The effective terminal description for type `aaa' consists of the +text shown above followed by the text of the description of `aaa-unk'. +The `tc' capability is handled automatically by `tgetent', which finds +the description thus referenced and combines the two descriptions +(*note Find::.). Therefore, only the implementor of the terminal +descriptions needs to think about using `tc'. Users and application +programmers do not need to be concerned with it. + + Since the reference terminal description is used last, capabilities +specified in the referring description override any specifications of +the same capabilities in the reference description. + + The referring description can cancel out a capability without +specifying any new value for it by means of a special trick. Write the +capability in the referring description, with the character `@' after +the capability name, as follows: + + NZ|aaa-30-nam|ann arbor ambassador/30 lines/no automatic-margins:\ + :am@:tc=aaa-30: + + +File: termcap.info, Node: Changing, Prev: Inheriting, Up: Data Base + +When Changes in the Data Base Take Effect +========================================= + + Each application program must read the terminal description from the +data base, so a change in the data base is effective for all jobs +started after the change is made. + + The change will usually have no effect on a job that have been in +existence since before the change. The program probably read the +terminal description once, when it was started, and is continuing to +use what it read then. If the program does not have a feature for +reexamining the data base, then you will need to run it again (probably +killing the old job). + + If the description in use is coming from the `TERMCAP' environment +variable, then the data base file is effectively overridden, and +changes in it will have no effect until you change the `TERMCAP' +variable as well. For example, some users' `.login' files +automatically copy the terminal description into `TERMCAP' to speed +startup of applications. If you have done this, you will need to +change the `TERMCAP' variable to make the changed data base take effect. + + +File: termcap.info, Node: Capabilities, Next: Summary, Prev: Data Base, Up: Top + +Definitions of the Terminal Capabilities +**************************************** + + This section is divided into many subsections, each for one aspect of +use of display terminals. For writing a display program, you usually +need only check the subsections for the operations you want to use. +For writing a terminal description, you must read each subsection and +fill in the capabilities described there. + + String capabilities that are display commands may require numeric +parameters (*note Parameters::.). Most such capabilities do not use +parameters. When a capability requires parameters, this is explicitly +stated at the beginning of its definition. In simple cases, the first +or second sentence of the definition mentions all the parameters, in +the order they should be given, using a name in upper case for each +one. For example, the `rp' capability is a command that requires two +parameters; its definition begins as follows: + + String of commands to output a graphic character C, repeated N + times. + + In complex cases or when there are many parameters, they are +described explicitly. + + When a capability is described as obsolete, this means that programs +should not be written to look for it, but terminal descriptions should +still be written to provide it. + + When a capability is described as very obsolete, this means that it +should be omitted from terminal descriptions as well. + +* Menu: + +* Basic:: Basic characteristics. +* Screen Size:: Screen size, and what happens when it changes. +* Cursor Motion:: Various ways to move the cursor. +* Wrapping:: What happens if you write a character in the last column. +* Scrolling:: Pushing text up and down on the screen. +* Windows:: Limiting the part of the window that output affects. +* Clearing:: Erasing one or many lines. +* Insdel Line:: Making new blank lines in mid-screen; deleting lines. +* Insdel Char:: Inserting and deleting characters within a line. +* Standout:: Highlighting some of the text. +* Underlining:: Underlining some of the text. +* Cursor Visibility:: Making the cursor more or less easy to spot. +* Bell:: Attracts user's attention; not localized on the screen. +* Keypad:: Recognizing when function keys or arrows are typed. +* Meta Key:: META acts like an extra shift key. +* Initialization:: Commands used to initialize or reset the terminal. +* Pad Specs:: Info for the kernel on how much padding is needed. +* Status Line:: A status line displays "background" information. +* Half-Line:: Moving by half-lines, for superscripts and subscripts. +* Printer:: Controlling auxiliary printers of display terminals. + + +File: termcap.info, Node: Basic, Next: Screen Size, Up: Capabilities + +Basic Characteristics +===================== + + This section documents the capabilities that describe the basic and +nature of the terminal, and also those that are relevant to the output +of graphic characters. + +`os' + Flag whose presence means that the terminal can overstrike. This + means that outputting a graphic character does not erase whatever + was present in the same character position before. The terminals + that can overstrike include printing terminals, storage tubes (all + obsolete nowadays), and many bit-map displays. + +`eo' + Flag whose presence means that outputting a space erases a + character position even if the terminal supports overstriking. If + this flag is not present and overstriking is supported, output of + a space has no effect except to move the cursor. + + (On terminals that do not support overstriking, you can always + assume that outputting a space at a position erases whatever + character was previously displayed there.) + +`gn' + Flag whose presence means that this terminal type is a generic type + which does not really describe any particular terminal. Generic + types are intended for use as the default type assigned when the + user connects to the system, with the intention that the user + should specify what type he really has. One example of a generic + type is the type `network'. + + Since the generic type cannot say how to do anything interesting + with the terminal, termcap-using programs will always find that the + terminal is too weak to be supported if the user has failed to + specify a real terminal type in place of the generic one. The + `gn' flag directs these programs to use a different error message: + "You have not specified your real terminal type", rather than + "Your terminal is not powerful enough to be used". + +`hc' + Flag whose presence means this is a hardcopy terminal. + +`rp' + String of commands to output a graphic character C, repeated N + times. The first parameter value is the ASCII code for the desired + character, and the second parameter is the number of times to + repeat the character. Often this command requires padding + proportional to the number of times the character is repeated. + This effect can be had by using parameter arithmetic with + `%'-sequences to compute the amount of padding, then generating + the result as a number at the front of the string so that `tputs' + will treat it as padding. + +`hz' + Flag whose presence means that the ASCII character `~' cannot be + output on this terminal because it is used for display commands. + + Programs handle this flag by checking all text to be output and + replacing each `~' with some other character(s). If this is not + done, the screen will be thoroughly garbled. + + The old Hazeltine terminals that required such treatment are + probably very rare today, so you might as well not bother to + support this flag. + +`CC' + String whose presence means the terminal has a settable command + character. The value of the string is the default command + character (which is usually ESC). + + All the strings of commands in the terminal description should be + written to use the default command character. If you are writing + an application program that changes the command character, use the + `CC' capability to figure out how to translate all the display + commands to work with the new command character. + + Most programs have no reason to look at the `CC' capability. + +`xb' + Flag whose presence identifies Superbee terminals which are unable + to transmit the characters ESC and `Control-C'. Programs which + support this flag are supposed to check the input for the code + sequences sent by the F1 and F2 keys, and pretend that ESC or + `Control-C' (respectively) had been read. But this flag is + obsolete, and not worth supporting. + + +File: termcap.info, Node: Screen Size, Next: Cursor Motion, Prev: Basic, Up: Capabilities + +Screen Size +=========== + + A terminal description has two capabilities, `co' and `li', that +describe the screen size in columns and lines. But there is more to +the question of screen size than this. + + On some operating systems the "screen" is really a window and the +effective width can vary. On some of these systems, `tgetnum' uses the +actual width of the window to decide what value to return for the `co' +capability, overriding what is actually written in the terminal +description. On other systems, it is up to the application program to +check the actual window width using a system call. For example, on BSD +4.3 systems, the system call `ioctl' with code `TIOCGWINSZ' will tell +you the current screen size. + + On all window systems, termcap is powerless to advise the application +program if the user resizes the window. Application programs must deal +with this possibility in a system-dependent fashion. On some systems +the C shell handles part of the problem by detecting changes in window +size and setting the `TERMCAP' environment variable appropriately. +This takes care of application programs that are started subsequently. +It does not help application programs already running. + + On some systems, including BSD 4.3, all programs using a terminal get +a signal named `SIGWINCH' whenever the screen size changes. Programs +that use termcap should handle this signal by using `ioctl TIOCGWINSZ' +to learn the new screen size. + +`co' + Numeric value, the width of the screen in character positions. + Even hardcopy terminals normally have a `co' capability. + +`li' + Numeric value, the height of the screen in lines. + + +File: termcap.info, Node: Cursor Motion, Next: Wrapping, Prev: Screen Size, Up: Capabilities + +Cursor Motion +============= + + Termcap assumes that the terminal has a "cursor", a spot on the +screen where a visible mark is displayed, and that most display +commands take effect at the position of the cursor. It follows that +moving the cursor to a specified location is very important. + + There are many terminal capabilities for different cursor motion +operations. A terminal description should define as many as possible, +but most programs do not need to use most of them. One capability, +`cm', moves the cursor to an arbitrary place on the screen; this by +itself is sufficient for any application as long as there is no need to +support hardcopy terminals or certain old, weak displays that have only +relative motion commands. Use of other cursor motion capabilities is an +optimization, enabling the program to output fewer characters in some +common cases. + + If you plan to use the relative cursor motion commands in an +application program, you must know what the starting cursor position +is. To do this, you must keep track of the cursor position and update +the records each time anything is output to the terminal, including +graphic characters. In addition, it is necessary to know whether the +terminal wraps after writing in the rightmost column. *Note Wrapping::. + + One other motion capability needs special mention: `nw' moves the +cursor to the beginning of the following line, perhaps clearing all the +starting line after the cursor, or perhaps not clearing at all. This +capability is a least common denominator that is probably supported +even by terminals that cannot do most other things such as `cm' or `do'. +Even hardcopy terminals can support `nw'. + +`cm' + String of commands to position the cursor at line L, column C. + Both parameters are origin-zero, and are defined relative to the + screen, not relative to display memory. + + All display terminals except a few very obsolete ones support `cm', + so it is acceptable for an application program to refuse to + operate on terminals lacking `cm'. + +`ho' + String of commands to move the cursor to the upper left corner of + the screen (this position is called the "home position"). In + terminals where the upper left corner of the screen is not the + same as the beginning of display memory, this command must go to + the upper left corner of the screen, not the beginning of display + memory. + + Every display terminal supports this capability, and many + application programs refuse to operate if the `ho' capability is + missing. + +`ll' + String of commands to move the cursor to the lower left corner of + the screen. On some terminals, moving up from home position does + this, but programs should never assume that will work. Just + output the `ll' string (if it is provided); if moving to home + position and then moving up is the best way to get there, the `ll' + command will do that. + +`cr' + String of commands to move the cursor to the beginning of the line + it is on. If this capability is not specified, many programs + assume they can use the ASCII carriage return character for this. + +`le' + String of commands to move the cursor left one column. Unless the + `bw' flag capability is specified, the effect is undefined if the + cursor is at the left margin; do not use this command there. If + `bw' is present, this command may be used at the left margin, and + it wraps the cursor to the last column of the preceding line. + +`nd' + String of commands to move the cursor right one column. The + effect is undefined if the cursor is at the right margin; do not + use this command there, not even if `am' is present. + +`up' + String of commands to move the cursor vertically up one line. The + effect of sending this string when on the top line is undefined; + programs should never use it that way. + +`do' + String of commands to move the cursor vertically down one line. + The effect of sending this string when on the bottom line is + undefined; programs should never use it that way. + + Some programs do use `do' to scroll up one line if used at the + bottom line, if `sf' is not defined but `sr' is. This is only to + compensate for certain old, incorrect terminal descriptions. (In + principle this might actually lead to incorrect behavior on other + terminals, but that seems to happen rarely if ever.) But the + proper solution is that the terminal description should define + `sf' as well as `do' if the command is suitable for scrolling. + + The original idea was that this string would not contain a newline + character and therefore could be used without disabling the + kernel's usual habit of converting of newline into a + carriage-return newline sequence. But many terminal descriptions + do use newline in the `do' string, so this is not possible; a + program which sends the `do' string must disable output conversion + in the kernel (*note Initialize::.). + +`bw' + Flag whose presence says that `le' may be used in column zero to + move to the last column of the preceding line. If this flag is + not present, `le' should not be used in column zero. + +`nw' + String of commands to move the cursor to start of next line, + possibly clearing rest of line (following the cursor) before + moving. + +`DO', `UP', `LE', `RI' + Strings of commands to move the cursor N lines down vertically, up + vertically, or N columns left or right. Do not attempt to move + past any edge of the screen with these commands; the effect of + trying that is undefined. Only a few terminal descriptions provide + these commands, and most programs do not use them. + +`CM' + String of commands to position the cursor at line L, column C, + relative to display memory. Both parameters are origin-zero. + This capability is present only in terminals where there is a + difference between screen-relative and memory-relative addressing, + and not even in all such terminals. + +`ch' + String of commands to position the cursor at column C in the same + line it is on. This is a special case of `cm' in which the + vertical position is not changed. The `ch' capability is provided + only when it is faster to output than `cm' would be in this + special case. Programs should not assume most display terminals + have `ch'. + +`cv' + String of commands to position the cursor at line L in the same + column. This is a special case of `cm' in which the horizontal + position is not changed. The `cv' capability is provided only + when it is faster to output than `cm' would be in this special + case. Programs should not assume most display terminals have `cv'. + +`sc' + String of commands to make the terminal save the current cursor + position. Only the last saved position can be used. If this + capability is present, `rc' should be provided also. Most + terminals have neither. + +`rc' + String of commands to make the terminal restore the last saved + cursor position. If this capability is present, `sc' should be + provided also. Most terminals have neither. + +`ff' + String of commands to advance to the next page, for a hardcopy + terminal. + +`ta' + String of commands to move the cursor right to the next hardware + tab stop column. Missing if the terminal does not have any kind of + hardware tabs. Do not send this command if the kernel's terminal + modes say that the kernel is expanding tabs into spaces. + +`bt' + String of commands to move the cursor left to the previous hardware + tab stop column. Missing if the terminal has no such ability; many + terminals do not. Do not send this command if the kernel's + terminal modes say that the kernel is expanding tabs into spaces. + + The following obsolete capabilities should be included in terminal +descriptions when appropriate, but should not be looked at by new +programs. + +`nc' + Flag whose presence means the terminal does not support the ASCII + carriage return character as `cr'. This flag is needed because + old programs assume, when the `cr' capability is missing, that + ASCII carriage return can be used for the purpose. We use `nc' to + tell the old programs that carriage return may not be used. + + New programs should not assume any default for `cr', so they need + not look at `nc'. However, descriptions should contain `nc' + whenever they do not contain `cr'. + +`xt' + Flag whose presence means that the ASCII tab character may not be + used for cursor motion. This flag exists because old programs + assume, when the `ta' capability is missing, that ASCII tab can be + used for the purpose. We use `xt' to tell the old programs not to + use tab. + + New programs should not assume any default for `ta', so they need + not look at `xt' in connection with cursor motion. Note that `xt' + also has implications for standout mode (*note Standout::.). It + is obsolete in regard to cursor motion but not in regard to + standout. + + In fact, `xt' means that the terminal is a Teleray 1061. + +`bc' + Very obsolete alternative name for the `le' capability. + +`bs' + Flag whose presence means that the ASCII character backspace may be + used to move the cursor left. Obsolete; look at `le' instead. + +`nl' + Obsolete capability which is a string that can either be used to + move the cursor down or to scroll. The same string must scroll + when used on the bottom line and move the cursor when used on any + other line. New programs should use `do' or `sf', and ignore `nl'. + + If there is no `nl' capability, some old programs assume they can + use the newline character for this purpose. These programs follow + a bad practice, but because they exist, it is still desirable to + define the `nl' capability in a terminal description if the best + way to move down is *not* a newline. + + +File: termcap.info, Node: Wrapping, Next: Scrolling, Prev: Cursor Motion, Up: Capabilities + +Wrapping +======== + + "Wrapping" means moving the cursor from the right margin to the left +margin of the following line. Some terminals wrap automatically when a +graphic character is output in the last column, while others do not. +Most application programs that use termcap need to know whether the +terminal wraps. There are two special flag capabilities to describe +what the terminal does when a graphic character is output in the last +column. + +`am' + Flag whose presence means that writing a character in the last + column causes the cursor to wrap to the beginning of the next line. + + If `am' is not present, writing in the last column leaves the + cursor at the place where the character was written. + + Writing in the last column of the last line should be avoided on + terminals with `am', as it may or may not cause scrolling to occur + (*note Scrolling::.). Scrolling is surely not what you would + intend. + + If your program needs to check the `am' flag, then it also needs + to check the `xn' flag which indicates that wrapping happens in a + strange way. Many common terminals have the `xn' flag. + +`xn' + Flag whose presence means that the cursor wraps in a strange way. + At least two distinct kinds of strange behavior are known; the + termcap data base does not contain anything to distinguish the two. + + On Concept-100 terminals, output in the last column wraps the + cursor almost like an ordinary `am' terminal. But if the next + thing output is a newline, it is ignored. + + DEC VT-100 terminals (when the wrap switch is on) do a different + strange thing: the cursor wraps only if the next thing output is + another graphic character. In fact, the wrap occurs when the + following graphic character is received by the terminal, before the + character is placed on the screen. + + On both of these terminals, after writing in the last column a + following graphic character will be displayed in the first column + of the following line. But the effect of relative cursor motion + characters such as newline or backspace at such a time depends on + the terminal. The effect of erase or scrolling commands also + depends on the terminal. You can't assume anything about what + they will do on a terminal that has `xn'. So, to be safe, you + should never do these things at such a time on such a terminal. + + To be sure of reliable results on a terminal which has the `xn' + flag, output a `cm' absolute positioning command after writing in + the last column. Another safe thing to do is to output + carriage-return newline, which will leave the cursor at the + beginning of the following line. + +`LP' + Flag whose presence means that it is safe to write in the last + column of the last line without worrying about undesired + scrolling. `LP' indicates the DEC flavor of `xn' strangeness. + + +File: termcap.info, Node: Scrolling, Next: Windows, Prev: Wrapping, Up: Capabilities + +Scrolling +========= + + "Scrolling" means moving the contents of the screen up or down one or +more lines. Moving the contents up is "forward scrolling"; moving them +down is "reverse scrolling". + + Scrolling happens after each line of output during ordinary output +on most display terminals. But in an application program that uses +termcap for random-access output, scrolling happens only when +explicitly requested with the commands in this section. + + Some terminals have a "scroll region" feature. This lets you limit +the effect of scrolling to a specified range of lines. Lines outside +the range are unaffected when scrolling happens. The scroll region +feature is available if either `cs' or `cS' is present. + +`sf' + String of commands to scroll the screen one line up, assuming it is + output with the cursor at the beginning of the bottom line. + +`sr' + String of commands to scroll the screen one line down, assuming it + is output with the cursor at the beginning of the top line. + +`do' + A few programs will try to use `do' to do the work of `sf'. This + is not really correct--it is an attempt to compensate for the + absence of a `sf' command in some old terminal descriptions. + + Since these terminal descriptions do define `sr', perhaps at one + time the definition of `do' was different and it could be used for + scrolling as well. But it isn't desirable to combine these two + functions in one capability, since scrolling often requires more + padding than simply moving the cursor down. Defining `sf' and + `do' separately allows you to specify the padding properly. Also, + all sources agree that `do' should not be relied on to do + scrolling. + + So the best approach is to add `sf' capabilities to the + descriptions of these terminals, copying the definition of `do' if + that does scroll. + +`SF' + String of commands to scroll the screen N lines up, assuming it is + output with the cursor at the beginning of the bottom line. + +`SR' + String of commands to scroll the screen N lines down, assuming it + is output with the cursor at the beginning of the top line. + +`cs' + String of commands to set the scroll region. This command takes + two parameters, START and END, which are the line numbers + (origin-zero) of the first line to include in the scroll region + and of the last line to include in it. When a scroll region is + set, scrolling is limited to the specified range of lines; lines + outside the range are not affected by scroll commands. + + Do not try to move the cursor outside the scroll region. The + region remains set until explicitly removed. To remove the scroll + region, use another `cs' command specifying the full height of the + screen. + + The cursor position is undefined after the `cs' command is set, so + position the cursor with `cm' immediately afterward. + +`cS' + String of commands to set the scroll region using parameters in + different form. The effect is the same as if `cs' were used. + Four parameters are required: + + 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. + + This capability is a GNU extension that was invented to allow the + Ann Arbor Ambassador's scroll-region command to be described; it + could also be done by putting non-Unix `%'-sequences into a `cs' + string, but that would have confused Unix programs that used the + `cs' capability with the Unix termcap. Currently only GNU Emacs + uses the `cS' capability. + +`ns' + Flag which means that the terminal does not normally scroll for + ordinary sequential output. For modern terminals, this means that + outputting a newline in ordinary sequential output with the cursor + on the bottom line wraps to the top line. For some obsolete + terminals, other things may happen. + + The terminal may be able to scroll even if it does not normally do + so. If the `sf' capability is provided, it can be used for + scrolling regardless of `ns'. + +`da' + Flag whose presence means that lines scrolled up off the top of the + screen may come back if scrolling down is done subsequently. + + The `da' and `db' flags do not, strictly speaking, affect how to + scroll. But programs that scroll usually need to clear the lines + scrolled onto the screen, if these flags are present. + +`db' + Flag whose presence means that lines scrolled down off the bottom + of the screen may come back if scrolling up is done subsequently. + +`lm' + Numeric value, the number of lines of display memory that the + terminal has. A value of zero means that the terminal has more + display memory than can fit on the screen, but no fixed number of + lines. (The number of lines may depend on the amount of text in + each line.) + + Any terminal description that defines `SF' should also define `sf'; +likewise for `SR' and `sr'. However, many terminals can only scroll by +one line at a time, so it is common to find `sf' and not `SF', or `sr' +without `SR'. + + Therefore, all programs that use the scrolling facilities should be +prepared to work with `sf' in the case that `SF' is absent, and +likewise with `sr'. On the other hand, an application program that +uses only `sf' and not `SF' is acceptable, though slow on some +terminals. + + When outputting a scroll command with `tputs', the NLINES argument +should be the total number of lines in the portion of the screen being +scrolled. Very often these commands require padding proportional to +this number of lines. *Note Padding::. + + +File: termcap.info, Node: Windows, Next: Clearing, Prev: Scrolling, Up: Capabilities + +Windows +======= + + A "window", in termcap, is a rectangular portion of the screen to +which all display operations are restricted. Wrapping, clearing, +scrolling, insertion and deletion all operate as if the specified +window were all the screen there was. + +`wi' + String of commands to set the terminal output screen window. This + string requires four parameters, all origin-zero: + 1. The first line to include in the window. + + 2. The last line to include in the window. + + 3. The first column to include in the window. + + 4. The last column to include in the window. + + Most terminals do not support windows. + + +File: termcap.info, Node: Clearing, Next: Insdel Line, Prev: Windows, Up: Capabilities + +Clearing Parts of the Screen +============================ + + There are several terminal capabilities for clearing parts of the +screen to blank. All display terminals support the `cl' string, and +most display terminals support all of these capabilities. + +`cl' + String of commands to clear the entire screen and position the + cursor at the upper left corner. + +`cd' + String of commands to clear the line the cursor is on, and all the + lines below it, down to the bottom of the screen. This command + string should be used only with the cursor in column zero; their + effect is undefined if the cursor is elsewhere. + +`ce' + String of commands to clear from the cursor to the end of the + current line. + +`ec' + String of commands to clear N characters, starting with the + character that the cursor is on. This command string is expected + to leave the cursor position unchanged. The parameter N should + never be large enough to reach past the right margin; the effect + of such a large parameter would be undefined. + + Clear to end of line (`ce') is extremely important in programs that +maintain an updating display. Nearly all display terminals support this +operation, so it is acceptable for a an application program to refuse to +work if `ce' is not present. However, if you do not want this +limitation, you can accomplish clearing to end of line by outputting +spaces until you reach the right margin. In order to do this, you must +know the current horizontal position. Also, this technique assumes +that writing a space will erase. But this happens to be true on all +the display terminals that fail to support `ce'. + + +File: termcap.info, Node: Insdel Line, Next: Insdel Char, Prev: Clearing, Up: Capabilities + +Insert/Delete Line +================== + + "Inserting a line" means creating a blank line in the middle of the +screen, and pushing the existing lines of text apart. In fact, the +lines above the insertion point do not change, while the lines below +move down, and one is normally lost at the bottom of the screen. + + "Deleting a line" means causing the line to disappear from the +screen, closing up the gap by moving the lines below it upward. A new +line appears at the bottom of the screen. Usually this line is blank, +but on terminals with the `db' flag it may be a line previously moved +off the screen bottom by scrolling or line insertion. + + Insertion and deletion of lines is useful in programs that maintain +an updating display some parts of which may get longer or shorter. +They are also useful in editors for scrolling parts of the screen, and +for redisplaying after lines of text are killed or inserted. + + Many terminals provide commands to insert or delete a single line at +the cursor position. Some provide the ability to insert or delete +several lines with one command, using the number of lines to insert or +delete as a parameter. Always move the cursor to column zero before +using any of these commands. + +`al' + String of commands to insert a blank line before the line the + cursor is on. The existing line, and all lines below it, are + moved down. The last line in the screen (or in the scroll region, + if one is set) disappears and in most circumstances is discarded. + It may not be discarded if the `db' is present (*note + Scrolling::.). + + The cursor must be at the left margin before this command is used. + This command does not move the cursor. + +`dl' + String of commands to delete the line the cursor is on. The + following lines move up, and a blank line appears at the bottom of + the screen (or bottom of the scroll region). If the terminal has + the `db' flag, a nonblank line previously pushed off the screen + bottom may reappear at the bottom. + + The cursor must be at the left margin before this command is used. + This command does not move the cursor. + +`AL' + String of commands to insert N blank lines before the line that + the cursor is on. It is like `al' repeated N times, except that + it is as fast as one `al'. + +`DL' + String of commands to delete N lines starting with the line that + the cursor is on. It is like `dl' repeated N times, except that + it is as fast as one `dl'. + + Any terminal description that defines `AL' should also define `al'; +likewise for `DL' and `dl'. However, many terminals can only insert or +delete one line at a time, so it is common to find `al' and not `AL', +or `dl' without `DL'. + + Therefore, all programs that use the insert and delete facilities +should be prepared to work with `al' in the case that `AL' is absent, +and likewise with `dl'. On the other hand, it is acceptable to write +an application that uses only `al' and `dl' and does not look for `AL' +or `DL' at all. + + If a terminal does not support line insertion and deletion directly, +but does support a scroll region, the effect of insertion and deletion +can be obtained with scrolling. However, it is up to the individual +user program to check for this possibility and use the scrolling +commands to get the desired result. It is fairly important to implement +this alternate strategy, since it is the only way to get the effect of +line insertion and deletion on the popular VT100 terminal. + + Insertion and deletion of lines is affected by the scroll region on +terminals that have a settable scroll region. This is useful when it is +desirable to move any few consecutive lines up or down by a few lines. +*Note Scrolling::. + + The line pushed off the bottom of the screen is not lost if the +terminal has the `db' flag capability; instead, it is pushed into +display memory that does not appear on the screen. This is the same +thing that happens when scrolling pushes a line off the bottom of the +screen. Either reverse scrolling or deletion of a line can bring the +apparently lost line back onto the bottom of the screen. If the +terminal has the scroll region feature as well as `db', the pushed-out +line really is lost if a scroll region is in effect. + + When outputting an insert or delete command with `tputs', the NLINES +argument should be the total number of lines from the cursor to the +bottom of the screen (or scroll region). Very often these commands +require padding proportional to this number of lines. *Note Padding::. + + For `AL' and `DL' the NLINES argument should *not* depend on the +number of lines inserted or deleted; only the total number of lines +affected. This is because it is just as fast to insert two or N lines +with `AL' as to insert one line with `al'. + diff --git a/src/libs/termcap/termcap.info-3 b/src/libs/termcap/termcap.info-3 new file mode 100644 index 0000000000..d5b309f21a --- /dev/null +++ b/src/libs/termcap/termcap.info-3 @@ -0,0 +1,1480 @@ +This is Info file ./termcap.info, produced by Makeinfo-1.55 from the +input file ./termcap.texi. + + This file documents the termcap library of the GNU system. + + Copyright (C) 1988 Free Software Foundation, Inc. + + Permission is granted to make and distribute verbatim copies of this +manual provided the copyright notice and this permission notice are +preserved on all copies. + + Permission is granted to copy and distribute modified versions of +this manual under the conditions for verbatim copying, provided that +the entire resulting derived work is distributed under the terms of a +permission notice identical to this one. + + Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be stated in a +translation approved by the Foundation. + + +File: termcap.info, Node: Insdel Char, Next: Standout, Prev: Insdel Line, Up: Capabilities + +Insert/Delete Character +======================= + + "Inserting a character" means creating a blank space in the middle +of a line, and pushing the rest of the line rightward. The character +in the rightmost column is lost. + + "Deleting a character" means causing the character to disappear from +the screen, closing up the gap by moving the rest of the line leftward. +A blank space appears in the rightmost column. + + Insertion and deletion of characters is useful in programs that +maintain an updating display some parts of which may get longer or +shorter. It is also useful in editors for redisplaying the results of +editing within a line. + + Many terminals provide commands to insert or delete a single +character at the cursor position. Some provide the ability to insert +or delete several characters with one command, using the number of +characters to insert or delete as a parameter. + + Many terminals provide an insert mode in which outputting a graphic +character has the added effect of inserting a position for that +character. A special command string is used to enter insert mode and +another is used to exit it. The reason for designing a terminal with +an insert mode rather than an insert command is that inserting +character positions is usually followed by writing characters into +them. With insert mode, this is as fast as simply writing the +characters, except for the fixed overhead of entering and leaving +insert mode. However, when the line speed is great enough, padding may +be required for the graphic characters output in insert mode. + + Some terminals require you to enter insert mode and then output a +special command for each position to be inserted. Or they may require +special commands to be output before or after each graphic character to +be inserted. + + Deletion of characters is usually accomplished by a straightforward +command to delete one or several positions; but on some terminals, it +is necessary to enter a special delete mode before using the delete +command, and leave delete mode afterward. Sometimes delete mode and +insert mode are the same mode. + + Some terminals make a distinction between character positions in +which a space character has been output and positions which have been +cleared. On these terminals, the effect of insert or delete character +runs to the first cleared position rather than to the end of the line. +In fact, the effect may run to more than one line if there is no +cleared position to stop the shift on the first line. These terminals +are identified by the `in' flag capability. + + On terminals with the `in' flag, the technique of skipping over +characters that you know were cleared, and then outputting text later +on in the same line, causes later insert and delete character +operations on that line to do nonstandard things. A program that has +any chance of doing this must check for the `in' flag and must be +careful to write explicit space characters into the intermediate +columns when `in' is present. + + A plethora of terminal capabilities are needed to describe all of +this complexity. Here is a list of them all. Following the list, we +present an algorithm for programs to use to take proper account of all +of these capabilities. + +`im' + String of commands to enter insert mode. + + If the terminal has no special insert mode, but it can insert + characters with a special command, `im' should be defined with a + null value, because the `vi' editor assumes that insertion of a + character is impossible if `im' is not provided. + + New programs should not act like `vi'. They should pay attention + to `im' only if it is defined. + +`ei' + String of commands to leave insert mode. This capability must be + present if `im' is. + + On a few old terminals the same string is used to enter and exit + insert mode. This string turns insert mode on if it was off, and + off it it was on. You can tell these terminals because the `ei' + string equals the `im' string. If you want to support these + terminals, you must always remember accurately whether insert mode + is in effect. However, these terminals are obsolete, and it is + reasonable to refuse to support them. On all modern terminals, you + can safely output `ei' at any time to ensure that insert mode is + turned off. + +`ic' + String of commands to insert one character position at the cursor. + The cursor does not move. + + If outputting a graphic character while in insert mode is + sufficient to insert the character, then the `ic' capability + should be defined with a null value. + + If your terminal offers a choice of ways to insert--either use + insert mode or use a special command--then define `im' and do not + define `ic', since this gives the most efficient operation when + several characters are to be inserted. *Do not* define both + strings, for that means that *both* must be used each time + insertion is done. + +`ip' + String of commands to output following an inserted graphic + character in insert mode. Often it is used just for a padding + spec, when padding is needed after an inserted character (*note + Padding::.). + +`IC' + String of commands to insert N character positions at and after + the cursor. It has the same effect as repeating the `ic' string + and a space, N times. + + If `IC' is provided, application programs may use it without first + entering insert mode. + +`mi' + Flag whose presence means it is safe to move the cursor while in + insert mode and assume the terminal remains in insert mode. + +`in' + Flag whose presence means that the terminal distinguishes between + character positions in which space characters have been output and + positions which have been cleared. + + An application program can assume that the terminal can do character +insertion if *any one of* the capabilities `IC', `im', `ic' or `ip' is +provided. + + To insert N blank character positions, move the cursor to the place +to insert them and follow this algorithm: + + 1. If an `IC' string is provided, output it with parameter N and you + are finished. Otherwise (or if you don't want to bother to look + for an `IC' string) follow the remaining steps. + + 2. Output the `im' string, if there is one, unless the terminal is + already in insert mode. + + 3. Repeat steps 4 through 6, N times. + + 4. Output the `ic' string if any. + + 5. Output a space. + + 6. Output the `ip' string if any. + + 7. Output the `ei' string, eventually, to exit insert mode. There is + no need to do this right away. If the `mi' flag is present, you + can move the cursor and the cursor will remain in insert mode; + then you can do more insertion elsewhere without reentering insert + mode. + + To insert N graphic characters, position the cursor and follow this +algorithm: + + 1. If an `IC' string is provided, output it with parameter N, then + output the graphic characters, and you are finished. Otherwise + (or if you don't want to bother to look for an `IC' string) follow + the remaining steps. + + 2. Output the `im' string, if there is one, unless the terminal is + already in insert mode. + + 3. For each character to be output, repeat steps 4 through 6. + + 4. Output the `ic' string if any. + + 5. Output the next graphic character. + + 6. Output the `ip' string if any. + + 7. Output the `ei' string, eventually, to exit insert mode. There is + no need to do this right away. If the `mi' flag is present, you + can move the cursor and the cursor will remain in insert mode; + then you can do more insertion elsewhere without reentering insert + mode. + + Note that this is not the same as the original Unix termcap +specifications in one respect: it assumes that the `IC' string can be +used without entering insert mode. This is true as far as I know, and +it allows you be able to avoid entering and leaving insert mode, and +also to be able to avoid the inserted-character padding after the +characters that go into the inserted positions. + + Deletion of characters is less complicated; deleting one column is +done by outputting the `dc' string. However, there may be a delete +mode that must be entered with `dm' in order to make `dc' work. + +`dc' + String of commands to delete one character position at the cursor. + If `dc' is not present, the terminal cannot delete characters. + +`DC' + String of commands to delete N characters starting at the cursor. + It has the same effect as repeating the `dc' string N times. Any + terminal description that has `DC' also has `dc'. + +`dm' + String of commands to enter delete mode. If not present, there is + no delete mode, and `dc' can be used at any time (assuming there is + a `dc'). + +`ed' + String of commands to exit delete mode. This must be present if + `dm' is. + + To delete N character positions, position the cursor and follow these +steps: + + 1. If the `DC' string is present, output it with parameter N and you + are finished. Otherwise, follow the remaining steps. + + 2. Output the `dm' string, unless you know the terminal is already in + delete mode. + + 3. Output the `dc' string N times. + + 4. Output the `ed' string eventually. If the flag capability `mi' is + present, you can move the cursor and do more deletion without + leaving and reentering delete mode. + + As with the `IC' string, we have departed from the original termcap +specifications by assuming that `DC' works without entering delete mode +even though `dc' would not. + + If the `dm' and `im' capabilities are both present and have the same +value, it means that the terminal has one mode for both insertion and +deletion. It is useful for a program to know this, because then it can +do insertions after deletions, or vice versa, without leaving +insert/delete mode and reentering it. + + +File: termcap.info, Node: Standout, Next: Underlining, Prev: Insdel Char, Up: Capabilities + +Standout and Appearance Modes +============================= + + "Appearance modes" are modifications to the ways characters are +displayed. Typical appearance modes include reverse video, dim, bright, +blinking, underlined, invisible, and alternate character set. Each +kind of terminal supports various among these, or perhaps none. + + For each type of terminal, one appearance mode or combination of +them that looks good for highlighted text is chosen as the "standout +mode". The capabilities `so' and `se' say how to enter and leave +standout mode. Programs that use appearance modes only to highlight +some text generally use the standout mode so that they can work on as +many terminals as possible. Use of specific appearance modes other +than "underlined" and "alternate character set" is rare. + + Terminals that implement appearance modes fall into two general +classes as to how they do it. + + In some terminals, the presence or absence of any appearance mode is +recorded separately for each character position. In these terminals, +each graphic character written is given the appearance modes current at +the time it is written, and keeps those modes until it is erased or +overwritten. There are special commands to turn the appearance modes +on or off for characters to be written in the future. + + In other terminals, the change of appearance modes is represented by +a marker that belongs to a certain screen position but affects all +following screen positions until the next marker. These markers are +traditionally called "magic cookies". + + The same capabilities (`so', `se', `mb' and so on) for turning +appearance modes on and off are used for both magic-cookie terminals +and per-character terminals. On magic cookie terminals, these give the +commands to write the magic cookies. On per-character terminals, they +change the current modes that affect future output and erasure. Some +simple applications can use these commands without knowing whether or +not they work by means of cookies. + + However, a program that maintains and updates a display needs to know +whether the terminal uses magic cookies, and exactly what their effect +is. This information comes from the `sg' capability. + + The `sg' capability is a numeric capability whose presence indicates +that the terminal uses magic cookies for appearance modes. Its value is +the number of character positions that a magic cookie occupies. Usually +the cookie occupies one or more character positions on the screen, and +these character positions are displayed as blank, but in some terminals +the cookie has zero width. + + The `sg' capability describes both the magic cookie to turn standout +on and the cookie to turn it off. This makes the assumption that both +kinds of cookie have the same width on the screen. If that is not true, +the narrower cookie must be "widened" with spaces until it has the same +width as the other. + + On some magic cookie terminals, each line always starts with normal +display; in other words, the scope of a magic cookie never extends over +more than one line. But on other terminals, one magic cookie affects +all the lines below it unless explicitly canceled. Termcap does not +define any way to distinguish these two ways magic cookies can work. +To be safe, it is best to put a cookie at the beginning of each line. + + On some per-character terminals, standout mode or other appearance +modes may be canceled by moving the cursor. On others, moving the +cursor has no effect on the state of the appearance modes. The latter +class of terminals are given the flag capability `ms' ("can move in +standout"). All programs that might have occasion to move the cursor +while appearance modes are turned on must check for this flag; if it is +not present, they should reset appearance modes to normal before doing +cursor motion. + + A program that has turned on only standout mode should use `se' to +reset the standout mode to normal. A program that has turned on only +alternate character set mode should use `ae' to return it to normal. +If it is possible that any other appearance modes are turned on, use the +`me' capability to return them to normal. + + Note that the commands to turn on one appearance mode, including `so' +and `mb' ... `mr', if used while some other appearance modes are turned +on, may combine the two modes on some terminals but may turn off the +mode previously enabled on other terminals. This is because some +terminals do not have a command to set or clear one appearance mode +without changing the others. Programs should not attempt to use +appearance modes in combination except with `sa', and when switching +from one single mode to another should always turn off the previously +enabled mode and then turn on the new desired mode. + + On some old terminals, the `so' and `se' commands may be the same +command, which has the effect of turning standout on if it is off, or +off it is on. It is therefore risky for a program to output extra `se' +commands for good measure. Fortunately, all these terminals are +obsolete. + + Programs that update displays in which standout-text may be replaced +with non-standout text must check for the `xs' flag. In a per-character +terminal, this flag says that the only way to remove standout once +written is to clear that portion of the line with the `ce' string or +something even more powerful (*note Clearing::.); just writing new +characters at those screen positions will not change the modes in +effect there. In a magic cookie terminal, `xs' says that the only way +to remove a cookie is to clear a portion of the line that includes the +cookie; writing a different cookie at the same position does not work. + + Such programs must also check for the `xt' flag, which means that the +terminal is a Teleray 1061. On this terminal it is impossible to +position the cursor at the front of a magic cookie, so the only two +ways to remove a cookie are (1) to delete the line it is on or (2) to +position the cursor at least one character before it (possibly on a +previous line) and output the `se' string, which on these terminals +finds and removes the next `so' magic cookie on the screen. (It may +also be possible to remove a cookie which is not at the beginning of a +line by clearing that line.) The `xt' capability also has implications +for the use of tab characters, but in that regard it is obsolete (*Note +Cursor Motion::). + +`so' + String of commands to enter standout mode. + +`se' + String of commands to leave standout mode. + +`sg' + Numeric capability, the width on the screen of the magic cookie. + This capability is absent in terminals that record appearance modes + character by character. + +`ms' + Flag whose presence means that it is safe to move the cursor while + the appearance modes are not in the normal state. If this flag is + absent, programs should always reset the appearance modes to + normal before moving the cursor. + +`xs' + Flag whose presence means that the only way to reset appearance + modes already on the screen is to clear to end of line. On a + per-character terminal, you must clear the area where the modes + are set. On a magic cookie terminal, you must clear an area + containing the cookie. See the discussion above. + +`xt' + Flag whose presence means that the cursor cannot be positioned + right in front of a magic cookie, and that `se' is a command to + delete the next magic cookie following the cursor. See discussion + above. + +`mb' + String of commands to enter blinking mode. + +`md' + String of commands to enter double-bright mode. + +`mh' + String of commands to enter half-bright mode. + +`mk' + String of commands to enter invisible mode. + +`mp' + String of commands to enter protected mode. + +`mr' + String of commands to enter reverse-video mode. + +`me' + String of commands to turn off all appearance modes, including + standout mode and underline mode. On some terminals it also turns + off alternate character set mode; on others, it may not. This + capability must be present if any of `mb' ... `mr' is present. + +`as' + String of commands to turn on alternate character set mode. This + mode assigns some or all graphic characters an alternate picture + on the screen. There is no standard as to what the alternate + pictures look like. + +`ae' + String of commands to turn off alternate character set mode. + +`sa' + String of commands to turn on an arbitrary combination of + appearance modes. It accepts 9 parameters, each of which controls + a particular kind of appearance mode. A parameter should be 1 to + turn its appearance mode on, or zero to turn that mode off. Most + terminals do not support the `sa' capability, even among those + that do have various appearance modes. + + The nine parameters are, in order, STANDOUT, UNDERLINE, REVERSE, + BLINK, HALF-BRIGHT, DOUBLE-BRIGHT, BLANK, PROTECT, ALT CHAR SET. + + +File: termcap.info, Node: Underlining, Next: Cursor Visibility, Prev: Standout, Up: Capabilities + +Underlining +=========== + + Underlining on most terminals is a kind of appearance mode, much like +standout mode. Therefore, it may be implemented using magic cookies or +as a flag in the terminal whose current state affects each character +that is output. *Note Standout::, for a full explanation. + + The `ug' capability is a numeric capability whose presence indicates +that the terminal uses magic cookies for underlining. Its value is the +number of character positions that a magic cookie for underlining +occupies; it is used for underlining just as `sg' is used for standout. +Aside from the simplest applications, it is impossible to use +underlining correctly without paying attention to the value of `ug'. + +`us' + String of commands to turn on underline mode or to output a magic + cookie to start underlining. + +`ue' + String of commands to turn off underline mode or to output a magic + cookie to stop underlining. + +`ug' + Width of magic cookie that represents a change of underline mode; + or missing, if the terminal does not use a magic cookie for this. + +`ms' + Flag whose presence means that it is safe to move the cursor while + the appearance modes are not in the normal state. Underlining is + an appearance mode. If this flag is absent, programs should + always turn off underlining before moving the cursor. + + There are two other, older ways of doing underlining: there can be a +command to underline a single character, or the output of `_', the +ASCII underscore character, as an overstrike could cause a character to +be underlined. New programs need not bother to handle these +capabilities unless the author cares strongly about the obscure +terminals which support them. However, terminal descriptions should +provide these capabilities when appropriate. + +`uc' + String of commands to underline the character under the cursor, and + move the cursor right. + +`ul' + Flag whose presence means that the terminal can underline by + overstriking an underscore character (`_'); some terminals can do + this even though they do not support overstriking in general. An + implication of this flag is that when outputting new text to + overwrite old text, underscore characters must be treated + specially lest they underline the old text instead. + + +File: termcap.info, Node: Cursor Visibility, Next: Bell, Prev: Underlining, Up: Capabilities + +Cursor Visibility +================= + + Some terminals have the ability to make the cursor invisible, or to +enhance it. Enhancing the cursor is often done by programs that plan +to use the cursor to indicate to the user a position of interest that +may be anywhere on the screen--for example, the Emacs editor enhances +the cursor on entry. Such programs should always restore the cursor to +normal on exit. + +`vs' + String of commands to enhance the cursor. + +`vi' + String of commands to make the cursor invisible. + +`ve' + String of commands to return the cursor to normal. + + If you define either `vs' or `vi', you must also define `ve'. + + +File: termcap.info, Node: Bell, Next: Keypad, Prev: Cursor Visibility, Up: Capabilities + +Bell +==== + + Here we describe commands to make the terminal ask for the user to +pay attention to it. + +`bl' + String of commands to cause the terminal to make an audible sound. + If this capability is absent, the terminal has no way to make a + suitable sound. + +`vb' + String of commands to cause the screen to flash to attract + attention ("visible bell"). If this capability is absent, the + terminal has no way to do such a thing. + + +File: termcap.info, Node: Keypad, Next: Meta Key, Prev: Bell, Up: Capabilities + +Keypad and Function Keys +======================== + + Many terminals have arrow and function keys that transmit specific +character sequences to the computer. Since the precise sequences used +depend on the terminal, termcap defines capabilities used to say what +the sequences are. Unlike most termcap string-valued capabilities, +these are not strings of commands to be sent to the terminal, rather +strings that are received from the terminal. + + Programs that expect to use keypad keys should check, initially, for +a `ks' capability and send it, to make the keypad actually transmit. +Such programs should also send the `ke' string when exiting. + +`ks' + String of commands to make the keypad keys transmit. If this + capability is not provided, but the others in this section are, + programs may assume that the keypad keys always transmit. + +`ke' + String of commands to make the keypad keys work locally. This + capability is provided only if `ks' is. + +`kl' + String of input characters sent by typing the left-arrow key. If + this capability is missing, you cannot expect the terminal to have + a left-arrow key that transmits anything to the computer. + +`kr' + String of input characters sent by typing the right-arrow key. + +`ku' + String of input characters sent by typing the up-arrow key. + +`kd' + String of input characters sent by typing the down-arrow key. + +`kh' + String of input characters sent by typing the "home-position" key. + +`K1' ... `K5' + Strings of input characters sent by the five other keys in a 3-by-3 + array that includes the arrow keys, if the keyboard has such a + 3-by-3 array. Note that one of these keys may be the + "home-position" key, in which case one of these capabilities will + have the same value as the `kh' key. + +`k0' + String of input characters sent by function key 10 (or 0, if the + terminal has one labeled 0). + +`k1' ... `k9' + Strings of input characters sent by function keys 1 through 9, + provided for those function keys that exist. + +`kn' + Number: the number of numbered function keys, if there are more + than 10. + +`l0' ... `l9' + Strings which are the labels appearing on the keyboard on the keys + described by the capabilities `k0' ... `l9'. These capabilities + should be left undefined if the labels are `f0' or `f10' and `f1' + ... `f9'. + +`kH' + String of input characters sent by the "home down" key, if there is + one. + +`kb' + String of input characters sent by the "backspace" key, if there is + one. + +`ka' + String of input characters sent by the "clear all tabs" key, if + there is one. + +`kt' + String of input characters sent by the "clear tab stop this column" + key, if there is one. + +`kC' + String of input characters sent by the "clear screen" key, if + there is one. + +`kD' + String of input characters sent by the "delete character" key, if + there is one. + +`kL' + String of input characters sent by the "delete line" key, if there + is one. + +`kM' + String of input characters sent by the "exit insert mode" key, if + there is one. + +`kE' + String of input characters sent by the "clear to end of line" key, + if there is one. + +`kS' + String of input characters sent by the "clear to end of screen" + key, if there is one. + +`kI' + String of input characters sent by the "insert character" or "enter + insert mode" key, if there is one. + +`kA' + String of input characters sent by the "insert line" key, if there + is one. + +`kN' + String of input characters sent by the "next page" key, if there is + one. + +`kP' + String of input characters sent by the "previous page" key, if + there is one. + +`kF' + String of input characters sent by the "scroll forward" key, if + there is one. + +`kR' + String of input characters sent by the "scroll reverse" key, if + there is one. + +`kT' + String of input characters sent by the "set tab stop in this + column" key, if there is one. + +`ko' + String listing the other function keys the terminal has. This is a + very obsolete way of describing the same information found in the + `kH' ... `kT' keys. The string contains a list of two-character + termcap capability names, separated by commas. The meaning is + that for each capability name listed, the terminal has a key which + sends the string which is the value of that capability. For + example, the value `:ko=cl,ll,sf,sr:' says that the terminal has + four function keys which mean "clear screen", "home down", "scroll + forward" and "scroll reverse". + + +File: termcap.info, Node: Meta Key, Next: Initialization, Prev: Keypad, Up: Capabilities + +Meta Key +======== + + A Meta key is a key on the keyboard that modifies each character you +type by controlling the 0200 bit. This bit is on if and only if the +Meta key is held down when the character is typed. Characters typed +using the Meta key are called Meta characters. Emacs uses Meta +characters as editing commands. + +`km' + Flag whose presence means that the terminal has a Meta key. + +`mm' + String of commands to enable the functioning of the Meta key. + +`mo' + String of commands to disable the functioning of the Meta key. + + If the terminal has `km' but does not have `mm' and `mo', it means +that the Meta key always functions. If it has `mm' and `mo', it means +that the Meta key can be turned on or off. Send the `mm' string to +turn it on, and the `mo' string to turn it off. I do not know why one +would ever not want it to be on. + + +File: termcap.info, Node: Initialization, Next: Pad Specs, Prev: Meta Key, Up: Capabilities + +Initialization +============== + +`ti' + String of commands to put the terminal into whatever special modes + are needed or appropriate for programs that move the cursor + nonsequentially around the screen. Programs that use termcap to do + full-screen display should output this string when they start up. + +`te' + String of commands to undo what is done by the `ti' string. + Programs that output the `ti' string on entry should output this + string when they exit. + +`is' + String of commands to initialize the terminal for each login + session. + +`if' + String which is the name of a file containing the string of + commands to initialize the terminal for each session of use. + Normally `is' and `if' are not both used. + +`i1' +`i3' + Two more strings of commands to initialize the terminal for each + login session. The `i1' string (if defined) is output before `is' + or `if', and the `i3' string (if defined) is output after. + + The reason for having three separate initialization strings is to + make it easier to define a group of related terminal types with + slightly different initializations. Define two or three of the + strings in the basic type; then the other types can override one + or two of the strings. + +`rs' + String of commands to reset the terminal from any strange mode it + may be in. Normally this includes the `is' string (or other + commands with the same effects) and more. What would go in the + `rs' string but not in the `is' string are annoying or slow + commands to bring the terminal back from strange modes that nobody + would normally use. + +`it' + Numeric value, the initial spacing between hardware tab stop + columns when the terminal is powered up. Programs to initialize + the terminal can use this to decide whether there is a need to set + the tab stops. If the initial width is 8, well and good; if it is + not 8, then the tab stops should be set; if they cannot be set, + the kernel is told to convert tabs to spaces, and other programs + will observe this and do likewise. + +`ct' + String of commands to clear all tab stops. + +`st' + String of commands to set tab stop at current cursor column on all + lines. + +`NF' + Flag whose presence means that the terminal does not support + XON/XOFF flow control. Programs should not send XON (`C-q') or + XOFF (`C-s') characters to the terminal. + + +File: termcap.info, Node: Pad Specs, Next: Status Line, Prev: Initialization, Up: Capabilities + +Padding Capabilities +==================== + + There are two terminal capabilities that exist just to explain the +proper way to obey the padding specifications in all the command string +capabilities. One, `pc', must be obeyed by all termcap-using programs. + +`pb' + Numeric value, the lowest baud rate at which padding is actually + needed. Programs may check this and refrain from doing any + padding at lower speeds. + +`pc' + String of commands for padding. The first character of this + string is to be used as the pad character, instead of using null + characters for padding. If `pc' is not provided, use null + characters. Every program that uses termcap must look up this + capability and use it to set the variable `PC' that is used by + `tputs'. *Note Padding::. + + Some termcap capabilities exist just to specify the amount of +padding that the kernel should give to cursor motion commands used in +ordinary sequential output. + +`dC' + Numeric value, the number of msec of padding needed for the + carriage-return character. + +`dN' + Numeric value, the number of msec of padding needed for the newline + (linefeed) character. + +`dB' + Numeric value, the number of msec of padding needed for the + backspace character. + +`dF' + Numeric value, the number of msec of padding needed for the + formfeed character. + +`dT' + Numeric value, the number of msec of padding needed for the tab + character. + + In some systems, the kernel uses the above capabilities; in other +systems, the kernel uses the paddings specified in the string +capabilities `cr', `sf', `le', `ff' and `ta'. Descriptions of +terminals which require such padding should contain the `dC' ... `dT' +capabilities and also specify the appropriate padding in the +corresponding string capabilities. Since no modern terminals require +padding for ordinary sequential output, you probably won't need to do +either of these things. + + +File: termcap.info, Node: Status Line, Next: Half-Line, Prev: Pad Specs, Up: Capabilities + +Status Line +=========== + + A "status line" is a line on the terminal that is not used for +ordinary display output but instead used for a special message. The +intended use is for a continuously updated description of what the +user's program is doing, and that is where the name "status line" comes +from, but in fact it could be used for anything. The distinguishing +characteristic of a status line is that ordinary output to the terminal +does not affect it; it changes only if the special status line commands +of this section are used. + +`hs' + Flag whose presence means that the terminal has a status line. If + a terminal description specifies that there is a status line, it + must provide the `ts' and `fs' capabilities. + +`ts' + String of commands to move the terminal cursor into the status + line. Usually these commands must specifically record the old + cursor position for the sake of the `fs' string. + +`fs' + String of commands to move the cursor back from the status line to + its previous position (outside the status line). + +`es' + Flag whose presence means that other display commands work while + writing the status line. In other words, one can clear parts of + it, insert or delete characters, move the cursor within it using + `ch' if there is a `ch' capability, enter and leave standout mode, + and so on. + +`ds' + String of commands to disable the display of the status line. This + may be absent, if there is no way to disable the status line + display. + +`ws' + Numeric value, the width of the status line. If this capability is + absent in a terminal that has a status line, it means the status + line is the same width as the other lines. + + Note that the value of `ws' is sometimes as small as 8. + + +File: termcap.info, Node: Half-Line, Next: Printer, Prev: Status Line, Up: Capabilities + +Half-Line Motion +================ + + Some terminals have commands for moving the cursor vertically by +half-lines, useful for outputting subscripts and superscripts. Mostly +it is hardcopy terminals that have such features. + +`hu' + String of commands to move the cursor up half a line. If the + terminal is a display, it is your responsibility to avoid moving + up past the top line; however, most likely the terminal that + supports this is a hardcopy terminal and there is nothing to be + concerned about. + +`hd' + String of commands to move the cursor down half a line. If the + terminal is a display, it is your responsibility to avoid moving + down past the bottom line, etc. + + +File: termcap.info, Node: Printer, Prev: Half-Line, Up: Capabilities + +Controlling Printers Attached to Terminals +========================================== + + Some terminals have attached hardcopy printer ports. They may be +able to copy the screen contents to the printer; they may also be able +to redirect output to the printer. Termcap does not have anything to +tell the program whether the redirected output appears also on the +screen; it does on some terminals but not all. + +`ps' + String of commands to cause the contents of the screen to be + printed. If it is absent, the screen contents cannot be printed. + +`po' + String of commands to redirect further output to the printer. + +`pf' + String of commands to terminate redirection of output to the + printer. This capability must be present in the description if + `po' is. + +`pO' + String of commands to redirect output to the printer for next N + characters of output, regardless of what they are. Redirection + will end automatically after N characters of further output. Until + then, nothing that is output can end redirection, not even the + `pf' string if there is one. The number N should not be more than + 255. + + One use of this capability is to send non-text byte sequences + (such as bit-maps) to the printer. + + Most terminals with printers do not support all of `ps', `po' and +`pO'; any one or two of them may be supported. To make a program that +can send output to all kinds of printers, it is necessary to check for +all three of these capabilities, choose the most convenient of the ones +that are provided, and use it in its own appropriate fashion. + + +File: termcap.info, Node: Summary, Next: Var Index, Prev: Capabilities, Up: Top + +Summary of Capability Names +*************************** + + Here are all the terminal capability names in alphabetical order +with a brief description of each. For cross references to their +definitions, see the index of capability names (*note Cap Index::.). + +`ae' + String to turn off alternate character set mode. + +`al' + String to insert a blank line before the cursor. + +`AL' + String to insert N blank lines before the cursor. + +`am' + Flag: output to last column wraps cursor to next line. + +`as' + String to turn on alternate character set mode.like. + +`bc' + Very obsolete alternative name for the `le' capability. + +`bl' + String to sound the bell. + +`bs' + Obsolete flag: ASCII backspace may be used for leftward motion. + +`bt' + String to move the cursor left to the previous hardware tab stop + column. + +`bw' + Flag: `le' at left margin wraps to end of previous line. + +`CC' + String to change terminal's command character. + +`cd' + String to clear the line the cursor is on, and following lines. + +`ce' + String to clear from the cursor to the end of the line. + +`ch' + String to position the cursor at column C in the same line. + +`cl' + String to clear the entire screen and put cursor at upper left + corner. + +`cm' + String to position the cursor at line L, column C. + +`CM' + String to position the cursor at line L, column C, relative to + display memory. + +`co' + Number: width of the screen. + +`cr' + String to move cursor sideways to left margin. + +`cs' + String to set the scroll region. + +`cS' + Alternate form of string to set the scroll region. + +`ct' + String to clear all tab stops. + +`cv' + String to position the cursor at line L in the same column. + +`da' + Flag: data scrolled off top of screen may be scrolled back. + +`db' + Flag: data scrolled off bottom of screen may be scrolled back. + +`dB' + Obsolete number: msec of padding needed for the backspace + character. + +`dc' + String to delete one character position at the cursor. + +`dC' + Obsolete number: msec of padding needed for the carriage-return + character. + +`DC' + String to delete N characters starting at the cursor. + +`dF' + Obsolete number: msec of padding needed for the formfeed character. + +`dl' + String to delete the line the cursor is on. + +`DL' + String to delete N lines starting with the cursor's line. + +`dm' + String to enter delete mode. + +`dN' + Obsolete number: msec of padding needed for the newline character. + +`do' + String to move the cursor vertically down one line. + +`DO' + String to move cursor vertically down N lines. + +`ds' + String to disable the display of the status line. + +`dT' + Obsolete number: msec of padding needed for the tab character. + +`ec' + String of commands to clear N characters at cursor. + +`ed' + String to exit delete mode. + +`ei' + String to leave insert mode. + +`eo' + Flag: output of a space can erase an overstrike. + +`es' + Flag: other display commands work while writing the status line. + +`ff' + String to advance to the next page, for a hardcopy terminal. + +`fs' + String to move the cursor back from the status line to its + previous position (outside the status line). + +`gn' + Flag: this terminal type is generic, not real. + +`hc' + Flag: hardcopy terminal. + +`hd' + String to move the cursor down half a line. + +`ho' + String to position cursor at upper left corner. + +`hs' + Flag: the terminal has a status line. + +`hu' + String to move the cursor up half a line. + +`hz' + Flag: terminal cannot accept `~' as output. + +`i1' + String to initialize the terminal for each login session. + +`i3' + String to initialize the terminal for each login session. + +`ic' + String to insert one character position at the cursor. + +`IC' + String to insert N character positions at the cursor. + +`if' + String naming a file of commands to initialize the terminal. + +`im' + String to enter insert mode. + +`in' + Flag: outputting a space is different from moving over empty + positions. + +`ip' + String to output following an inserted character in insert mode. + +`is' + String to initialize the terminal for each login session. + +`it' + Number: initial spacing between hardware tab stop columns. + +`k0' + String of input sent by function key 0 or 10. + +`k1 ... k9' + Strings of input sent by function keys 1 through 9. + +`K1 ... K5' + Strings sent by the five other keys in 3-by-3 array with arrows. + +`ka' + String of input sent by the "clear all tabs" key. + +`kA' + String of input sent by the "insert line" key. + +`kb' + String of input sent by the "backspace" key. + +`kC' + String of input sent by the "clear screen" key. + +`kd' + String of input sent by typing the down-arrow key. + +`kD' + String of input sent by the "delete character" key. + +`ke' + String to make the function keys work locally. + +`kE' + String of input sent by the "clear to end of line" key. + +`kF' + String of input sent by the "scroll forward" key. + +`kh' + String of input sent by typing the "home-position" key. + +`kH' + String of input sent by the "home down" key. + +`kI' + String of input sent by the "insert character" or "enter insert + mode" key. + +`kl' + String of input sent by typing the left-arrow key. + +`kL' + String of input sent by the "delete line" key. + +`km' + Flag: the terminal has a Meta key. + +`kM' + String of input sent by the "exit insert mode" key. + +`kn' + Numeric value, the number of numbered function keys. + +`kN' + String of input sent by the "next page" key. + +`ko' + Very obsolete string listing the terminal's named function keys. + +`kP' + String of input sent by the "previous page" key. + +`kr' + String of input sent by typing the right-arrow key. + +`kR' + String of input sent by the "scroll reverse" key. + +`ks' + String to make the function keys transmit. + +`kS' + String of input sent by the "clear to end of screen" key. + +`kt' + String of input sent by the "clear tab stop this column" key. + +`kT' + String of input sent by the "set tab stop in this column" key. + +`ku' + String of input sent by typing the up-arrow key. + +`l0' + String on keyboard labelling function key 0 or 10. + +`l1 ... l9' + Strings on keyboard labelling function keys 1 through 9. + +`le' + String to move the cursor left one column. + +`LE' + String to move cursor left N columns. + +`li' + Number: height of the screen. + +`ll' + String to position cursor at lower left corner. + +`lm' + Number: lines of display memory. + +`LP' + Flag: writing to last column of last line will not scroll. + +`mb' + String to enter blinking mode. + +`md' + String to enter double-bright mode. + +`me' + String to turn off all appearance modes + +`mh' + String to enter half-bright mode. + +`mi' + Flag: cursor motion in insert mode is safe. + +`mk' + String to enter invisible mode. + +`mm' + String to enable the functioning of the Meta key. + +`mo' + String to disable the functioning of the Meta key. + +`mp' + String to enter protected mode. + +`mr' + String to enter reverse-video mode. + +`ms' + Flag: cursor motion in standout mode is safe. + +`nc' + Obsolete flag: do not use ASCII carriage-return on this terminal. + +`nd' + String to move the cursor right one column. + +`NF' + Flag: do not use XON/XOFF flow control. + +`nl' + Obsolete alternative name for the `do' and `sf' capabilities. + +`ns' + Flag: the terminal does not normally scroll for sequential output. + +`nw' + String to move to start of next line, possibly clearing rest of + old line. + +`os' + Flag: terminal can overstrike. + +`pb' + Number: the lowest baud rate at which padding is actually needed. + +`pc' + String containing character for padding. + +`pf' + String to terminate redirection of output to the printer. + +`po' + String to redirect further output to the printer. + +`pO' + String to redirect N characters ofoutput to the printer. + +`ps' + String to print the screen on the attached printer. + +`rc' + String to move to last saved cursor position. + +`RI' + String to move cursor right N columns. + +`rp' + String to output character C repeated N times. + +`rs' + String to reset the terminal from any strange modes. + +`sa' + String to turn on an arbitrary combination of appearance modes. + +`sc' + String to save the current cursor position. + +`se' + String to leave standout mode. + +`sf' + String to scroll the screen one line up. + +`SF' + String to scroll the screen N lines up. + +`sg' + Number: width of magic standout cookie. Absent if magic cookies + are not used. + +`so' + String to enter standout mode. + +`sr' + String to scroll the screen one line down. + +`SR' + String to scroll the screen N line down. + +`st' + String to set tab stop at current cursor column on all lines. + programs. + +`ta' + String to move the cursor right to the next hardware tab stop + column. + +`te' + String to return terminal to settings for sequential output. + +`ti' + String to initialize terminal for random cursor motion. + +`ts' + String to move the terminal cursor into the status line. + +`uc' + String to underline one character and move cursor right. + +`ue' + String to turn off underline mode + +`ug' + Number: width of underlining magic cookie. Absent if underlining + doesn't use magic cookies. + +`ul' + Flag: underline by overstriking with an underscore. + +`up' + String to move the cursor vertically up one line. + +`UP' + String to move cursor vertically up N lines. + +`us' + String to turn on underline mode + +`vb' + String to make the screen flash. + +`ve' + String to return the cursor to normal. + +`vi' + String to make the cursor invisible. + +`vs' + String to enhance the cursor. + +`wi' + String to set the terminal output screen window. + +`ws' + Number: the width of the status line. + +`xb' + Flag: superbee terminal. + +`xn' + Flag: cursor wraps in a strange way. + +`xs' + Flag: clearing a line is the only way to clear the appearance + modes of positions in that line (or, only way to remove magic + cookies on that line). + +`xt' + Flag: Teleray 1061; several strange characteristics. + + +File: termcap.info, Node: Var Index, Next: Cap Index, Prev: Summary, Up: Top + +Variable and Function Index +*************************** + +* Menu: + +* BC: tgoto. +* ospeed: Output Padding. +* PC: Output Padding. +* tgetent: Find. +* tgetflag: Interrogate. +* tgetnum: Interrogate. +* tgetstr: Interrogate. +* tgoto: tgoto. +* tparam: tparam. +* tputs: Output Padding. +* UP: tgoto. + diff --git a/src/libs/termcap/termcap.info-4 b/src/libs/termcap/termcap.info-4 new file mode 100644 index 0000000000..4b8bf791ce --- /dev/null +++ b/src/libs/termcap/termcap.info-4 @@ -0,0 +1,220 @@ +This is Info file ./termcap.info, produced by Makeinfo-1.55 from the +input file ./termcap.texi. + + This file documents the termcap library of the GNU system. + + Copyright (C) 1988 Free Software Foundation, Inc. + + Permission is granted to make and distribute verbatim copies of this +manual provided the copyright notice and this permission notice are +preserved on all copies. + + Permission is granted to copy and distribute modified versions of +this manual under the conditions for verbatim copying, provided that +the entire resulting derived work is distributed under the terms of a +permission notice identical to this one. + + Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be stated in a +translation approved by the Foundation. + + +File: termcap.info, Node: Cap Index, Next: Index, Prev: Var Index, Up: Top + +Capability Index +**************** + +* Menu: + +* ae: Standout. +* al: Insdel Line. +* AL: Insdel Line. +* am: Wrapping. +* as: Standout. +* bc: Cursor Motion. +* bl: Bell. +* bs: Cursor Motion. +* bt: Cursor Motion. +* bw: Cursor Motion. +* CC: Basic. +* cd: Clearing. +* ce: Clearing. +* ch: Cursor Motion. +* cl: Clearing. +* cm: Cursor Motion. +* CM: Cursor Motion. +* co: Screen Size. +* cr: Cursor Motion. +* cS: Scrolling. +* cs: Scrolling. +* ct: Initialization. +* cv: Cursor Motion. +* da: Scrolling. +* dB: Pad Specs. +* db: Scrolling. +* dC: Pad Specs. +* DC: Insdel Char. +* dc: Insdel Char. +* dF: Pad Specs. +* dl: Insdel Line. +* DL: Insdel Line. +* dm: Insdel Char. +* dN: Pad Specs. +* do: Cursor Motion. +* DO: Cursor Motion. +* ds: Status Line. +* dT: Pad Specs. +* ec: Clearing. +* ed: Insdel Char. +* ei: Insdel Char. +* eo: Basic. +* es: Status Line. +* ff: Cursor Motion. +* fs: Status Line. +* gn: Basic. +* hc: Basic. +* hd: Half-Line. +* ho: Cursor Motion. +* hs: Status Line. +* hu: Half-Line. +* hz: Basic. +* i1: Initialization. +* i3: Initialization. +* IC: Insdel Char. +* ic: Insdel Char. +* if: Initialization. +* im: Insdel Char. +* in: Insdel Char. +* ip: Insdel Char. +* is: Initialization. +* it: Initialization. +* K1...K5: Keypad. +* k1...k9: Keypad. +* kA...kT: Keypad. +* ka...ku: Keypad. +* km: Meta Key. +* l0...l9: Keypad. +* le: Cursor Motion. +* LE: Cursor Motion. +* li: Screen Size. +* ll: Cursor Motion. +* lm: Scrolling. +* LP: Wrapping. +* mb: Standout. +* md: Standout. +* me: Standout. +* mh: Standout. +* mi: Insdel Char. +* mk: Standout. +* mm: Meta Key. +* mo: Meta Key. +* mp: Standout. +* mr: Standout. +* ms: Standout. +* ms: Underlining. +* nc: Cursor Motion. +* nd: Cursor Motion. +* NF: Initialization. +* nl: Cursor Motion. +* ns: Scrolling. +* nw: Cursor Motion. +* os: Basic. +* pb: Pad Specs. +* pc: Pad Specs. +* pf: Printer. +* pO: Printer. +* po: Printer. +* ps: Printer. +* rc: Cursor Motion. +* RI: Cursor Motion. +* rp: Basic. +* rs: Initialization. +* sa: Standout. +* sc: Cursor Motion. +* se: Standout. +* SF: Scrolling. +* sf: Scrolling. +* sg: Standout. +* so: Standout. +* SR: Scrolling. +* sr: Scrolling. +* st: Initialization. +* ta: Cursor Motion. +* te: Initialization. +* ti: Initialization. +* ts: Status Line. +* uc: Underlining. +* ue: Underlining. +* ug: Underlining. +* ul: Underlining. +* up: Cursor Motion. +* UP: Cursor Motion. +* us: Underlining. +* vb: Bell. +* ve: Cursor Visibility. +* vi: Cursor Visibility. +* vs: Cursor Visibility. +* wi: Windows. +* ws: Status Line. +* xb: Basic. +* xn: Wrapping. +* xs: Standout. +* xt: Cursor Motion. +* xt: Standout. + + +File: termcap.info, Node: Index, Prev: Cap Index, Up: Top + +Concept Index +************* + +* Menu: + +* %: Encode Parameters. +* appearance modes: Standout. +* bell: Bell. +* clearing the screen: Clearing. +* command character: Basic. +* cursor motion: Cursor Motion. +* delete character: Insdel Char. +* delete line: Insdel Line. +* delete mode: Insdel Char. +* description format: Format. +* erasing: Clearing. +* generic terminal type: Basic. +* home position: Cursor Motion. +* inheritance: Inheriting. +* initialization: Initialization. +* insert character: Insdel Char. +* insert line: Insdel Line. +* insert mode: Insdel Char. +* line speed: Output Padding. +* magic cookie: Standout. +* meta key: Meta Key. +* names of terminal types: Naming. +* overstrike: Basic. +* padding: Pad Specs. +* padding: Padding. +* parameters: Parameters. +* printer: Printer. +* repeat output: Basic. +* reset: Initialization. +* screen size: Screen Size. +* screen size: Naming. +* screen size: Screen Size. +* scrolling: Scrolling. +* standout: Standout. +* status line: Status Line. +* Superbee: Basic. +* tab stops: Initialization. +* termcap: Introduction. +* terminal flags (kernel): Initialize. +* underlining: Underlining. +* visibility: Cursor Visibility. +* visible bell: Bell. +* window: Windows. +* wrapping: Wrapping. +* wrapping: Naming. + + diff --git a/src/libs/termcap/termcap.src b/src/libs/termcap/termcap.src new file mode 100644 index 0000000000..86e761f782 --- /dev/null +++ b/src/libs/termcap/termcap.src @@ -0,0 +1,28787 @@ +######## TERMINAL TYPE DESCRIPTIONS SOURCE FILE +# +# Version 11.0.1 +# $Date: 2004/06/01 09:29:05 $ +# termcap 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 +# . +# +# 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 . +# +# 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 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 "^####" | 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 - +# 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, .... 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 should elicit an answerback response +# from the terminal. Common values for will be ^E (on older ASCII +# terminals) or \E[c (on newer VT100/ANSI/ECMA-48-compatible terminals). +# +# The cursor position request () 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 () 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 tac(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:\ + :am:gn:\ + :co#80:\ + :bl=^G:cr=^M:do=^J:sf=^J: +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:\ + :bs:\ + :bl=^G:cr=^M:do=^J:sf=^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:do=\E[B:le=\E[D:\ + :nd=\E[C:up=\E[A: +ansi+tabs:\ + :bt=\E[Z:ct=\E[2g:st=\EH:ta=^I: +ansi+inittabs:\ + :it#8:\ + :bt=\E[Z:ct=\E[2g:st=\EH:ta=^I: +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:\ + :..rp=%p1%c\E[%p2%{1}%-%db: +ansi+idl1:\ + :al=\E[L:dl=\E[M: +ansi+idl:\ + :AL=\E[%dL:DL=\E[%dM:al=\E[L:dl=\E[M: +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:\ + :mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:mr=\E[7m:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m: +ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold:\ + :mb=\E[5m:me=\E[0m:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;m:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m: +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 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=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :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:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:\ + :..sa=\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:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m: + +# 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):\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[12m:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:\ + :..sa=\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:\ + :se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m: + +# KOI8-R (RFC1489) acs (alternate character set) +# From: Qing Long , 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\0r\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 cap. +ecma+color|color control for ECMA-48-compatible terminals:\ + :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:\ + :S2=\E[11m:S3=\E[10m:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:\ + :..sa=\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:\ + :se=\E[27m:so=\E[7m:ue=\E[24m:us=\E[4m: + +# 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:ec=\E[%dX:ei=:im=:\ + :rc=\E7:sc=\E7:st=\EH: + +#### 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:bs:xo:\ + :co#80:li#24:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cr=^M:do=^J:le=\E[D:\ + :nd=\E[C:sf=^J:up=\E[A: + +# 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|minimum ansi standard terminal:\ + :am:bs:xo:\ + :co#80:li#24:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :do=^J:ho=\E[H:sf=^J: + +# ansi-mtabs adds relative addressing and minimal tab support +ansi-mtabs|any ansi terminal with pessimistic assumptions:\ + :am:bs:xo:\ + :co#80:it#8:li#24:\ + :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:le=\E[D:nd=\E[C:sf=^J:ta=^I:up=\E[A: + +# 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 +# / 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 +# , but now seems to be more common under +# ANSI.SYS influence. +# From: Eric S. Raymond 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:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode):\ + :am:bs:mi:ms:\ + :co#80:it#8:li#25:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode):\ + :am:bs:mi:ms:\ + :co#80:it#8:li#33:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode):\ + :am:bs:mi:ms:\ + :co#80:it#8:li#43:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +# The color versions. All PC emulators do color... +pcansi|ibm-pc terminal programs claiming to be ansi:\ + :am:bs:mi:ms:\ + :Co#8:NC#3:co#80:it#8:li#24:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-25|pcansi25|ibm-pc terminal programs with 25 lines:\ + :am:bs:mi:ms:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-33|pcansi33|ibm-pc terminal programs with 33 lines:\ + :am:bs:mi:ms:\ + :Co#8:NC#3:co#80:it#8:li#33:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +pcansi-43|pcansi43|ibm-pc terminal programs with 43 lines:\ + :am:bs:mi:ms:\ + :Co#8:NC#3:co#80:it#8:li#43:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# 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 , , , and capabilities. +# From: Eric S. Raymond Nov 6 1995 +ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\ + :5i:am:bs: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:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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[2g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=\E[B:\ + :ec=\E[%dX:ei=:ho=\E[H:im=:kB=\E[Z:kI=\E[L: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\r\E[S:pf=\E[4i:\ + :po=\E[5i:..rp=%p1%c\E[%p2%{1}%-%db:s0=\E(B:s1=\E)B:\ + :s2=\E*B:s3=\E+B:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=\E[I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# 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 Nov 6 1995 +ansi|ansi/pc-term compatible with color:\ + :5i:am:bs:mi:ms:\ + :Co#8:NC#3: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:S2=\E[11m:\ + :S3=\E[10m:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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[2g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=\E[B:\ + :ec=\E[%dX:ei=:ho=\E[H:im=:kB=\E[Z:kI=\E[L: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\r\E[S:\ + :op=\E[39;49m:pf=\E[4i:po=\E[5i:\ + :..rp=%p1%c\E[%p2%{1}%-%db:s0=\E(B:s1=\E)B:s2=\E*B:\ + :s3=\E+B:\ + :..sa=\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:\ + :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=\E[I:u6=\E[%i%d;%dR:\ + :u7=\E[6n:..u8=\E[?%[;0123456789]c:u9=\E[c:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# 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:bs:xo:\ + :co#80:li#24:\ + :AL=\E[%dL: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:\ + :ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:ei=\E6:ho=\E[H:ic=\E[@:im=\E6: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[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m: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. * +# * * +# *************************************************************************** +# +# The 1.3.x kernels add color-change capabilities; if yours doesn't have this +# and it matters, turn off . The %02x escape used to implement this is +# not back-portable to SV curses and not supported in ncurses versions before +# 1.9.9. All linux kernels since 1.2.13 (at least) set the screen size +# themselves; this entry assumes that capability. +# +# 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. * +# * * +# *************************************************************************** +# +# The 1.3.x kernels add color-change capabilities; if yours doesn't have this +# and it matters, turn off . The %02x escape used to implement this is +# not back-portable to SV curses and not supported in ncurses versions before +# 1.9.9. All linux kernels since 1.2.13 (at least) set the screen size +# themselves; this entry assumes that capability. +# +# 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 . +linux|linux console:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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: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:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m: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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: +linux-m|Linux console no color:\ + :am:eo:mi:ms:ut:xn:xo:\ + :NC#2:it#8:\ + :&7=^Z:@7=\E[4~: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~:IC=\E[%d@:\ + :K2=\E[G: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:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m: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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: +linux-c-nc|linux console 1.3.x hack for ncurses only:\ + :am:cc:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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@:\ + :..Ic=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x:\ + :K2=\E[G: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:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :oc=\E]R:op=\E[39;49m:r1=\Ec\E]R:rc=\E8:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: +# From: Dennis Henriksen , 9 July 1996 +linux-c|linux console 1.3.6+ with private palette for each virtual console:\ + :am:cc:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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@:\ + :..Ic=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}%&%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}%&%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}%&%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%;:\ + :K2=\E[G: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:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:\ + :oc=\E]R:op=\E[39;49m:r1=\Ec\E]R:rc=\E8:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: + +# 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:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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: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:al=\E[L:as=\E[11m: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: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: + +# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts. +# acsc entry from Pavel Roskin" , 29 Sep 1997. +linux-koi8|linux with koi8 alternate character set:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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:S2=\E[11m:S3=\E[10m:\ + :ac=+\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:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m: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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: + +# 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:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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: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:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m: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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: + +# Entry for the latin1 and latin2 fonts +linux-lat|linux with latin1 or latin2 alternate character set:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#8:NC#2: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: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:S2=\E[11m:S3=\E[10m:\ + :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:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m: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:\ + :..sa=\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:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:\ + :vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c: + +#### 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 / -- esr) + +# NOTE: :ic: has been taken out of this entry. for reference, it should +# be . 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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#25: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;25r\E[25;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~:\ + :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: +pcvt28|dec vt220 emulation with 28 lines:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#28: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;28r\E[28;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~:\ + :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: +pcvt35|dec vt220 emulation with 35 lines:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#35: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;35r\E[35;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~:\ + :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: +pcvt40|dec vt220 emulation with 40 lines:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#40: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;40r\E[40;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~:\ + :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: +pcvt43|dec vt220 emulation with 43 lines:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#43: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;43r\E[43;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~:\ + :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: +pcvt50|dec vt220 emulation with 50 lines:\ + :am:km:mi:ms:xn:\ + :co#80:it#8:li#50: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;50r\E[50;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~:\ + :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; 132 columns +pcvt25w|dec vt220 emulation with 25 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#25: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;25r\E[25;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~:\ + :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: +pcvt28w|dec vt220 emulation with 28 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#28: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;28r\E[28;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~:\ + :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: +pcvt35w|dec vt220 emulation with 35 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#35: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;35r\E[35;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~:\ + :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: +pcvt40w|dec vt220 emulation with 40 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#40: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;40r\E[40;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~:\ + :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: +pcvt43w|dec vt220 emulation with 43 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#43: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;43r\E[43;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~:\ + :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: +pcvt50w|dec vt220 emulation with 50 lines and 132 cols:\ + :am:km:mi:ms:xn:\ + :co#132:it#8:li#50: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=llmmkkiijjuuttvvwwqqxxnnoosspprr``aaffgg~~..--++,,hh00yyzz:\ + :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:\ + :is=\E[1;50r\E[50;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~:\ + :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: + +# 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 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#8:NC#3:co#80:it#8:li#30:pa#64:\ + :@8=\E[M:AB=\E[4%dm:AF=\E[3%dm: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:\ + :S2=\E[11m:S3=\E[10m:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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: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=\E[5m:md=\E[1m:me=\E[m\017:mk=\E[8m:\ + :mr=\E[6m:nd=\E[C:op=\E[37;40m:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768):\ + :am:ms:ut:xn:xo:\ + :Co#8:NC#3:co#132:it#8:li#50:pa#64:\ + :@8=\E[M:AB=\E[4%dm:AF=\E[3%dm: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:\ + :S2=\E[11m:S3=\E[10m:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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: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=\E[5m:md=\E[1m:me=\E[m\017:mk=\E[8m:\ + :mr=\E[6m:nd=\E[C:op=\E[37;40m:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine +# manufactured by Sharp for the Japenese market. +# From Minoura Makoto , 12 May 1996 +x68k|x68k-ite|NetBSD/x68k ITE:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#96:it#8:li#32: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:\ + :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)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~:kC=\E[9~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\ + :kd=\E[B:kh=\E[H: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=\E[m: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: + +# : +# Entry for the DNARD OpenFirmware console, close to ANSI but not quite. +# +# (still unfinished, but good enough so far.) +ofcons:\ + :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 +# These are micro-minimal and probably need to be redone for real +# after the manner of the pcvt entries. +wsvt25|NetBSD wscons in 25 line DEC VT220 mode:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#25: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:\ + :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)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:\ + :kh=\E[H: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=\E[m: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: + +wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta:\ + :5i:am:bs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#25: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:\ + :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)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:\ + :kh=\E[H: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=\E[m: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: + +# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and +# DECstation/pmax. +rcons|BSD rasterconsole:\ + :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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +# Color version of above. Color currenly only provided by NetBSD. +rcons-color|BSD rasterconsole with ANSI color:\ + :am:km:ms:ut:\ + :Co#8:co#80:li#34:pa#64:\ + :%7=\E[194z:&5=\E[193z:&8=\E[195z:@7=\E[220z:AB=\E[4%dm:\ + :AF=\E[3%dm: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: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:op=\E[m:rs=\E[s:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: + +#### FreeBSD console entries +# +# From: Andrey Chernov 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 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. +cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#25:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec: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):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#25:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#25:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons30|ansi80x30|freebsd console (30-line ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#30:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#30:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons43|ansi80x43|freebsd console (43-line ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#43:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#43:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons50|ansil|ansi80x50|freebsd console (50-line ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#50:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#50:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons60|ansi80x60|freebsd console (60-line ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#60:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#60:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic:\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#25:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#25:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=0C:vs=\E[=1C: +cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#50:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#50:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=0C:vs=\E[=1C: +cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#60:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#60:\ + :@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:UP=\E[%dA:\ + :ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=0C:vs=\E[=1C: +# ISO 8859-1 FreeBSD console +cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars:\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#25:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#25:\ + :@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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#50:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#50:\ + :@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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: +cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines):\ + :NP:am:bw:eo:ms:ut:\ + :Co#8:NC#21:co#80:it#8:li#60:pa#64:\ + :@7=\E[F:AB=\E[4%dm:AF=\E[3%dm: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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\ + :ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C: +cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono):\ + :NP:am:bw:eo:ms:ut:\ + :NC#21:co#80:it#8:li#60:\ + :@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:UP=\E[%dA:\ + :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:\ + :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:cv=\E[%i%dd: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:\ + :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:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\E[E:r1=\E[x\E[m\Ec:se=\E[m:\ + :sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[=0C:vs=\E[=1C: + +#### 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 +origpc3|origibmpc3|IBM PC 386BSD Console:\ + :am: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:\ + :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 , 2 May 1996) +# Bug: The capability resets attributes. +bsdos-pc-nobold|BSD/OS PC console w/o bold:\ + :am:eo:km:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +bsdos-pc|IBM PC BSD/OS Console:\ + :am:eo:km:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:rc=\E8:\ + :..sa=\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:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# Old names for BSD/OS PC console used in releases before 4.1. +pc3|BSD/OS on the PC Console:\ + :am:eo:km:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline:\ + :am:eo:km:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:rc=\E8:\ + :..sa=\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:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# BSD/OS on the SPARC +bsdos-sparc|Sun SPARC BSD/OS Console:\ + :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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: + +# BSD/OS on the PowerPC +bsdos-ppc|PowerPC BSD/OS Console:\ + :am:eo:km:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:S2=\E[11m:S3=\E[10m:UP=\E[%dA:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:rc=\E8:\ + :..sa=\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:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +#### 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 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 and 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 " 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 appication 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 auxilliary 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_| +# +# 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 / based on the init string, also :bs:. -- esr) +vt100|vt100-am|dec vt100 (w/advanced video):\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +vt100nam|vt100-nam|vt100 no automargins:\ + :bs:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +vt100-vb|dec vt100 (w/advanced video) & no beep:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N: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=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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=\E[?5h\E[?5l: + +# Ordinary vt100 in 132 column ("wide") mode. +vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\ + :am:bs:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin):\ + :bs:ms:xo:\ + :co#132:it#8:li#14:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# vt100 with no advanced video. +vt100-nav|vt100 without advanced video option:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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: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:up=\E[A: +vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\ + :am:bs:ms:xn:xo:\ + :co#132:it#8:li#14:sg#1:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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: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:up=\E[A: + +# 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:\ + :am:bs:es:hs:ms:xn:xo:\ + :co#80:it#8:li#23:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2;1H\E[J:\ + :cm=\E[%i%+^A;%dH:cr=^M:cs=\E[%i%i%d;%dr:ct=\E[3g:do=^J:\ + :ds=\E7\E[1;24r\E8:eA=\E(B\E)0:fs=\E8:ho=\E[2;1H:\ + :is=\E7\E[2;24r\E8:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E7\E[1;%dH\E[1K:ue=\E[m:up=\E[A:us=\E[4m: + +# Status line at bottom. +# Clearing the screen will clobber status line. +vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline:\ + :am:bs:es:hs:ms:xn:xo:\ + :co#80:it#8:li#23:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :ds=\E7\E[1;24r\E8:eA=\E(B\E)0:fs=\E8:ho=\E[H:\ + :is=\E[1;23r\E[23;1H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E7\E[24;%dH\E[1K:ue=\E[m:up=\E[A:us=\E[4m: + +# 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:\ + :am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +vt102-w|dec vt102 in wide mode:\ + :am:bs:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[m\017:mr=\E[7m:\ + :nd=\E[C:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :r3=\E[?3h:rc=\E8:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# 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 July 22 1995 +vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes):\ + :am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[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: + +# VT125 Graphics CRT. Clear screen also erases graphics +vt125|vt125 graphics terminal:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J\EPpS(E)\E\\:cm=\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=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# This isn't a DEC entry, it came from University of Wisconsin. +# (vt131: I added / 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:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4h:\ + :ho=\E[H:im=\E[4l:ip=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# 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=\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:\ + :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=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :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 +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:\ + :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)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:\ + :kh=\E[H: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=\E[m: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:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#132: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:\ + :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)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:\ + :kh=\E[H: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=\E[m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[?3l:r3=\E[?3h:\ + :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-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :%0=\23329~:%1=\23328~:*6=\2334~:@0=\2331~:AL=\233%dL:\ + :DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F7=\23331~:F8=\23332~:F9=\23333~:\ + :FA=\23334~:IC=\233%d@:LE=\233%dD:RA=\233?7l:RI=\233%dC:\ + :SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\233L:as=^N:bl=^G:cb=\2331K: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:eA=\E)0: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~:k;=\23321~:kI=\2332~:kN=\2336~:kP=\2335~:\ + :kb=^H:kd=\233B:kh=\233H:kl=\233D:kr=\233C:ku=\233A:l1=pf1:\ + :l2=pf2:l3=pf3:l4=pf4:le=^H:mb=\2335m:md=\2331m:me=\233m:\ + :mr=\2337m:nd=\233C:nw=\EE:pf=\2334i:po=\2335i:ps=\233i:\ + :r1=\233?3l: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:\ + :am:bs:mi:pt:xn:xo:\ + :co#80:li#24:vt#3:\ + :@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=\E[?7l:SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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:\ + :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:mr=\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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :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: + +vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins:\ + :5i: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:\ + :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)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:\ + :kh=\E[H: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=\E[m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[?3l:\ + :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h: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 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 , 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:\ + :nw=^M\ED:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\ + :rf=/usr/lib/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:\ + :5i: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:\ + :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)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:\ + :kh=\E[H: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=\E[m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[?3l:\ + :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h: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: + +# These entries are not DEC's official ones, they were purpose-built for the +# VT320. Here are the designer's notes: +# 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 usually use tab anyways... and things that don't use +# tab usually use 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 Sept 10 1995 +# (vt320: uncommented :fs:, comnmmented out to avoid a conflict --esr) +vt320|vt300|dec vt320 7 bit terminal:\ + :am:es:hs:mi:ms:xn:\ + :co#80:li#24:ws#80:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[5?l\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~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3l\E[?4l\E[5?l\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: +vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy:\ + :es:hs:mi:ms:xn:\ + :co#80:li#24:ws#80:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[5?l\E[?7l\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~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3l\E[?4l\E[5?l\E[?7l\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: +# We have to init 132-col mode, not 80-col mode. +vt320-w|vt300-w|dec vt320 wide 7 bit terminal:\ + :am:es:hs:mi:ms:xn:\ + :co#132:li#24:ws#132:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[?3h\E[?4l\E[5?l\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~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3h\E[?4l\E[5?l\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: +vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am:\ + :es:hs:mi:ms:xn:\ + :co#132:li#24:ws#132:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[?3h\E[?4l\E[5?l\E[?7l\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~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3h\E[?4l\E[5?l\E[?7l\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: + +# 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 , 13 Oct 1993 +# (vt340: string capability "sb=\E[M" corrected to "sr"; +# also, added / 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=^O:al=\E[L:as=^N: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=\E[m: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:vs=\E[?25h: + +# 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 , 13 Oct 1993 +# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:"; +# also, added / 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=^O:al=\E[L:as=^N: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=\E[m: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:vs=\E[?25h: + +# (vt420: I removed :k0:, it collided with . 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=\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:\ + :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=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :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:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*6=\E[4~:@0=\E[1~:@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~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :S6=USR_TERM\:vt420pcdos\::SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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=\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[2~:kN=\E[6~:\ + :kP=\E[5~: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:\ + :..px=\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\\:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +vt420pcdos|DEC VT420 w/PC for DOS Merge:\ + :am:mi:xn:xo:\ + :co#80:li#25:vt#3:\ + :*6=\E[4~:@0=\E[1~:@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~:RA=\E[?7l:\ + :..S1=%?%p2%{19}%=%t\E\023\021%e%p2%{32}%<%t\E%p2%c%e%p2%{127}%=%t\E\177%e%p2%c%;:\ + :S4=\E[?1;2r\E[34h:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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=\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[2~:kN=\E[6~:\ + :kP=\E[5~: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:\ + :..px=\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\\:\ + :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: + +vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*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~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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=\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[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E=:ku=\E[A:l1=\EOP:l2=\EOQ:l3=\EOR:l4=\EOS:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +vt510|DEC VT510:\ + :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=\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:\ + :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=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +vt510pc|DEC VT510 w/PC keyboard:\ + :am:mi:xn:xo:\ + :co#80:li#24:vt#3:\ + :*6=\E[4~:@0=\E[1~:@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~:RA=\E[?7l:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :S6=USR_TERM\:vt420pcdos\::SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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=\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[2~:kN=\E[6~:\ + :kP=\E[5~: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:\ + :..px=\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\\:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +vt510pcdos|DEC VT510 w/PC for DOS Merge:\ + :am:mi:xn:xo:\ + :co#80:li#25:vt#3:\ + :*6=\E[4~:@0=\E[1~:@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~:RA=\E[?7l:\ + :..S1=%?%p2%{19}%=%t\E\023\021%e%p2%{32}%<%t\E%p2%c%e%p2%{127}%=%t\E\177%e%p2%c%;:\ + :S4=\E[?1;2r\E[34h:\ + :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :SA=\E[?7h:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:\ + :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=\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[2~:kN=\E[6~:\ + :kP=\E[5~: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:\ + :..px=\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\\:\ + :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: + +# 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 / 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=\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:\ + :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:k0=\E[29~: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=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :..px=\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\\:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :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 / 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=\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:\ + :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:k0=\E[29~: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=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\ + :..px=\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\\:\ + :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :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 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 informs us +# that this works best with a stock vt100 entry. +dec-vt100|EWAN telnet's vt100 emulation:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996 +dec-vt220|DOS tnvt200 terminal emulator:\ + :5i: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:\ + :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)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:\ + :kh=\E[H: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=\E[m: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: + +# 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 Sept 10 1995 +z340|zstem vt340 terminal emulator 132col 42line:\ + :am:es:hs:mi:ms:xn:\ + :co#132:li#42:ws#132:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;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: +z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins):\ + :es:hs:mi:ms:xn:\ + :co#132:li#42:ws#132:\ + :%5=^I:%8=\E[Z:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:\ + :K5=\EOs: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: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: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[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kE=\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:pf=\E[?4i:\ + :po=\E[?5i:ps=\E[i:rc=\E8:rf=/usr/share/tabset/vt300:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;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: + +# CRT is shareware. It implements some xterm features, including mouse. +crt|crt-vt220|CRT 2.3 emulating VT220:\ + :5i:am:bs:mi:ms:ut:xn:xo:\ + :Co#8:co#80:it#8:li#24:pa#64:vt#3:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~: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~: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:Sb=\E[4%dm:Sf=\E[3%dm:\ + :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)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:\ + :kh=\E[H: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=\E[m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:op=\E[39;49m: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:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:u9=\E[c:\ + :ue=\E[24m:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l: + +# 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. +teraterm|Tera Term Pro:\ + :am:bs:km:ms:xn:\ + :Co#8:NC#43:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~:@8=\EOM: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~:K1=\EOq:K2=\EOr:\ + :K3=\EOs:K4=\EOp:K5=\EOn:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:\ + :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=^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[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:eA=\E(B\E)0:ec=\E[%dX:ho=\E[H:k0=\EOy: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:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:op=\E[100m:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=200\E[?5h\E[?5l:ve=\E[?25h:\ + :vi=\E[?25l: + +# Tested with WinNT 4.0, the telnet application assumes the screensize is +# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters. +ms-vt100|MS telnet imitating dec vt100:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#25:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :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=^O: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:do=^J:eA=\E(B\E)0:\ + :ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### X terminal emulators +# +# 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 / 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, removed) +# added khome/kend, rmir/smir, rmul/smul based on the R5 xterm code - TD +# corrected typos in rs2 string - 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:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :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: +# Compatible with the R6 xterm +# (from XFree86 3.2 distribution, and :it: added, removed) +# added khome/kend - TD +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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: +# 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):\ + :am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~:@1=\EOE:@7=\EOF:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:Km=\E[M:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0: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~:k;=\E[21~:\ + :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[m\017:ml=\El:mr=\E[7m:mu=\Em:\ + :nd=\E[C:op=\E[39;49m:r1=^O:\ + :r2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:rc=\E8:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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:u6=\E[%i%d;%dR:\ + :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# 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):\ + :am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~:@1=\EOE:@7=\EOF:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:Km=\E[M:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0: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=\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=\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[m\017:ml=\El:mr=\E[7m:mu=\Em:nd=\E[C:op=\E[39;49m:\ + :r1=^O:r2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :rc=\E8:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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:u6=\E[%i%d;%dR:\ + :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# 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. +xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System):\ + :5i:am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :@1=\EOE:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs:Km=\E[M:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;4l\E[4l\E>: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~: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[m\017:\ + :mk=\E[8m:ml=\El: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:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1047l\E[?1048l:ti=\E[?1048h\E[?1047h:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :vs=\E[?25h: + +# This beta version will probably be released in XFree86 4.0. +xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System):\ + :5i:am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :@1=\EOE:@7=\EOF:@8=\EOM: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@:K1=\EOH:K2=\EOE:\ + :K3=\E[5~:K4=\EOF:K5=\E[6~:Km=\E[M:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;4l\E[4l\E>: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=\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:mb=\E[5m:md=\E[1m:me=\E[m\017:\ + :mk=\E[8m:ml=\El: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:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?1;2c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +xterm-xfree86|xterm-new|xterm terminal emulator (XFree86 4.0 Window System):\ + :5i:am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :@1=\EOE:@7=\EOF:@8=\EOM: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@:K1=\EOH:K2=\EOE:\ + :K3=\E[5~:K4=\EOF:K5=\E[6~:Km=\E[M:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;4l\E[4l\E>: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=\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:mb=\E[5m:md=\E[1m:me=\E[m\017:\ + :mk=\E[8m:ml=\El: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:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?1;2c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# From: David J. MacKenzie , 14 Nov 1997 +xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1:\ + :am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~:@1=\EOE:@7=\EOF:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:Km=\E[M:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0: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=\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=\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[m\017:ml=\El:mr=\E[7m:mu=\Em:nd=\E[C:op=\E[39;49m:\ + :r1=^O:r2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :rc=\E8:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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:u6=\E[%i%d;%dR:\ + :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# This is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey) +xterm-16color|xterm with 16 colors like aixterm:\ + :5i:am:bs:km:mi:ms:ut:xn:\ + :Co#16:NC#32:co#80:it#8:li#24:pa#256:\ + :@1=\EOE:@7=\EOF:@8=\EOM:\ + :..AB=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm:\ + :..AF=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%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@:\ + :K1=\EOH:K2=\EOE:K3=\E[5~:K4=\EOF:K5=\E[6~:Km=\E[M:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :..Sb=%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:\ + :..Sf=%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:\ + :UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;4l\E[4l\E>: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=\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:mb=\E[5m:md=\E[1m:me=\E[m\017:\ + :mk=\E[8m:ml=\El: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:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?1;2c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# 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):\ + :5i:am:bs:km:mi:ms:ut:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :@1=\217E:@7=\2334~:@8=\217M:AB=\2334%dm:AF=\2333%dm:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:\ + :F2=\23324~:F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:\ + :F7=\23331~:F8=\23332~:F9=\23333~:FA=\23334~:IC=\233%d@:\ + :K1=\217w:K2=\217y:K3=\217u:K4=\217q:K5=\217s:Km=\233M:\ + :LE=\233%dD:RA=\233?7l:RI=\233%dC:SA=\233?7h:\ + :..Sb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :UP=\233%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\233L:as=^N:bl=^G:bt=\233Z:cb=\2331K:cd=\233J:\ + :ce=\233K:ch=\233%i%dG:cl=\233H\2332J:cm=\233%i%d;%dH:\ + :cr=^M:cs=\233%i%d;%dr:ct=\2333g:cv=\233%i%dd:dc=\233P:\ + :dl=\233M:do=^J:eA=\E(B\E)0:ec=\233%dX:ei=\2334l:ho=\233H:\ + :im=\2334h:\ + :is=\E7\E G\233r\233m\233?7h\233?1;3;4;6l\2334l\E8\E>:\ + :k1=\23311~:k2=\23312~:k3=\23313~:k4=\23314~:k5=\23315~:\ + :k6=\23317~:k7=\23318~:k8=\23319~:k9=\23320~:k;=\23321~:\ + :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=\233m^O:mk=\2338m:\ + :ml=\El:mr=\2337m:mu=\Em:nd=\233C:op=\23339;49m:pf=\2334i:\ + :po=\2335i:ps=\233i:r1=\Ec:\ + :r2=\E7\E[62"p\E G\233r\233m\233?7h\233?1;3;4;6l\2334l\E8\E>:\ + :rc=\E8:\ + :..sa=\2330%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\23327m:sf=^J:so=\2337m:sr=\215:st=\210:ta=^I:\ + :te=\233?1049l:ti=\233?1049h:u6=\233[%i%d;%dR:u7=\E[6n:\ + :u8=\233[?1;2c:u9=\E[c:ue=\23324m:up=\233A:us=\2334m:\ + :vb=\233?5h\233?5l:ve=\233?25h:vi=\233?25l:vs=\233?25h: + +xterm-24|vs100|xterms|xterm terminal emulator (X Window System):\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# This is xterm for ncurses. +xterm|xterm terminal emulator (X Window System):\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# 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:\ + :am:bs:hs:km:mi:ms:xn:\ + :co#80:it#8:li#24:ws#40:\ + :*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:ds=\E]0;\007:eA=\E)0:ei=\E[4l:fs=^G:ho=\E[H:\ + :im=\E[4h:is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :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~:\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:ts=\E]0;:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: +xterm+sl-twm|access X title line (pacify twm-descended window managers):\ + :am:bs:hs:km:mi:ms:xn:\ + :co#80:it#8:li#24:ws#40:\ + :*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:ds=\E]2;\007:eA=\E)0:ei=\E[4l:fs=^G:ho=\E[H:\ + :im=\E[4h:is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :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~:\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:ts=\E]2;:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# +# 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:\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[1m: +# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr) +# (kterm should not invoke DEC Graphics as the alternate character set +# -- Kenji Rikitake) +kterm|kterm kanji terminal emulator (X window system):\ + :am:bs:es:hs:km:mi:ms:xn:\ + :Co#8:NC#3:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~: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~: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:ds=\E[?H:ei=\E[4l:fs=\E[?F:\ + :ho=\E[H:im=\E[4h:\ + :is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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:op=\E[39;49m:rc=\E8:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:ts=\E[?E\E[?%i%dT:u6=\E[%i%d;%dR:\ + :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: +# 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:\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: +# From: Mark Sheppard , 4 May 1996 +xterm1|xterm terminal emulator ignoring the alternate screen buffer:\ + :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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:u6=\E[%i%d;%dR:\ + :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# 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 , 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:\ + :Co#8:co#80:it#8:li#65:pa#64:\ + :@7=\E[8~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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[m:mr=\E[7m:nd=\E[C:\ + :op=\E[39;49m:\ + :r1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<:\ + :rc=\E8:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# The 'nxterm' distributed with Redhat Linux 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. +nxterm|xterm-color|generic color xterm:\ + :am:bs:km:mi:ms:xn:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :*6=\E[4~:@0=\E[1~: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~: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>: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~: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:op=\E[m:rc=\E8:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# From: Thomas Dickey 04 Oct 1997 +# Updated: Oezguer Kesim 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" (monochrome) and "rxvt-color". +rxvt|rxvt terminal base (X Window System):\ + :am:bs:eo:km:mi:ms:ut:xn:xo:\ + :co#80:it#8:li#24:\ + :#2=\E[7$:#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~:@8=\EOM: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@:K1=\EOw:K2=\EOu:\ + :K3=\EOy:K4=\EOq:K5=\EOs: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:dc=\E[P: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:\ + :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~:kB=\E[Z:kD=\E[3~:kE=\E[8^:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:kh=\E[7~:kl=\E[D:kr=\E[C:\ + :ks=\E=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m\017:\ + :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>:\ + :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:vs=\E[?25h: +rxvt-color|rxvt terminal emulator (X Window System):\ + :am:bs:eo:km:mi:ms:ut:xn:xo:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :#2=\E[7$:#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~:@8=\EOM:AB=\E[%+(m:\ + :AF=\E[%+^^m: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@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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:dc=\E[P: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:\ + :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~:kB=\E[Z:kD=\E[3~:kE=\E[8^:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:kh=\E[7~:kl=\E[D:kr=\E[C:\ + :ks=\E=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:\ + :mr=\E[7m:nd=\E[C:op=\E[39;49m:\ + :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>:\ + :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:vs=\E[?25h: + +# 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:@8=\EOM:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\EOZ:F2=\EOA:Gm=\E[%dY:IC=\E[%d@:K1=\EOq:K2=\EOr:\ + :K3=\EOs:K4=\EOp:K5=\EOn: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=\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:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[1D:mb=@:md=\E[1m:me=\E[m\017: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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +xtermc|xterm terminal emulator (color):\ + :am:bs:km:mi:ms:xn:\ + :BT#3:Co#8:NC#7:co#80:it#8:li#24:pa#64:\ + :@7=\E[Y:@8=\EOM:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOZ:F2=\EOA:Gm=\E[%dY:\ + :IC=\E[%d@:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :Km=\E[^_:LE=\E[%dD:RI=\E[%dC:RQ=\E[492Z:\ + :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\ + :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:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :ic=\E[@:im=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[1D:mb=@:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :op=\E[100m:\ + :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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + +# From: David J. MacKenzie 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:\ + :am:bs:hs:km:mi:ms:xn:\ + :co#80:it#8:li#24:ws#40:\ + :*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:ds=\E]0;\007:eA=\E)0:ei=\E[4l:fs=^G:ho=\E[H:\ + :im=\E[4h:is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :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~:\ + :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\E[43m:me=\E[m:ml=\El:mr=\E[7m\E[34m:mu=\Em:\ + :nd=\E[C:rc=\E8:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m\E[31m:sr=\EM:ta=^I:\ + :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:ts=\E]0;:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[m:\ + :up=\E[A:us=\E[4m\E[42m: + +# HP ships this, except for the pb#9600 which was merged in from BSD termcap. +# (hpterm: added empty , 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=\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:..pk=\E&f%p1%dk%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk%p2%l%dL%p2%s:\ + :..pn=\E&f%p1%dk%p2%l%dd0L%p2%s:\ + :..px=\E&f2a%p1%dk%p2%l%dL%p2%s:\ + :..sa=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=^I:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# This entry describes an xterm with Sun-style function keys enabled +# via the X resource setting "xterm*sunFunctionKeys:true" +# To understand / note that L1,L2 and F11,F12 are the same. +# The ... keys are L3-L10. We don't set +# because we want it to be seen as . +# The ... keys are R1-R15. We treat some of these in accordance +# with their Sun keyboard labels instead. +# From: Simon J. Gerraty 10 Jan 1996 +xterm-sun|xterm with sunFunctionKeys true:\ + :am:bs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :%1=\E[196z:&8=\E[195z:*6=\E[4~:@0=\E[200z:@5=\E[197z:\ + :@7=\E[220z:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[192z:F2=\E[193z:F3=\E[194z:F4=\E[195z:F5=\E[196z:\ + :F6=\E[29~: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:\ + :K2=\E[218z: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :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[3~:kI=\E[2z:kN=\E[222z:kP=\E[216z:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kh=\E[214z: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: +xterms-sun|small (80x24) xterm with sunFunctionKeys true:\ + :am:bs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :%1=\E[196z:&8=\E[195z:*6=\E[4~:@0=\E[200z:@5=\E[197z:\ + :@7=\E[220z:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[192z:F2=\E[193z:F3=\E[194z:F4=\E[195z:F5=\E[196z:\ + :F6=\E[29~: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:\ + :K2=\E[218z: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\ + :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[3~:kI=\E[2z:kN=\E[222z:kP=\E[216z:kb=^H:kd=\EOB:\ + :ke=\E[?1l\E>:kh=\E[214z: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=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:sc=\E7:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:te=\E[2J\E[?47l\E8:\ + :ti=\E7\E[?47h:u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:\ + :u9=\E[c:ue=\E[m:up=\E[A:us=\E[4m: + +# This is for the extensible terminal emulator on the X11R6 contrib tape. +emu|emu native mode:\ + :mi:ms: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:\ + :ae=\0:al=\EQ1;:as=\0: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:eA=\0: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=\ES\EW:md=\ES\EU:me=\ES:mr=\ES\ET:nd=\ED:\ + :oc=\Es0;\Er0;:rs=\ES\Es0;\Er0;:se=\ES:sf=\EG:so=\ES\ET:\ + :sr=\EF:st=\Eh:ta=^I:ue=\ES:up=\EA:us=\ES\EV:ve=\Ea:vi=\EZ:\ + :vs=\Ea: + +######## 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: + +#### AT&T consoles +# + +# 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 Mon Nov 27 19:00:53 EST 1995 +att6386|at386|386at|AT&T WGS 6386 console:\ + :am:bw:eo:xo:\ + :Co#8:NC#3:co#80:it#8:li#25:pa#64:\ + :@7=\E[Y:AB=\E[4%dm:AF=\E[3%dm: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[2g: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:op=\E[37;40m:rc=\E8:\ + :..sa=\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:\ + :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: +# (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 +# +# 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 /* needed for strcpy call */ +# #include /* 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 . 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:/ 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:xo:\ + :co#80:it#8:li#24:\ + :!1=\EOO:!3=\EOS:#1=\EOM:#2=\ENM:#3=\ENJ:#4=\ENK:%0=\EOt:\ + :%1=\EOm:%2=\ENi:%4=\ENc:%5=\ENh:%6=\EOv:%7=\EOr:%8=\ENg:\ + :%9=\EOz:%b=\ENC:%c=\ENH:%d=\EOR:%e=\ENG:%g=\EOT:%h=\EOY:\ + :%i=\ENL:&0=\EOW:&1=\EOb:&2=\ENa:&3=\EOy:&4=\EOB:&6=\EOo:\ + :&8=\EOs:&9=\ENB:*0=\EOX:*2=\END:*3=\EON:*4=\ENF:*5=\ENE:\ + :*6=\ENI:*7=\ENN:*8=\EOA:@0=\EOx:@1=\ENb:@2=\EOw:@3=\EOV:\ + :@4=\EOu:@5=\ENd:@6=\EOn:@7=\E0:@9=\EOk: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:kB=\E[Z:kC=\E[J:kD=\ENf:\ + :kE=\EOa:kF=\E[B:kI=\ENj:kN=\E[U:kP=\E[V:kR=\E[A:kS=\E[J:\ + :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:mk=\E[9m: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: + +#### Hewlett-Packard consoles +# +# These are descriptions for the HP700 series, the workstations formerly +# known as Apollos. HP terminals are described elsewhere in the file +# + +# From: Victor Duchovni +# (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: + +# 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 +# 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=\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=k\277l\332m\300j\331n\305w\302q\304u\264t\303v\301x\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: + +#### Iris consoles +# + +# Sent by Stefan Stapelberg , 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-net alias helps with IRIX does when you rsh to a remote system. +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:\ + :pk=\EP101;%d.y%s\E\\: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:\ + :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=\EOM: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: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:pk=\EP101;%d.y%s\E\\:\ + :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: + +# 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:\ + :am:\ + :Co#8:NC#33:co#80:it#8:li#40:pa#64:\ + :!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=\EOM:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\E[011q:F2=\E[012q:IC=\E[%d@:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ZH=\E[3m:ZR=\E[23m: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:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dl=\E[M:do=^J:ec=\E[%dX:ei=:ho=\E[H:im=:\ + :is=\E[?1l\E=\E[?7h: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:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:op=\E[37;40m:\ + :pk=\EP101;%d.y%s\E\\:r1=\Ec:\ + :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\ + :se=\E[m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :u6=\E[%i%d;%dR:u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[24m:\ + :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: + +# (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:\ + :am:bs:hs:km:ul:\ + :co#96:it#8:li#48:\ + :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-90x28|NeWS psterm 90x28:\ + :am:bs:hs:km:ul:\ + :co#90:it#8:li#28:\ + :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-80x24|NeWS psterm 80x24:\ + :am:bs:hs:km:ul:\ + :co#80:it#8:li#24:\ + :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: +# 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 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: + +#### SCO consoles +# + +# 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) +# SCO function keys and corrected by Thomas Dickey. +# In this description based on SCO's keyboard(HW) manpage list of default function key +# values: +# F13-F24 are shifted F1-F12 +# F25-F36 are control F1-F12 +# F37-F48 are shift+control F1-F12 +scoansi|SCO Extended ANSI standard crt:\ + :am:eo:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@1=\E[E:@7=\E[F:AB=\E[4%dm:AF=\E[3%dm:F1=\E[W:F2=\E[X:\ + :F3=\E[Y: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[^:Fa=\E[_:Fb=\E[`:Fc=\E[{:\ + :ac=0[5566778899\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`ja0fxgqh2jYk?lZm@nEqDtCu4vAwBx3~y:\ + :ae=\E[10m:al=\E[L:as=\E[12m: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=:\ + :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:\ + :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=\E[D:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :..sa=\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:\ + :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +#### 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 , 14 Nov 1995 +# :li: capability later corrected by J.T. Conklin +# 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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +# On a SparcStation 5, :al:/:AL: flake out on the last line. +# Unfortunately, without them the terminal has no way to scroll. +sun-ss5|Sun SparcStation 5 console:\ + :am:km:ms:\ + :co#80:li#34:\ + :%7=\E[194z:&5=\E[193z:&8=\E[195z:@7=\E[220z:DC=\E[%dP:\ + :DL=\E[%dM:F1=\E[234z:F2=\E[235z:IC=\E[%d@:K2=\E[218z:\ + :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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +# If you are using an SS5, change the sun definition to use sun-ss5. +sun|sun1|sun2|Sun Microsystems Inc. workstation console:\ + :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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: + +# From: Tue Sep 24 13:14:44 1985 +sun-s|Sun Microsystems Workstation window with status line:\ + :am:hs: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:ds=\E]l\E\\:\ + :ei=:fs=\E\\: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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:ts=\E]l:u8=\E[1t:u9=\E[11t:\ + :up=\E[A: +sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs:\ + :am:hs: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:ds=\E]l\E\\:\ + :ei=:fs=\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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:ts=\E]l:u8=\E[1t:u9=\E[11t:\ + :up=\E[A: +sun-48|Sun 48-line window:\ + :am:km:ms:\ + :co#80:li#48:\ + :%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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-34|Sun 34-line window:\ + :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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-24|Sun 24-line window:\ + :am:km:ms:\ + :co#80:li#24:\ + :%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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-17|Sun 17-line window:\ + :am:km:ms:\ + :co#80:li#17:\ + :%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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-12|Sun 12-line window:\ + :am:km:ms:\ + :co#80:li#12:\ + :%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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-1|Sun 1-line window for sysline:\ + :am:es:hs:km:ms:\ + :co#80:li#1:\ + :%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:ds=^L:ei=:\ + :fs=\E[K: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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:ts=^M:u8=\E[1t:u9=\E[11t:\ + :up=\E[A: +sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character:\ + :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=: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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:u8=\E[1t:u9=\E[11t:up=\E[A: +sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history:\ + :am:km:ms:\ + :co#80:li#35:\ + :%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: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:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:te=\E[>4h:ti=\E[>4l:u8=\E[1t:\ + :u9=\E[11t:up=\E[A: + +#### Common Desktop Environment +# + +# This ships with Sun's CDE in Solaris 2.5 +# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov +dtterm|CDE desktop terminal:\ + :am:mi:ms:xn:xo:\ + :Co#8:co#80:it#8:li#24:lm#0:pa#64:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:AB=\E[%+(m:AF=\E[%+^^m:\ + :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[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:op=\E[39;49m:rc=\E8:\ + :..sa=\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%;:\ + :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: + +#### Mach +# + +# From: Matthew Vernon +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=^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:ta=^I:up=\E[A: +mach-bold|Mach Console with bold instead of underline:\ + :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=^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:ta=^I:ue=\E[0m:up=\E[A:us=\E[1m: + +#### 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: + +######## UNIX VIRTUAL TERMINALS AND TELNET CLIENTS +# + +#### FSF virtual terminal types +# + +# 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: + +# 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: added -- TD) + +screen|VT 100/ANSI X3.64 virtual terminal:\ + :am:km:mi:ms:xn:\ + :Co#8:NC#3: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:F1=\E[23~:F2=\E[24~:IC=\E[%d@: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~:kD=\E[3~:kH=\E[4~: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[m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:op=\E[39;49m:rc=\E8:rs=\Ec:sc=\E7:\ + :se=\E[23m:sf=^J:so=\E[3m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:\ + :up=\EM:us=\E[4m:vb=\Eg:ve=\E[34h\E[?25h:vi=\E[?25l:\ + :vs=\E[34l: + +screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols:\ + :am:km:mi:ms:xn:\ + :Co#8:NC#3:co#132: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:F1=\E[23~:F2=\E[24~:IC=\E[%d@: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~:kD=\E[3~:kH=\E[4~: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[m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:op=\E[39;49m:rc=\E8:rs=\Ec:sc=\E7:\ + :se=\E[23m:sf=^J:so=\E[3m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:\ + :up=\EM:us=\E[4m:vb=\Eg:ve=\E[34h\E[?25h:vi=\E[?25l:\ + :vs=\E[34l: + +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 : +# 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:mi:ms:xn:\ + :%1=\E[1~:@7=\E[5~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[29~:F2=\E[31~:F3=\E[32~:F4=\E[33~:\ + :F5=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:dl=\E[M:do=^J:ds=\E]0;\007:eA=\E)0:\ + :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=\E23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~:\ + :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[m\017:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:ts=\E]0;:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?62;1;6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: +ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode:\ + :am:hs:km:mi:ms:xn:\ + :Co#8:NC#3:pa#64:\ + :%1=\E[1~:@7=\E[5~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[29~:F2=\E[31~:\ + :F3=\E[32~:F4=\E[33~:F5=\E[34~:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:dl=\E[M:do=^J:ds=\E]0;\007:eA=\E)0:\ + :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=\E23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~:\ + :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[m\017:\ + :mr=\E[7m:nd=\E[C:op=\E[37;40m:pf=\E[4i:po=\E[5i:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:ts=\E]0;:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?62;1;6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: +ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode:\ + :am:km:mi:ms:xn:\ + :Co#8:NC#3:pa#64:\ + :%1=\E[1~:@7=\E[5~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[29~:F2=\E[31~:\ + :F3=\E[32~:F4=\E[33~:F5=\E[34~:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:dl=\E[M:do=^J:eA=\E)0:ei=\E[4l: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=\E23~:\ + :k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~: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[m\017:mr=\E[7m:\ + :nd=\E[C:op=\E[37;40m:pf=\E[4i:po=\E[5i:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?62;1;6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: +ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode:\ + :am:km:mi:ms:xn:\ + :%1=\E[1~:@7=\E[5~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[29~:F2=\E[31~:F3=\E[32~:F4=\E[33~:\ + :F5=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:dl=\E[M:do=^J:eA=\E)0:ei=\E[4l: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=\E23~:\ + :k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~: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[m\017:mr=\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?62;1;6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: +# 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:\ + :am:hs:km:mi:ms:xn:\ + :Co#8:NC#3:pa#64:\ + :%1=\E[1~:@7=\E[5~: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@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:dl=\E[M:do=^J:ds=\E]0;\007:eA=\E)0:\ + :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=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[21~:k6=\E[17~:\ + :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~: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[m\017:mr=\E[7m:\ + :nd=\E[C:op=\E[37;40m:pf=\E[4i:po=\E[5i:rc=\E8:\ + :rf=/usr/share/tabset/vt100:\ + :rs=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[2J\E8:ti=\E7:ts=\E]0;:u6=\E[%i%d;%dR:u7=\E[6n:\ + :u8=\E[?62;1;6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l: + +#### Pilot Pro Palm-Top +# + +# From: Jason Downs , 15 Jun 1997 (Top Gun Telnet's author) +pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional:\ + :am:xn:\ + :co#39:li#16:\ + :bl=^G:cl=\Ec:cm=\Em%+ %+ :cr=^M:do=^J:ho=\Em\s\s:kN=^L:\ + :kP=^K:kb=^H:kd=^J:kl=^H:le=^H:nw=\Em~\s:se=\EB:sf=^J:so=\Eb:\ + :ta=^I: + +######## NON-UNIX CONSOLES +# + +#### 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 14 Jan 1997 +# + +mgr|Bellcore MGR (non X) window system terminal emulation:\ + :am:km:\ + :AL=\E%da:DC=\E%dE:DL=\E%dd:IC=\E%dA:RA=\E5S:SA=\E5s:\ + :al=\Ea:bl=^G:cd=\EC:ce=\Ec:cl=^L:cm=\E%r%d;%dM:cr=^M:\ + :cs=\E%d;%dt:dc=\EE:dl=\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:\ + :am:km:\ + :%1=\E[207z:%6=\E[198z:&8=\E[195z:@0=\E[200z:@5=\E197z:\ + :@7=\E[220z:@8=\E[250z:AL=\E%da:DC=\E%dE:DL=\E%dd:\ + :F1=\E[234z:F2=\E[235z:IC=\E%dA:K1=\E[214z:K2=\E[218z:\ + :K3=\E[216z:K4=\E[220z:K5=\E[222z:RA=\E5S:SA=\E5s:al=\Ea:\ + :bl=^G:cd=\EC:ce=\Ec:cl=^L:cm=\E%r%d;%dM:cr=^M:cs=\E%d;%dt:\ + :dc=\EE:dl=\Ed:do=\Ef:ei=:hd=\E1;2f:hu=\E1;2u:ic=\EA: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:\ + :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: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-linux|Mgr window with Linux keyboard:\ + :am:km:\ + :@7=\E[4~:AL=\E%da:DC=\E%dE:DL=\E%dd:F1=\E[23~:F2=\E[24~:\ + :IC=\E%dA:K1=\E[H:K2=\E[G:K3=\E[5~:K4=\E[Y:K5=\E[6~:\ + :RA=\E5S:SA=\E5s:al=\Ea:bl=^G:cd=\EC:ce=\Ec:cl=^L:\ + :cm=\E%r%d;%dM:cr=^M:cs=\E%d;%dt:dc=\EE:dl=\Ed:do=\Ef:ei=:\ + :hd=\E1;2f:hu=\E1;2u:ic=\EA:im=: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~:kb=^H:\ + :kd=\E[B:kh=\E[1~: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: + +#### 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:F1=\E[21~:F2=\E[22~:IC=\E[%d@:Sb=\E[%+(m:\ + :Sf=\E[%+^^m:al=\E[L:bl=^G: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: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:kh=\E[1~:kl=\E[D:kr=\E[C: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: + +#### QNX +# + +# QNX 4.0 Console +# Michael's original version of this entry had , :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 capability resets attributes. +# From: Michael Hunter 30 Jul 1996 +# (removed: :sa=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,:) +qnx|qnx4|qnx console:\ + :YA:YC:km:mi:ms:xt:\ + :Co#8:NC#3:co#80:it#4:li#25:pa#8:\ + :!1=\377\307:!2=\377\303:!3=\377\337:#1=\377\371:\ + :#2=\377\260:#3=\377\340:#4=\377\264:%0=\377\336:\ + :%1=\377\350:%2=\377\355:%3=\377\345:%4=\377\351:\ + :%5=\377\312:%6=\377\357:%7=\377\353:%8=\377\302:\ + :%9=\377\255:%a=\377\304:%b=\377\306:%c=\377\272:\ + :%d=\377\372:%e=\377\262:%f=\377\275:%g=\377\315:\ + :%h=\377\373:%i=\377\266:%j=\377\374:&0=\377\263:\ + :&1=\377\354:&2=\377\347:&3=\377\362:&4=\377\352:\ + :&5=\377\360:&6=\377\361:&7=\377\335:&8=\377\365:\ + :&9=\377\356:*0=\377\370:*1=\377\267:*2=\377\363:\ + :*3=\377\364:*5=\377\366:*6=\377\247:*7=\377\301:\ + :*8=\377\311:*9=\377\367:@0=\377\346:@1=\377\300:\ + :@2=\377\243:@3=\377\343:@4=\377\245:@5=\377\265:\ + :@6=\377\305:@7=\377\250:@8=\377\320:@9=\377\270:\ + :F1=\377\256:F2=\377\257:F3=\377\213:F4=\377\214:\ + :F5=\377\215:F6=\377\216:F7=\377\217:F8=\377\220:\ + :F9=\377\221:FA=\377\222:FB=\377\223:FC=\377\224:\ + :FD=\377\333:FE=\377\334:FF=\377\225:FG=\377\226:\ + :FH=\377\227:FI=\377\230:FJ=\377\231:FK=\377\232:\ + :FL=\377\233:FM=\377\234:FN=\377\235:FO=\377\236:\ + :FP=\377\276:FQ=\377\277:FR=\377\321:FS=\377\322:\ + :FT=\377\323:FU=\377\324:FV=\377\325:FW=\377\326:\ + :FX=\377\327:FY=\377\330:FZ=\377\331:Fa=\377\332:\ + :Fb=\377\316:Fc=\377\317:..Sb=\E@%p1%Pb%gb%gf%d%d:\ + :..Sf=\E@%p1%Pf%gb%gf%d%d:Zc=\E!%02:\ + :ac=l\332m\300k\277j\331q\304x\263u\264t\303n\305v\301w\302O\333a\261o\337s\334:\ + :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:\ + :k;=\377\212:kA=\377\273:kB=\377\0:kC=\377\341:\ + :kD=\377\254:kE=\377\310:kF=\377\261:kI=\377\253:\ + :kL=\377\274:kM=\377\313:kN=\377\252:kP=\377\242:\ + :kR=\377\271:kS=\377\314:kT=\377\342:ka=\377\344:\ + :kd=\377\251:kh=\377\240:kl=\377\244:kr=\377\246:\ + :kt=\377\237:ku=\377\241:le=^H:mb=\E{:md=\E<:\ + :me=\E}\E]\E>\E):mr=\E(:nd=\EC:op=\ER:r1=\ER:\ + :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: + +# From: Federico Bianchi , 1 Jul 1998 +# (esr: commented out and :te: to avoid warnings.) +# (TD: derive from original qnx4 entry) +qnxt2|qnx 2.15 serial terminal:\ + :YA:YC:am:km:mi:ms:xt:\ + :Co#8:NC#3:co#80:it#4:li#25:pa#8:\ + :!1=\377\307:!2=\377\303:#1=\377\371:#2=\377\260:\ + :#3=\377\340:#4=\377\264:%0=\377\336:%1=\377\350:\ + :%2=\377\355:%3=\377\345:%4=\377\351:%5=\377\312:\ + :%6=\377\357:%7=\377\353:%8=\377\302:%9=\377\255:\ + :%a=\377\304:%b=\377\306:%c=\377\272:%d=\377\372:\ + :%e=\377\262:%f=\377\275:%g=\377\315:%i=\377\266:\ + :&0=\377\263:&1=\377\354:&2=\377\347:&3=\377\362:\ + :&4=\377\352:&5=\377\360:&6=\377\361:&8=\377\365:\ + :&9=\377\356:*0=\377\370:*1=\377\267:*2=\377\363:\ + :*3=\377\364:*5=\377\366:*6=\377\247:*7=\377\301:\ + :*8=\377\311:*9=\377\367:@0=\377\346:@1=\377\300:\ + :@2=\377\243:@3=\377\343:@4=\377\245:@5=\377\265:\ + :@6=\377\305:@7=\377\250:@8=\377\320:@9=\377\270:\ + :F1=\377\256:F2=\377\257:F3=\377\213:F4=\377\214:\ + :F5=\377\215:F6=\377\216:F7=\377\217:F8=\377\220:\ + :F9=\377\221:FA=\377\222:FB=\377\223:FC=\377\224:\ + :FD=\377\333:FE=\377\334:FF=\377\225:FG=\377\226:\ + :FH=\377\227:FI=\377\230:FJ=\377\231:FK=\377\232:\ + :FL=\377\233:FM=\377\234:FN=\377\235:FO=\377\236:\ + :FP=\377\276:FQ=\377\277:FR=\377\321:FS=\377\322:\ + :FT=\377\323:FU=\377\324:FV=\377\325:FW=\377\326:\ + :FX=\377\327:FY=\377\330:FZ=\377\331:Fa=\377\332:\ + :Fb=\377\316:Fc=\377\317:Zc=\E!%02:\ + :ac=l\332m\300k\277j\331q\304x\263u\264t\303n\305v\301w\302O\333a\261o\337s\334:\ + :al=\EE:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\ + :dl=\EF:do=^J:ho=\EH: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:k;=\377\212:kA=\377\273:\ + :kB=\377\0:kC=\377\341:kD=\377\254:kE=\377\310:\ + :kF=\377\261:kI=\377\253:kL=\377\274:kM=\377\313:\ + :kN=\377\252:kP=\377\242:kR=\377\271:kS=\377\314:\ + :kT=\377\342:ka=\377\344:kd=\377\251:kh=\377\240:\ + :kl=\377\244:kr=\377\246:kt=\377\237:ku=\377\241:le=^H:\ + :mb=\E{:md=\E<:me=\E}\E]\E>\E):mr=\E(:nd=\EC:op=\ER:r1=\ER:\ + :se=\E>:sf=^J:so=\E<:sr=\EI:ta=^I:ue=\E]:up=\EA:us=\E[: + +#### 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 +# doen't fit the model well). The klone+acs sequences were valid +# though undocumented. The capability is untested but should work for +# keys F1-F10 (%p1 values outside this range will yield unpredictable results). +# From: Eric S. Raymond Nov 7 1995 +ansi.sys-old|ANSI.SYS under PC-DOS 2.1:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:RA=\E[?7l:S2=\E[11m:S3=\E[10m:\ + :SA=\E[?7h:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:op=\E[37;40m:pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: +ansi.sys|ANSI.SYS 3.1 and later versions:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:RA=\E[?7l:S2=\E[11m:S3=\E[10m:\ + :SA=\E[?7h:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m: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:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:op=\E[37;40m:pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# +# 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:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:RA=\E[?7l:S2=\E[11m:S3=\E[10m:\ + :SA=\E[?7h:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:\ + :do=\E[B:ho=\E[H:\ + :is=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\ + :kd=^J:\ + :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:\ + :kh=^^:kl=^H:kr=^L:\ + :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:\ + :ku=^K:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:op=\E[37;40m:pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: +# +# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer. +nansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:RA=\E[?7l:S2=\E[11m:S3=\E[10m:\ + :SA=\E[?7h:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[1L:as=\E[11m:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%dH:dc=\E[1P:dl=\E[1M:do=\E[B:ei=:ho=\E[H:\ + :ic=\E[1@:im=:\ + :is=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n:kd=^J:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[0;10m:mk=\E[8m:mr=\E[7m:nd=\E[C:op=\E[37;40m:\ + :pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: +# +# See ansi.sysk and nansi.sys above. +nansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :AB=\E[4%dm:AF=\E[3%dm:RA=\E[?7l:S2=\E[11m:S3=\E[10m:\ + :SA=\E[?7h:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[1L:as=\E[11m:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%dH:dc=\E[1P:dl=\E[1M:do=\E[B:ei=:ho=\E[H:\ + :ic=\E[1@:im=:\ + :is=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\ + :kd=^J:\ + :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:\ + :kh=^^:kl=^H:kr=^L:\ + :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:\ + :ku=^K:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:op=\E[37;40m:pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### OS/2 +# + +# 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:xn:xo:\ + :Co#16: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=\0D:k1=\0;:\ + :k2=\0<:k3=\0=:k4=\0>:k5=\0?:k6=\0@:k7=\0A:k8=\0B:k9=\0C:\ + :kH=\0O:kI=\0R:kN=\0Q:kP=\0I:kb=^H:kd=\0P:kh=\0G:kl=\0K:\ + :kr=\0M:ku=\0H: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: +ansi-color-2-emx|ANSI.SYS color 2:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#16: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[0;37;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=\0D:k1=\0;:\ + :k2=\0<:k3=\0=:k4=\0>:k5=\0?:k6=\0@:k7=\0A:k8=\0B:k9=\0C:\ + :kH=\0O:kI=\0R:kN=\0Q:kP=\0I:kb=^H:kd=\0P:kh=\0G:kl=\0K:\ + :kr=\0M:ku=\0H:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;37;44m:\ + :mr=\E[1;37;46m:nd=\E[C:nw=^M^J:r1=\Ec:se=\E[0;37;44m:\ + :sf=^J:so=\E[1;37;46m:st=\EH:ta=^I:u8=\E[?6c:u9=\E[c:\ + :ue=\E[0;37;44m:up=\E[A:us=\E[1;36;44m:vb=\E[?5h\E[?5l:\ + :ve=\E[?25h:vi=\E[?25l: +ansi-color-3-emx|ANSI.SYS color 3:\ + :am:eo:mi:ms:ut:xn:xo:\ + :Co#16: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[0;37;40m\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=\0D:k1=\0;:\ + :k2=\0<:k3=\0=:k4=\0>:k5=\0?:k6=\0@:k7=\0A:k8=\0B:k9=\0C:\ + :kH=\0O:kI=\0R:kN=\0Q:kP=\0I:kb=^H:kd=\0P:kh=\0G:kl=\0K:\ + :kr=\0M:ku=\0H:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:\ + :mr=\E[1;37;46m:nd=\E[C:nw=^M^J:r1=\Ec:se=\E[0;37;40m:\ + :sf=^J:so=\E[1;37;46m:st=\EH:ta=^I:u8=\E[?6c:u9=\E[c:\ + :ue=\E[0;37;40m:up=\E[A:us=\E[0;36;40m:vb=\E[?5h\E[?5l:\ + :ve=\E[?25h:vi=\E[?25l: +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=\E[H\E[2J:cm=\E[%i%d;%dH:do=\E[B:\ + :ho=\E[H:k0=\0D:k1=\0;:k2=\0<:k3=\0=:k4=\0>:k5=\0?:k6=\0@:\ + :k7=\0A:k8=\0B:k9=\0C:kH=\0O:kI=\0R:kN=\0Q:kP=\0I:kb=^H:\ + :kd=\0P:kh=\0G:kl=\0K:kr=\0M:ku=\0H: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 +cygwin|ansi emulation for cygwin32:\ + :am:bs:mi:ms:xo:\ + :Co#8:NC#3:co#80:li#25:pa#64:\ + :@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~:S2=\E[11m:S3=\E[10m:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=\E[11m:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:\ + :do=\E[B:ho=\E[H:is=\E[m\E[?7h: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:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[0;10m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :op=\E[37;40m:pk=\E[0;%+\:;"%s":rc=\E[u:\ + :..sa=\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:\ + :sc=\E[s:se=\E[m:so=\E[7m:u6=\E[%i%d;%dR:u7=\E[6n:ue=\E[m:\ + :up=\E[A:us=\E[4m: + + +#### Windows NT +# +# 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 +# . +# +# From: Federico Bianchi , 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/lib/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: + +######## 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. +# + +#### 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, , +# for clearing up this point.) +# + +adm1a|adm1|lsi adm1a:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cl=\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:r1=^N:rs=^N:sf=^J:\ + :up=^K: +adm3a+|adm3a plus:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cl=1\032:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:kb=^H:kd=^J:\ + :kl=^H:kr=^L:ku=^K:le=^H:ma=^K^P:nd=^L:nl=^J:r1=^N:rs=^N:\ + :sf=^J:up=^K: +# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr) +adm5|lsi adm5:\ + :am:bs:\ + :co#80:li#24:sg#1:\ + :bl=^G:cd=\EY:ce=\ET:cl=1\032:cm=\E=%+ %+ :cr=^M:do=^J:\ + :ho=^^:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ma=^K^P:\ + :nd=^L:nl=^J:r1=^N:rs=^N:se=\EG:sf=^J:so=\EG:up=^K: +# 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. via BRL +# Status line additions from Stephen J. Muir +# :kh: from . :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:me=\EG0:mk=\EG1:mr=\EG4:\ + :nd=^L:nl=^J:nw=^M^J:se=\EG0:so=\EG4:ta=^I:ts=\EF\E):\ + :ue=\EG0:up=^K:us=\EG8: +# From: Andrew Scott Beals +# Corrected by Olaf Siebert , 11 May 1995 +# Supervisor mode info by Ari Wuolle, , 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 +# 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:me=\EG0:mk=\EG1:mr=\EG4:nd=^L:se=\EG0:so=\EG4:\ + :st=\E1:ue=\EG0:up=^K:us=\EG8: +# (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:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=30*\EE:bl=^G:cd=\EY:ce=\ET:cl=1\032:cm=\E=%+ %+ :cr=^M:\ + :dc=\EW:dl=30*\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:kb=^H:kd=^J:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ma=^K^P:me=\EG0:mr=\EG4:nd=^L:\ + :nl=^J:r1=^N:rs=^N:se=\EG0:sf=^J:so=\EG4:ue=\EG0:up=^K:\ + :us=\EG8: +# (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\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0:\ + :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:\ + :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=\EG4:up=^K: +# LSI ADM-36 from Col. George L. Sicherman via BRL +adm36|LSI ADM36:\ + :am:bs:ms:pt:xn:xo:\ + :co#80:it#8:kn#4:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:if=/usr/lib/tabset/vt100:\ + :is=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +# (adm42: removed obsolete ":ma=^K^P:" -- esr) +adm42|lsi adm42:\ + :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=\Er:im=\Eq:ip=:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pc=\177:\ + :se=\EG0:sf=^J:so=\EG4:ta=^I:up=^K:vs=\EC\E3 \E3(: +# 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:\ + :am:bs:\ + :co#80:li#24:\ + :al=\EE\EF \011:bl=^G:bt=\EI\EF \011:cd=\EY\EF \011:\ + :ce=\ET\EF \011:cl=\E;\EF \011:cm=\E=%+ %+ \EF \011:\ + :cr=^M:dc=\EW\EF \011:dl=\ER\EF \011:do=^J:\ + :ei=\Er\EF \011:im=\Eq\EF \011:ip=:kd=^J:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pc=\177:se=\EG0:sf=^J:\ + :so=\EG4:ta=^I:up=^K:vs=\EC\E3 \E3(: +# 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 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(: + +#### 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:\ + :am:bw:hs:ul:\ + :co#80:li#24:sg#1:ug#1:\ + :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:me=\EG0:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\E(:sf=^J:so=\E0P\E):st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.4: + +# 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:ug#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:me=\EG0:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\E(:sf=^J:so=\E0P\E):st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.4: +qvt102|qume qvt 102:\ + :am:bw:hs:ul:\ + :co#80:li#24:sg#1:ug#1:\ + :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:me=\EG0:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\E(:sf=^J:so=\E0P\E):st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.: +# (qvt103: added / 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=\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: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:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :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: +qvt103-w|qume qvt103 132 cols:\ + :am:xn:xo:\ + :co#132: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=\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: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:rc=\E8:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :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: +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:me=\EG0:mk=\EG1:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\EG0:sf=^J:so=\EG4:sr=\EJ:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2: +qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines:\ + :am:hs:mi:ms:\ + :co#80:li#25: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:me=\EG0:mk=\EG1:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\EG0:sf=^J:so=\EG4:sr=\EJ:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2: +qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode:\ + :am:hs:mi:ms:\ + :co#132: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\En4: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:me=\EG0:mk=\EG1:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\EG0:sf=^J:so=\EG4:sr=\EJ:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2: +qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25:\ + :am:hs:mi:ms:\ + :co#80:li#25: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:me=\EG0:mk=\EG1:mr=\EG4:nd=^L:pf=\EA:po=\E@:\ + :se=\EG0:sf=^J:so=\EG4:sr=\EJ:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2: +qvt203|qvt203+|qume qvt 203 Plus:\ + :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: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:im=\E[4h:ip=: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~: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:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video):\ + :am:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :DO=\E[%dB: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[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:im=\E[4h:ip=: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~: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:rc=\E8:\ + :rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +# +# 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:\ + :am:xn:xo:\ + :co#80:it#8:li#25:vt#3:\ + :DO=\E[%dB: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[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:im=\E[4h:ip=:\ + :is=\E[=40h\E[?3l: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~: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:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +qvt203-25-w|QVT 203 PLUS with 25 by 132 columns:\ + :am:xn:xo:\ + :co#132:it#8:li#25:vt#3:\ + :DO=\E[%dB: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[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:im=\E[4h:ip=: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~: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:rc=\E8:\ + :rs=\E[?3h\E[=40h:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### Televideo (tvi) +# +# TeleVideo +# 550 East Brokaw Road +# PO Box 49048 95161 +# San Jose CA 95112 +# Vox: (408)-954-8333 +# Fax: (408)-954-0623 +# +#% TeleVideo: Dick Kelby (408)-955-7494 (Application Mgr) +# +# There are some tvi terminals that require incredible amounts of padding and +# some that don't. I'm assuming tvi912 and tvi920 are the old slow ones, and +# tvi912b, tvi912c, tvi920b, tvi920c are the new ones that don't need 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:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\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:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed: + +# Vanilla tvi910 -- W. Gish 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:, , , :am:, :ms: from SCO entry -- esr) +tvi910|televideo model 910:\ + :am:bs:ms:\ + :co#80:it#8:li#24:sg#1:ug#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:me=\EG0:\ + :mr=\EG4:nd=^L:se=\EG0:sf=^J:so=\EG4:ta=^I:ue=\EG0:up=^K:\ + :us=\EG8: +# From: Alan R. Rogers +# 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+:\ + :am:bs:ms:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:ch=\E]%+ :cl=^Z:\ + :cm=\E=%+ %+ :cr=^M:cv=\E[%+ :dc=\EW:dl=\ER:do=^J:ei=:ho=^^:\ + :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:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:\ + :ku=^K:le=^H:ll=\E=7\s:me=\EG0:mr=\EG4:nd=^L:se=\EG0:sf=^J:\ + :so=\EG4:ta=^I:ue=\EG0:up=^K:us=\EG8: + +# (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=\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:\ + :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: +# the 912 has a key that's like shift: 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. +tvi912c|tvi912b|new televideo 912:\ + :am:bs:ms:pt:\ + :co#80:it#8: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:\ + :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: +# set to page 1 when entering curses application (\E-17 ) +# reset to page 0 when exiting curses application (\E-07 ) +tvi912-2p|tvi920-2p|tvi-2p|televideo w/2 pages:\ + :am:bs:ms:pt:\ + :co#80:it#8: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:\ + :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:te=\E-07\s:\ + :ti=\E-17\s: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:\ + :am:bs:ms:pt:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=\EE:bl=^G:cd=\Ey:ce=\ET:cl=^Z:cr=^M:ct=\E3:dc=\EW:dl=\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: + +# Here are the switch settings for the tvi920c: +# +# 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. +# +tvi920b|tvi920c|new televideo 920:\ + :am:bs:ms:pt:\ + :co#80:it#8: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:\ + :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: + +# Televideo 921 and variants +# From: Tim Theisen 22 Sept 1995 +# (tvi921: removed :ko=bt: before translation, I see no backtab cap; +# also added empty 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:ug#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:\ + :me=\EG0:mr=\EG4:nd=^L:nw=^M^J:se=\EG0:sf=^J:so=\EG4:ta=^I:\ + :ts=\Ef\EG0:ue=\EG0:up=^K:us=\EG8:ve=\E.3:vs=\E.2: +# without the beeper +# (tvi92B: removed :ko=bt: before translation, I see no backtab cap; +# also added empty 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:ug#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:\ + :me=\EG0:mr=\EG4:nd=^L:nw=^M^J:se=\EG0:sf=^J:so=\EG4:ta=^I:\ + :ts=\Ef\EG0:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.3:\ + :vs=\E.2: +# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr) +tvi92D|tvi92B with DTR instead of XON/XOFF & better padding:\ + :am:hs:xn:xs:\ + :co#80:li#24:sg#0:ug#0:\ + :ac=:ae=\E%:al=2*\EE:as=\E$:cd=\EY:ce=\ET:cl=^Z:\ + :cm=3\E=%+ %+ :cr=^M:dc=\EW:dl=2*\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\016\EA\E<:kA=2*\EE:kC=^Z:kD=\EW:\ + :kE=\ET:kI=\EQ:kL=2*\ER:kS=\EY:kb=^H:kd=^V:kl=^H:kr=^L:ku=^K:\ + :le=^H:me=\EG0:mr=\EG4:nd=^L:nw=^M^J:se=\EG0:sf=^J:so=\EG4:\ + :ta=^I:ts=\Ef\EG0:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.3:\ + :vs=\E.2: + +# (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:ug#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:me=\EG0:mr=\EG4:nd=^L:\ + :pk=\E|%+1%s\031:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\ + :ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.3:vi=\E.0:\ + :vs=\E.1: + +# 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:ug#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:me=\EG0:mr=\EG4:nd=^L:se=\EG0:\ + :sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eh\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Eb\Ed:ve=\E.4:vs=\E.2: +# TeleVideo 925 from Mitch Bradley via BRL +# to avoid "magic cookie" standout glitch: +tvi925-hi|TeleVideo Model 925 with half intensity standout mode:\ + :am:bs:bw:hs:ul:\ + :co#80:li#24:\ + :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=^J:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:se=\E(:\ + :sf=^J:so=\E):sr=\Ej:st=\E1:ta=^I:ts=\Eh\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Eb\Ed:ve=\E.4:vs=\E.2: + +# From: Todd Litwin 28 May 1993 +# Originally Tim Curry, Univ. of Central Fla., 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:ug#1:\ + :ac=d\rc\014e\nb\011i\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\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\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:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed: +# +# 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:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07 \011:\ + :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:ke=\Ek:kh=^^:\ + :kl=^H:kr=^L:ks=\El:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:\ + :po=\E`:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\ + :te=\E\\2\E-07\s:ti=\E\\1\E-07\s:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Eb\Ed: +# +# 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:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07 \011:\ + :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:ke=\Ek:kh=^^:\ + :kl=^H:kr=^L:ks=\El:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:\ + :po=\E`:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\ + :te=\E\\3\E-07\s:ti=\E\\1\E-07\s:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Eb\Ed: +# +# :is: for reverse video 950 changes the following: +# set reverse video (\Ed) +# +# set vb accordingly (\Ed ...delay... \Eb) +# +tvi950-rv|televideo950 rev video:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\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:\ + :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:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:\ + :ue=\EG0:up=^K:us=\EG8:vb=\Ed\Eb: + +# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv +tvi950-rv-2p|televideo950 rev video w/2 pages:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\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:\ + :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:ke=\Ek:kh=^^:\ + :kl=^H:kr=^L:ks=\El:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:\ + :po=\E`:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\ + :te=\E\\2\E-07\s:ti=\E\\1\E-07\s:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Ed\Eb: + +# tvi950-rv uses the appropriate entries from 950-4p and 950-rv +tvi950-rv-4p|televideo950 rev video w/4 pages:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\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:\ + :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:ke=\Ek:kh=^^:\ + :kl=^H:kr=^L:ks=\El:ku=^K:le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:\ + :po=\E`:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\ + :te=\E\\3\E-07\s:ti=\E\\1\E-07\s:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Ed\Eb: +# From: Andreas Stolcke +# (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*:, had to be wrong; set because that's what +# the 950 has. Finally, corrected the 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:am:bs:hs:mi:xn:xo:\ + :co#80:it#8:li#24:\ + :RA=\E[=7l:RX=^N:SA=\E[=7h:SX=^O:\ + :ac=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ:ae=\E%:al=\EE:as=\E$:\ + :bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:\ + :ic=\EQ:im=\Eq:is=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El:\ + :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:kM=\EQ:kN=\EK:kP=\EJ:kS=\Ey:\ + :kT=\E1:ka=\E3:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:kt=\E2:ku=^K:\ + :le=^H:mb=\EG2:me=\EG0\E[=5l:mh=\E[=5h:mk=\EG1:mr=\EG4:\ + :nd=^L:pf=\Ea:po=\E`:ps=\EP:\ + :r1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r:\ + :se=\EG0:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.2:vi=\E.0:vs=\E.1: +tvi955-w|955-w|televideo955 w/132 cols:\ + :5i:am:bs:hs:mi:xn:xo:\ + :co#132:it#8:li#24:\ + :RA=\E[=7l:RX=^N:SA=\E[=7h:SX=^O:\ + :ac=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ:ae=\E%:al=\EE:as=\E$:\ + :bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:\ + :ic=\EQ:im=\Eq:is=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El:\ + :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:kM=\EQ:kN=\EK:kP=\EJ:kS=\Ey:\ + :kT=\E1:ka=\E3:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:kt=\E2:ku=^K:\ + :le=^H:mb=\EG2:me=\EG0\E[=5l:mh=\E[=5h:mk=\EG1:mr=\EG4:\ + :nd=^L:pf=\Ea:po=\E`:ps=\EP:\ + :r1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r:\ + :se=\EG0:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.2:vi=\E.0:vs=\E.1: +# use half-intensity as normal mode, full intensity as :md: +tvi955-hb|955-hb|televideo955 half-bright:\ + :5i:am:bs:hs:mi:xn:xo:\ + :co#80:it#8:li#24:\ + :RA=\E[=7l:RX=^N:SA=\E[=7h:SX=^O:\ + :ac=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ:ae=\E%:al=\EE:as=\E$:\ + :bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E[%i%d;%dH:cr=^M:\ + :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:\ + :ic=\EQ:im=\Eq:is=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El:\ + :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:kM=\EQ:kN=\EK:kP=\EJ:kS=\Ey:\ + :kT=\E1:ka=\E3:kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:kt=\E2:ku=^K:\ + :le=^H:mb=\EG2:md=\E[=5l:me=\EG0\E[=5h:mk=\EG1:mr=\EG4:\ + :nd=^L:pf=\Ea:po=\E`:ps=\EP:\ + :r1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r:\ + :se=\EG0:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.2:vi=\E.0:vs=\E.1: +# From: Humberto Appleton , 880521 UT Austin +# (tvi970: removed ":sg#0:"; removed :se:=\E[m, :ue:=\E[m; +# added :am:/:cs:/:ho:///: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 /. +# also added empty 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:\ + :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[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l:vs=\E[1Q: +tvi970-2p|televideo 970 with using 2 pages of memory:\ + :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=\E[H\E[J\E[V:ti=\E[U\E[?20l\E[?7h\E[1Q:ue=\E[m:\ + :up=\EM:us=\E[4m:vb=\E[5m\E[m:vs=\E[1Q: +# 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 , +# its absence means =\Ev isn't safe to use. -- esr) +# From: Gene Rochlin 9/19/84. +# The :cd:/:k0:/:k1:/:kh:/, and 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=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :dl=\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 , 03 Sep 1996 +tvi9065|televideo 9065:\ + :5i:HC:am:bw:hs:mi:ms:xn:xo:\ + :MW#0:Nl#8:co#80:it#8:lh#1:li#25:lm#0:lw#9:ma#4:vt#0:ws#30:\ + :#2=\E\s\s\s:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=^AJ\r:F2=^AK\r:IC=\E[%d@:LE=\E[%dD:LF=\E[4;1v:\ + :LO=\E[4;2v:RA=\E[=7l:RI=\E[%dC:RX=^N:SA=\E=7h:SF=\E[%dS:\ + :SR=\E[%dT:SX=^O:UP=\E[%dA:\ + :ac=0_'rjhkglfmeniopxjqksqtmulvown:ae=\E%:al=\EE:as=\E$:\ + :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=\0: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=: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:k;=^AI\r:\ + :kB=\EI: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:mh=\EGp:mk=\EG1:\ + :mp=\E&:mr=\EG4:nd=^L:nw=^M^J:pf=\Ea:pk=\E|%+03%s\031:\ + :pl=\E|%+02%s\031:pn=\E_%+?%s\r:po=\E`:ps=\E[0;0i:\ + :px=\E|%+01%s\031:r1=\EC\EDF\E[0;0v\E[8;1v\E[=65l:\ + :r2=\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:\ + :r3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0:\ + :rf=/usr/share/tabset/stdcrt:rp=\E[%r%db%.:\ + :..sa=\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%%%;:\ + :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 +# 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 +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:\ + :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:\ + :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:\ + :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:sf=^J:\ + :sr=\EI:st=\E1:ta=^I:up=\EA:ve=\Ec:vs=\Ed: +vi200-rv|visual 200 reverse video:\ + :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:\ + :st=\E1:ta=^I:up=\EA: + +# 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 / 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=\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):\ + :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=\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[2Q\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: + +# 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 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:\ + :am:bw:mi:xn:\ + :co#80:li#33:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\030\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\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: + +vi603|visual603|visual 603:\ + :am:bs:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ds=\EP2;1~\E\\:\ + :eA=\E(B\E)0:ei=\E[4l:fs=\E\\:ho=\E[H:\ + :i1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r:im=\E[4h:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\EP2~:ue=\E[24m:up=\E[A:us=\E[4m: + +#### 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, . They keep terminfo entries at +# . +# +# 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=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:\ + :ho=^^:im=\Eq:ip=:is=\E'\E(\E^3\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(\EH\003:mh=\E`7\E):mp=\E`7\E):nd=^L:\ + :nw=^M^J:pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\n:so=\E`7\E):sr=\Ej:st=\E1:ta=\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:\ + :5i:am:bw:hs:mi:xo:\ + :Nl#8:co#80:lh#1:li#24:lw#8:sg#1:ug#1:ws#45:\ + :#2=\E{:&3=\Er:@8=\E7:LF=\EA11:LO=\EA10:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:im=\Eq:ip=:is=\E'\E(\E^3\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:mb=\EG2:me=\EG0\E(\EH\003:mh=\EGp:\ + :mk=\EG1:mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:pf=^T:\ + :pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=\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%;:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=\011:te=\EG0:ti=:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# 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:\ + :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=\EE:\ + :as=\EH^B:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :cr=^M:\ + :ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:\ + :im=\Eq:ip=:is=\E'\E(\E^3\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(\EH\003:mh=\E`7\E):mp=\E`7\E):nd=^L:nw=^M^J:pf=^T:\ + :pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\n:so=\E`7\E):sr=\Ej:st=\E1:ta=\011:ts=\EF:up=^K:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# 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=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:\ + :ho=^^:i1=\E`\:\E`9:im=\Eq:ip=: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(\EH\003:mh=\E`7\E):\ + :mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:\ + :po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\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:\ + :5i:am:bw:hs:mi:xo:\ + :Nl#8:co#80:lh#1:li#24:lw#8:sg#1:ug#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=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\E`\:\E`9:im=\Eq:ip=:\ + :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=\EG0\E(\EH\003:mh=\EGp:mk=\EG1:mp=\EG0\E):\ + :mr=\EG4:nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:\ + :px=\Ez%+?%s\177:\ + :..sa=\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%;:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\EG0:ti=:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy50-vb|wyse50-vb|wyse 50 visible bell:\ + :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:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :cr=^M:\ + :ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:\ + :i1=\E`\:\E`9:im=\Eq:ip=: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(\EH\003:mh=\E`7\E):\ + :mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:\ + :po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\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: +wy50-w|wyse50-w|wyse 50 132-column:\ + :5i:am:bw:hs:mi:ms:xo:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ma#1:ws#97:\ + :#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=\EY:ce=\ET:cl=\E+:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:\ + :ho=^^:i1=\E`;\E`9:im=\Eq:ip=: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(\EH\003:mh=\E`7\E):\ + :mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:\ + :po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\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: +wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell:\ + :5i:am:bw:hs:mi:ms:xo:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ma#1:ws#97:\ + :#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:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\Ea%i%dR%dC:cr=^M:\ + :ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:\ + :i1=\E`;\E`9:im=\Eq:ip=: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(\EH\003:mh=\E`7\E):\ + :mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:\ + :po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\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: +# +# 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 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:ug#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=:\ + :..Sf=%?%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:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\E`\:\E`9:i2=\E%?:im=\Eq:ip=:\ + :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=\EG0\E(\EH\003%{0}%PA%{0}%PC:mh=\EGp:\ + :mk=\EG1:mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:oc=\E%?:op=\EG0:\ + :pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%{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%;:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy350-vb|wyse350-vb|wyse 350 visible bell:\ + :5i:am:bw:hs:mi:xo:\ + :Co#8:NC#55:Nl#8:co#80:lh#1:li#24:lw#8:pa#8:sg#1:ug#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=:\ + :..Sf=%?%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:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:\ + :ho=^^:i1=\E`\:\E`9:i2=\E%?:im=\Eq:ip=: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=\EG0\E(\EH\003%{0}%PA%{0}%PC:mh=\EGp:mk=\EG1:\ + :mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:oc=\E%?:op=\EG0:pf=^T:\ + :pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%{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%;:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy350-w|wyse350-w|wyse 350 132-column:\ + :5i:am:bw:hs:mi:xo:\ + :Co#8:NC#55:Nl#16:co#132:lh#1:li#24:lw#7:pa#8:sg#1:ug#1:ws#97:\ + :#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=:\ + :..Sf=%?%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:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\E`;\E`9:i2=\E%?:im=\Eq:ip=:\ + :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=\EG0\E(\EH\003%{0}%PA%{0}%PC:mh=\EGp:\ + :mk=\EG1:mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:oc=\E%?:op=\EG0:\ + :pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%{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%;:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell:\ + :5i:am:bw:hs:mi:xo:\ + :Co#8:NC#55:Nl#16:co#132:lh#1:li#24:lw#7:pa#8:sg#1:ug#1:ws#97:\ + :#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=:\ + :..Sf=%?%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:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:al=\EE:\ + :as=\EG0\EH\002:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\E`;\E`9:i2=\E%?:im=\Eq:ip=:\ + :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=\EG0\E(\EH\003%{0}%PA%{0}%PC:mh=\EGp:\ + :mk=\EG1:mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:oc=\E%?:op=\EG0:\ + :pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%{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%;:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# 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:ug#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:me=\EG0:mr=\EG4:nd=^L:se=\EG0:sf=^J:so=\EG4:ts=\EF:\ + :ue=\EG0:up=^K:us=\EG8: +# +# 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:. +# +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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:\ + :r2=\EeF\E`\::r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#16:co#132:it#8:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :co#80:it#8:li#25: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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :co#132:it#8:li#25:pb#9601:ws#97:\ + :#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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell:\ + :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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:\ + :r2=\EeF\E`\::r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#16:co#132:it#8:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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:\ + :ac=+/,.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +# 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: +# +# -> set personality +# -> set number of columns +# -> 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, -- 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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy60-w|wyse60-w|wyse 60 132-column:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy60-25|wyse60-25|wyse 60 80-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#80:li#25: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#132:li#25:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy60-42|wyse60-42|wyse 60 80-column 42-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#8:co#80:lh#1:li#42: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:\ + :r3=\Ee*:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#42:lw#7:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\036:i1=\EcB2\EcC3:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\Ee*:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy60-43|wyse60-43|wyse 60 80-column 43-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#80:li#43: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:r3=\Ee+:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#132:li#43:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\036:i1=\EcB2\EcC3:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:r3=\Ee+:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +# +wy60-vb|wyse60-vb|Wyse 60 visible bell:\ + :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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: +wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\EwJ\Ew1:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\ + :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:\ + :vi=\E`0: + +# 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:\ + :5i:am:bw:hs:km:mi:\ + :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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy99gt-w|wyse99gt-w|wyse 99gt 132-column:\ + :5i:am:bw:hs:km:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines:\ + :5i:am:bw:hs:km:mi:\ + :co#80:li#25: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines:\ + :5i:am:bw:hs:km:mi:\ + :co#132:li#25:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell:\ + :5i:am:bw:hs:km:mi:\ + :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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell:\ + :5i:am:bw:hs:km:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew0:\ + :ti=\Ew1:ts=\EF:u0=\E~>\E8:u1=\E[42h:ue=\EG0:up=^K:us=\EG8:\ + :vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# 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: +# +# -> set personality +# -> set number of columns +# -> 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, -- 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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy160-w|wyse160-w|wyse 160 132-column:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#90:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy160-25|wyse160-25|wyse 160 80-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#80:li#25: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#132:li#25:ws#90:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy160-42|wyse160-42|wyse 160 80-column 42-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#8:co#80:lh#1:li#42: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::\ + :r3=\Ee*:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#42:lw#7:ws#90:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\Ee*:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy160-43|wyse160-43|wyse 160 80-column 43-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#80:li#43: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::r3=\Ee+:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines:\ + :5i:am:bw:hs:km:mi:ms:\ + :co#132:li#43:ws#90:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\Ey:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB2\EcC3:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:r3=\Ee+:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +wy160-vb|wyse160-vb|Wyse 160 visible bell:\ + :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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell:\ + :5i:am:bw:hs:km:mi:ms:\ + :Nl#16:co#132:lh#1:li#24:lw#7:ws#90:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=\E{:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:\ + :po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`;:\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# 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:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:li#24:ma#1:pb#1201:ws#78:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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=: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~:k;=\E[21~:kA=\E[L:kE=\E[K:kI=\E[@:kL=\E[M:\ + :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\017:\ + :mh=\E[0t\E[2m:mr=\E[1t\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[0i:r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=%?%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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# This terminal description uses the non-hidden attribute mode +# (with magic cookie). +# +wy75-mc|wyse75-mc|wyse 75 with magic cookies:\ + :5i:am:hs:mi:xn:xo:\ + :co#80:li#24:pb#1201:sg#1:ug#1:ws#78:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E[0p\017:al=\E[L:as=\E[0p\016: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:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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\E[p:im=\E[4h:ip=: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~:k;=\E[21~:kA=\E[L:kE=\E[K:kI=\E[@:\ + :kL=\E[M: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:\ + :mb=\E[2p:me=\E[0p\017:mh=\E[1p:mk=\E[4p:mr=\E[16p:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[0p:sf=\n:so=\E[17p:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[0p:up=\E[A:us=\E[8p:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +wy75-vb|wyse75-vb|wyse 75 with visible bell:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:li#24:ma#1:ws#78:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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=: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~:k;=\E[21~:kA=\E[L:kE=\E[K:kI=\E[@:kL=\E[M:\ + :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\017:\ + :mh=\E[0t\E[2m:mr=\E[1t\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[0i:r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=%?%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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +wy75-w|wyse75-w|wyse 75 in 132 column mode:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#132:li#24:ma#1:pb#1201:ws#130:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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=: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~:k;=\E[21~:kA=\E[L:kE=\E[K:kI=\E[@:kL=\E[M:\ + :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\017:\ + :mh=\E[0t\E[2m:mr=\E[1t\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[0i:r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3h:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=%?%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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#132:li#24:ma#1:ws#130:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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=: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~:k;=\E[21~:kA=\E[L:kE=\E[K:kI=\E[@:kL=\E[M:\ + :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\017:\ + :mh=\E[0t\E[2m:mr=\E[1t\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[0i:r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3h:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=%?%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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# 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 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. +# +wy85|wyse85|wyse 85:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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: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:ds=\E[40l:eA=\E)0:\ + :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=:\ + :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~:k;=\E[21~: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# Wyse 85 with visual bell. +wy85-vb|wyse85-vb|wyse 85 with visible bell:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ds=\E[40l:eA=\E)0:\ + :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=:\ + :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~:k;=\E[21~: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# Wyse 85 in 132-column mode. +wy85-w|wyse85-w|wyse 85 in 132-column mode:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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: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:ds=\E[40l:eA=\E)0:\ + :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=:\ + :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~:k;=\E[21~: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3h:r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: +# +# Wyse 85 in 132-column mode with visual bell. +wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ds=\E[40l:eA=\E)0:\ + :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=:\ + :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~:k;=\E[21~: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3h:r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\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. +# +wy185|wyse185|wyse 185:\ + :5i:am:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E7\E[99;0H\E[K\E8:eA=\E)0: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=:\ + :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~:k;=\E[21~:kB=\E[Z: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\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=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 185 with 24 data lines and top status (terminal status) +wy185-24|wyse185-24|wyse 185 with 24 data lines:\ + :5i:am:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :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~:k;=\E[21~:kB=\E[Z: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[1;24r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[ R:ti=\E[ Q:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:vi=\E[?25l:\ + :vs=\E[?25h\E[34l: +# +# Wyse 185 with visual bell. +wy185-vb|wyse185-vb|wyse 185+flash:\ + :5i:am:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E7\E[99;0H\E[K\E8:eA=\E)0: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=:\ + :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~:k;=\E[21~:kB=\E[Z: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\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=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 185 in 132-column mode. +wy185-w|wyse185-w|wyse 185 in 132-column mode:\ + :5i:am:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E7\E[99;0H\E[K\E8:eA=\E)0: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=:\ + :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~:k;=\E[21~:kB=\E[Z: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\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=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 185 in 132-column mode with visual bell. +wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols:\ + :5i:am:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E7\E[99;0H\E[K\E8:eA=\E)0: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=:\ + :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~:k;=\E[21~:kB=\E[Z: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\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=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: + +# 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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: + +# +# lines 24 columns 80 vb +# +wy325-vb|wyse325-vb|wyse-325 with visual bell:\ + :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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::\ + :r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: + +# +# lines 24 columns 132 +# +wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode:\ + :5i:am:bw:hs:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 25 columns 80 +# +wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines:\ + :5i:am:bw:hs:mi:\ + :co#80:li#25: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 25 columns 132 +# +wy325-25w|wyse325-25w|wy325 132 columns:\ + :5i:am:bw:hs:mi:\ + :co#132:li#25:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 25 columns 132 vb +# +wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video:\ + :5i:am:bw:hs:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: + +# +# lines 42 columns 80 +# +wy325-42|wyse325-42|wyse-325 42 lines:\ + :5i:am:bw:hs:mi:\ + :co#80:li#42: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 42 columns 132 +# +wy325-42w|wyse325-42w|wyse-325 42 lines wide mode:\ + :5i:am:bw:hs:mi:\ + :co#132:li#42:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 42 columns 132 vb +# +wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell:\ + :5i:am:bw:hs:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 43 columns 80 +# +wy325-43|wyse325-43|wyse-325 43 lines:\ + :5i:am:bw:hs:mi:\ + :co#80:li#43: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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\::r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 43 columns 132 +# +wy325-43w|wyse325-43w|wyse-325 43 lines wide mode:\ + :5i:am:bw:hs:mi:\ + :co#132:li#43:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:po=\Ed#:ps=\EP:\ + :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee):\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: +# +# lines 43 columns 132 vb +# +wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell:\ + :5i:am:bw:hs:mi:\ + :Nl#16:co#132:lh#1:li#24:lw#7:pb#9601:ws#97:\ + :#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[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\ + :ae=\EcD:al=\EE:as=\EcE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:\ + :ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:i2=\Ew0:im=\Eq:ip=:\ + :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:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`;:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:ti=\Ew1:\ + :ts=\EF:ue=\EG0:up=^K:us=\EG8:vb=\E`8\E`9:ve=\E`1:vi=\E`0: + +# 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. +# +# -> enter Tektronix 4010/4014 mode +# -> exit Tektronix 4010/4014 mode +# -> enter ASCII mode (from any ANSI mode) +# -> exit ASCII mode (goto native ANSI mode) +# -> enter Tek 4207 ANSI mode (from any ANSI mode) +# -> exit Tek 4207 mode (goto native ANSI mode) +# +# Bug: The capability resets attributes. +wy370-nk|wyse 370 without function keys:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:DO=\E[%dB:\ + :IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :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[m\017:\ + :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\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:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:\ + :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Function key set for the VT-320 (and wy85) compatible keyboard +# +wy370-105k|Wyse 370 with 105 key keyboard:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:AL=\E[%dL:DC=\E[%dP:\ + :DK=\E[31h: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@:\ + :..Ic=\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:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ + :RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:Sb=\E[62;%dw:\ + :Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;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~:k;=\E[21~: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:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Function key set for the PC compatible keyboard +# +wy370-EPC|Wyse 370 with 102 key keyboard:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :@7=\E[1~:@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:ke=\E>:kh=\E[H:kl=\E[D:\ + :kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 370 with visual bell. +wy370-vb|Wyse 370 with visible bell:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:\ + :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 370 in 132-column mode. +wy370-w|Wyse 370 in 132-column mode:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#132:it#8:li#24:pa#64:ws#132:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:\ + :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3h:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 370 in 132-column mode with visual bell. +wy370-wvb|Wyse 370 with visible bell 132-columns:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#132:it#8:li#24:pa#64:ws#132:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:\ + :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3h:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +wy370-rv|Wyse 370 reverse video:\ + :5i:am:cc:hs:mi:ms:xn:xo:\ + :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\ + :F5=\E[28~:F6=\E[29~:IC=\E[%d@:\ + :..Ic=\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:\ + :LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:SA=\E[?7h:\ + :Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\ + :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\ + :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\ + :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:\ + :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:\ + :r3=\E[32h\E[?5h:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[ R:ti=\E[ Q:ts=\E[40l\E[40h\E7\E[99;%i%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:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# 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:\ + :..cm=\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:\ + :cr=^M:do=^J:ff=^L:\ + :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\ + :ho=^]7`x @\037:\ + :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\ + :is=\E8:le=^H:nd=\s: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:\ + :am:os:\ + :co#74:li#35:\ + :bl=^G:cl=\E^L:\ + :..cm=\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:\ + :cr=^M:do=^J:ff=^L:\ + :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\ + :ho=^]8`g @\037:\ + :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\ + :is=\E8:le=^H:nd=\s:nw=^M^J:u0=\E~>\E8:u1=\E[42h:up=^K: +# +# 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:\ + :..cm=\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:\ + :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=\s:nw=^M^J:\ + :u0=\E[?38h\E8:u1=\E[?38l\E)0:up=^K: + +# Vendor-supplied Wyse entries end here. + +# 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` , 24 Aug 1998 +wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard):\ + :5i:am:km:mi:ms:xn:\ + :co#80:it#8:li#25:vt#3:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\ + :F7=\E[K:F8=\E[31~:F9=\E[32~:FA=\E[33~:FB=\E[34~:\ + :FC=\E[35~:FD=\E[1~:FE=\E[2~:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~:ae=^O:\ + :al=\E[L:as=^N: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:\ + :cs=\E[%i%d;%dr:cv=\E[%i%dd:dl=\E[M:do=\ED:eA=\E)0:\ + :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~:k;=\E[21~:kB=\E[z:kb=^H:\ + :kd=\EOB:ke=\E[?1l:kl=\EOD:kr=\EOC:ks=\E[?1h:ku=\EOA:\ + :le=\010:ll=\E[24E:mb=\E[5m:md=\E[1m:me=\E[m\017\E["q:\ + :mh=\E[2m:mk=\E[8m:mp=\E[1"q:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[?19h: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:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\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` , 24 Aug 1998 +wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard):\ + :5i:am:km:mi:ms:xn:\ + :co#80:it#8:li#25:vt#3:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\ + :F7=\E[K:F8=\E[31~:F9=\E[32~:FA=\E[33~:FB=\E[34~:\ + :FC=\E[35~:FD=\E[1~:FE=\E[2~:IC=\E[%d@:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~:ae=^O:\ + :al=\E[L:as=^N: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dl=\E[M:do=\ED:\ + :eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i2=\E[?5l: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~:k;=\E[21~:kB=\E[z:kb=^H:\ + :kd=\EOB:ke=\E[?1l:kl=\EOD:kr=\EOC:ks=\E[?1h:ku=\EOA:\ + :le=\010:ll=\E[24E:mb=\E[5m:md=\E[1m:me=\E[m\017\E["q:\ + :mh=\E[2m:mk=\E[8m:mp=\E[1"q:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[?19h:\ + :r2=\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:\ + :r3=\E[?5l:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH: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 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` , 24 Aug 1998 +wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard):\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :co#80:it#8:li#25:ws#46:\ + :%9=\EP:F1=^AJ\r:F2=^AK\r:F3=^A`\r:F4=^Aa\r:F5=^Ab\r:\ + :F6=^Ac\r:F7=^Ad\r:F8=^Ae\r:F9=^Af\r:FA=^Ag\r:FB=^Ah\r:\ + :FC=^Ai\r:FD=^Aj\r:FE=^Ak\r:K1=^^:K3=\EJ:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20\Ec30:SA=\Ed/:SX=\Ec21\Ec31:\ + :ac=+y'x.wI~_vj(k'l&m%n)o9q*s8t-u.v,w+x=:ae=\EcD:\ + :al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E'\E(\032:\ + :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=\Ej:ds=\EF\r:\ + :eA=\Ec@1J:ei=\Er:fs=^M:ho=^^:im=\Eq:\ + :is=\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:\ + :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=^J:\ + :kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:me=\E(\EG0:mh=\EGp:mk=\EG3:\ + :mp=\E):mr=\EG4:nd=^L:nw=^_:pf=^T:po=\Ed#:ps=\EP:\ + :rs=\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:\ + :..sa=\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%;:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:ta=^I:te=\Ec21\Ec31:\ + :ti=\Ec20\Ec30:ts=\EF:up=^K:vb=\E^1\E^0:ve=\E`4\E`1:\ + :vi=\E`0:vs=\E`2\E`1: + +# This is the american terminal. Here tabs work. +# From: Francesco Potorti` , 24 Aug 1998 +wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard):\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :co#80:it#8:li#25:ws#46:\ + :%9=\EP:F1=^AJ\r:F2=^AK\r:F3=^A`\r:F4=^Aa\r:F5=^Ab\r:\ + :F6=^Ac\r:F7=^Ad\r:F8=^Ae\r:F9=^Af\r:FA=^Ag\r:FB=^Ah\r:\ + :FC=^Ai\r:FD=^Aj\r:FE=^Ak\r:K1=^^:K3=\EJ:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20\Ec30:SA=\Ed/:SX=\Ec21\Ec31:\ + :ac=+y'x.wI~_vj(k'l&m%n)o9q*s8t-u.v,w+x=:ae=\EcD:\ + :al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E'\E(\032:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\Ej:ds=\EF\r:\ + :eA=\Ec@1J:ei=\Er:fs=^M:ho=^^:im=\Eq:\ + :is=\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:\ + :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=^J:\ + :kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:me=\E(\EG0:mh=\EGp:mk=\EG3:\ + :mp=\E):mr=\EG4:nd=^L:nw=^_:pf=^T:po=\Ed#:ps=\EP:\ + :rs=\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:\ + :..sa=\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%;:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:te=\Ec21\Ec31:\ + :ti=\Ec20\Ec30:ts=\EF:up=^K:vb=\E^1\E^0:ve=\E`4\E`1:\ + :vi=\E`0:vs=\E`2\E`1: + +# +#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:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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: +# +# Wyse 520 with 24 data lines and status (terminal status) +wy520-24|wyse520-24|wyse 520 with 24 data lines:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[1;24r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 with visual bell. +wy520-vb|wyse520-vb|wyse 520 with visible bell:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column mode. +wy520-w|wyse520-w|wyse 520 in 132-column mode:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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: +# +# Wyse 520 in 132-column mode with visual bell. +wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# +# 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:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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: +# +# 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:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[1;24r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 with visual bell. +wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column mode. +wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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: +# +# 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:\ + :5i:am:hs:km:mi:xn:xo:\ + :co#132:it#8:li#24:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:ds=\E[0$~:eA=\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=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3h:\ + :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\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:vb=\E[30h\E,\E[30l:ve=\E[34h\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 80-column, 36 lines +wy520-36|wyse520-36|wyse 520 with 36 data lines:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#36:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 80-column, 48 lines +wy520-48|wyse520-48|wyse 520 with 48 data lines:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#48:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column, 36 lines +wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines:\ + :5i:am:km:mi:xn:xo:\ + :co#132:it#8:li#36:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[?3h:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column, 48 lines +wy520-48w|wyse520-48w|wyse 520 with 48 data lines:\ + :5i:am:km:mi:xn:xo:\ + :co#132:it#8:li#48:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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@:K1=\EOw:K2=\EOy:K3=\EOu:\ + :K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\ + :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kE=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kS=\E[1~: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:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[?3h:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# +# Wyse 520 in 80-column, 36 lines with EPC keyboard +wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#36:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 80-column, 48 lines with EPC keyboard +wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard:\ + :5i:am:km:mi:xn:xo:\ + :co#80:it#8:li#48:ws#80:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column, 36 lines with EPC keyboard +wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard:\ + :5i:am:km:mi:xn:xo:\ + :co#132:it#8:li#36:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[?3h:\ + :r3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: +# +# Wyse 520 in 132-column, 48 lines with EPC keyboard +wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard:\ + :5i:am:km:mi:xn:xo:\ + :co#132:it#8:li#48:ws#132:\ + :%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[4~:@8=\EOM: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@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs: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: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:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?5W:\ + :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\ + :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h:\ + :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~:kB=\E[Z:kD=\177:kE=\E[4~:kI=\E[2~:kN=\E[6~:\ + :kP=\E[5~:kS=\E[1~:kb=^H:kd=\E[B:kh=\E[H: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=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[?3h:\ + :r3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|:rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:te=\E[ R:\ + :ti=\E[ Q\E[?67;8h:ue=\E[24m:up=\E[A:us=\E[4m:\ + :ve=\E[34h\E[?25h:vi=\E[?25l:vs=\E[?25h\E[34l: + +# From: John Gilmore +# (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`\:\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`\:\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:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:li#24:ma#1:pb#1201:ws#78:\ + :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[35~:IC=\E[%d@:\ + :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[>,\001\001\E[>-\001\001:eA=\E)0: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=:\ + :is=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=:\ + :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~:k;=\E[21~:kA=\E[L:kE=\E[K:\ + :kI=\E[@:kL=\E[M:kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:\ + :ke=10\E[?1l\E>:kh=\EOH:kl=\EOD:kr=\EOC:ks=10\E[?1h\E=:\ + :ku=\EOA:le=^H:me=\E[m\017:mh=\E[0t\E[2m:mr=\E[1t\E[7m:\ + :nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\ + :r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\ + :..sa=%?%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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>,\001:ue=\E[m:up=\E[A:us=\E[2t\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: + +# From: Kevin Turner , 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:\ + :5i:am:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :%1=\23328~:*6=\2334~:@0=\2331~:@8=\EOM:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:F7=\23331~:\ + :F8=\23332~:F9=\23333~:FA=\23334~:IC=\E[%d@:K1=\EOw:\ + :K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs: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: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:ds=\E[40l:eA=\E)0:\ + :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=:\ + :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=\23317~:k7=\23318~:\ + :k8=\23319~:k9=\23320~:k;=\23321~: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:l1=PF1:l2=PF2:\ + :l3=PF3:l4=PF4:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:\ + :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:\ + :ps=\E[0i:r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3l:r3=\E[?5l:\ + :rc=\E8:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :ts=\E[40h\E7\E[25;%i%dH:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[30h\E,\E[30l:ve=\E[?25h:vi=\E[?25l: + +# From: Eric Freudenthal +wy100q|Wyse 100 for Quotron:\ + :bs:\ + :co#80:li#24:sg#1:ug#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`\:\0\EC\EDF\E0\E'\E(\EA21:kd=^J:kl=^H:kr=^L:ku=^K:\ + :le=^H:me=\EG0:mr=\EG4:nd=^L:se=\EG0:so=\EG4:sr=\Ej:ue=\EG0:\ + :up=^K:us=\EG8: + +#### 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 9-25-84 +kermit|standard kermit:\ + :bs:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :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:bs:\ + :co#80:li#24:\ + :cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :ho=\EH:\ + :is=K1 Standard Kermit plus Automatic Margins\n:kd=^J:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=\EC:up=\EA: +# 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 8-30-84 +pckermit|pckermit12|UCB IBMPC Kermit 1.2:\ + :am:bs:\ + :co#80:li#25:\ + :cl=\EH\EJ:cm=\EY%+ %+ :ho=\EH:\ + :is=K2 UCB IBMPC Kermit 1.2 8-30-84\n:kd=^J:kh=^^:\ + :kl=^H:kr=^L:ku=^K:le=^H:nd=\EC:up=\EA: +# 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 12-19-84 +pckermit120|UCB IBMPC Kermit 1.20:\ + :bs:\ + :co#80:it#8:li#24:\ + :al=\EL:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :dc=\EN:dl=\EM:\ + :do=\EB:ho=\EH:\ + :is=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n:\ + :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=\EC:se=\Eq:so=\Ep:\ + :ta=^I:up=\EA:vs=\EO\Eq\EEK3: +# 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 3-17-85 +msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC:\ + :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 3-17-85 +msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins:\ + :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\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 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\EvK5: +# 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 3-17-85 +msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC:\ + :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\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:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\EC:rc=\Ek:sc=\Ej:se=\E[m:so=\E[1m:\ + :ta=^I:ue=\E[m:up=\EA:us=\E[4m:vs=\EO\Eq\EG\EvK6: +# 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 / based on the init string -- esr) +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:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SR=\E[%dL:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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[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: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~:kL=\E[3~: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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :r1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\E4i\E?4i\E[m\E[r\E[2$~:\ + :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 13 Dec 1991 +# ACS capabilities from Philippe De Muyter 30 May 1996 +# (I removed a bogus boolean :mo: and added :ms:, , -- 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:vs=\E[?25h: + +# +######## ---------------- 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. +# + +######## 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:\ + :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:\ + :se=\E[m:sf=^J:so=\E[7m:ta=^I:up=\E[A: + +# 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=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :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[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:..pn=\E[%p1%d;00q%p2%\:-16s:\ + :..px=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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:\ + :am:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :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[?3h\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[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:..pn=\E[%p1%d;00q%p2%\:-16s:\ + :..px=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3h\E[2;0y:\ + :..sa=\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%;:\ + :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: + +att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2:\ + :am:bs:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :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[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:..pn=\E[%p1%d;00q%p2%\:-16s:\ + :..px=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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: + +att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode:\ + :am:bs:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :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[?3h\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[m\017:mh=\E[2m:mk=\E[8m:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:..pn=\E[%p1%d;00q%p2%\:-16s:\ + :..px=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3h\E[2;0y:\ + :..sa=\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%;:\ + :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: + +# 5410 in terms of a vt100 +# (v5410: added / based on init string -- esr) +v5410|att5410 in terms of a vt100:\ + :am:mi:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:RA=\E[?7l:\ + :SA=\E[?7h:\ + :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:ei=:ho=\E[H:\ + :ic=\E[@:im=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ + :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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +# +# 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:, +# , :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 / based on the init string -- esr) +att4415|tty5420|att5420|AT&T 4415/5420 80 cols:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24: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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\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[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:kC=\E[2J: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:kb=^H:\ + :kd=\E[B:ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[11;0j:vs=\E[11;1j: + +att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#54:lw#8:ws#97:\ + :@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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3h: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[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:kC=\E[2J: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:kb=^H:\ + :kd=\E[B:ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[11;0j:vs=\E[11;1j: + +att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24: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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3l:i2=\E[?5h: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:kC=\E[2J: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:kb=^H:\ + :kd=\E[B:ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[11;0j:vs=\E[11;1j: + +att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#54:lw#8:ws#97:\ + :@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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3h:i2=\E[?5h: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:kC=\E[2J: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:kb=^H:\ + :kd=\E[B:ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[11;0j:vs=\E[11;1j: + +# 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:\ + :..pn=\E[%p1%d;0;0;1q%p2%\:-16.16s:\ + :..px=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s: + +att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24: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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\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[21;1j\212:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J: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:kb=^H:kd=\E[B:\ + :ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;1q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[11;0j:vs=\E[11;1j: + +att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24: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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3l:i2=\E[?5h: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:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J: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:kb=^H:kd=\E[B:\ + :ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;1q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[11;0j:vs=\E[11;1j: + +att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#54:lw#8:ws#97:\ + :@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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3h: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[21;1j\212:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J: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:kb=^H:kd=\E[B:\ + :ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;1q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[11;0j:vs=\E[11;1j: + +att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels:\ + :am:bs:db:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#54:lw#8:ws#97:\ + :@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:\ + :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--,,..:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[x\E[J:cm=\E[%i%d;%dx:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=\E[B:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:ho=\E[x:\ + :i1=\E[?3h:i2=\E[?5h: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:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J: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:kb=^H:kd=\E[B:\ + :ke=\E[19;0j\E[21;1j\212:kh=\E[H:kl=\E[D:kr=\E[C:\ + :ks=\E[19;1j\E[21;4j\Eent:ku=\E[A:l1=F1:l2=F2:l3=F3:l4=F4:\ + :l5=F5:l6=F6:l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:md=\E[2;7m:\ + :me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:\ + :nw=^M^J:pf=\E[?9i:..pn=\E[%p1%d;0;0;1q%p2%\:-16.16s:\ + :po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[11;0j:vs=\E[11;1j: + +att5420_2|AT&T 5420 model 2 80 cols:\ + :am:db:hs:mi:ms:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\ + :@1=\Et:@7=\Ez:@8=^J:AL=\E[%dL:CM=\E[%i%d;%dt:DC=\E[%dP:\ + :DL=\E[%dM:IC=\E[%d@:LE=\E[%dD:LF=\E|:LO=\E~:RI=\E[%dC:\ + :SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bt=\E[1Z:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%+^AG:cl=\EH\EJ:cm=\E[%i%d;%dH:cr=\EG:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad: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:kA=\E[L:kB=\E[Z:kC=\E[2J: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: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:l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:\ + :l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[1C:nw=^M^J:pf=\E[4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s\E~:po=\E[5i:\ + :ps=\E[?;2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E7\E[25;%+^HH:ue=\E[m: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:\ + :am:db:hs:mi:ms:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\ + :@1=\Et:@7=\Ez:@8=^J:AL=\E[%dL:CM=\E[%i%d;%dt:DC=\E[%dP:\ + :DL=\E[%dM:IC=\E[%d@:LE=\E[%dD:LF=\E|:LO=\E~:RI=\E[%dC:\ + :SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bt=\E[1Z:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%+^AG:cl=\EH\EJ:cm=\E[%i%d;%dH:cr=\EG:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad: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;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:\ + :ic=\E[@:im=:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:\ + :k6=\EOh:k7=\EOi:k8=\EOj:kA=\E[L:kB=\E[Z:kC=\E[2J: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: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:l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:\ + :l7=F7:l8=F8:le=^H:ll=\Ew:mb=\E[5m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[1C:nw=^M^J:pf=\E[4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s\E~:po=\E[5i:\ + :ps=\E[?;2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E7\E[25;%+^HH:ue=\E[m:us=\E[4m:vb=\E[?5h\E[?5l:\ + :ve=\E[11;0j:vs=\E[11;1j: + +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:\ + :am:xo:\ + :co#132: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[?3h: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: + +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:do=\EB:ho=\EH:k0=\EU:k3=\E@:kA=\EL:kB=\EO:\ + :kC=\EJ:kD=\EP:kF=\ES:kI=\E^: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\s: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^: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:\ + :..sa=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m:\ + :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:\ + :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^:im=:\ + :is=\E[20l\E[?7h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:mb=\E3:md=\E3:\ + :me=\EX\E~\EZ\E4\E(B:mh=\EW:mr=\E}:nd=\EC:nw=\EE:\ + :..sa=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m:\ + :se=\E~:sf=^J:so=\E}:sr=\ET:st=\EH:ta=^I:ue=\EZ:up=\EA:\ + :us=\E\\: + +# 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^: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 / based on the init string -- esr) +att5425|tty5425|att4425|AT&T 4425/5425:\ + :am:da:db:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\ + :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\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=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:\ + :ho=\E[H:i1=\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:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kE=\E[2K:kF=\E[T:\ + :kI=\E[4h:kL=\E[M:kR=\E[S: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[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?9i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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:\ + :am:da:db:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\ + :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\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=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:\ + :ho=\E[H:i1=\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:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kE=\E[2K:kF=\E[T:\ + :kI=\E[4h:kL=\E[M:kR=\E[S: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:ku=\E[A:le=^H:ll=\E[24H:\ + :mb=\E[5m:md=\E[2;7m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?9i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode:\ + :am:da:db:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lm#54:lw#8:ws#97:\ + :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\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=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%ds\E[%dD:ei=\E[4l:fs=\E8:\ + :ho=\E[H:i1=\E[?3h: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:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kE=\E[2K:kF=\E[T:\ + :kI=\E[4h:kL=\E[M:kR=\E[S: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[m\017:mh=\E[2m:mk=\E[8m:mp=\EV:\ + :mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?9i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?4i:ps=\E[?2i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l\E[2;0y:\ + :..sa=\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%;:\ + :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: + +# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:. +# I also added / -- 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^: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=\EA:\ + :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=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f,h.e+g`b:\ + :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[1B: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[m\017:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?8i:..pn=\E[%p1%dp%p2%\:-16s:po=\E[?4i:ps=\E[0i:\ + :rc=\E8:\ + :..sa=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;:\ + :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. +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\::ML=\E4:MR=\E5:RI=\E[%dC:\ + :RX=\E[29;1|:SF=\E[%dS:SR=\E[%dT:SX=\E[29;0|:UP=\E[%dA:\ + :ac=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f,h.e+g`b:\ + :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[1B:\ + :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[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?8i:..pn=\E[%p1%dp%p2%\:-16s:po=\E[?4i:ps=\E[0i:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\E[5;0|:\ + :..sa=\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%;:\ + :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) +att500|att513|AT&T 513 using page mode:\ + :HC:am:mi:ms:xn:xo:\ + :Nl#8:co#80:lh#2:li#24:lw#8:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#2=\ENM:#3=\ENJ:#4=\ENK:\ + :%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:%i=\ENL:%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=\Eent:\ + :@9=\EOk:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :IC=\E[%d@:LE=\E[%dD:LF=\E<:LO=\E?:RI=\E[%dC:SF=\E[%dE:\ + :SR=\E[%dF:UP=\E[%dA:\ + :ac=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f,h.e+g`b:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=%i\E[%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E(B\E)1: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:kB=\E[Z:kC=\E[J:kD=\ENf:kE=\EOa:kF=\E[S:\ + :kI=\ENj:kL=\ENe:kN=\E[U:kP=\E[V:kR=\E[T: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[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[?98l\E[?8i:\ + :..pk=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s:\ + :..pl=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s:\ + :..pn=\E[%p1%dp%p2%\:-16s:po=\E[?98l\E[?4i:\ + :ps=\E[?98l\E[0i:\ + :..px=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s:\ + :r1=\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:\ + :r2=\E[5;0|:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\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%;:\ + :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 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:\ + :..ZA=%?%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%;:\ + :..ZB=%?%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%;:\ + :ZM=\E[5m:ZU=\E[m:\ + :..Zj=%?%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(}%;:\ + :Zl=\E[;%dr:Zm=\E[%+^As:Zn=\E[;%+^As:Zp=\E[%dr:\ + :..Zy=%?%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%;:\ + :ch=\E[%d`:cr=^M:cv=\E[%dd:do=^J:ff=^L:i1=\Ec:is=\E[20l\r:\ + :nd=\s: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 . +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:..px=\E[%p1%d;%p2%l%dq%p2%s:\ + :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:\ + :NL:NP:am:bs:ms:xo:\ + :co#88:it#8:li#24:\ + :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:..px=\E[%p1%d;%p2%l%dq%p2%s:\ + :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-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer:\ + :NL:NP:am:bs:ms:xo:\ + :co#88:it#8:li#34:\ + :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:..px=\E[%p1%d;%p2%l%dq%p2%s:\ + :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: +# 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 thru refer to the shifted system pf keys. +# +# Entries for thru 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:xo:\ + :Nl#8:co#80:li#24:lw#8:ws#80:\ + :#4=\E[ A:%i=\E[ @:@7=\E[24;1H:DC=\E[%dP:DL=\E[%dM:\ + :F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LF=\E[2p:LO=\E[p:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=\E)0\016: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: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:k;=\ENp:kA=\E[L:kB=\E[Z:\ + :kC=\E[2J:kD=\E[P:kF=\E[S:kI=\E[@:kL=\E[M: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:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :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:\ + :am:eo:xo:\ + :Nl#8:co#80:li#24:lw#8:ws#80:\ + :#4=\E[ A:%i=\E[ @:@7=\E[F:AL=\E[L:DC=\E[%dP:DL=\E[%dM:\ + :F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LF=\E[2p:LO=\E[p:\ + :S4=250\E[?11l\E[50;1|:S5=400\E[50;0|:XF=g:XN=e:\ + :ac=k\277l\332m\300j\331n\305w\302q\304u\264t\303v\301x\263:\ + :ae=^O:al=\E[L:as=\E)0\016: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:fs=\E8:\ + :i1=\E[8;0|\E[?\E[13;20l\E[?\E[12h:ic=\E[@:im=\E[4h:\ + :is=\E[m\017: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:kA=\E[L:kB=\E[Z:\ + :kC=\E[2J:kD=\E[P:kF=\E[S:kI=\E[@:kL=\E[M:kN=\E[G:kP=\E[I:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :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-w|AT&T 605-w 132 column 102 key keyboard:\ + :am:eo:xo:\ + :Nl#8:co#132:li#24:lw#8:ws#132:\ + :#4=\E[ A:%i=\E[ @:@7=\E[24;1H:DC=\E[%dP:DL=\E[%dM:\ + :F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LF=\E[2p:LO=\E[p:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=\E)0\016: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:fs=\E8:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0:\ + :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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kD=\E[P:kF=\E[S:kI=\E[@:kL=\E[M:\ + :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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :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: +# (att610: I added / 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) +att610|AT&T 610; 80 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:IC=\E[%d@:\ + :LE=\E[%dD:LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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: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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :#4=\E[ @:%i=\E[ A:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:IC=\E[%d@:\ + :LE=\E[%dD:LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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-103k|AT&T 610; 80 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ @:%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:%i=\E[ A:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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: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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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-103k-w|AT&T 610; 132 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ @:%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:%i=\E[ A:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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: +att615|AT&T 615; 80 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :#4=\E[ A:%i=\E[ @:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LE=\E[%dD:LF=\E[2p:LO=\E[p:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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: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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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: +att615-w|AT&T 615; 132 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :#4=\E[ A:%i=\E[ @:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LE=\E[%dD:LF=\E[2p:LO=\E[p:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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: +att615-103k|AT&T 615; 80 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ A:%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:%i=\E[ @:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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: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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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: +att615-103k-w|AT&T 615; 132 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ A:%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:%i=\E[ @:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\ + :..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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: I added / based on the init string and +# :SR:/:SF: from a BSD termcap -- esr) +att620|AT&T 620; 80 column; 98key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :#4=\E[ A:%i=\E[ @:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LE=\E[%dD:LF=\E[2p:LO=\E[p:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B\017:al=\E[L:as=\E)0\016: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: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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\ + :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:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :#4=\E[ A:%i=\E[ @:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt: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:IC=\E[%d@:LE=\E[%dD:LF=\E[2p:LO=\E[p:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:SR=\E[%dT:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B\017:al=\E[L:as=\E)0\016: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:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:\ + :ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:k;=\ENp:\ + :kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\ + :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-103k|AT&T 620; 80 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ A:%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:%i=\E[ @:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B\017:al=\E[L:as=\E)0\016: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: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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\ + :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-103k-w|AT&T 620; 132 column; 103key keyboard:\ + :am:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#132:it#8:lh#2:li#24:lw#8:ws#132:\ + :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#4=\E[ A:%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:%i=\E[ @:%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:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E(B\017:al=\E[L:as=\E)0\016: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:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:\ + :ho=\E[H:\ + :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;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:kB=\E[Z:kC=\E[2J:\ + :kD=\ENf:kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:\ + :kP=\E[V:kR=\E[T: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:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:\ + :..px=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s:\ + :rc=\E8:rs=\Ec\E[?3l:\ + :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\ + :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: + +# 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:..px=\E[%p1%d;%p2%l%dq%p2%s:rc=\E8:rs=\Ec:\ + :..sa=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m:\ + :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:\ + :NP:am:bs:da:db:mi:ms:xo:\ + :co#80:it#8:li#24: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:..px=\E[%p1%d;%p2%l%dq%p2%s:rc=\E8:rs=\Ec:\ + :..sa=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m:\ + :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +# 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:es:hs:mi:ms:xn:xo:\ + :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\ + :#4=\E[ A:%i=\E[ @:@7=\E[24;1H:AL=\E[%dL:DC=\E[%dP:\ + :DL=\E[%dM:DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:\ + :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=\EOq:FK=\EOr:FL=\EOs:FM=\EOt:FN=\EOu:FO=\EOv:FP=\EOw:\ + :FQ=\EOx:FR=\EOy:FS=\EOu:FT=\EOv:FU=\EOl:FV=\EOq:FW=\EOr:\ + :FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[2p:LO=\E[p:Lf=4,4:RI=\E[%dC:RX=\E[53;3|:\ + :SX=\E[53;0|:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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=\E[B:eA=\E(B\E)0: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:k;=\ENp:kA=\E[L:kB=\E[Z:kC=\E[2J:kD=\E[P:\ + :kI=\E[@:kL=\E[M: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:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:po=\E[?5i:\ + :ps=\E[i:\ + :..px=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s:\ + :r1=\Ec\E[?3;5l\E[56;0|:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\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%;:\ + :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 , correcting :rp:, and modification +# of . (See comments below) +# att730 has status line of 80 chars +# These were commented out: :SF=\E[%p1%dS:, :SR=\E[%p1%dT:, +# the 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 +# has been commented out. The user can uncomment if using the +# 102, 102+1, or 122 key keyboards +# kHOM=\E[2J, +# (att730: I added / based on the init string -- esr) +att730|AT&T 730 windowing terminal:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#60:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0: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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: +att730-41|730MTG-41|AT&T 730-41 windowing terminal Version:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#41:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0: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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: +att730-24|730MTG-24|AT&T 730-24 windowing terminal Version:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#24:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0: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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: +att730r|730MTGr|AT&T 730 rev video windowing terminal Version:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#60:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;13;15l\E[?5h\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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: +att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#41:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;13;15l\E[?5h\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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: +att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version:\ + :NP:am:da:db:es:hs:mi:ms:xn:xo:\ + :Nl#24:co#80:it#8:lh#2:li#24:lm#0:lw#8:ws#80:\ + :#4=\E[ @:%i=\E[ A: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~:FF=\EOC:FG=\EOD:FH=\EOE:FI=\EOF:FJ=\EOG:FK=\EOH:\ + :FL=\EOI:FM=\EOJ:FN=\ENO:FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:\ + :FS=\ENT:FT=\EOU:FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:\ + :FZ=\EO[:Fa=\EO\s:Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\ + :LF=\E[?13h:LO=\E[?13l:RA=\E[?7l:RI=\E[%dC:RX=\E[?21l:\ + :SA=\E[?7h:SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :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:dc=\E[P:\ + :dl=\E[M:do=\E[B:eA=\E(B\E)0:ei=\E[4l:fs=\E8:ho=\E[H:\ + :i1=\E[8;0|\E[?3;4;13;15l\E[?5h\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:k;=\ENp:\ + :kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:kI=\E[@:kR=\E[T: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:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:pf=\E[?4i:..pn=\E[%p1%d;0;0;0q%p2%\:-16.16s:\ + :po=\E[?5i:ps=\E[?19h\E[0i:\ + :..px=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%\:-2d %e;0;3q%;%p2%s:\ + :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:rs=\Ec\E[?3l:\ + :..sa=\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%;:\ + :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[?5l\E[?5h:ve=\E[?25h\E[?12l:vi=\E[?25l:\ + :vs=\E[?12;25h:\ + :..xl=\E[%p1%d;%p2%l%02d;0;0q%p3%\:-16.16s%p2%s: + +# 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=\E24s:FG=\E26s: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=\E2K: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[=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:\ + :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=\E24s:FG=\E26s:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cb=\E2K: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[=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:r1=\Ec: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: +tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines:\ + :am:xo:\ + :co#80:it#8:li#22:\ + :&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=\E24s:FG=\E26s: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=\E2K: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[=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: + +#### 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: 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=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:ct=\E3:dc=\EW:dl=\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:\ + :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:kb=^_: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: +# From: Richard Bascove +# (ampex210: removed obsolete ":kn#10:" -- esr) +ampex210|a210|ampex a210:\ + :am:bs:hs:xn:\ + :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: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:me=\EG0:mr=\EG4:nd=^L:se=\EG0:so=\EG4:\ + :ta=^I:ts=\E.0\Eg\E}\Ef:ue=\EG0:up=^K:us=\EG8:\ + :vb=\EU\EX\EU\EX\EU\EX\EU\EX: +# (ampex219: I added / 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=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\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=\E[5m:md=\E[1m:\ + :me=\E[m:mh=\E[1m: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:ve=\E[?3l:vs=\E[?3h: +ampex219w|ampex-219w|amp219w|Ampex 132 cols:\ + :hs:xn:\ + :co#132:it#8:li#24:\ + :RA=\E[?7l:SA=\E[?7h:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=%i\E[%2;%2r:do=^J:\ + :ho=\E[H:is=\E>\E[?3h\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=\E[5m:\ + :md=\E[1m:me=\E[m:mh=\E[1m: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:ve=\E[?3l:\ + :vs=\E[?3h: +# (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:ug#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:\ + :me=\EG0:mr=\EG4:nd=^L:se=\EG0:so=\EG4:ta=^I:ue=\EG0:up=^K:\ + :us=\EG8:vb=\Eb\Ed:ve=\E.4:vi=\E.0: +# (ampex: removed :if=/usr/share/tabset/amp-132:, no file and no :st: -- esr) +ampex232w|Ampex Model 232 / 132 columns:\ + :am:\ + :co#132:li#24:sg#1:ug#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=\E\034Eg\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:me=\EG0:mr=\EG4:nd=^L:se=\EG0:so=\EG4:ta=^I:\ + :ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.4:vi=\E.0: + +#### 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=\014:\ + :..cm=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c:\ + :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\0c: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. +aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly):\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :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=\E[H\E[7m\E[J:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :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:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;: +aaa-18|ann arbor ambassador/18 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#18:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;18p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;18p\E[60;1H\E[K:ti=\E[18;0;0;18p:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aaa-18-rv|ann arbor ambassador/18 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#18:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;18p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;18p\E[60;1H\E[K:ti=\E[18;0;0;18p:\ + :ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-20|ann arbor ambassador/20 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#20:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;20p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;20p\E[60;1H\E[K:ti=\E[20;0;0;20p:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aaa-22|ann arbor ambassador/22 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#22:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;22p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;22p\E[60;1H\E[K:ti=\E[22;0;0;22p:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aaa-24|ann arbor ambassador/24 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;24p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;24p\E[60;1H\E[K:ti=\E[24;0;0;24p:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aaa-24-rv|ann arbor ambassador/24 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;24p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;24p\E[60;1H\E[K:ti=\E[24;0;0;24p:\ + :ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-26|ann arbor ambassador/26 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#26:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;26p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;26p\E[26;1H\E[K:\ + :ti=\E[H\E[J\E[26;0;0;26p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-28|ann arbor ambassador/28 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#28:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;28p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;28p\E[28;1H\E[K:\ + :ti=\E[H\E[J\E[28;0;0;28p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#29:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :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:ue=\E[m:up=\E[A:us=\E[4m: +aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#29:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :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:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#29:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;1;0;30p\E[59;1H\E[K:\ + :ti=\E[30;1H\E[K\E[30;1;0;30p:ts=\E[>51h\E[1;%dH\E[2K:\ + :ue=\E[m:up=\E[A:us=\E[4m: +aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#29:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;1;0;30p\E[59;1H\E[K:\ + :ti=\E[30;1H\E[K\E[30;1;0;30p:ts=\E[>51h\E[1;%dH\E[2K:\ + :ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;30p\E[30;1H\E[K:\ + :ti=\E[H\E[J\E[30;0;0;30p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;30p\E[30;1H\E[K:\ + :ti=\E[H\E[J\E[30;0;0;30p:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:\ + :ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-36|ann arbor ambassador/36 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#36:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;36p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;36p\E[36;1H\E[K:\ + :ti=\E[H\E[J\E[36;0;0;36p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-36-rv|ann arbor ambassador/36 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#36:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;36p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;36p\E[36;1H\E[K:\ + :ti=\E[H\E[J\E[36;0;0;36p:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-40|ann arbor ambassador/40 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#40:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;40p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;40p\E[40;1H\E[K:\ + :ti=\E[H\E[J\E[40;0;0;40p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-40-rv|ann arbor ambassador/40 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#40:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;40p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;40p\E[40;1H\E[K:\ + :ti=\E[H\E[J\E[40;0;0;40p:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-48|ann arbor ambassador/48 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#48:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;48p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;48p\E[48;1H\E[K:\ + :ti=\E[H\E[J\E[48;0;0;48p:ue=\E[m:up=\E[A:us=\E[4m: +aaa-48-rv|ann arbor ambassador/48 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#48:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;48p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :te=\E[60;0;0;48p\E[48;1H\E[K:\ + :ti=\E[H\E[J\E[48;0;0;48p:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-60-s|ann arbor ambassador/59 lines+status:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#59:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;60p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[m:up=\E[A:us=\E[4m: +aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#59:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:\ + :fs=\E[>51l:ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;60p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#59:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX:IC=\E[%d@:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}:\ + :ae=^N:al=\E[L:as=^O: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:\ + :cs=\E[%i%d;%dr:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^K:ds=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K:\ + :eA=\E(0:ei=:fs=\E[>51l:ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[60;1;0;60p\E8:k1=\EOA:k2=\EOB:k3=\EOC:\ + :k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:\ + :kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\ + :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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[7m:up=\E[A:us=\E[4;7m: +aaa-60|ann arbor ambassador/60 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#60:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad: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=\E[@:im=:\ + :is=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +aaa-60-rv|ann arbor ambassador/60 lines+reverse video:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#60:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[7m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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[5;7m:md=\E[1;7m:me=\E[7m\016:\ + :mk=\E[7;8m:mm=\E[>52h:mo=\E[>52l:mr=\E[m:nd=\E[C:\ + :pO=\E[%dv:pf=^C:po=\E[v:ps=\E[0i:r1=\E[H\E[7m\E[J:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :sc=\E7:se=\E[7m:sf=^K:so=\E[m:st=\EH:ta=^I:ue=\E[7m:\ + :up=\E[A:us=\E[4;7m: +aaa-db|ann arbor ambassador 30/destructive backspace:\ + :5i:am:km:mi:xo:\ + :co#80:it#8:li#30:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:\ + :i2=\E[1Q\E[m\E[>20l\E[>30h:ic=\E[@:im=:\ + :is=\E7\E[60;0;0;30p\E8:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:\ + :k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\ + :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6: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=\E[D:mb=\E[5m:md=\E[1m:me=\E[m:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[60;0;0;30p\E[30;1H\E[K:\ + :ti=\E[H\E[J\E[30;0;0;30p:ue=\E[m:up=\E[A:us=\E[4m: + +guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#33:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;33;80;80p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[33p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +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:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#33:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59h:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;33;80;80p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[33p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59l\E[>59h: +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:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#33:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;33;80;80p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:\ + :ti=\E[H\E[J\E[33p\E[255;1H\E[K:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-s|guru-33-s|ann arbor guru/33 lines+status:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#32:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:fs=\E[>51l:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255;1p\E[255;1H\E[K:ti=\E[33;1p\E[255;1H\E[K:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[>59h\E[>59l: +guru-24|ann arbor guru 24 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;24;80;80p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[24p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-44|ann arbor guru 44 lines:\ + :5i:am:bs:km:mi:xo:\ + :co#97:it#8:li#44:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;44;97;100p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[44p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-44-s|ann arbor guru/44 lines+status:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#80:it#8:li#43:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:fs=\E[>51l:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255;1p\E[255;1H\E[K:ti=\E[44;1p\E[255;1H\E[K:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[>59h\E[>59l: +guru-76|guru with 76 lines by 89 cols:\ + :5i:am:bs:km:mi:xo:\ + :co#89:it#8:li#76:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;76;89;100p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[76p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-76-s|ann arbor guru/76 lines+status:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#89:it#8:li#75:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:fs=\E[>51l:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255;1p\E[255;1H\E[K:ti=\E[76;1p\E[255;1H\E[K:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[>59h\E[>59l: +guru-76-lp|guru-lp|guru with page bigger than line printer:\ + :5i:am:bs:km:mi:xo:\ + :co#134:it#8:li#76:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;76;134;134p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[76p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-76-w|guru 76 lines by 178 cols:\ + :5i:am:bs:km:mi:xo:\ + :co#178:it#8:li#76:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;76;178;178p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[76p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +guru-76-w-s|ann arbor guru/76 lines+status+wide:\ + :5i:am:bs:es:hs:km:mi:xo:\ + :co#178:it#8:li#75:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:\ + :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:ei=:fs=\E[>51l:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J:k1=\EOA:\ + :k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:\ + :k9=\EOI:k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:\ + :kL=\E[M:kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255;1p\E[255;1H\E[K:ti=\E[76;1p\E[255;1H\E[K:\ + :ts=\E[>51h\E[1;%dH\E[2K:ue=\E[m:up=\E[A:us=\E[4m:\ + :vb=\E[>59h\E[>59l: +guru-76-wm|guru 76 lines by 178 cols with 255 cols memory:\ + :5i:am:bs:km:mi:xo:\ + :co#178:it#8:li#76:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:F2=\EOL:\ + :F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:F8=\EOR:F9=\EOS:\ + :FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:FE=\EOX: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:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\ + :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:\ + :ho=\E[H:i1=\E[m\E7\E[H\E9\E8:i2=\E[>59l:ic=\E[@:im=:\ + :is=\E7\E[255;0;0;76;178;255p\E8\E[J:k1=\EOA:k2=\EOB:\ + :k3=\EOC:k4=\EOD:k5=\EOE:k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:\ + :k;=\EOJ:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:\ + :kM=\E6: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:mk=\E[8m:\ + :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:pf=^C:\ + :po=\E[v:ps=\E[0i:rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:\ + :te=\E[255p\E[255;1H\E[K:ti=\E[76p:ue=\E[m:up=\E[A:\ + :us=\E[4m:vb=\E[>59h\E[>59l: +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:\ + :..sa=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\ + :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\s\s: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:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :bl=^G:cl=^L:cm=\013%+ %+^F20%.:cr=^M:do=^J:ho=\EY\s\s:\ + :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:le=^U:ll=^A:me=\E0@:nd=^F:se=\E0@:sf=^J:so=\E0P:\ + :ue=\E0@:up=^Z:us=\E0`: +regent20|Adds Regent 20:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:do=^J:\ + :ho=\EY\s\s:le=^U:ll=^A:nd=^F:sf=^J:up=^Z: +regent25|Adds Regent 25:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:do=^J:\ + :ho=\EY\s\s:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=^U:ll=^A:nd=^F:\ + :sf=^J:up=^Z: +regent40|Adds Regent 40:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EM:bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dl=\El:\ + :do=^J:ho=\EY\s\s:k0=^B1\r:k1=^B2\r:k2=^B3\r:k3=^B4\r:\ + :k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r: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:\ + :le=^U:ll=^A:me=\E0@:nd=^F:se=\E0@:sf=^J:so=\E0P:ue=\E0@:\ + :up=^Z:us=\E0`: +regent40+|Adds Regent 40+:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EM:bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dl=\El:\ + :do=^J:ho=\EY\s\s:is=\EB:k0=^B1\r:k1=^B2\r:k2=^B3\r:\ + :k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r: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:le=^U:ll=^A:me=\E0@:nd=^F:se=\E0@:sf=^J:so=\E0P:\ + :ue=\E0@:up=^Z:us=\E0`: +regent60|regent200|Adds Regent 60:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EM:bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dc=\EE:\ + :dl=\El:do=^J:ei=\EF:ho=\EY\s\s:im=\EF:is=\EV\EB:k0=^B1\r:\ + :k1=^B2\r:k2=^B3\r:k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:\ + :k7=^B8\r:kD=\EE:kI=\EF:kM=\EF: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:le=^U:ll=^A:\ + :me=\E0@:nd=^F:se=\ER\E0@\EV:sf=^J:so=\ER\E0P\EV:ue=\E0@:\ + :up=^Z:us=\E0`: +# From: 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=\Ek:ce=\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:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\Ek:ce=\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:sf=^J:up=^Z:\ + :ve=\017\E0`: + +# From: Jay S. Rouman 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(. +vp3a+|viewpoint3a+|adds viewpoint 3a+:\ + :am:bw:\ + :co#80:it#8:li#24:\ + :cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:kb=^H:\ + :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\E(:nd=^L:nw=^M^J:\ + :..sa=\E0%{64}%?%p1%tQ%|%;%?%p2%t%{96}%|%;%?%p3%tP%|%;%?%p4%t%{2}%|%;%?%p5%t%{1}%|%;%?%p7%tD%|%;%c\E):\ + :se=\E(:sf=^J:so=\E0Q\E):ta=^I:up=^K:ve=^X:vi=^W: +vp60|viewpoint60|addsvp60|adds viewpoint60:\ + :am:bs:\ + :co#80:li#24:sg#1:ug#1:\ + :al=\EM:bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dl=\El:\ + :do=^J:ho=\EY\s\s:k0=^B1\r:k1=^B2\r:k2=^B3\r:k3=^B4\r:\ + :k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r: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:\ + :le=^U:ll=^A:me=\E0@:nd=^F:se=\E0@:sf=^J:so=\E0P:ue=\E0@:\ + :up=^Z:us=\E0`: +# +# 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\s\s: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\:\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=\E\016:bl=^G:cl=\014\013@:cm=\013%+@\E\005%2:cr=^M:\ + :dl=\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: + +# 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 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 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=\EN\EL\EQ \EP \EO\ER\EA:\ + :bl=^G:bt=\E`:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EF%r%03%03:cr=\r:\ + :ct=\E3:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\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=\EC:\ + :se=\E_3:sf=^J:so=\E_1:st=\E1:ta=^I:te=:ti=\EO:ue=\E_3:\ + :up=\EA:us=\E_0: +sbi|superbee|beehive superbee at Indiana U.:\ + :am:bs:bw:da:db:mi:ul:xb:\ + :co#80:li#25:sg#1:ug#1:\ + :al=1\EN\EL\EQ \EP \EO\ER\EA:bl=^G:bt=\E`:cd=\EJ:ce=\EK:\ + :cl=\EH\EJ:cm=\EF%r%03%03:cr=\r:ct=\E3:dc=\EP:dl=\EM:do=^J:\ + :ei=\ER:ho=\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=\EC:se=\E_3:sf=^J:so=\E_1:st=\E1:ta=^I:te=:\ + :ti=\EO:ue=\E_3:up=\EA:us=\E_0: +# 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 string. +superbee-xsb|beehive super bee:\ + :am:da:db:xb:\ + :co#80:it#8:li#25:\ + :cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EF%r%3%3:cr=\r:ct=\E3:dc=\EP:\ + :dl=\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\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET:so=\E_1:st=\E1:\ + :ta=^I:up=\EA:ve=^J: +# This loses on lines > 80 chars long, use at your own risk +superbeeic|super bee with insert char:\ + :am:da:db:xb:\ + :co#80:it#8:li#25:\ + :cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EF%r%3%3:cr=\r:ct=\E3:dc=\EP:\ + :dl=\EM:do=^J:ei=\ER:ho=\EH:ic=:im=\EQ: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\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET:so=\E_1:st=\E1:\ + :ta=^I:up=\EA:ve=^J: +sb2|sb3|fixed superbee:\ + :am:bs:bw:da:db:mi:ul:\ + :co#80:li#25:sg#1:ug#1:\ + :al=1\EN\EL\EQ \EP \EO\ER\EA:bl=^G:bt=\E`:cd=\EJ:ce=\EK:\ + :cl=\EH\EJ:cm=\EF%r%03%03:cr=\r:ct=\E3:dc=\EP:dl=\EM:do=^J:\ + :ei=\ER:ho=\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=\EC:se=\E_3:sf=^J:so=\E_1:st=\E1:ta=^I:te=:\ + :ti=\EO:ue=\E_3:up=\EA:us=\E_0: + +#### Beehive Medical Electronics +# +# Steve Seymour 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=\023:bl=^G:cd=^R:ce=^P:cl=^E^R:cr=^M:dl=\021:do=^J:ho=^E:\ + :le=^H:ll=^E^K:nd=^L:se=\s^_:sf=^J:so=^]\s: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=\s\EdP:ta=^I:ue=\Ed@:up=\EA:us=\Ed`: + +#### 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. +# +#% C.Itoh: andy@cie.co.uk (Andy Hardy) + +# 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: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 Fri Sep 27 09:39:12 PDT 1985 +# (cit101: added / 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: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 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:\ + :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:\ + :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:kb=^H:kd=^J:ke=\E>:kl=^H:kr=\E[C:ks=\E=:ku=\E[A:\ + :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[?7l: +cit101e-132|CIT-101e with 132 cols:\ + :am:bs:mi:ms:pt:\ + :co#132: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:kb=^H:kd=^J:ke=\E>:kl=^H:kr=\E[C:ks=\E=:ku=\E[A:\ + :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: +cit101e-n132|CIT-101e with 132 cols w/o am:\ + :bs:mi:ms:pt:\ + :co#132: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:kb=^H:kd=^J:ke=\E>:kl=^H:kr=\E[C:ks=\E=:ku=\E[A:\ + :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[?7l: +# 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 / 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:\ + :bs:hc:os:\ + :co#80:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:\ + :is=\E(009,017,025,033,041,049,057,065,073.:md=\E!:\ + :me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +citoh-pica|citoh in pica:\ + :bs:hc:os:\ + :co#80:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:i1=\EN:\ + :is=\E(009,017,025,033,041,049,057,065,073.:md=\E!:\ + :me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +citoh-elite|citoh in elite:\ + :bs:hc:os:\ + :co#96:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:i1=\EE:\ + :is=\E(009,017,025,033,041,049,057,065,073,081,089.:\ + :md=\E!:me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +citoh-comp|citoh in compressed:\ + :bs:hc:os:\ + :co#136:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:i1=\EQ:\ + :is=\E(009,017,025,033,041,049,057,065,073,081,089,097,105,113,121,129.:\ + :md=\E!:me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +# citoh has infinite cols because we don't want lp ever inserting \n\t**. +citoh-prop|citoh-ps|ips|citoh in proportional spacing mode:\ + :bs:hc:os:\ + :co#32767:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:i1=\EP:\ + :is=\E(009,017,025,033,041,049,057,065,073.:md=\E!:\ + :me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +citoh-6lpi|citoh in 6 lines per inch mode:\ + :bs:hc:os:\ + :co#80:it#8:li#66:\ + :bl=^G:cr=^M:do=^J:ff=^L:i2=\EA:\ + :is=\E(009,017,025,033,041,049,057,065,073.:md=\E!:\ + :me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: +citoh-8lpi|citoh in 8 lines per inch mode:\ + :bs:hc:os:\ + :co#80:it#8:li#88:\ + :bl=^G:cr=^M:do=^J:ff=^L:i2=\EB:\ + :is=\E(009,017,025,033,041,049,057,065,073.:md=\E!:\ + :me=\E"\EY:rp=\ER%r%03%.:sf=^J:sr=\Er:ue=\EY:us=\EX: + +#### 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\s\s:cm=\E1%r%+ %+ :cr=^M:do=^J:\ + :ho=\E1\s\s: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. 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^\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 , 27 May 1995 +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:\ + :ac=0_aaffggjjkkllmmnnqqttuuvvwwxxh ooss: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 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: 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:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:li#24:vt#8:\ + :ac=l\\qLkTxUmMjE:ae=\Ej\s:al=\E\022:as=\Ej!:bl=^G:\ + :cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\ + :cr=^M:dc=\E 1:dl=\E\002:do=^J:ds=\E ;\177:ei=\E\s\s:\ + :fs=\Ee\E z\s:i1=\EK\E!\E F:\ + :i2=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n:\ + :im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\ + :te=\Ev \001\177p\Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:\ + :..ts=\E z"\E?\E\005\EE\Ea %+\s:ue=\Eg:up=\E;:us=\EG:\ + :vb=\Ek\EK:ve=\Ew:vs=\EW: +c108-4p|concept108-4p|concept 108 w/4 pages:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:li#24:vt#8:\ + :ac=l\\qLkTxUmMjE:ae=\Ej\s:al=\E\022:as=\Ej!:bl=^G:\ + :cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\ + :cr=^M:dc=\E 1:dl=\E\002:do=^J:ds=\E ;\177:ei=\E\s\s:\ + :fs=\Ee\E z\s:i1=\EK\E!\E F:\ + :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n:\ + :im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\ + :te=\Ev \001 p\Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:\ + :..ts=\E z"\E?\E\005\EE\Ea %+\s:ue=\Eg:up=\E;:us=\EG:\ + :vb=\Ek\EK:ve=\Ew:vs=\EW: +c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:li#24:vt#8:\ + :ac=l\\qLkTxUmMjE:ae=\Ej\s:al=\E\022:as=\Ej!:bl=^G:\ + :cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\ + :cr=^M:dc=\E 1:dl=\E\002:do=^J:ds=\E ;\177:ei=\E\s\s:\ + :fs=\Ee\E z\s:i1=\Ek:\ + :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n:\ + :im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ee:sf=^J:so=\EE:ta=\011:\ + :te=\Ev \002 p\Ep\r\n:ti=\EU\Ev 8p\Ep\r:\ + :..ts=\E z"\E?\E\005\EE\Ea %+\s:ue=\Eg:up=\E;:us=\EG:\ + :vb=\EK\Ek:ve=\Ew:vs=\EW: +c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:li#24:vt#8:\ + :ac=l\\qLkTxUmMjE:ae=\Ej\s:al=\E\022:as=\Ej!:bl=^G:\ + :cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\ + :cr=^M:dc=\E 1:dl=\E\002:do=^J:ds=\E ;\177:ei=\E\s\s:\ + :fs=\Ee\E z\s:i1=\Ek:\ + :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n:\ + :im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ee:sf=^J:so=\EE:ta=\011:\ + :te=\Ev \001 p\Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:\ + :..ts=\E z"\E?\E\005\EE\Ea %+\s:ue=\Eg:up=\E;:us=\EG:\ + :vb=\EK\Ek:ve=\Ew:vs=\EW: +c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#132:li#24:vt#8:\ + :ac=l\\qLkTxUmMjE:ae=\Ej\s:al=\E\022:as=\Ej!:bl=^G:\ + :cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\ + :cr=^M:dc=\E 1:dl=\E\002:do=^J:ds=\E ;\177:ei=\E\s\s:\ + :fs=\Ee\E z\s:i1=\E F\E":\ + :i2=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n:\ + :im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\ + :te=\Ev ^A0\001D\Ep\r\n:ti=\EU\Ev 8\001D\Ep\r:\ + :..ts=\E z"\E?\E\005\EE\Ea %+\s:ue=\Eg:up=\E;:us=\EG:\ + :vb=\Ek\EK:ve=\Ew:vs=\EW: + +# 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 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=\E\022:bl=^G:cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :cm=\Ea%+ %+ :cr=\r:dc=\E\021:dl=\E\002:do=^J:ei=\E\s\s:\ + :i1=\EK:i2=\Ev \Ep\n:im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\ + :te=\Ev \Ep\r\n:ti=\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:\ + :am:bs:eo:mi:ul:xn:\ + :co#80:li#24:pb#9600:vt#8:\ + :al=\E\022:bl=^G:cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :cm=\Ea%+ %+ :cr=\r:dc=\E\021:dl=\E\002:do=^J:ei=\E\s\s:\ + :i1=\Ek:i2=\Ev \Ep\n:im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ee:sf=^J:so=\EE:ta=\011:\ + :te=\Ev \Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:ue=\Eg:\ + :up=\E;:us=\EG:vb=\EK\Ek: +oc100|oconcept|c100-1p|old 1 page concept 100:\ + :am:bs:eo:in:mi:ul:xn:\ + :co#80:li#24:pb#9600:vt#8:\ + :al=\E\022:bl=^G:cd=\E\005:ce=\E\025:cl=\E?\E\005:\ + :cm=\Ea%+ %+ :cr=\r:dc=\E\021:dl=\E\002:do=^J:ei=\E\s\s:\ + :i1=\EK:im=\E^P:ip=:\ + :is=\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:\ + :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\:a:k7=\E\:b:\ + :k8=\E\:c:kA=\E^R:kB=\E':kD=\E^Q:kE=\E^S:kF=\E[:kI=\E^P:\ + :kL=\E^B:kM=\E\0: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=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\ + :te=\Ev \Ep\r\n:ti=\EU\Ev 8p\Ep\r\E\025:ue=\Eg:\ + :up=\E;:us=\EG:vb=\Ek\EK: + +# From: Walter Skorski , 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). +# +# (esr: I have commented out is2 in order to avoid overflowing termcap's +# 1024-byte limit.) + +hds200|Human Designed Systems HDS200:\ + :5i:am:bw:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:lm#0:\ + :#2=\E$H:#4=\E$D:%i=\E$C:*4=\E$\177:@8=^M:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=^\011\r:F2=^\012\r:\ + :F3=\EOP:F4=\EOQ:F5=\EOR:F6=\EOS:F7=^\017\r:F8=^\018\r:\ + :F9=^\019\r:FA=^\020\r:FB=^\021\r:FC=^\022\r:FD=^\023\r:\ + :FL=^\031\r:FM=^\032\r:FN=^\033\r:FO=^\034\r:FP=^\035\r:\ + :FQ=^\036\r:FR=^\037\r:FS=^\038\r:FT=^\039\r:FU=^\040\r:\ + :FV=^\041\r:FW=^\042\r:FX=\E$P:FY=\E$Q:FZ=\E$R:Fa=\E$S:\ + :Fb=^\047\r:Fc=^\048\r:Fd=^\049\r:Fe=^\050\r:Ff=^\051\r:\ + :Fg=^\052\r:Fh=^\053\r:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=^O:al=\E[L:as=^N: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:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd: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:k1=^\001\r:k2=^\002\r:k3=^\003\r:k4=^\004\r:\ + :k5=^\005\r:k6=^\006\r:k7=^\007\r:k8=^\008\r:k9=^\009\r:\ + :k;=^\010\r:kB=\E$I:kD=\177:kF=\E[T:kN=\E[U:kP=\E[V:\ + :kR=\E[S: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[m\017:\ + :mk=\E[0;8m:mr=\E[0;7m:nd=\E[C:nw=\E[E:pf=\E[4i:po=\E[5i:\ + :ps=\E[i:rc=\E8:\ + :..sa=\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%;:\ + :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 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=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ei=\E4l:ho=\E[H:\ + :i1=\E[=103l\E[=205l:ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\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:\ + :am:bs:eo:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#192:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ei=\E4l:ho=\E[H:\ + :i1=\E[=103l\E[=205h:ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[w\E2\r\n:ti=\E[=4l\E[1;24w\E2\r:ue=\E[4!{:\ + :up=\E[A:us=\E[4m:vb=\E[=205l\E[=205h:ve=\E[=119l:\ + :vs=\E[=119h: +avt-w-ns|concept avt in 132 column mode/no status line:\ + :am:bs:eo:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#192:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ei=\E4l:ho=\E[H:\ + :i1=\E[=103h\E[=205l:ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[w\E2\r\n:ti=\E[H\E[1;24;1;132w:ue=\E[4!{:up=\E[A:\ + :us=\E[4m:ve=\E[=119l:vs=\E[=119h: +avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video:\ + :am:bs:eo:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#192:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ei=\E4l:ho=\E[H:\ + :i1=\E[=103h\E[=205h:ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[w\E2\r\n:ti=\E[H\E[1;24;1;132w:ue=\E[4!{:up=\E[A:\ + :us=\E[4m:vb=\E[=205l\E[=205h:ve=\E[=119l:vs=\E[=119h: + +# 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:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#191:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ds=\E[0*w:ei=\E4l:\ + :fs=\E[1;1!w:ho=\E[H:i1=\E[=103l\E[=205l:\ + :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\ + :ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[2w\E2\r\n:ti=\E[2;25w\E2\r:\ + :ts=\E[2;1!w\E[;%dH\E[2K:ue=\E[4!{:up=\E[A:us=\E[4m:\ + :ve=\E[=119l:vs=\E[=119h: +avt-rv|avt-rv-s|avt reverse video w/sl:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#191:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ds=\E[0*w:ei=\E4l:\ + :fs=\E[1;1!w:ho=\E[H:i1=\E[=103l\E[=205h:\ + :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\ + :ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[2w\E2\r\n:ti=\E[2;25w\E2\r:\ + :ts=\E[2;1!w\E[;%dH\E[2K:ue=\E[4!{:up=\E[A:us=\E[4m:\ + :vb=\E[=205l\E[=205h:ve=\E[=119l:vs=\E[=119h: +avt-w|avt-w-s|concept avt 132 cols+status:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#191:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ds=\E[0*w:ei=\E4l:\ + :fs=\E[1;1!w:ho=\E[H:i1=\E[=103h\E[=205l:\ + :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\ + :ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[2w\E2\r\n:ti=\E[H\E[1;24;1;132w:\ + :ts=\E[2;1!w\E[;%dH\E[2K:ue=\E[4!{:up=\E[A:us=\E[4m:\ + :ve=\E[=119l:vs=\E[=119h: +avt-w-rv|avt-w-rv-s|avt wide+status+rv:\ + :am:bs:eo:es:hs:mi:ul:xn:xo:\ + :co#80:it#8:li#24:lm#191:\ + :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:ac=:ae=\016:al=\E[L:as=\017: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:cs=\E[%i%d;%dr:ct=\E[2g:\ + :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ds=\E[0*w:ei=\E4l:\ + :fs=\E[1;1!w:ho=\E[H:i1=\E[=103h\E[=205h:\ + :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\ + :ic=\E[@:im=\E1:ip=:\ + :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\:0\:32!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=\E8m:\ + :mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:pl=\E[%d;0u#%s#:\ + :po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:rc=\E8:\ + :..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\ + :te=\E[2w\E2\r\n:ti=\E[H\E[1;24;1;132w:\ + :ts=\E[2;1!w\E[;%dH\E[2K:ue=\E[4!{:up=\E[A:us=\E[4m:\ + :vb=\E[=205l\E[=205h:ve=\E[=119l:vs=\E[=119h: + +#### 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=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :cr=^M:\ + :ct=\E3:dc=\EO:dl=\EM:do=^J:ei=:ho=\EH:ic=\EN:im=:ip=: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!\0:nd=\EC:\ + :se=\E!\0: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:\ + :am:in:xo:\ + :co#80:li#24:sg#1:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :cr=^M:\ + :ct=\E3:dc=\EO:dl=\EM:do=^J:ho=\EH: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!\0:nd=\EC:se=\E!\0:sf=^J:\ + :so=\E!\r:st=\E1:up=\EA: + +#### Data General (dg) +# +# According to James Carlson 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). + +# Most of these entries are `official' and came from DG. Others are marked. + +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=^^\::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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :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:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :Sb=\036B%+0:Sf=\036A%+0:op=\036Ad\036Bd: + +dg+fixed|Fixed color info for DG D430C terminals in DG mode:\ + :ut:\ + :Co#16:NC#53:pa#256:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :Sb=\036B%+0:Sf=\036A%+0:op=\036Ad\036Bd: + +# 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:\ + :..AB=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :..AF=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :..Sb=\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:\ + :..Sf=\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:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m: + +dg+color|Color info for Data General D470C terminals in ANSI mode:\ + :ut:\ + :Co#16:NC#53:pa#256:\ + :..AB=\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:\ + :..AF=\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:\ + :..Sb=\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:\ + :..Sf=\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:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m: + +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:\ + :ut:\ + :Co#16:NC#16:pa#256:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :Sb=\036B%+0:Sf=\036A%+0:op=\036Ad\036Bd: + +dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode:\ + :cc:ut:\ + :Co#52:NC#53:pa#26:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :..sp=\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:\ + :cc:ut:\ + :Co#52:NC#53:pa#26:\ + :..Ip=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p6%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{256}%*%{1001}%/%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=:\ + :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:\ + :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=^^\::FN=^^;:FO=^^!:\ + :FP=^^":FQ=^^#:FR=^^$:FS=^^%:FT=^^&:FU=^^':FV=^^(:FW=^^):\ + :FX=^^*:FY=^^+:bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:\ + :i1=^R^C: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:le=^Y:mb=^N:me=^O^U^]:mh=^\:nd=^X:nw=^J:ps=^Q:se=^]:\ + :sf=^J:so=^\:ue=^U:up=^W:us=^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:\ + :NL:am:bw:ms:\ + :co#80:li#24:\ + :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=^^\::FN=^^;:FO=^^!:\ + :FP=^^":FQ=^^#:FR=^^$:FS=^^%:FT=^^&:FU=^^':FV=^^(:FW=^^):\ + :FX=^^*:FY=^^+:bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:\ + :ho=^P\0\0:i1=^R^C: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:le=^Y:ll=^P\0^W:mb=^N:me=^O^U^]:mh=^\:\ + :nd=^X:nw=^J:ps=^Q:se=^]:sf=^J:so=^\:ue=^U:up=^W:us=^T: + +# Like 6053, but adds reverse video and more keypad and function keys. +d200|d200-dg|Data General DASHER D200:\ + :NL:am:bw:ms:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:i1=^R^C:\ + :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:\ + :le=^Y:mb=^N:md=^^D^T:me=\017\025\035\036E:mh=^\:mr=^^D:\ + :nd=^X:nw=^J:ps=^Q:\ + :..sa=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ue=^U:up=^W:us=^T: + +# 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:\ + :%9=\E[i:DO=\E[%dB: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: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: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: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:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m:\ + :se=\E[m:sf=^J:so=\E[2;7m:ue=\E[m:up=\E[A:us=\E[4m: + +# 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:\ + :NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:bl=^G:cd=^^FF:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:\ + :i1=^R^C: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:le=^Y:mb=^N:md=^^D^T:me=\017\025\035\036E:mh=^\:\ + :mr=^^D:nd=^X:nw=^J:ps=^Q:\ + :..sa=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ue=^U:up=^W:us=^T: + +# 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:\ + :NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :%9=\233i:DO=\E[%dB: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: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:\ + :is=\E[2;1;1;1v\E(B\E)4\017: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: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:ps=\E[i:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m:\ + :se=\E[m:sf=^J:so=\E[2;7m:ue=\E[m:up=\E[A:us=\E[4m: + +# 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:\ + :NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :%9=\E[i:DO=\E[%dB: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: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:is=\E[2;0;1;0v\E(0\017:\ + :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:\ + :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:ps=\E[i:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m:\ + :se=\E[m:sf=^J:so=\E[2;7m:ue=\E[m:up=\E[A:us=\E[4m: + +# 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:\ + :NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:bl=^G:cd=^^FF:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:\ + :i1=^R^C: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:le=^Y:mb=^N:md=^^D^T:me=\017\025\035\036E:mh=^\:\ + :mr=^^D:nd=^X:nw=^J:ps=^Q:rs=\036N\036FS0>\036O\036FS00:\ + :..sa=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ue=^U:up=^W:us=^T: + +d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode:\ + :NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:bl=^G:cd=^^FF:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:\ + :i1=^R^C: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:le=^Y:mb=^N:md=^^D^T:me=\017\025\035\036E:mh=^\:\ + :mr=^^D:nd=^X:nw=^J:ps=^Q:rs=\036N\036FS0>\036O\036FS00:\ + :..sa=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ue=^U:up=^W:us=^T: + +# 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:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:ch=\020%.\177:cl=^^PH:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:do=^^PB:ho=^^PF:\ + :i1=\022\003\036P@1:i2=\036Fz0:k1=^^q:k2=^^r:k3=^^s:\ + :k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:k9=^^y:k;=^^z:kC=^^PH:\ + :kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:kr=^^PC:ku=^^PA:le=^^PD:\ + :mb=^^PI:md=^^D^T:me=\036PJ\025\035\036E\036FS00:mh=^\:\ + :mr=^^D:nd=^^PC:nw=^J:pf=^^Fa:po=^^F`:ps=\036F?9:\ + :rs=\036N\036FS0E\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ta=^I:ue=^U:up=^^PA:us=^T: +d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#25:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:ch=\020%.\177:cl=^^PH:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:do=^^PB:ho=^^PF:\ + :i1=\022\003\036P@1:i2=\036Fz2:k1=^^q:k2=^^r:k3=^^s:\ + :k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:k9=^^y:k;=^^z:kC=^^PH:\ + :kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:kr=^^PC:ku=^^PA:le=^^PD:\ + :mb=^^PI:md=^^D^T:me=\036PJ\025\035\036E\036FS00:mh=^\:\ + :mr=^^D:nd=^^PC:nw=^J:pf=^^Fa:po=^^F`:ps=\036F?9:\ + :rs=\036N\036FS0E\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ta=^I:ue=^U:up=^^PA:us=^T: + +d217-unix|Data General DASHER D217 in DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:ch=\020%.\177:cl=^^PH:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:do=^^PB:ho=^^PF:\ + :i1=\022\003\036P@1:i2=\036Fz0:k1=^^q:k2=^^r:k3=^^s:\ + :k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:k9=^^y:k;=^^z:kC=^^PH:\ + :kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:kr=^^PC:ku=^^PA:le=^^PD:\ + :mb=^^PI:md=^^D^T:me=\036PJ\025\035\036E\036FS00:mh=^\:\ + :mr=^^D:nd=^^PC:nw=^J:pf=^^Fa:po=^^F`:ps=\036F?9:\ + :rs=\036N\036FS0E\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ta=^I:ue=^U:up=^^PA:us=^T: +d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#25:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:ch=\020%.\177:cl=^^PH:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:do=^^PB:ho=^^PF:\ + :i1=\022\003\036P@1:i2=\036Fz2:k1=^^q:k2=^^r:k3=^^s:\ + :k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:k9=^^y:k;=^^z:kC=^^PH:\ + :kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:kr=^^PC:ku=^^PA:le=^^PD:\ + :mb=^^PI:md=^^D^T:me=\036PJ\025\035\036E\036FS00:mh=^\:\ + :mr=^^D:nd=^^PC:nw=^J:pf=^^Fa:po=^^F`:ps=\036F?9:\ + :rs=\036N\036FS0E\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:ta=^I:ue=^U:up=^^PA:us=^T: + +# 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:\ + :NL:am:bw:km:ms:ut:xo:\ + :Co#8:NC#16:co#80:li#24:pa#64:\ + :%9=\233i:\ + :..AB=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :..AF=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :DC=\E[%dP:DO=\E[%dB: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:IC=\E[%d@:\ + :K1=\233020z:K3=\233021z:K4=\233022z:K5=\233023z:\ + :LE=\E[%dD:RI=\E[%dC:\ + :..Sb=\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:\ + :..Sf=\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:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:do=\E[B:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<4l\E[m:ic=\E[@:im=:\ + :is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m:\ + :ps=\E[i:r1=\Ec:r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\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%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d220-7b|Data General DASHER D220 in 7 bit mode:\ + :NL:am:bw:ms:ut:xo:\ + :Co#8:NC#16:co#80:li#24:pa#64:\ + :%9=\E[i:\ + :..AB=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :..AF=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :DC=\E[%dP:DO=\E[%dB: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:IC=\E[%d@:K1=\E[020z:K3=\E[021z:\ + :K4=\E[022z:K5=\E[023z:LE=\E[%dD:RI=\E[%dC:\ + :..Sb=\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:\ + :..Sf=\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:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:do=\E[B:eA=\E)6:ei=:ho=\E[H:i1=\E[<0;<1;<4l\E[m:\ + :ic=\E[@:im=:is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m:\ + :ps=\E[i:r1=\Ec:r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\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%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +# 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:\ + :NL:am:bw:km:ms:ut:xo:\ + :Co#8:NC#16:co#80:li#24:pa#64:\ + :#2=^^^H:#4=^^^Y:%i=^^^X:AB=\036B%+^B:AF=\036A%+^B: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=^^\::FV=^^;:FW=^^<:FX=^^=:\ + :FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:\ + :Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:\ + :Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:do=^Z:ei=:\ + :i1=^R^C:i2=\036FQ2:ic=^^J:im=: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:le=^Y:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :op=\036Ad\036Bd:ps=^Q:rs=\036N\036FS0>\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# DASHER D230C color terminal in ANSI mode. +# Like the D220 but with minor ANSI compatibility improvements. +# +d230c|d230|Data General DASHER D230C:\ + :am:bw:km:ms:ut:xo:\ + :Co#8:NC#16:co#80:li#24:pa#64:\ + :%9=\E[i:\ + :..AB=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :..AF=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m:\ + :DC=\E[%dP:DO=\E[%dB: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:IC=\E[%d@:K1=\E[020z:K3=\E[021z:\ + :K4=\E[022z:K5=\E[023z:LE=\E[%dD:RI=\E[%dC:\ + :..Sb=\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:\ + :..Sf=\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:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:do=\E[B:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<4l\E[m:ic=\E[@:im=:\ + :is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:ke=\E[2;1v:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[2;0v:\ + :ku=\E[A:le=^H:ll=\E[H\E[A:mb=\E[5;50m:md=\E[4;7;50m:\ + :me=\E[50m\E)4\017:mh=\E[2;50m:mr=\E[7;50m:nd=\E[C:\ + :nw=^M^J:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m:\ + :ps=\E[i:r1=\Ec:r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\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%;:\ + :se=\E[50m:sf=^J:so=\E[2;7;50m:sr=\EM:ue=\E[50m:up=\E[A:\ + :us=\E[4;50m:ve=\E[3;2v:vi=\E[3;0v: + +d230c-dg|d230-dg|Data General DASHER D230C in DG mode:\ + :NL:am:bw:km:ms:ut:xo:\ + :Co#8:NC#16:co#80:li#24:pa#64:\ + :#2=^^^H:#4=^^^Y:%i=^^^X:AB=\036B%+^B:AF=\036A%+^B: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=^^\::FV=^^;:FW=^^<:FX=^^=:\ + :FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:\ + :Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:\ + :Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:do=^Z:ei=:\ + :i1=^R^C:i2=\036FQ2:ic=^^J:im=: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:le=^Y:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :op=\036Ad\036Bd:ps=^Q:rs=\036N\036FS0>\036O\036FS00:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# 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:NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^^O:al=^^FH:as=^^N:\ + :bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:cm=\020%r%.%.:\ + :cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:do=^Z:\ + :eA=\036N\036FS11\036O:ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036O:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# 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:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :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: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +# 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:\ + :5i:NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :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;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[<2h:r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:do=^Z:\ + :ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# 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:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#126:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#126:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:do=^Z:\ + :ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# These add intelligent features like scrolling regions. +d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#132:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FK\036F^\036FX0083\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:\ + :r2=\036P@1\036FK\036FX0083:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X: +d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#25:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz2:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line:\ + :5i:NL:am:bw:es:hs:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=\036FG\036PH:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:\ + :fs=\036F}01\022:ho=^^FG:i1=\022\003\036P@1:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:\ + :..ts=\036F}00\036FP%p1%2.2X18\036PG:ue=^U:up=^^PA:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\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: + +# 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:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cs=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: + +d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#132:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FK\036F^\036FX0083\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:\ + :r2=\036P@1\036FK\036FX0083:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X: +d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#25:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz2:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line:\ + :5i:NL:am:bw:es:hs:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=\036FG\036PH:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:\ + :fs=\036F}01\022:ho=^^FG:i1=\022\003\036P@1:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:\ + :..ts=\036F}00\036FP%p1%2.2X18\036PG:ue=^U:up=^^PA:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\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: +d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cs=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: + +d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#132:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FK\036F^\036FX0083\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:\ + :r2=\036P@1\036FK\036FX0083:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X: +d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#25:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz2:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line:\ + :5i:NL:am:bw:es:hs:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=\036FG\036PH:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:\ + :fs=\036F}01\022:ho=^^FG:i1=\022\003\036P@1:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:\ + :..ts=\036F}00\036FP%p1%2.2X18\036PG:ue=^U:up=^^PA:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\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: +d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:it#8:li#24:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cs=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: + +d430c-dg|d430-dg|Data General D430C in DG mode:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:li#24:pa#256:\ + :#2=^^^H:#4=^^^Y:%i=^^^X:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:\ + :cl=^L:cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:\ + :do=^Z:ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:\ + :r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: +d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors:\ + :5i:NL:am:bw:cc:km:ms:ut:xo:\ + :Co#52:NC#53:co#80:li#24:pa#26:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p6%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{256}%*%{1001}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^K:\ + :ch=\020%.\177:cl=^L:cm=\020%r%.%.:cr=^M:cv=\020\177%.:\ + :dc=^^K:dl=^^FI:do=^Z:ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :oc=\036RG01\:00??00000000\036RG01;00000000??00\036RG01<007?00000000\036RG01=000000007?00:\ + :op=\036RF4831\:\036RF2>31;\036RF1=31<\036RF3?31=:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sp=\036RG2%+^P%+^P:sr=^^I:ue=^U:\ + :up=^W:us=^T:ve=\036FQ2:vi=\036FQ0: + +d430c-unix|d430-unix|Data General D430C in DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:it#8:li#24:pa#256:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=a\177j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:\ + :..ch=\036FP%p1%2.2XFF:cl=^^FE:\ + :..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^A:\ + :r1=\036FA\036FT0:r2=\036P@1:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#132:it#8:li#24:pa#256:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=a\177j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:\ + :..ch=\036FP%p1%2.2XFF:cl=^^FE:\ + :..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FK\036F^\036FX0083\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^A:\ + :r1=\036FA\036FT0:r2=\036P@1\036FK\036FX0083:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:it#8:li#25:pa#256:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=a\177j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:\ + :..ch=\036FP%p1%2.2XFF:cl=^^FE:\ + :..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz2:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^A:\ + :r1=\036FA\036FT0:r2=\036P@1:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line:\ + :5i:NL:am:bw:es:hs:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:it#8:li#24:pa#256:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=a\177j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:\ + :..ch=\036FP%p1%2.2XFF:cl=\036FG\036PH:\ + :..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:\ + :fs=\036F}01\022:ho=^^FG:i1=\022\003\036P@1:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^A:\ + :r1=\036FA\036FT0:r2=\036P@1:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:\ + :..ts=\036F}00\036FP%p1%2.2X18\036PG:ue=^U:up=^^PA:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\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: +d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:it#8:li#24:pa#256:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=a\177j$k"l!m#n)q+t'u&v(w%x*:\ + :ae=\036FS00:al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:\ + :..ch=\036FP%p1%2.2XFF:cl=^^FE:\ + :..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cs=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^A:\ + :r1=\036FA\036FT0:r2=\036P@1:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ta=^I:ue=^U:\ + :us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors:\ + :5i:NL:am:bw:cc:km:ms:ut:xo:\ + :Co#52:NC#53:co#80:it#8:li#24:pa#26:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:..sp=\036RG2%p1%02X:\ + :sr=^^I:ta=^I:ue=^U:up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors:\ + :5i:NL:am:bw:cc:km:ms:ut:xo:\ + :Co#52:NC#53:co#132:it#8:li#24:pa#26:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FK\036F^\036FX0083\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:\ + :r2=\036P@1\036FK\036FX0083:rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:..sp=\036RG2%p1%02X:\ + :sr=^^I:ta=^I:ue=^U:up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors:\ + :5i:NL:am:bw:cc:km:ms:ut:xo:\ + :Co#52:NC#53:co#80:it#8:li#25:pa#26:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz2:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:ll=\036FG\036PA:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:..sp=\036RG2%p1%02X:\ + :sr=^^I:ta=^I:ue=^U:up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: +d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors:\ + :5i:NL:am:bw:cc:es:hs:km:ms:ut:xo:\ + :Co#52:NC#53:co#80:it#8:li#24:pa#26:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=\036FG\036PH:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:do=^^PB:ei=:\ + :fs=\036F}01\022:ho=^^FG:i1=\022\003\036P@1:\ + :i2=\036Fz2\036F}00\036FB180000\036F}01:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:..sp=\036RG2%p1%02X:\ + :sr=^^I:ta=^I:..ts=\036F}00\036FP%p1%2.2X18\036PG:ue=^U:\ + :up=^^PA:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\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: +d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors:\ + :5i:NL:am:bw:cc:km:ms:ut:xo:\ + :Co#52:NC#53:co#80:it#8:li#24:pa#26:\ + :#2=^^Pf:#4=^^Pd:%9=^^P0:%f=^^P1:%i=^^Pc: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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:\ + :FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':\ + :Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:\ + :..Ip=\036RG0%p1%02X%p2%{256}%*%{1001}%/%02X%p3%{256}%*%{1001}%/%02X%p4%{256}%*%{1001}%/%02X%p5%{256}%*%{1001}%/%02X%p6%{256}%*%{1001}%/%02X%p7%{256}%*%{1001}%/%02X:\ + :K1=^^\\:K3=^^]:K4=^^^:K5=^^_:\ + :ac=a\177j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^^PE:..ch=\036FP%p1%2.2XFF:\ + :cl=^^FE:..cm=\036FP%p2%2.2X%p1%2.2X:cr=^M:\ + :..cs=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;:\ + :..cv=\036FPFF%p1%2.2X:dc=^^K:dl=^^FI:ei=:ho=^^FG:\ + :i1=\022\003\036P@1:i2=\036Fz0:ic=^^J:im=:\ + :is=\036FQ5\036FW\036FJ\036F^\036FX004F\036O\036FS00:\ + :k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:k7=^^w:k8=^^x:\ + :k9=^^y:k;=^^z:kC=^^PH:kE=^^PE:kd=^^PB:kh=^^PF:kl=^^PD:\ + :kr=^^PC:ku=^^PA:le=^^PD:mb=^^PI:md=^^D^T:\ + :me=\036PJ\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^^PC:\ + :nw=^J:\ + :oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00:\ + :op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D:\ + :pf=^^Fa:po=^^F`:ps=^A:r1=\036FA\036FT0:r2=\036P@1:\ + :rc=\036F}11:\ + :..sa=\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%;:\ + :sc=\036F}10:se=^^E^]:sf=^J:so=^^D^\:..sp=\036RG2%p1%02X:\ + :sr=^^I:ta=^I:ue=^U:us=^T:ve=\036FQ5:vi=\036FQ0:\ + :..wi=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X: + +# dg450 from Cornell (not official) +dg450|dg6134|data general 6134:\ + :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:nd=^X:nw=^J:\ + :se=^^E:sf=^J:so=^^D:ue=^U:up=^W:us=^T: + +# 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:" +# fixed garbled ":k9=\E[00\:z:" capability -- esr) +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[010z: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[m:\ + :mh=\E[2m:mr=\E[7m:nd=\E[C:nl=\ED:se=\E[m:sf=\E[S:so=\E[7m:\ + :sr=\E[T:ta=^I:ue=\E[05:up=\E[A:us=\E[4m: + +# 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:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#53:co#80:li#24:pa#256:\ + :%9=\233i:\ + :..AB=\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:\ + :..AF=\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:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB: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:IC=\E[%d@:K1=\233020z:K3=\233021z:\ + :K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :..Sb=\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:\ + :..Sf=\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:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\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%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode:\ + :5i:NL:am:bw:ms:ut:xo:\ + :Co#16:NC#53:co#80:li#24:pa#256:\ + :%9=\E[i:\ + :..AB=\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:\ + :..AF=\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:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB: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:IC=\E[%d@:\ + :K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:LE=\E[%dD:\ + :RI=\E[%dC:\ + :..Sb=\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:\ + :..Sf=\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:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:\ + :bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:\ + :cr=^M:dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:ic=\E[@:im=:\ + :is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:ll=\E[H\E[A:\ + :mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:mr=\E[7m:\ + :nd=\E[C:nw=^J:\ + :op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\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%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +# 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:\ + :5i:NL:am:bw:km:ms:ut:xo:\ + :Co#16:NC#16:co#80:li#24:pa#256:\ + :#2=^^^H:#4=^^^Y:%i=^^^X:\ + :..AB=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :..AF=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c:\ + :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=^^\::FV=^^;:FW=^^<:\ + :FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":Fc=^^#:Fd=^^$:Fe=^^%:\ + :Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:Fk=^^+:Fl=^^,:Fm=^^-:\ + :Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:K5=^^_:Sb=\036B%+0:\ + :Sf=\036A%+0:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:\ + :al=^^FH:as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:\ + :cl=^L:cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:\ + :do=^Z:ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :op=\036Ad\036Bd:pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:\ + :r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# DASHER D555 terminal in ANSI mode. +# Like a D411, but has an integrated phone. +d555|Data General DASHER D555:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :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: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d555-7b|Data General DASHER D555 in 7-bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :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;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[<2h:r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d555-w|Data General DASHER D555 in wide mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#126:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d555-7b-w|Data General DASHER D555 in wide 7-bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#126:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d555-dg|Data General DASHER D555 series in DG mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:do=^Z:\ + :ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# DASHER D577 terminal in ANSI mode. +# Like a D411, but acts as a keyboard for serial printers ("KSR" modes). +d577|Data General DASHER D577:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :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: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d577-7b|Data General DASHER D577 in 7-bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :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;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[<2h:r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d577-w|Data General DASHER D577 in wide mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#126:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d577-7b-w|Data General DASHER D577 in wide 7-bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#126:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:\ + :ll=\E[H\E[A:mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:\ + :mr=\E[7m:nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\Ec\E[5;1v\E[1;1;126w\E[<2h:\ + :r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :#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=^^\::FV=^^;:FW=^^<:FX=^^=:FY=^^>:FZ=^^0:Fa=^^!:Fb=^^":\ + :Fc=^^#:Fd=^^$:Fe=^^%:Ff=^^&:Fg=^^':Fh=^^(:Fi=^^):Fj=^^*:\ + :Fk=^^+:Fl=^^,:Fm=^^-:Fn=^^.:Fo=^^\s:K1=^^\\:K3=^^]:K4=^^^:\ + :K5=^^_:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\036FS00:al=^^FH:\ + :as=\036FS11:bl=^G:cd=^^FF:ce=^K:ch=\020%.\177:cl=^L:\ + :cm=\020%r%.%.:cr=^M:cv=\020\177%.:dc=^^K:dl=^^FI:do=^Z:\ + :ei=:ho=^^FG:i1=^R^C:ic=^^J:im=:\ + :is=\036FQ2\036FW\036FJ\036F^\036FX004?\036F]\036O\036FS00:\ + :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:\ + :le=^Y:ll=\036FG\027:mb=^N:md=^^D^T:\ + :me=\017\025\035\036E\036FS00:mh=^\:mr=^^D:nd=^X:nw=^J:\ + :pf=^^Fa:po=^^F`:ps=^Q:r1=^^FA:r2=\036F]\036FT0:\ + :..sa=\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%;:\ + :se=^^E^]:sf=^J:so=^^D^\:sr=^^I:ue=^U:up=^W:us=^T:\ + :ve=\036FQ2:vi=\036FQ0: + +# 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:\ + :5i:NL:am:bw:km:ms:xo:\ + :co#80:li#24:\ + :%9=\233i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:IC=\E[%d@:K1=\233020z:\ + :K3=\233021z:K4=\233022z:K5=\233023z:LE=\E[%dD:RI=\E[%dC:\ + :UP=\E[%dA:ac=j$k"l!m#n)q+t'u&v(w%x*:ae=\E)4\017:\ + :al=\E[L:as=\E)6\016:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\ + :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\ + :ho=\E[H:i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:\ + :ic=\E[@:im=:is=\E[3;2;2;1;1;1v\E(B\E)4\017: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:le=^H:ll=\E[H\E[A:mb=\E[5m:\ + :md=\E[4;7m:me=\E[m\E)4\017:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;1;1;1v\E(B\E)4:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: +d578-7b|Data General DASHER D578 in 7-bit mode:\ + :5i:NL:am:bw:ms:xo:\ + :co#80:li#24:\ + :%9=\E[i:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :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:\ + :IC=\E[%d@:K1=\E[020z:K3=\E[021z:K4=\E[022z:K5=\E[023z:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=j$k"l!m#n)q+t'u&v(w%x*:ae=^O:al=\E[L:as=^N:bl=^G:\ + :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :dc=\E[P:dl=\E[M:do=\E[B:eA=\E)6:ei=:ho=\E[H:\ + :i1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h:ic=\E[@:im=:\ + :is=\E[3;2;2;0;1;0v\E(0\017: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:le=^H:ll=\E[H\E[A:\ + :mb=\E[5m:md=\E[4;7m:me=\E[m\017:mh=\E[2m:mr=\E[7m:\ + :nd=\E[C:nw=^J:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\Ec\E[<2h:\ + :r2=\E[4;0;2;0;1;0v\E(0:\ + :..sa=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[2;7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[3;2v:vi=\E[3;0v: + +# Here are some older Dasher entries from the Berkeley termcap file. + +# 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: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 +# 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:\ + :am:bs:bw:\ + :co#80:li#24:\ + :bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:kb=^Y:\ + :kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:le=^Y:nd=^X:nw=^M^Z:\ + :se=\036E\0/>:so=5\036D:ta=^I:te=^L:ti=^L^R:ue=^U:up=^W:\ + :us=^T:ve=^L:vs=^L^R: + +# From: Wayne Throop (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=\0^^E:so=\0\0\0\0\0\036D:ta=^I:te=^L:\ + :ti=^L^R:ue=^U:up=^W:us=^T:ve=^L:vs=^L^R: + +#### 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%02;%02H: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:\ + :ms:\ + :co#132:li#24:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%02;%03H: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: + +# (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=\020\n\030\035\030\035:bl=^G:ce=^W:cl=^^^^\177:\ + :cm=\014%r%n%.%.:dc=\020\010\030\035:\ + :dl=\020\032\030\035:dm=^P:do=^J:ed=^X^]:\ + :ei=\377\377\030\035:ho=^B:ic=\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: +# (dmchat: ":MT:" changed to ":km:" -- esr) +dmchat|dmchat version of datamedia 2500:\ + :bs:km:nc:\ + :co#80:li#24:\ + :al=1*\020\n\030\035\030\035:bl=^G:ce=^W:cl=^^^^\177:\ + :cm=\014%r%n%.%.:dc=\020\010\030\035:\ + :dl=2\020\032\030\035:dm=^P:do=^J:ed=^X^]:\ + :ei=\377\377\030\035:ho=^B:ic=\020\034\030\035:im=^P:\ + :le=^H:nd=^\:pc=\377:se=^X^]:sf=^J:so=^N:up=^Z: +# (dm3025: ":MT:" changed to ":km:" -- esr) +dm3025|datamedia 3025a:\ + :bs:km:\ + :co#80:it#8:li#24:\ + :al=\EP\n\EQ:bl=^G:cd=\EJ:ce=\EK:cl=\EM:cm=\EY%r%+ %+ :\ + :cr=^M:dc=\010:dl=\EP\EA\EQ:dm=\EP:do=^J:ed=\EQ:ei=\EQ:\ + :ho=\EH:im=\EP:ip=:is=\EQ\EU\EV:le=^H:nd=\EC:se=\EO0:sf=^J:\ + :so=\EO1:ta=^I:up=\EA: +dm3045|datamedia 3045a:\ + :am:bs:eo:ul:xn:\ + :co#80:it#8:li#24:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\EM:cm=\EY%r%+ %+ :cr=^M:dc=\EB:\ + :do=^J:ei=\EP:ho=\EH:im=\EP:ip=: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:le=^H:nd=\EC:\ + :pc=\177:sf=^J:ta=^I:up=\EA: +# 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:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=%i\E[%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m:mr=\E[7m:nd=\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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +# 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:\ + :am:bs:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=20\E[0J:ce=20\E[0K:\ + :cl=50\E[H\E[2J: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=\EOy:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS: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[m:mr=\E[7m:nd=\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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=5\E[A:us=\E[4m: +# From: Adam Thompson 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:\ + :..cs=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2:\ + :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:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=%i\E[%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :do=^J:eA=\E(B\E)0:ei=\E[4l:ho=\E[H:im=\E[4h:k0=\EOy:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOu:k6=\EOv:k7=\EOw:\ + :k8=\EOx:k9=\EOy:k;=\EOx:kb=^H:kd=^J:ke=\E[?1l\E>:kl=^H:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +excel62-w|excel64-w|datamedia Excel 62 in 132 char mode:\ + :am:bs:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=20\E[0J:ce=20\E[0K:\ + :cl=50\E[H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:do=^J:eA=\E(B\E)0:ei=\E[4l:ho=\E[H:\ + :im=\E[4h:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOu:\ + :k6=\EOv:k7=\EOw:k8=\EOx:k9=\EOy:k;=\EOx:kb=^H:kd=^J:\ + :ke=\E[?1l\E>:kl=^H: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:pf=\E[4i:\ + :po=\E[5i:ps=\E[0i:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=5\E[A:us=\E[4m: +excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\ + :cm=%i\E[%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ + :do=^J:eA=\E(B\E)0:ei=\E[4l:ho=\E[H:im=\E[4h:k0=\EOy:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOu:k6=\EOv:k7=\EOw:\ + :k8=\EOx:k9=\EOy:k;=\EOx:kb=^H:kd=^J:ke=\E[?1l\E>:kl=^H:\ + :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:pf=\E[4i:po=\E[5i:ps=\E[0i:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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=\E[?5l\E[?5h: + +#### 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 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 / 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:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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=\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~W:dl=\E~R:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :i1=\E~)\E~ea:ic=\E~Q:im=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: +ts100-ctxt|falco ts-100 saving context:\ + :am:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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=\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~W:dl=\E~R:do=^J:eA=\E(B\E)0:ei=:ho=\E[H:\ + :i1=\E~)\E~ea:ic=\E~Q:im=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E~_b:ti=\E~_d\E[2J:ue=\E[m:up=\E[A:us=\E[4m: + +#### 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 1/7/83 +beacon|FCG Beacon System:\ + :am:da:db:\ + :co#80:li#32:\ + :al=\EE:bl=\ESTART\r\E37\r\EEND\r:ce=\ET:cl=\EZ:\ + :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=\EH:ic=\EQ:\ + :im=:le=^H:mb=\ESTART\r\E61,1\r\EEND\r:\ + :me=\ESTART\r\E78\r\E70,0\r\EEND\r:\ + :mr=\ESTART\r\E59,1\r\EEND\r:nd=\EV:\ + :se=\ESTART\r\E70,0\r\EEND\r:sf=^J:\ + :so=\ESTART\r\E70,6\r\EEND\r:te=:\ + :ti=\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: +# (f100: added empty to suppress a tic warning; +# made this relative to adm+sgr -- note that 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=\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=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:im=\Eq:\ + :ip=: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:me=\EG0:\ + :mk=\EG1:mr=\EG4:nd=^L:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:\ + :ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed: +f100-rv|freedom-rv|freedom 100 in reverse video:\ + :am:bs:bw:hs:mi:ms:xo:\ + :co#80:li#24:\ + :ac=:ae=\E$:al=\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=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:im=\Eq:\ + :ip=:is=\Eg\Ef\r\Eb: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:me=\EG0:\ + :mk=\EG1:mr=\EG4:nd=^L:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:\ + :ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Ed\Eb: +# 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: & from f100 -- esr) +f110|freedom110|Liberty Freedom 110:\ + :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:ct=\E3:cv=\E[%+ :\ + :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:fs=^M:ho=^^:\ + :im=\EO\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:\ + :kB=\EI:kC=^^:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:\ + :mh=\EG@:mk=\EG1:mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:\ + :so=\EG<:sr=\EJ:st=\E1:ta=^I:ts=\Ef:ue=\EG0:up=^K:us=\EG8:\ + :vb=\Eb\Ed:ve=\E.2:vi=\E.1:vs=\E.2: +f110-14|Liberty Freedom 110 14inch:\ + :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:ct=\E3:cv=\E[%+ :\ + :dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:fs=^M:ho=^^:im=\EO\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:kB=\EI:kC=^^:\ + :kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ta=^I:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:\ + :ve=\E.2:vi=\E.1:vs=\E.2: +f110-w|Liberty Freedom 110 - 132 cols:\ + :am:bs:es:hs:mi:ms:xo:\ + :co#132: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:ct=\E3:cv=\E[%+ :\ + :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:fs=^M:ho=^^:\ + :im=\EO\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:\ + :kB=\EI:kC=^^:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:\ + :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:\ + :mh=\EG@:mk=\EG1:mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:\ + :so=\EG<:sr=\EJ:st=\E1:ta=^I:ts=\Ef:ue=\EG0:up=^K:us=\EG8:\ + :vb=\Eb\Ed:ve=\E.2:vi=\E.1:vs=\E.2: +f110-14w|Liberty Freedom 110 14in/132 cols:\ + :am:bs:es:hs:mi:ms:xo:\ + :co#132: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:ct=\E3:cv=\E[%+ :\ + :dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:fs=^M:ho=^^:im=\EO\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:kB=\EI:kC=^^:\ + :kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:kh=^^:kl=^H:\ + :kr=^L:ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ta=^I:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:\ + :ve=\E.2:vi=\E.1:vs=\E.2: +# (f200: added 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:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eo\En:ve=\E.1:\ + :vi=\E.0:vs=\E.1: +f200-w|Liberty Freedom 200 - 132 cols:\ + :am:bs:es:hs:mi:ms:xo:\ + :co#132: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:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eo\En:ve=\E.1:\ + :vi=\E.0:vs=\E.1: +# 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:\ + :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=^J:kl=^H:kr=^L:\ + :ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.1:\ + :vi=\E.0:vs=\E.1: +f200vi-w|Liberty Freedom 200 - 132 cols for vi:\ + :am:bs:es:hs:mi:ms:xo:\ + :co#132: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=^J:kl=^H:kr=^L:\ + :ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\ + :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:sr=\EJ:\ + :st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.1:\ + :vi=\E.0:vs=\E.1: + +#### GraphOn (go) +# +# Graphon Corporation +# 544 Division Street +# Campbell, CA 95008 +# Vox: (408)-370-4080 +# Fax: (408)-370-5047 +# Net: troy@graphon.com (Troy Morrison) +# +#% GraphOn: 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 / 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: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:bs:\ + :co#132: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:ei=\E[4l:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E<\E=\E[?3h\E[?7h\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: +# Hacked up vt200 termcap to handle GO-225/VT220 +# From: +# (go225: I added / 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 +# +# 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. +# + +# 8675, 8686, and bee from Cyrus Rahman +# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr) +ha8675|harris 8675:\ + :am:bs:mi:\ + :co#80:li#24:\ + :F1=^W:F2=\ER:F3=\EE:F4=\EI:F5=\Ei:F6=\Eg:al=\EL:bt=\E>:\ + :cd=\EJ:ce=\EK:cl=\EE:cm=\EF%+ %+ :dc=\EP:dl=\EM:do=\EB:\ + :ei=\E@:ho=\EH:im=\EQ:\ + :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: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`: +# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation +# in :is: -- esr) +ha8686|harris 8686:\ + :am:bs:mi:\ + :co#80:li#24:\ + :F1=\EW:F2=\002\E{\003:F3=\002\E|\003:F4=\002\E}\003:\ + :F5=\002\E~\003:F6=\002\E\177\003:al=\EL:bt=\E>:cd=\EJ:\ + :ce=\EK:cl=\EE:cm=\EF%+ %+ :dc=\EP:dl=\EM:do=\EB:ei=\E@:\ + :ho=\EH:im=\EQ:\ + :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:\ + :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`: + +#### 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 . +# + +# 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=\s:sf=^J: +# From: 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 . 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=~\032:bl=^G:cd=~\030:ce=~^O:cl=~^\:\ + :cm=~\021%r%>^^ %+`%+`:cr=^M:dl=~\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=~\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:\ + :co#80:it#8:li#24:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\EG:al=\EE:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :cr=^M:dl=\EO:do=^J:ho=\EH:k1=\EP:k2=\EQ:\ + :k3=\ER:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:l1=blue:l2=red:\ + :l3=green:le=\ED:nd=\EC:nw=^M^J:sf=^J:sr=\EI:ta=^I:up=\EA: +hz1552-rv|hazeltine 1552 reverse video:\ + :bs:\ + :co#80:it#8:li#24:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\EG:al=\EE:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :cr=^M:dl=\EO:do=^J:ho=\EH:k1=\EP:k2=\EQ:\ + :k3=\ER:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:l1=blue:l2=red:\ + :l3=green:le=\ED:nd=\EC:nw=^M^J:se=\ET:sf=^J:so=\ES:sr=\EI:\ + :ta=^I:up=\EA: +# 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=~\032:bl=^G:cl=~\034:cm=~\021%r%.%.:dl=~\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: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: +# Hazeltine Modular-1 from Cliff Shackelton 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 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: + +#### 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) +# +#% Hewlett-Packard: rich_kassis@hp5200.desk.hp.com (Rich Kassis) +# +# 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=\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:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#16:lm#0:vt#6:\ + :al=\EL:bl=^G: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=\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: + +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:\ + :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=\EP:ip=: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:\ + :..sa=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c:\ + :se=\E&d@:sf=\ES:so=\E&dB:ta=\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:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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=\Ei:kF=\ES:kH=\EF:kR=\ET:kb=^H:kd=\EB:kh=\Eh:kl=\ED:\ + :kr=\EC:ku=\EA:le=^H:me=\E&d@:nd=\EC:se=\E&d@:sf=^J:\ + :so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# 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:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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=\Ei:kb=^H:ke=\E&jA:ks=\E&jB:le=^H:me=\E&d@:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:\ + :us=\E&dD: +hp2621-fl|hp 2621:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:is=\E&j@\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=\Ei:kb=^H:ke=\E&j@:ks=\E&jB:le=^H:me=\E&d@:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p +hp2621p|hp 2621 with printer:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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=\Ei:kb=^H:ke=\E&jA:ks=\E&jB:le=^H:me=\E&d@:nd=\EC:\ + :pf=\E&p13C:po=\E&p11C:se=\E&d@:sf=^J:so=\E&dD:st=\E1:\ + :ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +hp2621p-a|hp2621p with fn as arrows:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:is=\E&jA\r:kB=\Ei:kF=\Er\r:\ + :kH=\Eq\r:kR=\Es\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:me=\E&d@:nd=\EC:\ + :pf=\E&p13C:po=\E&p11C:se=\E&d@:sf=^J:so=\E&dD:st=\E1:\ + :ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# hp2621 with k45 keyboard +hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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=\Ei: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&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# 2621 using all 48 lines of memory, only 24 visible at any time. +hp2621-48|48 line 2621:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#48:lm#0: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%dR:cr=^M:ct=\E3:cv=\E&a%dR:dc=\EP:dl=\EM:\ + :do=^J:ei=\ER:ho=\EH:im=\EQ:ip=: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=\Ei:kb=^H:ke=\E&jA:ks=\E&jB:le=^H:me=\E&d@:\ + :nd=\EC:se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# 2621 with no labels ever. Also prevents vi delays on escape. +hp2621-nl|hp 2621 with no labels:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:is=\E&j@\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=\Ei:kb=^H:le=^H:me=\E&d@:nd=\EC:se=\E&d@:sf=^J:so=\E&dD:\ + :st=\E1:ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# Needed for UCB ARPAVAX console, since lsi-11 expands tabs +# (wrong). +# +hp2621-nt|hp 2621 w/no tabs:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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=\Ei:kb=^H:ke=\E&jA:ks=\E&jB:le=^H:me=\E&d@:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ue=\E&d@:up=\EA:us=\E&dD: + +# 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:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#96:lw#8:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :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:l0=f1:\ + :l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:\ + :ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:\ + :mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD:vb=\E&w13F\E&w12F\E&w13F\E&w12F: + +# 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:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:\ + :l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:\ + :mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:\ + :mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# 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:\ + :am:bw:da:db:es:hs:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#23:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:\ + :fs=\E&d@\E&w7f2p1I\E&w4f1I:ho=\E&a0y0C:\ + :i1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r:\ + :im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:\ + :l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:\ + :ts=\E&w7f2p2I\E&w4f2I\r\EK\E&a%dC:ue=\E&d@:up=\EA:\ + :us=\E&dD: +# Force terminal back to 24 lines after being 23. +hp2626-ns|hp 2626 using all 24 lines:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r:\ + :im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:\ + :l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: +# Various entries useful for small windows on 2626. +hp2626-12|hewlett-packard 2626 12 lines:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#12:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:\ + :l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:\ + :mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:\ + :mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: +hp2626-12x40|hewlett-packard 2626 12 lines 40 columns:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#40:lh#2:li#12:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:\ + :l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:\ + :mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:\ + :mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: +hp2626-x40|hewlett-packard 2626 40 columns:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#40:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:\ + :l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:\ + :mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:\ + :mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: +hp2626-12-s|hewlett-packard 2626 11 lines plus status:\ + :am:bw:da:db:es:hs:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#11:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:SF=\E&r%dD:SR=\E&r%dU:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\ED\EJ\EC:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:\ + :fs=\E&d@\E&w7f2p1I\E&w4f1I:ho=\E&a0y0C:\ + :i1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r:\ + :im=\EQ:ip=:is=\E&j@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:\ + :l6=f7:l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:\ + :ts=\E&w7f2p2I\E&w4f2I\r\EK\E&a%dC:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# +# hp2627 color tubes from University of Wisconsin +# +hp2627a-rev|hp 2627 with reverse video colors:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:\ + :is=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\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=\Ei:kb=^H:kd=^J:kl=^H:le=^H:me=\E&d@:\ + :nd=\EC:nw=^M^J:se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=^I:\ + :ue=\E&v0S\E&d@:up=\EA:us=\E&dD\E&v1S: +hp2627a|hp 2627 color terminal with no labels:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:\ + :is=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\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=\Ei:kb=^H:kd=^J:kl=^H:le=^H:me=\E&d@:\ + :nd=\EC:nw=^M^J:se=\E&v0S:sf=^J:so=\E&v2S:st=\E1:ta=^I:\ + :ue=\E&v0S\E&d@:up=\EA:us=\E&dD\E&v1S: +hp2627c|hp 2627 color (cyan) terminal with no labels:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:\ + :is=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\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=\Ei:kb=^H:kd=^J:kl=^H:le=^H:me=\E&d@:\ + :nd=\EC:nw=^M^J:se=\E&v0S:sf=^J:so=\E&v2S:st=\E1:ta=^I:\ + :ue=\E&v0S\E&d@:up=\EA:us=\E&dD\E&v1S: + +# hp2640a doesn't have the Y cursor addressing feature, and C is +# memory relative instead of screen relative, as we need. +# +hp2640a|hp 2640a:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#24:lm#0:pb#9600:vt#6:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:cr=\r:\ + :ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:im=\EQ:kA=\EL:\ + :kB=\Ei:kD=\EP:kE=\EK:kF=\ES:kI=\EQ:kL=\EM:kM=\ER:kN=\EU:\ + :kP=\EV:kR=\ET:kS=\EJ:kT=\E1:kb=^H:kd=\EB:kh=\Eh:kl=\ED:\ + :kr=\EC:kt=\E2:ku=\EA:le=^H:mb=\E&dA:me=\E&d@:mh=\E&dH:\ + :mr=\E&dB:nd=\EC:\ + :..sa=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +hp2640b|hp2644a|hp 264x series:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#24:lm#0:pb#9600:vt#6:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%r%dc%dY:cr=\r:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:kA=\EL:kB=\Ei:kD=\EP:kE=\EK:kF=\ES:\ + :kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:\ + :kb=^H:kd=\EB:kh=\Eh:kl=\ED:kr=\EC:kt=\E2:ku=\EA:le=^H:\ + :mb=\E&dA:me=\E&d@:mh=\E&dH:mr=\E&dB:nd=\EC:\ + :..sa=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# (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:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#24:lm#0:pb#9600:vt#6:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%r%dc%dY:cr=\r:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:kA=\EL:kB=\Ei:kD=\EP:kE=\EK:kF=\ES:\ + :kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:\ + :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:me=\E&d@:mh=\E&dH:mr=\E&dB:\ + :nd=\EC:\ + :..sa=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: +# You should use this terminal at 4800 baud or less. +hp2648|hp2648a|HP 2648a graphics terminal:\ + :am:bs:da:db:mi:pt:xs:\ + :co#80:li#24:lm#0:pb#9600:vt#6:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%r%dc%dY:cr=\r:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:kA=\EL:kB=\Ei:kD=\EP:kE=\EK:kF=\ES:\ + :kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:\ + :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:me=\E&d@:mh=\E&dH:mr=\E&dB:\ + :nd=\EC:\ + :..sa=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c:\ + :se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# 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:\ + :am:bs:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :is=\E&dj@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# 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:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#1:li#24:lm#48:lw#8:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:\ + :ch=\E&a%dC:cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\ + :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:\ + :k6=\Eu:k7=\Ev:k8=\Ew: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:me=\E&d@:\ + :mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +hp2621-a|hp2621a-a|hp2621 with fn as arrows:\ + :am:bs:da:db:mi:pt:xo:\ + :co#80:li#24:lm#0: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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=:is=\E&j@\r:kB=\Ei:kF=\Er\r:\ + :kH=\Eq\r:kR=\Es\r:kb=^H:kd=\Ew\r:ke=\E&j@:kh=\Ep\r:\ + :kl=\Eu\r:kr=\Ev\r:ks=\E&jB:ku=\Et\r:le=^H:me=\E&d@:nd=\EC:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# newer hewlett packard terminals + +newhpkeyboard|generic entry for HP extended keyboard:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :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: + +newhp|generic entry for new hewlett packard terminals:\ + :am:bw:mi:xo:xs:\ + :co#80:li#24:pb#4800:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:cr=^M:ct=\E3:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:i1=\E&jB:im=\EQ:ip=:k1=\Ep:\ + :k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew: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:le=^H:mb=\E&dA:\ + :md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:\ + :nw=^M^J:..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +memhp|memory relative addressing for new HP ttys:\ + :am:bw:mi:xo:xs:\ + :co#80:li#24:pb#4800:vt#6:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:RI=\E&a+%dC:\ + :UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\EH\EJ:cm=\E&a%dr%dC:cr=^M:ct=\E3:cv=\E&a%dR:dc=\EP:\ + :dl=\EM:do=^J:ei=\ER:ho=\EH:i1=\E&jB:im=\EQ:ip=:k1=\Ep:\ + :k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew: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:le=^H:ll=\E&a23R\r:\ + :mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:mk=\E&dS:\ + :mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +scrhp|screen relative addressing for new HP ttys:\ + :am:bw:mi:xo:xs:\ + :co#80:li#24:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:RI=\E&a+%dC:\ + :UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :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:le=^H:\ + :ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:\ + :mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# (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:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s: + +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:\ + :am:bs:da:db:mi:pt:xo:\ + :Nl#8:co#80:lh#1:li#24:lm#48:lw#8:pb#19200:vt#6:\ + :LO=\E&jB: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=\EP:\ + :dl=\EM:do=^J:ei=\ER:im=\EQ:ip=: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=\Ei:kF=\ET:kH=\EF:kR=\ES:kb=^H:kd=\EB:ke=\E&jA:\ + :kh=\Eh:kl=\ED:kr=\EC:ks=\E&jB:ku=\EA:le=^H:me=\E&d@:nd=\EC:\ + :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +hp2621b-p|hp 2621b with printer:\ + :am:bs:da:db:mi:pt:xo:\ + :Nl#8:co#80:lh#1:li#24:lm#48:lw#8:pb#19200:vt#6:\ + :LO=\E&jB: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=\EP:\ + :dl=\EM:do=^J:ei=\ER:ff=\E&p4u0C:im=\EQ:ip=: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=\Ei:kF=\ET:kH=\EF:kR=\ES:kb=^H:kd=\EB:\ + :ke=\E&jA:kh=\Eh:kl=\ED:kr=\EC:ks=\E&jB:ku=\EA:le=^H:\ + :me=\E&d@:nd=\EC:pf=\E&p13C:\ + :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r:\ + :po=\E&p11C:ps=\EH\E&p4dF:se=\E&d@:sf=^J:so=\E&dD:st=\E1:\ + :ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# 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:\ + :am:bs:da:db:mi:pt:xo:\ + :Nl#8:co#80:lh#1:li#24:lm#48:lw#8:pb#19200:vt#6:\ + :LO=\E&jB: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=\EP:\ + :dl=\EM:do=^J:ei=\ER:im=\EQ:ip=:is=\E&jA\r:k1=\Ep:k2=\Eq:\ + :k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew: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:le=^H:me=\E&d@:nd=\EC:\ + :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r:\ + :se=\E&d@:sf=^J:so=\E&dD:st=\E1:ta=\011:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +hp2621b-kx-p|hp 2621b with new keyboard & printer:\ + :am:bs:da:db:mi:pt:xo:\ + :Nl#8:co#80:lh#1:li#24:lm#48:lw#8:pb#19200:vt#6:\ + :LO=\E&jB: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=\EP:\ + :dl=\EM:do=^J:ei=\ER:ff=\E&p4u0C:im=\EQ:ip=:is=\E&jA\r:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :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:le=^H:\ + :me=\E&d@:nd=\EC:pf=\E&p13C:\ + :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r:\ + :po=\E&p11C:ps=\EH\E&p4dF:se=\E&d@:sf=^J:so=\E&dD:st=\E1:\ + :ta=\011:ue=\E&d@:up=\EA:us=\E&dD: + +# 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:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :is=\E&dj@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +# The 2623 is a 2622 with extra graphics hardware. +hp2623|hp2623a|hp 2623:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:pb#19200:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :is=\E&dj@\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: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD: + +hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#96:lw#8:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ff=\E&p4u0C:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:\ + :k6=\Eu:k7=\Ev:k8=\Ew: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :pf=\E&p13C:..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :po=\E&p11C:ps=\EH\E&p4dF:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD:vb=\E&w13F\E&w12F\E&w13F\E&w12F: + +# 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:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#240:lw#8:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\E&a0y0C:i1=\E&jB:im=\EQ:ip=:\ + :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\ + :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:l0=f1:\ + :l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:\ + :ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:\ + :mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD:vb=\E&w13F\E&w12F\E&w13F\E&w12F: + +hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer:\ + :am:bw:da:db:mi:xo:xs:\ + :Nl#8:co#80:lh#2:li#24:lm#240:lw#8:pb#4800:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:\ + :RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\E&a0c0Y\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:cv=\E&a%dY:\ + :dc=\EP:dl=\EM:do=^J:ei=\ER:ff=\E&p4u0C:ho=\E&a0y0C:\ + :i1=\E&jB:im=\EQ:ip=:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:\ + :k6=\Eu:k7=\Ev:k8=\Ew: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\ + :l7=f8:le=^H:ll=\E&a0y0C\EA:mb=\E&dA:md=\E&dF:\ + :me=\E&d@\017:mh=\E&dH:mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :pf=\E&p13C:..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :po=\E&p11C:ps=\EH\E&p4dF:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:ue=\E&d@:\ + :up=\EA:us=\E&dD:vb=\E&w13F\E&w12F\E&w13F\E&w12F: + +# Color manipulations for HP terminals +hp+color|hp with colors:\ + :cc:\ + :Co#16:NC#17:pa#7:\ + :..Ip=\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:sp=\E&v%dS: + +# :is: sets the screen to be 80 columns wide +hp2397a|hp2397|hewlett packard 2397A color terminal:\ + :am:bw:cc:mi:xo:xs:\ + :Co#16:NC#17:Nl#8:co#80:lh#2:li#24:lw#8:pa#7:pb#4800:vt#6:\ + :CM=\E&a%dr%dC:DO=\E&a+%dR:\ + :..Ip=\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:\ + :LE=\E&a-%dC:LF=\E&j@:LO=\E&jB:RI=\E&a+%dC:UP=\E&a-%dR:\ + :ac=T1R!U2S"W3O#V4P$t5u6w7v8\:'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\:4>q,x.n/:\ + :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\ + :cl=\EH\EJ:cm=\E&a%dr%dC:cr=^M:ct=\E3:cv=\E&a%dR:dc=\EP:\ + :dl=\EM:do=^J:ei=\ER:ho=\EH:i1=\E&jB:im=\EQ:ip=:\ + :is=\E&w6f80X:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:\ + :k7=\Ev:k8=\Ew: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:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:le=^H:\ + :ll=\E&a23R\r:mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:\ + :mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\ + :oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I:\ + :op=\E&v0S:..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\ + :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\ + :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\ + :..sa=\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%;:\ + :se=\E&d@:sf=^J:so=\E&dJ:sp=\E&v%dS:sr=\ET:st=\E1:ta=\011:\ + :ue=\E&d@:up=\EA:us=\E&dD: + +# +# (hp2392: copied :ei: here from hpex -- esr) +hp2392|239x series:\ + :am:da:db:mi:xo:xs:\ + :co#80:li#24:\ + :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%dy%dC:cr=^M:cv=\E&a%dY:dc=\EP:dl=\EM:do=\EB:\ + :ei=\ER:if=/usr/share/tabset/stdcrt:im=\EQ:\ + :is=\E&s1A\E<\E&k0\\: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: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: + +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:\ + :am:da:db:mi:xo:xs:\ + :li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\ + :cm=\E&a%dy%dC:cr=^M:cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:\ + :if=/usr/share/tabset/stdcrt:im=\EQ:\ + :is=\E&s1A\E<\E&k0\\:kb=^H:kd=^J:ke=\E&s0A:kh=\Eh:kl=^H:\ + :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: + +# From: Ville Sulko , 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@:\ + :ml=\El:mu=\Em:nd=\EC:..pk=\E&f%p1%dk%p2%l%dL%p2%s:\ + :..pl=\E&f1a%p1%dk%p2%l%dL%p2%s:\ + :..pn=\E&f%p1%dk%p2%l%dd0L%p2%s:\ + :..px=\E&f2a%p1%dk%p2%l%dL%p2%s:\ + :..sa=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;:\ + :se=\E&d@:sf=^J:so=\E&dB:st=\E1:ta=^I:ue=\E&d@:up=\EA:\ + :us=\E&dD: + +# HP 236 console +# From: +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 +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 +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:ei=\ER:if=/usr/share/tabset/std:im=\EQ:\ + :nd=\EC:se=\E&d@:so=\E&dB:up=\EA: +# From: Charles A. Finnell of MITRE , developed 07SEP90 +# (hp98550: replaced /usr/share/tabset/9837 with std because :it#8:,:st=\E1:; +# added empty 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: + +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:\ + :bw:km:mi:ul:\ + :co#128:it#8:li#94:\ + :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|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:\ + :bs:\ + :co#128:it#8:li#47:\ + :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: +gator-52t|HP 9000 model 237 emulating extra-tall VT52:\ + :bs:\ + :co#128:it#8:li#94:\ + :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: + +#### Honeywell-Bull +# +# From: Michael Haardt 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:\ + :co#80:li#25:sg#1:ug#1:\ + :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:mb=\E[5m:md=\E[7m:\ + :me=\E[m:mh=\E[2m:mr=\E[7m:nd=^X:nw=^M^J:se=\E[m:sf=^J:\ + :so=\E[7m:ta=^I:ue=\E[m:up=^Z:us=\E[4m:vb=\E[2h\E[2l: + +#### IBM +# + +ibm327x|line mode IBM 3270 style:\ + :gn:\ + :ce=^M:cl=^M^J:ho=^M: + +# Beware! The 3101 entry IBM shipped with AIX 3 is *wrong*. Losers... +# From: J.B. Nicholson-Owens 8 Mar 94 +# (ibm3101: :if=/usr/share/tabset/ibm3101: removed, no such file -- esr) +# Some versions of this that have :ct=\EH:; they may ort may not be broken. +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=\E1:do=^J:\ + :ho=\EH:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\ + :nw=^M^J:sf=^J:st=\E0:ta=^I:up=\EA: +ibm3151|IBM 3151 display:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :@7=\E2: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=l\354q\361k\353x\370j\352m\355w\367u\365v\366t\364n\356:\ + :ae=\E>B:as=\E>A:bl=^G:cd=\EJ:ce=\EI:cl=\EH\EJ:\ + :cm=\EY%+ %+ :cr=^M:dc=\EQ:dl=\EO:do=\EB:ho=\EH:is=\E S:\ + :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:kN=\EI:kP=\EL:\ + :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>B:mk=\E4P:\ + :mr=\E4A:nd=\EC:pf=^P^T:po=^P^R:rs=\E S:s0=\E>B:\ + :..sa=\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%;:\ + :se=\E4@:sf=^J:so=\E4A:te=\E>B:ti=\E>B:ue=\E4@:up=\EA:\ + :us=\E4B: +# From: Mark Easter 29 Oct 1992 +# I've commented out or translated some IBM extensions. +# , :kN:, :kP:, , merged in from AIX 3.2.5 +ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :@7=\E2: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=l\354q\361k\353x\370j\352m\355w\367u\365v\366t\364n\356:\ + :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:\ + :kN=\EI:kP=\EL: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:\ + :..sa=\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<@%;:\ + :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:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :@7=\E2: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=l\354q\361k\353x\370j\352m\355w\367u\365v\366t\364n\356:\ + :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:\ + :kN=\EI:kP=\EL: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:\ + :s0=\E>B:s1=\E>A:\ + :..sa=\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<@%;:\ + :se=\E4@:sf=^J:so=\E4A:te=\E>B:ti=\E>B:ue=\E4@:up=\EA:\ + :us=\E4B: +ibm3162|IBM 3162 display:\ + :am:bs:mi:ms:\ + :co#80:it#8:li#24:\ + :@7=\E2: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=l\354q\361k\353x\370j\352m\355w\367u\365v\366t\364n\356:\ + :al=\EN: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:kN=\EI:kP=\EL:kS=\EJ:kT=\E0:ka=\E 1:kb=^H:kd=\EB:\ + :kh=\EH:kl=\ED:kr=\EC:kt=\E1:ku=\EA:le=\ED:mb=\E4$a:\ + :md=\E4(a:me=\E4@:mk=\E40a:mr=\E4!a:nd=\EC:pf=^P^T:po=^P^R:\ + :s0=\E>B:s1=\E>A:\ + :..sa=\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<@%;:\ + :se=\E4>b:sf=^J:so=\E4!a:te=\E>B:ti=\E>B:ue=\E4=b:up=\EA:\ + :us=\E4"a: + +# How the 3164 sgr string works: +# %{32} # push space for no special video characteristics +# %?%p2%t%{1}%|%; # if p2 set, then OR the 1 bit for reverse +# %?%p3%t%{4}%|%; # if p3 set, then OR the 4 bit for blink +# %?%p4%t%{2}%|%; # if p4 set, then OR the 2 bit for underline +# %c # pop Pa1 +# %{39}%p1%- # calculate 32 + (7 - p1) for foreground +# %c # pop Pa2 +# %{64} # use only black background for now +# %c # pop Pa3 +# (ibm3164: merged :ms:,,,, from AIX 3.2.5 -- esr) +ibm3164|i3164|IBM 3164:\ + :am:bs:mi:ms:\ + :Co#8:co#80:it#8:li#24:pa#64:\ + :@7=\E2: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:Sb=\E4 %+@:\ + :..Sf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@:\ + :ac=l\354q\361k\353x\370j\352m\355w\367u\365v\366t\364n\356:\ + :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:\ + :kN=\EI:kP=\EL: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@:\ + :mk=\E4P:mr=\E4A:nd=\EC:pf=^P^T:po=^P^R:\ + :..sa=\E4%{32}%?%p2%t%{1}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%c%{39}%p1%-%c%{64}%c:\ + :se=\E4@:sf=^J:so=\E4A:te=\E>A:ti=\E>A:ue=\E4@:up=\EA:\ + :us=\E4B: + +# From: +# (ibm5081: merged acsc, s0ds, s1ds, sgr0 into ibm5081 from AIX 3.2.5. -- esr) +ibm5081|ibmmpel|IBM 5081 1024x1024 256/4096 Megapel color display:\ + :am:bs:es:hs:xo:\ + :co#80:li#33:\ + :ac=jjkkllmmnnqqttuuvvwwxx:al=\EL:bl=^G:cd=\EJ:ce=\EI:\ + :cl=\EK:cm=\EY%+ %+ :cr=^M:ct=\E1:dl=\EM:do=^J:\ + :ds=\Ej\EYA \EI\Ek:fs=\Ek:ho=\EH:k0=\E<:k1=\ES:k2=\ET:\ + :k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:k9=\EY:kF=\EE:\ + :kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=\EB:kh=\EH:kl=\ED:\ + :kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:me=\E[0m\E(B:\ + :mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:s0=\E(B:s1=\E(0:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EYA%+ \Eo:ue=\Ew:up=\EA:us=\EW: +ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display:\ + :am:bs:es:hs:xo:\ + :co#80:li#33:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EYA \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\EB:sf=^J:so=\EF\Ef3;:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EYA%+ \Eo:ue=\EB:up=\EA:us=\EF\Ef2;: +ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q: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:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:rc=\E[u:rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm5154|IBM 5154 Color display:\ + :am:bw:ms:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[146q:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:\ + :F5=\E[015q:F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:\ + :FA=\E[020q:FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:\ + :FF=\E[025q:FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:\ + :FK=\E[030q:FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:\ + :FP=\E[035q:FQ=\E[036q:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:mb=\E[5m:me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:\ + :rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm6153|IBM 6153 Black & White display:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:md=\E[12m:me=\E[0;10m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :rc=\E[u:rs=\Ec:s0=\E[10m:s1=\E[11m:s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm6153-90|IBM 6153 Black & White display:\ + :am:bw:ms:xo:\ + :co#90:it#8:li#36:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm6153-40|IBM 6153 Black & White display:\ + :am:bw:ms:xo:\ + :co#40:it#8:li#12:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm6154|IBM 6154 Color displays:\ + :am:bw:ms:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[146q:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:\ + :F5=\E[015q:F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:\ + :FA=\E[020q:FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:\ + :FF=\E[025q:FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:\ + :FK=\E[030q:FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:\ + :FP=\E[035q:FQ=\E[036q:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:md=\E[12m:me=\E[0;10m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :rc=\E[u:rs=\Ec:s0=\E[10m:s1=\E[11m:s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm6155|IBM 6155 Black & White display:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\ + :le=^H:me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display:\ + :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: +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[2J: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: +ibm8514|IBM 8514 color display:\ + :am:bs:es:hs:xo:\ + :co#80:li#41:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EYI \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=^J:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EYI%+ \Eo:ue=\Ew:up=\EA:us=\EW: +ibm8514-c|IBM 8514 color display with standout and underline:\ + :am:bs:es:hs:xo:\ + :co#80:li#41:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EYI \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=^J:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\EB:sf=^J:so=\EF\Ef3;:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EYI%+ \Eo:ue=\EB:up=\EA:us=\EF\Ef2;: + +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:\ + :am:bs:xn:\ + :co#80:it#8:li#25:\ + :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=^_: +# (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:\ + :am:bs:es:hs:xo:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY8 \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY8%+ \Eo:ue=\Ew:up=\EA:us=\EW: +ibmega|IBM Enhanced Color Display:\ + :am:bs:es:hs:xo:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY8 \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=^J:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY8%+ \Eo:ue=\Ew:up=\EA:us=\EW: +ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline:\ + :am:bs:es:hs:xo:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY8 \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\EB:sf=^J:so=\EF\Ef3;:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY8%+ \Eo:ue=\EB:up=\EA:us=\EF\Ef2;: +ibmvga-c|IBM VGA display color termcap:\ + :am:bs:es:hs:xo:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY8 \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=^J:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\EB:sf=^J:so=\EF\Ef3;:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY8%+ \Eo:ue=\EB:up=\EA:us=\EF\Ef2;: +ibmvga|IBM VGA display:\ + :am:bs:es:hs:xo:\ + :co#80:li#24:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY8 \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:kd=^J:\ + :kh=\EH:kl=^H:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY8%+ \Eo:ue=\Ew:up=\EA:us=\EW: +# ibmapa* and ibmmono entries come from ACIS 4.3 distribution +rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display:\ + :am:bs:es:hs:xo:\ + :co#80:li#32:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY@ \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY@%+ \Eo:ue=\Ew:up=\EA:us=\EW: +# Advanced Monochrome (6153) and Color (6154) Graphics Display: +ibmapa8c|ibmapa8|IBM 6153/4 Advanced Graphics Display:\ + :am:bs:es:hs:xo:\ + :co#80:li#31:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY? \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mk=\EF\Ef0;\Eb0;:mr=\Ep:nd=\EC:nw=^M^J:\ + :se=\Ez:sf=^J:so=\EZ:sr=\EA:st=\E0:ta=^I:\ + :..ts=\Ej\EY?%+ \Eo:ue=\Ew:up=\EA:us=\EW: +ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display:\ + :am:bs:es:hs:xo:\ + :co#80:li#31:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\ + :ct=\E1:dl=\EM:do=^J:ds=\Ej\EY? \EI\Ek:fs=\Ek:ho=\EH:\ + :k0=\E<:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\ + :k8=\ER:k9=\EY:kF=\EE:kI=\0:kN=\EE:kP=\Eg:kR=\EG:kb=^H:\ + :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=f10:le=^H:md=\EZ:\ + :me=\Ew\Eq\Ez\EB:mh=\EF\Ef7;:mk=\EF\Ef0;\Eb0;:mr=\Ep:\ + :nd=\EC:nw=^M^J:se=\EB:sf=^J:so=\EF\Ef3;:sr=\EA:st=\E0:\ + :ta=^I:..ts=\Ej\EY?%+ \Eo:ue=\EB:up=\EA:us=\EF\Ef2;: +hft-c-old|HFT with Color PC850:\ + :am:bw:ms:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[146q:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:\ + :F5=\E[015q:F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:\ + :FA=\E[020q:FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:\ + :FF=\E[025q:FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:\ + :FK=\E[030q:FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:\ + :FP=\E[035q:FQ=\E[036q:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :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: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:k;=\E[010q:kA=\E[140q:\ + :kB=\E[Z:kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:\ + :kI=\E[139q:kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:\ + :kS=\E[148q: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:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:rc=\E[u:rs=\Ec:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[m:up=\E[A:\ + :us=\E[4m: +# From: Marc Pawliger +# also in /usr/lpp/bos/bsdsysadmin. +# (hft-c: this entry had :kb=\E[D:kf=\E[C: on the line with ku/kd/kh; this was +# pretty obviously mislabeled for :le: and :nd:; also ":ul=\E[4m:" was clearly +# a typo for ":us=\E[4m:"; also ":el=\E[K:" was a typo for ":ce=\E[K:". +# I also added / based on the terminal reset string. +# There was an unknown boolean ":ht:" which I assume was meant to set hardware +# tabs, so I have inserted it#8. Finally, :ac=^N: paired with the :ae: looked +# like a typo for :as=^N:; finally, added empty to quiet tic -- esr) +hft-c|IBM High Function 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: +hft|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[2J:\ + :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: +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. +lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device:\ + :am:bw:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:\ + :F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:\ + :FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:\ + :FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:\ + :FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:\ + :FQ=\E[036q:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:bt=\E[Z:cd=\E[2J:ce=\E[0K:\ + :ch=\E[%i%dG: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:\ + :k;=\E[010q:kA=\E[140q:kB=\E[Z:kC=\E[144q:kD=\E[P:\ + :kE=\E[142q:kF=\E[151q:kI=\E[139q:kM=\E[4l:kN=\E[154q:\ + :kP=\E[150q:kR=\E[155q:kS=\E[148q: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:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:rs=\Ec:\ + :..sa=\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%;:\ + :se=\E[0m:sf=\ED:so=\E[7m:sr=\EL:ue=\E[0m:up=\E[A:us=\E[4m: + +# +# AIX entries. IBM ships these with AIX 3.2.5. +# AIX extension caps are commented out, +# except for box1 which has been translated to an string. +# +aixterm|IBM Aixterm Terminal Eemulator:\ + :am:bw:es:hs:ms:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[146q:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:\ + :F5=\E[015q:F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:\ + :FA=\E[020q:FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:\ + :FF=\E[025q:FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:\ + :FK=\E[030q:FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:\ + :FP=\E[035q:FQ=\E[036q:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\ + :SR=\E[%dT:UP=\E[%dA:ac=jjkkllmmnnqqttuuvvwwxx:al=\E[L:\ + :bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ds=\E[?E:\ + :ec=\E[%dX:ei=\E[4l:fs=\E[?F:ho=\E[H:im=\E[4h:is=\Ec:\ + :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:\ + :k;=\E[010q:kA=\E[140q:kB=\E[Z:kC=\E[144q:kD=\E[P:\ + :kE=\E[142q:kF=\E[151q:kI=\E[139q:kM=\E[4l:kN=\E[154q:\ + :kP=\E[150q:kR=\E[155q:kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[0;10m\E(B:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:s0=\E(B:s1=\E(0:\ + :s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:ts=\E[?%dT:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aixterm-m|IBM AIXterm Monochrome Terminal Emulator:\ + :am:bw:es:hs:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=jjkkllmmnnqqttuuvvwwxx:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :ch=\E[%i%dG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:\ + :dl=\E[M:do=^J:ds=\E[?E:ec=\E[%dX:ei=\E[4l:fs=\E[?F:\ + :ho=\E[H:im=\E[4h:is=\Ec: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:k;=\E[010q:kA=\E[140q:kB=\E[Z:\ + :kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:kI=\E[139q:\ + :kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:kS=\E[148q:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :md=\E[1m:me=\E[0;10m\E(B:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :rc=\E[u:rs=\Ec:s0=\E(B:s1=\E(0:s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:ts=\E[?%dT:ue=\E[m:\ + :up=\E[A:us=\E[4m: +aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator:\ + :am:bw:es:hs:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ds=\E[?E:\ + :ec=\E[%dX:ei=\E[4l:fs=\E[?F:ho=\E[H:im=\E[4h:is=\Ec:\ + :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:\ + :k;=\E[010q:kA=\E[140q:kB=\E[Z:kC=\E[144q:kD=\E[P:\ + :kE=\E[142q:kF=\E[151q:kI=\E[139q:kM=\E[4l:kN=\E[154q:\ + :kP=\E[150q:kR=\E[155q:kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[0;10m:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:s0=\E[10m:\ + :s1=\E[11m:s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:ts=\E[?%dT:ue=\E[m:\ + :up=\E[A:us=\E[4m: +jaixterm|IBM Kanji Aixterm Terminal Eemulator:\ + :am:bw:es:hs:ms:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :@7=\E[146q:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DL=\E[%dM:\ + :DO=\E[%dB:F1=\E[011q:F2=\E[012q:F3=\E[013q:F4=\E[014q:\ + :F5=\E[015q:F6=\E[016q:F7=\E[017q:F8=\E[018q:F9=\E[019q:\ + :FA=\E[020q:FB=\E[021q:FC=\E[022q:FD=\E[023q:FE=\E[024q:\ + :FF=\E[025q:FG=\E[026q:FH=\E[027q:FI=\E[028q:FJ=\E[029q:\ + :FK=\E[030q:FL=\E[031q:FM=\E[032q:FN=\E[033q:FO=\E[034q:\ + :FP=\E[035q:FQ=\E[036q: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:\ + :ch=\E[%i%dG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:\ + :dl=\E[M:do=^J:ds=\E[?E:ec=\E[%dX:ei=\E[4l:fs=\E[?F:\ + :ho=\E[H:im=\E[4h:is=\Ec: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:k;=\E[010q:kA=\E[140q:kB=\E[Z:\ + :kC=\E[144q:kD=\E[P:kE=\E[142q:kF=\E[151q:kI=\E[139q:\ + :kM=\E[4l:kN=\E[154q:kP=\E[150q:kR=\E[155q:kS=\E[148q:\ + :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\ + :md=\E[1m:me=\E[0;10m\E(B:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :rc=\E[u:rs=\Ec:s0=\E(B:s1=\E(0:s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:ts=\E[?%dT:ue=\E[m:\ + :up=\E[A:us=\E[4m: +jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator:\ + :am:bw:es:hs:ms:xo:\ + :co#80:it#8:li#25:\ + :@7=\E[146q:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\ + :F2=\E[012q:F3=\E[013q:F4=\E[014q:F5=\E[015q:F6=\E[016q:\ + :F7=\E[017q:F8=\E[018q:F9=\E[019q:FA=\E[020q:FB=\E[021q:\ + :FC=\E[022q:FD=\E[023q:FE=\E[024q:FF=\E[025q:FG=\E[026q:\ + :FH=\E[027q:FI=\E[028q:FJ=\E[029q:FK=\E[030q:FL=\E[031q:\ + :FM=\E[032q:FN=\E[033q:FO=\E[034q:FP=\E[035q:FQ=\E[036q:\ + :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:ch=\E[%i%dG:cl=\E[H\E[2J:\ + :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ds=\E[?E:\ + :ec=\E[%dX:ei=\E[4l:fs=\E[?F:ho=\E[H:im=\E[4h:is=\Ec:\ + :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:\ + :k;=\E[010q:kA=\E[140q:kB=\E[Z:kC=\E[144q:kD=\E[P:\ + :kE=\E[142q:kF=\E[151q:kI=\E[139q:kM=\E[4l:kN=\E[154q:\ + :kP=\E[150q:kR=\E[155q:kS=\E[148q:kb=^H:kd=\E[B:kh=\E[H:\ + :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[0;10m\E(B:\ + :mk=\E[8m:mr=\E[7m:nd=\E[C:rc=\E[u:rs=\Ec:s0=\E(B:s1=\E(0:\ + :s2=\E[12m:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :sc=\E[s:se=\E[m:sf=\E[S:so=\E[7m:ts=\E[?%dT:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### 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=%i\E[%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%p1%{1}%-%c%p2%{1}%-%c:cr=^M:\ + :do=^J:ho=^H:le=^Z:ll=^H^\:nd=^Y:sf=^J:up=^\: +# (infoton: used to have the no-ops , , -- 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 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:\ + :DC=\EW:al=\EE:bl=^G:bt=\EI:cl=\E*:cm=\E=%+ %+P%+P:cr=^M:\ + :..cs=\E!%+%p1%{32}%+%p2%{32} cud1=\026:ct=\E3: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:\ + :..sa=\E[%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;ZZ:\ + :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:\ + :am:bs:hs:\ + :co#80:li#24:\ + :DC=\EW:al=\EE:bl=^G:bt=\EI:cl=\E*:cm=\E=%+ %+P%+P:cr=^M:\ + :..cs=\E!%+%p1%{32}%+%p2%{32} cud1=\026:ct=\E3: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:\ + :..sa=\E[%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;ZZ:\ + :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: + +#### 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: 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=\020:bl=^G:bt=^Y:cd=\026J:ce=^Kp^R:cl=\014:\ + :cm=\017%+ %+ :cr=^M:dc=\022:dl=\021:do=^J:ei=^V<:im=^V;:\ + :ip=: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\:\264\026%:ku=^\:le=^H:nd=^^:\ + :se=^V#\s: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: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: +# Internet/Web: +# +# 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 entry should be removed. +# 6) auto new-line should be on (selectable from setup mode only) +# +# From: Erik Fair Sun Oct 27 07:21:05 1985 +abm85h|Kimtron ABM 85H native mode:\ + :am:bs:bw:hs:ms:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :dc=\EW:dl=\ER:do=^J:ds=\Ee:ei=\Er:fs=^M:\ + :if=/usr/share/tabset/stdcrt: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:\ + :kb=^H:kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\E(\EG0:mh=\E):\ + :mr=\EG4:nd=^L:se=\EG0:so=\EG4:ta=^I:ts=\Eg\Ef:ue=\EG0:\ + :up=^K:us=\EG8:ve=\E.4:vs=\E.2: +abm85e|Kimtron ABM 85H in 920E mode:\ + :am:bs:bw:ms:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :dc=\EW:dl=\ER:do=^J:ei=\Er:if=/usr/share/tabset/stdcrt:\ + :im=\EZ:\ + :is=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\E(\Ek:mh=\E):\ + :mr=\Ej:nd=^L:se=\Ek:so=\Ej:ta=^I:ue=\Em:up=^K:us=\El: +abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev.:\ + :am:bs:bw:ms:\ + :co#80:it#8:li#24:\ + :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :dc=\EW:dl=\ER:do=^J:ei=\Er:if=/usr/share/tabset/stdcrt:\ + :im=\EZ:\ + :is=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF:\ + :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\E(\Ek:mh=\E):\ + :mr=\Ej:nd=^L:se=\Ek:so=\Ej:ta=^I:ue=\Em:up=^K:us=\El: +# From: +# (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:me=\EG0:mr=\EG4:nd=^L:se=\EG0:so=\EG4:ta=^I:\ + :ts=\Ef:ue=\EG0:up=^K:us=\EG8: +# 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=lZm@k?jYt4uCvAwBqDx3nE: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 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:\ + :..ch=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c:\ + :cl=\014:\ + :..cm=\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:\ + :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:\ + :..ch=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c:\ + :cl=\014:\ + :..cm=\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:\ + :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\s:mh=^CA:mk=^CH:mr=^CD:\ + :nd=^F:pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s: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:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :bl=^G:cd=\EJ:ce=\EK:\ + :..ch=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c:\ + :cl=\014:\ + :..cm=\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:\ + :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\s:mh=^CA:mk=^CH:mr=^CD:\ + :nd=^F:pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :bl=^G:cd=\EJ:ce=\EK:cl=\014:cm=\E[%i%d;%dH:cr=^M:do=^J:\ + :ds=\035\343\035\345:fs=^]\345:ho=^A:kb=^H:kh=^A:le=^H:\ + :mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:po=\ER:\ + :ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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 ) +# +prism8|p8|P8|MDC Prism-8:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :bl=^G:cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:\ + :cr=^M:cv=\E[%i%dd:do=^J:ds=\035\343\035\345:fs=^]\345:\ + :ho=^A:is=\E[<12h:kb=^H:kh=^A:le=^H:mb=^CB:me=^C\s:mh=^CA:\ + :mk=^CH:mr=^CD:nd=^F:pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#132:li#24:sg#1:ug#1:ws#72:\ + :bl=^G:cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:\ + :cr=^M:cv=\E[%i%dd:do=^J:ds=\035\343\035\345:fs=^]\345:\ + :ho=^A:is=\E[<12h\E[<14h:kb=^H:kh=^A:le=^H:mb=^CB:me=^C\s:\ + :mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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 ) +# +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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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[0m: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:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%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:\ + :5i:am:bw:hs:ms:xn:xo:\ + :co#132: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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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\E[<14h: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[0m:\ + :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[<14h:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h:kb=^H:kh=^A:\ + :le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:\ + :po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#132:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h\E[<14h:kb=^H:\ + :kh=^A:le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:\ + :pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# p12: Prism-12 in ANSI mode +# --------------------------- +# +# See p9 definition. +# +prism12|p12|P12|MDC Prism-12 in ANSI 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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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[0m: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:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# 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:\ + :5i:am:bw:hs:ms:xn:xo:\ + :co#132: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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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\E[<14h: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[0m:\ + :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[<14h:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h:kb=^H:kh=^A:\ + :le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:\ + :po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#132:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h\E[<14h:kb=^H:\ + :kh=^A:le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:\ + :pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# p14: Prism-14 in ANSII mode +# --------------------------- +# +# See p9 definition. +# +prism14|p14|P14|MDC Prism-14 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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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[0m: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:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# 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:\ + :5i:am:bw:hs:ms:xn:xo:\ + :co#132: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=\E[J:ce=\E[K:ch=\E[%i%d`:cl=^L:\ + :cm=\E[%i%d;%dH:cr=^M:..cs=\E[%i%p1%d;%p2%d%%v:ct=\E[2g:\ + :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\E[<14h: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[0m:\ + :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[<14h:\ + :..sa=\E[%{0}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{2}%+%;%?%p4%t%{1}%+%;%?%p6%t%{8}%+%;%?%p8%t%{32}%+%;%d%%{%?%p9%t\016%e\017%;:\ + :sc=\E[%y:se=\E[27m:sf=^J:so=\E[7m:sr=\E[L:st=\EH:ta=^I:\ + :..ts=\E[%i%p1%d%%}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[<4h:\ + :vi=\E[<4l: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#80:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h:kb=^H:kh=^A:\ + :le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:pf=\ET:\ + :po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# 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:\ + :5i:am:bw:hs:ms:\ + :co#132:li#24:sg#1:ug#1:ws#72:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:bl=^G:\ + :cd=\EJ:ce=\EK:ch=\E[%i%d`:cl=\014:cm=\E[%i%d;%dH:cr=^M:\ + :cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ds=\035\343\035\345:\ + :ei=:fs=^]\345:ho=^A:ic=\E[@:im=:is=\E[<12h\E[<14h:kb=^H:\ + :kh=^A:le=^H:mb=^CB:me=^C\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:\ + :pf=\ET:po=\ER:ps=\EU:\ + :..sa=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;:\ + :se=^C\s:sf=^J:so=^CD:ts=^]\343:ue=^C\s:up=^Z:us=^CP:\ + :ve=^]\342:vi=^]\344: + +# End of McDonnell Information Systems Prism definitions + +# These things were popular in the Pick database community at one time +# From: George Land 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=\s^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=\s^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\s:mh=^CA:mk=^CH:mr=^CD:nd=^F:\ + :nw=^J^M:pc=\0:se=^C\s:sf=^J:so=^CE:ue=^C\s: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 . 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:\ + :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:sr=\EH:uc=^H\EA:up=^Z: +# 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:\ + :am:bs:\ + :co#80:it#8:li#24:vt#9:\ + :al=\001:bl=^G:cd=^_:ce=^^:cl=^]^C:cm=\024%+^X%> 0%+P:\ + :cr=^M:dl=\027:do=^J:ho=^]:is=^S\E:kd=^K:kl=^H:kr=^X:ku=^Z:\ + :le=^H:nd=^X:se=^S:sf=^J:so=^Y:sr=\022:ta=\011:uc=^U:up=^Z: +mime-hb|half bright mime1:\ + :am:bs:\ + :co#80:it#8:li#24:vt#9:\ + :al=\001:bl=^G:cd=^_:ce=^^:cl=^]^C:cm=\024%+^X%> 0%+P:\ + :cr=^M:dl=\027:do=^J:ho=^]:is=^Y\E:kd=^K:kl=^H:kr=^X:ku=^Z:\ + :le=^H:nd=^X:se=^Y:sf=^J:so=^S:sr=\022:ta=\011:uc=^U:up=^Z: +# (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=\001:bl=^G:cd=^_:ce=^^:cl=^]^C:cm=\024%+^X%> 0%+P:\ + :cr=^M:dl=\027:do=^J:ho=^]:is=^S\E^Q:kd=^K:kl=^H:kr=^X:ku=^Z:\ + :le=^H:nd=^X:sf=^J:sr=\022:ta=\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=\001:bl=^G:cd=\EJ:ce=\EK:cl=\EL:cm=\E=%+ %+ :cr=^M:\ + :dc=\ED:dl=\027:do=^J:ei=^Z:ho=^^:im=\EE:ip=:is=\E):kd=^J:\ + :kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\E;:sf=^J:so=\E\::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=\001:bl=^G:cd=\EQ:ce=\EP:cl=\EL:cm=\EY%+ %+ :cr=^M:\ + :dc=^N:dl=\027:do=^J:ei=^Z:ho=\EH:im=^O:ip=: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:\ + :bs:\ + :co#80:li#24:\ + :bl=^G:cl=1\032:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:kd=^K:kl=^H:\ + :kr=^X:ku=^Z:le=^H:ma=^K^P:nd=^L:nl=^J:r1=^N:rs=^N:sf=^J:\ + :up=^K: +mime3ax|mime-3ax|mime1 emulating enhanced 3a:\ + :bs:\ + :co#80:it#8:li#24:\ + :al=\001:bl=^G:cd=^_:ce=^X:cl=1\032:cm=\E=%+ %+ :cr=^M:\ + :dl=\027:do=^J:ho=^^:kd=^K:kl=^H:kr=^X:ku=^Z:le=^H:ma=^K^P:\ + :nd=^L:nl=^J:r1=^N:rs=^N:sf=^J:ta=\011:up=^K: +# 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 / 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 / based on the init string -- esr) +ergo4000|microterm ergo 4000:\ + :da:db:ms:\ + :co#80:li#66:\ + :AL=\E[1L:RA=\E[?7l:SA=\E[?7m: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[1M:\ + :do=\E[B:ei=\E[4l:im=\E[4h:\ + :is=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h: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:se=\E[m:sf=\ED:so=\E[7m:sr=\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:\ + :am:hs:mi:ms:xn:xo:\ + :Co#8:Nl#32:co#80:li#24:pa#64:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:\ + :FB=\E[31~:FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:\ + :FG=\E[1~:FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:\ + :FM=\E[7~:FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\EOw:\ + :K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :op=\E[0m:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# 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:\ + :am:hs:mi:ms:xn:xo:\ + :Co#8:Nl#32:co#132:li#24:pa#64:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:\ + :FB=\E[31~:FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:\ + :FG=\E[1~:FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:\ + :FM=\E[7~:FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\EOw:\ + :K2=\EOy:K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:\ + :RI=\E[%dC:SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :op=\E[0m:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# 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:\ + :am:hs:mi:ms:xn:xo:\ + :Co#8:Nl#32:co#80:li#24:pa#64:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:FC=\E[32~:FD=\E[33~:FE=\E[34~:\ + :FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:\ + :FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:op=\E[0m:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# 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:\ + :am:hs:mi:ms:xn:xo:\ + :Co#8:Nl#32:co#132:li#24:pa#64:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:FC=\E[32~:FD=\E[33~:FE=\E[34~:\ + :FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:\ + :FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:op=\E[0m:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# 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:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:sg#1:ug#1:\ + :#2=^A:%9=\EP:%f=\E7:%i=^F:*4=\El:*7=\Ek:@7=\EK:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>:\ + :F1=^B;\r:F2=^B<\r:F3=^B=\r:F4=^B>\r:F5=^B?\r:F6=^B@\r:\ + :F7=^B!\r:F8=^B"\r:F9=^B#\r:FA=^B$\r:FB=\002%^M:FC=^B&\r:\ + :FD=^B'\r:FE=^B(\r:FF=^B)\r:FG=^B*\r:FH=^B+\r:FI=^B,\r:\ + :FJ=^B-\r:FK=^B.\r:FL=^B/\r:FM=^B0\r:K1=^A:K3=\EJ:K4=\ET:\ + :K5=\EJ:RX=\Ec20:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EcB0\EH\003:\ + :al=\EM:as=\EcB1\EH\002:bl=^G:bt=\EI:cd=\Ek:ce=\EK:cl=\014:\ + :cm=\EY%+ %+ :cr=\r:dc=\EW:dl=\El:do=\n:ds=\E`c:ei=\Er:\ + :fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\E~%\E+\E`\:\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:k;=^B\:\r:kD=\EW:kI=\Eq:kN=\EJ:\ + :kP=\EJ:kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=\010:ll=\001:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\006:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~%\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\032:us=\EG8:ve=\E`5:vi=\E`0:vs=\E`5: +ncr260vpwpp|NCR 2900_260 viewpoint wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:sg#1:ug#1:\ + :#2=^A:%9=\EP:%f=\E7:%i=^F:*4=\El:*7=\Ek:@7=\EK:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>:\ + :F1=^B;\r:F2=^B<\r:F3=^B=\r:F4=^B>\r:F5=^B?\r:F6=^B@\r:\ + :F7=^B!\r:F8=^B"\r:F9=^B#\r:FA=^B$\r:FB=\002%^M:FC=^B&\r:\ + :FD=^B'\r:FE=^B(\r:FF=^B)\r:FG=^B*\r:FH=^B+\r:FI=^B,\r:\ + :FJ=^B-\r:FK=^B.\r:FL=^B/\r:FM=^B0\r:K1=^A:K3=\EJ:K4=\ET:\ + :K5=\EJ:RX=\Ec20:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EcB0\EH\003:\ + :al=\EM:as=\EcB1\EH\002:bl=^G:bt=\EI:cd=\Ek:ce=\EK:cl=\014:\ + :cm=\Ea%i%dR%dC:cr=\r:dc=\EW:dl=\El:do=\n:ds=\E`c:ei=\Er:\ + :fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\E~%\E+\E`;\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:k;=^B\:\r:kD=\EW:kI=\Eq:kN=\EJ:\ + :kP=\EJ:kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=\010:ll=\001:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\006:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~%\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\032:us=\EG8:ve=\E`5:vi=\E`0:vs=\E`5: +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~:@8=\EOM:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:\ + :UP=\E[%dA:ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:\ + :UP=\E[%dA:ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt100pp|NCR 2900_260 vt100 with PC+ 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~:@7=\E[5~:@8=\EOM:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:ch=\E[%dG:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:cs=\E[%i%d;%dr:\ + :ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:do=\E[B:\ + :ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kD=\E[4~:kI=\E[1~:\ + :kN=\E[6~:kP=\E[3~:kb=^H: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:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[5~:@8=\EOM:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:ch=\E[%dG:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:cs=\E[%i%d;%dr:\ + :ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:do=\E[B:\ + :ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kD=\E[4~:kI=\E[1~:\ + :kN=\E[6~:kP=\E[3~:kb=^H: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:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt200an|NCR 2900_260 vt200 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~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt200pp|NCR 2900_260 vt200 with pc+ 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~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt300an|NCR 2900_260 vt300 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~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr260vt300pp|NCR 2900_260 vt300 with pc+ 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~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +# 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 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:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Co#16:NC#33:Nl#32:co#80:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:Sb=\s:\ + :..Sf=%?%p1%{0}%=%t%'1'%e%p1%{1}%=%t%'2'%e%p1%{2}%=%t%'3'%e%p1%{3}%=%t%'4'%e%p1%{4}%=%t%'5'%e%p1%{5}%=%t%'6'%e%p1%{6}%=%t%'7'%e%p1%{7}%=%t%'8'%e%p1%{8}%=%t%'9'%e%p1%{9}%=%t%'\:'%e%p1%{10}%=%t%';'%e%p1%{11}%=%t%'<'%e%p1%{12}%=%t%'='%e%p1%{13}%=%t%'>'%e%p1%{14}%=%t%{63}%e%p1%{15}%=%t%'8'%;\Edy%c11$<100>:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH\003\EcB0:\ + :al=\EE:as=\EH\002\EcB1:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:\ + :ei=\Er:fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Co#16:NC#33:Nl#32:co#132:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:Sb=\s:\ + :..Sf=%?%p1%{0}%=%t%'1'%e%p1%{1}%=%t%'2'%e%p1%{2}%=%t%'3'%e%p1%{3}%=%t%'4'%e%p1%{4}%=%t%'5'%e%p1%{5}%=%t%'6'%e%p1%{6}%=%t%'7'%e%p1%{7}%=%t%'8'%e%p1%{8}%=%t%'9'%e%p1%{9}%=%t%'\:'%e%p1%{10}%=%t%';'%e%p1%{11}%=%t%'<'%e%p1%{12}%=%t%'='%e%p1%{13}%=%t%'>'%e%p1%{14}%=%t%{63}%e%p1%{15}%=%t%'8'%;\Edy%c11$<100>:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH\003\EcB0:\ + :al=\EE:as=\EH\002\EcB1:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:\ + :ei=\Er:fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +# 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:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Co#16:NC#33:Nl#32:co#80:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<20>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:Sb=\s:\ + :..Sf=%?%p1%{0}%=%t%'1'%e%p1%{1}%=%t%'2'%e%p1%{2}%=%t%'3'%e%p1%{3}%=%t%'4'%e%p1%{4}%=%t%'5'%e%p1%{5}%=%t%'6'%e%p1%{6}%=%t%'7'%e%p1%{7}%=%t%'f'%e%p1%{8}%=%t%'a'%e%p1%{9}%=%t%'b'%e%p1%{10}%=%t%'c'%e%p1%{11}%=%t%'e'%e%p1%{12}%=%t%'j'%e%p1%{13}%=%t%'n'%e%p1%{14}%=%t%'o'%e%p1%{15}%=%t%'8'%;\Em0%c$<100>:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH\003\EcB0:\ + :al=\EE:as=\EH\002\EcB1:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:\ + :ei=\Er:fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003\EcD:mh=\EGp:mk=\EG1:mr=\EG4:\ + :nd=\014:nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Co#16:NC#33:Nl#32:co#132:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<20>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:Sb=\s:\ + :..Sf=%?%p1%{0}%=%t%'1'%e%p1%{1}%=%t%'2'%e%p1%{2}%=%t%'3'%e%p1%{3}%=%t%'4'%e%p1%{4}%=%t%'5'%e%p1%{5}%=%t%'6'%e%p1%{6}%=%t%'7'%e%p1%{7}%=%t%'f'%e%p1%{8}%=%t%'a'%e%p1%{9}%=%t%'b'%e%p1%{10}%=%t%'c'%e%p1%{11}%=%t%'e'%e%p1%{12}%=%t%'j'%e%p1%{13}%=%t%'n'%e%p1%{14}%=%t%'o'%e%p1%{15}%=%t%'8'%;\Em0%c$<100>:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH\003\EcB0:\ + :al=\EE:as=\EH\002\EcB1:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\ + :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:\ + :ei=\Er:fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003\EcD:mh=\EGp:mk=\EG1:mr=\EG4:\ + :nd=\014:nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +# 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 +# , as well as the commented-out one there -- esr) +ncr260wy50+pp|NCR 2900_260 wyse 50+:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\014:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\014:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy60pp|NCR 2900_260 wyse 60:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr160vppp|NCR 2900_160 viewpoint:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:sg#1:ug#1:\ + :#2=^A:%9=\EP:%f=\E7:%i=^F:*4=\El:*7=\Ek:@7=\EK:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>:\ + :F1=^B;\r:F2=^B<\r:F3=^B=\r:F4=^B>\r:F5=^B?\r:F6=^B@\r:\ + :F7=^B!\r:F8=^B"\r:F9=^B#\r:FA=^B$\r:FB=\002%^M:FC=^B&\r:\ + :FD=^B'\r:FE=^B(\r:FF=^B)\r:FG=^B*\r:FH=^B+\r:FI=^B,\r:\ + :FJ=^B-\r:FK=^B.\r:FL=^B/\r:FM=^B0\r:K1=^A:K3=\EJ:K4=\ET:\ + :K5=\EJ:RX=\Ec20:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EcB0\EH\003:\ + :al=\EM:as=\EcB1\EH\002:bl=^G:bt=\EI:cd=\Ek:ce=\EK:cl=\014:\ + :cm=\EY%+ %+ :cr=\r:dc=\EW:dl=\El:do=\n:ds=\E`c:ei=\Er:\ + :fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\E~%\E+\E`\:\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:k;=^B\:\r:kD=\EW:kI=\Eq:kN=\EJ:\ + :kP=\EJ:kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=\010:ll=\001:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\006:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~%\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\032:us=\EG8:ve=\E`5:vi=\E`0:vs=\E`5: +ncr160vpwpp|NCR 2900_160 viewpoint wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:sg#1:ug#1:\ + :#2=^A:%9=\EP:%f=\E7:%i=^F:*4=\El:*7=\Ek:@7=\EK:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>:\ + :F1=^B;\r:F2=^B<\r:F3=^B=\r:F4=^B>\r:F5=^B?\r:F6=^B@\r:\ + :F7=^B!\r:F8=^B"\r:F9=^B#\r:FA=^B$\r:FB=\002%^M:FC=^B&\r:\ + :FD=^B'\r:FE=^B(\r:FF=^B)\r:FG=^B*\r:FH=^B+\r:FI=^B,\r:\ + :FJ=^B-\r:FK=^B.\r:FL=^B/\r:FM=^B0\r:K1=^A:K3=\EJ:K4=\ET:\ + :K5=\EJ:RX=\Ec20:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EcB0\EH\003:\ + :al=\EM:as=\EcB1\EH\002:bl=^G:bt=\EI:cd=\Ek:ce=\EK:cl=\014:\ + :cm=\Ea%i%dR%dC:cr=\r:dc=\EW:dl=\El:do=\n:ds=\E`c:ei=\Er:\ + :fs=^M:ho=\036:im=\Eq:\ + :is=\Ee6\E~%\E+\E`;\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:k;=^B\:\r:kD=\EW:kI=\Eq:kN=\EJ:\ + :kP=\EJ:kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=\010:ll=\001:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\006:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~%\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7:\ + :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:ue=\EG0:\ + :up=\032:us=\EG8:ve=\E`5:vi=\E`0:vs=\E`5: +ncr160vt100an|NCR 2900_160 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~:@8=\EOM:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:\ + :UP=\E[%dA:ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt100pp|NCR 2900_160 vt100 with PC+ 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~:@7=\E[5~:@8=\EOM:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:ch=\E[%dG:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:cs=\E[%i%d;%dr:\ + :ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:do=\E[B:\ + :ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kD=\E[4~:kI=\E[1~:\ + :kN=\E[6~:kP=\E[3~:kb=^H: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:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:AL=\E[%dL:\ + :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=\EOw:K2=\EOy:\ + :K3=\EOu:K4=\EOq:K5=\EOs:LE=\E[%dD:RI=\E[%dC:SF=\E[%dE:\ + :UP=\E[%dA:ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[5~:@8=\EOM:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ + :K1=\E[H:K2=\E[V:K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:\ + :RI=\E[%dC:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=^O:al=\E[L:\ + :as=^N:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:ch=\E[%dG:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:cs=\E[%i%d;%dr:\ + :ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:do=\E[B:\ + :ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:\ + :im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kD=\E[4~:kI=\E[1~:\ + :kN=\E[6~:kP=\E[3~:kb=^H: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:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :nw=\EE:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt200an|NCR 2900_160 vt200 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~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt200pp|NCR 2900_160 vt200 with pc+ 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~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt300an|NCR 2900_160 vt300 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~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt300pp|NCR 2900_160 vt300 with pc+ 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~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM: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~:FB=\E[31~:FC=\E[32~:\ + :FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:FH=\E[2~:FI=\E[3~:\ + :FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:FN=\E[8~:FO=\E[9~:\ + :FP=\E[10~:IC=\E[%d@:K1=\EOw:K2=\EOy:K3=\EOu:K4=\EOq:\ + :K5=\EOs:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\ + :SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :k0=\EOy: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~: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\017:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd:\ + :am:hs:mi:ms:xn:xo:\ + :Nl#32:co#132:li#24:\ + :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:@7=\E[1~:@8=\EOM:\ + :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~:FB=\E[31~:\ + :FC=\E[32~:FD=\E[33~:FE=\E[34~:FF=\E[35~:FG=\E[1~:\ + :FH=\E[2~:FI=\E[3~:FJ=\E[4~:FK=\E[5~:FL=\E[6~:FM=\E[7~:\ + :FN=\E[8~:FO=\E[9~:FP=\E[10~:IC=\E[%d@:K1=\E[H:K2=\E[V:\ + :K3=\EOu:K4=\EOq:K5=\E[U:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\ + :SA=\E[?7h:SF=\E[%dE:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~:ae=\017:\ + :al=\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :ch=\E[%dG:cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=\r:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%dd:dc=\E[1P:dl=\E[M:\ + :do=\E[B:ds=\E[0$~\E[1$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\ + :ho=\E[H:im=\E[4h:\ + :is=\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>:\ + :k0=\EOy: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~:kD=\E[4~:\ + :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H: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:\ + :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m\017:mk=\E[8m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:rc=\E8:\ + :rs=\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>:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[2$~\E[1$}:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:\ + :vi=\E[?25l: +ncr160wy50+pp|NCR 2900_160 wyse 50+:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\014:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:sg#1:ug#1:\ + :#2=\E{:%9=\EP:%f=\E7:%i=^L:*4=\ER:*7=\EY:@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K4=\ET:K5=\EK:\ + :RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EH\003:mh=\EGp:mk=\EG1:mr=\EG4:nd=\014:\ + :nw=\037:pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~"\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr160wy60pp|NCR 2900_160 wyse 60:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#80:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode:\ + :5i:am:bw:hs:km:mi:ms:xo:\ + :Nl#32:co#132:li#24:\ + :#2=\E{:%9=\EP:%c=\EK:%e=\EJ:%f=\E7:%i=^L:*4=\ER:*7=\EY:\ + :@7=\ET:\ + :..CM=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>:\ + :F1=^AJ\r:F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\ + :F7=^A`\r:F8=^Aa\r:F9=^Ab\r:FA=^Ac\r:FB=^Ad\r:FC=^Ae\r:\ + :FD=^Af\r:FE=^Ag\r:FF=^Ah\r:FG=^Ai\r:FH=^Aj\r:FI=^Ak\r:\ + :FJ=^Al\r:FK=^Am\r:FL=^An\r:FM=^Ao\r:K1=^^:K2=\EJ:K4=\ET:\ + :K5=\EK:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\ + :ac=a?h;07j5k3l2m1n8q\:t4u9v=w0x6:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=\n:ds=\E`c:ei=\Er:fs=^M:\ + :ho=\036:im=\Eq:\ + :is=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\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:k;=^AI\r:kB=\EI:kD=\EW:kI=\Eq:\ + :kN=\EK:kP=\EJ:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=\010:\ + :mb=\EG2:me=\EG0\EcB0\EcD:mk=\EG1:mr=\EG4:nd=\014:nw=\037:\ + :pf=^T:po=^R:ps=\EP:\ + :rs=\Ee6\E~4\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7:\ + :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:ts=\EF:ue=\EG0:\ + :up=\013:us=\EG8:ve=\E`1:vi=\E`0:vs=\E`5: +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=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:K1=\E[H:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~:ae=\017:\ + :al=\E[B\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[1P:dl=\E[M:do=\E[B:ds=\E[31l:eA=\E(B\E)0:\ + :ei=\E[4l:fs=1:ho=\E[H:im=\E[4h:\ + :is=\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=\E[D:mb=\E[5m:md=\E[1m:me=\017\E[0m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:ps=\E[i:rc=\E8:\ + :rs=\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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>+1:ue=\E[0m:up=\E[A:us=\E[4m: +ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal:\ + :5i:am:hs:mi:ms:xo:\ + :Nl#32:co#132:it#8:li#24:\ + :#4=\E[D:%i=\E[C:@8=^M:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\ + :DO=\E[%dB:K1=\E[H:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~:ae=\017:\ + :al=\E[B\E[L:as=\016:bl=^G:cb=\E[1K:cd=\E[0J:ce=\E[0K:\ + :cl=\E[2J\E[1;1H:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[1P:dl=\E[M:do=\E[B:ds=\E[31l:eA=\E(B\E)0:\ + :ei=\E[4l:fs=1:ho=\E[H:im=\E[4h:\ + :is=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\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=\E[D:mb=\E[5m:md=\E[1m:me=\017\E[0m:mr=\E[7m:\ + :nd=\E[C:nw=\EE:ps=\E[i:rc=\E8:\ + :rs=\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:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>:\ + :sc=\E7:se=\E[0m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[>+1:ue=\E[0m:up=\E[A:us=\E[4m: +# +# 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 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 , 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:\ + :..sa=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c:\ + :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%02: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 , 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:\ + :..sa=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016:\ + :se=^O:sf=^J:so=\E0Q\016:ue=^O:up=^Z:us=\E0`\016:ve=^X:\ + :vi=^W: + +#### 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=\EI:cl=\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=\EJ:ce=\EI:cl=\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=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EH\EJ:cm=\EX%+ \EY%+ :\ + :cr=^M:ct=\E3:dc=\EO:dl=\EM:do=^J:ei=:ho=\EH:ic=\EN:im=:ip=:\ + :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!\0:\ + :nd=\EC:se=\E!\0: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=\EJ:ce=\EI:cl=\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!\0\EW 7o\Egf\ES7\s:k0=\E!\0:\ + :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\s:nd=\EC:sf=^J:\ + :sr=\ER:up=\EA: +pe7000c|perkin elmer 7000 series colour 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!\0\EW 7o\Egf\Eb0\Ec7\ES7\s:\ + :k0=\E!\0: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\s:\ + :nd=\EC:se=\Eb0:sf=^J:so=\Eb2:sr=\ER:ue=\E!\0:up=\EA:\ + :us=\E!\s: + +#### Prime +# +# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings +# 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:DL=\E[M: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: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:\ + :am:bw:mi:ms:\ + :co#132:it#8:li#24:\ + :DC=\E[%dP:DL=\E[M: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=\E[%i%d;%dH:cr=^M:dc=\E[P: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: +pt250|Prime PT250:\ + :am:bw:mi:ms:\ + :co#80:it#8:li#24:\ + :DC=\E[%dP:DL=\E[M: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: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:\ + :sf=^J: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: +pt250w|Prime PT250 in 132-column mode:\ + :am:bw:mi:ms:\ + :co#132:it#8:li#24:\ + :DC=\E[%dP:DL=\E[M: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=\E[%i%d;%dH:cr=^M:dc=\E[P: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:sf=^J: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: + +#### 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 / 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=\EB:\ + :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=\EC: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:\ + :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:r1=^N:rs=^N:sf=^J:\ + :up=^K: + +# 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\s:nd=\EC:se=\E6\s:sf=\ES:so=\E6$:\ + :sr=\ET:ts=\Eo:ue=\E6\s: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:me=\EG0:\ + :mr=\EG4:nd=\EC:se=\EG0:sf=\EX:so=\EG4:ta=^I:up=\EA:ve=\EG6:\ + :vi=\EG5: +dt100|dt-100|Tandy DT-100 terminal:\ + :xo:\ + :co#80:li#24:sg#1:ug#1:\ + :ac=kkllmmjjnnwwvvttuuqqxx: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):\ + :xo:\ + :co#132:li#24:sg#1:ug#1:\ + :ac=kkllmmjjnnwwvvttuuqqxx: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: +dt110|Tandy DT-110 emulating ansi:\ + :xo:\ + :co#80:li#24:\ + :@7=\E[K:ac=kkllmmjjnnwwvvuuttqqxx: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[0B:\ + :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[0A: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=\E\014:cr=^M:do=^J:ff=\014:is=\E^O:le=^H: +# (tek4013: added to suppress tic warnings re :as:/:ae: --esr) +tek4013|tektronix 4013:\ + :bs:os:\ + :co#75:li#35:\ + :ac=:ae=\E^O:as=\E^N:bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:\ + :is=\E^O:le=^H: +tek4014|tektronix 4014:\ + :bs:os:\ + :co#81:li#38:\ + :bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:is=\E\017\E9:le=^H: +# (tek4015: added to suppress tic warnings re :as:/:ae: --esr) +tek4015|tektronix 4015:\ + :bs:os:\ + :co#81:li#38:\ + :ac=:ae=\E^O:as=\E^N:bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:\ + :is=\E\017\E9:le=^H: +tek4014-sm|tektronix 4014 in small font:\ + :bs:os:\ + :co#121:li#58:\ + :bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:is=\E\017\E\::le=^H: +# (tek4015-sm: added to suppress tic warnings re :as:/:ae: --esr) +tek4015-sm|tektronix 4015 in small font:\ + :bs:os:\ + :co#121:li#58:\ + :ac=:ae=\E^O:as=\E^N:bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:\ + :is=\E\017\E\::le=^H: +# Tektronix 4023 from Andrew Klossner +# +# 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:\ + :am:bs:da:db:\ + :co#80:it#8:li#17: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-ws|tek 4025 17 line window in workspace:\ + :am:bs:da:db:\ + :co#80:it#8:li#17: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\037wor 17\r\037mon 17\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:se=\037att s\r:sf=^F^J:\ + :so=\037att e\r:ta=^I:te=\037mon h\r:ti=\037wor h\r:\ + :up=^K: +tek4025-ex|tek4027-ex|tek 4025/4027 w/!:\ + :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=\037com 33\r\n!sto 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:te=\037com 33\r:\ + :ti=!com 31\r:up=^K: +# Tektronix 4025a +# From: Doug Gwyn +# 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/!:\ + :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=\037com 33\r\n!sto 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:te=\037com 33\r:\ + :ti=!com 31\r:up=^K: +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: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 / 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:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m: + +# 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 CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING EOMCHARS +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1 +# IGNOREDEL no KEYEXCHAR
NVDEFINE -53 "" +# 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 CURSORKEYMODE no DAINDEX 1 0 0 +# EOFSTRING '' EOLSTRING EOMCHARS +# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3 +# IGNOREDEL no KEYEXCHAR
NVDEFINE -53 "" +# 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: + +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:\ + :..sa=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m\E%%!0:\ + :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:\ + :am:bs:es:hs: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:\ + :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: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:\ + :..sa=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m\E%%!0:\ + :se=\E%!1\E[m\E%!0:sf=^J:so=\E%!1\E[7;5m\E%!0:sr=\EI:\ + :ta=^I:ts=\E7\E[?6l\E[2K\E[;%i%df:ue=\E%!1\E[m\E%!0:\ + :up=\EA:us=\E%!1\E[4m\E%!0:ve=\E%!0:vs=\E%!3: + +# 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: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:\ + :am:bs:db:ns:\ + :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: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=^K:us=\E[4m: +tek4112-5|4112 in 5 line dialog area:\ + :am:bs:db:\ + :co#80:li#5:\ + :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: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: +# (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:\ + :am:bs:da:eo:\ + :co#80:li#34:\ + :cl=\ELZ:do=^J:is=\EKA1\ELLB2\ELV0\ELV1:le=^H:\ + :nd=\ELM1 \ELM0:uc=\010\ELM1_\ELM0:\ + :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0: +# :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:, / 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[2g: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:..rp=%p1%c\E[%p2%{1}%-%db:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :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:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#34:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:al=\E[1L: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:ct=\E[3g:dl=\E[1M:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:\ + :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:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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=:ku=\EOA:le=^H:\ + :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: + +# From: +# (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:,,: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: 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\s:nd=\ES:se=\E\s:sf=^J:so=\E$:\ + :sr=\E^A:ta=^I:ue=\E\s: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 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@:\ + :..Ic=\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:\ + :LE=\E[%dD:RI=\E[%dC:\ + :..Sb=\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%;:\ + :..Sf=\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%;:\ + :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 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=\EL:cd=\EJ:cl=\EH\EJ:cr=\EG:ct=\EH\E2:dc=\EP:dl=\EM:\ + :do=\EB:ei=:ho=\EH:ic=\E^:im=:kb=^]:kl=^H:le=^H:nd=\EC:pf=^T:\ + :po=\022:rs=\023\ER:se=\E4:sf=\ES:so=\E3:sr=\ET:st=\E1:\ + :ta=\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=l: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=\014:cr=^M:do=^J:ho=\013:kd=^J:kl=^H:kr=^I:ku=^N:\ + :le=^H:ll=\017W:nd=^I:up=^N: +vc303a|vc403a|volker-craig 303a:\ + :am:bs:ns:\ + :co#80:li#24:\ + :bl=^G:ce=\026:cl=\030:cr=^M:do=^J:ho=\031:kd=^J:kl=^H:kr=^U:\ + :ku=^Z:le=^H:ll=^P:nd=^U:up=^Z: +# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr) +vc404|volker-craig 404:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\027:ce=\026:cl=\030:cm=\020%+ %+ :cr=^M:do=^J:\ + :ho=\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:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\027:ce=\026:cl=\030:cm=\020%+ %+ :cr=^M:do=^J:\ + :ho=\031:kd=^J:kl=^H:kr=^U:ku=^Z:le=^H:nd=^U:se=^O:sf=^J:\ + :so=^N:up=^Z: +# From: +# (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=\E\032:cd=\E^X:ce=10\E\017:cl=\E\034:cm=\E\021%r%.%.:\ + :dc=\E3:dl=\E\023:do=\E^K:ei=:ho=\E^R:ic=\E\::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:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\027:ce=\026:cl=^L:cm=\020%+ %+ :cr=^M:do=^J:\ + :ho=\031:kd=^J:kl=^H:kr=^U:ku=^Z:le=^H:nd=^U:sf=^J:up=^Z: + +######## 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:\ + :am:bs:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\ + :us=\E[4m: +# KayPro II from Richard G Turner +# 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=\n:\ + :up=^^: + +ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX:\ + :am: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: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:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;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:\ + :bw:ms:\ + :co#80:li#24:\ + :bl=^G:cd=4*\013:ce=4\035:cl=100\014:cm=\036%r%+ %+ :\ + :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=^_: +# (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: 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=\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 +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 in 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=^\\::\ + :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%+ %+ :ho=\EH:k0=\EP:k1=\EQ:k2=\ER:\ + :k3=\E\s:k4=\E!:k5=\E":k6=\E#:k7=\E$:k8=\E%:k9=\E&:kd=\EB:\ + :kh=\EH:kl=\ED:kr=\EC:ku=\EA: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%+ %+ :ho=\EH: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=^\\::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=lfmekcjdttuvvuwsqax`nb: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):\ + :am:bs:eo:ms:\ + :co#88:it#8:li#32:\ + :ac=lfmekcjdttuvvuwsqax`nb: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[0;7m\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[0;7m:so=\E[m:ta=^I:ue=\E[0;7m:up=\E[A:us=\E[4m:\ + :ve=\E[5l:vi=\E[5h: + +# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL; +# :is: revised by Ferd Brundick +# +# 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:\ + :am:bs:pt:xn:xo:\ + :co#132: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=^J:ke=\E[?1l\E>:kl=^H: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: +# 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:\ + :am:bs:eo:ms:xn:\ + :co#88:dN#30:it#8:li#32:\ + :ac=lfmekcjdttuvvuwsqax`nb:ae=\E[10m:al=\E[L:as=\E[11m:\ + :cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:dc=7\E[P:dl=\E[M:\ + :do=\E[B:ei=:ho=\E[H:ic=9\E[@:im=:ip=7: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: +# Lisaterm in 132 column ("wide") mode. +mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode:\ + :am:bs:eo:ms:xn:\ + :co#132:dN#30:it#8:li#32:\ + :ac=lfmekcjdttuvvuwsqax`nb:ae=\E[10m:al=\E[L:as=\E[11m:\ + :cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:dc=7\E[P:dl=\E[M:\ + :do=\E[B:ei=:ho=\E[H:ic=9\E[@:im=:ip=7: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: + +#### 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\:^A:me=\037!\E\:\0:mr=^_\s:nd=^F:se=^_!:so=^_\s:\ + :ue=^_#:up=^I:us=^_":ve=^E!:vi=^E\s: +# (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 +# (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=l_mbk`javewcquxs: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: + +#### Atari ST +# + +# From: Simson L. Garfinkel +atari|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 +uniterm|uniterm49|UniTerm VT220 emulator with 49 lines:\ + :5i:am:bs:mi:ms:xn:xo:\ + :co#80:it#8:li#49: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:\ + :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)0:ec=\E[%dX:ei=\E[4l:\ + :ho=\E[H:if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H:\ + :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:kh=\E[H: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=\E[m:\ + :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: +# 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 , 27 Feb 1996 +st52|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: + +#### 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 , 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 , 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 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 , 4 Dec 1995 +# (amiga: added empty 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 , 25 Sep 1999 +amiga-8bit|Amiga ANSI using 8-bit controls:\ + :bs:bw:ms:\ + :co#80:li#24:\ + :AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\ + :LE=\233%dD:RI=\233%dC:UP=\233%dA:ac=:ae=^O:al=\233L:as=^N:\ + :bl=^G:bt=\233Z:cd=\233J:ce=\233K:cl=\233H\233J:\ + :cm=\233%i%d;%dH:cr=^M:dc=\233P:dl=\233M: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=\204:so=\2337m:\ + :sr=\215:ta=^I:te=\233?7h:ti=\233?7l:ue=\2330m:up=\233A:\ + :us=\2334m:vb=^G:ve=\233 p:vi=\2330 p: + +# Commodore B-128 microcomputer from Doug Tyrol +# 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 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=\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. +# + +# This is the entry provided with minix 1.7.4, with bogus :ri: removed. +minix|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: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 +minix-old|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: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: + +pc-minix|minix console on an Intel box:\ + :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:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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=: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: + +# 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/lib/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 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:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\EY:ce=\ET:cl=300\E*:cm=\E=%+ %+ :cr=^M:\ + :do=5000\n:ho=^^:kb=^H:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:ma=^K^P:\ + :me=\E):nd=^L:nl=^J:r1=^N:rs=^N:se=\E):sf=^J:so=\E(:up=^K: +# luna's BMC terminal emulator +luna|luna68k|LUNA68K Bitmap console:\ + :am:bs:xo:\ + :co#88:li#46:\ + :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\ + :do=^J:ho=\E[H:sf=^J: +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 +# + +# From: Alexandre Montaron , 18 Jun 1998 +# +minitel1|minitel 1:\ + :am:bw:es:hs:hz:ms:\ + :Co#8:co#40:li#24:pa#8:\ + :..Sf=\E%?%p1%{1}%=%tD%e%p1%{3}%=%tF%e%p1%{4}%=%tA%e%p1%{6}%=%tC%e%p1%{64}%+%c%;:\ + :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\:iC\E\:iE\021:le=^H:mb=\EH:\ + :me=\EI\E\\:mr=\E]:nd=^I:nw=^M^J:op=\EG:rp=%.\022%+?:\ + :..sa=%?%p1%t\E]%;%?%p3%t\E]%;%?%p4%t\EH%;: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):\ + :am:bw:es:hs:hz:mi:ms:\ + :Co#8:co#40:li#24:pa#8:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\ + :RI=\E[%dC:\ + :..Sf=\E%?%p1%{1}%=%tD%e%p1%{3}%=%tF%e%p1%{4}%=%tA%e%p1%{6}%=%tC%e%p1%{64}%+%c%;:\ + :UP=\E[%dA:ac=f0g1,,+../:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:\ + :ce=^X:cl=^L:cm=\037%+A%+A:cr=^M:dc=\E[P:dl=\E[M:do=^J:\ + :eA=^Y:ei=\E[4l:fs=^J:ho=^^:i1=\E;iYA\E;jYC:im=\E[4h:\ + :is=\E;`ZQ\E\:iC\E\:iE\021: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:le=^H:mb=\EH:me=\EI\E\\:\ + :mr=\E]:nd=^I:nw=^M^J:op=\EG:rp=%.\022%+?:\ + :..sa=%?%p1%t\E]%;%?%p3%t\E]%;%?%p4%t\EH%;:se=\E\\:\ + :sf=^J:so=\E]:sr=^K:ts=\037@%+A:up=^K:ve=^Q:vi=^T: +# :ke: posait des problemes (logout en sortant de vi). +minitel1b-80|minitel 1-bistandard (standard teleinformatique):\ + :es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :@8=\EOM:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ac=f0g1,,+../: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:dc=\E[P:dl=\E[M:do=^J:eA=^Y:ei=\E[4l:\ + :fs=^J:ho=\E[H:im=\E[4h:k0=\EOp:k1=\EOq:k2=\EOr:k3=\EOs:\ + :k4=\EOt:k5=\EOu:k6=\EOv:k7=\EOw:k8=\EOx:k9=\EOy: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:kt=^I:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\ + :me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\ + :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ts=\037@%+A:\ + :ue=\E[24m:up=\E[A:us=\E[4m:ve=\037@A\021\n:\ + :vi=\037@A\024\n: +# \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 , 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:SF=^J:SR=\EM: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\:1}\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: + +######## 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 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:\ + :am:eo:ul:xo:\ + :co#88:it#8:li#72:\ + :AL=\EF%+ :DC=\Ee%+ :DL=\EE%+ :IC=\Ef%+ :al=\EF!:bl=^G:\ + :cd=\EJ:ce=\EK:cl=^L:cm=\EY%r%+ %+ :cr=^M:dc=\Ee!:dl=\EE!:\ + :do=^J:ei=\ER:im=\EQ:k1=\Ex:k2=\Ey:k3=\Ez:kb=^H:kd=\EB:\ + :kl=\ED:kr=\EC:ku=\EA:le=\ED:nd=\EC:pO=\EP%03:pf=^T:po=^R:\ + :se=\EV!:sf=^J:so=\EU!:ta=^I:ue=\EV":up=\EA:us=\EU":vb=\E^G: + +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 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):\ + :bs:xn:\ + :co#85:li#64:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=%i\E[%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dl=\E[M:do=\E[B:is=\E>\E[?5l\E[?7h:\ + :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=\n:so=\E[7m:ta=^I:\ + :up=\E[A:vb=\E[?5h\E[?5l: +bg2.0rv|bg3.10rv|bbn bitgraph 2.0 (reverse video):\ + :bs:xn:\ + :co#85:li#64:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=%i\E[%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dl=\E[M:do=\E[B:is=\E>\E[?5h\E[?7h:\ + :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=\n:so=\E[7m:ta=^I:\ + :up=\E[A:vb=\E[?5l\E[?5h: +bg2.0|bg3.10|bbn bitgraph 2.0 or later (no init):\ + :bs:xn:\ + :co#85:li#64:\ + :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=%i\E[%d;%dH:\ + :cr=^M:cs=\E[%i%d;%dr:dl=\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=\n:so=\E[7m:ta=^I:up=\E[A: + +bg1.25rv|bbn bitgraph 1.25 (reverse video):\ + :co#85:li#64:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=%i\E[%d;%dH:cr=^M:dl=\E[M:do=\E[B:\ + :is=\E>\E[?5h\E[?7h: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=\n:\ + :so=\E[7m:ta=^I:up=\E[A:vb=\E[?5l\E[?5h: +bg1.25nv|bbn bitgraph 1.25 (normal video):\ + :co#85:li#64:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=%i\E[%d;%dH:cr=^M:dl=\E[M:do=\E[B:\ + :is=\E>\E[?5l\E[?7h: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=\n:\ + :so=\E[7m:ta=^I:up=\E[A:vb=\E[?5h\E[?5l: +# (bg1.25: I added / based on the init string -- esr) +bg1.25|bbn bitgraph 1.25:\ + :co#85:li#64:\ + :RA=\E[?7l:SA=\E[?7h:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[J:cm=%i\E[%d;%dH:cr=^M:dl=\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=\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: ^[[?h\EPY99\:98\E\\:\ + :i2=\Eb\E[?;12;18;?h\EPY99\:98\E\\:\ + :ts=\EPY99\:98\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:\ + :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:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggj)k,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%df:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[0;98v\E[2J\E[v:ei=\E[4l:fs=\E[v:ho=\E[H:\ + :i1=\E[?=h\Ec\E`\E[?>h\EPY99\:98\E\\:i2=\Eb:im=\E[4h:\ + :is=\E[5;>;12;18;?h\EPY99\:98\E\\:\ + :ts=\E[0;98v:ue=\E[m:up=\E[A:us=\E[0;4m:ve=\E[r:vi=\E[1r: +tws2103|xdku|BULL Questar tws2103:\ + :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:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggj)k,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%df:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\EPY99\:98\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\:98\E\\:\ + :i2=\Eb\E[?;12;18;?h\EPY99\:98\E\\:\ + :ts=\EPY99\:98\E\\\E[0;98v\E[2;7m:ue=\E[m:up=\E[A:\ + :us=\E[0;4m:ve=\E[r:vi=\E[1r: +tws2103-sna|dku7103-sna|BULL Questar tws2103 for SNA:\ + :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:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggj)k,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%df:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\E[0;98v\E[2J\E[v:ei=\E[4l:fs=\E[v:ho=\E[H:\ + :i1=\E[?=h\Ec\E`\E[?>h\EPY99\:98\E\\:i2=\Eb:im=\E[4h:\ + :is=\E[5;>;12;18;?h\EPY99\:98\E\\:\ + :ts=\E[0;98v:ue=\E[m:up=\E[A:us=\E[0;4m:ve=\E[r:vi=\E[1r: +dku7102-old|BULL Questar 200 DKU7102 (microcode version < 6):\ + :am:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#24:ws#80:\ + :DC=\E[%dP:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggj)k,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K\E[m:\ + :cl=\E[2J\E[H:cr=^M:ct=\E[2g:dc=\E[P:do=^J:\ + :ds=\EPY99\:98\E\\\E[0;98v\E[2J\E[H\E[v:ei=\E[4l:\ + :fs=\E[v:ho=\E[H:i1=\E[?=h\Ec\E`\E[?>h\EPY99\:98\E\\:\ + :i2=\Eb\E[?;12;18;?h\EPY99\:98\E\\:\ + :ts=\EPY99\:98\E\\\E[0;98v\E[H\E[2;7m:ue=\E[m:up=\E[A:\ + :us=\E[0;4m:ve=\E[r:vi=\E[1r: +dku7202|BULL Questar 200 DKU7202 (colour/character attributes):\ + :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:LE=\E[%dD:\ + :RI=\E[%dC:UP=\E[%dA:\ + :ac=``aaffggj)k,l&m#n/ooppq*rrsst'u-v+w.x%yyzz{{||}}~~:\ + :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J:\ + :cm=\E[%i%d;%df:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=^J:\ + :ds=\EPY99\:98\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\:98\E\\:\ + :i2=\E[?3h\Eb:im=\E[4h:\ + :is=\E[5;>;12;18;?h\EPY99\:98\E\\:\ + :ts=\EPY99\:98\E\\\E[0;98v\E[2;7m:ue=\E[m:up=\E[A:\ + :us=\E[0;2m:ve=\E[r:vi=\E[1r: + +#=========================================================# +# 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:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :%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~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:K2=\EOu:\ + :K3=\EOy:K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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~:k;=\E[21~: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:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3l:rc=\E8:s0=\E(B:\ + :s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:vs=\E[?25h: +bg300-rv|Bull vt320 reverse 80 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :%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~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:K2=\EOu:\ + :K3=\EOy:K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?5h\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~:k;=\E[21~: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:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3l:rc=\E8:s0=\E(B:\ + :s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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[?5l\E[?5h:ve=\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h: +bq300-w|Bull vt320 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :%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~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:K2=\EOu:\ + :K3=\EOy:K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?3h\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~:k;=\E[21~: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:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3h:rc=\E8:s0=\E(B:\ + :s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:vs=\E[?25h: +bq300-w-rv|Bull vt320 reverse mode 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :%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~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\ + :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:K2=\EOu:\ + :K3=\EOy:K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?3h\E[?5h\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~:k;=\E[21~: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:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=\E[D:mb=\E[5m:\ + :md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3h:rc=\E8:s0=\E(B:\ + :s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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[?5l\E[?5h:ve=\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h: + +# 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) +bq300-8|Bull vt320 full 8 bits 80 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :%0=\23329~:%1=\23328~:*6=\2334~:@0=\2331~:AL=\233%dL:\ + :DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:F7=\23331~:\ + :F8=\23332~:F9=\23333~:FA=\23334~:IC=\233%d@:K1=\217w:\ + :K2=\217u:K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:\ + :RA=\233?7l:RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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:k6=\23317~:\ + :k7=\23318~:k8=\23319~:k9=\23320~:k;=\23321~:kD=\2333~:\ + :kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\ + :ke=\233?1l\E>:kl=\233D:kr=\233C:ku=\233A:l1=pf1:l2=pf2:\ + :l3=pf3:l4=pf4:mb=\2335m:md=\2331m:me=\2330m\E(B:\ + :mr=\2337m:nw=\EE:pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:\ + :r2=\E[?3l:rc=\E8:s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5h\233?5l:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-8rv|Bull vt320 8-bit reverse mode 80 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :%0=\23329~:%1=\23328~:*6=\2334~:@0=\2331~:AL=\233%dL:\ + :DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:F7=\23331~:\ + :F8=\23332~:F9=\23333~:FA=\23334~:IC=\233%d@:K1=\217w:\ + :K2=\217u:K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:\ + :RA=\233?7l:RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :k1=\217P:k2=\217Q:k3=\217R:k4=\217S:k6=\23317~:\ + :k7=\23318~:k8=\23319~:k9=\23320~:k;=\23321~:kD=\2333~:\ + :kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\ + :ke=\233?1l\E>:kl=\233D:kr=\233C:ku=\233A:l1=pf1:l2=pf2:\ + :l3=pf3:l4=pf4:mb=\2335m:md=\2331m:me=\2330m\E(B:\ + :mr=\2337m:nw=\EE:pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:\ + :r2=\E[?3l:rc=\E8:s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5l\233?5h:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-8w|Bull vt320 8-bit 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :%0=\23329~:%1=\23328~:*6=\2334~:@0=\2331~:AL=\233%dL:\ + :DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:F7=\23331~:\ + :F8=\23332~:F9=\23333~:FA=\23334~:IC=\233%d@:K1=\217w:\ + :K2=\217u:K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:\ + :RA=\233?7l:RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :k1=\217P:k2=\217Q:k3=\217R:k4=\217S:k6=\23317~:\ + :k7=\23318~:k8=\23319~:k9=\23320~:k;=\23321~:kD=\2333~:\ + :kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\ + :ke=\233?1l\E>:kl=\233D:kr=\233C:ku=\233A:l1=pf1:l2=pf2:\ + :l3=pf3:l4=pf4:mb=\2335m:md=\2331m:me=\2330m\E(B:\ + :mr=\2337m:nw=\EE:pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:\ + :r2=\233?3h:rc=\E8:s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5h\233?5l:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-w-8rv|Bull vt320 8-bit reverse mode 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :%0=\23329~:%1=\23328~:*6=\2334~:@0=\2331~:AL=\233%dL:\ + :DC=\233%dP:DL=\233%dM:DO=\233%dB:F1=\23323~:F2=\23324~:\ + :F3=\23325~:F4=\23326~:F5=\23328~:F6=\23329~:F7=\23331~:\ + :F8=\23332~:F9=\23333~:FA=\23334~:IC=\233%d@:K1=\217w:\ + :K2=\217u:K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:\ + :RA=\233?7l:RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :k1=\217P:k2=\217Q:k3=\217R:k4=\217S:k6=\23317~:\ + :k7=\23318~:k8=\23319~:k9=\23320~:k;=\23321~:kD=\2333~:\ + :kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\ + :ke=\233?1l\E>:kl=\233D:kr=\233C:ku=\233A:l1=pf1:l2=pf2:\ + :l3=pf3:l4=pf4:mb=\2335m:md=\2331m:me=\2330m\E(B:\ + :mr=\2337m:nw=\EE:pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:\ + :r2=\233?3h:rc=\E8:s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5l\233?5h:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: + +# 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:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[29~:F2=\E[31~:IC=\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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=\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:kd=\E[B:\ + :ke=\E[?1l\E>:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3l:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:vs=\E[?25h: +bq300-pc-rv|Questar 303 with PC keyboard reverse mode 80 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[29~:F2=\E[31~:IC=\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :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:kd=\E[B:\ + :ke=\E[?1l\E>:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3l:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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[?5l\E[?5h:ve=\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h: +bq300-pc-w|Questar 303 with PC keyboard 132 columns terminal:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[29~:F2=\E[31~:IC=\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :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:kd=\E[B:\ + :ke=\E[?1l\E>:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3h:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:vs=\E[?25h: +bq300-pc-w-rv|Questar 303 with PC keyboard reverse mode 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\ + :F1=\E[29~:F2=\E[31~:IC=\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:\ + :K4=\EOq:K5=\EOs: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=\E[B:\ + :ds=\E[1$}\E[2$~\n\E[0$}:eA=\E(B\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[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l:\ + :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:kd=\E[B:\ + :ke=\E[?1l\E>:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\ + :mb=\E[5m:md=\E[1m:me=\E[0m\E(B:mr=\E[7m:nd=\E[C:nw=\EE:\ + :pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[!p:r2=\E[?3h:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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[?5l\E[?5h:ve=\E[?25h:\ + :vi=\E[?25l:vs=\E[?25h: +# 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:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :@7=\2334~:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:\ + :F1=\23329~:F2=\23331~:IC=\233%d@:K1=\217w:K2=\217u:\ + :K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:RA=\233?7l:\ + :RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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=\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:kd=\233B:\ + :ke=\233?1l\E>:kh=\2331~:kl=\233D:kr=\233C:ku=\233A:\ + :mb=\2335m:md=\2331m:me=\2330m\E(B:mr=\2337m:nw=\EE:\ + :pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:r2=\E[?3l:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5h\233?5l:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-8-pc-rv|Questar 303 with PC keyboard full 8 bits reverse mode 80 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:ws#80:\ + :@7=\2334~:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:\ + :F1=\23329~:F2=\23331~:IC=\233%d@:K1=\217w:K2=\217u:\ + :K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:RA=\233?7l:\ + :RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :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:kd=\233B:\ + :ke=\233?1l\E>:kh=\2331~:kl=\233D:kr=\233C:ku=\233A:\ + :mb=\2335m:md=\2331m:me=\2330m\E(B:mr=\2337m:nw=\EE:\ + :pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:r2=\E[?3l:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\E[?5l\E[?5h:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-8-pc-w|Questar 303 with PC keyboard full 8 bits 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :@7=\2334~:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:\ + :F1=\23329~:F2=\23331~:IC=\233%d@:K1=\217w:K2=\217u:\ + :K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:RA=\233?7l:\ + :RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?3h\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :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:kd=\233B:\ + :ke=\233?1l\E>:kh=\2331~:kl=\233D:kr=\233C:ku=\233A:\ + :mb=\2335m:md=\2331m:me=\2330m\E(B:mr=\2337m:nw=\EE:\ + :pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:r2=\E[?3h:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\233?5h\233?5l:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: +bq300-8-pc-w-rv|Questar 303 with PC keyboard full 8 bits reverse 132 columns:\ + :5i:am:eo:es:hs:km:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:ws#132:\ + :@7=\2334~:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:\ + :F1=\23329~:F2=\23331~:IC=\233%d@:K1=\217w:K2=\217u:\ + :K3=\217y:K4=\217q:K5=\217s:LE=\233%dD:RA=\233?7l:\ + :RI=\233%dC:SA=\233?7h:UP=\233%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O:as=^N:bl=^G:cb=\2331K:cd=\233J:ce=\233K:\ + :cl=\233H\233J:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:\ + :ct=\2333g:dc=\233P:ds=\2331$}\2332$~\n\2330$}:\ + :eA=\E(B\E)0: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[?3h\E[?5h\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l:\ + :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:kd=\233B:\ + :ke=\233?1l\E>:kh=\2331~:kl=\233D:kr=\233C:ku=\233A:\ + :mb=\2335m:md=\2331m:me=\2330m\E(B:mr=\2337m:nw=\EE:\ + :pf=\2334i:po=\2335i:ps=\233i:r1=\E[!p:r2=\E[?3h:rc=\E8:\ + :s0=\E(B:s1=\E(0:\ + :..sa=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;:\ + :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:us=\2334m:vb=\E[?5l\E[?5h:ve=\233?25h:\ + :vi=\233?25l:vs=\233?25h: + +#======================================================# +# 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 ^[[

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:\ + :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^:FB=\E1:FC=\E5:FD=\E7:\ + :FE=\E9:FF=\E;:FG=\E=:FH=\E?:FI=\EQ:FJ=\ES:FK=\EV:FL=\E]:\ + :FM=\E_:ac=jdkblamcnkqitgufvhwexj0p:ae=\EF:as=\EG:bl=^G:\ + :bt=\E[Z:cd=\EJ:ce=\EK:cl=\E`:cm=\E[%i%03%03f: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\::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[001001024132024132u\E[01u:k1=\E0:k2=\E2:\ + :k3=\E6:k4=\E8:k5=\E\::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[001001024080072080u\E[01u:k1=\E0:k2=\E2:\ + :k3=\E6:k4=\E8:k5=\E\::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[001001024132072132u\E[01u:k1=\E0:k2=\E2:\ + :k3=\E6:k4=\E8:k5=\E\::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[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\0:up=^K: + +#### Computer Automation +# + +ca22851|computer automation 22851:\ + :am:\ + :co#80:li#24:\ + :bl=^G:cd=^\:ce=^]:cl=\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=\020:ce=\017:cl=\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=\016A\016\035:bl=^G:cd=\016@\026:ce=\016@\026:\ + :cl=\030:cm=\020%+ %+ :cr=^M:dc=\016A\036:\ + :dl=\016A\016\036:do=^J:ei=:ho=^Y:ic=\016A\035:im=:le=^H:\ + :nd=^U:se=^NG:sf=^J:so=^NF:ta=\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 , 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\0\230\0\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\0\230\0\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:\ + :..wi=\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 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: +# (/:ae:/:as: capabilities aren't in DEC's official entry -- esr) +vt52|dec vt52:\ + :bs:\ + :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: + +# (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=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=\r:do=^J:\ + :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:sf=\n:sr=\EI:ta=^I:\ + :up=\EA: + +# The gigi does standout with red! +# (gigi: I added / 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:\ + :hc:\ + :co#132:li#66:\ + :bl=^G:cr=^M:do=^J:hd=\EK:hu=\EL:kb=^H:kd=^J:kl=^H:me=\E[m:\ + :nw=^M^J:se=\E[22m:sf=^J:so=\E[1m:ta=^I:ue=\E[24m:us=\E[4m: + +#### 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 / 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 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:\ + :am:bs:ms:xn:xo:xt:\ + :co#80:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\E[C:rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:sf=^J:sr=\EM:st=\EH:ta=^I:up=\E[A: + +#### 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 / based on the init string; +# also added empty 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=\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=\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:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=: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=1.5<1.5/>:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:\ + :k7=\EQ:k8=\ER:kb=^H:kd=\EB:ke=\Eu:kh=\EH:kl=\ED:kr=\EC:\ + :ks=\Et: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-us|h19us|h19-smul|heathkit w/keypad shifted/underscore cursor:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=: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=1.5<1.5/>:k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:\ + :k7=\EQ:k8=\ER:kb=^H:kd=\EB:ke=\Eu:kh=\EH:kl=\ED:kr=\EC:\ + :ks=\Et: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: +# (h19: merged in :ip: from BSDI hp19-e entry>; +# also added empty to suppress a tic warning --esr) +# From: Tim Pierce , 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=: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=1.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:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=: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=1.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: +h19-g|h19g|heathkit w/block cursor:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=: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=1.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=\Ex4:\ + :vs=\Ex4: +alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#60:\ + :ac=:ae=\EG:al=\EL:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EE:\ + :cm=\EY%+ %+ :cr=^M:dc=\EN:dl=\EM:do=\EB:ei=\EO:fs=\Ek\Ey5:\ + :ho=\EH:im=\E@:ip=1.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: + +# 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 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=\EJ:ce=\EK:\ + :cl=\EE:cm=\EY%+ %+ :cr=^M:dc=\EN:dl=1\EM:do=\EB:ds=\Ey1:\ + :ei=\EO:fs=\Ek\Ey5:ho=\EH:ic=\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=\n:so=\Ep:\ + :sr=2\EI:ta=^I:..ts=\Ej\Ex5\Ex1\EY8%+ \Eo: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. 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:\ + :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[>1;2;3;4;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-nkc-bc|h29a-nkc-bc|z29 ansi mode with block cursor and no keyclick:\ + :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[>2;4h\E[>1;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-nkc-uc|h29a-nkc-uc|z29 ansi mode with underscore cursor and no keyclick:\ + :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[>2h\E[>1;3;4;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: +# From: Jeff Bartig 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=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~0a:\ + :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\0: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 +z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor:\ + :bs:mi:ms:pt:\ + :co#80:it#8:kn#10:li#24:\ + :ac=: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\Em70:vs=\Ex4\Em71: +# (z100bw: removed obsolete ":kn#10:", added empty -- 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=: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:\ + :am:bs:es:hs:mi:ms:\ + :co#80:it#8:li#24:\ + :ac=:ae=\EG:al=2*\EL:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EE:\ + :cm=\EY%+ %+ :cr=^M:dc=\EN:dl=2*\EM:do=\EB:ei=\EO:\ + :fs=\Ek\Ey5:ho=\EH:im=\E@:ip=1.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: +# From: +# (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:..ts=\Ej\Ex5\Ex1\EY8%+ \Eo: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 Sun Oct 27 07:21:05 1985 +ims950-b|bare ims950 no init string:\ + :am:bs:hs:mi:ms:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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:\ + :kA=\EE:kB=\EI:kC=\E*:kD=\EW:kE=\Et:kI=\EQ:kL=\ER:kS=\Ey:\ + :le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:\ + :so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8: +# (ims950: removed obsolete ":ko@:" -- esr) +ims950|ims televideo 950 emulation:\ + :am:bs:hs:mi:ms:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r:\ + :kA=\EE:kB=\EI:kC=\E*:kD=\EW:kE=\Et:kI=\EQ:kL=\ER:kS=\Ey:\ + :le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:\ + :so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8: +# (ims950-rv: removed obsolete ":ko@:" -- esr) +ims950-rv|ims tvi950 rev video:\ + :am:bs:hs:mi:ms:xo:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :ac=d\rc\014e\nb\011i\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\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:\ + :kA=\EE:kB=\EI:kC=\E*:kD=\EW:kE=\Et:kI=\EQ:kL=\ER:kS=\Ey:\ + :le=^H:me=\EG0:mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:\ + :so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:\ + :us=\EG8: +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: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=\E~k<10*>:ce=\E~K:cl=\014:cm=\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=\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:\ + :am:bs:\ + :co#80:li#25:\ + :bl=^G:ce=\EK:ch=\020%B%.:cl=^L:cm=\016%.\020%B%.:cr=^M:\ + :cv=\013%.:do=^J:ho=^A:le=^H:ll=^K^X\r:nd=^F:se=\E0@:sf=^J:\ + :so=\E0P:up=^Z: + +#### 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 +# and Mike Meyer at the +# University of Wisconsin. + +# (graphos: removed obsolete and syntactically incorrect :kn=4:, +# removed :if=/usr/share/tabset/init.graphos: and +# 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:\ + :am:mi:\ + :co#80:it#8:li#30:\ + :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;30z: + +#### 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 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:\ + :am:bs:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:\ + :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:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=5\EM\E[K:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:vs=\E^9;0s\E^7;1s: +# 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%+ %+ :\ + :is=\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:\ + :le=^H:nd=2\EC:sr=5\EI:ta=^I:up=2\EA: +# +# Modgraph from Nancy L. Cider +# BUG NOTE from Barbara E. Ringers : +# 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 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,{.yOi-x`|jGkFlEmDnHtLuKvNwMxIqJ:ae=\E%:al=\EE:\ + :as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\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:me=\EG0:mh=\EG2:mr=\EG4:nd=^L:nw=^_:se=\EG0:\ + :sf=^J:so=\EG4:ta=^I:te=:ti=\E"2\EG0\E]:ue=\EG0:up=^K:\ + :us=\EG1:vb=\EK1\EK0:ve=\E"2:vi=\E"0: + +#### 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:nd=\ED:se=\Ec\ED:so=\Eb\ED:ta=\EZ:ue=\Eg\ED:\ + :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:\ + :bs:ms:pt:xo:\ + :co#160:it#8:kn#4:li#48: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[48;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: + +#### 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:\ + :bs:mi:ms:pt:xo:\ + :co#132: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: + +#### 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=^_\s:nd=\E[C:\ + :nw=^M^J:se=^_!:sf=^J:so=^_\s:ta=^I:ue=^_#:up=\E[A:us=^_": + +#### Soroc +# +# Alan Frisbie 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:\ + :am:bs:\ + :co#80:li#24:\ + :bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:\ + :kd=^J:kl=^H:kr=^L:ku=^K:le=^H:ma=^K^P:nd=^L:nl=^J:r1=^N:\ + :rs=^N:sf=^J:up=^K: +soroc140|iq140|soroc iq140:\ + :am:bs:mi:\ + :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=\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: + +#### Synertek +# +# Bob Manson 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:\ + :am:bs:da:db:ms:xn:xo:\ + :co#80:it#8:li#24:lm#96:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E[?7h\E[?3l\E[?5l:k0=\EOy:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:\ + :k9=\EOw:k;=\EOx:kb=^H:kd=\E[B:kl=\E[D:kr=\EOC:ku=\E[A:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +tab132-w|tab132 in wide mode:\ + :am:bs:da:db:ms:xn:xo:\ + :co#132:it#8:li#24:lm#96:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E[?7h\E[?3h\E[?5l:k0=\EOy:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:\ + :k9=\EOw:k;=\EOx:kb=^H:kd=\E[B:kl=\E[D:kr=\EOC:ku=\E[A:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +tab132-rv|tab132 in reverse-video mode:\ + :am:bs:da:db:ms:xn:xo:\ + :co#80:it#8:li#24:lm#96:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E[?7h\E[?3l\E[?5h:k0=\EOy:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:\ + :k9=\EOw:k;=\EOx:kb=^H:kd=\E[B:kl=\E[D:kr=\EOC:ku=\E[A:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: +tab132-w-rv|tab132 in reverse-video/wide mode:\ + :am:bs:da:db:ms:xn:xo:\ + :co#132:it#8:li#24:lm#96:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ei=\E[4l:\ + :ho=\E[H:im=\E[4h:is=\E[?7h\E[?3h\E[?5h:k0=\EOy:k1=\EOP:\ + :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:\ + :k9=\EOw:k;=\EOx:kb=^H:kd=\E[B:kl=\E[D:kr=\EOC:ku=\E[A:\ + :le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\ + :rc=\E8:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :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: + + +#### 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. +# +#% Teleray: Steve Schaefgen (612)-941-3300 (Sales Manager) + +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\s: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=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\014:cm=\EY%+ %+ :cr=^M:\ + :ct=\EG:dc=\EQ:dl=\EM:do=^J:ei=:ho=\EH:ic=\EP:im=:ip=:\ + :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=\s\ERD:st=\EF:ta=^I:ue=\ER@:\ + :up=\EA:us=\ERH: +t1061f|teleray 1061 with fast PROMs:\ + :am:bs:km:xs:xt:\ + :co#80:it#8:li#24:sg#1:ug#1:\ + :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\014:cm=\EY%+ %+ :cr=^M:\ + :ct=\EG:dc=\EQ:dl=\EM:do=^J:ei=:ho=\EH:ic=\EP:im=:\ + :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=\s\ERD:st=\EF:ta=^I:ue=\ER@:\ + :up=\EA:us=\ERH: +# "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 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:\ + :ei=:ho=\EH:ic=\EP:im=:le=^H:nd=\EC:pc=\0: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=\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:\ + :5i:am:bs:da:db:in:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :%0=\E[29~:%1=\E[28~:%9=^X:*6=\E[4~:@0=\E[1~:@4=\E[29~:\ + :@8=^J:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[29~:\ + :F2=\E[31~: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\017:al=\E[L:as=\016:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ff=^L:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:ip=:\ + :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:kb=^H:\ + :kd=\E[B:kh=\E[H: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=\E[m:mp=\E&:\ + :mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\E[?3l:r2=\E[!p:rc=\E8:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:st=\E[0W:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: +# +# Texas Instruments 916 VDT 8 bit control mode +# +ti916-8|ti916-220-8|Texas Instruments 916 VDT 8859/1 8 vt220 mode bit CTRL:\ + :5i:am:bs:da:db:in:mi:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :%0=\E[29~:%1=\E[28~:%9=^X:*6=\E[4~:@0=\E[1~:@4=\23329~:\ + :@8=^J:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\23329~:\ + :F2=\23331~: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\017:al=\E[L:as=\016:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ff=^L:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:ip=:\ + :is=\E[1;24r\E[24;1H: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:kb=^H:kd=\233B:kh=\233H:kl=\233D:kr=\233C:\ + :ku=\233A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mp=\E&:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[?3l:r2=\E[!p:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\E[0W:ta=^I:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :vs=\E[?25h: +# +# Texas Instruments 916 VDT 8859/1 7 bit control 132 column mode +# +ti916-132|Texas Instruments 916 VDT vt220 132 column:\ + :5i:am:bs:da:db:in:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :%0=\E[29~:%1=\E[28~:%9=^X:*6=\E[4~:@0=\E[1~:@4=\E[29~:\ + :@8=^J:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[29~:\ + :F2=\E[31~: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\017:al=\E[L:as=\016:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ff=^L:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:ip=:\ + :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:kb=^H:\ + :kd=\E[B:kh=\E[H: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=\E[m:mp=\E&:\ + :mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\E[?3l:r2=\E[!p:rc=\E8:sc=\E7:se=\E[27m:sf=\ED:\ + :so=\E[7m:sr=\EM:st=\E[0W:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: +# +# Texas Instruments 916 VDT 8859/1 8 bit control 132 column mode +# +ti916-8-132|Texas Instruments 916 VDT 8-bit vt220 132 column:\ + :5i:am:bs:da:db:in:mi:ms:xn:xo:\ + :co#132:it#8:li#24:vt#3:\ + :%0=\E[29~:%1=\E[28~:%9=^X:*6=\E[4~:@0=\E[1~:@4=\23329~:\ + :@8=^J:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\23329~:\ + :F2=\23331~: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:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=\017:al=\E[L:as=\016:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\ + :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\ + :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:\ + :do=^J:eA=\E(B\E)0:ec=\E[%dX:ei=\E[4l:ff=^L:ho=\E[H:\ + :if=/usr/share/tabset/vt100:im=\E[4h:ip=:\ + :is=\E[1;24r\E[24;1H: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:kb=^H:kd=\233B:kh=\233H:kl=\233D:kr=\233C:\ + :ku=\233A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:mb=\E[5m:\ + :md=\E[1m:me=\E[m:mp=\E&:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:\ + :po=\E[5i:ps=\E[i:r1=\E[?3l:r2=\E[!p:rc=\E8:sc=\E7:\ + :se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\E[0W:ta=^I:ue=\E[24m:\ + :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ + :vs=\E[?25h: +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=P\217>:k2=Q\217>:k3=R\217>:k4=S\217>:\ + :k5=~\23316>:k6=~\23317>:k7=~\23318>:k8=~\23319>:\ + :k9=~\23320>:kD=P\233>:kI=@\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:\ + :am:bs:xo:\ + :co#132: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-8w|Texas Instruments 924 VDT 8 bit - 132 column mode:\ + :am:xo:\ + :co#132: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=P\217>:k2=Q\217>:k3=R\217>:k4=S\217>:\ + :k5=~\23316>:k6=~\23317>:k7=~\23318>:k8=~\23319>:\ + :k9=~\23320>:kD=P\233>:kI=@\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: +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:\ + :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: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=\E[1S:\ + :so=\E[7m:sr=\E[1T:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\ + :ve=\E[?25h:vi=\E[?25l:vs=\E[?31h: +# (ti926-8: I corrected this from the broken SCO entry -- esr) +ti926-8|Texas Instruments 926 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:ct=\E[3g:dl=\E[M:do=\E[B:ho=\E[H:\ + :k1=P\217>:k2=Q\217>:k3=R\217>:k4=S\217>:k5=~\23316>:\ + :k6=~\23317>:k7=~\23318>:k8=~\23319>:k9=~\23320>:\ + :kD=P\233>:kI=@\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=\2331S:so=\E[7m:sr=\2331T:st=\EH:ta=^I:\ + :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:\ + :vs=\E[?31h: +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:\ + :am:eo:ut:xn:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :%9=\E[35~:@7=\E_1\E\\:@8=\E[8~:AB=\E[4%dm:AF=\E[3%dm:\ + :F1=\E[29~:F2=\E[31~:F3=\E[32~:F5=\E[34~: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[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: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 8 bit control mode +# +ti928-8|Texas Instruments 928 VDT 8859/1 8 bit CTRL:\ + :am:eo:ut:xn:xo:\ + :Co#8:co#80:it#8:li#25:pa#64:\ + :%9=\23335~:@7=\2371\234:@8=\2338~:AB=\E[4%dm:AF=\E[3%dm:\ + :F1=\23329~:F2=\23331~:F3=\23332~:F5=\23334~: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=\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:kb=^H:kd=\E[B:kh=\233H: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: + +#### 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 +# might work-- esr) +zen30|z30|zentec 30:\ + :am:bs:mi:ul:\ + :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:le=^H:me=\EG0:\ + :mh=\EG2:mk=\EG1:mr=\EG4:nd=^L:se=\EG0:sf=^J:so=\EG6:up=^K: +# (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:me=\EG0:\ + :mr=\EG4:se=\EG0:so=\EG4:up=^K: + +# CCI 4574 (Office Power) from Will Martin 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\s:mh=\EM!:mk=\EM(:\ + :mr=\EM$:nd=\EC:pf=^T:po=^R:se=\EM\s:so=\EM$:sr=\EI:\ + :ue=\EM\s:up=\EA:us=\EM0:ve=\EP:vs=\EF\EQ\EM \ER 7: + +######## OBSOLETE UNIX CONSOLES +# + +#### 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 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:DL=\E[M: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: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:\ + :co#80:it#8:li#24:sg#0:ug#0:\ + :*5=^Am\r:*8=^An\r:DL=\E[M: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: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:mb=\E[5p:me=\E[p:nd=\E[1C:nw=^M^J:\ + :se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[1A:\ + :us=\E[4m: +altos4|alt4|altos-4|altos IV:\ + :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=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\EF\r:ei=\Er:fs=^M:\ + :ho=^^:i1=\E`\:\E`9:im=\Eq:ip=: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(\EH\003:mh=\E`7\E):\ + :mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:\ + :po=^X:ps=\EP:px=\Ez%+?%s\177:\ + :..sa=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\ + :se=\E(:sf=\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: +# (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 +# imported by use=adm+sgr may work, let me know. -- esr) +altos7|alt7|altos VII:\ + :am:mi:\ + :co#80:li#24:sg#0:ug#0:\ + :*5=^Am\r:*8=^An\r:DL=\ER: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=l2m1k3j5t4u9v=w0q\:x6n8:\ + :al=\EE:cd=\EY:ce=\ET:cl=\E+^^:cm=\E=%+ %+ :cr=^M:dc=\EW:\ + :do=^J:ei=\Er:ho=^^:im=\Eq:\ + :is=\E`\:\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:me=\EG0:mh=\EGp:\ + :mk=\EG1:mr=\EG4:nd=^L:nw=^M^J:pf=\EJ:po=\Ed#:se=\EG0:sf=^J:\ + :so=\EG4:sr=\Ej:ta=^I:ue=\EG0:up=^K:us=\EG8: +altos7pc|alt7pc|altos PC VII:\ + :am:mi:\ + :co#80:li#24:sg#0:ug#0:\ + :*5=^Am\r:*8=^An\r:@7=\ET:DL=\ER: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=l2m1k3j5t4u9v=w0q\:x6n8:al=\EE:cd=\EY:ce=\ET:\ + :cl=\E+^^:cm=\E=%+ %+ :cr=^M:dc=\EW:do=^J:ei=\Er:ho=^^:\ + :im=\Eq:is=\E`\:\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:me=\EG0:\ + :mh=\EGp:mk=\EG1:mr=\EG4:nd=^L:nw=^M^J:pf=\EJ:po=\Ed#:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:ta=^I:ue=\EG0:up=^K:us=\EG8: + +#### Apollo consoles +# +# Apollo got bought by Hewlett-Packard. The Apollo workstations are +# labeled HP700s now. +# + +# From: Gary Darland +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+\s: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:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ho=\E[H:ip=:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +apollo_19L|apollo 19 inch display:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ho=\E[H:ip=:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: +apollo_color|apollo color display:\ + :am:bs:ms:xn:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ho=\E[H:ip=:\ + :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS: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[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\ + :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\ + :up=\E[A:us=\E[4m: + +#### 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 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 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=l m"k(j*v%w#q&x-:ae=^O:al=\034E:\ + :as=\Eo:bl=^G:cd=\034Y:ce=^\Z:cl=\014:cm=\034C%+ %+ :cr=^M:\ + :dc=\034W:dl=\034R:do=\n:ei=:ho=\036:ic=\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=\013:\ + :us=^\HP:ve=\E\\:vi=\E]:vs=\E\:: + +#### IBM Unix consoles +# + +# 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:S2=\E[11m:S3=\E[10m:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=\E[L:as=\E[11m: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:mb=\E[5m:\ + :md=\E[1m:me=\E[0;10m:mk=\E[8m:mr=\E[7m:nd=\E[C:\ + :..sa=\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:\ + :se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m: + + +#### 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:\ + :bs:km:mi:\ + :co#104:it#8:li#36:\ + :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: +masscomp2|masscomp large screen version 2:\ + :bs:km:mi:\ + :co#64:it#8:li#21:\ + :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: + +#### Sony NEWS workstations +# + +# (news-unk: this had :KB=news: -- esr) +news-unk|SONY NEWS vt100 emulator old 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/lib/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:\ + :am:bs:pt:xn:\ + :co#80:li#29:\ + :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/lib/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-euc: this had :TY=euc: --esr) +news-29-euc:\ + :am:bs:pt:xn:\ + :co#80:li#29:\ + :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/lib/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-sjis: this had :TY=sjis: --esr) +news-29-sjis:\ + :am:bs:pt:xn:\ + :co#80:li#29:\ + :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/lib/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-33: this had :TY=ascii: --esr) +news-33:\ + :am:bs:pt:xn:\ + :co#80:li#33:\ + :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/lib/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-33-euc: this had :TY=euc: --esr) +news-33-euc:\ + :am:bs:pt:xn:\ + :co#80:li#33:\ + :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/lib/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-33-sjis: this had :TY=sjis: --esr) +news-33-sjis:\ + :am:bs:pt:xn:\ + :co#80:li#33:\ + :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/lib/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-42: this had :TY=ascii: --esr) +news-42:\ + :am:bs:pt:xn:\ + :co#80:li#42:\ + :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/lib/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-42-euc: this had :TY=euc: --esr) +news-42-euc:\ + :am:bs:pt:xn:\ + :co#80:li#42:\ + :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/lib/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-42-sjis: this had :TY=sjis: --esr) +news-42-sjis:\ + :am:bs:pt:xn:\ + :co#80:li#42:\ + :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/lib/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-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/lib/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:\ + :am:bs:pt:xn:\ + :co#80:li#40: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8:\ + :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-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:\ + :am:bs:pt:xn:\ + :co#80:li#42: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/lib/tabset/vt100:\ + :is=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8: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: +# +# (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:\ + :am:bs:pt:xn:\ + :co#80:li#40: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8:\ + :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: +# +# (nwp513: this had :DE=^H: and the alias vt100-bm --esr) +nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines:\ + :am:bs:pt:xn:\ + :co#80:li#31: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8:\ + :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: +# +# (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:\ + :am:bs:pt:xn:\ + :co#80:li#33: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8:\ + :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: +# +# (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:\ + :am:bs:pt:xn:\ + :co#80:li#31: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8:\ + :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: +# +# (news28: this had :DE=^H:, I think that's :bs:, and :KB=nws1200: --esr) +news28|sony vt100 emulator 28 lines:\ + :am:bs:pt:xn:\ + :co#80:li#28: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28r\E8:\ + :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: +# +# (news29: this had :TY=ascii:KB=nws1200:\ --esr) +news29|news28-a|sony vt100 emulator 29 lines:\ + :am:bs:pt:xn:\ + :co#80:li#29: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/lib/tabset/vt100:\ + :is=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29r\E8:\ + :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: +# +# (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: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: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\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l: +# (news517: this had :TY=sjis:. --esr) +nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows:\ + :5i:am:bs:es:hs:mi:ms:xn:xo:\ + :co#80:it#8:li#30: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:\ + :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:ds=\E[1$~:eA=\E)0:\ + :ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:i2=\E[2$~\n:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\ + :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:kh=\E[H: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=\E[m:\ + :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:ts=\E[1$}\E[;%df:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l: +# (news517-w: this had :TY=sjis:. --esr) +nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows:\ + :5i:am:bs:es:hs:mi:ms:xn:xo:\ + :co#132:it#8:li#50: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:\ + :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:ds=\E[1$~:eA=\E)0:\ + :ec=\E[%dX:ei=\E[4l:fs=\E[0$}:ho=\E[H:i2=\E[2$~\n:\ + :if=/usr/share/tabset/vt100:im=\E[4h:\ + :is=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ + :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:kh=\E[H: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=\E[m:\ + :mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:ps=\E[i:\ + :r1=\E[?3l:rc=\E8:rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:\ + :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :ts=\E[1$}\E[;%df:ue=\E[24m:up=\E[A:us=\E[4m:\ + :vb=\E[?5h\E[?5l: + +#### Obsolete virtual-terminal types. +# + +# 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:\ + :bs:da:db:\ + :co#79: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: + +pty|4bsd pseudo teletype:\ + :am:bs:da:db:\ + :co#80:li#24:lm#0:\ + :al=\EP:bl=^G:cd=\EL:ce=\EK:cl=\EL:cm=\EG%+ %+ :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$:sf=^J:so=\Ea$:ue=\Eb!:\ + :up=\EA:us=\Ea!: + +######## OTHER OBSOLETE TYPES +# +# These terminals are *long* dead -- these entries are retained for +# historical interest only. +# + +#### Obsolete non-ANSI software 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 [...] -- repeat pattern. specifies the number of bytes +# in the pattern, 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 with attribute +# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c +# -- define window +# +# From: Eric S. Raymond 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.) +avatar0|avatar terminal emulator level 0:\ + :am:ms:ut:\ + :co#80:it#8:li#25:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=:ce=^V^G:cm=\026\010%.%.:cr=^M:do=^V^D:\ + :le=^V^E:mb=^A^V\177:md=^V^A^P:me=^V^A^G:mk=^V^A\0:\ + :mr=^A^Vp:nd=^V^F:rp=\031%.%d:rs=^L:\ + :..sa=\026\001%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p4%t{128}%|%;%?%p6%t%{16}%|%;:\ + :sf=^J:so=^A^Vp:up=^V^C:us=^V^A: +# From: Eric S. Raymond 1 Nov 1995 +avatar0+|avatar terminal emulator level 0+:\ + :am:ms:ut:\ + :co#80:it#8:li#25:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:as=:ce=^V^G:cm=\026\010%.%.:cr=^M:dc=^V^N:\ + :do=^V^D:ei=\026\n\0\0\0\0:im=^V^I:le=^V^E:mb=^A^V\177:\ + :md=^V^A^P:me=^V^A^G:mk=^V^A\0:mr=^A^Vp:nd=^V^F:\ + :rp=\031%.%d:rs=^L:\ + :..sa=\026\001%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p4%t{128}%|%;%?%p6%t%{16}%|%;:\ + :sf=^J:so=^A^Vp:up=^V^C:us=^V^A: +# From: Eric S. Raymond 1 Nov 1995 +avatar|avatar1|avatar terminal emulator level 1:\ + :am:ms:ut:\ + :co#80:it#8:li#25:\ + :RA=^V":SA=^V$:\ + :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234:\ + :ae=\E[10m:al=^V+:as=:ce=^V^G:cm=\026\010%.%.:cr=^M:\ + :dc=^V^N:dl=^V-:do=^V^D:ei=^V^P:im=^V^I:le=^V^E:\ + :mb=^A^V\177:md=^V^A^P:me=^V^A^G:mk=^V^A\0:mr=^A^Vp:\ + :nd=^V^F:rp=\031%.%d:rs=^L:\ + :..sa=\026\001%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p4%t{128}%|%;%?%p6%t%{16}%|%;:\ + :sf=^J:so=^A^Vp:up=^V^C:us=^V^A:ve=^V'^A:vi=^V'^B:vs=^V^C: + +#### 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:vs=\E[?25h: +rbcomm-nam|IBM PC with RBcomm without autowrap:\ + :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=^J:ec=\E[%dX:ed=:ei=^]:im=^\:\ + :is=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g:kb=^H:kd=^J:\ + :ke=\E>:kh=^A:kl=^H: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^J:\ + :r1=\017\E(B\E)0\025\E[?3l\E[>8g:rc=\E8:rp=\030%.%.:\ + :sc=\E7:se=^U:sf=^J:so=^R:sr=\EM:ta=^I:te=:ti=:ue=^U:up=^^:\ + :us=^T:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: +rbcomm-w|IBM PC with RBcomm in 132 column mode:\ + :am:bw:mi:ms:xn:\ + :co#132: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=^J:ec=\E[%dX:ed=:ei=^]:im=^\:\ + :is=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g:kb=^H:kd=^J:\ + :ke=\E>:kh=^A:kl=^H: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^J:\ + :r1=\017\E(B\E)0\025\E[?3l\E[>8g:rc=\E8:rp=\030%.%.:\ + :sc=\E7:se=^U:sf=^J:so=^R:sr=\EM:ta=^I:te=:ti=:ue=^U:up=^^:\ + :us=^T:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h: + +# 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 then 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:\ + :..Sb=\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:\ + :..Sf=\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:\ + :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=\EP:dl=\EM:\ + :do=^J:ei=\ER:im=\EQ:ip=: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:\ + :..sa=\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%;:\ + :sf=^J:so=\E&dD:st=\E1:ta=\011:up=\EA:us=\E&dD: + +# gs6300 - can't use blue foreground, it clashes with underline; +# it's simulated with cyan +# Bug: The capability probably resets attributes. +# (gs6300: commented out (no ) --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:\ + :..Sf=\E[?%?%p1%{0}%=%t0%e%p1%{1}%=%t2%e%p1%{1}%-%d%;m:\ + :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: 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):\ + :bs:da:db:es:hs:mi:ms:xt:\ + :co#80:li#24:\ + :ac=: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=1.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:ts=\Ej\Ex5\EY8%+ \Eo\Eo:up=\EA: + +# 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 +# (xtalk: I added / 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:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :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:ct=\E[3g:dl=\E[M:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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:me=\E[m:nd=\E[C:\ + :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:se=\E[m\s:sf=^J:\ + :so=\E[7m\s:sr=\EM:st=\EH:ta=^I:up=\E[A: + +# 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: + +#### 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=lJmFkCjXtEuPv\\wKqUxWnNo~s_`+a\:f'g#~_,Q+^.M-Sh#i#0\177:\ + :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:\ + :am:bs:ms:xo:\ + :co#80:it#8:li#24:vt#3:\ + :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\ + :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\ + :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\ + :ae=^O: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:do=^J:\ + :eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS: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[m\017:mr=\E[7m:\ + :nd=\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:\ + :..sa=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\ + :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: +# 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:\ + :am:bs:os:\ + :co#136:\ + :bl=^G:cr=^M:do=^J:hd=^\:hu=^^:le=^H:sf=^J: +# Adam Thompson 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 +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. +opus3n1+|Esprit Opus3n1+ in wy60 mode with ANSI arrow keys:\ + :am:bw:hs:km:mi:ms:ul:xo:\ + :Nl#8:co#80:lh#1:li#24:lw#8:ws#80:\ + :#2=\E{:%9=\EP:&3=\Er:@7=\E[F:@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:\ + :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\ + :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E*:cm=\Ea%i%dR%dC:\ + :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:ds=\Ez(\r:ei=\Er:fs=^M:\ + :ho=\036:if=/usr/share/tabset/std:im=\Eq:ip=:\ + :is=\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:\ + :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=\E[B:\ + :kh=^^:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\EG2:\ + :me=\E(\EH\003\EG0\EcD:mh=\EGp:mk=\EG1:mp=\E):mr=\EG4:\ + :nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=^R:\ + :ps=\EP:px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF:r3=\EwG\Ee(:\ + :..sa=%?%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:\ + :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=\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%p1%c\EG0:ue=\EG0:up=^K:us=\EG8:ve=\E`1:\ + :vi=\E`0: +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 +# 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 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 / 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: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 PLD +# abbreviation. +# +# (V) ECMA-48 calls this "Reverse Line Feed" but retains the RI abbreviation. +# +# (W) RM/SM modes are as follows: 1 = Guarder 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 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 ;H (cup) cursor to line n and column m +# CSI ;f cursor to line n and column m +# CSI @ (ich) insert characters +# CSI A (cuu) cursor up n lines +# CSI B (cud) cursor down n lines +# CSI C (cuu) cursor right n characters +# CSI D (cud) cursor left n characters +# CSI E cursor down n lines and in first column +# CSI F cursor up n lines and in first column +# CSI G (hpa) position cursor at column n-1 +# CSI J (ed) erase in display +# CSI K (el) erase in line +# CSI L (il) insert line(s) +# CSI P (dch) delete characters +# CSI S (indn) scroll up n lines +# CSI T (rin) scroll down n lines +# CSI X (ech) erase characters +# CSI Z (cbt) back up n tab stops +# CSI ` cursor to column n on line +# CSI a (cuu) cursor right n characters +# CSI d (vpa) cursor to line n +# CSI e cursor down n lines and in first column +# CSI g (cbt) clear all tabs +# CSI 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 =A set overscan color +# CSI =F set normal foreground color +# CSI =G set normal background color +# CSI =H set reverse foreground color +# CSI =I set reverse foreground color +# CSI =J set graphic foreground color +# CSI =K set graphic foreground color +# CSI =g (dispc) display n from alternate graphics character set +# CSI =

;B set bell parameters +# CSI =;C set cursor parameters +# CSI =D enable/disable intensity of background color +# CSI =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 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 . +# +# 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 . +# 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 ctrlseqs.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 +# . +# 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 . +# * 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 Dorfman. +# 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. +# 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. +# 10.2.2 (Thu May 7 12:18:04 EDT 1998): +# * Moved Altos to OBSOLETE UNIX CONSOLES +# * Moved Hewlett-Packard terminals to OLDER TERMINAL TYPES, except for +# the 700s which go to WORKSTATION CONSOLES. +# * Major reorganization of ANSI/console/VT types. Moved vt52 to the +# obsolete section. +# * Daisy-wheel printers moved to UFO file. +# 10.2.3 (Tue May 12 22:59:11 EDT 1998): +# * Commented out hds200 is2 to avoid overflowing terminfo length limit. +# * Restored OT capabilities to UFO file. +# * add nxterm and xterm-color terminfo description (request by Cristian +# Gafton ). +# * 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 ). +# * Modify linux terminfo description to reset color palette (reported +# by Telford Tendys ). +# 10.2.4 (Thu Jul 2 18:13:26 EDT 1998): +# * Added minitel1 entries from Alexander Montaron. +# * Added qnxt2 from Federico Bianchi. +# 10.2.5: (Mon Aug 24 07:32:34 EDT 1998): +# * Resolve NetBSD Problem Report #4583 by adding civis/cnorm to pcvtXX. +# * dtterm enacs correction from Alexander V. Lukyanov. +# * Added ncsa-telnet, resolving Debian bug report 25341. +# * Added Francesco Potorti's tuned Wyse 99 entries. +# 10.2.6: (Mon Dec 21 00:49:43 EST 1998): +# * Home site has changed. +# 10.2.7: (Wed Mar 3 15:53:04 EST 1999): +# * Documentation fixes, mainly from David J. Mackenzie. +# +# 11.0.0: (Wed Mar 1 22:02:03 EST 2000) +# * BSD/OS console fixes from Jeffrey Honig at BSDI. +# ** TD's branch changes up to his 1999/10/23 version begin here +# * Added arm100 terminfo entries from Dave Millen. +# * Added Data General entries from Hasufin. +# * NCSA telnet entry from Francesco Potorti as modified by TD. +# * Added teraterm, crt, ms-vt100, mach, mach-bold, linux-lat, +# ofcons, wsvt25, wsvt25m, rcons, rcons-color, cygwin, amiga-8bit, +# ibm3161-C, ibm3162. +# * Updated xterm entries, BSD/OS entries, AIX entries. +# * Updated linux, iris-ansi, screen, beterm entries. +# * Added full function keys for scoansi. +# * Typo fixes for icl6404, osborne, eterm. att6386 +# * Corrected hp70092 acsc. +# * Added ibmpc from AIX 3.2.5; ibm-pc is no longer a synonym. +# * Added ibm5151 from AIX 3.2.5; ibmmono is no longer a synonym. +# * Added ibm5154 from AIX 3.2.5; ibmega is no longer a synonym. +# * Merged acsc, s0ds, s1ds, sgr0 into ibm5081 from AIX 3.2.5. +# * Merged kend, knp, kpp, mc4, mc5 into ibm3161 in from AIX 3.2.5. +# * Merged acsc into hft-c from AIX 3.2.5. +# * Updated ibm3151 from AIX 3.2.5. +# * Errors in TD's branch not accepted: ibm3101, ibm3151, ibm8514 +# * Merged msgr,colors,pairs,setb,setf into ibm3164 from AIX 3.2.5. +# ** TD's branch changes end here +# * Address updates from various contributors. +# * Historical info on basis console. +# * Ty Sarna's corrections to the amiga entry. +# * Add Kevin Turner's entry for the Wyse 85 in 8-bit mode. +# * Added 22 Bull-Questar terminal variants from AIX 4.1.5 +# * Added OSF/1 console and lft from AIX 4.1.5. +# * Move vt2220 to vt220-old, vt220-8 to vt220, introduce vt220-8bit +# from AIX 4.1.5. +# * swtp moved to UFO file (only 20 lines). +# * Added pcmw. +# 11.0.1: (Thu Mar 2 10:49:21 EST 2000): +# * Disabled hpa, vpa, in rxvt. +# * Incorporated ansi components and generic-ansi. +# +# The following sets edit modes for GNU EMACS. +# Local Variables: +# fill-prefix:"\t" +# fill-column:75 +# comment-column:0 +# comment-start-skip:"^#+" +# comment-start:"# " +# compile-command:"tic -c termtypes.master" +# End: +######## SHANTIH! SHANTIH! SHANTIH! diff --git a/src/libs/termcap/termcap.texi b/src/libs/termcap/termcap.texi new file mode 100644 index 0000000000..7a6cd565bb --- /dev/null +++ b/src/libs/termcap/termcap.texi @@ -0,0 +1,3618 @@ +\input texinfo @c -*-texinfo-*- +@setfilename termcap.info +@settitle The Termcap Library +@smallbook + +@ifinfo +This file documents the termcap library of the GNU system. + +Copyright (C) 1988 Free Software Foundation, Inc. + +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +@ignore +Permission is granted to process this file through TeX and print the +results, provided the printed document carries copying permission +notice identical to this one except for the removal of this paragraph +(this paragraph not being relevant to the printed manual). + +@end ignore +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the entire +resulting derived work is distributed under the terms of a permission +notice identical to this one. + +Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions, +except that this permission notice may be stated in a translation approved +by the Foundation. +@end ifinfo + +@setchapternewpage odd + +@c @shorttitlepage The Termcap Manual + +@titlepage +@ignore +@sp 6 +@center @titlefont{Termcap} +@sp 1 +@center The Termcap Library and Data Base +@sp 4 +@center Second Edition +@sp 1 +@center December 1992 +@sp 5 +@center Richard M. Stallman +@sp 1 +@center Free Software Foundation +@end ignore + +@c Real title page +@title The Termcap Manual +@subtitle The Termcap Library and Data Base +@subtitle Second Edition +@subtitle December 1992 +@author Richard M. Stallman +@page +@vskip 0pt plus 1filll +Copyright @copyright{} 1988 Free Software Foundation, Inc. + +Published by the Free Software Foundation +(675 Mass Ave, Cambridge MA 02139). +Printed copies are available for $10 each. + +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the entire +resulting derived work is distributed under the terms of a permission +notice identical to this one. + +Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions, +except that this permission notice may be stated in a translation approved +by the Foundation. +@sp 2 +Cover art by Etienne Suvasa. +@end titlepage +@page + +@synindex vr fn + +@node Top, Introduction, (dir), (dir) + +@menu +* Introduction:: What is termcap? Why this manual? +* Library:: The termcap library functions. +* Data Base:: What terminal descriptions in @file{/etc/termcap} look like. +* Capabilities:: Definitions of the individual terminal capabilities: + how to write them in descriptions, and how to use + their values to do display updating. +* Summary:: Brief table of capability names and their meanings. +* Var Index:: Index of C functions and variables. +* Cap Index:: Index of termcap capabilities. +* Index:: Concept index. + + --- The Detailed Node Listing --- + +The Termcap Library + +* Preparation:: Preparing to use the termcap library. +* Find:: Finding the description of the terminal being used. +* Interrogate:: Interrogating the description for particular capabilities. +* Initialize:: Initialization for output using termcap. +* Padding:: Outputting padding. +* Parameters:: Encoding parameters such as cursor positions. + +Padding + +* Why Pad:: Explanation of padding. +* Not Enough:: When there is not enough padding. +* Describe Padding:: The data base says how much padding a terminal needs. +* Output Padding:: Using @code{tputs} to output the needed padding. + +Filling In Parameters + +* Encode Parameters:: The language for encoding parameters. +* Using Parameters:: Outputting a string command with parameters. + +Sending Display Commands with Parameters + +* tparam:: The general case, for GNU termcap only. +* tgoto:: The special case of cursor motion. + +The Format of the Data Base + +* Format:: Overall format of a terminal description. +* Capability Format:: Format of capabilities within a description. +* Naming:: Naming conventions for terminal types. +* Inheriting:: Inheriting part of a description from +a related terminal type. +* Changing:: When changes in the data base take effect. + +Definitions of the Terminal Capabilities + +* Basic:: Basic characteristics. +* Screen Size:: Screen size, and what happens when it changes. +* Cursor Motion:: Various ways to move the cursor. +* Wrapping:: What happens if you write a character in the last column. +* Scrolling:: Pushing text up and down on the screen. +* Windows:: Limiting the part of the window that output affects. +* Clearing:: Erasing one or many lines. +* Insdel Line:: Making new blank lines in mid-screen; deleting lines. +* Insdel Char:: Inserting and deleting characters within a line. +* Standout:: Highlighting some of the text. +* Underlining:: Underlining some of the text. +* Cursor Visibility:: Making the cursor more or less easy to spot. +* Bell:: Attracts user's attention; not localized on the screen. +* Keypad:: Recognizing when function keys or arrows are typed. +* Meta Key:: @key{META} acts like an extra shift key. +* Initialization:: Commands used to initialize or reset the terminal. +* Pad Specs:: Info for the kernel on how much padding is needed. +* Status Line:: A status line displays ``background'' information. +* Half-Line:: Moving by half-lines, for superscripts and subscripts. +* Printer:: Controlling auxiliary printers of display terminals. +@end menu + +@node Introduction, Library, Top, Top +@unnumbered Introduction + +@cindex termcap +@dfn{Termcap} is a library and data base that enables programs to use +display terminals in a terminal-independent manner. It originated in +Berkeley Unix. + +The termcap data base describes the capabilities of hundreds of different +display terminals in great detail. Some examples of the information +recorded for a terminal could include how many columns wide it is, what +string to send to move the cursor to an arbitrary position (including how +to encode the row and column numbers), how to scroll the screen up one or +several lines, and how much padding is needed for such a scrolling +operation. + +The termcap library is provided for easy access this data base in programs +that want to do terminal-independent character-based display output. + +This manual describes the GNU version of the termcap library, which has +some extensions over the Unix version. All the extensions are identified +as such, so this manual also tells you how to use the Unix termcap. + +The GNU version of the termcap library is available free as source code, +for use in free programs, and runs on Unix and VMS systems (at least). You +can find it in the GNU Emacs distribution in the files @file{termcap.c} and +@file{tparam.c}. + +This manual was written for the GNU project, whose goal is to develop a +complete free operating system upward-compatible with Unix for user +programs. The project is approximately two thirds complete. For more +information on the GNU project, including the GNU Emacs editor and the +mostly-portable optimizing C compiler, send one dollar to + +@display +Free Software Foundation +675 Mass Ave +Cambridge, MA 02139 +@end display + +@node Library, Data Base, Introduction, Top +@chapter The Termcap Library + +The termcap library is the application programmer's interface to the +termcap data base. It contains functions for the following purposes: + +@itemize @bullet +@item +Finding the description of the user's terminal type (@code{tgetent}). + +@item +Interrogating the description for information on various topics +(@code{tgetnum}, @code{tgetflag}, @code{tgetstr}). + +@item +Computing and performing padding (@code{tputs}). + +@item +Encoding numeric parameters such as cursor positions into the +terminal-specific form required for display commands (@code{tparam}, +@code{tgoto}). +@end itemize + +@menu +* Preparation:: Preparing to use the termcap library. +* Find:: Finding the description of the terminal being used. +* Interrogate:: Interrogating the description for particular capabilities. +* Initialize:: Initialization for output using termcap. +* Padding:: Outputting padding. +* Parameters:: Encoding parameters such as cursor positions. +@end menu + +@node Preparation, Find, , Library +@section Preparing to Use the Termcap Library + +To use the termcap library in a program, you need two kinds of preparation: + +@itemize @bullet +@item +The compiler needs declarations of the functions and variables in the +library. + +On GNU systems, it suffices to include the header file +@file{termcap.h} in each source file that uses these functions and +variables.@refill + +On Unix systems, there is often no such header file. Then you must +explictly declare the variables as external. You can do likewise for +the functions, or let them be implicitly declared and cast their +values from type @code{int} to the appropriate type. + +We illustrate the declarations of the individual termcap library +functions with ANSI C prototypes because they show how to pass the +arguments. If you are not using the GNU C compiler, you probably +cannot use function prototypes, so omit the argument types and names +from your declarations. + +@item +The linker needs to search the library. Usually either +@samp{-ltermcap} or @samp{-ltermlib} as an argument when linking will +do this.@refill +@end itemize + +@node Find, Interrogate, Preparation, Library +@section Finding a Terminal Description: @code{tgetent} + +@findex tgetent +An application program that is going to use termcap must first look up the +description of the terminal type in use. This is done by calling +@code{tgetent}, whose declaration in ANSI Standard C looks like: + +@example +int tgetent (char *@var{buffer}, char *@var{termtype}); +@end example + +@noindent +This function finds the description and remembers it internally so that +you can interrogate it about specific terminal capabilities +(@pxref{Interrogate}). + +The argument @var{termtype} is a string which is the name for the type of +terminal to look up. Usually you would obtain this from the environment +variable @code{TERM} using @code{getenv ("TERM")}. + +If you are using the GNU version of termcap, you can alternatively ask +@code{tgetent} to allocate enough space. Pass a null pointer for +@var{buffer}, and @code{tgetent} itself allocates the storage using +@code{malloc}. There is no way to get the address that was allocated, +and you shouldn't try to free the storage.@refill + +With the Unix version of termcap, you must allocate space for the +description yourself and pass the address of the space as the argument +@var{buffer}. There is no way you can tell how much space is needed, so +the convention is to allocate a buffer 2048 characters long and assume that +is enough. (Formerly the convention was to allocate 1024 characters and +assume that was enough. But one day, for one kind of terminal, that was +not enough.) + +No matter how the space to store the description has been obtained, +termcap records its address internally for use when you later interrogate +the description with @code{tgetnum}, @code{tgetstr} or @code{tgetflag}. If +the buffer was allocated by termcap, it will be freed by termcap too if you +call @code{tgetent} again. If the buffer was provided by you, you must +make sure that its contents remain unchanged for as long as you still plan +to interrogate the description.@refill + +The return value of @code{tgetent} is @minus{}1 if there is some difficulty +accessing the data base of terminal types, 0 if the data base is accessible +but the specified type is not defined in it, and some other value +otherwise. + +Here is how you might use the function @code{tgetent}: + +@smallexample +#ifdef unix +static char term_buffer[2048]; +#else +#define term_buffer 0 +#endif + +init_terminal_data () +@{ + char *termtype = getenv ("TERM"); + int success; + + if (termtype == 0) + fatal ("Specify a terminal type with `setenv TERM '.\n"); + + success = tgetent (term_buffer, termtype); + if (success < 0) + fatal ("Could not access the termcap data base.\n"); + if (success == 0) + fatal ("Terminal type `%s' is not defined.\n", termtype); +@} +@end smallexample + +@noindent +Here we assume the function @code{fatal} prints an error message and exits. + +If the environment variable @code{TERMCAP} is defined, its value is used to +override the terminal type data base. The function @code{tgetent} checks +the value of @code{TERMCAP} automatically. If the value starts with +@samp{/} then it is taken as a file name to use as the data base file, +instead of @file{/etc/termcap} which is the standard data base. If the +value does not start with @samp{/} then it is itself used as the terminal +description, provided that the terminal type @var{termtype} is among the +types it claims to apply to. @xref{Data Base}, for information on the +format of a terminal description.@refill + +@node Interrogate, Initialize, Find, Library +@section Interrogating the Terminal Description + +Each piece of information recorded in a terminal description is called a +@dfn{capability}. Each defined terminal capability has a two-letter code +name and a specific meaning. For example, the number of columns is named +@samp{co}. @xref{Capabilities}, for definitions of all the standard +capability names. + +Once you have found the proper terminal description with @code{tgetent} +(@pxref{Find}), your application program must @dfn{interrogate} it for +various terminal capabilities. You must specify the two-letter code of +the capability whose value you seek. + +Capability values can be numeric, boolean (capability is either present or +absent) or strings. Any particular capability always has the same value +type; for example, @samp{co} always has a numeric value, while @samp{am} +(automatic wrap at margin) is always a flag, and @samp{cm} (cursor motion +command) always has a string value. The documentation of each capability +says which type of value it has.@refill + +There are three functions to use to get the value of a capability, +depending on the type of value the capability has. Here are their +declarations in ANSI C: + +@findex tgetnum +@findex tgetflag +@findex tgetstr +@example +int tgetnum (char *@var{name}); +int tgetflag (char *@var{name}); +char *tgetstr (char *@var{name}, char **@var{area}); +@end example + +@table @code +@item tgetnum +Use @code{tgetnum} to get a capability value that is numeric. The +argument @var{name} is the two-letter code name of the capability. If +the capability is present, @code{tgetnum} returns the numeric value +(which is nonnegative). If the capability is not mentioned in the +terminal description, @code{tgetnum} returns @minus{}1. + +@item tgetflag +Use @code{tgetflag} to get a boolean value. If the capability +@var{name} is present in the terminal description, @code{tgetflag} +returns 1; otherwise, it returns 0. + +@item tgetstr +Use @code{tgetstr} to get a string value. It returns a pointer to a +string which is the capability value, or a null pointer if the +capability is not present in the terminal description. + +There are two ways @code{tgetstr} can find space to store the string value: + +@itemize @bullet +@item +You can ask @code{tgetstr} to allocate the space. Pass a null +pointer for the argument @var{area}, and @code{tgetstr} will use +@code{malloc} to allocate storage big enough for the value. +Termcap will never free this storage or refer to it again; you +should free it when you are finished with it. + +This method is more robust, since there is no need to guess how +much space is needed. But it is supported only by the GNU +termcap library. + +@item +You can provide the space. Provide for the argument @var{area} the +address of a pointer variable of type @code{char *}. Before calling +@code{tgetstr}, initialize the variable to point at available space. +Then @code{tgetstr} will store the string value in that space and will +increment the pointer variable to point after the space that has been +used. You can use the same pointer variable for many calls to +@code{tgetstr}. + +There is no way to determine how much space is needed for a single +string, and no way for you to prevent or handle overflow of the area +you have provided. However, you can be sure that the total size of +all the string values you will obtain from the terminal description is +no greater than the size of the description (unless you get the same +capability twice). You can determine that size with @code{strlen} on +the buffer you provided to @code{tgetent}. See below for an example. + +Providing the space yourself is the only method supported by the Unix +version of termcap. +@end itemize +@end table + +Note that you do not have to specify a terminal type or terminal +description for the interrogation functions. They automatically use the +description found by the most recent call to @code{tgetent}. + +Here is an example of interrogating a terminal description for various +capabilities, with conditionals to select between the Unix and GNU methods +of providing buffer space. + +@example +char *tgetstr (); + +char *cl_string, *cm_string; +int height; +int width; +int auto_wrap; + +char PC; /* For tputs. */ +char *BC; /* For tgoto. */ +char *UP; + +interrogate_terminal () +@{ +#ifdef UNIX + /* Here we assume that an explicit term_buffer + was provided to tgetent. */ + char *buffer + = (char *) malloc (strlen (term_buffer)); +#define BUFFADDR &buffer +#else +#define BUFFADDR 0 +#endif + + char *temp; + + /* Extract information we will use. */ + cl_string = tgetstr ("cl", BUFFADDR); + cm_string = tgetstr ("cm", BUFFADDR); + auto_wrap = tgetflag ("am"); + height = tgetnum ("li"); + width = tgetnum ("co"); + + /* Extract information that termcap functions use. */ + temp = tgetstr ("pc", BUFFADDR); + PC = temp ? *temp : 0; + BC = tgetstr ("le", BUFFADDR); + UP = tgetstr ("up", BUFFADDR); +@} +@end example + +@noindent +@xref{Padding}, for information on the variable @code{PC}. @xref{Using +Parameters}, for information on @code{UP} and @code{BC}. + +@node Initialize, Padding, Interrogate, Library +@section Initialization for Use of Termcap +@cindex terminal flags (kernel) + +Before starting to output commands to a terminal using termcap, +an application program should do two things: + +@itemize @bullet +@item +Initialize various global variables which termcap library output +functions refer to. These include @code{PC} and @code{ospeed} for +padding (@pxref{Output Padding}) and @code{UP} and @code{BC} for +cursor motion (@pxref{tgoto}).@refill + +@item +Tell the kernel to turn off alteration and padding of horizontal-tab +characters sent to the terminal. +@end itemize + +To turn off output processing in Berkeley Unix you would use @code{ioctl} +with code @code{TIOCLSET} to set the bit named @code{LLITOUT}, and clear +the bits @code{ANYDELAY} using @code{TIOCSETN}. In POSIX or System V, you +must clear the bit named @code{OPOST}. Refer to the system documentation +for details.@refill + +If you do not set the terminal flags properly, some older terminals will +not work. This is because their commands may contain the characters that +normally signify newline, carriage return and horizontal tab---characters +which the kernel thinks it ought to modify before output. + +When you change the kernel's terminal flags, you must arrange to restore +them to their normal state when your program exits. This implies that the +program must catch fatal signals such as @code{SIGQUIT} and @code{SIGINT} +and restore the old terminal flags before actually terminating. + +Modern terminals' commands do not use these special characters, so if you +do not care about problems with old terminals, you can leave the kernel's +terminal flags unaltered. + +@node Padding, Parameters, Initialize, Library +@section Padding +@cindex padding + +@dfn{Padding} means outputting null characters following a terminal display +command that takes a long time to execute. The terminal description says +which commands require padding and how much; the function @code{tputs}, +described below, outputs a terminal command while extracting from it the +padding information, and then outputs the padding that is necessary. + +@menu +* Why Pad:: Explanation of padding. +* Not Enough:: When there is not enough padding. +* Describe Padding:: The data base says how much padding a terminal needs. +* Output Padding:: Using @code{tputs} to output the needed padding. +@end menu + +@node Why Pad, Not Enough, , Padding +@subsection Why Pad, and How + +Most types of terminal have commands that take longer to execute than they +do to send over a high-speed line. For example, clearing the screen may +take 20msec once the entire command is received. During that time, on a +9600 bps line, the terminal could receive about 20 additional output +characters while still busy clearing the screen. Every terminal has a +certain amount of buffering capacity to remember output characters that +cannot be processed yet, but too many slow commands in a row can cause the +buffer to fill up. Then any additional output that cannot be processed +immediately will be lost. + +To avoid this problem, we normally follow each display command with enough +useless charaters (usually null characters) to fill up the time that the +display command needs to execute. This does the job if the terminal throws +away null characters without using up space in the buffer (which most +terminals do). If enough padding is used, no output can ever be lost. The +right amount of padding avoids loss of output without slowing down +operation, since the time used to transmit padding is time that nothing +else could be done. + +The number of padding characters needed for an operation depends on the +line speed. In fact, it is proportional to the line speed. A 9600 baud +line transmits about one character per msec, so the clear screen command in +the example above would need about 20 characters of padding. At 1200 baud, +however, only about 3 characters of padding are needed to fill up 20msec. + +@node Not Enough, Describe Padding, Why Pad, Padding +@subsection When There Is Not Enough Padding + +There are several common manifestations of insufficient padding. + +@itemize @bullet +@item +Emacs displays @samp{I-search: ^Q-} at the bottom of the screen. + +This means that the terminal thought its buffer was getting full of +display commands, so it tried to tell the computer to stop sending +any. + +@item +The screen is garbled intermittently, or the details of garbling vary +when you repeat the action. (A garbled screen could be due to a +command which is simply incorrect, or to user option in the terminal +which doesn't match the assumptions of the terminal description, but +this usually leads to reproducible failure.) + +This means that the buffer did get full, and some commands were lost. +Many changeable factors can change which ones are lost. + +@item +Screen is garbled at high output speeds but not at low speeds. +Padding problems nearly always go away at low speeds, usually even at +1200 baud. + +This means that a high enough speed permits commands to arrive faster +than they can be executed. +@end itemize + +Although any obscure command on an obscure terminal might lack padding, +in practice problems arise most often from the clearing commands +@samp{cl} and @samp{cd} (@pxref{Clearing}), the scrolling commands +@samp{sf} and @samp{sr} (@pxref{Scrolling}), and the line insert/delete +commands @samp{al} and @samp{dl} (@pxref{Insdel Line}). + +Occasionally the terminal description fails to define @samp{sf} and some +programs will use @samp{do} instead, so you may get a problem with +@samp{do}. If so, first define @samp{sf} just like @samp{do}, then +add some padding to @samp{sf}. + +The best strategy is to add a lot of padding at first, perhaps 200 msec. +This is much more than enough; in fact, it should cause a visible slowdown. +(If you don't see a slowdown, the change has not taken effect; +@pxref{Changing}.) If this makes the problem go away, you have found the +right place to add padding; now reduce the amount until the problem comes +back, then increase it again. If the problem remains, either it is in some +other capability or it is not a matter of padding at all. + +Keep in mind that on many terminals the correct padding for insert/delete +line or for scrolling is cursor-position dependent. If you get problems +from scrolling a large region of the screen but not from scrolling a small +part (just a few lines moving), it may mean that fixed padding should be +replaced with position-dependent padding. + +@node Describe Padding, Output Padding, Not Enough, Padding +@subsection Specifying Padding in a Terminal Description + +In the terminal description, the amount of padding required by each display +command is recorded as a sequence of digits at the front of the command. +These digits specify the padding time in milliseconds (msec). They can be +followed optionally by a decimal point and one more digit, which is a +number of tenths of msec. + +Sometimes the padding needed by a command depends on the cursor position. +For example, the time taken by an ``insert line'' command is usually +proportional to the number of lines that need to be moved down or cleared. +An asterisk (@samp{*}) following the padding time says that the time +should be multiplied by the number of screen lines affected by the command. + +@example +:al=1.3*\E[L: +@end example + +@noindent +is used to describe the ``insert line'' command for a certain terminal. +The padding required is 1.3 msec per line affected. The command itself is +@samp{@key{ESC} [ L}. + +The padding time specified in this way tells @code{tputs} how many pad +characters to output. @xref{Output Padding}. + +Two special capability values affect padding for all commands. These are +the @samp{pc} and @samp{pb}. The variable @samp{pc} specifies the +character to pad with, and @samp{pb} the speed below which no padding is +needed. The defaults for these variables, a null character and 0, +are correct for most terminals. @xref{Pad Specs}. + +@node Output Padding, , Describe Padding, Padding +@subsection Performing Padding with @code{tputs} +@cindex line speed + +@findex tputs +Use the termcap function @code{tputs} to output a string containing an +optional padding spec of the form described above (@pxref{Describe +Padding}). The function @code{tputs} strips off and decodes the padding +spec, outputs the rest of the string, and then outputs the appropriate +padding. Here is its declaration in ANSI C: + +@example +char PC; +short ospeed; + +int tputs (char *@var{string}, int @var{nlines}, int (*@var{outfun}) ()); +@end example + +Here @var{string} is the string (including padding spec) to be output; +@var{nlines} is the number of lines affected by the operation, which is +used to multiply the amount of padding if the padding spec ends with a +@samp{*}. Finally, @var{outfun} is a function (such as @code{fputchar}) +that is called to output each character. When actually called, +@var{outfun} should expect one argument, a character. + +@vindex ospeed +@vindex PC +The operation of @code{tputs} is controlled by two global variables, +@code{ospeed} and @code{PC}. The value of @code{ospeed} is supposed to be +the terminal output speed, encoded as in the @code{ioctl} system call which +gets the speed information. This is needed to compute the number of +padding characters. The value of @code{PC} is the character used for +padding. + +You are responsible for storing suitable values into these variables before +using @code{tputs}. The value stored into the @code{PC} variable should be +taken from the @samp{pc} capability in the terminal description (@pxref{Pad +Specs}). Store zero in @code{PC} if there is no @samp{pc} +capability.@refill + +The argument @var{nlines} requires some thought. Normally, it should be +the number of lines whose contents will be cleared or moved by the command. +For cursor motion commands, or commands that do editing within one line, +use the value 1. For most commands that affect multiple lines, such as +@samp{al} (insert a line) and @samp{cd} (clear from the cursor to the end +of the screen), @var{nlines} should be the screen height minus the current +vertical position (origin 0). For multiple insert and scroll commands such +as @samp{AL} (insert multiple lines), that same value for @var{nlines} is +correct; the number of lines being inserted is @i{not} correct.@refill + +If a ``scroll window'' feature is used to reduce the number of lines +affected by a command, the value of @var{nlines} should take this into +account. This is because the delay time required depends on how much work +the terminal has to do, and the scroll window feature reduces the work. +@xref{Scrolling}. + +Commands such as @samp{ic} and @samp{dc} (insert or delete characters) are +problematical because the padding needed by these commands is proportional +to the number of characters affected, which is the number of columns from +the cursor to the end of the line. It would be nice to have a way to +specify such a dependence, and there is no need for dependence on vertical +position in these commands, so it is an obvious idea to say that for these +commands @var{nlines} should really be the number of columns affected. +However, the definition of termcap clearly says that @var{nlines} is always +the number of lines affected, even in this case, where it is always 1. It +is not easy to change this rule now, because too many programs and terminal +descriptions have been written to follow it. + +Because @var{nlines} is always 1 for the @samp{ic} and @samp{dc} strings, +there is no reason for them to use @samp{*}, but some of them do. These +should be corrected by deleting the @samp{*}. If, some day, such entries +have disappeared, it may be possible to change to a more useful convention +for the @var{nlines} argument for these operations without breaking any +programs. + +@node Parameters, , Padding, Library +@section Filling In Parameters +@cindex parameters + +Some terminal control strings require numeric @dfn{parameters}. For +example, when you move the cursor, you need to say what horizontal and +vertical positions to move it to. The value of the terminal's @samp{cm} +capability, which says how to move the cursor, cannot simply be a string of +characters; it must say how to express the cursor position numbers and +where to put them within the command. + +The specifications of termcap include conventions as to which string-valued +capabilities require parameters, how many parameters, and what the +parameters mean; for example, it defines the @samp{cm} string to take +two parameters, the vertical and horizontal positions, with 0,0 being the +upper left corner. These conventions are described where the individual +commands are documented. + +Termcap also defines a language used within the capability definition for +specifying how and where to encode the parameters for output. This language +uses character sequences starting with @samp{%}. (This is the same idea as +@code{printf}, but the details are different.) The language for parameter +encoding is described in this section. + +A program that is doing display output calls the functions @code{tparam} or +@code{tgoto} to encode parameters according to the specifications. These +functions produce a string containing the actual commands to be output (as +well a padding spec which must be processed with @code{tputs}; +@pxref{Padding}). + +@menu +* Encode Parameters:: The language for encoding parameters. +* Using Parameters:: Outputting a string command with parameters. +@end menu + +@node Encode Parameters, Using Parameters, , Parameters +@subsection Describing the Encoding +@cindex % + +A terminal command string that requires parameters contains special +character sequences starting with @samp{%} to say how to encode the +parameters. These sequences control the actions of @code{tparam} and +@code{tgoto}. + +The parameters values passed to @code{tparam} or @code{tgoto} are +considered to form a vector. A pointer into this vector determines +the next parameter to be processed. Some of the @samp{%}-sequences +encode one parameter and advance the pointer to the next parameter. +Other @samp{%}-sequences alter the pointer or alter the parameter +values without generating output. + +For example, the @samp{cm} string for a standard ANSI terminal is written +as @samp{\E[%i%d;%dH}. (@samp{\E} stands for @key{ESC}.) @samp{cm} by +convention always requires two parameters, the vertical and horizontal goal +positions, so this string specifies the encoding of two parameters. Here +@samp{%i} increments the two values supplied, and each @samp{%d} encodes +one of the values in decimal. If the cursor position values 20,58 are +encoded with this string, the result is @samp{\E[21;59H}. + +First, here are the @samp{%}-sequences that generate output. Except for +@samp{%%}, each of them encodes one parameter and advances the pointer +to the following parameter. + +@table @samp +@item %% +Output a single @samp{%}. This is the only way to represent a literal +@samp{%} in a terminal command with parameters. @samp{%%} does not +use up a parameter. + +@item %d +As in @code{printf}, output the next parameter in decimal. + +@item %2 +Like @samp{%02d} in @code{printf}: output the next parameter in +decimal, and always use at least two digits. + +@item %3 +Like @samp{%03d} in @code{printf}: output the next parameter in +decimal, and always use at least three digits. Note that @samp{%4} +and so on are @emph{not} defined. + +@item %. +Output the next parameter as a single character whose ASCII code is +the parameter value. Like @samp{%c} in @code{printf}. + +@item %+@var{char} +Add the next parameter to the character @var{char}, and output the +resulting character. For example, @samp{%+ } represents 0 as a space, +1 as @samp{!}, etc. +@end table + +The following @samp{%}-sequences specify alteration of the parameters +(their values, or their order) rather than encoding a parameter for output. +They generate no output; they are used only for their side effects +on the parameters. Also, they do not advance the ``next parameter'' pointer +except as explicitly stated. Only @samp{%i}, @samp{%r} and @samp{%>} are +defined in standard Unix termcap. The others are GNU extensions.@refill + +@table @samp +@item %i +Increment the next two parameters. This is used for terminals that +expect cursor positions in origin 1. For example, @samp{%i%d,%d} would +output two parameters with @samp{1} for 0, @samp{2} for 1, etc. + +@item %r +Interchange the next two parameters. This is used for terminals whose +cursor positioning command expects the horizontal position first. + +@item %s +Skip the next parameter. Do not output anything. + +@item %b +Back up one parameter. The last parameter used will become once again +the next parameter to be output, and the next output command will use +it. Using @samp{%b} more than once, you can back up any number of +parameters, and you can refer to each parameter any number of times. + +@item %>@var{c1}@var{c2} +Conditionally increment the next parameter. Here @var{c1} and +@var{c2} are characters which stand for their ASCII codes as numbers. +If the next parameter is greater than the ASCII code of @var{c1}, the +ASCII code of @var{c2} is added to it.@refill + +@item %a @var{op} @var{type} @var{pos} +Perform arithmetic on the next parameter, do not use it up, and do not +output anything. Here @var{op} specifies the arithmetic operation, +while @var{type} and @var{pos} together specify the other operand. + +Spaces are used above to separate the operands for clarity; the spaces +don't appear in the data base, where this sequence is exactly five +characters long. + +The character @var{op} says what kind of arithmetic operation to +perform. It can be any of these characters: + +@table @samp +@item = +assign a value to the next parameter, ignoring its old value. +The new value comes from the other operand. + +@item + +add the other operand to the next parameter. + +@item - +subtract the other operand from the next parameter. + +@item * +multiply the next parameter by the other operand. + +@item / +divide the next parameter by the other operand. +@end table + +The ``other operand'' may be another parameter's value or a constant; +the character @var{type} says which. It can be: + +@table @samp +@item p +Use another parameter. The character @var{pos} says which +parameter to use. Subtract 64 from its ASCII code to get the +position of the desired parameter relative to this one. Thus, +the character @samp{A} as @var{pos} means the parameter after the +next one; the character @samp{?} means the parameter before the +next one. + +@item c +Use a constant value. The character @var{pos} specifies the +value of the constant. The 0200 bit is cleared out, so that 0200 +can be used to represent zero. +@end table +@end table + +The following @samp{%}-sequences are special purpose hacks to compensate +for the weird designs of obscure terminals. They modify the next parameter +or the next two parameters but do not generate output and do not use up any +parameters. @samp{%m} is a GNU extension; the others are defined in +standard Unix termcap. + +@table @samp +@item %n +Exclusive-or the next parameter with 0140, and likewise the parameter +after next. + +@item %m +Complement all the bits of the next parameter and the parameter after next. + +@item %B +Encode the next parameter in BCD. It alters the value of the +parameter by adding six times the quotient of the parameter by ten. +Here is a C statement that shows how the new value is computed: + +@example +@var{parm} = (@var{parm} / 10) * 16 + @var{parm} % 10; +@end example + +@item %D +Transform the next parameter as needed by Delta Data terminals. +This involves subtracting twice the remainder of the parameter by 16. + +@example +@var{parm} -= 2 * (@var{parm} % 16); +@end example +@end table + +@node Using Parameters, , Encode Parameters, Parameters +@subsection Sending Display Commands with Parameters + +The termcap library functions @code{tparam} and @code{tgoto} serve as the +analog of @code{printf} for terminal string parameters. The newer function +@code{tparam} is a GNU extension, more general but missing from Unix +termcap. The original parameter-encoding function is @code{tgoto}, which +is preferable for cursor motion. + +@menu +* tparam:: The general case, for GNU termcap only. +* tgoto:: The special case of cursor motion. +@end menu + +@node tparam, tgoto, , Using Parameters +@subsubsection @code{tparam} + +@findex tparam +The function @code{tparam} can encode display commands with any number of +parameters and allows you to specify the buffer space. It is the preferred +function for encoding parameters for all but the @samp{cm} capability. Its +ANSI C declaration is as follows: + +@smallexample +char *tparam (char *@var{ctlstring}, char *@var{buffer}, int @var{size}, int @var{parm1},...) +@end smallexample + +The arguments are a control string @var{ctlstring} (the value of a terminal +capability, presumably), an output buffer @var{buffer} and @var{size}, and +any number of integer parameters to be encoded. The effect of +@code{tparam} is to copy the control string into the buffer, encoding +parameters according to the @samp{%} sequences in the control string. + +You describe the output buffer by its address, @var{buffer}, and its size +in bytes, @var{size}. If the buffer is not big enough for the data to be +stored in it, @code{tparam} calls @code{malloc} to get a larger buffer. In +either case, @code{tparam} returns the address of the buffer it ultimately +uses. If the value equals @var{buffer}, your original buffer was used. +Otherwise, a new buffer was allocated, and you must free it after you are +done with printing the results. If you pass zero for @var{size} and +@var{buffer}, @code{tparam} always allocates the space with @code{malloc}. + +All capabilities that require parameters also have the ability to specify +padding, so you should use @code{tputs} to output the string produced by +@code{tparam}. @xref{Padding}. Here is an example. + +@example +@{ +char *buf; +char buffer[40]; + +buf = tparam (command, buffer, 40, parm); +tputs (buf, 1, fputchar); +if (buf != buffer) +free (buf); +@} +@end example + +If a parameter whose value is zero is encoded with @samp{%.}-style +encoding, the result is a null character, which will confuse @code{tputs}. +This would be a serious problem, but luckily @samp{%.} encoding is used +only by a few old models of terminal, and only for the @samp{cm} +capability. To solve the problem, use @code{tgoto} rather than +@code{tparam} to encode the @samp{cm} capability.@refill + +@node tgoto, , tparam, Using Parameters +@subsubsection @code{tgoto} + +@findex tgoto +The special case of cursor motion is handled by @code{tgoto}. There +are two reasons why you might choose to use @code{tgoto}: + +@itemize @bullet +@item +For Unix compatibility, because Unix termcap does not have @code{tparam}. + +@item +For the @samp{cm} capability, since @code{tgoto} has a special feature +to avoid problems with null characters, tabs and newlines on certain old +terminal types that use @samp{%.} encoding for that capability. +@end itemize + +Here is how @code{tgoto} might be declared in ANSI C: + +@example +char *tgoto (char *@var{cstring}, int @var{hpos}, int @var{vpos}) +@end example + +There are three arguments, the terminal description's @samp{cm} string and +the two cursor position numbers; @code{tgoto} computes the parametrized +string in an internal static buffer and returns the address of that buffer. +The next time you use @code{tgoto} the same buffer will be reused. + +@vindex UP +@vindex BC +Parameters encoded with @samp{%.} encoding can generate null characters, +tabs or newlines. These might cause trouble: the null character because +@code{tputs} would think that was the end of the string, the tab because +the kernel or other software might expand it into spaces, and the newline +becaue the kernel might add a carriage-return, or padding characters +normally used for a newline. To prevent such problems, @code{tgoto} is +careful to avoid these characters. Here is how this works: if the target +cursor position value is such as to cause a problem (that is to say, zero, +nine or ten), @code{tgoto} increments it by one, then compensates by +appending a string to move the cursor back or up one position. + +The compensation strings to use for moving back or up are found in global +variables named @code{BC} and @code{UP}. These are actual external C +variables with upper case names; they are declared @code{char *}. It is up +to you to store suitable values in them, normally obtained from the +@samp{le} and @samp{up} terminal capabilities in the terminal description +with @code{tgetstr}. Alternatively, if these two variables are both zero, +the feature of avoiding nulls, tabs and newlines is turned off. + +It is safe to use @code{tgoto} for commands other than @samp{cm} only if +you have stored zero in @code{BC} and @code{UP}. + +Note that @code{tgoto} reverses the order of its operands: the horizontal +position comes before the vertical position in the arguments to +@code{tgoto}, even though the vertical position comes before the horizontal +in the parameters of the @samp{cm} string. If you use @code{tgoto} with a +command such as @samp{AL} that takes one parameter, you must pass the +parameter to @code{tgoto} as the ``vertical position''.@refill + +@node Data Base, Capabilities, Library, Top +@chapter The Format of the Data Base + +The termcap data base of terminal descriptions is stored in the file +@file{/etc/termcap}. It contains terminal descriptions, blank lines, and +comments. + +A terminal description starts with one or more names for the terminal type. +The information in the description is a series of @dfn{capability names} +and values. The capability names have standard meanings +(@pxref{Capabilities}) and their values describe the terminal. + +@menu +* Format:: Overall format of a terminal description. +* Capability Format:: Format of capabilities within a description. +* Naming:: Naming conventions for terminal types. +* Inheriting:: Inheriting part of a description from +a related terminal type. +* Changing:: When changes in the data base take effect. +@end menu + +@node Format, Capability Format, , Data Base +@section Terminal Description Format +@cindex description format + +Aside from comments (lines starting with @samp{#}, which are ignored), each +nonblank line in the termcap data base is a terminal description. +A terminal description is nominally a single line, but it can be split +into multiple lines by inserting the two characters @samp{\ newline}. +This sequence is ignored wherever it appears in a description. + +The preferred way to split the description is between capabilities: insert +the four characters @samp{: \ newline tab} immediately before any colon. +This allows each sub-line to start with some indentation. This works +because, after the @samp{\ newline} are ignored, the result is @samp{: tab +:}; the first colon ends the preceding capability and the second colon +starts the next capability. If you split with @samp{\ newline} alone, you +may not add any indentation after them. + +Here is a real example of a terminal description: + +@example +dw|vt52|DEC vt52:\ + :cr=^M:do=^J:nl=^J:bl=^G:\ + :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :co#80:li#24:\ + :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\ + :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: +@end example + +Each terminal description begins with several names for the terminal type. +The names are separated by @samp{|} characters, and a colon ends the last +name. The first name should be two characters long; it exists only for the +sake of very old Unix systems and is never used in modern systems. The +last name should be a fully verbose name such as ``DEC vt52'' or ``Ann +Arbor Ambassador with 48 lines''. The other names should include whatever +the user ought to be able to specify to get this terminal type, such as +@samp{vt52} or @samp{aaa-48}. @xref{Naming}, for information on how to +choose terminal type names. + +After the terminal type names come the terminal capabilities, separated by +colons and with a colon after the last one. Each capability has a +two-letter name, such as @samp{cm} for ``cursor motion string'' or @samp{li} +for ``number of display lines''. + +@node Capability Format, Naming, Format, Data Base +@section Writing the Capabilities + +There are three kinds of capabilities: flags, numbers, and strings. Each +kind has its own way of being written in the description. Each defined +capability has by convention a particular kind of value; for example, +@samp{li} always has a numeric value and @samp{cm} always a string value. + +A flag capability is thought of as having a boolean value: the value is +true if the capability is present, false if not. When the capability is +present, just write its name between two colons. + +A numeric capability has a value which is a nonnegative number. Write the +capability name, a @samp{#}, and the number, between two colons. For +example, @samp{@dots{}:li#48:@dots{}} is how you specify the @samp{li} +capability for 48 lines.@refill + +A string-valued capability has a value which is a sequence of characters. +Usually these are the characters used to perform some display operation. +Write the capability name, a @samp{=}, and the characters of the value, +between two colons. For example, @samp{@dots{}:cm=\E[%i%d;%dH:@dots{}} is +how the cursor motion command for a standard ANSI terminal would be +specified.@refill + +Special characters in the string value can be expressed using +@samp{\}-escape sequences as in C; in addition, @samp{\E} stands for +@key{ESC}. @samp{^} is also a kind of escape character; @samp{^} followed +by @var{char} stands for the control-equivalent of @var{char}. Thus, +@samp{^a} stands for the character control-a, just like @samp{\001}. +@samp{\} and @samp{^} themselves can be represented as @samp{\\} and +@samp{\^}.@refill + +To include a colon in the string, you must write @samp{\072}. You might +ask, ``Why can't @samp{\:} be used to represent a colon?'' The reason is +that the interrogation functions do not count slashes while looking for a +capability. Even if @samp{:ce=ab\:cd:} were interpreted as giving the +@samp{ce} capability the value @samp{ab:cd}, it would also appear to define +@samp{cd} as a flag. + +The string value will often contain digits at the front to specify padding +(@pxref{Padding}) and/or @samp{%}-sequences within to specify how to encode +parameters (@pxref{Parameters}). Although these things are not to be +output literally to the terminal, they are considered part of the value of +the capability. They are special only when the string value is processed +by @code{tputs}, @code{tparam} or @code{tgoto}. By contrast, @samp{\} and +@samp{^} are considered part of the syntax for specifying the characters +in the string. + +Let's look at the VT52 example again: + +@example +dw|vt52|DEC vt52:\ + :cr=^M:do=^J:nl=^J:bl=^G:\ + :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\ + :cm=\EY%+ %+ :co#80:li#24:\ + :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\ + :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H: +@end example + +Here we see the numeric-valued capabilities @samp{co} and @samp{li}, the +flags @samp{bs} and @samp{pt}, and many string-valued capabilities. Most +of the strings start with @key{ESC} represented as @samp{\E}. The rest +contain control characters represented using @samp{^}. The meanings of the +individual capabilities are defined elsewhere (@pxref{Capabilities}). + +@node Naming, Inheriting, Capability Format, Data Base +@section Terminal Type Name Conventions +@cindex names of terminal types + +There are conventions for choosing names of terminal types. For one thing, +all letters should be in lower case. The terminal type for a terminal in +its most usual or most fundamental mode of operation should not have a +hyphen in it. + +If the same terminal has other modes of operation which require +different terminal descriptions, these variant descriptions are given +names made by adding suffixes with hyphens. Such alternate descriptions +are used for two reasons: + +@itemize @bullet +@item +When the terminal has a switch that changes its behavior. Since the +computer cannot tell how the switch is set, the user must tell the +computer by choosing the appropriate terminal type name. + +@cindex wrapping +For example, the VT-100 has a setup flag that controls whether the +cursor wraps at the right margin. If this flag is set to ``wrap'', +you must use the terminal type @samp{vt100-am}. Otherwise you must +use @samp{vt100-nam}. Plain @samp{vt100} is defined as a synonym for +either @samp{vt100-am} or @samp{vt100-nam} depending on the +preferences of the local site.@refill + +The standard suffix @samp{-am} stands for ``automatic margins''. + +@item +To give the user a choice in how to use the terminal. This is done +when the terminal has a switch that the computer normally controls. + +@cindex screen size +For example, the Ann Arbor Ambassador can be configured with many +screen sizes ranging from 20 to 60 lines. Fewer lines make bigger +characters but more lines let you see more of what you are editing. +As a result, users have different preferences. Therefore, termcap +provides terminal types for many screen sizes. If you choose type +@samp{aaa-30}, the terminal will be configured to use 30 lines; if you +choose @samp{aaa-48}, 48 lines will be used, and so on. +@end itemize + +Here is a list of standard suffixes and their conventional meanings: + +@table @samp +@item -w +Short for ``wide''. This is a mode that gives the terminal more +columns than usual. This is normally a user option. + +@item -am +``Automatic margins''. This is an alternate description for use when +the terminal's margin-wrap switch is on; it contains the @samp{am} +flag. The implication is that normally the switch is off and the +usual description for the terminal says that the switch is off. + +@item -nam +``No automatic margins''. The opposite of @samp{-am}, this names an +alternative description which lacks the @samp{am} flag. This implies +that the terminal is normally operated with the margin-wrap switch +turned on, and the normal description of the terminal says so. + +@item -na +``No arrows''. This terminal description initializes the terminal to +keep its arrow keys in local mode. This is a user option. + +@item -rv +``Reverse video''. This terminal description causes text output for +normal video to appear as reverse, and text output for reverse video +to come out as normal. Often this description differs from the usual +one by interchanging the two strings which turn reverse video on and +off.@refill + +This is a user option; you can choose either the ``reverse video'' +variant terminal type or the normal terminal type, and termcap will +obey. + +@item -s +``Status''. Says to enable use of a status line which ordinary output +does not touch (@pxref{Status Line}). + +Some terminals have a special line that is used only as a status line. +For these terminals, there is no need for an @samp{-s} variant; the +status line commands should be defined by default. On other +terminals, enabling a status line means removing one screen line from +ordinary use and reducing the effective screen height. For these +terminals, the user can choose the @samp{-s} variant type to request +use of a status line. + +@item -@var{nlines} +Says to operate with @var{nlines} lines on the screen, for terminals +such as the Ambassador which provide this as an option. Normally this +is a user option; by choosing the terminal type, you control how many +lines termcap will use. + +@item -@var{npages}p +Says that the terminal has @var{npages} pages worth of screen memory, +for terminals where this is a hardware option. + +@item -unk +Says that description is not for direct use, but only for reference in +@samp{tc} capabilities. Such a description is a kind of subroutine, +because it describes the common characteristics of several variant +descriptions that would use other suffixes in place of @samp{-unk}. +@end table + +@node Inheriting, Changing, Naming, Data Base +@section Inheriting from Related Descriptions + +@cindex inheritance +When two terminal descriptions are similar, their identical parts do not +need to be given twice. Instead, one of the two can be defined in terms of +the other, using the @samp{tc} capability. We say that one description +@dfn{refers to} the other, or @dfn{inherits from} the other. + +The @samp{tc} capability must be the last one in the terminal description, +and its value is a string which is the name of another terminal type which +is referred to. For example, + +@example +N9|aaa|ambassador|aaa-30|ann arbor ambassador/30 lines:\ + :ti=\E[2J\E[30;0;0;30p:\ + :te=\E[60;0;0;30p\E[30;1H\E[J:\ + :li#30:tc=aaa-unk: +@end example + +@noindent +defines the terminal type @samp{aaa-30} (also known as plain @samp{aaa}) in +terms of @samp{aaa-unk}, which defines everything about the Ambassador that +is independent of screen height. The types @samp{aaa-36}, @samp{aaa-48} +and so on for other screen heights are likewise defined to inherit from +@samp{aaa-unk}. + +The capabilities overridden by @samp{aaa-30} include @samp{li}, which says +how many lines there are, and @samp{ti} and @samp{te}, which configure the +terminal to use that many lines. + +The effective terminal description for type @samp{aaa} consists of the text +shown above followed by the text of the description of @samp{aaa-unk}. The +@samp{tc} capability is handled automatically by @code{tgetent}, which +finds the description thus referenced and combines the two descriptions +(@pxref{Find}). Therefore, only the implementor of the terminal +descriptions needs to think about using @samp{tc}. Users and application +programmers do not need to be concerned with it. + +Since the reference terminal description is used last, capabilities +specified in the referring description override any specifications of the +same capabilities in the reference description. + +The referring description can cancel out a capability without specifying +any new value for it by means of a special trick. Write the capability in +the referring description, with the character @samp{@@} after the capability +name, as follows: + +@smallexample +NZ|aaa-30-nam|ann arbor ambassador/30 lines/no automatic-margins:\ + :am@@:tc=aaa-30: +@end smallexample + +@node Changing, , Inheriting, Data Base +@section When Changes in the Data Base Take Effect + +Each application program must read the terminal description from the +data base, so a change in the data base is effective for all jobs started +after the change is made. + +The change will usually have no effect on a job that have been in existence +since before the change. The program probably read the terminal description +once, when it was started, and is continuing to use what it read then. +If the program does not have a feature for reexamining the data base, then +you will need to run it again (probably killing the old job). + +If the description in use is coming from the @code{TERMCAP} environment +variable, then the data base file is effectively overridden, and changes in +it will have no effect until you change the @code{TERMCAP} variable as +well. For example, some users' @file{.login} files automatically copy the +terminal description into @code{TERMCAP} to speed startup of applications. +If you have done this, you will need to change the @code{TERMCAP} variable +to make the changed data base take effect. + +@node Capabilities, Summary, Data Base, Top +@chapter Definitions of the Terminal Capabilities + +This section is divided into many subsections, each for one aspect of +use of display terminals. For writing a display program, you usually need +only check the subsections for the operations you want to use. For writing +a terminal description, you must read each subsection and fill in the +capabilities described there. + +String capabilities that are display commands may require numeric +parameters (@pxref{Parameters}). Most such capabilities do not use +parameters. When a capability requires parameters, this is explicitly +stated at the beginning of its definition. In simple cases, the first or +second sentence of the definition mentions all the parameters, in the order +they should be given, using a name +@iftex +in italics +@end iftex +@ifinfo +in upper case +@end ifinfo +for each one. For example, the @samp{rp} capability is a command that +requires two parameters; its definition begins as follows: + +@quotation +String of commands to output a graphic character @var{c}, repeated @var{n} +times. +@end quotation + +In complex cases or when there are many parameters, they are described +explicitly. + +When a capability is described as obsolete, this means that programs should +not be written to look for it, but terminal descriptions should still be +written to provide it. + +When a capability is described as very obsolete, this means that it should +be omitted from terminal descriptions as well. + +@menu +* Basic:: Basic characteristics. +* Screen Size:: Screen size, and what happens when it changes. +* Cursor Motion:: Various ways to move the cursor. +* Wrapping:: What happens if you write a character in the last column. +* Scrolling:: Pushing text up and down on the screen. +* Windows:: Limiting the part of the window that output affects. +* Clearing:: Erasing one or many lines. +* Insdel Line:: Making new blank lines in mid-screen; deleting lines. +* Insdel Char:: Inserting and deleting characters within a line. +* Standout:: Highlighting some of the text. +* Underlining:: Underlining some of the text. +* Cursor Visibility:: Making the cursor more or less easy to spot. +* Bell:: Attracts user's attention; not localized on the screen. +* Keypad:: Recognizing when function keys or arrows are typed. +* Meta Key:: @key{META} acts like an extra shift key. +* Initialization:: Commands used to initialize or reset the terminal. +* Pad Specs:: Info for the kernel on how much padding is needed. +* Status Line:: A status line displays ``background'' information. +* Half-Line:: Moving by half-lines, for superscripts and subscripts. +* Printer:: Controlling auxiliary printers of display terminals. +@end menu + +@node Basic, Screen Size, , Capabilities +@section Basic Characteristics + +This section documents the capabilities that describe the basic and +nature of the terminal, and also those that are relevant to the output +of graphic characters. + +@table @samp +@item os +@kindex os +@cindex overstrike +Flag whose presence means that the terminal can overstrike. This +means that outputting a graphic character does not erase whatever was +present in the same character position before. The terminals that can +overstrike include printing terminals, storage tubes (all obsolete +nowadays), and many bit-map displays. + +@item eo +@kindex eo +Flag whose presence means that outputting a space erases a character +position even if the terminal supports overstriking. If this flag is +not present and overstriking is supported, output of a space has no +effect except to move the cursor. + +(On terminals that do not support overstriking, you can always assume +that outputting a space at a position erases whatever character was +previously displayed there.) + +@item gn +@kindex gn +@cindex generic terminal type +Flag whose presence means that this terminal type is a generic type +which does not really describe any particular terminal. Generic types +are intended for use as the default type assigned when the user +connects to the system, with the intention that the user should +specify what type he really has. One example of a generic type +is the type @samp{network}. + +Since the generic type cannot say how to do anything interesting with +the terminal, termcap-using programs will always find that the +terminal is too weak to be supported if the user has failed to specify +a real terminal type in place of the generic one. The @samp{gn} flag +directs these programs to use a different error message: ``You have +not specified your real terminal type'', rather than ``Your terminal +is not powerful enough to be used''. + +@item hc +@kindex hc +Flag whose presence means this is a hardcopy terminal. + +@item rp +@kindex rp +@cindex repeat output +String of commands to output a graphic character @var{c}, repeated @var{n} +times. The first parameter value is the ASCII code for the desired +character, and the second parameter is the number of times to repeat the +character. Often this command requires padding proportional to the +number of times the character is repeated. This effect can be had by +using parameter arithmetic with @samp{%}-sequences to compute the +amount of padding, then generating the result as a number at the front +of the string so that @code{tputs} will treat it as padding. + +@item hz +@kindex hz +Flag whose presence means that the ASCII character @samp{~} cannot be +output on this terminal because it is used for display commands. + +Programs handle this flag by checking all text to be output and +replacing each @samp{~} with some other character(s). If this is not +done, the screen will be thoroughly garbled. + +The old Hazeltine terminals that required such treatment are probably +very rare today, so you might as well not bother to support this flag. + +@item CC +@kindex CC +@cindex command character +String whose presence means the terminal has a settable command +character. The value of the string is the default command character +(which is usually @key{ESC}). + +All the strings of commands in the terminal description should be +written to use the default command character. If you are writing an +application program that changes the command character, use the +@samp{CC} capability to figure out how to translate all the display +commands to work with the new command character. + +Most programs have no reason to look at the @samp{CC} capability. + +@item xb +@kindex xb +@cindex Superbee +Flag whose presence identifies Superbee terminals which are unable to +transmit the characters @key{ESC} and @kbd{Control-C}. Programs which +support this flag are supposed to check the input for the code sequences +sent by the @key{F1} and @key{F2} keys, and pretend that @key{ESC} +or @kbd{Control-C} (respectively) had been read. But this flag is +obsolete, and not worth supporting. +@end table + +@node Screen Size, Cursor Motion, Basic, Capabilities +@section Screen Size +@cindex screen size + +A terminal description has two capabilities, @samp{co} and @samp{li}, +that describe the screen size in columns and lines. But there is more +to the question of screen size than this. + +On some operating systems the ``screen'' is really a window and the +effective width can vary. On some of these systems, @code{tgetnum} +uses the actual width of the window to decide what value to return for +the @samp{co} capability, overriding what is actually written in the +terminal description. On other systems, it is up to the application +program to check the actual window width using a system call. For +example, on BSD 4.3 systems, the system call @code{ioctl} with code +@code{TIOCGWINSZ} will tell you the current screen size. + +On all window systems, termcap is powerless to advise the application +program if the user resizes the window. Application programs must +deal with this possibility in a system-dependent fashion. On some +systems the C shell handles part of the problem by detecting changes +in window size and setting the @code{TERMCAP} environment variable +appropriately. This takes care of application programs that are +started subsequently. It does not help application programs already +running. + +On some systems, including BSD 4.3, all programs using a terminal get +a signal named @code{SIGWINCH} whenever the screen size changes. +Programs that use termcap should handle this signal by using +@code{ioctl TIOCGWINSZ} to learn the new screen size. + +@table @samp +@item co +@kindex co +@cindex screen size +Numeric value, the width of the screen in character positions. Even +hardcopy terminals normally have a @samp{co} capability. + +@item li +@kindex li +Numeric value, the height of the screen in lines. +@end table + +@node Cursor Motion, Wrapping, Screen Size, Capabilities +@section Cursor Motion +@cindex cursor motion + +Termcap assumes that the terminal has a @dfn{cursor}, a spot on the screen +where a visible mark is displayed, and that most display commands take +effect at the position of the cursor. It follows that moving the cursor +to a specified location is very important. + +There are many terminal capabilities for different cursor motion +operations. A terminal description should define as many as possible, but +most programs do not need to use most of them. One capability, @samp{cm}, +moves the cursor to an arbitrary place on the screen; this by itself is +sufficient for any application as long as there is no need to support +hardcopy terminals or certain old, weak displays that have only relative +motion commands. Use of other cursor motion capabilities is an +optimization, enabling the program to output fewer characters in some +common cases. + +If you plan to use the relative cursor motion commands in an application +program, you must know what the starting cursor position is. To do this, +you must keep track of the cursor position and update the records each +time anything is output to the terminal, including graphic characters. +In addition, it is necessary to know whether the terminal wraps after +writing in the rightmost column. @xref{Wrapping}. + +One other motion capability needs special mention: @samp{nw} moves the +cursor to the beginning of the following line, perhaps clearing all the +starting line after the cursor, or perhaps not clearing at all. This +capability is a least common denominator that is probably supported even by +terminals that cannot do most other things such as @samp{cm} or @samp{do}. +Even hardcopy terminals can support @samp{nw}. + +@table @asis +@item @samp{cm} +@kindex cm +String of commands to position the cursor at line @var{l}, column @var{c}. +Both parameters are origin-zero, and are defined relative to the +screen, not relative to display memory. + +All display terminals except a few very obsolete ones support @samp{cm}, +so it is acceptable for an application program to refuse to operate on +terminals lacking @samp{cm}. + +@item @samp{ho} +@kindex ho +@cindex home position +String of commands to move the cursor to the upper left corner of the +screen (this position is called the @dfn{home position}). In +terminals where the upper left corner of the screen is not the same as +the beginning of display memory, this command must go to the upper +left corner of the screen, not the beginning of display memory. + +Every display terminal supports this capability, and many application +programs refuse to operate if the @samp{ho} capability is missing. + +@item @samp{ll} +@kindex ll +String of commands to move the cursor to the lower left corner of the +screen. On some terminals, moving up from home position does this, +but programs should never assume that will work. Just output the +@samp{ll} string (if it is provided); if moving to home position and +then moving up is the best way to get there, the @samp{ll} command +will do that. + +@item @samp{cr} +@kindex cr +String of commands to move the cursor to the beginning of the line it +is on. If this capability is not specified, many programs assume +they can use the ASCII carriage return character for this. + +@item @samp{le} +@kindex le +String of commands to move the cursor left one column. Unless the +@samp{bw} flag capability is specified, the effect is undefined if the +cursor is at the left margin; do not use this command there. If +@samp{bw} is present, this command may be used at the left margin, and +it wraps the cursor to the last column of the preceding line. + +@item @samp{nd} +@kindex nd +String of commands to move the cursor right one column. The effect is +undefined if the cursor is at the right margin; do not use this +command there, not even if @samp{am} is present. + +@item @samp{up} +@kindex up +String of commands to move the cursor vertically up one line. The +effect of sending this string when on the top line is undefined; +programs should never use it that way. + +@item @samp{do} +@kindex do +String of commands to move the cursor vertically down one line. The +effect of sending this string when on the bottom line is undefined; +programs should never use it that way. + +Some programs do use @samp{do} to scroll up one line if used at the +bottom line, if @samp{sf} is not defined but @samp{sr} is. This is +only to compensate for certain old, incorrect terminal descriptions. +(In principle this might actually lead to incorrect behavior on other +terminals, but that seems to happen rarely if ever.) But the proper +solution is that the terminal description should define @samp{sf} as +well as @samp{do} if the command is suitable for scrolling. + +The original idea was that this string would not contain a newline +character and therefore could be used without disabling the kernel's +usual habit of converting of newline into a carriage-return newline +sequence. But many terminal descriptions do use newline in the +@samp{do} string, so this is not possible; a program which sends the +@samp{do} string must disable output conversion in the kernel +(@pxref{Initialize}). + +@item @samp{bw} +@kindex bw +Flag whose presence says that @samp{le} may be used in column zero +to move to the last column of the preceding line. If this flag +is not present, @samp{le} should not be used in column zero. + +@item @samp{nw} +@kindex nw +String of commands to move the cursor to start of next line, possibly +clearing rest of line (following the cursor) before moving. + +@item @samp{DO}, @samp{UP}, @samp{LE}, @samp{RI} +@kindex DO +@kindex LE +@kindex RI +@kindex UP +Strings of commands to move the cursor @var{n} lines down vertically, +up vertically, or @var{n} columns left or right. Do not attempt to +move past any edge of the screen with these commands; the effect of +trying that is undefined. Only a few terminal descriptions provide +these commands, and most programs do not use them. + +@item @samp{CM} +@kindex CM +String of commands to position the cursor at line @var{l}, column +@var{c}, relative to display memory. Both parameters are origin-zero. +This capability is present only in terminals where there is a +difference between screen-relative and memory-relative addressing, and +not even in all such terminals. + +@item @samp{ch} +@kindex ch +String of commands to position the cursor at column @var{c} in the +same line it is on. This is a special case of @samp{cm} in which the +vertical position is not changed. The @samp{ch} capability is +provided only when it is faster to output than @samp{cm} would be in +this special case. Programs should not assume most display terminals +have @samp{ch}. + +@item @samp{cv} +@kindex cv +String of commands to position the cursor at line @var{l} in the same +column. This is a special case of @samp{cm} in which the horizontal +position is not changed. The @samp{cv} capability is provided only +when it is faster to output than @samp{cm} would be in this special +case. Programs should not assume most display terminals have +@samp{cv}. + +@item @samp{sc} +@kindex sc +String of commands to make the terminal save the current cursor +position. Only the last saved position can be used. If this +capability is present, @samp{rc} should be provided also. Most +terminals have neither. + +@item @samp{rc} +@kindex rc +String of commands to make the terminal restore the last saved cursor +position. If this capability is present, @samp{sc} should be provided +also. Most terminals have neither. + +@item @samp{ff} +@kindex ff +String of commands to advance to the next page, for a hardcopy +terminal. + +@item @samp{ta} +@kindex ta +String of commands to move the cursor right to the next hardware tab +stop column. Missing if the terminal does not have any kind of +hardware tabs. Do not send this command if the kernel's terminal +modes say that the kernel is expanding tabs into spaces. + +@item @samp{bt} +@kindex bt +String of commands to move the cursor left to the previous hardware +tab stop column. Missing if the terminal has no such ability; many +terminals do not. Do not send this command if the kernel's terminal +modes say that the kernel is expanding tabs into spaces. +@end table + +The following obsolete capabilities should be included in terminal +descriptions when appropriate, but should not be looked at by new programs. + +@table @samp +@item nc +@kindex nc +Flag whose presence means the terminal does not support the ASCII +carriage return character as @samp{cr}. This flag is needed because +old programs assume, when the @samp{cr} capability is missing, that +ASCII carriage return can be used for the purpose. We use @samp{nc} +to tell the old programs that carriage return may not be used. + +New programs should not assume any default for @samp{cr}, so they need +not look at @samp{nc}. However, descriptions should contain @samp{nc} +whenever they do not contain @samp{cr}. + +@item xt +@kindex xt +Flag whose presence means that the ASCII tab character may not be used +for cursor motion. This flag exists because old programs assume, when +the @samp{ta} capability is missing, that ASCII tab can be used for +the purpose. We use @samp{xt} to tell the old programs not to use tab. + +New programs should not assume any default for @samp{ta}, so they need +not look at @samp{xt} in connection with cursor motion. Note that +@samp{xt} also has implications for standout mode (@pxref{Standout}). +It is obsolete in regard to cursor motion but not in regard to +standout. + +In fact, @samp{xt} means that the terminal is a Teleray 1061. + +@item bc +@kindex bc +Very obsolete alternative name for the @samp{le} capability. + +@item bs +@kindex bs +Flag whose presence means that the ASCII character backspace may be +used to move the cursor left. Obsolete; look at @samp{le} instead. + +@item nl +@kindex nl +Obsolete capability which is a string that can either be used to move +the cursor down or to scroll. The same string must scroll when used +on the bottom line and move the cursor when used on any other line. +New programs should use @samp{do} or @samp{sf}, and ignore @samp{nl}. + +If there is no @samp{nl} capability, some old programs assume they can +use the newline character for this purpose. These programs follow a +bad practice, but because they exist, it is still desirable to define +the @samp{nl} capability in a terminal description if the best way to +move down is @emph{not} a newline. +@end table + +@node Wrapping, Scrolling, Cursor Motion, Capabilities +@section Wrapping +@cindex wrapping + +@dfn{Wrapping} means moving the cursor from the right margin to the left +margin of the following line. Some terminals wrap automatically when a +graphic character is output in the last column, while others do not. Most +application programs that use termcap need to know whether the terminal +wraps. There are two special flag capabilities to describe what the +terminal does when a graphic character is output in the last column. + +@table @samp +@item am +@kindex am +Flag whose presence means that writing a character in the last column +causes the cursor to wrap to the beginning of the next line. + +If @samp{am} is not present, writing in the last column leaves the +cursor at the place where the character was written. + +Writing in the last column of the last line should be avoided on +terminals with @samp{am}, as it may or may not cause scrolling to +occur (@pxref{Scrolling}). Scrolling is surely not what you would +intend. + +If your program needs to check the @samp{am} flag, then it also needs +to check the @samp{xn} flag which indicates that wrapping happens in a +strange way. Many common terminals have the @samp{xn} flag. + +@item xn +@kindex xn +Flag whose presence means that the cursor wraps in a strange way. At +least two distinct kinds of strange behavior are known; the termcap +data base does not contain anything to distinguish the two. + +On Concept-100 terminals, output in the last column wraps the cursor +almost like an ordinary @samp{am} terminal. But if the next thing +output is a newline, it is ignored. + +DEC VT-100 terminals (when the wrap switch is on) do a different +strange thing: the cursor wraps only if the next thing output is +another graphic character. In fact, the wrap occurs when the +following graphic character is received by the terminal, before the +character is placed on the screen. + +On both of these terminals, after writing in the last column a +following graphic character will be displayed in the first column of +the following line. But the effect of relative cursor motion +characters such as newline or backspace at such a time depends on the +terminal. The effect of erase or scrolling commands also depends on +the terminal. You can't assume anything about what they will do on a +terminal that has @samp{xn}. So, to be safe, you should never do +these things at such a time on such a terminal. + +To be sure of reliable results on a terminal which has the @samp{xn} +flag, output a @samp{cm} absolute positioning command after writing in +the last column. Another safe thing to do is to output carriage-return +newline, which will leave the cursor at the beginning of the following +line. + +@item LP +@kindex LP +Flag whose presence means that it is safe to write in the last column of +the last line without worrying about undesired scrolling. @samp{LP} +indicates the DEC flavor of @samp{xn} strangeness. +@end table + +@node Scrolling, Windows, Wrapping, Capabilities +@section Scrolling +@cindex scrolling + +@dfn{Scrolling} means moving the contents of the screen up or down one or +more lines. Moving the contents up is @dfn{forward scrolling}; moving them +down is @dfn{reverse scrolling}. + +Scrolling happens after each line of output during ordinary output on most +display terminals. But in an application program that uses termcap for +random-access output, scrolling happens only when explicitly requested with +the commands in this section. + +Some terminals have a @dfn{scroll region} feature. This lets you limit +the effect of scrolling to a specified range of lines. Lines outside the +range are unaffected when scrolling happens. The scroll region feature +is available if either @samp{cs} or @samp{cS} is present. + +@table @samp +@item sf +@kindex sf +String of commands to scroll the screen one line up, assuming it is +output with the cursor at the beginning of the bottom line. + +@item sr +@kindex sr +String of commands to scroll the screen one line down, assuming it is +output with the cursor at the beginning of the top line. + +@item do +A few programs will try to use @samp{do} to do the work of @samp{sf}. +This is not really correct---it is an attempt to compensate for the +absence of a @samp{sf} command in some old terminal descriptions. + +Since these terminal descriptions do define @samp{sr}, perhaps at one +time the definition of @samp{do} was different and it could be used +for scrolling as well. But it isn't desirable to combine these two +functions in one capability, since scrolling often requires more +padding than simply moving the cursor down. Defining @samp{sf} and +@samp{do} separately allows you to specify the padding properly. +Also, all sources agree that @samp{do} should not be relied on to do +scrolling. + +So the best approach is to add @samp{sf} capabilities to the +descriptions of these terminals, copying the definition of @samp{do} +if that does scroll. + +@item SF +@kindex SF +String of commands to scroll the screen @var{n} lines up, assuming it +is output with the cursor at the beginning of the bottom line. + +@item SR +@kindex SR +String of commands to scroll the screen @var{n} lines down, assuming it +is output with the cursor at the beginning of the top line. + +@item cs +@kindex cs +String of commands to set the scroll region. This command takes two +parameters, @var{start} and @var{end}, which are the line numbers +(origin-zero) of the first line to include in the scroll region and of +the last line to include in it. When a scroll region is set, +scrolling is limited to the specified range of lines; lines outside +the range are not affected by scroll commands. + +Do not try to move the cursor outside the scroll region. The region +remains set until explicitly removed. To remove the scroll region, +use another @samp{cs} command specifying the full height of the +screen. + +The cursor position is undefined after the @samp{cs} command is set, +so position the cursor with @samp{cm} immediately afterward. + +@item cS +@kindex cS +String of commands to set the scroll region using parameters in +different form. The effect is the same as if @samp{cs} were used. +Four parameters are required: + +@enumerate +@item +Total number of lines on the screen. +@item +Number of lines above desired scroll region. +@item +Number of lines below (outside of) desired scroll region. +@item +Total number of lines on the screen, the same as the first parameter. +@end enumerate + +This capability is a GNU extension that was invented to allow the Ann +Arbor Ambassador's scroll-region command to be described; it could +also be done by putting non-Unix @samp{%}-sequences into a @samp{cs} +string, but that would have confused Unix programs that used the +@samp{cs} capability with the Unix termcap. Currently only GNU Emacs +uses the @samp{cS} capability. + +@item ns +@kindex ns +Flag which means that the terminal does not normally scroll for +ordinary sequential output. For modern terminals, this means that +outputting a newline in ordinary sequential output with the cursor on +the bottom line wraps to the top line. For some obsolete terminals, +other things may happen. + +The terminal may be able to scroll even if it does not normally do so. +If the @samp{sf} capability is provided, it can be used for scrolling +regardless of @samp{ns}. + +@item da +@kindex da +Flag whose presence means that lines scrolled up off the top of the +screen may come back if scrolling down is done subsequently. + +The @samp{da} and @samp{db} flags do not, strictly speaking, affect +how to scroll. But programs that scroll usually need to clear the +lines scrolled onto the screen, if these flags are present. + +@item db +@kindex db +Flag whose presence means that lines scrolled down off the bottom of +the screen may come back if scrolling up is done subsequently. + +@item lm +@kindex lm +Numeric value, the number of lines of display memory that the terminal +has. A value of zero means that the terminal has more display memory +than can fit on the screen, but no fixed number of lines. (The number +of lines may depend on the amount of text in each line.) +@end table + +Any terminal description that defines @samp{SF} should also define @samp{sf}; +likewise for @samp{SR} and @samp{sr}. However, many terminals can only +scroll by one line at a time, so it is common to find @samp{sf} and not +@samp{SF}, or @samp{sr} without @samp{SR}.@refill + +Therefore, all programs that use the scrolling facilities should be +prepared to work with @samp{sf} in the case that @samp{SF} is absent, and +likewise with @samp{sr}. On the other hand, an application program that +uses only @samp{sf} and not @samp{SF} is acceptable, though slow on some +terminals.@refill + +When outputting a scroll command with @code{tputs}, the @var{nlines} +argument should be the total number of lines in the portion of the screen +being scrolled. Very often these commands require padding proportional to +this number of lines. @xref{Padding}. + +@node Windows, Clearing, Scrolling, Capabilities +@section Windows +@cindex window + +A @dfn{window}, in termcap, is a rectangular portion of the screen to which +all display operations are restricted. Wrapping, clearing, scrolling, +insertion and deletion all operate as if the specified window were all the +screen there was. + +@table @samp +@item wi +@kindex wi +String of commands to set the terminal output screen window. +This string requires four parameters, all origin-zero: +@enumerate +@item +The first line to include in the window. +@item +The last line to include in the window. +@item +The first column to include in the window. +@item +The last column to include in the window. +@end enumerate +@end table + +Most terminals do not support windows. + +@node Clearing, Insdel Line, Windows, Capabilities +@section Clearing Parts of the Screen +@cindex erasing +@cindex clearing the screen + +There are several terminal capabilities for clearing parts of the screen +to blank. All display terminals support the @samp{cl} string, and most +display terminals support all of these capabilities. + +@table @samp +@item cl +@kindex cl +String of commands to clear the entire screen and position the cursor +at the upper left corner. + +@item cd +@kindex cd +String of commands to clear the line the cursor is on, and all the +lines below it, down to the bottom of the screen. This command string +should be used only with the cursor in column zero; their effect is +undefined if the cursor is elsewhere. + +@item ce +@kindex ce +String of commands to clear from the cursor to the end of the current +line. + +@item ec +@kindex ec +String of commands to clear @var{n} characters, starting with the +character that the cursor is on. This command string is expected to +leave the cursor position unchanged. The parameter @var{n} should never +be large enough to reach past the right margin; the effect of such a +large parameter would be undefined. +@end table + +Clear to end of line (@samp{ce}) is extremely important in programs that +maintain an updating display. Nearly all display terminals support this +operation, so it is acceptable for a an application program to refuse to +work if @samp{ce} is not present. However, if you do not want this +limitation, you can accomplish clearing to end of line by outputting spaces +until you reach the right margin. In order to do this, you must know the +current horizontal position. Also, this technique assumes that writing a +space will erase. But this happens to be true on all the display terminals +that fail to support @samp{ce}. + +@node Insdel Line, Insdel Char, Clearing, Capabilities +@section Insert/Delete Line + +@cindex insert line +@cindex delete line +@dfn{Inserting a line} means creating a blank line in the middle +of the screen, and pushing the existing lines of text apart. In fact, +the lines above the insertion point do not change, while the lines below +move down, and one is normally lost at the bottom of the screen. + +@dfn{Deleting a line} means causing the line to disappear from the screen, +closing up the gap by moving the lines below it upward. A new line +appears at the bottom of the screen. Usually this line is blank, but +on terminals with the @samp{db} flag it may be a line previously moved +off the screen bottom by scrolling or line insertion. + +Insertion and deletion of lines is useful in programs that maintain an +updating display some parts of which may get longer or shorter. They are +also useful in editors for scrolling parts of the screen, and for +redisplaying after lines of text are killed or inserted. + +Many terminals provide commands to insert or delete a single line at the +cursor position. Some provide the ability to insert or delete several +lines with one command, using the number of lines to insert or delete as a +parameter. Always move the cursor to column zero before using any of +these commands. + +@table @samp +@item al +@kindex al +String of commands to insert a blank line before the line the cursor +is on. The existing line, and all lines below it, are moved down. +The last line in the screen (or in the scroll region, if one is set) +disappears and in most circumstances is discarded. It may not be +discarded if the @samp{db} is present (@pxref{Scrolling}). + +The cursor must be at the left margin before this command is used. +This command does not move the cursor. + +@item dl +@kindex dl +String of commands to delete the line the cursor is on. The following +lines move up, and a blank line appears at the bottom of the screen +(or bottom of the scroll region). If the terminal has the @samp{db} +flag, a nonblank line previously pushed off the screen bottom may +reappear at the bottom. + +The cursor must be at the left margin before this command is used. +This command does not move the cursor. + +@item AL +@kindex AL +String of commands to insert @var{n} blank lines before the line that +the cursor is on. It is like @samp{al} repeated @var{n} times, except +that it is as fast as one @samp{al}. + +@item DL +@kindex DL +String of commands to delete @var{n} lines starting with the line that +the cursor is on. It is like @samp{dl} repeated @var{n} times, except +that it is as fast as one @samp{dl}. +@end table + +Any terminal description that defines @samp{AL} should also define +@samp{al}; likewise for @samp{DL} and @samp{dl}. However, many terminals +can only insert or delete one line at a time, so it is common to find +@samp{al} and not @samp{AL}, or @samp{dl} without @samp{DL}.@refill + +Therefore, all programs that use the insert and delete facilities should be +prepared to work with @samp{al} in the case that @samp{AL} is absent, and +likewise with @samp{dl}. On the other hand, it is acceptable to write +an application that uses only @samp{al} and @samp{dl} and does not look +for @samp{AL} or @samp{DL} at all.@refill + +If a terminal does not support line insertion and deletion directly, +but does support a scroll region, the effect of insertion and deletion +can be obtained with scrolling. However, it is up to the individual +user program to check for this possibility and use the scrolling +commands to get the desired result. It is fairly important to implement +this alternate strategy, since it is the only way to get the effect of +line insertion and deletion on the popular VT100 terminal. + +Insertion and deletion of lines is affected by the scroll region on +terminals that have a settable scroll region. This is useful when it is +desirable to move any few consecutive lines up or down by a few lines. +@xref{Scrolling}. + +The line pushed off the bottom of the screen is not lost if the terminal +has the @samp{db} flag capability; instead, it is pushed into display +memory that does not appear on the screen. This is the same thing that +happens when scrolling pushes a line off the bottom of the screen. +Either reverse scrolling or deletion of a line can bring the apparently +lost line back onto the bottom of the screen. If the terminal has the +scroll region feature as well as @samp{db}, the pushed-out line really +is lost if a scroll region is in effect. + +When outputting an insert or delete command with @code{tputs}, the +@var{nlines} argument should be the total number of lines from the cursor +to the bottom of the screen (or scroll region). Very often these commands +require padding proportional to this number of lines. @xref{Padding}. + +For @samp{AL} and @samp{DL} the @var{nlines} argument should @emph{not} +depend on the number of lines inserted or deleted; only the total number of +lines affected. This is because it is just as fast to insert two or +@var{n} lines with @samp{AL} as to insert one line with @samp{al}. + +@node Insdel Char, Standout, Insdel Line, Capabilities +@section Insert/Delete Character +@cindex insert character +@cindex delete character + +@dfn{Inserting a character} means creating a blank space in the middle of a +line, and pushing the rest of the line rightward. The character in the +rightmost column is lost. + +@dfn{Deleting a character} means causing the character to disappear from +the screen, closing up the gap by moving the rest of the line leftward. A +blank space appears in the rightmost column. + +Insertion and deletion of characters is useful in programs that maintain an +updating display some parts of which may get longer or shorter. It is also +useful in editors for redisplaying the results of editing within a line. + +Many terminals provide commands to insert or delete a single character at +the cursor position. Some provide the ability to insert or delete several +characters with one command, using the number of characters to insert or +delete as a parameter. + +@cindex insert mode +Many terminals provide an insert mode in which outputting a graphic +character has the added effect of inserting a position for that character. +A special command string is used to enter insert mode and another is used +to exit it. The reason for designing a terminal with an insert mode rather +than an insert command is that inserting character positions is usually +followed by writing characters into them. With insert mode, this is as +fast as simply writing the characters, except for the fixed overhead of +entering and leaving insert mode. However, when the line speed is great +enough, padding may be required for the graphic characters output in insert +mode. + +Some terminals require you to enter insert mode and then output a special +command for each position to be inserted. Or they may require special +commands to be output before or after each graphic character to be +inserted. + +@cindex delete mode +Deletion of characters is usually accomplished by a straightforward command +to delete one or several positions; but on some terminals, it is necessary +to enter a special delete mode before using the delete command, and leave +delete mode afterward. Sometimes delete mode and insert mode are the same +mode. + +Some terminals make a distinction between character positions in which a +space character has been output and positions which have been cleared. On +these terminals, the effect of insert or delete character runs to the first +cleared position rather than to the end of the line. In fact, the effect +may run to more than one line if there is no cleared position to stop the +shift on the first line. These terminals are identified by the @samp{in} +flag capability. + +On terminals with the @samp{in} flag, the technique of skipping over +characters that you know were cleared, and then outputting text later on in +the same line, causes later insert and delete character operations on that +line to do nonstandard things. A program that has any chance of doing this +must check for the @samp{in} flag and must be careful to write explicit +space characters into the intermediate columns when @samp{in} is present. + +A plethora of terminal capabilities are needed to describe all of this +complexity. Here is a list of them all. Following the list, we present +an algorithm for programs to use to take proper account of all of these +capabilities. + +@table @samp +@item im +@kindex im +String of commands to enter insert mode. + +If the terminal has no special insert mode, but it can insert +characters with a special command, @samp{im} should be defined with a +null value, because the @samp{vi} editor assumes that insertion of a +character is impossible if @samp{im} is not provided. + +New programs should not act like @samp{vi}. They should pay attention +to @samp{im} only if it is defined. + +@item ei +@kindex ei +String of commands to leave insert mode. This capability must be +present if @samp{im} is. + +On a few old terminals the same string is used to enter and exit +insert mode. This string turns insert mode on if it was off, and off +it it was on. You can tell these terminals because the @samp{ei} +string equals the @samp{im} string. If you want to support these +terminals, you must always remember accurately whether insert mode is +in effect. However, these terminals are obsolete, and it is +reasonable to refuse to support them. On all modern terminals, you +can safely output @samp{ei} at any time to ensure that insert mode is +turned off. + +@item ic +@kindex ic +String of commands to insert one character position at the cursor. +The cursor does not move. + +If outputting a graphic character while in insert mode is sufficient +to insert the character, then the @samp{ic} capability should be +defined with a null value. + +If your terminal offers a choice of ways to insert---either use insert +mode or use a special command---then define @samp{im} and do not define +@samp{ic}, since this gives the most efficient operation when several +characters are to be inserted. @emph{Do not} define both strings, for +that means that @emph{both} must be used each time insertion is done. + +@item ip +@kindex ip +String of commands to output following an inserted graphic character +in insert mode. Often it is used just for a padding spec, when padding +is needed after an inserted character (@pxref{Padding}). + +@item IC +@kindex IC +String of commands to insert @var{n} character positions at and after +the cursor. It has the same effect as repeating the @samp{ic} string +and a space, @var{n} times. + +If @samp{IC} is provided, application programs may use it without first +entering insert mode. + +@item mi +@kindex mi +Flag whose presence means it is safe to move the cursor while in insert +mode and assume the terminal remains in insert mode. + +@item in +@kindex in +Flag whose presence means that the terminal distinguishes between +character positions in which space characters have been output and +positions which have been cleared. +@end table + +An application program can assume that the terminal can do character +insertion if @emph{any one of} the capabilities @samp{IC}, @samp{im}, +@samp{ic} or @samp{ip} is provided. + +To insert @var{n} blank character positions, move the cursor to the place +to insert them and follow this algorithm: + +@enumerate +@item +If an @samp{IC} string is provided, output it with parameter @var{n} +and you are finished. Otherwise (or if you don't want to bother to +look for an @samp{IC} string) follow the remaining steps. + +@item +Output the @samp{im} string, if there is one, unless the terminal is +already in insert mode. + +@item +Repeat steps 4 through 6, @var{n} times. + +@item +Output the @samp{ic} string if any. + +@item +Output a space. + +@item +Output the @samp{ip} string if any. + +@item +Output the @samp{ei} string, eventually, to exit insert mode. There +is no need to do this right away. If the @samp{mi} flag is present, +you can move the cursor and the cursor will remain in insert mode; +then you can do more insertion elsewhere without reentering insert +mode. +@end enumerate + +To insert @var{n} graphic characters, position the cursor and follow this +algorithm: + +@enumerate +@item +If an @samp{IC} string is provided, output it with parameter @var{n}, +then output the graphic characters, and you are finished. Otherwise +(or if you don't want to bother to look for an @samp{IC} string) +follow the remaining steps. + +@item +Output the @samp{im} string, if there is one, unless the terminal is +already in insert mode. + +@item +For each character to be output, repeat steps 4 through 6. + +@item +Output the @samp{ic} string if any. + +@item +Output the next graphic character. + +@item +Output the @samp{ip} string if any. + +@item +Output the @samp{ei} string, eventually, to exit insert mode. There +is no need to do this right away. If the @samp{mi} flag is present, +you can move the cursor and the cursor will remain in insert mode; +then you can do more insertion elsewhere without reentering insert +mode. +@end enumerate + +Note that this is not the same as the original Unix termcap specifications +in one respect: it assumes that the @samp{IC} string can be used without +entering insert mode. This is true as far as I know, and it allows you be +able to avoid entering and leaving insert mode, and also to be able to +avoid the inserted-character padding after the characters that go into the +inserted positions. + +Deletion of characters is less complicated; deleting one column is done by +outputting the @samp{dc} string. However, there may be a delete mode that +must be entered with @samp{dm} in order to make @samp{dc} work. + +@table @samp +@item dc +@kindex dc +String of commands to delete one character position at the cursor. If +@samp{dc} is not present, the terminal cannot delete characters. + +@item DC +@kindex DC +String of commands to delete @var{n} characters starting at the cursor. +It has the same effect as repeating the @samp{dc} string @var{n} times. +Any terminal description that has @samp{DC} also has @samp{dc}. + +@item dm +@kindex dm +String of commands to enter delete mode. If not present, there is no +delete mode, and @samp{dc} can be used at any time (assuming there is +a @samp{dc}). + +@item ed +@kindex ed +String of commands to exit delete mode. This must be present if +@samp{dm} is. +@end table + +To delete @var{n} character positions, position the cursor and follow these +steps: + +@enumerate +@item +If the @samp{DC} string is present, output it with parameter @var{n} +and you are finished. Otherwise, follow the remaining steps. + +@item +Output the @samp{dm} string, unless you know the terminal is already +in delete mode. + +@item +Output the @samp{dc} string @var{n} times. + +@item +Output the @samp{ed} string eventually. If the flag capability +@samp{mi} is present, you can move the cursor and do more deletion +without leaving and reentering delete mode. +@end enumerate + +As with the @samp{IC} string, we have departed from the original termcap +specifications by assuming that @samp{DC} works without entering delete +mode even though @samp{dc} would not. + +If the @samp{dm} and @samp{im} capabilities are both present and have the +same value, it means that the terminal has one mode for both insertion and +deletion. It is useful for a program to know this, because then it can do +insertions after deletions, or vice versa, without leaving insert/delete +mode and reentering it. + +@node Standout, Underlining, Insdel Char, Capabilities +@section Standout and Appearance Modes +@cindex appearance modes +@cindex standout +@cindex magic cookie + +@dfn{Appearance modes} are modifications to the ways characters are +displayed. Typical appearance modes include reverse video, dim, bright, +blinking, underlined, invisible, and alternate character set. Each kind of +terminal supports various among these, or perhaps none. + +For each type of terminal, one appearance mode or combination of them that +looks good for highlighted text is chosen as the @dfn{standout mode}. The +capabilities @samp{so} and @samp{se} say how to enter and leave standout +mode. Programs that use appearance modes only to highlight some text +generally use the standout mode so that they can work on as many terminals +as possible. Use of specific appearance modes other than ``underlined'' +and ``alternate character set'' is rare. + +Terminals that implement appearance modes fall into two general classes as +to how they do it. + +In some terminals, the presence or absence of any appearance mode is +recorded separately for each character position. In these terminals, each +graphic character written is given the appearance modes current at the time +it is written, and keeps those modes until it is erased or overwritten. +There are special commands to turn the appearance modes on or off for +characters to be written in the future. + +In other terminals, the change of appearance modes is represented by a +marker that belongs to a certain screen position but affects all following +screen positions until the next marker. These markers are traditionally +called @dfn{magic cookies}. + +The same capabilities (@samp{so}, @samp{se}, @samp{mb} and so on) for +turning appearance modes on and off are used for both magic-cookie +terminals and per-character terminals. On magic cookie terminals, these +give the commands to write the magic cookies. On per-character terminals, +they change the current modes that affect future output and erasure. Some +simple applications can use these commands without knowing whether or not +they work by means of cookies. + +However, a program that maintains and updates a display needs to know +whether the terminal uses magic cookies, and exactly what their effect is. +This information comes from the @samp{sg} capability. + +The @samp{sg} capability is a numeric capability whose presence indicates +that the terminal uses magic cookies for appearance modes. Its value is +the number of character positions that a magic cookie occupies. Usually +the cookie occupies one or more character positions on the screen, and these +character positions are displayed as blank, but in some terminals the +cookie has zero width. + +The @samp{sg} capability describes both the magic cookie to turn standout +on and the cookie to turn it off. This makes the assumption that both +kinds of cookie have the same width on the screen. If that is not true, +the narrower cookie must be ``widened'' with spaces until it has the same +width as the other. + +On some magic cookie terminals, each line always starts with normal +display; in other words, the scope of a magic cookie never extends over +more than one line. But on other terminals, one magic cookie affects all +the lines below it unless explicitly canceled. Termcap does not define any +way to distinguish these two ways magic cookies can work. To be safe, it +is best to put a cookie at the beginning of each line. + +On some per-character terminals, standout mode or other appearance modes +may be canceled by moving the cursor. On others, moving the cursor has no +effect on the state of the appearance modes. The latter class of terminals +are given the flag capability @samp{ms} (``can move in standout''). All +programs that might have occasion to move the cursor while appearance modes +are turned on must check for this flag; if it is not present, they should +reset appearance modes to normal before doing cursor motion. + +A program that has turned on only standout mode should use @samp{se} to +reset the standout mode to normal. A program that has turned on only +alternate character set mode should use @samp{ae} to return it to normal. +If it is possible that any other appearance modes are turned on, use the +@samp{me} capability to return them to normal. + +Note that the commands to turn on one appearance mode, including @samp{so} +and @samp{mb} @dots{} @samp{mr}, if used while some other appearance modes +are turned on, may combine the two modes on some terminals but may turn off +the mode previously enabled on other terminals. This is because some +terminals do not have a command to set or clear one appearance mode without +changing the others. Programs should not attempt to use appearance modes +in combination except with @samp{sa}, and when switching from one single +mode to another should always turn off the previously enabled mode and then +turn on the new desired mode. + +On some old terminals, the @samp{so} and @samp{se} commands may be the same +command, which has the effect of turning standout on if it is off, or off +it is on. It is therefore risky for a program to output extra @samp{se} +commands for good measure. Fortunately, all these terminals are obsolete. + +Programs that update displays in which standout-text may be replaced with +non-standout text must check for the @samp{xs} flag. In a per-character +terminal, this flag says that the only way to remove standout once written is +to clear that portion of the line with the @samp{ce} string or something +even more powerful (@pxref{Clearing}); just writing new characters at those +screen positions will not change the modes in effect there. In a magic +cookie terminal, @samp{xs} says that the only way to remove a cookie is to +clear a portion of the line that includes the cookie; writing a different +cookie at the same position does not work. + +Such programs must also check for the @samp{xt} flag, which means that the +terminal is a Teleray 1061. On this terminal it is impossible to position +the cursor at the front of a magic cookie, so the only two ways to remove a +cookie are (1) to delete the line it is on or (2) to position the cursor at +least one character before it (possibly on a previous line) and output the +@samp{se} string, which on these terminals finds and removes the next +@samp{so} magic cookie on the screen. (It may also be possible to remove a +cookie which is not at the beginning of a line by clearing that line.) The +@samp{xt} capability also has implications for the use of tab characters, +but in that regard it is obsolete (@xref{Cursor Motion}). + +@table @samp +@item so +@kindex so +String of commands to enter standout mode. + +@item se +@kindex se +String of commands to leave standout mode. + +@item sg +@kindex sg +Numeric capability, the width on the screen of the magic cookie. This +capability is absent in terminals that record appearance modes +character by character. + +@item ms +@kindex ms +Flag whose presence means that it is safe to move the cursor while the +appearance modes are not in the normal state. If this flag is absent, +programs should always reset the appearance modes to normal before +moving the cursor. + +@item xs +@kindex xs +Flag whose presence means that the only way to reset appearance modes +already on the screen is to clear to end of line. On a per-character +terminal, you must clear the area where the modes are set. On a magic +cookie terminal, you must clear an area containing the cookie. +See the discussion above. + +@item xt +@kindex xt +Flag whose presence means that the cursor cannot be positioned right +in front of a magic cookie, and that @samp{se} is a command to delete +the next magic cookie following the cursor. See discussion above. + +@item mb +@kindex mb +String of commands to enter blinking mode. + +@item md +@kindex md +String of commands to enter double-bright mode. + +@item mh +@kindex mh +String of commands to enter half-bright mode. + +@item mk +@kindex mk +String of commands to enter invisible mode. + +@item mp +@kindex mp +String of commands to enter protected mode. + +@item mr +@kindex mr +String of commands to enter reverse-video mode. + +@item me +@kindex me +String of commands to turn off all appearance modes, including +standout mode and underline mode. On some terminals it also turns off +alternate character set mode; on others, it may not. This capability +must be present if any of @samp{mb} @dots{} @samp{mr} is present. + +@item as +@kindex as +String of commands to turn on alternate character set mode. This mode +assigns some or all graphic characters an alternate picture on the +screen. There is no standard as to what the alternate pictures look +like. + +@item ae +@kindex ae +String of commands to turn off alternate character set mode. + +@item sa +@kindex sa +String of commands to turn on an arbitrary combination of appearance +modes. It accepts 9 parameters, each of which controls a particular +kind of appearance mode. A parameter should be 1 to turn its appearance +mode on, or zero to turn that mode off. Most terminals do not support +the @samp{sa} capability, even among those that do have various +appearance modes. + +The nine parameters are, in order, @var{standout}, @var{underline}, +@var{reverse}, @var{blink}, @var{half-bright}, @var{double-bright}, +@var{blank}, @var{protect}, @var{alt char set}. +@end table + +@node Underlining, Cursor Visibility, Standout, Capabilities +@section Underlining +@cindex underlining + +Underlining on most terminals is a kind of appearance mode, much like +standout mode. Therefore, it may be implemented using magic cookies or as +a flag in the terminal whose current state affects each character that is +output. @xref{Standout}, for a full explanation. + +The @samp{ug} capability is a numeric capability whose presence indicates +that the terminal uses magic cookies for underlining. Its value is the +number of character positions that a magic cookie for underlining occupies; +it is used for underlining just as @samp{sg} is used for standout. Aside +from the simplest applications, it is impossible to use underlining +correctly without paying attention to the value of @samp{ug}. + +@table @samp +@item us +@kindex us +String of commands to turn on underline mode or to output a magic cookie +to start underlining. + +@item ue +@kindex ue +String of commands to turn off underline mode or to output a magic +cookie to stop underlining. + +@item ug +@kindex ug +Width of magic cookie that represents a change of underline mode; +or missing, if the terminal does not use a magic cookie for this. + +@item ms +@kindex ms +Flag whose presence means that it is safe to move the cursor while the +appearance modes are not in the normal state. Underlining is an +appearance mode. If this flag is absent, programs should always turn +off underlining before moving the cursor. +@end table + +There are two other, older ways of doing underlining: there can be a +command to underline a single character, or the output of @samp{_}, the +ASCII underscore character, as an overstrike could cause a character to be +underlined. New programs need not bother to handle these capabilities +unless the author cares strongly about the obscure terminals which support +them. However, terminal descriptions should provide these capabilities +when appropriate. + +@table @samp +@item uc +@kindex uc +String of commands to underline the character under the cursor, and +move the cursor right. + +@item ul +@kindex ul +Flag whose presence means that the terminal can underline by +overstriking an underscore character (@samp{_}); some terminals can do +this even though they do not support overstriking in general. An +implication of this flag is that when outputting new text to overwrite +old text, underscore characters must be treated specially lest they +underline the old text instead. +@end table + +@node Cursor Visibility, Bell, Underlining, Capabilities +@section Cursor Visibility +@cindex visibility + +Some terminals have the ability to make the cursor invisible, or to enhance +it. Enhancing the cursor is often done by programs that plan to use the +cursor to indicate to the user a position of interest that may be anywhere +on the screen---for example, the Emacs editor enhances the cursor on entry. +Such programs should always restore the cursor to normal on exit. + +@table @samp +@item vs +@kindex vs +String of commands to enhance the cursor. + +@item vi +@kindex vi +String of commands to make the cursor invisible. + +@item ve +@kindex ve +String of commands to return the cursor to normal. +@end table + +If you define either @samp{vs} or @samp{vi}, you must also define @samp{ve}. + +@node Bell, Keypad, Cursor Visibility, Capabilities +@section Bell +@cindex bell +@cindex visible bell + +Here we describe commands to make the terminal ask for the user to pay +attention to it. + +@table @samp +@item bl +@kindex bl +String of commands to cause the terminal to make an audible sound. If +this capability is absent, the terminal has no way to make a suitable +sound. + +@item vb +@kindex vb +String of commands to cause the screen to flash to attract attention +(``visible bell''). If this capability is absent, the terminal has no +way to do such a thing. +@end table + +@node Keypad, Meta Key, Bell, Capabilities +@section Keypad and Function Keys + +Many terminals have arrow and function keys that transmit specific +character sequences to the computer. Since the precise sequences used +depend on the terminal, termcap defines capabilities used to say what the +sequences are. Unlike most termcap string-valued capabilities, these are +not strings of commands to be sent to the terminal, rather strings that +are received from the terminal. + +Programs that expect to use keypad keys should check, initially, for a +@samp{ks} capability and send it, to make the keypad actually transmit. +Such programs should also send the @samp{ke} string when exiting. + +@table @asis +@item @samp{ks} +@kindex ka@dots{}ku +String of commands to make the keypad keys transmit. If this +capability is not provided, but the others in this section are, +programs may assume that the keypad keys always transmit. + +@item @samp{ke} +String of commands to make the keypad keys work locally. This +capability is provided only if @samp{ks} is. + +@item @samp{kl} +String of input characters sent by typing the left-arrow key. If this +capability is missing, you cannot expect the terminal to have a +left-arrow key that transmits anything to the computer. + +@item @samp{kr} +String of input characters sent by typing the right-arrow key. + +@item @samp{ku} +String of input characters sent by typing the up-arrow key. + +@item @samp{kd} +String of input characters sent by typing the down-arrow key. + +@item @samp{kh} +String of input characters sent by typing the ``home-position'' key. + +@item @samp{K1} @dots{} @samp{K5} +@kindex K1@dots{}K5 +Strings of input characters sent by the five other keys in a 3-by-3 +array that includes the arrow keys, if the keyboard has such a 3-by-3 +array. Note that one of these keys may be the ``home-position'' key, +in which case one of these capabilities will have the same value as +the @samp{kh} key. + +@item @samp{k0} +String of input characters sent by function key 10 (or 0, if the terminal +has one labeled 0). + +@item @samp{k1} @dots{} @samp{k9} +@kindex k1@dots{}k9 +Strings of input characters sent by function keys 1 through 9, +provided for those function keys that exist. + +@item @samp{kn} +Number: the number of numbered function keys, if there are more than +10. + +@item @samp{l0} @dots{} @samp{l9} +@kindex l0@dots{}l9 +Strings which are the labels appearing on the keyboard on the keys +described by the capabilities @samp{k0} @dots{} @samp{l9}. These +capabilities should be left undefined if the labels are @samp{f0} or +@samp{f10} and @samp{f1} @dots{} @samp{f9}.@refill + +@item @samp{kH} +@kindex kA@dots{}kT +String of input characters sent by the ``home down'' key, if there is +one. + +@item @samp{kb} +String of input characters sent by the ``backspace'' key, if there is +one. + +@item @samp{ka} +String of input characters sent by the ``clear all tabs'' key, if there +is one. + +@item @samp{kt} +String of input characters sent by the ``clear tab stop this column'' +key, if there is one. + +@item @samp{kC} +String of input characters sent by the ``clear screen'' key, if there is +one. + +@item @samp{kD} +String of input characters sent by the ``delete character'' key, if +there is one. + +@item @samp{kL} +String of input characters sent by the ``delete line'' key, if there is +one. + +@item @samp{kM} +String of input characters sent by the ``exit insert mode'' key, if +there is one. + +@item @samp{kE} +String of input characters sent by the ``clear to end of line'' key, if +there is one. + +@item @samp{kS} +String of input characters sent by the ``clear to end of screen'' key, +if there is one. + +@item @samp{kI} +String of input characters sent by the ``insert character'' or ``enter +insert mode'' key, if there is one. + +@item @samp{kA} +String of input characters sent by the ``insert line'' key, if there is +one. + +@item @samp{kN} +String of input characters sent by the ``next page'' key, if there is +one. + +@item @samp{kP} +String of input characters sent by the ``previous page'' key, if there is +one. + +@item @samp{kF} +String of input characters sent by the ``scroll forward'' key, if there +is one. + +@item @samp{kR} +String of input characters sent by the ``scroll reverse'' key, if there +is one. + +@item @samp{kT} +String of input characters sent by the ``set tab stop in this column'' +key, if there is one. + +@item @samp{ko} +String listing the other function keys the terminal has. This is a +very obsolete way of describing the same information found in the +@samp{kH} @dots{} @samp{kT} keys. The string contains a list of +two-character termcap capability names, separated by commas. The +meaning is that for each capability name listed, the terminal has a +key which sends the string which is the value of that capability. For +example, the value @samp{:ko=cl,ll,sf,sr:} says that the terminal has +four function keys which mean ``clear screen'', ``home down'', +``scroll forward'' and ``scroll reverse''.@refill +@end table + +@node Meta Key, Initialization, Keypad, Capabilities +@section Meta Key + +@cindex meta key +A Meta key is a key on the keyboard that modifies each character you type +by controlling the 0200 bit. This bit is on if and only if the Meta key is +held down when the character is typed. Characters typed using the Meta key +are called Meta characters. Emacs uses Meta characters as editing +commands. + +@table @samp +@item km +@kindex km +Flag whose presence means that the terminal has a Meta key. + +@item mm +@kindex mm +String of commands to enable the functioning of the Meta key. + +@item mo +@kindex mo +String of commands to disable the functioning of the Meta key. +@end table + +If the terminal has @samp{km} but does not have @samp{mm} and @samp{mo}, it +means that the Meta key always functions. If it has @samp{mm} and +@samp{mo}, it means that the Meta key can be turned on or off. Send the +@samp{mm} string to turn it on, and the @samp{mo} string to turn it off. +I do not know why one would ever not want it to be on. + +@node Initialization, Pad Specs, Meta Key, Capabilities +@section Initialization +@cindex reset +@cindex initialization +@cindex tab stops + +@table @samp +@item ti +@kindex ti +String of commands to put the terminal into whatever special modes are +needed or appropriate for programs that move the cursor +nonsequentially around the screen. Programs that use termcap to do +full-screen display should output this string when they start up. + +@item te +@kindex te +String of commands to undo what is done by the @samp{ti} string. +Programs that output the @samp{ti} string on entry should output this +string when they exit. + +@item is +@kindex is +String of commands to initialize the terminal for each login session. + +@item if +@kindex if +String which is the name of a file containing the string of commands +to initialize the terminal for each session of use. Normally @samp{is} +and @samp{if} are not both used. + +@item i1 +@itemx i3 +@kindex i1 +@kindex i3 +Two more strings of commands to initialize the terminal for each login +session. The @samp{i1} string (if defined) is output before @samp{is} +or @samp{if}, and the @samp{i3} string (if defined) is output after. + +The reason for having three separate initialization strings is to make +it easier to define a group of related terminal types with slightly +different initializations. Define two or three of the strings in the +basic type; then the other types can override one or two of the +strings. + +@item rs +@kindex rs +String of commands to reset the terminal from any strange mode it may +be in. Normally this includes the @samp{is} string (or other commands +with the same effects) and more. What would go in the @samp{rs} +string but not in the @samp{is} string are annoying or slow commands +to bring the terminal back from strange modes that nobody would +normally use. + +@item it +@kindex it +Numeric value, the initial spacing between hardware tab stop columns +when the terminal is powered up. Programs to initialize the terminal +can use this to decide whether there is a need to set the tab stops. +If the initial width is 8, well and good; if it is not 8, then the +tab stops should be set; if they cannot be set, the kernel is told +to convert tabs to spaces, and other programs will observe this and do +likewise. + +@item ct +@kindex ct +String of commands to clear all tab stops. + +@item st +@kindex st +String of commands to set tab stop at current cursor column on all +lines. + +@item NF +@kindex NF +Flag whose presence means that the terminal does not support XON/XOFF +flow control. Programs should not send XON (@kbd{C-q}) or XOFF +(@kbd{C-s}) characters to the terminal. +@end table + +@node Pad Specs, Status Line, Initialization, Capabilities +@section Padding Capabilities +@cindex padding + +There are two terminal capabilities that exist just to explain the proper +way to obey the padding specifications in all the command string +capabilities. One, @samp{pc}, must be obeyed by all termcap-using +programs. + +@table @samp +@item pb +@kindex pb +Numeric value, the lowest baud rate at which padding is actually +needed. Programs may check this and refrain from doing any padding at +lower speeds. + +@item pc +@kindex pc +String of commands for padding. The first character of this string is +to be used as the pad character, instead of using null characters for +padding. If @samp{pc} is not provided, use null characters. Every +program that uses termcap must look up this capability and use it to +set the variable @code{PC} that is used by @code{tputs}. +@xref{Padding}. +@end table + +Some termcap capabilities exist just to specify the amount of padding that +the kernel should give to cursor motion commands used in ordinary +sequential output. + +@table @samp +@item dC +@kindex dC +Numeric value, the number of msec of padding needed for the +carriage-return character. + +@item dN +@kindex dN +Numeric value, the number of msec of padding needed for the newline +(linefeed) character. + +@item dB +@kindex dB +Numeric value, the number of msec of padding needed for the backspace +character. + +@item dF +@kindex dF +Numeric value, the number of msec of padding needed for the formfeed +character. + +@item dT +@kindex dT +Numeric value, the number of msec of padding needed for the tab +character. +@end table + +In some systems, the kernel uses the above capabilities; in other systems, +the kernel uses the paddings specified in the string capabilities +@samp{cr}, @samp{sf}, @samp{le}, @samp{ff} and @samp{ta}. Descriptions of +terminals which require such padding should contain the @samp{dC} @dots{} +@samp{dT} capabilities and also specify the appropriate padding in the +corresponding string capabilities. Since no modern terminals require +padding for ordinary sequential output, you probably won't need to do +either of these things. + +@node Status Line, Half-Line, Pad Specs, Capabilities +@section Status Line + +@cindex status line +A @dfn{status line} is a line on the terminal that is not used for ordinary +display output but instead used for a special message. The intended use is +for a continuously updated description of what the user's program is doing, +and that is where the name ``status line'' comes from, but in fact it could +be used for anything. The distinguishing characteristic of a status line +is that ordinary output to the terminal does not affect it; it changes only +if the special status line commands of this section are used. + +@table @samp +@item hs +@kindex hs +Flag whose presence means that the terminal has a status line. If a +terminal description specifies that there is a status line, it must +provide the @samp{ts} and @samp{fs} capabilities. + +@item ts +@kindex ts +String of commands to move the terminal cursor into the status line. +Usually these commands must specifically record the old cursor +position for the sake of the @samp{fs} string. + +@item fs +@kindex fs +String of commands to move the cursor back from the status line to its +previous position (outside the status line). + +@item es +@kindex es +Flag whose presence means that other display commands work while +writing the status line. In other words, one can clear parts of it, +insert or delete characters, move the cursor within it using @samp{ch} +if there is a @samp{ch} capability, enter and leave standout mode, and +so on. + +@item ds +@kindex ds +String of commands to disable the display of the status line. This +may be absent, if there is no way to disable the status line display. + +@item ws +@kindex ws +Numeric value, the width of the status line. If this capability is +absent in a terminal that has a status line, it means the status line +is the same width as the other lines. + +Note that the value of @samp{ws} is sometimes as small as 8. +@end table + +@node Half-Line, Printer, Status Line, Capabilities +@section Half-Line Motion + +Some terminals have commands for moving the cursor vertically by half-lines, +useful for outputting subscripts and superscripts. Mostly it is hardcopy +terminals that have such features. + +@table @samp +@item hu +@kindex hu +String of commands to move the cursor up half a line. If the terminal +is a display, it is your responsibility to avoid moving up past the +top line; however, most likely the terminal that supports this is a +hardcopy terminal and there is nothing to be concerned about. + +@item hd +@kindex hd +String of commands to move the cursor down half a line. If the +terminal is a display, it is your responsibility to avoid moving down +past the bottom line, etc. +@end table + +@node Printer, , Half-Line, Capabilities +@section Controlling Printers Attached to Terminals +@cindex printer + +Some terminals have attached hardcopy printer ports. They may be able to +copy the screen contents to the printer; they may also be able to redirect +output to the printer. Termcap does not have anything to tell the program +whether the redirected output appears also on the screen; it does on some +terminals but not all. + +@table @samp +@item ps +@kindex ps +String of commands to cause the contents of the screen to be printed. +If it is absent, the screen contents cannot be printed. + +@item po +@kindex po +String of commands to redirect further output to the printer. + +@item pf +@kindex pf +String of commands to terminate redirection of output to the printer. +This capability must be present in the description if @samp{po} is. + +@item pO +@kindex pO +String of commands to redirect output to the printer for next @var{n} +characters of output, regardless of what they are. Redirection will +end automatically after @var{n} characters of further output. Until +then, nothing that is output can end redirection, not even the +@samp{pf} string if there is one. The number @var{n} should not be +more than 255. + +One use of this capability is to send non-text byte sequences (such as +bit-maps) to the printer. +@end table + +Most terminals with printers do not support all of @samp{ps}, @samp{po} and +@samp{pO}; any one or two of them may be supported. To make a program that +can send output to all kinds of printers, it is necessary to check for all +three of these capabilities, choose the most convenient of the ones that +are provided, and use it in its own appropriate fashion. + +@node Summary, Var Index, Capabilities, Top +@chapter Summary of Capability Names + +Here are all the terminal capability names in alphabetical order +with a brief description of each. For cross references to their definitions, +see the index of capability names (@pxref{Cap Index}). + +@table @samp +@item ae +String to turn off alternate character set mode. +@item al +String to insert a blank line before the cursor. +@item AL +String to insert @var{n} blank lines before the cursor. +@item am +Flag: output to last column wraps cursor to next line. +@item as +String to turn on alternate character set mode.like. +@item bc +Very obsolete alternative name for the @samp{le} capability. +@item bl +String to sound the bell. +@item bs +Obsolete flag: ASCII backspace may be used for leftward motion. +@item bt +String to move the cursor left to the previous hardware tab stop column. +@item bw +Flag: @samp{le} at left margin wraps to end of previous line. +@item CC +String to change terminal's command character. +@item cd +String to clear the line the cursor is on, and following lines. +@item ce +String to clear from the cursor to the end of the line. +@item ch +String to position the cursor at column @var{c} in the same line. +@item cl +String to clear the entire screen and put cursor at upper left corner. +@item cm +String to position the cursor at line @var{l}, column @var{c}. +@item CM +String to position the cursor at line @var{l}, column +@var{c}, relative to display memory. +@item co +Number: width of the screen. +@item cr +String to move cursor sideways to left margin. +@item cs +String to set the scroll region. +@item cS +Alternate form of string to set the scroll region. +@item ct +String to clear all tab stops. +@item cv +String to position the cursor at line @var{l} in the same column. +@item da +Flag: data scrolled off top of screen may be scrolled back. +@item db +Flag: data scrolled off bottom of screen may be scrolled back. +@item dB +Obsolete number: msec of padding needed for the backspace character. +@item dc +String to delete one character position at the cursor. +@item dC +Obsolete number: msec of padding needed for the carriage-return character. +@item DC +String to delete @var{n} characters starting at the cursor. +@item dF +Obsolete number: msec of padding needed for the formfeed character. +@item dl +String to delete the line the cursor is on. +@item DL +String to delete @var{n} lines starting with the cursor's line. +@item dm +String to enter delete mode. +@item dN +Obsolete number: msec of padding needed for the newline character. +@item do +String to move the cursor vertically down one line. +@item DO +String to move cursor vertically down @var{n} lines. +@item ds +String to disable the display of the status line. +@item dT +Obsolete number: msec of padding needed for the tab character. +@item ec +String of commands to clear @var{n} characters at cursor. +@item ed +String to exit delete mode. +@item ei +String to leave insert mode. +@item eo +Flag: output of a space can erase an overstrike. +@item es +Flag: other display commands work while writing the status line. +@item ff +String to advance to the next page, for a hardcopy terminal. +@item fs +String to move the cursor back from the status line to its +previous position (outside the status line). +@item gn +Flag: this terminal type is generic, not real. +@item hc +Flag: hardcopy terminal. +@item hd +String to move the cursor down half a line. +@item ho +String to position cursor at upper left corner. +@item hs +Flag: the terminal has a status line. +@item hu +String to move the cursor up half a line. +@item hz +Flag: terminal cannot accept @samp{~} as output. +@item i1 +String to initialize the terminal for each login session. +@item i3 +String to initialize the terminal for each login session. +@item ic +String to insert one character position at the cursor. +@item IC +String to insert @var{n} character positions at the cursor. +@item if +String naming a file of commands to initialize the terminal. +@item im +String to enter insert mode. +@item in +Flag: outputting a space is different from moving over empty positions. +@item ip +String to output following an inserted character in insert mode. +@item is +String to initialize the terminal for each login session. +@item it +Number: initial spacing between hardware tab stop columns. +@item k0 +String of input sent by function key 0 or 10. +@item k1 @dots{} k9 +Strings of input sent by function keys 1 through 9. +@item K1 @dots{} K5 +Strings sent by the five other keys in 3-by-3 array with arrows. +@item ka +String of input sent by the ``clear all tabs'' key. +@item kA +String of input sent by the ``insert line'' key. +@item kb +String of input sent by the ``backspace'' key. +@item kC +String of input sent by the ``clear screen'' key. +@item kd +String of input sent by typing the down-arrow key. +@item kD +String of input sent by the ``delete character'' key. +@item ke +String to make the function keys work locally. +@item kE +String of input sent by the ``clear to end of line'' key. +@item kF +String of input sent by the ``scroll forward'' key. +@item kh +String of input sent by typing the ``home-position'' key. +@item kH +String of input sent by the ``home down'' key. +@item kI +String of input sent by the ``insert character'' or ``enter +insert mode'' key. +@item kl +String of input sent by typing the left-arrow key. +@item kL +String of input sent by the ``delete line'' key. +@item km +Flag: the terminal has a Meta key. +@item kM +String of input sent by the ``exit insert mode'' key. +@item kn +Numeric value, the number of numbered function keys. +@item kN +String of input sent by the ``next page'' key. +@item ko +Very obsolete string listing the terminal's named function keys. +@item kP +String of input sent by the ``previous page'' key. +@item kr +String of input sent by typing the right-arrow key. +@item kR +String of input sent by the ``scroll reverse'' key. +@item ks +String to make the function keys transmit. +@item kS +String of input sent by the ``clear to end of screen'' key. +@item kt +String of input sent by the ``clear tab stop this column'' key. +@item kT +String of input sent by the ``set tab stop in this column'' key. +@item ku +String of input sent by typing the up-arrow key. +@item l0 +String on keyboard labelling function key 0 or 10. +@item l1 @dots{} l9 +Strings on keyboard labelling function keys 1 through 9. +@item le +String to move the cursor left one column. +@item LE +String to move cursor left @var{n} columns. +@item li +Number: height of the screen. +@item ll +String to position cursor at lower left corner. +@item lm +Number: lines of display memory. +@item LP +Flag: writing to last column of last line will not scroll. +@item mb +String to enter blinking mode. +@item md +String to enter double-bright mode. +@item me +String to turn off all appearance modes +@item mh +String to enter half-bright mode. +@item mi +Flag: cursor motion in insert mode is safe. +@item mk +String to enter invisible mode. +@item mm +String to enable the functioning of the Meta key. +@item mo +String to disable the functioning of the Meta key. +@item mp +String to enter protected mode. +@item mr +String to enter reverse-video mode. +@item ms +Flag: cursor motion in standout mode is safe. +@item nc +Obsolete flag: do not use ASCII carriage-return on this terminal. +@item nd +String to move the cursor right one column. +@item NF +Flag: do not use XON/XOFF flow control. +@item nl +Obsolete alternative name for the @samp{do} and @samp{sf} capabilities. +@item ns +Flag: the terminal does not normally scroll for sequential output. +@item nw +String to move to start of next line, possibly clearing rest of old line. +@item os +Flag: terminal can overstrike. +@item pb +Number: the lowest baud rate at which padding is actually needed. +@item pc +String containing character for padding. +@item pf +String to terminate redirection of output to the printer. +@item po +String to redirect further output to the printer. +@item pO +String to redirect @var{n} characters ofoutput to the printer. +@item ps +String to print the screen on the attached printer. +@item rc +String to move to last saved cursor position. +@item RI +String to move cursor right @var{n} columns. +@item rp +String to output character @var{c} repeated @var{n} times. +@item rs +String to reset the terminal from any strange modes. +@item sa +String to turn on an arbitrary combination of appearance modes. +@item sc +String to save the current cursor position. +@item se +String to leave standout mode. +@item sf +String to scroll the screen one line up. +@item SF +String to scroll the screen @var{n} lines up. +@item sg +Number: width of magic standout cookie. Absent if magic cookies are +not used. +@item so +String to enter standout mode. +@item sr +String to scroll the screen one line down. +@item SR +String to scroll the screen @var{n} line down. +@item st +String to set tab stop at current cursor column on all lines. +programs. +@item ta +String to move the cursor right to the next hardware tab stop column. +@item te +String to return terminal to settings for sequential output. +@item ti +String to initialize terminal for random cursor motion. +@item ts +String to move the terminal cursor into the status line. +@item uc +String to underline one character and move cursor right. +@item ue +String to turn off underline mode +@item ug +Number: width of underlining magic cookie. Absent if underlining +doesn't use magic cookies. +@item ul +Flag: underline by overstriking with an underscore. +@item up +String to move the cursor vertically up one line. +@item UP +String to move cursor vertically up @var{n} lines. +@item us +String to turn on underline mode +@item vb +String to make the screen flash. +@item ve +String to return the cursor to normal. +@item vi +String to make the cursor invisible. +@item vs +String to enhance the cursor. +@item wi +String to set the terminal output screen window. +@item ws +Number: the width of the status line. +@item xb +Flag: superbee terminal. +@item xn +Flag: cursor wraps in a strange way. +@item xs +Flag: clearing a line is the only way to clear the appearance modes of +positions in that line (or, only way to remove magic cookies on that +line). +@item xt +Flag: Teleray 1061; several strange characteristics. +@end table + +@node Var Index, Cap Index, Summary, Top +@unnumbered Variable and Function Index + +@printindex fn + +@node Cap Index, Index, Var Index, Top +@unnumbered Capability Index + +@printindex ky + +@node Index, , Cap Index, Top +@unnumbered Concept Index + +@printindex cp + +@contents +@bye + diff --git a/src/libs/termcap/texinfo.tex b/src/libs/termcap/texinfo.tex new file mode 100644 index 0000000000..c49af9f4ed --- /dev/null +++ b/src/libs/termcap/texinfo.tex @@ -0,0 +1,5992 @@ +% texinfo.tex -- TeX macros to handle Texinfo files. +% +% Load plain if necessary, i.e., if running under initex. +\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi +% +\def\texinfoversion{1999-09-25.10} +% +% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99 +% Free Software Foundation, Inc. +% +% This texinfo.tex file is free software; you can redistribute it and/or +% modify it under the terms of the GNU General Public License as +% published by the Free Software Foundation; either version 2, or (at +% your option) any later version. +% +% This texinfo.tex file is distributed in the hope that it will be +% useful, but WITHOUT ANY WARRANTY; without even the implied warranty +% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +% General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this texinfo.tex file; see the file COPYING. If not, write +% to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +% Boston, MA 02111-1307, USA. +% +% In other words, you are welcome to use, share and improve this program. +% You are forbidden to forbid anyone else to use, share and improve +% what you give them. Help stamp out software-hoarding! +% +% Please try the latest version of texinfo.tex before submitting bug +% reports; you can get the latest version from: +% ftp://ftp.gnu.org/gnu/texinfo.tex +% (and all GNU mirrors, see http://www.gnu.org/order/ftp.html) +% ftp://texinfo.org/tex/texinfo.tex +% ftp://us.ctan.org/macros/texinfo/texinfo.tex +% (and all CTAN mirrors, finger ctan@us.ctan.org for a list). +% /home/gd/gnu/doc/texinfo.tex on the GNU machines. +% The texinfo.tex in any given Texinfo distribution could well be out +% of date, so if that's what you're using, please check. +% Texinfo has a small home page at http://texinfo.org/. +% +% Send bug reports to bug-texinfo@gnu.org. Please include including a +% complete document in each bug report with which we can reproduce the +% problem. Patches are, of course, greatly appreciated. +% +% To process a Texinfo manual with TeX, it's most reliable to use the +% texi2dvi shell script that comes with the distribution. For a simple +% manual foo.texi, however, you can get away with this: +% tex foo.texi +% texindex foo.?? +% tex foo.texi +% tex foo.texi +% dvips foo.dvi -o # or whatever, to process the dvi file; this makes foo.ps. +% The extra runs of TeX get the cross-reference information correct. +% Sometimes one run after texindex suffices, and sometimes you need more +% than two; texi2dvi does it as many times as necessary. +% +% It is possible to adapt texinfo.tex for other languages. You can get +% the existing language-specific files from ftp://ftp.gnu.org/gnu/texinfo/. + +\message{Loading texinfo [version \texinfoversion]:} + +% If in a .fmt file, print the version number +% and turn on active characters that we couldn't do earlier because +% they might have appeared in the input file name. +\everyjob{\message{[Texinfo version \texinfoversion]}% + \catcode`+=\active \catcode`\_=\active} + +% Save some parts of plain tex whose names we will redefine. +\let\ptexb=\b +\let\ptexbullet=\bullet +\let\ptexc=\c +\let\ptexcomma=\, +\let\ptexdot=\. +\let\ptexdots=\dots +\let\ptexend=\end +\let\ptexequiv=\equiv +\let\ptexexclam=\! +\let\ptexi=\i +\let\ptexlbrace=\{ +\let\ptexrbrace=\} +\let\ptexstar=\* +\let\ptext=\t + +% We never want plain's outer \+ definition in Texinfo. +% For @tex, we can use \tabalign. +\let\+ = \relax + +\message{Basics,} +\chardef\other=12 + +% If this character appears in an error message or help string, it +% starts a new line in the output. +\newlinechar = `^^J + +% Set up fixed words for English if not already set. +\ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi +\ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi +\ifx\putwordfile\undefined \gdef\putwordfile{file}\fi +\ifx\putwordin\undefined \gdef\putwordin{in}\fi +\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi +\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi +\ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi +\ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi +\ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi +\ifx\putwordNoTitle\undefined \gdef\putwordNoTitle{No Title}\fi +\ifx\putwordof\undefined \gdef\putwordof{of}\fi +\ifx\putwordon\undefined \gdef\putwordon{on}\fi +\ifx\putwordpage\undefined \gdef\putwordpage{page}\fi +\ifx\putwordsection\undefined \gdef\putwordsection{section}\fi +\ifx\putwordSection\undefined \gdef\putwordSection{Section}\fi +\ifx\putwordsee\undefined \gdef\putwordsee{see}\fi +\ifx\putwordSee\undefined \gdef\putwordSee{See}\fi +\ifx\putwordShortTOC\undefined \gdef\putwordShortTOC{Short Contents}\fi +\ifx\putwordTOC\undefined \gdef\putwordTOC{Table of Contents}\fi +% +\ifx\putwordMJan\undefined \gdef\putwordMJan{January}\fi +\ifx\putwordMFeb\undefined \gdef\putwordMFeb{February}\fi +\ifx\putwordMMar\undefined \gdef\putwordMMar{March}\fi +\ifx\putwordMApr\undefined \gdef\putwordMApr{April}\fi +\ifx\putwordMMay\undefined \gdef\putwordMMay{May}\fi +\ifx\putwordMJun\undefined \gdef\putwordMJun{June}\fi +\ifx\putwordMJul\undefined \gdef\putwordMJul{July}\fi +\ifx\putwordMAug\undefined \gdef\putwordMAug{August}\fi +\ifx\putwordMSep\undefined \gdef\putwordMSep{September}\fi +\ifx\putwordMOct\undefined \gdef\putwordMOct{October}\fi +\ifx\putwordMNov\undefined \gdef\putwordMNov{November}\fi +\ifx\putwordMDec\undefined \gdef\putwordMDec{December}\fi +% +\ifx\putwordDefmac\undefined \gdef\putwordDefmac{Macro}\fi +\ifx\putwordDefspec\undefined \gdef\putwordDefspec{Special Form}\fi +\ifx\putwordDefvar\undefined \gdef\putwordDefvar{Variable}\fi +\ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi +\ifx\putwordDeftypevar\undefined\gdef\putwordDeftypevar{Variable}\fi +\ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi +\ifx\putwordDeftypefun\undefined\gdef\putwordDeftypefun{Function}\fi + +% Ignore a token. +% +\def\gobble#1{} + +\hyphenation{ap-pen-dix} +\hyphenation{mini-buf-fer mini-buf-fers} +\hyphenation{eshell} +\hyphenation{white-space} + +% Margin to add to right of even pages, to left of odd pages. +\newdimen \bindingoffset +\newdimen \normaloffset +\newdimen\pagewidth \newdimen\pageheight + +% Sometimes it is convenient to have everything in the transcript file +% and nothing on the terminal. We don't just call \tracingall here, +% since that produces some useless output on the terminal. +% +\def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}% +\ifx\eTeXversion\undefined +\def\loggingall{\tracingcommands2 \tracingstats2 + \tracingpages1 \tracingoutput1 \tracinglostchars1 + \tracingmacros2 \tracingparagraphs1 \tracingrestores1 + \showboxbreadth\maxdimen\showboxdepth\maxdimen +}% +\else +\def\loggingall{\tracingcommands3 \tracingstats2 + \tracingpages1 \tracingoutput1 \tracinglostchars1 + \tracingmacros2 \tracingparagraphs1 \tracingrestores1 + \tracingscantokens1 \tracingassigns1 \tracingifs1 + \tracinggroups1 \tracingnesting2 + \showboxbreadth\maxdimen\showboxdepth\maxdimen +}% +\fi + +% For @cropmarks command. +% Do @cropmarks to get crop marks. +% +\newif\ifcropmarks +\let\cropmarks = \cropmarkstrue +% +% Dimensions to add cropmarks at corners. +% Added by P. A. MacKay, 12 Nov. 1986 +% +\newdimen\outerhsize \newdimen\outervsize % set by the paper size routines +\newdimen\cornerlong \cornerlong=1pc +\newdimen\cornerthick \cornerthick=.3pt +\newdimen\topandbottommargin \topandbottommargin=.75in + +% Main output routine. +\chardef\PAGE = 255 +\output = {\onepageout{\pagecontents\PAGE}} + +\newbox\headlinebox +\newbox\footlinebox + +% \onepageout takes a vbox as an argument. Note that \pagecontents +% does insertions, but you have to call it yourself. +\def\onepageout#1{% + \ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi + % + \ifodd\pageno \advance\hoffset by \bindingoffset + \else \advance\hoffset by -\bindingoffset\fi + % + % Do this outside of the \shipout so @code etc. will be expanded in + % the headline as they should be, not taken literally (outputting ''code). + \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}% + \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}% + % + {% + % Have to do this stuff outside the \shipout because we want it to + % take effect in \write's, yet the group defined by the \vbox ends + % before the \shipout runs. + % + \escapechar = `\\ % use backslash in output files. + \indexdummies % don't expand commands in the output. + \normalturnoffactive % \ in index entries must not stay \, e.g., if + % the page break happens to be in the middle of an example. + \shipout\vbox{% + \ifcropmarks \vbox to \outervsize\bgroup + \hsize = \outerhsize + \vskip-\topandbottommargin + \vtop to0pt{% + \line{\ewtop\hfil\ewtop}% + \nointerlineskip + \line{% + \vbox{\moveleft\cornerthick\nstop}% + \hfill + \vbox{\moveright\cornerthick\nstop}% + }% + \vss}% + \vskip\topandbottommargin + \line\bgroup + \hfil % center the page within the outer (page) hsize. + \ifodd\pageno\hskip\bindingoffset\fi + \vbox\bgroup + \fi + % + \unvbox\headlinebox + \pagebody{#1}% + \ifdim\ht\footlinebox > 0pt + % Only leave this space if the footline is nonempty. + % (We lessened \vsize for it in \oddfootingxxx.) + % The \baselineskip=24pt in plain's \makefootline has no effect. + \vskip 2\baselineskip + \unvbox\footlinebox + \fi + % + \ifpdfmakepagedest \pdfmkdest{\the\pageno} \fi + % + \ifcropmarks + \egroup % end of \vbox\bgroup + \hfil\egroup % end of (centering) \line\bgroup + \vskip\topandbottommargin plus1fill minus1fill + \boxmaxdepth = \cornerthick + \vbox to0pt{\vss + \line{% + \vbox{\moveleft\cornerthick\nsbot}% + \hfill + \vbox{\moveright\cornerthick\nsbot}% + }% + \nointerlineskip + \line{\ewbot\hfil\ewbot}% + }% + \egroup % \vbox from first cropmarks clause + \fi + }% end of \shipout\vbox + }% end of group with \turnoffactive + \advancepageno + \ifnum\outputpenalty>-20000 \else\dosupereject\fi +} + +\newinsert\margin \dimen\margin=\maxdimen + +\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}} +{\catcode`\@ =11 +\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi +% marginal hacks, juha@viisa.uucp (Juha Takala) +\ifvoid\margin\else % marginal info is present + \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi +\dimen@=\dp#1 \unvbox#1 +\ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi +\ifr@ggedbottom \kern-\dimen@ \vfil \fi} +} + +% Here are the rules for the cropmarks. Note that they are +% offset so that the space between them is truly \outerhsize or \outervsize +% (P. A. MacKay, 12 November, 1986) +% +\def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong} +\def\nstop{\vbox + {\hrule height\cornerthick depth\cornerlong width\cornerthick}} +\def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong} +\def\nsbot{\vbox + {\hrule height\cornerlong depth\cornerthick width\cornerthick}} + +% Parse an argument, then pass it to #1. The argument is the rest of +% the input line (except we remove a trailing comment). #1 should be a +% macro which expects an ordinary undelimited TeX argument. +% +\def\parsearg#1{% + \let\next = #1% + \begingroup + \obeylines + \futurelet\temp\parseargx +} + +% If the next token is an obeyed space (from an @example environment or +% the like), remove it and recurse. Otherwise, we're done. +\def\parseargx{% + % \obeyedspace is defined far below, after the definition of \sepspaces. + \ifx\obeyedspace\temp + \expandafter\parseargdiscardspace + \else + \expandafter\parseargline + \fi +} + +% Remove a single space (as the delimiter token to the macro call). +{\obeyspaces % + \gdef\parseargdiscardspace {\futurelet\temp\parseargx}} + +{\obeylines % + \gdef\parseargline#1^^M{% + \endgroup % End of the group started in \parsearg. + % + % First remove any @c comment, then any @comment. + % Result of each macro is put in \toks0. + \argremovec #1\c\relax % + \expandafter\argremovecomment \the\toks0 \comment\relax % + % + % Call the caller's macro, saved as \next in \parsearg. + \expandafter\next\expandafter{\the\toks0}% + }% +} + +% Since all \c{,omment} does is throw away the argument, we can let TeX +% do that for us. The \relax here is matched by the \relax in the call +% in \parseargline; it could be more or less anything, its purpose is +% just to delimit the argument to the \c. +\def\argremovec#1\c#2\relax{\toks0 = {#1}} +\def\argremovecomment#1\comment#2\relax{\toks0 = {#1}} + +% \argremovec{,omment} might leave us with trailing spaces, though; e.g., +% @end itemize @c foo +% will have two active spaces as part of the argument with the +% `itemize'. Here we remove all active spaces from #1, and assign the +% result to \toks0. +% +% This loses if there are any *other* active characters besides spaces +% in the argument -- _ ^ +, for example -- since they get expanded. +% Fortunately, Texinfo does not define any such commands. (If it ever +% does, the catcode of the characters in questionwill have to be changed +% here.) But this means we cannot call \removeactivespaces as part of +% \argremovec{,omment}, since @c uses \parsearg, and thus the argument +% that \parsearg gets might well have any character at all in it. +% +\def\removeactivespaces#1{% + \begingroup + \ignoreactivespaces + \edef\temp{#1}% + \global\toks0 = \expandafter{\temp}% + \endgroup +} + +% Change the active space to expand to nothing. +% +\begingroup + \obeyspaces + \gdef\ignoreactivespaces{\obeyspaces\let =\empty} +\endgroup + + +\def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next} + +%% These are used to keep @begin/@end levels from running away +%% Call \inENV within environments (after a \begingroup) +\newif\ifENV \ENVfalse \def\inENV{\ifENV\relax\else\ENVtrue\fi} +\def\ENVcheck{% +\ifENV\errmessage{Still within an environment; press RETURN to continue} +\endgroup\fi} % This is not perfect, but it should reduce lossage + +% @begin foo is the same as @foo, for now. +\newhelp\EMsimple{Press RETURN to continue.} + +\outer\def\begin{\parsearg\beginxxx} + +\def\beginxxx #1{% +\expandafter\ifx\csname #1\endcsname\relax +{\errhelp=\EMsimple \errmessage{Undefined command @begin #1}}\else +\csname #1\endcsname\fi} + +% @end foo executes the definition of \Efoo. +% +\def\end{\parsearg\endxxx} +\def\endxxx #1{% + \removeactivespaces{#1}% + \edef\endthing{\the\toks0}% + % + \expandafter\ifx\csname E\endthing\endcsname\relax + \expandafter\ifx\csname \endthing\endcsname\relax + % There's no \foo, i.e., no ``environment'' foo. + \errhelp = \EMsimple + \errmessage{Undefined command `@end \endthing'}% + \else + \unmatchedenderror\endthing + \fi + \else + % Everything's ok; the right environment has been started. + \csname E\endthing\endcsname + \fi +} + +% There is an environment #1, but it hasn't been started. Give an error. +% +\def\unmatchedenderror#1{% + \errhelp = \EMsimple + \errmessage{This `@end #1' doesn't have a matching `@#1'}% +} + +% Define the control sequence \E#1 to give an unmatched @end error. +% +\def\defineunmatchedend#1{% + \expandafter\def\csname E#1\endcsname{\unmatchedenderror{#1}}% +} + + +% Single-spacing is done by various environments (specifically, in +% \nonfillstart and \quotations). +\newskip\singlespaceskip \singlespaceskip = 12.5pt +\def\singlespace{% + % Why was this kern here? It messes up equalizing space above and below + % environments. --karl, 6may93 + %{\advance \baselineskip by -\singlespaceskip + %\kern \baselineskip}% + \setleading \singlespaceskip +} + +%% Simple single-character @ commands + +% @@ prints an @ +% Kludge this until the fonts are right (grr). +\def\@{{\tt\char64}} + +% This is turned off because it was never documented +% and you can use @w{...} around a quote to suppress ligatures. +%% Define @` and @' to be the same as ` and ' +%% but suppressing ligatures. +%\def\`{{`}} +%\def\'{{'}} + +% Used to generate quoted braces. +\def\mylbrace {{\tt\char123}} +\def\myrbrace {{\tt\char125}} +\let\{=\mylbrace +\let\}=\myrbrace +\begingroup + % Definitions to produce actual \{ & \} command in an index. + \catcode`\{ = 12 \catcode`\} = 12 + \catcode`\[ = 1 \catcode`\] = 2 + \catcode`\@ = 0 \catcode`\\ = 12 + @gdef@lbracecmd[\{]% + @gdef@rbracecmd[\}]% +@endgroup + +% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent +% Others are defined by plain TeX: @` @' @" @^ @~ @= @v @H. +\let\, = \c +\let\dotaccent = \. +\def\ringaccent#1{{\accent23 #1}} +\let\tieaccent = \t +\let\ubaraccent = \b +\let\udotaccent = \d + +% Other special characters: @questiondown @exclamdown +% Plain TeX defines: @AA @AE @O @OE @L (and lowercase versions) @ss. +\def\questiondown{?`} +\def\exclamdown{!`} + +% Dotless i and dotless j, used for accents. +\def\imacro{i} +\def\jmacro{j} +\def\dotless#1{% + \def\temp{#1}% + \ifx\temp\imacro \ptexi + \else\ifx\temp\jmacro \j + \else \errmessage{@dotless can be used only with i or j}% + \fi\fi +} + +% Be sure we're in horizontal mode when doing a tie, since we make space +% equivalent to this in @example-like environments. Otherwise, a space +% at the beginning of a line will start with \penalty -- and +% since \penalty is valid in vertical mode, we'd end up putting the +% penalty on the vertical list instead of in the new paragraph. +{\catcode`@ = 11 + % Avoid using \@M directly, because that causes trouble + % if the definition is written into an index file. + \global\let\tiepenalty = \@M + \gdef\tie{\leavevmode\penalty\tiepenalty\ } +} + +% @: forces normal size whitespace following. +\def\:{\spacefactor=1000 } + +% @* forces a line break. +\def\*{\hfil\break\hbox{}\ignorespaces} + +% @. is an end-of-sentence period. +\def\.{.\spacefactor=3000 } + +% @! is an end-of-sentence bang. +\def\!{!\spacefactor=3000 } + +% @? is an end-of-sentence query. +\def\?{?\spacefactor=3000 } + +% @w prevents a word break. Without the \leavevmode, @w at the +% beginning of a paragraph, when TeX is still in vertical mode, would +% produce a whole line of output instead of starting the paragraph. +\def\w#1{\leavevmode\hbox{#1}} + +% @group ... @end group forces ... to be all on one page, by enclosing +% it in a TeX vbox. We use \vtop instead of \vbox to construct the box +% to keep its height that of a normal line. According to the rules for +% \topskip (p.114 of the TeXbook), the glue inserted is +% max (\topskip - \ht (first item), 0). If that height is large, +% therefore, no glue is inserted, and the space between the headline and +% the text is small, which looks bad. +% +\def\group{\begingroup + \ifnum\catcode13=\active \else + \errhelp = \groupinvalidhelp + \errmessage{@group invalid in context where filling is enabled}% + \fi + % + % The \vtop we start below produces a box with normal height and large + % depth; thus, TeX puts \baselineskip glue before it, and (when the + % next line of text is done) \lineskip glue after it. (See p.82 of + % the TeXbook.) Thus, space below is not quite equal to space + % above. But it's pretty close. + \def\Egroup{% + \egroup % End the \vtop. + \endgroup % End the \group. + }% + % + \vtop\bgroup + % We have to put a strut on the last line in case the @group is in + % the midst of an example, rather than completely enclosing it. + % Otherwise, the interline space between the last line of the group + % and the first line afterwards is too small. But we can't put the + % strut in \Egroup, since there it would be on a line by itself. + % Hence this just inserts a strut at the beginning of each line. + \everypar = {\strut}% + % + % Since we have a strut on every line, we don't need any of TeX's + % normal interline spacing. + \offinterlineskip + % + % OK, but now we have to do something about blank + % lines in the input in @example-like environments, which normally + % just turn into \lisppar, which will insert no space now that we've + % turned off the interline space. Simplest is to make them be an + % empty paragraph. + \ifx\par\lisppar + \edef\par{\leavevmode \par}% + % + % Reset ^^M's definition to new definition of \par. + \obeylines + \fi + % + % Do @comment since we are called inside an environment such as + % @example, where each end-of-line in the input causes an + % end-of-line in the output. We don't want the end-of-line after + % the `@group' to put extra space in the output. Since @group + % should appear on a line by itself (according to the Texinfo + % manual), we don't worry about eating any user text. + \comment +} +% +% TeX puts in an \escapechar (i.e., `@') at the beginning of the help +% message, so this ends up printing `@group can only ...'. +% +\newhelp\groupinvalidhelp{% +group can only be used in environments such as @example,^^J% +where each line of input produces a line of output.} + +% @need space-in-mils +% forces a page break if there is not space-in-mils remaining. + +\newdimen\mil \mil=0.001in + +\def\need{\parsearg\needx} + +% Old definition--didn't work. +%\def\needx #1{\par % +%% This method tries to make TeX break the page naturally +%% if the depth of the box does not fit. +%{\baselineskip=0pt% +%\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak +%\prevdepth=-1000pt +%}} + +\def\needx#1{% + % Ensure vertical mode, so we don't make a big box in the middle of a + % paragraph. + \par + % + % If the @need value is less than one line space, it's useless. + \dimen0 = #1\mil + \dimen2 = \ht\strutbox + \advance\dimen2 by \dp\strutbox + \ifdim\dimen0 > \dimen2 + % + % Do a \strut just to make the height of this box be normal, so the + % normal leading is inserted relative to the preceding line. + % And a page break here is fine. + \vtop to #1\mil{\strut\vfil}% + % + % TeX does not even consider page breaks if a penalty added to the + % main vertical list is 10000 or more. But in order to see if the + % empty box we just added fits on the page, we must make it consider + % page breaks. On the other hand, we don't want to actually break the + % page after the empty box. So we use a penalty of 9999. + % + % There is an extremely small chance that TeX will actually break the + % page at this \penalty, if there are no other feasible breakpoints in + % sight. (If the user is using lots of big @group commands, which + % almost-but-not-quite fill up a page, TeX will have a hard time doing + % good page breaking, for example.) However, I could not construct an + % example where a page broke at this \penalty; if it happens in a real + % document, then we can reconsider our strategy. + \penalty9999 + % + % Back up by the size of the box, whether we did a page break or not. + \kern -#1\mil + % + % Do not allow a page break right after this kern. + \nobreak + \fi +} + +% @br forces paragraph break + +\let\br = \par + +% @dots{} output an ellipsis using the current font. +% We do .5em per period so that it has the same spacing in a typewriter +% font as three actual period characters. +% +\def\dots{% + \leavevmode + \hbox to 1.5em{% + \hskip 0pt plus 0.25fil minus 0.25fil + .\hss.\hss.% + \hskip 0pt plus 0.5fil minus 0.5fil + }% +} + +% @enddots{} is an end-of-sentence ellipsis. +% +\def\enddots{% + \leavevmode + \hbox to 2em{% + \hskip 0pt plus 0.25fil minus 0.25fil + .\hss.\hss.\hss.% + \hskip 0pt plus 0.5fil minus 0.5fil + }% + \spacefactor=3000 +} + + +% @page forces the start of a new page +% +\def\page{\par\vfill\supereject} + +% @exdent text.... +% outputs text on separate line in roman font, starting at standard page margin + +% This records the amount of indent in the innermost environment. +% That's how much \exdent should take out. +\newskip\exdentamount + +% This defn is used inside fill environments such as @defun. +\def\exdent{\parsearg\exdentyyy} +\def\exdentyyy #1{{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break}} + +% This defn is used inside nofill environments such as @example. +\def\nofillexdent{\parsearg\nofillexdentyyy} +\def\nofillexdentyyy #1{{\advance \leftskip by -\exdentamount +\leftline{\hskip\leftskip{\rm#1}}}} + +% @inmargin{TEXT} puts TEXT in the margin next to the current paragraph. + +\def\inmargin#1{% +\strut\vadjust{\nobreak\kern-\strutdepth + \vtop to \strutdepth{\baselineskip\strutdepth\vss + \llap{\rightskip=\inmarginspacing \vbox{\noindent #1}}\null}}} +\newskip\inmarginspacing \inmarginspacing=1cm +\def\strutdepth{\dp\strutbox} + +%\hbox{{\rm#1}}\hfil\break}} + +% @include file insert text of that file as input. +% Allow normal characters that we make active in the argument (a file name). +\def\include{\begingroup + \catcode`\\=12 + \catcode`~=12 + \catcode`^=12 + \catcode`_=12 + \catcode`|=12 + \catcode`<=12 + \catcode`>=12 + \catcode`+=12 + \parsearg\includezzz} +% Restore active chars for included file. +\def\includezzz#1{\endgroup\begingroup + % Read the included file in a group so nested @include's work. + \def\thisfile{#1}% + \input\thisfile +\endgroup} + +\def\thisfile{} + +% @center line outputs that line, centered + +\def\center{\parsearg\centerzzz} +\def\centerzzz #1{{\advance\hsize by -\leftskip +\advance\hsize by -\rightskip +\centerline{#1}}} + +% @sp n outputs n lines of vertical space + +\def\sp{\parsearg\spxxx} +\def\spxxx #1{\vskip #1\baselineskip} + +% @comment ...line which is ignored... +% @c is the same as @comment +% @ignore ... @end ignore is another way to write a comment + +\def\comment{\begingroup \catcode`\^^M=\other% +\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other% +\commentxxx} +{\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}} + +\let\c=\comment + +% @paragraphindent NCHARS +% We'll use ems for NCHARS, close enough. +% We cannot implement @paragraphindent asis, though. +% +\def\asisword{asis} % no translation, these are keywords +\def\noneword{none} +% +\def\paragraphindent{\parsearg\doparagraphindent} +\def\doparagraphindent#1{% + \def\temp{#1}% + \ifx\temp\asisword + \else + \ifx\temp\noneword + \defaultparindent = 0pt + \else + \defaultparindent = #1em + \fi + \fi + \parindent = \defaultparindent +} + +% @exampleindent NCHARS +% We'll use ems for NCHARS like @paragraphindent. +% It seems @exampleindent asis isn't necessary, but +% I preserve it to make it similar to @paragraphindent. +\def\exampleindent{\parsearg\doexampleindent} +\def\doexampleindent#1{% + \def\temp{#1}% + \ifx\temp\asisword + \else + \ifx\temp\noneword + \lispnarrowing = 0pt + \else + \lispnarrowing = #1em + \fi + \fi +} + +% @asis just yields its argument. Used with @table, for example. +% +\def\asis#1{#1} + +% @math means output in math mode. +% We don't use $'s directly in the definition of \math because control +% sequences like \math are expanded when the toc file is written. Then, +% we read the toc file back, the $'s will be normal characters (as they +% should be, according to the definition of Texinfo). So we must use a +% control sequence to switch into and out of math mode. +% +% This isn't quite enough for @math to work properly in indices, but it +% seems unlikely it will ever be needed there. +% +\let\implicitmath = $ +\def\math#1{\implicitmath #1\implicitmath} + +% @bullet and @minus need the same treatment as @math, just above. +\def\bullet{\implicitmath\ptexbullet\implicitmath} +\def\minus{\implicitmath-\implicitmath} + +% @refill is a no-op. +\let\refill=\relax + +% If working on a large document in chapters, it is convenient to +% be able to disable indexing, cross-referencing, and contents, for test runs. +% This is done with @novalidate (before @setfilename). +% +\newif\iflinks \linkstrue % by default we want the aux files. +\let\novalidate = \linksfalse + +% @setfilename is done at the beginning of every texinfo file. +% So open here the files we need to have open while reading the input. +% This makes it possible to make a .fmt file for texinfo. +\def\setfilename{% + \iflinks + \readauxfile + \fi % \openindices needs to do some work in any case. + \openindices + \fixbackslash % Turn off hack to swallow `\input texinfo'. + \global\let\setfilename=\comment % Ignore extra @setfilename cmds. + % + % If texinfo.cnf is present on the system, read it. + % Useful for site-wide @afourpaper, etc. + % Just to be on the safe side, close the input stream before the \input. + \openin 1 texinfo.cnf + \ifeof1 \let\temp=\relax \else \def\temp{\input texinfo.cnf }\fi + \closein1 + \temp + % + \comment % Ignore the actual filename. +} + +% Called from \setfilename. +% +\def\openindices{% + \newindex{cp}% + \newcodeindex{fn}% + \newcodeindex{vr}% + \newcodeindex{tp}% + \newcodeindex{ky}% + \newcodeindex{pg}% +} + +% @bye. +\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend} + + +\message{pdf,} +% adobe `portable' document format +\newcount\tempnum +\newcount\lnkcount +\newtoks\filename +\newcount\filenamelength +\newcount\pgn +\newtoks\toksA +\newtoks\toksB +\newtoks\toksC +\newtoks\toksD +\newbox\boxA +\newcount\countA +\newif\ifpdf +\newif\ifpdfmakepagedest + +\ifx\pdfoutput\undefined + \pdffalse + \let\pdfmkdest = \gobble + \let\pdfurl = \gobble + \let\endlink = \relax + \let\linkcolor = \relax + \let\pdfmakeoutlines = \relax +\else + \pdftrue + \pdfoutput = 1 + \input pdfcolor + \def\dopdfimage#1#2#3{% + \def\imagewidth{#2}% + \def\imageheight{#3}% + \ifnum\pdftexversion < 14 + \pdfimage + \else + \pdfximage + \fi + \ifx\empty\imagewidth\else width \imagewidth \fi + \ifx\empty\imageheight\else height \imageheight \fi + {#1.pdf}% + \ifnum\pdftexversion < 14 \else + \pdfrefximage \pdflastximage + \fi} + \def\pdfmkdest#1{\pdfdest name{#1@} xyz} + \def\pdfmkpgn#1{#1@} + \let\linkcolor = \Cyan + \def\endlink{\Black\pdfendlink} + % Adding outlines to PDF; macros for calculating structure of outlines + % come from Petr Olsak + \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0% + \else \csname#1\endcsname \fi} + \def\advancenumber#1{\tempnum=\expnumber{#1}\relax + \advance\tempnum by1 + \expandafter\xdef\csname#1\endcsname{\the\tempnum}} + \def\pdfmakeoutlines{{% + \openin 1 \jobname.toc + \ifeof 1\else\bgroup + \closein 1 + \indexnofonts + \def\tt{} + % thanh's hack / proper braces in bookmarks + \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace + \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace + % + \def\chapentry ##1##2##3{} + \def\unnumbchapentry ##1##2{} + \def\secentry ##1##2##3##4{\advancenumber{chap##2}} + \def\unnumbsecentry ##1##2{} + \def\subsecentry ##1##2##3##4##5{\advancenumber{sec##2.##3}} + \def\unnumbsubsecentry ##1##2{} + \def\subsubsecentry ##1##2##3##4##5##6{\advancenumber{subsec##2.##3.##4}} + \def\unnumbsubsubsecentry ##1##2{} + \input \jobname.toc + \def\chapentry ##1##2##3{% + \pdfoutline goto name{\pdfmkpgn{##3}}count-\expnumber{chap##2}{##1}} + \def\unnumbchapentry ##1##2{% + \pdfoutline goto name{\pdfmkpgn{##2}}{##1}} + \def\secentry ##1##2##3##4{% + \pdfoutline goto name{\pdfmkpgn{##4}}count-\expnumber{sec##2.##3}{##1}} + \def\unnumbsecentry ##1##2{% + \pdfoutline goto name{\pdfmkpgn{##2}}{##1}} + \def\subsecentry ##1##2##3##4##5{% + \pdfoutline goto name{\pdfmkpgn{##5}}count-\expnumber{subsec##2.##3.##4}{##1}} + \def\unnumbsubsecentry ##1##2{% + \pdfoutline goto name{\pdfmkpgn{##2}}{##1}} + \def\subsubsecentry ##1##2##3##4##5##6{% + \pdfoutline goto name{\pdfmkpgn{##6}}{##1}} + \def\unnumbsubsubsecentry ##1##2{% + \pdfoutline goto name{\pdfmkpgn{##2}}{##1}} + \input \jobname.toc + \egroup\fi + }} + \def\makelinks #1,{% + \def\params{#1}\def\E{END}% + \ifx\params\E + \let\nextmakelinks=\relax + \else + \let\nextmakelinks=\makelinks + \ifnum\lnkcount>0,\fi + \picknum{#1}% + \startlink attr{/Border [0 0 0]} + goto name{\pdfmkpgn{\the\pgn}}% + \linkcolor #1% + \advance\lnkcount by 1% + \endlink + \fi + \nextmakelinks + } + \def\picknum#1{\expandafter\pn#1} + \def\pn#1{% + \def\p{#1}% + \ifx\p\lbrace + \let\nextpn=\ppn + \else + \let\nextpn=\ppnn + \def\first{#1} + \fi + \nextpn + } + \def\ppn#1{\pgn=#1\gobble} + \def\ppnn{\pgn=\first} + \def\pdfmklnk#1{\lnkcount=0\makelinks #1,END,} + \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} + \def\skipspaces#1{\def\PP{#1}\def\D{|}% + \ifx\PP\D\let\nextsp\relax + \else\let\nextsp\skipspaces + \ifx\p\space\else\addtokens{\filename}{\PP}% + \advance\filenamelength by 1 + \fi + \fi + \nextsp} + \def\getfilename#1{\filenamelength=0\expandafter\skipspaces#1|\relax} + \ifnum\pdftexversion < 14 + \let \startlink \pdfannotlink + \else + \let \startlink \pdfstartlink + \fi + \def\pdfurl#1{% + \begingroup + \normalturnoffactive\def\@{@}% + \leavevmode\Red + \startlink attr{/Border [0 0 0]}% + user{/Subtype /Link /A << /S /URI /URI (#1) >>}% + % #1 + \endgroup} + \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}} + \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} + \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks} + \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}} + \def\maketoks{% + \expandafter\poptoks\the\toksA|ENDTOKS| + \ifx\first0\adn0 + \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 + \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 + \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 + \else + \ifnum0=\countA\else\makelink\fi + \ifx\first.\let\next=\done\else + \let\next=\maketoks + \addtokens{\toksB}{\the\toksD} + \ifx\first,\addtokens{\toksB}{\space}\fi + \fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \next} + \def\makelink{\addtokens{\toksB}% + {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} + \def\pdflink#1{% + \startlink attr{/Border [0 0 0]} goto name{\mkpgn{#1}} + \linkcolor #1\endlink} + \def\mkpgn#1{#1@} + \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} +\fi % \ifx\pdfoutput + + +\message{fonts,} +% Font-change commands. + +% Texinfo sort of supports the sans serif font style, which plain TeX does not. +% So we set up a \sf analogous to plain's \rm, etc. +\newfam\sffam +\def\sf{\fam=\sffam \tensf} +\let\li = \sf % Sometimes we call it \li, not \sf. + +% We don't need math for this one. +\def\ttsl{\tenttsl} + +% Use Computer Modern fonts at \magstephalf (11pt). +\newcount\mainmagstep +\mainmagstep=\magstephalf + +% Set the font macro #1 to the font named #2, adding on the +% specified font prefix (normally `cm'). +% #3 is the font's design size, #4 is a scale factor +\def\setfont#1#2#3#4{\font#1=\fontprefix#2#3 scaled #4} + +% Use cm as the default font prefix. +% To specify the font prefix, you must define \fontprefix +% before you read in texinfo.tex. +\ifx\fontprefix\undefined +\def\fontprefix{cm} +\fi +% Support font families that don't use the same naming scheme as CM. +\def\rmshape{r} +\def\rmbshape{bx} %where the normal face is bold +\def\bfshape{b} +\def\bxshape{bx} +\def\ttshape{tt} +\def\ttbshape{tt} +\def\ttslshape{sltt} +\def\itshape{ti} +\def\itbshape{bxti} +\def\slshape{sl} +\def\slbshape{bxsl} +\def\sfshape{ss} +\def\sfbshape{ss} +\def\scshape{csc} +\def\scbshape{csc} + +\ifx\bigger\relax +\let\mainmagstep=\magstep1 +\setfont\textrm\rmshape{12}{1000} +\setfont\texttt\ttshape{12}{1000} +\else +\setfont\textrm\rmshape{10}{\mainmagstep} +\setfont\texttt\ttshape{10}{\mainmagstep} +\fi +% Instead of cmb10, you many want to use cmbx10. +% cmbx10 is a prettier font on its own, but cmb10 +% looks better when embedded in a line with cmr10. +\setfont\textbf\bfshape{10}{\mainmagstep} +\setfont\textit\itshape{10}{\mainmagstep} +\setfont\textsl\slshape{10}{\mainmagstep} +\setfont\textsf\sfshape{10}{\mainmagstep} +\setfont\textsc\scshape{10}{\mainmagstep} +\setfont\textttsl\ttslshape{10}{\mainmagstep} +\font\texti=cmmi10 scaled \mainmagstep +\font\textsy=cmsy10 scaled \mainmagstep + +% A few fonts for @defun, etc. +\setfont\defbf\bxshape{10}{\magstep1} %was 1314 +\setfont\deftt\ttshape{10}{\magstep1} +\def\df{\let\tentt=\deftt \let\tenbf = \defbf \bf} + +% Fonts for indices, footnotes, small examples (9pt). +\setfont\smallrm\rmshape{9}{1000} +\setfont\smalltt\ttshape{9}{1000} +\setfont\smallbf\bfshape{10}{900} +\setfont\smallit\itshape{9}{1000} +\setfont\smallsl\slshape{9}{1000} +\setfont\smallsf\sfshape{9}{1000} +\setfont\smallsc\scshape{10}{900} +\setfont\smallttsl\ttslshape{10}{900} +\font\smalli=cmmi9 +\font\smallsy=cmsy9 + +% Fonts for title page: +\setfont\titlerm\rmbshape{12}{\magstep3} +\setfont\titleit\itbshape{10}{\magstep4} +\setfont\titlesl\slbshape{10}{\magstep4} +\setfont\titlett\ttbshape{12}{\magstep3} +\setfont\titlettsl\ttslshape{10}{\magstep4} +\setfont\titlesf\sfbshape{17}{\magstep1} +\let\titlebf=\titlerm +\setfont\titlesc\scbshape{10}{\magstep4} +\font\titlei=cmmi12 scaled \magstep3 +\font\titlesy=cmsy10 scaled \magstep4 +\def\authorrm{\secrm} + +% Chapter (and unnumbered) fonts (17.28pt). +\setfont\chaprm\rmbshape{12}{\magstep2} +\setfont\chapit\itbshape{10}{\magstep3} +\setfont\chapsl\slbshape{10}{\magstep3} +\setfont\chaptt\ttbshape{12}{\magstep2} +\setfont\chapttsl\ttslshape{10}{\magstep3} +\setfont\chapsf\sfbshape{17}{1000} +\let\chapbf=\chaprm +\setfont\chapsc\scbshape{10}{\magstep3} +\font\chapi=cmmi12 scaled \magstep2 +\font\chapsy=cmsy10 scaled \magstep3 + +% Section fonts (14.4pt). +\setfont\secrm\rmbshape{12}{\magstep1} +\setfont\secit\itbshape{10}{\magstep2} +\setfont\secsl\slbshape{10}{\magstep2} +\setfont\sectt\ttbshape{12}{\magstep1} +\setfont\secttsl\ttslshape{10}{\magstep2} +\setfont\secsf\sfbshape{12}{\magstep1} +\let\secbf\secrm +\setfont\secsc\scbshape{10}{\magstep2} +\font\seci=cmmi12 scaled \magstep1 +\font\secsy=cmsy10 scaled \magstep2 + +% \setfont\ssecrm\bxshape{10}{\magstep1} % This size an font looked bad. +% \setfont\ssecit\itshape{10}{\magstep1} % The letters were too crowded. +% \setfont\ssecsl\slshape{10}{\magstep1} +% \setfont\ssectt\ttshape{10}{\magstep1} +% \setfont\ssecsf\sfshape{10}{\magstep1} + +%\setfont\ssecrm\bfshape{10}{1315} % Note the use of cmb rather than cmbx. +%\setfont\ssecit\itshape{10}{1315} % Also, the size is a little larger than +%\setfont\ssecsl\slshape{10}{1315} % being scaled magstep1. +%\setfont\ssectt\ttshape{10}{1315} +%\setfont\ssecsf\sfshape{10}{1315} + +%\let\ssecbf=\ssecrm + +% Subsection fonts (13.15pt). +\setfont\ssecrm\rmbshape{12}{\magstephalf} +\setfont\ssecit\itbshape{10}{1315} +\setfont\ssecsl\slbshape{10}{1315} +\setfont\ssectt\ttbshape{12}{\magstephalf} +\setfont\ssecttsl\ttslshape{10}{1315} +\setfont\ssecsf\sfbshape{12}{\magstephalf} +\let\ssecbf\ssecrm +\setfont\ssecsc\scbshape{10}{\magstep1} +\font\sseci=cmmi12 scaled \magstephalf +\font\ssecsy=cmsy10 scaled 1315 +% The smallcaps and symbol fonts should actually be scaled \magstep1.5, +% but that is not a standard magnification. + +% In order for the font changes to affect most math symbols and letters, +% we have to define the \textfont of the standard families. Since +% texinfo doesn't allow for producing subscripts and superscripts, we +% don't bother to reset \scriptfont and \scriptscriptfont (which would +% also require loading a lot more fonts). +% +\def\resetmathfonts{% + \textfont0 = \tenrm \textfont1 = \teni \textfont2 = \tensy + \textfont\itfam = \tenit \textfont\slfam = \tensl \textfont\bffam = \tenbf + \textfont\ttfam = \tentt \textfont\sffam = \tensf +} + + +% The font-changing commands redefine the meanings of \tenSTYLE, instead +% of just \STYLE. We do this so that font changes will continue to work +% in math mode, where it is the current \fam that is relevant in most +% cases, not the current font. Plain TeX does \def\bf{\fam=\bffam +% \tenbf}, for example. By redefining \tenbf, we obviate the need to +% redefine \bf itself. +\def\textfonts{% + \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl + \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc + \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy \let\tenttsl=\textttsl + \resetmathfonts} +\def\titlefonts{% + \let\tenrm=\titlerm \let\tenit=\titleit \let\tensl=\titlesl + \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc + \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy + \let\tenttsl=\titlettsl + \resetmathfonts \setleading{25pt}} +\def\titlefont#1{{\titlefonts\rm #1}} +\def\chapfonts{% + \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl + \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc + \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl + \resetmathfonts \setleading{19pt}} +\def\secfonts{% + \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl + \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc + \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy \let\tenttsl=\secttsl + \resetmathfonts \setleading{16pt}} +\def\subsecfonts{% + \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl + \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc + \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy \let\tenttsl=\ssecttsl + \resetmathfonts \setleading{15pt}} +\let\subsubsecfonts = \subsecfonts % Maybe make sssec fonts scaled magstephalf? +\def\smallfonts{% + \let\tenrm=\smallrm \let\tenit=\smallit \let\tensl=\smallsl + \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc + \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy + \let\tenttsl=\smallttsl + \resetmathfonts \setleading{11pt}} + +% Set up the default fonts, so we can use them for creating boxes. +% +\textfonts + +% Define these so they can be easily changed for other fonts. +\def\angleleft{$\langle$} +\def\angleright{$\rangle$} + +% Count depth in font-changes, for error checks +\newcount\fontdepth \fontdepth=0 + +% Fonts for short table of contents. +\setfont\shortcontrm\rmshape{12}{1000} +\setfont\shortcontbf\bxshape{12}{1000} +\setfont\shortcontsl\slshape{12}{1000} + +%% Add scribe-like font environments, plus @l for inline lisp (usually sans +%% serif) and @ii for TeX italic + +% \smartitalic{ARG} outputs arg in italics, followed by an italic correction +% unless the following character is such as not to need one. +\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else\/\fi\fi\fi} +\def\smartslanted#1{{\sl #1}\futurelet\next\smartitalicx} +\def\smartitalic#1{{\it #1}\futurelet\next\smartitalicx} + +\let\i=\smartitalic +\let\var=\smartslanted +\let\dfn=\smartslanted +\let\emph=\smartitalic +\let\cite=\smartslanted + +\def\b#1{{\bf #1}} +\let\strong=\b + +% We can't just use \exhyphenpenalty, because that only has effect at +% the end of a paragraph. Restore normal hyphenation at the end of the +% group within which \nohyphenation is presumably called. +% +\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation} +\def\restorehyphenation{\hyphenchar\font = `- } + +\def\t#1{% + {\tt \rawbackslash \frenchspacing #1}% + \null +} +\let\ttfont=\t +\def\samp#1{`\tclose{#1}'\null} +\setfont\keyrm\rmshape{8}{1000} +\font\keysy=cmsy9 +\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% + \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% + \vbox{\hrule\kern-0.4pt + \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% + \kern-0.4pt\hrule}% + \kern-.06em\raise0.4pt\hbox{\angleright}}}} +% The old definition, with no lozenge: +%\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null} +\def\ctrl #1{{\tt \rawbackslash \hat}#1} + +% @file, @option are the same as @samp. +\let\file=\samp +\let\option=\samp + +% @code is a modification of @t, +% which makes spaces the same size as normal in the surrounding text. +\def\tclose#1{% + {% + % Change normal interword space to be same as for the current font. + \spaceskip = \fontdimen2\font + % + % Switch to typewriter. + \tt + % + % But `\ ' produces the large typewriter interword space. + \def\ {{\spaceskip = 0pt{} }}% + % + % Turn off hyphenation. + \nohyphenation + % + \rawbackslash + \frenchspacing + #1% + }% + \null +} + +% We *must* turn on hyphenation at `-' and `_' in \code. +% Otherwise, it is too hard to avoid overfull hboxes +% in the Emacs manual, the Library manual, etc. + +% Unfortunately, TeX uses one parameter (\hyphenchar) to control +% both hyphenation at - and hyphenation within words. +% We must therefore turn them both off (\tclose does that) +% and arrange explicitly to hyphenate at a dash. +% -- rms. +{ + \catcode`\-=\active + \catcode`\_=\active + % + \global\def\code{\begingroup + \catcode`\-=\active \let-\codedash + \catcode`\_=\active \let_\codeunder + \codex + } + % + % If we end up with any active - characters when handling the index, + % just treat them as a normal -. + \global\def\indexbreaks{\catcode`\-=\active \let-\realdash} +} + +\def\realdash{-} +\def\codedash{-\discretionary{}{}{}} +\def\codeunder{\ifusingtt{\normalunderscore\discretionary{}{}{}}{\_}} +\def\codex #1{\tclose{#1}\endgroup} + +%\let\exp=\tclose %Was temporary + +% @kbd is like @code, except that if the argument is just one @key command, +% then @kbd has no effect. + +% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), +% `example' (@kbd uses ttsl only inside of @example and friends), +% or `code' (@kbd uses normal tty font always). +\def\kbdinputstyle{\parsearg\kbdinputstylexxx} +\def\kbdinputstylexxx#1{% + \def\arg{#1}% + \ifx\arg\worddistinct + \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% + \else\ifx\arg\wordexample + \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% + \else\ifx\arg\wordcode + \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% + \fi\fi\fi +} +\def\worddistinct{distinct} +\def\wordexample{example} +\def\wordcode{code} + +% Default is kbdinputdistinct. (Too much of a hassle to call the macro, +% the catcodes are wrong for parsearg to work.) +\gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl} + +\def\xkey{\key} +\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% +\ifx\one\xkey\ifx\threex\three \key{#2}% +\else{\tclose{\kbdfont\look}}\fi +\else{\tclose{\kbdfont\look}}\fi} + +% For @url, @env, @command quotes seem unnecessary, so use \code. +\let\url=\code +\let\env=\code +\let\command=\code + +% @uref (abbreviation for `urlref') takes an optional (comma-separated) +% second argument specifying the text to display and an optional third +% arg as text to display instead of (rather than in addition to) the url +% itself. First (mandatory) arg is the url. Perhaps eventually put in +% a hypertex \special here. +% +\def\uref#1{\douref #1,,,\finish} +\def\douref#1,#2,#3,#4\finish{\begingroup + \unsepspaces + \pdfurl{#1}% + \setbox0 = \hbox{\ignorespaces #3}% + \ifdim\wd0 > 0pt + \unhbox0 % third arg given, show only that + \else + \setbox0 = \hbox{\ignorespaces #2}% + \ifdim\wd0 > 0pt + \ifpdf + \unhbox0 % PDF: 2nd arg given, show only it + \else + \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url + \fi + \else + \code{#1}% only url given, so show it + \fi + \fi + \endlink +\endgroup} + +% rms does not like angle brackets --karl, 17may97. +% So now @email is just like @uref, unless we are pdf. +% +%\def\email#1{\angleleft{\tt #1}\angleright} +\ifpdf + \def\email#1{\doemail#1,,\finish} + \def\doemail#1,#2,#3\finish{\begingroup + \unsepspaces + \pdfurl{mailto:#1}% + \setbox0 = \hbox{\ignorespaces #2}% + \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi + \endlink + \endgroup} +\else + \let\email=\uref +\fi + +% Check if we are currently using a typewriter font. Since all the +% Computer Modern typewriter fonts have zero interword stretch (and +% shrink), and it is reasonable to expect all typewriter fonts to have +% this property, we can check that font parameter. +% +\def\ifmonospace{\ifdim\fontdimen3\font=0pt } + +% Typeset a dimension, e.g., `in' or `pt'. The only reason for the +% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt. +% +\def\dmn#1{\thinspace #1} + +\def\kbd#1{\def\look{#1}\expandafter\kbdfoo\look??\par} + +% @l was never documented to mean ``switch to the Lisp font'', +% and it is not used as such in any manual I can find. We need it for +% Polish suppressed-l. --karl, 22sep96. +%\def\l#1{{\li #1}\null} + +% Explicit font changes: @r, @sc, undocumented @ii. +\def\r#1{{\rm #1}} % roman font +\def\sc#1{{\smallcaps#1}} % smallcaps font +\def\ii#1{{\it #1}} % italic font + +% @acronym downcases the argument and prints in smallcaps. +\def\acronym#1{{\smallcaps \lowercase{#1}}} + +% @pounds{} is a sterling sign. +\def\pounds{{\it\$}} + + +\message{page headings,} + +\newskip\titlepagetopglue \titlepagetopglue = 1.5in +\newskip\titlepagebottomglue \titlepagebottomglue = 2pc + +% First the title page. Must do @settitle before @titlepage. +\newif\ifseenauthor +\newif\iffinishedtitlepage + +% Do an implicit @contents or @shortcontents after @end titlepage if the +% user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage. +% +\newif\ifsetcontentsaftertitlepage + \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue +\newif\ifsetshortcontentsaftertitlepage + \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue + +\def\shorttitlepage{\parsearg\shorttitlepagezzz} +\def\shorttitlepagezzz #1{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}% + \endgroup\page\hbox{}\page} + +\def\titlepage{\begingroup \parindent=0pt \textfonts + \let\subtitlerm=\tenrm + \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines}% + % + \def\authorfont{\authorrm \normalbaselineskip = 16pt \normalbaselines}% + % + % Leave some space at the very top of the page. + \vglue\titlepagetopglue + % + % Now you can print the title using @title. + \def\title{\parsearg\titlezzz}% + \def\titlezzz##1{\leftline{\titlefonts\rm ##1} + % print a rule at the page bottom also. + \finishedtitlepagefalse + \vskip4pt \hrule height 4pt width \hsize \vskip4pt}% + % No rule at page bottom unless we print one at the top with @title. + \finishedtitlepagetrue + % + % Now you can put text using @subtitle. + \def\subtitle{\parsearg\subtitlezzz}% + \def\subtitlezzz##1{{\subtitlefont \rightline{##1}}}% + % + % @author should come last, but may come many times. + \def\author{\parsearg\authorzzz}% + \def\authorzzz##1{\ifseenauthor\else\vskip 0pt plus 1filll\seenauthortrue\fi + {\authorfont \leftline{##1}}}% + % + % Most title ``pages'' are actually two pages long, with space + % at the top of the second. We don't want the ragged left on the second. + \let\oldpage = \page + \def\page{% + \iffinishedtitlepage\else + \finishtitlepage + \fi + \oldpage + \let\page = \oldpage + \hbox{}}% +% \def\page{\oldpage \hbox{}} +} + +\def\Etitlepage{% + \iffinishedtitlepage\else + \finishtitlepage + \fi + % It is important to do the page break before ending the group, + % because the headline and footline are only empty inside the group. + % If we use the new definition of \page, we always get a blank page + % after the title page, which we certainly don't want. + \oldpage + \endgroup + % + % If they want short, they certainly want long too. + \ifsetshortcontentsaftertitlepage + \shortcontents + \contents + \global\let\shortcontents = \relax + \global\let\contents = \relax + \fi + % + \ifsetcontentsaftertitlepage + \contents + \global\let\contents = \relax + \global\let\shortcontents = \relax + \fi + % + \ifpdf \pdfmakepagedesttrue \fi + % + \HEADINGSon +} + +\def\finishtitlepage{% + \vskip4pt \hrule height 2pt width \hsize + \vskip\titlepagebottomglue + \finishedtitlepagetrue +} + +%%% Set up page headings and footings. + +\let\thispage=\folio + +\newtoks\evenheadline % headline on even pages +\newtoks\oddheadline % headline on odd pages +\newtoks\evenfootline % footline on even pages +\newtoks\oddfootline % footline on odd pages + +% Now make Tex use those variables +\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline + \else \the\evenheadline \fi}} +\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline + \else \the\evenfootline \fi}\HEADINGShook} +\let\HEADINGShook=\relax + +% Commands to set those variables. +% For example, this is what @headings on does +% @evenheading @thistitle|@thispage|@thischapter +% @oddheading @thischapter|@thispage|@thistitle +% @evenfooting @thisfile|| +% @oddfooting ||@thisfile + +\def\evenheading{\parsearg\evenheadingxxx} +\def\oddheading{\parsearg\oddheadingxxx} +\def\everyheading{\parsearg\everyheadingxxx} + +\def\evenfooting{\parsearg\evenfootingxxx} +\def\oddfooting{\parsearg\oddfootingxxx} +\def\everyfooting{\parsearg\everyfootingxxx} + +{\catcode`\@=0 % + +\gdef\evenheadingxxx #1{\evenheadingyyy #1@|@|@|@|\finish} +\gdef\evenheadingyyy #1@|#2@|#3@|#4\finish{% +\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} + +\gdef\oddheadingxxx #1{\oddheadingyyy #1@|@|@|@|\finish} +\gdef\oddheadingyyy #1@|#2@|#3@|#4\finish{% +\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} + +\gdef\everyheadingxxx#1{\oddheadingxxx{#1}\evenheadingxxx{#1}}% + +\gdef\evenfootingxxx #1{\evenfootingyyy #1@|@|@|@|\finish} +\gdef\evenfootingyyy #1@|#2@|#3@|#4\finish{% +\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} + +\gdef\oddfootingxxx #1{\oddfootingyyy #1@|@|@|@|\finish} +\gdef\oddfootingyyy #1@|#2@|#3@|#4\finish{% + \global\oddfootline = {\rlap{\centerline{#2}}\line{#1\hfil#3}}% + % + % Leave some space for the footline. Hopefully ok to assume + % @evenfooting will not be used by itself. + \global\advance\pageheight by -\baselineskip + \global\advance\vsize by -\baselineskip +} + +\gdef\everyfootingxxx#1{\oddfootingxxx{#1}\evenfootingxxx{#1}} +% +}% unbind the catcode of @. + +% @headings double turns headings on for double-sided printing. +% @headings single turns headings on for single-sided printing. +% @headings off turns them off. +% @headings on same as @headings double, retained for compatibility. +% @headings after turns on double-sided headings after this page. +% @headings doubleafter turns on double-sided headings after this page. +% @headings singleafter turns on single-sided headings after this page. +% By default, they are off at the start of a document, +% and turned `on' after @end titlepage. + +\def\headings #1 {\csname HEADINGS#1\endcsname} + +\def\HEADINGSoff{ +\global\evenheadline={\hfil} \global\evenfootline={\hfil} +\global\oddheadline={\hfil} \global\oddfootline={\hfil}} +\HEADINGSoff +% When we turn headings on, set the page number to 1. +% For double-sided printing, put current file name in lower left corner, +% chapter name on inside top of right hand pages, document +% title on inside top of left hand pages, and page numbers on outside top +% edge of all pages. +\def\HEADINGSdouble{ +\global\pageno=1 +\global\evenfootline={\hfil} +\global\oddfootline={\hfil} +\global\evenheadline={\line{\folio\hfil\thistitle}} +\global\oddheadline={\line{\thischapter\hfil\folio}} +\global\let\contentsalignmacro = \chapoddpage +} +\let\contentsalignmacro = \chappager + +% For single-sided printing, chapter title goes across top left of page, +% page number on top right. +\def\HEADINGSsingle{ +\global\pageno=1 +\global\evenfootline={\hfil} +\global\oddfootline={\hfil} +\global\evenheadline={\line{\thischapter\hfil\folio}} +\global\oddheadline={\line{\thischapter\hfil\folio}} +\global\let\contentsalignmacro = \chappager +} +\def\HEADINGSon{\HEADINGSdouble} + +\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex} +\let\HEADINGSdoubleafter=\HEADINGSafter +\def\HEADINGSdoublex{% +\global\evenfootline={\hfil} +\global\oddfootline={\hfil} +\global\evenheadline={\line{\folio\hfil\thistitle}} +\global\oddheadline={\line{\thischapter\hfil\folio}} +\global\let\contentsalignmacro = \chapoddpage +} + +\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex} +\def\HEADINGSsinglex{% +\global\evenfootline={\hfil} +\global\oddfootline={\hfil} +\global\evenheadline={\line{\thischapter\hfil\folio}} +\global\oddheadline={\line{\thischapter\hfil\folio}} +\global\let\contentsalignmacro = \chappager +} + +% Subroutines used in generating headings +% Produces Day Month Year style of output. +\def\today{% + \number\day\space + \ifcase\month + \or\putwordMJan\or\putwordMFeb\or\putwordMMar\or\putwordMApr + \or\putwordMMay\or\putwordMJun\or\putwordMJul\or\putwordMAug + \or\putwordMSep\or\putwordMOct\or\putwordMNov\or\putwordMDec + \fi + \space\number\year} + +% @settitle line... specifies the title of the document, for headings. +% It generates no output of its own. +\def\thistitle{\putwordNoTitle} +\def\settitle{\parsearg\settitlezzz} +\def\settitlezzz #1{\gdef\thistitle{#1}} + + +\message{tables,} +% Tables -- @table, @ftable, @vtable, @item(x), @kitem(x), @xitem(x). + +% default indentation of table text +\newdimen\tableindent \tableindent=.8in +% default indentation of @itemize and @enumerate text +\newdimen\itemindent \itemindent=.3in +% margin between end of table item and start of table text. +\newdimen\itemmargin \itemmargin=.1in + +% used internally for \itemindent minus \itemmargin +\newdimen\itemmax + +% Note @table, @vtable, and @vtable define @item, @itemx, etc., with +% these defs. +% They also define \itemindex +% to index the item name in whatever manner is desired (perhaps none). + +\newif\ifitemxneedsnegativevskip + +\def\itemxpar{\par\ifitemxneedsnegativevskip\nobreak\vskip-\parskip\nobreak\fi} + +\def\internalBitem{\smallbreak \parsearg\itemzzz} +\def\internalBitemx{\itemxpar \parsearg\itemzzz} + +\def\internalBxitem "#1"{\def\xitemsubtopix{#1} \smallbreak \parsearg\xitemzzz} +\def\internalBxitemx "#1"{\def\xitemsubtopix{#1} \itemxpar \parsearg\xitemzzz} + +\def\internalBkitem{\smallbreak \parsearg\kitemzzz} +\def\internalBkitemx{\itemxpar \parsearg\kitemzzz} + +\def\kitemzzz #1{\dosubind {kw}{\code{#1}}{for {\bf \lastfunction}}% + \itemzzz {#1}} + +\def\xitemzzz #1{\dosubind {kw}{\code{#1}}{for {\bf \xitemsubtopic}}% + \itemzzz {#1}} + +\def\itemzzz #1{\begingroup % + \advance\hsize by -\rightskip + \advance\hsize by -\tableindent + \setbox0=\hbox{\itemfont{#1}}% + \itemindex{#1}% + \nobreak % This prevents a break before @itemx. + % + % If the item text does not fit in the space we have, put it on a line + % by itself, and do not allow a page break either before or after that + % line. We do not start a paragraph here because then if the next + % command is, e.g., @kindex, the whatsit would get put into the + % horizontal list on a line by itself, resulting in extra blank space. + \ifdim \wd0>\itemmax + % + % Make this a paragraph so we get the \parskip glue and wrapping, + % but leave it ragged-right. + \begingroup + \advance\leftskip by-\tableindent + \advance\hsize by\tableindent + \advance\rightskip by0pt plus1fil + \leavevmode\unhbox0\par + \endgroup + % + % We're going to be starting a paragraph, but we don't want the + % \parskip glue -- logically it's part of the @item we just started. + \nobreak \vskip-\parskip + % + % Stop a page break at the \parskip glue coming up. Unfortunately + % we can't prevent a possible page break at the following + % \baselineskip glue. + \nobreak + \endgroup + \itemxneedsnegativevskipfalse + \else + % The item text fits into the space. Start a paragraph, so that the + % following text (if any) will end up on the same line. + \noindent + % Do this with kerns and \unhbox so that if there is a footnote in + % the item text, it can migrate to the main vertical list and + % eventually be printed. + \nobreak\kern-\tableindent + \dimen0 = \itemmax \advance\dimen0 by \itemmargin \advance\dimen0 by -\wd0 + \unhbox0 + \nobreak\kern\dimen0 + \endgroup + \itemxneedsnegativevskiptrue + \fi +} + +\def\item{\errmessage{@item while not in a table}} +\def\itemx{\errmessage{@itemx while not in a table}} +\def\kitem{\errmessage{@kitem while not in a table}} +\def\kitemx{\errmessage{@kitemx while not in a table}} +\def\xitem{\errmessage{@xitem while not in a table}} +\def\xitemx{\errmessage{@xitemx while not in a table}} + +% Contains a kludge to get @end[description] to work. +\def\description{\tablez{\dontindex}{1}{}{}{}{}} + +% @table, @ftable, @vtable. +\def\table{\begingroup\inENV\obeylines\obeyspaces\tablex} +{\obeylines\obeyspaces% +\gdef\tablex #1^^M{% +\tabley\dontindex#1 \endtabley}} + +\def\ftable{\begingroup\inENV\obeylines\obeyspaces\ftablex} +{\obeylines\obeyspaces% +\gdef\ftablex #1^^M{% +\tabley\fnitemindex#1 \endtabley +\def\Eftable{\endgraf\afterenvbreak\endgroup}% +\let\Etable=\relax}} + +\def\vtable{\begingroup\inENV\obeylines\obeyspaces\vtablex} +{\obeylines\obeyspaces% +\gdef\vtablex #1^^M{% +\tabley\vritemindex#1 \endtabley +\def\Evtable{\endgraf\afterenvbreak\endgroup}% +\let\Etable=\relax}} + +\def\dontindex #1{} +\def\fnitemindex #1{\doind {fn}{\code{#1}}}% +\def\vritemindex #1{\doind {vr}{\code{#1}}}% + +{\obeyspaces % +\gdef\tabley#1#2 #3 #4 #5 #6 #7\endtabley{\endgroup% +\tablez{#1}{#2}{#3}{#4}{#5}{#6}}} + +\def\tablez #1#2#3#4#5#6{% +\aboveenvbreak % +\begingroup % +\def\Edescription{\Etable}% Necessary kludge. +\let\itemindex=#1% +\ifnum 0#3>0 \advance \leftskip by #3\mil \fi % +\ifnum 0#4>0 \tableindent=#4\mil \fi % +\ifnum 0#5>0 \advance \rightskip by #5\mil \fi % +\def\itemfont{#2}% +\itemmax=\tableindent % +\advance \itemmax by -\itemmargin % +\advance \leftskip by \tableindent % +\exdentamount=\tableindent +\parindent = 0pt +\parskip = \smallskipamount +\ifdim \parskip=0pt \parskip=2pt \fi% +\def\Etable{\endgraf\afterenvbreak\endgroup}% +\let\item = \internalBitem % +\let\itemx = \internalBitemx % +\let\kitem = \internalBkitem % +\let\kitemx = \internalBkitemx % +\let\xitem = \internalBxitem % +\let\xitemx = \internalBxitemx % +} + +% This is the counter used by @enumerate, which is really @itemize + +\newcount \itemno + +\def\itemize{\parsearg\itemizezzz} + +\def\itemizezzz #1{% + \begingroup % ended by the @end itemize + \itemizey {#1}{\Eitemize} +} + +\def\itemizey #1#2{% +\aboveenvbreak % +\itemmax=\itemindent % +\advance \itemmax by -\itemmargin % +\advance \leftskip by \itemindent % +\exdentamount=\itemindent +\parindent = 0pt % +\parskip = \smallskipamount % +\ifdim \parskip=0pt \parskip=2pt \fi% +\def#2{\endgraf\afterenvbreak\endgroup}% +\def\itemcontents{#1}% +\let\item=\itemizeitem} + +% Set sfcode to normal for the chars that usually have another value. +% These are `.?!:;,' +\def\frenchspacing{\sfcode46=1000 \sfcode63=1000 \sfcode33=1000 + \sfcode58=1000 \sfcode59=1000 \sfcode44=1000 } + +% \splitoff TOKENS\endmark defines \first to be the first token in +% TOKENS, and \rest to be the remainder. +% +\def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}% + +% Allow an optional argument of an uppercase letter, lowercase letter, +% or number, to specify the first label in the enumerated list. No +% argument is the same as `1'. +% +\def\enumerate{\parsearg\enumeratezzz} +\def\enumeratezzz #1{\enumeratey #1 \endenumeratey} +\def\enumeratey #1 #2\endenumeratey{% + \begingroup % ended by the @end enumerate + % + % If we were given no argument, pretend we were given `1'. + \def\thearg{#1}% + \ifx\thearg\empty \def\thearg{1}\fi + % + % Detect if the argument is a single token. If so, it might be a + % letter. Otherwise, the only valid thing it can be is a number. + % (We will always have one token, because of the test we just made. + % This is a good thing, since \splitoff doesn't work given nothing at + % all -- the first parameter is undelimited.) + \expandafter\splitoff\thearg\endmark + \ifx\rest\empty + % Only one token in the argument. It could still be anything. + % A ``lowercase letter'' is one whose \lccode is nonzero. + % An ``uppercase letter'' is one whose \lccode is both nonzero, and + % not equal to itself. + % Otherwise, we assume it's a number. + % + % We need the \relax at the end of the \ifnum lines to stop TeX from + % continuing to look for a . + % + \ifnum\lccode\expandafter`\thearg=0\relax + \numericenumerate % a number (we hope) + \else + % It's a letter. + \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax + \lowercaseenumerate % lowercase letter + \else + \uppercaseenumerate % uppercase letter + \fi + \fi + \else + % Multiple tokens in the argument. We hope it's a number. + \numericenumerate + \fi +} + +% An @enumerate whose labels are integers. The starting integer is +% given in \thearg. +% +\def\numericenumerate{% + \itemno = \thearg + \startenumeration{\the\itemno}% +} + +% The starting (lowercase) letter is in \thearg. +\def\lowercaseenumerate{% + \itemno = \expandafter`\thearg + \startenumeration{% + % Be sure we're not beyond the end of the alphabet. + \ifnum\itemno=0 + \errmessage{No more lowercase letters in @enumerate; get a bigger + alphabet}% + \fi + \char\lccode\itemno + }% +} + +% The starting (uppercase) letter is in \thearg. +\def\uppercaseenumerate{% + \itemno = \expandafter`\thearg + \startenumeration{% + % Be sure we're not beyond the end of the alphabet. + \ifnum\itemno=0 + \errmessage{No more uppercase letters in @enumerate; get a bigger + alphabet} + \fi + \char\uccode\itemno + }% +} + +% Call itemizey, adding a period to the first argument and supplying the +% common last two arguments. Also subtract one from the initial value in +% \itemno, since @item increments \itemno. +% +\def\startenumeration#1{% + \advance\itemno by -1 + \itemizey{#1.}\Eenumerate\flushcr +} + +% @alphaenumerate and @capsenumerate are abbreviations for giving an arg +% to @enumerate. +% +\def\alphaenumerate{\enumerate{a}} +\def\capsenumerate{\enumerate{A}} +\def\Ealphaenumerate{\Eenumerate} +\def\Ecapsenumerate{\Eenumerate} + +% Definition of @item while inside @itemize. + +\def\itemizeitem{% +\advance\itemno by 1 +{\let\par=\endgraf \smallbreak}% +\ifhmode \errmessage{In hmode at itemizeitem}\fi +{\parskip=0in \hskip 0pt +\hbox to 0pt{\hss \itemcontents\hskip \itemmargin}% +\vadjust{\penalty 1200}}% +\flushcr} + +% @multitable macros +% Amy Hendrickson, 8/18/94, 3/6/96 +% +% @multitable ... @end multitable will make as many columns as desired. +% Contents of each column will wrap at width given in preamble. Width +% can be specified either with sample text given in a template line, +% or in percent of \hsize, the current width of text on page. + +% Table can continue over pages but will only break between lines. + +% To make preamble: +% +% Either define widths of columns in terms of percent of \hsize: +% @multitable @columnfractions .25 .3 .45 +% @item ... +% +% Numbers following @columnfractions are the percent of the total +% current hsize to be used for each column. You may use as many +% columns as desired. + + +% Or use a template: +% @multitable {Column 1 template} {Column 2 template} {Column 3 template} +% @item ... +% using the widest term desired in each column. +% +% For those who want to use more than one line's worth of words in +% the preamble, break the line within one argument and it +% will parse correctly, i.e., +% +% @multitable {Column 1 template} {Column 2 template} {Column 3 +% template} +% Not: +% @multitable {Column 1 template} {Column 2 template} +% {Column 3 template} + +% Each new table line starts with @item, each subsequent new column +% starts with @tab. Empty columns may be produced by supplying @tab's +% with nothing between them for as many times as empty columns are needed, +% ie, @tab@tab@tab will produce two empty columns. + +% @item, @tab, @multitable or @end multitable do not need to be on their +% own lines, but it will not hurt if they are. + +% Sample multitable: + +% @multitable {Column 1 template} {Column 2 template} {Column 3 template} +% @item first col stuff @tab second col stuff @tab third col +% @item +% first col stuff +% @tab +% second col stuff +% @tab +% third col +% @item first col stuff @tab second col stuff +% @tab Many paragraphs of text may be used in any column. +% +% They will wrap at the width determined by the template. +% @item@tab@tab This will be in third column. +% @end multitable + +% Default dimensions may be reset by user. +% @multitableparskip is vertical space between paragraphs in table. +% @multitableparindent is paragraph indent in table. +% @multitablecolmargin is horizontal space to be left between columns. +% @multitablelinespace is space to leave between table items, baseline +% to baseline. +% 0pt means it depends on current normal line spacing. +% +\newskip\multitableparskip +\newskip\multitableparindent +\newdimen\multitablecolspace +\newskip\multitablelinespace +\multitableparskip=0pt +\multitableparindent=6pt +\multitablecolspace=12pt +\multitablelinespace=0pt + +% Macros used to set up halign preamble: +% +\let\endsetuptable\relax +\def\xendsetuptable{\endsetuptable} +\let\columnfractions\relax +\def\xcolumnfractions{\columnfractions} +\newif\ifsetpercent + +% #1 is the part of the @columnfraction before the decimal point, which +% is presumably either 0 or the empty string (but we don't check, we +% just throw it away). #2 is the decimal part, which we use as the +% percent of \hsize for this column. +\def\pickupwholefraction#1.#2 {% + \global\advance\colcount by 1 + \expandafter\xdef\csname col\the\colcount\endcsname{.#2\hsize}% + \setuptable +} + +\newcount\colcount +\def\setuptable#1{% + \def\firstarg{#1}% + \ifx\firstarg\xendsetuptable + \let\go = \relax + \else + \ifx\firstarg\xcolumnfractions + \global\setpercenttrue + \else + \ifsetpercent + \let\go\pickupwholefraction + \else + \global\advance\colcount by 1 + \setbox0=\hbox{#1\unskip }% Add a normal word space as a separator; + % typically that is always in the input, anyway. + \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}% + \fi + \fi + \ifx\go\pickupwholefraction + % Put the argument back for the \pickupwholefraction call, so + % we'll always have a period there to be parsed. + \def\go{\pickupwholefraction#1}% + \else + \let\go = \setuptable + \fi% + \fi + \go +} + +% This used to have \hskip1sp. But then the space in a template line is +% not enough. That is bad. So let's go back to just & until we +% encounter the problem it was intended to solve again. +% --karl, nathan@acm.org, 20apr99. +\def\tab{&} + +% @multitable ... @end multitable definitions: +% +\def\multitable{\parsearg\dotable} +\def\dotable#1{\bgroup + \vskip\parskip + \let\item\crcr + \tolerance=9500 + \hbadness=9500 + \setmultitablespacing + \parskip=\multitableparskip + \parindent=\multitableparindent + \overfullrule=0pt + \global\colcount=0 + \def\Emultitable{\global\setpercentfalse\cr\egroup\egroup}% + % + % To parse everything between @multitable and @item: + \setuptable#1 \endsetuptable + % + % \everycr will reset column counter, \colcount, at the end of + % each line. Every column entry will cause \colcount to advance by one. + % The table preamble + % looks at the current \colcount to find the correct column width. + \everycr{\noalign{% + % + % \filbreak%% keeps underfull box messages off when table breaks over pages. + % Maybe so, but it also creates really weird page breaks when the table + % breaks over pages. Wouldn't \vfil be better? Wait until the problem + % manifests itself, so it can be fixed for real --karl. + \global\colcount=0\relax}}% + % + % This preamble sets up a generic column definition, which will + % be used as many times as user calls for columns. + % \vtop will set a single line and will also let text wrap and + % continue for many paragraphs if desired. + \halign\bgroup&\global\advance\colcount by 1\relax + \multistrut\vtop{\hsize=\expandafter\csname col\the\colcount\endcsname + % + % In order to keep entries from bumping into each other + % we will add a \leftskip of \multitablecolspace to all columns after + % the first one. + % + % If a template has been used, we will add \multitablecolspace + % to the width of each template entry. + % + % If the user has set preamble in terms of percent of \hsize we will + % use that dimension as the width of the column, and the \leftskip + % will keep entries from bumping into each other. Table will start at + % left margin and final column will justify at right margin. + % + % Make sure we don't inherit \rightskip from the outer environment. + \rightskip=0pt + \ifnum\colcount=1 + % The first column will be indented with the surrounding text. + \advance\hsize by\leftskip + \else + \ifsetpercent \else + % If user has not set preamble in terms of percent of \hsize + % we will advance \hsize by \multitablecolspace. + \advance\hsize by \multitablecolspace + \fi + % In either case we will make \leftskip=\multitablecolspace: + \leftskip=\multitablecolspace + \fi + % Ignoring space at the beginning and end avoids an occasional spurious + % blank line, when TeX decides to break the line at the space before the + % box from the multistrut, so the strut ends up on a line by itself. + % For example: + % @multitable @columnfractions .11 .89 + % @item @code{#} + % @tab Legal holiday which is valid in major parts of the whole country. + % Is automatically provided with highlighting sequences respectively marking + % characters. + \noindent\ignorespaces##\unskip\multistrut}\cr +} + +\def\setmultitablespacing{% test to see if user has set \multitablelinespace. +% If so, do nothing. If not, give it an appropriate dimension based on +% current baselineskip. +\ifdim\multitablelinespace=0pt +\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip +\global\advance\multitablelinespace by-\ht0 +%% strut to put in table in case some entry doesn't have descenders, +%% to keep lines equally spaced +\let\multistrut = \strut +\else +%% FIXME: what is \box0 supposed to be? +\gdef\multistrut{\vrule height\multitablelinespace depth\dp0 +width0pt\relax} \fi +%% Test to see if parskip is larger than space between lines of +%% table. If not, do nothing. +%% If so, set to same dimension as multitablelinespace. +\ifdim\multitableparskip>\multitablelinespace +\global\multitableparskip=\multitablelinespace +\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller + %% than skip between lines in the table. +\fi% +\ifdim\multitableparskip=0pt +\global\multitableparskip=\multitablelinespace +\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller + %% than skip between lines in the table. +\fi} + + +\message{conditionals,} +% Prevent errors for section commands. +% Used in @ignore and in failing conditionals. +\def\ignoresections{% + \let\chapter=\relax + \let\unnumbered=\relax + \let\top=\relax + \let\unnumberedsec=\relax + \let\unnumberedsection=\relax + \let\unnumberedsubsec=\relax + \let\unnumberedsubsection=\relax + \let\unnumberedsubsubsec=\relax + \let\unnumberedsubsubsection=\relax + \let\section=\relax + \let\subsec=\relax + \let\subsubsec=\relax + \let\subsection=\relax + \let\subsubsection=\relax + \let\appendix=\relax + \let\appendixsec=\relax + \let\appendixsection=\relax + \let\appendixsubsec=\relax + \let\appendixsubsection=\relax + \let\appendixsubsubsec=\relax + \let\appendixsubsubsection=\relax + \let\contents=\relax + \let\smallbook=\relax + \let\titlepage=\relax +} + +% Used in nested conditionals, where we have to parse the Texinfo source +% and so want to turn off most commands, in case they are used +% incorrectly. +% +\def\ignoremorecommands{% + \let\defcodeindex = \relax + \let\defcv = \relax + \let\deffn = \relax + \let\deffnx = \relax + \let\defindex = \relax + \let\defivar = \relax + \let\defmac = \relax + \let\defmethod = \relax + \let\defop = \relax + \let\defopt = \relax + \let\defspec = \relax + \let\deftp = \relax + \let\deftypefn = \relax + \let\deftypefun = \relax + \let\deftypeivar = \relax + \let\deftypeop = \relax + \let\deftypevar = \relax + \let\deftypevr = \relax + \let\defun = \relax + \let\defvar = \relax + \let\defvr = \relax + \let\ref = \relax + \let\xref = \relax + \let\printindex = \relax + \let\pxref = \relax + \let\settitle = \relax + \let\setchapternewpage = \relax + \let\setchapterstyle = \relax + \let\everyheading = \relax + \let\evenheading = \relax + \let\oddheading = \relax + \let\everyfooting = \relax + \let\evenfooting = \relax + \let\oddfooting = \relax + \let\headings = \relax + \let\include = \relax + \let\lowersections = \relax + \let\down = \relax + \let\raisesections = \relax + \let\up = \relax + \let\set = \relax + \let\clear = \relax + \let\item = \relax +} + +% Ignore @ignore ... @end ignore. +% +\def\ignore{\doignore{ignore}} + +% Ignore @ifinfo, @ifhtml, @ifnottex, @html, @menu, and @direntry text. +% +\def\ifinfo{\doignore{ifinfo}} +\def\ifhtml{\doignore{ifhtml}} +\def\ifnottex{\doignore{ifnottex}} +\def\html{\doignore{html}} +\def\menu{\doignore{menu}} +\def\direntry{\doignore{direntry}} + +% @dircategory CATEGORY -- specify a category of the dir file +% which this file should belong to. Ignore this in TeX. +\let\dircategory = \comment + +% Ignore text until a line `@end #1'. +% +\def\doignore#1{\begingroup + % Don't complain about control sequences we have declared \outer. + \ignoresections + % + % Define a command to swallow text until we reach `@end #1'. + % This @ is a catcode 12 token (that is the normal catcode of @ in + % this texinfo.tex file). We change the catcode of @ below to match. + \long\def\doignoretext##1@end #1{\enddoignore}% + % + % Make sure that spaces turn into tokens that match what \doignoretext wants. + \catcode32 = 10 + % + % Ignore braces, too, so mismatched braces don't cause trouble. + \catcode`\{ = 9 + \catcode`\} = 9 + % + % We must not have @c interpreted as a control sequence. + \catcode`\@ = 12 + % + % Make the letter c a comment character so that the rest of the line + % will be ignored. This way, the document can have (for example) + % @c @end ifinfo + % and the @end ifinfo will be properly ignored. + % (We've just changed @ to catcode 12.) + \catcode`\c = 14 + % + % And now expand that command. + \doignoretext +} + +% What we do to finish off ignored text. +% +\def\enddoignore{\endgroup\ignorespaces}% + +\newif\ifwarnedobs\warnedobsfalse +\def\obstexwarn{% + \ifwarnedobs\relax\else + % We need to warn folks that they may have trouble with TeX 3.0. + % This uses \immediate\write16 rather than \message to get newlines. + \immediate\write16{} + \immediate\write16{WARNING: for users of Unix TeX 3.0!} + \immediate\write16{This manual trips a bug in TeX version 3.0 (tex hangs).} + \immediate\write16{If you are running another version of TeX, relax.} + \immediate\write16{If you are running Unix TeX 3.0, kill this TeX process.} + \immediate\write16{ Then upgrade your TeX installation if you can.} + \immediate\write16{ (See ftp://ftp.gnu.org/pub/gnu/TeX.README.)} + \immediate\write16{If you are stuck with version 3.0, run the} + \immediate\write16{ script ``tex3patch'' from the Texinfo distribution} + \immediate\write16{ to use a workaround.} + \immediate\write16{} + \global\warnedobstrue + \fi +} + +% **In TeX 3.0, setting text in \nullfont hangs tex. For a +% workaround (which requires the file ``dummy.tfm'' to be installed), +% uncomment the following line: +%%%%%\font\nullfont=dummy\let\obstexwarn=\relax + +% Ignore text, except that we keep track of conditional commands for +% purposes of nesting, up to an `@end #1' command. +% +\def\nestedignore#1{% + \obstexwarn + % We must actually expand the ignored text to look for the @end + % command, so that nested ignore constructs work. Thus, we put the + % text into a \vbox and then do nothing with the result. To minimize + % the change of memory overflow, we follow the approach outlined on + % page 401 of the TeXbook: make the current font be a dummy font. + % + \setbox0 = \vbox\bgroup + % Don't complain about control sequences we have declared \outer. + \ignoresections + % + % Define `@end #1' to end the box, which will in turn undefine the + % @end command again. + \expandafter\def\csname E#1\endcsname{\egroup\ignorespaces}% + % + % We are going to be parsing Texinfo commands. Most cause no + % trouble when they are used incorrectly, but some commands do + % complicated argument parsing or otherwise get confused, so we + % undefine them. + % + % We can't do anything about stray @-signs, unfortunately; + % they'll produce `undefined control sequence' errors. + \ignoremorecommands + % + % Set the current font to be \nullfont, a TeX primitive, and define + % all the font commands to also use \nullfont. We don't use + % dummy.tfm, as suggested in the TeXbook, because not all sites + % might have that installed. Therefore, math mode will still + % produce output, but that should be an extremely small amount of + % stuff compared to the main input. + % + \nullfont + \let\tenrm=\nullfont \let\tenit=\nullfont \let\tensl=\nullfont + \let\tenbf=\nullfont \let\tentt=\nullfont \let\smallcaps=\nullfont + \let\tensf=\nullfont + % Similarly for index fonts (mostly for their use in smallexample). + \let\smallrm=\nullfont \let\smallit=\nullfont \let\smallsl=\nullfont + \let\smallbf=\nullfont \let\smalltt=\nullfont \let\smallsc=\nullfont + \let\smallsf=\nullfont + % + % Don't complain when characters are missing from the fonts. + \tracinglostchars = 0 + % + % Don't bother to do space factor calculations. + \frenchspacing + % + % Don't report underfull hboxes. + \hbadness = 10000 + % + % Do minimal line-breaking. + \pretolerance = 10000 + % + % Do not execute instructions in @tex + \def\tex{\doignore{tex}}% + % Do not execute macro definitions. + % `c' is a comment character, so the word `macro' will get cut off. + \def\macro{\doignore{ma}}% +} + +% @set VAR sets the variable VAR to an empty value. +% @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE. +% +% Since we want to separate VAR from REST-OF-LINE (which might be +% empty), we can't just use \parsearg; we have to insert a space of our +% own to delimit the rest of the line, and then take it out again if we +% didn't need it. Make sure the catcode of space is correct to avoid +% losing inside @example, for instance. +% +\def\set{\begingroup\catcode` =10 + \catcode`\-=12 \catcode`\_=12 % Allow - and _ in VAR. + \parsearg\setxxx} +\def\setxxx#1{\setyyy#1 \endsetyyy} +\def\setyyy#1 #2\endsetyyy{% + \def\temp{#2}% + \ifx\temp\empty \global\expandafter\let\csname SET#1\endcsname = \empty + \else \setzzz{#1}#2\endsetzzz % Remove the trailing space \setxxx inserted. + \fi + \endgroup +} +% Can't use \xdef to pre-expand #2 and save some time, since \temp or +% \next or other control sequences that we've defined might get us into +% an infinite loop. Consider `@set foo @cite{bar}'. +\def\setzzz#1#2 \endsetzzz{\expandafter\gdef\csname SET#1\endcsname{#2}} + +% @clear VAR clears (i.e., unsets) the variable VAR. +% +\def\clear{\parsearg\clearxxx} +\def\clearxxx#1{\global\expandafter\let\csname SET#1\endcsname=\relax} + +% @value{foo} gets the text saved in variable foo. +{ + \catcode`\_ = \active + % + % We might end up with active _ or - characters in the argument if + % we're called from @code, as @code{@value{foo-bar_}}. So \let any + % such active characters to their normal equivalents. + \gdef\value{\begingroup + \catcode`\-=12 \catcode`\_=12 + \indexbreaks \let_\normalunderscore + \valuexxx} +} +\def\valuexxx#1{\expandablevalue{#1}\endgroup} + +% We have this subroutine so that we can handle at least some @value's +% properly in indexes (we \let\value to this in \indexdummies). Ones +% whose names contain - or _ still won't work, but we can't do anything +% about that. The command has to be fully expandable, since the result +% winds up in the index file. This means that if the variable's value +% contains other Texinfo commands, it's almost certain it will fail +% (although perhaps we could fix that with sufficient work to do a +% one-level expansion on the result, instead of complete). +% +\def\expandablevalue#1{% + \expandafter\ifx\csname SET#1\endcsname\relax + {[No value for ``#1'']}% + \else + \csname SET#1\endcsname + \fi +} + +% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined +% with @set. +% +\def\ifset{\parsearg\ifsetxxx} +\def\ifsetxxx #1{% + \expandafter\ifx\csname SET#1\endcsname\relax + \expandafter\ifsetfail + \else + \expandafter\ifsetsucceed + \fi +} +\def\ifsetsucceed{\conditionalsucceed{ifset}} +\def\ifsetfail{\nestedignore{ifset}} +\defineunmatchedend{ifset} + +% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been +% defined with @set, or has been undefined with @clear. +% +\def\ifclear{\parsearg\ifclearxxx} +\def\ifclearxxx #1{% + \expandafter\ifx\csname SET#1\endcsname\relax + \expandafter\ifclearsucceed + \else + \expandafter\ifclearfail + \fi +} +\def\ifclearsucceed{\conditionalsucceed{ifclear}} +\def\ifclearfail{\nestedignore{ifclear}} +\defineunmatchedend{ifclear} + +% @iftex, @ifnothtml, @ifnotinfo always succeed; we read the text +% following, through the first @end iftex (etc.). Make `@end iftex' +% (etc.) valid only after an @iftex. +% +\def\iftex{\conditionalsucceed{iftex}} +\def\ifnothtml{\conditionalsucceed{ifnothtml}} +\def\ifnotinfo{\conditionalsucceed{ifnotinfo}} +\defineunmatchedend{iftex} +\defineunmatchedend{ifnothtml} +\defineunmatchedend{ifnotinfo} + +% We can't just want to start a group at @iftex (for example) and end it +% at @end iftex, since then @set commands inside the conditional have no +% effect (they'd get reverted at the end of the group). So we must +% define \Eiftex to redefine itself to be its previous value. (We can't +% just define it to fail again with an ``unmatched end'' error, since +% the @ifset might be nested.) +% +\def\conditionalsucceed#1{% + \edef\temp{% + % Remember the current value of \E#1. + \let\nece{prevE#1} = \nece{E#1}% + % + % At the `@end #1', redefine \E#1 to be its previous value. + \def\nece{E#1}{\let\nece{E#1} = \nece{prevE#1}}% + }% + \temp +} + +% We need to expand lots of \csname's, but we don't want to expand the +% control sequences after we've constructed them. +% +\def\nece#1{\expandafter\noexpand\csname#1\endcsname} + +% @defininfoenclose. +\let\definfoenclose=\comment + + +\message{indexing,} +% Index generation facilities + +% Define \newwrite to be identical to plain tex's \newwrite +% except not \outer, so it can be used within \newindex. +{\catcode`\@=11 +\gdef\newwrite{\alloc@7\write\chardef\sixt@@n}} + +% \newindex {foo} defines an index named foo. +% It automatically defines \fooindex such that +% \fooindex ...rest of line... puts an entry in the index foo. +% It also defines \fooindfile to be the number of the output channel for +% the file that accumulates this index. The file's extension is foo. +% The name of an index should be no more than 2 characters long +% for the sake of vms. +% +\def\newindex#1{% + \iflinks + \expandafter\newwrite \csname#1indfile\endcsname + \openout \csname#1indfile\endcsname \jobname.#1 % Open the file + \fi + \expandafter\xdef\csname#1index\endcsname{% % Define @#1index + \noexpand\doindex{#1}} +} + +% @defindex foo == \newindex{foo} + +\def\defindex{\parsearg\newindex} + +% Define @defcodeindex, like @defindex except put all entries in @code. + +\def\newcodeindex#1{% + \iflinks + \expandafter\newwrite \csname#1indfile\endcsname + \openout \csname#1indfile\endcsname \jobname.#1 + \fi + \expandafter\xdef\csname#1index\endcsname{% + \noexpand\docodeindex{#1}} +} + +\def\defcodeindex{\parsearg\newcodeindex} + +% @synindex foo bar makes index foo feed into index bar. +% Do this instead of @defindex foo if you don't want it as a separate index. +% The \closeout helps reduce unnecessary open files; the limit on the +% Acorn RISC OS is a mere 16 files. +\def\synindex#1 #2 {% + \expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname + \expandafter\closeout\csname#1indfile\endcsname + \expandafter\let\csname#1indfile\endcsname=\synindexfoo + \expandafter\xdef\csname#1index\endcsname{% define \xxxindex + \noexpand\doindex{#2}}% +} + +% @syncodeindex foo bar similar, but put all entries made for index foo +% inside @code. +\def\syncodeindex#1 #2 {% + \expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname + \expandafter\closeout\csname#1indfile\endcsname + \expandafter\let\csname#1indfile\endcsname=\synindexfoo + \expandafter\xdef\csname#1index\endcsname{% define \xxxindex + \noexpand\docodeindex{#2}}% +} + +% Define \doindex, the driver for all \fooindex macros. +% Argument #1 is generated by the calling \fooindex macro, +% and it is "foo", the name of the index. + +% \doindex just uses \parsearg; it calls \doind for the actual work. +% This is because \doind is more useful to call from other macros. + +% There is also \dosubind {index}{topic}{subtopic} +% which makes an entry in a two-level index such as the operation index. + +\def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer} +\def\singleindexer #1{\doind{\indexname}{#1}} + +% like the previous two, but they put @code around the argument. +\def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer} +\def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}} + +\def\indexdummies{% +\def\ { }% +% Take care of the plain tex accent commands. +\def\"{\realbackslash "}% +\def\`{\realbackslash `}% +\def\'{\realbackslash '}% +\def\^{\realbackslash ^}% +\def\~{\realbackslash ~}% +\def\={\realbackslash =}% +\def\b{\realbackslash b}% +\def\c{\realbackslash c}% +\def\d{\realbackslash d}% +\def\u{\realbackslash u}% +\def\v{\realbackslash v}% +\def\H{\realbackslash H}% +% Take care of the plain tex special European modified letters. +\def\oe{\realbackslash oe}% +\def\ae{\realbackslash ae}% +\def\aa{\realbackslash aa}% +\def\OE{\realbackslash OE}% +\def\AE{\realbackslash AE}% +\def\AA{\realbackslash AA}% +\def\o{\realbackslash o}% +\def\O{\realbackslash O}% +\def\l{\realbackslash l}% +\def\L{\realbackslash L}% +\def\ss{\realbackslash ss}% +% Take care of texinfo commands likely to appear in an index entry. +% (Must be a way to avoid doing expansion at all, and thus not have to +% laboriously list every single command here.) +\def\@{@}% will be @@ when we switch to @ as escape char. +% Need these in case \tex is in effect and \{ is a \delimiter again. +% But can't use \lbracecmd and \rbracecmd because texindex assumes +% braces and backslashes are used only as delimiters. +\let\{ = \mylbrace +\let\} = \myrbrace +\def\_{{\realbackslash _}}% +\def\w{\realbackslash w }% +\def\bf{\realbackslash bf }% +%\def\rm{\realbackslash rm }% +\def\sl{\realbackslash sl }% +\def\sf{\realbackslash sf}% +\def\tt{\realbackslash tt}% +\def\gtr{\realbackslash gtr}% +\def\less{\realbackslash less}% +\def\hat{\realbackslash hat}% +\def\TeX{\realbackslash TeX}% +\def\dots{\realbackslash dots }% +\def\result{\realbackslash result}% +\def\equiv{\realbackslash equiv}% +\def\expansion{\realbackslash expansion}% +\def\print{\realbackslash print}% +\def\error{\realbackslash error}% +\def\point{\realbackslash point}% +\def\copyright{\realbackslash copyright}% +\def\tclose##1{\realbackslash tclose {##1}}% +\def\code##1{\realbackslash code {##1}}% +\def\uref##1{\realbackslash uref {##1}}% +\def\url##1{\realbackslash url {##1}}% +\def\env##1{\realbackslash env {##1}}% +\def\command##1{\realbackslash command {##1}}% +\def\option##1{\realbackslash option {##1}}% +\def\dotless##1{\realbackslash dotless {##1}}% +\def\samp##1{\realbackslash samp {##1}}% +\def\,##1{\realbackslash ,{##1}}% +\def\t##1{\realbackslash t {##1}}% +\def\r##1{\realbackslash r {##1}}% +\def\i##1{\realbackslash i {##1}}% +\def\b##1{\realbackslash b {##1}}% +\def\sc##1{\realbackslash sc {##1}}% +\def\cite##1{\realbackslash cite {##1}}% +\def\key##1{\realbackslash key {##1}}% +\def\file##1{\realbackslash file {##1}}% +\def\var##1{\realbackslash var {##1}}% +\def\kbd##1{\realbackslash kbd {##1}}% +\def\dfn##1{\realbackslash dfn {##1}}% +\def\emph##1{\realbackslash emph {##1}}% +\def\acronym##1{\realbackslash acronym {##1}}% +% +% Handle some cases of @value -- where the variable name does not +% contain - or _, and the value does not contain any +% (non-fully-expandable) commands. +\let\value = \expandablevalue +% +\unsepspaces +% Turn off macro expansion +\turnoffmacros +} + +% If an index command is used in an @example environment, any spaces +% therein should become regular spaces in the raw index file, not the +% expansion of \tie (\\leavevmode \penalty \@M \ ). +{\obeyspaces + \gdef\unsepspaces{\obeyspaces\let =\space}} + +% \indexnofonts no-ops all font-change commands. +% This is used when outputting the strings to sort the index by. +\def\indexdummyfont#1{#1} +\def\indexdummytex{TeX} +\def\indexdummydots{...} + +\def\indexnofonts{% +% Just ignore accents. +\let\,=\indexdummyfont +\let\"=\indexdummyfont +\let\`=\indexdummyfont +\let\'=\indexdummyfont +\let\^=\indexdummyfont +\let\~=\indexdummyfont +\let\==\indexdummyfont +\let\b=\indexdummyfont +\let\c=\indexdummyfont +\let\d=\indexdummyfont +\let\u=\indexdummyfont +\let\v=\indexdummyfont +\let\H=\indexdummyfont +\let\dotless=\indexdummyfont +% Take care of the plain tex special European modified letters. +\def\oe{oe}% +\def\ae{ae}% +\def\aa{aa}% +\def\OE{OE}% +\def\AE{AE}% +\def\AA{AA}% +\def\o{o}% +\def\O{O}% +\def\l{l}% +\def\L{L}% +\def\ss{ss}% +\let\w=\indexdummyfont +\let\t=\indexdummyfont +\let\r=\indexdummyfont +\let\i=\indexdummyfont +\let\b=\indexdummyfont +\let\emph=\indexdummyfont +\let\strong=\indexdummyfont +\let\cite=\indexdummyfont +\let\sc=\indexdummyfont +%Don't no-op \tt, since it isn't a user-level command +% and is used in the definitions of the active chars like <, >, |... +%\let\tt=\indexdummyfont +\let\tclose=\indexdummyfont +\let\code=\indexdummyfont +\let\url=\indexdummyfont +\let\uref=\indexdummyfont +\let\env=\indexdummyfont +\let\acronym=\indexdummyfont +\let\command=\indexdummyfont +\let\option=\indexdummyfont +\let\file=\indexdummyfont +\let\samp=\indexdummyfont +\let\kbd=\indexdummyfont +\let\key=\indexdummyfont +\let\var=\indexdummyfont +\let\TeX=\indexdummytex +\let\dots=\indexdummydots +\def\@{@}% +} + +% To define \realbackslash, we must make \ not be an escape. +% We must first make another character (@) an escape +% so we do not become unable to do a definition. + +{\catcode`\@=0 \catcode`\\=\other + @gdef@realbackslash{\}} + +\let\indexbackslash=0 %overridden during \printindex. +\let\SETmarginindex=\relax % put index entries in margin (undocumented)? + +% For \ifx comparisons. +\def\emptymacro{\empty} + +% Most index entries go through here, but \dosubind is the general case. +% +\def\doind#1#2{\dosubind{#1}{#2}\empty} + +% Workhorse for all \fooindexes. +% #1 is name of index, #2 is stuff to put there, #3 is subentry -- +% \empty if called from \doind, as we usually are. The main exception +% is with defuns, which call us directly. +% +\def\dosubind#1#2#3{% + % Put the index entry in the margin if desired. + \ifx\SETmarginindex\relax\else + \insert\margin{\hbox{\vrule height8pt depth3pt width0pt #2}}% + \fi + {% + \count255=\lastpenalty + {% + \indexdummies % Must do this here, since \bf, etc expand at this stage + \escapechar=`\\ + {% + \let\folio = 0% We will expand all macros now EXCEPT \folio. + \def\rawbackslashxx{\indexbackslash}% \indexbackslash isn't defined now + % so it will be output as is; and it will print as backslash. + % + \def\thirdarg{#3}% + % + % If third arg is present, precede it with space in sort key. + \ifx\thirdarg\emptymacro + \let\subentry = \empty + \else + \def\subentry{ #3}% + \fi + % + % First process the index entry with all font commands turned + % off to get the string to sort by. + {\indexnofonts \xdef\indexsorttmp{#2\subentry}}% + % + % Now the real index entry with the fonts. + \toks0 = {#2}% + % + % If third (subentry) arg is present, add it to the index + % string. And include a space. + \ifx\thirdarg\emptymacro \else + \toks0 = \expandafter{\the\toks0 \space #3}% + \fi + % + % Set up the complete index entry, with both the sort key + % and the original text, including any font commands. We write + % three arguments to \entry to the .?? file, texindex reduces to + % two when writing the .??s sorted result. + \edef\temp{% + \write\csname#1indfile\endcsname{% + \realbackslash entry{\indexsorttmp}{\folio}{\the\toks0}}% + }% + % + % If a skip is the last thing on the list now, preserve it + % by backing up by \lastskip, doing the \write, then inserting + % the skip again. Otherwise, the whatsit generated by the + % \write will make \lastskip zero. The result is that sequences + % like this: + % @end defun + % @tindex whatever + % @defun ... + % will have extra space inserted, because the \medbreak in the + % start of the @defun won't see the skip inserted by the @end of + % the previous defun. + % + % But don't do any of this if we're not in vertical mode. We + % don't want to do a \vskip and prematurely end a paragraph. + % + % Avoid page breaks due to these extra skips, too. + % + \iflinks + \ifvmode + \skip0 = \lastskip + \ifdim\lastskip = 0pt \else \nobreak\vskip-\lastskip \fi + \fi + % + \temp % do the write + % + % + \ifvmode \ifdim\skip0 = 0pt \else \nobreak\vskip\skip0 \fi \fi + \fi + }% + }% + \penalty\count255 + }% +} + +% The index entry written in the file actually looks like +% \entry {sortstring}{page}{topic} +% or +% \entry {sortstring}{page}{topic}{subtopic} +% The texindex program reads in these files and writes files +% containing these kinds of lines: +% \initial {c} +% before the first topic whose initial is c +% \entry {topic}{pagelist} +% for a topic that is used without subtopics +% \primary {topic} +% for the beginning of a topic that is used with subtopics +% \secondary {subtopic}{pagelist} +% for each subtopic. + +% Define the user-accessible indexing commands +% @findex, @vindex, @kindex, @cindex. + +\def\findex {\fnindex} +\def\kindex {\kyindex} +\def\cindex {\cpindex} +\def\vindex {\vrindex} +\def\tindex {\tpindex} +\def\pindex {\pgindex} + +\def\cindexsub {\begingroup\obeylines\cindexsub} +{\obeylines % +\gdef\cindexsub "#1" #2^^M{\endgroup % +\dosubind{cp}{#2}{#1}}} + +% Define the macros used in formatting output of the sorted index material. + +% @printindex causes a particular index (the ??s file) to get printed. +% It does not print any chapter heading (usually an @unnumbered). +% +\def\printindex{\parsearg\doprintindex} +\def\doprintindex#1{\begingroup + \dobreak \chapheadingskip{10000}% + % + \smallfonts \rm + \tolerance = 9500 + \indexbreaks + % + % See if the index file exists and is nonempty. + % Change catcode of @ here so that if the index file contains + % \initial {@} + % as its first line, TeX doesn't complain about mismatched braces + % (because it thinks @} is a control sequence). + \catcode`\@ = 11 + \openin 1 \jobname.#1s + \ifeof 1 + % \enddoublecolumns gets confused if there is no text in the index, + % and it loses the chapter title and the aux file entries for the + % index. The easiest way to prevent this problem is to make sure + % there is some text. + \putwordIndexNonexistent + \else + % + % If the index file exists but is empty, then \openin leaves \ifeof + % false. We have to make TeX try to read something from the file, so + % it can discover if there is anything in it. + \read 1 to \temp + \ifeof 1 + \putwordIndexIsEmpty + \else + % Index files are almost Texinfo source, but we use \ as the escape + % character. It would be better to use @, but that's too big a change + % to make right now. + \def\indexbackslash{\rawbackslashxx}% + \catcode`\\ = 0 + \escapechar = `\\ + \begindoublecolumns + \input \jobname.#1s + \enddoublecolumns + \fi + \fi + \closein 1 +\endgroup} + +% These macros are used by the sorted index file itself. +% Change them to control the appearance of the index. + +\def\initial#1{{% + % Some minor font changes for the special characters. + \let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt + % + % Remove any glue we may have, we'll be inserting our own. + \removelastskip + % + % We like breaks before the index initials, so insert a bonus. + \penalty -300 + % + % Typeset the initial. Making this add up to a whole number of + % baselineskips increases the chance of the dots lining up from column + % to column. It still won't often be perfect, because of the stretch + % we need before each entry, but it's better. + % + % No shrink because it confuses \balancecolumns. + \vskip 1.67\baselineskip plus .5\baselineskip + \leftline{\secbf #1}% + \vskip .33\baselineskip plus .1\baselineskip + % + % Do our best not to break after the initial. + \nobreak +}} + +% This typesets a paragraph consisting of #1, dot leaders, and then #2 +% flush to the right margin. It is used for index and table of contents +% entries. The paragraph is indented by \leftskip. +% +\def\entry#1#2{\begingroup + % + % Start a new paragraph if necessary, so our assignments below can't + % affect previous text. + \par + % + % Do not fill out the last line with white space. + \parfillskip = 0in + % + % No extra space above this paragraph. + \parskip = 0in + % + % Do not prefer a separate line ending with a hyphen to fewer lines. + \finalhyphendemerits = 0 + % + % \hangindent is only relevant when the entry text and page number + % don't both fit on one line. In that case, bob suggests starting the + % dots pretty far over on the line. Unfortunately, a large + % indentation looks wrong when the entry text itself is broken across + % lines. So we use a small indentation and put up with long leaders. + % + % \hangafter is reset to 1 (which is the value we want) at the start + % of each paragraph, so we need not do anything with that. + \hangindent = 2em + % + % When the entry text needs to be broken, just fill out the first line + % with blank space. + \rightskip = 0pt plus1fil + % + % A bit of stretch before each entry for the benefit of balancing columns. + \vskip 0pt plus1pt + % + % Start a ``paragraph'' for the index entry so the line breaking + % parameters we've set above will have an effect. + \noindent + % + % Insert the text of the index entry. TeX will do line-breaking on it. + #1% + % The following is kludged to not output a line of dots in the index if + % there are no page numbers. The next person who breaks this will be + % cursed by a Unix daemon. + \def\tempa{{\rm }}% + \def\tempb{#2}% + \edef\tempc{\tempa}% + \edef\tempd{\tempb}% + \ifx\tempc\tempd\ \else% + % + % If we must, put the page number on a line of its own, and fill out + % this line with blank space. (The \hfil is overwhelmed with the + % fill leaders glue in \indexdotfill if the page number does fit.) + \hfil\penalty50 + \null\nobreak\indexdotfill % Have leaders before the page number. + % + % The `\ ' here is removed by the implicit \unskip that TeX does as + % part of (the primitive) \par. Without it, a spurious underfull + % \hbox ensues. + \ifpdf + \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph. + \else + \ #2% The page number ends the paragraph. + \fi + \fi% + \par +\endgroup} + +% Like \dotfill except takes at least 1 em. +\def\indexdotfill{\cleaders + \hbox{$\mathsurround=0pt \mkern1.5mu ${\it .}$ \mkern1.5mu$}\hskip 1em plus 1fill} + +\def\primary #1{\line{#1\hfil}} + +\newskip\secondaryindent \secondaryindent=0.5cm + +\def\secondary #1#2{ +{\parfillskip=0in \parskip=0in +\hangindent =1in \hangafter=1 +\noindent\hskip\secondaryindent\hbox{#1}\indexdotfill #2\par +}} + +% Define two-column mode, which we use to typeset indexes. +% Adapted from the TeXbook, page 416, which is to say, +% the manmac.tex format used to print the TeXbook itself. +\catcode`\@=11 + +\newbox\partialpage +\newdimen\doublecolumnhsize + +\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns + % Grab any single-column material above us. + \output = {% + % + % Here is a possibility not foreseen in manmac: if we accumulate a + % whole lot of material, we might end up calling this \output + % routine twice in a row (see the doublecol-lose test, which is + % essentially a couple of indexes with @setchapternewpage off). In + % that case we just ship out what is in \partialpage with the normal + % output routine. Generally, \partialpage will be empty when this + % runs and this will be a no-op. See the indexspread.tex test case. + \ifvoid\partialpage \else + \onepageout{\pagecontents\partialpage}% + \fi + % + \global\setbox\partialpage = \vbox{% + % Unvbox the main output page. + \unvbox\PAGE + \kern-\topskip \kern\baselineskip + }% + }% + \eject % run that output routine to set \partialpage + % + % Use the double-column output routine for subsequent pages. + \output = {\doublecolumnout}% + % + % Change the page size parameters. We could do this once outside this + % routine, in each of @smallbook, @afourpaper, and the default 8.5x11 + % format, but then we repeat the same computation. Repeating a couple + % of assignments once per index is clearly meaningless for the + % execution time, so we may as well do it in one place. + % + % First we halve the line length, less a little for the gutter between + % the columns. We compute the gutter based on the line length, so it + % changes automatically with the paper format. The magic constant + % below is chosen so that the gutter has the same value (well, +-<1pt) + % as it did when we hard-coded it. + % + % We put the result in a separate register, \doublecolumhsize, so we + % can restore it in \pagesofar, after \hsize itself has (potentially) + % been clobbered. + % + \doublecolumnhsize = \hsize + \advance\doublecolumnhsize by -.04154\hsize + \divide\doublecolumnhsize by 2 + \hsize = \doublecolumnhsize + % + % Double the \vsize as well. (We don't need a separate register here, + % since nobody clobbers \vsize.) + \advance\vsize by -\ht\partialpage + \vsize = 2\vsize +} + +% The double-column output routine for all double-column pages except +% the last. +% +\def\doublecolumnout{% + \splittopskip=\topskip \splitmaxdepth=\maxdepth + % Get the available space for the double columns -- the normal + % (undoubled) page height minus any material left over from the + % previous page. + \dimen@ = \vsize + \divide\dimen@ by 2 + % + % box0 will be the left-hand column, box2 the right. + \setbox0=\vsplit255 to\dimen@ \setbox2=\vsplit255 to\dimen@ + \onepageout\pagesofar + \unvbox255 + \penalty\outputpenalty +} +\def\pagesofar{% + % Re-output the contents of the output page -- any previous material, + % followed by the two boxes we just split, in box0 and box2. + \unvbox\partialpage + % + \hsize = \doublecolumnhsize + \wd0=\hsize \wd2=\hsize + \hbox to\pagewidth{\box0\hfil\box2}% +} +\def\enddoublecolumns{% + \output = {% + % Split the last of the double-column material. Leave it on the + % current page, no automatic page break. + \balancecolumns + % + % If we end up splitting too much material for the current page, + % though, there will be another page break right after this \output + % invocation ends. Having called \balancecolumns once, we do not + % want to call it again. Therefore, reset \output to its normal + % definition right away. (We hope \balancecolumns will never be + % called on to balance too much material, but if it is, this makes + % the output somewhat more palatable.) + \global\output = {\onepageout{\pagecontents\PAGE}}% + }% + \eject + \endgroup % started in \begindoublecolumns + % + % \pagegoal was set to the doubled \vsize above, since we restarted + % the current page. We're now back to normal single-column + % typesetting, so reset \pagegoal to the normal \vsize (after the + % \endgroup where \vsize got restored). + \pagegoal = \vsize +} +\def\balancecolumns{% + % Called at the end of the double column material. + \setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120. + \dimen@ = \ht0 + \advance\dimen@ by \topskip + \advance\dimen@ by-\baselineskip + \divide\dimen@ by 2 % target to split to + %debug\message{final 2-column material height=\the\ht0, target=\the\dimen@.}% + \splittopskip = \topskip + % Loop until we get a decent breakpoint. + {% + \vbadness = 10000 + \loop + \global\setbox3 = \copy0 + \global\setbox1 = \vsplit3 to \dimen@ + \ifdim\ht3>\dimen@ + \global\advance\dimen@ by 1pt + \repeat + }% + %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}% + \setbox0=\vbox to\dimen@{\unvbox1}% + \setbox2=\vbox to\dimen@{\unvbox3}% + % + \pagesofar +} +\catcode`\@ = \other + + +\message{sectioning,} +% Chapters, sections, etc. + +\newcount\chapno +\newcount\secno \secno=0 +\newcount\subsecno \subsecno=0 +\newcount\subsubsecno \subsubsecno=0 + +% This counter is funny since it counts through charcodes of letters A, B, ... +\newcount\appendixno \appendixno = `\@ +% \def\appendixletter{\char\the\appendixno} +% We do the following for the sake of pdftex, which needs the actual +% letter in the expansion, not just typeset. +\def\appendixletter{% + \ifnum\appendixno=`A A% + \else\ifnum\appendixno=`B B% + \else\ifnum\appendixno=`C C% + \else\ifnum\appendixno=`D D% + \else\ifnum\appendixno=`E E% + \else\ifnum\appendixno=`F F% + \else\ifnum\appendixno=`G G% + \else\ifnum\appendixno=`H H% + \else\ifnum\appendixno=`I I% + \else\ifnum\appendixno=`J J% + \else\ifnum\appendixno=`K K% + \else\ifnum\appendixno=`L L% + \else\ifnum\appendixno=`M M% + \else\ifnum\appendixno=`N N% + \else\ifnum\appendixno=`O O% + \else\ifnum\appendixno=`P P% + \else\ifnum\appendixno=`Q Q% + \else\ifnum\appendixno=`R R% + \else\ifnum\appendixno=`S S% + \else\ifnum\appendixno=`T T% + \else\ifnum\appendixno=`U U% + \else\ifnum\appendixno=`V V% + \else\ifnum\appendixno=`W W% + \else\ifnum\appendixno=`X X% + \else\ifnum\appendixno=`Y Y% + \else\ifnum\appendixno=`Z Z% + % The \the is necessary, despite appearances, because \appendixletter is + % expanded while writing the .toc file. \char\appendixno is not + % expandable, thus it is written literally, thus all appendixes come out + % with the same letter (or @) in the toc without it. + \else\char\the\appendixno + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} + +% Each @chapter defines this as the name of the chapter. +% page headings and footings can use it. @section does likewise. +\def\thischapter{} +\def\thissection{} + +\newcount\absseclevel % used to calculate proper heading level +\newcount\secbase\secbase=0 % @raise/lowersections modify this count + +% @raisesections: treat @section as chapter, @subsection as section, etc. +\def\raisesections{\global\advance\secbase by -1} +\let\up=\raisesections % original BFox name + +% @lowersections: treat @chapter as section, @section as subsection, etc. +\def\lowersections{\global\advance\secbase by 1} +\let\down=\lowersections % original BFox name + +% Choose a numbered-heading macro +% #1 is heading level if unmodified by @raisesections or @lowersections +% #2 is text for heading +\def\numhead#1#2{\absseclevel=\secbase\advance\absseclevel by #1 +\ifcase\absseclevel + \chapterzzz{#2} +\or + \seczzz{#2} +\or + \numberedsubseczzz{#2} +\or + \numberedsubsubseczzz{#2} +\else + \ifnum \absseclevel<0 + \chapterzzz{#2} + \else + \numberedsubsubseczzz{#2} + \fi +\fi +} + +% like \numhead, but chooses appendix heading levels +\def\apphead#1#2{\absseclevel=\secbase\advance\absseclevel by #1 +\ifcase\absseclevel + \appendixzzz{#2} +\or + \appendixsectionzzz{#2} +\or + \appendixsubseczzz{#2} +\or + \appendixsubsubseczzz{#2} +\else + \ifnum \absseclevel<0 + \appendixzzz{#2} + \else + \appendixsubsubseczzz{#2} + \fi +\fi +} + +% like \numhead, but chooses numberless heading levels +\def\unnmhead#1#2{\absseclevel=\secbase\advance\absseclevel by #1 +\ifcase\absseclevel + \unnumberedzzz{#2} +\or + \unnumberedseczzz{#2} +\or + \unnumberedsubseczzz{#2} +\or + \unnumberedsubsubseczzz{#2} +\else + \ifnum \absseclevel<0 + \unnumberedzzz{#2} + \else + \unnumberedsubsubseczzz{#2} + \fi +\fi +} + +% @chapter, @appendix, @unnumbered. +\def\thischaptername{No Chapter Title} +\outer\def\chapter{\parsearg\chapteryyy} +\def\chapteryyy #1{\numhead0{#1}} % normally numhead0 calls chapterzzz +\def\chapterzzz #1{% +\secno=0 \subsecno=0 \subsubsecno=0 +\global\advance \chapno by 1 \message{\putwordChapter\space \the\chapno}% +\chapmacro {#1}{\the\chapno}% +\gdef\thissection{#1}% +\gdef\thischaptername{#1}% +% We don't substitute the actual chapter name into \thischapter +% because we don't want its macros evaluated now. +\xdef\thischapter{\putwordChapter{} \the\chapno: \noexpand\thischaptername}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash chapentry{\the\toks0}% + {\the\chapno}}}% +\temp +\donoderef +\global\let\section = \numberedsec +\global\let\subsection = \numberedsubsec +\global\let\subsubsection = \numberedsubsubsec +} + +\outer\def\appendix{\parsearg\appendixyyy} +\def\appendixyyy #1{\apphead0{#1}} % normally apphead0 calls appendixzzz +\def\appendixzzz #1{% +\secno=0 \subsecno=0 \subsubsecno=0 +\global\advance \appendixno by 1 +\message{\putwordAppendix\space \appendixletter}% +\chapmacro {#1}{\putwordAppendix{} \appendixletter}% +\gdef\thissection{#1}% +\gdef\thischaptername{#1}% +\xdef\thischapter{\putwordAppendix{} \appendixletter: \noexpand\thischaptername}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash chapentry{\the\toks0}% + {\putwordAppendix{} \appendixletter}}}% +\temp +\appendixnoderef +\global\let\section = \appendixsec +\global\let\subsection = \appendixsubsec +\global\let\subsubsection = \appendixsubsubsec +} + +% @centerchap is like @unnumbered, but the heading is centered. +\outer\def\centerchap{\parsearg\centerchapyyy} +\def\centerchapyyy #1{{\let\unnumbchapmacro=\centerchapmacro \unnumberedyyy{#1}}} + +% @top is like @unnumbered. +\outer\def\top{\parsearg\unnumberedyyy} + +\outer\def\unnumbered{\parsearg\unnumberedyyy} +\def\unnumberedyyy #1{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz +\def\unnumberedzzz #1{% +\secno=0 \subsecno=0 \subsubsecno=0 +% +% This used to be simply \message{#1}, but TeX fully expands the +% argument to \message. Therefore, if #1 contained @-commands, TeX +% expanded them. For example, in `@unnumbered The @cite{Book}', TeX +% expanded @cite (which turns out to cause errors because \cite is meant +% to be executed, not expanded). +% +% Anyway, we don't want the fully-expanded definition of @cite to appear +% as a result of the \message, we just want `@cite' itself. We use +% \the to achieve this: TeX expands \the only once, +% simply yielding the contents of . (We also do this for +% the toc entries.) +\toks0 = {#1}\message{(\the\toks0)}% +% +\unnumbchapmacro {#1}% +\gdef\thischapter{#1}\gdef\thissection{#1}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash unnumbchapentry{\the\toks0}}}% +\temp +\unnumbnoderef +\global\let\section = \unnumberedsec +\global\let\subsection = \unnumberedsubsec +\global\let\subsubsection = \unnumberedsubsubsec +} + +% Sections. +\outer\def\numberedsec{\parsearg\secyyy} +\def\secyyy #1{\numhead1{#1}} % normally calls seczzz +\def\seczzz #1{% +\subsecno=0 \subsubsecno=0 \global\advance \secno by 1 % +\gdef\thissection{#1}\secheading {#1}{\the\chapno}{\the\secno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash secentry{\the\toks0}% + {\the\chapno}{\the\secno}}}% +\temp +\donoderef +\nobreak +} + +\outer\def\appendixsection{\parsearg\appendixsecyyy} +\outer\def\appendixsec{\parsearg\appendixsecyyy} +\def\appendixsecyyy #1{\apphead1{#1}} % normally calls appendixsectionzzz +\def\appendixsectionzzz #1{% +\subsecno=0 \subsubsecno=0 \global\advance \secno by 1 % +\gdef\thissection{#1}\secheading {#1}{\appendixletter}{\the\secno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash secentry{\the\toks0}% + {\appendixletter}{\the\secno}}}% +\temp +\appendixnoderef +\nobreak +} + +\outer\def\unnumberedsec{\parsearg\unnumberedsecyyy} +\def\unnumberedsecyyy #1{\unnmhead1{#1}} % normally calls unnumberedseczzz +\def\unnumberedseczzz #1{% +\plainsecheading {#1}\gdef\thissection{#1}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsecentry{\the\toks0}}}% +\temp +\unnumbnoderef +\nobreak +} + +% Subsections. +\outer\def\numberedsubsec{\parsearg\numberedsubsecyyy} +\def\numberedsubsecyyy #1{\numhead2{#1}} % normally calls numberedsubseczzz +\def\numberedsubseczzz #1{% +\gdef\thissection{#1}\subsubsecno=0 \global\advance \subsecno by 1 % +\subsecheading {#1}{\the\chapno}{\the\secno}{\the\subsecno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash subsecentry{\the\toks0}% + {\the\chapno}{\the\secno}{\the\subsecno}}}% +\temp +\donoderef +\nobreak +} + +\outer\def\appendixsubsec{\parsearg\appendixsubsecyyy} +\def\appendixsubsecyyy #1{\apphead2{#1}} % normally calls appendixsubseczzz +\def\appendixsubseczzz #1{% +\gdef\thissection{#1}\subsubsecno=0 \global\advance \subsecno by 1 % +\subsecheading {#1}{\appendixletter}{\the\secno}{\the\subsecno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash subsecentry{\the\toks0}% + {\appendixletter}{\the\secno}{\the\subsecno}}}% +\temp +\appendixnoderef +\nobreak +} + +\outer\def\unnumberedsubsec{\parsearg\unnumberedsubsecyyy} +\def\unnumberedsubsecyyy #1{\unnmhead2{#1}} %normally calls unnumberedsubseczzz +\def\unnumberedsubseczzz #1{% +\plainsubsecheading {#1}\gdef\thissection{#1}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsubsecentry% + {\the\toks0}}}% +\temp +\unnumbnoderef +\nobreak +} + +% Subsubsections. +\outer\def\numberedsubsubsec{\parsearg\numberedsubsubsecyyy} +\def\numberedsubsubsecyyy #1{\numhead3{#1}} % normally numberedsubsubseczzz +\def\numberedsubsubseczzz #1{% +\gdef\thissection{#1}\global\advance \subsubsecno by 1 % +\subsubsecheading {#1} + {\the\chapno}{\the\secno}{\the\subsecno}{\the\subsubsecno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash subsubsecentry{\the\toks0}% + {\the\chapno}{\the\secno}{\the\subsecno}{\the\subsubsecno}}}% +\temp +\donoderef +\nobreak +} + +\outer\def\appendixsubsubsec{\parsearg\appendixsubsubsecyyy} +\def\appendixsubsubsecyyy #1{\apphead3{#1}} % normally appendixsubsubseczzz +\def\appendixsubsubseczzz #1{% +\gdef\thissection{#1}\global\advance \subsubsecno by 1 % +\subsubsecheading {#1} + {\appendixletter}{\the\secno}{\the\subsecno}{\the\subsubsecno}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash subsubsecentry{\the\toks0}% + {\appendixletter}{\the\secno}{\the\subsecno}{\the\subsubsecno}}}% +\temp +\appendixnoderef +\nobreak +} + +\outer\def\unnumberedsubsubsec{\parsearg\unnumberedsubsubsecyyy} +\def\unnumberedsubsubsecyyy #1{\unnmhead3{#1}} %normally unnumberedsubsubseczzz +\def\unnumberedsubsubseczzz #1{% +\plainsubsubsecheading {#1}\gdef\thissection{#1}% +\toks0 = {#1}% +\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsubsubsecentry% + {\the\toks0}}}% +\temp +\unnumbnoderef +\nobreak +} + +% These are variants which are not "outer", so they can appear in @ifinfo. +% Actually, they should now be obsolete; ordinary section commands should work. +\def\infotop{\parsearg\unnumberedzzz} +\def\infounnumbered{\parsearg\unnumberedzzz} +\def\infounnumberedsec{\parsearg\unnumberedseczzz} +\def\infounnumberedsubsec{\parsearg\unnumberedsubseczzz} +\def\infounnumberedsubsubsec{\parsearg\unnumberedsubsubseczzz} + +\def\infoappendix{\parsearg\appendixzzz} +\def\infoappendixsec{\parsearg\appendixseczzz} +\def\infoappendixsubsec{\parsearg\appendixsubseczzz} +\def\infoappendixsubsubsec{\parsearg\appendixsubsubseczzz} + +\def\infochapter{\parsearg\chapterzzz} +\def\infosection{\parsearg\sectionzzz} +\def\infosubsection{\parsearg\subsectionzzz} +\def\infosubsubsection{\parsearg\subsubsectionzzz} + +% These macros control what the section commands do, according +% to what kind of chapter we are in (ordinary, appendix, or unnumbered). +% Define them by default for a numbered chapter. +\global\let\section = \numberedsec +\global\let\subsection = \numberedsubsec +\global\let\subsubsection = \numberedsubsubsec + +% Define @majorheading, @heading and @subheading + +% NOTE on use of \vbox for chapter headings, section headings, and such: +% 1) We use \vbox rather than the earlier \line to permit +% overlong headings to fold. +% 2) \hyphenpenalty is set to 10000 because hyphenation in a +% heading is obnoxious; this forbids it. +% 3) Likewise, headings look best if no \parindent is used, and +% if justification is not attempted. Hence \raggedright. + + +\def\majorheading{\parsearg\majorheadingzzz} +\def\majorheadingzzz #1{% +{\advance\chapheadingskip by 10pt \chapbreak }% +{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt\raggedright + \rm #1\hfill}}\bigskip \par\penalty 200} + +\def\chapheading{\parsearg\chapheadingzzz} +\def\chapheadingzzz #1{\chapbreak % +{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt\raggedright + \rm #1\hfill}}\bigskip \par\penalty 200} + +% @heading, @subheading, @subsubheading. +\def\heading{\parsearg\plainsecheading} +\def\subheading{\parsearg\plainsubsecheading} +\def\subsubheading{\parsearg\plainsubsubsecheading} + +% These macros generate a chapter, section, etc. heading only +% (including whitespace, linebreaking, etc. around it), +% given all the information in convenient, parsed form. + +%%% Args are the skip and penalty (usually negative) +\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} + +\def\setchapterstyle #1 {\csname CHAPF#1\endcsname} + +%%% Define plain chapter starts, and page on/off switching for it +% Parameter controlling skip before chapter headings (if needed) + +\newskip\chapheadingskip + +\def\chapbreak{\dobreak \chapheadingskip {-4000}} +\def\chappager{\par\vfill\supereject} +\def\chapoddpage{\chappager \ifodd\pageno \else \hbox to 0pt{} \chappager\fi} + +\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname} + +\def\CHAPPAGoff{% +\global\let\contentsalignmacro = \chappager +\global\let\pchapsepmacro=\chapbreak +\global\let\pagealignmacro=\chappager} + +\def\CHAPPAGon{% +\global\let\contentsalignmacro = \chappager +\global\let\pchapsepmacro=\chappager +\global\let\pagealignmacro=\chappager +\global\def\HEADINGSon{\HEADINGSsingle}} + +\def\CHAPPAGodd{ +\global\let\contentsalignmacro = \chapoddpage +\global\let\pchapsepmacro=\chapoddpage +\global\let\pagealignmacro=\chapoddpage +\global\def\HEADINGSon{\HEADINGSdouble}} + +\CHAPPAGon + +\def\CHAPFplain{ +\global\let\chapmacro=\chfplain +\global\let\unnumbchapmacro=\unnchfplain +\global\let\centerchapmacro=\centerchfplain} + +% Plain chapter opening. +% #1 is the text, #2 the chapter number or empty if unnumbered. +\def\chfplain#1#2{% + \pchapsepmacro + {% + \chapfonts \rm + \def\chapnum{#2}% + \setbox0 = \hbox{#2\ifx\chapnum\empty\else\enspace\fi}% + \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright + \hangindent = \wd0 \centerparametersmaybe + \unhbox0 #1\par}% + }% + \nobreak\bigskip % no page break after a chapter title + \nobreak +} + +% Plain opening for unnumbered. +\def\unnchfplain#1{\chfplain{#1}{}} + +% @centerchap -- centered and unnumbered. +\let\centerparametersmaybe = \relax +\def\centerchfplain#1{{% + \def\centerparametersmaybe{% + \advance\rightskip by 3\rightskip + \leftskip = \rightskip + \parfillskip = 0pt + }% + \chfplain{#1}{}% +}} + +\CHAPFplain % The default + +\def\unnchfopen #1{% +\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt\raggedright + \rm #1\hfill}}\bigskip \par\nobreak +} + +\def\chfopen #1#2{\chapoddpage {\chapfonts +\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}% +\par\penalty 5000 % +} + +\def\centerchfopen #1{% +\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 + \parindent=0pt + \hfill {\rm #1}\hfill}}\bigskip \par\nobreak +} + +\def\CHAPFopen{ +\global\let\chapmacro=\chfopen +\global\let\unnumbchapmacro=\unnchfopen +\global\let\centerchapmacro=\centerchfopen} + + +% Section titles. +\newskip\secheadingskip +\def\secheadingbreak{\dobreak \secheadingskip {-1000}} +\def\secheading#1#2#3{\sectionheading{sec}{#2.#3}{#1}} +\def\plainsecheading#1{\sectionheading{sec}{}{#1}} + +% Subsection titles. +\newskip \subsecheadingskip +\def\subsecheadingbreak{\dobreak \subsecheadingskip {-500}} +\def\subsecheading#1#2#3#4{\sectionheading{subsec}{#2.#3.#4}{#1}} +\def\plainsubsecheading#1{\sectionheading{subsec}{}{#1}} + +% Subsubsection titles. +\let\subsubsecheadingskip = \subsecheadingskip +\let\subsubsecheadingbreak = \subsecheadingbreak +\def\subsubsecheading#1#2#3#4#5{\sectionheading{subsubsec}{#2.#3.#4.#5}{#1}} +\def\plainsubsubsecheading#1{\sectionheading{subsubsec}{}{#1}} + + +% Print any size section title. +% +% #1 is the section type (sec/subsec/subsubsec), #2 is the section +% number (maybe empty), #3 the text. +\def\sectionheading#1#2#3{% + {% + \expandafter\advance\csname #1headingskip\endcsname by \parskip + \csname #1headingbreak\endcsname + }% + {% + % Switch to the right set of fonts. + \csname #1fonts\endcsname \rm + % + % Only insert the separating space if we have a section number. + \def\secnum{#2}% + \setbox0 = \hbox{#2\ifx\secnum\empty\else\enspace\fi}% + % + \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright + \hangindent = \wd0 % zero if no section number + \unhbox0 #3}% + }% + \ifdim\parskip<10pt \nobreak\kern10pt\nobreak\kern-\parskip\fi \nobreak +} + + +\message{toc,} +% Table of contents. +\newwrite\tocfile + +% Write an entry to the toc file, opening it if necessary. +% Called from @chapter, etc. We supply {\folio} at the end of the +% argument, which will end up as the last argument to the \...entry macro. +% +% We open the .toc file here instead of at @setfilename or any other +% given time so that @contents can be put in the document anywhere. +% +\newif\iftocfileopened +\def\writetocentry#1{% + \iftocfileopened\else + \immediate\openout\tocfile = \jobname.toc + \global\tocfileopenedtrue + \fi + \iflinks \write\tocfile{#1{\folio}}\fi +} + +\newskip\contentsrightmargin \contentsrightmargin=1in +\newcount\savepageno +\newcount\lastnegativepageno \lastnegativepageno = -1 + +% Finish up the main text and prepare to read what we've written +% to \tocfile. +% +\def\startcontents#1{% + % If @setchapternewpage on, and @headings double, the contents should + % start on an odd page, unlike chapters. Thus, we maintain + % \contentsalignmacro in parallel with \pagealignmacro. + % From: Torbjorn Granlund + \contentsalignmacro + \immediate\closeout\tocfile + % + % Don't need to put `Contents' or `Short Contents' in the headline. + % It is abundantly clear what they are. + \unnumbchapmacro{#1}\def\thischapter{}% + \savepageno = \pageno + \begingroup % Set up to handle contents files properly. + \catcode`\\=0 \catcode`\{=1 \catcode`\}=2 \catcode`\@=11 + % We can't do this, because then an actual ^ in a section + % title fails, e.g., @chapter ^ -- exponentiation. --karl, 9jul97. + %\catcode`\^=7 % to see ^^e4 as \"a etc. juha@piuha.ydi.vtt.fi + \raggedbottom % Worry more about breakpoints than the bottom. + \advance\hsize by -\contentsrightmargin % Don't use the full line length. + % + % Roman numerals for page numbers. + \ifnum \pageno>0 \pageno = \lastnegativepageno \fi +} + + +% Normal (long) toc. +\def\contents{% + \startcontents{\putwordTOC}% + \openin 1 \jobname.toc + \ifeof 1 \else + \closein 1 + \input \jobname.toc + \fi + \vfill \eject + \contentsalignmacro % in case @setchapternewpage odd is in effect + \pdfmakeoutlines + \endgroup + \lastnegativepageno = \pageno + \pageno = \savepageno +} + +% And just the chapters. +\def\summarycontents{% + \startcontents{\putwordShortTOC}% + % + \let\chapentry = \shortchapentry + \let\unnumbchapentry = \shortunnumberedentry + % We want a true roman here for the page numbers. + \secfonts + \let\rm=\shortcontrm \let\bf=\shortcontbf \let\sl=\shortcontsl + \rm + \hyphenpenalty = 10000 + \advance\baselineskip by 1pt % Open it up a little. + \def\secentry ##1##2##3##4{} + \def\unnumbsecentry ##1##2{} + \def\subsecentry ##1##2##3##4##5{} + \def\unnumbsubsecentry ##1##2{} + \def\subsubsecentry ##1##2##3##4##5##6{} + \def\unnumbsubsubsecentry ##1##2{} + \openin 1 \jobname.toc + \ifeof 1 \else + \closein 1 + \input \jobname.toc + \fi + \vfill \eject + \contentsalignmacro % in case @setchapternewpage odd is in effect + \endgroup + \lastnegativepageno = \pageno + \pageno = \savepageno +} +\let\shortcontents = \summarycontents + +\ifpdf + \pdfcatalog{/PageMode /UseOutlines}% +\fi + +% These macros generate individual entries in the table of contents. +% The first argument is the chapter or section name. +% The last argument is the page number. +% The arguments in between are the chapter number, section number, ... + +% Chapter-level things, for both the long and short contents. +\def\chapentry#1#2#3{\dochapentry{#2\labelspace#1}{#3}} + +% See comments in \dochapentry re vbox and related settings +\def\shortchapentry#1#2#3{% + \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#3\egroup}% +} + +% Typeset the label for a chapter or appendix for the short contents. +% The arg is, e.g. `Appendix A' for an appendix, or `3' for a chapter. +% We could simplify the code here by writing out an \appendixentry +% command in the toc file for appendices, instead of using \chapentry +% for both, but it doesn't seem worth it. +% +\newdimen\shortappendixwidth +% +\def\shortchaplabel#1{% + % Compute width of word "Appendix", may change with language. + \setbox0 = \hbox{\shortcontrm \putwordAppendix}% + \shortappendixwidth = \wd0 + % + % We typeset #1 in a box of constant width, regardless of the text of + % #1, so the chapter titles will come out aligned. + \setbox0 = \hbox{#1}% + \dimen0 = \ifdim\wd0 > \shortappendixwidth \shortappendixwidth \else 0pt \fi + % + % This space should be plenty, since a single number is .5em, and the + % widest letter (M) is 1em, at least in the Computer Modern fonts. + % (This space doesn't include the extra space that gets added after + % the label; that gets put in by \shortchapentry above.) + \advance\dimen0 by 1.1em + \hbox to \dimen0{#1\hfil}% +} + +\def\unnumbchapentry#1#2{\dochapentry{#1}{#2}} +\def\shortunnumberedentry#1#2{\tocentry{#1}{\doshortpageno\bgroup#2\egroup}} + +% Sections. +\def\secentry#1#2#3#4{\dosecentry{#2.#3\labelspace#1}{#4}} +\def\unnumbsecentry#1#2{\dosecentry{#1}{#2}} + +% Subsections. +\def\subsecentry#1#2#3#4#5{\dosubsecentry{#2.#3.#4\labelspace#1}{#5}} +\def\unnumbsubsecentry#1#2{\dosubsecentry{#1}{#2}} + +% And subsubsections. +\def\subsubsecentry#1#2#3#4#5#6{% + \dosubsubsecentry{#2.#3.#4.#5\labelspace#1}{#6}} +\def\unnumbsubsubsecentry#1#2{\dosubsubsecentry{#1}{#2}} + +% This parameter controls the indentation of the various levels. +\newdimen\tocindent \tocindent = 3pc + +% Now for the actual typesetting. In all these, #1 is the text and #2 is the +% page number. +% +% If the toc has to be broken over pages, we want it to be at chapters +% if at all possible; hence the \penalty. +\def\dochapentry#1#2{% + \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip + \begingroup + \chapentryfonts + \tocentry{#1}{\dopageno\bgroup#2\egroup}% + \endgroup + \nobreak\vskip .25\baselineskip plus.1\baselineskip +} + +\def\dosecentry#1#2{\begingroup + \secentryfonts \leftskip=\tocindent + \tocentry{#1}{\dopageno\bgroup#2\egroup}% +\endgroup} + +\def\dosubsecentry#1#2{\begingroup + \subsecentryfonts \leftskip=2\tocindent + \tocentry{#1}{\dopageno\bgroup#2\egroup}% +\endgroup} + +\def\dosubsubsecentry#1#2{\begingroup + \subsubsecentryfonts \leftskip=3\tocindent + \tocentry{#1}{\dopageno\bgroup#2\egroup}% +\endgroup} + +% Final typesetting of a toc entry; we use the same \entry macro as for +% the index entries, but we want to suppress hyphenation here. (We +% can't do that in the \entry macro, since index entries might consist +% of hyphenated-identifiers-that-do-not-fit-on-a-line-and-nothing-else.) +\def\tocentry#1#2{\begingroup + \vskip 0pt plus1pt % allow a little stretch for the sake of nice page breaks + % Do not use \turnoffactive in these arguments. Since the toc is + % typeset in cmr, so characters such as _ would come out wrong; we + % have to do the usual translation tricks. + \entry{#1}{#2}% +\endgroup} + +% Space between chapter (or whatever) number and the title. +\def\labelspace{\hskip1em \relax} + +\def\dopageno#1{{\rm #1}} +\def\doshortpageno#1{{\rm #1}} + +\def\chapentryfonts{\secfonts \rm} +\def\secentryfonts{\textfonts} +\let\subsecentryfonts = \textfonts +\let\subsubsecentryfonts = \textfonts + + +\message{environments,} +% @foo ... @end foo. + +% Since these characters are used in examples, it should be an even number of +% \tt widths. Each \tt character is 1en, so two makes it 1em. +% Furthermore, these definitions must come after we define our fonts. +\newbox\dblarrowbox \newbox\longdblarrowbox +\newbox\pushcharbox \newbox\bullbox +\newbox\equivbox \newbox\errorbox + +%{\tentt +%\global\setbox\dblarrowbox = \hbox to 1em{\hfil$\Rightarrow$\hfil} +%\global\setbox\longdblarrowbox = \hbox to 1em{\hfil$\mapsto$\hfil} +%\global\setbox\pushcharbox = \hbox to 1em{\hfil$\dashv$\hfil} +%\global\setbox\equivbox = \hbox to 1em{\hfil$\ptexequiv$\hfil} +% Adapted from the manmac format (p.420 of TeXbook) +%\global\setbox\bullbox = \hbox to 1em{\kern.15em\vrule height .75ex width .85ex +% depth .1ex\hfil} +%} + +% @point{}, @result{}, @expansion{}, @print{}, @equiv{}. +\def\point{$\star$} +\def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} +\def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}} +\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} +\def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} + +% Adapted from the TeXbook's \boxit. +{\tentt \global\dimen0 = 3em}% Width of the box. +\dimen2 = .55pt % Thickness of rules +% The text. (`r' is open on the right, `e' somewhat less so on the left.) +\setbox0 = \hbox{\kern-.75pt \tensf error\kern-1.5pt} + +\global\setbox\errorbox=\hbox to \dimen0{\hfil + \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. + \advance\hsize by -2\dimen2 % Rules. + \vbox{ + \hrule height\dimen2 + \hbox{\vrule width\dimen2 \kern3pt % Space to left of text. + \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below. + \kern3pt\vrule width\dimen2}% Space to right. + \hrule height\dimen2} + \hfil} + +% The @error{} command. +\def\error{\leavevmode\lower.7ex\copy\errorbox} + +% @tex ... @end tex escapes into raw Tex temporarily. +% One exception: @ is still an escape character, so that @end tex works. +% But \@ or @@ will get a plain tex @ character. + +\def\tex{\begingroup + \catcode `\\=0 \catcode `\{=1 \catcode `\}=2 + \catcode `\$=3 \catcode `\&=4 \catcode `\#=6 + \catcode `\^=7 \catcode `\_=8 \catcode `\~=13 \let~=\tie + \catcode `\%=14 + \catcode 43=12 % plus + \catcode`\"=12 + \catcode`\==12 + \catcode`\|=12 + \catcode`\<=12 + \catcode`\>=12 + \escapechar=`\\ + % + \let\b=\ptexb + \let\bullet=\ptexbullet + \let\c=\ptexc + \let\,=\ptexcomma + \let\.=\ptexdot + \let\dots=\ptexdots + \let\equiv=\ptexequiv + \let\!=\ptexexclam + \let\i=\ptexi + \let\{=\ptexlbrace + \let\+=\tabalign + \let\}=\ptexrbrace + \let\*=\ptexstar + \let\t=\ptext + % + \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% + \def\enddots{\relax\ifmmode\endldots\else$\mathsurround=0pt \endldots\,$\fi}% + \def\@{@}% +\let\Etex=\endgroup} + +% Define @lisp ... @endlisp. +% @lisp does a \begingroup so it can rebind things, +% including the definition of @endlisp (which normally is erroneous). + +% Amount to narrow the margins by for @lisp. +\newskip\lispnarrowing \lispnarrowing=0.4in + +% This is the definition that ^^M gets inside @lisp, @example, and other +% such environments. \null is better than a space, since it doesn't +% have any width. +\def\lisppar{\null\endgraf} + +% Make each space character in the input produce a normal interword +% space in the output. Don't allow a line break at this space, as this +% is used only in environments like @example, where each line of input +% should produce a line of output anyway. +% +{\obeyspaces % +\gdef\sepspaces{\obeyspaces\let =\tie}} + +% Define \obeyedspace to be our active space, whatever it is. This is +% for use in \parsearg. +{\sepspaces% +\global\let\obeyedspace= } + +% This space is always present above and below environments. +\newskip\envskipamount \envskipamount = 0pt + +% Make spacing and below environment symmetrical. We use \parskip here +% to help in doing that, since in @example-like environments \parskip +% is reset to zero; thus the \afterenvbreak inserts no space -- but the +% start of the next paragraph will insert \parskip +% +\def\aboveenvbreak{{\advance\envskipamount by \parskip +\endgraf \ifdim\lastskip<\envskipamount +\removelastskip \penalty-50 \vskip\envskipamount \fi}} + +\let\afterenvbreak = \aboveenvbreak + +% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins. +\let\nonarrowing=\relax + +% @cartouche ... @end cartouche: draw rectangle w/rounded corners around +% environment contents. +\font\circle=lcircle10 +\newdimen\circthick +\newdimen\cartouter\newdimen\cartinner +\newskip\normbskip\newskip\normpskip\newskip\normlskip +\circthick=\fontdimen8\circle +% +\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth +\def\ctr{{\hskip 6pt\circle\char'010}} +\def\cbl{{\circle\char'012\hskip -6pt}} +\def\cbr{{\hskip 6pt\circle\char'011}} +\def\carttop{\hbox to \cartouter{\hskip\lskip + \ctl\leaders\hrule height\circthick\hfil\ctr + \hskip\rskip}} +\def\cartbot{\hbox to \cartouter{\hskip\lskip + \cbl\leaders\hrule height\circthick\hfil\cbr + \hskip\rskip}} +% +\newskip\lskip\newskip\rskip + +\long\def\cartouche{% +\begingroup + \lskip=\leftskip \rskip=\rightskip + \leftskip=0pt\rightskip=0pt %we want these *outside*. + \cartinner=\hsize \advance\cartinner by-\lskip + \advance\cartinner by-\rskip + \cartouter=\hsize + \advance\cartouter by 18.4pt % allow for 3pt kerns on either +% side, and for 6pt waste from +% each corner char, and rule thickness + \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip + % Flag to tell @lisp, etc., not to narrow margin. + \let\nonarrowing=\comment + \vbox\bgroup + \baselineskip=0pt\parskip=0pt\lineskip=0pt + \carttop + \hbox\bgroup + \hskip\lskip + \vrule\kern3pt + \vbox\bgroup + \hsize=\cartinner + \kern3pt + \begingroup + \baselineskip=\normbskip + \lineskip=\normlskip + \parskip=\normpskip + \vskip -\parskip +\def\Ecartouche{% + \endgroup + \kern3pt + \egroup + \kern3pt\vrule + \hskip\rskip + \egroup + \cartbot + \egroup +\endgroup +}} + + +% This macro is called at the beginning of all the @example variants, +% inside a group. +\def\nonfillstart{% + \aboveenvbreak + \inENV % This group ends at the end of the body + \hfuzz = 12pt % Don't be fussy + \sepspaces % Make spaces be word-separators rather than space tokens. + \singlespace + \let\par = \lisppar % don't ignore blank lines + \obeylines % each line of input is a line of output + \parskip = 0pt + \parindent = 0pt + \emergencystretch = 0pt % don't try to avoid overfull boxes + % @cartouche defines \nonarrowing to inhibit narrowing + % at next level down. + \ifx\nonarrowing\relax + \advance \leftskip by \lispnarrowing + \exdentamount=\lispnarrowing + \let\exdent=\nofillexdent + \let\nonarrowing=\relax + \fi +} + +% Define the \E... control sequence only if we are inside the particular +% environment, so the error checking in \end will work. +% +% To end an @example-like environment, we first end the paragraph (via +% \afterenvbreak's vertical glue), and then the group. That way we keep +% the zero \parskip that the environments set -- \parskip glue will be +% inserted at the beginning of the next paragraph in the document, after +% the environment. +% +\def\nonfillfinish{\afterenvbreak\endgroup} + +% @lisp: indented, narrowed, typewriter font. +\def\lisp{\begingroup + \nonfillstart + \let\Elisp = \nonfillfinish + \tt + \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. + \gobble % eat return +} + +% @example: Same as @lisp. +\def\example{\begingroup \def\Eexample{\nonfillfinish\endgroup}\lisp} + +% @small... is usually equivalent to the non-small (@smallbook +% redefines). We must call \example (or whatever) last in the +% definition, since it reads the return following the @example (or +% whatever) command. +% +% This actually allows (for example) @end display inside an +% @smalldisplay. Too bad, but makeinfo will catch the error anyway. +% +\def\smalldisplay{\begingroup\def\Esmalldisplay{\nonfillfinish\endgroup}\display} +\def\smallexample{\begingroup\def\Esmallexample{\nonfillfinish\endgroup}\lisp} +\def\smallformat{\begingroup\def\Esmallformat{\nonfillfinish\endgroup}\format} +\def\smalllisp{\begingroup\def\Esmalllisp{\nonfillfinish\endgroup}\lisp} + +% Real @smallexample and @smalllisp (when @smallbook): use smaller fonts. +% Originally contributed by Pavel@xerox. +\def\smalllispx{\begingroup + \def\Esmalllisp{\nonfillfinish\endgroup}% + \def\Esmallexample{\nonfillfinish\endgroup}% + \smallfonts + \lisp +} + +% @display: same as @lisp except keep current font. +% +\def\display{\begingroup + \nonfillstart + \let\Edisplay = \nonfillfinish + \gobble +} + +% @smalldisplay (when @smallbook): @display plus smaller fonts. +% +\def\smalldisplayx{\begingroup + \def\Esmalldisplay{\nonfillfinish\endgroup}% + \smallfonts \rm + \display +} + +% @format: same as @display except don't narrow margins. +% +\def\format{\begingroup + \let\nonarrowing = t + \nonfillstart + \let\Eformat = \nonfillfinish + \gobble +} + +% @smallformat (when @smallbook): @format plus smaller fonts. +% +\def\smallformatx{\begingroup + \def\Esmallformat{\nonfillfinish\endgroup}% + \smallfonts \rm + \format +} + +% @flushleft (same as @format). +% +\def\flushleft{\begingroup \def\Eflushleft{\nonfillfinish\endgroup}\format} + +% @flushright. +% +\def\flushright{\begingroup + \let\nonarrowing = t + \nonfillstart + \let\Eflushright = \nonfillfinish + \advance\leftskip by 0pt plus 1fill + \gobble +} + +% @quotation does normal linebreaking (hence we can't use \nonfillstart) +% and narrows the margins. +% +\def\quotation{% + \begingroup\inENV %This group ends at the end of the @quotation body + {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip + \singlespace + \parindent=0pt + % We have retained a nonzero parskip for the environment, since we're + % doing normal filling. So to avoid extra space below the environment... + \def\Equotation{\parskip = 0pt \nonfillfinish}% + % + % @cartouche defines \nonarrowing to inhibit narrowing at next level down. + \ifx\nonarrowing\relax + \advance\leftskip by \lispnarrowing + \advance\rightskip by \lispnarrowing + \exdentamount = \lispnarrowing + \let\nonarrowing = \relax + \fi +} + + +\message{defuns,} +% @defun etc. + +% Allow user to change definition object font (\df) internally +\def\setdeffont #1 {\csname DEF#1\endcsname} + +\newskip\defbodyindent \defbodyindent=.4in +\newskip\defargsindent \defargsindent=50pt +\newskip\deftypemargin \deftypemargin=12pt +\newskip\deflastargmargin \deflastargmargin=18pt + +\newcount\parencount +% define \functionparens, which makes ( and ) and & do special things. +% \functionparens affects the group it is contained in. +\def\activeparens{% +\catcode`\(=\active \catcode`\)=\active \catcode`\&=\active +\catcode`\[=\active \catcode`\]=\active} + +% Make control sequences which act like normal parenthesis chars. +\let\lparen = ( \let\rparen = ) + +{\activeparens % Now, smart parens don't turn on until &foo (see \amprm) + +% Be sure that we always have a definition for `(', etc. For example, +% if the fn name has parens in it, \boldbrax will not be in effect yet, +% so TeX would otherwise complain about undefined control sequence. +\global\let(=\lparen \global\let)=\rparen +\global\let[=\lbrack \global\let]=\rbrack + +\gdef\functionparens{\boldbrax\let&=\amprm\parencount=0 } +\gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} +% This is used to turn on special parens +% but make & act ordinary (given that it's active). +\gdef\boldbraxnoamp{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb\let&=\ampnr} + +% Definitions of (, ) and & used in args for functions. +% This is the definition of ( outside of all parentheses. +\gdef\oprm#1 {{\rm\char`\(}#1 \bf \let(=\opnested + \global\advance\parencount by 1 +} +% +% This is the definition of ( when already inside a level of parens. +\gdef\opnested{\char`\(\global\advance\parencount by 1 } +% +\gdef\clrm{% Print a paren in roman if it is taking us back to depth of 0. + % also in that case restore the outer-level definition of (. + \ifnum \parencount=1 {\rm \char `\)}\sl \let(=\oprm \else \char `\) \fi + \global\advance \parencount by -1 } +% If we encounter &foo, then turn on ()-hacking afterwards +\gdef\amprm#1 {{\rm\}\let(=\oprm \let)=\clrm\ } +% +\gdef\normalparens{\boldbrax\let&=\ampnr} +} % End of definition inside \activeparens +%% These parens (in \boldbrax) actually are a little bolder than the +%% contained text. This is especially needed for [ and ] +\def\opnr{{\sf\char`\(}\global\advance\parencount by 1 } +\def\clnr{{\sf\char`\)}\global\advance\parencount by -1 } +\let\ampnr = \& +\def\lbrb{{\bf\char`\[}} +\def\rbrb{{\bf\char`\]}} + +% Active &'s sneak into the index arguments, so make sure it's defined. +{ + \catcode`& = 13 + \global\let& = \ampnr +} + +% First, defname, which formats the header line itself. +% #1 should be the function name. +% #2 should be the type of definition, such as "Function". + +\def\defname #1#2{% +% Get the values of \leftskip and \rightskip as they were +% outside the @def... +\dimen2=\leftskip +\advance\dimen2 by -\defbodyindent +\noindent +\setbox0=\hbox{\hskip \deflastargmargin{\rm #2}\hskip \deftypemargin}% +\dimen0=\hsize \advance \dimen0 by -\wd0 % compute size for first line +\dimen1=\hsize \advance \dimen1 by -\defargsindent %size for continuations +\parshape 2 0in \dimen0 \defargsindent \dimen1 +% Now output arg 2 ("Function" or some such) +% ending at \deftypemargin from the right margin, +% but stuck inside a box of width 0 so it does not interfere with linebreaking +{% Adjust \hsize to exclude the ambient margins, +% so that \rightline will obey them. +\advance \hsize by -\dimen2 +\rlap{\rightline{{\rm #2}\hskip -1.25pc }}}% +% Make all lines underfull and no complaints: +\tolerance=10000 \hbadness=10000 +\advance\leftskip by -\defbodyindent +\exdentamount=\defbodyindent +{\df #1}\enskip % Generate function name +} + +% Actually process the body of a definition +% #1 should be the terminating control sequence, such as \Edefun. +% #2 should be the "another name" control sequence, such as \defunx. +% #3 should be the control sequence that actually processes the header, +% such as \defunheader. + +\def\defparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody +\medbreak % +% Define the end token that this defining construct specifies +% so that it will exit this group. +\def#1{\endgraf\endgroup\medbreak}% +\def#2{\begingroup\obeylines\activeparens\spacesplit#3}% +\parindent=0in +\advance\leftskip by \defbodyindent +\exdentamount=\defbodyindent +\begingroup % +\catcode 61=\active % 61 is `=' +\obeylines\activeparens\spacesplit#3} + +% #1 is the \E... control sequence to end the definition (which we define). +% #2 is the \...x control sequence for consecutive fns (which we define). +% #3 is the control sequence to call to resume processing. +% #4, delimited by the space, is the class name. +% +\def\defmethparsebody#1#2#3#4 {\begingroup\inENV % +\medbreak % +% Define the end token that this defining construct specifies +% so that it will exit this group. +\def#1{\endgraf\endgroup\medbreak}% +\def#2##1 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}}}% +\parindent=0in +\advance\leftskip by \defbodyindent +\exdentamount=\defbodyindent +\begingroup\obeylines\activeparens\spacesplit{#3{#4}}} + +% Used for @deftypemethod and @deftypeivar. +% #1 is the \E... control sequence to end the definition (which we define). +% #2 is the \...x control sequence for consecutive fns (which we define). +% #3 is the control sequence to call to resume processing. +% #4, delimited by a space, is the class name. +% #5 is the method's return type. +% +\def\deftypemethparsebody#1#2#3#4 #5 {\begingroup\inENV + \medbreak + \def#1{\endgraf\endgroup\medbreak}% + \def#2##1 ##2 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}{##2}}}% + \parindent=0in + \advance\leftskip by \defbodyindent + \exdentamount=\defbodyindent + \begingroup\obeylines\activeparens\spacesplit{#3{#4}{#5}}} + +% Used for @deftypeop. The change from \deftypemethparsebody is an +% extra argument at the beginning which is the `category', instead of it +% being the hardwired string `Method' or `Instance Variable'. We have +% to account for this both in the \...x definition and in parsing the +% input at hand. Thus also need a control sequence (passed as #5) for +% the \E... definition to assign the category name to. +% +\def\deftypeopparsebody#1#2#3#4#5 #6 {\begingroup\inENV + \medbreak + \def#1{\endgraf\endgroup\medbreak}% + \def#2##1 ##2 ##3 {% + \def#4{##1}% + \begingroup\obeylines\activeparens\spacesplit{#3{##2}{##3}}}% + \parindent=0in + \advance\leftskip by \defbodyindent + \exdentamount=\defbodyindent + \begingroup\obeylines\activeparens\spacesplit{#3{#5}{#6}}} + +\def\defopparsebody #1#2#3#4#5 {\begingroup\inENV % +\medbreak % +% Define the end token that this defining construct specifies +% so that it will exit this group. +\def#1{\endgraf\endgroup\medbreak}% +\def#2##1 ##2 {\def#4{##1}% +\begingroup\obeylines\activeparens\spacesplit{#3{##2}}}% +\parindent=0in +\advance\leftskip by \defbodyindent +\exdentamount=\defbodyindent +\begingroup\obeylines\activeparens\spacesplit{#3{#5}}} + +% These parsing functions are similar to the preceding ones +% except that they do not make parens into active characters. +% These are used for "variables" since they have no arguments. + +\def\defvarparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody +\medbreak % +% Define the end token that this defining construct specifies +% so that it will exit this group. +\def#1{\endgraf\endgroup\medbreak}% +\def#2{\begingroup\obeylines\spacesplit#3}% +\parindent=0in +\advance\leftskip by \defbodyindent +\exdentamount=\defbodyindent +\begingroup % +\catcode 61=\active % +\obeylines\spacesplit#3} + +% This is used for \def{tp,vr}parsebody. It could probably be used for +% some of the others, too, with some judicious conditionals. +% +\def\parsebodycommon#1#2#3{% + \begingroup\inENV % + \medbreak % + % Define the end token that this defining construct specifies + % so that it will exit this group. + \def#1{\endgraf\endgroup\medbreak}% + \def#2##1 {\begingroup\obeylines\spacesplit{#3{##1}}}% + \parindent=0in + \advance\leftskip by \defbodyindent + \exdentamount=\defbodyindent + \begingroup\obeylines +} + +\def\defvrparsebody#1#2#3#4 {% + \parsebodycommon{#1}{#2}{#3}% + \spacesplit{#3{#4}}% +} + +% This loses on `@deftp {Data Type} {struct termios}' -- it thinks the +% type is just `struct', because we lose the braces in `{struct +% termios}' when \spacesplit reads its undelimited argument. Sigh. +% \let\deftpparsebody=\defvrparsebody +% +% So, to get around this, we put \empty in with the type name. That +% way, TeX won't find exactly `{...}' as an undelimited argument, and +% won't strip off the braces. +% +\def\deftpparsebody #1#2#3#4 {% + \parsebodycommon{#1}{#2}{#3}% + \spacesplit{\parsetpheaderline{#3{#4}}}\empty +} + +% Fine, but then we have to eventually remove the \empty *and* the +% braces (if any). That's what this does. +% +\def\removeemptybraces\empty#1\relax{#1} + +% After \spacesplit has done its work, this is called -- #1 is the final +% thing to call, #2 the type name (which starts with \empty), and #3 +% (which might be empty) the arguments. +% +\def\parsetpheaderline#1#2#3{% + #1{\removeemptybraces#2\relax}{#3}% +}% + +\def\defopvarparsebody #1#2#3#4#5 {\begingroup\inENV % +\medbreak % +% Define the end token that this defining construct specifies +% so that it will exit this group. +\def#1{\endgraf\endgroup\medbreak}% +\def#2##1 ##2 {\def#4{##1}% +\begingroup\obeylines\spacesplit{#3{##2}}}% +\parindent=0in +\advance\leftskip by \defbodyindent +\exdentamount=\defbodyindent +\begingroup\obeylines\spacesplit{#3{#5}}} + +% Split up #2 at the first space token. +% call #1 with two arguments: +% the first is all of #2 before the space token, +% the second is all of #2 after that space token. +% If #2 contains no space token, all of it is passed as the first arg +% and the second is passed as empty. + +{\obeylines +\gdef\spacesplit#1#2^^M{\endgroup\spacesplitfoo{#1}#2 \relax\spacesplitfoo}% +\long\gdef\spacesplitfoo#1#2 #3#4\spacesplitfoo{% +\ifx\relax #3% +#1{#2}{}\else #1{#2}{#3#4}\fi}} + +% So much for the things common to all kinds of definitions. + +% Define @defun. + +% First, define the processing that is wanted for arguments of \defun +% Use this to expand the args and terminate the paragraph they make up + +\def\defunargs#1{\functionparens \sl +% Expand, preventing hyphenation at `-' chars. +% Note that groups don't affect changes in \hyphenchar. +% Set the font temporarily and use \font in case \setfont made \tensl a macro. +{\tensl\hyphenchar\font=0}% +#1% +{\tensl\hyphenchar\font=45}% +\ifnum\parencount=0 \else \errmessage{Unbalanced parentheses in @def}\fi% +\interlinepenalty=10000 +\advance\rightskip by 0pt plus 1fil +\endgraf\nobreak\vskip -\parskip\nobreak +} + +\def\deftypefunargs #1{% +% Expand, preventing hyphenation at `-' chars. +% Note that groups don't affect changes in \hyphenchar. +% Use \boldbraxnoamp, not \functionparens, so that & is not special. +\boldbraxnoamp +\tclose{#1}% avoid \code because of side effects on active chars +\interlinepenalty=10000 +\advance\rightskip by 0pt plus 1fil +\endgraf\nobreak\vskip -\parskip\nobreak +} + +% Do complete processing of one @defun or @defunx line already parsed. + +% @deffn Command forward-char nchars + +\def\deffn{\defmethparsebody\Edeffn\deffnx\deffnheader} + +\def\deffnheader #1#2#3{\doind {fn}{\code{#2}}% +\begingroup\defname {#2}{#1}\defunargs{#3}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @defun == @deffn Function + +\def\defun{\defparsebody\Edefun\defunx\defunheader} + +\def\defunheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index +\begingroup\defname {#1}{\putwordDeffunc}% +\defunargs {#2}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @deftypefun int foobar (int @var{foo}, float @var{bar}) + +\def\deftypefun{\defparsebody\Edeftypefun\deftypefunx\deftypefunheader} + +% #1 is the data type. #2 is the name and args. +\def\deftypefunheader #1#2{\deftypefunheaderx{#1}#2 \relax} +% #1 is the data type, #2 the name, #3 the args. +\def\deftypefunheaderx #1#2 #3\relax{% +\doind {fn}{\code{#2}}% Make entry in function index +\begingroup\defname {\defheaderxcond#1\relax$$$#2}{\putwordDeftypefun}% +\deftypefunargs {#3}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @deftypefn {Library Function} int foobar (int @var{foo}, float @var{bar}) + +\def\deftypefn{\defmethparsebody\Edeftypefn\deftypefnx\deftypefnheader} + +% \defheaderxcond#1\relax$$$ +% puts #1 in @code, followed by a space, but does nothing if #1 is null. +\def\defheaderxcond#1#2$$${\ifx#1\relax\else\code{#1#2} \fi} + +% #1 is the classification. #2 is the data type. #3 is the name and args. +\def\deftypefnheader #1#2#3{\deftypefnheaderx{#1}{#2}#3 \relax} +% #1 is the classification, #2 the data type, #3 the name, #4 the args. +\def\deftypefnheaderx #1#2#3 #4\relax{% +\doind {fn}{\code{#3}}% Make entry in function index +\begingroup +\normalparens % notably, turn off `&' magic, which prevents +% at least some C++ text from working +\defname {\defheaderxcond#2\relax$$$#3}{#1}% +\deftypefunargs {#4}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @defmac == @deffn Macro + +\def\defmac{\defparsebody\Edefmac\defmacx\defmacheader} + +\def\defmacheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index +\begingroup\defname {#1}{\putwordDefmac}% +\defunargs {#2}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @defspec == @deffn Special Form + +\def\defspec{\defparsebody\Edefspec\defspecx\defspecheader} + +\def\defspecheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index +\begingroup\defname {#1}{\putwordDefspec}% +\defunargs {#2}\endgroup % +\catcode 61=\other % Turn off change made in \defparsebody +} + +% @defop CATEGORY CLASS OPERATION ARG... +% +\def\defop #1 {\def\defoptype{#1}% +\defopparsebody\Edefop\defopx\defopheader\defoptype} +% +\def\defopheader#1#2#3{% +\dosubind {fn}{\code{#2}}{\putwordon\ #1}% Make entry in function index +\begingroup\defname {#2}{\defoptype\ \putwordon\ #1}% +\defunargs {#3}\endgroup % +} + +% @deftypeop CATEGORY CLASS TYPE OPERATION ARG... +% +\def\deftypeop #1 {\def\deftypeopcategory{#1}% + \deftypeopparsebody\Edeftypeop\deftypeopx\deftypeopheader + \deftypeopcategory} +% +% #1 is the class name, #2 the data type, #3 the operation name, #4 the args. +\def\deftypeopheader#1#2#3#4{% + \dosubind{fn}{\code{#3}}{\putwordon\ \code{#1}}% entry in function index + \begingroup + \defname{\defheaderxcond#2\relax$$$#3} + {\deftypeopcategory\ \putwordon\ \code{#1}}% + \deftypefunargs{#4}% + \endgroup +} + +% @deftypemethod CLASS TYPE METHOD ARG... +% +\def\deftypemethod{% + \deftypemethparsebody\Edeftypemethod\deftypemethodx\deftypemethodheader} +% +% #1 is the class name, #2 the data type, #3 the method name, #4 the args. +\def\deftypemethodheader#1#2#3#4{% + \dosubind{fn}{\code{#3}}{\putwordon\ \code{#1}}% entry in function index + \begingroup + \defname{\defheaderxcond#2\relax$$$#3}{\putwordMethodon\ \code{#1}}% + \deftypefunargs{#4}% + \endgroup +} + +% @deftypeivar CLASS TYPE VARNAME +% +\def\deftypeivar{% + \deftypemethparsebody\Edeftypeivar\deftypeivarx\deftypeivarheader} +% +% #1 is the class name, #2 the data type, #3 the variable name. +\def\deftypeivarheader#1#2#3{% + \dosubind{vr}{\code{#3}}{\putwordof\ \code{#1}}% entry in variable index + \begingroup + \defname{#3}{\putwordInstanceVariableof\ \code{#1}}% + \defvarargs{#3}% + \endgroup +} + +% @defmethod == @defop Method +% +\def\defmethod{\defmethparsebody\Edefmethod\defmethodx\defmethodheader} +% +% #1 is the class name, #2 the method name, #3 the args. +\def\defmethodheader#1#2#3{% + \dosubind{fn}{\code{#2}}{\putwordon\ \code{#1}}% entry in function index + \begingroup + \defname{#2}{\putwordMethodon\ \code{#1}}% + \defunargs{#3}% + \endgroup +} + +% @defcv {Class Option} foo-class foo-flag + +\def\defcv #1 {\def\defcvtype{#1}% +\defopvarparsebody\Edefcv\defcvx\defcvarheader\defcvtype} + +\def\defcvarheader #1#2#3{% +\dosubind {vr}{\code{#2}}{\putwordof\ #1}% Make entry in var index +\begingroup\defname {#2}{\defcvtype\ \putwordof\ #1}% +\defvarargs {#3}\endgroup % +} + +% @defivar CLASS VARNAME == @defcv {Instance Variable} CLASS VARNAME +% +\def\defivar{\defvrparsebody\Edefivar\defivarx\defivarheader} +% +\def\defivarheader#1#2#3{% + \dosubind {vr}{\code{#2}}{\putwordof\ #1}% entry in var index + \begingroup + \defname{#2}{\putwordInstanceVariableof\ #1}% + \defvarargs{#3}% + \endgroup +} + +% @defvar +% First, define the processing that is wanted for arguments of @defvar. +% This is actually simple: just print them in roman. +% This must expand the args and terminate the paragraph they make up +\def\defvarargs #1{\normalparens #1% +\interlinepenalty=10000 +\endgraf\nobreak\vskip -\parskip\nobreak} + +% @defvr Counter foo-count + +\def\defvr{\defvrparsebody\Edefvr\defvrx\defvrheader} + +\def\defvrheader #1#2#3{\doind {vr}{\code{#2}}% +\begingroup\defname {#2}{#1}\defvarargs{#3}\endgroup} + +% @defvar == @defvr Variable + +\def\defvar{\defvarparsebody\Edefvar\defvarx\defvarheader} + +\def\defvarheader #1#2{\doind {vr}{\code{#1}}% Make entry in var index +\begingroup\defname {#1}{\putwordDefvar}% +\defvarargs {#2}\endgroup % +} + +% @defopt == @defvr {User Option} + +\def\defopt{\defvarparsebody\Edefopt\defoptx\defoptheader} + +\def\defoptheader #1#2{\doind {vr}{\code{#1}}% Make entry in var index +\begingroup\defname {#1}{\putwordDefopt}% +\defvarargs {#2}\endgroup % +} + +% @deftypevar int foobar + +\def\deftypevar{\defvarparsebody\Edeftypevar\deftypevarx\deftypevarheader} + +% #1 is the data type. #2 is the name, perhaps followed by text that +% is actually part of the data type, which should not be put into the index. +\def\deftypevarheader #1#2{% +\dovarind#2 \relax% Make entry in variables index +\begingroup\defname {\defheaderxcond#1\relax$$$#2}{\putwordDeftypevar}% +\interlinepenalty=10000 +\endgraf\nobreak\vskip -\parskip\nobreak +\endgroup} +\def\dovarind#1 #2\relax{\doind{vr}{\code{#1}}} + +% @deftypevr {Global Flag} int enable + +\def\deftypevr{\defvrparsebody\Edeftypevr\deftypevrx\deftypevrheader} + +\def\deftypevrheader #1#2#3{\dovarind#3 \relax% +\begingroup\defname {\defheaderxcond#2\relax$$$#3}{#1} +\interlinepenalty=10000 +\endgraf\nobreak\vskip -\parskip\nobreak +\endgroup} + +% Now define @deftp +% Args are printed in bold, a slight difference from @defvar. + +\def\deftpargs #1{\bf \defvarargs{#1}} + +% @deftp Class window height width ... + +\def\deftp{\deftpparsebody\Edeftp\deftpx\deftpheader} + +\def\deftpheader #1#2#3{\doind {tp}{\code{#2}}% +\begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup} + +% These definitions are used if you use @defunx (etc.) +% anywhere other than immediately after a @defun or @defunx. +% +\def\defcvx#1 {\errmessage{@defcvx in invalid context}} +\def\deffnx#1 {\errmessage{@deffnx in invalid context}} +\def\defivarx#1 {\errmessage{@defivarx in invalid context}} +\def\defmacx#1 {\errmessage{@defmacx in invalid context}} +\def\defmethodx#1 {\errmessage{@defmethodx in invalid context}} +\def\defoptx #1 {\errmessage{@defoptx in invalid context}} +\def\defopx#1 {\errmessage{@defopx in invalid context}} +\def\defspecx#1 {\errmessage{@defspecx in invalid context}} +\def\deftpx#1 {\errmessage{@deftpx in invalid context}} +\def\deftypefnx#1 {\errmessage{@deftypefnx in invalid context}} +\def\deftypefunx#1 {\errmessage{@deftypefunx in invalid context}} +\def\deftypeivarx#1 {\errmessage{@deftypeivarx in invalid context}} +\def\deftypemethodx#1 {\errmessage{@deftypemethodx in invalid context}} +\def\deftypeopx#1 {\errmessage{@deftypeopx in invalid context}} +\def\deftypevarx#1 {\errmessage{@deftypevarx in invalid context}} +\def\deftypevrx#1 {\errmessage{@deftypevrx in invalid context}} +\def\defunx#1 {\errmessage{@defunx in invalid context}} +\def\defvarx#1 {\errmessage{@defvarx in invalid context}} +\def\defvrx#1 {\errmessage{@defvrx in invalid context}} + + +\message{macros,} +% @macro. + +% To do this right we need a feature of e-TeX, \scantokens, +% which we arrange to emulate with a temporary file in ordinary TeX. +\ifx\eTeXversion\undefined + \newwrite\macscribble + \def\scanmacro#1{% + \begingroup \newlinechar`\^^M + % Undo catcode changes of \startcontents and \doprintindex + \catcode`\@=0 \catcode`\\=12 \escapechar=`\@ + % Append \endinput to make sure that TeX does not see the ending newline. + \toks0={#1\endinput}% + \immediate\openout\macscribble=\jobname.tmp + \immediate\write\macscribble{\the\toks0}% + \immediate\closeout\macscribble + \let\xeatspaces\eatspaces + \input \jobname.tmp + \endgroup +} +\else +\def\scanmacro#1{% +\begingroup \newlinechar`\^^M +% Undo catcode changes of \startcontents and \doprintindex +\catcode`\@=0 \catcode`\\=12 \escapechar=`\@ +\let\xeatspaces\eatspaces\scantokens{#1\endinput}\endgroup} +\fi + +\newcount\paramno % Count of parameters +\newtoks\macname % Macro name +\newif\ifrecursive % Is it recursive? +\def\macrolist{} % List of all defined macros in the form + % \do\macro1\do\macro2... + +% Utility routines. +% Thisdoes \let #1 = #2, except with \csnames. +\def\cslet#1#2{% +\expandafter\expandafter +\expandafter\let +\expandafter\expandafter +\csname#1\endcsname +\csname#2\endcsname} + +% Trim leading and trailing spaces off a string. +% Concepts from aro-bend problem 15 (see CTAN). +{\catcode`\@=11 +\gdef\eatspaces #1{\expandafter\trim@\expandafter{#1 }} +\gdef\trim@ #1{\trim@@ @#1 @ #1 @ @@} +\gdef\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @} +\def\unbrace#1{#1} +\unbrace{\gdef\trim@@@ #1 } #2@{#1} +} + +% Trim a single trailing ^^M off a string. +{\catcode`\^^M=12\catcode`\Q=3% +\gdef\eatcr #1{\eatcra #1Q^^MQ}% +\gdef\eatcra#1^^MQ{\eatcrb#1Q}% +\gdef\eatcrb#1Q#2Q{#1}% +} + +% Macro bodies are absorbed as an argument in a context where +% all characters are catcode 10, 11 or 12, except \ which is active +% (as in normal texinfo). It is necessary to change the definition of \. + +% It's necessary to have hard CRs when the macro is executed. This is +% done by making ^^M (\endlinechar) catcode 12 when reading the macro +% body, and then making it the \newlinechar in \scanmacro. + +\def\macrobodyctxt{% + \catcode`\~=12 + \catcode`\^=12 + \catcode`\_=12 + \catcode`\|=12 + \catcode`\<=12 + \catcode`\>=12 + \catcode`\+=12 + \catcode`\{=12 + \catcode`\}=12 + \catcode`\@=12 + \catcode`\^^M=12 + \usembodybackslash} + +\def\macroargctxt{% + \catcode`\~=12 + \catcode`\^=12 + \catcode`\_=12 + \catcode`\|=12 + \catcode`\<=12 + \catcode`\>=12 + \catcode`\+=12 + \catcode`\@=12 + \catcode`\\=12} + +% \mbodybackslash is the definition of \ in @macro bodies. +% It maps \foo\ => \csname macarg.foo\endcsname => #N +% where N is the macro parameter number. +% We define \csname macarg.\endcsname to be \realbackslash, so +% \\ in macro replacement text gets you a backslash. + +{\catcode`@=0 @catcode`@\=@active + @gdef@usembodybackslash{@let\=@mbodybackslash} + @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname} +} +\expandafter\def\csname macarg.\endcsname{\realbackslash} + +\def\macro{\recursivefalse\parsearg\macroxxx} +\def\rmacro{\recursivetrue\parsearg\macroxxx} + +\def\macroxxx#1{% + \getargs{#1}% now \macname is the macname and \argl the arglist + \ifx\argl\empty % no arguments + \paramno=0% + \else + \expandafter\parsemargdef \argl;% + \fi + \if1\csname ismacro.\the\macname\endcsname + \message{Warning: redefining \the\macname}% + \else + \expandafter\ifx\csname \the\macname\endcsname \relax + \else \errmessage{The name \the\macname\space is reserved}\fi + \global\cslet{macsave.\the\macname}{\the\macname}% + \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% + % Add the macroname to \macrolist + \toks0 = \expandafter{\macrolist\do}% + \xdef\macrolist{\the\toks0 + \expandafter\noexpand\csname\the\macname\endcsname}% + \fi + \begingroup \macrobodyctxt + \ifrecursive \expandafter\parsermacbody + \else \expandafter\parsemacbody + \fi} + +\def\unmacro{\parsearg\unmacroxxx} +\def\unmacroxxx#1{% + \if1\csname ismacro.#1\endcsname + \global\cslet{#1}{macsave.#1}% + \global\expandafter\let \csname ismacro.#1\endcsname=0% + % Remove the macro name from \macrolist + \begingroup + \edef\tempa{\expandafter\noexpand\csname#1\endcsname}% + \def\do##1{% + \def\tempb{##1}% + \ifx\tempa\tempb + % remove this + \else + \toks0 = \expandafter{\newmacrolist\do}% + \edef\newmacrolist{\the\toks0\expandafter\noexpand\tempa}% + \fi}% + \def\newmacrolist{}% + % Execute macro list to define \newmacrolist + \macrolist + \global\let\macrolist\newmacrolist + \endgroup + \else + \errmessage{Macro #1 not defined}% + \fi +} + +% This makes use of the obscure feature that if the last token of a +% is #, then the preceding argument is delimited by +% an opening brace, and that opening brace is not consumed. +\def\getargs#1{\getargsxxx#1{}} +\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs} +\def\getmacname #1 #2\relax{\macname={#1}} +\def\getmacargs#1{\def\argl{#1}} + +% Parse the optional {params} list. Set up \paramno and \paramlist +% so \defmacro knows what to do. Define \macarg.blah for each blah +% in the params list, to be ##N where N is the position in that list. +% That gets used by \mbodybackslash (above). + +% We need to get `macro parameter char #' into several definitions. +% The technique used is stolen from LaTeX: let \hash be something +% unexpandable, insert that wherever you need a #, and then redefine +% it to # just before using the token list produced. +% +% The same technique is used to protect \eatspaces till just before +% the macro is used. + +\def\parsemargdef#1;{\paramno=0\def\paramlist{}% + \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,} +\def\parsemargdefxxx#1,{% + \if#1;\let\next=\relax + \else \let\next=\parsemargdefxxx + \advance\paramno by 1% + \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname + {\xeatspaces{\hash\the\paramno}}% + \edef\paramlist{\paramlist\hash\the\paramno,}% + \fi\next} + +% These two commands read recursive and nonrecursive macro bodies. +% (They're different since rec and nonrec macros end differently.) + +\long\def\parsemacbody#1@end macro% +{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% +\long\def\parsermacbody#1@end rmacro% +{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% + +% This defines the macro itself. There are six cases: recursive and +% nonrecursive macros of zero, one, and many arguments. +% Much magic with \expandafter here. +% \xdef is used so that macro definitions will survive the file +% they're defined in; @include reads the file inside a group. +\def\defmacro{% + \let\hash=##% convert placeholders to macro parameter chars + \ifrecursive + \ifcase\paramno + % 0 + \expandafter\xdef\csname\the\macname\endcsname{% + \noexpand\scanmacro{\temp}}% + \or % 1 + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \noexpand\braceorline + \expandafter\noexpand\csname\the\macname xxx\endcsname}% + \expandafter\xdef\csname\the\macname xxx\endcsname##1{% + \egroup\noexpand\scanmacro{\temp}}% + \else % many + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \noexpand\csname\the\macname xx\endcsname}% + \expandafter\xdef\csname\the\macname xx\endcsname##1{% + \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% + \expandafter\expandafter + \expandafter\xdef + \expandafter\expandafter + \csname\the\macname xxx\endcsname + \paramlist{\egroup\noexpand\scanmacro{\temp}}% + \fi + \else + \ifcase\paramno + % 0 + \expandafter\xdef\csname\the\macname\endcsname{% + \noexpand\norecurse{\the\macname}% + \noexpand\scanmacro{\temp}\egroup}% + \or % 1 + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \noexpand\braceorline + \expandafter\noexpand\csname\the\macname xxx\endcsname}% + \expandafter\xdef\csname\the\macname xxx\endcsname##1{% + \egroup + \noexpand\norecurse{\the\macname}% + \noexpand\scanmacro{\temp}\egroup}% + \else % many + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \expandafter\noexpand\csname\the\macname xx\endcsname}% + \expandafter\xdef\csname\the\macname xx\endcsname##1{% + \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% + \expandafter\expandafter + \expandafter\xdef + \expandafter\expandafter + \csname\the\macname xxx\endcsname + \paramlist{% + \egroup + \noexpand\norecurse{\the\macname}% + \noexpand\scanmacro{\temp}\egroup}% + \fi + \fi} + +\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}} + +% \braceorline decides whether the next nonwhitespace character is a +% {. If so it reads up to the closing }, if not, it reads the whole +% line. Whatever was read is then fed to the next control sequence +% as an argument (by \parsebrace or \parsearg) +\def\braceorline#1{\let\next=#1\futurelet\nchar\braceorlinexxx} +\def\braceorlinexxx{% + \ifx\nchar\bgroup\else + \expandafter\parsearg + \fi \next} + +% We mant to disable all macros during \shipout so that they are not +% expanded by \write. +\def\turnoffmacros{\begingroup \def\do##1{\let\noexpand##1=\relax}% + \edef\next{\macrolist}\expandafter\endgroup\next} + + +% @alias. +% We need some trickery to remove the optional spaces around the equal +% sign. Just make them active and then expand them all to nothing. +\def\alias{\begingroup\obeyspaces\parsearg\aliasxxx} +\def\aliasxxx #1{\aliasyyy#1\relax} +\def\aliasyyy #1=#2\relax{\ignoreactivespaces +\edef\next{\global\let\expandafter\noexpand\csname#1\endcsname=% + \expandafter\noexpand\csname#2\endcsname}% +\expandafter\endgroup\next} + + +\message{cross references,} +% @xref etc. + +\newwrite\auxfile + +\newif\ifhavexrefs % True if xref values are known. +\newif\ifwarnedxrefs % True if we warned once that they aren't known. + +% @inforef is relatively simple. +\def\inforef #1{\inforefzzz #1,,,,**} +\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, + node \samp{\ignorespaces#1{}}} + +% @node's job is to define \lastnode. +\def\node{\ENVcheck\parsearg\nodezzz} +\def\nodezzz#1{\nodexxx [#1,]} +\def\nodexxx[#1,#2]{\gdef\lastnode{#1}} +\let\nwnode=\node +\let\lastnode=\relax + +% The sectioning commands (@chapter, etc.) call these. +\def\donoderef{% + \ifx\lastnode\relax\else + \expandafter\expandafter\expandafter\setref{\lastnode}% + {Ysectionnumberandtype}% + \global\let\lastnode=\relax + \fi +} +\def\unnumbnoderef{% + \ifx\lastnode\relax\else + \expandafter\expandafter\expandafter\setref{\lastnode}{Ynothing}% + \global\let\lastnode=\relax + \fi +} +\def\appendixnoderef{% + \ifx\lastnode\relax\else + \expandafter\expandafter\expandafter\setref{\lastnode}% + {Yappendixletterandtype}% + \global\let\lastnode=\relax + \fi +} + + +% @anchor{NAME} -- define xref target at arbitrary point. +% +\newcount\savesfregister +\gdef\savesf{\relax \ifhmode \savesfregister=\spacefactor \fi} +\gdef\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi} +\gdef\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces} + +% \setref{NAME}{SNT} defines a cross-reference point NAME, namely +% NAME-title, NAME-pg, and NAME-SNT. Called from \foonoderef. We have +% to set \indexdummies so commands such as @code in a section title +% aren't expanded. It would be nicer not to expand the titles in the +% first place, but there's so many layers that that is hard to do. +% +\def\setref#1#2{{% + \indexdummies + \pdfmkdest{#1}% + \dosetq{#1-title}{Ytitle}% + \dosetq{#1-pg}{Ypagenumber}% + \dosetq{#1-snt}{#2}% +}} + +% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is +% the node name, #2 the name of the Info cross-reference, #3 the printed +% node name, #4 the name of the Info file, #5 the name of the printed +% manual. All but the node name can be omitted. +% +\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]} +\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]} +\def\ref#1{\xrefX[#1,,,,,,,]} +\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup + \unsepspaces + \def\printedmanual{\ignorespaces #5}% + \def\printednodename{\ignorespaces #3}% + \setbox1=\hbox{\printedmanual}% + \setbox0=\hbox{\printednodename}% + \ifdim \wd0 = 0pt + % No printed node name was explicitly given. + \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax + % Use the node name inside the square brackets. + \def\printednodename{\ignorespaces #1}% + \else + % Use the actual chapter/section title appear inside + % the square brackets. Use the real section title if we have it. + \ifdim \wd1 > 0pt + % It is in another manual, so we don't have it. + \def\printednodename{\ignorespaces #1}% + \else + \ifhavexrefs + % We know the real title if we have the xref values. + \def\printednodename{\refx{#1-title}{}}% + \else + % Otherwise just copy the Info node name. + \def\printednodename{\ignorespaces #1}% + \fi% + \fi + \fi + \fi + % + % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not + % insert empty discretionaries after hyphens, which means that it will + % not find a line break at a hyphen in a node names. Since some manuals + % are best written with fairly long node names, containing hyphens, this + % is a loss. Therefore, we give the text of the node name again, so it + % is as if TeX is seeing it for the first time. + \ifpdf + \leavevmode + \getfilename{#4}% + \ifnum\filenamelength>0 + \startlink attr{/Border [0 0 0]}% + goto file{\the\filename.pdf} name{#1@}% + \else + \startlink attr{/Border [0 0 0]}% + goto name{#1@}% + \fi + \linkcolor + \fi + % + \ifdim \wd1 > 0pt + \putwordsection{} ``\printednodename'' \putwordin{} \cite{\printedmanual}% + \else + % _ (for example) has to be the character _ for the purposes of the + % control sequence corresponding to the node, but it has to expand + % into the usual \leavevmode...\vrule stuff for purposes of + % printing. So we \turnoffactive for the \refx-snt, back on for the + % printing, back off for the \refx-pg. + {\normalturnoffactive + % Only output a following space if the -snt ref is nonempty; for + % @unnumbered and @anchor, it won't be. + \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}% + \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi + }% + % [mynode], + [\printednodename],\space + % page 3 + \turnoffactive \putwordpage\tie\refx{#1-pg}{}% + \fi + \endlink +\endgroup} + +% \dosetq is the interface for calls from other macros + +% Use \normalturnoffactive so that punctuation chars such as underscore +% and backslash work in node names. (\turnoffactive doesn't do \.) +\def\dosetq#1#2{% + {\let\folio=0% + \normalturnoffactive + \edef\next{\write\auxfile{\internalsetq{#1}{#2}}}% + \iflinks + \next + \fi + }% +} + +% \internalsetq {foo}{page} expands into +% CHARACTERS 'xrdef {foo}{...expansion of \Ypage...} +% When the aux file is read, ' is the escape character + +\def\internalsetq #1#2{'xrdef {#1}{\csname #2\endcsname}} + +% Things to be expanded by \internalsetq + +\def\Ypagenumber{\folio} + +\def\Ytitle{\thissection} + +\def\Ynothing{} + +\def\Ysectionnumberandtype{% +\ifnum\secno=0 \putwordChapter\xreftie\the\chapno % +\else \ifnum \subsecno=0 \putwordSection\xreftie\the\chapno.\the\secno % +\else \ifnum \subsubsecno=0 % +\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno % +\else % +\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno % +\fi \fi \fi } + +\def\Yappendixletterandtype{% +\ifnum\secno=0 \putwordAppendix\xreftie'char\the\appendixno{}% +\else \ifnum \subsecno=0 \putwordSection\xreftie'char\the\appendixno.\the\secno % +\else \ifnum \subsubsecno=0 % +\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno % +\else % +\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno % +\fi \fi \fi } + +\gdef\xreftie{'tie} + +% Use TeX 3.0's \inputlineno to get the line number, for better error +% messages, but if we're using an old version of TeX, don't do anything. +% +\ifx\inputlineno\thisisundefined + \let\linenumber = \empty % Non-3.0. +\else + \def\linenumber{\the\inputlineno:\space} +\fi + +% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME. +% If its value is nonempty, SUFFIX is output afterward. + +\def\refx#1#2{% + \expandafter\ifx\csname X#1\endcsname\relax + % If not defined, say something at least. + \angleleft un\-de\-fined\angleright + \iflinks + \ifhavexrefs + \message{\linenumber Undefined cross reference `#1'.}% + \else + \ifwarnedxrefs\else + \global\warnedxrefstrue + \message{Cross reference values unknown; you must run TeX again.}% + \fi + \fi + \fi + \else + % It's defined, so just use it. + \csname X#1\endcsname + \fi + #2% Output the suffix in any case. +} + +% This is the macro invoked by entries in the aux file. +% +\def\xrdef#1{\begingroup + % Reenable \ as an escape while reading the second argument. + \catcode`\\ = 0 + \afterassignment\endgroup + \expandafter\gdef\csname X#1\endcsname +} + +% Read the last existing aux file, if any. No error if none exists. +\def\readauxfile{\begingroup + \catcode`\^^@=\other + \catcode`\^^A=\other + \catcode`\^^B=\other + \catcode`\^^C=\other + \catcode`\^^D=\other + \catcode`\^^E=\other + \catcode`\^^F=\other + \catcode`\^^G=\other + \catcode`\^^H=\other + \catcode`\^^K=\other + \catcode`\^^L=\other + \catcode`\^^N=\other + \catcode`\^^P=\other + \catcode`\^^Q=\other + \catcode`\^^R=\other + \catcode`\^^S=\other + \catcode`\^^T=\other + \catcode`\^^U=\other + \catcode`\^^V=\other + \catcode`\^^W=\other + \catcode`\^^X=\other + \catcode`\^^Z=\other + \catcode`\^^[=\other + \catcode`\^^\=\other + \catcode`\^^]=\other + \catcode`\^^^=\other + \catcode`\^^_=\other + \catcode`\@=\other + \catcode`\^=\other + % It was suggested to define this as 7, which would allow ^^e4 etc. + % in xref tags, i.e., node names. But since ^^e4 notation isn't + % supported in the main text, it doesn't seem desirable. Furthermore, + % that is not enough: for node names that actually contain a ^ + % character, we would end up writing a line like this: 'xrdef {'hat + % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first + % argument, and \hat is not an expandable control sequence. It could + % all be worked out, but why? Either we support ^^ or we don't. + % + % The other change necessary for this was to define \auxhat: + % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter + % and then to call \auxhat in \setq. + % + \catcode`\~=\other + \catcode`\[=\other + \catcode`\]=\other + \catcode`\"=\other + \catcode`\_=\other + \catcode`\|=\other + \catcode`\<=\other + \catcode`\>=\other + \catcode`\$=\other + \catcode`\#=\other + \catcode`\&=\other + \catcode`+=\other % avoid \+ for paranoia even though we've turned it off + % Make the characters 128-255 be printing characters + {% + \count 1=128 + \def\loop{% + \catcode\count 1=\other + \advance\count 1 by 1 + \ifnum \count 1<256 \loop \fi + }% + }% + % The aux file uses ' as the escape (for now). + % Turn off \ as an escape so we do not lose on + % entries which were dumped with control sequences in their names. + % For example, 'xrdef {$\leq $-fun}{page ...} made by @defun ^^ + % Reference to such entries still does not work the way one would wish, + % but at least they do not bomb out when the aux file is read in. + \catcode`\{=1 + \catcode`\}=2 + \catcode`\%=\other + \catcode`\'=0 + \catcode`\\=\other + % + \openin 1 \jobname.aux + \ifeof 1 \else + \closein 1 + \input \jobname.aux + \global\havexrefstrue + \global\warnedobstrue + \fi + % Open the new aux file. TeX will close it automatically at exit. + \openout\auxfile=\jobname.aux +\endgroup} + + +% Footnotes. + +\newcount \footnoteno + +% The trailing space in the following definition for supereject is +% vital for proper filling; pages come out unaligned when you do a +% pagealignmacro call if that space before the closing brace is +% removed. (Generally, numeric constants should always be followed by a +% space to prevent strange expansion errors.) +\def\supereject{\par\penalty -20000\footnoteno =0 } + +% @footnotestyle is meaningful for info output only. +\let\footnotestyle=\comment + +\let\ptexfootnote=\footnote + +{\catcode `\@=11 +% +% Auto-number footnotes. Otherwise like plain. +\gdef\footnote{% + \global\advance\footnoteno by \@ne + \edef\thisfootno{$^{\the\footnoteno}$}% + % + % In case the footnote comes at the end of a sentence, preserve the + % extra spacing after we do the footnote number. + \let\@sf\empty + \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\/\fi + % + % Remove inadvertent blank space before typesetting the footnote number. + \unskip + \thisfootno\@sf + \footnotezzz +}% + +% Don't bother with the trickery in plain.tex to not require the +% footnote text as a parameter. Our footnotes don't need to be so general. +% +% Oh yes, they do; otherwise, @ifset and anything else that uses +% \parseargline fail inside footnotes because the tokens are fixed when +% the footnote is read. --karl, 16nov96. +% +\long\gdef\footnotezzz{\insert\footins\bgroup + % We want to typeset this text as a normal paragraph, even if the + % footnote reference occurs in (for example) a display environment. + % So reset some parameters. + \interlinepenalty\interfootnotelinepenalty + \splittopskip\ht\strutbox % top baseline for broken footnotes + \splitmaxdepth\dp\strutbox + \floatingpenalty\@MM + \leftskip\z@skip + \rightskip\z@skip + \spaceskip\z@skip + \xspaceskip\z@skip + \parindent\defaultparindent + % + \smallfonts \rm + % + % Hang the footnote text off the number. + \hang + \textindent{\thisfootno}% + % + % Don't crash into the line above the footnote text. Since this + % expands into a box, it must come within the paragraph, lest it + % provide a place where TeX can split the footnote. + \footstrut + \futurelet\next\fo@t +} +\def\fo@t{\ifcat\bgroup\noexpand\next \let\next\f@@t + \else\let\next\f@t\fi \next} +\def\f@@t{\bgroup\aftergroup\@foot\let\next} +\def\f@t#1{#1\@foot} +\def\@foot{\strut\par\egroup} + +}%end \catcode `\@=11 + +% Set the baselineskip to #1, and the lineskip and strut size +% correspondingly. There is no deep meaning behind these magic numbers +% used as factors; they just match (closely enough) what Knuth defined. +% +\def\lineskipfactor{.08333} +\def\strutheightpercent{.70833} +\def\strutdepthpercent {.29167} +% +\def\setleading#1{% + \normalbaselineskip = #1\relax + \normallineskip = \lineskipfactor\normalbaselineskip + \normalbaselines + \setbox\strutbox =\hbox{% + \vrule width0pt height\strutheightpercent\baselineskip + depth \strutdepthpercent \baselineskip + }% +} + +% @| inserts a changebar to the left of the current line. It should +% surround any changed text. This approach does *not* work if the +% change spans more than two lines of output. To handle that, we would +% have adopt a much more difficult approach (putting marks into the main +% vertical list for the beginning and end of each change). +% +\def\|{% + % \vadjust can only be used in horizontal mode. + \leavevmode + % + % Append this vertical mode material after the current line in the output. + \vadjust{% + % We want to insert a rule with the height and depth of the current + % leading; that is exactly what \strutbox is supposed to record. + \vskip-\baselineskip + % + % \vadjust-items are inserted at the left edge of the type. So + % the \llap here moves out into the left-hand margin. + \llap{% + % + % For a thicker or thinner bar, change the `1pt'. + \vrule height\baselineskip width1pt + % + % This is the space between the bar and the text. + \hskip 12pt + }% + }% +} + +% For a final copy, take out the rectangles +% that mark overfull boxes (in case you have decided +% that the text looks ok even though it passes the margin). +% +\def\finalout{\overfullrule=0pt} + +% @image. We use the macros from epsf.tex to support this. +% If epsf.tex is not installed and @image is used, we complain. +% +% Check for and read epsf.tex up front. If we read it only at @image +% time, we might be inside a group, and then its definitions would get +% undone and the next image would fail. +\openin 1 = epsf.tex +\ifeof 1 \else + \closein 1 + % Do not bother showing banner with post-v2.7 epsf.tex (available in + % doc/epsf.tex until it shows up on ctan). + \def\epsfannounce{\toks0 = }% + \input epsf.tex +\fi +% +% We will only complain once about lack of epsf.tex. +\newif\ifwarnednoepsf +\newhelp\noepsfhelp{epsf.tex must be installed for images to + work. It is also included in the Texinfo distribution, or you can get + it from ftp://tug.org/tex/epsf.tex.} +% +\def\image#1{% + \ifx\epsfbox\undefined + \ifwarnednoepsf \else + \errhelp = \noepsfhelp + \errmessage{epsf.tex not found, images will be ignored}% + \global\warnednoepsftrue + \fi + \else + \imagexxx #1,,,\finish + \fi +} +% +% Arguments to @image: +% #1 is (mandatory) image filename; we tack on .eps extension. +% #2 is (optional) width, #3 is (optional) height. +% #4 is just the usual extra ignored arg for parsing this stuff. +\def\imagexxx#1,#2,#3,#4\finish{% + \ifpdf + \centerline{\dopdfimage{#1}{#2}{#3}}% + \else + % \epsfbox itself resets \epsf?size at each figure. + \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi + \setbox0 = \hbox{\ignorespaces #3}\ifdim\wd0 > 0pt \epsfysize=#3\relax \fi + \begingroup + \catcode`\^^M = 5 % in case we're inside an example + % If the image is by itself, center it. + \ifvmode + \nobreak\bigskip + % Usually we'll have text after the image which will insert + % \parskip glue, so insert it here too to equalize the space + % above and below. + \nobreak\vskip\parskip + \nobreak + \centerline{\epsfbox{#1.eps}}% + \bigbreak + \else + % In the middle of a paragraph, no extra space. + \epsfbox{#1.eps}% + \fi + \endgroup + \fi +} + + +\message{localization,} +% and i18n. + +% @documentlanguage is usually given very early, just after +% @setfilename. If done too late, it may not override everything +% properly. Single argument is the language abbreviation. +% It would be nice if we could set up a hyphenation file here. +% +\def\documentlanguage{\parsearg\dodocumentlanguage} +\def\dodocumentlanguage#1{% + \tex % read txi-??.tex file in plain TeX. + % Read the file if it exists. + \openin 1 txi-#1.tex + \ifeof1 + \errhelp = \nolanghelp + \errmessage{Cannot read language file txi-#1.tex}% + \let\temp = \relax + \else + \def\temp{\input txi-#1.tex }% + \fi + \temp + \endgroup +} +\newhelp\nolanghelp{The given language definition file cannot be found or +is empty. Maybe you need to install it? In the current directory +should work if nowhere else does.} + + +% @documentencoding should change something in TeX eventually, most +% likely, but for now just recognize it. +\let\documentencoding = \comment + + +% Page size parameters. +% +\newdimen\defaultparindent \defaultparindent = 15pt + +\chapheadingskip = 15pt plus 4pt minus 2pt +\secheadingskip = 12pt plus 3pt minus 2pt +\subsecheadingskip = 9pt plus 2pt minus 2pt + +% Prevent underfull vbox error messages. +\vbadness = 10000 + +% Don't be so finicky about underfull hboxes, either. +\hbadness = 2000 + +% Following George Bush, just get rid of widows and orphans. +\widowpenalty=10000 +\clubpenalty=10000 + +% Use TeX 3.0's \emergencystretch to help line breaking, but if we're +% using an old version of TeX, don't do anything. We want the amount of +% stretch added to depend on the line length, hence the dependence on +% \hsize. We call this whenever the paper size is set. +% +\def\setemergencystretch{% + \ifx\emergencystretch\thisisundefined + % Allow us to assign to \emergencystretch anyway. + \def\emergencystretch{\dimen0}% + \else + \emergencystretch = .15\hsize + \fi +} + +% Parameters in order: 1) textheight; 2) textwidth; 3) voffset; +% 4) hoffset; 5) binding offset; 6) topskip. Then whoever calls us can +% set \parskip and call \setleading for \baselineskip. +% +\def\internalpagesizes#1#2#3#4#5#6{% + \voffset = #3\relax + \topskip = #6\relax + \splittopskip = \topskip + % + \vsize = #1\relax + \advance\vsize by \topskip + \outervsize = \vsize + \advance\outervsize by 2\topandbottommargin + \pageheight = \vsize + % + \hsize = #2\relax + \outerhsize = \hsize + \advance\outerhsize by 0.5in + \pagewidth = \hsize + % + \normaloffset = #4\relax + \bindingoffset = #5\relax + % + \parindent = \defaultparindent + \setemergencystretch +} + +% @letterpaper (the default). +\def\letterpaper{{\globaldefs = 1 + \parskip = 3pt plus 2pt minus 1pt + \setleading{13.2pt}% + % + % If page is nothing but text, make it come out even. + \internalpagesizes{46\baselineskip}{6in}{\voffset}{.25in}{\bindingoffset}{36pt}% +}} + +% Use @smallbook to reset parameters for 7x9.5 (or so) format. +\def\smallbook{{\globaldefs = 1 + \parskip = 2pt plus 1pt + \setleading{12pt}% + % + \internalpagesizes{7.5in}{5.in}{\voffset}{.25in}{\bindingoffset}{16pt}% + % + \lispnarrowing = 0.3in + \tolerance = 700 + \hfuzz = 1pt + \contentsrightmargin = 0pt + \deftypemargin = 0pt + \defbodyindent = .5cm + % + \let\smalldisplay = \smalldisplayx + \let\smallexample = \smalllispx + \let\smallformat = \smallformatx + \let\smalllisp = \smalllispx +}} + +% Use @afourpaper to print on European A4 paper. +\def\afourpaper{{\globaldefs = 1 + \setleading{12pt}% + \parskip = 3pt plus 2pt minus 1pt + % + \internalpagesizes{53\baselineskip}{160mm}{\voffset}{4mm}{\bindingoffset}{44pt}% + % + \tolerance = 700 + \hfuzz = 1pt +}} + +% A specific text layout, 24x15cm overall, intended for A4 paper. Top margin +% 29mm, hence bottom margin 28mm, nominal side margin 3cm. +\def\afourlatex{{\globaldefs = 1 + \setleading{13.6pt}% + % + \afourpaper + \internalpagesizes{237mm}{150mm}{3.6mm}{3.6mm}{3mm}{7mm}% + % + \globaldefs = 0 +}} + +% Use @afourwide to print on European A4 paper in wide format. +\def\afourwide{% + \afourpaper + \internalpagesizes{9.5in}{6.5in}{\hoffset}{\normaloffset}{\bindingoffset}{7mm}% + % + \globaldefs = 0 +} + +% @pagesizes TEXTHEIGHT[,TEXTWIDTH] +% Perhaps we should allow setting the margins, \topskip, \parskip, +% and/or leading, also. Or perhaps we should compute them somehow. +% +\def\pagesizes{\parsearg\pagesizesxxx} +\def\pagesizesxxx#1{\pagesizesyyy #1,,\finish} +\def\pagesizesyyy#1,#2,#3\finish{{% + \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \hsize=#2\relax \fi + \globaldefs = 1 + % + \parskip = 3pt plus 2pt minus 1pt + \setleading{13.2pt}% + % + \internalpagesizes{#1}{\hsize}{\voffset}{\normaloffset}{\bindingoffset}{44pt}% +}} + +% Set default to letter. +% +\letterpaper + + +\message{and turning on texinfo input format.} + +% Define macros to output various characters with catcode for normal text. +\catcode`\"=\other +\catcode`\~=\other +\catcode`\^=\other +\catcode`\_=\other +\catcode`\|=\other +\catcode`\<=\other +\catcode`\>=\other +\catcode`\+=\other +\catcode`\$=\other +\def\normaldoublequote{"} +\def\normaltilde{~} +\def\normalcaret{^} +\def\normalunderscore{_} +\def\normalverticalbar{|} +\def\normalless{<} +\def\normalgreater{>} +\def\normalplus{+} +\def\normaldollar{$} + +% This macro is used to make a character print one way in ttfont +% where it can probably just be output, and another way in other fonts, +% where something hairier probably needs to be done. +% +% #1 is what to print if we are indeed using \tt; #2 is what to print +% otherwise. Since all the Computer Modern typewriter fonts have zero +% interword stretch (and shrink), and it is reasonable to expect all +% typewriter fonts to have this, we can check that font parameter. +% +\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} + +% Same as above, but check for italic font. Actually this also catches +% non-italic slanted fonts since it is impossible to distinguish them from +% italic fonts. But since this is only used by $ and it uses \sl anyway +% this is not a problem. +\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} + +% Turn off all special characters except @ +% (and those which the user can use as if they were ordinary). +% Most of these we simply print from the \tt font, but for some, we can +% use math or other variants that look better in normal text. + +\catcode`\"=\active +\def\activedoublequote{{\tt\char34}} +\let"=\activedoublequote +\catcode`\~=\active +\def~{{\tt\char126}} +\chardef\hat=`\^ +\catcode`\^=\active +\def^{{\tt \hat}} + +\catcode`\_=\active +\def_{\ifusingtt\normalunderscore\_} +% Subroutine for the previous macro. +\def\_{\leavevmode \kern.06em \vbox{\hrule width.3em height.1ex}} + +\catcode`\|=\active +\def|{{\tt\char124}} +\chardef \less=`\< +\catcode`\<=\active +\def<{{\tt \less}} +\chardef \gtr=`\> +\catcode`\>=\active +\def>{{\tt \gtr}} +\catcode`\+=\active +\def+{{\tt \char 43}} +\catcode`\$=\active +\def${\ifusingit{{\sl\$}}\normaldollar} +%\catcode 27=\active +%\def^^[{$\diamondsuit$} + +% Set up an active definition for =, but don't enable it most of the time. +{\catcode`\==\active +\global\def={{\tt \char 61}}} + +\catcode`+=\active +\catcode`\_=\active + +% If a .fmt file is being used, characters that might appear in a file +% name cannot be active until we have parsed the command line. +% So turn them off again, and have \everyjob (or @setfilename) turn them on. +% \otherifyactive is called near the end of this file. +\def\otherifyactive{\catcode`+=\other \catcode`\_=\other} + +\catcode`\@=0 + +% \rawbackslashxx output one backslash character in current font +\global\chardef\rawbackslashxx=`\\ +%{\catcode`\\=\other +%@gdef@rawbackslashxx{\}} + +% \rawbackslash redefines \ as input to do \rawbackslashxx. +{\catcode`\\=\active +@gdef@rawbackslash{@let\=@rawbackslashxx }} + +% \normalbackslash outputs one backslash in fixed width font. +\def\normalbackslash{{\tt\rawbackslashxx}} + +% \catcode 17=0 % Define control-q +\catcode`\\=\active + +% Used sometimes to turn off (effectively) the active characters +% even after parsing them. +@def@turnoffactive{@let"=@normaldoublequote +@let\=@realbackslash +@let~=@normaltilde +@let^=@normalcaret +@let_=@normalunderscore +@let|=@normalverticalbar +@let<=@normalless +@let>=@normalgreater +@let+=@normalplus +@let$=@normaldollar} + +@def@normalturnoffactive{@let"=@normaldoublequote +@let\=@normalbackslash +@let~=@normaltilde +@let^=@normalcaret +@let_=@normalunderscore +@let|=@normalverticalbar +@let<=@normalless +@let>=@normalgreater +@let+=@normalplus +@let$=@normaldollar} + +% Make _ and + \other characters, temporarily. +% This is canceled by @fixbackslash. +@otherifyactive + +% If a .fmt file is being used, we don't want the `\input texinfo' to show up. +% That is what \eatinput is for; after that, the `\' should revert to printing +% a backslash. +% +@gdef@eatinput input texinfo{@fixbackslash} +@global@let\ = @eatinput + +% On the other hand, perhaps the file did not have a `\input texinfo'. Then +% the first `\{ in the file would cause an error. This macro tries to fix +% that, assuming it is called before the first `\' could plausibly occur. +% Also back turn on active characters that might appear in the input +% file name, in case not using a pre-dumped format. +% +@gdef@fixbackslash{% + @ifx\@eatinput @let\ = @normalbackslash @fi + @catcode`+=@active + @catcode`@_=@active +} + +% Say @foo, not \foo, in error messages. +@escapechar = `@@ + +% These look ok in all fonts, so just make them not special. +@catcode`@& = @other +@catcode`@# = @other +@catcode`@% = @other + +@c Set initial fonts. +@textfonts +@rm + + +@c Local variables: +@c eval: (add-hook 'write-file-hooks 'time-stamp) +@c page-delimiter: "^\\\\message" +@c time-stamp-start: "def\\\\texinfoversion{" +@c time-stamp-format: "%:y-%02m-%02d.%02H" +@c time-stamp-end: "}" +@c End: diff --git a/src/libs/termcap/tparam.c b/src/libs/termcap/tparam.c new file mode 100644 index 0000000000..5a9809aab4 --- /dev/null +++ b/src/libs/termcap/tparam.c @@ -0,0 +1,332 @@ +/* Merge parameters into a termcap entry string. + Copyright (C) 1985, 87, 93, 95, 2000 Free Software Foundation, Inc. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* Emacs config.h may rename various library functions such as malloc. */ +#ifdef HAVE_CONFIG_H +#include +#endif + +#ifdef emacs +#include "lisp.h" /* for xmalloc */ +#else + +#ifdef STDC_HEADERS +#include +#include +#else +char *malloc (); +char *realloc (); +#endif + +/* Do this after the include, in case string.h prototypes bcopy. */ +#if (defined(HAVE_STRING_H) || defined(STDC_HEADERS)) && !defined(bcopy) +#define bcopy(s, d, n) memcpy ((d), (s), (n)) +#endif + +#endif /* not emacs */ + +#ifndef NULL +#define NULL (char *) 0 +#endif + +#ifndef emacs +static void +memory_out () +{ + write (2, "virtual memory exhausted\n", 25); + exit (1); +} + +static char * +xmalloc (size) + unsigned size; +{ + register char *tem = malloc (size); + + if (!tem) + memory_out (); + return tem; +} + +static char * +xrealloc (ptr, size) + char *ptr; + unsigned size; +{ + register char *tem = realloc (ptr, size); + + if (!tem) + memory_out (); + return tem; +} +#endif /* not emacs */ + +/* Assuming STRING is the value of a termcap string entry + containing `%' constructs to expand parameters, + merge in parameter values and store result in block OUTSTRING points to. + LEN is the length of OUTSTRING. If more space is needed, + a block is allocated with `malloc'. + + The value returned is the address of the resulting string. + This may be OUTSTRING or may be the address of a block got with `malloc'. + In the latter case, the caller must free the block. + + The fourth and following args to tparam serve as the parameter values. */ + +static char *tparam1 (); + +/* VARARGS 2 */ +char * +tparam (string, outstring, len, arg0, arg1, arg2, arg3) + char *string; + char *outstring; + int len; + int arg0, arg1, arg2, arg3; +{ + int arg[4]; + + arg[0] = arg0; + arg[1] = arg1; + arg[2] = arg2; + arg[3] = arg3; + return tparam1 (string, outstring, len, NULL, NULL, arg); +} + +char *BC; +char *UP; + +static char tgoto_buf[50]; + +char * +tgoto (cm, hpos, vpos) + char *cm; + int hpos, vpos; +{ + int args[2]; + if (!cm) + return NULL; + args[0] = vpos; + args[1] = hpos; + return tparam1 (cm, tgoto_buf, 50, UP, BC, args); +} + +static char * +tparam1 (string, outstring, len, up, left, argp) + char *string; + char *outstring; + int len; + char *up, *left; + register int *argp; +{ + register int c; + register char *p = string; + register char *op = outstring; + char *outend; + int outlen = 0; + + register int tem; + int *old_argp = argp; + int doleft = 0; + int doup = 0; + + outend = outstring + len; + + while (1) + { + /* If the buffer might be too short, make it bigger. */ + if (op + 5 >= outend) + { + register char *new; + int offset = op - outstring; + + if (outlen == 0) + { + outlen = len + 40; + new = (char *) xmalloc (outlen); + bcopy (outstring, new, offset); + } + else + { + outlen *= 2; + new = (char *) xrealloc (outstring, outlen); + } + + op = new + offset; + outend = new + outlen; + outstring = new; + } + c = *p++; + if (!c) + break; + if (c == '%') + { + c = *p++; + tem = *argp; + switch (c) + { + case 'd': /* %d means output in decimal. */ + if (tem < 10) + goto onedigit; + if (tem < 100) + goto twodigit; + case '3': /* %3 means output in decimal, 3 digits. */ + if (tem > 999) + { + *op++ = tem / 1000 + '0'; + tem %= 1000; + } + *op++ = tem / 100 + '0'; + case '2': /* %2 means output in decimal, 2 digits. */ + twodigit: + tem %= 100; + *op++ = tem / 10 + '0'; + onedigit: + *op++ = tem % 10 + '0'; + argp++; + break; + + case 'C': + /* For c-100: print quotient of value by 96, if nonzero, + then do like %+. */ + if (tem >= 96) + { + *op++ = tem / 96; + tem %= 96; + } + case '+': /* %+x means add character code of char x. */ + tem += *p++; + case '.': /* %. means output as character. */ + if (left) + { + /* If want to forbid output of 0 and \n and \t, + and this is one of them, increment it. */ + while (tem == 0 || tem == '\n' || tem == '\t') + { + tem++; + if (argp == old_argp) + doup++, outend -= strlen (up); + else + doleft++, outend -= strlen (left); + } + } + *op++ = tem ? tem : 0200; + case 'f': /* %f means discard next arg. */ + argp++; + break; + + case 'b': /* %b means back up one arg (and re-use it). */ + argp--; + break; + + case 'r': /* %r means interchange following two args. */ + argp[0] = argp[1]; + argp[1] = tem; + old_argp++; + break; + + case '>': /* %>xy means if arg is > char code of x, */ + if (argp[0] > *p++) /* then add char code of y to the arg, */ + argp[0] += *p; /* and in any case don't output. */ + p++; /* Leave the arg to be output later. */ + break; + + case 'a': /* %a means arithmetic. */ + /* Next character says what operation. + Add or subtract either a constant or some other arg. */ + /* First following character is + to add or - to subtract + or = to assign. */ + /* Next following char is 'p' and an arg spec + (0100 plus position of that arg relative to this one) + or 'c' and a constant stored in a character. */ + tem = p[2] & 0177; + if (p[1] == 'p') + tem = argp[tem - 0100]; + if (p[0] == '-') + argp[0] -= tem; + else if (p[0] == '+') + argp[0] += tem; + else if (p[0] == '*') + argp[0] *= tem; + else if (p[0] == '/') + argp[0] /= tem; + else + argp[0] = tem; + + p += 3; + break; + + case 'i': /* %i means add one to arg, */ + argp[0] ++; /* and leave it to be output later. */ + argp[1] ++; /* Increment the following arg, too! */ + break; + + case '%': /* %% means output %; no arg. */ + goto ordinary; + + case 'n': /* %n means xor each of next two args with 140. */ + argp[0] ^= 0140; + argp[1] ^= 0140; + break; + + case 'm': /* %m means xor each of next two args with 177. */ + argp[0] ^= 0177; + argp[1] ^= 0177; + break; + + case 'B': /* %B means express arg as BCD char code. */ + argp[0] += 6 * (tem / 10); + break; + + case 'D': /* %D means weird Delta Data transformation. */ + argp[0] -= 2 * (tem % 16); + break; + + default: + abort (); + } + } + else + /* Ordinary character in the argument string. */ + ordinary: + *op++ = c; + } + *op = 0; + while (doup-- > 0) + strcat (op, up); + while (doleft-- > 0) + strcat (op, left); + return outstring; +} + +#ifdef DEBUG + +main (argc, argv) + int argc; + char **argv; +{ + char buf[50]; + int args[3]; + args[0] = atoi (argv[2]); + args[1] = atoi (argv[3]); + args[2] = atoi (argv[4]); + tparam1 (argv[1], buf, "LEFT", "UP", args); + printf ("%s\n", buf); + return 0; +} + +#endif /* DEBUG */ diff --git a/src/libs/termcap/version.c b/src/libs/termcap/version.c new file mode 100644 index 0000000000..e86bdc476f --- /dev/null +++ b/src/libs/termcap/version.c @@ -0,0 +1,2 @@ +/* Make the library identifiable with the RCS ident command. */ +static char *version_string = "\n$Version: GNU termcap 1.3.1 $\n";