Title:
Gaming System Peripherals With Automatic System Configuration
Kind Code:
A1


Abstract:
Embodiments described herein include a method comprising: adding a gaming machine peripheral to a gaming machine including selecting a gaming machine peripheral to be added, wherein the selected gaming machine peripheral appears as a virtual peripheral on the gaming machine so that the gaming machine is not aware of the physical location of the peripheral device.



Inventors:
Brewer, Christopher (Bloomington, IL)
Hamlin, Vernon W. (Lisle, IL, US)
O'byrne, Joseph (Henderson, NV, US)
Smith, Jason A. (Vernon Hills, IL, US)
Velu, Muthu (Addison, IL, US)
Application Number:
12/095886
Publication Date:
11/27/2008
Filing Date:
12/01/2006
Primary Class:
International Classes:
A63F9/24
View Patent Images:
Related US Applications:
20100075747Player Club Ladder Method For Casino GamingMarch, 2010Hein
20040242300Revealed indicia game method and deviceDecember, 2004Nicely et al.
20070060363Distributed game servicesMarch, 2007Nguyen et al.
20090298594MEDIA/TAG-BASED WORD GAMESDecember, 2009Pueyo et al.
20050164759Electronic gaming machine with architecture supporting a virtual dealer and virtual cardsJuly, 2005Smith et al.
20070293324Slot track management systemDecember, 2007Tyler
20080064467Methods and system for game playability and expectation wager payoutMarch, 2008Reiner
20050014546Mahjong game machine and control program for the sameJanuary, 2005Nara
20070243926Automatically adapting virtual equipment modelOctober, 2007Cheng
20080311981Wagering Game That Allows Player to Alter Payouts Based on Equity PositionDecember, 2008Schugar
20010053713Scan poker CD gameDecember, 2001Schultz



Primary Examiner:
GRAY, BRANDON RAMON
Attorney, Agent or Firm:
SCHWEGMAN, LUNDBERG & WOESSNER/WMS GAMING (P.O. BOX 2938, MINNEAPOLIS, MN, 55402, US)
Claims:
1. A method comprising: adding a gaming machine peripheral to a gaming machine including selecting a gaming machine peripheral to be added, wherein the selected gaming machine peripheral appears as a virtual peripheral on the gaming machine so that the gaming machine is not aware of the physical location of the peripheral device.

2. A method according to claim 1 further including the gaming machine communicating with the peripheral using at least one network message.

3. A method according to claim 2 further wherein the message is sent to the peripheral device across a network or a messaging path in the gaming machine.

4. The method of claim 1, wherein the gaming machine peripheral is selected from the group including a display device, a printer device, a mechanical reel, a video reel display, a coin acceptor, a bill acceptor, an auxiliary memory unit, a player card acceptor and a credit card acceptor.

5. 5.-7. (canceled)

8. An apparatus comprising: a gaming machine; a gaming machine peripheral that appears as a virtual peripheral on the gaming machine so that the gaming machine is not aware of the physical location of the peripheral device.

9. The apparatus according to claim 8 further including a message adapted to communicate with the peripheral.

10. The apparatus according to claim 9 further wherein the message is conveyed on a network and is received by the peripheral device.

11. The apparatus of claim 8, wherein the gaming machine peripheral is selected from the group including a display device, a printer device, a mechanical reel, a video reel display, a coin acceptor, a bill acceptor, an auxiliary memory unit, a player card acceptor or a credit card acceptor.

12. 12.-16. (canceled)

17. A system, comprising: a gaming machine peripheral that includes a machine readable identification; and a gaming machine operating system operable on a gaming machine to read the identification of the gaming machine peripheral, to determine if the gaming machine peripheral is allowed to be added to the gaming machine and to automatically locate and install a driver to support the gaming machine peripheral, wherein automatically locating includes requesting a driver from a gaming server.

18. A system according to claim 17 further including one or more additional gaming servers on which the driver may be located, and wherein one of the servers is maintained under the supervision of a jurisdictional authority.

19. A system according to claim 18 wherein the gaming servers are organized in a hierarchy for the purposes of locating the driver.

20. A system according to claim 17, wherein the peripheral is selected from the group including a display device, a printer device, a mechanical reel, a video reel display, a coin acceptor, a bill acceptor, an auxiliary memory unit, a player card acceptor or a credit card acceptor.

21. (canceled)

22. A method of adding a gaming machine peripheral to a gaming machine connected to a gaming network having a plurality of network devices, including a gaming server and another gaming machine, the method comprising: selecting a gaming machine peripheral, wherein the selected gaming machine peripheral includes a machine readable identification; reading the machine readable identification of the gaming machine peripheral; determining if the gaming machine peripheral is allowed to be added to the gaming machine; and if the gaming machine peripheral is allowed to be added to the gaming machine, automatically locating and installing a driver associated with the gaming machine peripheral, wherein automatically locating includes requesting a driver from one of the plurality of network devices.

23. The method of claim 22, wherein selecting a gaming machine peripheral includes choosing a gaming machine peripheral from the group including a display device, a printer device, a mechanical reel, a video reel display, a coin acceptor, a bill acceptor, an auxiliary memory unit, a player card acceptor or a credit card acceptor.

24. A method according to claim 22 wherein the driver is certified.

25. A method according to claim 24 wherein the driver is certified by a jurisdictional authority.

26. A system according to claim 17 wherein the driver is certified.

27. The method of claim 1, wherein the gaming machine peripheral added comprises a plurality of gaming machine peripherals representing a class.

28. The method of claim 27, wherein each of the plurality of gaming machine peripherals is similar in function.

29. The method of claim 27, wherein each of the plurality of gaming peripherals includes an adaptor incorporated into the gaming machine peripheral.

30. The method of claim 29 wherein the adaptor presents a universal interface to a machine or device connected to the gaming machine peripheral.

31. The method of claim 27, further comprising replacing a first peripheral in the class with a second, different peripheral in the class without changing a driver.

Description:

RELATED APPLICATION

This patent application claims the priority benefit of U.S. Provisional Patent Application Ser. No. 60/741,625 filed Dec. 2, 2005 and entitled “GAMING SYSTEM PERIPHERALS WITH AUTOMATIC SYSTEM CONFIGURATION”

TECHNICAL FIELD OF THE INVENTION

The inventive subject matter relates generally to the field of gaming, and more particularly to systems and methods for use and configuration of peripheral devices in a gaming system.

COPYRIGHT

A portion of the disclosure of this patent document contains material to which the claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by any person of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office file or records, but reserves all other rights whatsoever. Copyright 2005, 2006, WMS Gaming, Inc.

BACKGROUND

While casino gaming machines may take many forms, they often use a similar underlying design. In particular, most gaming machines are formed using, at least in part, one or more printed circuit boards, usually one motherboard with a CPU, and a variety of peripheral devices such as a monitor, mechanical or video reel display, a coin acceptor, a bill acceptor, memory units, a player card acceptor or a credit card acceptor. The main system is typically configured to interface with these types of peripherals according to a design specific to a particular type of gaming machine, adding to the cost of developing, testing and manufacturing such machines.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 illustrates an example embodiment of a gaming machine apparatus suitable for use in the inventive subject matter disclosed herein;

FIG. 2 illustrates an example embodiment of a system and method according to the inventive subject matter disclosed herein;

FIG. 3 illustrates an example embodiment of a method according to the inventive subject matter described herein;

FIG. 4 illustrates another aspect of the system and method according to the inventive subject matter disclosed herein;

FIG. 5 illustrates a gaming network; and

FIG. 6 illustrates another example embodiment of a method according to the inventive subject matter described herein.

DETAILED DESCRIPTION

In the following detailed description, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the inventive subject matter can be practiced. It is understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the inventive subject matter. The leading digit(s) of reference numbers appearing in the Figures generally corresponds to the Figure number in which that component is first introduced, such that the same reference number is used throughout to refer to an identical component which appears in multiple Figures. Signals and connections may be referred to by the same reference number or label, and the actual meaning will be clear from its use in the context of the description.

Method and apparatus are provided for automatic detection and installation of a gaming system peripheral. In one example embodiment, a computer bus on a gaming machine can recognize changes to its configuration when devices are added or removed. For this purpose, the bus may include detection circuitry that detects any time a peripheral is removed or added and generates a corresponding interrupt. In addition, this capability is supported, for example, by requiring each peripheral to be able to supply a form of identification to the system, in order for the operating system on the computer to correctly identify it. Accordingly, the detection circuitry on the bus may detect the removal or addition of a new peripheral, and trigger an interrupt to start the operating system peripheral identification and installation functions, which in turn may interrogate registered peripherals to detect peripherals no longer responding and presumably removed, or to look for new peripherals not yet configured into the system but newly added to the bus. The identification supplied by the peripheral may, for example, take the form of an ID code assigned uniquely to the peripheral, such that each different type and version of the peripherals has its own unique code

Referring to FIG. 1, a gaming machine 10 is used in gaming establishments such as casinos. With regard to embodiments of the present invention, the gaming machine 10 may be any type of gaming machine and may have varying structures and methods of operation. For example, the gaming machine 10 may be an electromechanical gaming machine configured to play mechanical slots, or it may be an electronic gaming machine configured to play a video casino game, such as blackjack, slots, keno, poker, blackjack, roulette, etc.

As described more fully below, according to one example embodiment there is provided a method and apparatus for a gaming machine assembly such that the computer used in the machine includes the ability to have peripherals added to it without having to reconfigure the computing platform. Such peripherals may include, for example but not by way of limitation, devices such as a video display, mechanical or video reel display, a coin acceptor, a bill acceptor, memory units, a player card acceptor or a credit card acceptor. Referring first to FIG. 1, there is illustrated one example embodiment of a gaming machine in which peripherals can be added without configuring the computer used in the gaming machine. As shown in FIG. 1, the wagering game machine 10 can be a computerized slot machine having the controls, displays, and features of a conventional slot machine. The wagering game machine 10 can be operated while players are standing or seated. Additionally, the wagering game machine 10 is preferably mounted on a stand (not shown). However, it should be appreciated that the wagering game machine 10 can be constructed as a pub-style tabletop game (not shown), which a player can operate while sitting. Furthermore, the wagering game machine 10 can be constructed with varying cabinet and display designs. The wagering game machine 10 can incorporate any primary game such as slots, poker, or keno, and additional bonus round games. The symbols and indicia used on and in the wagering game machine 10 can take mechanical, electrical, or video form.

Gaming machine 10 comprises a housing 12 and includes input devices, including a value input device 18 and a player input device 24. For output the gaming machine 10 includes a primary display 14 for displaying information about the basic wagering game. The primary display 14 can also display information about a bonus wagering game and a progressive wagering game. The gaming machine 10 may also include a secondary display 16 for displaying game events, game outcomes, and/or signage information. In one example embodiment secondary display 16 is a top box. While these typical components found in the gaming machine 10 are described below, it should be understood that numerous other elements may exist and may be used in any number of combinations to create various forms of a gaming machine 10.

Value input device 18 may be provided in many forms, individually or in combination, and is preferably located on the front of the housing 12. The value input device 18 receives currency and/or credits that are inserted by a player. The value input device 18 may include a coin acceptor 20 for receiving coin currency (see FIG. 1). Alternatively, or in addition, the value input device 18 may include a bill acceptor 22 for receiving paper currency. Furthermore, the value input device 18 may include a ticket reader, or barcode scanner, for reading information stored on a credit ticket, a card, or other tangible portable credit storage device. The credit ticket or card may also authorize access to a central account, which can transfer money to the gaming machine 10.

The player input device 24 comprises a plurality of push buttons 26 on a button panel for operating the gaming machine 10. In addition, or alternatively, the player input device 24 may comprise a touch screen 28 mounted by adhesive, tape, or the like over the primary display 14 and/or secondary display 16. The touch screen 28 contains soft touch keys 30 denoted by graphics on the underlying primary display 14 and used to operate the gaming machine 10. The touch screen 28 provides players with an alternative method of input. A player enables a desired function either by touching the touch screen 28 at an appropriate touch key 30 or by pressing an appropriate push button 26 on the button panel. The touch keys 30 may be used to implement the same functions as push buttons 26. Alternatively, the push buttons 26 may provide inputs for one aspect of the operating the game, while the touch keys 30 may allow for input needed for another aspect of the game.

The various components of the gaming machine 10 may be connected directly to, or contained within, the housing 12, as seen in FIG. 1, or may be located outboard of the housing 12 and connected to the housing 12 via a variety of different wired or wireless connection methods. Thus, the gaming machine 10 comprises these components whether housed in the housing 12, or outboard of the housing 12 and connected remotely.

The operation of the basic wagering game is displayed to the player on the primary display 14. The primary display 14 can also display the bonus game associated with the basic wagering game. The primary display 14 may take the form of a cathode ray tube (CRT), a high resolution LCD, a plasma display, an LED, or any other type of display suitable for use in the gaming machine 10. As shown, the primary display 14 includes the touch screen 28 overlaying the entire display (or a portion thereof) to allow players to make game-related selections. Alternatively, the primary display 14 of the gaming machine 10 may include a number of mechanical reels to display the outcome in visual association with at least one payline 32. In the illustrated embodiment, the gaming machine 10 is an “upright” version in which the primary display 14 is oriented vertically relative to the player. Alternatively, the gaming machine may be a “slant-top” version in which the primary display 14 is slanted at about a thirty-degree angle toward the player of the gaming machine 10.

A player begins play of the basic wagering game by making a wager via the value input device 18 of the gaming machine 10. A player can select play by using the player input device 24, via the buttons 26 or the touch screen keys 30. The basic game consists of a plurality of symbols arranged in an array, and includes at least one payline 32 that indicates one or more outcomes of the basic game. Such outcomes are randomly selected in response to the wagering input by the player. At least one of the plurality of randomly-selected outcomes may be a start-bonus outcome, which can include any variations of symbols or symbol combinations triggering a bonus game.

In some embodiments, the gaming machine 10 may also include a player information reader 52 that allows for identification of a player by reading a card with information indicating his or her true identity. The player information reader 52 is shown in FIG. 1 as a card reader, but may take on many forms including a ticket reader, bar code scanner, RFID (Radio Frequency Identifier) transceiver or computer readable storage medium interface. Currently, identification is generally used by casinos for rewarding certain players with complimentary services or special offers. For example, a player may be enrolled in the gaming establishment's loyalty club and may be awarded certain complimentary services as that player collects points in his or her player-tracking account. The player inserts his or her card into the player information reader 52, which allows the casino's computers to register that player's wagering at the gaming machine 10. The gaming machine 10 may use the secondary display 16 or other dedicated player-tracking display for providing the player with information about his or her account or other player-specific information. Also, in some embodiments, the information reader 52 may be used to restore game assets that the player achieved and saved during a previous game session.

In one example embodiment, wagering game machine 10 performs electronic funds transfers and financial transfers to procure monies from financial accounts.

Turning now to FIG. 2, the various components of the gaming machine 10 are controlled by a central processing unit (CPU) 34, also referred to herein as a controller or processor (such as a microcontroller or microprocessor). To provide gaming functions, the controller 34 executes one or more game programs stored in a computer readable storage medium, in the form of memory 36.

In one example embodiment, controller 34 performs the random selection (using a random number generator (RNG)) of an outcome from the plurality of possible outcomes of the wagering game. In another example embodiment, a remote controller (not shown) determines the random event using an RNG or a pooling scheme for its central determination of a game outcome.

Controller 34 may include one or more microprocessors, including but not limited to a master processor, a slave processor, and a secondary or parallel processor.

In the embodiment shown in FIG. 2, controller 34 is coupled to system memory 36 and a value input device 18. In one such embodiment, system memory 36 includes a volatile memory (e.g., a random-access memory (RAM)) and a non-volatile memory (e.g., an EEPROM). The system memory 36 may also include multiple RAM and multiple program memories.

In one example embodiment, value input device 18 signals the processor that money and/or credits have been received. Preferably, these components are located within the housing 12 of the gaming machine 10. However, as explained above, these components may be located outboard of the housing 12 and connected to the remainder of the components of the gaming machine 10 via a variety of different wired or wireless connection methods.

As seen in FIG. 2, the controller 34 is also connected to, and controls, primary display 14, player input device 24, secondary display 16, payoff mechanism 40 and player identification reader 52. The payoff mechanism 40 is operable in response to instructions from the controller 34 to award a payoff to the player in response to certain winning outcomes that might occur in the basic game or in bonus game(s). The payoff may be provided in the form of points, bills, tickets, coupons, cards, etc. For example, in FIG. 1, the payoff mechanism 40 includes both a ticket printer 42 and a coin outlet 44. However, any of a variety of payoff mechanisms 40 well known in the art may be implemented, including cards, coins, tickets, smartcards, cash, etc. The payoff amounts distributed by the payoff mechanism 40 are determined by one or more pay tables stored in the system memory 36.

In the example embodiment shown in FIG. 2, the controller 34 communicates with the peripheral components of the gaming machine 10 and with peripherals such as external systems 50 through input/output (I/O) circuits 46, 48. More specifically, the controller 34 controls and receives inputs from the peripheral components of the gaming machine 10 through the input/output circuits 46. Further, the controller 34 communicates with the external systems 50 via the I/O circuits 48 and a communication path (e.g., serial, parallel, IR, RC, 10bT, etc.). External systems 50 may include a gaming network, other gaming machines, a gaming server, communications hardware, or a variety of other interfaced systems or components.

Although the I/O circuits 46, 48 are shown as a single block, it should be appreciated that each of the I/O circuits 46, 48 may include a number of different types of I/O circuits.

Controller 34, as used herein, comprises any combination of hardware, software, and/or firmware that may be disposed or resident inside and/or outside of the gaming machine 10 that may communicate with and/or control the transfer of data between the gaming machine 10 and a bus, another computer, processor, or device and/or a service and/or a network. The controller 34 may comprise one or more controllers or processors. In FIG. 2, the controller 34 in the gaming machine 10 is depicted as comprising a CPU, but the controller 34 may alternatively comprise a CPU in combination with other components, such as the I/O circuits 46, 48 and the system memory 36.

In one example embodiment, system memory 36 includes an operating system program 60, at least one gaming software program 62, and gaming data 64. The gaming software 62 is used to provide a gaming experience to a user, such as a spinning reel or video poker gaming experience. Software 62 may include, for example, software to drive the display of a video gaming machine animated sequence or control software to operate a reel type machine, or any other software component that may be used in a wagering game machine. Gaming software 62 executing on gaming machine 10 may also track a credit balance for a player.

According to one example embodiment, each gaming machine 10 includes support both in hardware and in software to provide for adding peripherals to gaming machine 10. First, the hardware of gaming machine 10 is adapted so as to be able to have new peripheral devices added without causing physical or electrical damage, or unrecoverable errors on interfaces. Such circuits may include over-voltage and short circuit protection to prevent the system from shorting or from applying excessive current to a peripheral, or shunt or other circuit elements to avoid damage from electrostatic discharge. According to one example embodiment, this capability provides protection against electrostatic discharge hazards, or poor sequencing of connection and disconnection of electrical contacts. Thus, in one example embodiment, the hardware or software may support hot-plugging so that peripherals may be added to gaming machine 10 while it is powered on.

In addition, in another example embodiment, controller 34 recognizes changes to its configuration when devices are added or removed. For this purpose, the controller 34 and its support circuitry may include detection circuitry 66 that detects any time a peripheral is removed or added and generates a corresponding interrupt.

In one example embodiment, this capability is supported by requiring each peripheral to be able to supply a form of identification to gaming machine 10, in order for operating system 60 to correctly identify it. The identification supplied by the peripheral may, for example, take the form of an ID code assigned uniquely to the peripheral, such that each different type and version of the peripherals has its own unique code. In another embodiment, the identification may include a radio frequency identifier (RFID) attached to the peripheral device. In yet another embodiment, the identification may include a global positioning satellite (GPS) location used to ensure that the device is local to the gaming establishment. A combination of two or more the above methods of identification can be used as well.

In one embodiment, gaming machine 10 compares the identification associated with the peripheral device to a list of recognized identification codes. The list may take the form of an equipped device table (EDT). The EDT includes a list of device codes and indicates whether the code is expected, legal and allowed. Such an approach permits auto-detection and configuration of expected devices.

Accordingly, in one embodiment, detection circuitry 66 associated with controller 34 detects the removal or addition of a new peripheral, and triggers an interrupt to start peripheral identification and installation functions within operating system 60, which in turn may interrogate registered peripherals to detect peripherals no longer responding and presumably removed, or to look for new peripherals not yet configured into the system but newly added to the bus.

As noted, the operating system 60 of the gaming machine 10 is able to handle changes in the peripheral devices. In one example embodiment, this is accomplished in part by looking for interrupts from the detection circuitry 66 saying that the configuration has changed, and then reading the information from the bus to locate what happened. According to one example embodiment, the entire system may be read in order to locate these changes. Alternatively, one or more systems or circuits may be used to either reduce or eliminate this “hunt.” For example, the universal serial bus (USB) architecture provides a hub system for this purpose. When the change is located, the operating system 60 may then examine the information, such as an ID provided in a nonvolatile memory in the device, in order to figure out what it is. An I/O address for the peripheral is established and any corresponding interrupt lines. The operating system 60 then has to load up the appropriate device drivers 68 in order to make it work. According to one example embodiment, these device drivers 68 may be stored in the memory or mass storage device of the system or introduced to the system through a storage media. In one example embodiment, operating system 60 may include the ability to find the proper driver on the Internet or other network and install it automatically.

Thus, according to one example embodiment, the method and apparatus provide that peripheral gaming devices may be added or changed on a gaming machine such as machine 10, and the machine 10 can automatically configure itself to interface with and operate with the new peripheral. Such change may be desirable, for example if original equipment peripherals fail and need to be replaced by more advanced or different peripherals. For instance, an old display unit may be replaced with a new unit of a similar form factor but one having a different interface requiring a different protocol to communicate with and control.

In one example embodiment, changes in the peripheral devices are detected only at boot time. In another example embodiment, changes in the peripheral devices are detected when the devices are plugged into machine 10, even during run time. In yet another example embodiment, peripheral devices are detected and configured when gaming machine 10 is first configured and remain static after that.

Referring now to FIG. 3, there is illustrated one embodiment of a method 300 according the inventive subject matter hereof. Method 300 provides for the hardware detection 310 of the removal or addition of a peripheral, the identification of the peripheral 320, its address and its interrupts. An appropriate driver is then identified and located 330 by the operating system 60. The driver is then installed 340 to complete the automatic or semi-automatic installation of a new peripheral.

One example embodiment of a software environment 100 for plug and play within gaming machine 10 is shown in FIG. 4. In the example embodiment shown in FIG. 4, the software environment includes a kernel space 102 and a user space 120. Kernel space 102 includes an executive process 106 connected through device drivers 108 to peripheral device interface 110. Executive process includes a kernel plug and play manager 112 and an I/O manager 114. Peripheral device interface 110 provides an interface between the hardware and software. In one such embodiment, this interface provides a common API to peripheral devices used in gaming machines 10.

In the embodiment shown, user space 120 includes a user space plug and play manager 122 connected to applications 124 and services manager 126. In one such embodiment, user space plug and play manager 122 includes software used to configure and install devices, as well as software for interacting with applications to register and react to events associated with the devices. Service manager 126 manages resources on gaming machine 10.

In one embodiment, I/O manager 106 controls and interacts with all devices on the system and provides routines that drivers can call to schedule resources. Kernel plug and play manager 112 determines the hardware resources requested by each device, assigns resources appropriately, and reassigns resources when a peripheral device is added or removed.

Plug and play can be implemented across a network of gaming machines 10 as well. A gaming machine network 70 is shown in FIG. 5. In the example embodiment of FIG. 5, a gaming server 72 is coupled to N gaming machines 10 across a gaming network 74. In the example shown N is an integer greater than or equal to 2. Gaming machines 10 and their peripherals (not shown) may be mounted in a wagering game machine cabinet such as the cabinets shown for the wagering game machines shown in FIG. 1, or may be mounted in other fashions for access by a user. Cabinets 12 may be arranged in one or more banks, for example, side-by-side in a row. Gaming network 74 may be implemented as a wired network such as, e.g., Ethernet, or as a wireless network such as, e.g., 802.11a/b/g.

In one example embodiment of gaming network 70 shown in FIG. 5, each gaming machine 10 includes a rules-based expert system used to perform peripheral device discovery and configuration. In one such embodiment, the rules-based expert system consults the equipped device table to determine whether a device is expected, legal and allowed during the discovery process. An example method is shown in FIG. 6.

In some jurisdictions, peripheral devices and any required drivers must be certified or approved for use by a gaming authority. Such certifications may include, for instance, a control process that assures that the peripherals or drivers are tamper proof or tamper resistant. Further, the operating system software, process and method used to install new peripherals automatically may also require approval by a gaming authority. Accordingly, the integrity of a new peripheral so approved or certified, and its automatic installation by the approved software, provides for compliance with the rigorous regulation in a typical gaming jurisdiction. These regulations are designed to eliminate or at the very least reduce fraud or cheating, both of the games and of the public. For example, these regulations may require that the hardware or software, such as a device driver, for a gaming machine is carefully controlled such that there is little or no possibility that it can be tampered with between the time it is burned or copied into the storage medium and the time it is fetched by a gaming machine for use in controlling the operation of the machine.

Referring now to FIG. 6, there is illustrated one embodiment of a method 600 according the inventive subject matter hereof. Method 600 provides for the hardware detection 610 of the removal or addition of a peripheral device and for the identification 612 of the peripheral device. A check is made at 614 to determine if the peripheral device is one of the peripheral devices that is expected, legal and allowed for that type of gaming machine 10. If the peripheral device is not legal or not allowed, control moves to 640 and an error message is displayed. In one such embodiment, the error message is logged locally and at server 72. If the peripheral device is not expected, control moves to 630 and an attempt may be made to manually install a device driver for the peripheral device.

If the peripheral device is one of the peripheral devices that is expected, legal and allowed for that type of gaming machine 10, control moves to 618 and a check is made to determine if a driver associated with the peripheral device is located within system memory 36. If so, control moves to 620 and the driver is installed.

If, however, a driver associated with the peripheral device is not located within system memory 36, control moves to 622 and gaming machine 10 requests the driver from server 72. A check is made at 624 to determine if server 72 returned the necessary driver. If so, control moves to 620 and the driver is installed. If, however, a driver associated with the peripheral device is not located within server 72, control moves to 626 and gaming machine 10 requests the driver from an external source, such as the manufacturer's web site. A check is made at 628 to determine if the external source returned the necessary driver. If so, control moves to 620 and the driver is installed. If not, control moves to 630 and an attempt is made to install the driver manually. Thus, according to one example embodiment, all driver installation is handled automatically by the system and only if such automatic installation is not possible is there manual intervention. According to another example embodiment of the method and system there may be one or more gaming servers on which the driver can be stored and retrieved from. For example, there may be a hierarchy of servers. For example, a gaming machine may contact the main casino server for a driver. The main casino server may not have a suitable driver, and may therefore contact a jurisdictional server that may be located and maintained by the proper jurisdictional authorities or others under their direction or certification. According to one embodiment, the drivers may be certified by the jurisdictional authority so as to assure the integrity of the gaming machine operation for which the driver is used. Alternatively, only trusted drivers may be permitted to be loaded on a secure server from which the drivers have to be retrieved, to again maintain the integrity of the gaming machine.

In one embodiment, a gaming machine 10 messages server 72 and the other gaming machines on gaming network 74 each time it adds or removes a peripheral device. In one such embodiment, this allows each gaming machine 10 to add and use the peripheral device attached to another gaming machine 10. In one such embodiment, a gaming machine executes the method of FIG. 6 when it is notified of the addition of a peripheral device to another gaming machine 10 on network 74.

In another such embodiment, each peripheral appears as a virtual peripheral on each gaming machine 10 connected to network 74. That is, the gaming machine is not aware of the physical location of the peripheral device; instead, messages to the peripheral device are routed in the background to the peripheral device across network 74.

In one embodiment, peripheral devices within a certain class include an adapter. For instance, each printer might include, incorporated therein, an adapter such that the printer and integral adapter form a printing device with a universal interface. Such an approach would simplify drivers and reduce the number of drivers necessary in gaming machine 10. The approach could also be used to upgrade peripherals to a newer model without having to update and recertify the driver. For example the gaming machine may have a single driver for one universal printer interface that works for all printers that have the universal interface.

In one embodiment, gaming machine 10 saves a configuration log each time that a peripheral device is added or removed. In one such embodiment, the configuration log is stored at server 72. In another such embodiment, the configuration log is printed on a printer ticket by printer 42.

Care must also be taken with software, such as the device drivers 68. In most jurisdictions, software for a gaming machine 10 is carefully controlled such that there is little or no possibility that it can be tampered with between the time it is burned or copied into the storage medium and the time it is fetched by a gaming machine for use in controlling the operation of the machine. For instance, regulations may require that the gaming software be copied onto the storage medium in a secure environment and brought to and installed in the target gaming machine in a secure fashion. Thus, updated gaming software may have to be written to a tamper-proof read only memory device within the confines of a secure facility, and taken under lock and key to a gaming machine to be installed by authorized personnel only. Further, there is typically a mechanism or process by which gaming authorities can test to see that the software installed in a particular gaming machine has been approved by gaming regulators, and is not an unauthorized version. Thus, updating gaming software, for example, to correct a bug or to provide an enhanced, modified or new gaming experience to a user, can be burdensome. The method and system as described herein can reduce the burden of changing a peripheral and the corresponding need to update device drivers.

In this description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the understanding of this description. Note that in this description, references to “one embodiment” or “an embodiment” means that the feature being referred to is included in at least one embodiment of the invention. Further, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment; however, neither are such embodiments mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, embodiments of the present invention can include any variety of combinations and/or integrations of the embodiments described herein. Each claim, as may be amended, constitutes an embodiment of the invention, incorporated by reference into the detailed description. Moreover, in this description, the phrase “exemplary embodiment” means that the embodiment being referred to serves as an example or illustration.

Further, block diagrams illustrate exemplary embodiments of the invention. Also herein, flow diagrams illustrate operations of the exemplary embodiments of the invention. The operations of the flow diagrams are described with reference to the exemplary embodiments shown in the block diagrams. However, it should be understood that the operations of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with references to the block diagrams could perform operations different than those discussed with reference to the flow diagrams. Additionally, some embodiments may not perform all the operations shown in a flow diagram. Moreover, it should be understood that although the flow diagrams depict serial operations, certain embodiments could perform certain of those operations in parallel.