-
Notifications
You must be signed in to change notification settings - Fork 17
Feature Comparison
This page provides quick comparison of Kermit 95 with other open-source terminal emulators for Windows. Most of this information has been taken from the following locations:
- https://en.wikipedia.org/wiki/Comparison_of_SSH_clients
- https://ttssh2.osdn.jp/manual/4/en/
- https://www.chiark.greenend.org.uk/~sgtatham/putty/
Additions/corrections/suggestions highly welcome!
Virtual Terminal connections over the following protocols/connection types:
Feature | Kermit 95 | TeraTerm | PuTTY |
---|---|---|---|
Serial | ✅ | ✅ | ✅ |
RFC2217 Serial over Telnet | ✅ | ❌ | ❌ |
SSH v1 | ❌ | ✅ | ✅ |
SSH v2 | ✅ (XP SP3+) | ✅ | ✅ |
Telnet | ✅ | ✅ | ✅ |
Telnet-SSL | ✅ (XP SP3+) | ❔ | ❔ |
RLogin | ✅ | ❌ | ✅ |
Named Pipe | ✅ | ✅ | ✅ |
PTY | ✅ (Windows 10 v1809+) | ❌ | ✅ (pterm) |
Cygwin | ❌ † | ✅ | ❌ |
CTERM | ✅ (Requires Pathworks32) | ❌ | ❌ |
LAT | ✅ (Requires Pathworks32) | ❌ | ❌ |
Modem | ✅ TAPI, RFC2217, built-in | ❌ | ❌ |
DLL | ✅ ‡ | ❔ | ❔ |
SUPDUP | ❌ | ❌ | ✅ |
† While Kermit 95 has no specific support for Cygwin, you can access the Cygwin console via a PTY on sufficiently
new versions of Windows. PTYs on Windows do come with some limitations though so it's not a true replacement for
proper Cygwin support. You can open a Cygwin session in K95 with a command such as pty cmd /c C:\\cygwin64\\cygwin.bat
‡ K95 can make connections via a user-supplied/written DLL allowing support for other protocols not built-in.
IP connections (SSH, Telnet, etc) can be made via the following methods:
Feature | Kermit 95 | TeraTerm | PuTTY |
---|---|---|---|
IPv4 | ✅ | ✅ | ✅ |
IPv6 | ❌ † #224 | ✅ | ✅ |
SOCKS 4/5 Proxy | ❌ ^ #78 | ✅ | ✅ |
HTTP Proxy | ❌ ^ #78 | ✅ | ✅ |
† IPv6 is only usable SSH connections
^ Note that K95 does support HTTP and SOCKS proxy connections for telnet and RLogin, proxies are only unsupported for SSH.
Feature | Kermit 95 | TeraTerm | PuTTY |
---|---|---|---|
X11 over SSH | ✅ (coming in beta 7) | ✅ | ✅ |
X11 over Telnet | ✅ | ❌ | ❌ |
Port forwarding over SSH | ✅ (coming in beta 7) | ✅ | ✅ |
Dynamic forwarding over SSH | ❌ #297 | ✅ | ✅ |
Protocol | Kermit 95 | TeraTerm | PuTTY |
---|---|---|---|
Kermit | ✅ Complete implementation including server support | ✅ | ❌ |
IKS Server | ✅ | ❌ | ❌ |
X-MODEM | ✅ | ✅ | ❌ |
Y-MODEM | ✅ | ✅ | ❌ |
Z-MODEM | ✅ | ✅ | ❌ |
B-PLUS | ❌ | ✅ | ❌ |
Quick-VAN | ❌ | ✅ | ❌ |
FTP | ✅ | ❌ | ❌ |
FTPS | ✅ (XP SP3+) | ❌ | ❌ |
HTTP | ✅ | ❌ | ❌ |
HTTPS | ✅ (XP SP3+) | ❌ | ❌ |
SFTP | ❌ #219 | ✅ | ✅ |
SCP | ❌ | ✅ | ✅ |
None ^ | ✅ | ✅ | ❌ |
^ Transmit a file as though it were typed in to the keyboard. Both TeraTerm
(File -> Send file) and Kermit 95 (the transmit
command, configured via the
set transmit
commands) support doing this, optionally with a delay between
each line or character.
Feature | Kermit 95 | TeraTerm | PuTTY |
---|---|---|---|
Scripting | ✅ C-Kermit, REXX coming in Beta 7 for XP+ on x86/x86-64 | ✅ "Tera Term Language" | ❌ |
Keyboard Mapping | ✅ | ✅ | ❌ |
Session Tabs | ❌ | ✅ | ❌ |
Find Text in Scrollback | ✅ | ❌ | ❌ |
Bookmarks in Scrollback | ✅ | ❌ | ❌ |
Mouse Input | ✅ | ✅ | ✅ |
256 colors | ❌ #194 | ✅ | ✅ |
Bracketed Paste | ❌ #171 | ❔ | ✅ |
Alternate Screen Buffer | ❌ #231 | ✅ | ✅ |
Unicode | ✅ | ✅ | ✅ |
Log Replaying | ✅ ^ | ✅ ^ | ❌ |
Duplicate Session | ❌ | ✅ | ✅ |
Minimum Windows Version | NT 3.50, 95 | NT 4.0, 95 | ❔ |
Complete control over keyboard mapping | ✅ | ❌ | ❌ |
Optional menubar, toolbar and statusbar | ✅ | ✅ | ❌ |
Remote access via network or dial-in | ✅ † | ❌ | ❌ |
stdin/stdout for automation/scripting | ✅ | ❌ | ✅ (plink.exe) |
^ Based on the TeraTerm documentation it sounds like the "log replay" function effectively just writes the log file out to the terminal emulator which will interpret any escape sequences it contains. The following commands in K95 should achieve the same effect:
SET TERMINAL TYPE VT320 ; Or any other supported terminal type
SET INPUT PACING 50 ; How many miliseconds to pause between each character
SET NETWORK TYPE FILE ; Connect to a file
SET HOST SESSION.LOG ; set the filename
CONNECT ; connect
If you find yourself doing this often, you could define a macro allowing you to
do the job with a single command - log_replay session.log
:
def log_reply {
SET TERMINAL TYPE VT320 ; Or any other supported terminal type
SET INPUT PACING 50 ; How many miliseconds to pause between each character
SET NETWORK TYPE FILE ; Connect to a file
SET HOST \%1 ; set the filename
CONNECT ; connect
}
† Kermit 95 can listen for incoming network or modem connections for remote access. Hostmode, a BBS-like kermit script, is an example of this.
Kermit 95 provides a fairly complete implementation of DECs VT52, VT100, VT102, VT220 and VT320 with colour and mouse extensions, double width and double-height characters, dim characters, italics and underlining. Multiple pages, soft-characters, sixels and ReGIS are not supported at this time.
In addition to the industry standard VT series of terminals, Kermit 95 emulates a wide selection of other terminals including ANSI-BBS; Avatar/0+; AT386; BeBox ANSI; Data General DASHER D200, D210; Data General DASHER D217 in native and Unix modes; Hazeltine 1500; Heath/Zenith 19; Hewlett Packard 2621A; HPTERM; IBM HFT and AIXTERM; IBM 3151; Linux console; Microsoft VTNT; QNX ANSI and QNX Console; SCOANSI; Siemens Nixdorf BA80 and 97801-5xx; Sun Console; Televideo TVI910+, TVI925, TVI950; Volker Craig VC404; Wyse 30, 50, 60, 160, and 370
For more details on the emulation profiles, see this page: https://www.kermitproject.org/k95manual/termtype.html
"VT100 emulation and selected VT200/300 emulation", Tektronix 4010
Supported Control Sequences: https://ttssh2.osdn.jp/manual/4/en/about/ctrlseq.html
"an xterm terminal emulator"