本発明が適用された遊技機であるスロットマシンの実施例について図面を用いて説明する。本実施例のスロットマシン1の内部には、互いに識別可能な複数種類の図柄が所定の順序で、それぞれ同数ずつ配列されたリール2L、2C、2R(以下、左リール、中リール、右リール)が水平方向に並設されており、図1に示すように、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が、スロットマシン1の正面の略中央に設けられた透視窓3において各々上中下三段に表示されて遊技者側から見えるように配置されている。
尚、本実施例では、3つのリールを用いた構成を例示しているが、リールを1つのみ用いた構成、2つのリールを用いた構成、4つ以上のリールを用いた構成としても良い。また、本実施例では、リール2L、2C、2Rにより図柄を可変表示させる可変表示部を構成しているが、可変表示部は、リール以外であっても良く、例えば、外周面に複数の図柄が配置されたベルトを移動させることで図柄を変動表示させることが可能な構成も良い。また、本実施例では、物理的なリールにて可変表示部を構成しているが、液晶表示器などの画像表示装置にて可変表示部を構成しても良い。
スロットマシン1の正面には、図1に示すように、メダルを投入可能なメダル投入部4、メダルが払い出されるメダル払出口9、クレジット(遊技者所有の遊技用価値として記憶されているメダル数)を用いて、その範囲内において遊技状態に応じて定められた規定数の賭数のうち最大の賭数を設定する際に操作されるMAXBETスイッチ6、クレジットとして記憶されているメダル及び賭数の設定に用いたメダルを精算する(クレジット及び賭数の設定に用いた分のメダルを返却させる)際に操作される精算スイッチ10、ゲームを開始する際に操作されるスタートスイッチ7、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8Rが遊技者により操作可能にそれぞれ設けられている。
また、スロットマシン1の正面には、図1に示すように、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器11、入賞の発生により払い出されたメダル枚数やエラー発生時にその内容を示すエラーコード等が表示される遊技補助表示器12、賭数が1設定されている旨を点灯により報知する1BETLED14、賭数が2設定されている旨を点灯により報知する2BETLED15、賭数が3設定されている旨を点灯により報知する3BETLED16、メダルの投入が可能な状態を点灯により報知する投入要求LED17、スタートスイッチ7の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効LED18、ウェイト(前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態)中である旨を点灯により報知するウェイト中LED19、リプレイゲーム中である旨を点灯により報知するリプレイ中LED20が設けられた遊技用表示部13が設けられている。
MAXBETスイッチ6の内部には、MAXBETスイッチ6の操作による賭数の設定操作が有効である旨を点灯により報知するBETスイッチ有効LED21(図2参照)が設けられており、ストップスイッチ8L、8C、8Rの内部には、該当するストップスイッチ8L、8C、8Rによるリールを停止させる操作が有効である旨を点灯により報知する左、中、右停止有効LED22L、22C、22R(図2参照)がそれぞれ設けられている。
スロットマシン1の内部には、所定のキー操作によりスロットマシン1の外部から後述するエラー状態を解除するためのリセット操作を検出するリセットスイッチ23、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器24、メダル投入部4から投入されたメダルの流路を、スロットマシン1の内部に設けられた後述のホッパータンク(図示略)側またはメダル払出口9側のいずれか一方に選択的に切り替えるための流路切替ソレノイド30、メダル投入部4から投入され、ホッパータンク側に流下したメダルを検出する投入メダルセンサ31a〜31cを有するメダルセレクタが設けられている。
スロットマシン1の内部には、前述したリール2L、2C、2R、リールモータ32L、32C、32R、各リール2L、2C、2Rのリール基準位置をそれぞれ検出可能なリールセンサ33L、33C、33R(図2参照)からなるリールユニット、メダル投入部4から投入されたメダルを貯留するホッパータンク(図示略)、ホッパータンクに貯留されたメダルをメダル払出口9より払い出すためのホッパーモータ34b(図2参照)、ホッパーモータ34bの駆動により払い出されたメダルを検出する払出センサ34c(図2参照)からなるホッパーユニットが設けられている。
ホッパーユニット34の側部には、ホッパータンクからあふれたメダルが貯留されるオーバーフロータンク35が設けられている。オーバーフロータンク35の内部には、貯留されたメダルが満タン状態となったことを検出する満タンセンサ35aが設けられている。
また、スロットマシン1の内部には、設定変更状態または設定確認状態に切り替えるための設定キースイッチ37、通常時においてはエラー状態を解除するためのリセットスイッチとして機能し、設定変更状態においては後述する内部抽選の当選確率(出玉率)の設定値を変更するための設定スイッチとして機能するリセット/設定スイッチ38が設けられている。
尚、設定キースイッチ37、リセット/設定スイッチ38は、スロットマシン1の内部に設けられており、所定のキー操作により開放可能な扉を開放しない限り操作不可能とされており、所定のキーを所持する店員のみが操作可能となる。特に、設定キースイッチ37は、さらにキー操作を要することから、遊技店の店員のなかでも、設定キースイッチ37の操作を行うキーを所持する店員のみ操作が可能とされている。また、リセットスイッチ23は、扉を開放する必要はないが、所定のキーを用いたキー操作を必要とするため、所定のキーを所持する店員のみが操作可能となる。
図2は、スロットマシン1の構成を示すブロック図である。スロットマシン1には、図2に示すように、遊技制御基板40、演出制御基板90が設けられており、遊技制御基板40によって遊技の制御が行われ、演出制御基板90によって遊技状態に応じた演出の制御が行われる。
遊技制御基板40には、前述したMAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R、精算スイッチ10、リセットスイッチ23、投入メダルセンサ31a〜31c、リールセンサ33L、33C、33R、払出センサ34c、満タンセンサ35a、設定キースイッチ37、リセット/設定スイッチ38が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。また、遊技制御基板40には、前述したクレジット表示器11、遊技補助表示器12、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED20、BETスイッチ有効LED21、左、中、右停止有効LED22L、22C、22R、設定値表示器24、流路切替ソレノイド30、リールモータ32L、32C、32R、ホッパーモータ34bが接続されており、これら電気部品は、遊技制御基板40に搭載されたメイン制御部41の制御に基づいて駆動されるようになっている。
遊技制御基板40には、メインCPU41a、ROM41b、RAM41c、I/Oポート41dを備えたマイクロコンピュータにより構成され、遊技の制御を行うメイン制御部41が搭載されている。
メイン制御部41は、遊技の進行に伴う操作が検出されることに応じて遊技を進行させるための各種の制御を行うとともに、サブ制御部91に各種のコマンドを送信する。メイン制御部41からサブ制御部91へ送信されるコマンドは一方向のみで送られ、サブ制御部91からメイン制御部41へ向けてコマンドが送られることはない。
また、メイン制御部41は、後述するように、メイン処理として遊技制御基板40に接続された各種スイッチ類の検出状態が変化するまでは制御状態に応じた処理を繰り返しループし、各種スイッチ類の検出状態の変化に応じて段階的に移行する処理を実行する。また、メイン制御部41は、一定時間間隔(本実施例では、約0.56ミリ秒)毎にタイマ割込処理を実行する。尚、タイマ割込処理の実行間隔は、メイン処理において制御状態に応じて繰り返す処理が一巡する時間とタイマ割込処理の実行時間とを合わせた時間よりも長い時間に設定されており、今回と次回のタイマ割込処理との間で必ず制御状態に応じて繰り返す処理が最低でも一巡することとなる。
演出制御基板90には、液晶表示器51(図1参照)、リールLED(図示略)等の演出装置が接続されており、これら演出装置は、演出制御基板90に搭載されたサブ制御部91による制御に基づいて駆動されるようになっている。サブ制御部91は、メイン制御部41から送信されるコマンドを受けて、演出を行うための各種の制御等を行うことが可能である。
本実施例のスロットマシン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に格納され、遊技の進行が可能な状態に移行する。
本実施例のスロットマシン1は、遊技状態に応じて設定可能な賭数の規定数が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。尚、本実施例では、遊技状態に応じた規定数の賭数が設定された時点で、入賞ラインLNが有効化される。
入賞ラインとは、各リール2L、2C、2Rの透視窓3に表示された図柄の組合せが入賞図柄の組合せであるかを判定するために設定されるラインである。本実施例では、図1に示すように、リール2Lの中段、リール2Cの中段、リール2Rの中段、すなわち中段に水平方向に並んだ図柄に跨がって設定された入賞ラインLNのみが入賞ラインとして定められている。尚、本実施例では、1本の入賞ラインのみを適用しているが、複数の入賞ラインを適用しても良い。
そして、本実施例では、全てのリール2L、2C、2Rが停止した際に、有効化された入賞ライン(本実施例の場合、常に入賞ラインLNが有効化されるため、以下では、有効化された入賞ラインLNを単に入賞ラインという)上に役と呼ばれる図柄の組合せが揃うと入賞となる。役は、同一図柄の組合せであっても良いし、異なる図柄を含む組合せであっても良い。
本実施例のスロットマシン1においてゲームを行う場合には、まず、メダルをメダル投入部4から投入するか、あるいはMAXBETスイッチ6を操作してクレジットを使用して賭数を設定する。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインLN(図1参照)が有効となり、スタートスイッチ7の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。尚、遊技状態に対応する規定数のうち最大数を超えてメダルが投入された場合には、その分はクレジットに加算される。
ゲームが開始可能な状態でスタートスイッチ7を操作すると、各リール2L、2C、2Rが回転され、各リール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の表示結果として停止した場合には図柄の組合せに応じた遊技状態に移行するようになっている。
入賞となる役の種類は、遊技状態に応じて定められ、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役と、遊技者にとって有利な遊技状態への移行を伴う特別役と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、内部抽選に当選して、当該役の当選フラグが設定されている必要がある。内部抽選は、メイン制御部41が、上記した各役への入賞を許容するか否かを、全てのリール2L、2C、2Rの表示結果が導出される以前(具体的には、スタートスイッチ7の検出時)に乱数を用いて決定するものである。
尚、本実施例では、スタートスイッチ7の操作が有効な状態でスタートスイッチ7の操作が検出されたときにゲームが開始し、全てのリールが停止したときにゲームが終了する。また、ゲームを実行するための1単位の制御(ゲーム制御)は、前回のゲームの終了に伴う全ての制御が完了したときに開始し、当該ゲームの終了に伴う全ての制御が完了したときに終了する。
[メイン制御部のメモリ領域とプログラムについて]
本実施例のメイン制御部41は、上述のようにROM41b、RAM41cを備え、ROM41bのメモリ領域には、プログラム及び固定データが予め記憶されているプログラム/データ領域が含まれ、RAM41cのメモリ領域には、ワークとして使用可能な使用可能領域と、メイン制御部41に搭載されている各機能を制御するためのレジスタ群が格納される内部機能レジスタ領域とが含まれる。
ROM41bにおけるプログラム/データ領域は、遊技の進行に係わる遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムが用いる遊技データが記憶される遊技データ領域と、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、非遊技プログラムが用いる非遊技データが記憶される非遊技データ領域と、を含む。
尚、遊技の進行とは、遊技を構成する一連のプロセスを進行させることであり、スロットマシンであれば、賭数を設定してゲームを開始可能とする段階、ゲームを開始してリールを回転させる段階、リールを停止させて表示結果を導出させる段階、表示結果に応じてメダル等の価値を付与する段階、を進行させることである。
RAM41cの使用可能領域は、遊技プログラムがワークとして用いる遊技RAM領域と、非遊技プログラムがワークとして用いる非遊技RAM領域と、を含んでおり、遊技RAM領域には、特別ワークと、重要ワークと、一般ワークと、遊技プログラムがデータを退避する遊技スタック領域と、が含まれ、非遊技RAM領域には、遊技プログラムが参照可能な領域と、遊技プログラムが参照不可能な領域と、非遊技プログラムがデータを退避する非遊技スタック領域と、が含まれる。尚、本実施例では、遊技スタック領域と非遊技スタック領域とをそれぞれ異なる領域に個別に備える構成であるが、遊技プログラム及び非遊技プログラムが共用する一のスタック領域を備える構成としても良い。
以下では、遊技プログラム領域、遊技データ領域及び遊技RAM領域をまとめて遊技領域と称す場合があり、非遊技プログラム領域、非遊技データ領域及び非遊技RAM領域をまとめて非遊技領域と称す場合がある。
本実施例においてメイン制御部41のメインCPU41aは、図3に示すように、遊技プログラムに基づく処理において非遊技プログラムを呼び出して非遊技プログラムに基づく処理を実行し、非遊技プログラムに基づく処理の終了後、遊技プログラムに基づく処理に復帰する。
図3に示すように、メインCPU41aは、原則として遊技プログラムに基づく処理を実行するにあたり、遊技データ領域の遊技データを参照して遊技プログラムに基づく処理を実行するとともに、遊技RAM領域をワークとして使用し、遊技RAM領域の内容を参照及び更新することが可能である。また、メインCPU41aは、原則として非遊技プログラムに基づく処理を実行するにあたり、非遊技データ領域の遊技データを参照して非遊技プログラムに基づく処理を実行するとともに、非遊技RAM領域をワークとして使用し、非遊技RAM領域の内容を参照及び更新することが可能である。
また、メインCPU41aは、遊技プログラムに基づく処理を実行するにあたり、非遊技データ領域を参照することはなく、非遊技RAM領域を更新することはないが、非遊技RAM領域を参照することは可能であり、非遊技プログラムに基づく処理を実行するにあたり、遊技データ領域を参照することはなく、遊技RAM領域を更新することはないが、遊技RAM領域を参照することは可能である。
また、遊技プログラムに基づく処理は、非遊技RAM領域のうち遊技プログラムに必要な特定の領域(例えば、異常の検知を示すエラーフラグの設定領域等)のみ参照可能とされており、非遊技プログラムに基づく処理は、遊技RAM領域のうち非遊技プログラムに必要な特定の領域(例えば、内部当選フラグの設定領域、遊技状態の設定領域、RTの設定領域等)のみ参照可能とされている。
次に、メイン制御部41が遊技プログラム及び非遊技プログラムを実行することで行う各種処理の制御内容について、図4〜図9に基づいて説明する。
[メイン制御部41が実行する起動時設定処理と初期設定処理について]
メイン制御部41が行う起動時設定処理と初期設定処理について、図4に基づいて説明する。起動時設定処理、初期設定処理は、遊技プログラムに含まれるサブルーチンである。
メイン制御部41は、スロットマシン1への電力供給が開始された際に、リセットの発生によりタイマ割込みが禁止に設定された状態で起動し、ROM41bに格納されているプログラムに従って各種処理を行う。起動した後は、まず、遊技プログラムに含まれる起動時設定処理を行って、すべての出力ポートを初期化し、メイン制御部41が備える内部レジスタをROM41bの所定領域に予め設定されている内蔵レジスタ初期化テーブルに基づいて初期化する。そして、起動時設定処理を終了させた後、タイマ割込みを禁止に設定した状態で、遊技プログラムに含まれる初期設定処理を開始させる。
図5に示すように、初期設定処理では、まず、RAM41cの所定領域のパリティ等に基づいてRAM41cが正常であるか否かを診断するRAM診断処理を行う(Sa1)。
RAM診断処理では、RAM41cの所定領域のパリティや、前回のスロットマシン1への電力供給が停止されたときにRAM41cの所定領域に設定されたRAM破壊診断用固定データに基づき、RAM41cに異常があるか否かを判定する。そして、当該判定の結果を特定可能な診断結果データをRAM41cの所定領域に設定して、RAM診断処理を終了する。
Sa1のステップにおいてRAM診断処理を行った後、所定の入力ポートを参照して、設定キースイッチ37がON状態であるか否かを判定する(Sa2)。そして、設定キースイッチ37がON状態でないと判定した場合は、Sa1のステップにおけるRAM診断処理により設定された診断結果データに基づいてRAM41cに異常があるか否かを判定して(Sa3)、RAM41cに異常がないと判定した場合は、復帰処理を行う(Sa4)。
復帰処理では、外部出力基板から外部出力信号を出力するための出力バッファをクリアする処理、スタックポインタを電断時の状態に復帰させる処理、パラレル入力ポート511に入力される各種スイッチ類の検出信号等の入力状態に関する入力状態データ(各種スイッチ類の現在の入力状態を示す入力データ、前回と今回の入力データが同じ状態である旨を示す確定データ、前回から確定データが変化した旨を示すエッジデータ)を更新する処理、電断前の制御状態に復帰した旨を示す復帰コマンドをサブ制御部91に送信する処理等を行う。
Sa4のステップにおいて復帰処理を行った後は、タイマ割込みを許可に設定して(Sa5)、初期設定処理を終了させ、タイマ割込処理(メイン)に移行させた後、スロットマシン1への電力供給が停止される前に実行していたメイン処理における処理に復帰する。
一方、Sa3のステップにおいて、RAM41cに異常があると判定した場合は、タイマ割込みを許可に設定した後(Sa6)、エラー処理に移行させる(Sa7)。
エラー処理では、遊技の進行を不能化するエラー状態に制御する。また、発生しているエラーの種類を特定可能なエラーコードをサブ制御部91に対して送信するとともに、当該エラーコードを遊技補助表示器12に表示させるように制御する。そして、発生しているエラーの種類に応じたエラー状態の解除条件が成立したことが特定されるまでエラー状態の制御を行う。初期設定処理においてRAMに異常があると判定されたことにより移行されたエラー処理では、設定キースイッチ37をONにした状態でスロットマシン1への電力供給を開始させることによって設定変更状態に移行させ、RAM41cのすべての記憶領域を初期化させることで、RAM41cのデータの異常を確実に解消してエラー状態を解除することができるようになっている。一方、設定キースイッチ37をON状態にせずにスロットマシン1への電力供給を開始させた場合には、RAM41cの異常が再び検出されて、再度、エラー状態となるようになっている。
Sa2のステップにおいて設定キースイッチ37がON状態であると判定した場合は、設定値変更処理を開始して設定変更状態に移行させる(Sa8)。
設定値変更処理では、遊技場側にて設定値を変更することが可能な設定変更状態に移行させる。そして、設定変更状態において、リセット/設定スイッチ38及びスタートスイッチ7が所定の手順で操作されることにより設定値を確定させ、設定キースイッチ37がOFFにされたことが検出されることで、設定値変更処理を終了させる。
Sa8のステップにおいて、設定変更処理を行った後は、設定変更時の初期化処理を行う(Sa9)。設定変更時の初期化処理では、設定変更処理が行われて設定値が確定されたことに伴って、RAM41cのメモリ領域のうち、確定された設定値が記憶されている所定領域を除くすべての使用可能領域を初期化する。当該使用可能領域の初期化により、メイン制御部41による遊技の進行に関する制御状態を含む所定データが予め定められた所定の初期値に再設定(初期化)されることとなる。尚、遊技の進行に関する制御状態には、後述する遊技開始待ち処理などの各処理においてエラーが検出された場合に制御されるエラー状態が含まれる。
そして、Sa9のステップにおいて、設定変更時の初期化処理を行った後は、メイン処理に移行させ、メイン処理の先頭のステップの処理(Sb1のステップにおける遊技開始待ち処理)から各処理を順次行わせる。
このように、本実施例のメイン制御部41は、設定キースイッチ37がON状態でスロットマシン1への電力供給が開始されることで、初期設定処理設定において設定キースイッチ37がON状態であると判定した場合に、設定変更処理を行うようになっている。
そして、設定変更処理に移行させ、設定変更操作が行われることで初期化条件が成立したときに、設定変更時の初期化処理を行って、設定変更処理により確定された設定値が記憶されている所定領域を除くすべての使用可能領域を初期化することで、RAM41cに記憶されているエラー状態を含む遊技の進行に関する制御状態を初期化するようになっている。
また、設定変更処理に移行させ、エラー状態を含む遊技の進行に関する制御状態を初期化した後は、メイン処理の先頭の処理に移行させるようになっている。
また、初期設定処理では、設定変更処理に移行して設定変更操作が行われることで、初期化条件が成立し、メダルの投入や払出に関する異常が発生しているか否かに関わらず、RAM41cに記憶されている遊技の進行に関する制御状態を初期化するようになっている。
[メイン処理について]
メイン制御部41が行うメイン処理の制御内容について、図5に基づいて説明する。尚、メイン処理は、一単位の遊技毎に繰り返し実行される。そして、メイン処理の一周期が遊技の一単位に相当している。また、メイン処理は、遊技プログラムに含まれ、複数の処理を含む。以下、特に非遊技プログラムに含まれる旨を示さない処理は、遊技プログラムに含まれる。尚、遊技プログラムにより呼び出される遊技プログラムには、非遊技プログラムを呼び出すものもある。
図5に示すように、メイン処理では、遊技が開始されるまで待機する遊技開始待ち処理(Sb1)、遊技が開始されることに伴って内部抽選を行う内部抽選処理(Sb2)、リール2L、2C、2Rを回転及び停止させる制御を行うリール制御処理(Sb3)、全てのリール2L、2C、2Rが停止されて遊技が終了される際に各種設定等を行う遊技終了時設定処理(Sb4)が、順次繰り返し実行される。
また、メイン処理では、ゲームの進行に応じてコマンドを生成してコマンドキューに設定するコマンド格納処理を適宜実行し、設定されたコマンドは、その後のタイマ割込処理(メイン)において実行されるコマンド送信処理によりサブ制御部91に対して送信されるようになっている。
[遊技開始待ち処理について]
次に、本実施例のメイン制御部41が行う遊技開始待ち処理の制御内容について、図6に基づいて説明する。尚、遊技開始待ち処理は、遊技プログラムに含まれており、遊技プログラムに含まれるメイン処理において呼び出されるサブルーチンである。
図6に示すように、遊技開始待ち処理では、まず、メダル投入枚数表示処理を行い(Sc1)、スロットマシン1に投入済みのメダル枚数に応じた1〜3BETLED14〜16をON状態(点灯状態)に制御する。その後、ホッパータンクが満タン状態である旨を特定可能なエラーコード(E1)を所定のレジスタに準備し(Sc2)、所定のポート入力バッファを参照して、満タンセンサ35aの確定データに基づいてホッパータンクが満タン状態であるか否かを判定する(Sc3)。
Sc3のステップにおいてホッパータンクが満タン状態であると判定した場合には、エラー処理を行う(Sc4)。エラー処理では、遊技の進行が不能化されるエラー状態に制御する。また、所定のレジスタに準備されているエラーコード(E1)を特定可能なエラーコマンドをサブ制御部91に対して送信し、当該エラーコード(E1)をRAM41cの所定領域にその他の処理でも参照可能なエラーフラグとして設定する。また、当該エラーコード(E1)を遊技補助表示器12に表示させるように制御する。その後は、所定のレジスタに準備されているエラーコード(E1)に応じたエラー状態の解除条件が成立したことが特定されるまでエラー状態の制御を行う。エラーコード(E1)がレジスタに設定されてエラー状態に移行された場合には、満タンセンサ35aの確定データがOFF状態となるまで待機し、当該満タンセンサ35aの確定データがOFF状態となることで、エラー状態を解除する旨のエラーコマンド(解除)をサブ制御部91に対して送信し、エラー処理を終了させて、Sc5のステップへ進む。
Sc3のステップにおいてホッパータンクが満タン状態でないと判定した場合、及びSc4のステップにおけるエラー処理を終了した場合には、RAM41cの所定領域に設定されている再遊技用メダルカウンタの値を所定のレジスタに読み込む(Sc5)。尚、再遊技用メダルカウンタには、メイン処理における前回の遊技終了時設定処理により、前回の遊技の結果に応じた値が設定されており、前回の遊技において再遊技役が入賞して再遊技が付与された場合には、遊技を行うために必要な賭数の規定数に相当する数値(例えば、3)が設定されている一方で、前回の遊技において再遊技が付与されなかった場合には、0が設定されている。
その後、RAM41cの再遊技用メダルカウンタをクリアし(Sc6)、Sc5のステップにおいて読み込んだ再遊技用メダルカウンタの値が0より大きいか否か、すなわち再遊技が付与されている否かを判定し(Sc7)、再遊技が付与されている場合には、メダル投入実行処理を行う(Sc8)。メダル投入実行処理では、再遊技用メダルカウンタの値を賭数に設定するとともに、1〜3BETLED14〜16をON状態(点灯状態)に設定して規定数の賭数(本実施例では、3)が設定されている旨を報知する。また、賭数の設定に使用されたメダル枚数を特定可能な投入枚数コマンドをサブ制御部91に対して送信する。
Sc7のステップにおいて再遊技用メダルカウンタの値が0である、すなわち再遊技が付与されていないと判定した場合、及びSc8のステップにおいて再遊技が付与されたことによりメダル投入実行処理を行った後は、メダル手入れ許可設定処理を行う(Sc9)。メダル手入れ許可設定処理では、RAM41cの所定領域に設定されているクレジットの値を参照し、当該クレジットの値が最大値(本実施例では、50)に達していない場合に、メダル投入部4からのメダルの投入を許可する旨を示すメダル手入れ許可フラグをRAM41cの所定領域に設定する。
Sc9のステップにおいてメダル手入れ許可設定処理を行った後は、割込み1回待ち処理を行う(Sc10)。割込み1回待ち処理を行うことで、タイマ割込み処理(メイン)が行われて各種スイッチ類の検出状態やLEDの点灯状態、各種タイマ等が更新されることとなり、これらの各種スイッチ類の検出状態が更新された状態で、その後の処理(例えば、後述のメダル投入払出エラーチェック処理、メダル投入信号処理、操作入力受付処理)を行わせるようになっている。
Sc10のステップにおいて割込み1回待ち処理を行ってタイマ割込みが1回行われた後は、メダル投入部4からのメダルの投入に関する異常やホッパーからのメダルの払い出しに関する異常が検出されているか否かを判定するメダル投入払出エラーチェック処理を行う(Sc11)。
メダル投入払出エラーチェック処理では、後述するタイマ割込処理によりRAM41cの所定領域に投入エラーフラグや払出エラーフラグが設定されているか否かに基づいて、メダルの投入や払出に関する異常が発生しているか否かを判定し、メダルの投入に関する異常が発生していると判定した場合は、メダルの投入に関する異常が発生している旨を示すエラーコード(E5)を所定のレジスタに準備するとともに、エラー処理が実行する旨を特定可能なエラー実行フラグをRAM41cの所定領域に設定して、エラー処理を行う。また、メダルの払出に関する異常が発生していると判定した場合は、メダルの払出に関する異常が発生している旨を示すエラーコード(E4)を所定のレジスタに準備するとともに、エラー処理が実行する旨を特定可能なエラー実行フラグをRAM41cの所定領域に設定して、エラー処理を行う。
投入エラーフラグは、メダルの投入に関する異常が発生している旨を示すフラグであり、後述するセンサ監視処理により、後述のメダル手入れ許可フラグが設定されていない期間、すなわちメダル投入部4からのメダルの投入が許可されている期間外において、投入メダルセンサ31a〜31cによりメダル等(メダルや異物等)が検出されたことに基づいて、タイマ割込処理によりRAM41cの所定領域に設定される。また、払出エラーフラグは、メダルの払出に関する異常が発生している旨を示すフラグであり、後述するセンサ監視処理により、メダルが払出される払出期間外において、払出センサ34cによりメダル等が検出されたことに基づいて、タイマ割込処理によりRAM41cの所定領域に設定される。
Sc11のステップにおいてメダル投入払出エラーチェック処理を行った後は、RAM41cの所定領域にエラー実行フラグが設定されているか否かに基づいて、メダル投入払出エラーチェック処理にてエラー処理が実行されたか否かを判定する(Sc12)。
Sc12のステップにおいてエラーチェック処理にてエラー処理が実行されたと判定した場合は、Sc10のステップに戻り、Sc10〜Sc12のステップの各処理を再び行う。その後、メダルの投入や払出に関する異常が検出されない状態で、Sc10〜Sc12のステップの各処理が行われることで、エラー実行フラグが設定されていない状態で、Sc12のステップの処理が行われることとなる。
一方、Sc12のステップにおいてエラー実行フラグが設定されていないと判定した場合は、メダル投入信号処理を行う(Sc13)。メダル投入信号処理では、メダル投入信号の遷移に基づいてメダルの投入状況を判定する。そして、正常なメダルの投入が検出された場合は、賭数の設定やクレジットにメダルを受け付けて、メダル投入信号処理を終了する。一方、異常なメダルの投入が検出された場合は、エラーコード(E5)を準備してエラー処理を行う。その後、エラー状態が解除されてエラー処理が終了されることで、メダル投入信号処理を終了する。
Sc13のステップにおいてメダル投入信号処理を行った後は、各種スイッチの操作を受け付ける有効化して、操作が有効化されているスイッチの操作が行われることで、当該スイッチによる操作を受け付ける操作入力受付処理を行う(Sc14)。
操作入力受付処理では、メダル投入信号の遷移に基づいてメダルが通過中でないときに、RAM41cの所定領域に設定されているクレジットが、1以上である場合には、MAXBETスイッチ6による操作の受け付けを有効化する。また、メダル投入信号の遷移に基づいてメダルが通過中でないときに、RAM41cの所定領域に設定されている賭数が規定数である場合には、スタートスイッチ7による操作の受け付けを有効化する。また、メダル投入信号の遷移に基づいてメダルが通過中でない場合に、精算スイッチ10及び設定キースイッチ37による操作の受け付けを有効化する。
また、操作入力受付処理では、スタートスイッチ7による操作が有効な状態で、スタートスイッチ7の操作が検出された場合には、スタートスイッチ7が操作された旨を示すスタートフラグを所定レジスタに設定した後、流路切替ソレノイド30をOFF状態としてメダルの流路をメダル払出口9側に切り替える処理を行う。また、設定キースイッチ37による操作が有効な状態で、設定キースイッチ37による操作が検出された場合には、設定値表示器24に設定値を表示させる設定値表示処理を行う。また、精算スイッチ10による操作が有効な状態で、精算スイッチ10による操作が検出された場合には、クレジットに記憶されている分のメダルを遊技者に返却する精算処理を行う。また、MAXBETスイッチ6による操作が有効な状態で、MAXBETスイッチ6による操作が検出された場合には、クレジットに基づいて可能な範囲で規定数までのメダル枚数を賭数に設定し、賭数に設定した分のメダル枚数をクレジットから減算する処理を行う。操作が検出されたスイッチ類に応じた処理を行った後、操作入力受付処理を終了させる。
Sc14のステップにおいて操作入力受付処理を行った後は、スタートフラグに基づいてスタートスイッチ7による有効な操作が検出されたか否かを判定する(Sc15)。所定のレジスタにスタートフラグが設定されておらず、スタートスイッチ7による有効な操作が検出されなかったと判定した場合は、Sc16のステップに進み、スタート有効LED18の点灯状態を制御するLED表示処理を行う。
LED表示処理では、Sc14のステップの操作入力受付処理によりスタートスイッチ7による操作が有効に設定されている状態において、リセットスイッチ23以外のスイッチ類の操作が検出されない場合に、スタート有効LED18をON状態(点灯状態)に制御し、スタートスイッチ7による操作が有効に設定されている状態において、リセットスイッチ23以外のスイッチ類の操作が検出される場合、及びスタートスイッチ7による操作が有効に設定されていない場合に、スタート有効LED18をOFF状態(消灯状態)に制御して、スタート有効LED18の点灯状態によりスタートスイッチ7による操作が有効であるか無効であるかを報知する。
Sc15のステップにおいて、所定のレジスタにスタートフラグが設定されており、スタートスイッチ7による有効な操作が検出されたと判定した場合は、内部抽選用の乱数値を乱数回路から取得して、RAM41cの所定領域に設定する(Sc17)。その後、設定されている賭数を特定可能なメダル投入状態データをRAM41cの所定領域に設定し(Sc18)、スタート有効LED18をOFF状態(消灯状態)に設定し(Sc19)、メダル手入れ許可フラグをRAM41cの所定領域からクリアし(Sc20)、遊技補助表示器12における払出枚数の表示をクリアするように制御して(Sc21)、遊技開始待ち処理を終了させ、メイン処理に戻る。その後、メイン処理では、Sc17のステップにおいて取得された乱数値を用いて内部抽選が行われ、スタートスイッチ7の操作が検出されたことに応じてリール2L、2C、2Rの回転が開始されることで、一遊技が開始されることとなる。
このように、メイン制御部41は、遊技開始待ち処理において、メダル投入信号処理や操作入力受付処理を行うようになっている。そして、メダル投入信号処理では、投入メダルセンサ31a〜31cにより正常なメダルの投入を示すメダル投入信号が検出されているか否かを判定することが可能である。また、操作入力受付処理では、MAXBETスイッチ6等のスイッチ類の操作状況を示す信号が検出されているか否かを判定することが可能である。
また、メイン制御部41は、遊技開始待ち処理において、メダル投入払出エラーチェック処理を行うようになっており、当該メダル投入払出エラーチェック処理において、メダルの投入や払出に関する異常が発生しているか否かを判定し、異常が発生しているときには、遊技の進行を不能化するエラー状態に制御するエラー処理を実行する。
また、上述のように、初期設定処理では、遊技の進行に関する制御状態を初期化した後、メイン処理の先頭の処理、すなわち遊技開始待ち処理に移行するようになっており、遊技開始待ち処理では、遊技を進行させる投入メダルセンサ31a〜31c、払出センサ34c、MAXBETスイッチ6等の各種センサやスイッチ類の信号が検出されているか否かが判定されるメダル投入信号処理や操作入力受付処理を最初に行う前に、メダル投入払出エラーチェック処理を実行してメダルの投入や払出に関する異常が発生しているかを判定するようになっている。
また、メダルの投入に関する異常は、例えば、メダルセレクタ29内に配置された投入メダルセンサ31a〜31cの検出範囲内にメダル等が詰まっていること等により、メダル投入部4からのメダルの投入が許可されている期間外において、投入メダルセンサ31a〜31cによりメダル等(メダルや異物等)が検出されることで、当該異常が発生していると判定され、投入メダルセンサ31a〜31cの検出範囲内に詰まっているメダル等を物理的に取り除くことで解消可能である。
また、メダルの払出に関する異常は、例えば、払出センサ34cの検出範囲内にメダル等が詰まっていること等により、メダルの払出制御が行われる期間外において、払出センサ34cによりメダル等(メダルや異物等)が検出されることで、当該異常が発生していると判定され、払出センサ34cの検出範囲内に詰まっているメダル等を物理的に取り除くことで解消可能である。
また、遊技開始待ち処理では、割込1回待ち処理を実行して少なくとも1回のタイマ割込処理が実行されることを待った後、メダル投入払出エラーチェック処理を実行して、メダルの投入や払出に関する異常が発生しているか否かを判定するようになっている。
また、遊技開始待ち処理では、割込1回待ち処理を実行して1回のタイマ割込処理が実行される毎に、メダル投入払出エラーチェック処理、メダル投入信号処理、操作入力受付処理を実行し、メダル投入払出エラーチェック処理において、メダルの投入や払出に関する異常が発生しているか否かを判定し、メダル投入信号処理及び操作入力受付処理において、遊技を進行させる投入メダルセンサ31a〜31c、払出センサ34c、MAXBETスイッチ6等の各種センサやスイッチ類の信号が検出されているか否かを判定するようになっている。
また、遊技開始待ち処理では、メダル投入払出エラーチェック処理を実行し、当該メダル投入払出エラーチェック処理では、メダルの投入や払出に関する異常が発生しているか否かを判定し、異常が発生しているときには、遊技の進行を不能化するエラー状態に制御するエラー処理を実行する。そして、エラー状態が解除されることで、メダル投入払出エラーチェック処理を終了させた後、メダル投入信号処理や操作入力受付処理により最初に遊技を進行させる各種センサやスイッチ類の信号が検出されているか否かが判定される前に、再びメダル投入払出エラーチェック処理を実行して、メダルの投入や払出に関する異常が発生しているか否かを判定するようになっている。
[メダル投入信号処理について]
次に、本実施例のメイン制御部41が遊技開始待ち処理から呼び出して行うメダル投入信号処理の制御内容について、図7に基づいて説明する。尚、メダル投入信号処理は、遊技プログラムに含まれており、遊技プログラムに含まれる遊技開始待ち処理において呼び出されるサブルーチンである。
図7に示すように、メダル投入信号処理では、まず、上述の遊技開始待ち処理のメダル手入れ許可設定処理においてメダル投入部4からのメダルの投入を許可する旨を示すメダル手入れ許可フラグが設定されているか否かを判定する(Sd1)。そして、メダル手入れ許可フラグが設定されていない場合は、メダル投入信号処理を終了して、呼び出し元の遊技開始待ち処理に戻る。一方、メダル手入れ許可フラグが設定されている場合は、RAM41cの所定領域に設定されているメダル投入信号状態遷移データを参照する(Sd2)。メダル投入信号状態遷移データは、投入メダルセンサ31a〜31cの検出信号(以下、メダル投入信号と呼ぶ場合がある)の状態の遷移を特定可能なデータであり、非遊技プログラムに含まれるメダルセンサチェック処理により、投入メダルセンサ31a〜31cの入力データ等に基づいて所定のタイミングで更新されて、RAM41cの非遊技RAM領域の所定領域に設定されている。
そして、Sd2のステップにおいて参照したメダル投入信号状態遷移データに基づいて、メダルセレクタ29における投入メダルセンサ31a〜31cの検出範囲を、メダル投入部4から投入されたメダルが通過中であるか否かを判定する(Sd3)。投入メダルセンサ31a〜31cの検出範囲をメダルが通過中でないと判定した場合は、流路切替ソレノイド30をON状態に制御して(Sd4)、メダル投入部4から投入されたメダルがメダルセレクタ29内のメダル流入流路29a及びメダル受入流路29bを流下してホッパータンクに導かれるように、メダル投入部4から投入されたメダルの流路をスロットマシン1の内部に設けられたホッパータンク側に切替えるように制御する。その後、メダル投入部4からメダルを投入可能である旨を示す投入要求LED17をON状態に制御し(Sd5)、メダル投入信号無視タイマをクリアする(Sd6)。
ここで、メダル投入信号無視タイマは、流路切替ソレノイド30をOFF状態に設定する際に、少なくとも流路切替ソレノイド30をOFF状態とする制御信号の出力を設定してから、当該流路切替ソレノイド30が作動してメダル投入部4から投入されたメダルの流路がメダル払出口9側に実際に切り替えられるまでの切替時間の経過を計時して、切替時間の計時中には所定処理においてメダル投入信号を無視するように制御するためのタイマである。メダル投入信号無視タイマには、メダルの流路を切り替えるために流路切替ソレノイド30の制御信号の出力が設定された際に、少なくとも流路切替ソレノイド30の制御信号の出力設定を行ってから実際にメダルの流路が切り替えられるまでの所定時間(本実施例では、504ミリ秒)が設定される。その後、タイマ割込み処理(メイン)によりメダル投入信号無視タイマが減算されて更新され、0となることで切替時間が経過したことを特定できるようになっている。
Sd3のステップにおいて投入メダルセンサ31a〜31cの検出範囲をメダルが通過中であると判定した場合、及びSd6のステップにおいてメダル投入信号無視タイマをクリアした後は、メイン制御部41が備えるレジスタのうち演算結果が格納されるフラグレジスタの値を、遊技RAM領域の遊技スタック領域に所定の順序で記憶させることで退避させた後(Sd7)、タイマ割込みを禁止に設定し(Sd8)、非遊技プログラムに含まれるメダルセンサ処理を行った後(Sd9)、タイマ割込みを許可に設定し(Sd10)、Sd7のステップにおいて退避させたレジスタの値を、退避させるときと逆の順序で遊技スタック領域から順次読み出してフラグレジスタに設定することで、当選情報出力処理を行う前の状態にフラグレジスタを復帰させる(Sd11)。
メダルセンサ処理では、まず、呼び出し元の遊技プログラムにより使用されていたスタックポインタSPが示すアドレスの値を非遊技RAM領域の所定領域に記憶させて退避させる。その後、当該スタックポインタSPの値として非遊技スタック領域の所定アドレス(前回の非遊技プログラムの終了時に記憶されたアドレス)を設定することで、スタックポインタSPを非遊技プログラム用に設定する。そして、メイン制御部41が備えるすべてのレジスタの値を非遊技スタック領域に所定の順序で記憶させることで退避させる。
その後、メダル投入信号状態遷移データが正常であるか否かを判定する。そして、メダル投入信号状態遷移データが正常である場合には、メダルが投入メダルセンサ31a〜31cの検出範囲を正常に通過した旨を示すメダル通過状態参照データ(正常通過)またはメダルが投入メダルセンサ31a〜31cの検出範囲を通過し始めたことを検知した旨を示すメダル通過状態参照データ(メダル検知)、投入メダルセンサ31a〜31cの検出範囲でのメダルの通過状態が前回の判定時から変化していない旨を示すメダル通過状態参照データ(変化なし)をRAM41cの非遊技RAM領域の所定領域に設定する。その後、投入メダルセンサ31a〜31cの入力データに基づいてメダル投入信号状態遷移データを更新する。一方、メダル投入信号状態遷移データに異常がある場合には、メダル投入信号に関する異常が検出された旨を示すエラーコード(E5)を特定可能なメダル関連エラーデータを非遊技RAM領域の所定領域に設定する等の処理を行う。また、メダルが投入メダルセンサ31a〜31cの検出範囲を通過し始めたことを検知することで、非遊技RAM領域に設定されているメダル通過時間タイマによる計時を新たに開始させるように設定し、メダルが投入メダルセンサ31a〜31cの検出範囲を正常に通過したことを検知することで、メダル通過時間タイマによる計時を終了させるように設定する。
そして、メダルセンサ処理を開始した際に退避させていたレジスタの値を非遊技スタック領域から順次読み出して、メダルセンサ処理を開始したときの状態にすべてのレジスタを復帰させる。その後、メダルセンサ処理を開始した際に非遊技RAM領域の所定領域に退避させたスタックポインタSPの値を、スタックポインタSPに設定することで、メダルセンサ処理を開始したときの状態にスタックポインタSPを復帰させて、メダルセンサ処理を終了させる。
Sd11のステップにおいてレジスタを復帰させた後には、非遊技RAM領域の所定領域を参照してメダル関連エラーデータを所定のレジスタに読み込み(Sd12)、エラーコード(E5)が設定されているか否かを判定する(Sd13)。そして、エラーコード(E5)が設定されている場合すなわちメダル関連エラーデータが所定のレジスタに読み込まれて、エラーコード(E5)が所定のレジスタに準備されている場合には、エラー処理を行って(Sd14)、遊技の進行を不能化するエラー状態に制御する。
エラー処理では、エラー処理では、遊技の進行が不能化されるエラー状態に制御する。また、所定のレジスタに準備されているエラーコード(E5)を特定可能なエラーコマンドをサブ制御部91に対して送信し、当該エラーコード(E5)をRAM41cの所定領域にその他の処理でも参照可能なエラーフラグとして設定する。また、当該エラーコード(E5)を遊技補助表示器12に表示させるように制御する。その後は、所定のレジスタに準備されているエラーコード(E5)に応じたエラー状態の解除条件が成立したことが特定されるまでエラー状態の制御を行う。エラーコード(E5)が所定のレジスタに準備されてエラー状態に移行された場合には、エラー状態の解除条件として、投入メダルセンサ31a〜31cの検出状態がOFF状態であり、かつリセット/設定スイッチ38またはリセットスイッチ23がON状態となったことが成立するまで、遊技を進行させる制御を行わずに待機する。そして、当該解除条件が成立することで、エラー状態を解除する旨のエラーコマンド(解除)をサブ制御部91に対して送信し、エラー処理を終了させてメダル投入信号処理に戻る。
Sd13のステップにおいてメダル関連エラーデータとしてエラーコード(E5)が設定されていないと判定した場合、及びSd14のステップのエラー処理が終了した後は、RAM41cの非遊技RAM領域の所定領域に設定されているメダル通過状態参照データを参照して(Sd15)、メダル通過状態参照データの内容を判定する(Sd16、Sd17)。
Sd16のステップにおいて、メダル通過状態参照データ(変化なし)が設定されていると判定した場合は、メダル投入信号処理を終了して遊技開始待ち処理に戻る。一方、Sd16のステップにおいて、メダル通過状態参照データ(変化なし)が設定されていないと判定し、Sd17のステップにおいて、メダル通過状態参照データ(メダル検知)が設定されていると判定した場合は、Sd18のステップに進み、Sd17のステップにおいて、メダル通過状態参照データ(正常通過)が設定されており、メダル通過状態参照データ(メダル検知)が設定されていないと判定した場合には、Sd21のステップへ進む。
Sd17のステップにおいてメダル通過状態参照データ(メダル通過)が設定されていると判定した場合には、投入状況判定処理を行う(Sd18)。投入状況判定処理では、RAM41cの所定領域に設定されている現在のクレジット数を計数するクレジットカウンタを参照し、当該クレジットカウンタの値がスロットマシン1のクレジットの最大値(本実施例では、50)より1少ない状況、すなわち次に受け付けるメダルがクレジットに加算可能な最終メダルとなる状況であるか否かを判定する。そして、次に受け付けるメダルがクレジットに加算可能な最終メダルであるか否かを特定可能な最終受付フラグを所定のレジスタに設定して、投入状況判定処理を終了する。
Sd18のステップにおいて投入状況判定処理を行った後は、所定のレジスタに設定されている最終受付フラグに基づいて、次に受け付けるメダルがクレジットに加算可能な最終メダルであると判定される場合には、メダルブロッカオフ処理を行って(Sd20)、流路切替ソレノイド30をOFF状態に設定することで、メダル投入部4から投入されたメダルの流路をホッパータンク側からメダル払出口9側に切り替えて、投入メダルセンサ31cにより検出されているメダルより後にメダル投入部4に投入されたメダルを、メダル返却流路29cを介してメダル払出口9から返却するように制御する。
また、メダルブロッカオフ処理では、流路切替ソレノイド30をOFF状態に設定した後、遊技RAM領域に設定されているメダル投入信号状態遷移データを参照して、投入メダルセンサ31a〜31cの検出範囲をメダルが通過中か否かを判定し、当該検出範囲をメダルが通過中である場合には、上述のメダル投入信号無視タイマに所定値(本実施例では、504ミリ秒に対応する値)を設定して、メダル投入信号無視タイマによる所定時間の計時を開始させる。これにより、メダルブロッカオフ処理の終了後から所定時間にわたり後述のセンサ監視処理において、メダル投入信号の状態にかかわらず、メダル投入信号の異常が判定されてセンサエラー参照データ(投入メダルセンサ)が設定されるようなことがないようになっている。
Sd20のステップにおいてメダルブロッカオフ処理を行った後は、メダル投入信号処理を終了させて遊技開始待ち処理に戻る。一方、最終受付フラグに基づいて、次に受け付けるメダルがクレジットに加算可能な最終メダルでないと判定される場合には、メダルブロッカオフ処理を行わずにメダル投入信号処理を終了させて遊技開始待ち処理に戻る。
Sd17のステップにおいてメダル通過状態参照データ(正常通過)が設定されており、メダル通過状態参照データ(正常通過)が設定されていないと判定した場合には、ポート入力バッファの所定領域を参照して、投入メダルセンサ31bの確定データを取得し(Sd21)、当該確定データがON状態であるか否かを判定する(Sd22)。そして、投入メダルセンサ31bの確定データがON状態であると判定した場合は、ポート入力バッファの所定領域を参照して、投入メダルセンサ31cの入力データを取得し(Sd23)、当該入力データがOFF状態であるか否かを判定する(Sd24)。
Sd19のステップにおいて投入メダルセンサ31bの確定データがON状態でないと判定した場合、及び、投入メダルセンサ31bの確定データがON状態であり、かつ、Sd20のステップにおいて当該投入メダルセンサ31bの入力データがOFF状態でないと判定した場合、すなわちメダル受入流路29bをメダルが通過中である場合または当該メダル受入流路29bにメダルがない場合には、メダル投入信号処理を終了させる。一方、Sd22のステップにおいて投入メダルセンサ31bの確定データがON状態であると判定し、かつ、Sd24のステップにおいて当該投入メダルセンサ31bの入力データがOFF状態である判定した場合、すなわちメダル受入流路29bにおいて投入メダルセンサ31cがメダルを検出可能な検出位置をメダルが通過し終えたときである場合には、メダル投入処理を行う(Sd25)。
メダル投入処理では、RAM41cの所定領域に記憶されている現在設定されている賭数を参照して、規定数の賭数が設定されているか否かを判定する。そして、規定数の賭数が設定されていない場合には、現在の賭数に1加算し、既に、規定数の賭数が設定されている場合には、クレジットカウンタに1加算する。
Sd25のステップにおいてメダル投入処理を行った後は、メダル手入れ許可設定処理を行って(Sd26)、クレジットカウンタに基づいてクレジットの値が最大値(本実施例では、50)に達していない場合に、メダル投入部4からのメダルの投入を許可する旨を示すメダル手入れ許可フラグをRAM41cの所定領域に設定する。
Sd26のステップにおいてメダル手入れ許可設定処理を行った後、メダル手入れ許可フラグが設定されていない場合は、メダル投入信号無視タイマに予め定められた所定値(本実施例では、504ミリ秒に対応する値)を設定してメダル投入信号無視タイマによる所定時間の計時を開始させた後(Sd28)、メダル投入信号処理を終了させる。一方、メダル手入れ許可フラグが設定されている場合は、メダル投入信号無視タイマの設定を行わずに、メダル投入信号処理を終了させる。尚、メダル投入信号無視タイマは、Sd28のステップにおいて所定値(本実施例では、504ミリ秒に対応する値)が設定された後、所定時間毎に減算されて、予め定められた所定時間(本実施例では4.1秒)が経過したときに、0となるようになっておりメダル投入信号無視タイマが0か否かに基づいて所定時間が経過したか否かを判定できるようになっている。
[メダルセンサ処理でのメダル投入信号遷移状態の判定について]
図8に示すように、非遊技プログラムに含まれるメダルセンサ処理におけるメダル投入信号状態遷移が正しいか否かの判定では、投入メダルセンサ1〜3(投入メダルセンサ31a〜31c)により当該投入メダルセンサ1〜3の検出範囲をメダルが通過し始めたことが検出される際には、投入メダルセンサ1(投入メダルセンサ31a)がOFF状態からON状態となった後、投入メダルセンサ2(投入メダルセンサ31b)がOFF状態からON状態となり、その後、投入メダルセンサ3(投入メダルセンサ31b)がOFF状態からON状態となる遷移が、メダル投入信号遷移状態データに基づいて特定される場合に、メダル投入信号状態遷移が正しいと判定されるようになっている。
また、投入メダルセンサ1〜3により当該投入メダルセンサ1〜3の検出範囲をメダルが通過したことが検出される際には、投入メダルセンサ1がON状態からOFF状態となった後、投入メダルセンサ2がON状態からOFF状態となり、その後、投入メダルセンサ3がON状態からOFF状態となる遷移が、メダル投入信号遷移状態データに基づいて特定される場合、及び投入メダルセンサ1がON状態からOFF状態となった後、投入メダルセンサ3がON状態からOFF状態となり、その後、投入メダルセンサ2がON状態からOFF状態となる遷移が、メダル投入信号遷移状態データに基づいて特定される場合に、メダル投入信号状態遷移が正しいと判定されるようになっている。
そして、メダルセンサ処理では、メダル投入信号遷移状態データが正しいと判定されており、かつ投入メダルセンサ1〜3のいずれかがON状態であると判定されることで、メダル通過状態参照データ(検知)が設定されることとなる。すなわち、投入メダルセンサ1〜3のうち投入メダルセンサ1が最初にOFF状態からON状態に変化する場合に、メダル投入信号遷移状態データが正しいと判定されるので、メダル投入信号遷移状態データが正しいと判定されており、かつ投入メダルセンサ1がON状態となったときに、メダル通過状態参照データ(検知)が設定されることとなる。
また、メダル投入信号遷移状態データが正しいと判定されており、かつ投入メダルセンサ1〜3のすべてがON状態であると判定されることで、メダル通過状態参照データ(正常通過)が設定されることとなる。すなわち、投入メダルセンサ1〜3のうち投入メダルセンサ2が最後にON状態からOFF状態に変化する場合、及び投入メダルセンサ3が最後にON状態からOFF状態に変化する場合に、メダル投入信号遷移状態データが正しいと判定されるので、メダル投入信号遷移状態データが正しいと判定されており、かつ投入メダルセンサ2及び3がOFF状態となったときに、メダル通過状態参照データ(正常通過)が設定されることとなる。
遊技プログラムに含まれる上述のメダル投入信号処理では、Sd16及びSd17のステップによりメダル通過状態参照データ(正常通過)が設定されていると判定した後に、Sd21〜Sd24のステップにより投入メダルセンサ1〜3の入力データがON状態からOFF状態となったことが特定される場合に、その後のメダル投入処理等に進むようになっている。すなわち、メダルセンサチェック処理によりメダル通過状態参照データ(正常通過)が設定された際に、投入メダルセンサ2または3のON状態からOFF状態への立下りが検出されることで、正常なメダルの投入が検出されるようになっている。
[タイマ割込み処理について]
本実施例のメイン制御部41が行うタイマ割込み処理(メイン)の制御内容について、図9に基づいて説明する。尚、タイマ割込み処理(メイン)は、遊技プログラムに含まれるサブルーチンである。
図9に示すように、タイマ割込み処理(メイン)では、まず、すべての表レジスタと裏レジスタを交換した後(Se1)、タイマ割込を禁止に設定し(Se2)、電断が発生しているか否かを判定する電断判定処理を行う(Se3)。電断判定処理では、スロットマシン1が備える各電気機器等に電力を供給するための電源ボックスから出力される出力電圧が予め定められた所定の閾値より低下した状態が、予め定められた所定期間以上にわたり継続されているか否かを判定し、当該出力電圧が所定の閾値より低下した状態が所定期間(本実施例では、連続する2回のタイマ割込みが行わる期間)以上にわたり継続していると判定した場合は、スロットマシン1への電力供給が停止されて電断が発生していると判定して、その旨を示す電断フラグをRAM41cの所定領域に設定して、当該電断判定処理を終了する。一方、電源ボックスの出力電圧が所定の閾値より低下した状態が所定期間(本実施例では、連続する2回のタイマ割込みが行わる期間)以上にわたり継続していないと判定した場合は、スロットマシン1への電力供給が正常に継続されているので、電断フラグを設定せずに、電断判定処理を終了する。
Se3のステップにおいて電断判定処理を行った後は、RAM41cの所定領域に設定されているか否かを判定し(Se4)、電断フラグが設定されていると判定した場合には、電断処理を行う。
電断処理では、メイン制御部41が備えるすべてのレジスタの値、スタックポインタSPにより示される遊技スタック領域の現在のアドレス、遊技RAM領域の所定領域の内容を、バックアップ電源によりバックアップされている遊技RAM領域の所定領域に記憶させることで退避させる。尚、バックアップ電源によりバックアップされている遊技RAM領域は、スロットマシン1への電力供給が停止しても、バックアップ電源により電力が供給される限り当該遊技RAM領域の記憶内容が保存されるようになっている。
そして、メイン制御部41が備えるパラレル出力ポートを、所定の順序で順次の初期化して出力状態をOFF状態にする。また、RAM41cの所定領域に破壊診断用データ、RAM41cのパリティ調整用データを、バックアップ電源によりバックアップされている遊技RAM領域の所定領域に設定する。その後、RAM41cへのアクセスを禁止に設定し、ループ処理に入る。この状態で、電源ボックスの出力電圧が、メイン制御部41の動作に必要な電圧よりも低下すると、メイン制御部41は内部的に動作停止状態になる。
スロットマシン1への電力供給が停止される場合に、電断処理が実行され、電断前のレジスタの値が退避されるとともに、RAM41cの遊技RAM領域の所定領域の内容もバックアップ電源が供給されることで保持されることで、スロットマシン1への電力供給が再開された際に実行される初期設定処理において、電断前の制御状態に復帰させることができるようになっている。
Se4のステップにおいて、電断フラグが設定されていないと判定した場合は、メイン処理により制御されるゲームの進行段階に応じて各種制御を行うための処理(例えば、各種センサやスイッチ類の入力データ等の更新に関するポート入力処理、投入メダルセンサ31a〜31cや払出センサ34cの検出信号の遷移に異常があるか否かを判定するセンサ監視処理、メダル通過時間タイマを更新するメダル通過時間タイマ更新処理、出力ポートに接続された各種LED等の表示器(例えば、クレジット表示器11等)をダイナミック点灯させるLEDダイナミック表示処理等)を順次実行する。
タイマ割込処理では、当該タイマ割込処理において行う複数の処理の一つとして、例えば、ポート入力処理(Se6)や、センサ監視処理、メダル通過時間タイマ更新処理、LEDダイナミック表示処理等を実行する。
ポート入力処理では、該タイマ割込処理(メイン)が行われた時点で入力ポートから入力される各種センサやスイッチ類の検出状態に基づいて、各種センサやスイッチ類毎に入力データ、確定データ、エッジデータ(ONエッジデータ及びOFFエッジデータ)を各々生成して、各データをRAM41cの所定領域に設けられたポート入力バッファの所定領域に設定する。ポート入力バッファに設定された各種センサやスイッチ類の入力データ、確定データ、エッジデータは、上述のメイン処理の遊技開始時待ち処理において行われる操作入力受付処理等の各種処理にて参照され、センサやスイッチ類の入力状況に応じてゲームの進行に関する処理が行われることとなる。
センサ監視処理は、非遊技プログラムに含まれ、上述のメダル手入れ許可フラグが設定されていない期間、すなわちメダル投入部4からのメダルの投入が許可されている期間外において、投入メダルセンサ31a〜31cによりメダル等が検出されたか否かを判定し、投入メダルセンサ31a〜31cによりメダル等が検出された場合に、メダルの投入に関する異常が発生している旨を示すセンサエラー参照データを非遊技RAM領域の所定領域に設定する。また、上述のメイン処理により実行される遊技終了時設定処理により小役の入賞に伴いメダルを払い出す払出制御が行われている期間外において、払出センサ34cによりメダル等が検出されたか否かを判定し、払出センサ34cによりメダル等が検出された場合に、メダルの払出に関する異常が発生している旨を示すセンサエラー参照データを非遊技RAM領域の所定領域に設定する。
センサ監視処理により設定されたセンサエラー参照データは、センサ監視処理の終了後にタイマ割込処理において行われる遊技プログラムに含まれる所定処理により参照され、当該所定処理により、設定されているセンサエラー参照データに基づいて特定される異常に応じて、投入エラーフラグ、払出エラーフラグが遊技RAM領域の所定領域に設定される。そして、当該投入エラーフラグ、払出エラーフラグは、上述のメダル投入払出エラーチェック処理において参照され、投入エラーフラグ、払出エラーフラグが設定されている場合には、対応するエラー状態に制御されることとなる。
メダル通過時間タイマ更新処理では、上述のメダルセンサ処理によりメダル通過時間タイマによる計時を開始する旨が設定された後、当該計時を終了させる旨が設定されるときまでの期間にわたり、メダル通過時間タイマ更新処理が実行される毎に、メダル通過時間タイマの値に所定値を加算することで更新する。
LEDダイナミック表示処理では、出力ポートに接続された各種LED等の表示器(クレジット表示器11、遊技補助表示器12、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED20等)の点灯状態をメイン処理等の各処理による設定に応じてダイナミック点灯させるための点灯信号を設定し、各種LED等の表示器に対して送信するように制御する。これにより、各種LED等の表示器が所定点灯態様に制御されることとなる。
Se4のステップにおいて、電断フラグが設定されていないと判定し、タイマ割込処理において行う複数の処理が全て終了した後は、すべての表レジスタと裏レジスタを交換し(Se7)、タイマ割込を許可に設定して(Se8)、タイマ割込み処理を終了させて、当該タイマ割込み処理が開始されたときのメイン処理に復帰させる。
このように、メイン制御部41は、タイマ割込処理において、遊技制御基板40に接続された投入メダルセンサ31a〜31cや払出センサ34c、MAXBETスイッチ6等の各種センサやスイッチ類の検出状況を取得して、これら各種センサやスイッチ類の入力データ、確定データ、エッジデータを更新するポート入力処理を実行するようになっている。これにより、上述の遊技開始待ち処理における割込1回待ち処理が行われて、タイマ割込処理が行われる毎に、各種センサやスイッチ類の入力データ、確定データ、エッジデータが更新されるようになっている。
[作用効果について]
従来の遊技機では、起動時に初期化条件が成立している場合に、制御状態を初期化した後、遊技を進行させるためのメイン処理に移行し、メイン処理において遊技を進行させるための信号が検出されることで、遊技を進行させるようにした構成のものがある。
このような構成では、エラーの中にはメダル詰まりなど解消する作業を行わなければ根本的な解決にならないものもあり、エラーが生じた状態のまま起動時に初期化条件が成立することでエラーも初期化されると、初期化された後、遊技を進行させるための信号が検出されて遊技が進行してしまうと、エラーが解消しないまま遊技が進行してしまう虞がある。
これに対して、本実施例の遊技機であるスロットマシン1は、遊技の制御を行うメイン制御部41を備え、当該メイン制御部41は、メダル投入信号処理を実行することで、遊技を進行させるための遊技進行信号として、投入メダルセンサ31a〜31cにより正常なメダルの投入を示すメダル投入信号が検出されているか否かを判定することが可能であり、操作入力受付処理を実行することで、遊技を進行させるための遊技進行信号として、MAXBETスイッチ6等のスイッチ類の操作状況を示す信号が検出されているか否かを判定することが可能であり、メダル投入払出エラーチェック処理を実行することで、メダルの投入や払出に関する異常が発生しているか否かを判定し、異常が発生しているときには、遊技の進行を不能化するエラー状態に制御するエラー処理を実行することが可能であり、初期設定処理を実行することで、設定変更処理に移行させ、設定変更操作が行われることで初期化条件が成立したときに、RAM41cに記憶されているエラー状態を含む遊技の進行に関する制御状態を初期化することが可能な構成であり、メイン制御部41は、初期設定処理において遊技の進行に関する制御状態を初期化した後、遊技開始待ち処理のメダル投入信号処理や操作入力受付処理において遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理を実行して特定エラーが発生しているか否かを判定する構成である。
この構成によれば、特定エラーの発生に伴いエラー状態に制御されており、特定エラーの原因が解消しないまま初期化条件が成立した場合でも、遊技に関する制御状態が初期化されることに伴ってエラー状態も初期化されてしまうこととなるが、このような場合でも、初期設定処理において遊技に関する制御状態が初期化された後、最初に遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理が実行されることで、特定エラーが発生しているか否かが判定され、特定エラーが発生していると判定された場合には、遊技進行信号が検出されて遊技が進行する前に、再びエラー処理が実行されてエラー状態に制御されることとなり、特定エラーの原因が解消していないにも関わらず遊技が進行してしまうことがなく、特定エラーが確実に解消した状態で遊技を進行させることができる。
尚、本実施例では、メイン制御部41は、メダル投入払出エラーチェック処理において、メダル投入部4からのメダルの投入が許可されている期間外において、投入メダルセンサ31a〜31cによりメダル等が検出された場合や、メダルの払出制御が行われている期間外において、払出センサ34cによりメダル等が検出された場合に、メダルの投入や払出に関する異常が発生していると判定して、エラー状態に制御する構成であるが、メダル投入払出エラーチェック処理では、メダルセレクタ29内にメダル等が詰まっており、投入メダルセンサ31a〜31cにより所定時間以上の期間にわたりメダル等の検出状態が継続されたことに基づいて、メダルの投入に関する異常が発生していると判定する構成や、メダル払出口9の付近にメダル等が詰まっており、払出センサ34cにより所定時間以上の期間にわたりメダル等の検出状態が継続されたことに基づいて、メダルの払出に関する異常が発生していると判定する構成、投入メダルセンサ31a〜31cの検出信号の遷移に異常が検出されたことに基づいて、メダルの投入に関する異常が発生していると判定する構成、払出センサ34cの検出信号の遷移に異常が検出されたことに基づいて、メダルの払出に関する異常が発生していると判定する構成でも良い。
本実施例のメイン制御部41は、初期設定処理において、設定変更処理に移行して設定変更操作が行われることで、初期化条件が成立したときに、特定エラーが発生しているか否かに関わらず、RAM41cに記憶されている遊技の進行に関する制御状態を初期化する構成である。
この構成によれば、遊技の進行に関する制御状態を初期化することで大半のエラーは解消することから、初期化条件が成立したときに、特定エラーが発生しているか否かに関わらず、遊技の進行に関する制御状態を初期化することで、初期化に係る制御を簡素化できる。
本実施例のメイン制御部41は、初期設定処理にて遊技の進行に関する制御状態を初期化した後、遊技開始待ち処理において実行されるメダル投入信号処理や操作入力受付処理により最初に遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理を実行して特定エラーが発生しているか否かを判定する構成であり、メダル投入払出エラーチェック処理において、特定エラーとして、メダルの払出に関する異常が発生しているか否かを判定し、異常が発生しているときには、遊技の進行を不能化するエラー状態に制御するエラー処理を実行することが可能であり、特定エラーであるメダルの払出に関する異常は、払出センサ34cの検出範囲内に詰まっているメダル等を物理的に取り除くことで解消可能である。
この構成によれば、特定エラーとしてメダルの払出に関する異常が発生している場合には、払出センサ34cの検出範囲内に詰まっているメダル等を物理的に取り除くことで特定エラーの原因を物理的に解消可能であり、初期設定処理にて遊技の進行に関する制御状態を初期化した後、最初に遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理を実行して特定エラーが発生しているか否かを判定するので、特定エラーの原因が物理的に解消していないにも関わらず遊技が進行してしまうことがなく、エラーが確実に解消した状態で遊技を進行させることができる。
本実施例のメイン制御部41は、各種スイッチ類の検出状態の変化に応じて段階的に移行するメイン処理と、一定時間間隔(本実施例では、約0.56ミリ秒)毎に所定の処理を行うタイマ割込処理と、を実行可能であり、タイマ割込処理において、遊技制御基板40に接続された投入メダルセンサ31a〜31cや払出センサ34cの検出状況を取得するポート入力処理を実行し、メイン処理に含まれる遊技開始待ち処理において、割込1回待ち処理を実行して少なくとも1回のタイマ割込処理が実行されることを待った後、メダル投入払出エラーチェック処理を実行して、特定エラーが発生しているか否かを判定する構成である。
この構成によれば、割込1回待ち処理の実行により行われるタイマ割込処理のポート入力処理によって投入メダルセンサ31a〜31cや払出センサ34cの最新の検出状況が取得された後に、メダル投入払出エラーチェック処理を実行することで、最新の状態で特定エラーが発生しているか否かを判定することができる。
本実施例のメイン制御部41は、メイン処理とタイマ割込処理とを実行可能であり、タイマ割込処理において、遊技制御基板40に接続された投入メダルセンサ31a〜31cや払出センサ34c、MAXBETスイッチ6等のスイッチ類の検出状況を取得するポート入力処理を実行し、メイン処理に含まれる遊技開始待ち処理において、割込1回待ち処理を実行して1回のタイマ割込処理が実行される毎に、メダル投入払出エラーチェック処理、メダル投入信号処理、操作入力受付処理を実行し、メダル投入払出エラーチェック処理において、メダルの投入や払出に関する異常が発生しているか否かを判定し、メダル投入信号処理及び投入操作入力受付処理において、遊技進行信号が検出されているか否かを判定する構成である。
この構成によれば、タイマ割込処理が実行されてポート入力処理により、投入メダルセンサ31a〜31c、払出センサ34c、MAXBETスイッチ6等のスイッチ類の検出状況が取得され、最新の状態に更新される毎に、特定エラーが発生しているか否かを判定すること、遊技進行信号が検出されているか否かを判定することができる。
本実施例のメイン制御部41は、メダル投入信号処理、操作入力受付処理において、遊技を進行させるための遊技進行信号が検出されているか否かを判定することが可能であり、メダル投入払出エラーチェック処理を実行することで、メダルの投入や払出に関する異常が発生しているか否かを判定し、異常が発生しているときには、遊技の進行を不能化するエラー状態に制御するエラー処理を実行することが可能な構成であり、不能化手段によるエラー状態が解除された後、メダル投入信号処理、操作入力受付処理により最初に遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理を実行して、特定エラーが発生しているか否かを判定する構成である。
この構成によれば、特定エラーの発生に伴いエラー状態に制御されており、特定エラーの原因が解消しないままエラー状態が解除された場合に、特定エラーが解消されていない場合でも遊技が進行可能となるが、このような場合でも、エラー状態が解除された後、最初に遊技進行信号が検出されているか否かが判定される前に、メダル投入払出エラーチェック処理が実行されて、特定エラーが発生しているか否かが判定され、特定エラーが発生していると判定された場合には、遊技進行信号が検出されて遊技が進行する前に再びエラー状態に制御されることとなり、特定エラーの原因が解消していないにも関わらず遊技が進行してしまうことがなく、エラーが確実に解消した状態で遊技を進行させることができる。
従来の遊技機では、遊技の進行に係る遊技プログラムが記憶される遊技プログラム領域と、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、がそれぞれ別個にROMに割り当てられた構成のものがある。このような構成では、非遊技プログラムにおいてメダルの通過の不正を検知しているが、遊技プログラムにおいては投入されたメダルの通過のみを判定しているため、非遊技プログラムが正常に動作しなかった場合に、不正が行われていてもメダルの通過が判定されてしまう虞がある。
これに対して、本実施例の遊技機であるスロットマシン1は、プログラムを記憶可能な記憶領域を有するROM41bと、当該ROM41bに記憶されたプログラムに基づいて制御を行うメイン制御部41と、を備え、ROM41bの記憶領域は、遊技の進行に係る遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、を含み、遊技プログラムにおいて第1条件として、投入メダルセンサ31bまたは31cの確定データがON状態であり、かつ入力データがOFF状態であること、すなわち入力データがON状態からOFF状態に変化したことが成立することで、遊技媒体であるメダルの通過を検出する第1検出処理(メダル投入信号処理)を行い、非遊技プログラムにおいて第2条件として、投入メダルセンサ31a〜31cの検出状態に基づいて特定されるメダル投入信号状態遷移データが正常であり、かつ投入メダルセンサ31bまたは31cの確定データがON状態からOFF状態に変化したことが成立することで遊技媒体であるメダルの通過を検出する第2検出処理(メダルセンサチェック処理)を行い、遊技プログラムでは、第1検出処理及び第2検出処理の双方で遊技媒体の通過が検出されたときに賭け数及びクレジットに加算する遊技媒体が通過したことを判定する構成である。
このような構成では、遊技の進行に係る遊技プログラムが記憶される遊技プログラム領域と、遊技プログラムによって呼び出されるプログラムであり、遊技の進行に係わらない非遊技プログラムが記憶される非遊技プログラム領域と、が別個に割り当てられた構成において、遊技プログラムにおいて第1条件が成立することで遊技媒体の通過を検出する第1検出処理、及び遊技プログラムにおいて第2条件が成立することで遊技媒体の通過を検出する第2検出処理の双方で遊技媒体の通過が検出されたときに遊技媒体の通過を判定するので、遊技プログラムの容量を増やすことなく、遊技媒体の通過を適切に判定することができる。
本実施例のスロットマシン1は、第1条件として、投入メダルセンサ31bまたは31cの確定データがON状態であり、かつ入力データがOFF状態であることが成立することで、遊技媒体であるメダルの通過を検出する第1検出処理(メダル投入信号処理)を行い、第2条件として、投入メダルセンサ31a〜31cの検出状態に基づいて特定されるメダル投入信号状態遷移データが正常であり、かつ投入メダルセンサ31bまたは31cの確定データがON状態からOFF状態に変化したことが成立することで遊技媒体であるメダルの通過を検出する第2検出処理(メダルセンサチェック処理)を行う構成であり、第2条件は、第1条件よりも多くの情報を含むメダル投入信号の状態遷移に基づいて成立する構成である。このような構成では、遊技プログラムの容量を増やすことなく、遊技媒体の通過に係る不正を排除することができる。
本実施例のスロットマシン1は、非遊技プログラムであるメダルセンサチェック処理において、第2条件として、投入メダルセンサ31a〜31cの検出状態に基づいて特定されるメダル投入信号状態遷移データが正常であり、かつ投入メダルセンサ31bまたは31cの確定データがON状態からOFF状態に変化したことが成立することで遊技媒体であるメダルの通過を検出する第2検出処理(メダルセンサチェック処理)を行う構成であり、第2検出処理により遊技媒体の通過が正常に検出されなかったときに異常と判定して、メダル関連エラー参照データ(E5)を設定する構成である。このような構成では、遊技プログラムの容量を増やすことなく、遊技媒体の通過に係る不正を検知することができる。
本実施例のスロットマシン1は、第1条件として、投入メダルセンサ31bまたは31cの確定データがON状態であり、かつ入力データがOFF状態であることが成立することで、遊技媒体であるメダルの通過を検出する第1検出処理(メダル投入信号処理)を行い、第2条件として、投入メダルセンサ31a〜31cの検出状態に基づいて特定されるメダル投入信号状態遷移データが正常であり、かつ投入メダルセンサ31bまたは31cの確定データがON状態からOFF状態に変化したことが成立することで遊技媒体であるメダルの通過を検出する第2検出処理(メダルセンサチェック処理)を行う構成であり、第1検出処理及び第2検出処理において、共通の投入メダルセンサ31a〜31cを用いて遊技媒体の通過を検出する構成である。このような構成では、共通のセンサを対象として遊技プログラムと非遊技プログラムの双方で遊技媒体の通過を検出するため、遊技プログラムの容量を増やすことなく、遊技媒体の通過を適切に判定することができる。
本実施例のスロットマシン1は、一定期間毎に定期処理を実行するタイマ割込み処理(メイン)により、投入メダルセンサ31a〜31cの検出状態を取得可能であり、第1条件として、投入メダルセンサ31bまたは31cの確定データがON状態であり、かつ入力データがOFF状態であることが成立することで、遊技媒体であるメダルの通過を検出する第1検出処理(メダル投入信号処理)を行い、第2条件として、投入メダルセンサ31a〜31cの検出状態に基づいて特定されるメダル投入信号状態遷移データが正常であり、かつ投入メダルセンサ31bまたは31cの確定データがON状態からOFF状態に変化したことが成立することで遊技媒体であるメダルの通過を検出する第2検出処理(メダルセンサチェック処理)を行う構成であり、第1検出処理及び第2検出処理では、同じタイマ割込み処理(メイン)にて取得された投入メダルセンサ31a〜31cの検出状態を用いて遊技媒体の通過を検出する構成である。このような構成では、同じタイマ割込み処理(メイン)にて取得した投入メダルセンサ31a〜31cの検出状態を用いて遊技プログラムと非遊技プログラムの双方で遊技媒体の通過を検出するため、遊技プログラムの容量を増やすことなく、遊技媒体の通過を適切に判定することができる。
以上、本発明の実施例を図面により説明してきたが、本発明はこの実施例に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。
前記実施例では、本発明を遊技用価値としてメダル並びにクレジットを用いて賭数が設定されるスロットマシンに適用した例について説明したが、遊技用価値として遊技球を用いて賭数を設定するスロットマシンや、遊技用価値としてクレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンに適用しても良い。遊技球を遊技用価値として用いる場合は、例えば、メダル1枚分を遊技球5個分に対応させることができ、前記実施例で賭数として3を設定する場合は、15個の遊技球を用いて賭数を設定するものに相当する。
さらに、メダル及び遊技球等の複数種類の遊技用価値のうちいずれか1種類のみを用いるものに限定されるものではなく、例えば、メダル及び遊技球等の複数種類の遊技用価値を併用できるものであっても良い。すなわち、メダル及び遊技球等の複数種類の遊技用価値のいずれを用いても賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球等の複数種類の遊技用価値のいずれをも払い出し得るスロットマシンを適用しても良い。
また、前記実施例及び変形例では、本発明が遊技機の一例であるスロットマシン1に適用された例が示されていたが、本発明はこれに限定されるものではなく、遊技機の他の一例であり、遊技領域に遊技球を発射することにより遊技を行うパチンコ遊技機等においても適用可能である。