図1は前扉を閉めた状態を示すスロットマシンの正面図、図2は前扉を180度開いた状態を示すスロットマシンの正面図を示す。
図1及び図2中、100はスロットマシンを示すもので、このスロットマシン100は、図1に示すように、スロットマシン本体120と、このスロットマシン本体120の前面片側にヒンジ等により開閉可能に取り付けられた前扉130とを備えている。前記前扉130の前面には、図1に示すように、ほぼ中央にゲーム表示部131を設け、ゲーム表示部131の右下隅部に、遊技者がメダルを投入するためのメダル投入口132を設け、メダル投入口132の下側には、メダル投入口132から投入され、詰まってしまったメダルをスロットマシン100外に強制的に排出するためのリジェクトボタン133が設けられている。
また、前記ゲーム表示部131の左下方には、ゲームを開始するためのスタートスイッチ134を設けてあり、3つの回胴のそれぞれに対応して3つのストップスイッチ140を設けてある。前扉の下端部中央には、メダルの払出し口135を設けてある。前記ゲーム表示部131の上側には、液晶表示装置LCDが設けてある。
DA及びDBは、いずれも、公知の7セグLEDを備える表示部である。表示部DBはゲーム表示部131の下部中央に設けられ、表示部DAは、表示部DBの左隣に設けられている。表示部DAは例えば払い出し枚数を表示し、表示部DBは例えばボーナス中における総獲得枚数を表示する。具体的には、メダルが1枚払い出されるごとに表示部DAの表示が減少するととともに、これに合わせて表示部DBの表示が増加する、といった表示がなされる。両者の表示は相互に関連しているから、両者の表示の変化のタイミングは同期していることが望ましい。同期していないと違和感が生じることがある。例えば、表示部DAの表示の変化が停止しているのに、表示部DBの表示がまだ変化しているようなことは好ましくない。
なお、以下の説明において、表示部DAを第1表示部、表示部DBを第2表示部と表記することがある。
スロットマシン本体120の内部には、図2に示すように、その内底面に固定され、内部に複数のメダルを貯留して、貯留したメダルを前扉130の前面に設けた払出し口135に1枚ずつ払い出すためのホッパ装置121が設置されている。このホッパ装置121の上部には、上方に向けて開口し、内部に複数のメダルを貯留するホッパタンク122を備えている。スロットマシン本体120の内部には、前扉130を閉めたときにゲーム表示部131が来る位置に三個の回胴からなるリール(回胴)ユニット203が設置されている。リールユニット203は、外周面に複数種類の図柄が配列されている3つの回胴(第1回胴〜第3回胴)を備えている。ゲーム表示部131には開口部が設けられていて、それを通して遊技者が前記リールユニット203の各回胴の図柄を見ることができるようになっている。ホッパ装置121の左側には電源部205が設けられている。
前記前扉130の裏面には、図2に示すように、メダル(コイン)セレクタ1が、前扉130の前面に設けられたメダル投入口132の下側位置の裏側、ちょうどリジェクトボタン133の背面のあたりに取り付けられている。このメダルセレクタ1は、メダル投入口132から投入されたメダルの通過を検出しながら、当該メダルをホッパ装置121に向かって転動させ、外径が所定寸法と違う異径メダルや、鉄又は鉄合金で作製された不正メダルを選別して排除するとともに、1ゲームあたりに投入可能な所定枚数以上のメダルを選別して排除するための装置である。
また、メダルセレクタ1の下側には、図2に示すように、その下部側を覆って前扉130の払出し口135に連通する導出路136が設けられている。メダルセレクタ1により振り分けられたメダルは、この導出路136を介して払出し口135から遊技者に返却される。
図3は発明の実施の形態に係るスロットマシン100の機能ブロック図を示す。
この図において電源系統についての表示は省略されている。図示しないが、スロットマシンは商用電源(AC100V)から直流電源(+5Vなど)を発生するための電源部を備える。
スロットマシン100は、その主要な処理装置としてメイン基板(処理部)10とこれからコマンドを受けて動作するサブ基板20とを備える。なお、少なくともメイン基板10は、外部から接触不能となるようにケース内部に収容され、これら基板を取り外す際に痕跡が残るように封印処理が施されている。
メイン基板10は、遊技者の操作を受けて内部抽選を行ったり、回胴の回転・停止やメダルの払い出しなどの処理(遊技処理)を行うためのものである。メイン基板10は、予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。
サブ基板20は、メイン基板10からコマンド信号を受けて内部抽選の結果を報知したり各種演出を行うためのものである。サブ基板20は、前記コマンド信号に応じた予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。コマンドの流れはメイン基板10からサブ基板20への一方のみであり、逆にサブ基板20からメイン基板10へコマンド等が出されることはない。
メイン基板10には、ベットスイッチBET、スタートスイッチ134,ストップボタン140,リールユニット(回胴駆動装置を含む)203,リール位置検出回路71、ホッパ駆動部80、ホッパ81及びホッパ81から払い出されたメダルの枚数を数えるためのメダル検出部82(これらホッパ駆動部80、ホッパ81及びメダル検出部82は前述のホッパ装置121を構成する)が接続されている。サブ基板20には液晶表示装置の制御用の液晶制御基板200、スピーカ基板201、LED基板202などの周辺基板(デバイス制御基板)が接続されている。周辺基板とは、サブ基板20により制御されるものであり、主に映像、光、音響により演出を行うものである。なお、以下の説明では、便宜上、液晶制御基板200とその他の周辺基板を区別して説明を行う。
メイン基板10には、さらに、メダルセレクタ1のメダルセンサS1及びS2が接続されている。
メダルセレクタ1には、メダルを計数するためのメダルセンサS1及びS2が設けられている。メダルセンサS1及びS2は、メダルセレクタ1に設けられた図示しないメダル通路の下流側(出口近傍)に設けられている(メダル通路の上流側はメダル投入口132に連通している)。2つのメダルセンサS1とS2は、メダルの進行方向に沿って所定間隔を空けて並べて設けられている。メダルセンサS1、S2は、例えば、互いに対向した発光部と受光部とを有して断面コ字状に形成され、その検出光軸をメダル通路内に上方から臨ませて位置するフォトインタラプタである。各フォトインタラプタにより、途中で阻止されずに送られてきたメダルの通過が検出される。なお、フォトインタラプタを2つ隣接させたのは、メダル枚数を検出するだけでなく、メダルの通過が正常か否かを監視するためである。すなわち、フォトインタラプタを2つ隣接させて設けることにより、メダルの通過速度や通過方向を検出することができ、これによりメダル枚数だけでなく、逆方向に移動する不正行為を感知することができる。
ホッパ駆動部80は、ホッパ81を回転駆動して、メイン基板10によって指示された払出数のメダルを払い出す動作を行う。遊技機は、メダルを1枚払い出す毎に作動するメダル検出部82を備えており、メイン基板10は、メダル検出部82からの入力信号に基づいてホッパ81から実際に払い出されたメダルの数を管理することができる。
投入受付部1050は、メダルセレクタ1のメダルセンサS1とS2の出力を受け、遊技毎にメダルの投入を受け付けて、規定投入数に相当するメダルが投入されたことに基づいて、スタートスイッチ134に対する第1回胴〜第3回胴の回転開始操作を許可する処理を行う。なお、スタートスイッチ134の押下操作が、第1回胴〜第3回胴の回転を開始させる契機となっているとともに、内部抽選を実行する契機となっている。また、遊技状態に応じて規定投入数を設定し、通常状態およびボーナス成立状態では規定投入数を3枚に設定し、ボーナス状態では規定投入数を1枚に設定する。
メダルが投入されると、遊技状態に応じた規定投入数を限度として、投入されたメダルを投入状態に設定する。あるいは、遊技機にメダルがクレジットされた状態で、ベットスイッチBETが押下されると、遊技状態に応じた規定投入数を限度して、クレジットされたメダルを投入状態に設定する。メダルの投入を受け付けるかどうかは、メイン基板10が制御する。メダルの投入を受け付ける状態になっていないときは(許可されていないときは)、メダルを投入してもメダルセンサS1、S2でカウントされず、そのまま返却される。同様に、メイン基板10はベットスイッチBETの有効/無効を制御する。ベットスイッチBETが有効になっていないときは(許可されていないときは)、ベットスイッチBETを押下しても、それは無視される。
メイン基板10は、乱数発生手段1100を内蔵する。乱数発生手段1100は、抽選用の乱数値を発生させる手段である。乱数値は、例えば、インクリメントカウンタ(所定のカウント範囲を循環するように数値をカウントするカウンタ)のカウント値に基づいて発生させることができる。なお本実施形態において「乱数値」には、数学的な意味でランダムに発生する値のみならず、その発生自体は規則的であっても、その取得タイミング等が不規則であるために実質的に乱数として機能しうる値も含まれる。
内部抽選手段1200は、遊技者がスタートスイッチ134からのスタート信号に基づいて、役の当否を決定する内部抽選を行う。すなわち、メイン基板10のメモリ(図示せず)に記憶されている抽選テーブル(図示せず)を選択する抽選テーブル選択処理、乱数発生手段1050から得た乱数の当選を判定する乱数判定処理、当選の判定結果で大当たりなどに当選したときにその旨のフラグを設定する抽選フラグ設定処理などを行う。
抽選テーブル選択処理では、図示しない記憶手段(ROM)に格納されている複数の抽選テーブル(図示せず)のうち、いずれの抽選テーブルを用いて内部抽選を行うかを決定する。抽選テーブルでは、複数の乱数値(例えば、0〜65535の65536個の乱数値)のそれぞれに対して、リプレイ、小役(ベル、チェリー)、レギュラーボーナス(RB:ボーナス)、およびビッグボーナス(BB:ボーナス)などの各種の役が対応づけられている。また、遊技状態として、通常状態、ボーナス成立状態、およびボーナス状態が設定可能とされ、さらにリプレイの抽選状態として、リプレイ無抽選状態、リプレイ低確率状態、リプレイ高確率状態が設定可能とされる。
乱数判定処理では、スタートスイッチ134からのスタート信号に基づいて、遊技毎に前記乱数発生手段(図示せず)から乱数値(抽選用乱数)を取得し、取得した乱数値について前記抽選テーブルを参照して役に当選したか否かを判定する。
抽選フラグ設定処理では、乱数判定処理の結果に基づいて、当選したと判定された役の抽選フラグを非当選状態(第1のフラグ状態、オフ状態)から当選状態(第2のフラグ状態、オン状態)に設定する。2種類以上の役が重複して当選した場合には、重複して当選した2種類以上の役のそれぞれに対応する抽選フラグが当選状態に設定される。抽選フラグの設定情報は、記憶手段(RAM)に格納される。
入賞するまで次回以降の遊技に当選状態を持ち越し可能な抽選フラグ(持越可能フラグ)と、入賞の如何に関わらず次回以降の遊技に当選状態を持ち越さずに非当選状態にリセットされる抽選フラグ(持越不可フラグ)とが用意されていることがある。この場合、前者の持越可能フラグが対応づけられる役としては、レギュラーボーナス(RB)およびビッグボーナス(BB)があり、それ以外の役(例えば、小役、リプレイ)は後者の持越不可フラグに対応づけられている。すなわち抽選フラグ設定処理では、内部抽選でレギュラーボーナスに当選すると、レギュラーボーナスの抽選フラグの当選状態を、レギュラーボーナスが入賞するまで持ち越す処理を行い、内部抽選でビッグボーナスに当選すると、ビッグボーナスの抽選フラグの当選状態を、ビッグボーナスが入賞するまで持ち越す処理を行う。このときメイン基板10は、内部抽選機能により、レギュラーボーナスやビッグボーナスの抽選フラグの当選状態が持ち越されている遊技でも、レギュラーボーナスおよびビッグボーナス以外の役(小役およびリプレイ)についての当否を決定する内部抽選を行っている。すなわち抽選フラグ設定処理では、レギュラーボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているレギュラーボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定し、ビッグボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているビッグボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定する。
リプレイ処理手段1600は、所定条件下で内部抽選におけるリプレイの当選確率を変動させる制御を行うことがある。リプレイ処理手段1600については、後に再度説明を加える。リプレイの抽選状態として、リプレイが内部抽選の対象から除外されるリプレイ無抽選状態、リプレイの当選確率が約1/7.3に設定されるリプレイ低確率状態、およびリプレイの当選確率が約1/6に設定されるリプレイ高確率状態という複数種類の抽選状態を設定可能とされている。リプレイの抽選状態を変化させることにより、内部抽選におけるリプレイの当選確率を変動させる。
リール制御手段1300は、遊技者がスタートスイッチ134の押下操作(回転開始操作)によるスタート信号に基づいて、第1回胴〜第3回胴をステッピングモータにより回転駆動して、第1回胴〜第3回胴の回転速度が所定速度(約80rpm:1分間あたり約80回転となる回転速度)に達した状態において回転中の回胴にそれぞれ対応する3つのストップボタン140の押下操作(停止操作)を許可する制御を行うとともに、ステッピングモータにより回転駆動されている第1回胴〜第3回胴を抽選フラグの設定状態(内部抽選の結果)に応じて停止させる制御を行う。
また、リール制御手段1300は、3つのストップボタン140に対する押下操作(停止操作)が許可(有効化)された状態において、遊技者が3つのストップボタン140を押下することにより、その回胴停止信号に基づいて、リールユニット203のステッピングモータへの駆動パルス(モータ駆動信号)の供給を停止することにより、第1回胴〜第3回胴の各回胴を停止させる制御を行う。
すなわち、リール制御手段1300は、3つのストップボタン140の各ボタンが押下される毎に、第1回胴〜第3回胴のうち押下されたボタンに対応する回胴の停止位置を決定して、決定された停止位置で回胴を停止させる制御を行っている。具体的には、記憶手段(ROM)に記憶されている停止制御テーブル(図示せず)を参照して3つのストップボタンの押下タイミングや押下順序等(停止操作の態様)に応じた第1回胴〜第3回胴の停止位置を決定し、決定された停止位置で第1回胴〜第3回胴を停止させる制御を行う。
ここで停止制御テーブルでは、ストップボタン140の作動時点における第1回胴〜第3回胴の位置(押下検出位置)と、第1回胴〜第3回胴の実際の停止位置(または押下検出位置からの滑りコマ数)との対応関係が設定されている。抽選フラグの設定状態に応じて、第1回胴〜第3回胴の停止位置を定めるための停止制御テーブルが用意されることもある。
遊技機では、リールユニット203がフォトセンサからなるリールインデックス(図示せず)を備えており、リール制御手段1300は、回胴が1回転する毎にリールインデックスで検出される基準位置信号に基づいて、回胴の基準位置(リールインデックスによって検出されるコマ)からの回転角度(ステップモータの回転軸の回転ステップ数)を求めることによって、現在の回胴の回転状態を監視することができるようになっている。すなわち、メイン基板10は、ストップスイッチ140の作動時における回胴の位置を、回胴の基準位置からの回転角度を求めることにより得ることができる。
リール制御手段1300は、いわゆる引き込み処理と蹴飛ばし処理とを回胴を停止させる制御として行っている。引き込み処理とは、抽選フラグが当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止するように(当選した役を入賞させることができるように)回胴を停止させる制御処理である。一方蹴飛ばし処理とは、抽選フラグが非当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止しないように(当選していない役を入賞させることができないように)回胴を停止させる制御処理である。すなわち本実施形態の遊技機では、上記引き込み処理及び蹴飛ばし処理を実現させるべく、抽選フラグの設定状態、ストップボタン140の押下タイミング、押下順序、既に停止している回胴の停止位置(表示図柄の種類)などに応じて各回胴の停止位置が変化するように停止制御テーブルが設定されている。このように、メイン基板10は、抽選フラグが当選状態に設定された役の図柄を入賞の形態で停止可能にし、一方で抽選フラグが非当選状態に設定された役の図柄が入賞の形態で停止しないように第1回胴〜第3回胴を停止させる制御を行っている。
本実施形態の遊技機では、第1回胴〜第3回胴が、ストップボタン140が押下された時点から190ms以内に、押下されたストップボタンに対応する回転中の回胴を停止させる制御状態に設定されている。すなわち回転している各回胴の停止位置を決めるための停止制御テーブルでは、ストップボタン140の押下時点から各回胴が停止するまでに要するコマ数が0コマ〜4コマの範囲(所定の引き込み範囲)で設定されている。
入賞判定手段1400は、第1回胴〜第3回胴の停止態様に基づいて、役が入賞したか否かを判定する処理を行う。具体的には、記憶手段(ROM)に記憶されている入賞判定テーブルを参照しながら、第1回胴〜第3回胴の全てが停止した時点で入賞判定ライン上に表示されている図柄組合せが、予め定められた役の入賞の形態であるか否かを判定する。
入賞判定手段1400は、その判定結果に基づいて、入賞時処理を実行する。入賞時処理としては、例えば、小役が入賞した場合にはホッパ81を駆動してメダルの払出制御処理が行われるか、あるいはクレジットの増加され(規定の最大枚数例えば50枚まで増加され、それを超えた分だけ実際にメダル払い出される)、リプレイが入賞した場合にはリプレイ処理が行われ、ビッグボーナスやレギュラーボーナスが入賞した場合には遊技状態を移行させる遊技状態移行制御処理が行われる。
払出制御手段1500は、遊技結果に応じたメダルの払い出しに関する払出制御処理を行う。具体的には、小役が入賞した場合に、役毎に予め定められている配当に基づいて遊技におけるメダルの払出数を決定し、決定された払出数に相当するメダルを、ホッパ駆動部80でホッパ81を駆動して払い出させる。この際に、ホッパ81に内蔵される図示しないモータに電流が流れることになる。
メダルのクレジット(内部貯留)が許可されている場合には、ホッパ81によって実際にメダルの払い出しを行う代わりに、記憶手段(RAM)のクレジット記憶領域(図示省略)に記憶されているクレジット数(クレジットされたメダルの数)に対して払出数を加算するクレジット加算処理を行って仮想的にメダルを払い出す処理を行う。
リプレイ処理手段1600は、リプレイが入賞した場合に、次回の遊技に関して遊技者の所有するメダルの投入を要さずに前回の遊技と同じ準備状態に設定するリプレイ処理(再遊技処理)を行う。リプレイが入賞した場合には、遊技者の手持ちのメダル(クレジットメダルを含む)を使わずに前回の遊技と同じ規定投入数のメダルが自動的に投入状態に設定される自動投入処理が行われ、遊技機が前回の遊技と同じ入賞判定ラインを有効化した状態で次回の遊技における回転開始操作(遊技者によるスタートスイッチ134の押下操作)を待機する状態に設定される。
また、メイン基板10は、通常状態、ボーナス成立状態、およびボーナス状態の間で遊技状態を移行させる制御を行うことがある(遊技状態移行制御機能)。遊技状態の移行条件は、1の条件が定められていてもよいし、複数の条件が定められていてもよい。複数の条件が定められている場合には、複数の条件のうち1の条件が成立したこと、あるいは複数の条件の全てが成立したことに基づいて、遊技状態を他の遊技状態へ移行させることができる。
通常状態は、複数種類の遊技状態の中で初期状態に相当する遊技状態で、通常状態からはボーナス成立状態への移行が可能となっている。ボーナス成立状態は、内部抽選でビッグボーナスあるいはレギュラーボーナスに当選したことを契機として移行する遊技状態である。ボーナス成立状態では、通常状態における内部抽選でビッグボーナスが当選した場合、ビッグボーナスが入賞するまでビッグボーナスに対応する抽選フラグが当選状態に維持され、通常状態における内部抽選でレギュラーボーナスが当選した場合、レギュラーボーナスが入賞するまでレギュラーボーナスに対応する抽選フラグが当選状態に維持される。ボーナス状態では、ボーナス遊技によって払い出されたメダルの合計数により終了条件が成立したか否かを判断し、入賞したボーナスの種類に応じて予め定められた払出上限数を超えるメダルが払い出されると、ボーナス状態を終了させて、遊技状態を通常状態へ復帰させる。
リールユニット203は、図示しない3つの回胴を備えるが、3つの回胴それぞれにひとつづつステッピングモータが取り付けられている。ステッピングモータは、回転子(ロータ)として歯車状の鉄心あるいは永久磁石を備え、固定子(ステータ)として複数の巻線(コイル)を備え、電流を流す巻線を切り替えることによって回転動作させるものである。すなわち、固定子の巻線に電流を流して磁力を発生させ、回転子を引きつけることで回転するものである。回転軸を指定された角度で停止させることが可能なことから、スロットマシンの回胴の回転駆動に使用されている。複数の巻線がひとつの相を構成する。相の数として、例えば、2つ(二相)、4つ(4相)、5つ(5相)のものもある。
次に、遊技機における遊技処理について図4を参照して説明を加える。
一般的に、遊技機において、メダルの投入(クレジットの投入)に始まり、払い出しが終了するまで(又はクレジット数の増加が終了するまで)が一遊技である。一遊技が終了するまでは次回の遊技に進めないという決まりがある。
先ず、規定枚数のメダルが投入されることでスタートスイッチ134が有効になり、図4の処理が開始される。
ステップS1において、スタートスイッチ134が操作されることにより、スタートスイッチ134がONとなる。そして、次のステップS2に進む。
ステップS2において、メイン基板10により抽選処理が行われる。そして、次のステップS3に進む。
ステップS3において、第1回胴〜第3回胴の回転が開始する。そして、次のステップS4に進む。
ステップS4において、ストップボタン140が操作されることにより、ストップボタン140がONとなる。そして、次のステップS5に進む。
ステップS5において、第1回胴〜第3回胴のうち押下されたストップボタン140に対応する回胴について回転停止処理が行われる。そして、次のステップS6に進む。
ステップS6において、三個の回胴に対応するストップボタン140の操作が行われたか否かが判定される。そして、三個の回胴に対応する3つのストップボタン140すべての操作が行われたと判定された場合、次のステップS7に進む。
ステップS7において、抽選フラグ成立中に当該抽選フラグに対応する入賞図柄が有効入賞ライン上に揃ったか否か、すなわち、入賞が確定したか否かが判定される。そして、入賞が確定したと判定された場合、次のステップS8に進む。なお、入賞が確定しなかったときは、抽選フラグが成立していてもメダルの払い出しは行われない。
ステップS8において、入賞図柄に相当するメダルが払い出される。
メダルの投入からステップS8の実行完了までが、一遊技である。ステップS8の待機処理が終了すると、処理はフローチャートの最初に戻る。言い換えれば、次の遊技が可能な状態になる(次遊技へ移行する)。
図5は、サブ基板20とその周辺基板(デバイス制御基板)の接続の説明図である。図3に示すように、サブ基板20には、液晶制御基板200、スピーカ基板201、LED基板202が接続されている。これらは、サブ基板20の周辺基板と言うべきものである。
これら複数の周辺基板は、図5のように接続されている(スピーカ基板201の表示は省略している)。すなわち、複数の周辺基板が共通のバスに接続され、当該バスを通じてサブ基板20と通信を行う。当該バスを流れる信号は、パラレル信号(例えば8ビットの線で信号を伝送するもの)あるいはシリアル信号(例えば、I2C(Inter-Integrated Circuit)のようにデータ線とクロック線の2本の線で信号を伝送するもの)である。なお、図5の例ではサブ基板20から出た信号がサブ基板20に戻っているが、これは一例であり、一般的なバス構造のように接続端の反対側の端が開放されていてもよい。
サブ基板20から周辺基板へは、アドレスを指定してデータを送る。例えば、周辺基板としての液晶制御基板200へデータを送る場合は、液晶制御基板200に予め対応づけられているアドレスを指定してデータをバスに流す。液晶制御基板200は、アドレスにより自分宛のデータであることを認識すると、アドレスに引き続くデータをラッチに取り込む。取り込んだデータに従って所定の動作を行う。取り込んだデータが、液晶制御基板200で取得したあるいは取得可能なデータをサブ基板20へ送信するコマンドであれば、当該データをサブ基板20へ送信する(所定のデータ受信後は、予め定められたデータを常にサブ基板20へ送信するようにすることもできる)。
LED基板202には、7セグLEDの表示部DA、DBなどが接続され、それらの発光素子を駆動し、点灯・消灯の制御とともに、そこに表示する数値・記号の選択などの制御を行う。
図6は、発明の実施の形態に係る遊技機の表示制御系統の説明図である。同図は、理解を容易にするために機能的に表示している。したがって、実際の遊技機が、同図の各要素をハードウエアあるいはソフトウエアとして必ず備えているわけではない(特に、割込周期変更部55。この点については後にさらに説明を加える)。
50は、予め定められたタイミングで割込信号を発生する割込信号発生部である。この割込信号による割込周期は第1割込周期であり、図7(a)における「1」に対応する。
51は、演出用の表示部DA(以下、「第1表示部」と記す)の制御のための第1タイマ減算値を記憶する第1タイマ減算値記憶部である。
52は、演出用の表示部DB(以下、「第2表示部」と記す)の制御のための第2タイマ減算値を記憶する第2タイマ減算値記憶部である。
53は、第1表示部DA及び第2表示部DBの両方の制御のための共通タイマ値を記憶するタイマ値記憶部である。
第1タイマ減算値記憶部51,第2タイマ減算値記憶部52、タイマ値記憶部53は、例えば、サブ基板20のメモリ(RAM)であり、この一部の領域が第1タイマ減算値、第2タイマ減算値、共通タイマ値の記憶領域に割り当てられる。
54は、第1表示部DAに対する制御開始信号を受けて前記共通タイマ値を内部の値として設定するとともに、前記割込信号発生部50から前記割込信号を受けたときに前記第1タイマ減算値に基づき前記値を変化させる第1タイマカウンタである。第1タイマカウンタ54は、ICなどのハードウエアあるいはプログラムにより構成される。ICの場合、共通タイマ値を内部の値として設定するとは、当該ICの内部に設けられているレジスタに共通タイマ値を取り込む(レジスタが当該値を読み込む)ことであり、プログラムの場合、カウンタの作業領域として割り当てられているメモリの所定の領域に共通タイマ値を書き込むことに相当する。値を変化させるとは、ICに備わった機能に従ってレジスタの値を増加又は減少させる(典型的には、レジスタの値に第1タイマ減算値を加算あるいは減算する)ことであり、プログラムに従って上記作業領域の値を増加又は減少させることである。以上の動作は、第2タイマカウンタ56についても同じである。
制御開始信号とは、所定の演出(図6では第1表示部DAあるいは第2表示部DBの点灯させること)を開始するための信号である。制御開始信号は、サブ基板20内でプログラムに従って作成されるが、この処理は公知であるので説明は省略する。なお、制御を停止するための信号は、第1タイマカウンタ54、第2タイマカウンタ56で生成される。
55は、割込信号発生部50の前記割込信号の周期を変更する割込周期変更部である。割込周期変更部55は例えば分周器であり、割込信号の周期を整数倍する(周波数が整数分の1になる)。分周された割込信号による割込周期は第2割込周期であり、図7(a)における「2」に対応する。
なお、実際の遊技機が割込周期変更部55を固有のハードウエアあるいはソフトウエアの要素として備えていないこともある。言い換えれば、ハードウエア又はソフトウエアの制約上から止む無く割込信号の周期が整数倍されることにより、結果的に割込周期変更部55が出現することがある(図14乃至図16及びその説明参照)。
56は、第2表示部DBに対する制御開始信号を受けて前記共通タイマ値を内部の値として設定するとともに、前記割込周期変更部55により周期の変更された前記割込信号を受けたときに前記第2タイマ減算値に基づき前記値を変化させる第2タイマカウンタである。
57は、第1表示部DAに対する前記制御開始信号を受けて第1表示部DAの制御(点灯)を開始するとともに、前記第1タイマカウンタ54の前記値が所定の値(例えばゼロ)になったときに第1表示部DAの制御を停止(消灯)する第1制御部である。
58は、第2表示部DBに対する前記制御開始信号を受けて第2表示部DBの制御(点灯)を開始するとともに、前記第2タイマカウンタ56の前記値が所定の値(例えばゼロ)になったときに第2表示部DBの制御を停止(消灯)する第2制御部である。
第1制御部57、第2制御部58は、例えばLED基板に設けられている。
図7(a)は割込周期とタイマ減算値の関係を示し、図7(b)は共通データと、図6の装置による第1表示部DAと第2表示部DBの点灯時間を示す。なお、第1表示部DAと第2表示部DBは7セグLEDであるのでそこに表示する数字・記号も変化するが、本発明の実施の形態ではどのような数字・記号がそこに表示されるかは問題とせず、その点灯時間のみを制御するので、表示される数字・記号については図7に示していない。したがって、発明の実施の形態は点滅のみを行う発光素子単体にも適用することができる。
図7(a)の割込周期の1,2は、第1タイマカウンタ54と第2タイマカウンタ56にそれぞれ与えられる割込信号の周期を示す。第1タイマカウンタ54に対する第1割込周期が「1」であり、第2タイマカウンタ56に対する第2割込周期が「2」である。この単位は例えばms(千分の一秒)であるが、これに限定されない。なお、表示の同期をとるという点で実際上問題になるのは第1割込周期と第2割込周期の比率(具体的には、第1割込周期と第2割込周期の比、(第1割込周期):(第2割込周期)、これは具体的には(1:(2以上の自然数))となる)であることが多く、比率で考えるときは単位が問題にならない。
図7(a)のタイマ減算値の1,2は、第1タイマカウンタ54と第2タイマカウンタ56でそれぞれ行われる処理(減算)の単位となる値を示す。第1タイマカウンタ54における減算値(第1タイマ減算値記憶部51の第1タイマ減算値)が「1」であり、第2タイマカウンタ56における減算値(第2タイマ減算値記憶部52の第2タイマ減算値)が「2」である。なお、「1」「2」は値であり、単位を持たない。
図7(b)の共通データの1000は、第1タイマカウンタ54と第2タイマカウンタ56の両方に与えられる初期値(タイマ値記憶部53の共通タイマ値)を示す。同図の「点灯」は制御の内容(表示制御開始信号により制御部が開始する動作の内容)を示す。したがって、図7(b)の共通データは、表示制御開始信号により表示部の点灯を開始させ、この状態を共通データ「1000」の取り込みを行った第1タイマカウンタ54又は第2タイマカウンタ56の値がゼロ(タイムアウト)になるまで継続させることを意味する。
図7(b)の実際の動作は、図6の装置に図7(a)の割込周期とタイマ減算値、及び、図7(b)のタイマ値と制御の内容を適用したときに第1表示部DAと第2表示部DBが行う動作を示す。この例によれば、第1表示部DAと第2表示部DBはいずれも1秒間点灯するという同じ動作を行う。
図8のフローチャートを参照して、図6の装置の動作を説明する。
S10:表示制御の開始
サブ基板20は、メイン基板10から受けたコマンドに基づき第1表示部DAと第2表示部DBの表示を行う。例えば、第1表示部DAにメダルの払出枚数を表示し、第2表示部に総獲得枚数を表示する場合、現在のメダルの払出枚数と総獲得枚数を取得し、これらを表示するように第1制御部57と第2制御部58へ指示する。例えば、第1表示部DAに「1」を表示させ、第2表示部DBに「100」を表示させる(これらの処理は公知であるので詳しく説明しない)。なお、メダルが1枚払い出されるごとに第1表示部DAの表示を減少させるとともに、これに合わせて第2表示部DBの表示を増加させるような場合は、第1表示部DAの「1」の表示と第2表示部DBの「100」の表示を同時に行う。
払出枚数と総獲得枚数が変化した後、次の第1表示部DAの「0」の表示と第2表示部DBの「101」の表示を行うためには、図8の処理を最初から行う。図8の処理を繰り返すことにより、例えば、第2表示部DBの表示が「100」「101」「102」・・・のように変化する。
S11:タイマ値を設定する。
第1タイマカウンタ54と第2タイマカウンタ56が、表示時間を定めるための共通タイマ値を設定するとともに、第1表示部DAと第2表示部DBの表示時間の比率を設定するための第1タイマ減算値と第2タイマ減算値をそれぞれ設定する。表示時間の比率と第1タイマ減算値及び第2タイマ減算値の関係については後述する。
S12:割り込みの有無を判定する。
第1タイマカウンタ54は、割込信号発生部50から信号を受けたとき割り込み有り(YES)と判定し、第2タイマカウンタ56は、割込周期変更部55から信号を受けたとき割り込み有り(YES)と判定する。なお、図面においては、スペースの関係上、「割り込み」を「割込」と表記しているので了承されたい。
割り込みがなければ(NO)、S12の処理を繰り返し、割り込みがあれば(YES)、S13とS14の処理を行う。
S13:減算を行う。
第1タイマカウンタ54は、その内部に設定されている値(初期値は共通タイマ値)から第1タイマ減算値を減算する。第2タイマカウンタ56も同様に、その内部に設定されている値(初期値は共通タイマ値)から第2タイマ減算値を減算する。なお、この演算は他の演算(例えば加算)であってもよい。
S14:タイムアウトかどうか判定する。
第1制御部57と第2制御部58はタイムアウトかどうか判定する。タイムアウトとは、設定された時間が経過したことを意味する。具体的には、第1タイマカウンタ54についてその値が所定値(ゼロ)になったことを意味し、S14でYESとなる(第2タイマカウンタ56についても同じ)。
なお、所定値はゼロ以外の任意のしきい値であってもよい。例えば、S13において加算を行う場合において、初期値をゼロとしておき(例えば表示制御開始信号に基づきカウンタをリセットする)、各カウンタの値が共通タイマ値である1000になったときタイムアウト(YES)と判定するようにすることもできる。
タイムアウトでなければ(NO)、S12に戻り上記処理を繰り返す。
S15:表示制御の停止
タイムアウトと判定されたら、第1制御部57と第2制御部58は、S10で開始した表示制御を停止する。上記例では、第1表示部DAに表示されていた「1」が消灯し、第2表示部DBに表示されていた「100」が消灯する。払出枚数と総獲得枚数が変化しているときは、再び処理が開始され次の数値が表示される。
ところで、図8の処理による表示部の点灯から消灯までの時間(点灯時間、処理時間あるいは制御時間と表記することがある)は次の式で与えられる。
・第1表示部DAについて
(第1表示時間)=(共通タイマ値)÷((第1タイマ減算値)/(第1割込周期))
図7の例では次のようになる。
(第1表示時間)=1000÷(1/1ms)=1000ms=1s
・第2表示部DBについて
(第2表示時間)=(共通タイマ値)÷((第2タイマ減算値)/(第2割込周期))
図7の例では次のようになる。
(第2表示時間)=1000÷(2/2ms)=1000ms=1s
・第1表示時間と第2表示時間の比率は次のようになる。
(第1/第2表示時間の比率)=((第2タイマ減算値)/(第1タイマ減算値))×((第1割込周期)/(第2割込周期))
図7の例では次のようになる。
(第1/第2表示時間の比率)=(2/1)×(1/2)=1
図7の例では、第1タイマ減算値と第2タイマ減算値の比率(1:2)を、第1表示部の割込信号の周期と第2表示部の割込信号の周期の比率(1:2)と同じにしているので、第1制御部57による第1表示部DAの制御開始から停止までの時間は、第2制御部58による第2表示部DBの制御開始から停止までの時間に一致する(いずれも1秒)。
上記説明から理解できるように、割込周期が異なる2つの系統の割込制御(図6の第1タイマカウンタ54、第2タイマカウンタ56)を行う場合において、タイマ値として共通の値を用いつつ、それぞれの制御時間の比率を任意に設定することができる。
例えば、図7(a)の第2表示部のタイマ減算値を1にすることで、(第1/第2表示時間の比率)は1/2となり、第2表示部DBは、第1表示部DAの2倍の2秒間点灯する。あるいは、図7(a)の第1表示部のタイマ減算値を2にすることでも、(第1/第2表示時間の比率)は1/2となり、第2表示部DBは第1表示部DAの2倍点灯するようになるが、第1表示部DAの点灯時間は0.5秒となる。また、図7(a)の第1表示部のタイマ減算値を1のまま第2表示部のタイマ減算値を4にすることで、(第1/第2表示時間の比率)は2となり、第2表示部DBは第1表示部DAの半分の時間点灯するようになるが、第1表示部DAの点灯時間は1秒で変わらない。
第1表示部DAと第2表示部DBの点灯時間の比率が与えられたとき、これを実現するためには、割込信号の第1割込周期と割込周期変更部50により変更された割込信号の第2割込周期との比率に従い、第2タイマ減算値と第1タイマ減算値との比率を定めればよい。例えば次式を用いる。
((第2タイマ減算値)/(第1タイマ減算値))=((第2割込周期)/(第1割込周期))×(第1/第2表示時間の比率)
以上のように、発明の実施の形態によれば、割込周期が異なる2つの系統の割込制御を行う場合において、それぞれの制御時間の比率を任意に設定することができる。しかも、このときに用いるタイマ値を共通にしデータ量を削減することができて、これを記憶するための記憶領域を節約することができる(タイマ値をそれぞれの制御系統で持つようにすると2倍の記憶容量を必要とする)。また、タイマ値を共通とすることで、制御時間を定める際のパラメータを減らすことができる。このため設計が容易になる。
また、第1タイマ減算値と第2タイマ減算値の比率を、変更前の割込信号の第1割込周期と割込周期変更部55により変更された割込信号の第2割込周期との比率と同じとすると、第1/第2表示時間の比率は1となり、第1表示部DAと第2表示部DBの点灯時間を同じにすることができる。
図9は、図6の変形例を示す。図9は加算によりタイムアウトを判定するものである。
図9では、第1タイマカウンタ54は、第1デバイスに対する制御開始信号を受けて内部の値(レジスタの値)を予め定められた初期値(例えばゼロ)に設定する。そして、割込信号を受けて、第1タイマカウンタ54はその内部のレジスタの値に第1タイマ加算値を加算する。第1制御部57は、第1タイマカウンタ54の値が共通タイマ値である所定の閾値(例えば1000)になったときタイムアウトと判定する。第1タイマカウンタ54の内部の値は、表示制御開始信号に基づきリセットされる。第2タイマカウンタ56、第2制御部58についても同様である。
図9における他の動作は、図6の場合と同じであるので説明は割愛する。
図10は、比較例を示す。同図は、第1タイマカウンタ54と第2タイマカウンタ56で割込周期が異なるにもかかわらず、タイマ値及びタイマ減算値を共通とするものである。図10では、タイマ減算値はデフォルトで定められていて変更されない(例えば常に減算値=1である)ため、図10においてはタイマ減算値関連の表示を省略している。図12においても同様)。
図10の装置では、第1表示部DAと第2表示部DBの表示時間を同じにすることができない、言い換えれば、表示変更について同期を取ることができないという問題がある。例えば、図11に示すように第1タイマカウンタ54と第2タイマカウンタ56の割込周期がそれぞれ1ms、2msであり(これは図7と同じ)、タイマ値が1000で共通であるとすると、第1表示部DAの表示時間は1秒、第2表示部DBの表示時間は2秒となり、両者は一致しない。そして、図10の装置では両者を一致させる手段がない。
これに対し、図6の装置によれば、第1表示部DAと第2表示部DBの表示時間の比率を任意に選択することができる。
図12は、他の比較例を示す。同図は、第1タイマカウンタ54と第2タイマカウンタ56で割込周期が異なることに対応して、第1タイマ値と第2タイマ値を記憶する2つの記憶部53a,53bを備えている。図12の装置によれば、第1表示部DAと第2表示部DBの表示時間の比率を選択することができるようになり、第1表示部DAと第2表示部DBの表示時間を同じにすることができる。例えば、図13に示すように第1タイマカウンタ54と第2タイマカウンタ56の割込周期がそれぞれ1ms、2msであり(これは図7と同じ)、第1タイマ値が1000、第2タイマ値を500とすると、第1表示部DAの表示時間は1秒、第2表示部DBの表示時間も1秒となり、両者は一致する。
しかし、タイマ値を記憶する記憶部を2つ必要とし、データ量が多くなるという問題がある。タイマ値は、制御の時間(点灯の時間)が異なれば個々の時間についてそれぞれ保持する必要がある。これは、制御の時間の種類の数だけ記憶部を用意する必要があることを意味し、制御時間が2種類になれば、図12の装置は4つの記憶部を備えなければならない。種類が増えればこれに応じて記憶部の数も増える。遊技機の演出は多種多様であり、制御時間の種類は多数になる。このため、図12の装置は、限られたメモリを有効に使用するという観点から好ましいものではない(遊技機に使用できるハードウエアは限定されておりメモリ容量は十分ではないので、メモリの有効活用は重要である)。
これに対し、図6の装置によれば、タイマ値を共用しているので記憶部の数は図12の半分で済む。他方、タイマ減算値を記憶する記憶部が必要になるが、制御時間の種類が増えてもタイマ減算値の記憶部を増やす必要はない。図6の第1タイマ減算値と第2タイマ減算値は第1表示部DAと第2表示部DBの表示時間の比率を定めるためのものであるが、この比率は第1表示部DAと第2表示部DBの表示時間が変化してもこれらの比率が変わることがほとんどない(例えばどの制御時間についても両者の表示時間は等しく、同期がとれている)ものであり、したがって、制御時間の種類に応じて多くの第1タイマ減算値と第2タイマ減算値を記憶する必要がない。
以上のことから、図6の本発明の実施の形態に係る装置は、比較例の図10と図12の装置に比べて優れていると言える。
次に、図6の割込周期変更部55として機能し得る実際の遊技機の動作について説明を加える。
図14は、サブ基板20における割り込み処理の概念を説明するための図である。同図の符号I1乃至I12の記された四角は、それぞれひとつの割り込み処理を行う要素を示す。図示しないが、I1乃至I12の各要素はそれぞれタイマカウンタを含んでいる。図6は2系統の割り込み処理を行う装置を示していたが、サブ基板20は、実際には図14のように最大12系統の割り込み処理を行うことができる。割り込み処理の間隔は例えば500μsであり、この間隔に従い符号I1,符号I2,・・・、符号I12のように12個の各要素が順番に実行される。つまり、ひとつの要素(例えば符号I12)に着目すれば、当該要素は6msごとに割り込み処理を実行することになる。図14によれば、各要素にそれぞれ異なる処理を割り当てることにより、同じ割込時間(=6ms)で12種類の異なる処理を実行することができる。
ところが、遊技機の演出が多様化したなどの理由により割り込みで行うべき処理が12種類を超えるという自体が生じてきた。CPUその他のハードウエアをより高性能のものに設計変更することが出来れば処理の種類が増えても問題はない。しかし、コストが上昇する点、当局の承認が必要である点などからハードウエアの変更は好ましくないこと、それと何よりも遊技機において使用できるハードウエアが限定されていることから割り込み処理の数を12より多くすることはできないという問題がある。したがって、処理が12種類を超えたとしても、図14に示す割り込み処理のシステムで対応しなければならない。
このために案出された手法が図15である。図15では符号12の割り込み処理がI12AとI12Bの2つに分割されている。なお、符号I12に限らず他の処理、例えば点線で示すように符号I9について分割することもできる。図15において、割込信号の順番が符号I12に回ってきたときにまず符号I12Aの割り込み処理を行い、次に順番が回ってきたら符号I12Bの割り込み処理を行うようにする。これは割り込みで起動されるプログラムの先頭に符号I12A、I12Bのいずれかを選択するコマンドを配置することにより実現可能である。図15によれば、合計で13種類の割り込み処理を実行することができる。
上記の動作原理から理解できるように、符号I12AとI12Bの割込間隔は、他の符号I1乃至I11のそれと異なり、2倍の12msとなる。ひとつの処理を分割して2つにすることで割込周期が2倍になっているから、上記のように構成すること(例えば上記コマンドを配置すること)が割込周期変更部55に相当する。割込周期の差異を無視して設計すると、図10の比較例で説明したように同期が取れなくなる。そこで、発明の実施の形態に係る割り込み処理が案出されたのである。符号I1乃至I11は図6の第1タイマカウンタ54を含み、符号I12AとI12Bは図6の第2タイマカウンタ56を含むと言える。
言い方を変えれば、本発明の実施の形態は、所定周期で割り込み処理を行う少なくとも2つのユニットAとユニットBがあり、これらの一方のユニットBをさらに細分化してB1、B2、・・・、BNにし(Nは2以上の自然数)、これらを交互に機能させ、ユニットAとB1、B2、・・・及びBNとで割込周期が異なるようになった場合において、この割込周期の違いを吸収して同期を取るという用途に好適である。ユニットAは図6の第1タイマカウンタ54を含むものであり、B1、B2、・・・、BNは図6の第2タイマカウンタ56を含むものであると言える。
なお、図16に示すように、符号I12Aの要素をさらに細分化し、符号I12AαとI12Bβとすることもできる。符号I12AαとI12Bβの割込間隔は24msとなり、符号I12Bの2倍、符号I1乃至I11の4倍となる。この場合でも、符号I12AαとI12Bβの第2タイマ減算値を符号I1乃至I11の4倍にすることにより、処理の間で同期を取ることが可能である。
また、図示しないが、符号I12を3つ(I12A、I12B、I12C)に分割することも可能である。この場合、第1割込周期と第2割込周期の比率は1:3となり、割込間隔は3倍となるが、第2タイマ減算値を3倍にすることにより、処理の間で同期を取ることが可能である。図14の各要素を2以上の自然数倍に分割することもでき、同様に同期を取ることができる。
本発明の実施の形態は、表示部以外のデバイスにも適用できる。例えば、LED基板202だけでなく、液晶制御基板200、スピーカ基板201についても適用することができ、液晶表示装置に所定の時間だけ画像を表示したり、スピーカから所定の時間だけ音響を流すようにできる(液晶表示装置、スピーカなども表示装置とともにデバイスに含める)。
また、点灯・表示処理以外の処理にも適用できる。例えば、画像の表示制御、音響の制御などにも適用できる。図示しない役物を備える遊技機であれば、当該役物の動作の開始・停止の制御にも適用することができる(これら画像、音響、動作の制御も点灯・表示処理とともにデバイスの制御に含める)。割込制御の内容が互いに異なるものでもよく、例えば第1制御部57が点灯・表示処理を行い、第2制御部58が音響制御を行う、ということもできる。
以上は遊技機としてスロットマシンを例に取り説明を加えたが、本発明の実施の形態はこれに限定されず、パチンコ機のような他の遊技機にも適用可能である。
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。