koreth@ssyx.ucsc.edu (Steven Grimm) (05/01/88)
Submitted-by: ucbvax!ihnp4!laidbak!katzung (Brian Katzung) Posting-number: Volume 1, Issue 51 Archive-name: uw/part01 [This is a pretty nifty program. I wish it worked in color (but it does run fine under OmniRes.) -sg] This is part 1 of 2. This article contains the README for the client (Atari) side, and the address of the person to contact for a copy of the server (Unix (tm)) side. **** Client Information **** UW (Unix (tm) Windows) for the Atari ST This program was written by Hans-Martin Mosner at the University of Dortmund in West Germany. It has since been enhanced by Brad Bosch and Brian Katzung at Lachman Associates, Inc., in Naperville, Illinois. We have added quite a lot. The source code is now about three times what we started with. This version seems stable enough to distribute. We have a newer, less stable version which supports kermit file transfer in a uw window, keyboard and mouse locking, subprocess execution, and other enhancements. We would like people to try the more stable version and let us know if any bugs are found. Since we are still actively developing this code, we would like to maintain fairly tight control on the source code, although we would be glad to have help developing new features. If you have specific ideas for new features and would like to help, please let us know. We could send the current source code out to a small number of people willing to contribute in its development. We plan on distributing the source code once our development effort slows down a bit. We have include a README file which was included with the source code that we started from. Please refer to this for more information on the history of this code. We have recently tried to contact Hans Martin-Mosner, but have received no response from his last known address. Does anyone know how to get mail to him? Note that this disk represents a beta test version, and is provided on a strictly as-is basis, and we assume no responsibility or liability for any aspect of this software. This version of uw provides only adm31 emulation and the most basic UW protocol. The adm31 emulation has been extended slightly. See the end of the Features section for a description of the extensions. Features added by Brad Bosch and Brian Katzung: o Jump scrolling occurs if screen updates can't keep up with transmission from the host. This and other changes improves screen update speed greatly. o The input window may be different than the top window. o A printer copy of output to each window may be enabled or disabled on a window-by-window basis in various flavors. o <Shift><Help> sends a break. o There is a menu item to reset flow control if the Atari and the host get out of synchronization. o Fonts "windalt.fnt", "windoth.fnt", and "windtny.fnt" are supported in addition to "windstd.fnt". The "windtny" font is small enough to allow four 24 x 80 windows on the screen without overlapping. o The smaller system font is offered in addition to the larger one. Some of the characters in the smaller font are "improved" to increase readability. o The user may now select whether or not a window will be "topped" when a ^G (BEL) is output to it. o The user may choose to have ^G (BEL) flash the screen, ring the bell, neither, or both. o When not selecting an input window, pressing the right mouse button on the menu bar toggles the menu bar sensitivity. o The close-box works even when the UW protocol is not running. This is useful for changing the font size or other options. o The RTS (request to send) and DTR (data terminal ready) lines can be cleared and asserted. o Function keys can be used and defined up to 40 characters each. o Function keys and other global option values can be saved and loaded. A file called "win.cnf", if present, is read at startup time. o The right mouse button can be used to copy text from the screen and send it to a window as keyboard input. Click twice on a window border to send copied text. Click once on the boarder to select the window for input. Select text by dragging with the right button pressed. Inside a border, a single right button click selects a word and a double click selects a line. o Emulation window size can now be selected when a window is opened. The fixed sizes available in the menu can be changed with a resource editor without recompiling. Default sizes are font dependent. o A window menu item was added to allow the bottom window to be sent to the top even if it is competely hidden. Another item sends the top window to the bottom. The latter is somewhat slow due to shortcomings in GEM. o The main keyboard digit keys when used while the alt key is down will select that window number to be the top and keyboard input window. The first window is alt-1, the last is alt-7. Windows are numbered as gem numbers them. Alt-key bindings for lower case letters are scanned from the menu strings in the resource file. These bindings are indicated by the ^E (close box) character. o A window menu item was added to shrink the current window to an iconic size. The second-from-the-top non-iconic window becomes the current window. The fuller box is used to reverse the process. o An option is now available to cause new windows to be created without the sliders and arrows. The title bar (and close and fuller boxes) may also be eliminated by another option. Menu items have been added to support most of the functionality lost when the window controls are turned off. o Additional help information was added to the about dialog. o A variable called "locpath" contains the name of a directory to scan after the current directory when looking for configuration and font files. The string is 64 bytes long and defaults to c:\bin. o An RS232 configuration dialog has been added. There is no pro- vision for putting this information in the configuration file. Bug view: There is no auto-configuration. Feature view: Changes persist across executions. o One can now capture host output to a file on a per-window basis. Capture mode is terminated by setting an empty file name. Extensions to Adm31 emulation: o If the host sends a window the sequence ESC [18t, the window will respond with ESC [8;<rows>;<cols>t, where <rows> and <cols> specify the window's size in characters. o The insert line and delete line escape sequences (ESC E and ESC R, respectively) allow a repeat count (ie, ESC 5E inserts 5 lines). Bugs fixed: o Exiting in "fast" mode used to leave a window open. The system would crash on the next run unless you had returned to the desktop. o Actions on windows now check that there are windows to act upon. Known bugs: o Because of the extra memory used in the jump scrolling algorithm, the bottom row of pixels of an earlier line sometimes appears immediately below the title bar. o GEM doesn't let you completely eliminate the menu bar and increase your workspace. o Desk a ccessories sometimes leave damage on the screen. o GEM doesn't send "top" messages to the top window, so you can't use the left mouse button as a short hand to select the top window for input. Use the right button on the window title bar instead. o The rsconf() baud rates listed in the manual as 75 and 50 baud really result in system timer settings for 120 and 80 baud. The RS232 configuration dialog allows you to set these two baud rates, but decodes them as 300 or 200 baud, respectively. o The RS232 configuration code uses some trickery to determine the current port configuration. Some parts of this code may need to be turned off or adapted to run on other hardware or if system calls stop returning undocumented values. **** Server Information **** The latest Unix(tm)-side server that we know of is version 3.4 (dated September 30, 1986). The author and contact person is: John D. Bruner ARPANET/MILNET: jdb@s1-c.ARPA UUCP: {seismo,ut-sally,dual,lll-crg}!mordor!jdb -- Brian Katzung {ihnp4,spl1}!laidbak!katzung Brad Bosch {ihnp4,spl1}!laidbak!brad Lachman Associates, Inc. 1901 North Naper Blvd. Naperville, IL 60540