|
|
|
| United States Patent | 4794386 |
| Link to this page | http://www.wikipatents.com/4794386.html |
| Inventor(s) | Bedrij; Orest J. (Poughkeepsie, NY);
Bedrij; Orest W. (New York, NY);
Rogers; Alan L. (New York, NY) |
| Abstract | A computer-controlled video display presents alphanumeric or graphic data
to a human user in a fashion selected to provide user control of the data
transfer rate and to increase mental concentration, comprehension and
creativity. A set of video display regions or windows are defined having
selected positions and areas for presenting data obtained from one or more
registers or buffers. Associated with each display window is a set of
stored parameters controlling the display of data in the window. The
control parameters include parameters designating the size and location of
each window, foreground and background colors and display intensity or
pulsation, and the source of the data to be displayed. Other control
parameters are associated with the specific data source registers as well
as specific display areas, such as the time interval over which the data
are to be displayed, the time interval over which the window is to
disappear after data are displayed, whether data are to be displayed on a
repetitive, sequential or random basis, and selection of a scrolling rate.
The control parameters are user-adjustable. Preferably the data from the
registers are transferred to the display on a timed interrupt basis so
that the display system can be used during the execution of a related or
unrelated interactive computer program. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 4794386 |
|
|
Data integrator for video display including windows |
|
|
|
|
|
| Publication Date |
December 27, 1988 |
|
|
|
|
|
| Filing Date |
April 11, 1986 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed:
1. A method of operating a computer-controlled video display terminal of
the kind having a central processing unit, a memory, a video display
screen and means for displaying selected data at selected coordinates on
said screen, said central processing unit executing a control procedure
stored in said memory for selecting said data and said coordinates; said
memory including a set of registers storing codes for said data, and
memory locations storing a set of control parameters defining (a)
respective window regions on said display screen (b) a subset of said
registers for display in each of said windows and (c) timing information
for controlling how long the same data are displayed in each window; said
method comprising the steps of said central processing unit executing said
control procedure to select said data and coordinates by the steps of:
(1) readigg said control parameters defining said subset of said registers
for display in each of said windows;
(2) selecting a particular register in said subset of said registers for
each of said windows;
(3) reading said control parameters defining said respective window regions
on said display screen for each of said windows;
(4) in response to said control parameters defining said respective window
regions read in step (3) above, transferring at least some of the codes
for data stored in the particular register selected in step (2) for each
window to said means for displaying so that characters are selectively
displayed at each fo said window regions corresponding to said codes
transferred from the respective selected registers;
(5) reading said timing information; and
(6) using said timing information in combination with said control
parameters defining said particular register selected in step (2) and said
control parameters defining said respective window regions read in step
(3), to selectively terminate the display of said data selectively
displayed at each of said window regions;
wherein said steps are repetitively performed.
2. The method as claimed in claim 1, wherein said timing information
includes the duration of the interval for which the same data are
displayed in each window and the duration of an interval in which no data
are displayed in each window.
3. The method as claimed in claim 2, wherein said display terminal further
comprises a keyboard for entry of data by a user viewing said display
screen, and wherein the duration of the interval from which the same data
are displayed is adjusted by changing said timing information in response
to data entered on said keyboard by said user.
4. The method as claimed in claim 1, wherein said display terminal further
comprises a keyboard for entry of data by a user viewing said display
screen, and wherein said step (4) of transferring includes successively
transferring different portions of the codes in at least one register for
certain ones of the windows so as to provide scrolling of the data
displayed in at least one of the windows; said timing information includes
the duration of the interval between said successive transfers of said
different portions so as to control the rate of said scrolling; and said
duration of the interval between said successive transfers is adjusted by
changing said timing information in response to data entered on said
keyboard by said user.
5. The method as claimed in claim 1, wherein said control parameters
defining said window regions include parameters defining the size of each
window region and its position on said display.
6. The method as claimed in claim 1, wherein said means for displaying
includes means for displaying data in selected colors and said control
parameters defining said window regions include parameters defining the
foreground color of the data displayed in each window, and the background
color of each window around the data displayed therein.
7. The method as claimed in claim 6, wherein said control parameters
defining said window regions include a respective flag for selectively
inhibiting the display of each window.
8. The method as claimed in claim 1, wherein said means for displaying
includes means for displaying data using a selected pulsation and
intensity and said control parameters defining said window regions include
parameters for controlling the pulsation and intensity with which the data
are displayed in each window.
9. The method as claimed in claim 1, wherein said memory further includes
locations storing respective timing control parameters for each register
which is read in step (5) and is used in step (6) along with the timing
information (c) for each window to selectively terminate the display of
said data.
10. The method as claimed in claim 1, wherein said control parameters (b)
defining said set of registers for display in each of said windows
includes an ordered list of registers and said step (2) of selecting a
particular register selects the next register in said ordered list.
11. The method as claimed in claim 1, wherein said step (2) of selecting a
particular register selects a new register at random from said subset of
said registers.
12. The method as claimed in claim 1, wherein said step (2) of selecting a
particular register selects a first one of said registers for display in a
first one of said windows in response to the contents of a second one of
said registers selected for display in a second one of said windows.
13. The method as claimed in claim 1, wherein said display terminal
includes a keyboard for entry of data from a user viewing said screen, and
said step (2) of selecting a particular register selects said register in
response to data entered by said user from said keyboard.
14. The method as claimed in claim 13, wherein said data entered by said
user is used as a key to select a particular register having contents
corresponding to said key.
15. The method as claimed in claim 1, wherein said steps (1) to (6) are
repetitively performed in response to a repetitive interrupt of said
central processing unit.
16. The method as claimed in claim 1, wherein said display terminal
includes a keyboard for entry of data from a user viewing said screen, and
said steps (1) to (6) are repetitively performed when said user is waiting
for data to be displayed on said video display in response to a service
request entered from said keyboard.
17. A method of operating a computer-controlled video display terminal of
the kind having a central processing unit, a memory, a video display
screen and means for displaying lines of selected characters at selected
locations on said screen, and means for entry of data from a user viewing
said screen to said central processing unit, said central processing unit
executing a control procedure stored in said memory for selecting said
characters; said memory including a register storing codes for characters
and at least one location storing a timing control parameter related to
the size of said register storing codes for characters; said method
comprising the steps of said central processing unit executing said
control procedure to read said memory location to obtain said timing
control parameter, successively transfer at least some of the codes from
said buffer to said means for displaying so as to display lines of
characters corresponding to said codes and so as to successively scroll
said lines of characters at a predetermined rate, and to change the value
of said timing control parameter in response to data entered by said user
via said means for entry of data so that said user may variably select
said scrolling rate while viewing said lines of characters on said
display.
18. The method as claimed in claim 17 wherein said means for entry of data
includes means for entering a first command for increasing the scrolling
rate and means for entering a second command for decreasing the scrolling
rate.
19. During the operation of a computer-controlled video display terminal by
a user to interactively run a computer program, a method of displaying
from time-to-time auxiliary messages to the user; said computer-controlled
video display terminal including a video display screen, means for
displaying selected characters at selected coordinates on said screen,
means including a keyboard for entering commands from said user while
viewing said display screen to interactively run said computer program, a
central processing unit, and a memory; said memory including a set of
registers storing codes for characters, and memory locations for storing a
set of control parameters defining at least one window region of said
display screen for the display of said auxiliary messages and timing
information for controlling the intervals during which said auxiliary
message are displayed in said window region; said method comprising the
steps of said central processinguunit executing said control procedure to
display from time-to-time said auxiliary messages in said window region by
the steps of:
(1) selecting a particular one of said registers;
(2) reading said control parameters defining said window region on said
display screen;
(3) in response to said control parameters defining said respective window
region read in step (2) above, transferring at least some of the codes for
characters stored in the register selected in step (1) to said means for
displaying so that characters are selectively displayed at said window
region corresponding to said codes transferred from the selected register;
(4) reading said timing information; and
(5) in response to said timing information, selectively terminating the
display of said characters selectively displayed in the window region;
wherein said steps are repetitively performed to select different ones of
the registers and thereby display different corresponding messages, and
wherein said central processing unit executes said control procedure to
modify said timing information stored in said memory in response to
commands received from said user via said means for entering to thereby
modify the intervals during which said messages are displayed.
20. The method as claimed in claim 19, wherein register selection commands
are received from said user via said means for entering, and wherein a
particular register is selected in step (1) in response to said register
selection commands.
21. The method as claimed in claim 19, wherein window position commands are
received from said user via said means for entering for adjusting said
control parameters defining said window region.
22. The method as claimed in claim 19, wherein said means for displaying
includes means for displaying characters of selected colors, and said
control parameters defining said window region include parameters defining
the foreground color of the characters displayed in the window and the
background color of the window around the characters displaye therein, and
wherein said control procedure is executed to display a plurality of
colors to said user and to receive from said user via said means for
entering an indication of a selected foreground color and background
color, and to use said indication for adjusting said parameters defining
the foreground color and background color.
23. The method as claimed in claim 19, wherein said steps (1) to (5) are
performed in response to a repetitive interrupt of said central processing
unit.
24. The method as claimed in claim 19, wherein said steps (1) to (5) are
repetitively performed when said user is waiting for said computer program
being interactively run to respond to commands entered by said user from
said keyboard.
25. During the operation of a computer-controlled video display terminal by
a user to interactively run a computer program, a method of displaying
from time-to-time auxiliary messages to the user; said computer-controlled
video display terminal including a video display screen, means for
displaying selected characters at selected coordinates on said screen,
means including a keyboard for entering commands from said user while
viewing said display screen to interactively run said computer program, a
central processing unit, and a memory; said memory including a set of
registers storing codes for characters, and memory locations for storing a
set of control parameters defining at least one window region of said
display screen for the display of said auxiliary messages and timing
information for controlling the intervals during which said auxiliary
message are displayed in said window region; said method comprising the
steps of said central processing unit executing said control procedure to
display from time-to-time said auxiliary messages in said window region by
the steps of:
(1) selecting a particular one of said registers;
(2) reading said control parameters defining said window region on said
display screen;
(3) in response to said control parameters defining said respective window
region read in step (2) above, transferring at least some of the codes for
characters stored in the register selected in step (1) to said means for
displaying so that characters are selectively displayed at said window
region corresponding to said codes transferred from the selected register;
(4) reading said timing information; and
(5) in response to said timing information, selectively terminating the
display of said characters selectively displayed in the window region;
wherein said steps are repetitively performed to select different ones of
the registers and thereby display different corresponding messages,
said central processing unit executes said control procedure to modify said
timing information stored in said memory in response to commands received
from said user via said means for entering to thereby modify the intervals
during which said messages are displayed,
register selection commands are received from said user via said means for
entering, and a particular register is selected in step (1) in response to
said register selection commands,
window position commands are received from said user via said means for
entering for adjusting said control parameters defining said window
region, and
said means for displaying includes means for displaying characters of
selected colors, and said control parameters defining said window region
include parameters defining the foreground color of the characters
displayed in the window and the background color of the window around the
characters displayed therein, and wherein said control procedure is
executable to display a plurality of colors to said user and to receive
from said user via said means for entering an indication of a selected
foreground color and background color, and to use said indication for
adjusting said parameters defining the foreground color and background
color.
26. The method as claimed in claim 25, wherein said steps (1) to (5) are
performed in response to a repetitve interrupt of said central processing
unit.
27. The method as claimed in claim 25, wherein said steps (1) to (5) are
repetitively performed when said user is waiting for said computer program
being interactively run to respond to commands entered by said user from
said keyboard.
28. A computer-controlled video display terminal of the kind having a
central processing unit, a memory, a video display screen and means for
displaying selected characters at selected coordinates on said screen,
said central processing unit providing means for executing a control
procedure stored in said memory for selecting said characters and said
coordinates; said memory inlcuding a set of registers storing codes for
characters, and memory locations storing a set of control parameters
defining (a) respective window regions on said display screen (b) a subset
of said registers for display in each of said windows and (c) timing
information for controlling how long the same characters are displayed in
each window; and said control procedure including instructions for
selecting said characters and coordinates by the steps of:
(1) reading said control parameters defining said subset of said registers
for display in each of said windows;
(2) selecting a particular register in said subset of said registers for
each of said windows;
(3) reading said control parameters defining said respective window regions
on said display screen for each of said windows;
(4) in response to said control parameters defining said respective window
regions read in step (3) above, transferring at least some of the codes
for character stored in the particular register selected in step (2) for
each window to said means for displaying so that characters are
selectively displayed at each of said window regions corresponding to said
codes transferred from the respective selected registers;
(5) reading said timing information;
(6) using said timing information in combination with said control
parameters defining said particular register selected in step (2) and said
control parameters defining said respective window regions read in step
(3) to selectively terminate the display of said characters selectively
displayed at each of said window regions; and
(7) repeating steps (1) to (6) above.
29. The apparatus as claimed in claim 28, wherein said timing information
includes the duration of the interval for which the same characters are
displayed in each window and the duration of an interval in which no
characters are displayed in each window.
30. The apparatus as claimed in claim 29, wherein said display terminal
further comprises a keyboard for entry of data by a user viewing said
display screen, and wherein the control porcedure includes executable
instructions for adjusting the duration of the interval from which the
same characters are displayed by changing said timing information in
response to data entered on said keyboard by said user.
31. The apparatus as claimed in claim 28, wherein said display terminal
further comprises a keyboard for entry of data by a user viewing said
display screen, and wherein said step (4) of transferring includes
successively transferring different portions of the codes in at least one
register for certain ones of the windows so as to pro ide scrolling of the
characters displayed in at least one of the windows; said timing
information includes the duration of the interval between said successive
transfers of said different portions so as to control the rate of said
scrolling; and said control procedure includes executable instructions for
adjusting the duration of the interval between said successive transfers
by changing said timing information in response to data entered on said
keyboard by said user.
32. The apparatus as claimed in claim 28, wherein said control parameters
defining said window regions include parameters defining the size of each
window region and its position on said display.
33. The apparatus as claimed in claim 28, wherein said means for displaying
includes means for displaying characters of selected colors and said
control parameters defining said window regions include parameters
defining the foreground color of the characters displayed in each window,
and the background color of each window around the characters displayed
therein.
34. The apparatus as claimed in claim 33, wherein said control parameters
defining said window regions include a respective flag for selectively
inhibiting the display of each window.
35. The apparatus as claimed in claim 28, wherein said means for displaying
includes means for displaying characters of selected pulsation and
intensity and said control parameters defining said window regions include
parameters for controlling the pulsation and intensity of the characters
displayed in each window.
36. The apparatus as claimed in claim 28, wherein said memory further
includes locations storing respective timing control parameters for each
register which is read in step (5) and is used in step (6) along with the
timing information (c) for each window to selectively terminate the
display of said characters.
37. The apparatus as claimed in claim 28, wherein said cottrol parameters
(b) defining said set of registers for display in each of said windows
includes an ordered list of registers and said step (2) of selecting a
particular register selects the next register in said ordered list.
38. The apparatus as claimed in claim 28, wherein said step (2) of
selecting a particular register selects a new register at random from said
subset of said registers.
39. The apparatus as claimed in claim 28, wherein said step (2) of
selecting a particular register selects a first one of said registers for
display in a first one of said windows in response to the contents of a
second one of said registers selected for display in a second one of said
windows.
40. The apparatus as claimed in claim 28, wherein said display terminal
includes a keyboard for entry of data from a user viewing said screen, and
said step (2) of selecting a particular register selects said register in
response to data entered by said user from said keyboard.
41. The apparatus as claimed in claim 40, wherein said data entered by said
user is used as a key to select a particular register having contents
corresponding to said key.
42. The apparatus as claimed in claim 28, wherein said steps (1) to (6) are
repetitively performed in response to a repetitive interrupt of said
central processing unit.
43. The apparatus as claimed in claim 28, wherein said display terminal
includes a keyboard for entry of data from a user viewing said screen, and
said steps (1) to (6) are repetitively performed when said user is waiting
for data to be displayed on said video display in response to a service
request entered from said keyboard.
44. A computer-controlled video display terminal of the kind having a
central processing unit, a memory, a video display screen and means for
displaying lines of selected characters at selected locations on said
screen, means for entry of data from a user viewing said screen to said
central processing unit, and a control procedure stored in said memory and
executable by said central processing unit for selecting said characters;
said memory including a register storing codes for characters and at least
one location storing a timing control parameter related to the size of
said register storing codes for characters; said control procedure
including executable instructions for reading said memory location to
obtain said timing control parameter, successively transferring at least
some of the codes from said buffer to said means for displaying so as to
display lines of characters corresponding to said codes and so as to
successively scroll said lines of characters at a predetermined rate, and
for changing the value of said timing control parameter in response to
data entered by said user via said means for entry of data so that said
user may variably select said scrolling rate while viewing said lines of
characters on said display.
45. The apparatus as claimed in claim 44 wherein said means for entry of
data includes means for entering a first command for increasing the
scrolling rate and means for entering a second command for decreasing the
scrolling rate. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND OF THE INVENTION
1. Technical Field
The present invention generally relates to computer terminals, and more
specifically concerns computer-controlled video displays and systems for
using these video displays for creativity, education, thought triggering,
problem solving, new idea generation, speed reading and speed learning.
2. Description of the Related Art
The conventional method of using a computercontrolled video display for the
presentation of alphanumeric data is by sequentially displaying the
individual characters, lines of characters, or pages of characters.
Individual characters are sequentially presented to the user when the
characters become available at a rate that is relativeyy slow compared to
the response time of the human visual system. This response time is on the
order of about 20 milliseconds. Therefore, it is customary for individual
characters to be sequentially displayed as they are manually typed as
input from a keyboard or as they are received from a serial data link
operated at data rates of about 300 baud or less.
Characters are typically displayed on a line-by-line basis during a
"scrolling" operation. After a full page of alphanumeric data has been
received and displayed, for example on a character-by-character basis, the
first line on the page containing the first presented data is nearly
instantaneously changed to display the data previously displayed in the
second line on the page, the second line is nearly instantaneously changed
to display the data previously displayed in the third line on the page,
and so on, so that the data displayed on the last line on the page is
cleared to receive new characters or replaced with a new line of data.
Therefore, during the scrolling operation all of the displayed data very
quickly jumps up (or down) by one line. It is customary to inhibit
scrolling until a control key is activated, in which case all of the data
scrolls by one line each time the control key is activated. The scrolling
operation is typically used in word processing programs during the display
and editing of multi-page documents.
Data are typically displayed on a page-by-page basis during the display of
a multi-page document or during the use of "menu driven" software. In menu
driven software, a page or menu of selections is displayed to the user,
and in response to a selection signal from the user, the next page of data
is chosen from a group of predetermined pages of data, some of wiich may
contain different menus for further selections.
It is known to divide the screen of a video display into separate regions
for displaying respective groups of data. One part of a display, for
example, has been used to show interactive dialog between the user and a
data base management system, and the other part of the display has been
used for showing records retrieved by the data base management system.
SUMMARY OF THE INVENTION
The primary object of the invention is to facilitate the process of maximum
data integration by the mind of a human user.
A more specific object of the invention is to provide a convenient means
for user control of the rate at which alphanumeric or graphic data are
transferred from the video display to the mind of the human user, without
substantial interference with the data transfer process.
Another object of the invention is to provide a convenient means for
reinforcing the presentation of selected alphanumeric data or images to a
human user and triggering pre-established thought patterns in response to
the alphanumeric data or images.
Still another object of the invention is to provide a means for increasing
the maximum rate at which alphanumeric data can be transferred from a
video display to the mind of a human user without substantial loss of
mental concentration or comprehension.
Moreover, another object of the invention is to provide a means for using
normally "wasted" time during which the user of an interactive computer
system waits for the system to respond to a service request.
Briefly, in accordance with important aspects of the present invention, a
computer-controlled video display presents alphanumeric or graphic data to
a human user in a fashion selected to provide user control of the data
transfer rate and to increase mental concentration and comprehension. A
set of video display regions or windows are defined having selected
positions and areas for presenting data obtained from one or more
registers or buffers. Associated with each display window is a set of
stored parameters controlling the display of data in the window. The
control parameters include, for example, parameters designating the size
and location of each window, foreground and background colors and display
intensity or pulsation, and the source of the data to be displayed. Other
control parameters can be associated with the specific data source
registers as well as specific display areas, such as the time interval
over which the data are to be displayed, the time interval over which the
window is to disappear after data are displayed, whether data are to be
displayed on a repetitive, sequential or random basis, and selection of a
scrolling rate. Preferably the control parameters are user-adjustable in a
convenient fashion such a by entry from a mouse, by color palette
selection, and by increasing or decreasing the timing control parameters.
To display data from selected registers during the execution of a related
or unrelated computer program, it is advantageous to repetitively execute
a separate control procedure for transferring data from the registers to
the windows. Preferably this separate control procedure is executed on a
timed interrupt basis and references an array of control parameters
associated with the respective windows and an array of control parameters
associated with the respective registers. The computer program may then
exercise supervisory control by modification of the control parameters in
the arrays. The control parameters, for example, include logical flags for
enabling the display of data in the windows, and an interactive computer
program may obtain exclusive use of the display by clearing the flags. By
setting the flags when the user enters a service request to the
interactive computer program, and clearing the flags when the interactive
computer program has formulated a response to be displayed to the user,
the time normally wasted during the execution of the interactive computer
program can be used for displaying data in the windows. The display of
subliminal messages in the windows, however, need not be inhibited when
the interactive computer program is using the display.
BRIEF DESCRIPTION OF THE DRAWINGS
Other objects of the invention will become apparent upon reading the
following detailed description and upon reference to the drawings, in
which:
FIG. 1 is a schematic diagram of a computercontrolled video display
terminal using the present invention and having a number of windows for
displaying the contents of selected memory registers;
FIG. 2 is a pictorial representation of the screen of the video display
when used for selecting foreground colors;
FIG. 3 is a listing of control parameter arrays associated with the windows
on the screen of the video display of FIG. 1;
FIG. 4 is a listing of the control parameter arrays associated with the
memory registers shown in FIG. 1;
FIG. 5 is a diagram showing the transformation of window coordinates to
screen coordinates of the video display of FIG. 1;
FIG. 6 is a flowchart of an executive control procedure for initially
displaying the contents of selected registers in the windows on the video
display of FIG. 1; and
FIG. 7 is a flowchart of a periodic interrupt routine which repetitively
changes the alphanumeric characters displayed in the windows on the video
display of FIG. 1.
The control procedure for the video display terminal of FIG. 1 is further
shown in the computer code listings in Appendices II-VI.
While the invention is susceptible to various modifications and alternative
forms, a specific embodiment thereof has been shown by way of example in
the drawings, and will herein be described in detail. It should be
understood, however, that it is not intended to limit the invention to the
particular form disclosed, but, on the contrary, the intention is to cover
all modifications, equivalents, and alternatives falling within the spirit
and scope of the invention as defined by the appended claims.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Turning now to FIG. 1, there is shown a schematic diagram of a
computer-controlled video display terminal generally designated 10
employing the present invention. The terminal includes a video display 11
for displaying alphanumeric or graphic characters to a user (not shown),
and a keyboard 12 for permitting the user to enter commands and data. The
terminal 10 may include other means for permitting the user to enter data,
such as a mouse 13. As is well known, the user may enter coordinate data
with respect to the video display 11 by movement of the mouse 13 over a
flat surface. Movement of the mouse 13 is reflected by movement of a
cursor 14 until the cursor reaches a selected point on the display screen
15. The coordinates of the selected point are entered when the user
activates a push button switch 16 on the mouse 13.
For controlling the operation of the video display 11 in response to
commands or data entered from the keyboard 12 or the mouse 13, the video
display terminal 11 includes a central processing unit 17 of the kind of
which executes a control procedure comprising instructions fetched from
addressable memory. As is conventional, the addressable memory includes
read only memory (ROM) 18, and random access memory (RAM) 19. The ROM
includes basic control steps for receiving data from the keyboard 12 and
for transmitting instructions to the video display 11.
Depending on the particular application, the video display 11 is used as a
remote terminal to another central processing unit (not shown) or on a
stand-alone basis using the central processing unit 17 for executing a
selected computer program. As shown in FIG. 1, the central processing unit
17 may execute a prestored computer program obtained from one of many data
files 20. The data files, for example, are stored on a floppy disk. The
ROM 18, for example, includes control steps executed in response to a
command from the keyboard 12 in order to read a selected program from the
data files 20, load the program into RAM 19, and to execute the program.
To permit the execution of programmed instructions at predetermined times,
the computer-controlled video display terminal 10 preferably includes a
clock 21, and the read only memory 18 includes a subroutine for obtaining
the time indicated by the clock 21. The time is indicated, for example, by
a number which is periodically incremented at intervals of 1 or more
milliseconds. This number could be read directly by the central processing
unit 17 from the clock 21, or it could be obtained from a random access
memory location which is periodically incremented in response to a
periodic interrupt of the central processing unit 17 by the clock 21.
Although the use of a clock 21 for keeping track of timing intervals and
for providing interrupts is not essential for practicing the present
invention, it does simplify the programming of the video terminal 10.
For carrying out the present invention, the video display 11 is of the kind
which has means for displaying selected alphanumeric or graphic characters
at selected coordinates on the display screen 15 in response to
instructions executed by the central processing unit 17. The graphic
characters, for example, include blanks and dots, or more complex shapes
formed as a matrix of dots.
A preferred kind of video display is a raster-scanned color cathode ray
tube display. This kind of video display typically has a scanned memory
for storing character codes, at least one memory location being provided
for each row and column character postion on the display screen 15. The
memory location stores a code number for specifying the character to be
displayed, and may also include attributes associated with the display of
that character. These attributes include, for example, the foreground and
background color, intensity and pulsation of the displayed character. The
scanned memory is addressed by raster scanning circuits which sequentially
deflect the electron beam in the cathode ray tube along a path including
the addressed character positions. Therefore, by addressing the character
codes and attributes in synchronism with the scanning of electron beam,
the information about each character to be displayed is obtained at the
proper times to modulate the electron beam in the cathode ray tube.
As described above, the video display terminal 10 is recognized as having
conventional components which may be used for a number of different
purposes depending on the control procedures stored in the ROM 18 or read
from the data files 20 into the RAM 19. The video display terminal 10, for
example, could function as a master or slave terminal for a remote
computer, or it could function as a stand-alone "personal" computer or be
programmed for a specific application such as word processing or data-base
management. The display terminal 10 is readily available in a variety of
forms from numerous manufacturers in both the original equipment and the
consumer markets.
In accordance with important aspects of the present invention, the
computer-controlled video display terminal 10 presents alphanumeric or
graphic data to a human user in a fashion selected to facilitate control
of the data transfer rate and to increase mental concentration and
comprehension. A set of video display regions or windows 22 are defined
having selected positions and areas for presenting data obtained from one
or more memory buffers or registers 23. Associated with each window 22 is
a set of stored parameters for controlling the display of data in the
window. As shown in FIG. 1, the stored parameters associated with each
window are preferrably stored as arrays 24 in the random access memory 19.
The control parameters include, for example, parameters defining the
windows 22 on the display screen 15, a subset of the registers 23 for
display in each of the respective windows, and timing information for
controlling how long the same alphanumeric characters are to be displayed
in each window. The control parameters defining the respective windows 22
on the display screen 15 include, for example, parameters designating the
size and location of each window, the foreground color and the background
color for each window, and the display intensity or pulsation of the
characters displayed in each window.
Preferably during the display of data, the control information associated
with each window is modified to some degree by control information
associated with the selected register. Preferably the control information
associated with the registers is stored in arrays 25 in the random access
memory 15. Therefore, the control information for displaying the data in
each window is obtained by reading the register control parameter arrays
25 for the selected register, reading the window control parameter arrays
24 for control information for the window, and combining the register
control information with the window control information.
In accordance with another important aspect of the present invention, the
central processing unit 17 executes a control procedure to display the
alphanumeric or graphic characters in the windows 22 by reading the
control parameters defining the subset of registers for display in each of
the windows, selecting a particular register in the subset of the
registers for each of the windows, reading the control parameters defining
the respective windows, and in response to the control parameters defining
the respective windows, transferring at least some of the codes for
alphanumeric or graphic characters stored in the selected register for
each window to the video display 11 so that corresponding characters are
selectively displayed at each window. Also the central processing unit 17
reads the control parameters specifying timing information, and in
response to the timing information, selectively terminates the display of
the characters displayed at each windww. These steps are repetitively
performed so that alphanumeric or graphic data from a number of different
registers are displayed in each window.
In accordance with another aspect of the present invention, the control
parameters are selected by the user either before or during the display of
characters in the windows. Preferably the user selects the foreground and
background colors before the windows are displayed. As shown in FIG. 2,
this is conveniently done by displaying a palette of colors generally
designated 30 on the screen 15.
In order to illustrate the various ways of controlling the display of
characters from selected registers in user-defined windows, a specific
example of window control parameter arrays and register control parameter
arrays are shown in FIGS. 3 and 4. So that the user may interactively run
any computer program from the terminal 10 while characters from the
registers 23 are displayed in the windows 22 without interference with the
running of the computer program, the transfer of the | | |