A1.4. dataComet Release Notes 4.40 - 4.43B5 _____________________________________________________________________________ dataComet documentation (Rev. 5/6/00): Copyright 1995, 1996 databeast, Inc. All Rights Reserved. This document has information on (select and use "Find..." to go to the section): Release Notes: 4.43B5 4.43B4 4.43B3 4.43B2 4.43B 4.42 4.41 4.40 ___________________________________________________ 4.43B5 12/14/96 ___________________________________________________ Bug Fixes: * The cursor no longer disappears when paging in the emulator window and Fast Drawing is on. * The 3270 PF Shift state is no longer set incorrectly when the PF key is entered with NO Shift after ordinary characters are entered with the Shift key down. * IBM 3270 sessions will no longer lock in "HOST BUSY" mode (requiring an IBM "Reset" menu command to continue) when a Telnet Timing Mark is received (some implementations of TCP/IP on IBM mainframes use this as a session keepalive, so this would occur after a session had been left idle about 10 minutes). (This problem was introduced with the addition of 3270 -> ASCII fallback mode in 4.43B4.) * ASCII emulator sessions will now present VT graphics characters even when the selected font does not contain them (e.g., PC-ANSI or other Mac fonts). Support for VT300 mode character set selection control sequences has been added so that alternate character sets will be displayed correctly (LS1R, LS2, LS2R, LS3, SS2, SS3). * You can now enter ^M (using Control-M) to enter CR in dialog text items without the dialog automatically taking the Control-M as an return meaning "OK". * You can now paste into dialog items using the menu item as well as the menu item key equivalent. * If "Use Command Font" is not checked in the Macro dialogs, buttons will produce the correct macro strings rather than "junk" characters (which map into symbols in the "Comet-Chicago" font. If "Use Command Font" is checked and the "Comet-Chicago" font has not been installed in the Fonts folder, the user is prompted to install the font when the Macro dialog appears. * The IBM 3270 emulator will no longer report an error when an empty selection is pasted. * The "Copy Screen" option in the "Control Global..." dialog is now OFF by default so that executing a macro which performs a click-word-copy-paste won't yield huge amounts of screen junk when you click on a blank and get a zero-length selection. ___________________________________________________ 4.43B4 11/12/96 ___________________________________________________ Features: * Added a "Do Blink" item to the "Control ASCII Emulator..." dialog, which allows you to disable blinking. * The default application size has been increased to 1.5MB from 1MB to make more space available for text documents and multiple sessions with scrollback buffers. This is for the sake of overall usability; dataComet can still run in 600K. * The PC-ANSI font now includes the a 12-point font; in addition, the PC-ANSI special graphics characters have been added to the fonts (e.g., Carriage Returns appear as musical note symbols!). * The ISO-Latin-1 font now includes a 16-point font. Bug Fixes: * The "Control Global" dialog option "Quit automatically when all windows closed" now works correctly with unregistered copies. * The VT220 function keys at the top of the extended keyboard are now mapped by default so that F1 -> F1, F2 -> F2, ..., F15 -> F15, Shift-F1 -> F13, Shift-F2 -> F14, ..., Shift-F8 -> F20, rather than the old ("NCSA standard") mapping with F1 -> F6, etc., in order to avoid needless confusion and mystification. * The Clipboard is now updated properly after copying from an emulator screen and switching to another application. (dataComet was failing to perform a SystemEdit() call when an emulator screen copies was performed, so sometimes MultiFinder failed to note that the System Clipboard needed to be updated.) * The AppleScript dataComet "copy" command now waits for up to 45 seconds for dataComet macros executing in the frontmost session to be completed before copying the window selection to try to guarantee that select/copy macro scripts will work smoothly. NOTE that during this wait your whole system will have to wait for the loop to complete; if you're using a complicated macro to display and select text, it's best to check whether the "status" of a session contains "Executing" before performing a copy; this way you can be absolutely certain that complex selection macros will copy the selection you really want. * The Telnet "Local Echo" command should now always provide local display; ASCII Telnet sessions now ignore a WILL ECHO when this is selected and perform Local Echo anyway (sessions with Lexis failed to display characters because the host was responding WILL ECHO when sent the DON'T ECHO, subverting the negotiation process). * Default ASCII character translation tables are now reset to avoid junk characters appearing after dropping back into VT100 from 3270 mode. * PC-ANSI and VT220 ANSI host color mapping has been fixed so that the background color is set correctly. Reversed fields are now reversed correctly when host color mapping is on. The default ANSI color maps have been improved so that they are more legible and display correctly in 16-color Monitor mode. * Two macro commands were added to allow more flexible color mapping for those who use multiple monitors ("!Ck" guarantees the best color match available on the current display--see "A0. Problem Solving"; "!CK" uses the best match on the main monitor, the default). * VT100 printing now passes Escape sequences (other than End Print Mode) along to the printer rather than discarding them. VT100 print mode is now reset when a session is reset (Shift-Clear Buffer) or closed so that the session will not remain stuck in Print mode if the host fails to turn it off. * Scrolling in edit windows now scrolls smoothly rather than jumping by half pages to be more typically Macish. Using "Shift-Cursor Down" or "Shift-Cursor Right" to extend the text selection in an edit window now scrolls when it passes the bottom of the window rather than remaining fixed. ___________________________________________________ 4.43B3 9/3/96 ___________________________________________________ Features: * Option-Copy now performs a "Copy Table" command, so it is no longer necessary to toggle the Table mode. (Shift-Option-Copy is now used to set the contents of the Clipboard to a string.) * NOTE that the pressing the Enter key in a text window now automatically sends text to the next frontmost emulator window (holding down the Option key is no longer required; this makes text windows work just like a session's .edit window). Bug Fixes: * IBM 3270 screens now draw correctly when using fonts other than the Comet fonts. Attribute bytes which corresponded to zero width characters in other fonts (e.g., Character 0 in the Monaco font) were being interpreted as diacritics, so that an additional space was added after the attribute at the beginning of a 3270 field. * Pressing Shift-F1 through Shift-F15 when using the 3270 emulator on an extended keyboard now sends a PF key shifted up by 12. * VT100 stream printing now maintains the page count properly. * If you copy a selection in a dialog it will now always be copied to the Clipboard when you switch applications (this was not occurring if only the dialog item had been copied). * Serial connections no longer execute the connection macro twice if the Session option "Open session without terminal type negotiation" is turned on. * If Domain Name resolution takes longer than three seconds, a window now informs you that you're "Waiting for MacTCP to resolve domain name...". * Selecting the "Log session in..." menu item to turn off logging now causes the current screen to be appended to the log. * The Font selected for printing (using Shift-Font) is now saved in the session document. * Scrolling delays when paging have again been adjusted for optimal usability. ___________________________________________________ 4.43B2 8/20/96 ___________________________________________________ Bug Fixes: * The "!CB" shield window macro (used with kiosk applications) now works correctly when placed in the "Application Launch" macro. The "Macro" menu "Set Launch macro..." is now named "Set dataComet Launch macro..." to avoid ambiguity. * TN3270 sessions now revert to ASCII line mode whenever the Telnet options governing TN3270 now longer apply. This allows sessions made through an SNS/TCP linemode connection to go into 3278 mode and then fall back correctly. * The "Window" menu item "Close window" no longer waits for the session to completely close before returning control to the user. This could result in delays if the host failed to close a session promptly. * Selections >32K in size are no longer truncated when you switch to another application. The selection is also now inverted correctly when a selection is made; sometimes "Select all" would fail to invert the screen in windows with more than 2000 lines. * Scrolling by lines when extending a selection in an ASCII emulator window now scrolls as fast as possible rather than having a delay if paging had taken place. ___________________________________________________ 4.43B 7/31/96 ___________________________________________________ Features: * The splash screen now defaults to a 5-second additional delay for unregistered copies rather than 25 to address complaints about the splash screen. To remind users that registration is required, unregistered copies of dataComet now automatically allocate the first window slot to the "About dataComet" window, which cannot be altered or closed. Registering dataComet will free this window slot. * MacTCP is now configured to poll MacTCP for new data rather than waiting for it to upcall. This may provide better interactive performance in situations where some MacTCP Extensions deliver "sluggish" performance with the asynchronous MacTCP Read calls which dataComet has used in the past. You can turn on the asynchronous call interface by turning off the "Control Global..." "Poll" dialog item (under "MacTCP/OT bug workarounds"). * The Macintosh cursor in the emulator window is now a standard Macintosh text cursor by default, in order to achieve a more consistent Macintosh look-and-feel. You can select the underscore cursor by turning off the "Control Global..." dialog item "Use text cursor only". * The window title is enclosed in parentheses to indicate that a session is closed. * You can select by whole lines in the emulator window by holding the Option key down while making the selection. * "Option-New" now clones the topmost document and opens it. * Character translation tables are now supported (with the same format as NCSA's); a "Translation" sub-menu has been added to the "Control" menu to allow selection of the tables. * You can now select VT100 National replacement character (NRC) mapping for ISO-Latin-1 or Macintosh character sets (e.g., Monaco) by using a macro. * All ASCII emulators now have an option to let the host select ANSI color mapping; the option is set using the "Use host color" item in the "Control Color..." dialog. A "Default" button has been also been added to the "Control Color..." dialog. * Font width/leading control: you can now set the font width and leading (additional spacing for each line) using the Control menu "Leading" and "Width" submenus. This allows you to control the width and height of proportional fonts, and to make fixed width fonts more compact or more legible (with considerably slower drawing speed). * Print font/size control: you can now select the font and font size used for printing by holding down the Shift key while selecting the Control menu items "Font" and "Size". A '>' character indicates the selected print font and size. * Printed text in edit windows is now aligned correctly when a fixed-width font is used on a LaserWriter. * "Show 'Print...' dialog when printing host print streams" has been added to the "Control Print..." dialog to control presentation of the Macintosh Print Dialog when QuickDraw printing is selected and the host prints using VT100 print streams. This is now enabled by default. * You can now save VT100 print streams to a file by holding down the Shift key while selecting the "Open Log..." menu item. * You can now set the ASCII emulators to allow an ASCII Backspace to wrap back and up one line using the "Control Emulator..." dialog item "BS wraps". * A '!qa' macro allows you to put up an alert or 25th line notice. Bug Fixes: *** IMPORTANT FIX: When a dataComet document with a higher version number for the configuration data is launched, dataComet 4.42 erroneously puts up an error message stating "Your document is damaged, using default" and ignores the document. This has been fixed in 4.43. Note that this will require that users upgrade to 4.43 to obtain configuration settings from 4.43 documents, so site licensees who redistribute documents need to make them using 4.42 or update users to 4.43; sorry for the inconvenience. * A failure to reset a timer properly has been corrected; this could cause an infinite loop if a wait for a match succeeded in a very brief interval after the time elapsed but before the timer was reset. * "Execute Selection" in the Selection menu now executes properly rather than being ignored when a macro is executed (using Shift-Enter). * Several macros have been fixed to use the current context rather than the front window's context when executing so that they will execute reliably when a window is not frontmost. This affected scripted menu execution and the selection macros. * Telnet socket specifications using spaces or colons now work correctly with decimal addresses (e.g., "123.88.22.1:23" or "123.88.22.1 23"). The IP address in the "Telnet" menu is now updated properly when the address is changed. * The Session menu "Abort..." command is now enabled when a session has been opened but a connection has not yet been made. * The ASCII emulators now cancel any current escape sequence and start a new escape sequence when an character is received. This resulted (fairly rarely) in confused displays, particularly unexecuted escape sequences which would appear at unexpected places on the display (e.g., "[23;1H"). * The ANSI default color mapping for background intense colors is now the same as the background normal colors so that ANSI displays are more legible. (The background intense color settings are still set separately.) * The "VT220 keys sent without shift down" item has been added to the "Control Keypad" dialog when IBM keymapping mode is used with the VT100/220 emulator. * The beep should no longer sound improperly (as if new data had been received) when dataComet is in the background and a session is iconified. * Fonts: ^G has been added to the fonts from which it was missing. The ISO Latin-1 font has been fixed so that the "^o" character appears as a "caret-o" rather than being cut off at the top so it appeared to be an umlaut. * The "Control Global..." configuration items are now updated correctly when dataComet is quit in all instances; they were not being updated if dataComet quit automatically as a result of a window close. * WaitNextEvent() is now called while the splash screen is displayed so the clock and other applications will get background cycles. * Selecting a window in the "Window" menu no longer toggles between the emulator and edit windows to avoid confusion when executing macros. * Paging now pauses after the first page ONLY rather than waiting 1/3 second per screen as in 4.42. * A beep now sounds when a key is pressed in an emulator window and the connection is not open. * The zoomed page width is now set to 540 pixels rather than 580 so that a printed copy of a zoomed page fits properly on the printed page. * The scrollbar in a .edit window is now deactivated correctly when the window is zoomed automatically on a document launch. The scrollbar in an emulator window is now reset correctly when a "Clear buffer" command is used. ___________________________________________________ 4.42 5/19/96 ___________________________________________________ Features: * Triggers: The '!z\255' match case macro can now be used to configure triggers for use with MUDS and other applications by terminating the cases with '!Z\001'. See the document on "Macros". * You can now add buttons to the top button bar by holding down the Option key while clicking the mouse in the shaded area. You can disable a button by Option-clicking on it and setting the Title to an empty string. Up to 24 buttons can be configured in the button bar. * Paging in windows is now limited to 3 pages per second to make it easier to scan the pages as they pass. This limit only applies when the mouse is used; menu paging goes as fast as possible. * Edit windows now page rather than just scrolling when the mouse is pulled far up (or down) when performing a mouse-down and drag to select text, so this functions the same as it does with the emulator windows. * Option-Clicking in an emulator window now resets the selection range. * An option has been added to the "Set keypad..." dialog which allows the 6 VT220 keys to be sent without holding down the Shift key (and the Shift key produces the default Apple GUI behavior, e.g., "Page up"). * Holding down the Shift key while selecting the Edit menu item "Record Session" now performs literal session logging into the sessions's .edit window for debugging applications (like the "!CL" macro). * The 3270 emulation performs automatic paging when you use Paste or Command-Enter so you can paste whole documents rather than only a single page of text, e.g., when using INPUT mode with XEDIT. An Enter is performed whenever the cursor wraps to the top. (Note that you will still need to "Add Returns" to make sure that TextEdit text is wrapped before pasting). * The "Log erase" option was added to the "Control Emulator (ASCII)" dialog to allow partially erased lines to be logged in the scrollback buffer. Bug Fixes: * Selecting the terminal type no longer causes a crash (this was introduced in 4.41). * NOTE: the "Close Window" and "Close Session" command-key equivalents have been switched so that "Close Window" uses the standard Command-W rather than Command-\. * A case where switching VT100 screen sizes from 80 to 132 columns could cause a crash when using fast drawing has been fixed. * VT100 and H19 (VT52) scrollback buffering now includes all lines which are deleted using the 'J' "Erase in Display" commands when only part of the screen is erased. This enhances performance with paging in PINE. * The IBM 3270 Erase All Unprotected command now erases all fields rather than just one field. The "Erase Input" command works correctly again, and now also repositions the cursor to the beginning of the current field after erasing it. "Option-Erase Input" erases ALL unprotected characters on the display. * Mouse clicks in the emulator window no longer select a character when the mouse moves very slightly (this occurred at the edge of a character cell). * The default setting for mapping Escape to '`' is now off. The default setting for Scrollback buffering in the "Control Session" macro is now 0 (limited only by memory available). * Delete characters sent by ASCII hosts are ignored. * All telnet sessions now try to negotiate Telnet window size when a connection is made. * Setting "8-bit characters" in the Telnet menu no longer causes Telnet binary mode to be negotiated with the host. This caused confusing results with some hosts. NOTE that UNIX hosts will now need to be configured to pass 8-bit characters (see the document on "Emulators"). * Quickdraw printing routines now call the Close routines even when the Open routines fail to guarantee that all memory associated with a print call is released in the event of a failure. * QuickDraw printing routines now print "reverse" emulator fields correctly rather than leaving them blank on an ImageWriter. * Serial printing now wraps the lines correctly when "Print Screen" is executed in an emulator window without a selection. * Serial printing now avoids a condition where the Printer port was erroneously found to be busy, leading to a dialog to close the existing *network* connection. Closing the connection at this point would close a Telnet connection. * dataComet no longer presents an error message stating "No serial configuration update" the first time it is launched on a machine. * To help guarantee international menu key compatibility both words of the KeyTrans() result are checked. * The menu items for Cut, Copy, and Paste now work correctly with the "Set key macro..." and "Set macro..." dialogs when they are selected from the menu as well as when executed via a Command-X, Command-C, or Command-V. ___________________________________________________ 4.41 -- please upgrade to this version! 4/2/96 ___________________________________________________ Features: * dataComet now supports AppleScript! See the document on AppleScript for more information. * You can now send meta-characters using "Control-(Shift-Option)" key combinations. * Added text window commands: "Option-Copy", which queries the user for text with which to set the clipboard, "Option-Paste", which does a search before pasting ("Repeat Paste"), and "Option-Shift-Paste", which does a "Replace all" operation. * The "Macros" menu command "Shift-Record" records a session without generating match strings, which don't work well with fixed-screen formats (e.g. IBM 3270 displays). * Scrolling is now turned off automatically after one error alert that there's not enough memory available to append text to the buffer; this avoids multiple error alerts. * The ASCII "!CL" show literal mode now also logs in the .edit window the characters sent to the host by the user (as does the IBM literal mode). The .edit window now automatically deletes the text at its top when it runs out of space to add and literal mode is in use, so that debugging host interactions using literal mode is easier. Bug Fixes: *** IMPORTANT FIX: MacTCP sessions closed by the host now terminate properly. The bug (introduced in 4.40) caused sessions reopened after a host close (e.g., from a "logout" command) to report "MacTCP: I/O in progress"; further attempts to open the session would cause a crash. *** IMPORTANT FIX: Option key handling now uses the standard Mac keyboard layout properly in emulator windows; the IBM PF keys are now sent using Control-key combinations. The "Control Global..." item "Remap Option-key combinations" is now OFF by default for better international compatibility. * dataComet-NCSA and dataComet-Brown now launch documents correctly when the "Comet Default" document does not exist (e.g., it has not yet been created). * The "Comet Default" settings document is now closed after use (even when "Comet Default"'s "Only one session per documet" setting is on in the "Control Session..." dialog). A bug was fixed which could lead to a crash if the "Comet Default" was open and a new session was created and then disposed of. * Background window switches now activate the new front window correctly. * Background emulator screen updates now occur promptly while dataComet is waiting to be switched into the foreground to present an error alert rather than being delayed until after the switch. * Background Copy and Paste now works correctly (dataComet was using the application scrap and GetScrap(), which are unreliable in the background). * Timers are now allocated in the System Heap so they are updated properly when dataComet is running in the background. * Control key interpretation is now handled through the Script Manager when it is available in order to handle varying keyboard layouts correctly (e.g., a Dvorak layout). * The "ins", "home", "end", "del (x->)", "page up", and "page down" keys now work when an emulator window is frontmost. To send VT220 keys, hold down the Shift key while pressing the key. * The IBM 3270 emulator now always sends an "Enter" when the Return key is pressed; it no longer remaps the Return key to "Line Feed" when the ASCII mode "Control Emulator" "Return key sends" item "LF" is on. This is dataComet's default setting, so the IBM "Enter" key could be sent only by pressing the Enter key or remapping the Return key. Shift-Return still performs a "Line Feed". * The IBM Reset key is now handled immediately so that the "Host Busy" condition can be reset (rather than having the Reset wait forever on the macro queue for the Busy condition to clear). * Text window output is now redirected correctly when the "Shift-Window Select" redirection command (or "!W>" macro) is used so that edit windows can be more easily used as sources for boiler-plate text (i.e., you need only press Enter to paste the selection into the session with which it's associated). * The default IBM 3270 and PC-ANSI color mappings have been updated to be more attractive. * The "Window" menu "Reconfigure Session..." dialog now resets the terminal when OK'ed so that you do not need to reconnect to get the terminal type set correctly. * All VT100 Erase in Display commands now reset double high and wide character attributes. * The "CometChicagoFont" is now accessed by name rather than number to avoid font ID conflicts. * The DEC-Multinational and ISO-Latin fonts have been improved. Both now have 9 and 12 point sizes and a bold font, and some incorrect characters have been fixed. ___________________________________________________ 4.40 3/13/96 ___________________________________________________ Enhancements: * The "Serial" menu now offers the choice of 115K and 230K connection speeds. * Holding down the option key when opening a session document opens the document without opening the connection rather than presenting the "Configure Session" dialog. You can now use a new "Control Session" dialog item, "Connect automatically", to configure a document so that you can open it without connecting. * You can use dataComet-NCSA or dataComet-Brown Sets to launch sets of dataComet documents. See the "Telnet Set example" and "Brown Set example" in the Documents menu. * You can now reset the emulator using the "Shift-Clear buffer" menu command. This also resets all vt100 graphics characters displayed, the better to fix displays which have been messed up by an inappropriate SO control character in the data stream. * The "Control Session" item "Only one session per document" is now on by default, so that the default behavior is more useful when launching from browsers or Sets. Bug fixes: *** IMPORTANT FIX: ALL previous versions of Comet and dataComet have been found to crash the system when the Macintosh Segment Loader attempts to launch the application and there is less memory available than the application's "Preferred" size. This problem has been resolved by correcting the link order of libraries when dataComet is linked, so that the entry point of the program is at offset 0, and the Segment Loader loads the application code correctly when memory is short. PLEASE AVOID this problem by upgrading to dataComet 4.40, dataComet-Brown 4.40, and dataComet-NCSA 4.40! *** IMPORTANT FIX: The error dialog is now fixed so it is pre-loaded and locked and uses ICON resources from dataComet's resource fork rather than relying on their presence in the System. This avoids crashes caused when the dialog executed at a time when either dataComet's memory or Finder memory was low. (This bug was also present in Comet.) *** IMPORTANT FIX: Memory leaks of >6K per session disposed of have been avoided by properly disposing of all session resources. *** IMPORTANT FIX: All calls to the Print Manager are made AFTER PrOpen() is called, so that the default is set correctly and you are notified if your printer has changed. Improved error checking handles Print Manager failure modes correctly. *** IMPORTANT FIX: The serial driver code now tests the serial port to see if it's in use before opening a connection, and queries the user whether to proceed if it's already open, and no longer hangs up the line when the application quits if the serial driver has been opened. This prevents MacTCP connection loss when using MacSLIP or interfering with other application which use the serial ports. * The "Serial" menu items "Hang up phone" and "Reset Parameter RAM" are now executed correctly when they are selected. * dataComet now works better under System 6. Menu keys work correctly even when the Script Manager is not present; the scrollbars are drawn properly rather than reversed when using the scrollbar in the emulator window. * Document opens now fail with an alert if the whole text can't be opened. Session documents are not opened unless there is enough memory to load the .edit window in its entirety. * Edit windows now have the scrollbars set so that the cursor will display if it is on an empty line at the end of the text. This also guarantees that the scrollbars will appear when text is appended to an empty window and the text is scrolled halfway down. * The document icon mask has been fixed so it inverts correctly when selected. * The VT100 and ANSI emulators now handle up to 64 parameters in a command sequence rather than only 10. This could cause incorrect attribute display and other non-fatal errors. * The mouse click code now delays handling of keyboard input until the click action is completed so that keyed text appears where you clicked. * The "home", "end", "x->", "page up", and "page down" keys now work when an edit window is frontmost. The "help" key performs a "Find selection" command. If the emulator window is up, these keys still send VT220 escape sequences to help ensure compatibility with host applications. * The VT100 "Calculator" keypad mode now sends a '+' when the '+' key is pressed rather than an "Application" mode control sequence. _____________________________________________________________________________