home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- RFC 191 Charles Irby
- NIC 7136 Augmentation Research Center
- Category D.6, I.1 Stanford Research Institute
- 13-JUL-71
-
- GRAPHICS IMPLEMENTATION AND CONCEPTUALIZATION AT ARC
-
- Overview:
-
- This document is a brief description of the way in which graphics
- terminals are conceptualized and used at the Augmentation
- Research Center. All things described are implemented and have
- been operational for several months. Although our attention has
- initially been centered about the display of textual material, we
- are now about to turn our attention toward pictorial displays
- (hopefully much enhanced over our previous 940 line drawing
- capabilities).
-
- This document will discuss only those facits of display use
- which have been implemented and are currently operational,
- namely only those dealing with textual display.
-
- included is a discussion of the use of multiple file viewing
- display areas in NLS to provide cross file editing capabilities.
- A description of our display and terminal input equipment will
- be issued as a separate document.
-
- NOTE: RFC 190 includes a functional description of the
- implementation of the interface to our displays and is a
- description of the way this interface was extended to include
- "Processor-displays" (an IMLAC PDS-1, in this case) to our
- system, thus enabling one to use Display NLS over any of our
- teletype lines (including the network).
-
- A "processor dsplay" is a display with Processing power which
- can be controlled by character strings.
-
- Description of the "conceptual display" implemented at ARC
-
- The allocatable output unit for our display terminals (which
- include our local terminals and all remote processor-displays) is
-
-
-
-
-
-
-
-
-
-
- [Page 1]
-
- a rectangular "display area". A program treats this display area
- much like it would a file which it has opened with write access.
-
- When requesting the allocation of a display area, a program
- specifies its attributes, including where it is to be on the
- screen. The program is returned an identifier which it
- subsequently uses to manipulate images within the display area
- and the display area itself. Each string which the program
- writes into the display area is also given an identifier, which
- can subsequently be used to move, delete, replace, or change the
- characteristics of that string.
-
- The currently implemented characteristics are character size,
- horizontal spacing between characters, and font of the
- characters (e.g. blinking, italics, intensity, etc.).
-
- The position of items in the display area are given relative
- to the 0,0, which is the lower left corner of the display
- area. The horizontal coordinate increases to the right and the
- vertical coordinate increases toward the top.
-
- In addition to above described manipulation of strings within
- display areas a program can suppress the display of individual
- strings within display areas or suppress whole display areas.
-
- Also, a program can switch the terminal's state from teletype
- simulation to display mode and vis versa.
-
- When in display mode, the teletype simulation display area is
- suppressed and the coordinates of the cursor are input with
- each character. When in teletype simulation mode, all user
- owned display areas are suppressed and the coordinates of the
- cursor are not input with each character.
-
- At TENEX startup time, display areas are allocated for a teletype
- simulation and a cursor for each local display terminal. Programs
- can change the string being displayed as the cursor to give the
- human feedback as to the programs state.
-
- Within NLS:
-
- The NLS subsystem deals only with the cursor and the display
- areas it has requested from the system for output to the user.
- The display area formatters assumes that the display has 64K
- by 64K addressable points (with 0,0 at upper left), several
- different character sizes and fonts, and 7-bit ASCII.
-
-
-
-
-
- [Page 2]
-
- The display area formatters use format parameters during the
- format process and post-processors to convert the vertual
- format to one that is acceptable to the device for which the
- formatting was being done (a display area on the screen, a
- page for a printer, a microfilm device, or a teletype).
-
- NLS allows the user to specify arguments to commands by
- selecting items from the current display image. This is
- accomplished through the use of a data structure, which
- describes the current display image, to map the cursor
- coordinates, which are input with each character, into the
- proper selection.
-
- Multiple text display areas in NLS
-
- When the user's device is a display, NLS allows him to subdivide
- the file-viewing display area (the one in which he views his
- file) and view (and edit across) several different files at once.
- Following is a discussion of the commands and capabilities
- associated with this new feature.
-
- new commands
-
- Horizontal split
-
- splits a file-viewing display area horizontally (into an
- upper and lower segment) at the selected location moving
- the image of the original display area to the upper or
- lower segment depending on whether the cursor is above or
- below the bugged position when the final Command Accept is
- input.
-
- No display area will be created which is smaller then 2
- lines by 20 columns (using the character size of the
- original display area).
-
- Vertical split
-
- splits a file-viewing display area vertically (into a left
- and right segment) at the selected location moving the
- image of the original display area to the left or right
- segment depending on whether the cursor is to the left or
- right of the selected position when the final CA is input.
-
- No display area will he created which is smaller then 2
- lines by 20 columns (using the character size of the
- original display area).
-
-
-
- [Page 3]
-
- Move boundary
-
- The selected boundary is moved to the new position. A
- boundary will not be moved passed a boundary of a neighbor.
- A boundary is moved for all display areas for which it is a
- boundary. Any resulting display area which is smaller than
- two lines by twenty columns will be deleted.
-
- Character size
-
- The current character size of the display area which
- currently contains the cursor is displayed, and the user
- may type a number (0, 1, 2, 3) for a new character size.
- The final Command Accept causes the character size to be
- changed. The horizontal and vertical increment are
- automatically adjusted. Different display areas may
- simultaneously have different character sizes.
-
- Clear display area
-
- The selected display area is cleared, i.e. the image is
- erased, the return and file return rings are released, and
- the association of a file with that display area is
- removed. The display area itself is not deleted.
-
- One may freely edit and jump using several display areas. The
- position of the cursor is used to resolve ambiguities.
-
- For example, If one executes a Jump command, the position of
- the cursor when the final Command Accept is entered determines
- in which display area the new image is to appear.
-
- Also, If one changes viewspecs using the leftmost two buttons
- of the mouse, the viewspecs of the display area containing the
- cursor when the buttons go down are used as the initial values
- and are displayed in the viewspec area. When the buttons are
- released, the display area containing the cursor receives the
- new viewspecs.
-
-
- [ This RFC was put into machine readable form for entry ]
- [ into the online RFC archives by BBN Corp. under the ]
- [ direction of Alex McKenzie. 12/96 ]
-
-
-
-
-
-
-
- [Page 4]
-
-