From:
                                                                 Fri 8:06 PM
Subject: Re: IBM 3151 Terminals to OPENVMS

[ emailed and posted ]

~ See the "Support for Third-Party Terminals" chapter in the "VMS RTL
~ Screen Management (SMG$)" Manual.

Yep.  I actually managed to dredge up an old SMGTERMS.TXT style terminal
definition that I wrote for an IBM 3162 terminal, 10 (gasp!) years ago.
I dunno whether it matches an IBM 3151.

Here tis ... put your definition into a file called TERMTABLE.TXT,
then run SYS$SYSTEM:SMGBLDTRM.EXE, then define TERM$TABLOC to point
to the directory where your TERMTABLE.EXE lives.  Then do a
SET TERM/DEVICE=IBM3162.

Then you will discover that most VMS full-screen applications
don't pay attention to the SMG termtable ... for example, you
won't be able to use EDT or TPU in full-screen mode.  Or MONITOR.
Oh well.  A few things will work - SHOW CLUSTER/CONTINUOUS.  Most
third-party utilities WILL work - e.g. VILE.

Have fun,

Aaron

---

! IBM 3162 in "native mode"
! from IBM 3162 ASCII Display Station Programmer's Guide and Reference
! Information
!
! Last modified: 20-Apr-1988/al
!
! 20-Apr-1988   al      First version
!
NAME = 'IBM3162'
    BOOLEAN
        advanced_video = 0,
        ansi_crt = 0,
        auto_margin = 0,
        backspace = 1,
        dec_crt = 0,
        dec_crt = 0,
        edit = 0,
        eight_bit = 0,
        fulldup = 1,
        lowercase = 1,
        no_scroll = 0,
        overstrike = 0,
        physical_ff = 0,
                physical_tabs = 0,
        regis = 0,
        scope = 1
    NUMERIC
        columns = 80,
        number_fn_keys = 24,
        rows = 24,
        wide_screen_columns = 132
    STRING
        ! the 3162's "Extended Set Cursor Address Command" is depraved.
        ! Try 3101-style addressing, which only can reach to col. 95.
        ! a la VT52
        set_cursor_abs = "$Y(%1+31)(%2+31)",
        cursor_down = "$B",             cursor_up = "$A",
        cursor_right = "$C",            cursor_left = "$D",
        home = "$H",                    erase_whole_display = "$L",
        erase_to_end_line = "$I",       erase_to_end_display = "$J",
        key_down_arrow = "$B",          key_up_arrow = "$A",
        key_right_arrow = "$C",         key_left_arrow = "$D",
        key_f1 = "$a",  key_f2 = "$b",  key_f3 = "$c",  key_f4 = "$d",
        key_f5 = "$e",  key_f6 = "$f",  key_f7 = "$g",  key_f8 = "$h",
        key_f9 = "$i",  key_f10 = "$j", key_f11 = "$k", key_f12 = "$l",
        key_f13 = "$_!a",       key_f14 = "$_!b",       key_f15 = "$_!c",
        key_f16 = "$_!d",       key_f17 = "$_!e",       key_f18 = "$_!f",
        key_f19 = "$_!g",       key_f20 = "$_!h"

        ! there's more stuff I could try, but this should be close enough
        ! for now ...

END