US20080194336A1 - Gaming Device with Resources Swapping - Google Patents

Gaming Device with Resources Swapping Download PDF

Info

Publication number
US20080194336A1
US20080194336A1 US11/570,097 US57009705A US2008194336A1 US 20080194336 A1 US20080194336 A1 US 20080194336A1 US 57009705 A US57009705 A US 57009705A US 2008194336 A1 US2008194336 A1 US 2008194336A1
Authority
US
United States
Prior art keywords
canceled
resource
file
swap
cached
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/570,097
Inventor
Mark B. Gagner
Robertus A kloes
Craig J. Sylla
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LNW Gaming Inc
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to US11/570,097 priority Critical patent/US20080194336A1/en
Assigned to WMS GAMING INC. reassignment WMS GAMING INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SYLLA, CRAIG J., GAGNER, MARK B., KLOES, ROBERTUS A.
Publication of US20080194336A1 publication Critical patent/US20080194336A1/en
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT SECURITY AGREEMENT Assignors: SCIENTIFIC GAMES INTERNATIONAL, INC., WMS GAMING INC.
Assigned to BALLY GAMING, INC. reassignment BALLY GAMING, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: WMS GAMING INC.
Assigned to SG GAMING, INC. reassignment SG GAMING, INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: BALLY GAMING, INC.
Assigned to BALLY GAMING, INC., WMS GAMING INC., SCIENTIFIC GAMES INTERNATIONAL, INC., DON BEST SPORTS CORPORATION reassignment BALLY GAMING, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/122Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value
    • 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
    • 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/3202Hardware aspects of a gaming system, e.g. components, construction, architecture thereof

Definitions

  • Embodiments of the invention described herein relate to a gaming device with resource swapping.
  • Embodiments of the invention include a method for conserving memory storage on a gaming machine.
  • the method includes creating a resource file and caching the resource file in RAM on a gaming machine; determining whether the resource file is accessed more than a preselected number of times within a preselected time interval; caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the SWAP file is accessed within a preselected period of time; and caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • Another embodiment includes a method for increasing the number of images, animations, and sounds on a gaming machine.
  • the method includes creating one or more resource files associated with one or more games and caching the one or more resource files in RAM on the gaming machine; determining whether the one or more resource files is accessed more than a preselected number of times within a preselected time interval; caching one or more of the resource files in a SWAP store as one or more SWAP files if the one or more resource files has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the one or more “SWAP files are accessed within a preselected period of time; and caching the one or more SWAP files as one or more resource files in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • the gaming machine includes RAM; a plurality of resource files stored on RAM, wherein the resource files have been accessed a preselected number of times or more over a preselected time interval; a SWAP store; and a plurality of SWAP files cached on the SWAP store.
  • One other embodiment includes a Computer Readable Medium for conserving memory storage on a gaming machine
  • the computer readable medium includes creating a resource file and caching the resource file in RAM on a gaming machine; determining whether the resource file is accessed more than a preselected number of times within a preselected time interval; caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the SWAP file is accessed within a preselected period of time; and caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • FIG. 1 illustrates a perspective view of a prior art gaming machine embodiment.
  • FIG. 2 illustrates a prior art block diagram of a control system embodiment suitable for operating the prior art gaming machine shown in FIG. 1 .
  • FIG. 3 illustrates a block diagram of a Cached Resource Swap mechanism that swaps unused Cached Resource Objects out of RAM and onto a secondary high-speed storage device.
  • FIG. 1 is a perspective view of a gaming machine 10 for conducting a wagering game.
  • the gaming machine 10 includes a display 12 that may, for example, be a mechanical reel slot display or a video display. If implemented in video, the display 12 may include a cathode ray tube (CRT), liquid crystal display (LCD), plasma, or generally any other type of video display known in the art.
  • the gaming machine 10 is an “upright” version in which the display 12 is oriented vertically relative to the player. It will be appreciated, however, that any of several other models of gaming machines are within the scope of the present invention including, for example, a “slant-top” version in which the display 12 is slanted at about a thirty-degree angle toward the player.
  • the gaming machine may include a secondary display in top box 13 , depending upon the design of the wagering game.
  • the gaming machine 10 includes a button panel 14 and an optional touch screen 16 for enabling a player to conduct the wagering game.
  • the button panel 14 and the touch screen 16 may have some corresponding buttons for performing the same functions and other buttons for performing different functions.
  • a “$” button may be pressed to insert money to increase a player's credits.
  • a “Change Denom” button may be touched to change denomination.
  • a “Collect” button may be touched to collect winnings.
  • a “Pay Table” button may be touched to see the game's pay table.
  • a “Select Lines” button may be touched to change the number of pay lines bet.
  • a “Bet Per Line” button may be touched to change the amount of credits bet on each line.
  • a “Spin Reels” button may be touched to begin the game.
  • a “Stop Reels” button may be touched to stop the reels while they are spinning. If the player does not touch the “Stop Reels” button, the reels will stop on their own.
  • a “Max Bet Spin” button may be touched to play the maximum credits instantly.
  • FIG. 2 is a block diagram of a control system suitable for operating the gaming machine.
  • Money/credit detector 18 signals a central processing unit (CPU) 20 when a player has inserted money or played a number of credits.
  • the money may be provided by coins, bills, tickets, coupons, cards, etc.
  • the player may select any game variables (e.g., number of pay lines in a reel slot game if more than one can be selected) and place his/her wager to play the wagering game.
  • the CPU 20 generates at least one random event using a random number generator (RNG) and provides an award to the player for a winning outcome of the random event.
  • RNG random number generator
  • the random event may be generated by a remote computer using an RNG or pooling schema and then transmitted to the gaming machine.
  • the CPU 20 operates the display 12 to represent the random event(s) and outcome(s) in a visual form that can be understood by the player.
  • the control system may include one or more additional slave control units for operating one or more peripherals.
  • processor and CPU as used herein are each intended to collectively cover the CPU 20 and any and all such control units.
  • a system memory 22 stores control software, operational instructions and data associated with the gaming machine.
  • the system memory 22 comprises a separate read-only memory (ROM) and battery-backed random-access memory (RAM).
  • ROM read-only memory
  • RAM battery-backed random-access memory
  • a payoff mechanism 24 is operable in response to instructions from the CPU 20 to award a payoff to the player.
  • the payoff may, for example, be in the form of a number of credits.
  • the number of credits are determined by one or more math tables stored in the system memory 22 .
  • a wagering game is described below wherein the basic game is a multi-line, multi-coin video reel slot game. It should, however, be understood that the basic game may be any type of wagering game, including but not limited to video or mechanical reel slots (one or more pay lines), poker, keno, bingo, blackjack, or roulette.
  • a player may select a number of pay lines using the “Select Lines” button, place a wager on each line using the “Bet Per Line” button, and start the reels 26 in motion using the “Spin Reels” button.
  • the player may select all lines, play the maximum bet on each line, and start the reels 26 in motion using the “Max Bet Spin” button.
  • the CPU spins and randomly stops the plurality of symbol-bearing reels 26 to place symbols on the reels 26 in visual association with a number of pay lines 28 .
  • the number of pay lines 28 may, for example, be nine, fifteen, or twenty, but more or less pay lines may be provided is desired.
  • the display 12 on which the reels are implemented may be mechanical or video. If the display 12 is video, the reels are simulated with moving graphics. If, however, the display 12 is mechanical, the reels are physical and rotatably driven by stepper motors.
  • the CPU may use a random number generator to select a game outcome (e.g., “basic” game outcome) corresponding to a particular set of reel “stop positions.”
  • the CPU then causes each of the reels 26 to stop at the appropriate stop position.
  • Symbols are displayed on the reels 26 to graphically illustrate the reel stop positions and indicate whether the stop positions of the reels 26 represent a winning game outcome.
  • Winning basic game outcomes e.g., symbol combinations resulting in payment of coins or credits
  • the pay table may be affixed to the machine 10 and/or displayed by the display 12 in response to a command by the player (e.g., by pressing the “Pay Table” button).
  • a winning basic game outcome occurs when the symbols appearing on the reels 26 along an active pay line 28 correspond to one of the winning combinations on the pay table.
  • a winning combination could, for example, be three or more matching symbols along an active pay line 28 , where the award is greater as the number of matching symbols along the active pay line 28 increases. If the displayed symbols stop in a winning combination, the game credits the player an amount corresponding to the award in the pay table for that combination multiplied by the number of wagered credits. The player may collect the amount of accumulated credits by pressing the “Collect” button.
  • start-bonus outcomes for triggering play of bonus games.
  • a start-bonus outcome may be defined in any number of ways. For example, a start-bonus outcome may occur when a special start-bonus symbol or a special combination of symbols appears on one or more of the reels 26 .
  • a start-bonus outcome may require the combination of symbols to appear along an active pay line 28 , or may alternatively require that the combination of symbols appear anywhere on the display regardless of whether the symbols are along an active pay line 28 .
  • the appearance of a start-bonus outcome causes the CPU to shift operation from the basic slot game to the bonus game associated with that start-bonus outcome.
  • a modern gaming machine has a large number of Resource files, which store individual images, animations, sounds and so forth. Most jurisdictions require that these Resource files be stored on read-only media in a secure, verifiable format. This type of media is generally much slower than system RAM.
  • FIG. 3 there is shown a Cached Resource Swap mechanism that swaps unused Cached Resource Objects out of RAM and onto a secondary high-speed storage device. This method conserves limited RAM space and allows more elaborate and complex games to be created.
  • Flash memory 32 is shown as the secure Resource Store.
  • any secure, verifiable media such as ROMs, CD-ROMs or DVDs
  • HD Hard Drive
  • any type of high-speed media may be used in an actual embodiment.
  • a Cached Resource Object (CImage in this example) 36 is created.
  • the specified Resource file 38 is read from the Resource Store, verified, decompressed, converted to the native display format and cached into RAM.
  • the Cached Resource Object 36 maintains a reference to this Cached Image. Note that the Cached Image may be deleted without destroying the Cached Resource Object. In this case the associated reference will be NULL.
  • swapping is enabled then a corresponding swap file 40 is created on the high-speed Swap Store 34 and the cached image is copied into the swap file.
  • a particular image may appear in more than one location on a particular display or set of displays. For example, a particular symbol such as a cherry may appear in multiple locations on one or more reels in a video slot game.
  • Each of these potential appearances has a reference to the associated Cached Resource Object (CImage in this example).
  • the Cached Resource Object keeps a Reference Count.
  • Each reference to a Cached Resource Object is independent and may be visible or invisible at any given moment. If the reference is visible then it instructs the corresponding Cached Resource Object to Show. Conversely, if the reference is not visible it instructs the Cached Resource Object to Hide.
  • the Cached Resource Object maintains a Show Count, which keeps track of the number of references that wish to show the image.
  • the Cached Resource Object will delete the Cached Image from memory, which frees valuable RAM space. Thus, only those images that are actually visible are retained in limited system RAM.
  • Swapping shall be enabled/disabled on an individual object basis.
  • individual objects may be declared “non-swappable”.
  • critical items such as tilt displays or frequently used items such as fonts may be declared “non-swappable.”
  • the Cached Resource Object When the Cached Resource Object is destroyed it deletes the cached image from RAM and deletes the corresponding swap file from the Swap Store. Since the swap files are not validated (i.e. verified) they must be reconstructed each time the corresponding Resource file is loaded to satisfy jurisdictional requirements.
  • the above technique is not limited to graphical images but can also be applied for any type of Resource that may be stored in slow media.
  • the technique may also be applied to audio files or scripts.
  • gaming machines of this invention have been depicted as upright models having top box mounted on top of the main gaming machine cabinet, the use of gaming devices in accordance with this invention is not so limited.
  • gaming machine may be provided without a top box or the gaming machine may be of a slant-top or a table top design.

Abstract

Embodiments of the invention include a method for conserving memory storage on a gaming machine. The method includes creating a resource file and caching the resource file in RAM on a gaming machine; determining whether the resource file is accessed more than a preselected number of times within a preselected time interval; caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the SWAP file is accessed within a preselected period of time; and caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This application is related to U.S. Provisional Patent Application Ser. No. 60/577,706, entitled “Gaming Device with Resource Swapping” (Attorney Docket 1842.115PRV), filed on Jun. 7, 2004.
  • TECHNICAL FIELD
  • Embodiments of the invention described herein relate to a gaming device with resource swapping.
  • COPYRIGHT
  • A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to any software and data as described below and in the drawings that form a part of this document: Copyright 2005, WMS Gaming, Inc. All Rights Reserved.
  • SUMMARY
  • Embodiments of the invention include a method for conserving memory storage on a gaming machine. The method includes creating a resource file and caching the resource file in RAM on a gaming machine; determining whether the resource file is accessed more than a preselected number of times within a preselected time interval; caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the SWAP file is accessed within a preselected period of time; and caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • Another embodiment includes a method for increasing the number of images, animations, and sounds on a gaming machine. The method includes creating one or more resource files associated with one or more games and caching the one or more resource files in RAM on the gaming machine; determining whether the one or more resource files is accessed more than a preselected number of times within a preselected time interval; caching one or more of the resource files in a SWAP store as one or more SWAP files if the one or more resource files has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the one or more “SWAP files are accessed within a preselected period of time; and caching the one or more SWAP files as one or more resource files in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • Another embodiment includes a gaming machine. The gaming machine includes RAM; a plurality of resource files stored on RAM, wherein the resource files have been accessed a preselected number of times or more over a preselected time interval; a SWAP store; and a plurality of SWAP files cached on the SWAP store.
  • One other embodiment includes a Computer Readable Medium for conserving memory storage on a gaming machine, the computer readable medium includes creating a resource file and caching the resource file in RAM on a gaming machine; determining whether the resource file is accessed more than a preselected number of times within a preselected time interval; caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval; monitoring the number of times the SWAP file is accessed within a preselected period of time; and caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
  • DESCRIPTION OF THE FIGURES
  • FIG. 1 illustrates a perspective view of a prior art gaming machine embodiment.
  • FIG. 2 illustrates a prior art block diagram of a control system embodiment suitable for operating the prior art gaming machine shown in FIG. 1.
  • FIG. 3 illustrates a block diagram of a Cached Resource Swap mechanism that swaps unused Cached Resource Objects out of RAM and onto a secondary high-speed storage device.
  • DESCRIPTION
  • In the following detailed description of exemplary embodiments of the invention, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific exemplary embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical, electrical and other changes may be made without departing from the scope of the present invention.
  • Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar computing device, that manipulates and transforms data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
  • In the Figures, 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.
  • The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.
  • Prior art FIG. 1 is a perspective view of a gaming machine 10 for conducting a wagering game. The gaming machine 10 includes a display 12 that may, for example, be a mechanical reel slot display or a video display. If implemented in video, the display 12 may include a cathode ray tube (CRT), liquid crystal display (LCD), plasma, or generally any other type of video display known in the art. In the illustrated embodiment, the gaming machine 10 is an “upright” version in which the display 12 is oriented vertically relative to the player. It will be appreciated, however, that any of several other models of gaming machines are within the scope of the present invention including, for example, a “slant-top” version in which the display 12 is slanted at about a thirty-degree angle toward the player. The gaming machine may include a secondary display in top box 13, depending upon the design of the wagering game.
  • The gaming machine 10 includes a button panel 14 and an optional touch screen 16 for enabling a player to conduct the wagering game. The button panel 14 and the touch screen 16 may have some corresponding buttons for performing the same functions and other buttons for performing different functions. By way of example, a “$” button may be pressed to insert money to increase a player's credits. A “Change Denom” button may be touched to change denomination. A “Collect” button may be touched to collect winnings. A “Pay Table” button may be touched to see the game's pay table. A “Select Lines” button may be touched to change the number of pay lines bet. A “Bet Per Line” button may be touched to change the amount of credits bet on each line. The number of lines to play is generally selected prior to selecting the amount to bet per line. A “Spin Reels” button may be touched to begin the game. A “Stop Reels” button may be touched to stop the reels while they are spinning. If the player does not touch the “Stop Reels” button, the reels will stop on their own. A “Max Bet Spin” button may be touched to play the maximum credits instantly.
  • Prior art FIG. 2 is a block diagram of a control system suitable for operating the gaming machine. Money/credit detector 18 signals a central processing unit (CPU) 20 when a player has inserted money or played a number of credits. The money may be provided by coins, bills, tickets, coupons, cards, etc. Using the button panel 14 or touch screen 16, the player may select any game variables (e.g., number of pay lines in a reel slot game if more than one can be selected) and place his/her wager to play the wagering game. In a play of the game, the CPU 20 generates at least one random event using a random number generator (RNG) and provides an award to the player for a winning outcome of the random event. Alternatively, the random event may be generated by a remote computer using an RNG or pooling schema and then transmitted to the gaming machine. The CPU 20 operates the display 12 to represent the random event(s) and outcome(s) in a visual form that can be understood by the player. In addition to the CPU 20, the control system may include one or more additional slave control units for operating one or more peripherals. The terms “processor” and CPU as used herein are each intended to collectively cover the CPU 20 and any and all such control units.
  • A system memory 22 stores control software, operational instructions and data associated with the gaming machine. In one embodiment, the system memory 22 comprises a separate read-only memory (ROM) and battery-backed random-access memory (RAM). However, it will be appreciated that the system memory 22 may be implemented on any of several alternative types of memory structures or may be implemented on a single memory structure. A payoff mechanism 24 is operable in response to instructions from the CPU 20 to award a payoff to the player. The payoff may, for example, be in the form of a number of credits. The number of credits are determined by one or more math tables stored in the system memory 22.
  • A wagering game is described below wherein the basic game is a multi-line, multi-coin video reel slot game. It should, however, be understood that the basic game may be any type of wagering game, including but not limited to video or mechanical reel slots (one or more pay lines), poker, keno, bingo, blackjack, or roulette.
  • Referring back to prior art FIG. 1, to play a basic game in the form of reel slots, a player may select a number of pay lines using the “Select Lines” button, place a wager on each line using the “Bet Per Line” button, and start the reels 26 in motion using the “Spin Reels” button. Alternatively, the player may select all lines, play the maximum bet on each line, and start the reels 26 in motion using the “Max Bet Spin” button. In response to pressing the “Max Bet Spin” button, or a “Spin Reels” button for a wager less than the maximum, the CPU spins and randomly stops the plurality of symbol-bearing reels 26 to place symbols on the reels 26 in visual association with a number of pay lines 28. Other mechanisms, such as a handle, may be used to set the reels 26 in motion. The number of pay lines 28 may, for example, be nine, fifteen, or twenty, but more or less pay lines may be provided is desired. As noted above, the display 12 on which the reels are implemented may be mechanical or video. If the display 12 is video, the reels are simulated with moving graphics. If, however, the display 12 is mechanical, the reels are physical and rotatably driven by stepper motors.
  • The CPU may use a random number generator to select a game outcome (e.g., “basic” game outcome) corresponding to a particular set of reel “stop positions.” The CPU then causes each of the reels 26 to stop at the appropriate stop position. Symbols are displayed on the reels 26 to graphically illustrate the reel stop positions and indicate whether the stop positions of the reels 26 represent a winning game outcome. Winning basic game outcomes (e.g., symbol combinations resulting in payment of coins or credits) are identifiable to the player by a pay table. The pay table may be affixed to the machine 10 and/or displayed by the display 12 in response to a command by the player (e.g., by pressing the “Pay Table” button). A winning basic game outcome occurs when the symbols appearing on the reels 26 along an active pay line 28 correspond to one of the winning combinations on the pay table. A winning combination could, for example, be three or more matching symbols along an active pay line 28, where the award is greater as the number of matching symbols along the active pay line 28 increases. If the displayed symbols stop in a winning combination, the game credits the player an amount corresponding to the award in the pay table for that combination multiplied by the number of wagered credits. The player may collect the amount of accumulated credits by pressing the “Collect” button.
  • Included among the plurality of basic game outcomes are one or more start-bonus outcomes for triggering play of bonus games. A start-bonus outcome may be defined in any number of ways. For example, a start-bonus outcome may occur when a special start-bonus symbol or a special combination of symbols appears on one or more of the reels 26. A start-bonus outcome may require the combination of symbols to appear along an active pay line 28, or may alternatively require that the combination of symbols appear anywhere on the display regardless of whether the symbols are along an active pay line 28. The appearance of a start-bonus outcome causes the CPU to shift operation from the basic slot game to the bonus game associated with that start-bonus outcome.
  • A modern gaming machine has a large number of Resource files, which store individual images, animations, sounds and so forth. Most jurisdictions require that these Resource files be stored on read-only media in a secure, verifiable format. This type of media is generally much slower than system RAM.
  • To speed rendering, most Resource files are verified, decompressed, converted to a native display format and cached in RAM. This is typically done at start-up. All Resources, even those that are not currently visible, are cached in system RAM. This approach improves performance during game play but limits the number and complexity of the Resources to what will fit into RAM after decompression.
  • On multi-game platforms the number and size of the Resources exceeds the capacity of system RAM and may therefore limit a manufacturer's product offerings.
  • Since most Resources are not visible at any given moment, a mechanism is needed for moving the decompressed, cached images from system RAM to a high-speed storage device when they are not needed.
  • Referring to FIG. 3, there is shown a Cached Resource Swap mechanism that swaps unused Cached Resource Objects out of RAM and onto a secondary high-speed storage device. This method conserves limited RAM space and allows more elaborate and complex games to be created.
  • In the example shown at 30 in FIG. 3, Flash memory 32 is shown as the secure Resource Store. However, any secure, verifiable media (such as ROMs, CD-ROMs or DVDs) might be used. Further, in this example a Hard Drive (HD) 34 is shown as the high-speed Swap Store but any type of high-speed media may be used in an actual embodiment.
  • When a Resource is to be instantiated a Cached Resource Object (CImage in this example) 36 is created. The specified Resource file 38 is read from the Resource Store, verified, decompressed, converted to the native display format and cached into RAM. The Cached Resource Object 36 maintains a reference to this Cached Image. Note that the Cached Image may be deleted without destroying the Cached Resource Object. In this case the associated reference will be NULL.
  • If swapping is enabled then a corresponding swap file 40 is created on the high-speed Swap Store 34 and the cached image is copied into the swap file.
  • A particular image may appear in more than one location on a particular display or set of displays. For example, a particular symbol such as a cherry may appear in multiple locations on one or more reels in a video slot game. Each of these potential appearances has a reference to the associated Cached Resource Object (CImage in this example). The Cached Resource Object keeps a Reference Count.
  • Each reference to a Cached Resource Object is independent and may be visible or invisible at any given moment. If the reference is visible then it instructs the corresponding Cached Resource Object to Show. Conversely, if the reference is not visible it instructs the Cached Resource Object to Hide. The Cached Resource Object maintains a Show Count, which keeps track of the number of references that wish to show the image.
  • If the Show Count becomes zero and swapping is enabled then the Cached Resource Object will delete the Cached Image from memory, which frees valuable RAM space. Thus, only those images that are actually visible are retained in limited system RAM.
  • When the Show Count becomes non-zero then the cached image is restored from the swap file. Since the swap file has already been verified and decompressed and exists on high-speed storage, restoration is much faster than retrieving and decompressing the original resource image from the Resource Store.
  • Swapping shall be enabled/disabled on an individual object basis. In other words, individual objects may be declared “non-swappable”. For example, critical items such as tilt displays or frequently used items such as fonts may be declared “non-swappable.”
  • If any single reference is non-swappable then the object is non-swappable.
  • When the Cached Resource Object is destroyed it deletes the cached image from RAM and deletes the corresponding swap file from the Swap Store. Since the swap files are not validated (i.e. verified) they must be reconstructed each time the corresponding Resource file is loaded to satisfy jurisdictional requirements.
  • The above technique is not limited to graphical images but can also be applied for any type of Resource that may be stored in slow media. For example, the technique may also be applied to audio files or scripts.
  • Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. For instance, while the gaming machines of this invention have been depicted as upright models having top box mounted on top of the main gaming machine cabinet, the use of gaming devices in accordance with this invention is not so limited. For example, gaming machine may be provided without a top box or the gaming machine may be of a slant-top or a table top design.

Claims (54)

1. A method for conserving memory storage on a gaming machine, comprising:
Creating a resource file and caching the resource file in RAM on a gaming machine;
Determining whether the resource file is accessed more than a preselected number of times within a preselected time interval;
Caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval;
Monitoring the number of times the SWAP file is accessed within a preselected period of time; and
Caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
2. The method of claim 1 wherein the resource file comprises one or more of an image, animation or a sound.
3. (canceled)
4. The method of claim 1 wherein the resource file is instantiated to create a cached resource object.
5. The method of claim 4 wherein the cached resource object maintains a reference to a cached image.
6. (canceled)
7. (canceled)
8. (canceled)
9. The method of claim 5, further comprising copying the cached image into the SWAP file.
10. (canceled)
11. (canceled)
12. The method of claim 4, wherein the cached resource object tracks a number of references that wish to show an image associated with the cached resource object.
13. (canceled)
14. (canceled)
15. (canceled)
16. (canceled)
17. A method for increasing the number of images, animations, and sounds on a gaming machine, the method comprising:
Creating one or more resource files associated with one or more games and caching the one or more resource files in RAM on the gaming machine;
Determining whether the one or more resource files is accessed more than a preselected number of times within a preselected time interval;
Caching one or more of the resource filea in a SWAP store as one or more SWAP files if the one or more resource files has not been accessed the preselected number of times within the preselected time interval;
Monitoring the number of times the one or more “SWAP files are accessed within a preselected period of time; and
Caching the one or more SWAP files as one or more resource files in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
18. (canceled)
19. The method of claim 17 wherein the resource file is stored in a resource store.
20. The method of claim 17 wherein the resource file is instantiated to create a cached resource object.
21. The method of claim 20 wherein the cached resource object maintains a reference to a cached image.
22. (canceled)
23. (canceled)
24. (canceled)
25. The method of claim 21, further comprising copying the cached image into the SWAP file.
26. (canceled)
27. (canceled)
28. The method of claim 20, wherein the cached resource object tracks a number of references that wish to show an image associated with the cached resource object.
29. (canceled)
30. (canceled)
31. (canceled)
32. (canceled)
33. A gaming machine comprising:
RAM;
A plurality of resource files stored on RAM, wherein the resource files have been accessed a preselected number of times or more over a preselected time interval;
A SWAP store; and
A plurality of SWAP files cached on the SWAP store.
34. (canceled)
35. (canceled)
36. The gaming machine of claim 33 wherein the resource file is instantiated to create a cached resource object.
37. (canceled)
38. (canceled)
39. A Computer Readable Medium for conserving memory storage on a gaming machine, the computer readable medium comprising:
Creating a resource file and caching the resource file in RAM on a gaming machine;
Determining whether the resource file is accessed more than a preselected number of times within a preselected time interval;
Caching the resource file in a SWAP store as a SWAP file if the resource file has not been accessed the preselected number of times within the preselected time interval;
Monitoring the number of times the SWAP file is accessed within a preselected period of time; and
Caching the SWAP file as a resource file in RAM of the gaming machine if the SWAP file is accessed a number of preselected times or more.
40. (canceled)
41. (canceled)
42. The Computer Readable Medium of claim 39 wherein the resource file is instantiated to create a cached resource object.
43. The Computer Readable Medium of claim 42 wherein the cached resource object maintains a reference to a cached image.
44. (canceled)
45. (canceled)
46. (canceled)
47. The Computer Readable Medium of claim 42, further comprising copying the cached image into the SWAP file.
48. (canceled)
49. (canceled)
50. The Computer Readable Medium of claim 42, wherein the cached resource object tracks a number of references that wish to show an image associated with the cached resource object.
51. (canceled)
52. (canceled)
53. (canceled)
54. The Computer Readable Medium of claim 43 wherein when the cached resource object is destroyed, the cached resource object deletes the cached image and corresponding SWAP file.
US11/570,097 2004-06-07 2005-06-07 Gaming Device with Resources Swapping Abandoned US20080194336A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/570,097 US20080194336A1 (en) 2004-06-07 2005-06-07 Gaming Device with Resources Swapping

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US57770604P 2004-06-07 2004-06-07
PCT/US2005/020133 WO2005121968A2 (en) 2004-06-07 2005-06-07 Gaming device with resource swapping
US11/570,097 US20080194336A1 (en) 2004-06-07 2005-06-07 Gaming Device with Resources Swapping

Publications (1)

Publication Number Publication Date
US20080194336A1 true US20080194336A1 (en) 2008-08-14

Family

ID=35503785

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/570,097 Abandoned US20080194336A1 (en) 2004-06-07 2005-06-07 Gaming Device with Resources Swapping

Country Status (2)

Country Link
US (1) US20080194336A1 (en)
WO (1) WO2005121968A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104054088A (en) * 2011-11-10 2014-09-17 黑莓有限公司 Managing cross perimeter access
US10848520B2 (en) 2011-11-10 2020-11-24 Blackberry Limited Managing access to resources
US11032283B2 (en) 2012-06-21 2021-06-08 Blackberry Limited Managing use of network resources
USRE48679E1 (en) 2004-04-30 2021-08-10 Blackberry Limited System and method for handling data transfers

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
US5463775A (en) * 1991-06-10 1995-10-31 International Business Machines Corporation System and method for performing monitoring of resources in a data processing system in real time
US5490260A (en) * 1990-12-14 1996-02-06 Ceram, Inc. Solid-state RAM data storage for virtual memory computer using fixed-sized swap pages with selective compressed/uncompressed data store according to each data size
US5517643A (en) * 1988-11-02 1996-05-14 Raxco Incorporated Method of allocating memory among a plurality of processes of a computer system
US5526519A (en) * 1992-03-27 1996-06-11 Hitachi, Ltd. Memory management technique for efficient execution of procedures in objects
US5727178A (en) * 1995-08-23 1998-03-10 Microsoft Corporation System and method for reducing stack physical memory requirements in a multitasking operating system
US6332172B1 (en) * 1998-05-29 2001-12-18 Cisco Technology, Inc. Method and system for virtual memory compression in an embedded system
US6473842B1 (en) * 1999-01-04 2002-10-29 Nec Corporation Virtual memory managing system for managing swap-outs by page units and a batch swap-out by task units
US20030005257A1 (en) * 2001-06-28 2003-01-02 Wilson Kenneth Mark Memory table and memory manager for use in managing memory
US6516397B2 (en) * 2001-04-09 2003-02-04 Hewlett-Packard Company Virtual memory system utilizing data compression implemented through a device
US20030064771A1 (en) * 2001-09-28 2003-04-03 James Morrow Reconfigurable gaming machine
US20030073497A1 (en) * 2000-10-17 2003-04-17 Nelson Dwayne R. Dynamic NV-RAM
US6902481B2 (en) * 2001-09-28 2005-06-07 Igt Decoupling of the graphical presentation of a game from the presentation logic
US20050223219A1 (en) * 2003-03-10 2005-10-06 Cyberscan Technology, Inc. Dynamic configuration of a gaming system
US20070005887A1 (en) * 2005-06-17 2007-01-04 Larson Tait E Caching resources requested by applications

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581736A (en) * 1994-07-18 1996-12-03 Microsoft Corporation Method and system for dynamically sharing RAM between virtual memory and disk cache
US5953522A (en) * 1996-07-01 1999-09-14 Sun Microsystems, Inc. Temporary computer file system implementing using anonymous storage allocated for virtual memory

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5517643A (en) * 1988-11-02 1996-05-14 Raxco Incorporated Method of allocating memory among a plurality of processes of a computer system
US5490260A (en) * 1990-12-14 1996-02-06 Ceram, Inc. Solid-state RAM data storage for virtual memory computer using fixed-sized swap pages with selective compressed/uncompressed data store according to each data size
US5463775A (en) * 1991-06-10 1995-10-31 International Business Machines Corporation System and method for performing monitoring of resources in a data processing system in real time
US5526519A (en) * 1992-03-27 1996-06-11 Hitachi, Ltd. Memory management technique for efficient execution of procedures in objects
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
US5727178A (en) * 1995-08-23 1998-03-10 Microsoft Corporation System and method for reducing stack physical memory requirements in a multitasking operating system
US6496882B2 (en) * 1998-05-29 2002-12-17 Cisco Technology, Inc Method and system for virtual memory compression in an embedded system
US6332172B1 (en) * 1998-05-29 2001-12-18 Cisco Technology, Inc. Method and system for virtual memory compression in an embedded system
US6473842B1 (en) * 1999-01-04 2002-10-29 Nec Corporation Virtual memory managing system for managing swap-outs by page units and a batch swap-out by task units
US20030073497A1 (en) * 2000-10-17 2003-04-17 Nelson Dwayne R. Dynamic NV-RAM
US6516397B2 (en) * 2001-04-09 2003-02-04 Hewlett-Packard Company Virtual memory system utilizing data compression implemented through a device
US20030005257A1 (en) * 2001-06-28 2003-01-02 Wilson Kenneth Mark Memory table and memory manager for use in managing memory
US20030064771A1 (en) * 2001-09-28 2003-04-03 James Morrow Reconfigurable gaming machine
US6902481B2 (en) * 2001-09-28 2005-06-07 Igt Decoupling of the graphical presentation of a game from the presentation logic
US20050223219A1 (en) * 2003-03-10 2005-10-06 Cyberscan Technology, Inc. Dynamic configuration of a gaming system
US20070005887A1 (en) * 2005-06-17 2007-01-04 Larson Tait E Caching resources requested by applications

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE48679E1 (en) 2004-04-30 2021-08-10 Blackberry Limited System and method for handling data transfers
USRE49721E1 (en) 2004-04-30 2023-11-07 Blackberry Limited System and method for handling data transfers
CN104054088A (en) * 2011-11-10 2014-09-17 黑莓有限公司 Managing cross perimeter access
US10848520B2 (en) 2011-11-10 2020-11-24 Blackberry Limited Managing access to resources
US11032283B2 (en) 2012-06-21 2021-06-08 Blackberry Limited Managing use of network resources

Also Published As

Publication number Publication date
WO2005121968A3 (en) 2007-08-23
WO2005121968A2 (en) 2005-12-22

Similar Documents

Publication Publication Date Title
US9129472B2 (en) Gaming device having one or more shared award-modifier reels
US7500915B2 (en) Method and apparatus for rewarding multiple game players for a single win
US8202153B2 (en) Gaming device having wager dependent bonus game play
US8753190B2 (en) Gaming device having a re-triggering symbol bonus scheme
US8454426B2 (en) Wagering game with active paytable highlighting winning combinations
US8066563B1 (en) Method for enhancing winning outcomes in a reel spinning game
US20160063810A1 (en) Universal Overlay Games in an Electronic Gaming Environment
US20120270634A1 (en) Gaming system and method having a partial selectable symbol matrix
US20060084498A1 (en) Gaming device having concentric reels and a displayable wild symbol
US20060084493A1 (en) Gaming device having player selection of scatter pay symbol positions
US11893852B2 (en) Electronic gaming machines with out-of-process rendering
US20090181769A1 (en) System and method for 3d image manipulation in gaming machines
US20070178959A1 (en) Gaming machine having gameplay sequence designators
GB2411508A (en) Gaming machine with special award feature
US11645892B2 (en) Persistent symbol position arrays with array growth in both base game and feature game
US20080194336A1 (en) Gaming Device with Resources Swapping
US20120184347A1 (en) Gaming system and a method of gaming
US11373482B2 (en) Gaming systems and methods for offering a player multiple games
US20240046761A1 (en) Gaming device with fillable symbol position pattern
US20230098240A1 (en) Apparatuses and methods for controlling rate of play at a gaming machine
AU2013267031A1 (en) A gaming system and a method of gaming

Legal Events

Date Code Title Description
AS Assignment

Owner name: WMS GAMING INC., ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GAGNER, MARK B.;KLOES, ROBERTUS A.;SYLLA, CRAIG J.;REEL/FRAME:021092/0836;SIGNING DATES FROM 20071102 TO 20071107

Owner name: WMS GAMING INC., ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GAGNER, MARK B.;KLOES, ROBERTUS A.;SYLLA, CRAIG J.;SIGNING DATES FROM 20071102 TO 20071107;REEL/FRAME:021092/0836

AS Assignment

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:SCIENTIFIC GAMES INTERNATIONAL, INC.;WMS GAMING INC.;REEL/FRAME:031847/0110

Effective date: 20131018

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: BALLY GAMING, INC., NEVADA

Free format text: MERGER;ASSIGNOR:WMS GAMING INC.;REEL/FRAME:036225/0201

Effective date: 20150629

AS Assignment

Owner name: SG GAMING, INC., NEVADA

Free format text: CHANGE OF NAME;ASSIGNOR:BALLY GAMING, INC.;REEL/FRAME:051649/0316

Effective date: 20200103

AS Assignment

Owner name: DON BEST SPORTS CORPORATION, NEVADA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:059756/0397

Effective date: 20220414

Owner name: BALLY GAMING, INC., NEVADA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:059756/0397

Effective date: 20220414

Owner name: WMS GAMING INC., NEVADA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:059756/0397

Effective date: 20220414

Owner name: SCIENTIFIC GAMES INTERNATIONAL, INC., NEVADA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:059756/0397

Effective date: 20220414