CA1114054A - Tv game apparatus - Google PatentsTv game apparatus
- Publication number
- CA1114054A CA1114054A CA 266558 CA266558A CA1114054A CA 1114054 A CA1114054 A CA 1114054A CA 266558 CA266558 CA 266558 CA 266558 A CA266558 A CA 266558A CA 1114054 A CA1114054 A CA 1114054A
- Grant status
- Patent type
- Prior art keywords
- random access
- access memory
- 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.)
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
- A63F13/245—Constructional details thereof, e.g. game controllers with detachable joystick handles specially adapted to a particular type of game, e.g. steering wheels
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/98—Accessories, i.e. detachable arrangements optional for the use of the video game device, e.g. grip supports of game controllers
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/203—Image generating hardware
Abstract of the Disclosure A TV-type game employs a raster screen television for presenting of game symbols. Player operated control switches are encoded to move the symbols. A microprocessor reads the switches. A dually addressed random access memory is employed as the interfacing between the screen and the processor which otherwise function as essentially separate and distinct devices. The memory provides a static storage of the screen pattern for each point in the raster lines with a portion assigned as a processor scratch pad. The memory may be dynamic with periodic refreshing and constructed with individual chips for each of the several bits in a word.
The chips are grouped for alternate refreshing and powered during access periods. The processor updates the memory during idle display access periods. The memory is accessed in multiple bits words or bytes for display and processing.
For display, a parallel to serial output latch is employed.
The previous symbol position and pose is stored in the scratch pad and is erased and rewritten in a new position and pose.
The controls may provide encoding. A hardwired bit shifter with programmed shift level rapidly shifts the symbol bits before placing in memory. A high speed memory and low speed processor are shown with separate clocks and a special syn-chronizer unit.
~4~!54 Backqround of the Inven,tion This invention relates to a player operated visual game apparatus in which moving symbols appear on the screen and move in accordance with player operated input means.
In the field of game apparatus and the like, recent developments have employed TV-type devices with moving symbols for simulating playing of various com-petitive games, For example a widely available ping pong TV game apparatus has been developed wherein a ping pong symbol moves across a TV-type screen, The players actuate a lever control to move a small ~rip, to simulate a paddle, vertically along the opposite edges and if intercept is made, the ball is returned to the opposite side for similar control by the opposite player, Of course, if intercept is not made, the ball moves off the screen and a point is given to the opposite player, Other somewhat more sophis-ticated games have also been suggested, For example, a baseball game may be played wherein a ball is automatically thrown to a batter under proper control by the player opera-tor. The other player operates his control to effectivelybat the ball which then moves throughout the field and among a number of players. Generally, control means reposition the players, particularly around the bases in accordance with the predetermined movement of the simulated ball, Generally, the TV games are developed employing a raster type TV to minimize the cost and with a black and white pre-sentations in which various shades of gray may be produced by b;nary coding of the intensity drive. Simple movement is normally controlled by horizontal and vertical counters in combina-tion with a hard wired game logic ~eeding into a ~ .
1~14~S4 suitable coincidence gate, the output of which controls the video signal of the display. The display unit in turn includes - ' ' a conventional vertical and horizontal positioning control which, in combination with video coincidence ~ates, provides ~ ' for the desired illumination and effective apparent movement of the symbols. Although such devices are employed, they are relatively expensive and are custom designed to each particular game. Alternatively, the particular game may be stored in a particular read-only memory system for generating of the par-ticular symbols, with the movement and the position thereof controlled by the hardwired game logic. The TV display is then . .. .
actuated from a controller game logic signal to the coincidence gate, Such systems are acceptable where a relatively few '' symbols are employed and only limited capability and control is desired. In multiple symbol-type games and where each is to move over some or all of the display fieId, the prior art symbol movement tends to be jerky and unrealistic. Further, the implementation of the system presents certain difficulties ; from a practical implementation.
Summary of the Present Invention Applicant has realized that a TV-type game is uniquely 'adapted to a micro processor type control if considered as comprising two basically di'stinct means which are separate and - need be interrelated by an interfacing control memory means.
; In particular, the display means and the processing of the ..
input-output signals fo~ playing the game are two distinct and .
separate aspects which can be treated separately and then inter-faced a~d'that with this approach the limitation and disadvantages of the~prior art approaches can at the least be minimized if ;30 ;~-not essentially eliminated. In particular in accordance with
2-~ . - :. . .
.~ . . . . : .
1~14~F,'`S4 the teaching of the present invention, a dually addressed random access type memory is employed as the interfacing means to provide a static memory of the screen pattern for a raster type display means which memory is appropriately updated between display periods by a programmed processor.
With this approach, every game is essentially identical and any particular game is created by proper program and control of the memory bank which is interconnected by inter-facing means to the TV display means and to the processor I0 means. The processor means includes a central processing unit with a preset program memory and suitable input-output interfacing means. In a preferred construction the xaster TV display means has priority and includes means to scan the display memory bank for display of the information to present a visual display related to the particular game with idle time during retrace periods and other unique blanking periods. During the period the TV display means is accessing the memory bank, the processor is monitoring and polling its memory and the associated input-output devices and condition-ing itself to execute the necessary input-output to the memory bank. Thus, during horizontal and vertical retrace and other periods depending on the particular raster display, the display means is not accessing the memory bank. During such TV access idle periods, the processor read-writes into the display memory bank completing the necessary pattern changes in accordance with the player operator related inputs. The processing unit, by providing suf~icient processing time, may be a relatively slow speed unit with the processor communi-cating with the dually addressed memory bank during the TV
idle time or periods.
- . - - . . . . . . . ...
1~14~i4 The pre~ent inventor in particular recognized that this limitation permitted approaching and treating the over-all system as two distinct devices or means with time sharing - of the memory bank as a completely accept-able and practical implementation of an interfacing control and approach to a TV-type game display and one which is uniquely adapted to practical implementation.
Generally, to particularly employ relatively slow and inexpensive programmed processors, Applicant employs various display techniques for raster TV display means which permit slow speed processing while maintaining excellent visual presentation of the characters and the desired related movement, The various techniques may be employed as required to provide the necessary processing time. Generally, -n addition to the horizontal and vertical retrace idle periods, the TV display means reads the memory in a parallel multiple bit byte, stores the total byte with the several bits of the byte then serially outputted to appropriately drive the intensity of TV display scanning beam for each display point or location. The serial output is a TV idle period during which the CPU can communicate with the memory means. A highLy practical image presentation has been found which employs only alternate frames of the conventional interleaved scan lines.
Further, sufficient realistic display is obtained with scan-ning lines arranged to create multiple spaced line symbols.A single random access memory is employed with a number of address assigned to the processor. This permits the use of sùch portion of the random access memory means as a scratch pad for use by the CPU. In addition, the memory means is preferably sectionalized into vertical screen sections for .
.. . .
' ' - . ' - .
1~14~S4 sections for updating of the symbols within a ~iven section after generation of the corresponding sections. The pro-cessor then begins to update a completed scanned section during the scanning of the subsequent sections.
Further, the several symbols to be visually displayed are individually formed within a given framework and assigned a corresponding block of the memory means.
The central processing unit monitors the position of each symbol and, in updating the memory means, only changes that part of the memory means in which an actual change has been commanded by the user operated input.
For example, in a particular gunfighting yame developed for two players, relatively large symbols are employed for the shooters and associated environmental I5 elements such as buildings, plants, vehicles and the like.
These can be identified in program by appropriate bytes corresponding to the block of memory, with the CPU required to store a reference dot or location for each symbol, When any particular symbol is to be updated, the CPU locates the reference points, erases the symbol and rewrites the proper changed symbol. Where the symbols used are relatively large, the pattern may require use of successive bytes to update the symbol. If the symbol bytes are not superposed on the screen bytes or move within a byte, the data bits must be shifted into appropriate display bytes in the memory unit to properly drive the display means. To provide processor con-trolled shifting is time consuming and practically requires a xela~ively high speed unit.- In accordance with a further aspect of the optimum embodiment, the inventor provides a . . . ............................... . . . . ... . ..
~:~14~54 separate hardwired shifter with programmed amount of shift.
For example, in an 8 bit word or byte, the shifter may be programmed to shift up to seven bits. The shlfter in a particular practical implementation includes a pair of data word latches to store successive bytes and select the appropriate bits from the two bytes to form an appro-priate display word for driving the TV beam.
Certain changes in the symbols may be user con-trolled in response to the player control means while others may be machine determined in response to the change created as a result in the response to the player control means. For example in a gunfighter game, the shooting and direction of the bullet is user determined. The response to engagement of the bullet with an obstacle or other gunfighter is programmed.
For example, engagement with the obstacle may remove a part of the obstacle whereas engagement with the other gunfighter may cause the symbol to fall. ~ -To facilitate the speed of a change of a portion of ;
a symb;ol related to a particular input, the processing system may employ an encoded input control which the CPU decodes anddirectLy positions that portion of the symbol. For example, in the gunfighting game, the shooter's arm may be assigned a selec~ed number of distinct raised and lowered positions; The operated control for positioning the arm includes a multiple contact or other suitable encoding means to detect the operator setting of the control. The encoding means is wired to set a register or the like which is then read by the CPU
and the shooter's arm appropriately placed when next updating of that shooter symbol.
In summary, Applicant has realized, as a result of -, . ~ , .
1~4~S4 analysis, the high speed requirements associated with the two aspects of the system can be eliminated and that conse-quently the processor can, in fact, be a relatively slow speed unit while maintaining a complete and accurate presen-tation of a moving display in a low cost high speed rasterscreen type display. This teaching is very signiflcant in the commercial implementation of TV game devices.
In a highly practical system, a relatively high speed memory means may be combined with a relatively low speed processor. Individual clock means are coupled to the memory means and to the processor with a special synchronizer unit to maintain proper stepped time relationship between the display means and the processor with each of the devices operating at full capability.
In accordance with a further aspect of this inven-tion, the random access memory means is preferably of the dynamic type employing relatively low cost storage cells which are periodically refreshed. In order to minimize the power consumption, the memory means is constructed with the individual chips for generating of the several bits arranged in a plurality of groups which are alternately refreshed. Thus, ~he cycle time maylbe readily created whereby each group is refreshed within the memory hold period. Further, during the periods that the memory means is not communicating with the associated devices, the clock driver is disabled. This further minimizes the total power consumption. As a result, the memory chips operate at very low temperature and in practice may run essentially cold In particular in accordance with a unique embodiment of the present invention, certain moving symbols such as the guniighter may have a plurality of different poses whish can . . , .
. . . , .. . , . .. ..... , . .. .. ., , ., ....... . ~ . ~ .. ... .
ill4~354 be'presented to more realistically simulate particular movements. The processor in updating of the random access memory for the display screen remembers information in order . ~ to properly determine and introduce subsequent new data information into the data bank of the memory for presentation of the appropriate pose. Thus, the previous display informa- -tion is employed to transmit a true moving characteristic of the symbol. For example, the shooter movement must be related to the immediate previous movement to maintain a smooth, effective, realistic motion.
' Thus by storage of the previous position and presentation, the central processing unit can accurately determine the next position and by appropriate synchronization with the TV scan establish the desired smooth transfer of the bat symbol or any other symbol on the screen.
More particularly, in a preferred and novel em-bodiment of the present invention, a conventional raster screen television display is employed with a conventional horizontal and vertical count means interconnected wit~. a ' 20 cloc~ means to generate the desired position or address control in combination with'the necessa'ry sync and blank signals to '' the TV-video input. The output is connected through an inter-facing high speed random access memory of 65,536 bits to provide a unique memory position for each of 57,344 dots o~
;~ 25~ the conventional'TV screen, generated by a frame consisting of 256 by 224 lines.
In accordance with the further aspect and novel , . . . .
'~construction of a preferred embodiment, the remaining 8~192 ~d;~ ~ ~bits of the random access memory bank is employed as the scratch pad for the use by the central processing unit and ; .,.:: . : . .. . .
~ 8 ~: ' ' ' ' ,.
~, , , ' . . .
`~: ' ' . ' `~ ' ' ~
-- 1114~54 the associated portion of the display is blanked. The TV
control system controls access to the memory bank on a 50 percent duty cycle with equal periods for accessing of -~ memory for display and for CPU data reduction and updating.
The game processor includes a suitable central processingunit driven from a separate time clock in combination with a read-only memory for controlling the necessary sequences and subroutines for a particular game. The necessary input-output peripheral devices such as switch input signals are decoded and processes and encoded outputs provided for generating the necessary and auxiliary visual and audible supporting sounds. Each symbol is formed within a given block of memory locations which is so many bytes wide and so many lines high and each change in a symbol is completed by erasing of the memory block and rewriting of the block with the new or revised symbol. The TV screen and display control and the central processing unit are multiplexed to the random access memory to control the read-write of the random access memory, with the processor particularly connected through a data-latch system to read the information in the memory for determining the last position of the symbols and the like as well as being connected to introduce data into the memory to rewrite the symbol. The input-output devices are interconnected to the central processing unit and the TV
clock provides the necessary interrupt for updatin~ of the symbols in accordance with the player activated inputs.
Thus, a multiplexer includes switch inputs for reading the ~ -user or player control setting with each symbol read out a .
group and other inputs for reading the memory means.
The particular symbols and game to be played will be continuously sto~r~d in`~the GPU program memory with the direct . .
, , i i i 4~ 5 4 memory access being continuously updated to appropriately dis-play the symbols to provide a smooth appearing continuous move-ment o the symbols in a more or less realistic presentation.
BrLef Description of the Drawings 5 ' The drawings furnished herewith illustrate a preferredconstruction of the present invention in which the above advan-tages and features are clearly disclosed as well as others which will be readily understood from the following description.
In the drawings:
lO- F~g. l is an illustration of a TV game apparatus with character presentation in accordance with programmed processor control for describing an embodiment of the invention;
Fig. 2 is a block diagram illustrating the display and display generating components of a preferred embodiment of the present invention;
Fig. 3 is a diagrammatic view of first player operated control means for controlling the movement of the symbols on the screen of the TV game apparatus;
Fig. 4 i8 a view'similar to Fig. 3 illustrating a second cuntrol means for the first player and providing for ; ,, additional control of the movement of the symbols;
Fig. 4a is a view of one of the symbols shown in Fig. 1, with various alternate programmed poses of the symbols'shown in phant~m;
Figs. S and 5a are a schematic circuit illustrating' , a basic programmed processor board for developing of the game ' mode of play; and - Fig. 6 is a schematic circuit illustrating a particular game logic board for coupling of the game information to processor board circuit for completing of the circuit for a particular . .
~ ' - game shown in Figs. 1 - 4.
. ... . , , , , , . . . . . ... .... . ..... . ... ........ , ~ . .... .
14~S54 ,.. .
Description of the Illustrated Embodiment Referring to the drawings and particularly to Fig. 1 game apparatus is illustrated including an outer housing' 1 with a visual display screen 2 for the presenta-tion of the play of a gunfighter game by a pair of players,represented by first gunfighter 3 and a second gunfighter 4 located to the right and left sides of the screen. The viewing screen 2 includes a suitable background field which is shown for purposes of showing one possibility as a simplified western landscape. The gunfighter 3 includes a gun 5 for shooting of bullet 6 across the screen. The gun-fighter 4 similarly includes a gun 7 for shooting a bullet 8 toward the opposite shooter. Obstacles are positioned ~
between the gunfighters 3 and 4, and are shown including a ' plurality of cactus and trees 9 and 10-adiacent each of the gunfighter's 3 and 4 and ~ centrally located w~gon 11 which c~n move vertically across screen 2, as m~re fully developed hereinafter. The gunfighter 3 and 4 may be identified by a suitable legend, not shown, and hits identified as at 12 at' the'top of thé screen 2. The available bullets may also be identified by bullet illustration 13 on'the''bottom o~ the .
screen.`''The apparatus may, in accordanca with known game de-vices, have'a coin control means with a'coin slot input 14 to initially activate the game. First and second sets of manual controls'lS':and 16 are provided to the éxterior of the housing 1 immediately ~elow the display screen for each of the players.
For the gunfighter game, the control 15 for gun-fighter 3 includes a trigger handle 17 including a trigger '18 which is operative to activate the viewing screen 2 to ~30 ~shoot a bullet 6 from gun 5. Handle 17 is also pivotally 1~14~54 mounted for moving of the shootin~ arm 19 of the gun- . .
fighter 3 for corresponding positioning of the gun.
The player may thereby direct the bullet angularly upwardly or downwardly. Control 15-further includes a joy stick lever 20 which is mounted for universal horizontal pivoting to move the gunfighter vertically and horizontally on screen 2.
The controls 16 for the second player are similarly constructed and identified by corresponding }0 primed numbers. Thus,controls 16 include the gun handle 17'with trigger 18' and a joy stick lever 20' for corresponding actuation and positioning of the second gunfighter 4.
The several controls 15 and 16 include encoding means for generating signals to a programmed processor game circuitr~, as more fully described hereinafter.
In the play of the game, each player is allotted the same number of bullets 6 and 8 with a set game time in which to shoot the ppposite gunfighter. Each player actuates his lever 20-20' to move his gunfighter 3-4 to avoid being hit and to position himself to shoot the opposite gun~ighter.
The handle 17-17' and trigger 18-18' are actuated to posi-tion the gunfighter's arms 19-19' and to move a bullet 18-18' across the screen 2 for hitting of the opposite gunfighter.
The present invention is particularly directed to the method of implementing the presentation-on the screen 2 and the response to the available player controls 15 and - .
~ 16 to accurately visually display the game and in particular to create movement of the players in an interesting and .
', ' ~ ' 1 ~L14~!54 generally realistic manner such as to simulate running -movements and the like. Further, as presently described, the invention is particularly addressed to the development of a sin~le programmed system which can be rapidly, con-veniently and inexpensively constructed to any other game.
For example, the programmed processor game circuitry, as presently described for the gunfighter game may be readily adapted and converted to present a bassball or football game by modif~ing of the viewing screen to present an appropriate playing field with the appropriate players positioned thereon for controlled movement and adapting the encoding means to directly control movement or to create machine assisted and determined movements with the same or other manual controls.
More particularly and referring to Fig. 2, a block diag~am illustrating a preferred and novel construc-tion of the present invention for general universal application to different games is illustrated wherein the screen 2 forms a part of any conventional raster scan television unit 21 having a video and sync input 22 for receiving of the appropriate sync signals and beam illumina-tion signals for generating of the appropriate display such as that shown in Pig. 1 on the screen. Generally, a raster TV unit 21 includes a scanning beam 22a which is continuously moved across the screen 2 in a plurality of horizontal scanning lines 23, each of which consists of a plurality of points 24 for illumination to generate the symbols or patterns 3, 4 and the like. During the retrace of the -scanning beam 22 from the end of one line 23 to the next, the beam 22 is blanked, as shown by the retrace line 25.
~30 At the end of the bottom scan line 23, the beam 22 is again ~, ; ~ , .. . . . . . . .
L4~!S4' blanked for the vertical retrace, shown by the vertical re-trace line 26, In a conventional TV unit, successive frames of scan lines for each picture have the Scan lines 23 in~er-leaved to increase the resolution of the display. Thus, the ^5 TV unit 21 may be any conventional raster scan type unit.
As more fully developed hereinafter, in the illustrated TV
game apparatus of this embodiment, the scan frames are not interleaved to display the symbols, which therefore are drawn with a plurality of spaced brightened portions of the scann-ing lines 23. Consequently, no further description of the TV unit 21 which may be any well-known or desired construction and may be readily found in the prior art is gi~en other than as necessary to clearly explain the present invention.
The prior art may be referred to by the ordinary worker for reference purposes and details of construction of a TV unit.
Generally, in accordance with the present invention, the video signal applied to the input 22 is derived from a ran-dom access screen memory unit 28 employed as the interfacîng be~ween the screen display means and the game display control m~ans whlch otherwise function as separate and distinct func-tional devices. A sync generating and display control unit 29 reads the memory unit 28 and combines t'ne stored data with a TV
sync signal for display of the stored material as a static pre-sentation of the view stored in memory. The view in memory unit 28 is written by an integrated program processor 30 during peri-ods when the memory unit 28 is not-required by the display cycle, which periods are ~enerally defined as idle time or periods in this description. In particular, the random access screen memory unit 28 is suitably connected for joint but separate or indi~i-dual commwnication with the display control unit 29 and processor30. In the illustrated embodiment an appropriate multiplexer unit 31 is employed.
; ~ :
~114~54 The random access memory unit 28 is selected of such a size to correspond to and completely store the infor-mation necessary for presentation of a complete dispLay and illumination of the TV screen 2. For example, the TV unit may be arranged with a dot pattern of 2~6 by 224 and requires a memory unit 28 on the order of 57,344 bits.
Such a random access memory 28 is of course readily available and will completely store the information ncecssary for illumi-nation dot in a conventional raster type TV unit 21.
A TV control clock unit 32 drives a horizo~tal line ..
counter 33 and a vertical position counter 34 which define the position of the scanning beam 22a on the screen 2. The horizontal and vertical counters 33 and 34 define a first address means connected by the multiplexer 31 to address the memory unit 28 for sequential reading of the memory locations or points. The memory unit 28 reads in suitable multiple bit bytes, each of which thus defines the state of a series of points in a scan line 23, and are connected by a parallel to serial latch unit 35 to the common input 22 of the TV unit 21.
A sync blank unit 36 is also driven from the TV counters and ~ combined with the video signal as at 37 ~or connection to the common input and thereby establishes synchronism between the readout of the locations of memory unit 28 in accordance with -the position o~ the beam 22a on screen 2.
The TV clock or source 32 is also connected to the select input 3~ of the multiplexer 31 to establish priority coupling o~ the memory unit ?8 to the TV unit 21, and to selectively activate the multiplexer 31 to connect a processor bus 39 ~o the memory uni~ 28. : --: ~.30 . The sync and blank unit 36 and the select input 38 .:
, . . -15- :
; ' ~
to the counter are synchronized to ~llow the processor 30 to communicate with the memory unit 28 for calculation and updating of the screen display during display reading idle . periods when the TV display system is not addressing and reading of the memory unit 28. A logic circuit 40 is also coupled to the sync and blank unit 36 to further generate interrupt signals during such idle périods and set appro-priate flags or the like, not shown, in the processor 30 to communicate with the memory unit 28 for rewriting of-the symbols or patterns.
Generally, the processor 30 includes a central processing unit (CPU) 41 which functio~s in a programmed sequence under the control of a programmed memory 42, which is illustrated as a read-only memory. An input-output buffer interface device 43 includes an input bus 44 for coupling to the player operated control elements or controls 15 and 16 and an output bus 45 for energizing of suitable auxiliary visual and sound devices 45a associated with the game-apparat~s 1.
The central processing unit 41 of the processor is also con-nected by a display update bus 46 to the RAM memory 28 andto the input-output interface device 43. An address bus 47 ~ is connected to the address multiplexer 31 to selectively : establish and control communication with RAM memory unit 28.
The central processing unit 41 cycles through its program .25 under the control of the read only memory 42 to continuously .-monitor and poll the condition of the control elements 15-16 which includes suitable condition encoding means. The program memory 42 further includes the necessary programs to vary the ~-display or the point illumination data stored in the RAM
` :..3:0 memory 28 in accordance with the encoding means as set by .
. -16-' .
; , , ' ~.~14~i`4 activation of the controls 15-16.
The processing unit 41 further requires a scratch pad memory to complete the data reduction. In the illustrated ' , ;embodiment of the invention, a portion 48 of memory unit 2 is employed for such memory. Thus, ~che memory map for the processor includes the RAM program memory which may consist of 8000 addresses each of which includes an eight bit byte.
The scratch pad may include the next 1000 addresses and the screen or ~AM memory the next 7000 addresses. The processing unit 41 starts at the initial address and then proceeds to process the various game I/0 means to control the play and response of the game to the input controls.
Referring to Fig. 3, the tr;gger handle 17 encoding msans includes a switch 49 coupled to t'ne trigger 18. The ~itch 49 completes a circuit fro;n a logic power supply 4~a to the I~0 unit and when read by the CPU 41 causes shooting ,,' o~ one bullet 6 across the screen 2. The direction is encoded by a three bit logic code generated by pivoting of the trigger ~ '' handle 17, as follows, More particularly, a coding disc S0 is coaxlally mounted adjacent the handle support pivot 51 and .
includes three radially spaced concentric contact segments 52, 53 and 54. Fixed contacts 55 are secured to the handle 17 and slidably engage the contact segments 52, 53 and 54 in response to rotation of the handle 17, The fixed controls 55 and aligned contact segments are separately connected to the signal voltage supply 49a and by leads 55a the I/O unit to cor-respondingly open and close the circuit for reading by the CPU
41. The pivoting of the handle 17, ,generates seven t'nree bit code ~' combinationsj defined by combinations of the open and closed '30 circuits each of which corresponds to a particular position ~ .
of the shooter arms 19, including a horizontal position 56 and two raised and two lowered positions 57 and 58, as shown in Fig. la.
- SimiLarly, the gunfighter 3 movement is encoded by the "joy" stick control 20 Referring to Fig. 4, in the illustrated embodiment a control disc 59 is secured to the pivot shaft 60 of the control. The lever 20 projects through the disc 59 and pivoting of the shaft 60 moves the disc 59 to selectively close four equicircumferentially distributed switches 60, 61, 62 and 63. The latter switches are related to cause the associated gunfighter 3 to move in the corresponding direction. Thus, each switch 60-63 is connected between the control voltage supply 49 and the I/0 unit to provide corresponding individual control signals.
The CPU 41 again reads each switch line and correspondingly calculates the repositioning of the gunfighter symbol 3 from the present position. Thus, if the right hand switçh 60 in Fig. 3 is closed, the gunfighter 3 is to move to the right. The CPU 41 correspondingly erases the symbol 3 and rewrites the symbol in the appropriate shifted memory block of memory unit 28. If both the upper and right switches 60 and 61 are closed, the gunfighter 3 should move upwardly at an angle to the right. The CPU 41 calculates the appropriate location of the memory bank to directly generate the angularly oriented movement from the existing position, and in par-ticular selects the gunfighter data to be placed in a corresponding block of the RAM memory unit 28.
Referring particularly to Fig. 2, the player operated control means 15 and 1~ esta~lish binary logic
3~ signals which are read by the CPU 41 and the symbols 3 , 14e354 correspondingly rewritten in memory unit 28. The patterns or symbols are programmed in the CPU program memory with suitable vector means 64 for presenting of the movable patterns in various positions or poses. For example, the gunfighter 3 and 4 may move vertically, horizontaliy and angularly. The speed of movement may be incorporated in the program to provide a single walking or running movement which may also change during the play of the game, if desired. The gunfighter writing program includes a plurality of different programs in which the gunfighter 3 is written in different poses such that by sequential invoking of the available programs causes the gunfighter to appear to ; realistically walk or run from one position to another. Thus, the vectoring means for each appropriate symbol includes means to store the last program written into the random access memory unit 28 and the location of the memory block by storing of the coordinates identifying the location of the symbol reference dot. At the next calculation and updating, the symbol is completely erased from the memory unit 28, and re~ritten with the appropriate program and relocated in the appropriate memory block corresponding to the block of TV dots to be illuminated by the scanning beam. The vector means 64 for the symbol stores the new location and last program written to remember the pose. ~he TV control unit 21 sub-sequently reads out such memory locations to correspondinglyand properly energize the beam 22 within the screen block.
Thus, in a practical sequence, '~he CPU program 42 includes the sequential of monitoring the player operator controls 15 and 16 for the symbols and then sequentially updating each symbol 3 and 4in response to generation of an update interrupt signal.
. ' ' .
' : .
~ 1 1 4~ 5 4 The symbols in the illustrated embodiment of the invention include the gunfighters 3 and 4 which are pro-grammed for three poses including a fixed standing position and second and third positions with the legs positioned forwardly and rearwardly to move realistically across the screen. The movement of the gunfighters 3 and 4 are determined by the player operated controls. In addition, the symbols may be machine changed in response to selected game occurrences such as shooting of an opponent gunfighter.
For example, the gunfighter 3 may be caused to lay down in a horizontal position if shot by the opposing shooter 4.
In addition, the wagon ll is caused to move vertically across the screen by successive writing in appropriately shifted memory blocks in accordance with an internal pro-gram. Thus, ~he wagon ll is rewritten during each completecycle updating. Further, a hullet 6 shot through an obstacle such as the cactus 9 or lO may cause the upper portion to be removed from the screen 2. In the latter case, the beam 22 may be directly blanked for erasing-of the upper portion. If the wagon ll is struck, the upper portion is removed directly, and then, because the wagon ll is rewritten each update cycle, is replaced. Thus, the wagon ll bLinks off and on when hit. The central process- -ing unit 41 in particular reads the encoding means and executes the appropriate software program, addressing via ; the bus 47 the appropriate random access memory 28 for transfer of data over data input bus 46 to the memory unit 28.
The screen display is rewritten periodically to ~ . . .
- simulate the presentation of actual movement on the fighting field in a realistic and interacting manner. In order to ' .
1~14~4 accomplish this result, the characters are, as just described, not only moved throughout the field but are -activated to simulate the movements associated therewith, for example, during running motion the legs are moved and for directing of the bullet the arms move to reposition the gun. In accordance with the present invention, the ; previous position and arrangement of a symbol is sto~ed temporarily in a temporary storage means prior to rewriting of new symbol and activation of the TV display accordingly.
In the present embodiment the processor stores the necessary reference data in its scratch pad memory.
In particular, in Figure 2, a data latch 65 is ; connected to the parallel memory data output bus to receive data bit information corresponding to the data in random }5 access memory 28 for the addressed location. The tri-state data latch unit is coupled via a conne~ting bus 66 to the central processing unit bus 41 for communication therewith which interprets the information for proper storage and rewriting of the symbol.
The selection of reading of the data in memory unit 28 or writing of data into memory is controlled by the central processing unit 41 through a read data select line 67 which is connected to the memory unit 28.
Each symbol employed is a fixed size and thus ~ ~ -defined within a block of memory unit 28. The processor -program memory includes a software program which completely rewrites the symbol within the assigned block size. In updating of a symbol, the processor erases the block of ~; memory and completely rewrites the symbol in a new similar .
30 block to correspondingly move the symbol and simultaneously -21- ~ -.
1114~54 reposition the symbol in whole or in part in accordance with the programs in the program memory unit 28. As more fully developed hereinafter, the present invention ! pr~eferably employs relatively low speed processor 30 for -5 purposes of economy. The readout of a memory byte tc the TV unit from the parallel to serial latch 65 develops an idle period while the bits are serially transmitted to the TV unit 21. The processor time for completing all the tasks necessary to properly interpret the input controls 15 and 16, the present sy~bol positions and the new positions as well as the game conditions, is created by providing a fi~ty percent duty cycle in which the TV display means and the processor alternate in accessing of the random access memory 28 both during the scan lines and during the horizontal and vertical retrace periods of the scanning beam which are of course idle periods during which the CPU 41 may use memory unit 28. The duty cycle is maintained during such periods to maintain a simple and inexpensive system. Further, by accepting the horizontal line illustration of the symbols 3, 4, 9, 1~ and 11, the circuitry and particularly the inter-related simplified controls are maintained~ The addresses of the screen memory unit 28 which would be associated with scan lines is not employed to store display data but rather is employed as a scratch pad memory for the processor 21.
Thus, the random access memory unit 28 provides the dual functioning of storing a complete screen display over the operative portion, with the portion 48 employed in order to properly manipulate and calculate the necessary data for updating of memory unit in accordance with operation of the player operated controls and corresponding changing of the view on screen 2 ~ :
.. . . . . . . . .. . . ... ....
~enerally in accordance with the present inven-tion, the display control unit 29 initiates generation of a display frame and completes display of the information in memory unit 28 to establish one complete static visual :5 presentation or picture. During one display generating frame, the processor 30 monitors the status of the input- :
output controls 15 and 16 during the idle periods and the like accomplishes the various data reduction and calculatio~ :
tasks necessary to reflect the action occurring. During a subsequent frame, the processor 30 updates the symbol by erasing and rewriting of the symbols. In practice, where a few large symbols are usedj a single symbol is updated during an update frame period. This is particularly satis-factory where the variol~s symbols may not require simultaneous movement.of all or a significant member thereof and thus a series of frames may be generated before updating of the several symbols.
In summary, the TV unit 21 is driven to display the static image of the memory unit 28, with the rapid frame presentation, creating a typical live presentation o~ the-stored image. The TV control unit continuously and cyclically generates the frames essentially as a separate and distinct .. entity to produce the presentation and during the selected idle periods when the memory unit 28 is not needed releases 25 the memory unit 28 to the processor During such periods, .
the memory unit 28 and particularly the scratch pad memory may be addressed by the CPU 41. The display memory section or portion of the memory unit 28 is updated periodically in response to inter- ..
. rupt signals generated by the TV control unit during the period .. -~: ~30 '3-. . :
~ ' ' , ' ' .
1114~54 of the alternate update frame. The present invention may of course employ a suitable TV control means and processor which are adapted to communicate with the random access memory unit 28.
~5 ~lthough various systems may be employed to imple-ment the present invention, a particularly unique and practical system is shown in Figs. 5 - 6.
Figs. 5, 5a and 6 illustrate schematic circuits of the elements shown in Fig. 2 particularly adapted for the gunfighter game. Generally, in Figs 5-5a a processor system is shown which may be constructed-as a universal basic circuit which is essentially adapted to be programmed for each game, with only the program memory of the processor changed to each particular game. Such program memory may of course employ commercially available program chips of the plug-in variety. An interfacing circuit, which is constructed ~or each particular game, is shown in Fig. 6.
In a practical implementation of the present invention the two basic circuits are therefore constructed on individual circuit boards, with the processor board forming a generalized board construction, and with the game logic board being uniquely and separately constructed for each game.
In the illustrated embodiment of Fig. 5 the processor 30 includes the central processing unit (CPU) 41 having an address bus 47 connected to the program memory unit 42 and having a read-write data bus 68 connected to a CPU multiplexer 69 for receiving and transmitting of binary data words. The CPU 41 may be an Intel 8080 with the appropriate control input terminals including a ready 70, an interrup~ 71, a hold 72, a reset 73 and a request 73a. The 8080 processor 30 particularly employs 8 bit . . .
- . - - . . . ~, . - . . - :
~ 1 ~ 4~ 4 data words or bytes in communicating with the associated :- :
control and memory devices and a 16 bit address word or .
byte. The associated buses are correspondingly data and address .bus lines. The CPU 41 is driven from a suitable clock unit 74, :5 (Fig 5). The operating sequence of the central processing unit is controlled by the program memory unit 42 which is preferably a suitable programmable read-only memory system such as that sold by the Intel Company and may include a plurality of memory chips 76, such as Intel 3604-6. The .10 memory chips are suitably configured and interconnected to define the necessary software pro3ram control and further include suitable routing for writing of the several symbols as well as reading of the player control means and other control means and executing of appropriate programs. Each of the chips 76 is connected by address bus 47 to a decoder unit 77 ~or selected one of the memory units 76 for readout.
The decoder 77 is connected to the bus 47 with individual output lines to the several chips 76. The program memory . chips 76 each has eight lines 78 coupled to a common instruc-tion bus 79 and the appropriate eight bit instruction wordis transmitted in accordance with the address word applied ~: from the CPU 28 to the decoder 78 and the chips 76. Ihe instruction bus 79 is hardwired to one of four inputs of a four to one multiplexer or decoder 80, shown consisting of . -2S four 74LS153 chips. The output of the decoder 80 is connected to one input 81 of the CPU input-output multiplexer unit 69 shown consisting of a pair of Intel 8216 chips 81a. -Ihe : multiplexer unit 69 has an output bus 82 connected to .-memory bus.46 and to I/0 circuit shown in Fig. 6. The multi-plexer unit 69 includes input-output lines 68 connected to .
ill4~54 CPU data ports and provides for transfer of data to and from the CPU 41.
The decoder 80 in addition to the instruction . input 83 includes a RAM input 84 connected to the output of the RAM memory unit 28. The second input to the decoder 80 provides for transfer of one byte from the RAM memory 28.
A third input 85 to the decoder 8~ is connected to the game logic lines bus 86 from a game data multiplexer 87, shown in Fig. 6, for inputting of the encoded signals from the I/0 unit 43.
The fourth input 88 to the decoder 80 is connected to a pair of interrupt signal lines 89 from the TV clock control assembly 32-34. The interrupt signals are generated to instruct the CPU 41 to update one of the symbols, as more fully described hereinafter, The decoder 80 includes a pair of binary selection lines 90 connected by a logic circuit 91 to the output of a status register 92 which continuously is in a state correspond-ing to the state of the CPU 41. The status register is connected to the data bus 82 and thus is set by the CPU 41 to create the necessary output control state.
The memory unit 2~ (as shown in Fig. 5~ is a random access memory and for purposes of economy and practical implementation of the present invention are preferably cons.tructed as dynamic memory units such as those manufactured and sold by Intel Corporation with the identifying number Intel 2107B, The memory cells are generally capacitor cell units which must be periodically refreshed in order to main-tain the memory data. The memory unit as illustrated includes 16 memory chips 93 which are divided into eight bit first .
~ 14CP54 bank 94 of 8 chips establishing an eight bit output and a second bank 95 of 8 chips establishing an eight bit output connected to bus 96. Each chip is similarly constructed with a 12 bit address input connected to an address bus 97 as illustrated, with the connection to one element shown in detail. The address bus 97 also includes the ~vrite-read input 98 for correspondingly enabling of the cells.
The memory unit 28 and particularly the memory chips banks 94 and 95 are alternately enabled and driven from a separate TV clock unit 32. The output of the clock unit 32 is thus connected to a clock driver 98 the output of which is connected to simultaneously enable all of the eight RAM chips in either bank 94 or 95. The clock driver 98 thus has a pair of clock outputs 99 and 100 one o~ which is connected to drive the first bank 94 and the second of which is directed to drive the second bank 95. The clock driver 98 thus toggles between the two banks such that a first word or byte is taken from the first bank, the second byte from the second bank, the third byte from the first bank and so on. A single bank of RAM chips 93 is activated or turned on at any given time. This minimizes the power dissipation in the dynamic RAM construction and permits the memory cells to run at a minimum temperature. The toggle rate is such that each memory bank 94 and 95 is refreshed within the storage period. Similarly the clock driver 98, which requires substantial driving power, is selectively turned off to minimize the energy dissipation during the ;: . . . .
period or time that neither the CPU 41 or the TV control unit 29 is communicating with the memory unit 28, as sub-~` 30 sequentLy described in connection with the addressing ofthe memory.
~ ' . . .
: . ~
: . . - .. .. ~ ..... , .- .
~46:354 : ':
As previously described, the raster TV apparatus consists of a 256 by 224 matrix of display points requiring 7000 words and the scratch pad includes an additional 1000 words. The memory chips 93 thus include a corresponding matrix of memory cells or approximately 64,000 bits. Each chip thus includes approximately 4000 bits. The memory unit 28 is read out in eight bit bytes or words and thus defines eight adjacent points 24 in a scan line 23 or the sc~een 2. Further, 32 bytes are required to completely define each scan line 23 which as noted is 256 points long, and the memory includes approximately 8000 bytes which are alternately read out, one at a time, from the banks 94 and 95, In addition to the address bus 97 and data output ~ :
LS bus 96, a data input bus 101 is provided forming an extension . of the CPU data bus 46 from the CPU multiplexer 69. The bus 101 thus includes wr~te.data bit input lines 102 which are ; connected one each to the input data ports of the corresponding memory chips 93 in the memory banks 94 and 95. The particular cells into which the data is placed is defined by the CPU
addressing of the memory unit 28 via the CPU address bus 47.
The RAM memory 28 as previously noted is selectively addressed from either the TV control unit 29 or alternately from the CPU via the address bus 47. The TV control unit 29 . 25 includes a memory address generating means including a hori-zontal counter 32 and a vertical counter 34 which conjointly define each of the coordinates of the memory cells and related .
~ display points 24. The counters 33-34 are shown similar formed : : by a pair of clock driven logic chips 104 and 105 such as sold ~30 ~ by Intel with identifying number 74161 or 74LS161. ~he our counter .
- . . .. . .. . .... . ...... .... . . . .
: ~ . . , ~ : . .
1~14~;4 chips are driven from the clock 32 which i5 connected to a common pulse source with clock 74 and provides sequential address-ing of the RAM memories for readout of the cells and display there--of on the screen 2. The output of the counters 33-34 are connected , ~ as a set of address lines 100 to one input of the RAM address multiplexer 31, the second input of which is connected to the CPU
address bus 47.
The multiplexer 31 is shown as a two to one logic circuit consisting of four 74157 or 74LS147 ro circuit ch$ps 105, connected to the several elements of horizontal and vertical coun~er-s 33 and 34, and to the CPU address bus 47. The output of the multi-plexer 31 i9 an address word 13 bits wide and is connected to the RAM address bus 101. The output ;15 thus includes the 12 bits to address the several bit chips in the two banks 94 and 95 and a write-read bit to port 98 to correspondingly enable the member unit 28.
As tisclosed herein, the multiplexer in the various connections provides a convenient and ~20 practical means of coupling the various input and .
outputs to a single port. Other means such as latches can, of course, be employed. Further, where the CPUJ
~for example, has sufficient ports the several devices can, of course, be directly coupled without the use of ~ . .
such interfacing devices, with the processor, of course, appropriately programmed to read the ports. These, and other similar concepts, can, of course, be employed within the~basic~concept herein of using the random access memory unit as the interface between the TV game display unit and the~game input controls.
. ~. . . : - .
, ~ -29-~: . :: . , :.: : , : --i~l4~54 The horizontal clock counter includes z first bit line 1~6 connected to the parallel to serial d3ta latch 35 via a logic circuit 1~6a.
As noted previously the clock driver 98 is only driven when the RAM memory unit 28 is being addressed. The address input words to the memory unit 28 include initial bit lines 107 which are coupled with a driver line 108 from the TV clock unit 29 in a logic circuit 109 to the RAM clock driver 98.
The multiplexer 31 further includes a select input 110 for each unit driven from a select line 111 from the TV clock unit and particularly horizontal clock counter 33. The TV clock unit therefore controls the state of the multiplexer 31 and establishes the priority in which the TV
display reading unit has the h;ghest priority. The CPU 41 therefore waits for the TV unit to release the memory unit 28 for communication with the CPU 41. The TV clock unit 1 29 is also connected to a horizontal blank unit 112 to generate the horizontal blank signal for blanking of the beam 22 during the horizontal resweep time period. A -similar vertical blank unit 113 is connected to the clock unit to provide a corresponding vertical blank signal to ; blank the beam 24 during the retrace time 26. The several sync and blank signals are combined in a logic gate unit 114 ha~ing a sync and blank signal summated with the data ~25 output on output line 115 in Fig. 5a to develop a combined vldeo and sync control signal connected to the TV screen driver input 22. The line 115 is also connected to the output of the RAM memory unit 28 through the parallel-to-serial latch unit 35 having its input connected to the RAM data 30 output bus 96.
' . .
., ... ~, , .... ~ . . . . . . . . . . .
` 1$14~4 In the present invention the random access memory 28 and the CPU 41 a~e driven from the sepa~ate clock 32 and 74 to permit operation of the two units at their maximum speed. The two devices which are preferably selected based on practical consideration such as cost, reliability and the like, do not operate at the same speed in the illustrated embodiment and being totally asynchronous, cannot be conven-iently driven from a common clock. For example, in the preferred embodiment, the random access memory unit 28 selected operated at a speed of 800 nanoseconds while the CPU 41 operated at 500 nanoseconds. It is desirable to maintain the operation at its maximum speed to provide maximum available time to unit 41 in view of the significant number of tasks assigned and which are completed in order to create optimum presentation.
The output o~ the RAM memory unit 28 appears on the data output bus 96 by encoding of the write/read line 98 to read. The data output bus 96 connects to a CPU latch 117 o~
~he display latch means 65 ln Fig. 2. The data latch 117 in-cludes a parallel to parallel latch unit shown consisting of a pair of LS174 register latches. The display latch means 35 is a parallel to sérial number 166 latch unit.
The serial to parallel latch 35 has its select line 118 connected by ~ logic circuit 119 to the horizontal and vertical counters 104 and 105 and its clock port and line 120 connected via Iobic unit lO~a to the counter line 106 of the TV
display clock system. The TV clock system thus enables the latch 35 to store the eight display bits and to serially trans--mit the bits from the serial output port and line which is con- -nected to the TV input signal line 115 and thus to port 22. The TV
'' ' ' : . -, ' - . .
. - .. . - . . ~ . . -- :
4~ ~ 4 clock counters outputs are connected to the sync and blank logic circuit having the sync and bLank output line which is summated with the data line at line 115 to form the common input to the TV input port of Fig. 2.
In Fi~. 5, a horizontal blank flip-flop logic gate 112 and a vertical blank flip-flop logic gate 113 are set by the counters. The outputs are combined in the logic circuit 114 to establish the appropriate blanking signals.
Under normal sequencing operations, the TV clock system drives the addressing counters 33 and 34 to sequentizlly address the memory locations, clocks the memories to transfer the data into the parallel to serial latch 35. When the 8 bits of information are transferred into the latch the memory unit 28 is released for use by the CPU.
During this period, the parallel to serial latch 35 is outputted in synchronism with the TV sync and blank signal from logic unit 114 to the television set 21 for correspondingly energizing of the scanning beam 22 in accordance with the information stored in memory. The parallel to seriaL latch 35 is clocked in synchronism to maintain proper synchronism between the transmittal of information and the positioning of the scanning beam 22.
At the end of transmission of the eight data bits, the TV
; 25 clock and addressing system automatically accesses the RAM
memory unit 28 to read the next display data byte and trans-fer it to the parallel to serial latch for another display of such successive byte.
In the illustrated embodiment of the invention `~;30 with eight bit wide bytes, 32 bytes are read for each , ~ , .
~, , .. . .- . , : . . . . , ,: . .
... . . . . .
i~4~54 horizontal scan line. At the end of the line, the hori-zontal blanking signal is set by flip-flop register 112 and the beam is blanked du~ing the horizontal retrace time.
A new scan line cycle is again initiated with the horizon-~5 tal counter and the vertical counter appropriately adjustedfor generating the addresses for the new line.
As previously noted, the TV control has a priority in the hierarchies of the operating system. When the CPU 41 requests access to the RAM memory, the CPU 41 must wait until the TV control unit releases the memory unit 28. The CPU 41 operates at a slower speed and after access to memory unit 28 is captured does not actually execute the step until the RAM introduces a signal indicating ~the synchronous state of the units and particular the data is on the input of the decoder. The CPU 41 may address the me~ory unit 28 while the TV display control is also address-ing the memory unit 28. When the TV display control releases the memory unit 28, the multiplexer 31 connects the CPU
address bus 47 to the RAM address bus 9i and the appropriate eight bits of memory data appear on the data bus 96. The data is placed on the inputs to the CPU parallel to paralleL
latches 117 and are latched by a synchronizing logic circuit 121.
The synchronizing logic circuit 121 is enabled by the CPU 41 request for data from memory when the data infor-mation is latched, the logic circuit 121 transmits a ready signal to the ready port 70 or the CPU unit 41 via a line 122.
The CPU 41 then terminates the "wait" state and proceeds to execute the program for which the data was requested.
30 ~ -, ~ : -' ' ' -.:
- ~ . . , . , - ... :...... . , - . -- -. -. .. . ..
.: : .
1~14Qi54 The memory unit 28 is directly released to the CPU 41 between each of the display data bytes as ,well as during each of the ho~izontal and vertical beam -retrace periods. Thus, during these periods the CPU 41 ~5 may address the scratch pad portion of the memory units 28.
The pair of LS174 latch registers 117 provides ; additional input-output logic and lines in addition to the eight data lines. The available portion of the latch ~1~0 signal the synchronizer to indicate the condition of the latches and particularly the readiness to transmit data to the CPU 41. When the CPU 41 has requested communication ' , with the memory unit 28 and receives the ready signal, the " ' appropriate instruction is forwarded to the decoder 80 to `;15 transfer the data through the multiplexer 69 to the data "
inputs of the CPU 41.
In addition, the CPU 41 interrupt 71 is set periodically to initiate updating of the symbols. In the ' ' illustrated embodiment of the present invention, the TV
20 , display control unit 29 and particularly the clock system - ,' , is connected to an interrupt logic circuit 123 to generate a pair of update interrupts. The one interrupt occurs at the middle of a display frame and the second interrupt '`i` occurs at the end of the display frame. The first interrupt 25 , provides for updating symbols in the upper half of the screen 2 and the second interrupt for updating symbols in the lower half of the screen 2. The interrupt is binary encoded on a pair of interrupt encoded lines' 124 and 125 from the interrupt logic circuit 123. The encoded lines are , ~ ~' '30' .. . .
' _34-: ~
~ 4~54 connected to fourth input 88 of decoder 80. A line 127 is con-nected to an interrupt latch 126, sho-~n as a LSli4 flipflop, the second of which is connected to the interrupt part of the CPU 41.
The CPU 41 reads the interrupt input of the decoder 80 to determine which interrupt is being processed for appro-priately updating of the symbols of the gunfighter 3 and 4.
By initiating of the upper portion of the screen after writing of such portion, the CPU 41 has the period of writing the lower portion of the screen to execute the various tasks for writing of the new symbols. Thus, the CPU 41 may communicate with memory units during the TV idle time. Further, as noted previously, the duty cycle of the next scan frame is employed as the time available to complete the updating of the one symbol. If the upper screen does not contain a symbol requiring updating, the CPU 41 acknowledges the interrupt and ! proceeds to other tasks. Upon generation of the second inter-rupt, the CPU 41 initiates the update program for the lower portion of the screen 2. Thus, by employing the dual interrupt the total available update cycle time is increased.
The required updating is determined by the operation of the control means 15 and 16 by the players, as; well as other special interrelated controls as shown in the game logic board of Fig 6 Referring particularly to Fig. 6, the game logic board generally includes multiplexer 87 for transmitting of the setting of control means 15 and 16 and other game inputs to the CPU 41 and for driving of the reinforcing visual and sound devices 45a. Additionally, a special data bit shifter 128 is provided for selectively shifting of the bits in a symbol byte to properly define a symbol, as hereinafter developed.
.. . . .
... ... ~ .
~114~54 More particularly, the various control switches 48, 50-54 and 60-63, as shown in Figs. 3 and 4, for the gunfighter 3 and 4 are coupled as first and second sets of inputs 129 . and 130 of the four to one multiplex 87 which has its ou.tput ~:`5 lines 131connected to bus 86 to.the CPU decoder-80 of Fig. 5.
The third input 132 of the multiplexer 87 receives game condition control data from a bank of manually set switches 133. Finally, the pattern or symbol byte shifter circuit or unit 128 is connected to the fourth input 134 of the multiplexer 87. The CPU data bus81ais connected to the shifter 128 and to an output signal latch 135.
In the illustrated embodiment, the multiplexer 87 and the shifter 128 and an output reinforcing latch register unit 135 are coupled to the CPU 41 through three bit address lines 136 driven from the CPU 41. The three input bit lines 136 have two inputs to the multiplexer 87 for selecting one of the four inputs to be transmitted over the right bit output lines 131.
The two address lines 136 connected to select inputs of the decoders provide binary encoding of the multi-plex unit 87 for selective coupling of the output lines 131 to any one of the eight lines of the four inputs 129-134 and thereby permit the sequential transfer of data and in~ormation to and from the central processor unit 41 for .
~25 the lines 136 are also connected to the shifter 128 and to the latch 135 through logic gates 137 as clock lines for appropriate transfer of data to and from the CPU 41. The ~ data decoder or multiplexer 87 is shown formed from four ~ LS153 register units 139 each of which includes a pair of - ~.
~30 four input decoding units and thus provides a total of eight -36- :
.: ~ , ' `' ., - .. . ~ ~ .
i ~ 1 4~ 5 ~
input signal bits for each of the four data multiplexed inputs and a corresponding eight output signal bits connected to lines 13.
The user operated control means 15 and 16 each ~5 provide eight input signals, in the form of open or closed switches, defining the complete demanded change of a player. The several input signals are shown connected to the several inputs via suitable pulse shaping circuits 140, ~-uch as suitable opto-isolators. The switches of controls 15 and 16 are similarly connected to the first and second bank of inputs 129 and 130. The connection for control 15 are described for purposes of description.
More particularly, the raise switch 61 for gun-fighter 3 is connected to the corresponding first input.
The closing of the switch 61 generates a suitable logic pulse as an output binary logic signal which is read by the processor upon encoding of the multiplexer to output the data for gun~
The downward movement switch 63 for the gunfighter 3 is connected to the second line of the first decoder input and the right and left movement switches 60 and 62 are connected to the third and fourth lines of such first input 129. The three coding switches 52, 53 and 54 for the position of the gunfighters arm 19 are similarly connected to the `25 multipiexing fifth, sixth and seventh lines of input 129.
The eighth line of the first input 129 is connected to the trigger switch 48 for firing of bullet 6 by gunfighter 3.
When the CPU 41 program steps to read the controls, ~he address lines 136 encode the multiplexer to output the sig-`30 nals on the first input which are thus transmitted via ~37~
-1~14~54 - lines 131 and the bus 86 to the corresponding input 84 of the CPU encoder 80. The CPU 41 reads the data via ~-the multiplexer 69 and the data read/write data lines 68 for appropriate processing and updating of the memory ~5 unit 2~.
The second input 130 similarly provides for reading of the actuation of the control means 16 for gunfighter 4.
The eight lines of the third input 132 of the multiplexer 87 a~e coupled to a coin and game time control switches, as presently described, and set the conditions for initiating and continuing of play. A pair of coin switches 141 and 142 permit encoding of the game to require insertion of anywhere from one to four coins in the coin receiver 14 to condition the game for operation. Thus, the pair of switches may provide a series oE binary codes requiring one, two or three coins to condition the game for play. The switches 141 and 142 are connected to the first and second lines of input 132 and to a logic supply circuit 20 143.
Credit for proper coinage input as set by switches 141 and 142, is determined by a pair of switches 144 and 145 ~ connected to the third and fourth lines of the third input 132. The switches 144 and 145 similarly provide encoding of game credits for any given number of coins. CPU 41 main-tains a continuous record of the number of coins introduced and the number of games remaining to be played before all of the inserted coinage have been used up.
A further pair of switches 146 and 147 permits encoding of the game into differen~ plaving times. The ' ~ ': ' ' ~ ' .
1~14C9S4 switches are shown connected to the fifth and sixth lines of the third input 132. A nominal minimum game period might exist for 60 seconds but it might well be desired to extend the games to 90 or 120 seconds.
The seventh and eighth lines of the third input 132 are connected to signal logic inputs 148-149 related to receipt of a proper coin and the initializing of the processor system for initiating the game time. The coin input switch signal is derived from the coin input uni~
14 to ensure starting from an initial position. Thus, each inserted coin is recorded in a suitable register, not shown, and the game apparatus enabled in accordance with the coin setting and credits condition proscribed by the switches 144-147.
Finally, the eight lines of the fourth input 134 of multiplexer 87 is connected to the eight output bit lines 150 of the data shifter unit 128.
The shifter 128 is a variable bit shifting means for rapid shifting of the bits in a data word or byte by a program control amount. The shifter 128 is employed to shift the symbol word bits where the positioning of the symbols is offset from actual byte distribution across the screen. Thus, èach symbol is encompassed within a block of scan points~ Thus, relatively large symbols such as the gunfighter and wagon may be three bytes wide. The screen 2 and memo~y unit 28 are similarly 32 bytes wide. If the symbol side limits coincide with the limits of any three bytes, the symbol could be directly placed and removed from ;~ memory. Such may infrequently occur. Generally, however, the symb~ol will be shifted by anywhere from one to seven bits ~ ~ ~ ~39~
' . - .
1114~S4 and the three symbol defining bytes are spread over four adjacent memory and screen bytes. The symbol bits must then be shi~ted to properly locate the symbol bits in memory unit 28. Although the CPU 41 can include the appro-
-5 priate software program to provide the necessary shift, -such an approach would unduly burden the CPU and in particular absorb an unacceptable amount of processor time for the commercially practical apparatus such as shown for the preferred embodiment.
10The illustrated shifter 128 includes a pair of cascaded latch stages 151 and 152 in which a first and second sequential bytes of data are sequentially placed.
The output appearing at lines 150 are derived from the 16 output bits of such two bytes to provide a byte with the bits shifted. The amount of shift, up to seven bits, is set by a latch unit 153 which is programmed by the ~PU 41 in accordance with the desired location of the symboL on the screen 2. More particularly, the first shifter stage 15 includes four separate LS17S latches 154, each having up ;~
to six inputs, two of which are derived from the CPU data bus 68. The output lines 155 of the first stage are con-nected as inputs to the second stage 152 and also back to other inputs of the first stage as at 156 to develop additional inputs to the second stage 152. The two outputs ~25 of the first stage 151 are thus paralleLed and the output o~
the second stage 152 define the complete 16 bits of adjacent dispLay bytes. The second stage 152 is shown including four similar decoders 157 identified by the number AMD ~5S10 having eight input bits and four output bits. The decoders ~30157 have three bit selectiGn code lines 158 connected to the~
, ' , ~ ' , ' :. .
~4~54 CPU programmed shift latch 153.
The CPU 41 thus calculates the amount of shift re-quired and correspondingly sets the latch register 153. The data bits for each byte are then directly shifted accordingly as a result of the hardwired instruction that the signal bits appearing at the particular input ports are taken out at a different and properly shifted sutput port. The eight bit shifted byte is transmitted to the CPU 41 via the data multi-plexer 87 and the output lines to the CPU bus 86. This is an ~0 extremely practical consideration where large amounts of shift will be required such as where a large number of symbols are used or where each symbol is large such that reasonably large shift values may be required. Thus, a symbol may require up to 100 data bytes, each of which is to be shifted. In the illustrated embod$ment, when updating the memory, the latch 153 is set once and the symbol bytes are each directly properly shifted.
If a software program were employed, the processor time would be 80 extreme as to prevent a desirable display, and particu-larly whère larger values of shift were required.
The shifter 128 therefore particularly adapts system to the use of relatively slow and therefore commercially practical processor 30.
The visual and audible outputs are transmitted to the output latches 135 from the CPU data bus 68 and the connected ga~e logic board lines 151.
The output of the one latch 135 is connected to a decoder 159 having six individual drivers to a sound generator 160 for driving a pair of speakers 161 and 162.
Thus, each firing of a bullet may generate a programmed sound. The second latch 135 provides for driving of miscellaneous recorders and indicators in accordance with .. . . . .
' . ' , .. . ~ ... , . . , . . . . .... . .. .. ~ . . .
1~14~4 t~e game program. The second latch 135 is shown for example developing outputs for driving of a coin counter 163, a credit counter 164 and a game over lamp 165.
The circuits shown in Figs. 5 and 6 thus provide ; 5 a preferred embodiment for the gunfighter game. The circuits can, of course, be readily adapted toany other game by merely providing an appropriate programming of the CPU program memory unit 42 and providing of the necessary modification to the game logic circuits for the input and output signals required for such game.
The preferred embodiment includes various unique features which are significant in the construction of a basic system for many different games. Various modifications of this preferred embodiment may of course be incorporated.
For example, if the tasks required of the processor are not I as great as in the illustrated game, or higher speed pro-cessor is used, each of the scan frames may be used for display to develop a ~reater resolution in the symbols.
Similarly, the shifter is most important where large symbols are used requiring large amount of shifting. Consequently, such detail may be eliminated and a software program shift employed if desired. If the processor and RAM memory unit operate at the same or some even multiple of time, a single clock may be employed. These and similar other important ~5 features may or may not be employed based on the particular game and time parameters. In summary, in the implementing of the invention, various processor and display control of any desired design may be employed which are adapted to essentially independent operation with a random access memory ~30 and where the random access memory functions as the , ;
-lil4~;4 interfacing means for providin~ interdependent functional relationships in the playing of the game apparatus.
In the ill~strated embodiment of the invention, various multiplexing units are employed for establishing multiple inputs and outputs to the processor and to the memory. Although multiplexers employ a very convenient structure where the associated devices have limited input and output ports, the present invention can be employed with direct port connections where available. Thus, a processor might be employed with individual ports connected directly to the data and address channels with the appropriate internal latches and selection.
In the illustrated embodiment of the invention, a single memory is provided to provide the game presentation in black and white. The game apparatus can be directly modified for colored presentation. In th~s aspect of the invention, th$ee memory planes would be employed, one for each of the basic colors with a master controller to provide the necessary and desired interrelationship of the reading of the various planes. Further, if desired, the color could be basically shades of gray with each dot provided with more than one identiying bit of intersity memory. If such concept were employed to the color schematically there would be three memory planes for ëach color. Further, within the broad concept various processors could be employed for the various functions with the intelligence requirements distributed in a logical manner and undex the control of a master controller or processor.
In multiple ~ystems, for example, a microprocessor might be ; employed to control the hit shift depending ~pon the relative ~0 time and costs requirements.
: . . ' :.. , :
. - . .. : . ... : .. ::: . :. . , ~ . . .
~ ~14~S4 The illustrated embodiment of the invention as well as the suggested modifications and the like are all -directed to practical implementation of the very basic con-cept of employing the duly addressed memary means which functions as a direct and unique interfacing between the player operated game controllers and the like to and with the completely separately operated display means. As previously noted, this separation of the game into two distinct separate com-ponents operating as soparate entities and with the memory as the only common interfacing not only permits a relatively low cost, versatile game apparatus but uniquely adapts such TV game apparatus to a simple, inexpensive and readily im-plemented conversion of a basic structure to various games.
The illustrated embodiment provides a highly .
significant improvement in the practical implementation with ! present day technology but the varLous steps and functions may, of course, employ any other suitable apparatus which can provide the desired functloning.
The present invention thus provides a relia~le !'~
and relatively inexpensive TV game apparatus particularly adapted to commercial production.
~z5 ' .
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
random access memory for storing in a digital form a set of digital bits representing the intensities necessary for generating a display on said screen and locating the symbols within the display; display controller means for addressing said random access memory and reading the set of bits in the random access memory in time-spaced read periods separated by reading idle periods, in each of which read periods one or more bits associated with a desired display are read from the random access memory, said display controller means being adapted for connection to said intensity control means of the display means to transmit the bits to said intensity control means to present the desired display stored in said random access memory; a microprocessor;
program means, communicating port means for connecting the signal means of the player-operated means to the microprocessor; said microprocessor having means for accessing said program means and means for reading from and writing to said random access memory to represent symbols in response to said signal means and said program means wherein the microprocessor in real time revises the symbols within the display; control means operatively coupling the random access memory to the microprocessor during said reading idle periods to change said random access memory between said read periods; means for reading bits associated with the desired display from the random access memory in parallel groups defined by a predetermined number of bits during each of the reading periods;
serializing means serially transmitting a parallel group of bits to the intensity control means; said means for reading from and writing to said random access memory including means for accessing the random access memory a parallel group of bits at a time whereby the microprocessor modifies digital bits in the random access memory a parallel group of bits at a time; shifting means operatively coupled to the microprocessor for receiving therefrom parallel groups of bits, and for shifting the bits of the parallel groups of bits a number of bit positions as determined by the microprocessor; and means for transferring the parallel groups of bits so shifted from the shifting means to the random access memory so that smooth appearing continuous movements of the symbols on the display is provided.
control means operatively coupling the random access memory to the microprocessor during said reading idle periods to change said random access memory between said read periods; interrupt signal means for generating a pair of interrupt signals which divides the screen into two parts, means for connecting the interrupt signal means to the microprocessor for transferring the pair of interrupt signals thereto so that digital bits of the random access memory representative of one part of the screen can be revised while digital bits of the random access memory representative of the other part of the screen are read to the intensity control means.
said microprocessor including interrupt port means connected to the interrupt signal means; and said microprocessor being responsive to said interrupt signal means for writing of bits associated with a symbol in the random access memory.
Priority Applications (2)
|Application Number||Priority Date||Filing Date||Title|
|Publication Number||Publication Date|
|CA1114054A true CA1114054A (en)||1981-12-08|
Family Applications (1)
|Application Number||Title||Priority Date||Filing Date|
|CA 266558 Expired CA1114054A (en)||1975-11-26||1976-11-25||Tv game apparatus|
Country Status (5)
|JP (1)||JPS5625156B2 (en)|
|CA (1)||CA1114054A (en)|
|DE (1)||DE2653859C2 (en)|
|FR (1)||FR2336737B1 (en)|
|GB (1)||GB1571291A (en)|
Families Citing this family (9)
|Publication number||Priority date||Publication date||Assignee||Title|
|US4165072A (en) *||1977-12-20||1979-08-21||Atari, Inc.||Method of operating a video game|
|US4296476A (en) *||1979-01-08||1981-10-20||Atari, Inc.||Data processing system with programmable graphics generator|
|US4324401A (en) *||1979-01-15||1982-04-13||Atari, Inc.||Method and system for generating moving objects on a video display screen|
|JPS6129753B2 (en) *||1980-06-19||1986-07-09||Nintendo Co Ltd|
|JPH028755B2 (en) *||1980-08-12||1990-02-27||Nintendo Co Ltd|
|EP0071690A1 (en) *||1981-08-10||1983-02-16||Firm MODEL RACING S.P.A.||Videoelectronic game between two players simulating a football match between two teams|
|GB2133257B (en) *||1982-12-22||1987-07-29||Ricoh Kk||T v game system|
|JPH0445757Y2 (en) *||1984-06-20||1992-10-27|
|DE4235039C2 (en) *||1992-10-17||1998-07-23||Adp Automaten Gmbh||Method and apparatus for determining the distance between a monitor of a coin-operated entertainment machines and one of its operating equipment|
Family Cites Families (2)
|Publication number||Priority date||Publication date||Assignee||Title|
|US3809395A (en) *||1972-09-28||1974-05-07||Magnavox Co||Television combat game|
|US4026555A (en) *||1975-03-12||1977-05-31||Alpex Computer Corporation||Television display control apparatus|
Also Published As
|Publication number||Publication date||Type|
|US6811491B1 (en)||Interactive video game controller adapter|
|US7003598B2 (en)||Remote control for providing interactive DVD navigation based on user response|
|US4998199A (en)||Game machine system with machine grouping feature|
|US7094147B2 (en)||Game system, puzzle game program, and storage medium having program stored therein|
|US7351148B1 (en)||Electronic sequence matching game and method of game play using same|
|US4093223A (en)||Electronic game apparatus and method|
|US4475172A (en)||Audio/visual home computer and game apparatus|
|US4589089A (en)||Computer-peripheral interface for a game apparatus|
|US4422105A (en)||Interactive system and method for the control of video playback devices|
|US6213875B1 (en)||Display for game and gaming machine|
|US6672963B1 (en)||Software implementation of a handheld video game hardware platform|
|US6071194A (en)||Reconfigurable video game controller|
|US4890833A (en)||Apparatus for generating enhanced interactive video game playfield environments|
|US4177462A (en)||Computer control of television receiver display|
|US5775993A (en)||Roulette gaming machine|
|US6402616B1 (en)||Entertainment system, supply medium, and manual control input device|
|US5649862A (en)||Video game apparatus, method and device for controlling same, and memory cartridge for video games|
|US5389950A (en)||Video game/flight simulator controller with single analog input to multiple discrete inputs|
|US4824121A (en)||Dart game with programmable displays|
|US20030087698A1 (en)||Video game system with data transmitting/receiving controller|
|US5791994A (en)||Video signal reproducing apparatus|
|US5949409A (en)||Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution|
|US5259626A (en)||Programmable video game controller|
|US6296570B1 (en)||Video game system and video game memory medium|
|US6857960B2 (en)||Video game device, background sound output method in video game, and readable storage medium storing background sound output program|