User:RDBrown/HP Terminal Emulators

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

HP CRT Terminals support ENQ/ACK handshaking and Block mode transfers.[1] HP Graphics Terminals supported Escape sequences analogous to the HP-GL Vector Graphics sequences like the HP plotters.[2] A large subset of the escape sequences that terminals support are documented in the HP PCL (Printer Control Language) manuals. HP Escape sequences aren't ANSI compliant.[3] ENQ/ACK Handshaking is required for

  • HP2100/HP1000
ENQ/ACK is required for terminals connected to a Buffered Asynchronous Communications Interface (BACI), but not for SIMH Telnet connections.[4]
Terminal

Type

Block Mode Device Class or

Terminal Model

10 Available General HP CRT
11 Available Special HP d
12 Available Special HP CRT (HP 2645K)
15 Special HP Hardcopy (HP 2635)
16 General HP Hardcopy (HP 2635)
Directly connecting to an MPE machine over a serial line, needs a terminal emulator that can send a BREAK and hardware supporting that. For Mac OS/X Frank McConnel confirms the Keyspan USB-19HS USB serial adapter works.
Documentation/usb/usb-serial.txt and drivers/usb/serial in the Linux kernel source may provide information on other USB serial adapters that support BREAK.


As a niche market, few terminal emulators supporting HP emulation are available without cost.

Terminal Emulators[edit]

Testing was done on Ubuntu 14.04.4 x86_64 and Windows 7 (6.1.7601) connecting to the SIMH HP 3000 Simulator V4.0-0 Beta 3a4e879 running locally. Minimal block mode testing was done by running FORMSPEC.PUB.SYS and entering QEDIT 3.9.1 Visual mode.

Microsoft Windows[edit]

QCTerm from AICS Research[edit]

This seems to be the sole emulator that is free to run and supports Block mode.[6]

Using version 3.1a with QCTERM

Connection Settings
Network Type: TELNET (Advanced) Port: 1054 Terminal Type: HP2621A Host Name: 127.0.0.1

both FORMSPEC and QEDIT visual mode ran. QEDIT visual mode also worked without need the Terminal Type changed.

On Wine 1.6.2 and perhaps Microsoft Windows versions after 7 it needed regsvr32 threed32.ocx run and mfc40.dll installed in \windows\syswow64\ (on 64-bit Windows). Microsoft KB-172193 mentions ThreeD32.OCX as a discontinued Visual Basic 4.0 control.

Walker, Richer & Quinn (WRQ) now Attachmate Reflection[edit]

Reflection is a highly capable commercial emulator with a long history. [7] If telnet connections are supported, I'd expect it to just work. With it's PCLINK transfer program installed on the HP3000 it provided a fast file interchange between MSDOS and MPE. It's container file format encapsulating the MPE file structure was a defacto standard for MPE file interchange. Reflection version 9 is reported as working under Wine.

Kermit for Windows[edit]

Since October 2013, Kermit 95 has been open-sourced and released under a BSD-like license.[8] It includes support for a terminal type of hp2621a or equivalently hpterm. It supports ENQ/ACK handshaking, but by source inspection, no Block mode. (No protected field support). As such it will run character mode applications like Unix curses (programming library) applications. It has yet to work for me under wine. Supported terminal types.

[C:\Temp\latest_build\winkermit-3.0-test-21-nov-2013-vc6\] K-95> set term type ?
 One of the following:
 adm3a      ba80       hp2621a    scoansi    vc404      vt320pc    wy60
 adm5       beterm     hpterm     sni-97801  vip7809    vt52
 aixterm    dg200      hz1500     sun        vt100      vtnt
 annarbor   dg210      ibm3151    tty        vt102      wy160
 ansi-bbs   dg217      linux      tvi910+    vt220      wy30
 at386      heath19    qansi      tvi925     vt220pc    wy370
 avatar/0+  hft        qnx        tvi950     vt320      wy50

As K-95 is now using the C-Kermit routines, the following TELNET configuration options may be required for quick connection to SIMH.

set telopt /client KERMIT refused 
set telopt /client TERMINAL-TYPE refused
set telopt /client NAWS refused
set telopt /client NEW-ENVIRONMENT refused
set telopt /client COM-PORT-CONTROL refused
telnet 127.0.0.1 1054

TELNET /NOWAIT 127.0.0.1 1054 also works.

MSDOS[edit]

DOSBOX is targetted at running MS-DOS games, but can remap the serial port(s) to TELNET. As at version 0.74 it requires this patch to support BREAK in a TELNET connection. It will also run Dave Dunfield's ImageDisk utilies to convert TeleDisk images from the HP Museum site.[9]

Configuring DOSBox to use serial1 nullmodem server:127.0.0.1 port:1054 rather than serial1 modem and connecting with the Hayes like command ATD 127.0.0.1 port:1054 seemed more stable.

HP Terminal Program A.00.03[edit]

Emulates HP2392, HP2623 or HP2627 terminals. Block mode worked.[10] The later two emulations are graphics terminals that should support HP-GL. Note that the HP 150 emulates the 2623.

AdvanceLink A.05.02[edit]

Emulates HP2392 terminals. Block mode worked.[11] I haven't yet got file transfer working.

Mac OS/X[edit]

Testing done on OS/X 10.11 on a case-insensitive HFS+ filesystem, with wine installed with HomeBrew

$ brew install wine
$ brew install winetricks # if you want to use to winetricks to download mfc40.dll

and with a default wine configuration $HOME/.wine[12]

QCTerm 3.1a under wine[edit]

Retrieve the QCTerm zipped installer.[6] Unzip and then run the QCTerm Installshield installer.

$ wine qcterm-setup.exe

By default this will install into "C:\Program Files\AICS Research\qcterm\"

QCTerm requires MFC40.DLL, which can be installed with winetricks (downloaded and installed from activex.microsoft.com/controls/vc/mfc40.cab) .

winetricks mfc40

Otherwise copy in the 32-bit mfc40.dll.

$ cp -p mfc40.dll $HOME/.wine/drive_c/windows/system32

Register the threed32.ocx control for QCTerm.

$ cd $HOME/.wine/drive_c/Program\ Files/AICS\ Research/qcterm
$ regsvr32 threed32.ocx
The threed32.ocx should be the pathname for the file in the directory. Don't assume Windows case-independance on a case-dependant filesystem.

If using a Keyspan USA-19HS USB serial adapter to connect, you should symlink the USB serial device to Wine's COM1.

$ ln -s /dev/cu.KeySerial1 $HOME/.wine/dosdevices/com1

You will need to select the Terminal menu's "Transmit Control Characters to Host" item if you want control-A passed to the 3000 as a console interrupt, instead of interpreted locally as the "Select All" function.

On Ubuntu 14.04.4 x86_64 running wine-1.6.2 winetricks reports using a 64-bit WINEPREFIX, though the path is $HOME/.wine .
There QCTerm installed into "C:\Program Files (x86)\AICS Research\qcterm\" and I installed MFC40.DLL into $HOME/.wine/drive_c/windows/syswow64
You could expect similar changes in future versions of wine for OS/X.
The QCTerm-Setup.exe from OpenMPE.com ran to completion on that version of wine and the files were identical to the version from HPMuseum, though the installer executables differ.
I'm not sure that the installer offered a chance to change the install target directory.

XWindows[edit]

hpterm 0.5[edit]

Emulates HP 700/92 terminals.[13] It depends on QT3 and will need porting to current Linux (or CygWin).

References[edit]

  1. ^ "Networks from RS-232 to TCP/IP: ENQ/ACK". The HP Server Encyclopedia. Robelle. 2004.
  2. ^ "Section 5 — Graphics Input/Output Subsystem Function Reference". HP150 Programmer's Reference Manual (PDF). Hewlett Packard. June 1984. pp. 5-1–5-103 (PDF 172–274). 45435-90002.
  3. ^ HP 2392 and later HP terminals supporting HP personality had a configuration option for ANSI support.
    Of the HP 700 series terminals, I think only the 700/92 supported an HP personality
  4. ^ Bryan, J. David (26 January 2014). "RTE-6VM for 21MX Computers". 1000-RTE (Software).
  5. ^ "Table C-2. Point-to-Point Terminal Types.". MPE IV File System reference manual (PDF). HP 3000 Computer Systems. Hewlett Packard. February 1982. pp. 228 C-4. 30000-90236.
  6. ^ a b "QCTerm 700/92 Emulator". HP Computer Museum.
  7. ^ Sieler, Stan (1985). "PC2622 review". Review of HP terminal emulators for the IBM PC and HP 150.
  8. ^ "Open Source Kermit 95 for Windows Progress Report". The Kermit Project. October 2015.
  9. ^ Dunfield, Dave. "Special purpose packages: IMD — ImageDisk". DOS Widgets.
  10. ^ "HP Terminal Program (5.25")". Vectra DOS/Windows (Software). HP Computer Museum. 1988. Documentation
  11. ^ "AdvanceLink for DOS". Vectra DOS/Windows (Software). HP Computer Museum. 1988. Documentation
  12. ^ Thanks to Frank McConnell for the OS/X information
  13. ^ "hpterm". SourceForge.

External Links[edit]