U.S. patent application number 12/559726 was filed with the patent office on 2010-03-18 for retroactive compatibility interactive system and method thereof.
Invention is credited to Seth A. Claussen.
Application Number | 20100069154 12/559726 |
Document ID | / |
Family ID | 42007716 |
Filed Date | 2010-03-18 |
United States Patent
Application |
20100069154 |
Kind Code |
A1 |
Claussen; Seth A. |
March 18, 2010 |
Retroactive Compatibility Interactive System and Method Thereof
Abstract
A controller in communicative connection with a receiver
configured to receive data only as a function of at least one
legacy input device, and method thereof are provided. The
controller includes at least one non-legacy input device, and a
retroactive compatibility device configured to translate data
received as a function of the at least one non-legacy input device,
such that the translated data is configured to be received by a
receiver configured to receive data as a function of the at least
one legacy input device.
Inventors: |
Claussen; Seth A.; (Winter
Park, FL) |
Correspondence
Address: |
PRICE HENEVELD COOPER DEWITT & LITTON, LLP
695 KENMOOR, S.E., P O BOX 2567
GRAND RAPIDS
MI
49501
US
|
Family ID: |
42007716 |
Appl. No.: |
12/559726 |
Filed: |
September 15, 2009 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61097086 |
Sep 15, 2008 |
|
|
|
Current U.S.
Class: |
463/37 |
Current CPC
Class: |
A63F 13/22 20140902;
A63F 13/02 20130101; A63F 2300/209 20130101; A63F 2300/1043
20130101; A63F 13/24 20140902 |
Class at
Publication: |
463/37 |
International
Class: |
A63F 9/24 20060101
A63F009/24 |
Claims
1. A controller in communicative connection with a receiver
configured to receive data only as a function of at least one
legacy input device, said controller comprising: at least one
non-legacy input device; and a retroactive compatibility device
configured to translate data received as a function of said at
least one non-legacy input device, such that said translated data
is configured to be received by a receiver configured to receive
data as a function of the at least one legacy input device.
2. The controller of claim 1, wherein said at least one non-legacy
input device comprises a joystick and a trackball.
3. The controller of claim 2 further comprising a selection wheel
configured to set a sensitivity of at least one of said joystick
and said trackball.
4. The controller of claim 1 being a video game controller, wherein
said receiver is a video game console.
5. The controller of claim 1, wherein said retroactive
compatibility device is configured to translate data using one of a
truncation filter, a division filter, and a pass-through.
6. The controller of claim 5, wherein said truncation filter is
configured to emulate data within tolerances received from the at
least one legacy input device.
7. The controller of claim 5, wherein said division filter is
configured to emulate data received from the legacy input devices,
wherein said emulated data exceeds tolerances received from the
legacy input devices.
8. A video game system comprising a video game controller in
communicative connection with a video game console configured to
receive data only as a function of at least one legacy input
device, said video game system comprising: at least one input
device; and a retroactive compatibility device that translates data
received as a function of said at least one input device, such that
said translated data is configured to be received by the video game
console that is configured to execute at least one software routine
intended to function with data other than said data received as a
function of said at least one input device.
9. The controller of claim 10, wherein said at least one input
device is a joystick and a trackball.
10. The controller of claim 10, wherein said retroactive
compatibility device is configured to translate data using one of a
truncation filter, a division filter, and a pass-through.
11. The controller of claim 10, wherein said truncation filter is
configured to emulate data within tolerances received from the
legacy input device.
12. The controller of claim 10, wherein said division filter is
configured to emulate data received from the legacy input devices,
wherein said emulated data exceeds tolerances received from the
legacy input devices.
13. A method of retroactive compatibility, such that a receiver
receives data as a function of at least one non-legacy input
device, wherein the receiver is configured to receive data only as
a function of at least one legacy input device, said method
comprising the steps of: receiving data from the at least one
non-legacy input device of a controller; translating data received
from the at least one non-legacy input device to be retroactively
compatible; and outputting said translated data from said
controller to the receiver.
14. The method of claim 13 further comprising the step of selecting
a filter method for translating said data received from the at
least one non-legacy input device.
15. The method of claim 13, wherein said step of translating data
further comprises: emulating data within tolerances received from
the at least one input device.
16. The method of claim 13, wherein said step of translating data
further comprises: emulating data received from the legacy input
devices, wherein said emulated data exceeds tolerances received
from the legacy input devices.
17. The method of claim 13, wherein said step of translating data
further comprises: passing-through said data received from the
non-legacy input device.
18. The method of claim 13, wherein said controller is a video game
controller, and the receiver is a video game console.
19. The method of claim 13, wherein the at least one non-legacy
input device comprises a joystick and a trackball.
20. The method of claim 19 further comprising the step of selecting
a sensitivity of at least one of said joystick and said trackball.
Description
CROSS REFERENCE TO RELATED APPLICATION
[0001] This application claims priority under 35 U.S.C.
.sctn.119(e) to U.S. Provisional Patent Application No. 61/097,086,
filed on Sep. 15, 2008, by Seth A. Claussen, the entire disclosure
of which is hereby incorporated herein by reference.
FIELD OF THE INVENTION
[0002] The present invention generally relates to a retroactive
compatibility interactive system and method thereof, and more
particularly, a video game system having a retroactive capability
device and method thereof.
BACKGROUND OF THE INVENTION
[0003] Generally, gaming and entertainment consoles provide
platforms for delivering content, such as movies, television
programming, or interactive games. Typically, gaming and
entertainment consoles have an inability to significantly expand
beyond an initial configuration after design and manufacture
thereof. Thus, any technological advances in graphics, sound, or
other processing hardware cannot be added to the gaming and
entertainment console after the consoles are initially designed,
manufactured, and sold. Once the console is made, the console is
generally not subject to any significant changes or updates, and a
user of such a console typically has to buy a new console in order
to take advantage of new technologies.
SUMMARY OF THE INVENTION
[0004] According to one aspect of the present invention, a
controller in communicative connection with a receiver configured
to receive data only as a function of at least one legacy input
device includes at least one non-legacy input device. The
controller further includes a retroactive compatibility device
configured to translate data received as a function of the at least
one non-legacy input device, such that the translated data is
configured to be received by a receiver configured to receive data
as a function of the at least one legacy input device.
[0005] According to another aspect of the present invention, a
video game system includes a video game controller in communicative
connection with a video game console configured to receive data
only as a function of at least one legacy input device. The video
game system includes at least one input device, and a retroactive
compatibility device that translates data received as a function of
the at least one input device, such that the translated data is
configured to be received by the video game console that is
configured to execute at least one software routine intended to
function with data other than the data received as a function of
the at least one input device.
[0006] According to yet another aspect of the present invention, a
method of retroactive compatibility, such that a receiver receives
data as a function of at least one non-legacy input device, wherein
the receiver is configured to receive data only as a function of at
least one legacy input device, includes the steps of receiving data
from the at least one non-legacy input device of a controller,
translating data received from the at least one non-legacy input
device to be retroactively compatible, and outputting the
translated data from the controller to the receiver.
[0007] These and other features, advantages and objects of the
present invention will be further understood and appreciated by
those skilled in the art by reference to the following
specification, claims and appended drawings.
DETAILED DESCRIPTION OF THE DRAWINGS
[0008] The present invention will now be described, by way of
example, with reference to the accompanying drawings, in which:
[0009] FIG. 1 is a top and back perspective view of a video game
controller, in accordance with one embodiment of the present
invention;
[0010] FIG. 2 is a top plan view of a video game controller, in
accordance with one embodiment of the present invention;
[0011] FIG. 3 is a bottom plan view of a video game controller, in
accordance with one embodiment of the present invention;
[0012] FIG. 4 is a front plan view of a video game controller, in
accordance with one embodiment of the present invention;
[0013] FIG. 5 is a block diagram of a video game controller
including a retroactive compatibility device, in accordance with
one embodiment of the present invention;
[0014] FIG. 6 is a flowchart illustrating data communication in a
retroactive compatibility interactive system that includes a
retroactive compatibility device, in accordance with one embodiment
of the present invention;
[0015] FIG. 7 is a flowchart illustrating data flow in a
retroactive compatibility interactive system that includes having a
retroactive compatibility device, in accordance with one another
embodiment of the present invention;
[0016] FIG. 8 is a flowchart illustrating data flow in a
retroactive compatibility interactive system that includes a
retroactive compatibility device, in accordance with one embodiment
of the present invention; and
[0017] FIG. 9 is a flowchart illustrating data flow in a
retroactive compatibility interactive system that includes having a
retroactive compatibility device, in accordance with one embodiment
of the present invention.
DETAILED DESCRIPTION
[0018] Before describing in detail embodiments that are in
accordance with the present invention, it should be observed that
the embodiments include combinations of method steps and apparatus
components related to a retroactive compatibility interactive
system and method thereof. Accordingly, the apparatus components
and method steps have been represented, where appropriate, by
conventional symbols in the drawings, showing only those specific
details that are pertinent to understanding the embodiments of the
present invention so as not to obscure the disclosure with details
that will be readily apparent to those of ordinary skill in the art
having the benefit of the description herein. Further, like
reference characters in the description and drawings represent like
elements.
[0019] In this document, relational terms, such as first and
second, top and bottom, and the like, may be used to distinguish
one entity or action from another entity or action, without
necessarily requiring or implying any actual such relationship or
order between such entities or actions. The terms "comprises,"
"comprising," or any other variation thereof, are intended to cover
a non-exclusive inclusion, such that a process, method, article, or
apparatus that comprises a list of elements does not include only
those elements but may include other elements not expressly listed
or inherent to such process, method, article, or apparatus. An
element proceeded by "comprises . . . a" does not, without more
constraints, preclude the existence of additional identical
elements in the process, method, article, or apparatus that
comprises the element.
[0020] In regards to FIGS. 1-5, a controller having at least one
non-legacy input device in communicative connection with a receiver
configured to receive data as a function of at least one legacy
input device is generally shown at reference identifier 10.
Typically, the controller 10 is a video game controller, as
described herein; however, it should be appreciated by those
skilled in the art that the controller 10 can be used in other
suitable systems. According to one embodiment, the receiver is
configured to receive data only as a function of at least one
legacy input device.
[0021] The video game controller 10 can be configured to function
with a receiver, such as, but not limited to, a video game console,
generally indicated at 12. The video game controller 10 can include
a plurality of input devices that have various affects with an
image displayed on an image device or display 14 (e.g., a
television screen, a computer screen, or the like) as a function of
the video game console 12, the audio being emitted by an audio
device 16 as a function of the video game console 12, or a
combination thereof, according to one embodiment. Thus, the video
game controller 10 and video game console 12 can be included in a
retroactive compatibility interactive system, such as, but not
limited to, a video game or entertainment system. The video game
controller 10 can also include the plurality of input devices
(e.g., first input device, second input device, . . . N.sup.th
input device), which can be used with any game being played in the
video game console 12, such that the video game controller 10
includes a retroactive compatibility device, generally indicated at
18, that communicates as described in greater detail herein.
[0022] According to one embodiment the plurality of input devices
(e.g., legacy input devices and non-legacy input devices) of the
video game controller 10 can include a D-pad 20, a joystick 22, a
trackball 24, an A-Button 26, a B-Button 28, a X-Button 30, a
Y-Button 32, a selection wheel 34, a bumper 36, a trigger 38, the
like, or combination thereof. For purposes of explanation and not
limitation, the at least one non-legacy input device can include a
joystick 22, a trackball 24, or a combination thereof. The video
game controller 10 can also include one or more rotary wheels 40
that control a sensitivity of the joystick 22 and/or the trackball
24, one or more light emitting diodes and/or image display devices
42, which can indicate the status of operating conditions of the
video game controller 10, one or more retroactive compatibility
selection devices 44, a menu selection button 46, the like, or a
combination thereof. Exemplary designs of the controller 10 are
illustrated in U.S. Design patent application Ser. No. 29/323,654
entitled "VIDEO GAME CONTROLLER," and U.S. Design patent
application Ser. No. 29/342,439 entitled "VIDEO GAME CONTROLLER,"
the entire disclosures of which are hereby incorporated herein by
reference.
[0023] In regards to FIG. 5, the video game controller 10 can
include the retroactive compatibility device 18 and the retroactive
compatibility selection device 44. According to one embodiment, the
retroactive compatibility device 18 is a device that is configured
to allow the video game controller 10 to function with a game that
is being played, via the video game console 12, wherein the game
was not designed (e.g., executable software utilized to play the
game) to function with one or more of the plurality of input
devices contained in the video game controller 10. By way of
explanation and not limitation, the video game controller 10 can
include legacy input devices, such that these devices are
recognized by the video game system 10, and the commands received
therefrom can pass-through the retroactive compatibility device 18,
whereas non-legacy input devices can be devices that are not
recognized by the video game console 12 and be filtered by the
retroactive compatibility device 18.
[0024] The retroactive compatibility device 18 can include a
controller 48 and a memory device 50 that stores one or more
executable software routines 52. Typically, the executable software
routine 52 are executed by the controller 48 in order for the
retroactive compatibility device 18 to function with the video game
console 12, such that the software routines 52 of the retroactive
compatibility device 18 are executed to analyze and/or convert the
signal received from one or more of the plurality of input devices
in order for the signal to be received and function with the
executable software of the game being played via the video game
console 12. According to an alternate embodiment, the retroactive
compatibility device 18 and compatibility selection device 44 can
be integrated with the video game console 12, an adapter in
communication between the controller 10 and the video game console
12, or a combination thereof.
[0025] In regards to FIGS. 1-6, a method of collecting data is
generally shown in FIG. 6 at reference identifier 100, according to
one embodiment. Generally, the method 100 is a translation matrix
for data, such that cursory devices (e.g., a mouse, the trackball
24, the joystick 22, other non-standard or non-legacy input
devices, or a combination thereof) can be employed while utilizing
current software that is not specifically designed for them.
Typically, the method 100 can be implemented by the one or more
executable software routines 52. The method 100 starts at step 102,
wherein data is inputted from at least one of the plurality of
input devices (e.g., an external source, such as a user), such as,
but not limited to, the D-pad 20, the joystick 22, the trackball
24, the A-Button 26, the B-Button 28, the X-Button 30, the Y-Button
32, the selection wheel 34, the bumper 36, the trigger 38, the
rotary wheel 40, the like, or combination thereof. The input data
can include a form of travel data, such as, but not limited to,
map-input coordinates or separate x and y variable data. According
to one embodiment, travel data can be map-input data that may be
conditioned with x and y standing alone rather than in an array
variable coordinate system (e.g., a one-by-two {x,y} matrix).
[0026] At decision step 104, it is determined which translation
method has been selected. According to one embodiment, at step 104,
the travel data may be conditioned (e.g., convert binary to
hexadecimal, a floating-point decimal to an integer, or the like,
wherein an overall value does not change) for software routine
purposes.
[0027] If it is determined at decision step 104 that a legacy
functionality translation has been selected, then the method 100
proceeds to step 106, wherein the data inputted from the input
device is morphed to mimic legacy devices or is nullified for
retroactive compatibility. According to one embodiment, the legacy
functionality translation step 106 is executed so that the data
being received from the video game controller 10 by the video game
console 12 from a standard controller (e.g., legacy device). By way
of explanation and not limitation, for cursory devices (e.g.,
legacy device) this is an x:n translation, while additional input
devices may be nullified entirely.
[0028] However, if it is determined at decision step 104 that a
compatibility and overdrive method has been selected, the method
100 proceeds to step 108, wherein data that is a function of the
movement or depression of the input devices is converted to be
similar to data that is a function of a standard controller (e.g.,
legacy device), but operates measurably outside legacy standards.
In such an embodiment, the data appears to the video game console
12 to be similar to that of a standard input, but may extend beyond
the typical boundaries of standard input. For purposes of
explanation and not limitation, for cursory devices, (e.g., legacy
device) this translation method performs an x/n calculation and
converts the data to a more meaningful state for video game
consoles 12. For other input devices (e.g., a non-legacy input
device) the input data can be reassigned a value from what standard
control already allows, rather than being nullified entirely,
according to one embodiment.
[0029] If it is determined at decision step 104 that a pass-through
translation method has been selected, the method 100 proceeds to
step 110, wherein data remains unmodified beyond any calculations
performed in the data pull and preparation (e.g., signal
processing). In such a step, the method sends the data received
from a data pull and preparation directly to collection, so that
the data is transmitted from the video game controller 10 to the
video game console 12, according to one embodiment.
[0030] According to one embodiment, the method 100 can include step
112, wherein data is collected and stored for output until a
time-to-live expires. Thus, data can be received from any of the
chosen steps 106, 108, 110, and any modulation, encoding, or other
calculations (e.g., truncation, preconfigured data reassignment, or
the like), so that the data is then stored until it is time to send
the data to an external source (i.e., video game console 12) or
until the data's time-to-live expires. According to one embodiment,
the time-to-live is a predetermined time period in which such data
will be stored, at which time if the data has not been transmitted
to an external device, such as, but not limited to, a video game
console 12, the data will be deleted. The data can then be
outputted from the video game controller 10 to an external device,
such as, but not limited to, a video game console 12 at step
114.
[0031] According to an alternate embodiment, with reference to
FIGS. 1-5 and 7, a method of collecting data is generally shown in
FIG. 7 at reference identifier 200. The method 200 starts at step
202, wherein an outside source sends binary map-travel data from a
device (e.g., data received as a function of movement of trackball
24). Typically, this data can be referred to as map-input. At step
204, a processor may send information through a digital logic
filter, such that this information can include, but is not limited
to, a timing modulation, map input sensitivity, map-input
compatibility mode, add-on compatibility mode, button/input device
configuration, the like, or a combination thereof. Such information
can be transmitted from the video game controller 10, remitted by
the video game controller 10, or a combination thereof. According
to one embodiment, the controller 48 executes the one or more
software routines 52 to perform steps 202 and 204, wherein the
processor 48 is internal to the retroactive compatibility device
18. However, it should be appreciated that the controller 48 or
other controller can be external to the retroactive compatibility
device 18.
[0032] At step 206, operations of input may work on a cyclical
basis, wherein the controller processor input (step 204) does not
provide a timing modulation to determine when to record readings
from the map-input (step 202). A resistor-capacitor circuit may be
used to provide a base for timing modulation at step 208, according
to one embodiment. In such an embodiment, at step 208, operations
of input may work on a cyclical basis, wherein a timing mechanism
tells an input processor when to record a reading from the x/y map
device (step 202), if need-be. This modulation can also determine
when to send an input signal to an interface of the video game
console 12, and when to clear that signal (e.g., reset the input to
an idle or zero state), should the input be stored in memory for
retrieval by the interface of the video game console 12. Typically,
the software program being run on the video game console 12 will
query or open itself up to information being sent by the controller
48 for input at certain intervals, while a filter process can take
queue from this query for timing purposes, such that data can be
collected as fast as the intervals being queried. However, it
should be appreciated by those skilled in the art that the method
200 can be implemented without a timing mechanism.
[0033] At step 210, input is received from a map device (step 202)
and timing indicator (step 208), wherein this data is translated
from raw data into data that the video game console 12 can use.
Thus, it is determined whether to pass the data on directly from
the map device (step 202), grab snapshot readings at intervals
determined by timing modulation (step 208), or grab a series of
readings based on either of the previous conditions and perform an
average to pass along.
[0034] At step 212, external hardware, such as, but not limited to,
the rotary wheel 40 allows the user to manually and instantaneously
provide a sensitivity factor to the map input (e.g., joystick 22,
trackball 24, the like, or a combination thereof). At step 216, a
user can control a switch that tells the digital logical filter
(e.g., the controller 48) which mode to use, and therefore, what
calculations if any to perform on the map-input data. The method
200 then proceeds to step 218, wherein the digital logic (e.g., the
video game console 12) receives the map input, and based upon the
compatibility mode selected by the user (step 216) or the
controller 48 (step 204), the information is sent through the
proper data filter.
[0035] When a compatibility mode is selected at decision step 218,
the method 200 can perform a sensitivity calculation at step 219.
At step 219, the map-input information passed along from step 210
is factorized based upon the sensitive data received at step 204,
step 212, or a combination thereof. According to one embodiment,
manual input (e.g., using the rotary wheel 40) takes precedence
over information sent from a master controller since the master
controller sensitivity can always be used exclusively by setting
the manual control to one hundred percent (100%) (x*1, wherein x is
map-input data), and the manual input can be adjusted without
setting the video game console 12 to an idle state (e.g., pausing
the game). If x equals map data and F equals sensitivity factor,
the manual factorization can include a range from ten percent (10%)
(F=0.1) to one thousand percent (1,000%) (F=10), so that x*F will
be passed onto other steps of the method 200, according to one
embodiment.
[0036] If the full compatibility mode filter is selected, then the
method 200 proceeds to step 217, wherein the filter takes the
map-input and translates it to data that exactly duplicates that
generated by a conditional analog stick, typically a +/- counter,
according to one embodiment. In such a mode the map-input may
rarely, if at all, differentiate from the map-data provided by an
aforementioned analog stick, such that the filter allows previous
games to function, but may not see the control benefits typically
provided by traditionally map-input devices. According to one
embodiment, this is a 1:1 translation, such that data from an
analog stick communicates data that the program translates into an
integer counter in the x-axis in a range from -10 to 10, while the
map-input sends a zero-capture and motion data in the form of
+356.24 dots from home. Typically, any value the map-input
generates is translated to an integer that falls into the
aforementioned range of the analog stick. For purposes of
explanation and not limitation, any value from approximately 50 to
149.99 is translated to a +1 counter, while any value over
approximately 950 becomes +10 (including 1001, 2,000, 10,000,
etc.). Thus, the method 200 generally does not receive any value
greater than what is traditionally sent by an analog stick, while
the video game controller 10 can have universal compatibility with
the video game console 12. In such an embodiment, any value
exceeding a given range-matrix (positively or negatively) can be
assigned a maximum positive or negative value allowable by a legacy
device.
[0037] When a compatibly and overdrive filter is selected, at
decision step 218, the method 200 proceeds to step 221, wherein the
filter takes the map-input, and converts it to a data-type similar
to what the traditional analog stick generates, for example, a +/31
counter is used by a traditional console game analog sticks.
However, the filter can generate counters that allow for finer
control and even exceed what is allowed by analog sticks, which
typically results in a control response that more closely resembles
typical mouse or trackball operation. According to one embodiment,
this filter will be less compatible with the video game console 12
than the compatible mode as described in step 217, but more so than
the compatibility mode described in step 220. Typically, step 221
is an A/B translation (e.g., 356.24/100=3.5624), such that the
traditional analog stick sends a signal to the video game console
12 that is translated into an integer from 0-10, wherein the number
must be a whole number, and due to the physical limitations of the
analog stick, can never exceed 10. According to one embodiment, in
this mode, the map-input data from the trackball 24 can be
translated into data that looks nearly the same as that sent by the
analog stick, can operate outside the typical boundaries, and can
go beyond the physical limitations of the analog stick by
generating counters that exceed ten, wherein this range would only
be limited by the sensitivity and speed of motion of the trackball
24. It should be appreciated by those skilled in the art that the
final number may be rounded for speed and process of efficiency,
but the overall impact of this estimation will be negligible, such
that the data can be rounded to an integer and generate a
substantially identical data-type to the analog stick, but with a
greater range.
[0038] If the method 200 proceeds to step 220, full control method
has been selected, such that no further calculations are performed
on the map-input data. Thus, the data is passed directly through,
which can include signal processing for communicating the data,
according to one embodiment. At step 222, the map-input data and
any timing-modulation data from the filter, whether steps 217, 220,
or 221 were implemented, is passed onto final collation. At
decision step 224, the method 200 collates data from the various
processes and communicates or sends the data onto the controller
48. The travel data or map-input data may be conditioned (e.g.,
convert binary to hexadecimal, a floating-point decimal to an
integer, or the like, wherein an overall value does not change) for
software routine purposes.
[0039] According to one embodiment, the method 200 can include step
226, wherein raw data that is created by additional buttons (e.g.,
the A-Button 226, the B-Button 28, the X-Button 30, the Y-Button
32, the selection wheel 34, the bumper 36, the trigger 38, the
like, or combination thereof) can be received. Additionally, at
step 228, the user can control a switch that tells the digital
logic filter which mode to use for the additional buttons and input
devices. At decision step 218, the digital logic (e.g., controller
48) receives the input from the additional buttons and devices, and
based upon the compatibility mode selected by the user (step 228)
or the controller 48 (step 204), the information is processed
and/or filtered accordingly.
[0040] At step 232, a filtering process includes all of the data
from the additional buttons and devices being nullified, so that
the data is not passed on to the controller processor. This can
result in all the additional buttons losing an effect, which allows
for compatibility and traditional field of legacy games. At step
234, according to one embodiment, the filtering process allows for
all the data from the additional buttons and devices to be
reassigned to various legacy functions. Instead of delivering no
response at all, this mode attempts to allow the additional buttons
to mimic legacy button functionality. If step 236 is implemented,
the filtering process allows all the data from the additional
buttons and devices to be passed directly through to allow
functionality as intended by the additional buttons. At step 238,
the compatibility passed-through allows the data from the selected
filter (steps 232, 234, 236) to pass onto final collation at step
224. At step 240 an output is emitted from the video game
controller 10 to the video game console 12. It should be
appreciated by those skilled in the art that the above circuitry
and/or executable software routines can be at least partially
included in the video game console 12 rather than the video game
controller 10. It should further be appreciated by those skilled in
the art that the video game controller 10 and video game console 12
can be other controller/console systems, wherein the inputs are
entered on the controller to connect an audio and/or video output
emitted by the console.
[0041] With respect to FIG. 8, a method of data flow in a digital
logic and video game controller having a retroactive compatibility
device is generally shown at reference identifier 850. The method
850 starts at step 852, wherein a filter method selection is
received. Typically, a user of the video game controller 10 inputs
the filter or compatibility method selection using one or more of
the compatibility selection device 44. At step 854, travel data can
be received/calculated. Such travel data is typically based upon
inputs by a user using one or more input devices on the video game
controller 10. Thus, data is received by a user activating one or
more non-legacy output devices.
[0042] The method 850 then proceeds to step 856, wherein the
selected filter method is performed on the travel data. Thus, the
data received as a function of the non-legacy input device is
translated to be retroactivity compatible. The data is then
outputted at step 858. Typically, the method 850 returns to step
852 forming a continuous loop, but it should be appreciated by
those skilled in the art that the method 850 can end after one or
more cycles, such as, but not limited to, when the power to the
video game controller 10 being turned off.
[0043] In regards to FIG. 9, a method for data flow in a digital
logic in a video game controller 10 having a retroactive
compatibility device 18 is generally shown at reference identifier
960. The method 960 starts at step 852, wherein a filter or
compatibility method selection is received. The method 960 then
proceeds to step 962, wherein coordinates of a cursory device are
requested. Typically, the coordinates of the cursory device (e.g.,
the non-legacy input device) are displayed on a screen, which is
not necessary, but can help visualize the process, and demonstrate
the coordinates system that makes filtration desirable. At step
964, a variable use for filtration is declared. Typically, a
sensitivity variable is initialized. The sensitivity variable
initialization may be changed dynamically by a user. Other
variables that may be declared are output variables that can be
passed to the video game console 12. At step 966 variable(s) are
initialized. Typically, the variables being initialized at step 966
are actual measurements of cursor moved over time. On the
coordinate system, these variables are found subtracting the last
known coordinate position for the current coordinate position, and
the difference is then multiplied by a sensitivity setting when one
is present. This calculation provides the "x" and "y" travel
distances that may be used both in and of themselves by the video
game controller 10, as set forth in later steps of the method
960.
[0044] The method 960 then proceeds to decision step 968. At
decision step 968, it is determined which filter method is
selected. If it is determined at decision step 968 that the
truncation filter method is selected, then the method 960 proceeds
to step 970, wherein the data passed to the application emulates
data that the application would normally receive from non-cursory
devices (e.g., legacy devices). Thus, if the travel data exceeds
parameters of the video game console's 12 normal input, the filter
can limit the output to within tolerances normally afforded by the
video game console 12. According to one embodiment, the truncation
filter is similar to the mode overdrive filter mode.
[0045] If it is determined at decision step 968 that the division
filter method is selected, the method 960 proceeds to step 972,
wherein the data is brought in line with the video game console's
12 normal input, such that data is emulated as-if received from a
legacy input device, wherein the encoded data exceeds tolerances
received from the legacy input devices. Thus, the division filter
method may not exceed a single digit, whereas, a pass-through
method data can reach two digits or three digits in length. This
results in the data from the division filter method being more
likely useable than the pass-through method but not as precise,
while being more precise in the truncation method, but not as
functional. Typically, the division filter can be similar to the
full compatibility mode.
[0046] If it is determined at decision step 968 that the
pass-through method is selected, then the method 960 proceeds to
step 974. At step 974, the data received passes directly through to
step 976. According to one embodiment, the pass-through method can
be a default method if the user does not select another filter
method. At step 976, data is outputted from the video game
controller 10 to the video game console 12. At step 978, current
coordinates can be passed to a global variable, wherein the global
variable can be used in the next iteration. Thus, the current
coordinates can become the "last known" coordinates the next time
the filter is initiated, such that these are placed after the
travel data has been calculated for a coordinate based cursory
device. The method 960 can then proceed to step 980 where the
thread is paused due to the speed of processing the above noted
steps. However, it should be appreciated by those skilled in the
art that the method 960 can be implemented without step 980.
[0047] Although the retroactive compatibility device 18 and
compatibility selection device 44 is illustrated and described as
being integrated with the controller 10, it should be appreciated
by those skilled in the art that the retroactive compatibility
device 18 and method 100, 200, 850, and 960 can be integrated
and/or implemented by the controller 10, the video game console 12,
an adapter in communicative connection between the controller 10
and the video game console 12, or a combination thereof. By way of
explanation and not limitation, methods 850 and 960 may be
implemented by the video game console 12.
[0048] According to one aspect, a video game system can include at
least one input device and a retroactivity compatibility device
that converts data received as a function of the at least one input
device, such that the converted data is configured to be received
by a video game console that is executing software routines not
intended for functioning with respect to the data received as a
function of the at least one input device.
[0049] According to one aspect, a method of retroactivity
compatibility includes the steps of receiving data from an input
device, and converting the received data to a format that can be
utilized with software routines that are not intended for
functioning with respect to the received data.
[0050] Advantageously, the video game controller 10 can include a
combination of at least two of the trackball 24, the D-pad 20, and
the joystick 22. Additionally, the video game controller 10
includes the retroactive compatibility device 18 that allows the
user of the video game controller 10 to utilize at least one input
device that the game being played on the video game console 12 was
not intended to be used, such that the video game controller 10 is
retroactively compatible. It should be appreciated by those skilled
in the art that additional advantages, alone or in combination with
the above advantages, may be present. It should further be
appreciated by those skilled in the art that the above described
components and method steps may be combined in alternative
combinations.
[0051] Modifications of the invention will occur to those skilled
in the art and to those who make or use the invention. Therefore,
it is understood that the embodiments shown in the drawings and
described above are merely for illustrative purposes and not
intended to limit the scope of the invention, which is defined by
the following claims as interpreted according to the principles of
patent law, including the doctrine of equivalents.
* * * * *