Browse Prior Art Database

CRT Compressed Message Storage

IP.com Disclosure Number: IPCOM000039711D
Original Publication Date: 1987-Jul-01
Included in the Prior Art Database: 2005-Feb-01
Document File: 3 page(s) / 60K

Publishing Venue

IBM

Related People

Bushaw, KA: AUTHOR

Abstract

Fig. 1 shows data placement within a memory device such as a 16K-byte EPROM. It illustrates a way to compactly store and reference a set of messages (the data) for a CRT display system where each message is sufficient to define all the characters which simultaneously appear on the CRT. (Image Omitted) Each message is initially defined using an instruction set which includes the text of the message plus controls for formatting (such as spaces, hard line endings, and indentation), punctuation, and presentation attributes (such as blinking, highlighting, reverse video, and underlining). Controls are also included to allow the enabling/disabling of conditional information within a message so that a single "message" may serve multiple situations.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 3

CRT Compressed Message Storage

Fig. 1 shows data placement within a memory device such as a 16K-byte EPROM. It illustrates a way to compactly store and reference a set of messages (the data) for a CRT display system where each message is sufficient to define all the characters which simultaneously appear on the CRT.

(Image Omitted)

Each message is initially defined using an instruction set which includes the text of the message plus controls for formatting (such as spaces, hard line endings, and indentation), punctuation, and presentation attributes (such as blinking, highlighting, reverse video, and underlining). Controls are also included to allow the enabling/disabling of conditional information within a message so that a single "message" may serve multiple situations. The "name" of the message is its numerical position in the message set which is represented in hexadecimal for most efficient storage. Compact storage of the message set is achieved by processing the messages in ascending numerical order. Each message is scanned for "words" which are defined to be strings of characters separated by spaces or controls. As each new word is found, it is placed in the dictionary 1 as the next text segment and replaced in the message by a SEGMENT control which indicates the word's numerical position in the dictionary. An end-of-file (EOF) control 2 is placed at the end of each segment to define its end. Words which already exist in the dictionary are simply replaced by the appropriate SEGMENT control since each word need be stored only once. Upon completion of processing, the message has been reduced to a sequence of controls called a MACRO list 3, and an EOF control 4 is inserted to mark its end. The macro list pointer table 5 is an index of the starting addresses of the list of controls for each message. The segment pointer table 6 is an index of the starting addresses of each word/segment in the dictionary. Upon demand to construct a particular message, the message builder indexes into the macro pointer table to find the starting address of the controls which define the referenced message. It then goes to that address and begins sequentially executing the list of controls much like a program. Each SEGMENT control causes the referenced word to be inserted at that point. Spaces are automatically inserted between words and line lengths are automatically adjusted when enabled. The message is complete when the EOF has been located in the MACRO list. Three versions of SEGMENT controls are used to improve dictionary efficiency: as-is, capitalize first character only, and capitalize all characters. These are the most common grammatical variations of the same word in all languages. Thus, the word is reduced to all lowercase for dictionary storage if all characters are capitalized or only the first character is capitalized. Otherwise, the word is stored as-is. In any case, the appropriate SEGMENT control is inserted to cause correct reconstr...