本発明が適用されたスロットマシンの実施例について図面を用いて説明すると、本実施例のスロットマシン1は、図1に示すように、前面が開口する筐体1aと、この筐体1aの側端に回動自在に枢支された前面扉1bと、から構成されている。
本実施例のスロットマシン1の筐体1aの内部には、図2に示すように、外周に複数種の図柄が配列されたリール2L、2C、2R(以下、左リール、中リール、右リール)が水平方向に並設されており、図1に示すように、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が前面扉1bに設けられた透視窓3から見えるように配置されている。
リール2L、2C、2Rの外周部には、図3に示すように、それぞれ「赤7」、「青7」、「白7」、「BAR」、「スイカ」、「チェリーa」、「チェリーb」、「ベル」、「リプレイa」、「リプレイb」、「プラム」といった互いに識別可能な複数種類の図柄が所定の順序で、それぞれ21個ずつ描かれている。リール2L、2C、2Rの外周部に描かれた図柄は、前面扉1bの略中央に設けられた透視窓3において各々上中下三段に表示される。
各リール2L、2C、2Rは、各々対応して設けられたリールモータ32L、32C、32R(図4参照)によって回転されることで、各リール2L、2C、2Rの図柄が透視窓3に連続的に変化しつつ表示される一方で、各リール2L、2C、2Rの回転が停止されることで、透視窓3に3つの連続する図柄が表示結果として導出表示されるようになっている。
リール2L、2C、2Rの内側には、リール2L、2C、2Rそれぞれに対して、基準位置を検出するリールセンサ33L、33C、33Rと、リール2L、2C、2Rを背面から照射するリールLED55と、が設けられている。また、リールLED55は、リール2L、2C、2Rの連続する3つの図柄に対応する12のLEDからなり、各図柄をそれぞれ独立して照射可能とされている。
前面扉1bの各リール2L、2C、2Rの手前側(遊技者側)の位置には、液晶表示器51(図1参照)の表示領域51aが配置されている。液晶表示器51は、液晶素子に対して電圧が印加されていない状態で透過性を有する液晶パネルを有しており、表示領域51aの透視窓3に対応する透過領域51b及び透視窓3を介して遊技者側から各リール2L、2C、2Rが視認できるようになっている。
前面扉1bには、図1に示すように、メダルを投入可能なメダル投入部4、メダルが払い出されるメダル払出口9、クレジット(遊技者所有の遊技用価値として記憶されているメダル数)を用いて、その範囲内において遊技状態に応じて定められた規定数の賭数のうち最大の賭数(本実施例では後述するRT0〜4の規定数として3、RBの規定数として2が定められている)を設定する際に操作されるMAXBETスイッチ6、クレジットとして記憶されているメダル及び賭数の設定に用いたメダルを精算する(クレジット及び賭数の設定に用いた分のメダルを返却させる)際に操作される精算スイッチ10、ゲームを開始する際に操作されるスタートスイッチ7、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8R、演出に用いられる演出用スイッチ56が遊技者により操作可能にそれぞれ設けられている。
尚、本実施例では、回転を開始した3つのリール2L、2C、2Rのうち、最初に停止するリールを第1停止リールと称し、また、その停止を第1停止と称する。同様に、2番目に停止するリールを第2停止リールと称し、また、その停止を第2停止と称し、3番目に停止するリールを第3停止リールと称し、また、その停止を第3停止あるいは最終停止と称する。
また、前面扉1bには、図1に示すように、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器11、入賞の発生により払い出されたメダル枚数やエラー発生時にその内容を示すエラーコード、後述のナビ報知によるリールの停止順を識別可能な情報等が表示される遊技補助表示器12、賭数が1設定されている旨を点灯により報知する1BETLED14、賭数が2設定されている旨を点灯により報知する2BETLED15、賭数が3設定されている旨を点灯により報知する3BETLED16、メダルの投入が可能な状態を点灯により報知する投入要求LED17、スタートスイッチ7の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効LED18、ウェイト(前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態)中である旨を点灯により報知するウェイト中LED19、リプレイゲーム中である旨を点灯により報知するリプレイ中LED20が設けられた遊技用表示部13が設けられている。
MAXBETスイッチ6の内部には、MAXBETスイッチ6の操作による賭数の設定操作が有効である旨を点灯により報知するBETスイッチ有効LED21(図4参照)が設けられており、ストップスイッチ8L、8C、8Rの内部には、該当するストップスイッチ8L、8C、8Rによるリールの停止操作が有効である旨を点灯により報知する左、中、右停止有効LED22L、22C、22R(図4参照)がそれぞれ設けられており、演出用スイッチ56の内部には、演出用スイッチ56の操作が有効である旨を点灯により報知する演出用LED56a(図4参照)が設けられている。
前面扉1bの内側には、図2に示すように、所定のキー操作により後述するエラー状態及び後述する打止状態を解除するためのリセット操作を検出するリセットスイッチ23、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器24、所定の契機に打止状態(リセット操作がなされるまでゲームの進行が規制される状態)に制御する打止機能の有効/無効を選択するための打止スイッチ36a、所定の契機に自動精算処理(クレジットとして記憶されているメダルを遊技者の操作によらず精算(返却)する処理)に制御する自動精算機能の有効/無効を選択するための自動精算スイッチ36b、メダル投入部4から投入されたメダルの流路を、筐体1aの内部に設けられた後述のホッパータンク34a(図2参照)側またはメダル払出口9側のいずれか一方に選択的に切り替えるための流路切替ソレノイド30、メダル投入部4から投入され、ホッパータンク34a側に流下したメダルを検出する投入メダルセンサ31、投入メダルセンサ31の上流側で異物の挿入を検出する投入口センサ26を有するメダルセレクタ29、前面扉1bの開放状態を検出するドア開放検出スイッチ25(図4参照)が設けられている。
筐体1aの内部には、図2に示すように、前述したリール2L、2C、2R、リールモータ32L、32C、32R(図4参照)、各リール2L、2C、2Rのリール基準位置をそれぞれ検出可能なリールセンサ33L、33C、33R(図4参照)からなるリールユニット2、外部出力信号を出力するための外部出力基板1000(図4参照)、メダル投入部4から投入されたメダルを貯留するホッパータンク34a、ホッパータンク34aに貯留されたメダルをメダル払出口9より払い出すためのホッパーモータ34b(図4参照)、ホッパーモータ34bの駆動により払い出されたメダルを検出する払出センサ34c(図4参照)からなるホッパーユニット34、電源ボックス100が設けられている。
ホッパーユニット34の側部には、ホッパータンク34aから溢れたメダルが貯留されるオーバーフロータンク35が設けられている。オーバーフロータンク35の内部には、貯留されたメダルが満タン状態となったことを検出する満タンセンサ35a(図4参照)が設けられている。
電源ボックス100の前面には、図2に示すように、設定変更状態または設定確認状態に切り替えるための設定キースイッチ37、通常時においてはエラー状態や打止状態を解除するためのリセットスイッチとして機能し、設定変更状態においては後述する内部抽選の当選確率(出玉率)の設定値を変更するための設定スイッチとして機能するリセット/設定スイッチ38、電源をon/offする際に操作される電源スイッチ39が設けられている。
尚、電源ボックス100は、筐体1aの内部に設けられており、さらに前面扉1bは、店員等が所持する所定のキー操作により開放可能な構成であるため、これら電源ボックス100の前面に設けられた設定キースイッチ37、リセット/設定スイッチ38、電源スイッチ39は、キーを所持する店員等の者のみが操作可能とされ、遊技者による操作ができないようになっている。また、所定のキー操作により検出されるリセットスイッチ23も同様である。特に、設定キースイッチ37は、キー操作により前面扉1bを開放したうえで、さらにキー操作を要することから、遊技場の店員のなかでも、設定キースイッチ37の操作を行うキーを所持する店員のみ操作が可能とされている。
本実施例のスロットマシン1においてゲームを行う場合には、まず、メダルをメダル投入部4から投入するか、あるいはクレジットを使用して賭数を設定する。クレジットを使用するにはMAXBETスイッチ6を操作すれば良い。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインLN(図1参照)が有効となり、スタートスイッチ7の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。本実施例では、後述するRT0〜4における規定数の賭数として3枚が定められ、後述するRBにおける規定数の賭数として2枚が定められており、これら遊技状態に応じた規定数の賭数が設定されると入賞ラインLNが有効となる。尚、遊技状態に対応する規定数のうち最大数を超えてメダルが投入された場合には、その分はクレジットに加算される。
入賞ラインとは、各リール2L、2C、2Rの透視窓3に表示された図柄の組合せが入賞図柄の組合せであるかを判定するために設定されるラインである。本実施例では、図1に示すように、リール2Lの中段、リール2Cの中段、リール2Rの中段、すなわち中段に水平方向に並んだ図柄に跨って設定された入賞ラインLNのみが入賞ラインとして定められている。尚、本実施例では、1本の入賞ラインのみを適用しているが、複数の入賞ラインを適用しても良い。
また、本実施例では、入賞ラインLNに入賞を構成する図柄の組合せが揃ったことを認識しやすくするために、入賞ラインLNとは別に、無効ラインLM1〜4を設定している。無効ラインLM1〜4は、これら無効ラインLM1〜4に揃った図柄の組合せによって入賞が判定されるものではなく、入賞ラインLNに特定の入賞を構成する図柄の組合せが揃った際に、無効ラインLM1〜4のいずれかに入賞ラインLNに揃った場合に入賞となる図柄の組合せ(例えば、ベル‐ベル‐ベル)が揃う構成とすることで、入賞ラインLNに特定の入賞を構成する図柄の組合せが揃ったことを認識しやすくするものである。
本実施例では、図1に示すように、リール2Lの上段、リール2Cの上段、リール2Rの上段、すなわち上段に水平方向に並んだ図柄に跨って設定された無効ラインLM1、リール2Lの下段、リール2Cの下段、リール2Rの下段、すなわち下段に水平方向に並んだ図柄に跨って設定された無効ラインLM2、リール2Lの上段、リール2Cの中段、リール2Rの下段、すなわち右下がりに並んだ図柄に跨って設定された無効ラインLM3、リール2Lの下段、リール2Cの中段、リール2Rの上段、すなわち右上がりに並んだ図柄に跨って設定された無効ラインLM4の4種類が無効ラインLMとして定められている。
また、本実施例では、入賞役として、入賞ラインLNに役として定められた所定の図柄の組合せ(例えば、「ベル‐スイカ‐チェリーb」)が揃ったときに入賞するとともに、かつ所定の図柄組合せが揃うことにより無効ラインLM1〜LM4のいずれかに所定の図柄組合せよりも認識しやすい指標となる図柄の組合せ(例えば、「スイカ‐スイカ‐スイカ」)が揃うことにより、無効ラインLM1〜LM4のいずれかに揃った図柄の組合せによって入賞したように見せることが可能な役を含む。以下では、所定の図柄の組合せが入賞ラインLNに揃ったときに無効ラインLM1〜LM4のいずれかに揃う図柄の組合せを、指標となる図柄の組合せと呼び、指標となる図柄の組合せを構成する図柄を指標図柄と呼ぶ。
ゲームが開始可能な状態でスタートスイッチ7を操作すると、各リール2L、2C、2Rが回転し、各リール2L、2C、2Rの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8L、8C、8Rを操作すると、対応するリール2L、2C、2Rの回転が停止し、透視窓3に表示結果が導出表示される。
そして全てのリール2L、2C、2Rが停止されることで1ゲームが終了し、入賞ラインLN上に予め定められた図柄の組合せ(以下、役ともいう)が各リール2L、2C、2Rの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた枚数のメダルが遊技者に対して付与され、クレジットに加算される。また、クレジットが上限数(本実施例では50)に達した場合には、メダルが直接メダル払出口9(図1参照)から払い出されるようになっている。また、入賞ラインLN上に、遊技状態の移行を伴う図柄の組合せが各リール2L、2C、2Rの表示結果として停止した場合には図柄の組合せに応じた遊技状態に移行するようになっている。
尚、本実施例では、スタートスイッチ7の操作が有効な状態でスタートスイッチ7の操作が検出されたときにゲームが開始し、全てのリールが停止したときにゲームが終了する。また、ゲームを実行するための1単位の制御(ゲーム制御)は、前回のゲームの終了に伴う全ての制御が完了したときに開始し、当該ゲームの終了に伴う全ての制御が完了したときに終了する。
また、本実施例では、3つのリールを用いた構成を例示しているが、リールを1つのみ用いた構成、2つのリールを用いた構成、4つ以上のリールを用いた構成としても良く、2以上のリールを用いた構成においては、2以上の全てのリールに導出された表示結果の組合せに基づいて入賞を判定する構成とすれば良い。また、本実施例では、物理的なリールにて可変表示装置が構成されているが、液晶表示器などの画像表示装置にて可変表示装置が構成されていても良い。
また、本実施例におけるスロットマシン1にあっては、ゲームが開始されて各リール2L、2C、2Rが回転して図柄の変動が開始した後、いずれかのストップスイッチ8L、8C、8Rが操作されたときに、当該ストップスイッチ8L、8C、8Rに対応するリールの回転が停止して図柄が停止表示される。ストップスイッチ8L、8C、8Rの操作から対応するリール2L、2C、2Rの回転を停止するまでの最大停止遅延時間は190ms(ミリ秒)である。
リール2L、2C、2Rは、1分間に80回転し、80×21(1リール当たりの図柄コマ数)=1680コマ分の図柄を変動させるので、190msの間では最大で4コマの図柄を引き込むことができることとなる。つまり、停止図柄として選択可能なのは、ストップスイッチ8L、8C、8Rが操作されたときに表示されている図柄と、そこから4コマ先までにある図柄、合計5コマ分の図柄である。
このため、例えば、ストップスイッチ8L、8C、8Rのいずれかが操作されたときに当該ストップスイッチに対応するリールの下段に表示されている図柄を基準とした場合、当該図柄から4コマ先までの図柄を下段に表示させることができるため、リール2L、2C、2R各々において、ストップスイッチ8L、8Rのうちいずれかが操作されたときに当該ストップスイッチに対応するリールの中段に表示されている図柄を含めて5コマ以内に配置されている図柄を入賞ライン上に表示させることができる。
以下では、特に区別する必要がない場合にはリール2L、2C、2Rを単にリールという場合がある。また、リール2Lを左リール、リール2Cを中リール、リール2Rを右リールという場合がある。また、ストップスイッチ8L、8C、8Rの操作によりリール2L、2C、2Rを停止させる操作を停止操作という場合がある。
図4は、スロットマシン1の構成を示すブロック図である。スロットマシン1には、図4に示すように、遊技制御基板40、演出制御基板90、電源基板101が設けられており、遊技制御基板40によって遊技状態が制御され、演出制御基板90によって遊技状態に応じた演出が制御され、電源基板101によってスロットマシン1を構成する電気部品の駆動電源が生成され、各部に供給される。
電源基板101には、外部からAC100Vの電源が供給されるとともに、このAC100Vの電源からスロットマシン1を構成する電気部品の駆動に必要な直流電圧が生成され、遊技制御基板40及び演出制御基板90に供給されるようになっている。また、電源基板101には、前述したホッパーモータ34b、払出センサ34c、満タンセンサ35a、設定キースイッチ37、リセット/設定スイッチ38、電源スイッチ39が接続されている。
遊技制御基板40には、前述したMAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R、精算スイッチ10、リセットスイッチ23、打止スイッチ36a、自動精算スイッチ36b、投入メダルセンサ31、ドア開放検出スイッチ25、リールセンサ33L、33C、33Rが接続されているとともに、電源基板101を介して前述した払出センサ34c、満タンセンサ35a、設定キースイッチ37、リセット/設定スイッチ38が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。また、遊技制御基板40には、前述したクレジット表示器11、遊技補助表示器12、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED20、BETスイッチ有効LED21、左、中、右停止有効LED22L、22C、22R、設定値表示器24、流路切替ソレノイド30、リールモータ32L、32C、32Rが接続されているとともに、電源基板101を介して前述したホッパーモータ34bが接続されており、これら電気部品は、遊技制御基板40に搭載された後述のメイン制御部41の制御に基づいて駆動されるようになっている。
遊技制御基板40には、遊技の進行に関する処理を行うととともに遊技制御基板40に搭載された制御回路の各部を直接的または間接的に制御するメイン制御部41と、所定周波数の発振信号となる制御用クロックCCLKを生成する制御用クロック生成回路42と、制御用クロックCCLKの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックRCLKを生成する乱数用クロック生成回路43と、遊技制御基板40に直接または電源基板101を介して接続されたスイッチ類から入力された検出信号を取り込んでメイン制御部41に伝送するスイッチ検出回路44と、メイン制御部41から出力されたモータ駆動信号(ステッピングモータの位相信号)をリールモータ32L、32C、32Rに伝送するモータ駆動回路45と、メイン制御部41から出力されたソレノイド駆動信号を流路切替ソレノイド30に伝送するソレノイド駆動回路46と、メイン制御部41から出力されたLED駆動信号を遊技制御基板40に接続された各種表示器やLEDに伝送するLED駆動回路47と、スロットマシン1に供給される電源の電圧を監視して電圧の低下を検出したときに、その旨を示す電圧低下信号をメイン制御部41に対して出力する電断検出回路48と、電源投入時または電源遮断時等の電力供給が不安定な状態においてメイン制御部41にシステムリセット信号を与えるリセット回路49と、が搭載されている。
図5は、遊技制御基板40に搭載されたメイン制御部41の構成例を示している。メイン制御部41は、1チップマイクロコンピュータであり、外部バスインターフェイス501と、クロック回路502と、照合用ブロック503と、固有情報記憶回路504と、演算回路505と、リセット/割込コントローラ506と、CPU(Central Processing Unit)41aと、ROM(Read Only Memory)41bと、RAM(Random Access Memory)41cと、フリーランカウンタ回路507と、乱数回路508a、508bと、タイマ回路509と、割込コントローラ510と、パラレル入力ポート511と、シリアル通信回路512と、パラレル出力ポート513と、アドレスデコード回路514と、を備えて構成される。
リセット/割込コントローラ506は、メイン制御部41の内部や外部にて発生する各種リセット、割込要求を制御するためのものである。リセット/割込コントローラ506は、指定エリア外走行禁止(IAT)回路506aとウォッチドッグタイマ(WDT)506bとを備える。IAT回路506aは、ユーザプログラムが指定エリア内で正しく実行されているか否かを監視する回路であり、指定エリア外でユーザプログラムが実行されたことを検出するとIAT発生信号を出力する機能を備える。また、ウォッチドッグタイマ506bは、設定期間毎にタイムアウト信号を発生させる機能を備える。
外部バスインターフェイス501は、メイン制御部41を構成するチップの外部バスと内部バスとのインターフェイス機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインターフェイスである。クロック回路502は、制御用クロックCCLKを2分周することなどにより、内部システムクロックSCLKを生成する回路である。照合用ブロック503は、外部の照合機と接続し、チップの照合を行う機能を備える。固有情報記憶回路504は、メイン制御部41の内部情報となる複数種類の固有情報を記憶する回路である。演算回路505は、乗算及び除算を行う回路である。
CPU41aは、ROM41bから読み出した制御コードに基づいてユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を実行することにより、スロットマシン1における遊技制御を実行する制御用CPUである。こうした遊技制御が実行されるときには、CPU41aがROM41bから固定データを読み出す固定データ読出動作や、CPU41aがRAM41cに各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPU41aがRAM41cに一時記憶されている各種の変動データを読み出す変動データ読出動作、CPU41aが外部バスインターフェイス501やパラレル入力ポート511、シリアル通信回路512などを介してメイン制御部41の外部から各種信号の入力を受け付ける受信動作、CPU41aが外部バスインターフェイス501やシリアル通信回路512、パラレル出力ポート513などを介してメイン制御部41の外部へと各種信号を出力する送信動作等も行われる。
ROM41bには、ユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードや固定データ等が記憶されている。RAM41cは、ゲーム制御用のワークエリア等を提供する。ここで、RAM41cの少なくとも一部は、バックアップ電源によってバックアップされているバックアップRAMであれば良い。すなわち、スロットマシン1への電力供給が停止しても、所定期間はRAM41cの少なくとも一部の内容が保存される。
フリーランカウンタ回路507として、8ビットのフリーランカウンタを搭載している。乱数回路508a、508bは、8ビット乱数や16ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。本実施例では、乱数回路508a、508bのうち16ビット乱数回路508bが生成するハードウェア乱数は、後述する内部抽選用の乱数として用いられる。タイマ回路509は、16ビットプログラマブルタイマであり、設定されたタイマ値を制御用クロックCCLKの入力に基づいてダウンカウントし、0000Hに達したときに割込コントローラへの割込要求信号を出力する。本実施例では、タイマ回路509を用いて定期的な割込要求や時間計測を行うことが可能である。
割込コントローラ510は、割込端子からの外部割込要求や、内蔵の周辺回路(例えば、シリアル通信回路512、乱数回路508a、508b、タイマ回路509)からの割込要求を制御する回路である。パラレル入力ポート511は、8ビット幅の入力専用ポートを内蔵する。また、図4に示すメイン制御部41が備えるパラレル出力ポート513は、11ビット幅の出力専用ポートを内蔵する。シリアル通信回路512は、外部に対する入出力において非同期シリアル通信を行う回路である。
アドレスデコード回路514は、メイン制御部41の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、メイン制御部41の内部回路、あるいは、周辺デバイスとなる外部装置を、選択的に有効動作させて、CPU41aからのアクセスが可能となる。
メイン制御部41は、例えば、ROM41bの記憶領域のうちプログラム等が格納されていない領域へのアクセスがあったとき、RAM41cの記憶領域のうちアクセス禁止が設定された領域へのアクセスがあったとき、すなわち正常な動作ではアクセスすることのないメモリ領域へのアクセスがあったときにイリーガルアクセスリセットを発生させることで、遊技の進行を不能化させるようになっており、ROM41bの未使用領域や動作とは関係しない領域、RAM41cの未使用領域等に不正なプログラムが格納された場合であっても、不正なプログラムが実行されてしまうことを防止できる。
また、メイン制御部41は、内部または外部によるリセットが発生することで起動することとなるが、この際、ROM41bに割り当てられ、割込処理の先頭アドレスが設定されるベクタテーブルに設定された値が、未使用を示す値であるか、プログラム等が実際に格納された領域を示す値であるか、を判定し、いずれの値でもない場合には起動しないようになっており、割込の発生等により本来意図していない処理が実行されてしまうことを事前に防止できる。
メイン制御部41は、パラレル出力ポート513を介してサブ制御部91に各種のコマンドを送信する。メイン制御部41からサブ制御部91へ送信されるコマンドは一方向のみで送られ、サブ制御部91からメイン制御部41へ向けてコマンドが送られることはない。また、本実施例では、パラレル出力ポート513を介してサブ制御部91に対してコマンドが送信される構成、すなわちコマンドがパラレル信号にて送信される構成であるが、シリアル通信回路512を介してサブ制御部91に対してコマンドを送信する構成、すなわちコマンドをシリアル信号にて送信する構成としても良い。
また、メイン制御部41は、遊技制御基板40に接続された各種スイッチ類の検出状態がパラレル入力ポート511から入力される。そしてメイン制御部41は、これらパラレル入力ポート511から入力される各種スイッチ類の検出状態に応じて段階的に移行するメイン処理を実行する。また、メイン制御部41は、割込の発生によりメイン処理に割り込んで割込処理を実行できるようになっている。本実施例では、タイマ回路509にてタイムアウトが発生したこと、すなわち一定時間間隔(本実施例では、約0.56ms)毎にタイマ割込処理(メイン)を実行する。また、メイン制御部41は、割込処理の実行中に他の割込を自動的に禁止するように設定されているとともに、複数の割込が同時に発生した場合には、予め定められた順位によって優先して実行する割込が設定されている。尚、割込処理の実行中に他の割込要因が発生し、割込処理が終了してもその割込要因が継続している状態であれば、割込処理が終了した時点で割込禁止が自動的に解除され、その時点で新たな割込が発生することとなる。尚、割込処理の実行中に他の割込を自動的に禁止するように設定され、割込処理が終了した時点で割込禁止が自動的に解除されるのではなく、割込処理の開始時にプログラムによって他の割込を禁止し、割込処理の終了時にプログラムによって割込禁止を解除するようにしても良い。
メイン制御部41は、メイン処理として遊技制御基板40に接続された各種スイッチ類の検出状態が変化するまでは制御状態に応じた処理を繰り返しループし、各種スイッチ類の検出状態の変化に応じて段階的に移行する処理を実行する。また、メイン制御部41は、一定時間間隔(本実施例では、約0.56ms)毎にタイマ割込処理(メイン)を実行する。尚、タイマ割込処理(メイン)の実行間隔は、メイン処理において制御状態に応じて繰り返す処理が一巡する時間とタイマ割込処理(メイン)の実行時間とを合わせた時間よりも長い時間に設定されており、今回と次回のタイマ割込処理(メイン)との間で必ず制御状態に応じて繰り返す処理が最低でも一巡することとなる。
演出制御基板90には、演出用スイッチ56及び待機演出スイッチ57が接続されており、この演出用スイッチ56及び待機演出スイッチ57の検出信号が入力されるようになっている。また、液晶表示器51、演出効果LED52a〜c、スピーカ53、54、リールLED55等の演出装置が接続されており、これら演出装置は、演出制御基板90に搭載された後述のサブ制御部91による制御に基づいて駆動されるようになっている。
尚、本実施例では、演出制御基板90に搭載されたサブ制御部91により、液晶表示器51、演出効果LED52a〜c、スピーカ53、54、リールLED55等の演出装置の出力制御が行われる構成であるが、サブ制御部91とは別に演出装置の出力制御を直接的に行う出力制御部を演出制御基板90または他の基板に搭載し、サブ制御部91がメイン制御部41からのコマンドに基づいて演出装置の出力パターンを決定し、サブ制御部91が決定した出力パターンに基づいて出力制御部が演出装置の出力制御を行う構成としても良く、このような構成では、サブ制御部91及び出力制御部の双方によって演出装置の出力制御が行われることとなる。また、本実施例では、演出装置として液晶表示器51、演出効果LED52a〜c、スピーカ53、54、リールLED55を例示しているが、演出装置は、これらに限られず、例えば、機械的に駆動する表示装置や機械的に駆動する役モノなどを演出装置として適用しても良い。
また、演出制御基板90には、サブ制御部91が液晶表示器51を用いて演出を実行する際に当該液晶表示器51に表示させる演出用の画像データ等が記憶されたCGROM99a〜cの搭載されたCGROM基板99が接続されており、CGROM99a〜cに記憶された画像データ等を表示制御回路92が参照可能となっている。また、演出制御基板90には、チェック中LED59が搭載されており、後述するCGROM99a〜cの検査の実行中にサブ制御部91により所定の点灯態様で点灯制御されるようになっている。また、演出制御基板90には、サブ制御部91等に電力を供給する電源と接続された電源LED60が搭載されており、演出制御基板90に電源が供給されているときに当該電源LED60が点灯するようになっている。
演出制御基板90は、サブCPU91a、ROM91b、RAM91c、I/Oポート91dを備えたマイクロコンピュータにより構成されて演出の制御を行うサブ制御部91と、演出制御基板90に接続された液晶表示器51の表示制御を行う表示制御回路92と、演出効果LED52a〜cと、リールLED55の駆動制御を行うLED駆動回路93a〜eと、スピーカ53、54からの音声出力制御を行う音声出力回路94と、電源投入時またはサブCPU91aからの初期化命令が一定時間入力されないときにサブCPU91aにリセット信号を与えるリセット回路95と、演出制御基板90に接続されたスイッチ類から入力された検出信号を検出するスイッチ検出回路96と、日付情報及び時刻情報を含む時間情報を出力する時計装置97と、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をサブCPU91aに対して出力する電断検出回路98と、その他の回路等、が搭載されている。
演出効果LED52a〜cは、前面扉1bに配置され、その発光を遊技者側から視認可能な複数のLED(図示略)で構成されており、演出効果LED52aは、主に前面扉1bにおいて液晶表示器51の上方部分に配置されたLED群であり、演出効果LED52bは、主に前面扉1bにおいて液晶表示器51の左右方部分に配置されたLED群であり、演出効果LED52cは、主に前面扉1bにおいてスロットマシン1のタイトルや配当表などが印刷されるパネル200部分に配置されるLED群である。
サブCPU91aは、遊技制御基板40から送信されるコマンドを受けて、ROM91bに記憶されている演出制御用のプログラム等に従って演出を行うための各種の制御を行うとともに、演出制御基板90に搭載された制御回路の各部を直接的または間接的に制御する。
リセット回路95は、遊技制御基板40においてメイン制御部41にシステムリセット信号を与えるリセット回路49よりもリセット信号を解除する電圧が低く定められており、電源投入時においてサブ制御部91は、メイン制御部41よりも早い段階で起動するようになっている。一方で、電断検出回路98は、遊技制御基板40においてメイン制御部41に電圧低下信号を出力する電断検出回路48よりも電圧低下信号を出力する電圧が低く定められており、電断時においてサブ制御部91は、メイン制御部41よりも遅い段階で停電を検知し、後述する電断処理(サブ)を行うこととなる。
また、待機演出スイッチ57は、前面扉1bの内側に配置されており、メイン制御部41側において待機状態に制御されているときにサブ制御部91が実行する待機演出を通常のデモ演出とするか、当該デモ演出よりも消費電力を抑えた省電力モードとするかを選択可能なスイッチであり、店員等により当該スイッチが操作されることでデモ演出または省電力モードのいずれか一方に対応する信号が演出制御基板90に入力されるようになっている。
サブ制御部91は、メイン制御部41と同様に、割込機能を備えており、メイン制御部41からのコマンド受信時に割込を発生させて、メイン制御部41から送信されたコマンドを取得し、バッファに格納するコマンド受信割込処理を実行する。また、サブ制御部91は、システムクロックの入力数が一定数に到達する毎、すなわち一定時間間隔(約2ms)毎に割込を発生させて後述するタイマ割込処理(サブ)を実行する。また、サブ制御部91は、メイン制御部41とは異なり、コマンドの受信に基づいて割込が発生した場合には、タイマ割込処理(サブ)の実行中であっても、当該処理に割り込んでコマンド受信割込処理を実行し、タイマ割込処理(サブ)の契機となる割込が同時に発生してもコマンド受信割込処理を最優先で実行するようになっている。
演出制御基板90には、サブ制御部91により読込み及び書込みが可能であり、RAM91cのデータをバックアップ可能なバックアップRAM61と、当該バックアップRAM61に対して電力を供給可能なバックアップ電池62、が搭載されている。バックアップRAM61は、スロットマシン1に電力が供給されている状態では、電源基板101より電力が供給されることで、記憶領域内のデータの保持、サブ制御部91によるデータの読込み及び書込みが可能である一方、電源基板101より供給される電圧が低下したとき及びスロットマシン1に電力が供給されていない状態では、バックアップ電池62より電力が供給されることで、記憶領域内のデータの保持、サブ制御部91によるデータの読込み及び書込みが可能である。バックアップRAM61は、演出制御基板90上に搭載されたバックアップ電池62により電源がバックアップされるようになっているので、バックアップ電池62により電力が供給され続ける限り、バックアップRAM61の記憶領域内のデータを保持することが可能となっている。また、バックアップRAM61及びバックアップ電池62は、ともに演出制御基板90上に搭載されているので、演出制御基板90をスロットマシン1から取り外した状態でも、バックアップ電池62により電力が供給され続ける限り、バックアップRAM61の記憶領域内のデータを保持することが可能となっている。
また、演出制御基板90には、バックアップ電池62を脱着自在に係止して保持可能な電池ホルダ(図示略)が設けられており、当該電池ホルダにバックアップ電池62が保持されている。また、演出制御基板90は、それぞれ基板ケース(図示略)に収容された状態でスロットマシン1の内部に設置さており、演出制御基板90が不正に接触されることがないようになっている。また、基板ケースには、演出制御基板90を当該基板ケース(図示略)内に収容した状態で、演出制御基板90に配置さられた電池ホルダ(図示略)の位置と対応する位置に、電池ホルダに向けて突出する突出部(図示略)が設けられている。当該突出部は、演出制御基板90が基板ケース内に収容された状態で、当該突出部の先端部と、電池ホルダに保持されているバックアップ電池62の上面と、が接触するように形成されており、突出部の先端部がバックアップ電池62に接触することで、バックアップ電池62が移動することが規制され、スロットマシン1に加えられた振動の影響等によりバックアップ電池62が電池ホルダから脱離することが防止されるようになっている。
本実施例のスロットマシン1は、設定値に応じてメダルの払出率が変わるものである。詳しくは、後述する内部抽選、ナビストック抽選、上乗せ抽選等の遊技者に対する有利度に影響する抽選において設定値に応じた当選確率を用いることにより、メダルの払出率が変わるようになっている。設定値は1〜6の6段階からなり、6が最も払出率が高く、5、4、3、2、1の順に値が小さくなるほど払出率が低くなる。すなわち設定値として6が設定されている場合には、遊技者にとって最も有利度が高く、5、4、3、2、1の順に値が小さくなるほど有利度が段階的に低くなる。
設定値を変更するためには、設定キースイッチ37をon状態としてからスロットマシン1の電源をonする必要がある。設定キースイッチ37をon状態として電源をonすると、設定値表示器24にRAM41cから読み出された設定値が表示値として表示され、リセット/設定スイッチ38の操作による設定値の変更が可能な設定変更状態に移行する。設定変更状態において、リセット/設定スイッチ38が操作されると、設定値表示器24に表示された表示値が1ずつ更新されていく(設定値6からさらに操作されたときは、設定値1に戻る)。そして、スタートスイッチ7が操作されると表示値を設定値として確定する。そして、設定キースイッチ37がoffされると、確定した表示値(設定値)がメイン制御部41のRAM41cに格納され、遊技の進行が可能な状態に移行する。
尚、設定キースイッチ37がon状態で電源投入された場合に、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされていることを条件に、設定変更状態に移行する構成としても良く、このような構成とすることで、前面扉1bが開放されていない状態で不正に設定変更がされてしまうことを防止できる。また、前面扉1bの開放に対応する検出がされていることを条件に、設定変更状態に移行する構成においては、設定変更状態に移行後、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされなくなっても、設定変更状態を維持することが好ましく、これにより、設定変更中に前面扉1bが一時的に閉じてしまっても、再度、設定変更状態に移行させるための操作を必要とせず、設定変更操作が煩雑となってしまうことがない。また、設定変更状態に移行後、スタートスイッチ7が操作されて設定値が確定した後、設定キースイッチ37がoffとなったときに、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされていることを条件に、設定変更状態を終了して遊技の進行が可能な状態に移行する構成としても良く、このような構成においても、前面扉1bが開放されていない状態で不正に設定変更がされてしまうことを防止できる。
また、設定値を確認するためには、ゲーム終了後、賭数が設定されていない状態で設定キースイッチ37をon状態とすれば良い。このような状況で設定キースイッチ37をon状態とすると、設定値表示器24にRAM41cから読み出された設定値が表示されることで設定値を確認可能な設定確認状態に移行する。設定確認状態においては、ゲームの進行が不能であり、設定キースイッチ37をoff状態とすることで、設定確認状態が終了し、ゲームの進行が可能な状態に復帰することとなる。
尚、ゲーム終了後、賭数が設定されていない状態で設定キースイッチ37がon状態となったときに、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされていることを条件に、設定確認状態に移行する構成としても良く、このような構成とすることで、前面扉1bが開放されていない状態で不正に設定値が確認されてしまうことを防止できる。また、前面扉1bの開放に対応する検出がされていることを条件に、設定確認状態に移行する構成においては、設定確認状態に移行後、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされなくなっても、設定確認状態を維持することが好ましく、これにより、設定確認中に前面扉1bが一時的に閉じてしまっても、再度、設定確認状態に移行させるための操作を必要とせず、設定確認操作が煩雑となってしまうことがない。また、設定確認状態に移行後、スタートスイッチ7が操作されて設定値が確定した後、設定キースイッチ37がoffとなったときに、ドア開放検出スイッチ25により前面扉1bの開放に対応する検出がされていることを条件に、設定確認状態を終了して遊技の進行が可能な状態に復帰する構成としても良く、このような構成においても、前面扉1bが開放されていない状態で不正に設定値が確認されてしまうことを防止できる。
本実施例のスロットマシン1においては、メイン制御部41は、タイマ割込処理(メイン)を実行する毎に、電断検出回路48からの電圧低下信号が検出されているか否かを判定する停電判定処理を行い、停電判定処理において電圧低下信号が検出されていると判定した場合に、次回復帰時にRAM41cのデータが正常か否かを判定するためのデータを設定する電断処理(メイン)を実行する。
そして、メイン制御部41は、その起動時においてRAM41cのデータが正常であることを条件に、RAM41cに記憶されているデータに基づいてメイン制御部41の処理状態を電断前の状態に復帰させるが、RAM41cのデータが正常でない場合には、RAM異常と判定し、RAM異常エラーコードをレジスタにセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。
エラー状態は、リセット操作(リセット/設定スイッチ38またはリセットスイッチ23の操作)により解除される通常エラー状態と、前述した設定変更状態に移行し、新たな設定値が設定されるまで解除されることがない特殊エラー状態と、を含み、RAM異常エラー状態は、特殊エラー状態であり、一度RAM異常エラー状態に制御されると、設定変更状態に移行し、新たな設定値が設定されるまで解除されることがない。
また、サブ制御部91もタイマ割込処理(サブ)において電断検出回路98からの電圧低下信号が検出されているか否かを判定し、電圧低下信号が検出されていると判定した場合に、電断処理(サブ)を実行する。電断処理(サブ)では、後述するエラー履歴記録処理を実行して、スロットマシン1への電力供給が停止される旨すなわち電源がオフにされた旨をRAM91cの診断用データ内のエラー履歴データに加えた後、RAM91cに記憶されているデータのうち後述の制御状態データ及び診断用データをバックアップデータとしてバックアップRAM61に複製するとともに、次回復帰時にRAM91cのデータが正常か否かの判定(破壊判定)を行う際に使用する破壊判定データ(RAM91cの制御状態データのチェックサムの演算値)をバックアップデータとしてバックアップRAM61に設定する。
そして、サブ制御部91は、その起動時において後述する起動処理(サブ)を実行して、バックアップRAM61に記憶されているバックアップデータのうち制御状態データが正常であることを条件に、バックアップRAM61に記憶されている制御状態データをRAM91cに設定することで、RAM91cのデータを電断前の状態に復帰させ、当該復帰された制御状態データに基づいてサブ制御部91の処理状態を電断前の状態に復帰させるが、バックアップデータのうち制御状態データが正常でない場合には、バックアップRAM61の異常と判定し、バックアップデータの制御状態データをRAM91cに復帰させないようになっている。
また、バックアップデータの制御状態データをRAM91cに復帰させない場合は、RAM91cが初期化された状態のままとなるのみで演出の実行が不能化されることはない。また、バックアップデータの制御状態データをRAM91cに復帰させる場合でも、メイン制御部41から設定変更状態に移行した旨を示す後述の設定コマンドを受信した場合には、RAM91cを初期化するようになっている。この場合も、RAM91cが初期化されるのみで演出の実行が不能化されることはない。
次に、メイン制御部41のRAM41cの初期化について説明する。RAM41cの格納領域のうちの使用可能領域は、遊技RAM領域、未使用領域4、非遊技RAM領域に区分されている(図7(b)参照)。さらに遊技RAM領域は、特別ワーク、重要ワーク、一般ワーク、未使用領域3、遊技スタック領域に区分されている。特別ワークは、設定値が変更されても初期化されないデータが格納されるワークであり、ソフトウェア乱数、設定値、遊技状態を示すデータ等が格納される。重要ワークは、特定の遊技状態(RB、BB)の終了時に初期化すると不都合のあるデータが格納されるワークであり、LEDの表示用データ、入力ポート、出力ポートの入出力データ、遊技時間の計時カウンタ等が格納される。一般ワークは、特定の遊技状態の終了時に初期化可能なデータが格納されるワークであり、停止図柄、メダルの払出枚数等が格納される。未使用領域3は、いずれのプログラムでも使用されないワークである。遊技スタック領域は、後述する遊技プログラムの実行中にメイン制御部41のレジスタから退避したデータが格納される領域である。
本実施例においてメイン制御部41は、設定キースイッチ37がONの状態での起動時でRAM41cのデータが破壊されているとき、設定キースイッチ37がONの状態での起動時でRAM41cのデータが破壊されていないとき、設定変更状態が終了されたとき、特定の遊技状態(RB、BB)の終了時、1ゲームの終了時、の5つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる5種類の初期化を行う。
初期化0は、設定キースイッチ37がONの状態での起動時でRAM41cのデータが破壊されているときに行う初期化であり、初期化0では、使用可能領域全ての領域が初期化される。初期化1は、設定キースイッチ37がONの状態での起動時でRAM41cのデータが破壊されていないときに行う初期化であり、初期化1では、遊技RAM領域の特別ワーク以外の領域、非遊技RAM領域の全ての領域が初期化される。初期化2は、設定キースイッチ37がONの状態での起動で設定変更状態が終了された後に行う初期化であり、初期化2では、遊技RAM領域のうち特別ワーク及び遊技スタック領域(使用中)以外の領域が初期化される。初期化3は、特定の遊技状態の終了時に行う初期化であり、初期化3では、遊技RAM領域のうち一般ワーク、未使用領域3及び遊技スタック領域(未使用)が初期化される。初期化4は、1ゲーム終了時に行う初期化であり、初期化4では、遊技RAM領域の未使用領域3及び遊技スタック領域(未使用)が初期化される。尚、設定値や遊技状態を示すデータの格納領域は、特別ワークに割り当てられており、設定キースイッチ37がONの状態での起動時でRAM41cのデータが破壊されていないとき、すなわちRAM41cのデータが正常で設定変更される場合には、設定値や遊技状態を示すデータが保持されることとなる。また、後述のタイマカウンタの格納領域は、重要ワークに割り当てられており、ゲームの終了時や特定の遊技状態の終了時には初期化されることなく保持されることとなる。
また、本実施例のメイン制御部41は、上述の初期化実行する際には、初期化対象のRAMアドレスとして開始アドレスと終了アドレスが指定されることで、指定された開始アドレスから1バイト分のデータを0で上書きした後、当該1バイトのデータの論理和を計算し、計算結果が0であれば、次のアドレスに移動する処理を、指定された終了アドレスに達するまで繰り返し行うことで、指定されたアドレスの範囲のRAM領域を初期化する。
本実施例におけるメイン制御部41は、リセットの発生により起動すると、起動時設定を行う。起動時設定では、メイン制御部41が備えるステータスフラグを初期化する。ステータスフラグは、命令の演算結果や実行結果の状態を保持するデータであり、特に割込の禁止/許可を設定する割込マスタ許可フラグを含む。割込マスタ許可フラグの初期値は割込の禁止を示す値であるため、メイン制御部41は、割込が禁止された状態で起動することとなる。その後、後述のHWパラメータを参照して各種機能を設定した後、プログラム/データ領域に格納されたプログラムに従って、リセットが発生したときに、割込禁止の状態で起動するとともに、その後、最初に実行する初期設定処理を開始する。
メイン制御部41は、初期設定処理において、まず、割込を禁止に設定した後、起動時に設定キースイッチ37がONの状態であるか否かを判定し、起動時に設定キースイッチ37がONの状態であると判定された場合に、設定変更処理に移行し、設定変更処理の開始時にRAM41cの初期化を行う。この際、RAM41cのデータが正常であれば、特別ワークを保持してそれ以外の領域を初期化することで、設定変更後も変更前の制御状態(設定値や遊技状態等)の一部を保持することができる一方で、RAM41cのデータが正常でない場合には、特別ワークを含む使用可能領域の全ての領域を初期化することで、RAM41cのデータに異常を確実に解消することができるようになっている。
RAM41cを初期化した後、割込を許可に設定し、リセット/設定スイッチ38が操作れる毎に設定値を1〜6の範囲で1ずつ更新し、スタートスイッチ7のONが検出された後、設定キースイッチ37のONが検出されたときの設定値をRAM41cに格納して、設定変更処理を終了させる。
このように、メイン制御部41は、割込マスタ許可フラグの初期値が割込の禁止を示す値であり、割込が禁止された状態で起動し、起動後の初期設定処理においても、まず、割込を禁止に設定したうえで、その後の初期設定処理を実行するようになっているので、意図しない割込が発生することを防止できる。
また、メイン制御部41は、設定変更処理の終了後、遊技単位毎にゲームの進行に応じて段階的に処理を行うメイン処理を実行する。また、メイン処理では、遊技単位毎にRAM41cの初期化を行うとともに、設定変更処理の終了時にもRAM41cの初期化を行う。そして、設定変更処理の終了後、メイン処理においてRAM41cの初期化を行う処理の前の段階からメイン処理を開始するようになっており、設定変更処理の終了後のRAM41cの初期化と、遊技単位毎のRAM41cの初期化と、を共通の処理にて行うことが可能となる。
本実施例のメイン制御部41は、設定変更処理及びメイン処理において、遊技領域初期化処理を実行することにより、RAM41cの所定領域を初期化する。遊技領域初期化処理では、初期化対象RAMの先頭アドレスと終了アドレスとが指定されることにより、初期化対象RAMの容量を算出し、初期化対象RAMの先頭アドレスから、初期化対象RAMの容量分の領域を順次クリアすることで、遊技RAM領域のうち指定された初期化対象RAMの領域を初期化する。
尚、初期化対象RAMの先頭アドレスと終了アドレスとを指定することで、当該先頭アドレスを指定アドレスの初期値とし、指定アドレスのデータをクリアした後に指定アドレスを次のアドレスに更新する処理を、指定アドレスが当該終了アドレスとなるまで繰り返し実行することで、初期化対象RAMの先頭アドレスから終了アドレスまでの領域が初期化される構成としても良い。
本実施例の非遊技領域初期化処理では、初期化対象RAMの容量分のRAM領域を初期化対象RAMの先頭アドレス(未使用領域4の先頭アドレス)から順次クリアすることで、初期化対象RAMの先頭アドレスから終了アドレスまでの領域、すなわち、未使用領域4及び非遊技RAM領域を初期化する。
尚、初期化対象RAMの先頭アドレスと終了アドレスとを指定することで、当該先頭アドレスを指定アドレスの初期値とし、指定アドレスのデータをクリアした後に指定アドレスを次のアドレスに更新する処理を、指定アドレスが当該終了アドレスとなるまで繰り返し実行することで、初期化対象RAMの先頭アドレスから終了アドレスまでの領域が初期化される構成としても良い。
また、本実施例の非遊技領域初期化処理では、初期化対象RAMの先頭アドレスとして未使用領域4の先頭アドレスを設定することで、未使用領域4と非遊技RAM領域の全ての領域を初期化する構成であるが、非遊技領域初期化処理は、非遊技RAM領域の少なくとも一部の領域が初期化されるものであれば良く、非遊技RAM領域の一部の領域を初期化するものでも、非遊技RAM領域の一部の領域及び未使用領域4を初期化するものでも良い。
また、本実施例では、遊技領域初期化処理及び非遊技領域初期化処理において、指定アドレスに記憶されている1バイトのデータを0で上書きしてクリアし、その後、当該1バイトのデータの論理和を算出して、算出結果が0か否かを判定し、算出結果が0でない場合には、再度、1バイトのデータを0で上書きしてクリアする処理を行うことで、該当するアドレスのデータをクリアする構成であるが、指定アドレスに記憶されている1バイトのデータを0で上書きしてクリアするのみの構成でも良い。
本実施例のスロットマシン1は、遊技状態(RT0〜RT4、RB)に応じて設定可能な賭数の規定数(本実施例では、RT0〜4においては3、RBにおいては2)が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。尚、本実施例では、遊技状態に応じた規定数の賭数が設定された時点で、入賞ラインLNが有効化される。
そして、本実施例では、全てのリール2L、2C、2Rが停止した際に、有効化された入賞ライン(本実施例の場合、常に全ての入賞ラインが有効化されるため、以下では、有効化された入賞ラインを単に入賞ラインという)上に役と呼ばれる図柄の組合せが揃うと入賞となる。役は、同一図柄の組合せであっても良いし、異なる図柄を含む組合せであっても良い。
入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役と、遊技者にとって有利な遊技状態への移行を伴う特別役と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、後述する内部抽選に当選して、当該役の当選フラグがRAM41cに設定されている必要がある。尚、これら各役の当選フラグのうち、小役及び再遊技役の当選フラグは、当該フラグが設定されたゲームにおいてのみ有効とされ、次のゲームでは無効となるが、特別役の当選フラグは、当該フラグにより許容された役の組合せが揃うまで有効とされ、許容された役の組合せが揃ったゲームにおいて無効となる。すなわち特別役の当選フラグが一度当選すると、例え、当該フラグにより許容された役の組合せを揃えることができなかった場合にも、その当選フラグは無効とされずに、次のゲームへ持ち越されることとなる。
次に、本実施例の内部抽選について説明する。内部抽選は、メイン制御部41が、上記した各役への入賞を許容するか否かを、全てのリール2L、2C、2Rの表示結果が導出される以前(具体的には、スタートスイッチ7の検出時)に決定するものである。内部抽選では、まず、スタートスイッチ7の検出時に内部抽選用の乱数値(0〜65535の整数)を取得する。詳しくは、乱数回路508bにより生成され、乱数回路508bの乱数値レジスタに格納されている値をRAM41cに割り当てられた抽選用ワークに設定する。そして、遊技状態(RT0〜4、RB)に応じて定められた各役について、抽選用ワークに格納された数値データと、現在の遊技状態、賭数及び設定値に応じて定められた各役の判定値数に応じて入賞を許容するか否かの判定が行われる。
内部抽選では、内部抽選の対象となる役、現在の遊技状態及び設定値に対応して定められた判定値数を、内部抽選用の乱数値(抽選用ワークに格納された数値データ)に順次加算し、加算の結果がオーバーフローしたときに、当該役に当選したものと判定される。このため、判定値数の大小に応じた確率(判定値数/65536)で役が当選することとなる。
そして、内部抽選の結果を示す当選番号をRAM41cに設定する。当選番号は、内部当選フラグの設定、ナビ報知、コマンド作成、リール2L、2C、2Rの停止制御等に用いられる。
また、いずれかの役の当選が判定された場合には、当選番号に基づいて当選が判定された役に対応する当選フラグをRAM41cに割り当てられた内部当選フラグ格納ワークに設定する。内部当選フラグ格納ワークは、2バイトの格納領域にて構成されており、そのうちの上位バイトが、特別役の当選フラグが設定される特別役格納ワークとして割り当てられ、下位バイトが、一般役の当選フラグが設定される一般役格納ワークとして割り当てられている。詳しくは、特別役が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、一般役が当選した場合には、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。尚、いずれの役及び役の組合せにも当選しなかった場合には、特別役格納ワーク及び一般役格納ワークをクリアする。
次に、リール2L、2C、2Rの停止制御について説明する。メイン制御部41は、リールの回転が開始したとき、及びリールが停止し、かつ未だ回転中のリールが残っているときに、当選番号及びROM41bに格納されているテーブルインデックス、テーブル作成用データを参照して、回転中のリール別に停止制御テーブルを作成する。そして、ストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、該当するリールの停止制御テーブルを参照し、参照した停止制御テーブルの滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。
本実施例では、滑りコマ数として0〜4の値が定められており、停止操作を検出してから最大4図柄を引き込んでリールを停止させることが可能である。すなわち停止操作を検出した停止操作位置を含め、最大5コマの範囲から図柄の停止位置を指定できるようになっている。また、1図柄分リールを移動させるのに1コマの移動が必要であるので、停止操作を検出してから最大4図柄を引き込んでリールを停止させることが可能であり、停止操作を検出した停止操作位置を含め、最大5図柄の範囲から図柄の停止位置を指定できることとなる。
本実施例では、いずれかの役に当選している場合には、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選している役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、最大4コマの引込範囲で揃えずに停止させる制御が行われることとなる。特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合など、特別役と小役が同時に当選している場合には、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選している小役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、入賞ライン上に最大4コマの引込範囲で当選している小役を引き込めない場合には、入賞ライン上に最大4コマの引込範囲で当選している特別役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、4コマの引込範囲で揃えずに停止させる制御が行われることとなる。すなわちこのような場合には、特別役よりも小役を入賞ライン上に揃える制御が優先され、小役を引き込めない場合にのみ、特別役を入賞させることが可能となる。尚、特別役と小役を同時に引き込める場合には、小役のみを引き込み、特別役と同時に小役が入賞ライン上に揃わないようになる。また、特別役と小役が同時に当選している場合に、小役よりも特別役を入賞ライン上に揃える制御が優先され、特別役を引き込めない場合にのみ、小役を入賞ライン上に揃える制御を行っても良い。
また、本実施例では、特別役が前ゲーム以前から持ち越されている状態で再遊技役が当選した場合など、特別役と再遊技役が同時に当選している場合には、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で再遊技役の図柄を揃えて停止させる制御を行う。尚、この場合、再遊技役を構成する図柄または同時当選する再遊技役を構成する図柄は、リール2L、2C、2Rのいずれについても5図柄以内、すなわち4コマ以内の間隔で配置されており、4コマの引込範囲で必ず任意の位置に停止させることができるので、特別役と再遊技役が同時に当選している場合には、遊技者によるストップスイッチ8L、8C、8Rの操作タイミングに関わらずに、必ず再遊技役が揃って入賞することとなる。すなわちこのような場合には、特別役よりも再遊技役を入賞ライン上に揃える制御が優先され、必ず再遊技役が入賞することとなる。尚、特別役と再遊技役を同時に引き込める場合には、再遊技役のみを引き込み、再遊技役と同時に特別役が入賞ライン上に揃わないようになる。
尚、本実施例では、停止操作が行われたタイミング別の滑りコマ数を特定可能な停止制御テーブルを用いてリールの停止制御を行う構成であるが、停止可能な位置を特定可能な停止位置テーブルから停止位置を特定し、特定した停止位置にリールを停止させる停止制御を行う構成、停止制御テーブルや停止位置テーブルを用いずに、停止操作がされたタイミングで停止可能な停止位置を検索・特定し、特定した停止位置にリールを停止させる停止制御を行う構成、停止制御テーブルを用いた停止制御、停止位置テーブルを用いた停止制御、停止制御テーブルや停止位置テーブルを用いずに停止可能な停止位置を検索・特定することによる停止制御を併用する構成、停止制御テーブルや停止位置テーブルを一部変更して停止制御を行う構成としても良い。
本実施例においてメイン制御部41は、ゲームの開始後、リールの回転を開始させる毎にその時点、すなわちリールの回転を開始させた時点から経過した時間であるゲーム時間を計時するようになっており、1ゲームの終了後、メダルの投入等により規定数の賭数が設定され、ゲームの開始操作が有効となった状態でゲームの開始操作がされたときに、前のゲームのリール回転開始時点から計時を開始したゲーム時間が規定時間(本実施例では4.1秒)以上であれば、すなわち前のゲームのリール回転開始時点から規定時間が経過していれば、ウェイトを発生させず、その時点で当該ゲームにおける遊技のためのリールの回転を開始させる。一方、1ゲームの終了後、メダルの投入等により規定数の賭数が設定され、ゲームの開始操作が有効となった状態でゲームの開始操作がされたときに、前のゲームのリール回転開始時点から計時を開始したゲーム時間が規定時間未満であれば、すなわち前のゲームのリール回転開始時点から規定時間が経過していなければ、ウェイトを発生させて、その時点ではリールの回転を開始させず、前のゲームのリール回転開始時点から計時を開始したゲーム時間が規定時間に到達するまで待機し、規定時間に到達した時点でリールの回転を開始させる。
本実施例においてメイン制御部41は、遊技状態やエラーの発生状況などを示す外部出力信号を出力する制御を行う。これら外部出力信号は、外部出力基板1000、スロットマシン1が設置される遊技店(ホール)の情報提供端子板を介してホールコンピュータなどのホール機器に出力されるようになっている。
メイン制御部41は、賭数の設定に用いられたメダル数を示すメダルIN信号、入賞の発生により遊技者に付与されたメダル数を示すメダルOUT信号、遊技状態がRB(レギュラーボーナス)中の旨を示すRB中信号、遊技状態がBB(ビッグボーナス)中の旨を示すBB中信号、後述するARTの開始を示すART信号、前面扉1bが開放中の旨を示すドア開放信号、後述する設定変更モードに移行している旨を示す設定変更信号、メダルセレクタの異常を示す投入エラー信号、ホッパーユニット34の異常を示す払出エラー信号をそれぞれ出力する。
外部出力基板1000には、リレー回路、パラレル・シリアル変換回路、出力信号毎の端子が設けられ、情報提供端子板の回路と電気的に接続するための接続されるコネクタが設けられている。遊技制御基板40から出力された信号のうち、メダルIN信号、メダルOUT信号、RB中信号、BB中信号、ART信号は、リレー回路を介して、そのままパルス信号として情報提供端子板に出力される。これに対してドア開放信号、設定変更信号、投入エラー信号、払出エラー信号は、パラレル・シリアル変換回路にて、これらの信号を個別に識別可能なシリアル信号であるセキュリティ信号に変換されて情報提供端子板に出力される。
次に、メイン制御部41がサブ制御部91に対して送信するコマンドについて説明する。
本実施例では、メイン制御部41は、サブ制御部91に対して、投入枚数コマンド、クレジットコマンド、遊技状態コマンド、ART状態コマンド、内部当選コマンド、押し順コマンド、フリーズコマンド、ART抽選結果コマンド、リール加速情報コマンド、加速完了コマンド、停止操作時コマンド、滑りコマ数コマンド、停止コマンド、遊技終了コマンド、入賞判定コマンド、払出開始コマンド、払出終了コマンド、待機コマンド、打止コマンド、エラーコマンド、復帰コマンド、設定コマンド、設定確認コマンド、ドアコマンド、操作検出コマンドを含む複数種類のコマンドを送信する。これらコマンドは、コマンドの種類を示す1バイトの種類データとコマンドの内容を示す1バイトの拡張データとからなり、サブ制御部91は、種類データからコマンドの種類を判別できるようになっている。
投入枚数コマンドは、メダルの投入枚数、すなわち賭数の設定に使用されたメダル枚数を特定可能なコマンドであり、ゲーム終了後(設定変更後)からゲーム開始までの状態であり、電断復帰時、または規定数の賭数が設定されていない状態においてメダルが投入されるか、MAXBETスイッチ6が操作されて賭数が設定されたときに送信される。また、投入枚数コマンドは、賭数の設定操作がなされたときに送信されるので、投入枚数コマンドを受信することで賭数の設定操作がなされたことを特定可能である。
クレジットコマンドは、クレジットとして記憶されているメダル枚数を特定可能なコマンドであり、ゲーム終了後(設定変更後)からゲーム開始までの状態であり、規定数の賭数が設定されている状態において、メダルが投入されてクレジットが加算されたときに送信される。
遊技状態コマンドは、当該ゲームの遊技状態(RT0〜4、RB)を特定可能なコマンドであり、スタートスイッチ7が操作されてゲームが開始したときに送信される。
ART状態コマンドは、AT中か否か、ART中か否か、後述する規定ゲーム数に到達するまでの残りゲーム数、前兆期間の残りゲーム数、ARTの残りゲーム数を特定可能なコマンドであり、ゲームが開始したときであって、遊技状態コマンドの後に送信される。
内部当選コマンドは、内部抽選結果を特定可能なコマンドであり、スタートスイッチ7が操作されてゲームが開始したときであって、ART状態コマンドの後に送信される。内部当選コマンドは、特別役が当選しているか否かを特定可能な第1の内部当選コマンドと、一般役が当選しているか否かを特定可能な第2の内部当選コマンドと、を含み、第1の内部当選コマンドが送信された後に、第2の内部当選コマンドが送信される。
押し順コマンドは、停止順を特定可能なコマンドであり、スタートスイッチ7が操作されてゲームが開始されたときであって、内部当選コマンドが送信された後、及び各リールの停止操作に伴う停止制御が行われる毎に、停止コマンドが送信された後に送信される。尚、後述のナビ報知が実行されるゲームにおいては、ゲーム開始時から遊技者にとって有利な停止順を特定可能な押し順コマンドが送信され、後述のナビ報知が実行されないゲームにおいては、有利な停止順が確定するまでは遊技者にとって有利な停止順を特定不能な押し順コマンドが送信され、有利な停止順が確定したときから遊技者にとって有利な停止順を特定可能な押し順コマンドが送信される。
遊技状態コマンド、ART状態コマンド、内部当選コマンドは、スタートスイッチ7が操作されてゲームが開始したときに送信されるので、これらコマンドを受信することで、スタートスイッチ7が操作されてゲームが開始したことを特定可能である。
フリーズコマンドは、当該ゲームにおいて遊技の進行を所定期間にわたり遅延させるフリーズ状態に制御されるか否か、フリーズ状態に制御される場合にはその種類を特定可能なコマンドであり、ゲームが開始したときであって、内部当選コマンドの送信後に送信される。
ART抽選結果コマンドは、後述のART抽選または上乗せ抽選に当選したか否か、当選したARTのゲーム数または上乗せされるゲーム数を特定可能なコマンドであり、ゲームが開始したときであって、ART抽選または上乗せ抽選が行われたゲームにおいて内部当選コマンドの送信後に送信される。
リール加速情報コマンドは、遊技の進行に伴いリールの回転が開始する旨を特定可能なコマンドであり、遊技の進行に伴いリールの回転を開始するときに送信する。尚、フリーズ状態の終了に伴ってリールの回転を開始するときにも送信されるため、フリーズコマンドによりフリーズ状態の開始が特定された後、リール加速情報コマンドを受信することで遊技の進行に伴いリールの回転が開始する旨だけではなく、フリーズ状態の終了も特定可能となる。
加速完了コマンドは、遊技の開始に伴うリールの加速が完了した旨を特定可能なコマンドであり、遊技が開始された際にリール2L、2C、2Rの回転が開始させた後、最初に全てのリール2L、2C、2Rが定速回転となったときに送信される。
停止操作時コマンドは、停止するリールが左リール、中リール、右リールのいずれのリールであるか、該当するリールの停止操作位置の領域番号を特定可能なコマンドであり、各リールの停止操作に伴う停止制御が行われる毎に送信される。
滑りコマ数コマンドは、停止するリールが左リール、中リール、右リールのいずれのリールであるか、該当するリールの停止操作がされてから停止するまでに移動する滑りコマ数を特定可能なコマンドであり、各リールの停止操作に伴う停止制御が行われる毎に、対応する停止操作時コマンドが送信された後に送信される。
停止コマンドは、停止するリールが左リール、中リール、右リールのいずれのリールであるか、該当するリールの停止位置の領域番号を特定可能なコマンドであり、各リールの停止操作に伴う停止制御が行われる毎に、対応する滑りコマ数コマンドが送信された後に送信される。
停止操作時コマンド、滑りコマ数コマンド、停止コマンドは、いずれも停止するリールが左リール、中リール、右リールのいずれのリールであるか、を特定可能であり、かつ各リールの停止操作に伴う停止制御が行われる毎に送信されるので、これらコマンドを受信することで、いずれかのリールの停止操作がされたこと及び停止するリールを特定可能である。
遊技終了コマンドは、遊技が終了された旨を特定可能なコマンドであり、遊技者が第3停止リールを停止させるためにストップスイッチを押下して、そのストップスイッチを離したときに送信される。
入賞判定コマンドは、入賞の有無、入賞ラインLNに揃った図柄の組合せ、並びに入賞の種類、入賞時のメダルの払出枚数を特定可能なコマンドであり、遊技者が第3停止リールを停止させるためにストップスイッチを押下して、そのストップスイッチを離したときであり、遊技終了コマンドの送信後に送信される。
遊技終了コマンド、入賞判定コマンドは、いずれも遊技者が第3停止リールを停止させるためにストップスイッチを押下して、そのストップスイッチを離したときに送信されるので、これらコマンドを受信することで、1ゲームを進行させるのに必要な全ての操作が終了したことを特定可能である。
払出開始コマンドは、メダルの払出開始を通知するコマンドであり、入賞やクレジット(賭数の設定に用いられたメダルを含む)の精算によるメダルの払出が開始されたときに送信される。また、払出終了コマンドは、メダルの払出終了を通知するコマンドであり、入賞及びクレジットの精算によるメダルの払出が終了したときに送信される。
待機コマンドは、待機状態へ移行する旨を示すコマンドであり、1ゲーム終了後、賭数が設定されずに終了推定時間(本実施例では60秒)経過して待機状態に移行するとき、クレジット(賭数の設定に用いられたメダルを含む)の精算によるメダルの払出が終了し、払出終了コマンドが送信された後に送信される。
打止コマンドは、打止状態の発生または解除を示すコマンドであり、BB終了後、エンディング演出待ち時間が経過した時点で打止状態の発生を示す打止コマンドが送信され、リセット操作がなされて打止状態が解除された時点で、打止状態の解除を示す打止コマンドが送信される。
エラーコマンドは、エラー状態の発生または解除、エラー状態の種類を示すコマンドであり、エラーが判定され、エラー状態に制御された時点でエラー状態の発生及びその種類を示すエラーコマンドが送信され、リセット操作がなされてエラー状態が解除された時点で、エラー状態の解除を示すエラーコマンドが送信される。
復帰コマンドは、メイン制御部41が電断前の制御状態に復帰した旨を示すコマンドであり、メイン制御部41の起動時において電断前の制御状態に復帰した際に送信される。
設定コマンドは、設定変更状態の開始または終了、設定変更後設定値を示すコマンドであり、設定変更状態に移行する時点で設定変更状態の開始を示す設定コマンドが送信され、設定変更状態の終了時に設定変更状態の終了及び設定変更後の設定値を示す設定コマンドが送信される。また、設定変更状態への移行に伴ってメイン制御部41の制御状態が初期化されるため、設定開始を示す設定コマンドによりメイン制御部41の制御状態が初期化されたことを特定可能である。
設定確認コマンドは、設定確認状態の開始または終了を示すコマンドであり、設定確認状態に移行する際に設定確認開始を示す設定確認コマンドが送信され、設定確認状態の終了時に設定確認終了を示す設定確認コマンドが送信される。
ドアコマンドは、ドア開放検出スイッチ25の検出状態、すなわちon(開放状態)/off(閉状態)を示すコマンドであり、電源投入時、1ゲーム終了時(ゲーム終了後、次のゲームの賭数の設定が開始可能となる前までの時点)、及びドア開放検出スイッチ25の検出状態が変化(onからoff、offからon)した時に送信される。
操作検出コマンドは、操作スイッチ類(MAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R)の検出状態(on/off)を示すコマンドであり、一定時間毎に送信される。
これらコマンドのうち操作検出コマンド以外のコマンドは、メイン処理において生成され、RAM41cに設けられたコマンドキューに一時格納され、その後のタイマ割込処理(メイン)のコマンド送信処理おいて送信される。
一方、操作検出コマンドは、タイマ割込処理(メイン)のコマンド送信処理が10回実行される毎に、スイッチの検出状態に基づいて生成されるとともに、RAM41cに設けられたコマンドキューに一時格納され、その後のタイマ割込処理(メイン)のコマンド送信処理おいて送信される。
次に、メイン制御部41が演出制御基板90に対して送信するコマンドに基づいてサブ制御部91が実行する演出の制御について説明する。サブ制御部91は、メイン制御部41からのコマンドを受信した際に、コマンド受信割込処理を実行する。コマンド受信割込処理では、RAM91cに設けられた受信用バッファに、コマンド伝送ラインから取得したコマンドを格納する。
サブ制御部91は、タイマ割込処理(サブ)において、受信用バッファに未処理のコマンドが格納されているか否かを判定し、未処理のコマンドが格納されている場合には、そのうち最も早い段階で受信したコマンドに基づいてROM91bに格納された制御パターンテーブルを参照し、制御パターンテーブルに登録された制御内容に基づいて液晶表示器51、演出効果LED52a〜c、スピーカ53、54、リールLED55等の各種演出装置の出力制御を行う。制御パターンテーブルには、複数種類の演出パターン毎に、コマンドの種類に対応する液晶表示器51の表示パターン、演出効果LED52a〜cの点灯態様、スピーカ53、54の出力態様、リールLED55の点灯態様等、これら演出装置の制御パターンが登録されており、サブ制御部91は、コマンドを受信した際に、制御パターンテーブルの当該ゲームにおいてRAM91cに設定されている演出パターンに対応して登録された制御パターンのうち、受信したコマンドの種類に対応する制御パターンを参照し、当該制御パターンに基づいて演出装置の出力制御を行う。これにより演出パターン及び遊技の進行状況に応じた演出が実行されることとなる。
尚、サブ制御部91は、あるコマンドの受信を契機とする演出の実行中に、新たにコマンドを受信した場合には、実行中の制御パターンに基づく演出を中止し、新たに受信したコマンドに対応する制御パターンに基づく演出を実行するようになっている。すなわち演出が最後まで終了していない状態でも、新たにコマンドを受信すると、受信した新たなコマンドが新たな演出の契機となるコマンドではない場合を除いて実行していた演出はキャンセルされて新たなコマンドに基づく演出が実行されることとなる。
演出パターンは、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じた選択率にて選択され、RAM91cに設定される。演出パターンの選択率は、ROM91bに格納された演出テーブルに登録されており、サブ制御部91は、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じて演出テーブルに登録されている選択率を参照し、その選択率に応じて複数種類の演出パターンからいずれかの演出パターンを選択し、選択した演出パターンを当該ゲームの演出パターンとしてRAM91cに設定するようになっており、同じコマンドを受信しても内部当選コマンドの受信時に選択された演出パターンによって異なる制御パターンが選択されるため、結果として演出パターンによって異なる演出が行われることがある。
本実施例におけるスロットマシン1では、メイン制御部41により、内部抽選結果に応じて遊技者にとって有利となる停止順を遊技補助表示器12の点灯態様により報知するナビ報知を実行可能な報知期間となるアシストタイム(以下、ATという)に制御可能となっている。
メイン制御部41は、ATに制御している場合には、遊技状態に応じたナビ対象役に当選することにより、ナビ報知を実行して、当選したナビ報知役の当選番号に基づいて遊技者にとって有利となる停止順を報知するとともに、当該当選番号に基づいて遊技者にとって有利となる停止順を特定可能な押し順コマンドをサブ制御部91に対して送信することで、液晶表示器51等を用いたナビ演出を実行させる。また、本実施例においてメイン制御部41は、ATに制御していない通常状態であっても、一定の条件を満たすことにより、ナビ報知を実行し、ナビ演出を実行させることが可能である。
図6は、メイン制御部41が用いるメモリ領域のアドレスマップである。図6に示すように、メイン制御部41が用いるメモリ領域は、ROM41bに割り当てられたメモリ領域(0000H〜7FFFH)と、RAM41cに割り当てられたメモリ領域(F000H〜FFFFH)と、を含む。
ROM41bのメモリ領域は、プログラム及び固定データが格納されるプログラム/データ領域(0000H〜26FFH)と、プログラムのタイトル、バージョン等の任意のデータを設定可能なROMコメント領域(2700H〜277FH)と、後述するCALLV命令のサブルーチンの上位アドレス及びタイマ割込処理(メイン)の先頭アドレスが設定されるベクタテーブル領域(2780H〜27A7H)と、メイン制御部41の内部機能をハードウェア的に設定するためのパラメータが設定されるHWパラメータ領域(27A8H〜27FFH)と、アクセスが禁止される未使用領域(2800H〜7FFFH)を含む。
ROM41bにおけるHWパラメータ領域に設定されるパラメータは、プログラム/データ領域で使用するROM領域の最終アドレス(HPRGEND)、アクセス禁止するRAM領域の開始アドレス(HRAMSTAT)及び最終アドレス(HRAMEND)を含む。
RAM41cのメモリ領域は、ワークとして使用可能な使用可能領域(F000H〜F400H)と、メイン制御部41に搭載されている各機能を制御するためのレジスタ群が格納される内部機能レジスタ領域(F4B0H〜F6FFH)と、アクセスが禁止される未使用領域(F401H〜F4AFH、F700H〜FFFFH)と、を含む。
図7は、メイン制御部41のROM41bにおけるプログラム/データ領域及びRAM41cにおける使用可能領域のアドレスマップである。
図7(a)に示すように、ROM41bにおけるプログラム/データ領域は、遊技の進行に係わる遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムが用いる遊技データが記憶される遊技データ領域と、未使用領域1と、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、非遊技プログラムが用いる非遊技データが記憶される非遊技データ領域と、未使用領域2と、を含む。
尚、遊技の進行とは、遊技を構成する一連のプロセスを進行させることであり、スロットマシンであれば、賭数を設定してゲームを開始可能とする段階、ゲームを開始してリールを回転させる段階、リールを停止させて表示結果を導出させる段階、表示結果に応じてメダル等の価値を付与する段階、を進行させることである。
遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、がそれぞれ別個に割り当てられているとともに、遊技プログラム領域及び非プログラム領域のうちROM41bの記憶領域において後方に割り当てられていた非プログラム領域の手前の領域は、少なくとも16バイト以上の未使用領域1が割り当てられているため、遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
また、遊技プログラム領域と遊技データ領域、非遊技プログラム領域と非遊技データ領域はそれぞれ連続する領域に割り当てられる一方、遊技の進行に係わる遊技プログラム領域及び遊技データ領域と、遊技の進行に係わらない非遊技プログラム及び非遊技データ領域と、が少なくとも16バイト以上の未使用領域1を挟んで連続しない領域に割り当てられているため、遊技の進行に係わる遊技プログラム領域及び遊技データ領域と、遊技の進行に係わらない非遊技プログラム及び非遊技データ領域と、を記憶領域の違いに応じて容易に特定することができる。
尚、上記において記憶領域の前後とは、記憶領域に割り当てられたアドレス値の大小関係であり、アドレスが小さい方が前方となり、アドレスが大きい方が後方となる。このため、一の記憶領域よりも後方に割り当てられた記憶領域とは、一の記憶領域よりもアドレス値が大きい記憶領域が該当し、一の記憶領域よりも前方に割り当てられた記憶領域とは、一の記憶領域よりもアドレス値が小さい記憶領域が該当する。
また、非遊技プログラム領域よりも後方に遊技プログラムが割り当てられ、非遊技プログラム領域よりも後方に割り当てられた遊技プログラムの手前に未使用領域が割り当てられた構成としても良く、このような構成においても遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
また、遊技プログラム領域と、非遊技プログラム領域と、が未使用領域1を挟んで隣接する領域に割り当てられる構成としても良く、このような構成であっても、遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
また、ROM41bのプログラム/データ領域の未使用領域1、2には、全ての領域に0値が格納されているため、遊技プログラム領域及び遊技データ領域と、非遊技プログラム領域及び非遊技データと、未使用領域1、2と、を容易に区別することができるとともに、未使用領域1、2に不正なデータが格納されている場合でも容易に発見することができる。
尚、ROM41bのプログラム/データ領域の未使用領域1、2における全ての領域に1が格納される構成としても良く、このような構成とした場合でも、遊技プログラム領域及び遊技データ領域と、非遊技プログラム領域及び非遊技データと、未使用領域1、2と、を容易に区別することができるとともに、未使用領域1、2に不正なデータが格納されている場合でも容易に発見することができる。
また、遊技プログラム領域と、非遊技プログラム領域と、が別個の領域に割り当たられた構成であれば、遊技プログラム領域と、非遊技プログラム領域と、が隣接する領域にわら当てられる構成としても良く、このような構成であっても遊技の進行に係わる遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
また、遊技プログラム領域及び非遊技プログラム領域はいずれも、アドレスを2進数表記した場合に下位4桁の値が同じ0のアドレス(0H)から開始するようになっており、ROM41bのプログラム/データ領域のうち遊技の進行に係る遊技プログラム領域と、遊技の進行に係わらない非遊技プログラム領域と、を他の領域と容易に区別することができる。
また、遊技プログラム領域及び非遊技プログラム領域はいずれも、アドレスを2進数表記した場合に下位4桁の値が同じ0のアドレスから開始するだけでなく、16進数表記した場合に下位1桁の値が同じ0のアドレス(0H)から開始するので、アドレスを2進数表記した場合だけでなく、16進数表記した場合にも遊技プログラム領域と、非遊技プログラム領域と、を他の領域と容易に区別することができる。
尚、遊技プログラム領域及び非遊技プログラム領域がいずれも、アドレスを2進数表記したか、16進数表記したか、に関わらず、下位N(Nは1以上の自然数)桁が同じ値のアドレスから開始する構成であれば、遊技プログラム領域と、非遊技プログラム領域と、を他の領域と容易に区別することが可能であり、例えば、下位N(Nは1以上の自然数)桁の値が同じ1のアドレスから開始する構成でも同様の効果が得られるものである。
図7(b)に示すように、RAM41cの使用可能領域は、遊技プログラムがワークとして用いる遊技RAM領域と、非遊技プログラムがワークとして用いる非遊技RAM領域と、未使用領域4と、を含んでおり、遊技RAM領域には、特別ワークと、重要ワークと、一般ワークと、未使用領域3と、遊技プログラムがデータを退避する遊技スタック領域と、が含まれ、非遊技RAM領域には、遊技プログラムが参照可能な領域と、遊技プログラムが参照不可能な領域と、非遊技プログラムがデータを退避する非遊技スタック領域と、が含まれる。尚、本実施例では、遊技スタック領域と非遊技スタック領域とをそれぞれ異なる領域に個別に備える構成であるが、遊技プログラム及び非遊技プログラムが共用する一のスタック領域を備える構成としても良い。
未使用領域3は、遊技プログラム及び非遊技プログラムのいずれも使用しない領域であり、予め定められた容量の遊技RAM領域に対して余剰となった領域である。
また、未使用領域4は、遊技プログラム及び非遊技プログラムのいずれも使用しない16バイト以上の領域である。遊技RAM領域と、非遊技RAM領域とが、未使用領域4を挟んで連続しない領域に割り当てられているため、遊技の進行に係わる遊技プログラムが用いる遊技RAM領域と、遊技の進行に係わらない非遊技プログラムが用いる非遊技RAM領域と、を記憶領域の違いに応じて容易に特定することができる。
以下では、遊技プログラム領域、遊技データ領域及び遊技RAM領域をまとめて遊技領域と称す場合があり、非遊技プログラム領域、非遊技データ領域及び非遊技RAM領域をまとめて非遊技領域と称す場合がある。また、未使用領域1及び未使用領域2、未使用領域3及び未使用領域4をまとめて未使用領域と称す場合がある。
メイン制御部41は、HWパラメータ領域に設定されるパラメータに基づいて、ROM41bのプログラム/データ領域のうちアクセスが禁止された領域へのアクセスがあったとき、RAM41cの使用可能領域のうちアクセスが許可に設定されていない領域へのアクセスがあったとき、ROM41bのうちプログラム/データ領域以外の領域へのアクセスがあったとき、RAM41cのうち使用可能領域以外の領域へのアクセスがあったときに、すなわち正常な動作ではアクセスすることのないメモリ領域へのアクセスがあったときにイリーガルアクセスリセットを発生させることで、遊技の進行を不能化させるので、ROM41bの未使用領域や動作とは関係しない領域、RAM41cの未使用領域等に不正なプログラムが格納された場合であっても、不正なプログラムが実行されてしまうことを防止できる。
特に本実施例では、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域の先頭アドレスから非遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)へのアクセスを一括して許可に設定する一方で、それ以外の領域、すなわちプログラム/データ領域のうち遊技プログラムや遊技データ、非遊技プログラム、非遊技データが格納されていない非遊技データよりも後の領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち非遊技プログラム領域の先頭アドレスから遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域へのアクセスを一括して許可に設定する一方で、それ以外の領域へのアクセスが禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
尚、プログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、プログラム/データ領域のうち遊技プログラム領域を含む一かたまりの領域(遊技プログラム領域から遊技データ領域までの領域)、非遊技プログラムを含む一かたまりの領域(非遊技プログラム領域から非遊技データ領域までの領域)へのアクセスをそれぞれ許可に設定し、他の領域へのアクセスを禁止する構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、プログラム/データ領域のうち遊技プログラム領域を含む一かたまりの領域(遊技プログラム領域から遊技データ領域までの領域)、非遊技プログラムを含む一かたまりの領域(非遊技プログラム領域から非遊技データ領域までの領域)へのアクセスをそれぞれ許可に設定し、他の領域へのアクセスを禁止する構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域へのアクセスが禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
また、上記では、プログラム/データ領域においてアクセスを許可する領域そのものを設定する構成であるが、プログラム/データ領域においてアクセスを禁止する領域を設定することで、間接的にアクセスを許可する領域が設定される構成としても良い。
メイン制御部41は、HWパラメータ領域に設定されるパラメータに基づいて、プログラム走行を許可する指定エリア以外の領域においてユーザプログラムが実行された場合、すなわち正常な動作ではユーザプログラムが実行されることのない領域でユーザプログラムが実行された場合に、IAT回路506aがIAT発生信号を出力することで、遊技の進行を不能化させるので、ROM41bの未使用領域や動作とは関係しない領域、RAM41cの未使用領域等に不正なプログラムが格納された場合であっても、不正なプログラムが実行されてしまうことを防止できる。
特に本実施例では、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域、非遊技プログラム領域の各々について、IAT回路506aがプログラム走行を許可する指定エリアとして設定する一方で、それ以外の領域、すなわちプログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域でのプログラム走行が禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域、非遊技プログラム領域の各々について、IAT回路506aがプログラム走行を許可する指定エリアとして設定する一方で、それ以外の領域でのプログラム走行が禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
尚、プログラム/データ領域に遊技プログラム領域と、非遊技プログラム領域と、が割り当てられ、遊技プログラム領域よりも後方の非遊技プログラム領域の手前の領域に未使用領域1が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち遊技プログラム領域の先頭アドレスから非遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)について、IAT回路506aがプログラム走行を許可する指定エリアとして一括して設定し、他の領域でのプログラム走行が禁止される構成としても良く、このような構成とした場合でも、プログラム/データ領域のうち遊技プログラムや非遊技プログラムが格納されていない領域でのプログラム走行が禁止されるため、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。また、ROM41bのうちプログラムによってアクセスが許可されたプログラム/データ領域において非遊技プログラム領域よりも後方に遊技領域が割り当てられ、非遊技プログラム領域よりも後方の遊技プログラム領域の手前の領域に未使用領域が割り当てられるとともに、HWパラメータ領域に設定されるパラメータに基づいて、プログラム/データ領域のうち非遊技プログラム領域の先頭アドレスから遊技プログラムの最終アドレスまでの領域を含む一かたまりの領域(遊技プログラム領域から非遊技データ領域までの領域)について、IAT回路506aがプログラム走行を許可する指定エリアとして一括して設定し、他の領域でのプログラム走行が禁止されるようにしても、不正プログラムや不正データによる意図しない制御が行われてしまうことを防止できる。
また、上記では、プログラム/データ領域においてプログラム走行を許可する領域そのものを設定する構成であるが、プログラム/データ領域においてプログラム走行を禁止する領域を設定することで、間接的にプログラム走行を許可する領域が設定される構成としても良い。
メイン制御部41が実行するプログラムは、プログラム全体の進行を管理するメインルーチンと、他のプログラムの実行中に呼び出されるサブルーチンと、を含む。
また、メイン制御部41にプログラム/データ領域に格納されたプログラムを実行させる命令として、CALL命令を含む。
CALL命令は、メインルーチンまたはサブルーチンにおいて指定されたアドレスに格納されたサブルーチンを呼び出して実行させる命令である。メイン制御部41は、CALL命令によりサブルーチンを呼び出す場合には、呼び出し元のアドレスをスタック領域に格納し、指定されたアドレスに格納されたサブルーチンを呼び出して実行する。そして、当該サブルーチンの終了後、スタック領域に格納されている呼び出し元のアドレス、すなわちCALL命令を実行した呼び出し元のメインルーチンまたはサブルーチンのプログラムに復帰する。
また、CALL命令は、通常のCALL命令と、特殊なCALL命令であるCALLV命令と、を含む。通常のCALL命令は、上位アドレス及び下位アドレスの双方を指定して指定された上位アドレス及び下位アドレスによりアドレスを特定してサブルーチンを呼び出す命令であるのに対して、CALLV命令は、下位アドレスのみ指定することで、ROM41bのベクタテーブル領域に予め設定された上位アドレス及び指定された下位アドレスによりアドレスを特定してサブルーチンを呼び出す命令であり、通常のCALL命令に比較して少ないデータ量でサブルーチンを呼び出すことが可能となる。
RST命令は、予め定められた複数の特定アドレスに対応する値を指定することで、指定された値に対応する特定アドレスに格納されたサブルーチンを呼び出して実行させる命令であり、上記した通常のCALL命令やCALLV命令に比較して少ないデータ量でサブルーチンを呼び出すことが可能となる。メイン制御部41は、RST命令によりサブルーチンを呼び出す場合には、呼び出し元のアドレスをスタック領域に格納し、指定された値に対応する特定アドレスに格納されたサブルーチンを呼び出して実行する。そして、当該サブルーチンの終了後、スタック領域に格納されている呼び出し元のアドレス、すなわちRST命令を実行した呼び出し元のメインルーチンまたはサブルーチンに復帰する。
ジャンプ命令は、メインルーチンまたはサブルーチンにおいて指定されたアドレスに格納されたプログラムに移動する命令である。メイン制御部41は、ジャンプ命令により指定されたアドレスに格納されたプログラムに移動し、移動先のプログラムを実行する。この場合には、CALL命令やRST命令と異なり、移動後のプログラムが終了しても移動元のプログラムに復帰することはない。
また、メイン制御部41にプログラム/データ領域に格納されたデータを読み出す命令としてLD命令を含む。LD命令は、メインルーチンまたはサブルーチンにおいて指定されたアドレスに格納されたデータを指定されたレジスタに読み出す命令である。メイン制御部41は、LD命令により指定されたアドレスに格納されたデータを読み出し、LD命令により指定されたレジスタに読み出したデータを格納する。
ROM41bに格納された遊技プログラムのうち特に使用頻度の高いサブルーチンは、ROM41bの遊技プログラム領域のうち先頭アドレスが特定値(例えば00H)となる領域に格納されている。一方、ROM41bのベクタテーブル領域には、CALLV命令で呼び出すサブルーチンの上位アドレスとして特定値が設定されている。そして、メイン制御部41は、先頭アドレスの上位アドレスが特定値となるサブルーチンを呼び出すときに、CALLV命令を用いて下位アドレスのみ指定することで、上位アドレスとしてベクタテーブル領域に設定された特定値を特定し、下位アドレスとして指定された下位アドレスを特定し、上位及び下位を合わせたアドレスに格納されたサブルーチンを呼び出して実行する。このため、遊技プログラムのうち特に使用頻度の高いサブルーチンを呼び出す際に用いるアドレスの一部を構成する上位アドレスが特定値として予めベクタテーブルに設定されており、ベクタテーブルに設定された特定値に基づいてアドレスが特定されるため、上位アドレス及び下位アドレスの双方を指定してプログラムを呼び出す通常のCALL命令に比較して少ないデータ量にてサブルーチンを呼び出すことが可能となり、これらのサブルーチンを呼び出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
尚、ROM41bに格納された非遊技プログラムのうち特に使用頻度の高いサブルーチンを、ROM41bの非遊技プログラム領域のうち先頭アドレスが特定値となる領域に格納するとともに、ROM41bのベクタテーブル領域に、CALLV命令で呼び出すサブルーチンの上位アドレスとして特定値を設定し、メイン制御部41が先頭アドレスの上位アドレスが特定値となるサブルーチンを呼び出すときに、CALLV命令を用いて下位アドレスのみ指定することで、これらのサブルーチンを呼び出して実行する構成とした場合でも、上位アドレス及び下位アドレスの双方を指定してプログラムを呼び出す通常のCALL命令に比較して少ないデータ量にてサブルーチンを呼び出すことが可能となり、これらのサブルーチンを呼び出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
また、CALLV命令で呼び出す際に用いる上位アドレスを、ベクタテーブル領域ではなく、メイン制御部41の特定のレジスタに設定する構成としても良い。
また、CALLV命令に限らず、アドレスの一部が、ベクタテーブル領域に格納された値、特定のレジスタに設定された値等を用いて特定され、アドレスの残りの部分を指定することで、サブルーチンの格納アドレスが特定可能となる特殊なCALL命令を用いる構成であれば、サブルーチンを呼び出す際にアドレスを指定するためのプログラムの無駄を削減することができる。また、ベクタテーブル領域を構成する複数の領域に、それぞれアドレスよりもデータ量の小さい識別値を割り当て、これら複数の領域にそれぞれサブルーチンの格納アドレスを設定するとともに、識別値を指定することで、識別値に対応する領域に格納されたサブルーチンの格納アドレスを特定可能となる特殊なCALL命令を用いる構成であっても、サブルーチンを呼び出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
また、ROM41bに格納された遊技データのうち特に使用頻度の高い遊技データを、ROM41bの遊技データ領域のうち先頭アドレスが特定値となる領域に格納するとともに、ROM41bのベクタテーブル領域に、特殊なLD命令で読み出すデータの上位アドレスとして特定値を設定し、メイン制御部41が先頭アドレスの上位アドレスが特定値となる遊技データを呼び出すときに、特殊なLD命令を用いて下位アドレスのみ指定することで、これらの遊技データを読み出す構成とした場合でも、上位アドレス及び下位アドレスの双方を指定してデータを読み出す通常のLD命令に比較して少ないデータ量にて遊技データを呼び出すことが可能となり、これらの遊技データを読み出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
また、ROM41bに格納された非遊技データのうち特に使用頻度の高い非遊技データを、ROM41bの非遊技データ領域のうち先頭アドレスが特定値となる領域に格納するとともに、ROM41bのベクタテーブル領域に、特殊なLD命令で読み出すデータの上位アドレスとして特定値を設定し、メイン制御部41が先頭アドレスの上位アドレスが特定値となる非遊技データを呼び出すときに、特殊なLD命令を用いて下位アドレスのみ指定することで、これらの非遊技データを読み出す構成とした場合でも、上位アドレス及び下位アドレスの双方を指定してデータを読み出す通常のLD命令に比較して少ないデータ量にて非遊技データを呼び出すことが可能となり、これらの非遊技データを読み出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
また、これらの場合でも特殊なLD命令で呼び出す際に用いる上位アドレスを、ベクタテーブル領域ではなく、メイン制御部41の特定のレジスタに設定する構成としても良い。
また、アドレスの一部が、ベクタテーブル領域に格納された値、特定のレジスタに設定された値等を用いて特定され、アドレスの残りの部分を指定することで、データの格納アドレスが特定可能となる特殊なLD命令を用いる構成であれば、データを読み出す際にアドレスを指定するためのプログラムの無駄を削減することができる。また、ベクタテーブル領域を構成する複数の領域に、それぞれアドレスよりもデータ量の小さい識別値を割り当て、これら複数の領域にそれぞれデータの格納アドレスを設定するとともに、識別値を指定することで、識別値に対応する領域に格納されたデータの格納アドレスを特定可能となる特殊なLD命令を用いる構成であっても、データを読み出す際にアドレスを指定するためのプログラムの無駄を削減することができる。
メイン制御部41は、システムリセット信号の入力によるシステムリセット、WDT506bによるWDTリセット、前述のイリーガルアクセスリセットが発生することで起動することとなるが、この際、ベクタテーブル領域に設定された値、すなわちCALLV命令のサブルーチンの上位アドレス及びタイマ割込処理(メイン)の先頭アドレスが、プログラム領域のうちプログラム等が実際に格納された領域を示す値であるか、またはFFFFH(未使用のベクタテーブル領域に設定される値)であるか、を判定し、ベクタテーブル領域に設定された値が、プログラムが設定される領域外を示す値でもなく、FFFFHでもない場合には、起動しないようになっており、割込の発生等により本来意図していない処理が実行されてしまうことを事前に防止できる。
遊技プログラムとは、遊技の進行に係わるプログラムであり、当該プログラムに基づく処理を実行しないと、遊技の進行に支障をきたす処理を実行するためのプログラムである。一方、非遊技プログラムとは、遊技の進行に係わらないプログラムであり、遊技プログラムから呼び出されて当該プログラムに基づく処理が実行されずに遊技プログラムに復帰した場合でも、遊技を進行させることが可能な処理を実行するためのプログラムである。
遊技プログラムは、図8に示すように、遊技プログラムだけに含まれる遊技専用プログラムと、遊技プログラム及び非遊技プログラム双方に含まれる共通判定プログラム及び共通汎用プログラムと、を含む。
遊技専用プログラムは、例えば、遊技開始待ち処理、内部抽選処理、リール制御処理、遊技終了時設定処理、外部出力1処理、初期設定処理、電断処理、異常入賞判定処理、エラー処理を含む。遊技開始待ち処理は、1ゲームの制御の終了後、メダルの投入等により賭数を設定し、規定数の賭数が設定された後、スタートスイッチ7が操作されることでゲームを開始させるための処理であり、内部抽選処理は、内部抽選を行い、当選フラグの設定等を行う処理であり、リール制御処理は、リールの回転を開始させ、ストップスイッチ8L、8C、8Rが操作されることでリールを停止させるための処理であり、遊技終了時設定処理は、停止したリールの停止位置に応じて入賞が発生したか否かを判定し、メダルの払出、再遊技の設定、遊技状態の移行等を行うための処理であり、外部出力1処理は、外部出力信号のうちメダルIN信号、メダルOUT信号、RB中信号、BB中信号、RT中信号の出力制御を行うための処理であり、初期設定処理は、電源投入時においてゲームを可能な状態とするための処理(バックアップ異常確認、レジスタ初期化等)であり、電断処理は、電断発生時に、その後電断前の状態に復帰できるようにするための処理であり、異常入賞判定処理は、許容されていない役が入賞する異常入賞が発生しているか否かを判定する処理であり、エラー処理は、各種の異常(メダルの投入異常、メダルセレクタ29内の異物検知、リール回転異常、メダルの払出異常、払出口付近の異物検知、RAM異常、設定値異常、ホッパータンク34aの空、オーバーフロータンク35の満タン検知、異常入賞等)が検知された場合に遊技を不能化するための処理である。また、特に図示しないが、遊技プログラムは、前述のATに関連する処理(ATに係る抽選やナビ報知に係る制御等)も含む。
遊技プログラムにおける共通判定プログラムは、例えば、投入判定処理、払出判定処理を含む。投入判定処理は、投入メダルセンサ31によるメダルの正常な通過であるか否かを判定する処理であり、賭数の設定等のためにメダルの投入が可能な状態において実行される処理である。払出判定処理は、払出センサ34cによるメダルの正常な通過であるか否かを判定する処理であり、小役の入賞時やクレジットの精算時にメダルの払出が許可されている状態において実行される処理である。
遊技プログラムにおける共通汎用プログラムは、遊技プログラムを構成する複数種類の処理から呼び出されて実行される処理であり、例えば、カウンタ更新処理、ポート入力処理、データ変換処理、LED表示処理、データ設定処理、コマンド設定処理を含む。カウンタ更新処理は、指定されたカウンタ値を更新するための処理であり、ポート入力処理は、指定されたポートの入力状態を取得する処理であり、データ変換処理は、遊技データを用いて入力されたデータを変換して出力する処理であり、LED表示処理は、指定された値をLEDに表示させるために設定する処理であり、データ設定処理は、指定されたデータを設定する処理であり、コマンド設定処理は、指定されたコマンドをコマンドキューに設定する処理である。
特に、遊技プログラムは、上述のように異常が検知された場合に、異常の種別に応じた解除条件(乱数異常、RAM異常、バックアップ異常、設定値異常の場合は、設定値の再設定、それ以外の異常の場合はリセット操作)が成立するまで遊技の進行を不能化するエラー処理を含む。
非遊技プログラムは、図8に示すように、非遊技プログラムだけに含まれる非遊技専用プログラムと、遊技プログラムと同じ共通判定プログラム及び共通汎用プログラムと、を含む。
非遊技専用プログラムは、例えば、試験信号出力処理、異物検知処理、ドア監視処理、外部出力2処理、投入メダルエラー判定処理、払出メダルエラー判定処理、停電判定処理、通常時コマンド送信処理、電断時コマンド送信処理を含む。試験信号出力処理は、遊技の結果に関連して発生する試験信号を出力するための処理であり、異物検知処理は、投入口センサ26によるメダル通路内の異物を検知するための処理であり、ドア監視処理は、前面扉1bの開放を検知するための処理であり、外部出力2処理は、外部出力信号のうちセキュリティ信号(ドア開放信号、設定変更信号、投入エラー信号、払出エラー信号)の出力制御を行うための処理であり、投入メダルエラー判定処理は、投入メダルセンサ31の検出状況に基づいて投入メダルの逆流検知、メダルセレクタ29内のメダル詰り検知、メダルセレクタ29内の異物検知を行うための処理であり、払出メダルエラー判定処理は、払出センサ34cの検出状況に基づいて払出メダルの逆流検知、払出口付近のメダル詰り検知、払出口付近の異物検知を行うための処理であり、停電判定処理は、電断検出回路48からの電圧低下信号が検出されているか否かを判定するための処理であり、通常時コマンド送信処理は、遊技専用プログラム及び非遊技専用プログラムのコマンド設定処理によりコマンドキューに設定されているコマンドのうち最初に設定された一のコマンドをサブ制御部91に対して送信するための処理であり、電断時コマンド送信処理は、コマンドキューに設定されている全てのコマンドをサブ制御部91に対して送信するための処理である。
非遊技プログラムにおける共通汎用プログラムは、非遊技プログラムを構成する複数種類の処理から呼び出されて実行される処理であり、遊技プログラムにおける共通汎用プログラムと同様に、例えば、カウンタ更新処理、ポート入力処理、データ変換処理、LED表示処理、データ設定処理、コマンド設定処理を含む。
非遊技プログラムは、遊技の進行に係わらない検知手段(投入口センサ26、満タンセンサ35a、ドア開放検出スイッチ25)の検出状況に基づいて所定の検出状況か否かを判定する処理を含む。
また、非遊技プログラムは、複数の制御状態(遊技開始待ち処理、内部抽選処理、リール制御処理、遊技終了時設定処理)のうち特定の制御状態においては、遊技の進行に係わる検知手段として機能し、他の制御状態においては、遊技の進行に係わらない検出手段として機能する検出手段(例えば、投入メダルセンサ31、払出センサ34c)が、遊技の進行に係わらない制御状態での検出状況に基づいて所定の検出状況か否かを判定する処理(例えば、リール回転中のメダルの投入やメダルの払出が検出されたことによる異常を検知するための投入メダルの検出処理や払出メダルの検出処理)を含む。尚、このような判定処理は、遊技プログラムにおいて遊技の進行に係わる制御状態での検出状況に基づいて所定の検出状況か否かを判定する処理と同じ処理であるため、共通判定プログラムに該当する。
尚、遊技プログラムに含まれる処理のうち、外部出力1処理、遊技開始待ち処理においてメダルの投入数を計数する処理、流路切替ソレノイド30を切り替える処理、遊技終了時設定処理においてメダルの払出数を計数する処理、ホッパータンク34aが空になったことを検知する処理、ソフトウェア乱数を更新する処理、ATに関連する処理、内部当選コマンドの送信処理等、ゲームの進行に直接的には関連しないものであればこれらの処理の全部または一部が非遊技プログラムに含まれる構成であっても良い。一方で、非遊技プログラムに含まれる処理のうち遊技の進行に間接的に関連するものであればこれらの処理の全部または一部が遊技プログラムに含まれる構成であっても良い。
本実施例においてメイン制御部41のCPU41aは、図9に示すように、遊技プログラムに基づく処理において非遊技プログラムを呼び出して非遊技プログラムに基づく処理を実行し、非遊技プログラムに基づく処理の終了後、遊技プログラムに基づく処理に復帰する。
図9に示すように、CPU41aは、原則として遊技プログラムに基づく処理を実行するにあたり、遊技データ領域の遊技データを参照して遊技プログラムに基づく処理を実行するとともに、遊技RAM領域をワークとして使用し、遊技RAM領域の内容を参照及び更新することが可能である。また、CPU41aは、原則として非遊技プログラムに基づく処理を実行するにあたり、非遊技データ領域の遊技データを参照して非遊技プログラムに基づく処理を実行するとともに、非遊技RAM領域をワークとして使用し、非遊技RAM領域の内容を参照及び更新することが可能である。
また、CPU41aは、遊技プログラムに基づく処理を実行するにあたり、非遊技データ領域を参照することはなく、非遊技RAM領域を更新することはないが、非遊技RAM領域を参照することは可能であり、非遊技プログラムに基づく処理を実行するにあたり、遊技データ領域を参照することはなく、遊技RAM領域を更新することはないが、遊技RAM領域を参照することは可能である。
また、遊技プログラムに基づく処理は、非遊技RAM領域のうち遊技プログラムに必要な特定の領域(例えば、異常の検知を示すエラーフラグの設定領域等)のみ参照可能とされており、非遊技プログラムに基づく処理は、遊技RAM領域のうち非遊技プログラムに必要な特定の領域(例えば、内部当選フラグの設定領域、遊技状態の設定領域、RTの設定領域等)のみ参照可能とされている。また、非遊技RAM領域のうち遊技プログラムに基づく処理が参照可能な特定の領域、遊技RAM領域のうち非遊技プログラムに基づく処理が参照可能な特定の領域は、連続するアドレス領域に割り当てられることが好ましいが、一部または全部が連続しないアドレス領域に割り当てられる構成であっても良い。
このように本実施例では、遊技の進行に係る遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムが参照する遊技データが読み出し可能に記憶される遊技データ領域と、遊技プログラムが参照するワークデータが読み出し及び書き込み可能に記憶される遊技RAM領域と、遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、非遊技プログラムが参照する非遊技データが読み出し可能に記憶される非遊技データ領域と、非遊技プログラムが参照するワークデータが読み出し及び書き込み可能に記憶される非遊技RAM領域と、がそれぞれ別個に割り当てられているため、遊技プログラム、遊技データ及び遊技プログラムのワークデータと、非遊技プログラム、非遊技データ及び非遊技プログラムのワークデータと、を記憶領域の違いに応じて容易に特定することができる。
また、遊技プログラム領域及び遊技データ領域と、非遊技プログラム領域及び非遊技データ領域と、を分けることで、それぞれの機能に応じてROM41bに占める領域をコンパクトに管理することができるため、各領域において該当するデータを特定することがさらに容易となる。
また、本実施例では、遊技プログラムを実行する際に、非遊技RAM領域を参照することが可能であり、非遊技プログラムを実行する際に、遊技RAM領域を参照することが可能であるため、遊技プログラムを実行するにあたり、非遊技プログラムが使用していたデータを簡単に利用することができ、非遊技プログラムを実行するにあたり、遊技プログラムが使用していたデータを簡単に利用することができる。一方で、遊技プログラムを実行する際に、非遊技RAM領域を更新することは不可能であり、非遊技プログラムを実行する際に、遊技RAM領域を更新することは不可能であるため、遊技プログラムが非遊技プログラムの処理に影響を及ぼすことなく、非遊技プログラムが遊技プログラムの処理に影響を及ぼすことがない。
また、本実施例では、遊技プログラムに基づく処理は、非遊技RAM領域のうち遊技プログラムに必要な特定の領域(例えば、異常の検知を示すエラーフラグの設定領域等)のみ参照可能とされており、非遊技プログラムに基づく処理は、遊技RAM領域のうち非遊技プログラムに必要な特定の領域(例えば、内部当選フラグの設定領域、遊技状態の設定領域、RTの設定領域等)のみ参照可能とされているので、遊技プログラムが非遊技RAM領域において参照可能なデータ、非遊技プログラムが参照可能なデータが特定の領域に制限されているため、遊技プログラムまたは非遊技プログラムの参照先を容易に特定することができる。
本実施例のメイン制御部41は、図10(a)に示すように、メイン処理の実行中に、遊技プログラムに基づく処理から非遊技プログラムを呼び出すことが可能であり、図10(b)に示すように、タイマ割込処理の実行中に、遊技プログラムに基づく処理から非遊技プログラムを呼び出すことが可能である。
図10(a)に示すように、遊技プログラムに基づくメイン処理から非遊技プログラムを呼び出す際に、当該遊技プログラムでは、呼び出す対象の非遊技プログラムの開始アドレスを特定の領域に設定し、共通呼出処理1を実行する。共通呼出処理1は、遊技プログラムに含まれる処理であり、共通呼出処理1では、遊技プログラムのレジスタを遊技スタック領域に退避させるとともに、スタックポインタ(SP、遊技スタック領域の現在の位置を示すアドレス)を遊技RAM領域のSP退避領域に退避したうえで、割込マスタ許可フラグの値を割込禁止を示す値に設定することでタイマ割込を禁止に設定し、その後、特定の領域に設定されているアドレスの非遊技プログラムを呼び出す。
これに対して、呼び出された非遊技プログラムに基づいて、非遊技プログラムのスタックポインタ(非SP、非遊技スタック領域の現在の位置を示すアドレス)を設定して、非遊技プログラムの処理を実行した後、呼び出し元の遊技プログラム、すなわち共通呼出処理1に復帰する。
共通呼出処理1に復帰した後には、共通呼出処理1は、割込マスタ許可フラグの値を割込許可を示す値に設定することでタイマ割込の禁止を解除し、遊技スタック領域及びSP退避領域に退避させていたデータに基づいて、レジスタ及び遊技プログラムのスタックポインタを、非遊技プログラムを呼び出す前の状態に復帰させて終了する。
このように、本実施例では、遊技プログラムが非遊技プログラムを呼び出す際に、共通呼出処理1により、割込を禁止に設定し、当該非遊技プログラムから遊技プログラムに復帰する際に、割込の禁止を解除するので、非遊技プログラムが実行されている期間にわたり割込を禁止に設定することができる。
尚、非遊技プログラムが、遊技プログラムに基づくメイン処理から呼び出された場合に、当該非遊技プログラムが、最初に割込を禁止に設定したうえで、各種処理を実行し、当該非遊技プログラムの最後に割込の禁止を解除する構成としても良く、このような構成とすることで、本実施例と同様に、非遊技プログラムが実行されている期間にわたり割込を禁止に設定することができる。また、非遊技プログラムにより割込の禁止及び解除の設定が行われるため、遊技プログラムの共通呼出処理1において割込の禁止の設定及び解除する必要がなくなり、遊技プログラムの容量を削減することができる。
図10(b)に示すように、遊技プログラムに基づくタイマ割込処理から非遊技プログラムを呼び出す際に、当該遊技プログラムでは、呼び出す対象の非遊技プログラムの開始アドレスを特定の領域に設定し、共通呼出処理2を実行する。共通呼出処理2では、遊技プログラムのレジスタを遊技スタック領域に退避させるとともに、スタックポインタ(SP、遊技スタック領域の現在の位置を示すアドレス)を遊技RAM領域のSP退避領域に退避したうえで、特定の領域に設定されているアドレスの非遊技プログラムを呼び出す。
これに対して、呼び出された非遊技プログラムは、非遊技プログラムのスタックポインタを設定し、非遊技プログラムの処理を実行した後、呼び出し元の共通呼出処理2に復帰する。
共通呼出処理2に復帰した後には、共通呼出処理2は、遊技スタック領域及びSP退避領域に退避させていたデータに基づいてレジスタ及び遊技プログラムのスタックポインタを、非遊技プログラムを呼び出す前の状態に復帰させて終了する。
このように、共通呼出処理2では、呼出共通処理1と異なり、タイマ割込を禁止に設定及び解除しないが、上述のようにメイン制御部41では、タイマ割込処理の実行中に他の割込処理が実行されることが禁止されているので、非遊技プログラムが実行されている期間にわたり割込を禁止できる。
本実施例では、遊技プログラムが、共通呼出処理1及び共通呼出処理2を実行することで、非遊技プログラムを呼び出して非遊技プログラムを実行する際に、遊技プログラムが実際に使用していたレジスタであるか否かに関わらずレジスタの全ての領域を退避させて保護する処理が行われるため、遊技プログラムに復帰する際に、非遊技プログラムが呼び出された時点の状態から確実に復帰することができる。
尚、共通呼出処理1及び共通呼出処理2を実行することなく、遊技プログラムにおいて遊技プログラムに基づく処理から非遊技プログラムを呼び出す直前に遊技プログラムが使用していたレジスタの値を保護し、非遊技プログラムに基づく処理が全て終了した後に、遊技プログラムに復帰した最初の段階で保護されているレジスタの値を復帰させる構成としても良く、このような構成とすることで、非遊技プログラムの呼び出し前にレジスタの保護処理が行われ、非遊技プログラムからの復帰後にレジスタの復旧処理が行われるため、非遊技プログラムによってレジスタに記憶されたデータが遊技プログラムに影響を及ぼすことがない。
また、非遊技プログラムが呼び出された場合に、当該非遊技プログラムが、最初に遊技プログラムのスタックポインタ及びレジスタを退避させ、当該非遊技プログラムの最後に遊技プログラムのスタックポインタ及びレジスタを復帰させる構成としても良く、このような構成とすることで、本実施例と同様に、遊技プログラムに復帰する際に、非遊技プログラムが呼び出された時点の状態から確実に復帰することができるとともに、遊技プログラムの容量を削減することができる。
本実施例のメイン制御部41は、主にメイン処理に一定間隔(約0.56msの間隔)で割り込んで実行するタイマ割込処理(メイン)を実行可能である。尚、タイマ割込処理(メイン)とは、タイマ回路509のカウントに応じて発生する割込により実行される処理であり、タイマ割込処理(メイン)のプログラムが格納されたアドレスは、ベクタテーブルのタイマ割込に対応する値として設定されている。そして、タイマ割込が発生すると当該アドレスからの処理が実行される。また、タイマ割込処理(メイン)の実行期間中は自動的に他の割込が禁止される。
本実施例では、タイマ割込処理(メイン)は、遊技プログラムに含まれる一方、タイマ割込処理(メイン)内において実行される停電判定処理、電断時コマンド送信処理、通常時コマンド送信処理、ドア監視処理は、非遊技プログラムに含まれており、メイン制御部41は、タイマ割込処理(メイン)において割込禁止を設定し、遊技プログラムのスタックポインタ及びレジスタを退避させたうえで、これらの非遊技プログラムを呼び出すようになっている。また、これらの非遊技プログラムからタイマ割込処理(メイン)に復帰した際には、遊技プログラムのスタックポインタ及びレジスタを当該非遊技プログラムの呼び出し前の状態に復帰させたうえで、その後の処理を実行するようになっている。尚、メイン制御部41は、割込処理の実行中に他の割込を禁止するように設定されているので、非遊技プログラムから復帰した後も割込禁止の状態で、その後の処理を実行する。
また、タイマ割込処理(メイン)において実行する非遊技プログラムである停電判定処理、電断時コマンド送信処理、通常時コマンド送信処理、ドア監視処理は、これら非遊技プログラムの前に実行する必要のある処理(例えば、タイマ割込の分岐前に実行する必要のあるポート入力処理、モータ位相信号出力処理)を除く処理、すなわち非遊技プログラムよりも先に行っても後に行っても制御上影響のない処理よりも前に実行するようになっている。
本実施例のメイン制御部41は、遊技の進行に係る遊技プログラムと、当該遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムと、を実行することが可能であり、遊技プログラムに基づくメイン処理を実行するとともに、所定時間間隔毎にメイン処理に割り込んで遊技プログラムに基づくタイマ割込処理(メイン)を実行することが可能であって、メイン処理からも、タイマ割込処理(メイン)からも、非遊技プログラムを呼び出して実行することが可能である。
このような構成では、メイン制御部41では、非遊技プログラムを実行中にタイマ割込処理(メイン)が実行されることにより誤作動が生じる虞がある。
これに対して、本実施例のメイン制御部41は、遊技の進行に係る遊技プログラムと、当該遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムと、を実行することが可能であり、遊技プログラムに基づくメイン処理を実行するとともに、所定時間間隔毎にメイン処理に割り込んで遊技プログラムに基づくタイマ割込処理(メイン)を実行することが可能であって、メイン処理からも、タイマ割込処理(メイン)からも、非遊技プログラムを呼び出して実行することが可能な構成において、メイン処理から非遊技プログラムを呼び出すときには、他の処理の割込を禁止に設定した後に、当該非遊技プログラムを呼び出す一方で、タイマ割込処理(メイン)から非遊技プログラムを呼び出すとき、すなわち、さらに割込が生じる可能性が低い状況において非遊技プログラムを呼び出すときには、他の処理の割込を禁止に設定せずに、非遊技プログラムを呼び出すので、非遊技プログラムの実行中に割込が実行されることによる誤作動を防止しつつ、割込の禁止に係るプログラム容量を削減することができる。
本実施例のメイン制御部41が実行するタイマ割込処理(メイン)は、遊技プログラムによる処理、例えば、LEDダイナミック表示処理や制御信号等出力処理等と、非遊技プログラムによる処理、例えば、通常時コマンド送信処理や、電断時コマンド送信処理等の処理と、を含む複数の処理により構成されており、該タイマ割込処理(メイン)を構成する複数の処理のうち、所定の遊技プログラムによる処理、特に、これら非遊技プログラムの先に実行しても後に実行しても問題のない処理よりも前に、非遊技プログラムを呼び出すので、すなわち、タイマ割込処理(メイン)を構成する複数の処理のうち極力早い段階で非遊技プログラムを呼び出すので、例えば、何らかの原因によりタイマ割込処理(メイン)が終了しないまま、次回タイマ割込が発生して二重に割込が生じてしまった場合でも、非遊技プログラムの実行中に他の割込が実行されてしまうことを防止できる。
本実施例のメイン制御部41は、遊技プログラムと非遊技プログラムとを実行可能であり、遊技プログラムが用いるデータを退避する遊技スタック領域と、非遊技プログラムが用いるデータを退避する非遊技スタック領域と、が別個に設けられたRAM41cを備えており、メイン制御部41は、遊技プログラムが用いるデータと、非遊技プログラムが用いるデータと、を別個に設けられたスタック領域にそれぞれ退避させるので、スタック領域の管理が容易となる。特に、タイマ割込の発生により退避される遊技プログラムが用いるデータと、タイマ割込処理(メイン)の実行中に行われる非遊技プログラムが用いるデータと、が混在して一のスタック領域に格納されるようなことがないので、スタックの管理が煩雑となってしまうことがない。
本実施例のメイン制御部41は、非遊技プログラムを実行する際に、遊技プログラムで用いているレジスタ値を遊技スタック領域に退避した後、非遊技プログラムを呼び出して、当該非遊技プログラムにおける処理を実行し、非遊技プログラムにおける処理が終了したときに、退避させたレジスタ値を復帰させるので、非遊技プログラムを実行するのに伴い遊技プログラムが用いていたレジスタの値が変更されてしまうことを防止できる。
また、遊技プログラムに基づく処理から非遊技プログラムを呼び出す際に、遊技プログラムで用いているレジスタの値を遊技スタック領域に退避させる呼出共通処理1または呼出共通処理2を呼び出すようになっており、メイン処理において非遊技プログラムを実行するためのプログラムを共通化することで、プログラム容量を削減できる。
尚、本実施例では、メイン処理において遊技プログラムに基づく処理から非遊技プログラムを呼び出す際には、呼出共通処理1を実行する一方、タイマ割込処理において遊技プログラムに基づく処理から非遊技プログラムを呼び出す際には、呼出共通処理1とは異なる呼出共通処理2を実行することで、遊技プログラムで用いているレジスタの値を遊技スタック領域に退避させる構成であるが、メイン処理において遊技プログラムに基づく処理から非遊技プログラムを呼び出す際にも、タイマ割込処理において遊技プログラムに基づく処理から非遊技プログラムを呼び出す際にも、共通の呼出共通処理を実行する構成であっても良い。
尚、本実施例のメイン制御部41は、メイン処理からも、タイマ割込処理(メイン)からも、非遊技プログラムを呼び出して実行することが可能な構成であり、メイン処理から非遊技プログラムを呼び出すときには、他の処理の割込を禁止に設定して、当該非遊技プログラムを呼び出す一方で、タイマ割込処理(メイン)から非遊技プログラムを呼び出すときには、他の処理の割込を禁止に設定せずに、非遊技プログラムを呼び出す構成であるが、メイン制御部41は、メイン処理から非遊技プログラムを呼び出すときにも、タイマ割込処理(メイン)から非遊技プログラムを呼び出すときにも、他の処理の割込を禁止する構成としても良い。
このような構成では、メイン制御部41は、メイン処理から非遊技プログラムを呼び出すときだけでなく、タイマ割込処理(メイン)から非遊技プログラムを呼び出すときにも、他の処理の割込を禁止するので、本実施例と同様に、非遊技プログラムの実行中に割込が実行されることによる誤作動を防止することができる。
特に、タイマ割込処理(メイン)を実行するときに、割込禁止が設定され、タイマ割込処理(メイン)の終了時に割込禁止が解除されることで、タイマ割込処理(メイン)の実行中に他の処理の割込が禁止されることとなるが、この場合でも、タイマ割込処理(メイン)から非遊技プログラムを呼び出すときに再度他の処理の割込を禁止するので、何らかの原因により割込禁止設定が解除されてしまった場合でも、非遊技プログラムの実行中に割込が実行されることによる誤作動を防止することができる。
また、前述のようにタイマ割込処理(メイン)を実行するときに、割込禁止が設定され、タイマ割込処理(メイン)の終了時に割込禁止が解除されることで、タイマ割込処理(メイン)の実行中に他の処理の割込が禁止される構成であるが、タイマ割込処理(メイン)から非遊技プログラムを呼び出すときに再度他の処理の割込を禁止する場合には、非遊技プログラムの呼び出し時に設定した他の処理の割込の禁止の設定を、該非遊技プログラムの終了後も維持することで、タイマ割込処理(メイン)の実行中にも関わらず、非遊技プログラムの実行により割込の禁止が解除されてしまうことを防止できる。
次に、メイン制御部41のRAM41cの初期化について、図11に基づいて説明する。
本実施例のメイン制御部41は、設定変更処理の開始時において、RAM41cの記憶内容が破壊されていると判定した場合に、遊技RAM領域、未使用領域4、非遊技RAM領域を初期化する、すなわち使用可能領域の全ての領域を初期化する初期化0を行う。
また、設定変更処理の開始時において、RAM41cの記憶内容が破壊されていないと判定した場合に、遊技RAM領域のうち特別ワークを除く領域、未使用領域4、非遊技RAM領域を初期化する、すなわち使用可能領域のうち特別ワーク以外の領域を初期化する初期化1を行う。
また、設定変更処理の終了時において、遊技RAM領域のうち重要ワーク、一般ワーク、未使用領域3、遊技スタック領域(未使用)を初期化する、すなわち遊技RAM領域のうち特別ワーク及び遊技スタック領域(使用中)以外の領域を初期化する初期化2を行う。
また、特定の遊技状態の終了時であり、かつ1ゲーム終了時に、遊技RAM領域のうち一般ワーク、未使用領域3及び遊技スタック領域(未使用)を初期化する初期化3を行う。
また、特定の遊技状態の終了時でない1ゲーム終了時に、遊技RAM領域のうち未使用領域3、遊技スタック領域(未使用)を初期化する初期化4を行う。
このように、本実施例のメイン制御部41は、所定条件が成立したときに初期化0〜4を行い、所定条件として第1の条件が成立したときに、RAM41cの使用可能領域のうちの遊技プログラムが用いるデータが記憶されている遊技RAM領域の少なくとも一部を初期化し、所定条件として第2の条件が成立したときに、遊技RAM領域の少なくとも一部と、RAM41cの使用可能領域のうちの非遊技プログラムが用いる非遊技RAM領域の少なくとも一部を初期化する。
具体的には、図11に示すように、第1の条件として、1ゲームの終了時には、使用可能領域のうち遊技RAM領域の一部である、未使用領域3及び遊技スタック領域(未使用)を初期化するが、使用可能領域のうち非遊技RAM領域は初期化しない。また、第1条件として、特定の遊技状態の終了時には、使用可能領域のうち遊技RAM領域の一部である一般ワーク、未使用領域3、遊技スタック領域(未使用)を初期化するが、使用可能領域のうち非遊技RAM領域は初期化しない。また、第1条件として、設定変更状態が終了した後には、使用可能領域のうち遊技RAM領域の一部である重要ワーク、一般ワーク、未使用領域3、遊技スタック領域(未使用)を初期化するが、使用可能領域のうち非遊技RAM領域は初期化しない。
一方、第2の条件として、設定変更状態を開始したときに、RAMに異常がない場合には、使用可能領域のうち遊技RAM領域の一部である重要ワーク、一般ワーク、未使用領域3、遊技スタック領域(未使用)、遊技スタック領域(使用)を初期化するとともに、非遊技RAM領域の全ての領域を初期化する。また、設定変更状態を開始したときに、RAMに異常がある場合には、使用可能領域のうち遊技RAM領域の全ての領域を初期化するとともに、遊技RAM領域の全ての領域を初期化する。
本実施例のメイン制御部41は、遊技の進行に係わる遊技プログラムと、遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムと、を実行可能であり、遊技プログラム及び非遊技プログラムを記憶するROM41bを備えている。
このような構成では、一のROM41bにおいて遊技プログラムと、非遊技プログラムと、が混在していると、どのプログラムが遊技の進行に係わるプログラムであるかの判別が困難である。
これに対して、本実施例では、ROM41bは、遊技プログラムが記憶される遊技プログラム領域と、非遊技プログラムが記憶される非遊技プログラム領域と、を含んでおり、遊技プログラム領域と、非遊技プログラム領域と、がそれぞれ別個に割り当てられているため、遊技プログラムと、非遊技プログラムと、を記憶領域の違いに応じて容易に特定することができる。
また、本実施例のメイン制御部41は、遊技プログラムのワークとして用いられ、遊技プログラムが用いるデータを記憶する遊技RAM領域と、非遊技プログラムのワークとして用いられ、非遊技プログラムが用いるデータを記憶する非遊技RAM領域と、を含むRAM41cを備えており、RAM41cにおいて遊技RAM領域と、非遊技RAM領域と、がそれぞれ別個に割り当てられているため、遊技プログラムが用いるデータと、非遊技プログラムが用いるデータと、を記憶領域の違いに応じて容易に特定することができるとともに、メイン制御部41は、第1の初期化条件が成立したときに、遊技RAM領域の少なくとも一部を初期化し、第2の初期化条件が成立したときに、遊技RAM領域の少なくとも一部を初期化するとともに、非遊技RAM領域の少なくとも一部を初期化するため、RAM41cに記憶されている遊技プログラムが用いるデータと非遊技プログラムが用いるデータのうち状況に応じて適切なデータを初期化することができる。
本実施例のメイン制御部41は、第1の初期化条件として、1ゲームが終了した時には、遊技RAM領域のうちの一部である未使用領域3及び遊技スタック領域(未使用)を初期化し、第1の初期化条件として、特別な遊技状態(BB)が終了した時で、かつ1ゲームが終了した時には、遊技RAM領域のうちの一部である一般ワーク、未使用領域3及び遊技スタック領域(未使用)を初期化し、第1の初期化条件として、設定変更が終了し、メイン処理が開始されたときには、遊技RAM領域のうちの一部である重要ワーク、一般ワークの領域、未使用領域3及び遊技スタック領域(未使用)を初期化するので、状況に応じて適切なデータを初期化することができる。
また、本実施例のメイン制御部41は、第2の初期化条件として、設定変更開始時でRAMに異常がないときには、遊技RAM領域のうち一部である重要ワーク、一般ワーク、未使用領域3、遊技スタック領域(未使用)及び遊技スタック領域(使用中)を初期化するとともに、非遊技RAM領域のうち、遊技プログラムから参照される領域、遊技プログラムから参照されない領域、非遊技スタック領域(未使用)及び非遊技スタック領域(使用中)、すなわち非遊技RAM領域の全ての領域を初期化し、第2の初期化条件として、設定変更開始時でRAMに異常があるときには、遊技RAM領域のうち、特別ワーク、重要ワーク、一般ワーク、未使用領域3、遊技スタック領域(未使用)及び遊技スタック領域(使用中)、すなわち遊技RAM領域の全ての領域を初期化するとともに、非遊技RAM領域のうち、遊技プログラムから参照される領域、遊技プログラムから参照されない領域、非遊技スタック領域(未使用)及び非遊技スタック領域(使用中)、すなわち非遊技RAM領域の全ての領域を初期化するため、RAM41cに記憶されている遊技プログラムが用いるデータと、非遊技プログラムが用いるデータと、のうち状況に応じて適切なデータを初期化することができる。
尚、本実施例のメイン制御部41は、第1の初期化条件が成立したときに、遊技RAM領域の一部の領域を初期化する構成であるが、メイン制御部41は、第1の初期化条件が成立したときに、遊技RAM領域の少なくとも一部の領域を初期化するものであれば良く、遊技RAM領域の全ての領域を初期化するものでも良い。
また、本実施例のメイン制御部41は、第2の初期化条件が成立したときに、遊技RAM領域の一部を初期化するとともに、非遊技RAM領域の全ての領域を初期化する構成であるが、メイン制御部41は、第2の初期化条件が成立したときに遊技RAM領域の少なくとも一部の領域を初期化するとともに、非遊技RAM領域の少なくとも一部の領域を初期化するものであれば良く、遊技RAM領域の全ての領域を初期化するものでも良いし、非遊技RAM領域の全ての領域を初期化するものでも良いし、非遊技RAM領域の少なくとも一部の領域を初期化するものでも良いし、遊技RAM領域及び非遊技RAM領域の双方の全ての領域を初期化するものでも良い。
本実施例のメイン制御部41は、遊技RAM領域を初期化するプログラムと、非遊技RAM領域を初期化するプログラムと、を別個のプログラムとして構成しているので、遊技プログラムが非遊技RAM領域の初期化をせずに済むため、遊技プログラムの容量を削減できる。また、第1の初期化条件が成立したときにも、第2の初期化条件が成立したときにも、遊技RAM領域を初期化するプログラムを共用できる。さらに遊技RAM領域を初期化するプログラムを遊技プログラムとして備え、非遊技RAM領域を初期化するプログラムを非遊技プログラムとして備えるので、遊技プログラムが非遊技RAM領域を初期化したり、非遊技プログラムが遊技RAM領域を初期化したりすることがなく、遊技プログラムが非遊技プログラムに影響を与えること、非遊技プログラムが遊技プログラムに影響を与えることを防止できる。
本実施例のメイン制御部41は、第1の初期化条件として、メイン処理において遊技終了時処理設定を行った後に、特定の遊技状態の終了時でないと判定されたとき、すなわち1ゲームが終了した時に遊技終了時の初期化対象RAMの先頭アドレスを設定し、遊技領域初期化処理を実行することで、遊技RAM領域のうち所定の領域を初期化するので、遊技単位毎に遊技の進行に係る不要な遊技RAM領域の一部の領域を初期化することができる。
本実施例のメイン制御部41は、設定キースイッチ37がONの状態で起動され、設定変更処理を開始したとき、すなわち設定変更操作が行われたことに基づいて第2の初期化条件が成立したときに、遊技領域初期化処理を実行して遊技RAM領域のうち所定の領域を初期化するとともに、非遊技領域初期化処理を実行して非遊技RAM領域のうち所定の領域を初期化するようになっており、遊技店員の設定変更操作(初期化操作)に基づいて遊技RAM領域と非遊技RAM領域の双方を初期化することができる。
本実施例のRAM41cの遊技RAM領域は、遊技プログラムに基づく制御を行う際にも非遊技プログラムに基づく制御を行う際にも用いられることのない未使用領域3を含み、第1の初期化条件の成立時にも、第2の初期化条件の成立時にも、未使用領域3を初期化するので、未使用領域3に不正なデータが記憶されることを防止できる。
尚、本実施例では、第1の初期化条件の成立時にも第2の初期化条件の成立時にも未使用領域3を初期化する構成であるが、少なくとも第1の初期化条件の成立時、第2の初期化条件の成立時のいずれか一方の条件の成立時に未使用領域3を初期化する構成であれば、未使用領域3に不正なデータが記憶されることを防止できる。また、第1の初期化条件が複数の条件を含む構成であれば、そのうち少なくとも一の条件の成立時に未使用領域3を初期化する構成であれば、未使用領域3に不正なデータが記憶されることを防止できる。第2の初期化条件が複数の条件を含む構成であっても同様である。
本実施例のメイン制御部41は、遊技プログラムのワークとして用いられ、遊技プログラムが用いるデータを記憶する遊技RAM領域と、非遊技プログラムのワークとして用いられ、非遊技プログラムが用いるデータを記憶する非遊技RAM領域と、を含むRAM41cを備えており、当該RAM41cは、バックアップ電源によりスロットマシン1への電力供給が停止されてもRAM41cに記憶されたデータを所定期間保持可能な構成であって、メイン制御部41は、スロットマシン1への電力供給が開始したときに、初期設定処理を開始し、バックアップ電源により保持されているRAM41cに記憶されているデータに基づいてRAMの記憶内容が正常か否かを判定し、正常と判定された場合に、RAM41cに記憶されているデータに基づいて制御を再開する。
このような構成において、スロットマシン1への電力供給が開始したときに、RAM41cの遊技RAM領域と非遊技RAM領域の双方の領域に記憶されたデータに基づいて、RAMの記憶内容が正常か否かを判定する際に、RAM41cに記憶されているデータ基づいて制御を再開する際の負荷が過大となる。
これに対して、本実施例のメイン制御部41は、スロットマシン1への電力供給が開始したときに、初期設定処理を開始し、バックアップ電源により保持されているRAM41cのうち遊技RAM領域のRAMパリティ、遊技RAM領域に記憶されている破壊診断用データに基づいてRAMの記憶内容が正常か否かを判定し、正常と判定された場合に、遊技RAM領域に記憶されているデータ及び非遊技RAM領域に記憶されているデータに基づいて制御を再開始するようになっており、非遊技RAM領域に記憶されており、遊技の進行に支障のない非遊技用のデータが正常か否かの判定を省くことで、遊技の進行が正常に行えることを担保しつつ、制御を再開する際の負荷を軽減することができる。
本実施例のRAM41cの遊技RAM領域は、遊技プログラムに基づく制御を行う際にも、非遊技プログラムに基づく制御を行う際にも、用いられることのない未使用領域3を含んでおり、メイン制御部41は、スロットマシン1への電力供給が開始されたときに、初期設定処理を実行し、初期設定処理において、未使用領域3を含む遊技RAM領域のRAMパリティを算出し、算出されたRAMパリティに基づいて遊技RAM領域の記憶内容が正常か否かを判定するので、未使用領域3に不正なデータが記憶されることを防止できる。
本実施例のメイン制御部41は、スロットマシン1への電力供給が開始されたときに、初期設定処理を実行し、初期設定処理において、RAM41cの記憶内容が破壊されているか否かを判定し、RAM41cの記憶内容が破壊されていると判定した場合に、RAM異常フラグを設定してエラー処理に制御し、その後、自動的に復帰することがなくエラー状態を維持する一方、設定キースイッチ36がONの状態で、スロットマシン1への電力供給が開始されたときに、設定変更処理に制御し、遊技領域初期化処理を実行して遊技RAM領域を初期化するとともに、非遊技領域初期化処理を実行して非遊技RAM領域を初期化する、すなわちエラー状態が解除されることに伴い遊技RAM領域と非遊技RAM領域の双方を初期化するので、遊技RAM領域及び非遊技RAM領域のいずれかに異常が生じたまま遊技が進行してしまうことを防止できる。
本実施例のメイン制御部41は、スロットマシン1への電力供給が開始されたときに、初期設定処理において、RAM41cの記憶内容が破壊されていると判定した場合に、RAM異常フラグを設定してエラー処理に制御し、その後、設定キースイッチ36がONの状態で、スロットマシン1への電力供給が開始され、設定変更処理が実行されることで、エラー状態が解除されることに伴い遊技RAM領域と非遊技RAM領域の双方を初期化する構成であるが、メイン制御部41は、スロットマシン1への電力供給が開始されたときに、初期設定処理において、RAM41cの記憶内容が破壊されていると判定した場合に、遊技RAM領域と非遊技RAM領域の双方を初期化し、エラー処理に制御するものであっても良い。このような構成では、エラー処理に制御する際に、遊技RAM領域と非遊技RAM領域の双方を初期化するので、本実施例と同様に、遊技RAM領域及び非遊技RAM領域のいずれかに異常が生じたまま遊技が進行してしまうことを防止できる。また、RAM41cの記憶内容が破壊されている判定されたとき、その後設定変更処理が実行されるときの双方で、遊技RAM領域と非遊技RAM領域の双方を初期化する構成でも良く、このような構成であっても、遊技RAM領域及び非遊技RAM領域のいずれかに異常が生じたまま遊技が進行してしまうことを防止できる。
本実施例のメイン制御部41は、スロットマシン1への電力供給が停止され、電断検出回路48により電源電圧の低下が検出されたときに電断処理を実行し、電断処理において、RAM41cへのアクセスを禁止することで、遊技RAM領域及び非遊技RAM領域の双方へのアクセスを禁止するので、次回起動時にデータが破壊されているか否かの判定対象外となる非遊技RAM領域を利用して不正なデータが記憶されることを防止できる。
本実施例のスロットマシンでは、メイン制御部41により、内部抽選結果に応じて遊技者にとって有利となる停止順を報知するナビ報知を実行可能な報知期間となるアシストタイム(以下、ATという)に制御可能となっている。
メイン制御部41は、ATに制御している場合には、遊技状態に応じた報知対象役に当選することにより、ナビ報知を実行するとともに、サブ制御部91に対して第1の内部当選コマンド、第2の内部当選コマンド、押し順コマンドを送信することで、サブ制御部91によるナビ演出を実行させる。また、本実施例においてメイン制御部41は、ATに制御していない通常状態であっても、一定の条件を満たすことにより、ナビ報知を実行し、ナビ演出を実行させることが可能である。本実施例のナビ報知は、遊技補助表示器12の点灯態様を変化させることにより遊技者にとって有利な停止順を識別可能に報知する。
報知対象役とは、該報知対象役に対応する複数種類の内部抽選結果に応じて遊技者にとって有利となる停止順が異なることにより、報知対象役に対応する複数種類の内部抽選結果のうちいずれの種類の内部抽選結果となったかにより遊技者にとって有利な停止順が変化する内部抽選の対象役である。遊技者にとって有利な停止順とは、例えば、遊技者にとって有利な遊技状態に移行させる停止順、遊技者にとって有利な遊技状態の終了を回避させる停止順、有利な役を入賞させる停止順などである。尚、本実施例では、遊技者にとって有利な停止順が変化する構成であるが、遊技者にとって有利な停止タイミング、遊技者にとって有利な停止順と停止タイミングの組合せが変化するものでも良い。
本実施例のナビ演出は、ナビ報知により報知された遊技者にとって有利な停止順を、液晶表示器51からのナビ画像の表示と、スピーカ53、54からのナビ音声の出力とによって報知する。例えば、左中右の停止順を報知する場合には、「123」(左リールが第1停止、中リールが第2停止、右リールが第3停止であることを示す)といったストップスイッチ8L、8C、8Rの停止順を示す停止順画像を表示する。また、ナビ音声として、例えば、「左中右!」(左リールが第1停止、中リールが第2停止、右リールが第3停止であることを示す)といったストップスイッチの停止順を示す音声を出力する。また、左リールを第1停止とする停止順を報知する場合には、「1‐‐」(左リールが第1停止であることを示す)といったストップスイッチ8L、8C、8Rの停止順を示す停止順画像を表示する。また、ナビ音声としては、例えば、「左!」(左リールが第1停止であることを示す)(左リールが第1停止であることを示す)といったストップスイッチの停止順を示す音声を出力する。尚、ナビ演出の態様は、このような態様に限らず、遊技者が当選状況に応じて区別可能な態様であればどのようなものであっても良い。また、ナビ演出は、液晶表示器51、スピーカ53、54を用いたものに限らず、演出効果LED52a〜c、リールLED55等を用いて実行するものであっても良い。
以上のように、ナビ報知及びナビ演出では、遊技者にとって有利となる停止順が識別可能に報知される。このため、遊技者は、ナビ演出に従った停止順で停止操作を行うことにより、例えば、意図的に遊技者にとって有利な遊技状態に移行させること、遊技者にとって有利な遊技状態の終了を回避させること、意図的に有利な役を入賞させることができる。
本実施例のメイン制御部41は、内部抽選結果を特定可能な内部当選コマンドとして、内部抽選結果として特別役の当選状況を特定可能な第1の内部当選コマンド及び一般役の当選状況を特定可能な第2の内部当選コマンドを内部当選コマンド設定処理において設定し、当該コマンドをサブ制御部91に対して送信可能である。内部当選コマンド設定処理では、ATに制御されているか否かに関わらず、内部抽選結果が報知対象役となったときに、報知対象役が当選した旨は特定できるが、遊技者にとって有利な停止順を特定することができないように、一般役に係る第2の内部当選コマンドを設定するようになっている。このため、メイン制御部41側でATに制御しているか否かに関わらず、第2の内部当選コマンドから内部抽選結果に応じた遊技者にとって有利な停止順が特定されることなく、ATに制御されているか否かに関わらず、共通の第2の内部当選コマンドを送信するので、第2の内部当選コマンドの送信に係る処理を簡素化できるとともに、サブ制御部91側に不正がなされても、ATに制御されていない状態で遊技者にとって有利な停止順がナビ演出により報知されてしまうことを防止できる。
尚、本実施例では、メイン制御部41は、内部当選により当選した報知対象役に応じて遊技者にとって有利なリール2L、2C、2Rの停止順をナビ報知により報知する構成であるが、メイン制御部41は、ナビ報知により、複数の異なる操作タイミングのうちのいずれかの操作タイミングで操作する操作態様、複数の操作順のうちのいずれかの操作順で操作する操作態様、これらの組合せによる操作態様を、ナビ報知により報知する構成であっても良く、このような構成においても、メイン制御部41は、メイン制御部41側でATに制御しているか否かに関わらず、報知対象役が当選した旨は特定できるが、遊技者にとって有利な操作態様を特定することができないように第2の内部当選コマンドを設定することで、第2の内部当選コマンドから内部抽選結果に応じた遊技者にとって有利な操作態様がサブ制御部91側で特定されることがない。
また、本実施例では、メイン制御部41がナビ報知を実行する報知対象役として、第1の報知対象役と、第2の報知対象役とを含み、メイン制御部41は、内部当選コマンド設定処理において、内部抽選結果が報知対象役となったときに、当該報知対象役が第1の報知対象役であるか第2の報知対象役であるかを特定できるように第2の内部当選コマンドを設定して、サブ制御部91に対して送信するので、内部抽選結果が報知対象役となったときに、サブ制御部91側で報知対象役が第1の報知対象役であるか第2の報知対象役であるかを特定でき、サブ制御部91は、報知対象役の種類に応じて異なる演出を行うことも可能となる。
また、本実施例のメイン制御部41は、ATに制御しており、ナビ報知が実行される状態において、内部抽選結果が報知対象役となったときに、遊技者にとって有利な停止順を特定できる押し順コマンドを設定する押し順コマンド設定処理を実行し、設定した押し順コマンドをサブ制御部91に対して送信するので、ナビ報知が実行される状態においてサブ制御部91側で遊技者にとって有利な停止順を報知するナビ演出を行うことができる。
また、本実施例では、メイン制御部41がナビ報知を実行する報知対象役として、第1の報知対象役と第2の報知対象役とを含み、メイン制御部41は、押し順コマンド設定処理において、ナビ報知が実行される状態で内部抽選結果が第1の報知対象役となったときにも、第2の報知対象役となったときにも、すなわちナビ報知が実行される状態において内部抽選にて当選した報知対象役が異なる種類であっても、遊技者にとって有利な停止順が共通の場合に、該遊技者にとって有利な停止順を特定できる共通のナビ番号を含む押し順コマンドを設定するので、押し順コマンドの種類を削減することができる。
また、本実施例のメイン制御部41は、押し順コマンド設定処理において、ナビ報知が実行される状態では、内部抽選結果が報知対象役となったときに、遊技者にとって有利な停止順を特定できる押し順コマンドを設定する一方で、ナビ報知が実行される状態以外の状態では、内部抽選結果が報知対象役となったときに、遊技者にとって有利な停止順を特定できないが標準押し順(例えば、左第1停止)を特定できる押し順コマンドを設定するので、ナビ報知が実行される状態であるか否かに関わらず、内部抽選結果が報知対象役となったときに、押し順コマンドを設定する処理を共通化することができる。
また、本実施例のメイン制御部41は、ストップスイッチ8L、8C、8Rの操作が行われる毎に該当するリール2L、2C、2Rを段階的に停止させる構成であり、遊技者にとって有利な停止順は、全てのストップスイッチ8L、8C、8Rの操作、すなわち第3停止の操作が完了するよりも前に確定するようになっており、メイン制御部41は、押し順コマンド設定処理において、ナビ報知が実行される状態以外の状態において内部抽選結果が報知対象役となったときに、遊技者にとって有利な停止順が確定した段階、すなわち第1停止、第2停止の操作が行われたとき以降に、内部当選結果に応じた遊技者にとって有利な停止順を特定できる押し順コマンドを設定して送信するので、サブ制御部91に不正が施されても遊技者にとって有利な停止順が特定されることを防止しつつ、内部抽選結果が報知対象役となったときにサブ制御部91側で遊技者にとって有利な停止順で操作されたか否かに応じた演出を行うことができる。
尚、本実施例では、メイン制御部41は、押し順コマンド設定処理において、ナビ報知が実行される状態以外の状態において、報知対象役が当選した場合に、リール2L、2C、2Rの停止操作が行われて停止する役が確定したと判定されたときに、遊技者にとって有利な停止順を特定可能な押し順コマンドを設定し、当該押し順コマンドをサブ制御部91に対して送信する構成であるが、リール2L、2C、2Rの停止操作が行われて停止する役が確定した後に、遊技者にとって有利な停止順を特定可能なコマンドは、押し順コマンドとは別のコマンドでもあっても良く、例えば、内部抽選にて当選した報知対象役の種類を特定可能な別のコマンドを送信することで、当選した報知対象役の種類に基づいて遊技者にとって有利な停止順を特定可能とする構成であっても良いし、遊技者にとって有利な停止順を特定可能な別途コマンドを設ける構成であっても良い。このような構成においては、メイン制御部41は、内部抽選が行われたときにのみ、押し順コマンド設定処理を実行し、その後、停止する役が確定したときに、遊技者にとって有利な停止順を特定可能なコマンドを設定する処理を行う構成とすることで、メイン制御部41による押し順コマンドの送信に係る負荷を削減することができる。
また、本実施例では、メイン制御部41は、内部抽選が行われたとき、各リール2L、2C、2Rの停止操作が行われたときに、押し順コマンド設定処理を実行する構成であり、停止する役が確定した後には、押し順コマンド設定処理が行われる毎に、遊技者にとって有利な停止順を特定可能な押し順コマンドをサブ制御部91に対して送信する構成であるが、停止する役が確定した後に遊技者にとって有利な停止順を特定可能な押し順コマンドは、少なくとも停止する役が確定したときに一度送信される構成であれば良く、停止する役が確定して、遊技者にとって有利な停止順を特定可能な押し順コマンドを送信した後には、押し順コマンド設定処理を実行しない構成であっても良い。このような構成とすることで、メイン制御部41による押し順コマンドの送信に係る負荷を削減することができる。
また、本実施例では、メイン制御部41は、ナビ報知を行う状態において、内部抽選が行われたとき、各リール2L、2C、2Rの停止操作が行われたときに、押し順コマンド設定処理を実行する構成であるが、ナビ報知を行う状態である場合には、内部抽選が行われたときにのみ、押し順コマンド設定処理を実行する構成であっても良い。このような構成とすることで、ナビ報知を行う状態である場合に、メイン制御部41による押し順コマンドの送信に係る負荷を削減することができる。
本実施例のメイン制御部41は、スタート操作が行われたときに、内部抽選を行い、内部抽選結果に応じて内部抽選結果毎に各々異なる当選番号をRAM41cに設定し、設定された当選番号に応じて内部当選フラグの設定、ナビ報知、コマンド作成、リール2L、2C、2Rの停止制御等を行うとともに、内部抽選結果を特定可能な内部当選コマンドとして、特別役の当選状況を特定可能な第1の内部当選コマンド及び一般役の当選状況を特定可能な第2の内部当選コマンドを内部当選コマンド設定処理において設定し、設定された当該コマンドをサブ制御部91に対して送信する構成であり、内部当選結果として報知対象役が当選したときの当選番号として、所定の数値範囲からなる連続する数値が割り当てられており、内部当選コマンド設定処理では、ATに制御されていてナビ報知が実行される状態以外の状態において、RAM41cに設定された当選番号が、当該所定の数値範囲であるときに、報知対象役となった旨は特定できるが遊技者にとって有利な停止順を特定できない第2の内部当選コマンドを設定し、設定された第2の内部当選コマンドをサブ制御部91に対して送信するようになっている。これにより、メイン制御部41側でATに制御しているか否かに関わらず、第2の内部当選コマンドから内部抽選結果に応じた遊技者にとって有利な停止順が特定されることはないため、サブ制御部91側に不正がなされてもATに制御されていない状態で遊技者にとって有利な停止順がナビ演出により報知されてしまうことを防止できる。
また、内部抽選結果が報知対象役となったときに設定される当選番号として、所定の数値範囲からなる連続する数値を割り当て、メイン制御部41が、内部抽選結果が報知対象役であるか否かを、所定制御を行う際に用いられる当選番号が報知対象役に対して割り当てられた所定の数値範囲内にあるか否かにより判定することで、第2の内部当選コマンドを送信する際の処理を簡素化できる。
また、本実施例では、メイン制御部41がナビ報知を実行する報知対象役として、第1の報知対象役と、第1の報知対象役と、を含み、内部抽選結果が第1の報知対象役となったときの当選番号として、第1の数値範囲の連続する数値を割り当て、内部抽選結果が第2の報知対象役となったときの当選番号として、第2の数値範囲の連続する数値を割り当て、メイン制御部41が、内部抽選結果が報知対象役となったときに、当選番号が第1の数値範囲であるか、第2の数値範囲であるかに応じて、内部抽選結果が第1の報知対象役であるか、第2の報知対象役であるかを判定することで、内部当選コマンド設定処理において第2の内部当選コマンドを設定する処理を簡素化できる。
また、本実施例のメイン制御部41が、第1の状態及び第2の状態を含む複数の遊技状態に制御することが可能であり、各遊技状態で内部抽選において決定される報知対象役の種類が異なる構成とした場合に、遊技状態が第1の状態において内部抽選結果が報知対象役となったときの当選番号、及び遊技状態が第2の状態において内部抽選結果が報知対象役となったときの当選番号が、いずれも共通の数値範囲に割り当てられてられることで、内部当選コマンド設定処理において、第1の状態においても第2の状態においても内部抽選結果が報知対象役であるか否かを判定するための処理を共通化できる。
また、本実施例のメイン制御部41は、内部当選コマンド設定処理において、ATに制御していない状態において内部抽選結果が、報知対象役以外の役またははずれであるときには、該内部抽選結果に応じた当選番号を含む第2の内部当選コマンドを設定し、内部抽選結果が報知対象役であるときには、第1の数値範囲に含まれる一の当選番号を含み、内部抽選結果が報知対象役であるときには、第2の数値範囲に含まれる一の当選番号を含む第2の内部当選コマンドを設定することで、ATに制御していない状態において、内部抽選結果が、報知対象役であっても報知対象役以外の役またははずれであっても、内部抽選結果に対応する当選番号を含む第2の内部当選コマンドを送信することが可能となるので、内部抽選結果が報知対象役であるか否かかかわらず、第2の内部当選コマンドを作成して送信する処理を共通化することができる。
尚、ATに制御されている状態でないときには、内部抽選結果が報知対象役となったときに、報知対象役が当選した旨は特定できるが、遊技者にとって有利な停止順を特定することができないように一般役に係る第2の内部当選コマンドを設定する一方で、ATに制御されている状態であるときには、内部抽選結果が報知対象役となったときに、当選した報知対象役の種類に応じた当選番号を含む第2の内部当選コマンドを設定することで、ATに制御されている状態であるときには、当選した報知対象役の種類を特定可能な第2の内部当選コマンドをサブ制御部91に対して送信する構成であっても良い。このような構成では、ATに制御されている状態においては、第2の内部当選コマンドに含まれる当選番号から、報知対象役の種類に応じた遊技者にとって有利な停止順を特定できるので、サブ制御部91側で遊技者にとって有利な停止順をナビ演出により報知することができる。また、このような構成では、ATに制御されている状態においては、第2の内部当選コマンドに含まれる当選番号から内部抽選における抽選対象役の当選番号を特定できるので、内部当選した抽選対象役に含まれる入賞役の種類に応じた演出を行うことができる。
また、このような構成では、メイン制御部41は、押し順コマンド設定処理を実行せず、押し順コマンドを送信しない構成としても良く、このような構成とすることで、ATに制御されている状態においては、第2の内部当選コマンドに含まれる当選番号から、報知対象役の種類に応じた遊技者にとって有利な停止順を特定でき、サブ制御部91側で遊技者にとって有利な停止順をナビ演出により報知することができるとともに、メイン制御部41による押し順コマンドの送信に係る負荷を削減することができる。
尚、第1の報知対象役の当選番号と第2の報知対象役の当選番号とは、それぞれが連続する数値範囲に設定されている構成であれば、第1の報知対象役の当選番号が設定される第1の数値範囲と第2の報知対象役の当選番号が設定される第2の数値範囲とが連続する構成であっても良い。このような構成であっても、メイン制御部41は、内部抽選結果が報知対象役であるか否かを、所定制御を行う際に用いられる当選番号が報知対象役に対して割り当てられた所定の数値範囲内にあるか否かにより判定できるため、第2の内部当選コマンドを送信する際の処理を簡素化できる。
また、内部当選コマンド送信処理において、同じ送信用当選番号が設定される報知対象役のグループは、少なくとも、ATに制御されているか否かに関わらず、内部抽選結果が報知対象役となったときに、報知対象役が当選した旨は特定できるが、遊技者にとって有利な停止順を特定することができないようにすれば良く、一の遊技状態において抽選対象となる同じ種類の報知対象役のグループについては、一のグループ毎に遊技者にとって有利な役が一づつ含まれるように複数のグループに分けて、分けられたグループ毎に異なる送信用当選番号を設定する構成としても良い。これにより、サブ制御部91側で複数のグループのうちいずれかのグループに属する報知対象役が当選したかを特定し、特定したグループに応じた演出を実行することが可能となる。
次に、本実施例のサブ制御部91が実行するエラー報知演出について説明する。
本実施例のメイン制御部41は、例えば、上述のようにリール制御処理において回転エラー、メダル投入エラー、メダル払出エラーのいずれかを検出した場合等の各種異常(メダルの投入異常、メダルセレクタ29内の異物検知、リール回転異常、メダルの払出異常、払出口付近の異物検知、RAM異常、設定値異常、ホッパータンク34aの空、オーバーフロータンク35の満タン検知、異常入賞等)を検知した場合に、エラー処理を実行して検知した異常の種類を特定可能なエラーコマンドをサブ制御部91に対して送信する。エラーコマンドは、図12に示すように、発生している異常の種類を特定可能なエラーコードE1〜E8を含んでいる。E1は、オーバーフローエラーであり、オーバーフロータンク35の満タン状態が検知されたことを示し、E2は、メダル供給エラーであり、ホッパータンク34aの空状態が検知されたことを示し、E3は、メダル詰りエラーであり、メダル払出口9付近の異物が検知されたことを示し、E4は、メダル払出エラーであり、リール回転処理等を行っており、本来払出が行われることがないときに、払出が行われたことが検出されたことを示し、E5は、メダル投入エラーであり、投入メダルセンサ31によるメダルの異常な通過が検知されたことを示し、E6は、回転エラーであり、リール回転の異常が検知されたことを示し、E7は、異常入賞エラーであり、内部抽選により入賞が許容されていない役の入賞が検知されたことを示し、E8は、RAMエラーであり、起動時にRAM41cのデータが正常でないことが検知されたことを示す。
また、ドア開放検出スイッチ25の出力状態に変化が生じた場合には、ドアコマンドを、起動時に設定変更状態に移行する場合には、設定コマンドを、1ゲーム終了後、賭数が設定されずに終了推定時間(本実施例では60秒)経過して待機状態に移行するときには、待機コマンドを、サブ制御部91に対して送信する。
これに対して、サブ制御部91は、エラーコマンドを受信することで当該エラーコマンドに基づいて特定されるエラーコードを報知するエラー報知演出を実行し、ドアコマンドを受信することで、前面扉1bが開放状態であることが特定される場合には、前面扉1bが開放されている旨を報知するドア開放報知演出を実行し、設定コマンドを受信することで、設定変更状態である旨を示す設定変更中報知演出を実行し、待機コマンドを受信することで、待機状態である旨を示す待機演出を実行する。
図13(a)に示すように、エラー報知演出では、液晶表示器51の透過領域51bが、画像等の表示を禁止する演出禁止領域として設定されており、液晶表示器51の透過領域51bを除く表示領域51aの所定領域(本実施例では、所定の枠A内)に、エラーコマンドに基づいて特定されるエラーコード及び当該エラーの内容を示す文字や画像及びキャラクタの画像等を、エラーの種類に関わらず共通の領域に表示させる。すなわち、メイン制御部41においてエラー状態に制御されおり、エラー報知演出を実行している期間においては、液晶表示器51の透過領域51bすなわち入賞ラインLN及び無効ラインLM1〜4が通るリール2L、2C、2Rの図柄に対応する領域と重なる表示領域51aに、画像等を表示させることがなく、常に透過率が100%の状態とすることで、透過領域51bを通してのリール2L、2C、2Rの視認性が低下してしまうことがないようになっている。
また、エラー報知演出では、遊技中前面演出等で表示しているクレジット数等の遊技の履歴に関する遊技履歴情報を、遊技者から視認不可能にするとともに、図12に示すように、演出効果LED52a〜cをエラーが発生している旨を示す所定の点灯態様で点灯させるとともに、スピーカ53、54からエラーが発生している旨を示す所定の音声を、液晶表示器51に表示させるキャラクタの画像に対応する出力態様で出力させることで、液晶表示器51、演出効果LED52a〜c、スピーカ53、54を用いて発生しているエラーの種類を報知するようになっている。
また、図13(a)に示すように、エラー報知演出では、液晶表示器51に、エラーコマンドに基づいて特定されるエラーコード及び当該エラーの内容を示す文字の画像とともに、エラー報知演出を実行する前の演出パターンの種類に応じた所定のキャラクタの画像を選択して表示させるようになっており、例えば、エラー報知演出を実行する前において、キャラクタA(例えば、図13(b)参照)の画像を用いて演出を行う演出パターンに基づいて演出を実行しているときに、エラーコマンドを受信したことに基づいてエラー報知演出を実行する場合には、エラー報知演出では、エラー報知演出を実行する前の演出パターンに応じたキャラクタ、すなわちキャラクタAの画像を選択してエラーコード等とともに表示させ、例えば、エラー報知演出を実行する前において、遊技者等がキャラクタAとは異なることを認識可能なキャラクタB(例えば、図13(c)参照)の画像を用いて演出を行う演出パターンに基づいて演出を実行しているときに、エラーコマンドを受信したことに基づいてエラー報知演出を実行する場合には、エラー報知演出では、エラー報知演出を実行する前の演出パターンに応じたキャラクタ、すなわちキャラクタBの画像を選択してエラーコード等とともに表示させることで、液晶表示器51の表示態様を複数の表示態様から選択した表示態様で表示させて、エラーコードに対応するエラーが発生していることを複数の報知態様のうちのいずれかで報知するようになっている。
これにより、サブ制御部91は、メイン制御部41においてエラー状態に制御されおり、エラー報知演出を実行している期間において、液晶表示器51の透過領域51bすなわち入賞ラインLN及び無効ラインLM1〜4が通るリール2L、2C、2Rの図柄に対応する領域と重なる表示領域51aに、画像等を表示することがないので、上述のリール前面演出の実行中において、エラーが生じた場合に、液晶表示器51での演出態様を前面演出からエラー報知演出に切り替えることにより、透過領域51bのうち無効ラインLM1〜4が通るリール2L、2C、2Rの図柄に対応する領域を含む全ての領域を、透過率を100%する通常時の視認性にして、エラーコマンドにより特定される異常の発生を報知する。
また、エラーの種類に関わらず共通の制御、すなわち共通の演出禁止領域を設定して、共通の所定領域にエラーコード等を表示させることにより、エラーを報知するようになっている。
図12に示すように、ドア開放報知演出では、演出効果LED52a〜cを前面扉1bが開放状態である旨を示す所定の点灯態様で点灯させるとともに、スピーカ53、54から前面扉1bが開放状態である旨を示す所定の音声を出力させることで、演出効果LED52a〜c、スピーカ53、54を用いて発生しているエラーの種類を報知するようになっている。尚、ドア開放報知演出では、ドアコマンドを受信したことに基づいて、液晶表示器51の表示態様を変化させることがなく、ドアコマンドを受信する前に行っていた表示態様を継続するようになっている。
次いで、図14に示すように、設定変更中報知演出では、エラー報知演出と同様に、液晶表示器51の透過領域51bが、画像等の表示を禁止する演出禁止領域として設定されており、液晶表示器51の透過領域51bを除く表示領域51aの所定領域(本実施例では、所定の枠B内)に、設定変更状態である旨のメッセージを表示させて、設定変更状態に制御されている旨を報知する。また、設定変更中報知では、エラー報知演出と同様に、クレジット数等の遊技の履歴に関する遊技履歴情報を、遊技者から視認不可能にする。
これにより、メイン制御部41において設定変更状態に制御されており、設定変更中演出を実行している期間において、液晶表示器51の透過領域51bすなわち入賞ラインLN及び無効ラインLM1〜LM4が通るリール2L、2C、2Rの図柄に対応する領域に重ねて画像等が表示されることがなく、透過領域51bを通してのリール2L、2C、2Rの視認性が低下してしまうことがないようになっている。
また、設定変更中報知演出では、エラー報知演出のように液晶表示器51を複数の表示態様で表示させることはなく、設定変更中報知演出を実行する前の演出パターンの種類に関わらず、設定変更状態である旨のメッセージのみを表示さて報知する一の報知態様で、設定変更状態に制御されている旨を報知するようになっている。
このように、本実施例のサブ制御部91は、遊技者が遊技を行っている状況で発生する可能性が高い所定事象として、エラーの発生が検出されたときに、該所定事象が発生した旨を報知する第1報知手段(エラー報知演出)を実行可能であり、遊技者が遊技を行っていない状況で発生する可能性が高い特定事象として、設定変更状態の制御が行われるときに、該特定事象が発生した旨を報知する第2報知手段(設定変更中報知演出)を実行可能であって、第1報知手段では、所定事象が発生したときに複数の報知態様(例えば、キャラクタAを用いた表示態様、キャラクタBを用いた表示態様)のうちのいずれかの報知態様で該所定事象が発生した旨を報知する一方で、第2報知手段では、特定事象が発生したときに一の報知態様(例えば、メッセージのみを表示させる表示態様)で該特定事象が発生した旨を報知するので、所定事象が発生した場合には、複数の報知態様により報知されるため、興趣を向上させることができ、特定事象が発生した場合には、一の報知態様のみにより報知されるため、報知に必要となるデータの容量が過大に増えることを防止できる。
尚、本実施例では、特定事象として、遊技者が遊技を行っている状況で発生することがない設定変更状態の制御を適用する構成であるが、特定事象として、所定事象よりも遊技者が遊技を行っている状況で発生する可能性が低い事象を適用する構成であれば良く、特定事象として、遊技者が遊技を行っている状況で発生する可能性が相対的に低いエラーの一部、例えば設定変更エラー、RAM異常エラー等を適用する構成であっても良く、このような構成においても、遊技者の関与度合いが低い特定事象の報知態様を複数持たせないことで、報知に必要となるデータの容量が過大に増えることを防止できる。
また、本実施例では、第1報知手段としてのエラー報知演出では、当該エラー報知演出が実行される前に実行されていた演出パターンの種類に応じたキャラクタの画像を用いて報知を行う構成であるが、第1報知手段では、第1報知手段が実行される前に実行されていた演出パターンに応じて報知態様が異なる構成であれば良く、このような構成とすることで、第1報知手段が実行される前の演出に応じて報知態様が異なるため、興趣を向上させることができる。
本実施例のサブ制御部91が実行する待機演出には、待機状態であることを示す通常のデモンストレーション演出(以下、デモ演出と言う)と、デモ演出に比較してスロットマシン1での消費電力を小さく抑える省電力モードとが含まれ、サブ制御部91は、待機演出スイッチ57により予め待機演出の演出態様として省電力モードが選択されている場合には、メイン制御部41が待機状態に移行したときに待機演出として省電力モードを実行し、省電力モードが選択されていない場合には、通常のデモ演出を実行する。
図15(a)に示すように、デモ演出では、エラー報知演出と同様に、液晶表示器51の透過領域51bが、画像等の表示を禁止する演出禁止領域として設定されており、液晶表示器51の透過領域51bを除く表示領域51aの所定領域(本実施例では、所定の枠B内)に、デモ演出中である旨のメッセージを表示させて、設定変更状態に制御されている旨を報知する。また、デモ演出では、クレジット数等の遊技の履歴に関する遊技履歴情報のうちARTまたRBが終了してからのゲーム数を、遊技者から視認可能にする一方で他の履歴情報を視認不可能にする。尚、ARTまたRBが終了してからのゲーム数以外の履歴情報についても遊技者等から視認可能としても良く、表示可能な履歴情報の全てを遊技者等から視認可能とする構成であっても良いし、所定の優先度、例えば、それまで遊技を行っていた遊技者にとって有利な情報であること、その後に遊技を行う新たな遊技者にとって有利な情報であること、スロットマシン1が設置される店舗の店員等にとって管理や運営上有益な情報であること等に応じて履歴情報のうち所定の一部を遊技者等から視認可能とする構成であっても良い。
また、図12に示すように、デモ演出では、演出効果LED52a〜cをデモ演出中である旨を示す所定の点灯態様で点灯させることで、液晶表示器51、演出効果LED52a〜cを用いた演出を実行するようになっている。
図15(b)に示すように、省電力モードでは、エラー報知演出と同様に、液晶表示器51の透過領域51bが、画像等の表示を禁止する演出禁止領域として設定されており、液晶表示器51の透過領域51bを除く表示領域51aの所定領域(本実施例では、所定の枠B内)に、省電力モードである旨のメッセージを表示させて、設定変更状態に制御されている旨を報知する。また、設定変更中報知では、エラー報知演出と同様に、クレジット数等の遊技の履歴に関する情報を、遊技者から視認不可能にする。
また、図12に示すように、省電力モードでは、デモ演出の様に演出効果LED52a〜cを点灯させることがなく、液晶表示器51のみの最小限の演出装置を用いた演出を実行するようになっている。
このように、メイン制御部41において待機状態に制御されおり、待機演出としてデモ演出または省電力モードを実行している期間において、液晶表示器51の透過領域51bすなわち入賞ラインLN及び無効ラインLM1〜LM4が通るリール2L、2C、2Rの図柄に対応する領域と重ねて画像等を表示することがなく、透過領域51bを通してのリール2L、2C、2Rの視認性が低下してしまうことがないようになっている。
本実施例のサブ制御部91は、リール2L、2C、2Rの手前側(遊技者側)の位置に、遊技者側から各リール2L、2C、2Rが視認可能な透過領域51bを有する液晶表示器51を備えており、メイン制御部41からコマンドを受信したこと等に応じて当該透過領域51bに画像等を表示させることで、遊技者から視認可能なリール2L、2C、2Rの図柄領域と重なるリール2L、2C、2Rの前面領域で、遊技者側からのリール2L、2C、2Rの視認性を通常と異なる視認性に変化させる演出を実行することが可能な構成である。
このような構成では、透過領域51bのうち入賞が判定される入賞ラインLNが通らない各リールの図柄に対応する特定領域においては、リールの視認性を変化させる演出を実行することを許可する一方で、入賞ラインLNが通る各リールの図柄に対応する所定領域においては、当該演出を実行することを禁止することで、各リールの入賞ラインLN上の領域の視認性を確保しつつ、リール2L、2C、2Rの前面で演出を実行することが可能であるが、入賞ラインLN上の所定領域のみ視認性が確保されていても入賞ラインLN以外の所定領域の視認性が変化した状態のままだと、リール2L、2C、2Rの回転に関する異常等の事象が発生したときに、リール2L、2C、2Rの状況を把握することが困難となる。
これに対して、本実施例のメイン制御部41では、リールの回転エラー等の異常が生じた可能性のある特定事象が発生した場合に、当該特定事象が発生した旨を検知することが可能であり、サブ制御部91は、液晶表示器51の透過領域51bにおいて遊技者側からのリール2L、2C、2Rの視認性を変化させる演出を実行することが可能であって、遊技中である期間であり少なくとも1つのリール2L、2C、2Rが回転されている期間に、透過領域51bのうちの入賞が判定される入賞ラインLNが通らない各リールの図柄に対応する特定領域において、遊技者側からのリール2L、2C、2Rの視認性を通常よりも低下させるように視認性に変化させる演出を実行している状態で特定事象が発生した場合に、透過領域51bの特定領域を含む全ての領域の透過率を100%として通常の視認性で特定事象の発生を報知するので、遊技の進行に伴うリール2L、2C、2Rの回転中の期間においてリール2L、2C、2Rの視認性を変化させる演出を実行する場合には、透過領域51bのうち特定領域の視認性を変化させることで、所定領域におけるリール2L、2C、2Rの視認性を低下させることなく極力広い透過領域51bで視認性を変化させる演出を行える一方で、遊技の進行に伴うリール2L、2C、2Rの回転中の期間において、透過領域51bの特定領域を含む領域でリール2L、2C、2Rの視認性を変化させる演出が実行されている状況で特定事象が発生した場合には、透過領域51bの特定領域を含む全体の領域の視認性を確保して、リール2L、2C、2Rの状況を容易に把握させることができる。
尚、本実施例では、サブ制御部91は、液晶表示器51の透過領域51bにおいて遊技者側からのリール2L、2C、2Rの視認性を変化させる演出として、透過領域51bに透過率が100%未満の画像等を表示し、リール2L、2C、2Rの前面に画像等を重ねて表示することで、背面のリール2L、2C、2Rの視認性を変化させる構成であるが、リール2L、2C、2Rの視認性を変化させる演出では、透視窓3に対応するリール2L、2C、2Rの視認性を通常の視認性から特殊な視認性に変化させるものであれば良く、透視窓3に対応するリール2L、2C、2Rの前面側(遊技者側)に液晶表示器以外の透過表示装置、例えば、EL表示器、導光板等を配置し、当該透過表示器における、画像が表示されていない状態または透過した状態である通常の視認性を、画像が表示された状態または透過率を低下させた状態である特殊な視認性に変化させるもの、リール2L、2C、2Rの前面側に重畳させることが可能な可動物、いわゆる役物を設け、リール2L、2C、2Rの前面側に可動物が重畳しない通常の視認性を、可動物が重畳する特殊な視認性に変化させるもの、リール2L、2C、2Rの図柄等の背面側にバックライトを配置し、バックライトを通常色(白色等)、かつ通常照度で発光させている状態である通常の視認性を、バックライトの色彩、照度・輝度の変更、点灯/消灯により特殊な視認性に変化させるものなどであっても良い。
また、本実施例では、サブ制御部91により液晶表示器51の透過領域51bにおいて遊技者側からのリール2L、2C、2Rの視認性を変化させる演出を実行しているときに、特定事象として、メイン制御部41側においてリールの回転エラー等の異常が生じた可能性が検出された場合に、透過領域51bの特定領域を含む全ての領域の透過率を100%として通常の視認性で特定事象の発生を報知する構成であるが、特定事象は、メイン制御部41により検出されるものに限らず、サブ制御部91において検出されるもの、例えば、サブ制御部91に関する異常、サブ制御部91が制御する各演出装置に関する異常等であっても良く、これらの異常を液晶表示器51を用いて報知するときに、透過領域51bの特定領域を含む全ての領域の透過率を100%として通常の視認性で報知する構成であっても良い。このような構成では、ゲームに直接的に関係のないサブ制御部91側での異常が生じたときに、透過領域51bの全ての領域を通常の視認性とするので当該異常により、ゲームの進行が妨げられることを回避できる。
また、本実施例のサブ制御部91は、遊技中前面演出において、液晶表示器51の透過領域51bのうち入賞ラインLNが通る各リールの図柄に対応する所定領域で、リールの視認性を変化させる演出を実行することを、遊技中の全ての期間にわたって禁止する構成であるが、遊技中前面演出において、少なくともゲームの進行のために少なくとも1つのリールが回転されている状態の期間にわたって、入賞ラインLNが通る各リールの図柄に対応する所定領域での当該演出を実行することを禁止する構成であれば良く、遊技中の期間であっても、例えば、スタートスイッチ7が操作された後、リール2L、2C、2Rの回転開始が遅延される遅延期間中や、リールの回転が開始された後にリールを停止させるための停止操作が無効とされるフリーズ状態に制御される期間等、ゲームの進行に直接的に関わらない期間においては、透過領域51bのうち入賞ラインLNが通る各リールの図柄に対応する所定領域でリールの視認性を変化させる演出の実行を禁止せずに、実行可能とする構成であっても良い。このような構成であっても、少なくともゲームの進行のために少なくとも1つのリールが回転されている状態の期間において、入賞ラインLNが通る各リールの図柄に対応する所定領域での当該演出の実行を禁止することで、本実施例と同様に、特定事象が発生した場合に、透過領域51bの特定領域を含む全体の領域の視認性を確保して、リール2L、2C、2Rの状況を容易に把握させることができる。
本実施例のサブ制御部91は、リール2L、2C、2Rが回転していない期間においても、液晶表示器51の透過領域51bに画像等を表示させることで、リール2L、2C、2Rの前面に画像等を重ねて表示するリール前面演出として停止中前面演出を実行可能であり、リール2L、2C、2Rが回転されていない期間においてリール前面演出が実行されている状況で、特定事象として、メイン制御部41側においてメダル詰りエラー等の異常が生じた可能性が検出された場合にも、透過領域51bの特定領域を含む全ての領域の透過率を100%として通常の視認性で特定事象の発生を報知するので、リール2L、2C、2Rが回転されていない期間においてリール前面演出が実行されている状況で、特定事象が発生した場合において、特定事象が発生した旨を液晶表示器51により報知する場合であってもリール2L、2C、2Rの状況を容易に把握することができるとともに、リール2L、2C、2Rが回転中か否かに関わらず、リール前面演出が実行されている状況で特定事象が発生した場合に特定事象を報知する際の制御を共通化することができる。
本実施例のメイン制御部41は、ドア開放検出スイッチ25の出力状態に変化が生じた場合等、異常が生じた可能性のある事象のうち所定の事象が発生した場合に、当該出力状態の変化を特定可能なドアコマンド等をサブ制御部91に対して送信し、サブ制御部91は、遊技中であり少なくともゲームの進行に伴ってリール2L、2C、2Rの回転中の期間において、リール前面演出を実行している状況で、当該所定の事象が発生した場合には、液晶表示器51の表示態様を、当該所定の事象が発生したことに基づいて変化させることがない一方で、演出効果LED52a〜cを前面扉1bが開放状態である旨を示す所定の点灯態様で点灯させるとともに、スピーカ53、54から前面扉1bが開放状態である旨を示す所定の音声を出力させることで、リール前面演出を継続しつつ、所定事象の発生を報知するので、異常が生じた可能性のある事象の重要度に応じてリール2L、2C、2Rの全体の視認性を通常の視認性として報知を行うか、リール前面演出を継続したまま報知を行うか、を設定することができる。
本実施例のメイン制御部41は、1ゲーム終了後、賭数が設定されずに終了推定時間(本実施例では60秒)が経過することで待機条件が成立し、待機状態に移行するときに待機コマンドをサブ制御部91に対して送信し、サブ制御部91は、待機コマンドを受信することで、リール2L、2C、2Rの全体の視認性を通常の視認性として待機演出を実行するので、ゲームが行われていない状態においてリール2L、2C、2Rの状況を容易に把握することができる。
尚、本実施例のサブ制御部91は、待機演出としてデモ演出及び省電力モードを実行可能であり、待機演出スイッチ57の操作により予め選択されているデモ演出または省電力モードを、待機コマンドを受信したときに実行する構成であるが、サブ制御部91は、待機演出を複数種類備える構成であっても、1種類のみ備える構成であっても良い。また、このような構成において、少なくとも1種類の待機演出においてリール2L、2C、2Rの全体の視認性を通常の視認性とする構成であれば良い。
また、本実施例のメイン制御部41は、各リール2L、2C、2Rの中段にわたる1本の入賞ラインLNに、内部当選した所定の入賞役の図柄の組合せが停止しているか否かを判定し、当該入賞ラインLN上に当該入賞役の図柄の組合せが停止していることで、当該入賞役が入賞したと判定する構成であるが、入賞ラインが遊技状態、賭数等が異なることに応じて変化する構成であっても良い。このような構成であって、遊技状態に応じて入賞ラインが変化しても、遊技中の期間において、リール前面演出を実行している状況で特定事象が発生した場合には、リール2L、2C、2Rの全体の視認性を通常の視認性として特定事象の発生を報知する構成とすることで、リール2L、2C、2Rの状況を容易に把握することができるとともに、いずれの遊技状態等であっても、リール前面演出が実行されている状況で特定事象が発生した場合に特定事象を報知する際の制御を共通化することができる。
本実施例のメイン制御部41は、特定事象としてリール2L、2C、2Rの回転エラーが発生した場合に、その旨を検知可能であり、サブ制御部91は、特定事象として回転エラーが発生した場合には、透過領域51bの特定領域を含む全ての領域の透過率を100%として通常の視認性で回転エラーの発生を報知するので、特定事象として回転エラーが発生した場合に、リール2L、2C、2Rの状況を容易に把握することができる。
本実施例のサブ制御部91は、表示制御回路92に指示することで、CGROM99a〜cに記憶された画像データを用いて、画像等を表示させることが可能である。そして、サブ制御部91は、所定の条件が成立した場合に、CGROM基板99に搭載されたCGROM99a〜cの記憶内容を検査するための制御を実行し、液晶表示器51に検査の結果を表示させることが可能となっており、例えば、工場等でのスロットマシン1の組み立ての際に、CGROM基板99に適切なROMが組み付けられているか否かや、CGROM基板99上のROMに記憶されたデータが正常であるか否か等を、液晶表示器51の表示に基づいて検査できるようになっている。
以下に、サブ制御部91が実行するCGROM99a〜cの検査に関する制御について、図16〜図22に基づいて説明する。
図16に示すように、サブ制御部91のサブCPU91aには、ROM91b、RAM91c、I/Oポート91d、表示制御回路92、LED駆動回路93a〜e、チェック中LED59が接続されている。
表示制御回路92は、当該表示制御回路92が制御に用いるレジスタ、当該表示制御回路92が書き込み及び参照可能であるとともにサブ制御部91が参照可能なレジスタ、当該表示制御回路92が参照可能であるとともにサブCPU91aが書き込み可能なレジスタを含む、複数種類の制御用のレジスタを備えており、所定のレジスタにサブCPU91aにより命令が書き込まれることで、サブ制御部91による命令に従った制御を実行する。
特に、表示制御回路92は、所定のレジスタに、液晶表示器51に文字や記号等の情報を表示させるために最低限必要となる画像データを含む情報表示用データが書き込まれ、更に他の所定のレジスタに、表示制御回路92の作業用の記憶領域であるVRAMに情報表示用データを格納する旨の命令である読込命令1が書き込まれることで、所定のレジスタに書き込まれた情報表示用データをVRAMの所定領域に記憶させる制御を実行する。
また、所定のレジスタに、液晶表示器51に表示させる内容を指定する表示指示データが書き込まれ、更に他の所定のレジスタに、表示指示データの内容で液晶表示器51に画像等を表示させる旨の命令である表示命令1が書き込まれることで、VRAMに記憶されている情報表示用データを用いて、表示指示データの内容で液晶表示器51に画像等を表示させる制御を実行する。また、所定のレジスタに、液晶表示器51に表示させる内容を指定する表示指示データが書き込まれ、更に他の所定のレジスタに、表示指示データの内容で液晶表示器51に画像等を表示させる旨の命令である表示命令2が書き込まれることで、表示指示データの内容に応じてCGROM99a〜cに記憶された画像データを所定のレジスタに読み込み、当該画像データを用いて、表示指示データの内容で液晶表示器51に画像等を表示させる制御を実行する。また、所定のレジスタに、所定のCGROMについて検査用データを読み込む旨の命令である検査用データ読込命令が書き込まれることで、当該命令により指定されるCGROMの特定のアドレスに記憶された検査用データを読み込んで、当該検査用データを、サブ制御部91が参照可能な所定のレジスタに書き込む制御を実行する。また、所定のレジスタに、所定のCGROMについて予め定められた領域のチェックサムを計算する旨の命令であるチェックサム命令が書き込まれることで、当該命令により指定されるCGROMの特定の領域のチェックサムを演算して、その演算結果を、サブ制御部91が参照可能な所定のレジスタに書き込む制御を実行する。また、所定のレジスタに所定の命令が書き込まれ、所定の制御を実行して当該制御が完了したときには、当該命令に応じた所定の制御が完了した旨を特定可能なフラグをサブ制御部91が参照可能な所定のレジスタに書き込むようになっている。
CGROM99a〜cには、サブ制御部91が液晶表示器51に画像等を表示させるための画像データが予め記憶されており、画像データとして、液晶表示器51に表示させるキャラクタ、背景効果等を構成する図形データ、文字や記号のフォントデータ、映像のデータ、キャラクタや文字等を表示させる位置等の雛形となるテンプレートデータ等が記憶されており、CGROM99a〜cの記憶内容を表示制御回路92が参照可能となっている。また、各CGROM99a〜cにおいて後述するチェックサムの対象となる特定の領域のデータは、当該CGROM99a〜cが正しくCGROM基板99に接続されることで、チェックサムの演算結果がCGROM99a〜cの接続位置に対応した規則的な値となるように予め調整されている(本実施例では、CGROM99a〜cが、正しくCGROM基板99に接続されることで、各チェックサムの演算結果が、順に「1234」、「5678」、「9ABC」となるように調整されている)。尚、本実施例では、CGROM99a〜cの3つのCGROMを備える構成であるが、一のCGROMを備える構成や、3つより多いCGROMを備える構成であっても良い。
LED駆動回路93a〜eは、それぞれ独立した系統の回路であり、演出効果LED52a〜c、リールLED55、演出用LED56aがそれぞれ接続されている。一のLED駆動回路93a〜eに制御信号が入力されることで、対応する演出効果LED52a〜c、リールLED55、演出用LED56aが点灯制御されるようになっている。
チェック中LED59は、LED駆動回路を介することなく、サブ制御部91に接続されており、サブCPU91aにより直接点灯させることができるようになっている。
図17に示すように、サブ制御部91におけるROM91bの所定の領域には、各CGROM99a〜cおいて、上述の検査用データ読込命令に基づいて読み込まれる特定のアドレスに記憶されている検査用データと一致するデータが、照合用データとして予め記憶されている。本実施例では、ROM91bには、CGROM99aの照合用データとして、CGROM99aの所定アドレスから始まる16バイト分のデータ(00h、01h、02h、…、0fh)と、CGROM99bの照合用データとして、CGROM99bの所定アドレスから始まる16バイト分のデータ(10h、11h、12h、…、1fh)と、CGROM99cの所定アドレスから始まる16バイト分のデータ(20h、21h、22h、…、2fh)とが記憶されている。また、ROM91bの所定の領域には、液晶表示器51に文字や記号等の情報を表示させるために最低限必要となるデータ(フォントデータ等)が情報表示用データとして予め記憶されている。
サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御として、CGROM基板に所定のデータを含むROMが搭載されているか否かを表示する簡易チェックと、CGROM基板に搭載されたROMのデータ内容を表示する詳細チェックとを実行可能である。簡易チェック及び詳細チェックに関する制御内容について図18〜図21に基づいて説明する。
サブ制御部91は、スロットマシン1への電力供給が開始されることにより、演出制御基板90に電源が投入されてリセットの発生により起動すると、起動時設定を行う。また、演出制御基板90に電源が投入されることで、演出制御基板90上に設けられた電源LED60が点灯状態となり、サブ制御部91が作動している状態であることが示唆される。そして、サブ制御部91は、起動時設定を行った後、所定期間にわたりメイン制御部41からコマンドを受信するまで待機して、コマンドを受信した場合には、当該コマンドに応じた制御を開始する一方で、起動時設定を行った後の所定期間においてコマンドを受信しなかった場合には、簡易チェックの制御を開始する。
図18に示すように、サブ制御部91は、電源が投入されて起動した後、コマンドの受信があるか否かを判定しつつ待機し、いずれのコマンドも受信することなく所定期間が経過したと判定した場合に、簡易チェックの制御を開始して、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様を、簡易チェックの制御を実行している旨を示し、通常の起動時とは異なる態様で点灯させるチェック中態様1に設定する。チェック中態様1が設定されることで、LED駆動回路93a〜eは、夫々の回路に接続された演出効果LED52a〜c、リールLED55、演出用LED56aを、通常の演出時の点灯態様と異なることが視認可能な点灯態様(例えば、通常の起動時よりも速いまたは遅い周期で点滅する態様、異なる色で点灯する態様など)に制御し、サブ制御部91は、チェック中LED59を、簡易チェックの制御を実行していることが視認可能な点灯態様(例えば、赤色で常に点灯する点灯態様など)に制御する。これにより、サブ制御部91にて簡易チェックの制御が実行されている期間にわたり、これらのLEDがチェック中態様1に制御されることで、簡易チェックの制御が実行されている旨がスロットマシン1の外部から認識可能となる。
そして、サブ制御部91は、演出効果LED52a〜c等をチェック中態様1に設定した後、液晶表示器51に文字や記号等の情報を表示させるために最低限必要となる情報表示用データ(本実施例では、フォントデータ)を、ROM91bから読み出して、表示制御回路92の所定のレジスタに書き込む。その後、当該情報表示用データをレジスタから読み出す旨の命令を表示制御回路92のレジスタに書き込む。
これに対して、表示制御回路92は、サブ制御部91により当該命令が所定のレジスタに書き込まれることで、当該命令に従って、情報表示用データをレジスタから読み込み、表示制御回路92における作業用の記憶領域であるVRAMに、当該情報表示用データを記憶させる。また、情報表示用データをVRAMに記憶させた後、情報表示用データをVRAMに記憶させた旨を示す情報表示用データ格納フラグを所定のレジスタに設定する。
サブ制御部91は、表示制御回路92のレジスタに情報表示用データ格納フラグが設定されたことを確認した後、簡易チェックの実行中である旨を示す簡易チェック画面を表示させるための表示指示データを、表示制御回路92のレジスタに書き込み、その後、表示命令1を表示制御回路92の所定のレジスタに書き込む。
これに対して、表示制御回路92は、表示命令1が所定のレジスタに書き込まれることで、レジスタの表示指示データを参照して、表示指示データの内容で液晶表示器51に簡易チェック画面を表示するように画像等を表示させる制御を実行する。簡易チェック画面を表示させる制御では、表示指示データに基づいて表示させる画像等のレイアウト及び文字等を特定して、特定されたレイアウトに沿って、VRAMに記憶されている情報表示用データに従って文字等を表示させることで、図19(a)に示すように、液晶表示器51において画像等を表示可能な領域のうち透過領域51b以外の表示領域51a(本実施例では、リールの透視窓3の上側の表示領域51a)に、簡易チェック画面を表示させる。そして、図19(b)に示すように、簡易チェックの開始時の簡易チェック画面では、簡易チェックを実行中である旨を特定可能な文字列(本実施例では、「CGROM Check1」)と、検査対象であるCGROM99a〜cを示す文字列(本実施例では、「CGROM−a」、「CGROM−b」、「CGROM−c」)を、情報表示用データに含まれるフォントデータを用いて表示させる。
サブ制御部91は、表示命令1を表示制御回路92のレジスタに書き込み、簡易チェック画面を液晶表示器51に表示させた後、CGROM99a〜cのうち特定の一のCGROMを検査対象として指定して検査用データ読込命令(本実施例では、CGROM99a、b、cの順で指定する)を表示制御回路92の所定のレジスタに書き込む。これに対して、表示制御回路92は、検査用データ読込命令が所定のレジスタに書き込まれることで、当該命令により指定されるCGROMから検査用データを読み込んで、当該検査用データを所定のレジスタに書き込み、当該検査用データの書き込みを行った旨を示す検査用データ格納フラグを所定のレジスタに設定する。尚、表示制御回路92は、検査用データ読込命令により指定されたCGROMの検査用データが読み込めない場合(例えば、当該データの記憶領域が破壊されていたり、CGROMが適切にCGROM基板99に接続されておらず、データの読み出しが不可能な場合など)には、照合用データと一致しないデータ(例えば、全てが0または1のデータ等)を検査用データとして、レジスタに設定し、検査用データ格納フラグを所定のレジスタに設定する。
また、サブ制御部91は、検査用データ読込命令を所定のレジスタに書き込んだ後には、ROM91bの所定の領域を参照し、検査用データ読込命令にて指定したCGROMに対応する照合用データを読み出して、表示制御回路92の所定のレジスタに検査用データ格納フラグが設定された後に、表示制御回路92のレジストリから検査用データを読み込む。そして、照合用データと検査用データとを比較し、両者が一致する場合には、検査対象のCGROMが正常である旨を示す表示指示データを作成する一方で、両者が一致しない場合には、検査対象のCGROMに異常がある旨を示す表示指示データを作成する。そして、作成した表示指示データを表示制御回路92の所定のレジスタに書き込み、更に表示命令1を所定のレジスタに書き込む。その後、全てのCGROM99a〜cについて検査を行ったか否かを判定し、全てのCGROM99a〜cについて検査を行っていないと判定した場合には、残りのCGROMを検査対象として、上述の制御を繰り返し実行する。
これに対して、表示制御回路92は、検査用データ格納フラグを設定した後、表示命令1が所定のレジスタに書き込まれることで、レジスタの表示指示データを参照して、表示指示データの内容を液晶表示器51に表示させる制御、すなわちサブ制御部91による照合用データと検査用データとの比較結果に応じて簡易チェック画面を更新する。例えば、図19(c)に示すように、照合用データと検査用データとの比較結果が、CGROM99aについては、正常であり、CGROM99b、cについては異常であった場合には、チェック中画面におけるCGROM99aに対応する位置には、正常である旨を特定可能な文字列(本実施例では、「OK」)を表示させるとともに、CGROM99b、cに対応する位置には、異常である旨を特定可能な文字列(本実施例では、「NG」)を表示させる。また、異常である旨を特定可能な文字列を表示させる場合には、当該文字列の色及び当該文字列の周囲の背景の色を反転させて表示させるように簡易チェック画面を更新する。そして、他のCGROM99a〜cのいずれかが正常または異常である場合にも、同様にして、CGROM99a〜c毎に正常または異常に対応する文字列を表示させるように簡易チェック画面を更新することで、簡易チェックによるCGROM99a〜cの検査結果を表示する。
そして、サブ制御部91は、全てのCGROM99a〜cについて検査を行ったと判定した場合は、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59のチェック中態様1での制御を終了させる。その後、演出用スイッチ56が操作されるまで待機し、演出用スイッチ56が操作されたことが検出された場合に、詳細チェックを実行する要求があったと判定して、後述の詳細チェック処理を実行して、CGROM99a〜cについて詳細チェックを行う。
このように、サブ制御部91は、簡易チェックにおいて、ROM91bに記憶されている情報表示用データを用いて、表示制御回路92により液晶表示器51に、簡易チェック画面を表示させることができるようになっている。
また、簡易チェック画面では、ROM91bに記憶されている情報表示用データを用いて、CGROM99a〜cに対応して簡易チェックの結果が表示されることで、特定のCGROMに異常(CGROM内のデータの異常、CGROMの接続位置の異常)があるか否かを判別可能となっている。また、特定のCGROMに異常がある場合には、該当するCGROMについての検査結果を示す文字列が反転されて表示されることで、特定のCGROMに異常があることを認識し易くなっている。
また、サブ制御部91は、簡易チェックの制御の実行中に、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様をチェック中態様1に設定して、所定の点灯態様に制御するので、簡易チェックの制御が実行されている旨がスロットマシン1の外部から認識可能となり、例えば、液晶表示器51や表示制御回路92、サブ制御部91等が故障して、簡易チェック画面が正常に液晶表示器51に表示されないような場合であっても、簡易チェックの制御が行われている旨を認識可能させることができるようになっている。
次に、詳細チェックに関する制御内容について図20及び図21に基づいて説明する。
サブ制御部91は、上述の簡易チェックの制御を実行して、CGROM99a〜cについて照合用データと検査用データとの比較結果を簡易チェック画面に表示させた後に、演出用スイッチ56の操作が検出されることで、詳細チェックの制御を実行する。
図20に示すように、サブ制御部91は、詳細チェックの制御を開始した後には、まず、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様を、詳細チェックの制御を実行している旨を示し、通常の起動時及び簡易チェック時とは異なる態様で点灯させるチェック中態様2に設定する。チェック中態様2が設定されることで、LED駆動回路93a〜eは、夫々の回路に接続された演出効果LED52a〜c、リールLED55、演出用LED56aを、通常の演出時及び簡易チェック時の点灯態様と異なることが視認可能な点灯態様(例えば、通常の起動時及び簡易チェック時よりも速いまたは遅い周期で点滅する態様、異なる色で点灯する態様など)に制御し、サブ制御部91は、チェック中LED59を、詳細チェックの制御を実行していることが視認可能な点灯態様(例えば、赤色で点滅する点灯態様など)に制御する。これにより、サブ制御部91にて詳細チェックの制御が実行されている期間にわたり、これらのLEDがチェック中態様2に制御されることで、詳細チェックの制御が実行されている旨がスロットマシン1の外部から認識可能となる。
その後、サブ制御部91は、詳細チェックの実行中である旨を示す詳細チェック画面を表示させるための表示指示データを、表示制御回路92のレジスタに書き込み、その後、表示命令1を表示制御回路92の所定のレジスタに書き込む。
これに対して、表示制御回路92は、表示命令1が所定のレジスタに書き込まれることで、レジスタの表示指示データを参照して、表示指示データの内容で液晶表示器51に詳細チェック画面を表示するように画像等を表示させる制御を実行する。詳細チェック画面を表示させる制御では、表示指示データに基づいて表示させる画像等のレイアウト及び文字等を特定して、特定されたレイアウトに沿って、簡易チェックの制御の際からVRAMに記憶されている情報表示用データに従って文字等を表示させることで、簡易チェック画面と同様に、液晶表示器51において画像等を表示可能な領域のうち透過領域51b以外の表示領域51a(本実施例では、リールの透視窓3の上側の表示領域51a)に、詳細チェック画面を表示させる。そして、図21(b)に示すように、詳細チェックの開始時の詳細チェック画面では、詳細チェックを実行中である旨を特定可能な文字列(本実施例では、「CGROM Check2」)と、検査対象であるCGROM99a〜cを示す文字列(本実施例では、「CGROM−a」、「CGROM−b」、「CGROM−c」)と、各CGROM99a〜cのチェックサムを計算中である旨を示す文字列(本実施例では、「Calculating...」)を、情報表示用データに含まれるフォントデータを用いて表示させる。
サブ制御部91は、表示命令1を表示制御回路92のレジスタに書き込み、詳細チェック画面を液晶表示器51に表示させた後、CGROM99a〜cのうち特定の一のCGROMを検査対象として指定してチェックサム命令(本実施例では、CGROM99a、b、cの順で指定する)を表示制御回路92の所定のレジスタに書き込む。これに対して、表示制御回路92は、チェックサム命令が所定のレジスタに書き込まれることで、当該命令により指定されるCGROMの特定の領域のデータを順次読み込んでチェックサムを演算して、当該演算の結果を所定のレジスタに書き込み、当該演算の結果の書き込みを行った旨を示す演算完了フラグを所定のレジスタに設定する。尚、表示制御回路92は、チェックサム命令により指定されたCGROMの特定の領域のデータが読み込めない場合(例えば、当該データの記憶領域が破壊されていたり、CGROMが適切にCGROM基板99に接続されておらず、データの読み出しが不可能な場合など)には、正常なチェックサムの演算結果と一致しないデータ(例えば、予め演算された各CGROM99a〜cのチェックサムの値以外のデータ)を演算結果としてレジスタに設定し、演算完了フラグを所定のレジスタに設定する。
また、サブ制御部91は、チェックサム命令を所定のレジスタに書き込んだ後は、表示制御回路92の所定のレジスタに演算完了フラグが設定されたときに、チェックサムの演算結果が記憶されているレジスタを参照して読み込む。そして、当該チェックサムの演算結果を表示指示データとして設定し、表示制御回路92の所定のレジスタに書き込み、更に表示命令1を所定のレジスタに書き込む。その後、全てのCGROM99a〜cについて検査を行ったか否かを判定し、全てのCGROM99a〜cについて検査を行っていないと判定した場合には、残りのCGROMを検査対象として、上述の制御を繰り返し実行する。
これに対して、表示制御回路92は、演算完了フラグを設定した後、表示命令1が所定のレジスタに書き込まれることで、レジスタの表示指示データを参照して、表示指示データの内容を液晶表示器51に表示させる制御、すなわちチェックサムの演算結果を表示させるように詳細チェック画面を更新する。これにより、例えば、図21(b)に示すように、CGROM99aについてチェックサムの演算結果が表示指示データとしてレジスタに書き込まれたときには、詳細チェック画面においてCGROM99aに対応して表示されているチェックサムを計算中である旨を示す文字列が、チェックサムの演算結果を示す文字列(本実施例では、「1234」)に更新され、全てのCGROM99a、b、cについて、計算中である旨を示す文字列が、チェックサムの演算結果を示す文字列に更新されることで、詳細チェックが終了することとなる。
サブ制御部91は、全てのCGROM99a、b、cについて、チェックサムの演算の結果を表示制御回路92により液晶表示器51に表示させて、全てのCGROM99a〜cについて検査を行ったと判断した場合には、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59のチェック中態様2での制御を終了させて、詳細チェックの制御を終了させる。
このように、サブ制御部91は、詳細チェックにおいて、ROM91bに記憶されている情報表示用データを用いて、表示制御回路92により液晶表示器51に、詳細チェック画面を表示させることができるようになっている。また、詳細チェック画面では、ROM91bに記憶されている情報表示用データを用いて、CGROM99a〜cのチェックサムの演算の結果が表示されることで、特定のCGROMに異常(CGROM内のデータの異常、CGROMの接続位置の異常)があるか否かを判別可能となっている。
また、本実施例のCGROM99a〜cのチェックサムの対象となる特定の領域のデータは、正しくCGROM基板99に接続されることで、チェックサムの演算結果がCGROM99a〜cの接続位置に対応した規則的な値となるように予め調整されており、例えば、図21(c)に示すように、詳細チェック画面においてCGROM99a〜cのチェックサムの演算結果が、予め定められた所定の連続した数値とならないことで、CGROM99b及びCGROM99cに異常(本実施例では、CGROMの接続位置の異常)があることを判別可能であるとともに、CGROM基板99においてCGROM99bとCGROM99cの位置に接続されているCGROMを入れ替えて接続すること、すなわちCGROM99a〜cのチェックサムの演算結果が所定の連続した数値(本実施例では、「1234」、「5678」、「9ABC」の順)となるように接続することで、CGROM99a〜cを正しくCGROM基板99に接続することができるように、詳細チェック画面にて判別可能となっている。
また、サブ制御部91は、詳細チェックの制御の実行中に、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様をチェック中態様2に設定して、所定の点灯態様に制御するので、詳細チェックの制御が実行されている旨がスロットマシン1の外部から認識可能となり、例えば、液晶表示器51や表示制御回路92、サブ制御部91等が故障して、簡易チェック画面が正常に液晶表示器51に表示されないような場合であっても、詳細チェックの制御が行われている旨を認識可能させることができるようになっている。また、詳細チェックの制御の実行中に、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様を、簡易チェックの実行中に設定されるチェック中態様1と異なるチェック中態様2に設定して、これらのLEDを所定の点灯態様に制御するので、簡易チェックまたは詳細チェックの制御を実行しているときに、いずれの制御が行われている状態であるかを、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59の点灯態様により判別可能となっている。
本実施例のサブ制御部91は、RAM91cに記憶されているコマンドを受信した履歴のデータ(以下、コマンド履歴データという場合がある)、サブ制御部91のバックアップデータ(メイン制御部41の制御状態、遊技状況や遊技履歴、エラー履歴、コマンド履歴等、バックアップRAM61によるバックアップの対象となるデータ)、時計装置97の時間情報等のサブ制御部91に関する所定の情報を、所定の条件が成立した場合に、液晶表示器51に表示させる検査用情報表示制御を実行することが可能であり、所定の条件として、スロットマシンの検査用端末がサブ制御部91に接続されて、これらの情報のいずれを液晶表示器51に表示させる要求があったかを特定可能な検査表示コマンドを、当該検査用端末から受信した場合に、検査用情報表示制御を実行して、当該検査表示コマンド基づいて特定される種類の情報を液晶表示器51に表示させる。サブ制御部91が実行する検査用情報表示制御の制御内容について、図22に基づいて説明する。
図22に示すように、検査用端末は、所定の操作がされることで、当該所定の操作に応じて、液晶表示器51に表示させることが要求されている情報の種類を、コマンドの受信履歴、サブ制御部91にて記憶されているメイン制御部41の制御状況や遊技履歴、時計装置97の時間情報等から特定する。そして、液晶表示器51に表示させることが要求されている情報の種類を特定可能な検査表示コマンドを、サブ制御部91に対して送信する。
これに対して、サブ制御部91は、検査表示コマンドを受信することで、当該検査表示コマンドに基づいて、表示が要求されている情報の種類を特定し、特定した種類の情報を表示させるために最低限必要となる情報表示用データ(本実施例では、フォントデータ)を、ROM91bから読み出して、表示制御回路92の所定のレジスタに書き込んだ後、当該情報表示用データをレジスタから読み出す旨の命令を表示制御回路92のレジスタに書き込む。その後、検査表示コマンドに基づいて特定した種類の情報に該当するデータを、RAM91cから読み出して、該当データに基づいて表示指示データを作成する。例えば、表示が要求されている種類の情報が、コマンド履歴データである場合には、RAM91cに記憶されているコマンド履歴データ(本実施例では、100ステップ分)から時系列的に新しいコマンドを、一の画面に表示可能な数分(本実施例では、25のコマンド)順次選択し、選択されたコマンドの情報を含む表示指示データを作成する。また、表示が要求されている種類の情報がサブ制御部91のバックアップデータである場合には、RAM91cに記憶されている各種データのうちバックアップRAM61によるバックアップの対象となるメイン制御部41の制御状況(メイン制御部41から受信したコマンドに基づいて特定されるメイン制御部41の状態であり、例えば、AT中、設定変更状態等)、遊技状態(RT0〜4、RB)、遊技履歴(所定のゲーム数の期間におけるメダルの払出し枚数、ART抽選の当選回数、特別役の当選回数等)の情報を含む表示指示データを作成する。また、表示が要求されている種類の情報が時計装置97の時間情報である場合には、時計装置97の時間情報を参照して、当該時間情報を含む表示指示データを作成する。
表示が要求されている種類の情報に応じた表示指示データを作成した後は、当該表示指示データを表示制御回路92の所定のレジスタに書き込み、表示制御回路92の所定のレジスタに情報表示用データ格納フラグさ設定されていることを確認した後に、表示制御回路92の所定のレジスタに表示命令1を書き込む。
これに対して、表示制御回路92は、サブ制御部91により表示命令1が所定のレジスタに書き込まれることで、レジスタの表示指示データを参照して、表示指示データの内容で液晶表示器51に、表示が要求されている種類の情報に該当するスロットマシン1に関する情報を表示させる。
また、検査用端末は、表示が要求されている情報の種類がコマンド履歴データである場合には、検査表示コマンドを送信した後、所定のページ送り操作が行われたか否かを判定し、ページ送り操作が行われたと判定される毎に、ページ送り操作が行われた旨を特定可能なページ送りコマンドをサブ制御部91に対して送信する。
これに対して、サブ制御部91は、コマンド履歴データを液晶表示器51に表示させた後に、ページ送りコマンドを受信した場合には、RAM91cに記憶されているコマンド(本実施例では、100個)のうち一旦表示させたコマンド以外のコマンドから、時系列的に新しいコマンドを、一の画面に表示可能な数分(本実施例では、25のコマンド)順次選択し、選択されたコマンドの情報を含む表示指示データを作成する。そして、当該表示指示データを表示制御回路92の所定のレジスタに書き込んだ後、表示制御回路92の所定のレジスタに表示命令1を書き込むことで、表示制御回路92に当該表示指示データに基づいて新たなコマンド履歴を液晶表示器51に表示させる。
このような制御をページ送りコマンドを受信する毎に繰り返し行うことで、RAM91cに記憶されているコマンド履歴をページ送り操作に応じて順次表示さることができるようになっている。尚、ページ送りの操作が繰り返し行われて、コマンド履歴の最後のコマンドまで表示させた後に、さらにページ送りの操作が行われる場合には、最初のコマンドに戻ってコマンド履歴を再度順次表示させる。
このように、サブ制御部91が、検査用端末から検査表示コマンドを受信することで実行する検査用情報表示制御では、ROM91bに記憶されている情報表示用データを用いて、ROM91bに記憶されている情報表示用データを用いて、表示制御回路92により液晶表示器51に、RAM91cに記憶されているコマンドの受信履歴、サブ制御部91のバックアップデータ(メイン制御部41の制御状態、遊技状況や遊技履歴、エラー履歴、コマンド履歴等、バックアップRAM61によるバックアップの対象となるデータ)、時計装置97の時間情報等のスロットマシン1に関する所定の情報を表示させることができるようになっている。
本実施例のサブ制御部91は、液晶表示器51に表示させる内容を指定する表示指示データを表示制御回路92の所定のレジスタに書き込み、更に表示指示データの内容で液晶表示器51に画像等を表示させる旨の表示命令を、表示制御回路92の他の所定のレジスタに書き込むことで、表示制御回路92により、CGROM基板99に搭載されたCGROM99a〜cに記憶されている画像データ等を用いて、液晶表示器51に画像等を表示指示データに従って表示させることが可能であり、所定の条件が成立した場合に、CGROM99a〜cの記憶内容を検査するための制御を実行し、検査の結果を表示指示データとして所定のレジスタに書き込むことで、検査の結果を液晶表示器51に表示させることが可能な構成である。
このような構成では、CGROM99a〜cの記憶内容を検査するための制御において、検査の結果を液晶表示器51に表示させる際に、CGROM99a〜cに記憶されている画像データ等を用いて、検査の結果を表示させようとすると、CGROM99a〜cに記憶されている画像データに異常がある場合には、検査の結果を正常に表示させることができなくなる虞がある。
これに対して、本実施例では、サブ制御部91が備える制御用のROM91bに、液晶表示器51に文字や記号等の情報を表示させるために最低限必要となる画像データを含む情報表示用データが予め記憶されており、サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、ROM91bに記憶されている情報表示用データを表示制御回路92の作業用の記憶領域であるVRAMに記憶させて、表示指示データの内容で液晶表示器51に画像等を表示させる旨の表示命令を、表示制御回路92の所定のレジスタに書き込むことで、表示制御回路92により、ROM91bに記憶されていた情報表示用データを用いて、検査の結果を液晶表示器51に表示させるので、CGROM99a〜cの記憶内容を検査するための制御において、検査の結果を液晶表示器51に表示させる際に、CGROM99a〜cに記憶されている画像データではなく、サブ制御部91が備える制御用のROM91bに記憶されている情報表示用データに含まれる画像データを用いて検査の結果を表示させるので、CGROM99a〜cに記憶されている画像データに異常が生じている場合であっても、検査の結果を正常に表示させることができる。
尚、本実施例では、サブ制御部91が表示制御回路92に対して命令することで、表示制御回路92が表示指示データに従って液晶表示器51に画像等を表示させる構成、すなわち複数の制御手段にて液晶表示器51に画像等を表示させる制御を行う構成であるが、液晶表示器51に画像等を表示させる制御を行う制御手段は、一の制御手段にて構成されるもの、例えば、サブ制御部91が直接、表示指示データに従って液晶表示器51に画像等を表示させる構成等でも良い。また、複数の制御手段にて液晶表示器51に画像等を表示させる制御を行う構成として、例えば、スロットマシン1の演出に関する制御を統括する第1のサブ制御部と別個に設けられた第2のサブ制御部が、第1のサブ制御部による指示に基づいて表示制御回路に対して命令することで、液晶表示器に画像等が表示される構成であっても良い。
また、本実施例では、サブ制御部91が実行するCGROM99a〜cの記憶内容を検査するための制御として、簡易チェック及び詳細チェックを実行可能であり、簡易チェックでは、CGROM99a〜cの特定のアドレスに記憶されている検査用データと、ROM91bに記憶されている照合用データとを比較して、両者が一致するか否かに応じてCGROM99a〜cの記憶内容が正常であるか否かを検査する構成、すなわちCGROM99a〜cに記憶されている特定のデータが、他の記憶手段であるROM91bに記憶されている特定の値と一致するか否かにより正常か否かを判断する構成であり、詳細チェックでは、CGROM99a〜cの特定の領域のデータのチェックサムを演算して、演算の結果を液晶表示器51に表示させることで、CGROM99a〜cの記憶内容が正常であるか否かを判別可能とする構成、すなわちCGROM99a〜cに記憶されている所定のデータから所定の演算により算出された演算結果を出力することにより、出力された特定のデータまたは演算結果により正常か否かを判断することが可能となる構成であるが、サブ制御部91が実行するCGROM99a〜cの記憶内容を検査するための制御では、少なくとも画像データが記憶されているCGROM99a〜cの記憶内容が正常か否かを判断することが可能となる検査が行われる構成であれば良く、例えば、CGROMに記憶されている特定のデータを出力することにより、出力された特定のデータにより正常か否かを判断することが可能となる構成でも良いし、CGROMに記憶されている特定のデータまたはCGROMに記憶されている画像データから所定の演算により算出された演算結果が特定の値であるか否かにより正常か否かを判断することが可能となる構成でも良いし、CGROMに記憶されている画像データから所定の演算により算出された演算結果が、他の記憶手段、例えばサブ制御部91等の他の制御手段のROMや検査のためのみに備えられる専用のROM等に記憶されている特定の値と一致するか否かにより正常か否かを判断することが可能となる構成でも良い。
例えば、CGROMに記憶されている特定のデータを出力することにより、出力された特定のデータにより正常か否かを判断することが可能となる構成においては、出力される特定のデータが、各CGROMの固有の値(例えば、各CGROMの識別番号、配置番号、名称)となるようにすることで、出力された特定のデータにより正常か否かの判断、特に各CGROMであるか否かの判断を容易にすることが可能となる。また、このような構成において、各CGROMの配置順序、検査順序が予め定められている場合には、出力された特定のデータが各CGROMの配置順序、検査順序を示す値と一致するようにすることで、出力された特定のデータにより正常か否かの判断、特に、各CGROMが所定の順序で配置、検査されているか否かの判断を容易にすることが可能となる。
尚、本実施例では、詳細チェックにおいて、CGROMa〜cに記憶されている特定の領域のチェックサムを演算して、演算の結果を液晶表示器51に表示させる構成であるが、詳細チェックの結果として、チェックサムの演算値以外の値、例えば、パリティ等の値、パリティ等の値が特定の値と一致するか否かの判定結果を液晶表示器51に表示させる構成であっても良い。このような構成においては、チェックサム、パリティ等の値が特定の値(チェックサムの下一桁が0、パリティが0等)となるようにすることで、演算の結果等が0か否か判定するだけで、該当するCGROMが正常であるか否かを判定することができ、比較用のデータを記憶せずに済む。
また、本実施例では、サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、当該サブ制御部91のROM91bに記憶されている、液晶表示器51に文字や記号等の情報を表示させるために最低限必要となる画像データを含む情報表示用データを、表示制御回路92のVRAMに記憶させて、当該情報表示用データを用いて、検査の結果を液晶表示器51に表示させる構成であるが、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、サブ制御部91が表示制御回路92のVRAMに記憶させる情報表示用データは、液晶表示器51に検査の結果を表示させるために最低限必要となるデータであれば良く、検査の結果をイメージで表示する場合には、イメージデータ等であっても良く、文字・記号等で表示する場合には、フォントデータ等であっても良く、これらの組合せであっても良い。
本実施例のサブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、ROM91bに記憶されていた情報表示用データを用いて、表示制御回路92により検査の結果を液晶表示器51に表示させる構成であって、情報表示用データは、検査の結果を表示する簡易チェック画面及び詳細チェック画面を構成する文字を表示するためのフォントデータであるので、検査の結果を文字により表示できることから検査の結果を認識し易いうえに、記憶されているデータ数以上の検査結果を表示すること、すなわち複数の文字の組合せにより記憶されている文字数以上の情報を表示することができる。
本実施例のサブ制御部91は、制御用のROM91bに、検査対象であるCGROM99a〜cの特定のアドレスに記憶されている検査用データと一致するデータが、照合用データとして記憶されており、CGROM99a〜cの記憶内容を検査するための制御において、当該照合用データと、CGROM99a〜cから読み込んだ検査用データとを比較することで、各CGROM99a〜cが正常であるか否かを検査する、すなわちCGROM99a〜c外に記憶されている照合データを用いて、各CGROM99a〜cの記憶内容を検査するので、CGROM99a〜cに記憶されているデータに異常が生じている場合であっても正常に検査することができる。
本実施例では、液晶表示器51に画像等を表示させるための画像データが、複数のCGROM99a〜cに記憶されており、サブ制御部91は、画像データが記憶されている複数のCGROM99a〜cについて、それぞれ所定のアドレスに記憶されている検査用データを読み出して、制御用のROM91bに記憶されている該当するCGROMの照合用データと比較することで、各CGROM99a〜cが正常であるか否かを検査するので、CGROM99a〜cのうちのいずれかの記憶内容が正常ではない場合に、CGROM99a〜cのうちのどのCGROMの記憶内容に異常があるかを特定することができる。
本実施例の液晶表示器51は、画像等を表示可能な表示領域の一部に、背面に配置された各リール2L、2C、2Rを視認可能な透過領域51bを有しており、サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、各CGROM99a〜cの検査の結果を表示する簡易チェック画面及び詳細チェック画面を、表示制御回路92により液晶表示器51の透過領域51b以外の表示領域に表示させるので、表示制御回路92により表示された検査の結果の視認性を確保することができる。
本実施例のサブ制御部91は、所定の条件が成立した場合に、当該サブ制御部91に関する所定の情報(本実施例では、RAM91cに記憶されているコマンド履歴データ、サブ制御部91のバックアップデータ(メイン制御部41の制御状態、遊技状況や遊技履歴、エラー履歴、コマンド履歴等、バックアップRAM61によるバックアップの対象となるデータ))を、液晶表示器51に表示させる検査用情報表示制御を実行することが可能であり、検査用情報表示制御を実行する際に、ROM91bに記憶されている情報表示用データを表示制御回路92の作業用の記憶領域であるVRAMに記憶させて、所定の条件に応じたサブ制御部91に関する所定の情報を表示指示データとして表示制御回路92の所定のレジスタに書き込み、表示指示データの内容で液晶表示器51に画像等を表示させる旨の表示命令を、表示制御回路92の所定のレジスタに書き込むことで、表示制御回路92により、ROM91bに記憶されていた情報表示用データを用いて、所定の条件に応じたサブ制御部91に関する所定の情報を液晶表示器51に表示させるので、CGROM99a〜cに記憶されている画像データではなく、サブ制御部91のROM91bに記憶されている情報表示用データに含まれる画像データを用いて、サブ制御部91に関する情報を液晶表示器51に表示させるので、CGROM99a〜cに記憶されている画像データに異常が生じている場合であってもサブ制御部91に関する情報を正常に表示させることができる。
尚、サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、表示制御回路92により、ROM91bに記憶されていた情報表示用データを用いて、検査の結果を液晶表示器51に表示させることが可能な構成であるが、サブ制御部91が記憶内容を検査する記憶手段は、CGROM以外の記憶手段、例えば、演出用の音データが記憶されているSOUNDROM等であっても良く、このような構成においても、サブ制御部91が、ROM91bに記憶されていた情報表示用データを用いて、検査の結果を液晶表示器51に表示させることで、CGROM99a〜cに記憶されている画像データに異常が生じている場合であってもサブ制御部91に関する情報を正常に表示させることができる。
本実施例のサブ制御部91は、液晶表示器51に表示させる内容を指定する表示指示データを表示制御回路92の所定のレジスタに書き込み、更に表示指示データの内容で液晶表示器51に画像等を表示させる旨の表示命令を、表示制御回路92の他の所定のレジスタに書き込むことで、表示制御回路92により、CGROM基板99に搭載されたCGROM99a〜cに記憶されている画像データ等を用いて、液晶表示器51に画像等を表示指示データに従って表示させることが可能であり、所定の条件が成立した場合に、CGROM99a〜cの記憶内容を検査するための制御を実行し、検査の結果を表示指示データとして所定のレジスタに書き込むことで、検査の結果を液晶表示器51に表示させることが可能な構成である。
このような構成では、CGROM99a〜cの記憶内容を検査するための制御において、検査の結果を液晶表示器51に表示させる際に、検査が正常に行われていない場合や液晶表示器51自体または表示制御回路92自体に不具合が生じた場合には、最終的に液晶表示器51に検査結果が表示されることがなく、この場合に、検査が正常に行われていないのか、液晶表示器51または表示制御回路92に不具合が生じているのか、を特定することができない。
これに対して、本実施例では、サブ制御部91は、所定の条件が成立した場合に、CGROM99a〜cの記憶内容を検査するための制御を実行し、検査の結果を表示指示データとして所定のレジスタに書き込むことで、検査の結果を液晶表示器51に表示させることが可能な構成であって、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59を、通常の演出時の点灯態様と異なることが視認可能な点灯態様(チェック中態様1、チェック中態様2)で点灯制御するので、液晶表示器51とは別個に設けられた報知手段の態様が通常態様とは異なる所定態様(例えば、通常の起動時よりも速いまたは遅い周期で点滅する態様、通常の起動時と異なる色で点灯する態様など)となり、サブ制御部91によりCGROM99a〜cの記憶内容の検査が行われていることを認識させることができるため、最終的に液晶表示器51に検査の結果が表示されない場合に、サブ制御部91による検査が正常に行われていないのか、液晶表示器51または表示制御回路92に不具合が生じているのか、を推定することができる。
尚、本実施例では、サブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59、すなわち液晶表示器51とは別個に設けられた報知手段を、通常の演出時の点灯態様と異なることが視認可能な態様に制御する構成であるが、CGROM99a〜cを検査する制御を実行する際に制御される報知手段は、液晶表示器51とは別個に設けられたものであれば良く、例えば、液晶表示器51とは別個に設けられた液晶表示器や7セグ表示器などの表示手段、発光態様を変化させるランプやLED等の発光手段、音の出力態様を変化させる音出力手段、動作態様を変化させる可動部材等であっても良い。
本実施例のサブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、演出効果LED52a〜c、リールLED55、演出用LED56a、すなわち演出に用いられる演出手段を、通常の演出時の点灯態様と異なることが視認可能な点灯態様(例えば、通常の起動時よりも速いまたは遅い周期で点滅する態様など)で点灯制御するので、演出に用いられる演出手段を利用して、サブ制御部91による検査が行われていることを認識させることができる。
本実施例のサブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、チェック中LED59、すなわち演出制御基板90上の報知手段を、簡易チェック及び詳細チェックの制御を実行していることが視認可能な点灯態様(例えば、赤色で常に点灯または点滅する点灯態様など)に制御するので、チェック中LED59が実装された基板のみで、すなわち演出効果LED52a〜cが配置されている前面扉1bやリールLED55が配置されているリールユニット2などを用いることなく、サブ制御部91による検査が行われていることを認識させつつ、サブ制御部91による検査を行うことが可能となる。
尚、本実施例では、サブ制御部91は、簡易チェック及び詳細チェックの制御を行っているときに、演出効果LED52a〜c、リールLED55、演出用LED56a、すなわち演出に用いられる演出手段と、チェック中LED59、すなわち演出制御基板90上の報知手段とを共に所定の点灯態様に制御する構成であるが、簡易チェック及び詳細チェックの制御を行っているときに、演出効果LED52a〜c、リールLED55、演出用LED56a、チェック中LED59のうち少なくとも1つを所定の点灯態様に制御する構成としても良い。このような構成とすることで、サブ制御部91により検査が行われているか否かを認識させることができる。
本実施例のサブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、演出効果LED52a〜c、リールLED55、演出用LED56aを夫々別系統のLED駆動回路93a〜eを介して、通常の演出時の点灯態様と異なることが視認可能な点灯態様(例えば、通常の起動時よりも速いまたは遅い周期で点滅する態様など)で点灯制御するので、LED駆動回路93a〜eの一部に不具合が生じている場合でも、他の系統を介して点灯制御される報知手段が、通常の演出時の点灯態様と異なる点灯態様となるので、サブ制御部91によりCGROM99a〜cの記憶内容の検査が行われていることを認識させることができる。
本実施例のサブ制御部91は、CGROM99a〜cの記憶内容を検査するための制御を実行する際に、LED駆動回路93a〜eを介して接続されている演出効果LED52a〜c、リールLED55、演出用LED56aと、当該LED駆動回路93a〜eを介することなく、演出効果LED52a〜c等とは別系統で接続されているチェック中LED59とを、通常の演出時の点灯態様と異なることが視認可能な点灯態様(例えば、通常の起動時よりも速いまたは遅い周期で点滅する態様など)で点灯制御するので、LED駆動回路93a〜eに不具合が生じている場合でも、LED駆動回路93a〜eとは別系統で点灯制御されるチェック中LED59が、通常の演出時の点灯態様と異なる点灯態様となるので、サブ制御部91によりCGROM99a〜cの記憶内容の検査が行われていることを認識させることができる。
次いで、本実施例のサブ制御部91のRAM91cに記憶されるデータ及び当該データに基づいてサブ制御部91がエラー等の発生の履歴を液晶表示器51に表示させるエラー履歴表示制御について、図23〜図32に基づいて説明する。
図23に示すように、本実施例のサブ制御部91のRAM91cには、サブ制御部91が受信した各種コマンドに基づいて特定されるメイン制御部41側の制御の状態及びサブ制御部91における演出等の制御の状態に関する制御状態データが記憶される制御状態データ領域と、メイン制御部41及びサブ制御部91の診断に関する診断用データが記憶される診断用データ領域とが含まれる。診断用データ領域には、サブ制御部91が受信したコマンドの履歴に関するコマンド履歴データが記憶されるコマンド履歴データ領域と、サブ制御部91がコマンドに基づいて特定したメイン制御部41側でのエラー等やサブ制御部91が検出したエラー等に関するエラー履歴データが記憶されるエラー履歴データ領域とが含まれる。
制御状態データ領域は、後述するサブ制御部91の起動処理(サブ)における初期化条件の成立時の初期化対象であり、初期化条件として、設定コマンドに基づいて、設定変更状態が開始されることが検出されたとき(設定変更検出時)、及びサブ制御部91のRAM91cの異常が検出されたとき(サブRAM異常時)、のいずれかの条件が成立することで初期化される。また、制御状態データ領域は、エラーコマンドに基づいてメイン制御部41側におけるRAM41cの異常が検出されたとき(メインRAM異常時)に、直接的には初期化されることはないが、メイン制御部41のRAM41cの異常時には、サブ制御部91によりエラー報知が行われて設定変更操作が行われるように促され、設定変更の操作が行われることで、設定変更状態が開始されることが検出されて、間接的に初期化される。また、制御状態データ領域は、復帰コマンドに基づいてメイン制御部41の正常な復帰が検出されるとき及びその後(メイン復帰検出時)には、初期化対象ではなく、初期化されない。一方で、診断用データ領域は、制御状態データ領域の初期化条件(設定変更検出時、サブRAM異常時、メインRAM異常時、メイン復帰検出時)のいずれの条件の成立じにも、初期化対象とはならず、診断用データ領域に含まれるコマンド履歴データ領域及びエラー履歴データ領域は、サブ制御部91により初期化されることはない。
また、制御状態データ領域、診断用データ領域に含まれるコマンド履歴データ領域及びエラー履歴データ領域は、スロットマシン1への電力供給が停止される場合(電断時)のバックアップ対象であり、電断検出回路98からの電圧低下信号が検出される場合に、制御状態データ領域に記憶されている制御状態データ、診断用データ領域に記憶されているコマンド履歴データ及びエラー履歴データは、サブ制御部91によりバックアップRAM61の記憶領域に複製され、バックアップデータとして保持される。
また、制御状態データは、バックアップRAM61にバックアップされているバックアップデータが正常であるか否かを判定する破壊判定の対象であり、後述する起動処理(サブ)において実行される破壊判定にてバックアップデータ内の制御状態データが参照される一方で、コマンド履歴データ及びエラー履歴データは、バックアップデータの破壊判定の対象でなく、破壊判定においてバックアップデータ内のコマンド履歴データ及びエラー履歴データが参照されることはない。
また、コマンド履歴データ領域は、少なくとも1ゲームにおいてメイン制御部41からサブ制御部91に送信され得る最大個数より多い個数(本実施例では、100個)のコマンドを記録可能な容量が設定されており、エラー履歴データ領域は、少なくとも1日以上の営業期間においてメイン制御部41及びサブ制御部91において発生する可能性があるエラー等の数よりも多い個数(本実施例では、3日程度の営業期間において想定され得る100個)のエラー等を記録可能な容量が設定されている。
次に、サブ制御部91が実行する起動処理(サブ)について図24に基づいて説明する。
図24に示すように、サブ制御部91は、リセット回路95からリセット信号が入力されることで起動すると、起動処理(サブ)を実行して、まず、内蔵デバイスや周辺IC、割込モード、スタックポインタ等を初期化する(Sp1)。その後、RAM91cへのアクセスを許可し(Sp2)、RAM91cの使用可能領域の全ての領域を初期化する(Sp3)。
そして、バックアップRAM61の所定領域を参照して、バックアップRAM61に記憶されているバックアップデータに含まれる制御状態データのチェックサムを計算する(Sp4)。その後、バックアップデータに含まれる破壊判定用の破壊判定データを取得して、Sp4でのチェックサムの計算結果が破壊判定データと一致するか否かを比較し(Sp5)、当該比較結果が一致するか否かを判定する(Sp6)。
Sp6のステップにおいて、バックアップデータに含まれる制御状態データのチェックサムの計算結果が破壊判定データと一致すると判定した場合、すなわちバックアップデータが破壊されておらず正常であると判定した場合には、バックアップデータに含まれる制御状態データをRAM91cの制御状態データ領域に複製して設定して(Sp7)、RAM91cの制御状態データ領域を電断の前の状態に復帰させる。
そして、Sp7のステップにおいてバックアップデータの制御状態データをRAM91cに設定した後、または、Sp6のステップにおいてチェックサムの計算結果が破壊判定データと一致しないと判定した場合には、バックアップRAM61のバックアップデータに含まれるコマンド履歴データをRAM91cのコマンド履歴データ領域に複製するとともにバックアップデータに含まれるエラー履歴データをRAM91cのエラー履歴データ領域に複製することで、バックアップデータに含まれる診断用データをRAM91cの診断データ領域に設定して(Sp8)、RAM91cの診断用データ領域を電断の前の状態に復帰させる。
その後、バックアップRAM61のバックアップデータを全て初期化し(Sp9)、エラーコマンド、設定コマンド(開始)、復帰コマンドのいずれかのコマンドをメイン制御部41から受信するか(Sp10〜12)、起動処理(サブ)を開始してから所定時間が経過するまで待機する(Sp13)。
Sp10のステップにてエラーコマンドを受信したと判定した場合には、Sp17のステップに進み、各演出装置の制御パターンとして、メイン制御部41側においてエラー状態の制御が行われている旨を報知するエラー中報知パターンをRAM91cの所定領域に設定した後、Sp18のステップに進む。
Sp11のステップにて設定コマンド(開始)を受信したと判定した場合には、Sp15のステップに進み、メイン制御部41側において設定変更に伴いRAM41cが初期化されることに対応してRAM91cの制御状態データ領域を初期化した後(Sp15)、各演出装置の制御パターンとして、メイン制御部41側において設定変更状態の制御が行われている旨を報知する設定変更中報知パターンをRAM91cの所定領域に設定する(Sp16)。そして、Sp17のステップに進む。
Sp12のステップにて復帰コマンドを受信したと判定した場合には、RAM91cの記憶内容を、Sp3〜Sp8のステップにより設定された記憶内容のまま維持して、すなわち各演出装置の制御パターンを電断時に設定されていた制御パターンで維持して、Sp18のステップに進む。
Sp18のステップでは、RAM91cの制御状態データに基づいて各演出装置の制御を再開させる復帰処理を実行して、Sp3〜Sp8、Sp16、Sp17のステップにより設定された制御パターンでの各演出装置の出力を開始させる。また、復帰処理では、後述のエラー履歴記録処理を実行して、スロットマシン1への電力供給が開始された旨すなわち電源がオンにされた旨をエラー履歴データに加える処理を行う。その後は、メイン制御部41から受信したコマンド等に基づいてゲームの進行状況等に応じた演出の制御を行う。
Sp10〜Sp12のステップにおいてエラーコマンド、設定コマンド(開始)、復帰コマンドのいずれのコマンドを受信したと判定されることがなく、Sp13のステップにおいて、起動処理(サブ)を開始してから所定時間が経過したと判定した場合には、Sp14のステップに進み、検査モードに移行して、上述のように、CGROM基板99に搭載されたCGROM99a〜cの記憶内容を検査するための簡易チェックの制御を開始する。簡易チェックの制御の開始後には、再度起動されることで起動処理(サブ)を最初から実行することとなる。
このように、サブ制御部91は、起動処理(サブ)においてRAM91cの全ての領域を初期化した後、バックアップデータが正常であると判定した場合には、バックアップデータに含まれる制御状態データをRAM91cの制御状態データ領域に設定することで、バックアップデータが正常である場合には、電断からの復帰後も電断前の制御状態データを保持することが可能である。一方、バックアップデータが正常でないと判定した場合には、バックアップデータに含まれる制御状態データをRAM91cの制御状態データ領域に設定せずにバックアップデータの全てを初期化することで、バックアップデータが正常でない場合には、電断からの復帰後には、電断前の制御状態データを保持しないようになっている。
また、サブ制御部91は、起動処理(サブ)においてバックアップデータが正常であると判定し、バックアップデータに含まれる制御状態データをRAM91cの制御状態データ領域に設定した後、バックアップデータを全て初期化し、その後、設定コマンド(開始)を受信した場合には、RAM91cの制御状態データ領域を初期化することで、メイン制御部41側にて設定変更に伴いRAM41cの記憶内容が初期化される場合に、電断前の制御状態データを保持しないようになっている。
また、サブ制御部91は、起動処理(サブ)においてRAM91cの全ての領域を初期化した後、バックアップデータが正常であるか否かにかかわらず、バックアップデータに含まれる診断用データをRAM91cの診断用データ領域に設定した後、バックアップデータを全てを初期化することで、バックアップデータが正常であるか否かにかかわらず、電断からの復帰後も電断前の診断用データ、すなわちコマンド履歴データ及びエラー履歴データを保持するようになっている。
また、サブ制御部91は、起動処理(サブ)において、RAM91cの初期化条件として設定コマンド(開始)を受信した場合には、RAM91cの制御状態データ領域のみを初期化し、診断用データ領域を初期化しないことで、メイン制御部41側にて設定変更に伴いRAM41cの記憶内容が初期化されるか否かにかかわらず、電断からの復帰後も電断前の診断用データ、すなわちコマンド履歴データ及びエラー履歴データを保持するようになっている。
次に、サブ制御部91がコマンド履歴データを作成するためにコマンド受信する毎に実行するコマンド履歴記録処理について図25に基づいて説明する。
サブ制御部91は、上述のようにタイマ割込処理(サブ)によりコマンド受信時に割込を発生させて、メイン制御部41から送信されたコマンドを取得し、バッファに格納するコマンド受信割込処理を実行し、コマンド受信割込処理においてコマンド履歴記録処理を実行して、コマンド履歴データをRAM91cのコマンド履歴データ領域に作成する。
図25に示すように、コマンド履歴記録処理では、コマンドを受信したことを判定した場合に(Sq1)、RAM91cの診断用データ領域内の所定領域を参照して、コマンド履歴データ領域内の領域であって、新たに受信したコマンドの情報を記録する領域を特定可能な記録用アドレス1を取得する(Sq2)。
そして、Sq2のステップにおいて取得した記録用アドレス1に基づいて、コマンド履歴データ領域内の所定領域(当該記録用アドレス1の領域)を指定して、新たに受信したコマンド(種類及び内容を含む)を記録させる(Sq3)。その後、Sq2のステップにおいて参照した診断用データ領域内の記録用アドレス1を1つ分だけ次のアドレスに更新し(Sq4)、診断用データ領域内の更新後の記録用アドレス1がコマンド履歴データ領域の最終値であるか否かを判定し(Sq5)、更新後の記録用アドレス1が最終値である場合には、当該記録用アドレス1を初期値としてコマンド履歴データ領域の最初の値に設定し(Sq6)、コマンド履歴記録処理を終了させてコマンド受信割込処理に戻る。
一方で、Sq5のステップにおいて更新後の記録用アドレス1が最終値に達していないと判定した場合には、更新後の記録用アドレス1をそそまま維持し、コマンド履歴記録処理を終了させてコマンド受信割込処理に戻る。
このように、サブ制御部91は、コマンドを受信する毎にコマンド履歴記録処理を実行して、コマンド履歴データ領域に受信したコマンドを記録することで、コマンド履歴データを作成する。
また、サブ制御部91は、コマンド履歴記録処理において、記録用アドレス1を順次更新しつつ、当該記録用アドレス1により指定されるコマンド履歴データ領域の最初のアドレスから最終のアドレスまでの領域に、受信したコマンドを記録することでコマンド履歴データを作成するようになっており、コマンド履歴データ領域、すなわち当該コマンド履歴データ領域の最初のアドレスから最終のアドレスまでの領域は、1ゲームにおいて受信し得る個数以上の個数(本実施例では、100個)のコマンドを記録可能な容量が設定されているので、コマンド履歴記録処理が実行されることで、当該コマンド履歴記録処理が実行される際に受信したコマンドから、それよりも前に受信した100個のコマンドがコマンド履歴データとして記録される。
また、サブ制御部91は、コマンド履歴記録処理において、記録用アドレス1を順次更新し、更新後の記録用アドレス1がコマンド履歴データ領域の最終値に達する場合には、記録用アドレス1を初期値としてコマンド履歴データ領域の最初の値に設定して、当該記録用アドレス1により指定される領域に、受信したコマンドを記録してコマンド履歴データを作成するとともに、コマンド履歴データの記録用アドレス1を診断用データ領域に記憶することで、当該記録用アドレス1に基づいて、コマンド履歴データに記録されたコマンドの受信順序を特定すること、すなわち記録用アドレス1に基づいて最後に記録された最新のコマンド(記録用アドレス1の1つ前のアドレスのコマンド)を特定することや、記録用アドレス1よりも前のアドレスを1つづつ参照すること(コマンド履歴データ領域の最初のアドレスに達した場合には、最後のアドレスの1つ前のアドレスから1つづつ参照すること)で過去に受信したコマンドを、受信した順番に遡って特定することができるようになっている。
尚、受信したコマンドと受信番号(例えば、0〜99までの範囲で順次更新される値)を1組として特定可能に記録することで、コマンド履歴データに記録されたコマンドの受信順序を特定することが可能な構成であっても良い。
次に、サブ制御部91がエラー履歴データを作成するためにタイマ割込処理(サブ)において実行するエラー履歴記録処理について図26に基づいて説明する。
サブ制御部91は、タイマ割込処理(サブ)、起動処理(サブ)における復帰処理、電断処理(サブ)においてエラー履歴記録処理を実行して、コマンド履歴データをRAM91cのエラー履歴データ領域に作成する。
図26に示すように、エラー履歴記録処理では、メイン制御部41からエラーコマンドを受信したか否か(Sr1)、設定コマンド(開始)を受信したか否か(Sr2)、ドアコマンドに基づいて前面扉1bが開放されたことまたは閉鎖されたことを検出したか否か(Sr3)、サブ制御部91のRAM91cの異常やコマンドの受信異常(通信エラー)等のサブエラーをサブ制御部91が検出したか否か(Sr4)、後述する遊技履歴クリア操作によりサブ制御部91により保持している遊技履歴がクリアされたか否か(Sr5)、電源オン時すなわち起動処理(サブ)の実行中であるか否か(Sr6)、電源オフ時すなわち電断処理(サブ)の実行中であるか否か(Sr7)を判定する。
Sr1〜Sr7のステップにおいて、これらに該当する事象を検出したと判定した場合には、Sr8のステップに進み、RAM91cの診断用データ領域内の所定領域を参照して、エラー履歴データ領域内の領域であって、新たに検出されたエラー等の情報を記録する領域を特定可能な記録用アドレス2を取得し、時計装置97の出力に基づいて現在の時間情報(年月日及び時刻を含む情報)を取得する(Sr9)。そして、Sr8のステップにおいて取得した記録用アドレス2に基づいて、エラー履歴データ領域内の所定領域(当該記録用アドレス2の領域)を指定して、Sr9のステップで取得した現在の時間情報を記録させるとともに、Sr1〜Sr7のステップにおいて新たに検出されたエラー等の種類(図27参照)を記録させる(Sr10)。
Sr10においてエラー履歴データ領域に新たに検出されたエラー等の種類を記録させた後は、Sq8のステップにおいて参照した診断用データ領域内の記録用アドレス2を1つ分だけ次のアドレスに更新し(Sr11)、診断用データ領域内の更新後の記録用アドレス2がエラー履歴データ領域の最終値であるか否かを判定し(Sr12)、更新後の記録用アドレス2が最終値である場合には、当該記録用アドレス2を初期値としてエラー履歴データ領域の最初の値に設定し(Sr13)、エラー履歴記録処理を終了させて呼び出し元の処理に戻る。一方で、Sr12のステップにおいて更新後の記録用アドレス2が最終値に達していないと判定した場合には、更新後の記録用アドレス2をそそまま維持し、エラー履歴記録処理を終了させて呼び出し元の処理に戻る。
Sr9のステップにおいてRAM91cに記録させるエラー等の種類は、図27に示すように、オーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、メダル払出エラー(E4)、メダル投入エラー(E5)、リール回転エラー(E6)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、エラー解除、RAMクリア(設定変更)、ドア開放、ドア閉鎖、通信エラー、サブ制御部エラー、遊技履歴クリア、サブバックアップエラー、電源オン、電源オフを含む。
そして、Sr1のステップにおいて、エラーコマンドを受信したと判定した場合には、エラー等の種類として、受信したエラーコマンドに基づき特定されるエラーに該当するオーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、メダル払出エラー(E4)、メダル投入エラー(E5)、リール回転エラー(E6)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、エラー解除のいずれかがRAM91cに設定される。また、Sr2のステップにおいて設定コマンド(開始)を受信したと判定した場合には、エラー等の種類として、RAMクリア(設定変更)がRAM91cに設定される。また、Sr3のステップにおいてドアコマンドに基づいて前面扉1bが開放されたことまたは閉鎖されたことを検出したと判定した場合であって、前面扉1bが開放されたことを検出した場合には、エラー等の種類としてドア開放を記録させる一方、前面扉1bが閉鎖されたことを検出した場合には、エラー等の種類としてドア閉鎖を記録させる。また、Sr4のステップにおいてサブエラーが検出されていると判定した場合には、エラー等の種類として、サブ制御部91により検出されているサブエラーの種類に該当する通信エラー(サブ制御部91でのコマンドの受信エラー)、サブ制御部エラー(RAM91cに関するエラー)、バックアップエラー(バックアップRAM61に関するエラー)を記録させる。また、Sr5のステップにおいて、遊技履歴がクリアされたと判定した場合には、エラー等の種類として、遊技履歴クリアを記録させる。また、Sr6のステップにおいて電源オン時であると判定した場合には、エラー等の種類として、電源オンを記録させる。また、Sr7のステップにおいて電源オフ時であると判定した場合には、エラー等の種類として、電源オフを記録させるようになっている。
このように、サブ制御部91は、タイマ割込処理(サブ)、起動処理(サブ)における復帰処理、電断処理(サブ)においてエラー履歴記録処理を実行して、各処理のタイミングにおいて該当するエラー等が発生している場合には、RAM91cのエラー履歴データ領域に該当するエラー等の種類を記録させることで、エラー履歴データを作成する。
また、サブ制御部91は、エラー履歴記録処理において、記録用アドレス2を順次更新しつつ、当該記録用アドレス2により指定されるエラー履歴データ領域の最初のアドレスから最終のアドレスまでの領域に、該当するエラー等の種類を記録することでエラー履歴データを作成するようになっており、エラー履歴データ領域、すなわち当該エラー履歴データ領域の最初のアドレスから最終のアドレスまでの領域は、所定の営業期間においてメイン制御部41及びサブ制御部91において発生する可能性があるエラー等の数よりも多い個数(本実施例では、3日程度の営業期間において想定され得る100個)のエラー等を記録可能な容量が設定されているので、エラー履歴記録処理が実行されることで、当該エラー履歴記録処理が実行される際に、発生したエラー等から、それよりも前に発生した100個のエラー等がエラー履歴データとして記録される。
また、サブ制御部91は、エラー履歴記録処理において、記録用アドレス2を順次更新し、更新後の記録用アドレス2がエラー履歴データ領域の最終値に達する場合には、記録用アドレス2を初期値としてエラー履歴データ領域の最初の値に設定して、当該記録用アドレス2により指定される領域に、エラー等の種類を記録してエラー履歴データを作成するとともに、エラー履歴データの記録用アドレス2を診断用データ領域に記憶することで、当該記録用アドレス2に基づいて、エラー履歴データに記録されたエラー等の順序を特定すること、すなわち記録用アドレス2に基づいて最後に記録された最新のエラー等(記録用アドレス2の1つ前のアドレスのエラー等)を特定することや、記録用アドレス2よりも前のアドレスを1つづつ参照すること(エラー履歴データ領域の最初のアドレスに達した場合には、最後のアドレスの1つ前のアドレスから1つづつ参照すること)で過去に発生したエラー等を、発生した順番に遡って特定することができるようになっている。
また、サブ制御部1は、エラー履歴記録処理において、記録用アドレス2により指定するエラー履歴データ領域にエラー等の種類を記録させる際に、時計装置97により取得した現在の時間情報を同領域に合わせて記録させることで、エラー履歴データに記録された各エラー等について発生した時間を特定できるようになっている。
次に、サブ制御部91が所定の出力条件の成立時にコマンド履歴データ及びエラー履歴データの内容を液晶表示器51に表示させる履歴表示制御について、図27〜図32に基づいて説明する。
サブ制御部91は、メイン制御部41側においてゲーム中の制御が行われているか否かを、コマンドの受信状況に基づいて判定し、メイン制御部41側においてゲーム中の制御が行われていない、すなわちゲーム中でないと判定した場合には、所定の出力条件として、第1の履歴表示条件(前面扉1bが開放状態(エラー状態中及びエラー状態後を除く)であり、設定キースイッチ37のオン状態が検出されたこと)または第2の履歴表示条件(前面扉1bが開放状態(エラー状態中及びエラー状態後を除く)であり、演出用スイッチ56のオン状態が所定時間(本実施例では、5秒間)にわたりに検出されたこと)が成立した場合に、履歴表示制御を開始する。尚、第1の履歴表示条件及び第2の履歴表示条件におけるエラー状態中とは、メイン制御部41側においてエラー状態の制御が開始されてから、当該エラー状態の制御が終了されるまでの期間であり、エラー状態後とは、メイン制御部41側においてエラー状態の制御が終了されてから前面扉1bが少なくとも1度閉鎖されるまでの期間である。また、ゲーム中とは、所定の賭数(本実施例では、3枚または2枚)の設定操作が行われ、スタートスイッチ7の操作が行われたときから、第3停止の操作が行われて全てのリール2L、2C、2Rが停止したときまでの期間である。尚、第3停止の操作が行われて全てのリール2L、2C、2Rが停止したときに、再遊技役の組合せが停止したことで再遊技が付与される場合には、全てのリール2L、2C、2Rが停止した後からスタートスイッチ7の操作が行われるまでの期間においては、所定の出力条件が成立しているか否かを判定せず、履歴表示制御を実行しない構成であっても良いし、所定の出力条件が成立しているか否かを判定して、履歴表示制御を実行し得る構成であっても良い。
履歴表示制御では、履歴表示制御が開始された後に検出される操作態様に応じて、上述のエラー履歴データに含まれる全ての内容を液晶表示器51に表示させる詳細履歴表示、上述のエラー履歴データのうち一部の特定の内容のみを液晶表示器51に表示させる簡易履歴表示、上述のコマンド履歴データに含まれる全ての内容を液晶表示器51に表示させるコマンド履歴表示、サブ制御部91がRAM91cに記録している遊技履歴情報(RB、BB、ATの当選回数、RB、BB、AT後のゲーム数、払出しメダル数など遊技に関する情報の履歴)を削除する遊技履歴クリアを行うことが可能である。
図27に示すように、詳細履歴表示では、液晶表示器51に表示させる情報として、エラー履歴データに含まれるオーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、メダル払出エラー(E4)、メダル投入エラー(E5)、リール回転エラー(E6)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、エラー解除、RAMクリア(設定変更)、ドア開放、ドア閉鎖、通信エラー、サブ制御部エラー、遊技履歴クリア、サブバックアップエラーに関する情報、及び各エラー等の記録した時間情報を含む。一方、簡易履歴表示では、液晶表示器51に表示させる情報として、エラー履歴データに含まれる内容のうち、オーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、リール回転エラー(E6)、エラー解除、サブバックアップエラー、電源オン、電源オフに関する情報、及び各エラー等の記録した時間情報を含み、その他のメダル払出エラー(E4)、メダル投入エラー(E5)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、RAMクリア(設定変更)、ドア開放、ドア閉鎖、通信エラー、サブ制御部エラー、遊技履歴クリア、電源オン、電源オフに関する情報は、液晶表示器51に表示させる情報から除かれている。
図28に示すように、サブ制御部91は、第1の履歴表示条件が成立した際、すなわちメイン制御部41がエラー状態の制御を行っている期間及びエラー状態の制御を開始してから、当該エラー状態の制御を終了した後に前面扉1bが閉鎖されるまでの期間以外の期間において、前面扉1bが開放状態とされて、設定キースイッチ37がオン状態とされたことで、履歴表示制御を開始した際には、液晶表示器51の表示領域51aのうちリール2L、2C、2Rの透視窓3の上方側に設けられた履歴等表示領域(図28(a)参照)に、所定の操作態様(演出ボタンの長押し及び短押し)に応じて、上述の詳細履歴表示、簡易履歴表示、コマンド履歴表示、遊技履歴クリアを行うことが可能である旨を示唆する履歴表示選択画面1(図28(b)参照)を表示させる。第1の履歴表示条件が成立した際に実行する履歴表示制御では、所定の操作態様による操作により、詳細履歴表示、簡易履歴表示、コマンド履歴表示、遊技履歴クリアのいずれも行うことが可能である。
図29(a)に示すように、履歴表示制御では、第1の履歴表示条件が成立したことで履歴表示選択画面1が表示されているときに、演出用スイッチ56を短押し(本実施例では、1未満の押下)の操作態様で操作することで、簡易履歴表示が選択されている状態(本実施例では、図29(a)に示すよう三角画像が当該簡易履歴表示の左右に位置する状態)で、演出用スイッチ56を長押し(本実施例では、1秒以上にわたる押下)の操作態様で操作することで、液晶表示器51に表示している履歴表示選択画面1を簡易履歴表示画面に切り替えるように制御する。
図29(b)に示すように、サブ制御部91は、液晶表示器51の表示を簡易履歴表示画面に切り替えた後は、RAM91cのエラー履歴データを参照し、簡易履歴表示に対応するエラー等(図27参照)及び当該エラー等に対応する時間情報を、当該エラー等が記録された順序を特定可能に所定個数(本実施例では、10組)づつ簡易履歴表示画面上に順次表示させる。また、時計装置97の出力に基づいて特定される現在の時間情報(現在の年月日及び時刻)を簡易履歴表示画面上に表示させる。この状態で、演出用スイッチ56が長押しされたことが検出された場合には、簡易履歴表示画面を履歴表示選択画面1に切り替える(メニューに戻る)ように制御する一方、演出用スイッチ56が短押しされたことが検出された場合には、表示しているエラー等及び時間情報を次の所定個数の内容に切り替える(ページ送り)ように制御する。
図30(a)に示すように、履歴表示制御では、第1の履歴表示条件が成立したことで履歴表示選択画面1が表示されているときに、演出用スイッチ56を短押しの操作態様で操作することで、詳細履歴表示が選択されている状態(本実施例では、図30(a)に示すよう三角画像が当該詳細履歴表示の左右に位置する状態)で、演出用スイッチ56を長押しの操作態様で操作することで、液晶表示器51に表示している履歴表示選択画面1を詳細履歴表示画面に切り替えるように制御する。
図30(b)に示すように、サブ制御部91は、液晶表示器51の表示を詳細履歴表示画面に切り替えた後は、RAM91cのエラー履歴データを参照し、詳細履歴表示に対応するエラー等(図27参照)及び当該エラー等に対応する時間情報を、当該エラー等が記録された順序を特定可能に所定個数(本実施例では、15組)づつ詳細履歴表示画面上に順次表示させる。また、時計装置97の出力に基づいて特定される現在の時間情報(現在の年月日及び時刻)を詳細履歴表示画面上に表示させる。この状態で、演出用スイッチ56が長押しされたことが検出された場合には、詳細履歴表示画面を履歴表示選択画面1に切り替える(メニューに戻る)ように制御する一方、演出用スイッチ56が短押しされたことが検出された場合には、表示しているエラー等及び時間情報を次の所定個数の内容に切り替える(ページ送り)ように制御する。
図31(a)に示すように、履歴表示制御では、第1の履歴表示条件が成立したことで履歴表示選択画面1が表示されているときに、演出用スイッチ56を短押しの操作態様で操作することで、コマンド履歴表示が選択されている状態(本実施例では、図31(a)に示すよう三角画像が当該コマンド履歴表示の左右に位置する状態)で、演出用スイッチ56を長押しの操作態様で操作することで、液晶表示器51に表示している履歴表示選択画面1をコマンド歴表示画面に切り替えるように制御する。
図31(b)に示すように、サブ制御部91は、液晶表示器51の表示をコマンド履歴表示画面に切り替えた後は、RAM91cのコマンド履歴データを参照し、記録されている全てのコマンドを、当該コマンドが記録された順序を特定可能にコマンド履歴表示画面上に表示させる。また、時計装置97の出力に基づいて特定される現在の時間情報(現在の年月日及び時刻)をコマンド履歴表示画面上に表示させる。また、コマンド履歴データに記録されている全てのコマンドを当該コマンドが記録された順序とともに特定可能な2次元コードをコマンド履歴表示画面上に表示させる。
図32に示すように、サブ制御部91は、第2の履歴表示条件が成立した際、すなわちメイン制御部41がエラー状態の制御を行っている期間及びエラー状態の制御を開始してから、当該エラー状態の制御を終了した後に前面扉1bが閉鎖されるまでの期間以外の期間において、前面扉1bが開放状態とされて、演出用スイッチ56が所定時間にわたり長押しの操作態様(本実施例では5秒間にわたりオン状態に押下する態様)で操作されたことで、履歴表示制御を開始した際には、液晶表示器51の履歴等表示領域(図28(a)参照)に、所定の操作態様(演出ボタンの長押し)により、上述の簡易履歴表示を行うことが可能である旨を示唆する履歴表示選択画面2(図32(a)参照)を表示させる。第2の履歴表示条件が成立した際に実行する履歴表示制御では、所定の操作態様による操作により、簡易履歴表示のみを行うことが可能である。履歴表示選択画面2では、履歴表示制御として行うことができない詳細履歴表示、コマンド履歴表示、遊技履歴クリアの表示態様は、簡易履歴表示の表示態様と異なる態様(本実施例では、文字の色を反転させて表示させる態様)で表示させることにより、これらの詳細履歴表示、コマンド履歴表示、遊技履歴クリアを選択して行わせることが不可能な旨を示唆する。
図32(a)に示すように、第2の履歴表示条件が成立したことで履歴表示選択画面2が表示されているときに、演出用スイッチ56を長押し(本実施例では、1秒以上にわたる押下)の操作態様で操作することで、液晶表示器51に表示している履歴表示選択画面を簡易履歴表示画面に切り替えるように制御する。
図32(b)に示すように、サブ制御部91は、履歴表示選択画面2から簡易履歴表示画面に切り替えた後は、履歴表示選択画面2から簡易履歴表示画面に切り替えた場合と同様に、簡易履歴表示に対応するエラー等(図27参照)及び当該エラー等に対応する時間情報、現在の時間情報(現在の年月日及び時刻)を簡易履歴表示画面上に表示させるように制御する。
このように、サブ制御部91は、所定の出力条件として、第1の履歴表示条件(前面扉1bが開放状態(エラー状態中及びエラー状態後を除く)であり、設定キースイッチ37のオン状態が検出されたこと)が成立した場合に、履歴表示制御を実行することで、受信したコマンドの履歴を液晶表示器51に表示させることが可能である。
また、サブ制御部91は、所定の出力条件が成立した場合に、RAM91cのコマンド履歴データ領域に記録されているコマンド履歴データを含むコマンド履歴表示画面を液晶表示器51に表示さることが可能であり、コマンド履歴表示画面では、コマンド履歴データとして記録されている全てのコマンドを、当該コマンド当該コマンドが記録された順序すなわちコマンドを受信した順序を特定可能に表示させる。
また、サブ制御部91は、所定の出力条件が成立した場合に、RAM91cのコマンド履歴データ領域に記録されているコマンド履歴データを含むコマンド履歴表示画面を、液晶表示器51の表示領域51aのうちリール2L、2C、2Rの透視窓3の上方側の領域すなわち透過領域51b以外の領域に表示させる。
また、サブ制御部91は、所定の出力条件として、第1の履歴表示条件(前面扉1bが開放状態(エラー状態中及びエラー状態後を除く)であり、設定キースイッチ37のオン状態が検出されたこと)または第2の履歴表示条件(前面扉1bが開放状態(エラー状態中及びエラー状態後を除く)であり、演出用スイッチ56のオン状態が所定時間(本実施例では、5秒間)にわたりに検出されたこと)が成立した場合に、履歴表示制御を実行することで、スロットマシン1において発生したエラー等の履歴を液晶表示器51に表示させることが可能である。
また、サブ制御部91は、所定の出力条件として、第1の履歴表示条件が成立した場合には、履歴表示制御を実行することで、詳細履歴表示画面を表示させることが可能であり、詳細履歴表示画面ではエラー履歴データに含まれる第1の事象(オーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、メダル払出エラー(E4)、メダル投入エラー(E5)、リール回転エラー(E6)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、エラー解除、RAMクリア(設定変更)、ドア開放、ドア閉鎖、通信エラー、サブ制御部エラー、遊技履歴クリア、サブバックアップエラー、電源オン、電源オフ)を含めて表示させる一方で、第2の履歴表示条件が成立した場合には、履歴表示制御を実行することで、簡易履歴表示画面を表示させることが可能であり、簡易履歴表示画面ではエラー履歴データに含まれる第2の事象(オーバーフローエラー(E1)、ホッパーエンプティエラー(E2)、メダル詰りエラー(E3)、リール回転エラー(E6)、エラー解除、サブバックアップエラー、電源オン、電源オフ)を含めて表示させる。
本実施例のメイン制御部41では、設定キースイッチ37を特定のキーにより操作することで設定変更状態に移行させることが可能であり、一般にスロットマシン1が設置される店舗等では、当該特定のキーを所持する店員等の者のみが当該設定キースイッチ37を操作可能であり、その他の者は設定キースイッチ37を操作することができないようになっている。このような構成において、仮に、履歴表示制御において簡易履歴表示画面または詳細履歴表示画面において、設定キースイッチ37を操作するために関連する情報、例えば、RAMエラー(E8)、設定変更エラー、RAMクリア(設定変更)、ドア開放、ドア閉鎖等が表示されると、特定のキーを所持する店員等の者のみしか行うことができない設定変更が行われた可能性があることや設定キースイッチ37を操作した可能性があることを推測可能となってしまう。これに対して、サブ制御部91は、第2の履歴表示条件が成立した場合、すなわち設定キースイッチ37を操作することなくエラー履歴データを表示させる場合には、RAMエラー(E8)、設定変更エラー、RAMクリア(設定変更)、ドア開放、ドア閉鎖に関する情報を、液晶表示器51に表示させる情報から除いている。
本実施例のサブ制御部91は、メイン制御部41からのコマンドの受信に応じて演出の制御を行うことが可能であり、演出の制御に用いるデータ及びコマンドを受信した履歴を含むデータを保持して、所定の出力条件が成立したときには、コマンドの受信履歴を液晶表示器51に表示させる構成である。
このような構成では、サブ制御部91が演出の制御に用いるデータに異常が検出された場合に、サブ制御部91が保持するデータを初期化する構成とすると、コマンドの受信に伴い生じた異常を特定できなくなってしまうこととなる。
これに対して、本実施例のサブ制御部91は、演出の制御に用いるデータである制御状態データ及びコマンドを受信した履歴のデータであるコマンド履歴データを記憶可能なRAM91cを備えており、RAM91cには、第1の記憶領域として、制御状態データを記憶可能な制御状態データ領域と、第2の記憶領域として、コマンド履歴データを記憶可能なコマンド履歴データ領域とが設けられており、所定の出力条件が成立することでコマンド履歴データ領域に記憶されているコマンド履歴データの内容を液晶表示器51に表示させることが可能な構成であり、スロットマシン1への電力供給が停止される場合に、第1の記憶領域に記憶されている制御状態データ及び第2の記憶領域に記憶されているコマンド履歴データを、電力供給が停止しても記憶データを保持することが可能なバックアップRAM61により保持させ、その後、スロットマシン1への電力供給が開始されたときに、初期化条件が成立しているか否かを判定し、初期化条件が成立していると判定したときに、バックアップRAM61により保持されているデータのうち制御状態データを初期化する一方でコマンド履歴データは初期化せずに保持するので、初期化条件が成立してバックアップRAM61により保持されているデータが初期化された場合でも、初期化条件が成立する前のコマンドの受信状況を特定することができる。
尚、本実施例では、メイン制御部41は、遊技の制御を行う一方で、サブ制御部91は、メイン制御部41から受信したコマンドに応じて演出の制御を行う構成であるが、所定の制御を行う第1の制御手段がコマンド等の指示を送信し、当該コマンド等を受信した第2の制御手段が当該コマンド等に基づいて所定の制御を行う構成であっても良く、例えば、第1の制御手段としてのメイン制御部41が遊技及び演出の制御を行って、第2の制御手段としてのサブ制御部91が、第1の制御手段から送信されたコマンドに基づいて何らかの制御を行うである構成であっても良い。このような構成においては、第2の制御手段が制御に用いるデータ及び第1の制御手段からのコマンドの履歴データを、電力供給が停止しても記憶データを保持することが可能な保持手段により保持させ、初期化条件が成立していると判定したときに、保持手段により保持されているデータのうち第2の制御手段が制御に用いるデータを初期化する一方でコマンド履歴データは初期化せずに保持する構成とすることで、初期化条件が成立し、保持手段により保持されているデータが初期化される場合であっても、初期化条件が成立する前のコマンドの受信状況を特定することができる。
また、本実施例では、サブ制御部91は、該サブ制御部91が備えるRAM91cとは別個の記憶手段であってスロットマシン1への電力供給が停止してもデータが保持されるバックアップRAM61に、RAM91cの記憶されているデータを保持させることが可能な構成であるが、RAM91c自体を、スロットマシン1への電力供給が停止しても記憶しているデータを保持可能な構成としても良い。
また、本実施例では、サブ制御部91は、RAM91cとは別個に電力供給が停止してもデータが保持されるバックアップRAM61に対して、RAM91cに記憶されているデータを保存することでRAM91cに記憶されているデータを保持させる構成であり、スロットマシン1への電力供給が開始された際に、初期化条件が成立した場合に、バックアップRAM61に記憶されているデータのうち制御状態データをRAM91cに複製せずに初期化することで、電力供給が停止される前にRAM91cに記憶されていた制御状態データをRAM91cに復帰させない構成であるが、初期化条件が成立した場合に、バックアップRAM61に記憶されているデータのうち制御状態データをRAM91cに複製及び初期化しないことで、電力供給が停止される前にRAM91cに記憶されていた制御状態データをRAM91cに復帰させない構成であっても良い。
また、本実施例では、サブ制御部91は、所定の出力条件が成立することで、コマンド履歴データ領域に記憶されているコマンド履歴データの内容を液晶表示器51に表示する構成であり、コマンド履歴データの内容を文字列及び2次元コード化した画像を表示する構成であるが、コマンド履歴データの内容を外部機器で特定可能な電磁気的な信号等により出力する構成でも良い。
本実施例のサブ制御部91は、所定の出力条件が成立することで、コマンド履歴データ領域に記憶されているコマンド履歴データの内容を液晶表示器51に表示する構成であり、コマンド履歴データの内容を液晶表示器51に表示する際には、コマンド履歴データに含まれるコマンドを受信した順序に従って表示させるので、液晶表示器51に表示された内容からサブ制御部91がコマンドを受信した順番を特定することができる。
本実施例のサブ制御部91は、メイン制御部41からコマンドを受信する毎にコマンド履歴記録処理を実行し、受信したコマンドの履歴をRAM91cのコマンド履歴データ領域に記録する構成であり、コマンド履歴データ領域は、少なくとも1単位のゲームにおいてメイン制御部41からサブ制御部91に送信され得る最大個数より多い個数(本実施例では、100個)のコマンドを記録可能な容量が設定されているので、1単位以上のゲームにわたりメイン制御部41から受信したコマンドの受信状況を特定することができる。
本実施例のサブ制御部91は、スロットマシン1への電力供給が開始されたときにバックアップRAM61により保持されているデータが正常か否かを判定する破壊判定を実行可能であり、破壊判定では、バックアップRAM61により保持されているデータのうち制御状態データに基づいて、すなわちコマンド履歴データを除くデータに基づいてバックアップRAM61により保持されているデータが正常か否かを判定し、バックアップRAM61により保持されているデータが正常でないと判定した場合に、バックアップRAM61により保持されているデータのうち制御状態データを初期化するので、破壊判定において、バックアップRAM61により保持されているデータのうちサブ制御部91が演出の制御に用いる制御状態データ以外のデータが正常でないことにより、バックアップRAM61により保持されているデータが正常でないと判定してしまう不要な判定を行わずに済む。
本実施例のサブ制御部91及びRAM91cが搭載された演出制御基板90には、バックアップRAM61及びバックアップ電池62が搭載されており、バックアップRAM61は、当該バックアップ電池62から供給される電力によって該バックアップRAM61に記憶しているデータを保持することが可能であるので、演出制御基板90をスロットマシン1本体から取り外した状態であっても、バックアップRAM61に記憶されているデータを保持することができる。
尚、本実施例では、RAM91cの記憶内容を、当該RAM91cとは別個のスロットマシン1への電力供給が停止しても記憶するバックアップRAM61により保持可能な構成であるが、RAM91c自体を、スロットマシン1への電力供給が停止しても記憶しているデータを保持可能な構成としても良く、このような構成においては、例えば、RAM91cに電力を供給することが可能なバックアップ電池を演出制御基板90に設けることで、演出制御基板90をスロットマシン1本体から取り外した状態であっても、RAM91c自体に記憶されているデータを保持することができる。
本実施例のバックアップRAM61は、バックアップ電池62から供給される電力によって記憶しているデータを保持可能な構成であるので、電池以外の逐電手段、例えばキャパシタ等から供給される電力によって記憶しているデータを保持可能な構成と比較して、長時間にわたり大容量のデータを保持し続けることができる。
尚、本実施例では、バックアップRAM61は、バックアップ電池62から供給される電力によって保持可能な構成であるが、バックアップRAM61に電力を供給する手段は、電池以外のキャパシタ等の逐電手段であっても良い。
また、本実施例では、スロットマシン1への電力供給が停止される場合に、バックアップデータを保持する記憶手段として、バックアップ電池62から電力が供給されることで記憶内容を保持可能なバックアップRAM61を用いる構成であるが、記憶手段として、EEPROM等の不揮発性の記憶手段を用いる構成であっても良く、このような構成とすることで、スロットマシン1への電力供給が停止される場合に、記憶手段に対して電力を供給するための電力供給手段を用いることなく、アックアップデータを保持することができる。
本実施例のサブ制御部91は、所定の出力条件が成立することでRAM91cのコマンド履歴データ領域に記憶されているコマンド履歴データの内容を液晶表示器51に表示させることが可能な構成であり、コマンド履歴データの内容を液晶表示器51に表示させる際には、液晶表示器51における透過領域51b以外の表示領域51aに、コマンド履歴データの内容を表示させるので、液晶表示器51に表示されたコマンド履歴データの内容の視認性を確保することができる。
本実施例のサブ制御部91は、所定の出力条件が成立することで、エラーや前面扉1bの開閉状態等のスロットマシン1に関する事象の発生履歴を液晶表示器51に表示させることが可能な構成である。
このような構成では、スロットマシン1に関する所定の事象の発生履歴を表示する場合に、例えば、設定変更に関わる事象など、事象の種類によっては閲覧を一部の者に制限する必要があるが、全ての事象について閲覧を制限すると、相対的に重要度の低い事象の発生履歴を表示させる場合でも面倒な操作が必要となってしまうこととなる。
これに対して、本実施例のサブ制御部91は、RAM91cにスロットマシン1に関する複数種類の事象の発生履歴をエラー履歴データとして記憶させ、所定の出力条件が成立することで、エラー履歴データの内容を液晶表示器51に表示させることが可能な構成であり、第1の操作として、設定キースイッチ37の操作がされたことを含む所定の出力条件が成立したときに、RAM91cに記憶されているエラー履歴データのうち第1種類の事象の発生履歴を液晶表示器51に表示させる詳細履歴表示を実行する一方、第2の操作として、演出用スイッチ56が長押しの操作態様で操作されたことを含む所定の出力条件が成立したときに、RAM91cに記憶されているエラー履歴データのうち第2種類の事象の発生履歴を液晶表示器51に表示させる簡易履歴表示を実行し、第1種類の事象は、第2種類の事象に含まれるいずれの事象よりも重要な事象を含むようになっているので、第2種類の事象に含まれるいずれの事象よりも重要な事象を含む第1種類の事象の発生履歴を液晶表示器51に表示させる詳細履歴表示を実行させる場合には、第2種類の事象の発生履歴を液晶表示器51に表示させる簡易履歴表示を実行させる際の第2の操作ではなく第1の操作が必要となるため、相対的に重要ではない第2種類の事象については簡易な操作で閲覧可能とすることができる一方で、相対的に重要な事象を含む第1種類の事象については簡易履歴表示では表示されないので閲覧を制限することができる。
尚、本実施例では、サブ制御部91は、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を文字列の表示態様により液晶表示器51に表示させる構成であるが、エラー履歴データの内容を液晶表示器51に表示させる際には、2次元コードなどにコード化した画像を表示する構成でも良い。
また、本実施例では、サブ制御部91は、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を液晶表示器51に表示させる構成であるが、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を外部機器で特定可能な電磁気的な信号等により出力する構成でも良い。
また、本実施例では、サブ制御部91は、エラー履歴データのうち第1種類の事象の発生履歴を液晶表示器51に表示させる詳細履歴表示において、第2種類の事象に含まれるいずれの事象よりも重要な事象として、メダル払出エラー(E4)、メダル投入エラー(E5)、異常入賞エラー(E7)、RAMエラー(E8)、設定変更エラー、RAMクリア(設定変更)、ドア開放、ドア閉鎖、通信エラー、サブ制御部エラー、遊技履歴クリアに関する情報を含めて表示させる構成であるが、重要な事象は、第2種類の事象に比較して重要度が相対的に高い事象であれば良い。
第1種類の事象は、重要な事象として、第1の操作に関連する操作等が行われたことを推測可能な情報(例えば、遊技者にとっての有利度の変更、電源のON/OFF、扉の開放などの事象)や、不正に関する事象の発生の可能性を示唆する事象(メダルセレクタ29に関するエラー、通信エラー等の情報)等を含むととともに、これらの事象にくらべて第2種類の事象に含まれる重要度が相対的に低い事象等、その他の事象を含むものであっても良い。
また、本実施例では、サブ制御部91は、第1種類の事象の発生履歴を液晶表示器51に表示させる詳細履歴表示では、エラー履歴データの内容の全てを表示させる一方で、第2種類の事象の発生履歴を液晶表示器51に表示させる簡易履歴表示では、第1種類の事象に含まれる事象のうち重要な事象については表示を制限して、相対的に重要な事象でない一部の事象についてのみを表示させる構成であり、詳細履歴表示において表示される第1種類の事象と、簡易履歴表示において表示される第2種類の事象とは、一部が重複する構成であるが、第1種類の事象と第2種類の事象が重複しない構成でも良い。
本実施例のメイン制御部41は、設定キースイッチ37の操作により遊技者にとっての有利度である設定値を設定可能であり、サブ制御部91は、簡易履歴表示において、重要な事象として、有利度の設定が変更されたことを特定または推測可能な、設定変更エラー、RAMクリア(設定変更)、ドア開放、ドア閉鎖を含まない第2種類の事象の発生履歴を表示するので、遊技者にとっての有利度の設定が変更されたことを特定または推測可能な事象の閲覧を制限することができる。
本実施例のサブ制御部91は、第1の操作として、設定キースイッチ37の操作がされたことを含む所定の出力条件が成立したときに詳細履歴表示を実行する一方、第2の操作として、演出用スイッチ56が長押しの操作態様で操作されたことを含む所定の出力条件が成立したときに簡易履歴表示を実行する構成であり、第1の操作としての設定キースイッチ37の操作は、所定の設定キーを所持している有利度を設定する権限を有する者が行える操作であり、第2の操作としての演出用スイッチ56の長押しの操作態様での操作は、有利度を設定する権限を有する者か否かに関わらず行える操作であるので、有利度の設定が変更されたことを特定または推測可能な事象の閲覧を、設定キーを所持しており設定キースイッチ37の操作を行うことが可能な者、すなわち有利度を設定する権限を有する者に制限することができる。
尚、本実施例では、サブ制御部91は、第1の操作として、設定キースイッチ37の操作がされたことを含む所定の出力条件が成立したときに詳細履歴表示を実行する構成であるが、第1の操作は、有利度を設定する権限を有する者が行うことが可能な操作であれば良く、有利度を設定する権限を有する者のみが知り得る所定の暗証番号や暗号等の入力や所定の操作順での所定スイッチ類の操作、所定の外部機器の接続操作などであっても良い。
本実施例のサブ制御部91は、所定の出力条件が成立することで詳細履歴表示画面または簡易履歴表示画面を液晶表示器51に表示させることが可能な構成であり、詳細履歴表示画面及び簡易履歴表示画面では、所定の事象の発生日時を表示させるとともに、当該履歴表示画面に、時計装置97により取得した現在日時も表示させるので、履歴表示画面上で所定の事象の発生日時と現在日時とを比較しつつ事象の発生状況を確認できる。
本実施例のサブ制御部91は、演出の制御に用いるデータである制御状態データ及びスロットマシン1に関する所定の事象の発生履歴のデータであるエラー履歴データを記憶可能なRAM91cを備えており、RAM91cには、第1の記憶領域として、制御状態データを記憶可能な制御状態データ領域と、第2の記憶領域として、エラー履歴データを記憶可能なエラー履歴データ領域とが設けられており、所定の出力条件が成立することでエラー履歴データ領域に記憶されているエラー履歴データの内容を液晶表示器51に表示させることが可能な構成であり、スロットマシン1への電力供給が停止される場合に、第1の記憶領域に記憶されている制御状態データ及び第2の記憶領域に記憶されているエラー履歴データを、電力供給が停止しても記憶データを保持することが可能なバックアップRAM61により保持させること、及びスロットマシン1への電力供給が開始されたときに、初期化条件が成立しているか否かを判定し、初期化条件が成立していると判定したときに、バックアップRAM61により保持されているデータのうち制御状態データを初期化する一方でエラー履歴データは初期化せずに保持するので、初期化条件が成立してバックアップRAM61により保持されているデータが初期化された場合でも、初期化条件が成立する前の所定の事象の発生履歴を特定することができる。
尚、本実施例では、サブ制御部91は、該サブ制御部91が備えるRAM91cとは別個の記憶手段であってスロットマシン1への電力供給が停止してもデータが保持されるバックアップRAM61に、RAM91cの記憶されているデータを保持させることが可能な構成であるが、RAM91c自体を、スロットマシン1への電力供給が停止しても記憶しているデータを保持可能な構成としても良い。
また、本実施例では、サブ制御部91は、RAM91cとは別個に電力供給が停止してもデータが保持されるバックアップRAM61に対して、RAM91cに記憶されているデータを保存することでRAM91cに記憶されているデータを保持させる構成であり、スロットマシン1への電力供給が開始された際に、初期化条件が成立した場合に、バックアップRAM61に記憶されているデータのうち制御状態データをRAM91cに複製せずに初期化することで、電力供給が停止される前にRAM91cに記憶されていた制御状態データをRAM91cに復帰させない構成であるが、初期化条件が成立した場合に、バックアップRAM61に記憶されているデータのうち制御状態データをRAM91cに複製及び初期化しないことで、電力供給が停止される前にRAM91cに記憶されていた制御状態データをRAM91cに復帰させない構成であっても良い。
本実施例のサブ制御部91は、前面扉1bを開いた状態において所定の操作がされることにより、エラー等、スロットマシン1に関する所定の事象の発生履歴を液晶表示器51に表示させることが可能な構成である。
このような構成では、本来遊技場の店員がこれらの事象の発生履歴を液晶表示器51に表示させて確認するものであるが、例えば、遊技者が遊技を行っている状況でエラーを解消するために前面扉1bを開放した場合にも、誤って所定の操作がされることでスロットマシン1に関する事象の発生履歴が表示されてしまう虞がある。
これに対して、本実施例のメイン制御部41は、スロットマシン1に関する所定のエラーが検出されることでエラー状態に制御することが可能であり、エラー状態は、エラーの原因を除去するのに前面扉1bの開放を必要とするエラー状態を含む構成であり、サブ制御部91は、サブ制御部91は、RAM91cにスロットマシン1に関する複数種類の事象の発生履歴をエラー履歴データとして記憶させ、所定の出力条件が成立することで、エラー履歴データの内容を液晶表示器51に表示させることが可能な構成であり、所定の出力条件として、前面扉1bが開放状態であること及び所定の操作がされたことを含み、メイン制御部41側においてエラー状態に制御された後、該エラー状態が解除される前に、前面扉1bが開放状態である場合には、所定の操作がされてもエラー履歴データの内容を液晶表示器51に表示させないので、エラーの原因を除去するために前面扉1bが開放されている状況では、その間に所定の操作がされてもエラー履歴データの内容を液晶表示器51に表示されることがないため、遊技者が遊技を行っている状況でスロットマシン1に関連する所定の事象の発生履歴が誤って出力されてしまうことを防止できる。
尚、本実施例では、サブ制御部91は、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を文字列の表示態様により液晶表示器51に表示させる構成であるが、エラー履歴データの内容を液晶表示器51に表示させる際には、2次元コードなどにコード化した画像を表示する構成でも良い。
また、本実施例では、サブ制御部91は、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を液晶表示器51に表示させる構成であるが、所定の出力条件が成立したことで、RAM91cに記憶されているエラー履歴データの内容を外部機器で特定可能な電磁気的な信号等により出力する構成でも良い。
本実施例のサブ制御部91は、サブ制御部91は、RAM91cにエラー履歴データを記憶させ、所定の出力条件が成立することで、エラー履歴データの内容を液晶表示器51に表示させることが可能な構成であり、所定の出力条件として、前面扉1bが開放状態であること及び所定の操作がされたことを含み、メイン制御部41側においてエラー状態に制御された後、該エラー状態が解除される前に、前面扉1bが開放状態となった場合には、その後、エラー状態が解除された場合に、前面扉1bが閉鎖状態となる前に、所定の操作がされてもエラー履歴データの内容を液晶表示器51に表示さないので、エラーの原因を除去するために前面扉1bが開放された状況では、その間に所定の操作がされてもエラー履歴データの内容を液晶表示器51に表示されることがないため、遊技者が遊技を行っている状況でスロットマシン1に関連する所定の事象の発生履歴が誤って出力されてしまうことを防止できる。
本実施例のメイン制御部41は、スロットマシン1に関する所定のエラーとして、例えば、オーバーフロータンクが満タンとなったことやホッパーのメダルが不足することが検出されることでエラー状態に制御することが可能であり、これらのエラー状態は、エラーの原因を除去するのに前面扉1bの開放を必要とする構成であり、サブ制御部91は、RAM91cにスロットマシン1に関する所定のエラーを含む複数種類の事象の発生履歴をエラー履歴データとして記憶させ、所定の操作を含む出力条件が成立することで、エラー履歴データの内容を液晶表示器51に表示させることが可能な構成であり、所定の操作は、所定のエラーとして、例えば、オーバーフロータンクが満タンとなったことやホッパーのメダルが不足することを解除すための操作とは、異なる演出用スイッチ56の長押し操作態様での操作であるので、エラー状態の解除操作と同様の流れで、エラー履歴データの内容が液晶表示器51に表示されてしまうことを防止できる。
以上、本発明の実施例及び変形例を図面により説明してきたが、本発明はこの実施例に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。
前記実施例及び変形例では、本発明を遊技用価値としてメダル並びにクレジットを用いて賭数が設定されるスロットマシンに適用した例について説明したが、遊技用価値として遊技球を用いて賭数を設定するスロットマシンや、遊技用価値としてクレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンに適用しても良い。遊技球を遊技用価値として用いる場合は、例えば、メダル1枚分を遊技球5個分に対応させることができ、前記実施例で賭数として3を設定する場合は、15個の遊技球を用いて賭数を設定するものに相当する。
さらに、メダル及び遊技球等の複数種類の遊技用価値のうちいずれか1種類のみを用いるものに限定されるものではなく、例えば、メダル及び遊技球等の複数種類の遊技用価値を併用できるものであっても良い。すなわち、メダル及び遊技球等の複数種類の遊技用価値のいずれを用いても賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球等の複数種類の遊技用価値のいずれをも払い出し得るスロットマシンを適用しても良い。
また、前記実施例及び変形例では、本発明が遊技機の一例であるスロットマシン1に適用された例が示されていたが、本発明はこれに限定されるものではなく、本発明を遊技領域に遊技球を発射することにより遊技を行うパチンコ遊技機等の他の遊技機に適用しても良い。