CA1197030A - Vector scan system for video game display - Google Patents

Vector scan system for video game display

Info

Publication number
CA1197030A
CA1197030A CA000410738A CA410738A CA1197030A CA 1197030 A CA1197030 A CA 1197030A CA 000410738 A CA000410738 A CA 000410738A CA 410738 A CA410738 A CA 410738A CA 1197030 A CA1197030 A CA 1197030A
Authority
CA
Canada
Prior art keywords
symbol
display
vector
entry
displayed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000410738A
Other languages
French (fr)
Inventor
Robert A. Pecoraro
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sega Electronics Inc
Original Assignee
Sega Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sega Electronics Inc filed Critical Sega Electronics Inc
Application granted granted Critical
Publication of CA1197030A publication Critical patent/CA1197030A/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/08Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam directly tracing characters, the information to be displayed controlling the deflection and the intensity as a function of time in two spatial co-ordinates, e.g. according to a cartesian co-ordinate system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N3/00Scanning details of television systems; Combination thereof with generation of supply voltages
    • H04N3/10Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical
    • H04N3/30Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical otherwise than with constant velocity or otherwise than in pattern formed by unidirectional, straight, substantially horizontal or vertical lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

VECTOR SCAN SYSTEM FOR VIDEO GAME DISPLAY

ABSTRACT
A system for directly painting the vectors which in combination comprises symbols of the display in a video game. The symbols employed in the game are pre-defined in a symbol definition list. The game itself only manipulates a display status list. A separate asynchronous logic system creates the display from the two lists.

Description

3~

-1- 76~0-2 VECTOR SCAN SYSTE~I FOR VIDEO GAME DISPLAY
TECIINICAL FIELD
Tllis invention relates to cathode ray tube (CRT) display systems and, more particularly, to CRT displays employed in video games.
BRIEF DESCRIPTION OF DRAWINGS

-The invention and prior art are described with respect to the drawings which comprise:
Figure 1 is a front elevation of a CRT as employed in a display system.
Figure 2 is a partially cutaway side elevation through the CRl' of Figure 2.
Figure 3 is a front elevation of a CRl' indicating the development of a raster display.
Figure 4 is a simplified view of a raster display displaying an "A".
Figure 5 is a simplified drawing of a display painting an "A" with an X-Y scan system.
Figure 6 is a graph showing the decay of the phosphors employed in a CRT display with respect to the refresh rate necessary to prevent flicker.
Figure 7 is a block diagram showing one method of prior art genera-tion of displays with an X-Y scan system.
Figure 8 shows an alternate prior art method of X-Y display genera-tion.
Figure 9 is a simplified block diagram showing a video game environ-ment as wherein the present invention is employed.
Figure 10 is a drawing showing a typical symbol as employed with the present invention~
Figure 11 shows the construction of entries on the symbol definition list as employed in the present invention.

U.S.S.N. 314,69~

~3'7~

Figure 12 shows the construction of an entry on the display status list as employed in the present invention.
Figure 13 is a block diagram showing a video game system as con-structed according to the present invention.
Figure 14 is a block diagram of X-Y scan monitor system logic accord-ing to the present invention.
BAC~GROUND ART
A typical CRT as employed in a display system is shown in front and c-ltaway side views respectively in Figures 1 and 2. The CRT 10 comprises an evacuated glass envelope 12 having a phosphor surface 14 on the inside of the viewing area. Vertical and horizontal deflectors, 16 and 18, respectively, are affixed about the neck 20 of the envelope 12. A cathode 22 emits electrons 24 which are drawn towards the phosphor surface 14. Electrons 24 striking the phosphor surface 14 cause illumination thereof. By selectively energi7ing the deflectors 16, 18, the path 26 followed by the electrons 24 can be moved hori-~ontally and vertically.
Referring to Figure 3, the most common video display is shown. Such a display has a "raster scan". The beam of electrons 24 is made to move hori-zontally in electron-width strips from one side of the phosphor surface 14 to the other and from the top to the bottom, as indicated by the solid and dashed arrows in Figure 3. A first hori~ontal raster line is scanned from left to right along the top as indicated by the solid arrow 28. With the electron beam intensity turned off, -the non-illuminating beam is then moved down one raster line and back to the left side of the screen as viewed in Figure 3 and as repre-sented by the dashed arrow 30. The next raster line, as represented by the solid arrow 32, is then displayed across the screen. This process repeats from top to bottom until the last raster line, as represented by the solid arrow 34, is displayed. The display then begins at the top left by moving the non-illuminated beam, as represented by the dashed arrow 36, from the ending point to the begi~ming point.
~ uring the traversing of the raster lines by the electron beam, images are created by varying the intensity of the beam. The type of image created is shown in Figure 4 in simplified form. The number of actual raster lines in a typical display is greater than that shown in Figure 4, but the over-all effect is the same. That is, as represented by the figure "A" shown, accu-rate horizontal lines can be created because the raster lines are horizontal.
By contrast, diagonal lines such as the legs of the "A" are created by a sequence of staggered points as a best possible representation of a true diago-nal line under the circumstances.
Video games which are emplGyed in the home market for use with the CRT of a television set must use the raster drive of the television set. ~y contrast, video games created for the stand-alone game market are not so re-stricted. They can employ what is referred to as an "X-Y" scan system. Such a system is shown in Figure 5. If one were -to create the same "A" display as shown in Figure 4 using an X-Y scan system, it would be created as shown by the arrows of Figure 5. The "X" and "Y" refer to moving positions of the electron beam with reference to the typical X,Y coordinates of a two dimensional graph system. Assuming the undeflected position of the beam is at the center of the screen as viewed in Figure 5, the beam would first be moved (i.e., its X,Y posi-tion established) to the bottom of the lef-t leg of the "A" in an un-illuminated mode as :indicated by the dashed arrow 38. The beam would then be illuminated and its X,Y position moved by use of the deflectors 16, 18 to the apex of *he "A" as indicated by the solid arrow 40. It would then be moved from the apex to the bottom of the right leg as indicated by the solid arrow 42. It would 7~p3~

then be moved in its un-illuminated mode as indicated by the dashed arrow 44 in preparation for drawing or "painting" the horizontal bar of the "A" as indi-cated by the solid arrow 46. As can be seen, the "A" as painted by the X-Y dis-play system is comprised of pure straight lines.
In a raster scan system, the raster scans rapidly across the screen from top to bottom and then repeats. The screen, therefore, is in a constant state o:E illumination as determined by the intensity modulation of the electron beam. The phosphors of the phosphor surface 14, however, do not remain illumin-ated. Once energized by being struck by an electron, they glow and then begin to rapidly decay. This is illustrated in Figure 6 by line 48. If the phosphor surface 14 is struck by an electron, it will glow and eventually the intensity will diminish to zero. If the intensity is allowed to diminish below the level indicated by dashed line 50 before being re-illuminated, the viewer will per-ceive a flicker in the display. If the display is re-energized before that level is reached, no flicker will be seen.
Such re-energizing or repain-ting is referred to as "refreshing" the display. In typical prior art systems employing X-Y scan systems, this has been done in several ways. Referring first to Figure 7, a system where the operating programs dynamically creating the vectors of the display and the re-fresh program are all contained within a main computer is shown. The main com-puter is symbolized by the dashed box 52. On a time-sharing basis, the operat-ing programs 5~ place vector descriptions in memory area 56. The refresh pro-gram 58 accesses the memory area 56 and uses the descriptions therein to create and refresh the display on the CRT of display 60.
Figure 8 shows an alternate approach where the display contains its own logic portions fcr refreshing the display. The operating programs 5~ are once again within the main computer indicated by the dashed box 52. In this case, however, the vector descriptions are contained in a commonly accessible memory area 62. The display computer represeilted by the dashed box 64 contains the refresh program 58 and can also access the common memory 62.
Turning now to Figure 9, the environment of the present invention is shown. The computer 66 contains a game program 68 and a display creation and re:Eresh program 70. The display refresh progranl 70 is connected to the CRT dis-play 72 while the game program is connected to player consoles 7~ (usually one or -two) containing such input devices as balltabs 76 and buttons 78. The fore-going elements are all placed in a convenient housing having appropriate mecha-nisms for coin operation thereof. The game consists of, for example, a"player 1" fighter symbol 80 and a "player 2" fighter symbol 82 controlled by the two control panels 74, respectively. As the game program 68 senses the changes in the balltabs 76 and buttons 78 of panels 74, the position of the symbols 80, 82 are moved about display 72 in a manner to simulate controlled flighi thereof. Each symbol 80, 82 is capable of firing a simulated "missile"
84 which, if placed into coincidence with the position of the opponents symbol 80, 82, will cause that symbol 80, 82 to be "destroyed" with an attendant award-ing of points.
In such video games to date, the operation has been primarily as shown in Figure 7. That is, the game program 68 continuously calculates and places in memory the individual refresh vector descriptions of the game in pro-gress for the refresh program 70. A typical video game in an arcade has a limited life expectancy. As a game loses appeal, the amount of play quickly drops below a point of financial viability. Thus, it is desirable to provide a video gaming system which is easily converted to a new game.
Because of the components required to be employed, the amount of memory available is fixed. Obviously, therefore, the more memory dedicated to ~'7~3~3 the continued recalculation of vectors in order to produce the display symbols of the dynamic game, the less memory is available for the logic of the game it-self a.nd, therefore, the game cannot be as complex and graphic as desired to impart a high interest level to the players. Wherefore, it is also desirable to provide a video display scan system which employs a minimum amount of avail-able memory.while preserving a maximum amount of available memory for use in thc game logic of the program itself.
The time and cost of programming new games is also directly related to the complexity of the task. Spatial orientation of displayed symbols can occupy a significant amount of time with associated expenditure of funds with respect to the development of a new game which could otherwise be better employed in the development and coding of the game proper. Wherefore, it is also desirable to provide a programming environment for video games wherein the considerations necessary for the production of displayed symbols in the develop-ment of new games is minimized.
DISCLOSU~E OF INVENTION
The present invention provides a video display system for a video ga.m-ing system which is easily converted to a new game, which uses a minimum amount of the available memory, and which minimizes the considerations for production of new symbols in a new or revised game wherein a pre-established series of individual symbols are selectively displayed in multiple combination as a re-sult of programmed logic to convey movement of associated object within a de-fined area by the improvement characterized by means for defining the respective individual possible symbols as a plurality of interconnecting display lines of given angle and length with respect to a common coordinate system; means for maintaining the current status of the symbols to be actually displayed, said means including indication of the individual possible symbol in said defining 3~
7_ means associated with each display symbol and -the angle and positional ofset thereof in the common coordinate system; wherein the programmed logic updates only the status maintaining means; and, additionally, logic means for accessing the status maintaining means and the symbol defining means and for producing the display as a function thereof.
BEST MODE FOR CARRYING OUT TIIE INVENTION

,, , . _ .. .. _ In a display system such as the stand-alone video game previously des-cribed, a number of pre-defined symbols are employed. These symbols are employed in combinations to create the dynamic display of moving symbols which represents the display of the game. One such symbol which could be employed in a game according to the present invention is shown in Figure 10. Such a symbol 86 can represent, for example, a space ship to be controlled either by a game player or the computer. The ship symbol 86 can be represented as shown in Figure 10 as a series of five interconnected vector lines begiTming with point 1'A" at the origin of a polar coordinate system. By beginning at a known origin, the five line vectors which comprise the ship symbol 86 can be described by employing only lengths and angles. The first line A,B is of a given length and at a given angle from the origin. If one begins the electron beam at the origin and paints a straight line for the given length A-B at the given angle thereof, the elec-tron beam will terminate at a position corresponding to point "B". If the beam is then moved along the length of line B-C at the angle tilere-ofl it will terminate at the position of point "C". The same is true for the line segments C-D, D-E, and E-A. If the length and angles of the five lines are properly described, the lines will close upon themselves at point "A" com-pleting the ship symbol 86. The present invention works on this basic premise.
Referring now to Figure 11, the individual symbols are described in a symbol definition list having tabular entries of computer words for each indivi-3~

dual line vector. In a tested embodiment employing eigh-t bit words, the first word employs the most significant bit as a "last entry" flag; that is, if bit eight o:E the first word of a four word entry is "1", t]lis is the last four word entry of the list describing the particular symbol. If "0", it is not the last entry of -the list. Similarly, bit one is a "display" or "non-display" flag.
If the bit is set to "1", the particular vector is to be displayed. That is, thc intensity of the beam is to be "on". If the display bit is a "0", the vector is only for moving the position of the beam and the beam is not to be displayed, i.e. the beam intensity is turned off. Such a beam would correspond to the dotted arrows 3S and 44 in Figure 5 needed to generate the "A". Bits two through seven contain indicators concerning the color of the vector if it is a color system as was the case with the tested embodiment being described.
The color designation methodology employed as part of the present invention is of particular novelty and importance. Where a color display is being employed, it is particularly useful to designate each player's controlled symbol (such as the spaceship 86 of Figure 10) by a different color. This per-mits rapid identification by a player of his symbol. Of course, color can be employed to convey other information such as a change in point value or playing characteristics of a particular symbol. The color benefi~s of the present invention will be addressed further shortly.
Word two designates the length of the line vector and words three and four designate the angle of the line. In the tested embodiment, a polar coordi-nate system is used such that word three designate, the angle in degrees and word -Eour designate the quadrant in which the line is to appear. Those skilled ill the art will recognize that other word and bit assignments could be employed with equal success.
Thus, according to the above description, the ship symbol 86 oE

~3'7¢~

Figure 10 would occupy twenty words in the symbol definition list corresponding to Figure 11. There would be one four word entry for each of the five lines comprising the symbol for a total of twenty. Bit eight of the first word of the first four entries would be a "0" and bit eight of the last four word entry (i.e. bit eight of word 17) would be a "l" to indicate that as being the last line vector description entry for that symbol.
In practicing the present inven-tion, each individual symbol to be employed in the display is assigned an entry ~i.e. a sequence of ~word line defining entries) on the symbol definition list as defined in ~igure 11.
Regardless of how many times the symbol may appear dynamically on the display at any one time during the game, only one entry on the symbol definition list is required.
Turning now to Figure 12, a single entry from the display status list is shown. Each symbol presently active in the game (whether presently being displayed or not) has an entry of ten words on the display sta-tus list. Again, the entry of Figure 12 is shown with reference to a tested embodiment employing an eight bit computer word utilized in a particular manner. Those skilled in the art will recognize that the specifics of the number or words employed and the bit assignments can be modified without the requirement of invention or experimentation.
As with the entries of the symbol definition list of Figure 11, word one of the display status list entry contains a "last entry" flag in bit eight, a "display" or "non-display" flag in bit one, and color designation indication in bits two through seven. Words two and three designate the offset in the X
coorclinate from the 0,0 origin. Words four and five designate the Y offset from the origin. Note that the display screen layout and, therefore, the game logic operates in cartesian coordinates while the symbol display logic operates '7~3~

in polar coordinates. The unique arrangement of tile present invention makes this beneficial combination possible. Words eight and nine designate an angle offset for the symbol and word ten is a size designation for the symbol when displayed. As will be seen in a more detailed description hereinafter, these offset capabilities provide ease of manipulation and action generation when the present invention is employed in a video game environment.
Each entry of the display status list of Figure 12 in words six and seven contains a pointer or address vector to the associated symbol on the symbol definition list of Figure 11. For example, assuming that the five entry (one for each line) symbol definition for the ship symbol 86 of Figure 10 be-gins at memory location 3456, each entry on the display status list employing the ship symbol 86 would have in words six and seven thereof the vector address 3456.
As should now be apparent, using the present inventiun, the game pro-gram logic can create detailed symbol movement on the display by manipulating the entries of Figu~e 12 on the display status list. For example, to rotate the ship symbol 86 at any location in which it is an entry on the display status list, that entry need only have the angle designator of words eight and nine progressively increased. In similar manner, the ship can be moved in the X clirection by increasing the X offset in words two and three or be moved in the Y direction by increasing the offset in words four and five. Combined move-ment is obtained by simultaneous changes to these values. Thus, the amount of memory available for the logic of the game itself is greatly increased inasmuch as very little is required for even complex manipulation of the display.
The size designator of word ten is of particular importance in that complicated effects can be created by progressively increasing or decreasing the size of a given symbol alone or in combination with other movements. For '7~3~

example, moving the ship symbol 86 from the bottom of the display to the top and simultar,eously increasing its size from a small size -to a larger size creates the illusion of motion towards the viewer. The amount of movement and the amount of size increase govern the exact illusion created. The smaller the amount of vertical movement coupled with each size increase, the more the ob-ject looks like it is coming at the viewer horizontally.
The ease of color association and modification achievable with the present invention should now be appreciated. For example, the basic definition oE a player symbol (e.g., spaceship 86) employed by all players appears only once on the symbol definition list of Figure 11. It can be assigned a basic or universal color in that entry. By contrast, each individwal acti-ve spaceship 86 of each player will have a separate entry on the display status list of Figure 12. Thus, all the ships of a particular player can be assigned an associated color to override the basic color designation. An individual ship symbol can have its own color designation changed to create special effec-ts such as explosions. In a prior art game, the game logic would have had to accomplish that at the display output format level for each symbol. With the system of the present invention~ such color manipulation becomes a simple task requiring a minimum of memory in the game logic. Since the designators occupy the same location in a contiguous list of entries, the actual manipulation can be accomplished by an index guided subrou-tine to effect even further savings.
Th:is, of course, would not be possible with otiler more complex prior art approaches.
A game system employing the present invention is shown in Figure 13.
Tile game program 88 communicates with the player controls 90 and the display status list 92 which has the active symbol entries as described in Figure 12.
The symbol definition list 9~ is pre-established in the manner of Figure 11.

In actual practice, the game program 8~ and the symbol definition list 94 are contained in programmable read only memory (PROM) while the display status list 92 is created at playtime in dynamic memory. Also contained in PROM is the dis-play composition logic 96. The display composition logic 96 accesses the dis-play status list 92 and the symbol definition list 94 and creates therefrom the dynamic visual display on the CRT 98.
Turning now to Figure 14 the specific logic employed in display com-position logic 96 is shown in block diagram form. As will be well understood by -those skilled in the art, the logic of Figure 14 accomplishing the purposes of the present invention can be implemented in many forms to achieve the same functional results. For example, it could be done with software, firmware, or hardwired logic. Any such implementation is easily accomplished by those skil-led in the art from the flowchart of Figure 14 without experimentation and, therefore, no further detail is included herein.
Upon initial entry and subsequent re-entry a-t block 14.01, the logic first starts at the top of the display status list 92, i.e., the first entry according to Figure 12. At block 14.02, it accesses the ten words comprising the next entry, which, in the first instance, is the first entry. At decision block 14.03, the logic makes a decision as to whether this entry is to be dis-played or not. This is accomplished by testing bi-t one of word one. If the entry is not to be displayed (i.e., bit one of word one is "0"), the logic con-tinues to decision block 14.04 which then tests bit eight of word one to deter-mine if this is the last entry on the display status list. If not, the logic bumps to the next entry. In the illustrated embodiment9 this would, of course, mean increasing the address of the first word of the entry by ten. The logic then returns to block 14.02 to repeat the process with the next entry on dis-play status list 92. If at decision block 14.04 the logic finds tha-t this was 3~3 the las-t entry, i.e., bit eight of word one is a "l", the logic returns to block 14.01 to scan, once again, the display status list 9Z. If des:ired, this latter path could include a time delay assuring that the refresh cycle is re-peated no faster than a given frequency.
Returning to decision block 14. 033 if the logic finds that this entry on the display status list 92 is to be displayed, it proceeds to the logic sequence beginning with block 14.06. At block 14.06, the logic initializes the X,Y position at which the electron beam is to begin painting the particular symbol associated with this entry. It will be remembered that the symbol as de-fined in tlle symbol definition list 94 is with reference to an origin positionof 0,0. Thus, from words two, three, four and five of the entry on the display status list 92, the logic must pick up the X and Y offsets and initialize the position at which it is to begin painting the associated symbol.
The logic then moves to block 14.07 where it picks up the vector list address from words 6 and 7. It should be remembered that this is the address of the first word in the sequence of entries (described in detail in Figure 11) on the symbol definition list which define the particular symbol to be associ-ated with this entry on the display status list 92 at this particular time. It should also be appreciated that to create particular effects, the game program 88 can easily change the vector address to that of one or more new "symbols".
Ilaving picked up the vector list address, the logic then moves to block 14.08 where it accesses the next entry on the symbol definition list 94.
The first time through, of course, it is accessing the first entry. At block 14.09, the logic calculates the angle of the first vector. This angle is a com-bination of the original angle contained in words three and four of the vector definition and the angle offset contained in words eight and nine of the entry on the display status list 92. Having determined the angle of the vector to be 3~

painted, the logic then moves to block 14.10 wherein the length of the vector is calculated. Again, this is a combination of entries from both lists. The basic length as originally defined is contained in word two of the entry on the symbol definition list. This length is adjusted as a function of the size indicator contained in word l0 of the entry on the display status list 92.
Ilaving now calculated the angle and length of the vector, the logic moves to block 14.11 wherein the X,Y coordinates of the beam following the paint-ing of the vector is calculated and stored. It will be noted that this calcula-tiOII and updating of data is accomplished at this point because the beam may be actively painted or, in the alternative, may be only a case of moving the elec-tron beam between positions without actually illuminating the screen.
The logic then moves to decision block 14.12 wherein that latter ques-tion is, in fact, asked. By testing bit one of word one of the entry, the logic can determine whether the particular vector is to be displayed or not.
If it is, the logic moves to block 14.13 wherein associated color settings are made according to the data contained in bits two through seven of word one of both entries. The exact nature of the actual color adjustment is dependent upon the system and, per se, forms no inventive portion of the present inven-tion. Therefore, no greater detail is given. ~laving set the appropriate color designations, the logic next paints the vector across the display screen at the angle and for the length calculated. This is accomplished by the digital logic outputting a sequence of commands which causes the actual display driver *o have its deflection voltage changed in discrete and equal steps. This approach is well known in the art and results in symbols of uniform intensity being gene-rated regardless of variations in the lengths of the various line segments.
The logic in either case then moves to decision block 14.15 wherein bit eight of wo:rd one is tested to see if this is the last vector of the symbol. If it ~'7¢~3~

is not, the logic moves to block 14.16 wherein the address is bumped by four to the next entry and then returns to block l4.0~ to access the next entry and re-peat the process. If it is the last vector, the logic moves to decision block 14.04 to continue as previously described.
Wherefore, it should be apparent from the foregoing description that the present invention truly provides an environment for dynamic display systems achieving the stated object.

Claims (17)

THE EMBODIMENT OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. In a video game system wherein a computerized game program interfaces with player controls and creates a game display as a result of pre-programmed logic and the dynamic positioning of the controls 9 the improvement comprising:
a) symbol definition means for defining the respective individual possible symbols to be used in the game as a plurality of interconnected display lines of given angle and length with respect to a common coordinate system;
b) display status means for maintaining the current status of the symbols to be actually displayed, said display status means including an indication of the individual possible symbol in said symbol definition means associated with each displayed symbol and its angular and positional offset in the common coordinate system; wherein, c) the pre-established logic of the game interfaces only with the display status means and updates it to effect desired changes in the display; and, additionally comprising, d) display composition logic means connected to the display for accessing said display status means and said symbol definition means and for producing the dynamic display of the game as a function thereof.
2. The improvement to a video game of claim 1 wherein said display composition logic includes logic to accomplish the following steps:
a) start at the top of the display status means;
b) access the next entry on the display status means;
c) test to see if the entry is to be displayed and if it is, proceed to step (f);

d) test to see if the entry is the last entry on the list and if it is, return to step (a);
e) bump to the next entry and return to step (b);
f) initialize the beginning X,Y position of the display beam for the particular symbol from data contained in the entry of the display status means;
g) pick up the address of the entry on the symbol definition means for the associated symbol from the entry on the display status means;
h) access the next entry;
i) calculate the angle of the vector from the combined data on the display status means and the symbol definition means, j) calculate the length of the vector from the combined data on tile display status means and the symbol definition means;
k) calculate and store the X,Y position of the beam following the display of the vector;
1) test to see if the vector is to be displayed and if not, proceed to step (o);
m) set appropriate color designators as necessary;
n) paint the vector on the display according to the pre-calculated angle and length data;
o) test to see if it is the last vector and, if it is, return to step (d); and, p) bump to the next entry and return to step (h)
3. In a video game wherein pre-established game logic calculates date for the subsequent production of a CRT display including a plurality of moving symbols indicating the progress of the game, the improved method of operation comprising the steps of:

a) predefining the respective individual possible symbols to be used in the game in symbol definition means as a plurality of interconnected display lines of given angle and vector with respect to a common coordinate system;
b) providing display status means for maintaining the current status of the symbols to be actually displayed, said display status means including an indication of the individual possible symbol in said symbol definition means associated with each displayed symbol and the angle and positional offset in the common coordinate system;
c) having the pre-established logic of the game interface only with the display status means and update it to indicate desired changes in the display; and, d) having display composition logic means connected to the display access said display status means and said symbol definition means and produce the dynamic display of the game as a function thereof.
4, The improved method of a video game of claim 3 wherein said display composition logic includes the following steps:
a) starting at the top of the display status means;
b) accessing the next entry on the display status means;
c) testing to see if the entry is to be displayed and if it is, proceeding to step (f);
d) testing to see if the entry is the last entry on the list and if it is, returning to step (a);
e) bumping to the next entry and returning to step (b);
f) initializing the beginning X, Y position of the display beam for the particular symbol from data contained in the entry of the display status means;

g) picking up the address of the entry on the symbol definition means for the associated symbol from the entry on the display status means;
h) accessing the next entry;
i) calculating the angle of the vector from the combined data on the display status means and the symbol definition means;
j) calculating the length of the vector from the combined data on the display status means and the symbol definition means;
k) calculating and storing the X,Y position of the beam following the display of the vector;
l) testing to see if the vector is to be displayed and if not, proceeding to step (o);
m) setting appropriate color designators as necessary;
n) painting the vector on the display according to the pre-calculated angle and length data;
o) testing to see if it is the last vector and, if it is, returning to step (d); and, p) bumping to the next entry and returning to step (h).
5, In combination with a vector X-Y scan video display system wherein a pre-established series of individual symbols, each symbol being defined by a plurality of vector traces, are selectively displayed on a display device, as a result of programmed logic, to convey movement, of objects represented by the symbols on a CRT screen, the improvement comprising, means for storing information defining each symbol of a group of symbols to be used in a particular display sequence, the information for each symbol being structured to define the vectors required to display the symbol, the information comprising the length of each vector trace and its angle in degrees with respect to a reference origin; means for storing information regarding the placement of a symbol defined by the information contained in the symbol defining storing means, the placement information comprising the address of the information in the symbol defining storage means for the symbol to be displayed, the distance in an X direction the, to be displayed, symbol is offset from the reference origin, and the distance in a Y direction the, to be displayed, symbol is offset from the reference origin; and logic means connected to the display device for accessing the symbol defining storage means and the symbol placement storing means for producing a dynamic display as a function thereof.
6. The improved vector X-Y scan video display system of Claim 5 wherein the information contained in the symbol defining storing means further comprises information regarding the color of each vector utilized in a symbol.
7. The improved vector X-Y scan video display system of Claim 5 wherein the information contained in the symbol placement storing means further comprises information regarding the color of the to be displayed symbol.
8. The improved vector X-Y scan video display system of Claim 5 wherein the information contained in the symbol placement storing means further comprises information regarding the angle the, to be displayed, symbol is rotated from the reference origin.
9. The improved vector X-Y scan video display system of Claim 5 wherein the information contained in the symbol placement storing means further comprises information regarding the size of the, to be displayed, symbol.
10. The improved vector X-Y scan video display system of Claim 5 wherein said logic means performs a series of steps including the following:
a) starting at the top of the placement information storing means;

b) accessing the next entry on the placement information storing means;
c) testing to see if the entry is to be displayed and if it is, proceeding to step f);
d) testing to see if the entry is the last entry on the list and if it is, returning to step a);
e) bumping to the next entry and returning to step b);
f) initializing the beginning X,Y position of the display beam for the particular symbol from the X,Y offset information contained in the entry of the symbol placement storing means, g) picking up the address of the entry in the symbol defining storing means for the associated symbol from the entry on the symbol placement storing means; and h) accessing the next entry.
ll. The improved vector X-Y scan video display system of Claim 10 wherein the information contained in the symbol placement storing means further comprises information regarding the angle the, to be displayed, symbol is rotated from the reference origin.
12. The improved vector X-Y scan video display system of Claim 11 wherein said logic means further performs the following steps:
i) calculating the angle of the vector from the combined angular information in the symbol defining storing means and symbol placement storing means.
13. The improved vector X-Y scan video display system of Claim 12 wherein the information contained in the symbol placement storing means further comprises information regarding the size of the, to be displayed, symbol.
14. The improved vector X-Y scan video display system of Claim 13 wherein said logic means further performs the following steps:
j) calculating the length of the vector from the combined length information in the symbol defining storing means and the size information in the symbol placement storing means; and k) calculating and storing the X,Y position of the beam following display of the vector.
15. The improved vector X-Y scan video display system of Claim 14 wherein the information contained in the symbol defining storing means further comprises information regarding the color of each vector utilized in a symbol, and wherein the information contained in the symbol placement storing means further comprises information regarding the color of the, to be displayed, symbol.
16. The improved vector X-Y scan video display system of Claim 15 wherein said logic means further performs the following steps:
1) testing to see if the vector is to be displayed and if not, proceeding to step o);
m) setting appropriate color designators as necessary;
n) painting the vector on the display according to the precalculated angle and length data;
o) testing to see if it is the last vector, and if it is, returning to step d); and p) bumping to the next entry and returning to step h).
17. In a video game wherein pre-established game logic calculates data for the subsequent production of a CRT display including a plurality of moving symbols indicating the progress of the game, the improved method of operation comprising the steps of:
a) predefining each of the respective individual possible symbols to be used in the game in symbol definition means as a plurality of straight interconnected display lines at given angles and of given lengths with respect to a common coordinate system;
b) providing display status means for maintaining the current status of the symbols to be actually displayed, said display status means including an indication of the invividual possible symbols in said symbol definition means associated with each displayed symbol, a size multiplier designator, and the angular and positional offsets of the symbol in the common coordinate system;
c) having the pre-established logic of the game interface with the display status means and update it to indicate desired changes in the display; and d) having display composition logic means connected to the display access said display status means and said symbol definition means for producing the dynamic display of the game as a function thereof including performing the steps of:
da) starting at the top of the display status means;
db) accessing the next entry on the display status means;
dc) testing to see if the entry is to be displayed and if it is, proceeding to step (df);
dd) testing to see if the display is the last entry on the list and if it is, returning to step (da);
de) bumping to the next entry and returning to step (db);
df) initializing the beginning X,Y position of the display beam for the particular symbol from the positional offset data contained in the entry of the display status means;

dg) picking up the address of the entry from the symbol definition means for the associated symbol from the entry on the display status means;
dh) accessing the next entry;
di) calculating the angle of the vector from the combined angular data on the display status means and the symbol definition means;
dj) calculating the length of the vector from the combined length data and size multiplier on the display status means and the symbol definition means;
dk) calculating and storing the X,Y position of the beam following the display of the vector;
dl) testing to see if the vector is to be displayed, and if not, proceeding to step (do);
dm) setting appropriate color designators as necessary;
dn) painting the vector on the display according to the precalculated angle and length data;
do) testing to see if it is the last vector and, if it is, returning to step (dd); and dp) bumping to the next entry and returning to step (dh).
CA000410738A 1981-10-26 1982-09-03 Vector scan system for video game display Expired CA1197030A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US31469881A 1981-10-26 1981-10-26
US314,698 1981-10-26

Publications (1)

Publication Number Publication Date
CA1197030A true CA1197030A (en) 1985-11-19

Family

ID=23221051

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000410738A Expired CA1197030A (en) 1981-10-26 1982-09-03 Vector scan system for video game display

Country Status (6)

Country Link
EP (1) EP0091912A1 (en)
JP (1) JPS58501756A (en)
CA (1) CA1197030A (en)
ES (2) ES516789A0 (en)
IT (1) IT1148427B (en)
WO (1) WO1983001391A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572235A (en) * 1992-11-02 1996-11-05 The 3Do Company Method and apparatus for processing image data
US5838389A (en) * 1992-11-02 1998-11-17 The 3Do Company Apparatus and method for updating a CLUT during horizontal blanking
US5596693A (en) * 1992-11-02 1997-01-21 The 3Do Company Method for controlling a spryte rendering processor
US5481275A (en) 1992-11-02 1996-01-02 The 3Do Company Resolution enhancement for video display using multi-line interpolation
US5752073A (en) * 1993-01-06 1998-05-12 Cagent Technologies, Inc. Digital signal processor architecture

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3848246A (en) * 1971-06-14 1974-11-12 Bendix Corp Calligraphic symbol generator using digital circuitry
US3891982A (en) * 1973-05-23 1975-06-24 Adage Inc Computer display terminal
US3996585A (en) * 1974-06-11 1976-12-07 International Business Machines Corporation Video generator circuit for a dynamic digital television display
US4026555A (en) * 1975-03-12 1977-05-31 Alpex Computer Corporation Television display control apparatus
US4053740A (en) * 1975-12-22 1977-10-11 Lawrence David Rosenthal Video game system
US4116444A (en) * 1976-07-16 1978-09-26 Atari, Inc. Method for generating a plurality of moving objects on a video display screen
US4177462A (en) * 1976-12-30 1979-12-04 Umtech, Inc. Computer control of television receiver display
US4169272A (en) * 1978-01-12 1979-09-25 Atari, Inc. Apparatus for simulating a perspective view of a video image and for storing such image with a minimum number of bits

Also Published As

Publication number Publication date
IT1148427B (en) 1986-12-03
WO1983001391A1 (en) 1983-04-28
ES8502617A1 (en) 1984-05-16
JPS58501756A (en) 1983-10-20
ES8400247A1 (en) 1983-10-16
ES523200A0 (en) 1984-05-16
EP0091912A1 (en) 1983-10-26
ES516789A0 (en) 1983-10-16
IT8249350A0 (en) 1982-10-25

Similar Documents

Publication Publication Date Title
US4116444A (en) Method for generating a plurality of moving objects on a video display screen
CA1082351A (en) Television display control apparatus
US4053740A (en) Video game system
US4766541A (en) Apparatus for generating interactive video game playfield environments
US4324401A (en) Method and system for generating moving objects on a video display screen
US4600200A (en) Three-dimensional image display system
US4905168A (en) Object processing for video system using slips and linked list
US4517654A (en) Video processing architecture
EP0107981A2 (en) A graphic image symbol storage system for interactive video displays
US4905147A (en) Collision detection system for video system
EP0013813B1 (en) Programmable graphics generator and data processing system using such generator
US4177462A (en) Computer control of television receiver display
US4890833A (en) Apparatus for generating enhanced interactive video game playfield environments
US5315692A (en) Multiple object pipeline display system
US4193598A (en) Video game system
CA1197030A (en) Vector scan system for video game display
US4471464A (en) Data processing system with programmable graphics generator
US5080377A (en) Video display system
US4181971A (en) Apparatus for presenting a sequence of fixed pictures
EP0014045B1 (en) Apparatus for controlling a display
GB1589647A (en) Team player video game
EP1568401B1 (en) Game machine, game control method, and program
US4759716A (en) Rotating color mapped radar sweep simulator
Perry et al. Microprocessors: Design case history: The Atari Video Computer System: By omitting lots of hardware, designers added flexibility and gave video-game programmers room to be creative
Montfort et al. Random and raster: display technologies and the development of videogames

Legal Events

Date Code Title Description
MKEX Expiry