dataComet-Secure 10.0.2, by Databeast
Posted: 3-Oct-2004

3 1/2 out of 5 Mice

Vendor: Databeast, Inc Type: COMMERCIAL

Reviewer: Bill Catambay Class: PRODUCTIVITY

Overview
dataComet-Secure is a terminal emulator that runs native on Mac OS X (and is also available for Classic Mac OS). There are a lot of emulators out there, ranging from freeware, shareware and commercial. For simple Unix shell access, most of the emulators are adequate for doing the job. However, the way I determine when an emulator package is a cut above the rest is when it advertises support for VT terminals running under VMS systems. For those not familiar with VMS (now called OpenVMS), this is a product similar to Unix in terms of stability and server functionality, but far superior in terms of power, ease-of-use and features. Emulating a VT420 terminal under VMS is not as simple as emulating Unix shell. VMS sports several terminal features, such as extended characters sets, wide and highwide mode, and 132 column mode. My regular "day" job is programming on an OpenVMS system, so I've come to know many of the strong players out there in VT terminal emulation. While many of them support one or more of the unique VMS terminal features, very few support them all.

On the Windows platform, Reflections for Regis Graphics is the only terminal emulator that supports all of the VMS terminal features. In addition, Reflections includes an amazing scripting language that supports interaction between VMS programs and terminal window behavior. For instance, I can have a VMS program trigger a download of a report to a PC hard drive (without requiring the user to navigate through menus to perform the transfer). Reflections also allows you to restrict the user in many ways, such as preventing them from closing a terminal window without first logging off. Most emulators allow you to close the window without logging off, thereby terminating sessions and halting running programs without properly closing files. The ability to block the window closing is a great way to remind the user to properly logout first. There are several other features in Reflections that support all kinds of customizations. In short, Reflections has been the baseline that I use for comparing all other emulators.

Under Mac OS 9 (and earlier), the only terminal emulator that came close to Reflections is PacerTerm (now owned by Sande Castle Systems). It doesn't match up to all of the customization features of Reflections, but it supports the minimum needs I have for programming on OpenVMS: wide and highwide attributes, 132 column mode, logon scripts, and extended characters sets (including graphics). The terminal window text uses a special Pacer420 font that makes the text look very good. Unfortunately, Sand Castle has no plans to port this to Mac OS X, so it's my goal to investigate what terminal emulators exist for Mac OS X that support VMS. This review takes a look at dataComet-Secure 10.0.2 by Databeast.

Features
The following features are listed for both dataComet and dataComet-Secure:

  • Available for Mac OS X and classic Mac OS.
  • VT100, VT220, VT320 emulation for Linux, UNIX & VMS systems.
  • PC-ANSI + SCO-ANSI emulation with customized PC-ANSI fonts.
  • IBM-3279/5250 terminal emulation for IBM enterprise and AS/400 systems.
  • Support for ZMODEM and IBM IND$FILE file transfers.
  • Handles telnet, tn3270, & ssh connection URLs.
  • Supports direct dial modem connections and connections through local serial ports.
  • Multiple window interface supports concurrent sessions to one host or many.
  • Flexible and easy to use key remapping facility.
  • Extensive scriptability using built-in macro language and AppleScript.
  • "Watch Me" macro recording for simplified session scripting.
  • On-screen buttons to send text and execute macro commands.
  • Customizable color maps.
  • Flexible translation for multinational character set support.
  • Automatic download translation (Binhex, MacBinary) and document launching.

The following additional features are supported only in dataComet-Secure:

  • Secure SSH (Secure Shell) sessions, supporting SSH version 1 and 2.
  • SSH password authentication (and RSA when using SSH1.5)
  • DES, 3-DES, and Blowfish encryption & zlib compression option
  • Remote command execution
  • Secure telnet connections using Kerberos 5 authentication and encryption.
  • Secure file transfers using scp over SSH sessions.
  • Safe encryption of passwords in local session documents using a convenient master passphrase.

Installation
dataComet-Secure downloads from the web as a .dmg installer. The installer takes you through the familiar OS X installer process, and creates a folder containing the dataComet-Secure application, a Read Me file, a folder of Comet Fonts and a folder of Keyboard Layouts. The first time you run the application, you need to choose the "Set Registration..." menu option and copy and paste the registration "code" you receive after purchasing the software. Unlocking this program is a different the most other applications, since instead of a serial number, you need to copy and paste a paragraph of encoded text such as the below (the code has been scrambled to prevent inappropriate use):

<'N"!3%$)`ZM#KYlDbZKDTXV'kZ6+@%"%U0$+3+M+f0c+k%#'f0,+h1K!S16Hb1V
F@%##f0K!T0,1d1MQ3+6+jXVNl-V)A%"!'N"!3%#JhZ6SdYlFjN#'hZ$bj0,1d1K
b30l-3-M#k-+'hYV+k&UQbXEUj-T!dZC!f0,'bYcQbXK!`ZC!`N$QdYc1f-T!R)b
!BR*`E%#'hZ6FbYMB3+VFdZc+j1E5k2*f'N"!3%#JhZ6SdYlFjN#'hZ$bj0,1d1K
'k0,XdZMb3+MHhYK%'KT!3%"!KYlJmZ65cY$S3'4JB'*!b-,S`X6+`ZES@%#5h-C
BdXE+h1E+b%$NbXM5jZMNdX6Uk0,Hh%$Hj%$+m1$Hj1K!hXa!k0$5jN$+h-ENmZ$
!BR*`D%#D`ZEQ`XE3kZE+k1MQ3*,FjZM5k1VSbN$Hc%#SbXE3h0lBhXlbGKSDUYc
SdYlF31EHc1MZ`Z6+30,Q3)U`S+5+TUDBXN#-RU5%NSL)LTaF'KSDU0$5jN$'hZ$
N3-EHi2*!c0lN316+l0,+lN$%mN#Sd-T!QX,'3)lUdYM)A"SD!-$k>

In Use
To create a connection with dataComet-Secure, you choose New->Terminal Session under the File menu, and enter your server information into a connection input window.


dataComet - Configuring a terminal session

When setting up dataComet, you need to know what kind of terminal you want to emulate (ANSI, VT100, VT220, IBM 3279, etc.), and the IP or DNS of the computer you want to connect to. That latest VMS terminal type in the menu is VT220 (VT420 would have been preferred). In the Sesstion type box, you select the type of connection (in my case, Telnet). For the Telnet access, I entered my account ID and password used to access my VMS server. For Host menus and functions keys, I selected xterm/VT420f. After clicking on OK, a new window opened up with a session running on my VMS server.

For some reason, however, the username and password I entered was ignored. When the VMS session opened up, I was still prompted to enter my username and password. By default, the font chosen is Monaco, which provided a decent representation of the VMS session. It supported wide and highwide characters, and displayed the extended character set (including graphics) pretty well. The "underline" attribute on a highwide character looked more like a dashed line rather than a connected underline. I found that changing the font size from 9 to 10 fixed the underline, but then the vertical lines in graphics became dashed. I tried various sizes, and only the size of 12 appears to provide the desired graphical representation (i.e., no dashed lines). There was no way difference between normal and bold text under this default configuration. The "Control" menu allows you to adjust many of the emulator attributes, such as font, size, and bold font. By default the Bold Font was set to "normal", which I would have assumed is the bold version of whatever the selected font is (in this case Monaco). However, that wasn't the case. I changed the bold font to Monaco, and then I was able to see the difference between bold and non-bold text.


Initial dataComet VMS session

The other place to alter settings for the emulator is under Preferences. dataComet's preferences is a large window with various "tabs" at the top. It doesn't have the OS X savvy look of Mac tabs; in fact, they looked more like what you would see in a xterm window on VMS or UNIX. The different Preference groups are:

  • Help (which is not really a preference, so I'm not sure why this was located here)
  • Global (general checkboxes, such as "Show new session on launch" and "Quit automatically when all windows close")
  • Printing (various settings for printing, add page numbers, margins, etc.)
  • Session (checkboxes specific to a session window, such as "Use block cursor" and "Close window when session closes")
  • Views (optional add-ons to a session window, such as status and cursor-buttons)
  • VT100 (attributes for a VT terminal, such as "Do blink", "Do underscore", specifying an Answerback, etc.)
  • 3270 (attributes for an IBM 3270 termainl, such as terminal type and specifying to use extended 3279 colors)
  • Color (color attributes for a session)
  • Keypad (options for the VT terminal numeric keypad)
  • Transfer (options for downloading and uploading from host to Mac)
  • SCP (UNIX stuff)
  • ZModem (modem settings)
  • IND$FILE (IND$FILE settings)


dataComet preferences window

I didn't need to use many of the preference tabs, but the ones that I did use were Global, Session, Views, VT100, and Color. Under global, I set the application to quit when all windows were closed and I turned off the initial splash screen (dataComet's splash is lackluster). Under Session, I set the session window to close automatically when the session ends (aka, after log off).

Under Views, I turned off certain status areas, and turned on others. It's unclear what many of the items on this preference pane actually mean, but you can go back to your session window to view the difference as you click and unclick each option. It would be nice if the preference window itself displayed a "preview" of a session window so that you can see the difference right there. The real problem I had with the views is that even when you turned off various checkboxes under "Status bar at top of window", the area preserved for the items you turn off remain (aka, blank unused areas). I had no interest in any of the items under this section (packets counters, buttons, and session timer), but I had to keep the status bar on because it's the only way to activate the little "M" button in the top left over the session display. This is a pop-up menu for the VT keyboard functions (F1 thru F24). This function keys are commonly used throughout most of my VMS applications, so access to them is necessary to navigate and exit program screens. Under PacerTerm on OS 9, I was able to map the pertinent function keys (F6 thru F20) to the Mac keyboard keys (F1 thru F15). It was not obvious to me how to map all the keys with dataComet, so the only way I could access these keys is by the "M" popup menu. The only way to activate the popup menu is by showing the Status area, and this leaves an useless large blank area over the session display. There are other VMS functions key that I could not figure out how to use (such as "Find", "Select", "Insert" and "Remove"). I figured they were mapped to other keys, but I wasn't sure which ones, nor did I see a way of remapping them to match my VMS/Mac keyboard template (until later - see below).

My goal in this review was to create and save a configuration which most closely matched in appearance and function the configurations I've created under Reflections on a PC and PacerTerm on Mac OS 9. To further reach this goal, I need to make some changed under VT100 and Color. Under VT100, I was able to establish an "Answerback" for my session. Our VMS system utilizes the terminal Answerback value to validate each user access to our system (it also customizes the default printer for the user based upon the Answerback). I didn't need to make any other changes under VT100 settings, but I did notice that "Do blink" and "Do underscore" checkboxes existed here. These apply to text attributes for the session. Bold is the third text attribute, and really should have been grouped with these two, but dataComet supports bold in a separate place. In order to establish your bold attribute, you have to specify a font for "Bold font" under the Control menu. I don't mind that the dataComet program handles them separately internally, but from a user perspective, the GUI should include them in the same place.

Under Color, I created a color scheme that matches the color scheme I normally used, which is a light green background with dark green text. I did not find the Color settings interface to be very intuitive at all. I turned on "Color mapping", and then proceeded to set the text and background color for each and every attribute (e.g., Normal, Reverse, Bold, Bold Reverse, etc.). There were no attributes calling out Underline, nor was it obvious to me how to get those attributes. By trial and error, I discovered that "Show Extended map" allowed me access to the underline attributes, and I proceeded to change the colors on each of those (another 16 color settings, for a total of 32 settings I adjusted). I thought it was a pain to have to change all of those settings individually, but then I clicked on "Host selects colors", and the "Attributes" column changed to "Host Colors". I found that by using this mode, and simply changing the Text and Background colors for "Black" and "White", I was able to create the same color theme but in much fewer steps. As mentioned, this was not at all intuitive (I guess that the other colors are there for IBM 3279 terminals).


Adjusting session colors in dataComet

One thing I noticed during the process of setting colors is that dataComet does not provide an "undo". Hence, if I wanted to go back to a previous state, I'd have to remember what that state was (and for customized colors, unless you saved the color on the palette, you're pretty much out of luck).

In attempt to further improve the appearance of the session text, I tried using the included dataComet fonts, Comet DEC and Comet DEC Bold. Unfortunately, I found that Monaco looked better than Comet DEC. Instead, I "borrowed" the Pacer420 font from my OS 9 system and used that, and the text was improved.

I was still left with a useless blank space over the session display, and thought it would be a good place to have some soft key buttons. dataComet support provided me information on a hidden feature that provided me this functionality. First I had to turn on the Buttons in the View preferences, and by command-clicking on a button, I was able to redefine the button to a different function (as well as renaming it). You are limited to 11 buttons, the preset number of buttons already defined, and you aren't allowed to delete a button, so you either must redefine each one, or retain some of the default buttons. I quickly redefined all of the buttons to be F10 thru F20, and this greatly improved my use of the emulator. There's enough space in the button area to have two rows of buttons, but dataComet limits you to just 11 buttons.


Final dataComet VMS session

I finally achieved my goal of having the dataComet window closely resemble my Mac OS 9 PacerTerm session. Oddly, PacerTerm displayed the Pacer420 font better in OS 9 than dataComet did under OS X. On the other hand, dataComet's implementation of the bold attribute is better than PacerTerm's. Where PacerTerm just darkens the color of the font to simulate bold, dataComet actually makes the font bold (darker and thicker).


Comparison: PacerTerm VMS session under OS 9

Originally thinking that there was no keyboard mapping, and looking for a built-in script function, I experimented with the "Macros" menu. I selected "Define Macros", and voila! I discovered the tool to re-map the keyboard keys, including the special keys such as "Find", "Select", etc.. This screen was not terribly intuitive (not to mention it was not obvious that this was where I had to go to find keyboard mappings). It was easy enough to define most of the keys - you first press the key on the keyboard you want to define, then choose the button on the screen (representing the VAX keyboard key) that you want to assign to that key. I was able to map all of the keys except for the F9, F10, and F11 "Expose" keys, and the F14 and F15 "volume" keys. The application lacked a way to override these OS X keys. Also on this screen is a "Show All" button that displays a list of all the keys mappings I created in a separate window. When I closed this window, I was prompted to save. I wasn't sure if this was saving the text of the window, or actually saving the mappings (I determined later that the key macros were saved with the configuration, and that this function was simply saving the text view of the macros). Upon a subsequent Show All followed by a close, it again prompted me to save even though I had already saved and had not made any changes. I found this very confusing. It would have been better to have a "Save" button instead, making it clear exactly what you are saving. There were other things you could do with Macros too, such as recording Macros, but I found it too unfriendly and confusing, and I didn't bother exploring further.

Beyond the emulation functionality, dataComet also supports File Transfer by way of the Xmodem/Zmodem protocol, allowing you to transfer files back and forth between your Mac and the host computer. I tried using the file transfer function, but I couldn't get it to work. As it turns out, this function requires the proper Zmodem applications running on the host system in order to make this feature work.

Looking For More
Some things I couldn't do with dataComet included keyboard mappings that matched my keyboard template (I could do most of them, but not all of them), having the dataComet configuration file automatically log me in, and preventing a window closure if the session was not yet logged off. The latter is important to ensure proper file closing. Under dataComet, you can close a window, and the program prompts if you really want to do it, and if you choose to continue, it terminates the session without a proper logoff.

The ability to redefine the "view" buttons was nice, albeit somewhat of a hidden feature. The feature needs to be more easily recognized, and should support the ability to define less or more than 11 buttons. The "M" popup menu for the Fkeys was not very user-friendly, so the ability to define at least 24 buttons would allow skipping the "M" menu altogether.

I also wanted a built-in scripting language that enabled my VMS programs to communicate with the emulator. Useful functions would be to allow VMS to change configuration settings as well as trigger data dumps from VMS to the Mac's hard disk. dataComet does come with built-in Macro support, but with commands that look like "!Z\25504!D\002!P\020!Z\255 !D\002", it's not something I would consider a useable programming language. Likewise, dataComet's built-in Macros do not support interfacing between the host system and the emulator.

Summary
As a basic VT emulator, dataComet-Secure is a good product. It supports the primary VT terminal emulation needs for working on an OpenVMS system, including highwide and 132-column modes. The interface is not the most intuitive for configuration and preferences, but once you get through the setup process, you can save the settings in a configuration file and not have to worry about going through the process again. Unfortunately, dataComet does not provide a mechanism for overriding some of the Fkeys that OS X uses, so these keys become unusable in dataComet. dataComet provides an Fkey popup menu to provide access to all the Fkeys, but a key mapping, or even soft key buttons, would be easier to use. There is a lot of functionality that dataComet-Secure supports in terms of emulation, customization, printing, and the ability to scroll through the console output. Although I stumbled with the interface, I found the emulation to be quite reliable and the connection to be quite stable. This product has a lot of potential, and I would love to see it expand to include a readable built-in scripting language that interfaces between the host and the emulator, more flexible soft key support, more power features (such as preventing window closing prior to session logoff), and an improved GUI. If you're running on OS X and looking for a good VT emulator, I recommend giving dataComet-Secure a try.

Pros

  • Supports wide, highwide and 132 column features
  • Supports VT and color customizations
  • Reliable and stable host connection
  • Scrollable session windows
  • Mac OS X native support

Cons

  • GUI non-intuitive
  • Automatic logon did not work
  • No undo
  • Difficult to read built-in Macros, does not interface between host and emulator
  • No option to prevent window closures prior to session logout


Overall Rating:

3 1/2 out of 5 Mice