以下、添付図面を参照して、本発明の実施の形態について説明する。
図1は、この実施の形態にかかるスロットマシンの全体構造を示す正面図である。図2は、図1のスロットマシンの前面扉を開放した状態で視認される内部構造を示す図である。図3は、図1のスロットマシンの前面扉の背面側の構造を示す図である。スロットマシン1の前面扉は、施錠装置19(図1)にキーを差し込み、時計回り方向に回動操作することにより開放状態とすることができる。
図1〜図3を参照して説明すると、このスロットマシン1の上部前面側には、可変表示装置2が設けられている。可変表示装置2の内部には、3つのリール3L、3C、3Rから構成されるリールユニット3が設けられている。リール3L、3C、3Rは、それぞれリールモータ3ML、3MC、3MRの駆動によって回転/停止させられる。
リール3L、3C、3Rの外周部には、それぞれ「色なし7」、「色つき7」、「BAR」、「JAC」、「スイカ」、「チェリー」、「ベル」といった図柄が所定の順序で描かれている。リール3L、3C、3Rの外周部に描かれた図柄は、可変表示装置2において上中下三段に表示される。また、リールユニット3内には、リール3L、3C、3Rのそれぞれに対して、その基準位置を検出するリールセンサ3SL、3SC、3SRと、背面から光を照射するリールランプ3LPとが設けられている。
また、可変表示装置2の周囲には、各種表示部が設けられている。可変表示装置2の下側には、ゲーム回数表示部21と、クレジット表示部22と、ペイアウト表示部23とが設けられている。ゲーム回数表示部21は、7セグメント表示器によるゲーム回数表示器51によって構成され、ビッグボーナスやレギュラーボーナス時にゲーム数、入賞数をカウントするカウンタの値を表示する。
クレジット表示部22は、7セグメント表示器によるクレジット表示器52によって構成され、後述するようにメダルの投入枚数及び払い出し枚数に応じてデータとして蓄積されたクレジットの数を表示する。ペイアウト表示部23は、7セグメント表示器によるペイアウト表示器53によって構成され、入賞が成立した場合に払い出されるメダルの枚数を表示する。
可変表示装置2の左側には、1枚賭け表示部24、2枚賭け表示部25、26、及び3枚賭け表示部27、28が設けられている。1枚、2枚、3枚賭け表示部24〜28は、賭け数に応じて有効化されたライン(以下、有効ラインという)に対応してそれぞれ1枚、2枚、3枚賭けランプ54〜58が点灯状態となることで、各ゲームにおける有効ラインを遊技者に示す。1枚、2枚、3枚賭け表示部24〜28は、また、いずれかの役への入賞があった場合に1枚、2枚、3枚賭けランプ54〜58が点滅状態となることで、役に入賞した有効ラインを遊技者に示す。
可変表示装置2の右側には、投入指示表示部29と、スタート表示部30と、ウェイト表示部31と、リプレイ表示部32と、ゲームオーバー表示部33とが設けられている。投入指示表示部29は、投入指示ランプ59が点灯状態となることで、メダルが投入可能なことを示す。スタート表示部30は、スタートランプ60が点灯状態となることで、スタート可能、すなわちスタートレバー11の操作受付可能であることを示す。ウェイト表示部31は、ウェイトランプ61が点灯状態となることで、後述するウェイトがかかっていることを示す。リプレイ表示部32は、リプレイランプ62が点灯状態となることで、リプレイ入賞をしたことを示す。ゲームオーバー表示部33は、ゲームオーバーランプ63が点灯状態となることで、スロットマシン1が打ち止めになったことを示す。
可変表示装置2の上側には、演出手段及び画像表示手段としての液晶表示器4が設けられている。液晶表示器4は、遊技の進行に応じた様々な演出(報知)用の画像を表示する。なお、後述のように、液晶表示器4は、本発明の報知手段としての役割も果たす。演出(報知)用の画像は、例えば、一連の動画像によって構成されるもので、その演出の過程や最終画面によって、内部抽選へ当選したこと、またはその可能性があることが告知(内部抽選の当選確率が100%であることを報知するもの)または予告(内部抽選に当選している可能性があることを報知するもの)される。また、液晶表示器4は、後述するデータROMのテスト結果を画像で表示して報知するためにも用いられる。
また、可変表示装置2の下方に設けられた台状部分の水平面には、メダル投入口13と、1枚BETボタン14と、MAXBETボタン15と、精算ボタン16とが設けられている。1枚BETボタン14及びMAXBETボタン15には、データとして蓄積されたクレジット(最大50)から賭け数の設定を可能としているときに点灯するBETボタンランプ70a、70b(図4参照)が内部に配されている。
メダル投入口13は、遊技者がここからメダルを投入するものであり、投入指示表示部29が点灯しているときにメダルの投入が投入メダルセンサ44によって検出されると、賭け数が設定され、或いはクレジットがデータとして蓄積される。1枚BETボタン14及びMAXBETボタン15は、データとして蓄積されているクレジットから賭け数(それぞれ1、3)を設定する際に遊技者が操作するボタンであり、遊技者によって操作されたことが1枚BETスイッチ45(図4参照)またはMAXBETスイッチ46(図4参照)によって検出されると、クレジットからの賭け数の設定が行われる。精算ボタン16は、クレジットの払い出しを指示するためのボタンであり、精算スイッチ47(図4参照)によって操作が検出されると、データとして蓄積されたクレジットに応じたメダルが払い出される。
その台状部分の垂直面には、スタートレバー11と、停止ボタン12L、12C、12Rとが設けられている。さらに、停止ボタン12L、12C、12Rを覆うパネルが、ボーナス告知部36として適用されている。停止ボタン12L、12C、12Rは、いずれの順で操作することも可能であり、その操作順に従ってリール3L、3C、3Rの回転が停止される。
スタートレバー11は、ゲームを開始する際に遊技者が操作するもので、その操作がスタートスイッチ41(図4参照)によって検出されると、リール駆動モータ3ML、3MC、3MRが駆動開始され、リール3L、3C、3Rが回転開始する。停止ボタン12L、12C、12Rは、それぞれ遊技者が所望のタイミングでリール3L、3C、3Rの回転を停止させるべく操作するボタンであり、その操作がストップスイッチ42L、42C、42R(図4参照)で検出されると、リール3L、3C、3Rの回転が停止される。
停止ボタン12L、12C、12Rの操作が可能となっていることを、その内部に備えられた操作有効ランプ63L、63C、63R(図4参照)が点灯状態となることにより、遊技者に示す。ボーナス告知部36は、ボーナス告知ランプ66(図4参照)が点灯状態となることで、後述するビッグボーナス当選フラグまたはレギュラーボーナス当選フラグが100%の確率で設定されていることを遊技者に告知する。また、停止ボタン12Rの右側には、メダルが詰まったときなどにおいてスロットマシン1に機械的に振動を与えるメダル詰まり解消ボタン18が設けられている。
スロットマシン1の下部前面側には、メダル払い出し口71と、メダル貯留皿72とが設けられている。メダル払い出し口71は、ホッパー80によって払い出しが行われたメダルを外部に排出するものである。ホッパー80は、メダルの払い出し動作を行うホッパーモータ82と、メダルの払い出しを検知する払い出しセンサ81とから構成されている。メダル貯留皿72は、払い出されたメダルを貯めておくためのものである。メダル貯留皿72の上の前面パネルには、内部に設置された蛍光灯6(図4参照)が発した光が照射される。ホッパー80からオーバーフローしたメダルを貯留するオーバーフロータンク95の内部には、貯留するメダルが満タンになったことを検知する満タンセンサ90が設けられている。
スロットマシン1の下部前面側と、上部前面側の左右とには、それぞれ演出手段としてのスピーカ7U、7L、7Rが設けられている。スピーカ7U、7L、7Rは、入賞時及びビッグボーナス、レギュラーボーナス突入時の効果音の出力や、異常時における警報音の出力を行うと共に、遊技状態に応じた様々な演出用の音声の出力を行う。また、スピーカ7U、7L、7Rは、後述するデータROMのテスト結果を音声出力して報知するためにも用いられる。
さらに、スロットマシン1の前面側には、可変表示装置2及び液晶表示器4の周囲を取り囲むように、演出手段としての遊技効果ランプ75A〜75Mの発光により光による演出を行う遊技効果表示部5A〜5Mが設けられている。遊技効果表示部5A〜5Mは、遊技の進行状況に応じた様々なパターンで光による演出を行うものである。なお、遊技効果表示部5A〜5Mの発光色は、単色からなるものであっても、複数色からなるものであっても構わない。遊技効果ランプ75A〜75Mを発光させることで、遊技効果表示部5A〜5MをデータROMのテスト結果を報知するために用いることもできる。
また、スロットマシン1の内部には、内部抽選への当選確率を設定する設定スイッチ91、設定スイッチ91を開錠操作により操作可能とする設定キースイッチ92、内部状態(RAM112(図5参照))をリセットする第2リセットスイッチ93、及び電源のON/OFF切り替えを行うメインスイッチ94を備える電源ユニット9が設けられている。また、第2リセットスイッチ93と同様の機能を有する第1リセットスイッチ48が、前面扉背面側の施錠装置19に対応する位置に設けられている。
上記の各部を制御する制御基板として、内部下側に配された電源基板100、内部上側にそれぞれ配された遊技制御基板101、リール中継基板103、リールランプ中継基板104及び外部出力基板105、並びに前面扉裏側に配された演出制御基板102が設けられている。図4は、各制御基板100〜105を含む、このスロットマシン1の制御回路の構成を示す図である。図5は、遊技制御基板101及び演出制御基板102に搭載された回路構成要素及び信号配線を示す図である。
電源基板100は、AC100Vの外部電源電圧を変圧し、遊技制御基板101その他のスロットマシン1の各部に動作電力を供給する。なお、図4では、電源基板100は遊技制御基板101及びホッパー80にのみ接続されているが、他の各部への電力の供給も行っている。また、電源基板100には、設定スイッチ91、設定キースイッチ92、第2リセットスイッチ93、メインスイッチ94が接続されており、これらのスイッチの検出信号を遊技制御基板101へと送る。
遊技制御基板101は、スロットマシン1における遊技の進行全体の流れを制御する制御基板であり、CPU111、RAM112、ROM113及びI/Oポート114を含む1チップマイクロコンピュータからなる制御部110を搭載している。また、乱数発生回路115、サンプリング回路116、バッファ回路117、スイッチ回路118、モータ回路119その他の回路を搭載している。
CPU111は、計時機能、タイマ割り込み機能を備え、ROM113に記憶されたプログラムを実行して、遊技の進行に関する処理を行うと共に、スロットマシン1内の制御回路の各部を直接的または間接的に制御する。RAM112は、CPU111がプログラムを実行する際の作業領域として使用されるもので、後述する各種当選フラグや各種遊技状態フラグ、或いは各種のカウンタの値の記憶領域が設けられる。ROM113は、CPU111が実行するプログラムや固定的なデータを記憶する。I/Oポート114は、遊技制御基板101に接続された各回路との間で制御信号を入出力する。
乱数発生回路115は、所定時間(例えば、2ミリ秒)間隔でカウントするカウンタによって構成され、サンプリング回路116は、乱数発生回路115が発生している数値を取得する。CPU111は、その処理に応じてサンプリング回路116に指示を送ることで、乱数発生回路115が示している数値を乱数として取得する(以下、この機能をハードウェア乱数機能という)。CPU111は、I/Oポート114及びバッファ回路117を介して演出制御基板102に、後述する各種のコマンドを送信する。なお、遊技制御基板101から演出制御基板102へ情報は一方向のみで送られ、演出制御基板102から遊技制御基板101へ向けて情報が送られることはない。
遊技制御基板101には、1枚BETスイッチ45、MAXBETスイッチ46、スタートスイッチ41、ストップスイッチ42L、42C、42R、精算スイッチ47、第1リセットスイッチ48、投入メダルセンサ44が接続されており、これらのスイッチ/センサ類の検出信号が入力される。また、リール中継基板103を介して、リールセンサ3SL、3SC、3SRの検出信号が入力される。I/Oポート114を介して入力されるこれらスイッチ/センサ類の検出信号、或いは前述したように電源基板100を介して入力される各種スイッチの検出信号に従って、遊技制御基板101上のCPU111は、処理を行っている。
遊技制御基板101には、また、流路切り替えソレノイド49、ゲーム回数表示器51、クレジット表示器52、ペイアウト表示器53、投入指示ランプ59、1枚賭けランプ54、2枚賭けランプ55、56、3枚賭けランプ57、58、ゲームオーバーランプ63、スタートランプ60、リプレイランプ62、BETボタンランプ70a、70b、操作有効ランプ63L、63C、63Rが接続されており、CPU111は、遊技の進行状況に従ってこれらの動作を制御している。また、遊技制御基板101には、リール中継基板103を介してリールモータ3ML、3MC、3MRが接続されており、CPU111は、モータ回路119及びリール中継基板103を介してリール3L、3C、3Rの回転,停止を制御する。
演出制御基板102は、スロットマシン1における演出(報知)の実行を制御する制御基板であり、CPU及びサブプロセッサ、ROM、RAMなどを含む制御部120を搭載している。演出制御基板102は、本発明の基板に相当する。制御部120は、スロットマシン1での遊技に関する処理として、スロットマシン1における演出(報知)の実行に関する処理を行うと共に、演出制御基板102内の各回路及びこれに接続された各回路を制御する。演出(報知)の実行は、バッファ回路130を介して遊技制御基板101から受信した報知指令信号及び遊技制御指令信号としての遊技制御コマンドに基づいて行われる。制御部120は、本発明の制御手段に相当する。制御部120の詳細については後述する。
演出制御基板102は、また、乱数発生回路134及びサンプリング回路135を搭載しており、制御部120がサンプリング回路135により乱数発生回路134がカウントしている値を取得することにより、遊技制御基板101と同様のハードウェア乱数機能を形成している。
演出制御基板102には、遊技効果ランプ75A〜75M、液晶表示器4、スピーカ7L,7R,7U、蛍光灯6、ウェイトランプ61、ボーナス告知ランプ66が接続されており、これらを駆動するため、スピーカ駆動回路131、表示駆動回路132、ランプ駆動回路133等を備えている。また、リールランプ中継基板104を介してリールランプ3LPが接続されている。演出制御基板102の制御部は、これら各部をそれぞれ制御して、演出(報知)を行っている。
リール中継基板103は、遊技制御基板101と外部出力基板105及びリールユニット3との間を中継している。リール中継基板103には、また、満タンセンサ90が接続されており、その検出信号が入力される。リールランプ中継基板104は、演出制御基板102とリールユニット3との間を中継している。外部出力基板105は、ホールの管理コンピュータなどの外部装置に接続されており、遊技制御基板101からリール中継基板103を介して入力されたビッグボーナス中信号、レギュラーボーナス中信号、リール制御信号、ストップスイッチ信号、メダルIN信号、メダルOUT信号を、当該外部装置に出力する。
次に、演出制御基板102上に設けられる制御部120について詳しく説明する。図6は、制御部120を詳細に示す図である。図示するように、制御部120は、内部RAM122を含むCPU121、プログラムROM123、3つのデータROM124−1〜3、アトリビュートRAM125aを含むVDP(ビデオプロセッサ)125、VRAM(ビデオRAM)126、ワークRAM127aを含むADP(オーディオプロセッサ)127とから構成されている。
CPU121、プログラムROM123、データROM124−1〜3、VDP125、VRAM126、ADP127は、それぞれ個別の半導体チップによって構成されている。データROM124−1〜3は、いずれも22ピンで対称形状である半導体チップであり、外形形状が同一又は近似しているが、内部に記憶されるデータが異なっている。データROM124−1〜3は、本発明のデータ記憶媒体に相当する。その他のチップは、互いにピン数や外形形状が異なっている。CPU121、プログラムROM123、データROM124−1〜3、VDP125、VRAM126、ADP127の半導体チップは、そのピンが演出制御基板102上に予め形成されたソケットに勘合されることで、演出制御基板102上に搭載される。
CPU121は、プログラムROM123に記憶されたプログラムを実行して、演出(報知)の実行に関する処理を行うと共に、演出制御基板102内の各回路及びこれに接続された各回路を制御する。CPU121は、内部タイマを有している。CPU121のプログラムカウンタには、実行中のプログラムに従って、任意の特定の値(実行すべき命令が格納されているアドレス)をセットすることができる。もっとも、プログラムカウンタの値は、通常は1ずつ増加される。
また、CPU121は、プログラムROM123に記憶されたプログラムを実行して、演出制御基板102内の各回路のテストを行う。演出(報知)及びテストの実行は、次に示す制御データキューに設定された制御データに基づいて行われる。制御データキューへの制御データの設定は、バッファ回路130を介して遊技制御基板101から受信したコマンドに基づいて行われる。表示制御手段であるCPU121は、本発明の報知実行手段,データ読出手段,確認手段,確認結果報知手段,報知保護手段,チェックデータ生成手段,解除手段,書込指示手段,テスト演出実行手段として機能する。
RAM122は、CPU121がプログラムを実行する際の作業領域として使用される。RAM122には、CPU121で各コマンドに応じた処理を実行するためのキューとして、上記の制御データを設定するための先入れ先出し方式の制御データキューが設けられる。説明の便宜上、制御データキューの大きさは無限であるものとする。制御データが設定されるとき、その制御データは制御データキューの最後尾に追加され、CPU121が制御データに基づく処理を終了すると、次の制御データが取り出されて、該制御データに基づく処理が続けて行われる。プログラムROM123は、CPU121が実行するプログラムを記憶している。
データROM124−1〜3は、演出(報知)を実行するための固定的なデータを記憶している。データROM124−1、2は画像データを記憶し、データROM124−3は音声データ及びランプデータを記憶している。画像データは、液晶表示器4に表示する数字,文字,記号,図形等の図柄のデータであり、音声データは、スピーカ7L,7R,7Uから出力する各種の音声のデータであり、ランプデータは、遊技効果LED5A〜5Mを発光させるデータである。データROM124−1〜3は、また、後述するテスト(データチェック)を行うためのテストデータも記憶している。データROM124−1〜3に記憶されるデータの構成の詳細については後述する。
アトリビュートRAM125aには、各コマンドに応じた処理結果を特定する情報としての画像処理指示情報が書き込まれる。アトリビュートRAM125aは、本発明の一時記憶領域に相当する。画像処理指示情報は、データROM124−1,2から読み出すべき画像データを指定するデータと、その画像データの属性(サイズ,移動方向,移動量,表示の優先度等)を含む。このアトリビュートRAM125aへの画像処理指示情報の書き込みは、CPU121が各コマンドに応じて行う。
VDP125は、このアトリビュートRAM125aに書き込まれた画像処理指示情報に従って、演出制御基板102上の液晶表示器4に対応するソケットの搭載位置に搭載されたデータROM124−1、2から画像データを一端アトリビュートRAM125aに読み出す。このとき、画像データは、アトリビュートRAM125aの画像処理指示情報が書き込まれる領域とは異なる領域に読み出される。VDP125は、アトリビュートRAM125aに読み出された画像データを用いて、VRAM126に画像処理指示情報に従った画像を展開する。VRAM126は、本発明の画像展開領域に相当する。VDP125は、VRAM126に展開した画像を、同期信号(水平同期信号,垂直同期信号)を含むビデオ信号として表示駆動回路132に出力する。VDP125は、本発明の画像作成手段に相当する。
ADP127は、CPU121からの指示に従って、演出制御基板102上のスピーカ7L,7R,7U及び遊技効果LED5A〜5Mに対応するソケットの搭載位置に搭載されたデータROM124−3から音声データをワークRAM127aに読み出し、ワークRAM127aに一時格納された音声データに基づいて音声信号を生成し、スピーカ駆動回路131に出力する。ADP127は、また、CPU121からの指示(コマンド)に従って、演出制御基板102上のスピーカ7L,7R,7U及び遊技効果LED5A〜5Mに対応するソケットの搭載位置に搭載されたデータROM124−3からランプデータをワークRAM127aに読み出し、ワークRAM127aに一時格納されたランプデータに基づいて遊技効果LED5A〜5Mを駆動するための信号をランプ駆動回路133に出力する。
CPU121は、データROM124−1〜3に記憶されたデータを直接読み込むことができないが、VDP125のアトリビュートRAM125aまたはADP127のワークRAM127aに一時記憶されたデータであれば読み込むことができる。後述するテストにおいてデータROM124−1〜3のテストデータを読み出す必要がある場合は、詳細を後述するように、CPU121は、アトリビュートRAM125aまたはワークRAM127aを利用するものとなっている。
スピーカ駆動回路131は、ADP127から出力された音声信号に従ってスピーカ7L,7R,7Uを駆動し、音声を出力させる。表示駆動回路132は、VDP125から出力されたビデオ信号に従って液晶表示器4を駆動し、画像を表示させる。ランプ駆動回路133は、ADP127から出力された信号に従って遊技効果ランプ75A〜75Mを駆動し、これらを発光させる。
次に、データROM124−1〜3のテストについて説明する。データROM124−1〜3のテストは、演出制御基板102のデータROM124−1〜3搭載用の各ソケットに正しい位置で、データROM124−1〜3が挿入されているかどうか、さらには各ソケットに搭載されたデータROM124−1〜3のデータが正しいかどうかをチェックするものである。このデータチェックのため、データROM124−1〜3には、画像データ、或いは音声データ及びランプデータと共に、データチェックのためのテストデータが予め格納されている。
図7(a)〜(c)は、それぞれデータROM124−1〜3に記憶されたデータの構成を示す図である。これらの図に示すように、演出制御基板102上のソケットにデータROM124−1〜3が正しい位置で挿入された場合の先頭番地は、それぞれX番地、Y番地、Z番地となっている。データROM124−1〜124−3のいずれも、先頭番地からa番地、b番地、c番地、d番地後の位置にテストデータが記憶されている。
すなわち、演出制御基板102上のソケットにデータROM124−1が正しい位置で挿入された場合、データROM124−1では、X+a番地、X+b番地、X+c番地、X+d番地にテストデータが記憶されており、これらの各番地に記憶されたテストデータXa、Xb、Xc、Xdを加算すると、その値がXとなる。演出制御基板102上のソケットにデータROM124−2が正しい位置で挿入された場合、データROM124−2では、Y+a番地、Y+b番地、Y+c番地、Y+d番地にテストデータが記憶されており、これらの各番地に記憶されたテストデータYa、Yb、Yc、Ydを加算すると、その値がYとなる。演出制御基板102上のソケットにデータROM124−3が正しい位置で挿入された場合、データROM124−3では、Z+a番地、Z+b番地、Z+c番地、Z+d番地にテストデータが記憶されており、これらの各番地に記憶されたテストデータZa、Zb、Zc、Zdを加算すると、その値がZとなる。
一方、演出制御基板102上のソケットにデータROM124−1〜3が正しい位置で挿入されなかった場合は、次のようなことが起こる。例えば、データROM124−1を挿入すべきソケットにデータROM124−2が挿入されたものとすると、X+a番地、X+b番地、X+c番地、X+d番地からデータを読み出したとき、実際に読み出したデータがそれぞれYa、Yb、Yc、Ydとなり、それらを加算した結果の値は、本来あるべき値のXではなく、Yとなる。
さらに、演出制御基板102上のソケットに挿入されたデータROM124−1〜3について不良があり、記憶されているデータに誤りがあった場合は、次のようなことが起こる。例えば、データROM124−1にデータ不良があると、X+a番地、X+b番地、X+c番地、X+d番地からデータを読み出したとき、実際に読み出したデータでXa、Xb、Xc、Xdが揃わず、それらを加算した結果の値がXとならない。また、読み出したデータを加算した結果の値がYやZとなることも、確率的にほとんど起こらない。
なお、データROM124−1〜3のテストデータが記憶されている番地以外の番地に、画像データ、或いは音声データ及びランプデータが記憶されている。
ところで、CPU121がデータROM124−1〜3からテストデータを読み出すためには、前述したようにアトリビュートRAM125aまたはワークRAM127aが利用される。このテストデータの読み出しについて、詳しく説明する。図8(a)〜(d)は、CPU121によるデータROM124−1〜3からのテストデータの読み出しの手順を説明する図である。ここでは、データROM124−1からデータを読み出す場合を例として説明する。
データROM124−1からテストデータを読み出す場合、まず、図8(a)に示すように、CPU121は、読み出そうとするテストデータの番地と共にVDP125にテストデータの読み出しの指示を送る。このテストデータの読み出しの指示は、アトリビュートRAM125aに書き込まれる。次に、図8(b)に示すように、VDP125は、CPU121からの指示に含まれる番地にアクセスして、指示されたテストデータをデータROM124−1から読み出す。そして、図8(c)に示すように、読み出したテストデータをアトリビュートRAM125aに一時格納する。
その後、図8(d)に示すように、CPU121は、アトリビュートRAM125aに格納されたテストデータをVDP125から読み出すものとなる。なお、データROM124−2からテストデータを読み出す場合は、上記と全く同じ手順で動作が行われるが、データROM124−3からテストデータを読み出す場合には、VDP125ではなくADP127を介在させて、図8(a)〜(d)に示したのと同様の手順で動作が行われる。
CPU121は、例えば、データROM124−1についてであれば、図8(a)〜(d)に示した手順に従って、X+a番地、X+b番地、X+c番地、X+d番地からデータを読み出し、順次加算した加算結果を求める。データROM124−2、3についても同様である。その加算結果を照合用データであるX、Y、Zと比較することによって、データチェックの結果を得るものである。
CPU121によるデータチェックの結果は、液晶表示器4に表示される画像
によって、或いはスピーカ7L,7R,7Uから出力される音声によって報知される。画像によって報知されるか音声によって報知されるかは、データチェックの対象となったデータROM124−1〜3のデータ内容によって決まる。図9(a)〜(d)は、CPU121によるデータROM124−1〜3のデータチェックの結果を報知する態様を示す図である。
データチェックの対象となったのが音声データ及びランプデータを記憶するデ
ータROM124−3(実際には、データROM124−3を挿入すべき位置のソケットに挿入されていたデータROM)であった場合には、図9(a)または(b)に示すように、液晶表示器4へ画像を表示することでチェック結果を報知する。
データチェックの結果として、例えば、データROM124−3を挿入すべき位置のソケットに挿入されていたのが実際にはデータROM124−2であると判断されれば、図9(a)に示すように、例えば「音声・ランプのROMを搭載すべき位置に画像BのROMが搭載されています。」と画像表示される。データチェックの結果として、データROM124−3を挿入すべき位置のソケットに挿入されていたデータROMにデータ不良があると判断されれば、図9(b)に示すように、例えば「音声・ランプのROMのデータが正しくありません」と画像表示される。
データチェックの対象となったのが画像データを記憶するデータROM124−1または124−2(実際には、データROM124−1または124−2を挿入すべき位置のソケットに挿入されていたデータROM)であった場合には、図9(c)または(d)に示すように、スピーカ7L,7R,7Uから音声を出力することでチェック結果を報知する。
データチェックの結果として、データROM124−1を挿入すべき位置のソケットに挿入されていたのが実際にはデータROM124−2であると判断されれば、図9(c)に示すように、例えば「画像AのROMを搭載すべき位置に画像BのROMが搭載されています。」と音声出力される。データチェックの結果として、データROM124−1を挿入すべき位置のソケットに挿入されていたデータROMにデータ不良があると判断されれば、図9(d)に示すように、例えば「画像AのROMのデータが正しくありません」と音声出力される。もっとも、音声出力による報知の場合は、言葉で報知するのではなく、データチェックの結果毎に異なる態様の警告音を出力するものであってもよい。
以下、この実施の形態にかかるスロットマシン1の動作について説明する。スロットマシン1が遊技進行モードにあるときは、賭け数の設定からリール3L、3C、3Rの回転・停止、停止した際の可変表示装置2の表示態様に基づく入賞判定から、メダルの払い出しまでの一連の処理を含むゲームを繰り返して行うものである。各ゲームの処理は、より詳細には次のように行われる。
1ゲームの処理が開始すると、遊技者がメダル投入口13からのメダルの投入、またはBETボタン14、15の操作によって賭け数を設定する。前のゲームでリプレイ入賞していた場合は、前のゲームにおける賭け数が自動で設定される。賭け数を設定した後、遊技者がスタートレバー11を操作する。スタートレバー11の操作によって、遊技制御基板101のCPU111は、乱数の抽出により各役の入賞を許容するか否かを事前に決定する内部抽選を行い、内部抽選に当選した場合には、当選した役に応じた当選フラグをRAM112に設定する。
また、スタートレバー11が操作されることによって、リール3L、3C、3Rの回転(変動)が開始される。その後、遊技者が停止ボタン12L、12C、12Rを操作することでリール3L、3C、3Rの回転が停止する。回転開始から一定時間を経過した場合も、リール3L、3C、3Rの回転が停止する。リール3L、3C、3Rの回転を停止する際には、停止操作のタイミングとRAM112に設定された当選フラグとに従って、当選フラグに応じた図柄を有効ライン上に表示させようとする所謂引き込み制御が行われることとなる。
リール3L、3C、3Rの回転が停止すると、その際の可変表示装置2の表示態様により有効ライン上に役図柄が揃ったかどうかを判定する。役図柄が揃った場合は、CPU111は、入賞した役に応じた各種の設定(メダルの払い出し予定数の設定や遊技状態に関するフラグの設定を含む)を行う。そして、入賞判定処理で払い出し予定数が設定された場合は、その予定数だけのメダルを払い出す(或いはクレジットを増加させて)。これで、1ゲーム分の処理が終了し、次のゲームの処理に移行する。
上記のように遊技進行モードで各ゲームの処理を繰り返して行っている間に、遊技制御基板101のCPU111は、遊技の進行状況に応じた各種の演出(報知)を行わせるための遊技制御コマンドを演出制御基板102に送信している。
スロットマシン1は、また、上記したような遊技進行モードの他にテストモードを有している。テストモードは、工場出荷してスロットマシン1が遊技店に設置されたときであっても、メインスイッチ94によりスロットマシン1の電源を投入したときや、リセットスイッチ48、93によりスロットマシン1のリセット操作を行ったときに、遊技進行モードに先立って動作が行われるモードである。
スロットマシン1がテストモードにあるときは、遊技制御基板101のCPU111は、遊技の進行とは無関係に、各種のテストを行うための処理を行う。そのテストの中には、演出制御基板102の各ソケットに挿入されたデータROM124−1〜3のデータチェックが含まれる。
データROM124−1〜3のデータチェックを行わせるため、遊技制御基板101のCPU111は、演出制御基板102に確認指令信号としてのデータチェックコマンドを送信する。また、演出制御基板102の側で他の種類のテストを行わせる場合に、CPU111は、行わせるテストに応じたコマンドを演出制御基板102に送信する。コマンドを送信する態様は、演出(報知)に関するコマンドもテストに関するコマンドも同じである。
一方、演出制御基板102では、遊技進行モード及びテストモードにおいて遊技制御基板101から送られてくるコマンドに従って動作が行われるものとなる。すなわち、遊技進行モードにおいて各種の演出(報知)に関するコマンドが送られてくれば、受信したコマンドに応じた演出(報知)が行われることとなり、テストモードにおいて各種のテストに関するコマンドが送られてくれば、受信したコマンドに応じた演出(報知)が行われることとなる。もっとも、演出制御基板102の制御部120は、遊技進行モードとテストモードとを区別して動作を行っているのではない。
図10は、スロットマシン1の電源が投入された時点において、演出制御基板102のCPU121が実行する電源投入時処理を示すフローチャートである。電源投入時処理においては、最初に、内部タイマにより計時を開始する(ステップS101)。計時を開始した後、遊技制御基板101から送信される初期化コマンド、または電源復旧コマンドを受信したかどうかを判定する(ステップS102)。なお、電源復旧コマンドは、電源投入前に電源エラー等が生じて電源遮断が起きて、電源遮断時の状態がバックアップされていた場合に、遊技制御基板101から送信されるコマンドである。初期化コマンドは、電源遮断時の状態がバックアップされていない場合において、電源投入時に遊技制御基板101から送信されるコマンドである。
初期化コマンドまたは電源復旧コマンドを受信することなく内部タイマの計時開始から所定時間を経過した場合には、演出制御基板102と遊技制御基板101とが正常に接続されていないものと判断し、データチェックコマンドの受信により設定されるのと同一のデータチェック用の制御データを制御データキューに設定する。制御データキューは、CPU121で各コマンドに応じた処理を実行するための制御データを並べたキューである。電源投入時において、制御データキューは空となっているため、ここでデータチェック用の制御データは、制御データキューの先頭に入れられることとなる(ステップS104)。
内部タイマの計時開始から所定時間を経過するまでに初期化コマンドまたは電源復旧コマンドを受信した場合には、CPU121の内部レジスタやRAM122を初期化させ、さらにCPU121からの指示により、VDP125、VRAM126及びADP127も初期化させる(ステップS105)。電源復旧コマンドであった場合もこのような初期化処理を行うのは、遊技制御基板101側における処理と演出制御基板102側における処理とに矛盾が生じることがないようにするためである。
ステップS104やステップS105に続いて、CPU121の制御状態が「コマンド実行禁止状態」となっているかを確認する(ステップS106)。「コマンド実行禁止状態」となっているか否かの判断は、RAM122に記憶されているコマンド実行禁止フラグの状態を確認することで行う。なお、コマンド禁止状態フラグは、後述のステップS314(図12)でセットされるものである。
ステップS106でNOと判断すると、電源投入時処理を終了する。一方、ステップS106でYESと判断すると、「コマンド実行禁止状態」を解除する(ステップS107)。「コマンド実行禁止状態」の解除は、コマンド実行禁止フラグをクリアすることで行われる。ステップS107で「コマンド実行禁止状態」を解除すると、電源投入処理を終了する。
なお、本実施形態では、電源投入時に、初期化コマンドまたは電源復旧コマンドを受信した場合には、上述のステップS105で、CPU121の内部レジスタやRAM122が初期化され、さらにCPU121からの指示により、VDP125、VRAM126及びADP127も初期化させる構成としている。したがって、この場合には、RAMのコマンド実行禁止フラグがクリアされているため、ステップS106では、常にNOの判断となる。よって、ステップS105の初期化が行われていない場合や、電源投入時に初期化されない記憶領域にコマンド実行禁止フラグの状態を記憶する構成とした場合に、ステップS106でYESと判断される場合が生じることになる。
電源投入時処理を終了すると、CPU121は、通常の処理を行うものとなる。図11は、電源投入時処理の終了後において、演出制御基板102のCPU121が実行する処理を示す図である。CPU121は、図11(a)に示すコマンド受信待機処理と、図11(b)に示す制御データチェック処理とを並行して行うものとなる。これらの処理は、例えば、タイマ割り込みなどによって一定時間毎に切り替えて実行される。
図11(a)のコマンド受信待機処理においては、CPU121は、遊技制御基板101から送られてくるコマンドを受信したかどうかを判定している(ステップS201)。コマンドを受信するまでは、ステップS201の処理を繰り返し、コマンドの受信を待機している状態にある。なお、初期化コマンド及び電源復旧コマンドは、それに基づく処理がステップS102で行われるため、ここでの判定対象とはならない。もっとも、電源復旧コマンドに続けて送信される各種コマンドは、ここでの判定対象となる。
遊技制御基板101からいずれかのコマンドを受信すると、受信したコマンドに応じた制御データを制御データキューの最後尾に設定する(ステップS202)。ここで、データチェックコマンドを受信した場合には、初期化コマンドを受信することなく、内部タイマの計時開始から所定時間を経過した場合に設定されるのと同一の、データチェック用の制御データが設定されることとなる(ステップS202)。そして、ステップS201の処理に戻る。
図11(b)の制御データチェック処理においては、CPU121は、制御データキューをチェックし、いずれかの制御データが設定されているかどうかを判定している(ステップS251)。制御データキューに制御データが設定されるまでは、ステップS251の処理を繰り返し、制御データが設定されるまで待機する。ステップS251で、制御データキューに制御データが設定されていると判断すると(ステップS251;YES)、CPU121の制御状態が「コマンド実行禁止状態」となっているかを確認する(ステップS252)。「コマンド実行禁止状態」となっているか否かの判断は、RAM122に記憶されているコマンド実行禁止フラグの状態を確認することで行う。なお、コマンド禁止状態フラグは、後述のステップS314(図12)でセットされるものである。
ステップS252でYESと判断すると、ステップS251に戻り、処理を繰り返す。一方、ステップS252でNOと判断すると、設定されている制御データのうちの先頭の制御データを取り出す(ステップS253)。そして、取り出した制御データの種類が何であるかを判定する(ステップS254)。ステップS254で取り出した制御データがデータチェック用の制御データであった場合には、詳細を後述するデータチェック処理(図12)を行う(ステップS255)。データチェック処理が終了すると、ステップS251の処理に戻る。
取り出した制御データがその他の種類の制御データであった場合(ステップS254:その他)には、それぞれの制御データの種類に応じたその他の処理を実行する(ステップS256)。すなわち、データチェック用以外のテストに関する制御データであれば、当該制御データが示すテストを実行する。演出(報知)に関する制御データであれば、当該制御データに従ってVDP125および/またはADP127に指示を送り、データROM124−1〜3に記憶されたデータを用いて演出(報知)を実行させる。その後、ステップS251の処理に戻る。
次に、ステップS255のデータチェック処理について詳しく説明する。図12は、データチェック処理を詳細に示すフローチャートである。データチェック処理は、演出制御基板102のデータROM124−1〜3を搭載すべき各ソケットに、データROM124−1〜3が正しく搭載されているか、及び搭載されたデータROM124−1〜3のデータが正しいかどうかをチェックするための処理である。
図12のデータチェック処理においては、変数Mに順次X、Y、Zの値を代入して第1ループの処理を行う(ステップS301−S301’)。第1ループ内においては、まず、変数Kに初期値として0を代入する(ステップS302)。変数Kが初期化されると、変数Nに順次a、b、c、dの値を代入して第2ループの処理を行う(ステップS303−S303’)。第2ループ内においては、データROM124−1〜3のM+N番地に記憶されているテストデータを読み出し、読み出したテストデータの値を変数Lに代入する(ステップS304)。ここで、データROM124−1〜3からテストデータを読み出す場合には、図8に示したようにVDP125またはADP127を介在させて行う。次に、変数Kの値と変数Lの値とを加算して、その加算結果を変数Kに代入する(ステップS305)。この加算結果であるK(例えば、Xa+Xb+Xc+Xd)が、本発明のチェックデータに相当する。
例えば、データROM124−1〜3がソケットに正しい位置で挿入されていた場合において、データチェックの対象とするのがデータROM124−1であれば、変数Mの値はXとなる。変数Nの値が順次変化して第2ループの処理が行われることで、X+a番地、X+b番地、X+c番地、X+d番地のテストデータXa、Xb、Xc、Xdの値が変数Kに加算されていく。そして、第2ループを抜けたときの変数Kの値は、Xa+Xb+Xc+Xd=Xとなり、変数Mの値と等しくなる。
第2ループを抜けると、変数Kの値が変数Mの値と等しいかどうかを判定する(ステップS306)。変数Kの値が変数Mの値と等しければ、データチェックの対象としたデータROM124−1〜3は正しい位置でソケットに挿入され、かつデータの内容も正しいということになる。この場合、第1ループで変数Mに代入すべき値に残りがあれば、次の値を代入して第1ループ内の処理を再び行い、変数Mに代入すべき値に残りがなければ、第1ループを抜けることとなる。第1ループを抜けた場合は、このデータチェック処理を全て終了し、図11のフローチャートの処理に復帰するものとなる。
変数Kの値が変数Mの値と等しくなかった場合には、データチェックの対象としたデータROM124−1〜3が正しい位置でソケットに挿入されていなかったか、データの内容が正しくなかったということになる。この場合は、まず、変数Mの値がZであるかどうかを判定して、データチェックの対象が音声データ・ランプデータを記憶したデータROM124−3であるかどうかを判定する(ステップS307)。
ステップS307で変数Mの値がZではないと判定した場合には、データチェックの対象が画像データを記憶したデータROM124−1または2であるので、データチェック結果を報知するための報知手段として、スピーカ7L,7R,7Uが選ばれることとなる。ここでさらに、変数Kの値(すなわち、テストデータを加算した値)が、X,YまたはZであるかどうかを判定する(ステップS308)。もっとも、ここでは変数Kの値が変数Mに現在代入されている値(XまたはY)と等しくなると判定されることはない。
ステップS308で変数Kの値がX、YまたはZであると判定した場合には、現在の変数Mの値(XまたはY)に対応するデータROM124−1または2を挿入すべき位置のソケットに挿入されていたデータROMが、現在の変数Kの値(X、YまたはZ)に対応するデータROM124−1〜3のいずれかであることを、正しく搭載されているデータROM124−3の音声データを用いて、図9(c)に示したようにスピーカ7L,7R,7Uから音声を出力して報知する(ステップS309)。
ステップS308で変数Kの値が、XでもYでもZでもないと判定した場合には、現在の変数Mの値(XまたはY)に対応するデータROM124−1または2を挿入すべき位置のソケットに挿入されているデータROMのデータ内容に不正があることを、正しく搭載されているデータROM124−3の音声データを用いて、図9(d)に示したようにスピーカ7L,7R,7Uから音声を出力して報知する(ステップS310)。
ステップS307で変数Mの値がZであると判定した場合には、データチェックの対象としたのが音声データ・ランプデータを記憶したデータROM124−3であるので、データチェック結果を報知するための報知手段として液晶表示器4が選ばれることとなる。ここでさらに、変数Kの値(すなわち、テストデータを加算した値)がXまたはYであるかどうかを判定する(ステップS311)。
ステップS311で変数Kの値がXまたはYであると判定した場合には、現在の変数Mの値(Z)に対応するデータROM124−3を挿入すべき位置のソケットに挿入されていたのが実際には現在の変数Kの値(XまたはY)に対応するデータROM124−1または2であることを、正しく搭載されているデータROM124−1,2の画像データを用いて、図9(a)に示したように液晶表示器4に画像表示して報知する(ステップS312)。
ステップS311で変数Kの値がXでもYでもないと判定した場合には、現在の変数Mの値(Z)に対応するデータROM124−3を挿入すべき位置のソケットに実際に挿入されているデータROMのデータ内容に不正があることを、正しく搭載されているデータROM124−1,2の画像データを用いて、図9(b)に示したように液晶表示器4に画像表示して報知する(ステップS313)。
以上のように、本実施形態では、ステップS309,ステップS312で、第1ループで対象となっている搭載位置(Mの値に対応する搭載位置)に、実際に搭載されているデータROMが、データROM124−1〜3のいずれであるかに応じて、異なる報知態様で報知が行われる。さらに、ステップS309,ステップS310,ステップS312,ステップS313に続いて、CPU121の制御状態が「コマンド実行禁止状態」へ移行される(ステップS314)。「コマンド実行禁止状態」への移行は、RAM122のコマンド実行禁止フラグをセットすることで行う。なお、「コマンド実行禁止状態」は、本発明の報知保護状態に相当する。ステップS314で「コマンド実行禁止状態」へ移行した後、データチェック処理を全て終了し、図11のフローチャートの処理に復帰する。
なお、本実施形態では、ステップS314で「コマンド実行禁止状態」へ移行した後、データチェック処理を全て終了させる構成とされており、ステップS306でNOと判定された場合には、第1ループを抜けて、ステップS307〜S314の処理がなされる。しかし、このような処理ではなく、ステップS306でNOと判定された後、ステップS309,ステップS310,ステップS312,ステップS313による報知を、その報知が見過ごされ難いように必要な時間行って、ステップS314に進んだ後に、ステップS301’へ進むようにしてもよい。ステップS301’では、変数Mに代入すべき値に残りがあれば、次の値を代入して第1ループ内の処理を再び行い、変数Mに代入すべき値に残りがなければ、第1ループを抜ける構成となる。
以上説明したように、この実施の形態にかかるスロットマシン1では、テストモードにて遊技制御基板101からデータチェックコマンドが送られてくれば、CPU121は、データROM124−1〜3のテストデータを読み出し、読み出したテストデータに基づいて各ソケットに正しいデータROM124−1〜3が挿入されているかを確認するようになっている。さらに、データROM124−1〜3のデータの内容が正しくないことを、データROM124−1〜3に関する異常として、各ソケットに挿入されたデータROM124−1〜3のデータの内容が正しいかどうかを確認するようになっている。そして、その結果が液晶表示器4またはスピーカ7L,7R,7Uから報知される。これにより、演出制御基板102の各ソケットにデータROM124−1〜3が正しく挿入されているか、データの内容が正しいかを効率よく確認できるようになる。
また、スロットマシン1がテストモードとなってデータチェックコマンドが送信されるのは、メインスイッチ94或いはリセットスイッチ48、93が操作されたときである。つまり、データROM124−1〜3のデータチェックのために特別な操作を行う必要がなく、データROM124−1〜3のデータチェックを容易に開始することができるようになる。データチェックコマンドは、遊技進行モードにおいて送られる演出(報知)に関するコマンドと同じ態様で遊技制御基板101から演出制御基板102に送信されるので、CPU121にデータチェックを開始させるための信号の入力部を別に設ける必要がない。
データROM124−1〜3のテストデータは、それぞれの先頭番地の値からa、b、c、dプラスした番地にだけ記憶されており、データチェックにおいては該当する番地からのみ読み出しを行えばよい。このため、テストデータの読み出しが迅速に行える。さらに、テストデータは、データROM124−1〜3のそれぞれについて加算され、その加算結果だけが確認用データと照合される。このため、確認用データとの照合の回数が少なく、データチェックを迅速に行うことができる。また、データROM124−1〜3から複数のテストデータを読み出して厳密な確認を行う場合であっても、各テストデータの加算結果と照合するための確認用データを1つだけ用意すればよい。したがって、各テストデータと照合するために多くの確認用データを用意しなくても、データROM124−1〜3の確認を厳密に行うことができる。
さらに、テストデータの加算結果と照合される確認用データは、該当するデータROM124−1〜3が正しく挿入された場合における先頭番地の値となっている。各データROM124−1〜3の先頭番地は、テストデータの読み出しのためにも用意しておかなければならないデータであり、確認用データとして専用のデータを用意する必要がない。また、テストデータの加算結果に基づいて、データの内容自体は正しいデータROM124−1〜3が正しい位置のソケットに挿入されていない場合において、各ソケットに挿入されているデータROM124−1〜3を本来挿入すべきソケットがどこであるかを容易に特定できるようになる。
データROM124−1〜3のデータチェックを行った結果の報知は、画像データを記憶するデータROM124−1、2についてはスピーカ7L,7R,7Uから音声を出力して、音声データ・ランプデータを記憶するデータROM124−3については液晶表示器4に画像を表示して報知するようになっている。このため、データチェックの対象としたソケットに実際に搭載されたデータROMに誤りがあっても、チェック結果を報知する際に問題が生じない。
特に液晶表示器4に画像を表示することでデータチェックの結果を報知することで、その認識が容易になる。さらに、データチェックの結果として各ソケットに誤って挿入されているのがデータROM124−1〜3のいずれであるか特定できる場合には、それも報知されることとなるので、その後の修正作業を容易に行えるようになる。
ところで、演出制御基板102に搭載されているのは、データROM124−1〜3の他にCPU121、VDP125、ADP127等があるが、データROM124−1〜3に本来的に記憶されたデータを用いるのはVDP125、ADP127であって、CPU121は、データROM124−1〜3のデータを直接読み出すことができない。もっとも、データチェックを行う際には、CPU121は、VDP125またはADP127に指示を送り、アトリビュートRAM125aまたはワークRAM127aに読み出させたテストデータを読み出すようにしている。このため、CPU121は、データROM124−1〜3に直接接続されていなくても、データROM124−1〜3に記憶されたテストデータを読み出すことができる。
本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について、(A)〜(N)を説明する。
(A) 上記の実施の形態では、データROM124−1〜3に関する異常として、データROM124−1〜3のデータの内容が正しくないことを例として説明した。しかし、データROM124−1〜3に関する異常は、これに限らない。例えば、データROM124−1〜3がソケットに間違った方向で挿入されるという異常や、データROM124−1〜3の各ピンがソケットにきちんと嵌合されていなかったり、ピンが破損したりしてテストデータを読み出せないという異常等も、本発明のデータROM124−1〜3に関する異常であり、この異常もデータチェックの処理の対象となる。
例えば、データROM124−1〜3がソケットに間違った方向で挿入されている場合や、読み出せないテストデータが含まれる場合に、ステップS304で読み出されるテストデータの合計が、ステップS306でX,Y,Zにならないように、データROM124−1〜3に予めテストデータを記憶させておく。こうすることで、データROM124−1〜3がソケットに間違った方向で挿入されている場合等に、ステップS306でNOと判断され、データROM124−1〜3がソケットに間違った方向で挿入されているという異常や、データROM124−1〜3から読み出せないテストデータがあるという異常を発見できる。
具体的には、例えば、データROM124−1が搭載されるべき搭載位置に、データROM124−1が間違った方向で挿入された場合には、図12の第2ループのステップS304で、Xa,Xb,Xc,Xdとは異なる、Xa’,Xb’,Xc’,Xd’が読み出されるように、X+a番地、X+b番地、X+c番地、X+d番地を定めるとともに、テストデータXa’,Xb’,Xc’,Xd’(Xa’+Xb’+Xc’+Xd’はXではない)をデータROM124−1に記憶しておく。また、例えば、図12の第2ループのステップS304で、読み出せないテストデータがあった場合には、ステップS304で変数LにXa,Xb,Xc,Xdとは異なる値を代入するようにする。
(B) 上記の実施の形態では、テストモードにおいて遊技制御基板101から送信されたデータチェックコマンドを受信することで、演出制御基板102のCPU121は、データROM124−1〜3についてのデータチェックを行うものとしていた。これに対して、専用のテスタなどからデータチェックコマンドと同等の確認用信号を入力することによって、データROM124−1〜3についてのデータチェックを開始させるものとすることもできる。この場合、演出制御基板102をスロットマシン1の本体に組み付ける以前にも、データROM124−1〜3についてのデータチェックを行うことができるようになる。
(C) 上記の実施の形態では、データROM124−1〜3のデータチェックを行った結果、正しい位置のソケットに挿入されていないと判断される場合(テストデータの加算結果が先頭番地と異なるX、Y、Zとなる場合)と、データの内容が正しくないと判断される場合(テストデータの加算結果がX、Y、Zとならない場合)とにおいて、液晶表示器4またはスピーカ7L,7R,7Uからの報知を行うものとしていた。しかしながら、本発明はこれに限らない。
例えば、データROM124−1〜3がそれぞれ正しい位置のソケットに挿入され、データの内容も正しいと判断される場合であっても、その旨を液晶表示器4やスピーカ7L,7R,7Uから報知するものとしてもよい。また、テストデータの加算結果が先頭番地と一致しなければ、全てデータの内容が正しくないものとして報知を行うものとしてもよい。さらに、データROM124−1〜3の全てについてデータチェックを行ってから、全ての結果を報知するものとしてもよい。
(D) 上記の実施形態では、確認用データは、該当するデータROM124−1〜3が正しく挿入された場合における先頭番地の値であり、確認用データとして専用のデータを用意していない。そして、テストデータの加算結果と、先頭番地の値とを比較していた(ステップS301−S306)。しかし、確認用データとして、専用の対比データを用意しておいて、この対比データと各テストデータとを対比することで、データチェック処理を行うようにしてもよい。また、この対比データと各テストデータとを対比することで行うデータチェック処理を、上記実施形態のデータチェック処理と併せて行うようにすれば、より正確にデータROM124−1〜3のチェックを行うことができる。
(E) 上記の実施の形態では、データROM124−1〜3が正しく搭載された場合、それぞれの先頭番地はX、Y、Zとなっており、これがテストデータの演算結果と照合される確認用データとなっていた。また、データROM124−1、2は画像データを、データROM124−3は音声データ及びランプデータを記憶するものであったので、データチェックの結果は、それぞれ音声及び画像で報知するものとなっていた。これに対して、データROM124−1〜3に記憶されるデータの構成を変えることで、次のようなことが行えるようになる。
図13(a)〜(c)は、データROM124−1〜3に記憶されたデータの変形例を示す図である。データROM124−1〜3は、それぞれソケットに正しい位置で挿入されたときのX+e番地、Y+e番地、Z+e番地に、確認用データXe、Ye、Zeを記憶している。データROM124−1に記憶されたテストデータXa、Xb、Xc、Xdを加算した値は、データROM124−2に記憶された確認用データYeと等しくなっている。データROM124−2に記憶されたテストデータYa、Yb、Yc、Ydを加算した値は、データROM124−3に記憶された確認用データZeと等しくなっている。データROM124−3に記憶されたテストデータZa、Zb、Zc、Zdを加算した値は、データROM124−1に記憶された確認用データXeと等しくなっている。
例えば、データROM124−1についてデータチェックを行う場合は、データROM124−1からテストデータXa、Xb、Xc、Xdの加算結果を求めた後、データROM124−2から確認用データYeを読み出して、両者を照合することでデータチェックを行うものとすることができる。同様に、データROM124−2については、データROM124−3から確認用データZeが読み出され、データROM124−3については、データROM124−1から確認用データXeが読み出されるものとなる。
これにより、データチェック用のプログラムを改変することなく、機種が異なるスロットマシンについて異なる確認用データを使用して、データチェックを行うことができるようになる。確認用データが機種毎に異なるものとなるため、例えば、異なる機種に用いられるデータROMが正しい位置で搭載されている場合であっても、データの内容が正しくないものとして判断することができるようになる。
なお、演出制御基板102に設けられたソケットの数よりも、搭載しなければならないデータROMの数が少ない場合、空きソケットが生じることとなる。空きソケットの番地についてデータの読み出しを行えば、論理のとり方にもよるが、読み出したデータは、テストデータも確認用データも全て0となる。例えば、上記したデータROM124−2を搭載すべき位置が空きソケットとなる場合は、データROM124−1のテストデータXa、Xb、Xc、Xdの合計が0となるように設定しておけばよい。
また、図13においてデータROM124−1〜3は、それぞれソケットに正しい位置で挿入されたときのX+f番地、Y+f番地、Z+f番地から、NG表示用データを記憶している。NG表示用データは、データチェックの結果だけは表示できるようにするための画像データである。例えば、データROM124−1が挿入されるべきソケットに、本来的には音声データ・ランプデータを記憶するデータROM124−3が挿入されていたとしても、X+f番地にアクセスするとNG表示用の画像データを読み出せる。そこで、このNG表示用の画像データを用いて、データROM124−1〜3に記憶されているデータがどのような種類の演出(報知)に用いられるかに関わらず、図9(a)及び(b)に示したようにデータチェック結果を液晶表示器4に表示させて報知することができるようになる。
(F) 上記実施形態では、ステップS301’で第1ループを抜けた後や、ステップS314の後、データチェック処理を全て終了していた。しかし、図12の破線で示したように、ステップS301’や、ステップS314の後に、ステップS315の表示確認処理を行うようにすることもできる。図14(a)〜(c)は、表示確認処理を行う場合における、データROM124−1〜3に記憶されたデータの変形例を示す図である。図15は、図14のデータに基づいて液晶表示器4に表示される画像を説明する説明図である。図16は、表示確認処理を示すフローチャートである。
図14(a)〜(c)に示したデータROM124−1〜3は、演出制御基板102上のソケットに正しい位置で挿入されたときのX+g番地,Y+g番地,Z+g番地、及びX+h番地,Y+h番地,Z+h番地から、テスト演出用データとして、左・右領域データ、及び中領域データを記憶している。左・右領域データは、データROM124−1〜3が正しい位置で挿入されたときのX+g番地,Y+g番地,Z+g番地から記憶されている。また、中領域データは、データROM124−1〜3が正しい位置で挿入されたときのX+h番地,Y+h番地,Z+h番地から記憶されている。
図15は、左・右領域データ,中領域データに基づいて、液晶表示器4に表示される画像を説明する説明図である。左・右領域データは、図15(a1),(a2),(a3)に示すように、液晶表示器4の左側の領域と、右側の領域に所定の画像を表示するためのデータである。本実施形態では、液晶表示器4の左側の領域に「赤」の帯を、液晶表示器4の右側の領域に「青」の帯を表示させるためのデータが、左・右領域データとして、ROM124−1がソケットに正しい位置で挿入されたときのX+g番地から記憶され、この左・右領域データによって、図15(a1)に示す画像を表示することができる。液晶表示器4の左側の領域に「緑」の帯を、液晶表示器4の右側の領域に「青」の帯を表示させるためのデータが、左・右領域データとして、ROM124−2がソケットに正しい位置で挿入されたときのY+g番地から記憶され、この左・右領域データによって、図15(a2)に示す画像を表示することができる。液晶表示器4の左側の領域に「青」の帯を、液晶表示器4の右側の領域に「青」の帯を表示させるためのデータが、左・右領域データとして、ROM124−3がソケットに正しい位置で挿入されたときのZ+g番地から記憶され、この左・右領域データによって、図15(a3)に示す画像を表示することができる。
また、中領域データは、図15(b1),(b2),(b3)に示すように、液晶表示器4の中央の領域に所定の画像を表示するためのデータである。本実施形態では、液晶表示器4の中央の領域に「赤」の帯を表示させるためのデータが、中領域データとして、ROM124−1がソケットに正しい位置で挿入されたときのX+h番地から記憶され、この中領域データによって、図15(b1)に示す画像を表示することができる。液晶表示器4の中央の領域に「緑」の帯を表示させるためのデータが、中領域データとして、ROM124−2がソケットに正しい位置で挿入されたときのY+h番地から記憶され、この中領域データによって、図15(b2)に示す画像を表示することができる。液晶表示器4の中央の領域に「青」の帯を表示させるためのデータが、中領域データとして、ROM124−3がソケットに正しい位置で挿入されたときのZ+h番地から記憶され、この中領域データによって、図15(b3)に示す画像を表示することができる。
図16に示す表示確認処理では、CPU121は、VDP125に対して、X+g番地、及びY+h番地からテスト演出用データを読出し(ステップS401)、その読み出したデータに基づいて液晶表示器4に表示を行うテスト演出を実行する(ステップS402)ように指令を出す。VDP125は、この指令に基づいてテスト演出を液晶表示器4で実行させる。すなわち、VDP125は、X+g番地のテスト演出用データ(左・右領域データ)と、Y+h番地のテスト演出用データ(中領域データ)をアトリビュートRAM125aに読み出し、読み出したX+g番地、及びY+h番地のテスト演出用データを合成して、VRAM126に画像を展開する。そして、このVRAM126に展開した画像を液晶表示器4で表示させることで、テスト演出を液晶表示器4で実行させる。
このように実行されるテスト演出は、データROM124−1〜3の何れがソケットに挿入されているかで異なってくる。データROM124−1が搭載されるべき、液晶表示器4に対応する正しいソケットの搭載位置を「搭載位置1」とする。データROM124−2が搭載されるべき、液晶表示器4に対応する正しいソケットの搭載位置を「搭載位置2」とする。「搭載位置1」,「搭載位置2」と、そこに搭載されるデータROM124−1〜3の関係に応じて、テスト演出で液晶表示器4に表示される画像は、以下のように異なる。
データROM124−1,データROM124−2が正しい位置に搭載された場合には、正常な画像がテスト演出で表示される。本実施形態における正常な画像は、「赤緑青」の順に並んだ帯からなる画像である。つまり、「搭載位置1」にデータROM124−1、「搭載位置2」にデータROM124−2が搭載された場合には、図15(a1b2)に示すように、「赤緑青」の順に並んだ帯からなる画像が表示される。
一方、データROM124−1〜3が正しい位置に搭載されていない場合には、正常な画像をテスト演出で表示させることができず、異常時の画像として図15(a1b1),(a1b3),(a2b1),(a2b2),(a2b3),(a3b1),(a3b2),(a3,b3)にそれぞれ示す画像が液晶表示器4に表示される。
「搭載位置1」にデータROM124−1、「搭載位置2」にデータROM124−1が搭載された場合には、図15(a1b1)に示すように、「赤赤青」の順に並んだ帯からなる画像が表示される。
「搭載位置1」にデータROM124−1、「搭載位置2」にデータROM124−3が搭載された場合には、図15(a1b3)に示すように、「赤青青」の順に並んだ帯からなる画像が表示される。
「搭載位置1」にデータROM124−2、「搭載位置2」にデータROM124−1が搭載された場合には、図15(a2b1)に示すように、「緑赤青」の順に並んだ帯からなる画像が表示される。
同様に、データROM124−1〜3の搭載位置に応じて、図15(a2b2),(a2b3),(a3b1),(a3b2),(a3,b3)にそれぞれ示すように、「緑緑青」,「緑青青」,「青赤青」,「青緑青」,「青青青」の順に並んだ帯からなる画像が表示される。
本実施形態では、上述するように、データROM124−1,データROM124−2が正しい位置に搭載された場合と、そうでない場合とで、テスト演出で液晶表示器4に表示される色彩の帯の順序が異なる。このため、データROM124−1,データROM124−2が正しい位置に搭載されているか否かを液晶表示器4の表示を見ることでチェックできる。また、データROM124−1〜3が正しい位置に搭載されていない場合には、データROM124−1〜3の何れが「搭載位置1」,「搭載位置2」に搭載されているかに応じて、色彩の帯が異なった順序で液晶表示器4に表示される。このため、テスト演出で液晶表示器4に表示される色彩の帯の順序をみれば、「搭載位置1」,「搭載位置2」に、データROM124−1〜3の何れが誤って搭載されているかを判断できる。例えば、図15(a2b1)に示すように、「緑赤青」の順に並んだ帯からなる画像が表示されれば、「搭載位置1」に誤ってデータROM124−2が、「搭載位置2」に誤ってデータROM124−1が搭載されたと判断できる。さらに、テスト演出で、液晶表示器4に表示される画像に色彩を与えていることで、液晶表示器4の色彩表示が正常に行われるかを確認することもできる。
ところで、テスト演出で液晶表示器4に表示する画像は、上記の例に限らない。例えば、テスト演出で液晶表示器4に図17に示すような図柄の画像を表示することもできる。図17に示す例では、ROM124−1〜3に、図17(a1),(a2),(a3)に示す画像を表示するための左・右領域データと、図17(b1),(b2),(b3)に示す画像を表示するための中領域データとが、上記の図14,図15の例と同様の記憶位置に記憶されている。テスト演出が実行されると、データROM124−1,データROM124−2が正しい位置に搭載されている場合には、図17(a1b2)に示す、「合格」の文字を円で囲った図柄の画像が、正常な画像として液晶表示器4に表示される。一方、上記の図15の場合と同様に、データROM124−1〜3が正しい位置に搭載されていない場合には、異常時の画像として図17(a1b1),(a1b3),(a2b1),(a2b2),(a2b3),(a3b1),(a3b2),(a3,b3)にそれぞれ示す画像が、液晶表示器4に表示される。また、図17の例でも、図柄や図柄の背景等に色彩を与えれば、テスト演出を行うことで図15と同様の効果を得ることができる。
上記の表示確認処理は、また次のように変形することができる。図18(a)〜(c)は、他の実施形態の表示確認処理を行う場合における、データROM124−1〜3に記憶されたデータの変形例を示す図である。上記実施形態では、液晶表示器4に対応する正しいソケットの搭載位置として、「搭載位置1」と「搭載位置2」の2つの搭載位置を備えていた。液晶表示器4に対応する正しいソケットの搭載位置として3つの搭載位置を備え、各搭載位置に3種類のデータROM124−1〜3を搭載する場合には、このデータROM124−1〜3に記憶されるデータを、例えば、図18に示すように変形すればよい。
図18(a)〜(c)に示したデータROM124−1〜3は、演出制御基板102上のソケットに正しい位置で挿入されたときのX+g番地,Y+g番地,Z+g番地、X+h番地,Y+h番地,Z+h番地、及びX+i番地,Y+i番地,Z+i番地から、テスト演出用データとして、左領域データ、中領域データ及び右領域データを記憶している。左領域データは、データROM124−1〜3が正しい位置で挿入されたときのX+g番地,Y+g番地,Z+g番地から記憶されている。また、中領域データは、データROM124−1〜3が正しい位置で挿入されたときのX+h番地、Y+h番地、Z+h番地から記憶されている。また、右領域データは、データROM124−1〜3が正しい位置で挿入されたときのX+i番地、Y+i番地、Z+i番地から記憶されている。この場合、X+g番地、Y+h番地、及びZ+i番地からテスト演出用データを読出し、その読み出したデータに基づいて液晶表示器4に表示を行うテスト演出を実行する。
以上説明した表示確認処理は、図12のデータチェック処理において、ステップS301’や、ステップS314の後に行うものであったが、ステップS301の前に行うようにしてもよい。また、ステップS301からステップS301’,ステップS314までの処理を行わずに、データチェック処理において表示確認処理だけを行うようにすることもできる。
(G) 上記の実施の形態では、画像データ、或いは音声データ及びランプデータを記憶するデータROM124−1〜3のデータチェックを行う場合を説明したが、プログラムROM123についても、同様にデータチェックを行うことができる。プログラムは、CPU121における扱い方が異なるだけで、記憶されている状態としては、画像データや音声データなどと全く変わらないからである。もっとも、プログラムの実行時にプログラムカウンタの値によってテストデータをプログラムとして読み出さないようにするため、テストデータが記憶される番地にまたがって同一のモジュールのプログラムが記憶されないようにすればよい。
(H) 上記の実施の形態では、データROM124−1〜3の特定のアドレス(X+a番地等)にテストデータそのものが記憶されるものとなっていたが、特定のアドレスには実際にテストデータが記憶されているアドレスデータを格納するものとしてもよい。この場合、特定のアドレスからアドレスデータを読み出し、さらに読み出したアドレスデータに従ってテストデータを読み出すものとすればよい。これにより、内容的にひとかたまりのデータ(プログラムを含む)が分断されて記憶されたり、分断をさけるためにデータROM124−1〜3に空き領域を作ってしまうことを避けることができる。また、この場合においても、機種の違いによって演出制御基板102に搭載されるデータROM124−1〜3のデータ内容が異なるものとなっても、データチェックの処理を行うためのプログラムを変更する必要がない。
(I) 上記の実施の形態では、演出制御基板102上には、CPU121、プログラムROM123、データROM124−1〜3、VDP125、VRAM126、及びADP127が、それぞれ別個の半導体チップで構成されて搭載されるものとなっていた。しかしながら、少なくともCPU121と、データチェックの対象となるROMが別個のチップで搭載されるのであれば、その構成は任意である。プログラムとデータが同一のROMに格納されていたり、プログラムが複数のROMに分かれて格納されていてもよい。また、VDP125やADP127はなくてもよく、この場合は、CPU121がROMからテストデータを直接読み出せるようにすればよい。
(J) 上記の実施の形態では、演出制御基板102のCPU121は、遊技制御基板101のCPU111からデータチェックコマンドを受信したときに、データROM124−1〜3のデータチェックを行うものとしていた。これに対して、通常の運用時には使用されないテスト基板を演出制御基板102に接続し、このテスト基板から演出制御基板102にデータチェックコマンドを送信するものとしてもよい。CPU121は、テスト基板からのデータチェックコマンドを受信したときも、同様にデータROM124−1〜3のデータチェックを行うものとすることができる。なお、演出制御基板102とテスト基板とは、遊技制御基板101からのケーブルを接続するスロットがある場合、遊技制御基板101が接続されていない状態で、テスト基板からのケーブルを当該スロットに接続することで、接続されるものとしてもよい。
(K) 上記の実施の形態では、演出制御基板102に搭載されたデータROM124−1〜3について、各ソケットに正しい位置で搭載されているか、データの内容が正しいかについて確認するものとしていた。これに対して、遊技制御基板101に搭載されたROMのチップについても同様のことが行える。また、遊技制御基板101と演出制御基板102とを分けずに1つの基板上に制御回路を形成した場合にも本発明を適用することができる。
(L) 上記の実施の形態では、データ記憶媒体として半導体チップからなるデータROM124−1〜3を演出制御基板102に搭載していた。しかしながら、データの記憶位置が管理され、特定の記憶位置にテストデータを記憶できるデータ記憶媒体であれば、磁気ディスクや光ディスクなどでもよい。テストデータを記憶する特定の記憶位置は、データROM124−1〜3ではアドレスで特定されるものとしていたが、例えば磁気ディスクの場合は、セクタ及びトラックで特定されるものであればよい。
(M) 上記の実施の形態では、スロットマシンを例として本発明を適用した場合を説明したが、パチンコ遊技機等の遊技機についても、基板上に搭載されたROMのチップ(或いは他の種類のデータ記憶媒体)について、同様の手法により、各ソケットに正しい位置で搭載されているか、データの内容が正しいかについて確認することができる。
(N) 上記の実施の形態では、「コマンド実行禁止状態」は、電源投入時にステップS107や、ステップS105で解除される構成であった。しかし、「テスト実行禁止状態」を解除するタイミングはこれに限られない。電源が遮断されたことを条件に「コマンド実行禁止状態」が解除される構成でもよい。例えば、電源遮断時にCPU121がコマンド実行禁止フラグをクリアして、「コマンド実行禁止状態」を解除してもよい。または、ステップS314において、電源遮断時にバックアップされない記憶領域にコマンド実行禁止フラグをセットすることで、電源遮断時にはコマンド実行禁止フラグがセットされた状況が喪失され、「コマンド実行禁止状態」が解除される構成にしてもよい。
他にも、特定のコマンドを受信したことを確認したときに「コマンド実行禁止状態」を解除してもよい。この特定のコマンドは、例えば、「コマンド実行禁止状態」を解除することを指令する専用のコマンドや、データチェックコマンドである。さらに、ステップS314で「コマンド実行禁止状態」が設定されてから、或いはステップS309,ステップS310,ステップS312,ステップS313の報知が行われてから所定時間が経過したこと、又はデータチェック処理が終了してから所定時間が経過したことを条件として、「コマンド実行禁止状態」を解除する構成としてもよい。この場合の所定時間は、報知を見過ごし難いように、適宜充分に長い時間が選ばれる。