U.S. patent application number 10/272332 was filed with the patent office on 2004-04-22 for apparatus and method for handheld color bingo card monitor.
Invention is credited to Marshall, Josiah F..
Application Number | 20040077400 10/272332 |
Document ID | / |
Family ID | 32092590 |
Filed Date | 2004-04-22 |
United States Patent
Application |
20040077400 |
Kind Code |
A1 |
Marshall, Josiah F. |
April 22, 2004 |
Apparatus and method for handheld color bingo card monitor
Abstract
An apparatus and method are described for monitoring bingo cards
using a portable game device. The game device has a central
processing unit, a bit-mapped color display and memory containing
representations of bingo cards, a series of games to be played and
their rules, and the number of cards to be played. The game device
may be battery powered and adopt reduced power modes of operation
to conserve battery life. An external power supply may be connected
to the game device without interrupting a game in progress. The
game device may have more than one battery and charge one battery
fully before recharging the other batteries. The game device may
have a wireless communications port, through which the memory may
be loaded. A communications protocol with security elements may be
used for loading the memory. The game device may test its circuitry
and data in memory before commencing game play.
Inventors: |
Marshall, Josiah F.;
(Irving, TX) |
Correspondence
Address: |
HUGHES & LUCE LLP
1717 MAIN STREET
SUITE 2800
DALLAS
TX
75201
US
|
Family ID: |
32092590 |
Appl. No.: |
10/272332 |
Filed: |
October 16, 2002 |
Current U.S.
Class: |
463/19 |
Current CPC
Class: |
A63F 2009/2457 20130101;
A63F 2009/2404 20130101; A63F 3/062 20130101; A63F 3/064
20130101 |
Class at
Publication: |
463/019 |
International
Class: |
A63F 009/24 |
Claims
What is claimed is:
1. A portable game device, comprising: a power supply; a central
processing unit connected to the power supply; a user interface
connected to the power supply and to the central processing unit; a
volatile memory unit; a non-volatile memory connected to the power
supply and to the central processing unit, containing: bingo card
data representative of a plurality of bingo cards; game data
representative of a set of games and a set of winning patterns, and
an identifier for the number of bingo cards in play; a computer
program containing: instructions for monitoring bingo cards during
a game; and instructions for displaying a selectable number of
bingo cards; and a bit-mapped color display connected to the power
supply and to a graphics display for matter.
2. The portable game device of claim 1 wherein the non-volatile
memory comprises a removable game key containing the game data.
3. The portable game device of claim 1 further comprising a
graphics engine connected to the central processing unit and the
color display.
4. The portable game device of claim 1 wherein the computer program
further contains instructions for utilizing display formats from a
cyclical sequence of formats, each format displaying a different
number of bingo cards, the next format in the sequence being
utilized in response to user input via the user interface.
5. The portable game device of claim 1 wherein the power supply
comprises a battery.
6. The portable game device of claim 5 wherein the game device has
a reduced power operating mode and the game device further
comprises circuitry to switch the game device to the reduced power
operating mode.
7. The portable game device of claim 5 further comprising power
management circuitry connected to the power supply, the power
supply further comprising a plurality of rechargeable batteries,
where the power management circuitry charges one battery of the
plurality of batteries completely before charging another battery
of the plurality of batteries.
8. The portable game device of claim 5 wherein the power supply
further comprises an external power connector, where connection of
an external power source to the external power connector does not
interrupt a game in progress.
9. The portable game device of claim 1 further comprising a
wireless communication port connected to the central processing
unit.
10. The portable game device of claim 9 wherein the computer
program further contains instructions for receiving downloads to
non-volatile memory through the wireless communication port.
11. The portable game device of claim 9 wherein the communication
port is bi-directional.
12. The portable game device of claim 9, wherein the wireless
communication port communicates using infrared signals.
13. The portable game device of claim 9 wherein the wireless
communication port communicates using radio frequency signals.
14. The portable game device of claim 9 wherein the computer
program further contains instructions for using a communication
protocol with security features.
15. The portable game device of claim 1 wherein the computer
program further contains instructions to test device circuitry and
data stored in non-volatile memory prior to allowing normal
operation of the game device.
16. A method of monitoring bingo cards during play using a portable
game device having memory, a user interface and a bit-mapped color
display, comprising the steps of: storing bingo card data in the
memory representative of a plurality of bingo cards, including
bingo cards in play; displaying a one or more of the bingo cards in
play on the bit-mapped color display, the number of cards displayed
being selected by the user; storing game data in the memory
representative of a set of games, a set of winning patterns, and an
identifier for the number of bingo cards in play; receiving called
numbers entered by the user at the user interface; comparing the
called numbers on each bingo card in play to the winning patterns;
and presenting a notification to the user when one of the bingo
cards in play contains called numbers in a winning pattern.
17. The method of claim 16, further comprising the step of
inserting a removable game key to enable operation of the portable
game device, the game data being stored in memory in the game
key.
18. The method of claim 16, further comprising the step of powering
the portable game device with a battery.
19. The method of claim 18, further comprising the steps of:
monitoring the operational status of the portable game device; and
entering a reduced power mode of operation in response to the
monitored status of the portable game device.
20. The method of claim 18, wherein the step of powering the
portable game device utilizes a plurality of rechargeable
batteries, the method further comprising the step of recharging one
of the plurality of batteries completely before recharging the
remainder of the plurality of batteries.
21. The method of claim 18, wherein the portable game device has an
external power connector, the method further comprising the step of
connecting an external power supply to the external power connector
without interrupting a game in progress.
22. The method of claim 16, further comprising the steps of:
communicating with the portable game device using a wireless
communication link; and downloading data into the memory from an
external device over the wireless communication link.
23. The method of claim 22, further comprising the step of
employing a communication protocol with security features to
communicate over the communication link.
24. The method of claim 16, further comprising the step of
self-testing the circuitry and stored data of the portable game
device before allowing game play to begin.
25. The method of claim 16, further comprising the step of
providing display formats each showing a different number of bingo
cards, the format in use being selected by the user via the user
interface.
26. A method of preparing game devices for use while playing bingo,
comprising the steps of: accepting an order from a player
specifying a number of bingo cards to be played; providing a game
device having memory and a bit-mapped color display capable of
displaying a selectable number of bingo cards; transmitting data to
the game device using a wireless communication link, the data
representative of a set of games, a set of winning patterns, and an
identifier for the number of bingo cards in play.
27. The method of claim 26, the step of transmitting further
comprising the step of utilizing a communication protocol with
security features.
Description
TECHNICAL FIELD OF THE INVENTION
[0001] The present invention relates to a portable electronic game
system and more particularly to a stand-alone electronic bingo game
apparatus.
BACKGROUND OF THE INVENTION
[0002] Bingo is game of chance in which each player's chances of
winning depends upon numbers drawn at random. Players compete in
against other using bingo cards prepared with a design of five rows
of five squares each for a total of 25 squares. The letters
B-I-N-G-O is displayed above the grid, with each letter aligned
with a vertical column of squares. A two-digit number generally
from 1 to 99, but preferably from 1 to 75, appears in every square
of the bingo card except the center square, which is designated as
a free play. The game also uses a central source for generating
random numbers. The random numbers are drawn from a pool of bingo
balls. The number of balls corresponds to the range of numbers
available on the bingo card. On each ball are found letters and
numbers corresponding to those printed on the bingo cards. Each
ball includes one letter from the word bingo and one number from
the range of numbers printed on the bingo card.
[0003] From a conventional air-ball machine or a box, a caller
chooses numbers at random one ball at a time and announces the
letter and number appearing on the ball. The players with numbers
matching the number on the ball called, marks off the number being
called using an ink marker called a "dauber". In the basic form of
bingo, as soon as five numbers are covered in a straight line
vertically, horizontally or diagonally, the person with the covered
numbers calls out "bingo!" Each player that attains "bingo" in a
game wins a prize. At the end of each game players turn in their
marked cards and must purchase new cards to play another round.
Players generally have an opportunity to play more than one bingo
card. Often players may attempt as may bingo cards as they have
table space available with the idea that the more cards played
increases the player's chances of winning bingo. Bingo cards are
often sold prepackaged in groups of various denominations. Players
can purchase these packaged cards as an added convenience.
[0004] With the growth in popularity for the bingo game, more
challenging changes have added to the bingo game. First, the basic
winning patterns of aligning five numbers on a card either
horizontally, vertically or diagonally have been supplemented by a
number of complex winning patterns. Some of these winning patterns
are as follows:
[0005] Postage Stamp where winning numbers are found only in one
corner of the array;
[0006] Four Corners where winning numbers are found in every corner
of the array;
[0007] Small Diamond where four winning numbers are found
encircling one cell in the array;
[0008] Block of Nine where winning numbers are found in a three by
three array forming a block of nine numbers;
[0009] Crazy T where winning numbers are aligned in a horizontal
line and a vertical line to form a "T" shape;
[0010] Large Diamond where winning numbers are aligned diagonally
encircling a small diamond;
[0011] Small Picture Frame where eight winning numbers are found
encircling one cell in the array; and
[0012] Crazy L where winning numbers are aligned in a vertical line
and horizontal line to form an "L" shape.
[0013] In addition, some bingo halls are now using "wild numbers"
to further add to the complexity of the game. The "wild numbers"
are typically called out at the beginning of game play. A "wild
number" is identified by the caller before it is drawn. The caller
also identifies what characteristic will make the number wild. For
example, if the number is even then all even numbers may be marked.
Or for example, all numbers sharing the same first digit may also
be declared as wild. Other, criteria may be used as well, but it is
generally the bingo hall that determines the rules for each
game.
[0014] Wild card numbers and the winning patterns generally change
for each bingo game. In order to achieve "bingo" during any game,
the players must know the rules and apply the rules properly during
each called number in order to achieve bingo. A problem occurs with
players accustomed to playing large numbers of bingo cards. The
complexity of tracking several winning numbers for each game
combined with the large number of cards played, often increases the
chances that a players will miss a possible winning match.
[0015] Electronic bingo devices have been developed to help
alleviate the problem of tracking large numbers of bingo cards over
various patterns; however many of these devices are not well suited
for complexities of game play available. While other devices which
are well suited for such game play are complex and require computer
operators to load the game information before use. One such device
is disclosed in U.S. Pat. No. 4,747,600 issued to Richardson which
describes a gaming board that includes a communications port used
in an electronic bingo system. A computer operator transfers
individual game player cards and winning pattern information to the
gaming boards from a base station computer. This method has to be
performed on each gaming board used in play. The result is added
cost and labor to the bingo hall. Another problem with the
electronic bingo system is that each game board must be
individually connected to the base station in order to be
configured. This causes added delay, as players must wait for the
operator of the base station to configure their systems.
[0016] Some electronic bingo devices have a monochrome character
display, which is fabricated with segmented preformed characters.
These characters are in fixed positions in the display and the only
symbols available are those that can be formed from illuminating
combinations of the segments of a character. To display a bingo
card, a character display is fabricated with 25 cells in a
5.times.5 array, each cell formed of two characters. Four such
displays are used to display four bingo cards. Other information
cannot be displayed along with the bingo cards, and a different
number of bingo cards cannot be displayed. When other information
is displayed instead of bingo cards, it must be displayed within
the format of four 5.times.5 arrays of two-character cells. The
extent of interaction with the user is limited by the monochrome
display.
[0017] Some battery-powered electronic bingo devices have short
battery life, requiring the user to return the device to a
recharging station at frequent intervals. Often, battery power will
run out during a bingo game, causing the player to lose data
entered for that game. When this occurs, bingo hall employees must
replace the exhausted batteries, plug in a backup power supply, or
issue a new device to the player. All of these options involve an
interruption of the game in progress and a recovery period in which
the player re-enters information about the interrupted game in
progress.
[0018] As such, many typical electronic bingo devices suffer one or
more shortcomings. Other problems and disadvantages of the prior
art will become apparent to one skilled in the art after comparing
such prior art with the present invention as described herein.
SUMMARY OF THE INVENTION
[0019] The present invention provides an electronic game device for
monitoring bingo cards during a game of bingo. A large number of
cards may be played by the player in any game. A series of bingo
games with different winning patterns and different wild number
rules can be loaded into the device and used to monitor the bingo
cards in play. When a card in play exhibits a winning pattern, the
device notifies the player. A bit-mapped color display is used to
present a selectable number of bingo cards to the user, and other
information can be presented in appropriate formats. Reduced power
operational modes can be adopted in battery-powered devices to
extend battery life. Devices whose batteries have almost run out
can be connected to an external power source without interrupting a
game in progress.
[0020] More specifically, aspects of the invention may be found in
a portable game apparatus with a power supply, a central processing
unit, a user interface, a non-volatile memory, and a bit-mapped
color display. The memory contains a representation of bingo cards,
a set of games to be played and the winning patterns for those
games, instructions for monitoring bingo cards during a bingo game,
and instructions for displaying a selectable number of bingo cards
together on the display. A portion of the memory may be located in
a removable game key that can be inserted into the game apparatus.
The power supply may be a battery and the game apparatus may have
circuitry to switch the apparatus to reduced power operating modes.
The power supply may be a plurality of batteries, and the game
device may have circuitry that charges one of the batteries fully
before recharging the other batteries. The game device may have an
external power connector to which an external power source can be
connected without interrupting a game in progress. The game device
may have a wireless communication port, which may be
bi-directional, and the memory of the device may be loaded through
the wireless port. A communication protocol with security features
may be used for communications on the wireless port. The game
device may test its circuitry and memory before commencing game
play.
[0021] Other aspects of the invention may be found in a method of
monitoring bingo cards during play using a portable game device
that has memory, a user interface and a bit-mapped color display.
Steps of the method include storing data representing bingo cards,
a series of games to be played and the winning patterns for those
games, and the number of bingo cards to be played. Further steps of
the method include displaying one or more bingo cards on the
display, the number of cards being selected by the user. The method
also includes the step of receiving called numbers entered by the
user at the user interface. Further steps of the method include
creating a mask for each card reflecting the numbers on that card
that have been called, comparing each bingo card mask to the
winning patterns stored for the game being played and notifying the
player when a winning pattern is found.
[0022] Other aspects of the invention may be found in a method of
preparing game devices for use while playing bingo. The steps of
the method include accepting an order specifying the number of
bingo cards to be played and providing the player with a game
device. A further step of the method include loading the game
device with data via a wireless communications link. The data
represents a series of games to be played and the winning patterns
for those games, and the number of bingo cards to be played.
[0023] As such, an apparatus and method for monitoring bingo cards
during a game of bingo are described. Other aspects, advantages and
novel features of the present invention will become apparent from
the detailed description of the preferred embodiments when
considered in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] For a more complete understanding of the present invention
and advantages thereof, reference is now made to the following
description taken in conjunction with the accompanying drawings in
which like reference numbers indicate like features and
wherein:
[0025] FIG. 1 is an oblique view of a portable game device
according to the present invention;
[0026] FIG. 2 is a side view of the game device of FIG. 1;
[0027] FIG. 3 is a block diagram of the circuitry of the game
device;
[0028] FIG. 4 is an illustration of a display format showing nine
bingo cards;
[0029] FIG. 5 is an illustration of a display format showing one
bingo card; and
[0030] FIGS. 6-12 are flow diagrams of the software program of the
game device.
DETAILED DESCRIPTION OF THE INVENTION
[0031] Exemplary embodiments of the invention are illustrated in
the Figures, like numerals being used to refer to like and
corresponding parts of the various drawings.
[0032] FIG. 1 illustrates an embodiment of the present invention.
Electronic bingo device 20, in which bingo cards are provided
stored therein and, when activated by the mechanical receipt of a
game key 44 in game key slot 32, is adapted to operate with a bingo
player in accordance with the rules of play defined by the bingo
hall. The game key 44 is inserted by the bingo hall personnel from
an assortment of game keys that are sorted according to the
quantities of bingo cards provided by the bingo hall. A bit-mapped
color display 22 provides a general-purpose display that can be
configured to display bingo cards and other information. A numeric
keypad 24 allows the player to input called bingo numbers during
game play.
[0033] In contrast to a character display, as used in other bingo
devices, a bit-mapped color display is divided into an array of
tiny identical pixels, each of which can be independently
controlled for brightness and color. With such a display arbitrary
shapes and characters can be formed at any location in the display.
Displayed data can be reformatted to appear larger or smaller and
moved to any desired location in the display. Data can be displayed
in any format that is appropriate, rather than in a format dictated
by the display device.
[0034] As shown in FIG. 1, the bingo device 20 is housed within a
two part molded plastic housing 46. The front face of the housing
includes color display 22, flexibly configurable to display one or
more bingo cards and other information. Also on the front face and
situated below the color display is the numeric keypad 24. Keys
designated for numbers 1-9 are configured in a 3-by-3 array, with
number "0" located under the array. An "Enter" key is located below
the array adjacent the number "0" key. Function keypad 26 provides
access to the various display modes, allows for viewing of the
bingo cards, promotes changing of winning patterns and clears
player memory. These functions will be discussed in greater detail
herein and are achieved using the following keys: an "Info" key, a
"Bingo Board" key, a "Wild" key, a "Clear" key, a "Delete" key, a
"Next Game" key and a "View Cards" key. The front face of the
housing 46 may also include a mouse pad 28 used to move a cursor
about the display 22.
[0035] Located on the left side of the housing 46 is a game key
slot 32 for securing the game key 44 within the device. Also
located on the left side of the housing is an external power jack,
or connector, 30.
[0036] A relatable U-shaped table stand 34 is also shown in FIG. 1.
The table stand is attached to the back of the device. The stand
and its hinges can be replaced without opening the housing 46. A
contoured recess in the back of the device permits the table stand
to lie flush with the back of the device when in its fully closed
position. When opened and used as to prop up the device, rubber
pads on the handle prevent the device from sliding along a table
surface. The table stand may attach to the device with hinges that
allow it to be set in any position from fully closed to fully open.
The hinges operate silently and damp the rotation of the table
stand from one position to another, preventing the stand from being
slammed closed and preventing the device from being slammed to the
tabletop while supported by the table stand.
[0037] Located on the top side of the housing 46 is a tri color LED
indicator 36 (not shown in FIG. 1) that indicate the state of
charge of the battery inside the game device and the operational
status of the circuitry of the game device. These LED indicators
will be discussed in more detail herein.
[0038] The right side of the game device 20 is shown in FIG. 2. A
Universal Serial Bus (USB) port 38 enables the game device to be
connected to and communicate with other electronic devices. An
infrared (IR) window 40, transparent to infrared radiation, covers
an IR transceiver inside the game device, enabling the game device
to communicate with other devices using an IR communication link. A
brightness control 42 allows the user to adjust the brightness of
color display 22.
[0039] Located on the back side of the housing 46 are charging
contacts 39 (not shown in FIG. 1). The game device can be placed in
a recharging cradle having mating contacts to recharge the
batteries in the game device.
[0040] The electronic bingo device is controlled by the circuitry
shown in FIG. 3. A central processing unit (CPU) 50 operates in
cooperation with a control program stored in a non-volatile Flash
RAM 52. Upon activation of the CPU the control program is copied
from Flash RAM using a dynamic random-access-memory (DRAM) 54 for
data storage and executed. The CPU 50 includes an address and data
bus 56 that connects the CPU 50 to the Display Formatter 58 and USB
Interface circuitry 60. A CPU of the type suitable for this purpose
is the Motorola 68K Cold-Fire processor.
[0041] A graphics engine is provided by Display Formatter 58, which
buffers display data from the CPU 50 into video buffer 62, converts
the display data into raster format and sends the rasterized signal
to the low voltage differential signal (LVDS) encoder 64 which
provides a video signal to the color thin-film liquid crystal
display 66. The brightness of display 66 is set by inverter 68 and
brightness adjustment control 70, which is controlled by input from
the user of the game device and by signals received over the I2C
bus 72. This graphics engine circuitry frees a significant amount
of processing bandwidth in the CPU that would otherwise be taken up
in writing to the display.
[0042] The I2C bus 72 interconnects brightness adjustment control
70, CPU 50, watchdog processor 74, keypad 78, removable game key
44, and radio interface 80. Watchdog processor 74 uses an onboard
analog-to-digital converter to monitor the voltage levels of the
game device power supply. Upon sensing a failure in the correct
operation of the game device circuitry, the watchdog processor can
reset CPU 50 and Display Formatter 58 to restore correct operation.
The watchdog processor can put the game device into a low power
"sleep" mode by instructing FET switch 84 to cut main power to most
of the circuitry of the game device. In "sleep" mode, only the
watchdog processor 74 and radio interface 80 continue to receive
power. Watchdog processor 74 also connects to IR transceiver 82 via
a serial connection, and thus can restore main power to the game
device in response to signals received from the IR transceiver or
the radio interface.
[0043] Watchdog processor 74 can also put the game device into a
reduced power "inactive" mode by instructing the CPU 50 to enter an
idle mode and instructing the brightness adjustment control 70 to
dim the display 66. The game device can be returned to active mode
from either "sleep" mode or "inactive" mode not only in response to
signals received from the IR transceiver or the radio interface,
but also upon keypad activity. The keypad provides an interrupt
signal to CPU 50, which causes it to resume normal functioning and
notify watchdog processor 74 that it is again active.
[0044] Watchdog processor 74 also connects to CPU 50 via a serial
connection and, when the CPU is active, communications received
from the IR transceiver can be passed on to the CPU, as well as
being acted upon by the watchdog processor. The serial connection
is also used to communicate to CPU 50 the battery voltage measured
by watchdog processor 74. CPU 50 displays this voltage as a battery
level indicator on display 66.
[0045] Twin batteries 90 are connected in parallel to game key
socket 94. When a hardware key 44 is connected to the hardware key
socket 94, the battery power is connected to FET switch 84. Under
the control of watchdog processor 74, the FET switch connects the
battery power to multi-voltage power supply 86. Power supply 86
produces power at multiple voltages to power the other circuitry of
the game device. Multi-voltage power supply 86 can also draw power
from emergency power jack 30 when an external power source is
connected. The output voltages of power supply 86 do not fluctuate
when an external power source is connected to emergency power jack
30, thereby preventing any interruption in the operation of the
game device.
[0046] While the twin batteries 90 operate in tandem to power the
game device, they are individually connected to charging circuitry
88. Charging circuitry 88 receives power from charging connectors
39 and indicates its status on LED indicators 36. When both
batteries are discharged, the red LED flashes. When charging power
is applied to the charging connectors, the charging circuitry,
under the control of watchdog processor 74, begins charging one of
the two batteries. Once that battery is fully charged, the red LED
is extinguished and the green LED flashes. The charging circuitry
then begins charging the other battery. Once the second battery is
fully charged, the green LED turns on solid. During the period that
one battery is fully charged and the other is partially charged,
charging power can be removed and the game device operated
normally.
[0047] Charging circuitry 88 and multi-voltage power supply 86 are
part of power supply circuitry 92, which supplies power to the
watchdog processor 74 and radio interface 80 when the game device
is in "sleep" mode.
[0048] When a hardware key 44 is inserted into the hardware key
slot 32 in the housing of the game device, it also engages hardware
key socket 94 to provide electrical communication between the CPU
50 and an electrically programmable read only memory (EPROM)
circuit 96 having memory located within the hardware key. The key
may have 1, 32, 64, 128 or more kilobytes of memory, among other
amounts. The data stored in a type of hardware key known as a
player key includes the number of cards purchased by the player for
each game. Game devices can also receive this information via the
IR transceiver or the radio interface from an external device and
store it in DRAM, which may then be transferred into Flash. In
these situations, a hardware key 44 without EEPROM circuit 96 is
used. Such a key only connects battery power to the FET switch
84.
[0049] Other types of hardware keys include a game key, which
contains a list of the games and parts of games to be played in a
bingo session, the wild number rules for those games and the
winning patterns for those games; a card set key, which contains
the collection of bingo cards to be used by the game device; and a
code key, which contains programs for the game device CPU 50. When
one of these types of hardware keys is inserted into the game
device, the CPU 50 reads an identifier in the memory of the key and
recognizes the type of data contained in the key. The CPU then
transfers the data from the hardware key into the FlashRAM of the
game device. Game devices can also receive this information via the
IR transceiver or the radio interface from an external device and
store it in FlashRAM. When the game device is subsequently powered
up with a player key, the data stored in FlashRAM will be used in
performing the function of monitoring bingo cards.
[0050] When player data, game data, card set data or game device
program code is transferred from an external device, a
communication protocol providing security features such as
checksums or unique device identifiers is used to ensure that the
data and code come from an authorized device and have not been
tampered with or corrupted in the transmission process.
[0051] The CPU is also connected to piezo-electric audio transducer
76. This allows the game device to notify the player that one of
his cards has a winning pattern by playing a song or some other
type of audio signal.
[0052] FIG. 4 illustrates a display format 100 showing nine bingo
cards at once. The nine cards appear in a three-by-three array at
the top of the display in section 102. The letters B-I-N-G-O are
displayed between the cards to label the columns of the cards. The
serial numbers of the nine displayed cards are shown below the
displayed cards in section 104 of the display. The number and part
of the game currently being played are displayed in section 106 of
the screen, to the left below the display of serial numbers.
Section 108 of the display, to the right below the display of
serial numbers, shows called number information about the called
numbers entered by the user: the last called number entered, the
total count of called numbers entered, and the number currently
being entered by the user on the numeric keypad.
[0053] This display format permits an additional type of bingo game
to be played, in which a winning pattern can occur on certain of
the cards. For example, a diagonal bingo on the three leftmost
cards might be the winning pattern for such a multiple card
game.
[0054] A display format 112 for displaying a single bingo card is
shown in FIG. 5. Visually impaired users can more easily read the
large type utilized in this display format. This format has the
same sections as the nine card format illustrated in FIG. 4: the
card is displayed at the top of the screen in section 114, the
serial number of the card is shown below that in section 116, below
that are shown the game and part numbers in section 118 to the left
and the called number information in section 120 to the right, and
at the bottom of the screen is message display area 122.
[0055] Other modified bingo games can be played using the
bit-mapped color display of the present invention. Cards can be
displayed with some squares holding two numbers, rather than the
usual single number. This is possible because the numbers displayed
within a square can be made smaller and shifted, in order to fit
two numbers in the same square. In another modification to the
usual bingo card, certain squares on a player's cards can be marked
with a star to signify that a bingo including that square wins a
special prize. This can be done by displaying the star in the
background of the square in a contrasting color to the background
color of the other squares of the bingo card.
[0056] The "Bingo Board" key in the function keypad 26 of FIG. 1
allows the user to cycle through the display formats showing one,
four or nine cards, and a display format called the "Flashboard",
showing the called numbers entered by the user and the winning
patterns for the current game. The "View Cards" key in the function
keypad 26 serves to cycle through all the cards being played, in
whatever display format the user has selected using the "Bingo
Board" key.
[0057] FIG. 6 is a block flow diagram of an exemplary main game
thread. To begin the method 160, initializes the game variables as
seen in block 164. The system then determines whether the game is
complete as seen in block 166. If the game is not complete, the
main game thread calls the game event scheduling loop (depicted in
FIG. 8) as seen in block 168. If the game is complete, the system
re-initializes for a next game or, if a next game has not been
purchased, the thread may terminate or alert the user, among
others.
[0058] FIG. 7 shows an alternate main program routine for an
embodiment of the present invention. The control program is started
either upon inserting the game key into the game slot or at any
time the CPU is reset by the watchdog processor at step 200. The
program self tests and initializes the hardware in a conventional
manner at step 202. The configuration information including the
winning patterns, wild card numbers and bingo card allocation
numbers are read from memory at step 204. Next the bingo cards
allocated to the player may be compared with a checksum number to
ensure the bingo card information in memory is valid at step 206.
The cards may be 20 bytes. The first 13 bytes may describe the
card, the next three may be the serial number, the next may be an
optional star position and the last three may be reserved for
future expansion. However, the cards may use fewer or more bytes
for various purposes in various orders. Alternately, Each bingo
card entry may use 13 bytes for card data and 3 bytes for providing
a unique serial number to comply with various regional bingo
regulations and a checksum byte. The checksum is the sum of bytes 0
through 15 with a carry wraparound. If the sum of bytes 0-15 does
not match the checksum value, the data may be considered invalid
and an error may be signaled via the LED indicator 36 of FIG. 1 at
step 208, among other alert option, and the program stops at step
210. Otherwise, if the bingo card data is valid, the program resets
a game pointer variable to the first game listed in the game key at
step 212. The game data including winning patterns and wild card
data is loaded into the game variable to initialize the game at
step 214. The program at step 216 then calls a game event
scheduling loop (FIG. 8). Upon return from the game event
scheduling loop 218, the program may terminate at step 219 if the
player has played all of the allotted games or return to steps 204
or 212.
[0059] FIG. 8 illustrates the game event scheduling loop. The
method starts by determining whether more events exist as seen in
block 224. An event can be timed, fired, or forced. Timed events
include checking for key presses every 30 milliseconds, updating
screens every 33 milliseconds, blinking display values, and battery
events, among others. Time periods are shown for illustrative
purposes and may vary. Fired events may include playing a sound,
among others. However, the events may take various forms. If events
exist, the events are processed and the event counter is
incremented as seen in block 228. The availability of events may
then be tested again. If no events exist, the routine may exit the
loop and return to the main program or thread as exemplified in
FIGS. 6 and 7. The main program thread may then call the game event
thread again.
[0060] The system has arrays of structures which have embedded
function pointers for each key. When a key event is processed a
routine iterates through these structures until it finds the
structure that matches the key pressed. When this structure is
found the embedded function is called. This allows a great deal of
flexibility when processing the keys. Different arrays of
structures can also be used to describe what should happen on each
key press. For example when the in game submenu is showing the #2
key will allow a user to change a dauber. When the dauber select
sub-menu is up the #2 key will select option 2, while there is no
current game being played the #2 key will do nothing and while
playing the #2 key will adjust the current number in the input
buffer.
[0061] In other examples, if the number is entered the entered
number variable is updated. If the clear key has been pressed the
entered number variable is cleared to zero. If the enter key has
been pressed the game number updating routine (FIG. 9) is executed.
If the delete key has been pressed an undaub flag is set. If the
wild key has been pressed a wild flag is set. If the Info key has
been pressed the in-game menu will appear which may allow the user
to change the language that the game is played in, change his/her
dauber shape, and change his/her dauber color, among others. If the
Bingo Board Key has been pressed, the Bingo Board display mode may
be changed. If the View Cards key has been pressed the entered
number variable is cleared to zero. If the Next Game key has been
pressed for at least two seconds, the next game number is updated.
The display may be updated in accordance with a timed event.
[0062] FIG. 9 shows an exemplary game number update routine. This
routine may be activated upon detecting an enter key, among others.
If the enter key has been pressed, and the last key entered was a
number, the number stored in the entered number variable is added
to the list of called numbers and the number is marked on each card
containing that number in a winning pattern. If the wild key was
pressed prior to pressing the enter key, the number entered will be
used to mark all numbers in a winning pattern, meeting the
requirements of the wild card rules. The method begins with wild
card processing as seen in block 234. If a wild number has been
entered, the system may generate all possible numbers associated
with the wild number. The system may then update the called numbers
as seen in a block 236. This process adds or deletes numbers from
the called numbers list. The system determines whether the called
numbers have changed as seen in a block 238. If not, the system
posts a graphics event as seen in a block 250. If the numbers have
changed, the system updates the cards as seen in a block 246. This
involves updating each played card face and matching pattern
according to the new called number. The cards are then scored and
ranked according to how close it is to matching a winning pattern
as seen in a block 242. For games with multiple cards per sheet,
each sheet is assembled and scored fro how close the sheet is to
winning as seen in block 244. The system looks for the winning
criteria on each sheet as seen in block 246. If there is no win,
the system posts a graphics event as seen in block 250. If there is
a win event, the system posts a sound event as seen in a block 28
and a graphics event as seen in block 250. The updating routine
then terminates or returns to another thread.
[0063] The above method is exemplary. The method steps may occur in
differing orders. Some steps may be omitted in other embodiments.
As such, alternate methods may be envisaged.
[0064] In an exemplary embodiment, a check for win routine 276
(FIG. 10) begins scanning for a win by initializing the pointers
for winning patterns in play and cards in play at step 298. A
select next card step loads the first card mark mask at step 300. A
select next win pattern step loads the next win pattern to be
checked for this game at step 302. If the win pattern bits match
bit in the bingo card mark mask at step 304, then the bingo flag is
set to mark the win, the routine then returns to the game number
updating routine at step 312. Otherwise, more patterns are checked
at step 308. If there are more patterns then the program returns to
step 302. Otherwise more cards are checked at step 310. If more
cards exist the program returns to step 300. Otherwise the program
returns to the game number updating routine at step 312.
[0065] An exemplary score card routine 314 in FIG. 11 checks
whether the loaded card has earned Bingo. The pointers that track
the winning patterns are first set to the beginning at step 316.
Next, the next winning pattern is loaded for comparison with the
bingo cards at step 318. The card mask bits are set to "on" or "1"
at step 320 and the bits not set are counted at step 322. The
number of not set bits are compared to a minimum score variable at
step 324. If the card bits are less than the minimum score, then
the minimum score is updated to the value of the bit count form
step 322. The minimum score pattern count is then updated. The
program then jumps to step 330 to check for more patterns. If the
comparison of the minimum score to the counted not set bits is
equal, then the count of patterns at min. score is incremented and
the program jumps to step 330. If the count bit are greater than
the minimum score the program returns to step 318. At step 330, if
there are more patterns the program jumps to step 318; otherwise
the card score is updated at step 332. The card score is equal to
the minimum score multiplied by the number patterns minus the count
at minimum score. The program then returns to the game number
updating routine at step 334.
[0066] The next game display routine 336 in FIG. 12 loads in the
winning pattern information for the part of a continuing game or
loads in the winning patterns for a new game. The next game
information is loaded from the game table at step 338 and gets the
game info including the pattern pointer and number of cards and
wild card data for the game at step 340. A check is made to
determine whether this information is a new game or a new part of
an existing game at step 342. If the game information is a new part
of an existing game the routine jumps to step 343.
[0067] Otherwise, the routine sets up the bingo device to play a
new game. A first card number is calculated at step 344 to
determine how many cards have been allotted from the bingo card
memory for this game at step 344. Then the corresponding number of
bingo cards is loaded from the list of bingo cards at step 346. The
program then jumps to step 343 to load in the winning pattern
information and wild card information for the next round of play.
Winning patterns from the Flash are read at step 348. When
proceeding to the next part of an existing game, all numbers are
re-scored based on the new patterns at step 350 by jumping to the
score card routine until all cards have been scored.
[0068] However, the methods of FIGS. 10, 11, and 12 may or may not
be included or may take alternate forms.
[0069] An example of the operation of the embodiment of the present
invention described herein is now given. The game device is
disabled until a game key is inserted. This game key may contain
game data representing the number of games authorized for that
player, the number of cards purchased containing star information,
the number of cards to be played each game, and the winning
patterns that are valid for each game. Alternatively, the game key
may enable the game device to receive game data into Flash RAM via
the IR transceiver or the radio interface. Each game device
contains a list of cards in Flash RAM. The details of the storage
of this information are covered in a later section.
[0070] When the player presses the Enter button in the numeric
keypad on a game device that has just had its game key inserted,
the first game is selected. Pressing one or two numbers followed by
the ENTER key will cause that number to be daubed.
[0071] If a number is displayed on the bingo board that has not
been called, it may be removed by pressing one or two numbers and
the DELETE key. Pressing the BINGO BOARD button will cycle the
display to the 1, 4, 9 flashboard screens. The normal display will
return when the BINGO BOARD button is pressed again.
[0072] If the daubed numbers on one or more of the cards in play
match the winning criteria (one or more patterns on 1 or more
sheets) an audible alarm may sound and the numbers on that sheet
that form the winning criteria will be shown and all others will
remain not highlighted. All buttons will continue to operate so
that any necessary corrections may be made if the win was due to
erroneous entry.
[0073] Some games allow for Wild numbers to be entered at the
beginning of a game. These numbers are daubed by entering a number
followed by the Wild Button, followed by the Enter key. They may be
undaubed by entering the number, followed by the Wild Button,
followed by the Delete key. The following sections describes the
wild algorithms that may be used:
[0074] The wild algorithm is selected per game as determined by the
house. The algorithm to be used in each game is stored in the game
data that configures the game device for play. When the wild number
is entered, a group of numbers is daubed simultaneously based on
the selected wild algorithm, which may be one of the following:
[0075] Even/Odd--If the number entered is even, all even numbers on
the card will be daubed. If the number entered is odd, all odd
numbers on the cards will be daubed.
[0076] Ending-In--All cards ending in the same number will be
daubed.
[0077] Both Ways--Begins or ends in a given number.
[0078] The method for determining the number of a card is now
described. A bingo card consists of 5 columns of 5 numbers. In the
first column, five numbers from the range of 1 to 15 may be
arranged in any order. In the second column, five numbers from the
range 16 to 30, in the third 31 to 45, in the fourth 46 to 60, in
the fifth 61 to 75. Thus in the first position there are 15
possible numbers. In the second, there are 14 (the one number
chosen for the first position cannot be reused), in the third there
are 13, etc. In the second column, the sequence is repeated. Thus,
the number of possible numbers for each position in each column are
as follows: (15, 14, 13, 12, 11, 15, 14, 13, 12, 11, 15, 14, 13,
12, 11, 15, 14, 13, 12, 11, 15, 14, 13, 12, 11). Multiplying the
first five of these numbers gives the number of combinations in a
single column, multiplying all these numbers gives the number of
possible different bingo cards. Each column thus has the potential
of 360,360 different combinations and the total number of different
cards is 6.0796911214672*10.sup.27.
[0079] The identification of winning patterns is now described.
Winning patterns can consist of from 1 to 25 positions on a card.
This can be identified by a vector of 25 bits. A one bit in any
position indicates that the position on the card corresponding to
that bit is required by that pattern. For example, the following
win mask identifies the common bingo pattern of all numbers in the
first column being daubed: 000000000000000000011111. And this win
mask identifies the pattern of all numbers in the first row being
daubed: 0000100001000010000100001. These numbers can be
conveniently fitted into a long integer (32 bits). The upper 7 bits
are reserved.
[0080] The storage of bingo cards is now described. Flash RAM 52 in
FIG. 3 includes memory space to house data representative of at
least 1,000 unique bingo cards. This data includes 25 numbers
between 1 and 75 randomly chosen for each of the bingo cards and
may use 20 bytes for each card. The card cells are numbered from
0-24 in which this numbering identifies bits in the patterns and
the storage of numbers in the games in play arrays.
[0081] Bingo cards may be stored in the Flash RAM in a table with
entries of the form:
1 Byte (s) Function 0-12 Canonical Card Representation 13-15 Serial
Number
[0082] The Canonical Card Representation is discussed above. The
Serial Number is a number assigned to the card in the master card
set.
[0083] The storage of game data in Flash RAM 52 and game key 44 is
now described. One segment of the game data is the win pattern
table, which contains a list of all winning patterns. Note that
most winning patterns may require multiple entries in the table.
For example, the standard bingo winning pattern of any row, any
column, or the two diagonals would require 12 entries: one for each
of the 5 rows; one for each of the 5 columns, and one for each of
the two diagonals.
[0084] Each entry in the win pattern table may be in the following
format:
2 Pattern Mask Bits Function 0-24 Win Pattern 25-31 0000000
[0085] The entries are arranged in an array with 0 referring to the
first element in the array, as shown below. The number of entries
in this table is limited only by the memory in the game device.
3 Win Mask 0 Win Mask 1 . . . Win Mask N
[0086] Another segment of the game data is the Game/Part Table,
which contains authorized game numbers, the number of games, and
the winning patterns for each game. There are two formats for
entries in this table: the game header and the part header. Single
part games will have one game header, followed by one part header.
Multipart games will have one game header followed by as many part
headers as there are parts to the game. These two headers may take
various formats.
[0087] The method of scoring cards is now described. In bingo, all
that really matters for winning is if a pattern is complete. The
card either has a pattern completed or it does not. But, in order
to determine which are the best cards in play, it is necessary to
give each card a score. This score is determined as follows: First,
cards are scored by the pattern closest to a pattern match. For
example a card that is one away from winning on some combination is
better that a card that has no combination better than two away.
Next, the cards that are at any given rank are then further ranked
by how many different combinations are at the minimum. For example
a card that is one away on two different patterns is better that
one that is one away on only one pattern. Lastly any ties are
broken by where the card was in the previous ranking. This prevents
the cards from jumping around in order when the score has not
changed as a result of sorting them. These scores are combined as
follows:
Score=(D.sub.on*N.sub.patterns-N.sub.on)*N.sub.cip+R.sub.old
[0088] where:
[0089] D.sub.on Number of numbers required for win on the best
pattern on this card.
[0090] N.sub.patterns Number of win patterns in the current
game.
[0091] N.sub.on Number of patterns that are at D.sub.on from a
win.
[0092] N.sub.cip Number of cards in play in this game.
[0093] R.sub.old Card rank after last scoring pass.
[0094] The Scores are then ordered from best to worst. The best is
assigned rank 0 and each card is assigned a successively higher
rank in order of its score, with the worst receiving a rank of
NumCard-1. After the first ranking, all the scores will be unique
since R.sub.old is unique.
[0095] As such, an apparatus and method are described for
monitoring bingo cards. In view of the above detailed description
of the present invention and associated drawings, other
modifications and variations will now become apparent to those
skilled in the art. It should also be apparent that such other
modifications and variations may be effected without departing from
the spirit and scope of the present invention as set forth in the
claims that follow.
* * * * *