Aucb.841 fa.editor-p utcsrgv!utzoo!decvax!ucbvax!C70:editor-people Sun Apr 4 11:55:05 1982 screen editors on IBM hardware >From decvax!duke!mcnc!unc!smb@Berkeley Sun Apr 4 11:51:51 1982 The IBM full-screen editors run only on 3270 terminals. These are typically corrected directly to the channel, so that the effective baud rate is *very* high, and the cost of redrawing the entire screen is the same as redrawing any part of it; it is also possible to have remote clusters of 3270s connected via a bisync line. As Mark mentioned, they do have a group of 12 (or sometimes 24) function keys that will wake up the CPU immediately. The key to the full-screen editors is to build a fair amount of intelligence into the terminal. All 3270s had insert/delete character, at a time when that was rare in ASCII terminals. Similarly, there are protected fields, display enhancements, etc. A user would use the local controls to make any desired changes to the on-screen image; when the CPU was next interrupted, the changes would be reflected internally as well. Such editors are normally modeless; if you type text in the command area, it's a command; if you type it in the text area, it's text. To insert new text, you can just open up a few lines via a command (typically, this will be one of the commands normally bound to a PFK, so it's easy to do); alternatively, there is an input mode, in which the CPU will do automatic line overflow handling when it gets a chance. The Amdahl UNIX 3270 editor is based on the standard UNIX editor. As I recall, the cursor was normally positioned at the current text line, not the command area, though I think there was a way to change this. One of the PFKs was used to home the cursor to the command area. Most changes could (and should) be made on-screen; at any time, one could use the use the standard editor command set to accomplish global changes, or to search for some pattern. The set of commands was also extended, making it considerably more powerful. The flicker that Mark noticed is a hardware abberation, and is brand and model-dependent; some are much worse than others about that. The real question of interest, though, is how to write a good editor for such hardware. If you're willing to live with this style of editing, and if you have a suitable terminal, it can be done. (Not surprisingly, the IBM 3101 is one of the best for this purpose, though they really blew a few features for this purpose as well -- like providing only 8 PFKs, instead of 12.) A high-speed line is also desirable, even more so than for ordinary screen editors. Consider: each line on the screen is a "field"; only modified fields will be transmitted, and then only on command of the CPU. The user can do all manner of local editing, and then yell for attention, via a PFK, an ENTER key, or some such. The CPU can then read what's different, update its internal copy, and perform any necessary screen refresh. The question one must ask is this: for most commands, how necessary is the immediate update capability? And how important is it to avoid an extra keystroke or two on some commands? I don't think I'd like such an editor as well as I like 'vi'; on the other hand, Amdahl's version is superior to XEDIT (IBM's best), because it started with a better base. ----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen of http://communication.ucsd.edu/A-News/ This Usenet Oldnews Archive article may be copied and distributed freely, provided: 1. There is no money collected for the text(s) of the articles. 2. The following notice remains appended to each copy: The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.