ngg@bridge2.ESD.3Com.COM (Norman Goodger) (10/17/89)
New Features In White Knight 11 (#1 of 2 files) ----------------------------------------------- There have been literally hundreds of minor fixes, detail work, and "mini-features" added to White Knight 11, and because of their volume, they won't be enumerated in this document. Suffice it to say that all bugs reported in Red Ryder 10.3 have been eliminated, and that this list uses Red Ryder 10.3 as a basis for existing features - only new features will be listed here. Manual ------ % It is my goal to make this version very suitable for beginners, much more so than previous versions, so I have taken a lot of time to get the manual right. The manual runs 270+ pages, contains several step-by- step's for beginners, and contains a keyword index as well as a Procedure command index. General ------- % Did lots of work to make White Knight 11 much more Multi-Finder friendly. Among the most famous problems resolved are the "sticky window" problem, and time-greedy INIT's degrading file transfer efficiency and character throughput. % White Knight 11 now fully supports Color Quickdraw and the standard Color Picker dialog box is used to select the foreground, background, and hilighting colors for the Terminal Window, Phonebook Window, RLE Graphics Window, File Transfer Window, Macro Keys Window, And Status Bar Area. The full 2 to the 48th power of colors are available. % All of the undocumented 10.3 features have been placed in appropriate dialog boxes in White Knight 11. No more messy PUTPARAM commands are necessary to take advantage of them. % Dialog boxes appear centered on the display screen no matter what size screen is being used. % The size and position of the following windows are remembered from session to session: Terminal Window, Phonebook, Dialing/Redialing Status Window, File Transfer Window, RLE Graphics Window. % The pulldown menus have been completely reorganized to reflect a more intuitive and more logically related grouping. Hierarchical menus have been implemented to reduce the amount of action needed to find and select a menu choice. However, since hierarchical menus require horizontal mouse movement in addition to vertical, and because some people find this awkward, I have invented a new method of keyboard menu choice equivalents. All hierarchical menu choices can now be selected by typing a two character sequence while holding down the command (cloverleaf) key. These two character sequences are highly mnemonic, and it shouldn't take much time to get comfortable with them. The two sequence key is typically the first character of the hierarchical menu title, followed by the first character of the menu choice. For instance, under the "Modem" hierarchical menu, the "Hang Up" choice would be selected from the keyboard by holding down the cloverleaf key while typing an "M" and then an "H". The most often used commands (i.e. "Dial or Redial" and "Initiate Procedure") have been kept out of hierarchical menus. %JA "Convert Settings" utility is provided to convert Settings files (example: "Red's 10.3 Stuff") created with Red Ryder 10.3 to the format that is used by White Knight 11. % The overall character throughput has been increased by an order of magnitude. High speed connections will show a vast improvement in text display speed. % VT102 emulation has been added. All VT102 functions are supported, including all automatic printer operation sequences. % White Knight will now support disk initialization when an uninitialized disk is mounted in a drive. % The Status Bar display can now be turned off (hidden) to allow extra lines of data to be displayed in the Terminal Window. % If the billing cost is set to zero, the billing clock is not shown (only the elapsed time clock). % It is no longer necessary to hold down the Shift key while choosing White Knight Options to turn off the option "Display title screen at startup" (blush). % The contents of the Terminal Window buffer can now optionally be saved and restored from session to session automatically. % The "Locate Text" feature (previously "Find Text") now has an option to make the search case insensitive. File Transfers -------------- % For text file captures, you can now create a new file, or append incoming data to the end of an existing file. Additionally, you can suspend and resume capturing without having to close and reopen the capture file. % Several new file transfer protocols have been added, and an entirely new Protocol Engine has been implemented. All previous file transfer protocols have been completely rewritten, and will run at the highest possible efficiency with no compatibility problems. The file transfer protocols now supported include: classic XMODEM/Checksum - 128 byte blocks XMODEM/CRC - 128 byte blocks XMODEM/CRC - 1024 byte blocks Supercharged XMODEM (throttled ACK-ahead) classic YMODEM/CRC - 128 byte blocks YMODEM/CRC - 1024 byte blocks YMODEM - G ZMODEM Classic Kermit - 10 to 94 byte blocks Long Packet Kermit - 10 to 9024 byte blocks Sliding Windows Kermit - a/k/a SuperKermit (1 to 31 Windows) Flash Protocol "Flash Protocol" is a proprietary protocol I created for use with error correcting and/or high-speed modems. It is essentially a "lowest possible protocol overhead" scheme, and offers the highest efficiency of any protocol I've seen yet (other than blind block sending - which isn't practical). It can be used for 9600 baud modems with either hardware or software modem level handshaking. Note that you must be using error correcting modems on both sides, because this protocol cannot recover from a transmission error. % CompuServe 'B' protocol support has been removed from White Knight 11, however, support of CompuServe 'B' and 'QuickB' protocols has been provided as an RCMD module (discussed later). % The Edit menu is now being supported properly for desk accessories during a download under regular Finder (not MultiFinder). % All of the above protocols support batch file sends and receives except XMODEM (which doesn't provide for this). When sending, a batch of files are sent if the file selected to be sent is a Batch File (created with the "Create Batch File..." menu choice). Otherwise the single selected file is sent. Because of the new scheme, the only time you will be asked to specify a filename is after an XMODEM receive if the file was not MacBinary format. In other words, it now works like the old Auto-Receive option all the time. ZMODEM allows you to automatically resume a cancelled file transfer at a later date, picking up where it left off. You can now specify the following for protocol transfers: % When sending, MacBinary format should be used for all files, all files except type 'TEXT', or no files. If "no files" is selected, only the data fork of a file is sent (making it easy to export files to IBM versions of MicroSoft Word, Excel, WordPerfect, etc). % If a file being received is MacBinary format, and a file by the name specified in the MacBinary header already exists in the destination folder, you can now opt to either destroy the old file in favor of the new, or give the new file a unique filename (Excel Data #1, Excel Data #2, etc.). % At the end of a MacBinary format file receive, you can opt either to rename a file to the name specified in the MacBinary header or not. Unless the protocol itself specifies the filename (all protocols do except XMODEM) the default filename is "Untitled". % During the reception of a non-MacBinary format file, you can specify either no conversion, or paragraph format conversion. Paragraph format conversion strips out all carriage returns that are either not followed by a carriage return or a tab. This makes it easier to import files to Macintosh word processors as it is the format preferred by them. You can also specify that the data in the file is to be filtered. Filters are discussed later. % The "Auto-receive" option now means something different than in previous versions. Now, it simply means whether the sequence is sent telling a remotely connected White Knight (and some other Mac communications programs) to begin receiving a file automatically without the remote user having to select a menu choice, and on the receiving end, whether or not to react to such sequences. % Whether or not to include a "final report" at the end of a file transfer (or after each file transfer in a batch transfer). The final report is sent to the Terminal Window, and includes the file name, size, time spent transferring, and efficiency of the transfer. % Files transferred with Kermit can be specified as "Text" or "Binary" to properly support auto-linefeed adding (when sending) or stripping (when receiving). % All of the file transfer protocols have been extensively tested with a large number of Macintosh and non-Macintosh communications programs to insure the widest possible compatibility. % The File Transfer Window has been rewritten for clarity and contains much useful information during a file transfer. This includes: 1) The filename being transferred. 2) If the file will be renamed after the transfer, the name it will be renamed to. 3) Bytes transferred (number, total to transfer, percent transferred, and a graphic pie). 4) File format (MacBinary, MacBinary II, Not MacBinary). 5) Cumulative transmission errors. 6) Number of files transferred. 7) Status (Holding for start, receiving data, sending data, waiting for data). 8) Efficiency (percent and characters per second). 9) Estimated time left (minutes/seconds) and estimated time of day when transfer will finish. 10) File type and creator. 11) File destination path. % The File Transfer Window is draggable, and it remembers its position on the display screen. A spinning beach ball cursor appears when the window is frontmost and the cursor is inside the window to let you know the protocol is still working. Serial Port And Modem Support ----------------------------- % The Serial Port dialog box implements pop-up menus for all of the parameter selections to speed things up while maintaining a proper interface. Additionally, White Knight can now support hardware handshaking, and can hold the DTR line (actually, _whatever_ line is connected to the output handshake serial port line) continuously in a low condition. Therefore, the "Drop DTR For One Second" button has been changed to "Invert DTR For One Second" to reflect this. % An additional parity type "Ignore Parity" has been implemented to replace the old "Don't Zap High Bits" option in 10.3. If "Ignore" parity is used, the most significant bit of each byte is not zeroed, as "No" parity does. This is useful for sending and receiving special characters at the high end of each font. Note that many host services (notably CompuServe) require "No" parity and will not function correctly with "Ignore" parity. % Support for 38,400 baud has been added. % The size of the serial port buffer is now user-definable. % A complete set of automatic Hayes-compatible modem handling routines have been added. There is now menu-level support for dialing and redialing, Initializing the modem, turning on or off auto-answer, and hanging up. Additionally, a new type of Procedure file, called a "Modem Driver" has been created to allow White Knight to transparently support non-Hayes compatible modems, or to take advantage of up to 20 additional brand-specific modem features. % The initialization command and inter-character delay for modem commands are user-definable. Filters ------- %JWhite Knight supports the optional use of three separate Filters. One for the Terminal Window, one for file captures, and one for protocol file transfers. Filters can be loaded from and saved to disk. A Filter allows you to specify how each received character is to be handled. For each of the 256 ASCII byte values, you can specify that the character is to be passed through, stripped out, translated to some other character, or numerically enumerated to its ASCII code value (example: "<127>"). Keyboard Support ---------------- % White Knight 11 will now automatically recognize the Mac Plus, Standard Apple Desktop Bus (ADB) and Extended ADB keyboards. The "Install Special Keys" utility should only have to be used for third party keyboards, or if the user doesn't like the arrangement White Knight uses as a default. % Macro Keys can now be activated with a user-defined keyboard sequence, which can be any key on your keyboard in combination (optionally) with Shift, Option, Cloverleaf, and Control. Yes, it does support the Function keys on the Extended ADB keyboard or third party keyboards. % The Backspace key can now be selected to send either a Backspace (ASCII code 8) or Delete (ASCII code 127). Shift-Backspace can be selected to send Backspace, Delete, or a modem BREAK signal. % The following "Serial port settings shortcuts" are optionally supported: Shift-Option-1 Change to 1200 baud Shift-Option-3 Change to 300 baud Shift-Option-2 Change to 2400 baud Shift-Option-9 Change to 9600 baud Shift-Option-7 Change to 7 Databits Shift-Option-8 Change to 8 Databits Shift-Option-N Change to No Parity Shift-Option-I Change to Ignore Parity Shift-Option-O Change to Odd Parity Shift-Option-E Change to Even Parity Shift-Option-M Change to Mark Parity Shift-Option-S Change to Space Parity Shift-Option-F Change to Full Duplex Shift-Option-H Change to Half Duplex Shift-Option-X Change to Null Duplex Shift-Option-D Inverts the DTR modem line for one second Shift-Option-R Sends a Delete (ASCII code 127) character % Option-1, Option-2, and Option-3 can be optionally selected to switch the active Macro Keys set to Set #1, #2, or #3. Printer Support --------------- % One of the problems that have plagued 10.3 users is that Apple has decided not to implement low-level printing routines in LaserWriter driver versions after 5.0 and a number of third party printer manufacturers have decided to follow suit. This caused 10.3 to crash when printing to a LaserWriter or certain third party printers. Also, although we did support AppleTalk ImageWriter printing, it was interminably slow. The new printing routines solve these problems. In order to accomodate the greatest number of various printers, I've decided to let the user decide whether to use low level (line-at-a-time printing) or high level (page-at-a-time printing) routines. Low level routines are best used by directly connected (non-AppleTalk) ImageWriters. High level routines are best for AppleTalk connected printers, or any directly connected printer besides an ImageWriter (although testing may prove that some third-party directly connected printers will work best with low-level routines. Which routines are used is set in the "Printer Options" dialog box. % The only change made to the low-level routines is that two blank lines are printed above the Date/Time header. If you have a problem with your printhead snagging on the perforation corner, turn on this header and the problem should disappear. % The high level routines allow you to select which font and point size to use in printing, which may be different from the font and/or point size used in the terminal window. It will also correctly display VT100/VT102 special graphics characters. A standard "Page Setup" dialog box is supported. Phonebooks ---------- % More than one person mentioned that they would like an easier way to open a default phonebook without going through the file selection dialog. Therefore, if a phonebook by the name "Phonebook" resides in the same folder as White Knight, the menu choice "Open Default Phonebook..." will be added to the end of the Phonebook menu. Selecting this choice will open the "Phonebook" file automatically. % The phonebook no longer has a "door" that closes when switching pages. Page switches are swift and painless. % The phonebook remembers the page that was displayed the last time and opens to that page the next time. % The phonebook can be run completely by keyboard. When the Phonebook window is frontmost, the following keystrokes are supported: 'A' through 'Z': Move to Phonebook page corresponding to the letter. Up Arrow: Move page up one notch. Down Arrow: Move page down one notch. Left Arrow: Move selected item up one entry. Right Arrow: Move selected item down one entry. Return: Same as clicking on Phonebook "Call" button. % A new feature has been added to the Phonebook that I call "Gang Dialing". Here's how it works. If you open a Phonebook and hold down the Option key while clicking on a entry, a small bullet character will appear to the left of the entry's name. When this bullet is there, it defines that entry to be a member of the "gang". Option-click on it again to turn off the bullet. When you edit an entry, it's bullet is automatically turned off. Now, if you choose "Gang Dial" under the "Phonebook" menu when the phonebook is open, each of those gang members will be dialed in a round-robin fashion. Unlike redialing, this round- robin dialing will continue forever (or until you cancel the dial). If a settings file has been defined for that entry, it will be loaded before that entry is dialed (each time). If a Procedure file has been defined for that entry in the Phonebook, it will be automatically executed upon connection, otherwise, a dialog box will appear telling you which service you are connected with. I felt this feature would add a neat way to dial a group of busy BBS's in a daisy chain fashion while I was doing other work. Macro Keys Window ----------------- % A new feature with the simple name "Macro Keys Window" has been implemented. This window may be turned on and off under the Macro Keys menu. You'll note that in the first "Edit Macro Keys" dialog box, you can now specify that this window's size and location should be remembered and restored. This works only when Macro Keys are loaded from a Macro Keys file, not from a Settings file. Additionally, you may specify up to a 40 character title for the Macro Keys window. If you leave the title blank, the Macro Keys window will appear without a title bar (and will therefore will have to be closed with a menu selection). In order to drag a titlebar-less window, hold down the Shift key, click anywhere in the window and drag. The window itself is draggable and sizeable, so you could display all three sets of Macro Keys simultaneously in the Macros Window. % When you edit a macro key, you'll notice that you can now specify that this key is to be shown in one of four basic ways in the Macro Keys Window (it will always be shown as a button in the Macros Status Bar). It can be shown as the familiar pushbutton as in the Macros Status Bar, as a standard (32 bit by 32 bit) icon, as a double-sized (64 bit by 64 bit) icon, a color icon, a double-sized color icon or as a bitmapped picture (that has been saved in the Scrapbook). White Knight 11 allows you to select from the following resource types contained in any file: ICON, ICN#, cicn, and PICT. It supports color icons and, yes, even Color QuickDraw pictures. You can arrange each item in the window by simply holding down the option key, clicking on the item, and then dragging it to where you want it in the Macros Window. Additionally, each item can be made visible or invisible in the Macros Status Bar and/or the Macros Window through dialog box or Procedure commands. Therefore, this feature could be used to setup a personalized graphic interface of your own device. You can also specify whether or not individual items will respond to mouse clicks (you might want to use a picture containing your company or VAR product logo in the window that is a "non-item", for instance). % Keystrokes are passed through to the terminal window whenever the Macros Window is frontmost. % There are "Arrange Items Horizontally" and "Arrange Items Vertically" buttons in the first "Edit Macro Keys" dialog, which will automatically layout the items in the Macros Window in a grid oriented fashion (like the Finder's "Clean Up Selection" menu choice). Host Mode --------- % Host Mode has several new features. If anything other than TTY emulation is being used when Host mode is entered, TTY emulation is automatically switched in. The mouse must now be clicked in the Status Bar area now to cancel Host Mode, which allows Host Mode to operate in the background under MultiFinder. % There are several new Host Mode commands: SENDZ filename - tells White Knight to send the file "filename" using ZMODEM protocol. SENDF filename - tells White Knight to send the file "filename" using Flash protocol. RECZ filename - tells White Knight to receive the file "filename" using ZMODEM protocol. RECF filename - tells White Knight to receive the file "filename" using Flash protocol. RECN filename - tells White Knight to capture all further incoming text to a new file (destroying any old files by the same name) titled "filename". RECA filename - tells White Knight to capture all further incoming text, either creating a new file titled "filename" or appending to the end of any existing file by the same name. DRIVES - tells White Knight to print out the volume names of all mounted disk volumes. The volume names are enclosed in brackets so that any leading or trailing spaces are obvious. DIR pathname - tells White Knight to print out the volume names of all folders and files contained in the folder "pathname". Pathname can also be a volume name. File and folder names are enclosed in brackets so that leading and trailing spaces are obvious. Folders are designated with a colon as the first character. Some examples of this command would be: DIR HD would show all files and folders on the disk volume titled "HD". DIR HD:Comm would show all files and folders in the folder "Comm" which resides on the disk volume "HD". DIR HD:Comm:BBS would show all files and folders in the folder "BBS" which resides in the folder "Comm" which resides on the disk volume "HD". HANG UP - is equivalent to choosing "Hang Up" under the Modem menu. HELP - sends a file named "Host Mode Help" which resides in the same folder as White Knight. A sample "Host Mode Help" is included with White Knight 11. PASSWORD string - enters the user's password (discussed below). % There are three levels of password protection that can be entered for Host Mode: Full Access, Send-Only Access, and Receive-Only Access. If all three passwords are left blank, Full Access is automatically given to the caller. The caller enters their password using the PASSWORD Host Mode command. This command is in the following form: PASSWORD string The string contains the password (up to 8 characters), and upper and lower case letters are _not_ significant (they are considered the same, so "BOBBY" and "bobby" is the same password. Here are the commands available at each Access level: No Access Level (or any Access Level) ------------------------------------- HANG UP PASSWORD Full Access Only ---------------- DRIVES DIR DO Receive-Only Or Full Access --------------------------- RECX RECA RECN RECK RECZ RECF RECY *CLOSE* Send-Only Or Full Access ------------------------ SENDA SENDX SENDY SENDZ SENDK SENDF Any Access Level (except No Access) ----------------------------------- HELP The access level is automatically downgraded to No Access whenever the following happens: 1) The DO command is executed. 2) Host Mode is entered (even with a Procedure HOST command). 3) The string "NO CARRIER" is received. 4) The string "CONNECT" is received. 5) The HANG UP command is executed. Therefore, if the user wishes to execute a Procedure which later returns to Host Mode, the PASSWORD command will have to be reentered. This security is not by any means foolproof, but it should provide a very satisfactory level of insulation from malcontents. New Features In White Knight 11 (file #2 of 2) ---------------------------------------------- This file continues the new features list that began in the first file. Procedure Commands ------------------ % White Knight 11's Procedure language is upwardly compatible with Red Ryder 10.3's. A few small changes were necessary: 1) STRIP now turns on/off the text transfer "Use filter" option. 2) XKSTRIP now turns on the file transfer "Use filter" option. 3) NOZAP ON now turns on IGNORE parity. NOZAP OFF now switches to NO parity. 4) FASTDUMP has been eliminated as a Procedure command and has been implemented as an RCMD module (described later). 5) TIMEDATE now uses the proper International date/time format. 6) The MENUDOES command now allows up to 68 characters to be entered for each user menu command. % The Procedure RUN command has been rewritten to support MultiFinder and the launching of appications outside of the folder in which White Knight resides. % The number of string and numeric variables have been increased from 26 each to 234 of each. % A plethora of new Procedure commands have been added. I'm going to document them in pretty much the same manner as in the version 10 manual, so refer to that if you have any questions about the syntax descriptions. str_exp = String Expression str_con = String Constant str_var = String Variable num_exp = Numeric Expression num_con = Numeric Constant num_var = Numeric Variable on_or_off_exp = On Or Off Expression proc_cmd = Procedure Command RECN str_exp Similar to the RECA command, but it will always destroy an existing file by the name contained in "str_exp" before starting the file capture. RECF str_exp This command is equivalent to choosing "Receive File Using Flash Protocol" under the File menu. The filename to be used as a default is contained in "str_exp". SUSPEND on_or_off_exp "SUSPEND ON" is equivalent to checkmarking "File Capture Pause" under the File menu. "SUSPEND OFF" is equivalent to uncheckmarking "File Capture Pause" under the File menu. RECZ str_exp This command is equivalent to choosing "Receive File Using ZMODEM Protocol" under the File menu. The filename to be used as a default is contained in "str_exp". SENDF str_exp This command is equivalent to choosing "Send File Using Flash Protocol" under the File menu. The file to send is contained in "str_exp". SENDZ str_exp This command is equivalent to choosing "Send File Using ZMODEM Protocol" under the File menu. The file to send is contained in "str_exp". FILTERT str_exp FILTERF str_exp FILTERP str_exp These commands loads the Filter file specified in "str_exp". "FILTERT" loads the Filter file to the terminal emulation filter. "FILTERF" loads the Filter file to the file capture filter. "FILTERP" loads the Filter file to the file transfer filter. VT102 Switches White Knight to VT102 emulation. INITMODEM This command is equivalent to choosing "Modem Initialize" under the Service menu. HANGUP This command is equivalent to choosing "Modem Hang Up" under the Service menu. AUTOANSWER on_or_off_exp "AUTOANSWER ON" is equivalent to choosing "Modem Auto-Answer" from under the Service menu. "AUTOANSWER OFF" is equivalent to choosing "Modem Turn Off Auto-Answer" from under the Service menu. NEST str_exp This command is used to execute a second Procedure file from within a Procedure file, and then later return to the same point in the first Procedure file. The Procedure file to execute is specified in "str_exp". In this way, separate Procedure files can be called as subroutines similar to the way the "GOSUB" and "RETURN" Procedure commands work with labels. Procedures can be nested 6 levels deep, but since a Modem Driver is essentially a nested Procedure file that can be called at any given moment, you should take care not to nest your Procedure files more than 5 levels deep. Although the Procedure Compiler will allow you to, you should never put a "NEST" command in an "ALERT" statement, since the return point will be the command following the "ALERT" statement, which is probably not what you want. NESTEND This command is used to return to the calling Procedure file in a file executed with a "NEST" command. If the Procedure file was not executed with a "NEST" command, this command functions exactly like the "END" command. * Any line in a Procedure file that begins with the asterisk character is treated like a comment (the rest of the characters in the line are ignored), but unlike those lines that start with a left parenthesis character, these lines will actually be included in the executable Procedure file. These lines are mainly for use with the "TRACE" command. TRACE on_or_off_exp "TRACE ON" turns on special trace mode. "TRACE OFF" turns off special trace mode. The special trace mode is a bit different than the normal trace mode provided by the "Monitor Procedure" menu choice and the "LOUD" Procedure command. Instead of showing each Procedure command as it executes, the special trace mode shows the last line in the Procedure file encountered which begins with a "*" character. This can be used as an aid in debugging to display messages such as: "* I'm now in the 'Dial A Number' routine. *" The special trace mode overrides the normal trace mode. GETRECPATH str_var This command puts the file transfer file destination pathname into the string variable specified in "str_var". The pathname does not conclude with a colon character. This command is useful for constructing full filenames (by concatenating a colon character and then the desired filename to this pathname) for use with the "RECX", "RECY", "RECK", "RECZ", and "RECF" commands so that the file is saved in the folder expected by the user. SETRECPATH str_exp This command sets the file transfer file destination pathname to the pathname specified in "str_exp". If the path is not valid, the root level of the volume containing White Knight will be used. The pathname should not conclude with a colon character. UNIQUE str_var This command will create a filename based on the current date and time and returns it in the string variable specified in "str_var". To insure uniqueness, you should put a "PAUSE 120" command between any two "UNIQUE" commands INBUFFER This command will set the YES/NO flag to YES if there is at least one byte in the serial port buffer waiting to be read. If the serial port buffer is empty, the YES/NO flag is set to NO. FETCHBYTE str_var This command sets the YES/NO flag like the "INBUFFER" command, but if a byte is available, one byte is read and is copied (erasing any old contents) to the string variable specified in "str_var". BYTEVAL str_var,num_exp,num_var This command gets the ASCII value of byte number "num_exp" contained in "str_var" and places that value in "num_var". If "num_exp" is larger than the actual length of "str_var", the returned value is garbage and shouldn't be used. BYTEADD num_exp,str_var This command concatenates a byte with the ASCII value specified in "num_exp" to the end of the string variable specified in "str_var". USEDRIVER str_exp This command tells White Knight to load and use the Modem Driver file specified in "str_exp". WINDOW on_or_off_exp This command shows (WINDOW ON) or hides (WINDOW OFF) the Macros Window. BUTTON num_exp1,num_exp2,on_or_off_exp1,on_or_off_exp2 This command controls how a Macro Key is displayed in the Macros Status Bar and Macros Window. num_exp1 is the Macro Key Set Number (1, 2, or 3) containing the desired key, and num_exp2 is the Macro Key Number (0 through 9). on_or_off_exp1 should be "ON" if you want the Macro Key to be visible in the Macros Status Bar, or "OFF" if you want it to be invisible. on_or_off_exp2 should be "ON" if you want the Macro Key to be visible in the Macros Window or "OFF" if you want it to be invisible. REDRAW The BUTTON command does not redraw either the Macros Status Bar or the Macros Window. This is to provide a "cleaner" display when changing the visibility and/or invisibility of groups of Macro Key buttons. Therefore, the REDRAW command simply redraws the Macros Status Bar and Macros Window. NOBAR on_or_off_exp The command "NOBAR ON" will hide the Status Bar. The command "NOBAR OFF" will force the Status Bar to be shown. Notice that hiding the Status Bar will also affect the "Monitor Procedure" feature, as well as some Procedure commands (notably, QUIET, LOUD, TRACE, and SHOW@). However, the Status Bar is required for the Host Mode (so the user can exit the Host Mode). In this case the "Hide Status Bar" menu choice will be turned off automatically when Host Mode is entered. SHUTDOWN Closes White Knight similar to the QUIT command and then executes a system Shut Down similar to if you chose "Shut Down" from under Finder's "Special" menu. USERPUT% num_exp,num_var Used to write the contents of a numeric variable to a file opened with the USEROPENO or USEROPENA command. num_exp is the path number (1 or 2) that was specified in the USEROPENO or USEROPENA command and num_var is the numeric variable to write to that file. Variables written with a USERPUT% command _MUST_ be read back in with a USERGET% command! USERGET% num_exp,num_var Used to read a value into a numeric variable that was previously written with a USERPUT% command from a file opened with a USEROPENI command. num_exp contains the path number (1 or 2) specified in the USEROPENI command, and num_var is the numeric variable to read the value into. USERGET% should only be used to read in data that was saved with a USERPUT% command. USERPUT$ num_exp,str_var Used to write the contents of a string variable to a file opened with the USEROPENO or USEROPENA command. num_exp is the path number (1 or 2) that was specified in the USEROPENO or USEROPENA command and str_var is the string variable to write to that file. Variables written with a USERPUT$ command _MUST_ be read back in with a USERGET$ command! USERGET$ num_exp,str_var Used to read a string of characters into a string variable that was previously written with a USERPUT$ command from a file opened with a USEROPENI command. num_exp contains the path number (1 or 2) specified in the USEROPENI command, and str_var is the string variable to read the data into. USERGET$ should only be used to read in data that was saved with a USERPUT$ command. The next group of Procedure commands deals with a new part of the White Knight interface, the User Window. Often times, it is desirable to hide what's happening in the terminal window (via a "SCREEN OFF" Procedure command) from the neophyte user, yet provide some sort of feedback that progress is being made. As you know, the various "QUERY" command dialog boxes as well as "SHELL" command dialog boxes are all modal, which means that all action behind the dialog box stops until the dialog box has been clicked closed by the user. The User Window is modeless, which means it will stay around until you specifically get rid of it. Additionally, it is updated automatically when other windows overlap it and it does not affect the continued execution of your Procedure file. Finally, you can even control the size and location of the User Window on the display screen. UWOPEN0 num_exp1,num_exp2,num_exp3,num_exp4 CUWOPEN0 num_exp1,num_exp2,num_exp3,num_exp4 These commands use a dragable window with a title bar, but no go-away box. For both commands, num_exp1 is the top coordinate, num_exp2 is the left coordinate, num_exp3 is the bottom coordinate, and num_exp4 is the right coordinate of the window. "UWOPEN0" uses these coordinates exactly to size and position the window, so they should be given in global screen coordinates. "CUWOPEN0" uses the coordinates in a relative manner to size the window, the actual postion of the window is centered on the screen. The window title is passed in the string variable W$. The text to appear in the window is passed in X$, Y$, and Z$. These strings are jammed right up against each other, so you'll want to take care to include necessary spacing. You can pass up to 132 characters in each string variable (taking care that the window size is large enough to display all of the characters). UWOPEN1 num_exp1,num_exp2,num_exp3,num_exp4 CUWOPEN1 num_exp1,num_exp2,num_exp3,numexp4 These commands are similar to "UWOPEN0" and "CUWOPEN1" (respectively), except they produce a non-dragable window without a title bar and no go-away box. Therefore, W$ is not used by these commands. UWOPEN2 num_exp1,num_exp2,num_exp3,num_exp4 CUWOPEN2 num_exp1,num_exp2,num_exp3,num_exp4 These commands are similar to "UWOPEN0" and "CUWOPEN1" (respectively), except they include a go-away box in the title bar. IF CLOSEUW proc_cmd This command is used with dialog boxes created with "UWOPEN2" and "CUWOPEN2" to monitor whether or not the user has clicked in the go-away box. When the user does this, the window is not closed, it's up to you to do this explicitly. If the go-away box has been clicked in before this command has been executed, the Procedure command "proc_cmd" is executed. Otherwise, this command does nothing. UWCLOSE This command removes the User Window created by any of the "UWOPEN" and "CUWOPEN" commands. Please note that you can have only one User Window open at any time. If the User Window is not open when this command is executed, it does nothing. Please note that an open User Window will survive even after a Procedure has ended or has been cancelled unless it is explicitly closed using this command. Therefore, if you want to give the user the ability to abort the Procedure cleanly, you should use a "UWOPEN2" or "CUWOPEN2", and when a click in the go-away box is detected, branch to a closing routine. UWUPDATE If you want to change the contents of an open User Window, this command is used to redisplay the text passed in the string variables X$, Y$, and Z$. For User Windows created with "UWOPEN0", "CUWOPEN0", "UWOPEN2", and "CUWOPEN2", it will also set the window title to the string passed in W$ (if the window has a title bar). TOP num_var This command is useful when used before a "UWOPEN0", "UWOPEN1", or "UWOPEN2" command. It returns the vertical global coordinate in the numeric variable "num_var" of the bottom of the menu bar (which can be a different size on different machines - don't take it for granted). To fit your window flush below the menu bar, you would add 19 to the number returned by this command for "UWOPEN0" and "UWOPEN2" commands or add 8 to the number returned by this command for "UWOPEN1" commands. There are a variety of new Procedure commands that deal only with RCMD modules (discussed later) and Modem Drivers. These will be documented elsewhere. RCMD Modules An RCMD Module is a CODE resource that allows White Knight to be extended beyond its basic capabilities. Although RCMD's must be written by software developers (and not beginners), they can be used by anyone. Since the RCMD has access to a large number of White Knight's private data, it can add a degree of intelligence and aesthetics not possible through White Knight 11's Procedure language. The possibilities with RCMD's seem endless, in only the short time that I've taken to explore possible applications of them. For instance, it's possible to write (and one probably will be) an RCMD that can interface to HyperCard's XFNC's and XCMD's! There will be a number of sample RCMD's distributed with White Knight 11. Some, like AddLF, are useful but sublime. Other's, like ProcEdit, have a high degree of sophistication and usefulness. My goal was to explore a lot of different avenues with these samples, and I'm sure they'll whet the appetites of other developers as they have mine. The samples include: % AddLF - This module will add linefeeds after every carriage return in a text file. Useful if you'll be sending a file with a protocol to a machine that requires linefeeds after carriage returns (example: IBM- PC). % FastDump - Replaces the FASTDUMP Procedure command in Red Ryder 10.3 % FolderBatch - This module prompts you to select a folder and then it creates a Batch File (for sending with a protocol) containing the names of every file in that folder. % SetFile - This module allows you to view and/or edit all of the Finder information (type, creator, and flags) for a specified file. % Speak - This module allows you to interface with Macintalk in your Procedures. % TabFile - This module performs on a file what the "Copy Table" menu choices does to selected text in the Terminal Window. % QuickB - This module implements CompuServe's CIS-B and QuickB file transfer protocols (for both sending and receiving) with the same File Transfer Window White Knight 11 uses for its built-in protocols. % ProcEdit - This module is a point-and-click Procedure Editor, somewhat similar to MicroPhone's or SmartComm II's script editors. Though meant for beginners, it can be very useful for anyone. It interfaces nicely with White Knight 11, in that ProcEdit can direct a file to White Knight to compile. If an error occurs during compilation, White Knight will branch back to ProcEdit, which will load that file and scroll to the line containing the error for immediate correction. ProcEdit implements its own menus, and even supports desk accessories and background operation under MultiFinder. % Others - I have written several others that aren't appropriate for mass distribution (they require more than beginner's skill to utilize), and several of the beta testers have benn working on others. The one's that I do will be available through the FreeSoft RoundTable on GEnie and through the mail in something I'm putting together called the "White Knight Developer's Toolkit", which will also contain the information on how to write RCMD's, Modem Drivers, and SHELL resources. More details about this will be in the White Knight manual. My guess is that you'll see literally dozens of these useful gizmos floating around in short fashion. The Surprise ------------ The very fact that this "new features" list is running over 40K long should testify to the amount of work that went into this new version. However, it is still my feeling that this update is long overdue. Some time back, I took advantage of my medical insurance and the intensive care facilities of the local hospital to receive a donation of four pints of blood after losing same to a rather large and pernicious hole in my gut. This little sidetrack caused me to lose over three months of development time on White Knight 11. Close to an additional month was lost coming up with the new name and playing games with the lawyers. All in all, it's been a hell of an uphill fight to get this thing out the door. To thank my existing customers for their patience and continuing support, and as an incentive to new customers, I've decided to include at no extra cost a copy of my new product Okyto for a limited time. This will be included in all updates and all new orders at least until the end of 1989 (after that, who knows?). I've been told by several people that this thing could easily sell for anywhere from $60 to $100, and that I'm nuts for doing this. But that fits in well with my self-image, so what the heck. As for what it does and whether it will be useful to you. Well, that's the surprise, you see. I'm not talking. -- Norm Goodger SysOp - MacInfo BBS @415-795-8862 3Com Corp. Co-SysOp FreeSoft RT - GEnie. Enterprise Systems Division (I disclaim anything and everything) UUCP: {3comvax,auspex,sun}!bridge2!ngg Internet: ngg@bridge2.ESD.3Com.COM
chuq@Apple.COM (Chuq Von Rospach) (10/17/89)
>New Features In White Knight 11 (#1 of 2 files)
Wow. As one of the noisier gripers about Red Ryder 10.3all I can say is that
Scott has done a *lot* of work. Glancing through the list, if he hasn't
covered all of my gripes, he's hit the major ones. If White Knight actually
comes through and delivers what's being claimed, it'll be a whale of a
package -- enough for me to quit griping long enough to upgrade and see what
happens [which I hadn't planned on doing]. It's definitely worth a try, as
far as I'm concerned.
chuq (not someone to gripe in public and congratulate privately...)
--
Chuq Von Rospach <+> Editor,OtherRealms <+> Member SFWA/ASFA
chuq@apple.com <+> CI$: 73317,635 <+> [This is myself speaking]
Anyone who thinks that the argument over {sci,rec}.fishies is about
group names doesn't understand the system.
ngg@bridge2.ESD.3Com.COM (Norman Goodger) (10/17/89)
In article <35711@apple.Apple.COM> chuq@Apple.COM (Chuq Von Rospach) writes: >>New Features In White Knight 11 (#1 of 2 files) >Wow. As one of the noisier gripers about Red Ryder 10.3all I can say is that >Scott has done a *lot* of work. Glancing through the list, if he hasn't >covered all of my gripes, he's hit the major ones. If White Knight actually >comes through and delivers what's being claimed, it'll be a whale of a >package -- enough for me to quit griping long enough to upgrade and see what >happens [which I hadn't planned on doing]. It's definitely worth a try, as >far as I'm concerned. >chuq (not someone to gripe in public and congratulate privately...) Chuq, I think that you will be very pleased with 11 and that it will live up to your expectations. While I think feel that we have tested it extensively, there is always the possibility that something is lurking, but performance is way up, both in screen and file transfers. Even in color..So if you upgrade, let me know what you think.... .... -- Norm Goodger SysOp - MacInfo BBS @415-795-8862 3Com Corp. Co-SysOp FreeSoft RT - GEnie. Enterprise Systems Division (I disclaim anything and everything) UUCP: {3comvax,auspex,sun}!bridge2!ngg Internet: ngg@bridge2.ESD.3Com.COM
jmunkki@kampi.hut.fi (Juri Munkki) (10/17/89)
I couldn't find the magic words "Communication Toolbox" anywhere in the announcement. I guess version 11 will be obsolete when it ships... Every decent communications application should support the Comm Toolbox. Of course it should be an option, but it should be there. _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._ | Juri Munkki jmunkki@hut.fi jmunkki@fingate.bitnet I Want Ne | | Helsinki University of Technology Computing Centre My Own XT | ^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
ngg@bridge2.ESD.3Com.COM (Norman Goodger) (10/18/89)
In article <25744@santra.UUCP> jmunkki@kampi.hut.fi (Juri Munkki) writes: >I couldn't find the magic words "Communication Toolbox" anywhere in the >announcement. I guess version 11 will be obsolete when it ships... Every >decent communications application should support the Comm Toolbox. Of >course it should be an option, but it should be there. > Interesting you should mention something yet unreleased. Scott is well aware of the comm toolbox..(has had betas for months) and if he were really concerned about compatability with it when its finally released (if ever) then I am sure that version 11 already supports it, even if not mentioned.. -- Norm Goodger SysOp - MacInfo BBS @415-795-8862 3Com Corp. Co-SysOp FreeSoft RT - GEnie. Enterprise Systems Division (I disclaim anything and everything) UUCP: {3comvax,auspex,sun}!bridge2!ngg Internet: ngg@bridge2.ESD.3Com.COM
svc@well.UUCP (Leonard Rosenthol) (10/19/89)
In article <974@bridge2.ESD.3Com.COM> ngg@bridge2.3Com.com (Norman Goodger) writes: >In article <25744@santra.UUCP> jmunkki@kampi.hut.fi (Juri Munkki) writes: >>I couldn't find the magic words "Communication Toolbox" anywhere in the >>announcement. I guess version 11 will be obsolete when it ships... Every >>decent communications application should support the Comm Toolbox. Of >>course it should be an option, but it should be there. >> Why would ANY program become obsolete once the ComToolbox ships?? White Knight 11.0, MicroPhone II v3.0, SmartCom II 3.1, etc. all are very nice software packages for doing telecommunications and just because Apple has put otu this thing for making telecom easier to program CERTAINLY does NOT obsolete it! Is my program obsolete because I ddid my own tear off menus, but System 7.0 will have it built in?? Actually for many people they will find the above mentioned products MUCH better than the intial CTB compatible p9roducts since they features things that are not yet avail fo the CTB such as ZMODEM, QuickB, VT102 print logging, and SCRIPTING!! Also there are some parts of the CTB which programs such as these will support early one and there are others which may never see support - but you must understand the CTB to understand why a commercial developer would or wouldnot care to support it - and what it would take to FULLY integrate it into an existing product. > >Interesting you should mention something yet unreleased. Scott is >well aware of the comm toolbox..(has had betas for months) and if >he were really concerned about compatability with it when its finally >released (if ever) then I am sure that version 11 already supports it, >even if not mentioned.. > Although I am sure you did nto mean to spread false information, I can say VERY factually that White Knight 11.0 DOES NOT support the CTB. You have to specially recode for that support and had Scott done it - he would have said something. Remember folks - things don't break under that CTB - it just adds funcationality! -- +--------------------------------------------------+ Leonard Rosenthol | GEnie : MACgician Lazerware, inc. | MacNet: MACgician UUCP: svc@well.UUCP | ALink : D0025
ngg@bridge2.ESD.3Com.COM (Norman Goodger) (10/20/89)
I have spoken to Scott today, and yes WK11 does not support the Comm Tool Box and like you Leonard, Do not think that not supporting the CTB (nice acronym) does not mean that WK11, Microphone, or any other terminal is now obsolete. I think that Jurri Munki obviously does not understand what the CTB is, otherwise he would have not made such an ambiguous statement. -- Norm Goodger SysOp - MacInfo BBS @415-795-8862 3Com Corp. Co-SysOp FreeSoft RT - GEnie. Enterprise Systems Division (I disclaim anything and everything) UUCP: {3comvax,auspex,sun}!bridge2!ngg Internet: ngg@bridge2.ESD.3Com.COM
jmunkki@kampi.hut.fi (Juri Munkki) (10/20/89)
In <979@bridge2.ESD.3Com.COM> ngg@bridge2.3Com.com (Norman Goodger) writes: >I have spoken to Scott today, and yes WK11 does not support the Comm Tool >Box and like you Leonard, Do not think that not supporting the CTB (nice >acronym) does not mean that WK11, Microphone, or any other terminal is >now obsolete. I think that Jurri Munki obviously does not understand what >the CTB is, otherwise he would have not made such an ambiguous statement. Interesting... Maybe it's not enough that I write terminal software for a living and that I have the APDA beta release of the communications toolbox... Now suppose that I have a user that is used to White Knight/RR. He or she will want to use the same software at the office, but we happen to use telnet connections instead of physical terminal connections. The toolbox would allow this user to access the telnet services with WK/RR, if it allowed the user to select the communication channel with the toolbox. There's also the situation where a customer comes asking for a good Tektronix emulator that works in color and supports the <insert-your-favorite-network- pseudo-terminal-protocol>. The toolbox will allow that customer to connect these two with the correct terminal software. The choice of terminal software will then depend on the scripting/macro capabilities and user interface and not the fact that the program is capable of using these connections. Then there's Unix Windows. Some of you may have tried this program and discovered that the concept works, but the terminal emulation (and international support) is not what it should/could be. Again, the toolbox will save you. Of course old terminal software will be useful for a long time. At least unless someone buys a NuBus serial card that only comes with a connection tool for the communications toolbox. WK/RR will be unusable to this customer. As long as all terminal emulators are equal (as long as none of them support the toolbox), WK/RR still has a chance in the competition. Of course you shouldn't write an emulator that only supports CTB connections. You should allow the user to use old-style connections and emulators. Most users will not install CTB because it uses some disk & RAM space and is probably marginally slower than a custom tailored application. Perhaps you would like to point out how I have misunderstood the communications toolbox. I had the idea of writing the ideal terminal emulator about two or three years ago. The project died because of lack of funding & time. The idea was to have separate tools for communicating (serial, uw, telnet), file transfer (kermit, xmodem) and terminal emulation. The only real difference was that the terminal emulation modules would have used a set of callback routines to write & modify the screen. I also started designing international translation modules that would be based on simple tables, but could also call user-installed code. I stopped working on the project when I had a multi-tty application skeleton with capability to select tools and translators separately for each window. _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._ | Juri Munkki jmunkki@hut.fi jmunkki@fingate.bitnet I Want Ne | | Helsinki University of Technology Computing Centre My Own XT | ^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
jmunkki@kampi.hut.fi (Juri Munkki) (10/21/89)
In article <14138@well.UUCP> svc@well.UUCP (Leonard Rosenthol) writes: >In article <25744@santra.UUCP> jmunkki@kampi.hut.fi (Juri Munkki) writes: >>I couldn't find the magic words "Communication Toolbox" anywhere in the >>announcement. I guess version 11 will be obsolete when it ships... Every >>decent communications application should support the Comm Toolbox. Of >>course it should be an option, but it should be there. > > Why would ANY program become obsolete once the ComToolbox ships?? >White Knight 11.0, MicroPhone II v3.0, SmartCom II 3.1, etc. all are very nice >software packages for doing telecommunications and just because Apple has put >otu this thing for making telecom easier to program CERTAINLY does NOT >obsolete it! Maybe "obsolete" was too strong, but... > Is my program obsolete because I ddid my own tear off menus, but System >7.0 will have it built in?? Actually for many people they will find the above >mentioned products MUCH better than the intial CTB compatible p9roducts since >they features things that are not yet avail fo the CTB such as ZMODEM, QuickB, >VT102 print logging, and SCRIPTING!! Why would the toolbox compatible applications lack the features you mentioned? Who says that you can't combine your own code with the toolbox routines? The sample application that comes with the beta release is only a sample. The real applications will have all the features you mentinoned _and_ they will support all toolbox compatible protocols and emulators. What would you say, if an MS-DOS programmer said: "We wrote our own windowing routines and we access the chips directly. It works great on all our PCs. Why would you want run our program under Windows and why do you insist that we use netbios for communicating?" Most users will keep on buying these program because they can't immediately see what is wrong with them. The programs will work on standard machines, but will probably break on something nonstandard. _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._ | Juri Munkki jmunkki@hut.fi jmunkki@fingate.bitnet I Want Ne | | Helsinki University of Technology Computing Centre My Own XT | ^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
ngg@bridge2.ESD.3Com.COM (Norman Goodger) (10/21/89)
In article <25791@santra.UUCP> jmunkki@kampi.hut.fi (Juri Munkki) writes: (bunch of stuff deleted about possible use of unreleased Comm Toolbox) (and other stuff deleted about what Jurri himself has done) >As long as all terminal emulators are equal (as long as none of them >support the toolbox), WK/RR still has a chance in the competition. >Of course you shouldn't write an emulator that only supports CTB >connections. You should allow the user to use old-style connections >and emulators. Most users will not install CTB because it uses >some disk & RAM space and is probably marginally slower than a >custom tailored application. >Perhaps you would like to point out how I have misunderstood the >communications toolbox. I think the biggest thing you are overlooking is that the CTB is NOT released. I have not heard anything for when it will be officially released..I have heard from different sources, which may not mean anything that the CTB is a long ways away and may not even come out with System 7.0. Despite the fact that no one outside of the development community has the Comm ToolBox beta's you still feel and made the statement that any Comm software that is released now should support unreleased software and is "obsolete"? Doesn't make sense to me. Perhaps I mistated my point in my previous posting about your intentions, but as a followup to that, Scott has mentioned to me that "if and when" the Comm ToolBox is released, e will make the appropriate changes to White Knight to support it at that time. I got the impression from his point of view that the CTB is still a ways down the road for the average MacUser. -- Norm Goodger SysOp - MacInfo BBS @415-795-8862 3Com Corp. Co-SysOp FreeSoft RT - GEnie. Enterprise Systems Division (I disclaim anything and everything) UUCP: {3comvax,auspex,sun}!bridge2!ngg Internet: ngg@bridge2.ESD.3Com.COM
tim@hoptoad.uucp (Tim Maroney) (10/22/89)
As someone who has written two terminal emulators for the Mac and is working in his spare time on a third, I agree with Juri Munkki. Any terminal emulator which does not use the Communications Toolbox is obsolete. There are simply too many user options in hardware and in software which are excluded by failing to adhere to the new standard. Juri did a good job of listing many of these, and there are plenty of others. Apple did a good job with the Toolbox and anyone who doesn't use it is putting the shaft to their users in terms of future and even present environments. For instance, let's say your terminal emulator provides XMODEM (all varieties) and ZMODEM. Nifty. Now suppose someone needs to use Kermit, or something even more obscure like CompuServe B protocol. If you don't use Communications Toolbox, it doesn't matter that there's a perfectly good public domain protocol implementation available as a code resource; they are stuck with exactly the protocols you've given them. With the Toolbox, however, they can put together whatever they need. The same goes for terminal emulators. Software in general is moving towards a more modular form, with smaller pieces that can be mixed and matched, and if needs be replaced by the user. The new Toolbox gives this power to terminal emulators cleanly and efficiently, and to deny its importance is merely inane. Let's not let the inertia-based arguments and not-invented-here syndrome of a few communications developers cut us off from the wonderful new flexibility and power of the Toolbox. -- Tim Maroney, Mac Software Consultant, sun!hoptoad!tim, tim@toad.com "He goes on about the wailing and gnashing of teeth. It comes in one verse after another, and it is quite manifest to the reader that there is a certain pleasure in contemplating the wailing and gnashing of teeth, or else it would not occur so often." -- Bertrand Russell, "Why I Am Not a Christian"
blm@6sigma.UUCP (Brian Matthews) (10/23/89)
In article <8769@hoptoad.uucp> tim@hoptoad.UUCP (Tim Maroney) writes: |As someone who has written two terminal emulators for the Mac and is |working in his spare time on a third, I agree with Juri Munkki. Any |terminal emulator which does not use the Communications Toolbox is |obsolete. As someone who has never written a terminal emulator and doesn't plan to, but who uses terminal emulators a lot for a lot of different things, I agree with Tim and Juri. There are enough different hardware and communications protocols that I use and am likely to need in the future that I don't want to have to find a communications program that supports everything I need, and then have to buy a completely new one when a new requirement comes along. I also don't want to have to pay for a lot of silly protocols/emulators/etc. that I don't need. White Knight sounds nice, but I suspect I won't have to wait too long before a program with similar features comes along that does support the Communications Toolbox, so I'll make do until then. -- Brian L. Matthews blm@6sigma.UUCP