WO2007142821A2 - Wagering game machines with pre-boot interfaces - Google Patents

Wagering game machines with pre-boot interfaces Download PDF

Info

Publication number
WO2007142821A2
WO2007142821A2 PCT/US2007/012206 US2007012206W WO2007142821A2 WO 2007142821 A2 WO2007142821 A2 WO 2007142821A2 US 2007012206 W US2007012206 W US 2007012206W WO 2007142821 A2 WO2007142821 A2 WO 2007142821A2
Authority
WO
WIPO (PCT)
Prior art keywords
wagering game
game machine
executing
prior
operating system
Prior art date
Application number
PCT/US2007/012206
Other languages
French (fr)
Other versions
WO2007142821A3 (en
Inventor
Jacob C. Greenberg
Original Assignee
Wms Gaming Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wms Gaming Inc. filed Critical Wms Gaming Inc.
Publication of WO2007142821A2 publication Critical patent/WO2007142821A2/en
Publication of WO2007142821A3 publication Critical patent/WO2007142821A3/en

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3225Data transfer within a gaming system, e.g. data sent between gaming machines and users
    • G07F17/323Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the player is informed, e.g. advertisements, odds, instructions

Definitions

  • Embodiments of the inventive subject matter relate generally to wagering game machines, and more particularly, to wagering gaming machines having pre- boot interfaces.
  • Wagering game machine manufacturers strive to construct equipment that is easily repaired and upgraded, so that routine maintenance and improvements occur with a limited amount of effort. However, as portions of the machines are changed out, or when tests are conducted, the use of an operating system and extensive software re-configuration may be required, limiting the time such machines may be used to generate income for their owners. BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a wagering apparatus and a wagering game machine, according to example embodiments of the invention.
  • FIG. 2 is a block diagram illustrating a wagering game network, according to example embodiments of the invention.
  • FIG. 3 is a flowchart illustrating various methods of operating a wagering game machine with a firmware interface, according to example embodiments of the invention.
  • FIG. 4 is a perspective view of a wagering game machine, according to example embodiments of the invention.
  • a pre-boot interface comprises a set of instructions to be executed by a processor that permit execution of application programs within a computing platform, and full communication with each of the peripherals coupled to the platform, prior to executing an operating system (OS).
  • OS operating system
  • some of the embodiments disclosed herein can provide operating system-independent driver, application, and diagnostic program access within a wagering game machine, including access to a global network browser.
  • a compact firmware environment may be established prior to loading and/or initializing the main OS in the machine. This environment, sometimes known as a pre-boot environment, may determine driver information and/or provide user access to configuration information and methods when the wagering game machine OS is absent or unavailable.
  • Fig. 1 is a block diagram illustrating a wagering apparatus 100 and a wagering game machine 106, according to example embodiments of the invention.
  • the wagering game machine 106 may include a central processing unit (CPU) 126, perhaps located on a motherboard or a bus peripheral card, and coupled to main memory 128, which can include a wagering game unit 132, a firmware interface 136, and an OS loader and/or OS 138.
  • the wagering game unit 132 can receive wagers and conduct wagering games, such as video poker, video blackjack, video slots, video lottery, etc.
  • the firmware interface 136 may comprise a platform independent and/or OS-independent pre-boot interface, perhaps including data tables DT that contain platform-related information, as well as boot and run-time service calls SC that are available to the OS 138 and its loader. Thus, the firmware interface 136 may be executed prior to execution of the OS 138, while providing a standardized environment for booting an OS 138 and running pre-boot applications, such as a network browser BR.
  • the firmware interface 136 is located between the firmware 134 of the wagering game machine 106 and the OS 138. In some embodiments, no basic input/output system (BIOS) is needed; the OS 138 may be executed (after executing the firmware interface 136 without obtaining details of the underlying hardware and firmware 134.
  • BIOS basic input/output system
  • the firmware interface 136 can be used to support many boot devices, or peripherals, such as hard disks, removable media devices, keyboards, graphics display interfaces, network interface devices, and gaming-specific peripherals, such as a variety of user input devices (e.g., joysticks, dance pads, steering wheels, foot- pedals, pistols, golf clubs, racquets, bats), head-mounted displays, etc.
  • the firmware interface 136 may comprise an extensible firmware interface the permits future media devices to be supported.
  • the firmware interface 136 may be implemented according to a unified extensible firmware interface specification, such as the Unified Extensible Firmware Interface (EFI) Specification, Ver. 2.0, United EFI Forum, Inc., January 2006, and later versions, incorporated herein by reference in its entirety.
  • EFI Unified Extensible Firmware Interface
  • the firmware interface 136 may provide run-time services, boot services, console services (e.g., local-head and remote-head support options), and Guaranteed Unique Identifier-based protocol services used to access boot devices. If the firmware interface 136 is used, the OS 138 does not need to identify particular chips on the motherboard, or firmware requirements of individual boot devices, since the firmware interface 136 is consistent, and does not change with respect to the processor type, memory configuration, and firmware 134 implementation. BIOS constructs (e.g., compatibility region, run-time interrupt services, and BIOS data areas), BIOS calls, and direct communication with hardware devices may no longer be needed by the OS 138 if the firmware interface 136 is implemented and the OS 138 is aware of its presence.
  • BIOS constructs e.g., compatibility region, run-time interrupt services, and BIOS data areas
  • the firmware 134 may comprise a framework based on low-level drivers DRl, DR2, ..., DRN. However, in contrast to a BIOS, the settings that would normally be stored in a complementary metal-oxide semiconductor (CMOS) map can be stored in the firmware 134. Additional drivers and code functions may be stored in other memory, such as a hard drive or external storage, including on a server coupled to the machine 106.
  • CMOS complementary metal-oxide semiconductor
  • Additional drivers and code functions may be stored in other memory, such as a hard drive or external storage, including on a server coupled to the machine 106.
  • the use of such a framework can obviate the need for any video output at all, so that hardware test results can be sent directly to a network interface, for example. Thus, in some embodiments, only power and local area network (LAN) connections are used for testing machines 106.
  • LAN local area network
  • the CPU 126 may also be connected to an input/output (I/O) bus 122, which facilitates communication between the wagering game machine's components.
  • the I/O bus 122 may be connected to a payout mechanism 108, a primary display 110, a secondary display 112, a value input device 114, a player input device 116, an information reader 118, and one or more storage units 130.
  • the player input device 116 may include the value input device 114, to the extent that the player input device 116 is used to place wagers.
  • the value input device 114 can electronically receive wagering value (e.g., monetary value) from a player's casino account or other suitable "cashless gaming" value source.
  • the I/O bus 122 may also be connected to an external system interface 124, perhaps comprising a wired network interface card and/or a wireless transceiver XCVR, which may in turn be connected to external systems 104 (e.g., wagering game networks and other networks, including global networks) via a wired or wireless connection 140.
  • an external system interface 124 perhaps comprising a wired network interface card and/or a wireless transceiver XCVR, which may in turn be connected to external systems 104 (e.g., wagering game networks and other networks, including global networks) via a wired or wireless connection 140.
  • an apparatus 100 may include a wagering game machine 106 having a wagering game unit 132 operable to receive a wager in association with a wagering game WG.
  • the apparatus 100 may also include a firmware interface 136, such as a platform- independent firmware interface stored in a memory (e.g., main memory 128 or the storage unit 130), perhaps included in the wagering game machine 106.
  • the firmware interface 136 may enable access to a network (e.g., the external systems 104) prior to executing the OS 138 included in the wagering game machine 106.
  • the machine 106 may include one or more memories, such as the main memory 128 and/or the storage unit 130 to store a global network browser BR to be executed by the firmware interface 136 prior to executing the OS 138.
  • the machine 106 may include one or more displays 110, 112 to display information obtained by a global network browser BR prior to execution of the OS 138 on the machine 106.
  • the benefits of rapid testing, without booting or executing the OS 138, may be enjoyed in some embodiments of the apparatus 100 by executing a diagnostic application DA coupled to the firmware interface 136, prior to booting or executing the OS 138.
  • the results of pre-boot testing may be communicated to a variety of external systems 104, perhaps by coupling a testing terminal TT to the wagering game machine 106 via the connection 140.
  • Pre-boot testing may also be conducted without the use of a testing terminal TT, if desired, such as by using a stand-alone diagnostic application DA (also executed prior to booting or executing the OS 138), and displaying test results on a wagering game machine display 110, 112.
  • the wagering game machine 106 can include additional peripheral devices and/or more than one of each component shown in Fig. 1.
  • the wagering game machine 106 can include several external system interfaces 124 and multiple CPUs 126.
  • any of the components can be integrated or subdivided.
  • the components of the wagering game machine 106 can be interconnected according to any suitable interconnection architecture (e.g., directly connected, in series, in parallel, hypercube, etc.).
  • any of the components of the wagering game machine 106 can include hardware, firmware, and/or software for performing the operations described herein.
  • any of the components can include machine-readable media including instructions for causing a machine to perform the operations described herein.
  • Machine-readable media includes any mechanism, such as the main memory 128 and the storage unit 130, that provides (i.e., stores and/or transmits) information in a form readable by a machine (e.g., a wagering game machine platform, computer, etc.).
  • tangible machine-readable media includes read only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory machines, etc.
  • Machine-readable media also includes any medium suitable for transmitting software over a network.
  • FIG. 1 describes example embodiments of a wagering game machine
  • Fig. 2 shows how a plurality of wagering game machines 202 can be connected in a wagering game network 250.
  • Fig. 2 is a block diagram illustrating a wagering game network 250, according to example embodiments of the invention.
  • the wagering game network 250 includes a plurality of casinos 212 connected to a communications network 214.
  • Each of the plurality of casinos 212 may include a local area network 214, which includes wagering game machines 202 connected to a wagering game server 206 that may in turn be used to store a number of drivers DRl, DR2, ..., DRN and even a firmware interface 236, perhaps in a memory 228.
  • the wagering game machines 202 and the wagering game server 206 can include hardware and machine-readable media including instructions for conducting pre-boot operations, as described herein.
  • the wagering game machines 202 may be similar to or identical to the wagering game machine 106 illustrated in Fig. 1.
  • the wagering game server 206 can perform pre-boot operations in concert with serving wagering games and/or drivers over the wagering game network 250.
  • the wagering game machines 202 described herein can take any suitable form, such as floor standing models, mobile units, handheld mobile units, bartop models, workstation-type console models, etc. Further, the wagering game machines 202 may be primarily dedicated for use in conducting wagering games, or may comprise a non-dedicated device, such as a mobile phone, personal digital assistant, personal computer, etc. In some embodiments, the wagering game network 250 can include other network devices, such as accounting servers, wide area progressive servers, player tracking servers, and/or other devices suitable for use in connection with embodiments of the invention.
  • each casino 212 can communicate over wired 208 and/or wireless connections 210. Furthermore, they can employ any suitable connection technology, such as Bluetooth, 802.11, Ethernet, public switched telephone networks, SONET, etc.
  • one or more drivers DRl, DR2, ..., DRN are stored in a wagering game server 206.
  • the drivers DRl , DR2, ..., DRN may be downloaded to the game machines 202, perhaps whenever new hardware is detected in the machines 202, and prior to executing an OS included in the machines 202.
  • Other software and information may likewise be communicated between the machines 202 and the server 206 prior to an OS being executed by either the machines 202 and/or the server 206 by making use of one or more firmware interfaces 236.
  • the information thus obtained can be presented on an audio/visual (AV) unit 240, such as a television or monitor, that is associated with the game machine 202, and physically separated, but electronically coupled to it.
  • AV audio/visual
  • the drivers DRl, DR2, ..., DRN are communicated from the server (e.g., a wagering game server 206) to a client (e.g., a wagering game machine 202) using either a "push" or “pull” transfer mode.
  • a push transfer mode is provided when, for example, an administrator initiates a transfer (i.e., download) of a driver (e.g., DRl) at a server and the driver is "pushed" out to one or more clients (e.g., wagering games machines 202) on the network 250.
  • a pull transfer mode is provided by initiating a request to the server 206 for a driver download from a client machine (e.g., a game machine 202), perhaps prior to executing an OS included in the machine 202.
  • additional embodiments may include a system 250 comprising one or more wagering apparatus 100, similar to or identical to described above with respect to FIG. 1, as well as a server 206 (e.g., a wide area progressive server) coupled to the apparatus 100 via a network 214, perhaps comprising wired 208 and/or wireless connections 210.
  • a server 206 e.g., a wide area progressive server
  • modules may include hardware circuitry, single or multi-processor circuits, memory circuits, software program modules and objects, firmware, and combinations thereof, as desired by the architect of the apparatus 100 and systems 250, and as appropriate for particular implementations of various embodiments.
  • the modules may be included in a system operation simulation package such as a software electrical signal simulation package, a power usage and distribution simulation package, a network security simulation package, a power/heat dissipation simulation package, a signal transmission-reception simulation package, or any combination of software and hardware used to simulate the operation of various potential embodiments.
  • a system operation simulation package such as a software electrical signal simulation package, a power usage and distribution simulation package, a network security simulation package, a power/heat dissipation simulation package, a signal transmission-reception simulation package, or any combination of software and hardware used to simulate the operation of various potential embodiments.
  • Such simulations may be used to characterize or test the embodiments, for example.
  • apparatus and systems of various embodiments can be used in applications other than wagering game machines.
  • various embodiments of the invention are not to be so limited.
  • the illustrations of apparatus 100 and systems 250 are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein.
  • Applications that may include the novel apparatus and systems of various embodiments include electronic circuitry used in high-speed computers, communication and signal processing circuitry, modems, single or multi-processor modules, single or multiple embedded processors, and application-specific modules, including multilayer, multi-chip modules.
  • Such apparatus and systems may further be included as sub-components within a variety of electronic systems, such as data bridges, switches, and hubs; televisions and cellular telephones; personal digital assistants; personal computers and workstations; medical devices; radios and video players; and vehicles, among others.
  • FIG. 3 is a flowchart illustrating various methods 300 of operating a wagering game machine with a firmware interface, according to example embodiments of the invention.
  • the method 300 may include receiving power at a processor included in a wagering game machine operable to receive a wager associated with a wagering game.
  • the method 300 may include executing a firmware interface at block 325, and then, perhaps after executing the firmware interface, accessing an application prior to executing an OS residing in a memory of the wagering game machine at block 329, perhaps to download a file from a network.
  • the firmware interface may comprise an extensible firmware interface implemented according to a unified extensible firmware interface specification.
  • the application accessed prior to executing an OS may comprise any number of programs, such as a local or global network browser, a wagering game, and/or a wagering game machine diagnostic program.
  • the method 300 may include detecting the presence of hardware in a wagering game machine at block 333.
  • the method 300 may include discovering a card added to the wagering game system (and/or discovering the addition or changeout of a user input device, etc.), and/or determining if a peripheral included in the wagering game system is newer than the wagering game system OS software.
  • the method 300 may also include downloading a driver associated with hardware in the wagering game system, such as a newly-discovered card or a peripheral that is newer than the OS, prior to executing the OS at block 335.
  • the driver may be downloaded to any number of memories included in the wagering game system, such as the main memory and/or storage unit described above.
  • the method 300 may include determining if a newer version of software included in the wagering game system is available at block 337. For example, prior to booting or executing an OS, a query may be sent out over a network, or a CD-ROM may be read, and if a newer version of a driver, OS, wagering game, or other software included in the wagering game system (including firmware, such as the firmware interface or a diagnostic application) is available, then the method 300 may include downloading (and even executing) the newer version of the software prior to executing the OS at block 339.
  • firmware such as the firmware interface or a diagnostic application
  • the method 300 may include communicating information from a secure gaming server to one or more wagering game machines prior to executing the OS at block 341. If desired, in some embodiments the information may be obtained from a global network and displayed prior to executing the OS at block 345.
  • the firmware interface may operate to perform a memory clearing function, such as a random access memory (RAM) clear function (rather than the current practice of booting the OS to clear ram, and then promptly re-booting to load a wagering game).
  • RAM random access memory
  • This might be enabled by installing a specific medium in the wagering game system, or by detecting the use of some other device (e.g., chip, radio frequency identification (RFID) tag, personal identification number (PIN), etc).
  • RFID radio frequency identification
  • PIN personal identification number
  • data in the RFID device or a PIN could be checked against a back-end database to verify the authority of a user to perform a RAM clearance function.
  • the firmware interface may also operate to validate other media and/or programs in the game prior to booting the OS.
  • the validation process may be accomplished more quickly in this manner, due to less execution overhead, than by attempting to do the same thing while the OS is operating.
  • the firmware interface may also operate to validate a variety of media and/or software using one core of a multi-core processor while the OS boots on a second core of the multi-core processor - this may also reduce the time occupied with validation of media/software, and booting the OS.
  • the method 300 may conclude with executing an OS located in the wagering game machine and/or server at block 349.
  • a software program can be launched from a computer-readable medium in a computer-based system to execute the functions defined in the software program.
  • Various programming languages may be employed to create one or more software programs designed to implement and perform the methods disclosed herein.
  • the programs may be structured in an object-orientated format using an object-oriented language such as Java or C++.
  • the programs can be structured in a procedure-orientated format using a procedural language, such as assembly or C.
  • the software components may communicate using a number of mechanisms well known to those skilled in the art, such as application program interfaces or interprocess communication techniques, including remote procedure calls.
  • the teachings of various embodiments are not limited to any particular programming language or environment.
  • some embodiments may include a machine-readable medium encoded with instructions for directing a machine to perform operations comprising any of the methods described herein.
  • some embodiments may include a machine-readable medium encoded with instructions for directing a wagering game machine operable to receive a wager to perform a variety of operations.
  • Such operations may include executing the instructions using a microprocessor after power is applied to the wagering game machine, and accessing an application to download a file from a network prior to executing an OS residing in a memory of the wagering game machine.
  • Additional operations may include displaying information obtained from a global network prior to executing the OS, and/or downloading a driver associated with a peripheral included in the wagering game machine prior to executing the OS.
  • Other operations may include any of the activities presented in conjunction with the methods described above.
  • FIG. 4 is a perspective view of a wagering game machine, according to example embodiments of the invention.
  • the wagering game machine 402 (which may be similar to or identical to the machines 106, 202 described above) may be used in gaming establishments, such as casinos.
  • the wagering game machine 402 can be any type of wagering game machine and can have varying structures and methods of operation.
  • the wagering game machine 402 may comprise an electromechanical wagering game machine configured to play mechanical slots, or it may comprise an electronic wagering game machine configured to play video casino games, such as blackjack, slots, keno, poker, blackjack, roulette, etc.
  • the wagering game machine 402 may comprise a housing 401 and include input devices, such as wager input devices 444 (perhaps coupled to a value input device 114, shown in FIG. 1), and a player input device 416.
  • the wagering game machine 402 may include a primary display 410 for displaying information about a basic wagering game.
  • the primary display 410 can also display information about a bonus wagering game, a progressive wagering game, and one or more attract packages.
  • the wagering game machine 402 may also include a secondary display 412 for displaying wagering game events, wagering game outcomes, attract packages, information obtained prior to executing an OS included in the machine 402, and/or signage information. While some components of the wagering game machine 402 are described herein, numerous other elements can exist and can be used in any number or combination to create varying forms of the wagering game machine 402.
  • the wager input devices 444 can take any suitable form and may be located on the front of the housing 401.
  • the wager input devices 444 can receive currency and/or credits inserted by a player.
  • the wager input devices 444 can include coin " acceptors for receiving coin currency and bill acceptors for receiving paper currency.
  • the wager input devices 444 can include ticket readers or barcode scanners for reading information stored on vouchers, cards, or other tangible portable storage devices.
  • the vouchers or cards can authorize access to central accounts, which can transfer money to the wagering game machine 402.
  • Some wagering game machines 402 may utilize RFID (radio- frequency identification) technology to passively identify players and accept payment using an RFID carried by a player without the player having to carry out specific actions or enter anything physical into the game.
  • the player input device 416 may comprise a plurality of push buttons on a button panel 426 for operating the wagering game machine 402.
  • the player input device 416 can comprise a touch screen 428 mounted over the primary display 410 and/or secondary display 412.
  • the various components of the wagering game machine 402 can be connected directly to, or contained within, the housing 401. Alternatively, some of the wagering game machine's components can be located outside of the housing 401, while being communicatively coupled with the wagering game machine 402 using any suitable wired or wireless communication technology.
  • the operation of the basic wagering game can be displayed to the player on the primary display 410.
  • the primary display 410 can also display a bonus game associated with the basic wagering game.
  • the primary display 410 may include a cathode ray tube (CRT), a high resolution liquid crystal display (LCD), a plasma display, light emitting diodes (LEDs), or any other type of display suitable for use in the wagering game machine 402.
  • the primary display 410 can include a number of mechanical reels to display the outcome.
  • the wagering game machine 402 is shown as an "upright" version in which the primary display 410 is oriented vertically relative to the player.
  • the wagering game machine can be a "slant-top" version in which the primary display 410 is slanted at about a thirty-degree angle toward the player of the wagering game machine 402.
  • the wagering game machine 402 can be a bartop model, a mobile unit, a handheld mobile unit, a gaming device in a server-based system, or a workstation-type console model, among others.
  • a player may begin playing a basic wagering game by placing a wager via the player input device 416 and/or the wager input device 418.
  • the player can initiate play by using the push buttons or the touch screen 428 or the player input device 416.
  • the basic game can include arranging a plurality of symbols along a payline 432, which indicates one or more outcomes of the basic game. Such outcomes can be randomly selected in response to player input. At least one of the outcomes, which can include any variation or combination of symbols, can trigger the occurrence of a bonus game.
  • the wagering game machine 402 can also include an information reader 420, which can include a card reader, ticket reader, bar code scanner, RFID transceiver, or computer readable storage medium interface.
  • the information reader 420 can be used to award complimentary services, restore game assets, track player habits, etc.
  • Implementing the apparatus, systems, and methods disclosed herein may operate to provide wagering game machines that are more easily maintained and updated.
  • repair and upgrade operations may be effected more quickly, since, in many embodiments, an OS does not have to be executed prior to downloading drivers for new hardware, or testing various peripherals.
  • inventive subject matter may be referred to herein individually or collectively by the term "invention" merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept, if more than one is in fact disclosed.
  • inventive concept any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown.
  • This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.

Abstract

Apparatus, systems, and methods may operate to access applications to download files from a network prior to executing an operating system residing in the memory of a wagering game machine. The wagering game machine memory may include a firmware interface, such as a platform-independent, extensible firmware interface.

Description

WAGERING GAME MACHINES WITH PRE-BOOT INTERFACES
RELATED APPLICATIONS
This patent application claims the priority benefit of U.S. Provisional Patent Application Serial No. 60/803,051 filed May 24, 2006 and entitled "WAGERING GAME MACHINES WITH PRE-BOOT INTERFACES", which application is incorporated herein by reference.
COPYRIGHT
A portion of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office records, but otherwise reserves all copyright rights whatsoever. Copyright 2006, 2007, WMS Gaming, Inc.
FIELD
Embodiments of the inventive subject matter relate generally to wagering game machines, and more particularly, to wagering gaming machines having pre- boot interfaces.
BACKGROUND
Wagering game machine manufacturers strive to construct equipment that is easily repaired and upgraded, so that routine maintenance and improvements occur with a limited amount of effort. However, as portions of the machines are changed out, or when tests are conducted, the use of an operating system and extensive software re-configuration may be required, limiting the time such machines may be used to generate income for their owners. BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of a wagering apparatus and a wagering game machine, according to example embodiments of the invention.
FIG. 2 is a block diagram illustrating a wagering game network, according to example embodiments of the invention.
FIG. 3 is a flowchart illustrating various methods of operating a wagering game machine with a firmware interface, according to example embodiments of the invention.
FIG. 4 is a perspective view of a wagering game machine, according to example embodiments of the invention.
DETAILED DESCRIPTION
Example Operating Environment
In order to reduce the time required for wagering game machine maintenance and upgrade operations, a pre-boot interface can be utilized. For the purposes of this document, a "pre-boot interface" comprises a set of instructions to be executed by a processor that permit execution of application programs within a computing platform, and full communication with each of the peripherals coupled to the platform, prior to executing an operating system (OS). Thus, for example, some of the embodiments disclosed herein can provide operating system-independent driver, application, and diagnostic program access within a wagering game machine, including access to a global network browser. In some embodiments, a compact firmware environment may be established prior to loading and/or initializing the main OS in the machine. This environment, sometimes known as a pre-boot environment, may determine driver information and/or provide user access to configuration information and methods when the wagering game machine OS is absent or unavailable.
Fig. 1 is a block diagram illustrating a wagering apparatus 100 and a wagering game machine 106, according to example embodiments of the invention. As shown in Fig. 1, the wagering game machine 106 may include a central processing unit (CPU) 126, perhaps located on a motherboard or a bus peripheral card, and coupled to main memory 128, which can include a wagering game unit 132, a firmware interface 136, and an OS loader and/or OS 138. In some embodiments, the wagering game unit 132 can receive wagers and conduct wagering games, such as video poker, video blackjack, video slots, video lottery, etc.
The firmware interface 136 may comprise a platform independent and/or OS-independent pre-boot interface, perhaps including data tables DT that contain platform-related information, as well as boot and run-time service calls SC that are available to the OS 138 and its loader. Thus, the firmware interface 136 may be executed prior to execution of the OS 138, while providing a standardized environment for booting an OS 138 and running pre-boot applications, such as a network browser BR. Conceptually, the firmware interface 136 is located between the firmware 134 of the wagering game machine 106 and the OS 138. In some embodiments, no basic input/output system (BIOS) is needed; the OS 138 may be executed (after executing the firmware interface 136 without obtaining details of the underlying hardware and firmware 134.
The firmware interface 136 can be used to support many boot devices, or peripherals, such as hard disks, removable media devices, keyboards, graphics display interfaces, network interface devices, and gaming-specific peripherals, such as a variety of user input devices (e.g., joysticks, dance pads, steering wheels, foot- pedals, pistols, golf clubs, racquets, bats), head-mounted displays, etc. The firmware interface 136 may comprise an extensible firmware interface the permits future media devices to be supported. For example, the firmware interface 136 may be implemented according to a unified extensible firmware interface specification, such as the Unified Extensible Firmware Interface (EFI) Specification, Ver. 2.0, United EFI Forum, Inc., January 2006, and later versions, incorporated herein by reference in its entirety.
The firmware interface 136 may provide run-time services, boot services, console services (e.g., local-head and remote-head support options), and Guaranteed Unique Identifier-based protocol services used to access boot devices. If the firmware interface 136 is used, the OS 138 does not need to identify particular chips on the motherboard, or firmware requirements of individual boot devices, since the firmware interface 136 is consistent, and does not change with respect to the processor type, memory configuration, and firmware 134 implementation. BIOS constructs (e.g., compatibility region, run-time interrupt services, and BIOS data areas), BIOS calls, and direct communication with hardware devices may no longer be needed by the OS 138 if the firmware interface 136 is implemented and the OS 138 is aware of its presence.
The firmware 134 may comprise a framework based on low-level drivers DRl, DR2, ..., DRN. However, in contrast to a BIOS, the settings that would normally be stored in a complementary metal-oxide semiconductor (CMOS) map can be stored in the firmware 134. Additional drivers and code functions may be stored in other memory, such as a hard drive or external storage, including on a server coupled to the machine 106. The use of such a framework can obviate the need for any video output at all, so that hardware test results can be sent directly to a network interface, for example. Thus, in some embodiments, only power and local area network (LAN) connections are used for testing machines 106.
The CPU 126 may also be connected to an input/output (I/O) bus 122, which facilitates communication between the wagering game machine's components. The I/O bus 122 may be connected to a payout mechanism 108, a primary display 110, a secondary display 112, a value input device 114, a player input device 116, an information reader 118, and one or more storage units 130. The player input device 116 may include the value input device 114, to the extent that the player input device 116 is used to place wagers. In some embodiments, the value input device 114 can electronically receive wagering value (e.g., monetary value) from a player's casino account or other suitable "cashless gaming" value source. The I/O bus 122 may also be connected to an external system interface 124, perhaps comprising a wired network interface card and/or a wireless transceiver XCVR, which may in turn be connected to external systems 104 (e.g., wagering game networks and other networks, including global networks) via a wired or wireless connection 140.
Thus, many embodiments may be realized. For example, an apparatus 100 may include a wagering game machine 106 having a wagering game unit 132 operable to receive a wager in association with a wagering game WG. The apparatus 100 may also include a firmware interface 136, such as a platform- independent firmware interface stored in a memory (e.g., main memory 128 or the storage unit 130), perhaps included in the wagering game machine 106. The firmware interface 136 may enable access to a network (e.g., the external systems 104) prior to executing the OS 138 included in the wagering game machine 106.
Thusj in some embodiments, the machine 106 may include one or more memories, such as the main memory 128 and/or the storage unit 130 to store a global network browser BR to be executed by the firmware interface 136 prior to executing the OS 138. In some embodiments, the machine 106 may include one or more displays 110, 112 to display information obtained by a global network browser BR prior to execution of the OS 138 on the machine 106.
The benefits of rapid testing, without booting or executing the OS 138, may be enjoyed in some embodiments of the apparatus 100 by executing a diagnostic application DA coupled to the firmware interface 136, prior to booting or executing the OS 138. The results of pre-boot testing may be communicated to a variety of external systems 104, perhaps by coupling a testing terminal TT to the wagering game machine 106 via the connection 140. Pre-boot testing may also be conducted without the use of a testing terminal TT, if desired, such as by using a stand-alone diagnostic application DA (also executed prior to booting or executing the OS 138), and displaying test results on a wagering game machine display 110, 112.
In some embodiments, the wagering game machine 106 can include additional peripheral devices and/or more than one of each component shown in Fig. 1. For example, in some embodiments, the wagering game machine 106 can include several external system interfaces 124 and multiple CPUs 126. In some embodiments, any of the components can be integrated or subdivided. Additionally, in some embodiments, the components of the wagering game machine 106 can be interconnected according to any suitable interconnection architecture (e.g., directly connected, in series, in parallel, hypercube, etc.).
In. some embodiments, any of the components of the wagering game machine 106 (e.g., the firmware interface 136) can include hardware, firmware, and/or software for performing the operations described herein. Furthermore, any of the components can include machine-readable media including instructions for causing a machine to perform the operations described herein. Machine-readable media includes any mechanism, such as the main memory 128 and the storage unit 130, that provides (i.e., stores and/or transmits) information in a form readable by a machine (e.g., a wagering game machine platform, computer, etc.). For example, tangible machine-readable media includes read only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory machines, etc. Machine-readable media also includes any medium suitable for transmitting software over a network.
While Fig. 1 describes example embodiments of a wagering game machine, Fig. 2 shows how a plurality of wagering game machines 202 can be connected in a wagering game network 250.
Fig. 2 is a block diagram illustrating a wagering game network 250, according to example embodiments of the invention. As shown in Fig. 2, the wagering game network 250 includes a plurality of casinos 212 connected to a communications network 214.
Each of the plurality of casinos 212 may include a local area network 214, which includes wagering game machines 202 connected to a wagering game server 206 that may in turn be used to store a number of drivers DRl, DR2, ..., DRN and even a firmware interface 236, perhaps in a memory 228. The wagering game machines 202 and the wagering game server 206 can include hardware and machine-readable media including instructions for conducting pre-boot operations, as described herein. The wagering game machines 202 may be similar to or identical to the wagering game machine 106 illustrated in Fig. 1. In some embodiments, the wagering game server 206 can perform pre-boot operations in concert with serving wagering games and/or drivers over the wagering game network 250.
The wagering game machines 202 described herein can take any suitable form, such as floor standing models, mobile units, handheld mobile units, bartop models, workstation-type console models, etc. Further, the wagering game machines 202 may be primarily dedicated for use in conducting wagering games, or may comprise a non-dedicated device, such as a mobile phone, personal digital assistant, personal computer, etc. In some embodiments, the wagering game network 250 can include other network devices, such as accounting servers, wide area progressive servers, player tracking servers, and/or other devices suitable for use in connection with embodiments of the invention.
The components of each casino 212 can communicate over wired 208 and/or wireless connections 210. Furthermore, they can employ any suitable connection technology, such as Bluetooth, 802.11, Ethernet, public switched telephone networks, SONET, etc.
In some embodiments, one or more drivers DRl, DR2, ..., DRN are stored in a wagering game server 206. The drivers DRl , DR2, ..., DRN may be downloaded to the game machines 202, perhaps whenever new hardware is detected in the machines 202, and prior to executing an OS included in the machines 202. Other software and information may likewise be communicated between the machines 202 and the server 206 prior to an OS being executed by either the machines 202 and/or the server 206 by making use of one or more firmware interfaces 236. In some embodiments, the information thus obtained can be presented on an audio/visual (AV) unit 240, such as a television or monitor, that is associated with the game machine 202, and physically separated, but electronically coupled to it. In some embodiments, the drivers DRl, DR2, ..., DRN are communicated from the server (e.g., a wagering game server 206) to a client (e.g., a wagering game machine 202) using either a "push" or "pull" transfer mode. A push transfer mode is provided when, for example, an administrator initiates a transfer (i.e., download) of a driver (e.g., DRl) at a server and the driver is "pushed" out to one or more clients (e.g., wagering games machines 202) on the network 250. A pull transfer mode is provided by initiating a request to the server 206 for a driver download from a client machine (e.g., a game machine 202), perhaps prior to executing an OS included in the machine 202.
Referring now to FIGs. 1 and 2, it can be seen that additional embodiments may include a system 250 comprising one or more wagering apparatus 100, similar to or identical to described above with respect to FIG. 1, as well as a server 206 (e.g., a wide area progressive server) coupled to the apparatus 100 via a network 214, perhaps comprising wired 208 and/or wireless connections 210.
Any of the components previously described can be implemented in a number of ways, including simulation via software. Thus, the wagering apparatus 100; wagering game machine 106; payout mechanism 108; primary display 110; secondary display 112; value input device 114; player input device 116; information reader 118; I/O bus 122; external system interface 124; CPU 126; memories 128, 228; storage unit 130; wagering game unit 132; firmware 134; firmware interfaces 136, 236; OS loader and OS 138; connection 140; wagering game machines 202; wired connection 208; wireless connection 210; casinos 212; communications network 214; AV unit 240; system 250; browser BR; data tables DT; diagnostic application DA; drivers DRl, DR2, ..., DRN; source calls SC; testing terminal TT; wagering game WG; and wired network interface card and/or a wireless transceiver XCVR may all be characterized as "modules" herein.
These modules may include hardware circuitry, single or multi-processor circuits, memory circuits, software program modules and objects, firmware, and combinations thereof, as desired by the architect of the apparatus 100 and systems 250, and as appropriate for particular implementations of various embodiments. In some embodiments, the modules may be included in a system operation simulation package such as a software electrical signal simulation package, a power usage and distribution simulation package, a network security simulation package, a power/heat dissipation simulation package, a signal transmission-reception simulation package, or any combination of software and hardware used to simulate the operation of various potential embodiments. Such simulations may be used to characterize or test the embodiments, for example.
It should also be understood that the apparatus and systems of various embodiments can be used in applications other than wagering game machines. Thus, various embodiments of the invention are not to be so limited. The illustrations of apparatus 100 and systems 250 are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein.
Applications that may include the novel apparatus and systems of various embodiments include electronic circuitry used in high-speed computers, communication and signal processing circuitry, modems, single or multi-processor modules, single or multiple embedded processors, and application-specific modules, including multilayer, multi-chip modules. Such apparatus and systems may further be included as sub-components within a variety of electronic systems, such as data bridges, switches, and hubs; televisions and cellular telephones; personal digital assistants; personal computers and workstations; medical devices; radios and video players; and vehicles, among others.
Example Operations
FIG. 3 is a flowchart illustrating various methods 300 of operating a wagering game machine with a firmware interface, according to example embodiments of the invention. At block 321, the method 300 may include receiving power at a processor included in a wagering game machine operable to receive a wager associated with a wagering game. The method 300 may include executing a firmware interface at block 325, and then, perhaps after executing the firmware interface, accessing an application prior to executing an OS residing in a memory of the wagering game machine at block 329, perhaps to download a file from a network. As noted previously, the firmware interface may comprise an extensible firmware interface implemented according to a unified extensible firmware interface specification. The application accessed prior to executing an OS may comprise any number of programs, such as a local or global network browser, a wagering game, and/or a wagering game machine diagnostic program.
In some embodiments, the method 300 may include detecting the presence of hardware in a wagering game machine at block 333. For example, the method 300 may include discovering a card added to the wagering game system (and/or discovering the addition or changeout of a user input device, etc.), and/or determining if a peripheral included in the wagering game system is newer than the wagering game system OS software. The method 300 may also include downloading a driver associated with hardware in the wagering game system, such as a newly-discovered card or a peripheral that is newer than the OS, prior to executing the OS at block 335. The driver may be downloaded to any number of memories included in the wagering game system, such as the main memory and/or storage unit described above.
In some embodiments, the method 300 may include determining if a newer version of software included in the wagering game system is available at block 337. For example, prior to booting or executing an OS, a query may be sent out over a network, or a CD-ROM may be read, and if a newer version of a driver, OS, wagering game, or other software included in the wagering game system (including firmware, such as the firmware interface or a diagnostic application) is available, then the method 300 may include downloading (and even executing) the newer version of the software prior to executing the OS at block 339.
In some embodiments, the method 300 may include communicating information from a secure gaming server to one or more wagering game machines prior to executing the OS at block 341. If desired, in some embodiments the information may be obtained from a global network and displayed prior to executing the OS at block 345.
A variety of pre-boot functions may be executed at block 347. For example, the method 300 may include The firmware interface may operate to perform a memory clearing function, such as a random access memory (RAM) clear function (rather than the current practice of booting the OS to clear ram, and then promptly re-booting to load a wagering game). This might be enabled by installing a specific medium in the wagering game system, or by detecting the use of some other device (e.g., chip, radio frequency identification (RFID) tag, personal identification number (PIN), etc). In this case, data in the RFID device or a PIN could be checked against a back-end database to verify the authority of a user to perform a RAM clearance function.
The firmware interface may also operate to validate other media and/or programs in the game prior to booting the OS. In some embodiments, the validation process may be accomplished more quickly in this manner, due to less execution overhead, than by attempting to do the same thing while the OS is operating.
In some embodiments, the firmware interface may also operate to validate a variety of media and/or software using one core of a multi-core processor while the OS boots on a second core of the multi-core processor - this may also reduce the time occupied with validation of media/software, and booting the OS. The method 300 may conclude with executing an OS located in the wagering game machine and/or server at block 349.
The methods described herein do not have to be executed in the order described, or in any particular order. Moreover, various activities described with respect to the methods identified herein can be executed in repetitive, serial, or parallel fashion. Information, including parameters, commands, operands, and other data, can be sent and received in the form of one or more carrier waves.
One of ordinary skill in the art will understand the manner in which a software program can be launched from a computer-readable medium in a computer-based system to execute the functions defined in the software program. Various programming languages may be employed to create one or more software programs designed to implement and perform the methods disclosed herein. The programs may be structured in an object-orientated format using an object-oriented language such as Java or C++. Alternatively, the programs can be structured in a procedure-orientated format using a procedural language, such as assembly or C. The software components may communicate using a number of mechanisms well known to those skilled in the art, such as application program interfaces or interprocess communication techniques, including remote procedure calls. The teachings of various embodiments are not limited to any particular programming language or environment.
Thus, other embodiments may be realized, including a machine-readable medium encoded with instructions for directing a machine to perform operations comprising any of the methods described herein. For example, some embodiments may include a machine-readable medium encoded with instructions for directing a wagering game machine operable to receive a wager to perform a variety of operations. Such operations may include executing the instructions using a microprocessor after power is applied to the wagering game machine, and accessing an application to download a file from a network prior to executing an OS residing in a memory of the wagering game machine. Additional operations may include displaying information obtained from a global network prior to executing the OS, and/or downloading a driver associated with a peripheral included in the wagering game machine prior to executing the OS. Other operations may include any of the activities presented in conjunction with the methods described above.
Example Wagering Game Machine
FIG. 4 is a perspective view of a wagering game machine, according to example embodiments of the invention. Referring to FIG. 4, the wagering game machine 402 (which may be similar to or identical to the machines 106, 202 described above) may be used in gaming establishments, such as casinos. According to some embodiments, the wagering game machine 402 can be any type of wagering game machine and can have varying structures and methods of operation. For example, the wagering game machine 402 may comprise an electromechanical wagering game machine configured to play mechanical slots, or it may comprise an electronic wagering game machine configured to play video casino games, such as blackjack, slots, keno, poker, blackjack, roulette, etc.
The wagering game machine 402 may comprise a housing 401 and include input devices, such as wager input devices 444 (perhaps coupled to a value input device 114, shown in FIG. 1), and a player input device 416. For output, the wagering game machine 402 may include a primary display 410 for displaying information about a basic wagering game. The primary display 410 can also display information about a bonus wagering game, a progressive wagering game, and one or more attract packages. The wagering game machine 402 may also include a secondary display 412 for displaying wagering game events, wagering game outcomes, attract packages, information obtained prior to executing an OS included in the machine 402, and/or signage information. While some components of the wagering game machine 402 are described herein, numerous other elements can exist and can be used in any number or combination to create varying forms of the wagering game machine 402.
The wager input devices 444 can take any suitable form and may be located on the front of the housing 401. The wager input devices 444 can receive currency and/or credits inserted by a player. The wager input devices 444 can include coin " acceptors for receiving coin currency and bill acceptors for receiving paper currency. Additionally, the wager input devices 444 can include ticket readers or barcode scanners for reading information stored on vouchers, cards, or other tangible portable storage devices. The vouchers or cards can authorize access to central accounts, which can transfer money to the wagering game machine 402. Some wagering game machines 402 may utilize RFID (radio- frequency identification) technology to passively identify players and accept payment using an RFID carried by a player without the player having to carry out specific actions or enter anything physical into the game.
The player input device 416 may comprise a plurality of push buttons on a button panel 426 for operating the wagering game machine 402. In addition, or alternatively, the player input device 416 can comprise a touch screen 428 mounted over the primary display 410 and/or secondary display 412.
The various components of the wagering game machine 402 can be connected directly to, or contained within, the housing 401. Alternatively, some of the wagering game machine's components can be located outside of the housing 401, while being communicatively coupled with the wagering game machine 402 using any suitable wired or wireless communication technology.
The operation of the basic wagering game can be displayed to the player on the primary display 410. The primary display 410 can also display a bonus game associated with the basic wagering game. The primary display 410 may include a cathode ray tube (CRT), a high resolution liquid crystal display (LCD), a plasma display, light emitting diodes (LEDs), or any other type of display suitable for use in the wagering game machine 402. Alternatively, the primary display 410 can include a number of mechanical reels to display the outcome. In FIG. 4, the wagering game machine 402 is shown as an "upright" version in which the primary display 410 is oriented vertically relative to the player. Alternatively, the wagering game machine can be a "slant-top" version in which the primary display 410 is slanted at about a thirty-degree angle toward the player of the wagering game machine 402. In yet another embodiment, the wagering game machine 402 can be a bartop model, a mobile unit, a handheld mobile unit, a gaming device in a server-based system, or a workstation-type console model, among others.
A player may begin playing a basic wagering game by placing a wager via the player input device 416 and/or the wager input device 418. The player can initiate play by using the push buttons or the touch screen 428 or the player input device 416. The basic game can include arranging a plurality of symbols along a payline 432, which indicates one or more outcomes of the basic game. Such outcomes can be randomly selected in response to player input. At least one of the outcomes, which can include any variation or combination of symbols, can trigger the occurrence of a bonus game.
In some embodiments, the wagering game machine 402 can also include an information reader 420, which can include a card reader, ticket reader, bar code scanner, RFID transceiver, or computer readable storage medium interface. In some embodiments, the information reader 420 can be used to award complimentary services, restore game assets, track player habits, etc.
Implementing the apparatus, systems, and methods disclosed herein may operate to provide wagering game machines that are more easily maintained and updated. In addition, repair and upgrade operations may be effected more quickly, since, in many embodiments, an OS does not have to be executed prior to downloading drivers for new hardware, or testing various peripherals.
General Comments
In the following detailed description, reference is made to specific examples by way of drawings and illustrations. These examples are described in sufficient detail to enable those skilled in the art to practice the inventive subject matter, and serve to illustrate how the inventive subject matter may be applied to various purposes or embodiments. Other embodiments are included within the inventive subject matter, as logical, mechanical, electrical, and other changes may be made to the example embodiments described herein. Features or limitations of various embodiments described herein, however essential to the example embodiments in which they are incorporated, do not limit the inventive subject matter as a whole, and any reference to the invention, its elements, operation, and application are not limiting as a whole, but serve only to define these example embodiments.
Such embodiments of the inventive subject matter may be referred to herein individually or collectively by the term "invention" merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept, if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.
The Abstract of the Disclosure is provided to comply with 37 C.F.R. § 1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted to require more features than are expressly recited in each claim. Rather, inventive subject matter may be found in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.

Claims

CLAIMS:What is claimed is:
1. An apparatus comprising: a wagering game machine having a wagering game unit operable to receive a wager in association with a wagering game; and a platform-independent, firmware interface stored in a memory included in the wagering game machine to enable access to a network prior to executing an operating system included in the wagering game machine.
2. The apparatus of claim 1, further including: a testing terminal to communicate with a diagnostic application coupled to the firmware interface, wherein the terminal is coupled to the wagering game machine.
3. The apparatus of claim 1, further including: a stand-along diagnostic application coupled to the firmware interface, the application to display test results to a display of the wagering game machine prior to executing the operating system.
4. The apparatus of claim 1, further including: a memory included in the wagering game machine, the memory to store a global network browser to be executed by the firmware interface prior to executing the operating system.
5. The apparatus of claim 1, further including: a wireless transceiver to access the network, wherein the wireless transceiver is included in the wagering game machine.
6. The apparatus of claim 1 , further including: a value input device to electronically receive wagering value from a cashless gaming value source.
7. A system, comprising: an apparatus comprising a wagering game machine having a wagering game unit operable to receive a wager in association with a wagering game, and a platform-independent, firmware interface stored in a memory included in the wagering game machine to enable access to a network prior to executing an operating system included in the wagering game machine; and a server coupled to the apparatus via the network.
8. The system of claim 7, further including: a display included in the wagering game machine to display information obtained by a global network browser prior to execution of the operating system on the wagering game machine.
9. The system of claim 7, wherein the server comprises a wide area progressive server.
10. The system of claim 7, wherein the network comprises a wired network.
11. A method comprising: in a wagering game machine operable to receive a wager associated with a wagering game, receiving power at a processor included in the wagering game machine; and accessing an application to download a file from a network prior to executing an operating system residing in a memory of the wagering game machine.
12. The method of claim 11 , further including: executing a firmware interface prior to the accessing.
13. The method of claim 12, wherein the firmware interface comprises an extensible firmware interface according to a unified extensible firmware interface specification.
14. The method of claim 11, further including: discovering a card added to the wagering game system; and downloading a driver associated with the card prior to executing the operating system.
15. The method of claim 1 1, further including: discovering a user input device added to the wagering game system; and downloading a driver associated with the user input device prior to executing the operating system.
16. The method of claim 11, wherein the application comprises a global network browser.
17. The method of claim 11, wherein the application comprises a wagering game.
18. The method of claim 11, wherein the application comprises a wagering game machine diagnostic program.
19. The method of claim 11 , further including: determining if a peripheral included in the wagering game system is newer than the operating system; and downloading a driver associated with the peripheral prior to executing the operating system.
20. The method of claim 11 , further including: determining if a newer version of software included in the wagering game system is available; and downloading the newer version of the software prior to executing the operating system.
21. The method of claim 11 , further including: downloading a driver to the memory prior to executing the operating system.
22. The method of claim 11 , further including: communicating information from a secure gaming server to a plurality of wagering game machines including the wagering game machine prior to executing the operating system.
23. The method of claim 11, further including: validating software included in the wagering game machine prior to executing the operating system.
24. The method of claim 23, further including: validating the software included in the wagering game machine on a first core of a multi-core processor while executing the operating system on a second core of the multi-core processor.
25. A machine-readable medium encoded with instructions for directing a wagering game machine operable to receive a wager to perform operations including: executing the instructions using a microprocessor after power is applied to the wagering game machine; and accessing an application to download a file from a network prior to executing an operating system residing in a memory of the wagering game machine.
26. The machine-readable medium of claim 25, wherein the operations further include: displaying information obtained from a global network prior to executing the operating system.
27. The machine-readable medium of claim 25, wherein the operations further include: downloading a driver associated with a peripheral included in the wagering game machine prior to executing the operating system.
PCT/US2007/012206 2006-05-24 2007-05-22 Wagering game machines with pre-boot interfaces WO2007142821A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US80305106P 2006-05-24 2006-05-24
US60/803,051 2006-05-24

Publications (2)

Publication Number Publication Date
WO2007142821A2 true WO2007142821A2 (en) 2007-12-13
WO2007142821A3 WO2007142821A3 (en) 2008-10-16

Family

ID=38801967

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/012206 WO2007142821A2 (en) 2006-05-24 2007-05-22 Wagering game machines with pre-boot interfaces

Country Status (1)

Country Link
WO (1) WO2007142821A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2455002A (en) * 2004-12-01 2009-05-27 Igt Reno Nev Pre-execution environment in a gaming machine
US10970058B2 (en) 2017-01-18 2021-04-06 Hewlett-Packard Development Company, L.P. Software package installations with proximity tags

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060116208A1 (en) * 2004-12-01 2006-06-01 Igt Universal operating system to hardware platform interface for gaming machines

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060116208A1 (en) * 2004-12-01 2006-06-01 Igt Universal operating system to hardware platform interface for gaming machines

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2455002A (en) * 2004-12-01 2009-05-27 Igt Reno Nev Pre-execution environment in a gaming machine
GB2455002B (en) * 2004-12-01 2009-07-08 Igt Reno Nev A method for starting an electronic gaming machine
US7966485B2 (en) 2004-12-01 2011-06-21 Igt Universal operating system to hardware platform interface for gaming machines
US8281118B2 (en) 2004-12-01 2012-10-02 Igt Universal operating system to hardware platform interface for gaming machines
US8549276B2 (en) 2004-12-01 2013-10-01 Igt Universal operating system to hardware platform interface for gaming machines
US10970058B2 (en) 2017-01-18 2021-04-06 Hewlett-Packard Development Company, L.P. Software package installations with proximity tags

Also Published As

Publication number Publication date
WO2007142821A3 (en) 2008-10-16

Similar Documents

Publication Publication Date Title
US11361620B2 (en) Seamless initiation of primary and secondary games at modified gaming machines
US10152846B2 (en) Bonusing architectures in a gaming environment
US9311776B2 (en) Local game-area network system
US8449394B2 (en) Plug-in architecture for a wagering game network
US20070178970A1 (en) Gaming machine virtual player tracking and related services
US8172686B2 (en) Configurable wagering game manager
US10311671B2 (en) Method of modifying a primary game of an existing legacy gaming machine to include secondary game features
US8475264B2 (en) Wagering game machine upgrade and rollback
WO2011059634A1 (en) Gaming device having hard drive based media and related methods
US8777738B2 (en) System and method for an extensible boot image for electronic gaming machines
US20140378221A1 (en) Gaming Machine, Video Controller and Method for Arranging and Scaling Native and Legacy Video Content to Fit a Large Format Primary Display
US20190102994A1 (en) Gaming machine and method for integrating new bonus schemes to existing games
US9378620B2 (en) Gaming device, system and method for awarding a progressive prize through free plays of a game feature
US9098970B2 (en) Wagering game machine hibernation
US8827807B2 (en) Wagering game machine providing a write once run anywhere environment
US8357047B2 (en) Recovering a persistent storage unit in a wagering game system
US8721458B2 (en) NVRAM management in a wagering game machine
US20150050984A1 (en) Method for Operating a Gaming Machine
WO2007142821A2 (en) Wagering game machines with pre-boot interfaces
US8864582B2 (en) Wagering games with attract package scheduling
AU2022202426A1 (en) Electronic gaming device having expanding reel
US20140329604A1 (en) Transport agnostic ipc mechanism
AU2023203156A1 (en) Modular frontend game development framework

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07795189

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07795189

Country of ref document: EP

Kind code of ref document: A2