Language selection

Search

Patent 1232685 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 1232685
(21) Application Number: 473907
(54) English Title: VIDEO GAME WITH CONTROL OF MOVEMENT AND RATE OF MOVEMENT OF A PLURALITY OF GAME OBJECTS
(54) French Title: JEU VIDEO AVEC CONTROLE DES MOUVEMENTS ET DES VITESSES DE DEPLACEMENT DE PLUSIEURS OBJETS
Status: Expired
Bibliographic Data
(52) Canadian Patent Classification (CPC):
  • 354/43
(51) International Patent Classification (IPC):
  • A63F 13/20 (2014.01)
  • A63F 13/40 (2014.01)
  • A63F 13/55 (2014.01)
(72) Inventors :
  • BROMLEY, ERIC (United States of America)
  • SCHENCK, ROBERT A. (United States of America)
(73) Owners :
  • COLECO INDUSTRIES, INC. (Not Available)
(71) Applicants :
(74) Agent: MARKS & CLERK
(74) Associate agent:
(45) Issued: 1988-02-09
(22) Filed Date: 1985-02-08
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
579,709 United States of America 1984-02-13

Abstracts

English Abstract



ABSTRACT
A video game having means for player selection of movement
of a plurality of game objects, and for controlling the rate
of movement of the selected game objects.


Claims

Note: Claims are shown in the official language in which they were submitted.



THE CLAIMS



The embodiments of the invention, in which an exclusive
property or privilege is claimed are as follows:



1. A method of operating a video game to control movement
of a plurality of game objects on a video display where
digital representations of the display positions of said
plurality of game objects are stored in addressable locations
in a memory and read from said memory locations for display in
accordance with the beam location on the video display,
comprising the steps of
providing a player controller having means for selecting a
plurality of game objects for movement,
establishing a position register for each of said
plurality of game objects where said position registers store
the display position of said movable game objects,
generating click pulses,
providing means for player selection of direction of
movement of said game objects,
periodically updating the position registers of said game
objects as a function of said means for game object selection,
said means for selection of direction and said clock pulses,
and
periodically changing the position data of said game
objects in said memory in accordance with the display position
in said position registers.

2. The method of claim 1 further including the steps of
providing a player controlled means of generating rate pulses

-22-


for controlling the rate of movement of said game objects on
the display, and additionally changing the position denoted in
said position registers as a function of said rate pulses.

3. The method of claim 1 wherein said position registers
define the game object positions in coordinates, and the
coordinates of each position register are periodically
updated, as a function of said means for selecting game
objects and said means for player selection.

4. The method of claim 1 wherein said means for selecting
comprises a plurality of means for selecting movement of said
plurality of game objects and one of said plurality of means
selects all game objects for movement.

5. The method of claim 1 wherein said means for selecting
comprises a plurality of selection switches and comprising the
further steps of providing an object selection register for
each object to be independently moved, providing a direction
register for each object to be independently moved which is
responsive to an object selection register and said player
selection of direction of movement means.

6. A method of operating a video game to control movement
of a plurality of game objects on a video display where
digital representations of the display positions of said
plurality of game objects are stored in addressable locations
in a memory and read from said memory locations for display in
accordance with the beam location on the video display,
comprising the steps of



-23-


providing a plurality of player operated game object
selection means for selecting any of a plurality of game
objects for movement,
providing player operated direction selection means for
selecting a direction of movement for the selected objects,
generating rate pulses having a repetition rate
proportional to the desired velocity of the selected game
objects,
providing a plurality of game object position registers
corresponding to the selectable game objects, said object
position registers including digital representations of the
coordinate positions on the video display where selected game
objects are to be displayed.
generating a train of clock pulses,
periodically changing the digital representations of the
positions of the selected game objects in said position
registers as a function of said clock pulses and said
direction selection means, or as a function of said rate
pulses, and
periodically changing the digital position data of siad
game objects in said memory in accordance with the digital
representations of the selected game objects in said position
registers.



7. The method of claim 6 where the digital
representations of the positions of the selected game objects
in said position registers are changed as a function of only
one of said rate pulses and said clock pulses and said
direction selection means.

-24-



8. The method of claim 6 wherein said means for selecting
comprises a plurality of means for selecting movement of said
plurality of game objects and one of said plurality of means
selects all game objects for movement.



9. A method of operating a video game to control movement
of a plurality of game objects on a video display where
digital representations of the display positions of said
plurality of game objects are stored in addressable locations
in a memory and read from said memory locations for display in
accordance with the beam location on the video display,
comprising the steps of
providing a plurality of game object selection means,
providing a game object direction register for each
selectable game object,
providing direction of movement selection means,
applying signals indicative of the game objects selected
for movement by said object selection means and signals
indicative of the direction of movement selected by said
direction of movement selection means to said game object
direction registers to establish the direction of movement of
each selected game object,
providing a source of clock pulses, providing a position
register for each of said plurality of game objects, said
position registers each containing a numerical representation
of the position of one of said game objects for display,
periodically updating the numerical position in each
position register as a function of said clock pulses and the
information in said object direction registers, and
-25-

periodically changing the position data of said game
objects in said memory in accordance with the numerical
representation in said position registers.



10. The method of claim 9 further including providing a
player operated means for generating pulses proportional to a
desired rate of movement of selected game objects on said
display, periodically establishing a number proportional to
the rate of said rate signals, and periodically updating the
numerical representation of object position in said position
registers corresponding to game objects selected for movement
as a function of said established number, and direction of
movement selected by said direction of motion selection means.



11. The method of claim 9 further including the steps of
providing a player controlled means of generating rate pulses
for controlling the rate of movement of said game objects on
the display, and additionally changing the position denoted in
said position registers as a function of said rate pulses.



12. The method of claim 9 wherein said position registers
define the game object positions in coordinates, and the
coordinates of each position register are periodically
updated, as a function of said means for selecting game
objects and said means for player selection.




13. The method of claim 9 wherein said means for
selecting comprises a plurality of means for selecting
movement of said plurality of game objects and one of said
plurality of means selects all game objects for movement.
-26-


14. In a video game which comprises a memory adapted to
store at addressable locations numerical positional data of
locations of a plurality of game objects on a video display
which are movable under player control, and the game objects
are read out for display in accordance with the beam location
on the video display, a player operated directional control
for selecting direction of movement of a game object, the
improvement comprising,
player operated means for selecting one or more game
objects for movement, a plurality of game object direction
registers, said direction registers being responsive to said
direction control and said means for selecting game objects to
establish an indication of each game object selected for
movement and the direction of movement thereof,
a plurality of game object position registers each adapted
to store a numerical indication of the position of a game
object,
a source of clock pulses, and means responsive to the
indications in said direction registers and said clock pulses
for periodically updating the game object numerical
indications of selected game objects in said position
registers, said numericals representations of the display
positions of said plurality of objects in said memory being
periodically updated in accordance with the numerical
indications in corresponding position registers to produce
movement of said selected game objects on said display on
successive display frames.

15. The video game of claim 14 further including player
operated means for providing pulses at a rate corresponding to


-27-


a desired rate of movement of a game object on the video
display, means responsive to said rate pulses for establishing
a numerical representation of the rate of said pulses, and
means responsive to said numerical representation and said
direction selection means for periodically updating the
numerical indications of the position of selected game objects
in said position registers.



16. The video game of claim 14 wherein said player
operated direction selection means comprises a joystick
tiltable to close contacts indicative of direction, a housing
member, said joystick and said contacts being mounted in said
housing, said housing including a pistol grip type handle,
said player operated game object selection means comprising a
plurality of switches and actuating buttons therefor mounted
in said handle, said player operated means for providing
pulses comprising a member rotatably mounted in said housing
from producing switch closures at a rate proportional to
rotation thereof.
-28-

Description

Note: Descriptions are shown in the official language in which they were submitted.


~ ~2~

This invention relates to video games and more
particularly relates to providing player control of movement
of two or more game objects and/or selection of the rate of
movement of an object on the display screen.
Video games basically comprise a microprocessor utilized
as a central processing unit (CPU), a video display control, a
memory adapted to store a game program and a video memory for
storing picture elements o~ a video display. The picture
elements of a display are addressed and fetched from memory in
accordance with the cathode ray tube (CRT) beam location.
In some cases, the system utilizes a full screen memory,
that is, a discrete memory address is provided for every
discrete display location of the display, either pixel
position or line segment position. Such a system is disclosed
in U. S. Patent 4,301,503. In another type of system, a
pointer indicative of a display location addresses and reads a
p1cture element from a pattern library. Such a system is
disclosed in U. S. Patent 4,~43,984. A video display
processor (VDP), which together with a dynamic video random
access memory (RAM) operates in this manner; is marketed by
Texas Instruments Corporation as a 9928A video display
processor.
A video game display may comprise descrete pixel positions
or example of 256 positions per line and 192 lines. Thus any
okject may be positioned on the screen by reference to a line
and column location.
To create object movement on the display, in systems
using a full screen memory, the addresses of the picture
elements are changed periodically, usually during the time of
vertical retrace of the display. To create object movement in


~3~6~5

systems of the second typel the object location in the pointer
is changed to a new display location, and the pointer
addresses the object in a pattern library at the appropriate
beam location.
In either case, the address o the object in the video RAM
is changed by the CPU as it receives game player input as to
movement of the object. Usually, a game player utilizes a
joystick type instrument to control the direction of movement
of an object. Such joystick may close switches indicative of
coordinate directions of movement. Periodlcally, the CPU is
responsive to the closure condition of the joystick switches.
On this particular basis, or some factor thereof, the CPU will
rewrite the address of the object in the video RAM. As the
address of the object is periodically changed, the object
appears to move on the video display in succeeding displays.
In these systems, movement of the object on the screen is
at a rate determined by the game program. The ob~ect will
move a predetermined number of pixels per display frame.
There is no known system where rate of movement of an object
may be variably selected or determined by a game player except
as disclosed in U.S. Letters Patent 4,462,594. In some video
games, such as disclosed in U.S. Patent 4,114,882, velocity of
a movi~g object is increased as the game continues, at the
optio~! of the players, to increase the skill ]evel required.
However, the player has no directed control of the velocity of
movement of an object.
Also, a video driving game known as TURBO allows some
velocity control by positioning an automobile in the
horizontal coordinate one pixel per pulse where pulses are


~LZ3;~ 8~

generated in accordance with positional movement o a steeriny
wheel, and the steering wheel may be turned at a variable
rate~ However, this differs from one aspect of the present
invention, where a binary number is generated by counting
pulses as a function of a periodic signa:L, and utilized to
control the rate of movement of a video object.
The present invention provides a new dimension in video
games in providing a game player with control of movement of
two or more game objects together with velocity and
directional control over objects to be moved on the video
screen.
~ he invention is embodied in a video game comprising a
microprocessor which is the central processing unit (CPU) of
the system, a video display processor ~VDP) having a random
access memory which stores video display picture elements in
addresses initially derived from a game program stored in a
cartridge read only memory (ROM), a system ROM which stores
sub-routines and game player controllers which provide inputs
to the CPU. In accordance with the invention, the game
controllerts) includes a first means to permit a game player
to select two or more game objects for movement, and second
means, preferably in the form of a rotatable member(s), which
is manipulated b~ a game player(s) to provide a pulse rate
signal indicative of the speed of rotation of the member and
also the direction of rotation. The rate signal is converted
to a numerical value as a function of time, and the direction
of rotation is determined. Dependent upon the program or game
rules of a particular video game, the numerical value may be
used to control the velocity of a moving game object, the
angular orientation, or other parameters.


~3~2~i8~
Generally, the nunlerical value representing the pulse rate
is determined as a function of a periodic signal which may be
a video refresh, VR, signal occurring at or after each
vertical retrace. The numerical value may be established as a
number per VR signals, or alternatively, the numerical value
may be established as the number of VR signals per pulse
signal.
The first means includes a player controller to select
movement of two or more game objects depending on the type of
game, and the second means allows the game player to also
control the rate of movement of one or more of the selected
game objects. This increases the interest in certain types of
games, for example football or baseball, as hereinafter
discussed.
An object of this invention is to provide a new and
improved system in a video game for controlling the movement
of two or more game objects~
Another object of this invention is to provide a new and
improved method and apparatus for a player of a video game to
have variable velocity control over one or more game objects.
A further object of this invention is to provide a new
and improved apparatus and method for allowing the player of a
video game to control velocity of a plurality of video display
objects in addition to direction control.
The features of the invention which are believed to be
novel are particularly pointed out and distinctly claimed in
the concluding portion of this specification. The invention,
however, together with further objects and advantages thereof,
may best be appreciated by reference to the following detailed
description taken in conjunction with the drawin~s.


~L23~85i

Figure 1 is a block diagram of a video game which embodies
the invention;
Figure 2 is a block diagram of an attribute table entry in
the video RAM oE Figure 1 showing four bytes of me~ory;
Figure 3 is a top plan view of a video game controller
useful in the practice of the invention;
Figure 4 is a side elevation o.f the device of Figure 3;
Figure 5 is a diagram of a rotatable member which may be
utilized in the invention to generate rate pulses;
Figure 6 is a view of the desired wave forms developed
when the member of Figure 5 i5 rotated;
Figure 7 is a schematic diagram of a circuit which will
determine the rate of rotation of the member of Figure 6 and
the direction of rotation thereof;
Figure 8 is a diagram of the switch contacts of the
joystick of Figure 4;
Figure 9 is a diagram, partly schematic and partly in
block form, of a network used in conjunction with the device
of Figure 3 and which es~ablishes a number representative of
velocity;
Figure 10 is a block diagram of another circuit for
determining rate and direction;
Figure 11 is a diagram of a modiication of a portion of
the ne,twork of Figure 9; and
Figure 12 is a block diagram of a modification of a
portion of Figure 9.
Figure 1 exemplifies in block form a system 10 for
creating video displays in which the invention may be
embodied. The system comprises a central processing unit
(CPU) 11, which may be a Z-80a microprocessor made by Zilog,
Irsc. o Cupes~tino, California; a system

--6--


~23~6~35

random access memory (RAM) 12; a system read only memory ~ROM)
13; and an input device which may be a cartridge read only
memory (ROM) 14. The CPU 11 accesses all commands and game
programs and supplies data over a data bus 15 to a video
display processor 16 (VDP). VDP 16 has associated therewith a
RAM 17 which is addressable by the CPU only through VDP 16.
The system also comprises a sound generator 18, which provides
an input to a modulator 19. The modulator 19 receives a scan
signal from video proce~sor 16. The modulator applies a
composite video signal to a video display 20, which is a
cathode ray tube display, usually a home television set.
player operated controller 21 supplies information to CPU 11,
indicative of directional motion of an object to be displayed,
and/or alpha-numeric keyboard information. The controller
includes a direction control in the form of a joystick; as
suitable structures are exempiified by those shown in U.S.
Letters Patent 4439,648, and U.S. Letters Patent 4,486,629.
The controller includes a rate pulse generating circuit 22,
which generates a pulse signal indicative of a player selected
rate. This signal may be utilized independently or in
conjunction with the player operated direction control. the
CPU 11 will periodically update video RAM 17 when permitted to
do so by the video processor 16.
Ca~tridge ROM 14 defines specific video images for a
part~cular game, and the game rules. System ROM 13 contains
video processing sub-routines and controller input


`` ~.2~3~68~

sub-routines~ The system RAM 12 contains temporary
information peculiar to the particular games, such as scores,
position variables, location of players, etc. CPU 11
periodically updates the lmage or elementc; of images in video
RAM to be displayed in accordance with data Erom the
controller and game program. The VDP 16 periodically permits
the CPU to read from and write to the video RAM 17 upon
occurrence of read (CSR) and write (CSW) signals. The CPU 11
addresses RAM 12, and ROM's 13 and 14, via an address bus 23.
CPU 11 reads from ~AM 12, ROM s 13 and 14, and writes to RAM
12 via data bus 15.
At the end of every video frame display, video processor
19 provides a video refresh signal VR to CPU 11. This occurs
about every one-sixtieth of a secona. This may be utilized as
a clock signal in the present invention. Circuit 22 generates
a rate signal as selected by ~he game player and supplies such
rate signal to an interrupt terminal (INT) of CPU 11. When
this occurs, CPU 11 will determine the rate, and establish a
numerical representation thereof, and determine direction.
Information is now stored which comprises a binary number
indicative of rate as a function of the VR signal and
direction of movement of a game object of member 20. This
information or any part thereof may then be utilized to update
the video display in accordance with the game program.
~ he joystick of controller 21 is adapted to close one or
two of four switches which are ninety degrees apart to define
eight directions of movement. Responsive to switch closure,
the CPU 11 changes the addresses of one or more picture
element patterns in video RAM a predetermined number of pixel
positions per frame of display in accordance with the game


~Z3~

program, or at a different rate in accordance with a velocity
selected by a game player.
The video display processor is preferably a Texas
Instruments Incorporated 9928A Video Display Processor, which
~is described in U.S. Patents 4,243,984 and 4,262,302, and a
publication of Texas Instruments Incorporated, entitled
"Preliminary TMS 9928A, TMS 9929A Video Display Processors,
Product Brief". In this system, movable objects are termed
"Sprites" and are identified as shown in Figure 2 in a sprite
attribute entry in a sprite attribute table 24 in video RAM
20. The sprites are defined within a sprite pattern of eight
bytes of eight pixels each, and are located on the screen in
accordance with the horizontal and vertical coordinates of
their sprite attribute table entry. Each sprite has an
attribute table entry which gives vertical coordinate
position, horizontal coordinate position, sprite name or
number, and spite color pattern. The sprite name or number is
a pointer to a sprite pattern in a sprite pattern generator
table or library in video RAM 20. A similar sprite, attribute
entry (less color) is maintained in an object coordinate
register CPU 11 or RAM 12, as hereinafter described. When the
display beam location coincides with, or approaches vertical
and horizontal attributes of a sprite, the name pointer is
used to' address the par~icular sprite in the sprite library
for display. As shown, there are thirty-two sprites ln the
sprite attribute table. In accordance with the present
invention, up to four sprites or objects which are a composite
of two or more sprites may be moved by a game player.




_9_

~23~26~

Figures 3 and 4 exemplify a player hand held controller 21
utilized in con~unction with the invention. Controller 21 is
disclosed and claimed in copending appl:ication for Canadian
Letters Patent Serial No. 473,909 filed ~ebruary 8, 1985~
Controller 21 comprises an upper housing 25 from which
extends a pistol grip handle 26. Player operated means for
selecting one or more game objects for movement in the form of
four switch actuating buttons 27-30 extend from the finger
side of handle 26. Each of switches 27a-30a, hereinafter
descrlbed may be actuated by buttons 27-30 respectively, to
produce movement of up to four sprites or game objects by one
game player. Mounted in housing 25 is a joystick type
direction controller 31 which determines direction of movement
of the sprites. Joystick 31 and associated contacts comprise
means for selecting direction of movement of game objects.
Rotatably mounted in housing 25 is a spinner 32 which permits
a game player to vary the rate of movement o a sprite or
other game marker, such as a ball. Both joystick 31 and
spinner 32 are supported in housing 25 and extend through an
upper wall 33 thereof. A plurality of switch actuating
buttons 34, which may be labeled the same as the keyboard of a
touch tone telephone, also extend through top wall 33.
Buttons 34 may be utilized to select a function such as game
start " skill level, repeat game, etc. A mask or overlay may
~be placed over buttons 34 for a partlcular game.
A front reinforcing member 35 which also provides an
aesthetic appearance extends from the front of housing 25 to
the bottom of handle 25.
A preferred player controlled pulse generating arrangement


--10--

j J~

~3~3S
is described in Figures 5-7. Spinner 32 includes a
non-magnetic member 36 rotatable about an axis 37 in housing
23. Member 36 carries small cylindrical magnets 38 and 39
therein on either side of axis 37. Reed switches 40 and 41
ar~ disposed parallel to àxis 37, on eithler side thereof as
seen in plan view. The switches 37 and 38 are closed when
under the influence of the field of either of the magnets.
Figure 6 exemplifies the wave form developed by the
closing of the switches 40 and 41 when the member 36 is
rotated in one direction. One terminal of each of switches 40
and 41 will be grounded when the switches are closed on
contacts 40a or 41a. Thus, when switch 40 is closed, A will
go to a low level, as will be the case upon the closing of
switch 41 to develop the trailing (as shown) signal B. The
logic of the system is to determine the rate of rotation of
member 36 from one of wave forms A or B, and to determine the
direction of rotation by sensing which wave form is leading
the other. Spinner 32 with member 36 comprises a means for
providing pulses at a rate corresponding to a desired rate of
movement of a game object.
Reference is now made to the rate circuit ~2 of Figure 7.
When switch 40 closes, a wave form C is developed, which may
have ragged leading and trailing edyes due to switch bounce.
Signal C is applied to an RC circuit comprising resistance 42
and capacitance 43 to remove the bounce indication and provide
a signal D. Signal D is applied to a NAND qate 44 which also
receives as an input a signal from the collector 45 of a
transistor 46. Transistor 46 is normally conducting and
therefore Eurnishes a low input to NAND gate 44. When the
signal D is applied to NAND gate 44, there will be an output E


~3~
from NAND gate 44 which is fed back through an RC circuit
comprising resistance 47 and capacitance 48 to turn NAND gate
44 ofE after a short time delay, which determines the width of
wave form E. Wave form E is applied to a diferentiating
circuit comprising capacitance 50 and resistance 51 to provide
the wave form F, which is then inverted to pulses G by an
inverter 52. The repetition rate of the pulse wave form G is
indicative of the speed of rotation of member 36 and thus
provides a speed or velocity rate signal.
To determine the direction of rotation, pulse G is applied
to a NA~D gate 54 together with a signal, or absence of
signal, from switch 36. A signal from switch 36 is applied to
a pulse stretching circuit 55 comprising resistance 56 and
capacitance 57. If, upon occurrence of the first G pulse~ the
output of circuit 55 is low, gate 54 will go high. This will
indicate that the B wave form of inverter 52 is low and
therefore, wave form B leads wave form A~ In the example set
forth, this would indicate that member 36 was rotating counter
clockwise. If switch 69 is not closed, the output of NAND
gate 54 will be low, indicating that wave form A leads wave
form R. The output oE circuit 55 is also applied to NAND gate
54, together with the wave form G. If there is a coincidence
of a low output from circuit 95 and wave form G, there will be
an output from NAND gate 94 indicative of the fact that wave
form A leads wave form B and therefore, rotation of the member
36 is clockwise. This signal from gate 54 is stored in a
direction memory 58. The binary state of the memory will
indicate the direction of rotation of member 36.
The pulses of the G wave form are applied to a counter 59
to determine the number of pulses per unit time as herebefore




~2--

268~

explained The counter 59 will transfer the number therein to
a veloci~y register 60 upon occurrence of a clock signal R.
The counter 59 will then be reset.
If either of switches 40 and 41 is being closed, a train
of pulses INT will appear at the output of circuit 22. At the
same time, a determination is made as to the direction of
rotation of member 36 and such condition is sensed by
direction memory 58 which is placed in one state by the output
of gate 54.
Figure 8 schematically exemplifies the switches of
joystick 31. A flange member 62 on the bottom of joystick 31
has feet 63-70 overlying switch sontacts N, S, E and W
representing four cardinal directions and intermediate
contacts N'E', N'W', S'E'~ and S~W'. As joystick 31 is
tilted, one of feet 63-70 will complete an electrical circuit
through one of the cardinal contacts or a pair of intermediate
contacts to signify one of right angular directions. The
joystick is constrained to eight degrees of tilt as disclosed
in the aforementioned Uni~ed Sta~es Letters Patent 4,486,629.
A direction decoder 72 decodes the switch contact closures to
determine the selected direction.
The INT signal from rate circuit 22 is applied to AND
gates 73 and 74 (Figure 9). These gates are enabled by a
signal~ from direction memory 58 to either increment or
decrement a bi directional counter 75. Periodically, counter
75 has its content loaded into a velocity register 76 via
gates 77 by means of a VR signal, and counter 75 is reset by.


~23~

Upon occurrence of the YR signal, the content of the
velocity register 77 is loaded into up to four adders 78a-78d
gates 79 and algebraically summed with the vertical or
horizontal attributes (deperldent upon game program) of the
position o objects stored in object position registers
80a-80d via buses 81-84 and gates 85. A scaler 86 is
optional. The results of this algebraic addition are reloaded
into one or more sprite attribute registers 24 in VDP 16. The
new coordinate attributes define a new display location of the
sprite or game object as a function of the velocity oE spinner
32. The scaling network 86 may be provided to multiply or
divide the count in velocity register 63 prior to adder 65,
dependent on the game program.
In this manner the vertical or horiæiontal attributes of
a sprite or game object under player control may be varied as
a function of player controlled or selected velocity.
The controller handle buttons 27-30 actuate switches
27a-27d to select one or more game objects ~A-D) for movement.
When these switches are closed an indication of object
selection is placed in respective object select registers
89a-89d.
Each VR signal, gates 90a-90a are opened to pass an
indication of an object movement selection from registers
89a-89d to an associated object direction register 91a-9ld.
Object direction registers also received directional
information from direction decoder 72. Such information
signifies the direction of each object selected by switches
27a-27d. The movement of each object selected for movement
may be one pixel per VR signal, or some other number oE pixels
per VR signal dependent on the game program. Assuming one




-14-

~23~

pixel per VR signal, each of object direction registers may
contain an indication o plus or minus one pixel in the
horizontal and/or vertical directions. Each VR signal these
indications are transferred through yates 92 to adders 78a-78d
to be algebraically added to the coordinates in object
position registers 80aA-80d.
The output of gates 90a-90d are applied via lines 93a-93d
to object position registers 80a-80d to enable or to inhibit
change o~ the position coordinates stored therein dependent on
player movement selection by switches 27a-27d.
Upon a CPU write to VDP cycle ~CSW) the contents of
position reyister 80a-80d are transferred to corresponding
sprite attribute entries ~Figure 2) in the sprite attribute
table in video RAM 20 through VDP 16 via bus 15.
The circuitry illustraked in Figure 9, other than the
switches and pulse shapers, may be established in the CPU by
the game program in the illustrated form or any other form
which performs the desired logic. The position registers
80a 80d as well as the other reglsters may be in the system
RAM 12.
In the manner described, the vertical and/or horizontal
address of a sprite is changed in the video RAM a number of
pixels each VR occurrence dependent upon the rate at which the
player rotates member 36. The observed veloci~y o the object
will be dependent upon the number of pixel address changes
each display frame.
If an INT signal is occurring but at a rate less than VR,
the VR signal may be applied as input to counter 75 and the
INT signal used as a reset and gating signal. Dependent upon
the game program, khis arrangement may be used to change the




--15--

6$~

angular position of a game object, or to slow down a move~ent
of an object from a game programmed rate. An arrangement for
detecting the VR signal as a Eunction of the INT signal is
hereinafter described.
Reference is now made to Figure 10, which discloses
another technique of determining a velocity number and
direction from the INT signal from rate circuit 22. To
determine the rate of rotation of member 36, INT pulses are
compared with a reference clock signal, which may be the VR
signal. The VR signal is applied as a clock signal C to a
first counter 100, and as a reset signal R to a second counter

101 .
In operation, the VR signal will clock counter 100 until
the occurrence of an INT signal. ~he INT signal transfers the
content of counter 100 through gates to a storage register
103. After the parallel transfer, the I~T signal resets
counter 100.
The INT signal will clock counter 101 until a VR signal
occurs/ which transfers ~he content of counter 101 through
gates 104 to a storage register 105. The contents of eitber
register 103 or 105 may then be transferred to a data
register. This is determined by a sample circuit 106. Sample
circuit 106 samples the contents of on~ of the registers 103
or 105 (both shown as being sampled). Assume register lO5 is
sampled by circuit 106, and iE it is zero, will apply a load
signal to gates 107 to load the contents of register 103 into
velocity register 77 (same as Figure 9). If the content of
register 105 is not zero, then such content is loaded through
gates 109 into velocity register 77.




-16-

~23~26~3~

Where the repetition rate of the INT pulses is less than
that of VR, the number appeaxing in velocity will be inversely
proportional to the speed oE rotation of the rotatable member.
Where the repetition rate of the INT pulses is grea~er than
that of VR, the number appearing in velocity regis~er 77 will
be directly propor~ional to the speed of rotation. Sample
circuit 106 may sample one of registers 103 or 105 at a rate
less than that of the VR signal. Such sampling signals S may
be derived from any convenient timing signal in the system.
As shown, the sample signal S is derived by division of the
frequency of the VR signal by a counter 110. A memory 111 in
the orm of a flip-flop may store an indication of which of
registers 103 or 105 contained a rate signal. The circuit of
E'igure lO may be formed in the central processing unit of the
video game by the game program or may be external thereto.
The game program may determine which function VR/INT or INT/VR
will be used.
The number stored in velocity register 77 will be updated
periodically and acted upon by the central processing unit of
the video game to update the video display dependent upon the
game program.
The number in register 77 may be utilized as previously
described to be algebraically added to an object position
attribute in adder 78a. In this embodiment, the sign of the
addition is determined from direction memory 47.
For simplicity of illustration only one adder 78a and one
object position register 80a are shown in Figure lO. It is to
be understood that the system of Figure 10 inc~udes adders
78b-78d, object position regi~ters 80b-80d, and all the
circuitry of Figure 9 providing directional data inputs to




-17-

1.23ZG8~

gates 92. As shown above, the invention may be implemented
using various devices operable by a game player. It is only
necessary to pLovide a device which the p:Layer may manipulate
to generate rate pulses. A chosen direction may be determined
from the rate control device or from the direction controller.
The logic may be implemented in various manners, as well as
those specifically disclosed.
A system as shown in Figures 9 or 10 will be duplicated
for two players in a video game.
For purposes of disclosure, the system has been described
as using the video refresh signal VR as a clock signal.
However, any source of clock signals may be utilized.
Each o object select registers 89a-89d may comprise a
flip-flop or other storage circuit which is in a given state
responsive to one of switches 27a-27d~
Each of the object direction registers may comprise four
flip-flopsl each responsive to coincidence of an input from
one of gates 90a-9Od and a direction signal from direction
decoder 72. The set conditions of ~he flip-flop(s) of each of
registers 91a-9ld will indicate selected direction(s) of
movement. The set flip-flop(s) will be reset if a selected
object selection switch 27a-27d is released or if joystick 31
is tilted in another direction.
The adders 78a-78d actually may comprise two
bi-directional adders, one for each coordinate direction. The
maximim rate of movement which can be achieved is determined
by the numerical capacity of velocity register 77. 'rhis will
determine the maximum change in pixel position oE a game
object per display frame.




-18-

23~

The adders 78a-78d may be arranged to accept an input from
velocity register 77 only if the player controlled velocity of
objec~ movement is greater than that prescibed by the game
program. Alternatively, a comparator 115 (Figure 12) may
receive the outputs oE the object direction registers 91a-9ld
through gates 92 and the output of velocity register 77 and
apply only the higher number to adders 78a-78d. Also,
comparator 115 may be programmed to select the lower number.
The switches 27a-27c may be arranged to move three
individual objects, while switch 27d is arranged to move all
four objects. This may easily be accomplished by insertion of
diodes 112, 113, 114 as shown in Figure 11, and may be set by
the game program.
Once a game object(s) has been selected and joystick 31
tilted to choose a direction of movement, the direction of
movement is stored in the selected object direction register
90a~90d until the object select switches 27a-27d have been
released or a new direction is selected by joystick 31.
The modes of operation of the system may be exemplified in
conjunction with a football game where the moving objects are
four backfield players and a football on a football field.
Directional movement of the players is controlled by the
joystick. ~irectional movement of the ball is controlled by
the game program as selected by the keyboard function switches
34. The keyboard is also used to select game options, skill
levelr play patterns, play execution and hiking count.
If the game player depresses and holds player select
switch 27a and tilts the joystick 31, the quarterbaclc moves in
the selected ~irection. If switch 27b is depressed and held
and joystick 31 is tilted, the left halfbaclc moves in the




~19-

~L2326~5

selected direction~ If switch 27c is depressed and held and
joystick 31 tilted, the right halfback moves in the indicated
direction. If switch 27d is depressed (using the circuit of
Figure 11) and joystick 31 is tilted, al] players move in the
indicated direction.
If switches 27a and/or 27b and/or 28b are depressed and
held and joystick 31 tilted, the quarterback and/or left
halfback, and/or right halEback move in direction indicated.
The foregoing movements will be at a rate determined by the
game program, and skill level, if applicable~
If a player select switch is depressed and held, joystick
31 tilted and released, and spinner 32 rotated at a sufficient
rate and released, the game object will accelerate in the
direction selected, and then decelerate to the game program
speed. If the spinner is rotated continuously at a high rate,
the game object will accelerate to a maximum rate of movement
and maintain such maximum rate until the spinner is stopped.
Once one or more game objects have been selected for
movement and the direction of movement chosen, the selected
game objects will continue movement in the chosen direction,
even though joystick 31 is released, until the object
selection switches are released or another direction is
chosen.
In a video baseball game, the game player is able to
control runners on three different base runners as well as the
batter when at bat. When the game player~s team is in the
field, the selection switches 27a-27d may be utilized to
select different types of pitches, for example, straight
pitch, inside curve, curve down and outside, or change-up.
After the type of pitch has been selected, joystick 31 may be




-20-

3;2~

manipulated to make the pitched ball go inside, outside, or
tend to drop. The game object selection switches 27a-27d may
be closed to select movement of the first baseman (27a),
second baseman (27b), shortstop (27b and 27c), third baseman
(27c), and catcher ( 7d). In this application, another object
position register would be utilized ~ogether with associated
circuitry.
Using the number of object selection switches 27a-27d
disclosed, the game player representing the batting team may
select action by the batter, or a runner on each of the -three
bases.
The video game system disclosed provides the game players
with wide versatility in controlling game objects resulting in
much more interesting games.
It may thus be seen that the objects of the invention set
forth as well as those made apparent ~rom the foregoing
description are efEiciently attained. Modifictions to the
disclosed embodiments of the invention,-as well as other
embodiments thereof, may occur to those skilled in the art.
Accordingly, the appended claims are intended to cover all
embodiments of the invention and modifications to the
disclosed embodiments do not depart from the spirit and scope
of the invention.




--21-

Representative Drawing

Sorry, the representative drawing for patent document number 1232685 was not found.

Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 1988-02-09
(22) Filed 1985-02-08
(45) Issued 1988-02-09
Expired 2005-02-09

Abandonment History

There is no abandonment history.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $0.00 1985-02-08
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
COLECO INDUSTRIES, INC.
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Drawings 1993-09-28 6 158
Claims 1993-09-28 7 267
Abstract 1993-09-28 1 7
Cover Page 1993-09-28 1 19
Description 1993-09-28 20 890