ReGIS

Last updated

ReGIS, short for Remote Graphic Instruction Set, was a vector graphics markup language developed by Digital Equipment Corporation (DEC) for later models of their famous VT series of computer terminals. ReGIS supported rudimentary vector graphics consisting of lines, circular arcs, and similar shapes. Terminals supporting ReGIS generally allowed graphics and text to be mixed on-screen, which made construction of graphs and charts relatively easy.

Contents

History

ReGIS was first introduced on the VT125 in July 1981, followed shortly thereafter by the VK100 "GIGI" which combined the VT125 display system with composite video output and a BASIC interpreter. Later versions of the VT series included ReGIS, often with color support as well. This included the VT240 and 241 and the VT330 and 340. ReGIS is also supported by a small number of terminal emulator systems.

ReGIS replaced an earlier system known as waveform graphics that had been introduced on the VT55 and later used on the VT105. DEC normally provided backward compatibility with their terminals, but in this case the waveform system was simply dropped when ReGIS was introduced.

Description

ReGIS consisted of five primary drawing commands and a selection of status and device control commands. ReGIS mode was entered by specifying the escape code sequence ESCP0p, and exited with ESC\. The sequence ESCP is the generic Device Control String (DCS) used in the VT series of terminals, and is also used for a variety of other commands. The digit following the DCS was optional and specified a mode, in this case mode 0. Mode 0 was the default and picked up drawing where it left off, 1 reset the system to a blank slate, and 2 and 3 were the same as 0 and 1, but left a single line of text at the bottom of the screen for entering commands.

All drawing was based on an active pen location. Any command that moved the pen left it there for the next operation, similar to the operation of a mechanical plotter. The coordinate system was 0 to 799 in the X axis, and 0 to 479 in Y, with 0,0 in the upper left. In early implementations such as the VK100 and VT125, the actual device resolution was only 240 pixels, so the Y coordinates were "folded" so odd and even coordinates were the same location on the screen. Later models, starting with the VT240 and VT241, provided the full 480 pixel vertical resolution. The coordinate system could also be set by the user.

Coordinates could be pushed or pulled from a stack, and every command allowed the stack to be used as a parameter, the "b" parameter pushed the current coordinates on the stack, "e" popped it back off again. Coordinates could be specified in absolute or relative terms;

[200,100] is an absolute position at x=200, y=100 [+200,-100] is a relative position at x=current X+200, y=current Y-100 [200] is absolute x=200, y=unchanged (same as [200,+0]) [,-100] is relative, x=unchanged, y=current Y-100

There were four main drawing commands and three control commands;

P "Position", move the pen V "Vector", draw a line C "Curve", draw a circle (C) or arc (A) F "Fill", draws a filled polygon T "Text", output the following string of text S "Screen", a catch-all command for setting a wide variety of modes R "Report", outputs current status W "Write", sets the pen parameters L "Load", loads an alternate character set @ "Macrograph", see below

Each of these commands used the various coordinate modes in different ways, and some had additional parameters that were enclosed in parentheses. Commands could be followed by one or more parameters, allowing continued drawing from a single command. The interpreter was not case sensitive.

Some ReGIS terminals supported color, using a series of registers. These could be set with the S command using a variety of color input styles. s(m3(r100g0b0)) sets color register ("map") 3 to "r"ed using the RGB color system, while s(m3(h120l50s100)) does the same using the HSV system. The W command likewise set a wide variety of different styles, mostly for masking, fills and brushes.

Finally, ReGIS allowed commands to be stored into a macrograph and then recalled using the @ operator. Up to 10,000 characters of code could be stored in the macros, each named with a single letter. The advantage was that the series of operations in the macro could be invoked by sending only two characters over the serial port, as opposed to the entire sequence of commands.

Sample

Example ReGIS code displayed on an xterm emulating a VT340 terminal. ReGIS circle.png
Example ReGIS code displayed on an xterm emulating a VT340 terminal.
<ESC>P0p S(E)(C1) P[100,440] V(B),[+100,+0],[+0,-10],[-100,+0],(E) P[500,300],F(C[+100]) <ESC>\

This code enters ReGIS mode and uses the S command to erase the screen with (E) and then turns on the visible cursor with (C1). P[100,440] moves the pen to 100,440 absolute. V(B),[+100,+0],[+0,-10],[-100,+0],(E) draws a series of lines, first pushing the current pen location onto the stack with (B), then drawing three lines using relative coordinates, and then using (E) to pop the previously saved location off the stack and draw to it. The result is a rectangle 100 by 10 pixels in size.

P[500,300],F(C[+100]) then moves to a new location, and uses the "F"ill command to wrap a "C"ircle. The fill command could wrap any number of commands within its parentheses, allowing it to fill complex shapes. It also allowed the inclusion of a "temporary write" that allowed the programmer to set the fill style within the fill, and abandon it as soon as it ended.

See also

Related Research Articles

The IBM 3270 is a family of block oriented display and printer computer terminals introduced by IBM in 1971 and normally used to communicate with IBM mainframes. The 3270 was the successor to the IBM 2260 display terminal. Due to the text colour on the original models, these terminals are informally known as green screen terminals. Unlike a character-oriented terminal, the 3270 minimizes the number of I/O interrupts required by transferring large blocks of data known as data streams, and uses a high speed proprietary communications interface, using coaxial cable.

VT100 Computer terminal from Digital Equipment Corporation

The VT100 is a video terminal, introduced in August 1978 by Digital Equipment Corporation (DEC). It was one of the first terminals to support ANSI escape codes for cursor control and other tasks, and added a number of extended codes for special features like controlling the status lights on the keyboard. This led to rapid uptake of the ANSI standard, becoming the de facto standard for terminal emulators.

ANSI escape code Method using in-band signaling to control the formatting, color, and other output options on video text terminals

ANSI escape sequences are a standard for in-band signaling to control cursor location, color, font styling, and other options on video text terminals and terminal emulators. Certain sequences of bytes, most starting with an ASCII escape character and a bracket character, are embedded into text. The terminal interprets these sequences as commands, rather than text to display verbatim.

GRASS is a programming language created to script 2D vector graphics animations. GRASS was similar to BASIC in syntax, but added numerous instructions for specifying 2D object animation, including scaling, translation and rotation over time. These functions were directly supported by the Vector General 3D graphics terminal GRASS was written for. It quickly became a hit with the artistic community who were experimenting with the new medium of computer graphics, and is most famous for its use by Larry Cuba to create the original "attacking the Death Star will not be easy" animation in Star Wars (1977).

Computer terminal Computer input/output device; an electronic or electromechanical hardware device that is used for entering data into, and displaying data from, a computer or a computing system update programming

A computer terminal is an electronic or electromechanical hardware device that can be used for entering data into, and transcribing data from, a computer or a computing system. The teletype was an example of an early day hardcopy terminal, and predated the use of a computer screen by decades.

VT220 Computer terminal from Digital Equipment Corporation

The VT220 is an ANSI standard computer terminal introduced by Digital Equipment Corporation (DEC) in November 1983. The VT240 added monochrome ReGIS vector graphics support to the base model, while the VT241 did the same in color. The 200 series replaced the successful VT100 series, providing more functionality in a much smaller unit with a much smaller and lighter keyboard. Among its major upgrades was a number of international character sets, as well as the ability to define new character sets.

Text mode is a computer display mode in which content is internally represented on a computer screen in terms of characters rather than individual pixels. Typically, the screen consists of a uniform rectangular grid of character cells, each of which contains one of the characters of a character set; at the same time, contrasted to all points addressable (APA) mode or other kinds of computer graphics modes.

Tektronix 4010

The Tektronix 4010 series was a family of text-and-graphics computer terminals based on storage-tube technology created by Tektronix. Several members of the family were introduced during the 1970s, the best known being the 11-inch 4010 and 19-inch 4014, along with the less popular 25-inch 4016. They were widely used in the computer-aided design market in the 1970s and early 1980s.

Remote Imaging Protocol Scripting language

The Remote Imaging Protocol and its associated Remote Imaging Protocol Script language, RIPscrip, is a graphics language that provides a system for sending vector graphics over low-bandwidth links, notably modems. It was originally created by Jeff Reeder, Jim Bergman, and Mark Hayton of TeleGrafix Communications in Huntington Beach, California to enhance bulletin board systems and other applications.

VT52

The VT50 was a CRT-based computer terminal introduced by Digital Equipment Corporation (DEC) in July 1974. It provided a display with 12 rows and 80 columns of upper-case text, and used an expanded set of control characters and forward-only scrolling based on the earlier VT05. DEC documentation of the era refers to the terminals as the DECscope, a name that was otherwise almost never seen.

VT420 Computer terminal from Digital Equipment Corporation

The VT420 was an ANSI standard computer terminal introduced in 1990 by Digital Equipment Corporation (DEC). The 420 was the only model in the 400 series, replacing the VT320. There were no color or graphics-capable 400 series terminals; the VT340 remained in production for those requiring ReGIS and Sixel graphics and color support. The entire lineup of VT300s and VT420 was eventually replaced by the relatively unknown VT500 series starting in 1993.

Sixel

Sixel, short for "six pixels", is a bitmap graphics format supported by terminals and printers from DEC. It consists of a pattern six pixels high and one wide, resulting in 64 possible patterns. Each possible pattern is assigned an ASCII character, making the sixels easy to transmit on 7-bit serial links.

Monochrome monitor

A monochrome monitor is a type of CRT computer monitor in which computer text and images are displayed in varying tones of only one color, as apposed to a color monitor that can display text and images in multiple colors. They were very common in the early days of computing, from the 1960s through the 1980s, before color monitors became popular. They are still widely used in applications such as computerized cash register systems, owing to the age of many registers. Green screen was the common name for a monochrome monitor using a green "P1" phosphor screen; the term is often misused to refer to any block mode display terminal, regardless of color, e.g., IBM 3279, 3290.

SCION's MicroAngelo was an early graphics card for S-100 bus computers. Each MicroAngelo board produced a 512 by 480 pixel monochrome image, high resolution for the era. The MicroAngelo Palette Card used the output of multiple MicroAngelo's as individual bit-planes to produce images with up to 256 colors. Early versions of AutoCAD supported the MicroAngelo system.

Semigraphics Method used in early text mode video hardware to emulate raster graphics

Text-based semigraphics or pseudographics is a primitive method used in early text mode video hardware to emulate raster graphics without having to implement the logic for such a display mode.

VT320 Computer terminal from Digital Equipment Corporation

The VT320 was an ANSI standard computer terminal introduced by Digital Equipment Corporation (DEC) in 1987. The VT320 was the text-only version, while the VT330 added monochrome ReGIS, Sixel and Tektronix 4010 graphics, and the VT340 added color.

Waveform graphics

Waveform graphics is a simple vector graphics system introduced by Digital Equipment Corporation (DEC) on the VT55 and VT105 terminals in the mid-1970s. It was used to produce graphics output from mainframes and minicomputers. DEC used the term "waveform graphics" to refer specifically to the hardware, but it was used more generally to describe the whole system.

Hazeltine 1500

The Hazeltine 1500 was a popular smart terminal introduced by Hazeltine Corporation in April 1977 at a price of $1,125. Using a microprocessor and semiconductor random access memory, it implemented the basic features of the earlier Hazeltine 2000 in a much smaller and less expensive system. It came to market just as the microcomputer revolution was taking off, and the 1500 was very popular among early hobbyist users.

References