throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2010/0073283 A1
`Enright
`(43) Pub. Date:
`Mar. 25, 2010
`
`US 20100073283Al
`
`(54) CONTROLLER WITH USER-SELECTABLE
`DISCRETE BUTTON EMULATION
`
`(22) Filed:
`
`Sep. 19, 2008
`
`Publication Classi?cation
`
`(76) Inventor:
`
`Robert Enright, BrentWood, NY
`(Us)
`
`(51) Int CL
`G09G 5/00
`
`(2006.01)
`
`Correspondence Address:
`
`(52) US. Cl. ...................................................... .. 345/156
`
`BARKUME & ASSOCIATES, RC.
`20 GATEWAY LANE
`MANORVILLE, NY 11949 (US)
`
`(21) Appl, No.1
`
`12/233,803
`
`ABSTRACT
`
`57
`(
`)
`A user device With a position control device such as a thumb
`stick may be used to emulate discrete button presses via user
`selection of a mode sWitch on the device.
`
`I’ - _ _ _ — — _ T _ _ _ _ _ — — - - - - - - - - - - _ _ _ — — - - - - _ _ _ _
`
`i
`=
`i
`:
`:
`:
`E
`g
`i
`i
`:
`i
`A.‘ w; :
`PROCESSING
`"\ B i
`Posmo" COORD'NATE DATA
`5
`Asggggl'g“ A" I:
`i
`i
`:
`
`=
`:
`DISCRETE aunous A10
`: ®®®®
`i
`i
`5
`:
`
`—-
`
`l
`
`l
`
`I
`
`I
`
`'
`
`MODE swn'cu
`
`4
`
`'
`
`‘A
`posmggvféumm l___
`
`.
`
`A 6
`
`|
`
`'
`I
`'
`I
`-
`.
`=
`:
`:
`I.
`|
`'
`-
`:
`l ______________ _ _U_SER_D_El/IEE_ _____________ _ _-:(\ 2
`
`r - _ _ _ - - - - _ _ - - - _ _ _ - - _ _
`
`I
`
`I
`
`l
`
`|
`
`I
`I
`.
`I
`:
`'
`:
`L _ _ Poacouvurmc DEVICE
`
`|
`
`‘
`
`|
`|
`I
`:
`:
`l
`{A11
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000001
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 1 of 8
`
`US 2010/0073283 A1
`
`.3
`
`zo:<o_#E<
`
`s.<moo~E
`
`
`
`m4<zo_mzotamm._.mmom_o
`
`
`
`
`
`<._.<Om:.<z_omoouzo:._wo._
`
`
`
`
`
`mo_>mooz.Sn=2ou.50:
`
`
`
`—.mm:u_n_
`
`
`
`mzotammfimoma
`
`QQUQUQU
`
`
`
`.._om»zouzoEwoa
`
`wo_>mo
`
`PETITIONER VALVE CORPORATION, EX. 1003
`
`p.000002
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000002
`
`
`
`
`
`
`
`

`
`Patent Application Publication Mar. 25, 2010 Sheet 2 of 8
`
`US 2010/0073283 A1
`
`__._.__..._....
`
`._.—.._...____
`
`.3
`
`Ezfiwmooma_
`
`55.005._zo_»<u:%_<
`
`._<zo_mmoo:
`
`
`
`<55m»<z_amoouzoEmo._
`
`
`
`
`
`m._<zo_mzo._..5mmpmmoma
`
`
`
`
`
`a7:».mosmoozE.Es_ooBo:
`
`Nmane:
`
`
`
`mzotbmw.E¢um_o
`
`°@®OU
`
`
`
`4om._.zouzo_.:mo._
`
`mo_>mo
`
`PETITIONER VALVE CORPORATION, EX. 1003
`
`p.000003
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000003
`
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 3 0f 8
`
`US 2010/0073283 Al
`
`_
`
`.
`
`u n -
`
`. (I
`
`_ 20:53am‘.
`_ 2560mm
`
`
`
`
`
`" wzawwuoE 5:26 woos
`
`
`
`n 3/\ wzotnm wEmumE
`
`u @9 6 m0
`
`N MKDUE
`
`
`
`(w. .muSmn $5285.
`
`_. |||||||||||||||||||||||||||||||||||||||||||||| | |
`
`_ muSma
`
`. .6158 2250“.
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000004
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 4 0f 8
`
`US 2010/0073283 A1
`
`FIGURE 4
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000005
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 5 0f 8
`
`US 2010/0073283 A1
`
`FIGURE 5
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000006
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 6 0f 8
`
`US 2010/0073283 A1
`
`FIGURE 6
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000007
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 7 0f 8
`
`US 2010/0073283 A1
`
`46
`
`FIGURE 7A
`
`52
`
`46
`
`FIGURE 78
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000008
`
`

`
`Patent Application Publication
`
`Mar. 25, 2010 Sheet 8 0f 8
`
`US 2010/0073283 A1
`
`EXISTING SOFTWARE
`MANAGES INPUT TO AND
`OUTPUT FROM INPUT
`DEVICE
`
`A80
`
`INPUT: POSITIONAL
`COORDINATE DATA
`AND MODE SIGNAL
`FROM INPUT DEVICE
`
`IS
`MODE SWITCH
`PRESSED
`7
`
`OUTPUT NEUTRAL
`POSITION COORDINATE
`DATA FOR
`ASSOCIATED
`POSITIONAL POINTER
`
`USE POSITION COORDINATE
`DATA INPUT TO DETERMINE
`THE POSITION OF THE
`POINTER
`
`A90
`
`DETERMINE WHICH
`PREDEFINED REGION THE
`POSITIONAL POINTER
`RESIDES IN
`
`OUTPUT THE VALUE
`OF THE BUTTON
`ASSOCIATED WITH
`THAT REGION
`
`FIGURE8
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000009
`
`

`
`US 2010/0073283 A1
`
`Mar. 25, 2010
`
`CONTROLLER WITH USER-SELEC TABLE
`DISCRETE BUTTON EMULATION
`
`could be activated by sWeeping the position control pointer
`through multiple sections as de?ned by the application.
`
`TECHNICAL FIELD
`
`DISCLOSURE OF THE INVENTION
`
`[0001] This invention relates to input controller devices
`such as video game controllers and the like, and in particular
`to a system and method for implementing a user-selectable
`button emulation mode Wherein the position data from a
`thumbstick or the like may be interpreted as presses of a
`discrete button.
`
`BACKGROUND OF THE INVENTION
`
`[0002] As electronic devices become more complex, With a
`growing list of functions, the associated user input devices
`have become more complex and harder to use. Looking for
`the correct button to implement a desired function has
`become a dif?cult task, and When coupled With a need for
`speedy inputs (such as gaming), it has become an intimidating
`task for the user to move their ?nger from one button to next
`desired button. In addition, video equipment such as playback
`devices and set-top boxes have controllers that are clogged
`With small buttons placed close together, making it dif?cult to
`?nd and press only the desired button.
`[0003] In addition, in the video gaming ?eld, game control
`lers such as an XBOX360 controller include a position con
`trol device, such as a thumbstick, that enables the user to
`direct the gaming application to move a character in a desired
`direction or to control a camera vieW angle. The user normally
`Will manipulate the thumbstick as desired during game play,
`but then may need to depress one or more of several available
`discrete buttons in order to perform additional desired func
`tions, such as having the character jump or kick. Moving the
`?nger from the thumbstick to a button on the controller and
`then back to the thumbstick is a dif?cult task for many users,
`especially novice users.
`[0004] In addition, many applications such as video games
`Will require the user to select tWo buttons at the same time in
`order to generate a certain function. That is, in order to gen
`erate a ?rst function the user must press button X, in order to
`generate a second function the user must press buttonY, and
`in order to generate a third function the user must press
`buttons X andY simultaneously. This is also a dif?cult task
`for many users, especially since it requires taking the ?nger
`off of the thumbstick and positioning the thumb over the
`control button Without looking aWay from the game display.
`[0005] It is therefore desired to provide a user-operated
`controller device that can alloW a user to easily select discrete
`button commands on the controller Without looking at the
`buttons or having to move his ?nger off of the thumbstick or
`other type of position control device.
`[0006] It is also desired to provide a user-operated control
`ler device that can alloW a user to easily select button com
`mands on the controller that Would otherWise require simul
`taneous selection of more than one button.
`[0007] It is further desired to provide a user-operated con
`troller device that can alloW a user to easily select additional
`button commands on the controller in addition to those
`assigned to existing buttons on the controller (i.e. to provide
`neW additional options).
`[0008] It is also desired to assist memoriZation of com
`mands for in-game actions by relating those actions to spe
`ci?c pointer/thumb movements. For example, sWinging a bat
`
`[0009] The present invention accomplishes these obj ec
`tives by selectively using the positional data from a position
`control device (such as a thumbstick) to mimic or emulate
`existing physical input buttons or to add functionality Without
`having to provide additional buttons. Positional data, typi
`cally X and Y coordinates, are used to de?ne a point on a
`plane. Multiple X,Y data sets are typically used to determine
`movement of that point on the plane de?ned by the physical
`movement range of the X-Y input device. These movement
`data sets are then output to the controlled device (such as a
`gaming console or a personal computer).
`[0010] This invention Will alloW the plane de?ned by the
`movement area of the position control input devices to be
`divided logically into various regions, and to assign a unique
`output value to each section. If the physical movement range
`of the X-Y input device de?nes a circular plane, then multiple
`Wedge-shaped regions of that circular plane Would be de?ned
`by their X,Y values. The present invention reinterprets X,Y
`input data to determine Which assigned discrete button value
`should be output to the controlled device.
`[0011] Thus, by de?ning regions of the plane as discrete
`buttons, the need to remove a ?nger from one button and
`move it to the next is eliminated. If desired, the cost and siZe
`of the input device can also be reduced With the elimination of
`each button that is noW assigned to a section of the plane
`de?ned by the X-Y input devices physical movement range.
`[0012] The user is able to select betWeen a position mode,
`for Which the positional data from the position control device
`is interpreted as position data as in the prior art, and a discrete
`mode, for Which the positional data from the position control
`device is interpreted as discrete button press information as
`described herein.
`[0013] Accordingly, the present invention in a ?rst embodi
`ment is a device that includes a housing and a user-control
`lable mode sWitch connected to the housing enabling a user to
`select a position mode or a discrete mode. A position control
`device (such as a thumbstick or trackball) is also connected to
`the housing, and it is manipulatable by a user to provide
`position coordinate data that varies in accordance With a
`position of the position control device (such as X-Y coordi
`nate data). Processing circuitry is coupled to the mode sWitch
`and the position control device, and is adapted to determine if
`a user has selected the position mode or the discrete mode.
`When the mode sWitch is in the position mode, the position
`coordinate data is output as a function of the position of the
`position control device. When the mode sWitch is in the
`discrete mode, at least one discrete signal may be output as a
`function of the position of the position control device.
`[0014] The position control device may be adapted to track
`manipulation thereof by a user over a prede?ned coverage
`area, Wherein the coverage area is logically divided into a
`plurality of regions, and Wherein each discrete signal is asso
`ciated With one of the regions, such that manipulation of the
`position control device into a region Will cause the processing
`circuitry to output the discrete signal associated With that
`region When the mode sWitch is in the discrete mode. The
`output of a discrete signal may emulate a single button selec
`tion by the user, or it may emulate a dual button selection by
`the user, or any other function as de?ned by the application
`program.
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000010
`
`

`
`US 2010/0073283 A1
`
`Mar. 25, 2010
`
`[0015] A plurality of buttons may also be connected to the
`housing and coupled to the processing circuitry, Wherein
`selection by the user of a button Will cause the processing
`circuitry to output a discrete signal associated With that but
`ton, and further When the mode sWitch is in the discrete mode,
`a discrete signal output by the processing circuitry as a func
`tion of the position of the position control device emulates the
`selection by the user of an associated button. The housing
`may be a user input or control device such as, but not limited
`to, a video game controller, a computer mouse, or a gyro
`scopic control device.
`[0016] In a second embodiment of the invention, a system is
`provided that includes a user device and a host computing
`device interconnectable With the user device. The user device
`includes a housing, a user-controllable mode sWitch con
`nected to the housing, and a position control device connected
`to the housing. The mode sWitch outputs a mode signal that
`indicates if a user has selected a position mode or a discrete
`mode. The position control device is manipulatable by a user
`to provide position coordinate data that varies in accordance
`With a position of the position control device. The user device
`also has means for transmitting the mode signal and the
`position coordinate data to a host computing device, Which
`may for example be a Wireless or a Wired connection. The host
`computing device includes means for receiving the mode
`signal and the position coordinate data from the user device,
`and processing circuitry that is adapted to determine ifa user
`has selected the position mode or the discrete mode based on
`the mode signal. When the mode signal indicates that the
`mode sWitch is in the position mode, then the position coor
`dinate data is processed as a function of the position of the
`position control device. When, hoWever, the mode signal
`indicates that the mode sWitch is in the discrete mode, then the
`position coordinate data is processed as at least one discrete
`signal as a function of the position of the position control
`device.
`[0017] In a third embodiment of the invention, an integrated
`hand-holdable computing system is provided, that includes a
`housing, a user-controllable mode sWitch connected to the
`housing, a position control device connected to the housing,
`and processing circuitry. Optionally a display and/ or speakers
`are provided. The mode sWitch outputs a mode signal that
`indicates if a user has selected a position mode or a discrete
`mode. The position control device is manipulatable by a user
`to provide position coordinate data that varies in accordance
`With a position of the position control device. The processing
`circuitry is adapted to determine if a user has selected the
`position mode or the discrete mode based on the mode signal.
`When the mode signal indicates that the mode sWitch is in the
`position mode, then the position coordinate data is processed
`as a function of the position of the position control device.
`When, hoWever, the mode signal indicates that the mode
`sWitch is in the discrete mode, then the position coordinate
`data is processed as at least one discrete signal as a function of
`the position of the position control device.
`[0018] Provided also is a method of operating a device by
`enabling a user to operate a mode sWitch in order to select a
`position mode or a discrete mode, enabling the user to
`manipulate a position control device to provide position coor
`dinate data that varies in accordance With a position of the
`position control device, and determining if the mode sWitch is
`in the position mode or the discrete mode. If the mode sWitch
`is in the position mode, then the position coordinate data is
`processed as a function of the position of the position control
`
`device, but if the mode sWitch is in the discrete mode, then at
`least one discrete signal is processed as a function of the
`position of the position control device.
`
`BRIEF DESCRIPTION OF THE DRAWING
`
`[0019] FIG. 1 is a block diagram of a ?rst embodiment of
`the present invention Which is implemented completely in a
`controller device that is separate from a host device.
`[0020] FIG. 2 is a block diagram of a second embodiment
`of the present invention Which is implemented in a combina
`tion controller device and a separate host device.
`[0021] FIG. 3 is a block diagram of a third embodiment of
`the present invention Which is implemented in an integrated
`hand-holdable computing system.
`[0022] FIG. 4 shoWs an exemplary user device that may be
`utiliZed in accordance With the present invention.
`[0023] FIG. 5 illustrates the underside of the housing of the
`user device of FIG. 4.
`[0024] FIG. 6 illustrates the housing of the user device of
`FIG. 4, With the thumbstick controller partially removed to
`illustrate the operation of the thumbstick.
`[0025] FIG. 7A illustrates implementation of a four-region
`position control device, and FIG. 7B illustrates implementa
`tion of an eight-region position control device.
`[0026] FIG. 8 illustrates a ?owchart of the operation of the
`present invention.
`
`BEST MODE FOR CARRYING OUT THE
`INVENTION
`
`[0027] The present invention may be implemented in at
`least any of the three embodiments that Will noW be described
`With reference to the Figures. FIG. 1 is a block diagram of a
`?rst embodiment of the present invention Which is imple
`mented completely in a user controller device 2 that is sepa
`rate from a host computing device 12. For example, the user
`device 2 may be a video game controller (Wired or Wireless)
`and the host computing device 12 may be a gaming console
`such as an XBOX3 60 or a personal computer. The user device
`2 includes a housing that has a user-controllable mode sWitch
`4 and a position control device 6 (such as a thumbstick)
`connected thereto, for example at least partially on the outside
`of the housing so as to give a user access to control of these
`devices. Processing circuitry 8 and supporting memory reside
`in the housing, and are coupled to the mode sWitch 4 and the
`position control device 6. Optionally, a set of discrete buttons
`10 (including for example, the X, Y, A and B buttons) are also
`provided on the housing. Other user control devices such as
`triggers, D-pads, and additions thumbsticks may be provided
`as knoWn in the art.
`[0028] The mode sWitch 4 is preferably a tWo-position
`sWitch that may be selectively set to either a position mode or
`a discrete mode by the user during operation. For example,
`the mode sWitch may be a momentary sWitch that is normally
`biased in the position mode, but Which is then momentarily
`set to the discrete mode by the user When desired. One of the
`functions of the processing circuitry, as Will be further
`described herein, is to detect if the mode sWitch 4 is in the
`position mode or the discrete mode. When the processing
`circuitry detects the position mode, it Will cause the position
`coordinate data generated by the position control device (eg
`the X-Y data) to be transmitted to the host computing device
`12 and processed by the application program 14 in a normal
`prior art manner. Thus, in the case Wherein the host comput
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000011
`
`

`
`US 2010/0073283 A1
`
`Mar. 25, 2010
`
`ing device 12 is a gaming console such as an XBOX360, and
`the user device 2 is an XBOX360 controller adapted in accor
`dance With this invention, then the user device Will send the
`X-Y data as generated by the position control device (thumb
`stick) 6 as knoWn in the art. When, hoWever, the user selects
`the discrete mode by operating the mode sWitch 4, then the
`processing circuitry Will analyZe the position coordinate data
`from the thumbstick 6 in accordance With this invention, and
`as a result output various discrete (button) signals to the host
`computing device 12. This particular methodology Will be
`described further beloW. When the user re-selects the position
`mode (such as by letting go of the mode sWitch 4 if it is biased
`to return to the position mode), then the position control data
`Will resume being transmitted to the host computing device as
`in the prior art. In this embodiment of the invention, the
`processing and intelligence of the invention resides in the user
`device 2, and the host computing device is unaWare as to hoW
`the various button press signals are generated. Thus, the user
`device 2 of this ?rst embodiment may be used to retro?t
`existing game consoles and the like Without requiring adap
`tation to the console or gaming softWare executing thereon.
`[0029] FIG. 2 is a block diagram of a second embodiment
`of the present invention Which is implemented in a combina
`tion controller device and a separate host device. Here, the
`processing and intelligence to ascertain if the position control
`data should be interpreted as position control data or as button
`presses Will reside in the host computing device 12. In FIG. 2,
`the processing circuitry of the user device 2 is shoWn as
`omitted for purposes of this invention, although it is under
`stood that some processing circuitry Will exist in the user
`device 2 as knoWn in the art. In this case, the mode signal from
`the mode sWitch 4 is transmitted along With the position
`coordinate data (and optional discrete data from additional
`hardWired buttons if desired) directly to the processing and
`application program 16 of the host computing device 12.
`Here, the transmitting means may be any knoW device such as
`a USB transmitter, bluetooth transmitter etc., and the receiv
`ing means in the host computing device may be any knoWn
`compatible device such as a USB receiver, bluetooth receiver,
`etc. The determination of hoW to process the position coordi
`nate date (i.e. as position coordinate data or as discrete button
`presses) Will be made by the processing and application pro
`gram 16. Thus, the invention in this embodiment is distributed
`amongst the user device 2 and the host computing device 12.
`It is noted that the application program itself (such as a video
`game program) may provide the analysis of the signal infor
`mation from the user device 2, or the host operating system
`may be programmed accordingly and control the game soft
`Ware if desired.
`[0030] FIG. 3 is a block diagram of a third embodiment of
`the present invention Which is implemented in an integrated
`hand-holdable computing system 22, such as a SONY PSP
`device. In this case, all functionality of the invention as
`described herein resides in the same hand-holdable housing.
`[0031] Referring back to the ?rst embodiment, further
`details of the present invention are noW provided. FIG. 4
`shoWs an exemplary user device 2 that may be utiliZed in
`accordance With the present invention. Hand-holdable hous
`ing 24 is knoWn in the art and is easily held by a user. The
`housing 24 contains at least one position control device,
`Which in this example is the right-thumb thumbstick 26. Also
`shoWn in the housing 24 is a D-pad 28, a second (left-thumb)
`thumbstick 30, and a set of discrete buttons Which include the
`X, Y, A and B buttons 25. The operation of this invention may
`
`provide for the thumbstick 26 to emulate the pressing of any
`or all of the buttons 25 alone or in selected combination, or it
`may emulate additional button presses of buttons not other
`Wise provided on the housing. This top side of the housing 24
`Will appear to the user as any conventional game controller
`device as knoWn in the art.
`[0032] FIG. 5 illustrates the underside of the housing 24,
`With a ?rst mode sWitch 32 and a second mode sWitch 34
`provided. These have been added in accordance With the
`present invention and are not found in controllers of the prior
`art. TWo mode sWitches 32, 34 are shoWn, although only one
`such mode sWitch is required for this invention. The device
`may be con?gured such that either of the mode sWitches 32,
`34 Will change the mode of the thumbstick 26 in accordance
`With this invention. This Will accommodate left-handed as
`Well as right-handed users as desired. Or, if desired, one mode
`sWitch may operate in conjunction With the thumbstick 26
`and the other may operate in conjunction With the thumbstick
`30. Of course, it may be desired to provide only of these mode
`sWitches 32 or 34. For purposes of explanation We Will refer
`to the mode sWitch 32 but the invention applies equally to the
`use of mode sWitch 34. In addition, these mode sWitches are
`shoWn in FIG. 5 on the underside since they Will reside near
`the user’s ?nger(s), Which makes for easy operation of the
`invention. That is, the user naturally grasps the housing 24
`such that one hand curls around the left grip 35 and the other
`hand curls around the right grip 33, making placement near
`the mode sWitches 32, 34 optimal. It is noted that the sWitches
`may be located elseWhere on the housing if ergonomically
`desired.
`[0033] FIG. 6 illustrates the housing 24 of FIG. 4, With the
`cap of thumbstick controllers 26 and 30 partially removed to
`illustrate the operation of the thumbstick. As can be seen, the
`thumbstick may be manipulated in tWo degrees of freedom,
`that is, in the X-Y plane. In the position mode (the normal
`prior art mode), the manipulation of the thumbstick by the
`user Will provide a set of X-Y coordinates that indicate the
`relative location of the thumbstick. So, if the user is control
`ling the movement of a character in a video game With the
`thumb stick, he may push the thumbstick all the Way to the left
`to get the character to go the left. Similarly, he may have the
`character go partially to the left and partially forWard by
`moving the thumbstick accordingly. Thumbstick technolo
`gies (or any position control technology) are Well knoWn the
`art and need not be discussed further herein; suf?ce it to state
`that X-Y coordinate data is generated by movement of the
`thumbstick from the center (quiescent or null) position.
`[0034] When the user selects the mode sWitch 32 to be in
`the discrete mode, hoWever, then the processing circuitry Will
`interpret the position control data (the X-Y data) from the
`thumbstick to generate discrete signals indicative of associ
`ated button presses. FIGS. 7A and 7B illustrate the coverage
`area of the thumbstick in this embodiment. In this case, the
`area is logically divided into four regions (FIG. 7A) or into
`eight regions (FIG. 7B). In both instances an additional null
`region 56 is provided in the center. Referring to FIG. 7A,
`When the user manipulates the thumbstick to be anyWhere in
`region 40, then a discrete signal is generated by the process
`ing circuitry 8 to indicate an associated button press by the
`user. In this embodiment, region 40 Will cause the processing
`circuitry to signal that button A has been pressed by the user.
`LikeWise, When the user manipulates the thumbstick to be
`anyWhere in region 42, then a discrete signal is generated by
`the processing circuitry 8 to indicate that associated button
`
`PETITIONER VALVE CORPORATION, Ex. 1003
`
`p. 000012
`
`

`
`US 2010/0073283 A1
`
`Mar. 25, 2010
`
`press B has been made by the user; when the user manipulates
`the thumbstick to be anywhere in region 44, then a discrete
`signal is generated by the processing circuitry 8 to indicate
`that associated button press Y has been made by the user; and
`when the user manipulates the thumb stick to be anywhere in
`region 46, then a discrete signal is generated by the process
`ing circuitry 8 to indicate that associated button press X has
`been made by the user.
`[0035] So, when in the discrete mode, the user device 2 will
`output discrete button signals to the host device 12 whether
`they were generated by actually pressing the button on the
`housing or by manipulating the thumbstick as described
`above. The application program 14 running in the host com
`puting device 12 is unaware of how the button presses were
`made by the user and operates on them regardless of their
`origin. By using the discrete mode of the present invention,
`the user may quickly depress the mode switch 32, 34 when he
`or she desires to emulate a button press of X,Y, A or B without
`having to move his thumb off of the thumbstick, and then
`return to normal by releasing the mode switch when desired.
`[0036] In the alternative to emulating button presses of
`pre-existing buttons X, Y, A and B (or others on the housing),
`the present invention may be useful to emulate button presses
`of new buttons that have no hardware equivalent. That is, the
`application software may bene?t from additional button
`presses without having to add buttons to the housing. So, ifa
`housing has ten buttons in hardware, the application software
`may be adapted to accept fourteen buttons, which would be
`the ten existing hardware buttons and the four new emulation
`buttons from implementing the present invention. For
`example, as shown in FIG. 6, region B9 will cause buttonY to
`be emulated. Likewise, region B10 will cause buttonA to be
`emulated, region B11 will cause button X to be emulated, and
`region B12 will cause button B to be emulated. In the same
`manner, regions B5, B6, B7 and B8 in thumbstick 30 will
`optionally be associated with other discrete buttons for the
`device.
`[0037] This invention is not limited to emulation of four
`buttons, and may be extended further. As shown in FIG. 7B,
`the coverage area of the thumbstick may be logically divided
`into eight distinct regions 40, 42, 44, 46, 48, 50, 52, and 54, as
`well as null region 56 in the center. In this example, the
`processing circuitry is programmed to output discrete button
`signals for both buttons A and B when region 48 is entered.
`This is useful for the situation where a user needs to make a
`dual-button press, such as by pressing A and B simulta
`neously the character will jump and kick. This can be an
`especially dif?cult move to make, and by allowing the user to
`select the discrete mode, and then manipulate the thumb stick
`into region 48, this otherwise dif?cult move is made much
`easier to implement. The same is true for region 50 (B andY
`presses emulated), region 52 (X andY presses emulated), and
`region 54 (A and X presses emulated). Likewise, any of these
`eight regions may be logically associated with any existing
`button or combination of buttons on the controller, or they
`may emulate additional buttons if desired.
`[0038] The null region 56 is provided for a quiescent posi
`tion in which no button press is emulated and thus no discrete
`signals are generated by the processing circuitry 8. When the
`thumbstick is in the middle quiescent position, it will reside
`over the null region, and no signals are generated. Once the
`user manipulates the thumbstick into the desired region, how
`
`ever, a predetermined threshold is reached and the corre
`sponding button press(s) will be generated as described
`above.
`[0039] The present invention may operate optionally in a
`single press mode or in a repeat press mode. In the single press
`mode, the user manipulates the thumbstick into the desired
`region to generate the desired button press, and must exit that
`region (either to the null region or another button region) and
`then return to generate another of the same button press. In the
`alternative, in the repeat press mode, a timer function is used
`to determine if the thumb stick remains in the region for more
`than a prede?ned time. If the thumbstick remains in that
`region then successive button presses are generated by the
`processing circuitry until the user manipulates the thumb stick
`to another region or to the null region 56. This is similar to a
`repeat mode of a keypad wherein holding a certain key down
`will cause successive key entries until released.
`[0040] Various types of position control devices 6 may be
`used with this invention. There exist various types of thumb
`stick or joystick controllers, both of the analog and digital
`type, that are useful in this invention. One example of an
`analog joystick uses a magnet, along with four small sensors.
`The sensors are arranged like a compass, with one at each of
`the cardinal points (north, south, east, west). The base of the
`joystick is shaped like a ball, with tiny spokes radiating out.
`The ball sits in a socket above the sensors. Spikes on the
`socket ?t between the spokes on the ball. This allows for
`movement without letting the joystick twist out of alignment
`with the sensors. As the joystick is moved, the magnet in the
`base moves closer to one or two of the sensors, and farther
`from the others. The processing circuitry monitors the
`changes in induction caused by the magnet’s movement to
`calculate the position of the joystick.
`[0041] In another type of analog joystick, two wheels are
`positioned at right angles to each other below the joystick.
`Whenever the joystick is moved, the two wheels turn slightly.
`Tiny slots are arranged around the perimeter of each wheel.
`The wheels are each mounted between an LED (Light Emit
`ting Diode) and a photocell. Light from the LED, shining
`through the slots in the wheel on the cell, creates a small
`amount of current. When the amount of light changes, the
`level of current changes. By monitoring the output of each
`photo cell, the processing circuitry can determine the exact
`angle at which the joystick is being held.
`[0042] In a further type of analog joystick, two potentiom
`eters are positioned at right angles to each other below the
`joystick. Current ?ows constantly through each one, but the
`amount of current is determined by the amount of resistance.
`Resistance is increased or decreased based on the position of
`the joystick

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket