MishTerm

Introduction

Welcome to Mishterm v1.8, a fully featured freeware telnet client for Windows 95/NT/98/ME/2000/XP. Mishterm is Copyright 1997-2004 Bryan McPhail. Mishterm has not been actively developed since 2000 and releases since then are mainly bugfixes. Further bug-reports are welcomed! Mishterm is provided as is, with no warranty and no guarantees. In no event will the author be held liable for any damages arising from the use of this software. This software may be freely copied, providing the installation package (zip or exe) is not modified.

Download

Download installer - Mishterm v1.80 (128k)

Help

Introduction & Detailed Guide
Setup & Installation
Menu Options & Features
Terminal Emulation Notes
Customising Mishterm & Login Scripts
Registration & Licensing

Version 1.0 released September 1997.

Version 1.1 (November 1997) added the following features over initial release:

  • Right mouse button now produces a floating popup menu.
  • The menu bar can be removed for greater screen area.
  • Limitation of 80 character width in Page Mode removed.
  • Fixed several bugs in both the Windows code and the network code.
  • Fixed some graphics glitches when using blocks.

    Version 1.1a (November 1997) fixed the bug in minimising the window.

    Version 1.2 (December 1997) adds:

  • Support for ANSI flashing text.
  • Added extra support for auto-page mode detect in some SunOS 5 systems.

    Version 1.2b (Feburary 1998) adds:

  • Added extra support for auto-page mode detect in some SunOS 4.1 systems.
  • Improved documentation :)

    Versions 1.3 - 1.6 (Feburary 2000) added:

  • Web browser integration.
  • Bug-fixes.
  • Other stuff?
  • Probably the last release, only put out as my email address changed and I wanted an updated version for the web.

    Versions 1.7 - 1.8 (Feburary 2000 - June 2004) added:

  • Bug-fixes.
  • Installer provided.


    Introduction & Detailed Guide

    Mishterm is a telnet client that operates in several modes. The default mode is called Scroll Mode and is used to connect to talkers, muds, Unix hosts, etc. Page Mode is typically used with programs that need direct cursor control (see later). Mishterm can operate as a line mode telnet client where each line typed by the user is sent to the remote server when return is pressed, or character mode where each character typed is sent straight away to the remote host.

    From both telnet negotiations and ansi control codes Mishterm should automatically switch between modes when needed. For example, when connecting to a Unix host, from the negotiation between the client and server Mishterm will automatically switch into character mode from line mode. When a direct cursor program such as Pine or Lynx is used, Mishterm will move to page mode when it recieves the Ansi control code to go into direct cursor mode. It will then switch back to scroll mode when the program is finished.

    These options are included in the Expert Menu if you need to change them manually for whatever reason.

    Note: Line Mode & Character Mode - In character mode everything typed is sent direct to the server, including control keys. This means you cannot use Ctrl-C/V to cut and paste for example, you must use the menu. In line mode each character is assembled into a line and the line is sent when return is pressed locally. Here other keys work as expected, eg, control keys, function keys. In this mode you can also use the up & down cursor keys to step between a history of lines you have typed.

    Mishterm also accepts two types of command line argument - you can provide a host and port in either Unix style mishterm host port format or Windows mishterm telnet://host:port.

    At the Open> prompt you can also type a host and a port number to connect to. In all cases if you don't enter a port number the default is 23 - the standard telnet port. You can also enter the command status here for some information about the currently running Mishterm process.


    Setup & Installation

    If not using the automatic installer then unzip Mishterm in a directory such as C:\Program Files\Mishterm\. You can then make a shortcut to the file as usual, perhaps placing it on your desktop and in your StartUp menu.

    If you use Netscape Navigator v3.0 or lower, to set Mishterm up as your default Telnet application select General Preferences then Apps and type the pathname of Mishterm, eg, "C:\Program Files\Mishterm\Mishterm.exe".

    If you want to set Mishterm up as your default Windows Telnet client (including Internet Explorer and Netscape 4.0) open Windows Explorer and select Options from the View menu. Then choose File Types and scroll down to URL Telnet Protocol. Select this and click on Edit. The action should be listed as "open", now click on Edit again and type the pathname of Mishterm, eg, C:\Program Files\Mishterm\Mishterm.exe

    Now whenever you click on a "telnet" link Mishterm is automatically launched.

    For further setup you can edit the mishterm.ini file and create your own scripts (see later).


    Menu Options & Features

    File Menu

    New Window: This creates a new Mishterm window.
    Connect: This allows you to connect to a remote host
    Disconnect: Disconnect from remove host
    Execute Script: This executes a Mishterm script file (see later)
    Save Window As: This allows you to save the current window in either plain text format or by default, an html file (where all colour codes are saved).
    Preferences: This brings up the preferences menu.
    Exit: Quit

    Preferences Menu

    Send telnet options: If this is enabled then telnet negotiation is only initiated on connections to port 23. Mishterm will still respond to telnet IAC options on any port. On by default.
    Terminal Type: If this is enabled then Mishterm will respond to IAC terminal type queries, it returns the given string. On by default.
    X-Display: If this is enabled then Mishterm will respond to IAC x-display-location queries, it returns the given string, which is your computers hostname as returned by windows as default. On by default.
    NAWS: If this is enabled then Mishterm will respond to IAC NAWS (window size) queries, it returns the current window size. You can also change the window size here. On by default.
    Environment Variables: If this is enabled then Mishterm will respond to IAC OLD_ENV queries, you can specify up to 8 variables which are sent to the remote host. On by default.
    Chat Size & Tab Size: Here you can set the height of the chat window and the tab size.

    Many of these options can be set in the mishterm.ini file (see later.)

    Options Menu


    ANSI Colour and Text Effects: This option controls whether coloured and effected text is displayed, including bold, reverse, underline, effects etc. On by default.
    Scroll to bottom on TTY output: This controls whether the window will automatically scroll to the bottom when there is new output from the remote host. On by default.
    Scroll to bottom on TTY input: This controls whether the window will automatically scroll to the bottom when the user type at the keyboard. On by default.
    ASCII Bell: This controls whether an audio effect is used at an incoming ASCII bell code. On by default.
    Allow Titlebar changes: This controls whether the terminal will accept xterm style titlebar and icon change escape codes. On by default.
    Text Cursor: Turns on/off the cursor. On by default.
    Chat Window: This option will redirect all keyboard input to a separate window allowing separate windows for input & output. It is intended for use with talkers and muds. Note: The chat window does not operate when the terminal is in character mode. Off by default.
    Hide Menu Bar: This option hides the menu bar giving more client screen area. It can be returned by pressing the right mouse button.

    Expert Menu

    All of the options in the 'Expert' menu should be automatically set and reset while Mishterm is in use. However they are all provided here in case of incompatiblity.


    Echo: Controls local echo of characters. On by default.
    Character Mode: If this is enabled Mishterm is in character mode else line mode (see above). Off by default.
    Single Page Mode: If this is enabled Mishterm is in single page mode else scrolling mode (see above). Off by default.
    Return is CR LF: This option toggles between CR + LF being sent as return character and a single LF as return character.
    Line Wrap: This toggles line wrap in page mode (no effect in scroll mode). On by default.
    Insert Mode: This toggles character insert in page mode (no effect in scroll mode). Off by default.


    Terminal Emulation Notes

    Mishterm supports (and doesn't support!) the following codes in each of its modes. Remember, with ANSI codes and telnet negotiation Mishterm should switch from scroll mode to page mode whenever it needs a function that isn't supported in scroll mode.

    Option Escape Code Page Mode Scroll Mode Comments

    Terminal ID Request
    Terminal ID (Old)
    Status & Cursor Position requests
    Text Attributes (Bold, Colour, etc)
    Insert Lines
    Delete Lines
    Insert Characters
    Delete Characters
    Erase Line
    Clear Screen
    Cursor Position
    Cursor Up
    Cursor Down
    Cursor Right
    Cursor Left
    Set Scrolling Range
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Set ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Reset ANSI Mode
    Xterm Title & Icon change
    Reset
    Set page mode
    Set non-page mode
    Scroll Up
    Scroll Down

    ^[ [ c
    ^[ Z
    ^[ [ n
    ^[ [ m
    ^[ [ L
    ^[ [ M
    ^[ [ @
    ^[ [ P
    ^[ [ K
    ^[ [ J
    ^[ [ H/f
    ^[ [ A
    ^[ [ B
    ^[ [ C
    ^[ [ D
    ^[ [ r
    ^[ [ ? 1 h
    ^[ [ ? 7 h
    ^[ [ ? 9 h
    ^[ [ ? 25 h
    ^[ [ ? 47 h
    ^[ [ 4 h
    ^[ [ 12 h
    ^[ [ 20 h
    ^[ [ ? 1 l
    ^[ [ ? 7 l
    ^[ [ ? 9 l
    ^[ [ ? 25 l
    ^[ [ ? 47 l
    ^[ [ 4 l
    ^[ [ 12 l
    ^[ [ 20 l
    ^[ ] * z
    ^[ [ c
    ^[ 7
    ^[ 8
    ^[ M
    ^[ D

    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes

    Yes
    Yes
    Partial
    Yes
    No
    No
    Yes
    Yes
    Partial
    Partial
    Partial
    Partial
    Partial
    Yes
    Yes
    No
    Yes
    No
    Yes
    Yes
    No
    Yes
    Yes
    Yes
    Yes
    No
    Yes
    Yes
    No
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    Yes
    No
    No

    Returns VT100 Advanced video
    Returns VT100 Advanced video
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Cursor Key App
    Linewrap Off
    Set Page Mode
    Cursor On
    Linewrap On
    Insert Mode On
    Echo On
    Return = CR + LF
    Non Cursor Key App
    Linewrap Off
    Set Non-Page Mode
    Cursor Off
    Linewrap On
    Insert Mode Off
    Echo Off
    Return = LF
    .
    .
    .
    .
    .
    .

    Telnet IAC Options

    Mishterm supports the following Telnet IAC options:

  • Echo (User variable)
  • Suppress Go Ahead (Automatic)
  • Terminal Type (User variable)
  • NAWS (Window Size) (User variable)
  • Terminal Speed (Automatic)
  • X-Display Location (User variable)
  • Environment Variables (User variable)
  • Line Flow (Automatic)

    From the Preferences option in the File Menu you can specify what options you want used and specify a terminal type and environment variables.


    Customising Mishterm & Login Scripts

    In the same directory as the MishTerm exectuable there is a file called mishterm.ini. You can edit this file with notepad or any text editor, here is a sample file:
    # Favourites menu...
    # Use -- to insert a seperator line
    #
    
    [scripts]
    item=example.msr
    --
    item=example2.msr
    item=example3.msr
    [end]
    
    # Environment variables - Can be up to 8 of these
    # Format is: Variable Value
    #
    [env]
    CLIENT mishterm
    TEST tester
    PARP parpadom
    [end]
    
    # Various options...
    #
    # chatsize = size of chat window
    # tabsize = size of tabs
    # xsize, yxsize - size of main window
    #
    [various]
    chatsize=3
    tabsize=8
    xsize=80
    ysize=23
    [end]
    

    In the [scripts] section you can put the filename of up to 12 scripts you want to be appear in your favourites menu. These scripts are kept in the directory scripts (who'd have guessed? :). You put in -- to signify a seperator line in the menu.

    If you use Mishterm to login to Unix workstations then you can specify up to 8 Environment variables which should propagate to the remote host at connection time. The format is:

    Variable Value

    In the various section you can specify default screen size, tab size and size of the chat window. All these options can be altered from the preferences menu inside Mishterm.

    Login Scripts

    As previously stated login scripts live in the scripts directory. Here is a sample file:
    # Sample Mishterm script
    #
    # name=  This is the name which appears on the favourites menu
    # address=  This is the host address in format:  host port
    #
    
    name=The Crypt (churchnet2.ucsm.ac.uk 666)
    address=churchnet2.ucsm.ac.uk 666
    
    [login]
    name:
    Your Name
    password:
    Your Password
    [end]
    
    There must be a field called name which is the name that will appear on the favourites menu if you install this as favourite script. The address field holds the name of the remote host and the optional port number.

    You may specify a [login] section. This is used to perform automatic logins to hosts. The format is:

    Trigger text #1
    Text send in response to trigger #1
    Trigger text #2
    Text send in response to trigger #2
    etc, etc
    
    So in the example above Mishterm will send the string Your Name when it receives the trigger text name: (ie, as part of "Enter your name:"). Similarly it sends a password.

    NOTE: You must be careful when setting up scripts so you don't reveal your password. If a script DOES NOT complete properly for whatever reason then for example a user on a talker could find out your password by supplying the string password: as part of the talker output. Therefore you must make sure you only put in trigger text that you know will be used. The login triggers are turned off when ALL triggers have been used. So if you mis-write a script and it includes text that is not used you may be vunerable to attack. If this does happen you will notice you can manually quit the login trigger mechanism in the Expert menu.


    Registration & Licensing

    If you use this program send a mail to
    mishterm@tendril.co.uk (it would be nice if you included your location though this nor even your name are necessary). This is purely to help me gauge how many people use the program...


    Back