(57)【要約】      （修正有）【課題】不正行為によって設定変更状態に制御されて、設定変更が行われることを確実に防止することができる遊技機を提供する。【解決手段】メイン制御部は、前面扉が開放状態であるときに操作可能となる電源スイッチが操作されたときに、設定キースイッチを用いて設定変更操作が行なわれており、かつ前面扉が開放状態であると判定されたときには設定変更状態に制御し、その後においては前面扉の開閉状態に関わらず予め定められた設定終了条件が成立するまで当該設定変更状態を維持するのに対し、前面扉が閉鎖状態であると判定されたときには設定変更状態に制御しない。設定変更状態では、その前に選択されていた設定値から変更可能となる。【選択図】図８
2015096232.tif 000002
【特許請求の範囲】
【請求項１】
遊技を行う遊技機であって、
遊技機の前面に設けられた開閉可能な開閉体と、
前記開閉体が開放状態であるときに操作可能となる電源投入操作手段及び特定操作手段と、
前記開閉体が開放状態であることを検出するための検出手段と、
電源が投入されていない状態で前記電源投入操作手段が操作されて電源が投入されたときに、前記特定操作手段の操作状態に基づいて、遊技者にとっての有利度が異なる複数種類の設定値のうちからいずれかの設定値を設定可能な設定変更状態に制御することが可能な設定変更状態制御手段と、
電源が投入されている状態での前記特定操作手段の操作状態に基づいて、前記設定値を確認可能な設定確認状態に制御する設定確認状態制御手段と、
を備え、
前記設定変更状態に制御されたときには、当該設定変更状態に制御される前に選択されていた設定値から前記有利度を変更可能であり、
前記設定変更状態制御手段は、
前記設定変更状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態であることに対応した検出結果であるときには、前記設定変更状態に制御し、
前記設定変更状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態でないことに対応した検出結果であるときには、前記設定変更状態に制御せず、
前記設定変更状態に制御した後においては、当該設定変更状態における前記検出手段の検出結果に関わらず、前記設定変更状態を終了させる設定終了条件が成立するまで当該設定変更状態を維持し、
前記設定確認状態制御手段は、
前記設定確認状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態であることに対応した検出結果であるときには、前記設定確認状態に制御し、
前記設定確認状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態でないことに対応した検出結果であるときには、前記設定確認状態に制御せず、
前記電源投入操作手段と前記検出手段とは離間した位置に設けられている、遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、弾球遊技機やスロットマシンなどの遊技機に関する。詳しくは、遊技者に対する有利度を変更可能な遊技機に関する。
【背景技術】
【０００２】
この種の遊技機としては、例えば、特許文献１や特許文献２があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１３５８４４号公報
【特許文献２】特開２００６−０６１５１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、不正行為によって設定変更状態に制御されて、設定変更が行われることを確実に防止することができる遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の請求項１に記載の遊技機は、
遊技を行う遊技機であって、
遊技機の前面に設けられた開閉可能な開閉体と、
前記開閉体が開放状態であるときに操作可能となる電源投入操作手段及び特定操作手段と、
前記開閉体が開放状態であることを検出するための検出手段と、
電源が投入されていない状態で前記電源投入操作手段が操作されて電源が投入されたときに、前記特定操作手段の操作状態に基づいて、遊技者にとっての有利度が異なる複数種類の設定値のうちからいずれかの設定値を設定可能な設定変更状態に制御することが可能な設定変更状態制御手段と、
電源が投入されている状態での前記特定操作手段の操作状態に基づいて、前記設定値を確認可能な設定確認状態に制御する設定確認状態制御手段と、
を備え、
前記設定変更状態に制御されたときには、当該設定変更状態に制御される前に選択されていた設定値から前記有利度を変更可能であり、
前記設定変更状態制御手段は、
前記設定変更状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態であることに対応した検出結果であるときには、前記設定変更状態に制御し、
前記設定変更状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態でないことに対応した検出結果であるときには、前記設定変更状態に制御せず、
前記設定変更状態に制御した後においては、当該設定変更状態における前記検出手段の検出結果に関わらず、前記設定変更状態を終了させる設定終了条件が成立するまで当該設定変更状態を維持し、
前記設定確認状態制御手段は、
前記設定確認状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態であることに対応した検出結果であるときには、前記設定確認状態に制御し、
前記設定確認状態に制御するための操作がされかつ前記検出手段の検出結果が前記開閉体が開放状態でないことに対応した検出結果であるときには、前記設定確認状態に制御せず、
前記電源投入操作手段と前記検出手段とは離間した位置に設けられている
ことを特徴としている。
【０００６】
本発明の手段１の遊技機は、
所定の遊技を行うことが可能な遊技機（スロットマシン１）であって、
開閉可能に設けられた開閉体（前面扉１ｂ）と、
前記開閉体（前面扉１ｂ）が開放状態であるときに操作可能となる操作手段（電源スイッチ３９、設定キースイッチ３７）と、
前記開閉体（前面扉１ｂ）の開閉状態を検出する開閉状態検出手段（ドア開放検出スイッチ２５）と、
遊技の進行制御を行うとともに、制御情報（コマンド）を送信する遊技制御手段（メイン制御部４１）と、
前記遊技制御手段（メイン制御部４１）から受信した制御情報（コマンド）に基づいて演出の制御を行う演出制御手段（サブ制御部９１）と、
を備え、
前記遊技制御手段（メイン制御部４１）は、
予め決められた順番で処理を実行する基本処理（ゲーム処理）を行う基本処理手段と、
一定時間間隔毎に前記基本処理に割り込んで処理を実行する定期割込処理（タイマ割込処理（メイン））を行う定期割込処理手段と、
前記制御情報（コマンド）を格納可能な制御情報格納手段（送信データレジスタ５６１）と、
前記基本処理（ゲーム処理）において、遊技の進行に応じて複数個で意味を成す第１の制御情報（第１のコマンド）を生成し、前記制御情報格納手段（送信データレジスタ５６１）に１個（１バイト）ずつ送信順に格納する第１の制御情報生成手段と、
前記定期割込処理（タイマ割込処理（メイン））において、遊技の進行とは関係なく生じる事象に応じて第２の制御情報（第２のコマンド）を生成し、前記制御情報格納手段（送信データレジスタ５６１）に格納する第２の制御情報生成手段と、
前記制御情報格納手段（送信データレジスタ５６１）に格納された制御情報（コマンド）を該制御情報が格納された順番で、前記基本処理（ゲーム処理）及び前記定期割込処理（タイマ割込処理（メイン））を停止させることなく並行して前記演出制御手段（サブ制御部９１）に対して送信する制御情報送信手段（シリアル通信回路５１１）と、
前記第１の制御情報生成手段が、前記第１の制御情報（第１のコマンド）を構成する複数個の制御情報（２バイトのコマンド）の前記制御情報格納手段（送信データレジスタ５６１）への格納を開始し、該複数個の制御情報（２バイトのコマンド）の格納が完了するまでの期間において前記定期割込処理（タイマ割込処理（メイン））の実行を禁止する定期割込処理禁止手段と、
前記操作手段（設定キースイッチ３７）の操作状態を特定するための信号が所定状態（ＯＮ）であるときに、前記開閉状態検出手段（ドア開放検出スイッチ２５）の検出結果に基づく前記開閉体（前面扉１ｂ）の開閉状態が、開放状態であるときには複数種類の設定値（１〜６）のうちからいずれかの設定値を選択することで遊技者に対する有利度（内部抽選の当選確率等）を変更可能な設定変更状態に制御し、前記開閉体（前面扉１ｂ）が閉鎖状態であるときには前記設定変更状態に制御しない状態制御手段と、
を含み、
前記状態制御手段は、前記設定変更状態に制御した後においては、当該設定変更状態における前記開閉状態検出手段（ドア開放検出スイッチ２５）の検出結果に関わらず、所定の設定終了条件（スタートスイッチ７のＯＮが検出され、かつ設定キースイッチ３７のＯＦＦが検出されること）が成立するまで当該設定変更状態を維持する
ことを特徴としている。
この特徴によれば、第１の制御情報を構成する複数個の制御情報の制御情報格納手段への格納を開始し、該複数個の制御情報の格納が完了するまでの期間においては、第２の制御情報が制御情報格納手段に格納される可能性のある定期割込処理の実行が禁止されるので、複数個で意味を成す第１の制御情報の全てが制御情報格納手段に格納される前に、第２の制御情報が格納され、これら複数個で意味を成す第１の制御情報の間に第２の制御情報が送信されてしまうことがなくなるので、演出制御手段側で第１の制御情報から遊技制御手段における遊技の進行状況を正確に特定することができる。
また、操作手段の操作状態を特定するための信号が所定状態であるときに、開閉体が閉鎖状態であるときには設定変更状態に制御されることがない。すなわち、本来であれば開閉体が開放状態でなければ、操作手段を操作できず操作手段の操作状態を特定するための信号が所定状態にも成り得ないところ、操作手段の操作状態を特定するための信号が所定状態であるときに開閉体が閉鎖状態であり不正行為が行われた可能性があるときには、設定変更状態に制御されることがない。これにより、不正行為によって設定変更状態に制御されて、設定変更が行われることを確実に防止することができる。
また、操作手段の操作状態を特定するための信号が所定状態であるときに、開閉体が開放状態であるときには、設定変更状態に制御し、その後設定終了条件が成立するまで当該設定変更状態が維持される。このため、不正行為ではなく正規に操作が行われて設定変更状態に制御された後においては、設定変更途中において仮に遊技場管理者の手が開閉状態検出手段に触れるなどして、開閉体が閉鎖状態であると判定されたとしても、当該設定変更状態を維持させて、確実に設定変更を行うことができる。
尚、前記有利度設定手段が設定する有利度とは、入賞の発生が許容される確率、遊技者にとって有利な状態に制御されるか否かを決定する確率、遊技者にとって有利な権利を付与するか否かを決定する確率、遊技者に付与する権利数、この権利数を複数の異なる権利数から選択する際の確率、遊技者にとって有利な情報が報知されるか否かの確率などが該当し、有利度が高いとは、これらの確率やゲーム数、権利数が遊技者にとって有利となるように優遇されることである。
また、操作手段は、一の操作を検出する一の操作手段であっても良く、第１の操作を検出する操作手段と当該第１の操作とは別の第２の操作を検出する操作手段とを含む複数種類の操作手段であっても良い。また、操作手段の操作状態とは、操作手段の操作部の状態（設定キースイッチがＯＮである状態など）であっても良く、また操作手段から出力される信号の状態（設定キースイッチがＯＮであるときに出力される信号の状態など）であっても良い。
また、開閉可能に設けられた前面扉（前面扉１ｂ）を備えており、当該前面扉を開放状態とすることにより操作手段が操作可能となる場合は、当該前面扉が前記開閉体であるといえる（スロットマシン参照）。これに対し、外枠に対して回動自在に設けられた本体を備えており、当該本体を回動させて開放状態とすることにより操作手段が操作可能となる場合は、当該本体が前記開閉体であるといえる。すなわち、開閉体は、開放状態とすることにより操作手段を操作可能とならしめる部材であれば良い。
【０００７】
本発明の手段２に記載の遊技機は、手段１に記載の遊技機であって、
前記操作手段は、一方側（図２において、筐体１ａの左の側面）に設けられ、
前記開閉状態検出手段は、前記操作手段と異なる側（図２において、筐体１ａの右の側面）に設けられている
ことを特徴としている。
この特徴によれば、操作手段と開閉状態検出手段とが、各々、異なる側に設けられているため、不正行為を操作手段と開閉状態検出手段との双方に対して行うことの困難性を高めることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明が適用された遊技機の一例であるスロットマシンの正面図である。
【図２】スロットマシンの内部構造図である。
【図３】リールの図柄配列を示す図である。
【図４】スロットマシンの構成を示すブロック図である。
【図５】メイン制御部の構成を示すブロック図である。
【図６】シリアル通信回路の構成例を示すブロック図である。
【図７】シリアル通信回路によるコマンドの送信状況を示す図である。
【図８】メイン制御部が起動時に実行する起動処理（メイン）の制御内容を示すフローチャートである。
【図９】メイン制御部が実行するコマンド格納処理の制御内容を示すフローチャートである。
【図１０】メイン制御部がエラー発生時に実行するエラー処理の制御内容を示すフローチャートである。
【図１１】メイン制御部が実行する設定変更処理の制御内容を示すフローチャートである。
【図１２】メイン制御部が設定変更処理後に実行するゲーム処理の制御内容を示すフローチャートである。
【図１３】メイン制御部が実行するＢＥＴ処理の制御内容を示すフローチャートである。
【図１４】メイン制御部が実行するＢＥＴ処理の制御内容を示すフローチャートである。
【図１５】メイン制御部が実行するＢＥＴ処理の制御内容を示すフローチャートである。
【図１６】メイン制御部が実行するリール回転処理の制御内容を示すフローチャートである。
【図１７】メイン制御部が実行するリール回転処理の制御内容を示すフローチャートである。
【図１８】メイン制御部が一定間隔毎に実行するタイマ割込処理（メイン）の制御内容を示すフローチャートである。
【図１９】メイン制御部が一定間隔毎に実行するタイマ割込処理（メイン）の制御内容を示すフローチャートである。
【図２０】メイン制御部がタイマ割込処理（メイン）において実行するスイッチ入力判定処理の制御内容を示すフローチャートである。
【図２１】メイン制御部がタイマ割込処理（メイン）において実行するドア監視処理の制御内容を示すフローチャートである。
【図２２】メイン制御部がタイマ割込処理（メイン）において実行するコマンド送信処理の制御内容を示すフローチャートである。
【図２３】メイン制御部がタイマ割込処理（メイン）において電断を検出したことに応じて実行する電断処理（メイン）の制御内容を示すフローチャートである。
【図２４】コマンド格納処理とタイマ割込処理（メイン）の許可／禁止との関係を示すタイミングチャートである。
【図２５】実施例２においてメイン制御部が起動時に実行する起動処理（メイン）の制御内容を示すフローチャートである。
【図２６】実施例２においてメイン制御部が実行する設定変更処理の制御内容を示すフローチャートである。
【図２７】実施例２においてメイン制御部が実行するＢＥＴ処理の制御内容を示すフローチャートである。
【発明を実施するための形態】
【０００９】
本発明の実施例を以下に説明する。
【実施例１】
【００１０】
本発明が適用された遊技機の一例であるスロットマシンの実施例１を図面を用いて説明すると、本実施例のスロットマシン１は、前面が開口する筐体１ａと、この筐体１ａの側端に回動自在に枢支された前面扉１ｂと、から構成されている。
【００１１】
本実施例のスロットマシン１の筐体１ａの内部には、図２に示すように、外周に複数種の図柄が配列されたリール２Ｌ、２Ｃ、２Ｒ（以下、左リール、中リール、右リール）が水平方向に並設されており、図１に示すように、これらリール２Ｌ、２Ｃ、２Ｒに配列された図柄のうち連続する３つの図柄が前面扉１ｂに設けられた透視窓３から見えるように配置されている。
【００１２】
リール２Ｌ、２Ｃ、２Ｒの外周部には、図３に示すように、それぞれ「黒７」、「網７（図中網掛け７）」、「白７」、「ＢＡＲ」、「リプレイ」、「スイカ」、「黒チェリー」、「白チェリー」、「ベル」、「オレンジ」といった互いに識別可能な複数種類の図柄が所定の順序で、それぞれ２１個ずつ描かれている。リール２Ｌ、２Ｃ、２Ｒの外周部に描かれた図柄は、透視窓３において各々上中下三段に表示される。
【００１３】
各リール２Ｌ、２Ｃ、２Ｒは、各々対応して設けられリールモータ３２Ｌ、３２Ｃ、３２Ｒ（図４参照）によって回転させることで、各リール２Ｌ、２Ｃ、２Ｒの図柄が透視窓３に連続的に変化しつつ表示されるとともに、各リール２Ｌ、２Ｃ、２Ｒの回転を停止させることで、透視窓３に３つの連続する図柄が表示結果として導出表示されるようになっている。
【００１４】
リール２Ｌ、２Ｃ、２Ｒの内側には、リール２Ｌ、２Ｃ、２Ｒそれぞれに対して、基準位置を検出するリールセンサ３３Ｌ、３３Ｃ、３３Ｒと、リール２Ｌ、２Ｃ、２Ｒを背面から照射するリールＬＥＤ５５と、が設けられている。また、リールＬＥＤ５５は、リール２Ｌ、２Ｃ、２Ｒの連続する３つの図柄に対応する１２のＬＥＤからなり、各図柄をそれぞれ独立して照射可能とされている。
【００１５】
前面扉１ｂの各リール２Ｌ、２Ｃ、２Ｒの手前側（遊技者側）の位置には、液晶表示器５１（図１参照）の表示領域５１ａが配置されている。液晶表示器５１は、液晶素子に対して電圧が印加されていない状態で、透過性を有するノーマリーホワイトタイプの液晶パネルを有しており、表示領域５１ａの透視窓３に対応する透過領域５１ｂ及び透視窓３を介して遊技者側から各リール２Ｌ、２Ｃ、２Ｒが視認できるようになっている。また、表示領域５１ａの透過領域５１ｂを除く領域の裏面には、背後から表示領域５１ａを照射するバックライト（図示略）が設けられているとともに、さらにその裏面には、内部を隠蔽する隠蔽部材（図示略）が設けられている。
【００１６】
前面扉１ｂには、メダルを投入可能なメダル投入部４、メダルが払い出されるメダル払出口９、クレジット（遊技者所有の遊技用価値として記憶されているメダル数）を用いてメダル１枚分の賭数を設定する際に操作される１枚ＢＥＴスイッチ５、クレジットを用いて、その範囲内において遊技状態に応じて定められた規定数の賭数のうち最大の賭数を設定する際に操作されるＭＡＸＢＥＴスイッチ６、クレジットとして記憶されているメダル及び賭数の設定に用いたメダルを精算する（クレジット及び賭数の設定に用いた分のメダルを返却させる）際に操作される精算スイッチ１０、ゲームを開始する際に操作されるスタートスイッチ７、リール２Ｌ、２Ｃ、２Ｒの回転を各々停止する際に操作されるストップスイッチ８Ｌ、８Ｃ、８Ｒ、が遊技者により操作可能にそれぞれ設けられている。
【００１７】
また、前面扉１ｂには、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器１１、後述するＢＢ中のメダルの獲得枚数やエラー発生時にその内容を示すエラーコード等が表示される遊技補助表示器１２、入賞の発生により払い出されたメダル枚数が表示されるペイアウト表示器１３が設けられている。
【００１８】
また、前面扉１ｂには、賭数が１設定されている旨を点灯により報知する１ＢＥＴＬＥＤ１４、賭数が２設定されている旨を点灯により報知する２ＢＥＴＬＥＤ１５、賭数が３設定されている旨を点灯により報知する３ＢＥＴＬＥＤ１６、メダルの投入が可能な状態を点灯により報知する投入要求ＬＥＤ１７、スタートスイッチ７の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効ＬＥＤ１８、ウェイト（前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態）中である旨を点灯により報知するウェイト中ＬＥＤ１９、後述するリプレイゲーム中である旨を点灯により報知するリプレイ中ＬＥＤ２０が設けられている。
【００１９】
ＭＡＸＢＥＴスイッチ６の内部には、１枚ＢＥＴスイッチ５及びＭＡＸＢＥＴスイッチ６の操作による賭数の設定操作が有効である旨を点灯により報知するＢＥＴスイッチ有効ＬＥＤ２１（図４参照）が設けられており、ストップスイッチ８Ｌ、８Ｃ、８Ｒの内部には、該当するストップスイッチ８Ｌ、８Ｃ、８Ｒによるリールの停止操作が有効である旨を点灯により報知する左、中、右停止有効ＬＥＤ２２Ｌ、２２Ｃ、２２Ｒ（図４参照）がそれぞれ設けられている。
【００２０】
前面扉１ｂの内側には、所定のキー操作により後述するエラー状態及び後述する打止状態を解除するためのリセット操作を検出するリセットスイッチ２３、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器２４、メダル投入部４から投入されたメダルの流路を、筐体１ａ内部に設けられた後述のホッパータンク３４ａ（図２参照）側またはメダル払出口９側のいずれか一方に選択的に切り替えるための流路切替ソレノイド３０、メダル投入部４から投入され、ホッパータンク３４ａ側に流下したメダルを検出する投入メダルセンサ３１を有するメダルセレクタ（図示略）、前面扉１ｂの開放状態を検出するドア開放検出スイッチ２５（図４参照）、後述のＢＢ終了時に打止状態（リセット操作がなされるまでゲームの進行が規制される状態）に制御する打止機能の有効／無効を選択するための打止スイッチ３６ａ、後述のＢＢ終了時に自動精算処理（クレジットとして記憶されているメダルを遊技者の操作によらず精算（返却）する処理）に制御する自動精算機能の有効／無効を選択するための自動精算スイッチ３６ｂが設けられている。
【００２１】
筐体１ａ内部には、図２に示すように、前述したリール２Ｌ、２Ｃ、２Ｒ、リールモータ３２Ｌ、３２Ｃ、３２Ｒ、各リール２Ｌ、２Ｃ、２Ｒのリール基準位置をそれぞれ検出可能なリールセンサ３３Ｌ、３３Ｃ、３３Ｒ（図４参照）からなるリールユニット２、外部出力信号を出力するための外部出力基板１０００、メダル投入部４から投入されたメダルを貯留するホッパータンク３４ａ、ホッパータンク３４ａに貯留されたメダルをメダル払出口９より払い出すためのホッパーモータ３４ｂ、ホッパーモータ３４ｂの駆動により払い出されたメダルを検出する払出センサ３４ｃからなるホッパーユニット３４、電源ボックス１００が設けられている。
【００２２】
ホッパーユニット３４の側部には、ホッパータンク３４ａから溢れたメダルが貯留されるオーバーフロータンク３５が設けられている。オーバーフロータンク３５の内部には、貯留された所定量のメダルを検出可能な高さに設けられた左右に離間する一対の導電部材からなる満タンセンサ３５ａが設けられており、導電部材がオーバーフロータンク３５内に貯留されたメダルを介して接触することにより導電したときに内部に貯留されたメダル貯留量が所定量以上となったこと、すなわちオーバーフロータンクが満タン状態となったことを検出できるようになっている。
【００２３】
電源ボックス１００の前面には、設定変更状態または設定確認状態に切り替えるための設定キースイッチ３７、通常時においてはエラー状態や前述の打止状態を解除するためのリセットスイッチとして機能し、設定変更状態においては後述する内部抽選の当選確率（出玉率）の設定値を変更するための設定スイッチとして機能するリセット／設定スイッチ３８、電源をｏｎ／ｏｆｆする際に操作される電源スイッチ３９が設けられている。
【００２４】
また、ドア開放検出スイッチ２５は、後述するように設定値を変更する際に操作される設定キースイッチ３７、リセット／設定スイッチ３８、電源スイッチ３９が搭載された電源ボックス１００が設けられた側面と対向する側面に設けられている。また、電源ボックス１００は、筐体１ａ内部の下方位置に設けられているのに対し、ドア開放検出スイッチ２５は、筐体１ａ内部の上方位置に設けられている。すなわち、ドア開放検出スイッチ２５は、筐体１ａ内部において、電源ボックス１００が設けられている位置に対し、対角する位置に設けられている。
【００２５】
尚、ドア開放検出スイッチ２５は、電源ボックス１００が設けられた側面と対向する側面あるいは電源ボックス１００と対角する位置において、前面扉１ｂの開放状態を検出するものであれば、筐体１ａに設けられているものに限らず、前面扉１ｂの内側に設けられているものであっても良い。
【００２６】
本実施例におけるドア開放検出スイッチ２５としては、反射型の光センサを採用している。例えば、光センサは、光（可視光線、赤外線など）を発射する投光部と、該光を検出する受光部とを含み、投光部は所定方向に光を発射し、受光部は投光部から発射された光のうち前面扉１ｂが閉鎖状態であるときにのみ当該前面扉１ｂに設けられている反射部材によって反射された光を検出することにより、前面扉１ｂが閉鎖状態であることを特定可能に構成されている。尚、ドア開放検出スイッチ２５は、前面扉１ｂの開閉状態を検出できるものであれば良く、反射型の光センサに限るものではなく、透過型のものであっても良く、また前面扉１ｂの開閉状態に応じてＯＮ／ＯＦＦするスイッチであっても良い。
【００２７】
本実施例のスロットマシン１においてゲームを行う場合には、まず、メダルをメダル投入部４から投入するか、或いはクレジットを使用して賭数を設定する。クレジットを使用するには１枚ＢＥＴスイッチ５またはＭＡＸＢＥＴスイッチ６を操作すれば良い。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインＬ１〜Ｌ５（図１参照）が有効となり、スタートスイッチ７の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。尚、遊技状態に対応する規定数のうち最大数を超えてメダルが投入された場合には、その分はクレジットに加算される。
【００２８】
入賞ラインとは、各リール２Ｌ、２Ｃ、２Ｒの透視窓３に表示された図柄の組み合わせが入賞図柄の組み合わせであるかを判定するために設定されるラインである。本実施例では、図１に示すように、各リール２Ｌ、２Ｃ、２Ｒの中段に並んだ図柄に跨って設定された入賞ラインＬ１、各リール２Ｌ、２Ｃ、２Ｒの上段に並んだ図柄に跨って設定された入賞ラインＬ２、各リール２Ｌ、２Ｃ、２Ｒの下段に並んだ図柄に跨って設定された入賞ラインＬ３、リール２Ｌの上段、リール２Ｃの中段、リール２Ｒの下段、すなわち右下がりに並んだ図柄に跨って設定された入賞ラインＬ４、リール２Ｌの下段、リール２Ｃの中段、リール２Ｒの上段、すなわち右上がりに並んだ図柄に跨って設定された入賞ラインＬ５の５種類が入賞ラインとして定められている。
【００２９】
ゲームが開始可能な状態でスタートスイッチ７を操作すると、各リール２Ｌ、２Ｃ、２Ｒが回転し、各リール２Ｌ、２Ｃ、２Ｒの図柄が連続的に変動する。この状態でいずれかのストップスイッチ８Ｌ、８Ｃ、８Ｒを操作すると、対応するリール２Ｌ、２Ｃ、２Ｒの回転が停止し、透視窓３に表示結果が導出表示される。
【００３０】
そして全てのリール２Ｌ、２Ｃ、２Ｒが停止されることで１ゲームが終了し、有効化されたいずれかの入賞ラインＬ１〜Ｌ５上に予め定められた図柄の組み合わせ（以下、役とも呼ぶ）が各リール２Ｌ、２Ｃ、２Ｒの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた枚数のメダルが遊技者に対して付与され、クレジットに加算される。また、クレジットが上限数（本実施例では５０）に達した場合には、メダルが直接メダル払出口９（図１参照）から払い出されるようになっている。尚、有効化された複数の入賞ライン上にメダルの払出を伴う図柄の組み合わせが揃った場合には、有効化された入賞ラインに揃った図柄の組み合わせそれぞれに対して定められた払出枚数を合計し、合計した枚数のメダルが遊技者に対して付与されることとなる。ただし、１ゲームで付与されるメダルの払出枚数には、上限（本実施例では１５枚）が定められており、合計した払出枚数が上限を超える場合には、上限枚数のメダルが付与されることとなる。また、有効化されたいずれかの入賞ラインＬ１〜Ｌ５上に、遊技状態の移行を伴う図柄の組み合わせが各リール２Ｌ、２Ｃ、２Ｒの表示結果として停止した場合には図柄の組み合わせに応じた遊技状態に移行するようになっている。
【００３１】
図４は、スロットマシン１の構成を示すブロック図である。スロットマシン１には、図４に示すように、遊技制御基板４０、演出制御基板９０、電源基板１０１が設けられており、遊技制御基板４０によって遊技状態が制御され、演出制御基板９０によって遊技状態に応じた演出が制御され、電源基板１０１によってスロットマシン１を構成する電気部品の駆動電源が生成され、各部に供給される。
【００３２】
電源基板１０１には、外部からＡＣ１００Ｖの電源が供給されるとともに、このＡＣ１００Ｖの電源からスロットマシン１を構成する電気部品の駆動に必要な直流電圧が生成され、遊技制御基板４０及び遊技制御基板４０を介して接続された演出制御基板９０に供給されるようになっている。また、後述するメイン制御部４１からサブ制御部９１へのコマンド伝送ラインと、遊技制御基板４０から演出制御基板９０に対して電源を供給する電源供給ラインと、が一系統のケーブル及びコネクタを介して接続されており、これらケーブルと各基板とを接続するコネクタ同士が全て接続されることで演出制御基板９０側の各部が動作可能となり、かつメイン制御部４１からのコマンドを受信可能な状態となる。このため、メイン制御部４１からコマンドを伝送するコマンド伝送ラインが演出制御基板９０に接続されている状態でなければ、演出制御基板９０側に電源が供給されず、演出制御基板９０側のみが動作してしまうことがない。
【００３３】
また、電源基板１０１には、前述したホッパーモータ３４ｂ、払出センサ３４ｃ、満タンセンサ３５ａ、設定キースイッチ３７、リセット／設定スイッチ３８、電源スイッチ３９が接続されている。
【００３４】
遊技制御基板４０には、前述した１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒ、精算スイッチ１０、リセットスイッチ２３、投入メダルセンサ３１、ドア開放検出スイッチ２５、打止スイッチ３６ａ、自動精算スイッチ３６ｂ、リールセンサ３３Ｌ、３３Ｃ、３３Ｒが接続されているとともに、電源基板１０１を介して前述した払出センサ３４ｃ、満タンセンサ３５ａ、設定キースイッチ３７、リセット／設定スイッチ３８が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。
【００３５】
また、遊技制御基板４０には、前述したクレジット表示器１１、遊技補助表示器１２、ペイアウト表示器１３、１〜３ＢＥＴＬＥＤ１４〜１６、投入要求ＬＥＤ１７、スタート有効ＬＥＤ１８、ウェイト中ＬＥＤ１９、リプレイ中ＬＥＤ２０、ＢＥＴスイッチ有効ＬＥＤ２１、左、中、右停止有効ＬＥＤ２２Ｌ、２２Ｃ、２２Ｒ、設定値表示器２４、流路切替ソレノイド３０、リールモータ３２Ｌ、３２Ｃ、３２Ｒが接続されているとともに、電源基板１０１を介して前述したホッパーモータ３４ｂが接続されており、これら電気部品は、遊技制御基板４０に搭載された後述のメイン制御部４１の制御に基づいて駆動されるようになっている。
【００３６】
遊技制御基板４０には、メイン制御部４１、制御用クロック生成回路４２、乱数用クロック生成回路４３、スイッチ検出回路４４、モータ駆動回路４５、ソレノイド駆動回路４６、ＬＥＤ駆動回路４７、電断検出回路４８、リセット回路４９が搭載されている。
【００３７】
メイン制御部４１は、１チップマイクロコンピュータにて構成され、後述するＲＯＭ５０６に記憶された制御プログラムを実行して、遊技の進行に関する処理を行うととともに、遊技制御基板４０に搭載された制御回路の各部を直接的または間接的に制御する。
【００３８】
制御用クロック生成回路４２は、メイン制御部４１の外部にて、所定周波数の発振信号となる制御用クロックＣＣＬＫを生成する。制御用クロック生成回路４２により生成された制御用クロックＣＣＬＫは、例えば図５に示すようなメイン制御部４１の制御用外部クロック端子ＥＸＣを介してクロック回路５０２に供給される。乱数用クロック生成回路４３は、メイン制御部４１の外部にて、制御用クロックＣＣＬＫの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックＲＣＬＫを生成する。乱数用クロック生成回路４３により生成された乱数用クロックＲＣＬＫは、例えば図５に示すようなメイン制御部４１の乱数用外部クロック端子ＥＲＣを介して乱数回路５０９に供給される。
【００３９】
スイッチ検出回路４４は、遊技制御基板４０に直接または電源基板１０１を介して接続されたスイッチ類から入力された検出信号を取り込んでメイン制御部４１に伝送する。モータ駆動回路４５は、メイン制御部４１から出力されたモータ駆動信号をリールモータ３２Ｌ、３２Ｃ、３２Ｒに伝送する。ソレノイド駆動回路４６は、メイン制御部４１から出力されたソレノイド駆動信号を流路切替ソレノイド３０に伝送する。ＬＥＤ駆動回路は、メイン制御部４１から出力されたＬＥＤ駆動信号を遊技制御基板４０に接続された各種表示器やＬＥＤに伝送する。電断検出回路４８は、スロットマシン１に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をメイン制御部４１に対して出力する。リセット回路４９は、電源投入時または電源遮断時などの電源が不安定な状態においてメイン制御部４１にシステムリセット信号を与える。また、リセット回路４９は、ウォッチドッグタイマを内蔵し、ウォッチドッグタイマがタイムアップした場合、すなわちメイン制御部４１のＣＰＵ５０５の動作が一定時間停止した場合においてメイン制御部４１にユーザリセット信号を与える。
【００４０】
図５は、遊技制御基板４０に搭載されたメイン制御部４１の構成例を示している。図５に示すメイン制御部４１は、１チップマイクロコンピュータであり、外部バスインタフェース５０１と、クロック回路５０２と、固有情報記憶回路５０３と、リセット／割込コントローラ５０４と、ＣＰＵ５０５と、ＲＯＭ５０６と、ＲＡＭ５０７と、ＣＴＣ（カウンタ／タイマサーキット）５０８と、乱数回路５０９と、ＰＩＰ（パラレルインプットポート）５１０と、シリアル通信回路５１１と、アドレスデコード回路５１２とを備えて構成される。
【００４１】
図５に示すメイン制御部４１が備える外部バスインタフェース５０１は、メイン制御部４１を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインタフェースである。例えば、外部バスインタフェース５０１は、メイン制御部４１に外付けされた外部メモリや外部入出力装置などに接続され、これらの外部装置との間でアドレス信号やデータ信号、各種の制御信号などを送受信するものであれば良い。この実施の形態において、外部バスインタフェース５０１には、内部リソースアクセス制御回路５０１Ａが含まれている。
【００４２】
内部リソースアクセス制御回路５０１Ａは、外部バスインタフェース５０１を介した外部装置からメイン制御部４１の内部データに対するアクセスを制御して、例えばＲＯＭ５０６に記憶されたゲーム制御用プログラムや固定データといった、内部データの不適切な外部読出を制限するための回路である。
【００４３】
メイン制御部４１が備えるクロック回路５０２は、例えば制御用外部クロック端子ＥＸＣに入力される発振信号を２分周することなどにより、内部システムクロックＳＣＬＫを生成する回路である。本実施例では、制御用外部クロック端子ＥＸＣに制御用クロック生成回路４２が生成した制御用クロックＣＣＬＫが入力される。クロック回路５０２により生成された内部システムクロックＳＣＬＫは、例えばＣＰＵ５０５といった、メイン制御部４１において遊技の進行を制御する各種回路に供給される。また、内部システムクロックＳＣＬＫは、乱数回路５０９にも供給され、乱数用クロック生成回路４３から供給される乱数用クロックＲＣＬＫの周波数を監視するために用いられる。
【００４４】
メイン制御部４１が備える固有情報記憶回路５０３は、例えばメイン制御部４１の内部情報となる複数種類の固有情報を記憶する回路である。
【００４５】
メイン制御部４１が備えるリセット／割込コントローラ５０４は、メイン制御部４１の内部や外部にて発生する各種リセット、割込要求を制御するためのものである。リセット／割込コントローラ５０４が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子ＸＳＲＳＴに一定の期間にわたりローレベル信号（システムリセット信号）が入力されたときに発生するリセットである。ユーザリセットは、外部ユーザリセット端子ＸＵＲＳＴに一定の期間にわたりローレベルの信号（ユーザリセット信号）が入力されたとき、または内蔵ウォッチドッグタイマ（ＷＤＴ）のタイムアウト信号が発生したことや、指定エリア外走行禁止（ＩＡＴ）が発生したことなど、所定の要因により発生するリセットである。尚、本実施例では前述のように内蔵ウォッチドッグタイマを使用せずにリセット回路４９に搭載されたウォッチドッグタイマ（ＷＤＴ）を用いているため、外部ユーザリセット端子ＸＵＲＳＴにユーザリセット信号が入力されるか、指定エリア外走行禁止（ＩＡＴ）が発生することでユーザリセットが発生することとなる。
【００４６】
リセット／割込コントローラ５０４が制御する割込には、ノンマスカブル割込ＮＭＩとマスカブル割込ＩＮＴが含まれている。ノンマスカブル割込ＮＭＩは、ＣＰＵ５０５の割込禁止状態でも無条件に受け付けられる割込であり、外部ノンマスカブル割込端子ＸＮＭＩ（入力ポートＰ４と兼用）に一定の期間にわたりローレベル信号が入力されたときに発生する割込である。マスカブル割込ＩＮＴは、ＣＰＵ５０５の設定命令により、割込要求の受け付けを許可／禁止できる割込であり、優先順位設定による多重割込の実行が可能である。マスカブル割込ＩＮＴの要因としては、外部マスカブル割込端子ＸＩＮＴ（入力ポートＰ３と兼用）に一定の期間にわたりローレベル信号が入力されたこと、ＣＴＣ５０８に含まれるタイマ回路にてタイムアウトが発生したこと、シリアル通信回路５１１にてデータ送信による割込要因が発生したこと、乱数回路５０９にて乱数値となる数値データの取込による割込要因が発生したことなど、複数種類の割込要因が予め定められていれば良い。
【００４７】
メイン制御部４１が備えるＣＰＵ５０５は、ＲＯＭ５０６から読み出したプログラムを実行することにより、スロットマシン１におけるゲームの進行を制御するための処理などを実行する。このときには、ＣＰＵ５０５がＲＯＭ５０６から固定データを読み出す固定データ読出動作や、ＣＰＵ５０５がＲＡＭ５０７に各種の変動データを書き込んで一時記憶させる変動データ書込動作、ＣＰＵ５０５がＲＡＭ５０７に一時記憶されている各種の変動データを読み出す変動データ読出動作、ＣＰＵ５０５が外部バスインタフェース５０１やＰＩＰ５１０などを介してメイン制御部４１の外部から各種信号の入力を受け付ける受信動作、ＣＰＵ５０５が外部バスインタフェース５０１やシリアル通信回路５１１などを介してメイン制御部４１の外部へと各種信号を出力する送信動作等も行われる。
【００４８】
このように、メイン制御部４１では、ＣＰＵ５０５がＲＯＭ５０６に格納されているプログラムに従って制御を実行するので、以下、メイン制御部４１（又はＣＰＵ５０５）が実行する（又は処理を行う）ということは、具体的には、ＣＰＵ５０５がプログラムに従って制御を実行することである。このことは、遊技制御基板４０以外の他の基板に搭載されているマイクロコンピュータについても同様である。
【００４９】
メイン制御部４１が備えるＲＯＭ５０６には、ゲーム制御用のユーザプログラムや固定データ等が記憶されている。また、ＲＯＭ５０６には、セキュリティチェックプログラム５０６Ａが記憶されている。ＣＰＵ５０５は、スロットマシン１の電源投入やシステムリセットの発生に応じてメイン制御部４１がセキュリティモードに移行したときに、ＲＯＭ５０６に記憶されたセキュリティチェックプログラム５０６Ａを読み出し、ＲＯＭ５０６の記憶内容が変更されたか否かを検査するセキュリティチェック処理を実行する。尚、セキュリティチェックプログラム５０６Ａは、ＲＯＭ５０６とは異なる内蔵メモリに記憶されても良い。また、セキュリティチェックプログラム５０６Ａは、例えば外部バスインタフェース５０１を介してメイン制御部４１に外付けされた外部メモリの記憶内容を検査するセキュリティチェック処理に対応したものであっても良い。
【００５０】
メイン制御部４１が備えるＲＡＭ５０７は、ゲーム制御用のワークエリアを提供する。ここで、ＲＡＭ５０７の少なくとも一部は、バックアップ電源によってバックアップされているバックアップＲＡＭであれば良い。すなわち、スロットマシンへの電力供給が停止しても、所定期間はＲＡＭ５０７の少なくとも一部の内容が保存される。尚、本実施例では、ＲＡＭ５０７の全ての領域がバックアップＲＡＭとされており、スロットマシンへの電力供給が停止しても、所定期間はＲＡＭ５０７の全ての内容が保存される。
【００５１】
メイン制御部４１が備えるＣＴＣ５０８は、例えば８ビットのプログラマブルタイマを３チャネル（ＰＴＣ０−ＰＴＣ２）内蔵して構成され、リアルタイム割込の発生や時間計測を可能とするタイマ回路を含んでいる。各プログラマブルタイマＰＴＣ０−ＰＴＣ２は、内部システムクロックＳＣＬＫに基づいて生成されたカウントクロックの信号変化（例えばハイレベルからローレベルへと変化する立下りタイミング）などに応じて、タイマ値が更新されるものであれば良い。また、ＣＴＣ５０８は、例えば８ビットのプログラマブルカウンタを４チャネル（ＰＣＣ０−ＰＣＣ３）内蔵しても良い。各プログラマブルカウンタＰＣＣ０−ＰＣＣ３は、内部システムクロックＳＣＬＫの信号変化、或いは、プログラマブルカウンタＰＣＣ０−ＰＣＣ３のいずれかにおけるタイムアウトの発生などに応じて、カウント値が更新されるものであれば良い。ＣＴＣ５０８は、セキュリティ時間を延長する際の延長時間（可変設定時間）をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタや、乱数回路５０９にて生成される乱数のスタート値をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタなどを、含んでも良い。或いは、これらのフリーランカウンタは、例えばＲＡＭ５０７のバックアップ領域といった、ＣＴＣ５０８とは異なるメイン制御部４１の内部回路に含まれても良い。
【００５２】
メイン制御部４１が備える乱数回路５０９は、例えば１６ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。本実施例では、遊技制御基板４０の側において、後述する内部抽選用の乱数値を示す数値データがカウント可能に制御される。尚、遊技効果を高めるために、これら以外の乱数値が用いられても良い。ＣＰＵ５０５は、乱数回路５０９から抽出した数値データに基づき、乱数回路５０９とは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工或いは更新することで、内部抽選用の乱数値を示す数値データをカウントするようにしても良い。以下では、内部抽選用の乱数値を示す数値データが、ハードウェアとなる乱数回路５０９からＣＰＵ５０５により抽出された数値データをソフトウェアにより加工しないものとする。尚、乱数回路５０９は、メイン制御部４１に内蔵されるものであっても良いし、メイン制御部４１とは異なる乱数回路チップとして、メイン制御部４１に外付けされるものであっても良い。
【００５３】
内部抽選用の乱数値は、複数種類の入賞について発生を許容するか否かを判定するために用いられる値であり、本実施例では、「０」〜「６５５３５」の範囲の値をとる。
【００５４】
メイン制御部４１が備えるＰＩＰ５１０は、例えば６ビット幅の入力専用ポートであり、専用端子となる入力ポートＰ０〜入力ポートＰ２と、機能兼用端子となる入力ポートＰ３〜入力ポートＰ５とを含んでいる。入力ポートＰ３は、ＣＰＵ５０５等に接続される外部マスカブル割込端子ＸＩＮＴと兼用される。入力ポートＰ４は、ＣＰＵ５０５等に接続される外部ノンマスカブル割込端子ＸＮＭＩと兼用される。入力ポートＰ５は、シリアル通信回路５１１が使用する第１チャネル受信端子ＲＸＡと兼用される。
【００５５】
図５に示すメイン制御部４１が備えるアドレスデコード回路５１２は、メイン制御部４１の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、メイン制御部４１の内部回路、或いは、周辺デバイスとなる外部装置を、選択的に有効動作させて、ＣＰＵ５０５からのアクセスが可能となる。
【００５６】
メイン制御部４１が備えるＲＯＭ５０６には、ゲーム制御用のユーザプログラムやセキュリティチェックプログラム５０６Ａの他に、ゲームの進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ＲＯＭ５０６には、ＣＰＵ５０５が各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ＲＯＭ５０６には、ＣＰＵ５０５が遊技制御基板４０から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータなどが記憶されている。
【００５７】
メイン制御部４１が備えるＲＡＭ５０７には、スロットマシン１におけるゲームの進行を制御するために用いられる各種のデータを保持する領域として、遊技制御用データ保持エリア５９０が設けられている。ＲＡＭ５０７としては、例えばＤＲＡＭが使用されており、記憶しているデータ内容を維持するためのリフレッシュ動作が必要になる。ＣＰＵ５０５には、このリフレッシュ動作を行うためのリフレッシュレジスタが内蔵されている。例えば、リフレッシュレジスタは８ビットからなり、そのうち下位７ビットはＣＰＵ５０５がＲＯＭ５０６から命令フェッチするごとに自動的にインクリメントされる。したがって、リフレッシュレジスタにおける格納値の更新は、ＣＰＵ５０５における１命令の実行時間ごとに行われることになる。
【００５８】
メイン制御部４１は、シリアル通信回路５１１を介してサブ制御部９１に各種のコマンドを送信する。メイン制御部４１からサブ制御部９１へ送信されるコマンドは一方向のみで送られ、サブ制御部９１からメイン制御部４１へ向けてコマンドが送られることはない。
【００５９】
シリアル通信回路５１１は、図６に示すように、データレジスタ５６０、送信データレジスタ５６１、送信用シフトレジスタ５６２、ステータスレジスタ５６３を備える。
【００６０】
データレジスタ５６０は、ＣＰＵ５０５が生成し、内部バスを介して転送されたコマンドデータを一時的にバッファするレジスタであり、データレジスタ５６０にバッファされたコマンドデータは送信データレジスタ５６１の空き領域に格納される。
【００６１】
送信データレジスタ５６１は、送信待ちのコマンドデータが格納されるレジスタである。送信データレジスタ５６１には、複数のコマンドデータを格納可能な領域が設けられており、最大で３２バイトのコマンドデータを格納可能とされている。
【００６２】
送信用シフトレジスタ５６２は、シリアルデータ化されたコマンドデータが格納されるレジスタであり、送信データレジスタ５６１に格納されているコマンドデータのうち最も早い段階で格納されたコマンドデータからシリアルデータに変換され、送信用シフトレジスタ５６２に格納される。そして、送信用シフトレジスタ５６２にコマンドデータが格納されると直ちにサブ制御部９１に対して転送されるようになっている。
【００６３】
ステータスレジスタ５６３は、コマンドデータを送信中か否かを示す送信完了、送信データレジスタ５６１にコマンドデータが格納されているか否かを示すデータエンプティ等、シリアル通信回路５１１の送信状態を示すデータが格納されるレジスタである。送信完了の値として“１”が格納されている場合には、コマンドデータの送信を行っていないか、コマンドデータの送信が完了した旨を示し、“０”が格納されている場合には、コマンドデータの送信中、またはコマンドデータの送信待ちである旨を示す。データエンプティの値として“１”が設定されている場合には、送信データレジスタ５６１に１以上の送信待ちのコマンドデータが格納されている旨を示し、“０”が格納されている場合には、送信データレジスタ５６１に送信待ちのコマンドデータが格納されていない旨を示す。
【００６４】
ステータスレジスタ５６３の値は、内部バスを介してＣＰＵ５０５が参照可能であり、ＣＰＵ５０５は、ステータスレジスタ５６３の値を読み出すことにより、シリアル通信回路５１１の送信状態を確認できるようになっている。
【００６５】
次にシリアル通信回路５１１の動作状況を図７に基づいて説明する。
【００６６】
まず、送信データレジスタ５６１の全ての領域が空の状態であり、送信用シフトレジスタ５６２によるコマンドデータの送信も行われていない場合には、図７（ａ）に示すように、送信完了、データエンプティの値は、ともに“１”が設定されている。
【００６７】
図７（ｂ）に示すように、ＣＰＵ５０５の転送指令によりコマンドデータ１、２が送信データレジスタ５６１に格納されると、送信完了、データエンプティの値は、ともに“０”に変化する。
【００６８】
次いで、図７（ｃ）（ｄ）に示すように、送信データレジスタ５６１に格納されたコマンドデータ１、２のうち先に格納されたコマンドデータ１がシリアルデータに変換され、送信用シフトレジスタ５６２によってサブ制御部９１に対して送信され、コマンドデータ１の送信が完了すると、次に格納されたコマンドデータ２がシリアルデータに変換され、送信用シフトレジスタ５６２によってサブ制御部９１に対して送信されるとともに、最後のコマンドデータがシリアルデータに変換され、送信用シフトレジスタ５６２に格納され、送信データレジスタ５６１が空になるとデータエンプティの値が“１”に変化し、図７（ｅ）に示すように、送信用シフトレジスタ５６２に格納されている最後のコマンドデータの送信も完了すると、送信完了の値も“１”に変化し、全てのコマンドデータの送信が完了した状態となる。
【００６９】
メイン制御部４１は、遊技制御基板４０に接続された各種スイッチ類の検出状態が入力ポートから入力される。そしてメイン制御部４１は、これら入力ポートから入力される各種スイッチ類の検出状態に応じて段階的に移行する基本処理を実行する。
【００７０】
また、メイン制御部４１は、割込の発生により基本処理に割り込んで割込処理を実行できるようになっている。本実施例では、ＣＴＣ５０８に含まれるタイマ回路にてタイムアウトが発生したこと、すなわち一定時間間隔（本実施例では、約０．５６ｍｓ）毎に後述するタイマ割込処理（メイン）を実行する。
【００７１】
また、メイン制御部４１は、割込処理の実行中に他の割込を禁止するように設定されているとともに、複数の割込が同時に発生した場合には、予め定められた順位によって優先して実行する割込が設定されている。尚、割込処理の実行中に他の割込要因が発生し、割込処理が終了してもその割込要因が継続している状態であれば、その時点で新たな割込が発生することとなる。
【００７２】
メイン制御部４１は、基本処理として遊技制御基板４０に接続された各種スイッチ類の検出状態が変化するまでは制御状態に応じた処理を繰り返しループし、各種スイッチ類の検出状態の変化に応じて段階的に移行する処理を実行する。また、メイン制御部４１は、一定時間間隔（本実施例では、約０．５６ｍｓ）毎にタイマ割込処理（メイン）を実行する。尚、タイマ割込処理（メイン）の実行間隔は、基本処理において制御状態に応じて繰り返す処理が一巡する時間とタイマ割込処理（メイン）の実行時間とを合わせた時間よりも長い時間に設定されており、今回と次回のタイマ割込処理（メイン）との間で必ず制御状態に応じて繰り返す処理が最低でも一巡することとなる。
【００７３】
演出制御基板９０には、スロットマシン１の前面扉１ｂに配置された液晶表示器５１（図１参照）、演出効果ＬＥＤ５２、スピーカ５３、５４、前述したリールＬＥＤ５５等の演出装置が接続されており、これら演出装置は、演出制御基板９０に搭載された後述のサブ制御部９１による制御に基づいて駆動されるようになっている。
【００７４】
尚、本実施例では、演出制御基板９０に搭載されたサブ制御部９１により、液晶表示器５１、演出効果ＬＥＤ５２、スピーカ５３、５４、リールＬＥＤ５５等の演出装置の出力制御が行われる構成であるが、サブ制御部９１とは別に演出装置の出力制御を直接的に行う出力制御部を演出制御基板９０または他の基板に搭載し、サブ制御部９１がメイン制御部４１からのコマンドに基づいて演出装置の出力パターンを決定し、サブ制御部９１が決定した出力パターンに基づいて出力制御部が演出装置の出力制御を行う構成としても良く、このような構成では、サブ制御部９１及び出力制御部の双方によって演出装置の出力制御が行われることとなる。
【００７５】
また、本実施例では、演出装置として液晶表示器５１、演出効果ＬＥＤ５２、スピーカ５３、５４、リールＬＥＤ５５を例示しているが、演出装置は、これらに限られず、例えば、機械的に駆動する表示装置や機械的に駆動する役モノなどを演出装置として適用しても良い。
【００７６】
演出制御基板９０には、サブＣＰＵ９１ａ、ＲＯＭ９１ｂ、ＲＡＭ９１ｃ、Ｉ／Ｏポート９１ｄなどを備えたマイクロコンピュータにて構成され、演出の制御を行うサブ制御部９１、演出制御基板９０に接続された液晶表示器５１の表示制御を行う表示制御回路９２、演出効果ＬＥＤ５２、リールＬＥＤ５５の駆動制御を行うＬＥＤ駆動回路９３、スピーカ５３、５４からの音声出力制御を行う音声出力回路９４、電源投入時または電源遮断時にサブＣＰＵ９１ａにリセット信号を与えるリセット回路９５、日付情報及び時刻情報を含む時間情報を出力する時計装置９７、スロットマシン１に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をサブ制御部９１に対して出力する電断検出回路９８が搭載されており、サブ制御部９１は、メイン制御部から送信されるコマンドを受けて、演出を行うための各種の制御を行うとともに、演出制御基板９０に搭載された制御回路の各部を直接的または間接的に制御する。
【００７７】
リセット回路９５は、遊技制御基板４０においてメイン制御部４１にシステムリセット信号を与えるリセット回路４９よりもリセット信号を解除する電圧が低く定められており、電源投入時においてサブ制御部９１は、メイン制御部４１よりも早い段階で起動するようになっている。一方で、電断検出回路９８は、遊技制御基板４０においてメイン制御部４１に電圧低下信号を出力する電断検出回路４８よりも電圧低下信号を出力する電圧が低く定められており、電断時においてサブ制御部９１は、メイン制御部４１よりも遅い段階で停電を検知し、後述する電断処理（サブ）を行うこととなる。
【００７８】
サブ制御部９１は、メイン制御部４１と同様に、割込機能を備えており、メイン制御部４１からのコマンド受信時に割込を発生させて、メイン制御部４１から送信されたコマンドを取得し、バッファに格納するコマンド受信割込処理を実行する。また、サブ制御部９１は、システムクロックの入力数が一定数に到達する毎、すなわち一定間隔毎に割込を発生させて後述するタイマ割込処理（サブ）を実行する。
【００７９】
また、サブ制御部９１は、メイン制御部４１とは異なり、コマンドの受信に基づいて割込が発生した場合には、タイマ割込処理（サブ）の実行中であっても、当該処理に割り込んでコマンド受信割込処理を実行し、タイマ割込処理（サブ）の契機となる割込が同時に発生してもコマンド受信割込処理を最優先で実行するようになっている。
【００８０】
また、サブ制御部９１にも、停電時においてバックアップ電源が供給されており、バックアップ電源が供給されている間は、ＲＡＭ９１ｃに記憶されているデータが保持されるようになっている。
【００８１】
本実施例のスロットマシン１は、設定値に応じてメダルの払出率が変わるものである。詳しくは、後述する内部抽選において設定値に応じた当選確率を用いることにより、メダルの払出率が変わるようになっている。設定値は１〜６の６段階からなり、６が最も払出率が高く、５、４、３、２、１の順に値が小さくなるほど払出率が低くなる。すなわち設定値として６が設定されている場合には、遊技者にとって最も有利度が高く、５、４、３、２、１の順に値が小さくなるほど有利度が段階的に低くなる。
【００８２】
設定値を変更するためには、前面扉１ｂを開放させ、筐体１ａ内に設けられている電源ボックス１００の電源スイッチ３９および設定キースイッチ３７を操作して、スロットマシン１の電源がＯＮ状態である場合には一旦ＯＦＦ状態にし、設定キースイッチ３７をＯＮ状態としてからスロットマシン１の電源をＯＮする必要がある。設定キースイッチ３７をＯＮ状態として電源をＯＮすると、設定値表示器２４にＲＡＭ５０７から読み出された設定値が表示値として表示され、リセット／設定スイッチ３８の操作による設定値の変更操作が可能な設定変更状態に移行する。設定変更状態において、リセット／設定スイッチ３８が操作されると、設定値表示器２４に表示された表示値が１ずつ更新されていく（設定６からさらに操作されたときは、設定１に戻る）。そして、スタートスイッチ７が操作されると表示値を設定値として確定する。そして、設定キースイッチ３７がＯＦＦされると、確定した表示値（設定値）がメイン制御部４１のＲＡＭ５０７に格納され、遊技の進行が可能な状態に移行する。尚、電源スイッチ３９を一旦ＯＦＦ状態にし、設定キースイッチ３７をＯＮ状態として電源スイッチ３９をＯＮさせる操作を行うことにより、設定変更状態に移行されるため、当該操作をまとめて設定変更操作ともいう。
【００８３】
本実施例においては、前面扉１ｂを開放状態とすることにより設定変更操作を行うことが可能となるため、当該前面扉１ｂが開閉体であるといえる。また、前面扉１ｂの開放状態を検出するためのドア開放検出スイッチ２５が開閉状態検出手段であるといえる。
【００８４】
また、設定値を確認するためには、ゲーム終了後、賭数が設定されていない状態で設定キースイッチ３７をｏｎ状態とすれば良い。このような状況で設定キースイッチ３７をｏｎ状態とすると、設定値表示器２４にＲＡＭ５０７から読み出された設定値が表示されることで設定値を確認可能な設定確認状態に移行する。設定確認状態においては、ゲームの進行が不能であり、設定キースイッチ３７をｏｆｆ状態とすることで、設定確認状態が終了し、ゲームの進行が可能な状態に復帰することとなる。
【００８５】
本実施例のスロットマシン１においては、メイン制御部４１は、タイマ割込処理（メイン）を実行する毎に、電断検出回路４８からの電圧低下信号が検出されているか否かを判定する停電判定処理を行い、停電判定処理において電圧低下信号が検出されていると判定した場合に、電断処理（メイン）を実行する。電断処理（メイン）では、レジスタを後述するＲＡＭ５０７のスタックに退避し、ＲＡＭ５０７にいずれかのビットが１となる破壊診断用データ（本実施例では、５ＡＨ）、すなわち０以外の特定のデータを格納するとともに、ＲＡＭ５０７の全ての領域に格納されたデータに基づくＲＡＭパリティが０となるようにＲＡＭパリティ調整用データを計算し、ＲＡＭ５０７に格納する処理を行うようになっている。尚、ＲＡＭパリティとはＲＡＭ５０７の該当する領域（本実施例では、全ての領域）の各ビットに格納されている値の排他的論理和として算出される値である。このため、ＲＡＭ５０７の全ての領域に格納されたデータに基づくＲＡＭパリティが０であれば、ＲＡＭパリティ調整用データは０となり、ＲＡＭ５０７の全ての領域に格納されたデータに基づくＲＡＭパリティが１であれば、ＲＡＭパリティ調整用データは１となる。
【００８６】
そして、メイン制御部４１は、システムリセットによるかユーザリセットによるかに関わらず、その起動時においてＲＡＭ５０７の全ての領域に格納されたデータに基づいてＲＡＭパリティを計算するとともに、破壊診断用データの値を確認し、ＲＡＭパリティが０であり、かつ破壊診断用データの値も正しいことを条件に、ＲＡＭ５０７に記憶されているデータに基づいてメイン制御部４１の処理状態を電断前の状態に復帰させるが、ＲＡＭパリティが０でない場合（１の場合）や破壊診断用データの値が正しくない場合には、ＲＡＭ異常と判定し、ＲＡＭ異常エラーコードをレジスタにセットしてＲＡＭ異常エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、ＲＡＭ異常エラー状態は、通常のエラー状態と異なり、リセットスイッチ２３やリセット／設定スイッチ３８を操作しても解除されないようになっており、前述した設定変更状態において新たな設定値が設定されるまで解除されることがない。
【００８７】
尚、本実施例では、ＲＡＭ５０７に格納されている全てのデータが停電時においてもバックアップ電源により保持されるとともに、メイン制御部４１は、電源投入時においてＲＡＭ５０７のデータが正常であると判定した場合に、ＲＡＭ５０７の格納データに基づいて電断前の制御状態に復帰する構成であるが、ＲＡＭ５０７に格納されているデータのうち停電時において制御状態の復帰に必要なデータのみをバックアップし、電源投入時においてバックアップされているデータに基づいて電断前の制御状態に復帰する構成としても良い。
【００８８】
また、電源投入時において電断前の制御状態に復帰させる際に、全ての制御状態を電断前の制御状態に復帰させる必要はなく、遊技者に対して不利益とならない最低限の制御状態を復帰させる構成であれば良く、例えば、入力ポートの状態などを全て電断前の状態に復帰させる必要はない。
【００８９】
また、サブ制御部９１もタイマ割込処理（サブ）において電断検出回路９８からの電圧低下信号が検出されているか否かを判定し、電圧低下信号が検出されていると判定した場合に電断処理（サブ）を実行する。電断処理（サブ）では、レジスタを後述するＲＡＭ９１ｃのスタックに退避し、ＲＡＭ９１ｃにいずれかのビットが１となる破壊診断用データを格納するとともに、ＲＡＭ９１ｃの全ての領域に格納されたデータに基づくＲＡＭパリティが０となるようにＲＡＭパリティ調整用データを計算し、ＲＡＭ９１ｃに格納する処理を行うようになっている。
【００９０】
そして、サブ制御部９１は、その起動時においてＲＡＭ９１ｃの全ての領域に格納されたデータに基づいてＲＡＭパリティを計算し、ＲＡＭパリティが０であることを条件に、ＲＡＭ９１ｃに記憶されているデータに基づいてサブ制御部９１の処理状態を電断前の状態に復帰させるが、ＲＡＭパリティが０でない場合（１の場合）には、ＲＡＭ異常と判定し、ＲＡＭ９１ｃを初期化するようになっている。この場合、メイン制御部４１と異なり、ＲＡＭ９１ｃが初期化されるのみで演出の実行が不能化されることはない。
【００９１】
尚、本実施例では、ＲＡＭ９１ｃに格納されている全てのデータが停電時においてもバックアップ電源により保持されるとともに、サブ制御部９１は、電源投入時においてＲＡＭ９１ｃのデータが正常であると判定した場合に、ＲＡＭ９１ｃの格納データに基づいて電断前の制御状態に復帰する構成であるが、ＲＡＭ９１ｃに格納されているデータのうち停電時において制御状態の復帰に必要なデータのみをバックアップし、電源投入時においてバックアップされているデータに基づいて電断前の制御状態に復帰する構成としても良い。
【００９２】
また、電源投入時において電断前の制御状態に復帰させる際に、全ての制御状態を電断前の制御状態に復帰させる必要はなく、遊技者に対して不利益とならない最低限の制御状態を復帰させる構成であれば良く、入力ポートの状態や、演出が途中で中断された場合の途中経過などを全て電断前の状態に復帰させる必要はない。
【００９３】
次に、メイン制御部４１のＲＡＭ５０７の初期化について説明する。メイン制御部４１のＲＡＭ５０７の格納領域は、重要ワーク、一般ワーク、特別ワーク、設定値ワーク、非保存ワーク、非初期化領域、未使用領域、スタック領域に区分されている。
【００９４】
重要ワークは、各種表示器やＬＥＤの表示用データ、Ｉ／Ｏの入出力データ、遊技時間の計時カウンタ等、ＢＢ終了時に初期化すると不都合があるデータが格納されるワークである。一般ワークは、停止制御テーブル、停止図柄、メダルの払出枚数、ＢＢ中のメダル払出総数等、ＢＢ終了時に初期化可能なデータが格納されるワークである。特別ワークは、各種ソフトウェア乱数等、設定開始前にのみ初期化されるデータが格納されるワークである。非保存ワークは、各種スイッチ類の状態を保持するワークであり、起動時にＲＡＭ５０７のデータが破壊されているか否かに関わらず必ず値が設定されることとなる。非初期化ワークは、ＲＡＭ異常エラーや設定変更時にも初期化されないデータが格納されるワークである。非初期化ワークには、さらに内部抽選処理で抽選を行う際に用いる設定値が格納される設定値ワーク、演出制御基板９０へ送信されるコマンドが一時的に格納されるコマンドバッファ（コマンドバッファ内のコマンドは次回コマンドが格納されるまで維持されるので、最後に送信されたコマンドが常に格納されることとなる）、外部出力基板１０００に対して出力されるメダルＩＮ信号、メダルＯＵＴ信号、ＲＢ中信号、ＢＢ中信号、ドア開放信号、設定変更信号、投入エラー信号、払出エラー信号のうち外部出力基板１０００から出力されるセキュリティ信号を構成するドア開放信号、設定変更信号、投入エラー信号、払出エラー信号の出力状態（ｏｎ／ｏｆｆの状態）が格納されるセキュリティワークが割り当てられている。未使用領域は、ＲＡＭ５０７の格納領域のうち使用していない領域であり、後述する複数の初期化条件のいずれか１つでも成立すれば初期化されることとなる。スタック領域は、メイン制御部４１のレジスタから退避したデータが格納される領域であり、このうちの未使用スタック領域は、未使用領域と同様に、後述する複数の初期化条件のいずれか１つでも成立すれば初期化されることとなるが、使用中スタック領域は、プログラムの続行のため、初期化されることはない。
【００９５】
本実施例においてメイン制御部４１は、設定キースイッチ３７がｏｎの状態での起動時、ＲＡＭ異常エラー発生時、ＢＢ終了時、設定キースイッチ３７がｏｆｆの状態での起動時でＲＡＭ５０７のデータが破壊されていないとき、１ゲーム終了時の５つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる４種類の初期化を行う。
【００９６】
初期化１は、起動時において設定キースイッチ３７がｏｎの状態であり、設定変更状態へ移行する場合において、その前に行う初期化、またはＲＡＭ異常エラー発生時に行う初期化であり、初期化１では、ＲＡＭ５０７の格納領域のうち、使用中スタック領域、非初期化領域を除く全ての領域（未使用領域及び未使用スタック領域を含む）が初期化される。初期化２は、ＢＢ終了時に行う初期化であり、初期化２では、ＲＡＭ５０７の格納領域のうち、一般ワーク、未使用領域及び未使用スタック領域が初期化される。初期化３は、起動時において設定キースイッチ３７がｏｆｆの状態であり、かつＲＡＭ５０７のデータが破壊されていない場合において行う初期化であり、初期化３では、非保存ワーク、未使用領域及び未使用スタック領域が初期化される。初期化４は、１ゲーム終了時に行う初期化であり、初期化４では、ＲＡＭ５０７の格納領域のうち、未使用領域及び未使用スタック領域が初期化される。
【００９７】
尚、本実施例では、初期化１を設定変更状態の移行前に行っているが、設定変更状態の終了時に行ったり、設定変更状態移行前、設定変更状態終了時の双方で行うようにしても良い。
【００９８】
このように本実施例では、電源投入時などにＲＡＭ異常エラーが発生した場合には、初期化１が実行され、それ以前の制御状態が初期化されることとなるが、この際、非初期化領域に割り当てられたコマンドバッファ、設定値ワーク、セキュリティワークに格納されているデータは初期化されることがなく、保持されるようになっている。そして、この際、コマンドバッファにはＲＡＭ異常エラー発生時において最後に送信されたコマンドが、設定値ワークにはＲＡＭ異常エラー発生時の設定値が、セキュリティワークには、ＲＡＭ異常エラー発生時のドア開放信号、設定変更信号、投入エラー信号、払出エラー信号の出力状態がそれぞれ格納された状態で保持されるので、これらのデータからＲＡＭ異常発生時において何らかのエラーコマンドが送信されているか、設定値の値が変更されていないか、ドア開放信号、設定変更信号、投入エラー信号、払出エラー信号の出力状態がどのような状態であったか、を特定することが可能となり、ＲＡＭ異常の原因を特定すること、さらには、何らかの不正行為が行われた可能性を特定することができる。
【００９９】
さらに、ＲＡＭ異常エラーを解消するために、設定値の変更操作を行っても、非初期化領域は初期化されることがなく、意図的に非初期化領域の格納データを初期化することは不可能であるため、不正行為によってＲＡＭ異常エラーが生じた場合でもその痕跡としてコマンドバッファ、設定値ワーク、セキュリティワークの格納データを残すことができる。
【０１００】
本実施例のスロットマシン１は、前述のように遊技状態に応じて設定可能な賭数の規定数が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。尚、本実施例では、遊技状態に応じた規定数の賭数が設定された時点で、全ての入賞ラインＬ１〜Ｌ５が有効化される。
【０１０１】
本実施例のスロットマシン１は、全てのリール２Ｌ、２Ｃ、２Ｒが停止した際に、有効化された入賞ライン（本実施例の場合、常に全ての入賞ラインが有効化されるため、以下では、有効化された入賞ラインを単に入賞ラインと呼ぶ）上に役と呼ばれる図柄の組み合わせが揃うと入賞となる。役は、同一図柄の組み合わせであっても良いし、異なる図柄を含む組み合わせであっても良い。入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役と、遊技者にとって有利な遊技状態への移行を伴う特別役と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、後述する内部抽選に当選して、当該役の当選フラグがＲＡＭ５０７に設定されている必要がある。
【０１０２】
尚、これら各役の当選フラグのうち、小役及び再遊技役の当選フラグは、当該フラグが設定されたゲームにおいてのみ有効とされ、次のゲームでは無効となるが、特別役の当選フラグは、当該フラグにより許容された役の組み合わせが揃うまで有効とされ、許容された役の組み合わせが揃ったゲームにおいて無効となる。すなわち特別役の当選フラグが一度当選すると、例え、当該フラグにより許容された役の組み合わせを揃えることができなかった場合にも、その当選フラグは無効とされずに、次のゲームへ持ち越されることとなる。
【０１０３】
以下、本実施例の内部抽選について説明する。内部抽選は、上記した各役への入賞を許容するか否かを、全てのリール２Ｌ、２Ｃ、２Ｒの表示結果が導出表示される以前に（実際には、スタートスイッチ７の検出時）決定するものである。内部抽選では、まず、スタートスイッチ７の検出時に内部抽選用の乱数値（０〜６５５３５の整数）を取得する。詳しくは、ＲＡＭ５０７に割り当てられた乱数値格納ワークの値を同じくＲＡＭ５０７に割り当てられた抽選用ワークに設定する。そして、遊技状態及び特別役の持ち越しの有無に応じて定められた各役について、抽選用ワークに格納された数値データと、遊技状態、賭数及び設定値に応じて定められた各役の判定値数に応じて行われる。
【０１０４】
乱数値格納ワークは、スタートスイッチ７の操作と同時に乱数値レジスタＲ１Ｄにラッチされた数値データが格納される記憶領域であり、乱数値レジスタＲ１Ｄに新たな数値データがラッチされる毎に、ラッチされた数値データがその後のタイマ割込処理（メイン）において読み出され、乱数値格納ワークに格納された数値データが新たにラッチされた最新の数値データに更新されるようになっている。
【０１０５】
内部抽選では、内部抽選の対象となる役、現在の遊技状態及び設定値に対応して定められた判定値数を、内部抽選用の乱数値（抽選用ワークに格納された数値データ）に順次加算し、加算の結果がオーバーフローしたときに、当該役に当選したものと判定される。このため、判定値数の大小に応じた確率（判定値数／６５５３６）で役が当選することとなる。
【０１０６】
そして、いずれかの役の当選が判定された場合には、当選が判定された役に対応する当選フラグをＲＡＭ５０７に割り当てられた内部当選フラグ格納ワークに設定する。内部当選フラグ格納ワークは、２バイトの格納領域にて構成されており、そのうちの上位バイトが、特別役の当選フラグが設定される特別役格納ワークとして割り当てられ、下位バイトが、一般役の当選フラグが設定される一般役格納ワークとして割り当てられている。詳しくは、特別役が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、一般役格納ワークに設定されている当選フラグをクリアする。また、一般役が当選した場合には、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。尚、いずれの役及び役の組み合わせにも当選しなかった場合には、一般役格納ワークのみクリアする。
【０１０７】
次に、リール２Ｌ、２Ｃ、２Ｒの停止制御について説明する。
【０１０８】
メイン制御部４１は、リールの回転が開始したとき、及びリールが停止し、かつ未だ回転中のリールが残っているときに、ＲＯＭ５０６に格納されているテーブルインデックス及びテーブル作成用データを参照して、回転中のリール別に停止制御テーブルを作成する。そして、ストップスイッチ８Ｌ、８Ｃ、８Ｒのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、該当するリールの停止制御テーブルを参照し、参照した停止制御テーブルの滑りコマ数に基づいて、操作されたストップスイッチ８Ｌ、８Ｃ、８Ｒに対応するリール２Ｌ、２Ｃ、２Ｒの回転を停止させる制御を行う。
【０１０９】
テーブルインデックスには、内部抽選による当選フラグの設定状態（以下、内部当選状態と呼ぶ）別に、テーブルインデックスを参照する際の基準アドレスから、テーブル作成用データが格納された領域の先頭アドレスを示すインデックスデータが格納されているアドレスまでの差分が登録されている。これにより内部当選状態に応じた差分を取得し、基準アドレスに対してその差分を加算することで該当するインデックスデータを取得することが可能となる。尚、役の当選状況が異なる場合でも、同一の制御が適用される場合においては、インデックスデータとして同一のアドレスが格納されており、このような場合には、同一のテーブル作成用データを参照して、停止制御テーブルが作成されることとなる。
【０１１０】
テーブル作成用データは、停止操作位置に応じた滑りコマ数を示す停止制御テーブルと、リールの停止状況に応じて参照すべき停止制御テーブルのアドレスと、からなる。
【０１１１】
リールの停止状況に応じて参照される停止制御テーブルは、全てのリールが回転しているか、左リールのみ停止しているか、中リールのみ停止しているか、右リールのみ停止しているか、左、中リールが停止しているか、左、右リールが停止しているか、中、右リールが停止しているか、によって異なる場合があり、更に、いずれかのリールが停止している状況においては、停止済みのリールの停止位置によっても異なる場合があるので、それぞれの状況について、参照すべき停止制御テーブルのアドレスが回転中のリール別に登録されており、テーブル作成用データの先頭アドレスに基づいて、それぞれの状況に応じて参照すべき停止制御テーブルのアドレスが特定可能とされ、この特定されたアドレスから、それぞれの状況に応じて必要な停止制御テーブルを特定できるようになっている。尚、リールの停止状況や停止済みのリールの停止位置が異なる場合でも、同一の停止制御テーブルが適用される場合においては、停止制御テーブルのアドレスとして同一のアドレスが登録されているものもあり、このような場合には、同一の停止制御テーブルが参照されることとなる。
【０１１２】
停止制御テーブルは、停止操作が行われたタイミング別の滑りコマ数を特定可能なデータである。本実施例では、リールモータ３２Ｌ、３２Ｃ、３２Ｒに、３３６ステップ（０〜３３５）の周期で１周するステッピングモータを用いている。すなわちリールモータ３２Ｌ、３２Ｃ、３２Ｒを３３６ステップ駆動させることでリール２Ｌ、２Ｃ、２Ｒが１周することとなる。そして、リール１周に対して１６ステップ（１図柄が移動するステップ数）毎に分割した２１の領域（コマ）が定められており、これらの領域には、リール基準位置から０〜２０の領域番号が割り当てられている。一方、１リールに配列された図柄数も２１であり、各リールの図柄に対して、リール基準位置から０〜２０の図柄番号が割り当てられているので、０番図柄から２０番図柄に対して、それぞれ０〜２０の領域番号が順に割り当てられていることとなる。そして、停止制御テーブルには、領域番号別の滑りコマ数が所定のルールで圧縮して格納されており、停止制御テーブルを展開することによって領域番号別の滑りコマ数を取得できるようになっている。
【０１１３】
前述のようにテーブルインデックス及びテーブル作成用データを参照して作成される停止制御テーブルは、領域番号に対応して、各領域番号に対応する領域が停止基準位置（本実施例では、透視窓３の下段図柄の領域）に位置するタイミング（リール基準位置からのステップ数が各領域番号のステップ数の範囲に含まれるタイミング）でストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出された場合の滑りコマ数がそれぞれ設定されたテーブルである。
【０１１４】
次に、停止制御テーブルの作成手順について説明すると、まず、リール回転開始時においては、そのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスを取得する。具体的には、まずテーブルインデックスを参照し、内部当選状態に対応するインデックスデータを取得し、そして取得したインデックスデータに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから全てのリールが回転中の状態に対応する各リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して全てのリールについて停止制御テーブルを作成する。
【０１１５】
また、いずれか１つのリールが停止したとき、またはいずれか２つのリールが停止したときには、リール回転開始時に取得したインデックスデータ、すなわちそのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから停止済みのリール及び当該リールの停止位置の領域番号に対応する未停止リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して未停止のリールについて停止制御テーブルを作成する。
【０１１６】
次に、メイン制御部４１がストップスイッチ８Ｌ、８Ｃ、８Ｒのうち、回転中のリールに対応するいずれかの操作を有効に検出したときに、該当するリールに表示結果を導出させる際の制御について説明すると、ストップスイッチ８Ｌ、８Ｃ、８Ｒのうち、回転中のリールに対応するいずれかの操作を有効に検出すると、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの停止制御テーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして、取得した滑りコマ数分リールを回転させて停止させる制御を行う。具体的には、停止操作を検出した時点のリール基準位置からのステップ数から、取得した滑りコマ数引き込んで停止させるまでのステップ数を算出し、算出したステップ数分リールを回転させて停止させる制御を行う。これにより、停止操作が検出された停止操作位置の領域番号に対応する領域から滑りコマ数分先の停止位置となる領域番号に対応する領域が停止基準位置（本実施例では、透視窓３の下段図柄の領域）に停止することとなる。
【０１１７】
本実施例のテーブルインデックスには、一の遊技状態における一の内部当選状態に対応するインデックスデータとして１つのアドレスのみが格納されており、更に、一のテーブル作成用データには、一のリールの停止状況（及び停止済みのリールの停止位置）に対応する停止制御テーブルの格納領域のアドレスとして１つのアドレスのみが格納されている。すなわち一の遊技状態における一の内部当選状態に対応するテーブル作成用データ、及びリールの停止状況（及び停止済みのリールの停止位置）に対応する停止制御テーブルが一意的に定められており、これらを参照して作成される停止制御テーブルも、一の遊技状態における一の内部当選状態、及びリールの停止状況（及び停止済みのリールの停止位置）に対して一意となる。このため、遊技状態、内部当選状態、リールの停止状況（及び停止済みのリールの停止位置）の全てが同一条件となった際に、同一の停止制御テーブル、すなわち同一の制御パターンに基づいてリールの停止制御が行われることとなる。
【０１１８】
また、本実施例では、滑りコマ数として０〜４の値が定められており、停止操作を検出してから最大４図柄を引き込んでリールを停止させることが可能である。すなわち停止操作を検出した停止操作位置を含め、最大５コマの範囲から図柄の停止位置を指定できるようになっている。また、１図柄分リールを移動させるのに１コマの移動が必要であるので、停止操作を検出してから最大４図柄を引き込んでリールを停止させることが可能であり、停止操作を検出した停止操作位置を含め、最大５図柄の範囲から図柄の停止位置を指定できることとなる。
【０１１９】
本実施例では、いずれかの役に当選している場合には、当選役を入賞ライン上に４コマの範囲で最大限引き込み、当選していない役が入賞ライン上に揃わないように引き込む滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う一方、いずれの役にも当選していない場合には、いずれの役も揃わない滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ライン上に最大４コマの引込範囲で当選している役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、最大４コマの引込範囲でハズシて停止させる制御が行われることとなる。
【０１２０】
特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合など、特別役と小役が同時に当選している場合には、当選した小役を入賞ラインに４コマの範囲で最大限に引き込むように滑りコマ数が定められているとともに、当選した小役を入賞ラインに最大４コマの範囲で引き込めない停止操作位置については、当選した特別役を入賞ラインに４コマの範囲で最大限に引き込むように滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ライン上に最大４コマの引込範囲で当選している小役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、入賞ライン上に最大４コマの引込範囲で当選している小役を引き込めない場合には、入賞ライン上に最大４コマの引込範囲で当選している特別役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、４コマの引込範囲でハズシて停止させる制御が行われることとなる。すなわちこのような場合には、特別役よりも小役を入賞ライン上に揃える制御が優先され、小役を引き込めない場合にのみ、特別役を入賞させることが可能となる。尚、特別役と小役を同時に引き込める場合には、小役のみを引き込み、特別役と同時に小役が入賞ライン上に揃わないようになっている。
【０１２１】
尚、本実施例では、特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合や新たに特別役と小役が同時に当選した場合など、特別役と小役が同時に当選している場合には、当選した特別役よりも当選した小役が優先され、小役が引き込めない場合のみ、特別役を入賞ライン上に揃える制御を行っているが、特別役と小役が同時に当選している場合に、小役よりも特別役を入賞ライン上に揃える制御が優先され、特別役を引き込めない場合にのみ、小役を入賞ライン上に揃える制御を行っても良い。
【０１２２】
特別役が前ゲーム以前から持ち越されている状態で再遊技役が当選した場合など、特別役と再遊技役が同時に当選している場合には、停止操作が行われた際に、入賞ライン上に最大４コマの引込範囲で再遊技役の図柄を揃えて停止させる制御が行われる。尚、この場合、再遊技役を構成する図柄または同時当選する再遊技役を構成する図柄は、リール２Ｌ、２Ｃ、２Ｒのいずれについても５図柄以内、すなわち４コマ以内の間隔で配置されており、４コマの引込範囲で必ず任意の位置に停止させることができるので、特別役と再遊技役が同時に当選している場合には、遊技者によるストップスイッチ８Ｌ、８Ｃ、８Ｒの操作タイミングに関わらずに、必ず再遊技役が揃って入賞することとなる。すなわちこのような場合には、特別役よりも再遊技役を入賞ライン上に揃える制御が優先され、必ず再遊技役が入賞することとなる。尚、特別役と再遊技役を同時に引き込める場合には、再遊技役のみを引き込み、再遊技役と同時に特別役が入賞ライン上に揃わないようになっている。
【０１２３】
本実施例においてメイン制御部４１は、リール２Ｌ、２Ｃ、２Ｒの回転が開始した後、ストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。尚、リール回転エラーの発生により、一時的にリールの回転が停止した場合でも、その後リール回転が再開した後、ストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。
【０１２４】
尚、本実施例では、ストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっているが、リールの回転が開始してから、予め定められた自動停止時間が経過した場合に、リールの停止操作がなされない場合でも、停止操作がなされたものとみなして自動的に各リールを停止させる自動停止制御を行うようにしても良い。この場合には、遊技者の操作を介さずにリールが停止することとなるため、例え、いずれかの役が当選している場合でもいずれの役も構成しない表示結果を導出させることが好ましい。
【０１２５】
次に、本実施例におけるメイン制御部４１が実行する各種制御内容を、図８〜図２３に基づいて以下に説明する。
【０１２６】
メイン制御部４１は、リセット回路４９からシステムリセット信号が入力されると、図８のフローチャートに示す起動処理（メイン）を行う。また、ユーザリセット信号が入力された場合には、起動処理（メイン）のＳａ２のステップから処理を開始する。すなわち電源投入に伴う起動の場合のみセキュリティチェック処理を行うセキュリティモードから開始する一方、ウォッチドッグタイマのタイムアップによる起動の場合には、セキュリティチェック処理を省略してＲＯＭ５０６に記憶されたユーザプログラムを実行するユーザモードから開始されることになる。
【０１２７】
システムリセット信号の入力に伴う起動処理（メイン）では、まず、ＣＰＵ５０５がＲＯＭ５０６から読み出したセキュリティチェックプログラム５０６Ａに基づき、セキュリティチェック処理を実行する（Ｓａ１）。このとき、メイン制御部４１は、セキュリティモードとなり、ＲＯＭ５０６に記憶されているゲーム制御用のユーザプログラムは未だ実行されない状態となる。
【０１２８】
Ｓａ１のステップにおけるセキュリティチェック処理の終了後、メイン制御部４１の動作状態がセキュリティモードからユーザモードへと移行し、ＲＯＭ５０６に記憶されたユーザプログラムの実行が開始されることになる。尚、前述のようにユーザリセット信号の入力に伴う起動時には、セキュリティモードを経ずにユーザモードから開始することとなる。
【０１２９】
ユーザモードではまず、シリアル通信回路５１１等の内蔵デバイスや周辺ＩＣ、割込モード、スタックポインタ等を初期化した後（Ｓａ２）、Ｉレジスタ及びＩＹレジスタの値を初期化する（Ｓａ３）。Ｉレジスタ及びＩＹレジスタの初期化により、Ｉレジスタには、割込発生時に参照する割込テーブルのアドレスが設定され、ＩＹレジスタには、ＲＡＭ５０７の格納領域を参照する際の基準アドレスが設定される。これらの値は、固定値であり、起動時には常に初期化されることとなる。
【０１３０】
次いで、ＲＡＭ５０７へのアクセスを許可し（Ｓａ４）、ＲＡＭ５０７の全ての格納領域（未使用領域及び未使用スタック領域を含む）のＲＡＭパリティを計算する（Ｓａ５）。ついで、打止スイッチ３６ａ、自動精算スイッチ３６ｂの状態を取得し、メイン制御部４１の特定のレジスタに打止機能、自動精算機能の有効／無効を設定した後（Ｓａ６）、後述するポート入力処理において取得した各スイッチの入力データ、前回と今回の入力データが同じ状態を示す各スイッチの確定データ、前回と今回の確定データが異なる状態を示す各スイッチのエッジデータをそれぞれクリアし（Ｓａ７）、さらに停電が検知された旨を示す電断フラグをクリアする（Ｓａ８）。さらに、ドア開放検出スイッチ２５の検出状態の監視間隔を計時するドア監視タイマの値、ドア開放検出スイッチ２５からの検出信号の入力状態の履歴をクリアし（Ｓａ９）、操作検出コマンド送信要求及びドアコマンド送信要求２をクリアするとともに、ドアコマンド送信要求１を設定する（Ｓａ１０）。
【０１３１】
次いで、Ｓａ５のステップにおいて計算したＲＡＭパリティが０か否かを判定する（Ｓａ１３）。正常に電断割込処理（メイン）が行われていれば、ＲＡＭパリティが０になるはずであり、Ｓａ１３のステップにおいてＲＡＭパリティが０でなければ、ＲＡＭ５０７に格納されているデータが正常ではなく、この場合には、ＲＡＭ５０７の格納領域のうち、使用中スタック領域、非初期化領域を除く全ての格納領域を初期化する初期化１を実行した後（Ｓａ２６）、設定キースイッチ３７がｏｎか否かを判定し（Ｓａ２７）、設定キースイッチ３７がｏｎであれば、ドア開放検出スイッチ２５の検出状態を取得し、ドア開放検出スイッチ２５の検出状態に基づいて前面扉１ｂが開放状態であるか否かを判定する（Ｓａ３２）。
【０１３２】
Ｓａ３２のステップにおいて前面扉１ｂが開放状態であると判定した場合には、設定開始を示す設定コマンドを生成し、コマンドバッファに格納し（Ｓａ２３）、コマンドバッファに格納されたコマンドをシリアル通信回路５１１の送信データレジスタ５６１に転送するコマンド格納処理１を行い（Ｓａ２４）、割込を許可して（Ｓａ２５）、設定変更処理、すなわち設定変更状態に移行する。
【０１３３】
Ｓａ２４のコマンド格納処理１では、図９（ａ）に示すように、コマンドバッファに格納されているコマンドデータのうち1バイト目のデータを送信データレジスタ５６１に転送し（Ｓｘ１）、その後、コマンドバッファに格納されているコマンドデータのうち２バイト目のデータを送信データレジスタ５６１に転送する（Ｓｘ２）。そして、送信データレジスタ５６１に転送されたコマンドデータは、前述のように送信データレジスタ５６１に転送された順番でシリアルデータ化され、送信用シフトレジスタ５６２に格納され、サブ制御部９１に対して送信されることとなる。
【０１３４】
一方、Ｓａ３２のステップにおいて前面扉１ｂが開放状態ではないと判定した場合には、異常設定操作を示すエラーコードをレジスタに設定し（Ｓａ３３）、異常設定操作を示すエラーコマンドを生成してコマンドバッファに格納し（Ｓａ３４）、コマンド格納処理１を行ってコマンドバッファ内のエラーコマンドを送信データレジスタ５６１に転送し（Ｓａ３０）、割込を許可して（Ｓａ３１）、エラー処理、すなわち異常設定操作エラー状態に移行する。
【０１３５】
Ｓａ２７のステップにおいて設定キースイッチ３７がｏｆｆであれば、ＲＡＭ異常を示すエラーコードをレジスタに設定し（Ｓａ２８）、ＲＡＭ異常を示すエラーコマンドを生成してコマンドバッファに格納し（Ｓａ２９）、コマンド格納処理１を行ってコマンドバッファ内のエラーコマンドを送信データレジスタ５６１に転送し（Ｓａ３０）、割込を許可して（Ｓａ３１）、エラー処理、すなわちＲＡＭ異常エラー状態に移行する。
【０１３６】
Ｓａ１３のステップにおいて、ＲＡＭパリティが０であれば、更に破壊診断用データが正常か否かを判定する（Ｓａ１４）。正常に電断処理（メイン）が行われていれば、破壊診断用データが設定されているはずであり、Ｓａ１４のステップにおいて破壊診断用データが正常でない場合（破壊診断用データが電断時に格納される５Ａ（Ｈ）以外の場合）にも、ＲＡＭ５０７のデータが正常ではないので、Ｓａ２６のステップに移行して初期化１を実行し、その後、Ｓａ２７のステップにおいて設定キースイッチ３７がｏｎであれば、前面扉１ｂが開放状態であるか否かを判定し（Ｓａ３２）、前面扉１ｂが開放状態であると判定した場合には、設定開始を示す設定コマンドの生成（Ｓａ２３）、コマンド格納処理１（Ｓａ２４）の後、割込を許可して（Ｓａ２５）、設定変更処理に移行し、Ｓａ３２のステップにおいて前面扉１ｂが開放状態ではないと判定した場合には、異常設定操作を示すエラーコードをレジスタに設定し（Ｓａ３３）、異常設定操作を示すエラーコマンドを生成（Ｓａ３４）、コマンド格納処理１（Ｓａ３０）の後、割込を許可して（Ｓａ３１）、エラー処理に移行する。また、Ｓａ２７のステップにおいて設定キースイッチ３７がｏｆｆであれば、ＲＡＭ異常を示すエラーコードの設定（Ｓａ２８）、ＲＡＭ異常を示すエラーコマンドの生成（Ｓａ２９）、コマンド格納処理１（Ｓａ３０）の後、割込を許可して（Ｓａ３１）、エラー処理に移行する。
【０１３７】
Ｓａ１４のステップにおいて破壊診断用データが正常であると判定した場合には、ＲＡＭ５０７のデータは正常であるので、破壊診断用データをクリアし（Ｓａ１５）、ＲＡＭ５０７の非保存ワーク、未使用領域及び未使用スタック領域を初期化する初期化３を行った後（Ｓａ１６）、設定キースイッチ３７がｏｎか否かを判定し（Ｓａ１７）、設定キースイッチ３７がｏｎであれば、Ｓａ２２のステップに移行して初期化１を実行し、前面扉１ｂが開放状態であるか否かを判定し（Ｓａ３２）、前面扉１ｂが開放状態であると判定した場合には、設定開始を示す設定コマンドの生成（Ｓａ２３）、コマンド格納処理１（Ｓａ２４）の後、割込を許可して（Ｓａ２５）、設定変更処理に移行し、Ｓａ３２のステップにおいて前面扉１ｂが開放状態ではないと判定した場合には、異常設定操作を示すエラーコードをレジスタに設定し（Ｓａ３３）、異常設定操作を示すエラーコマンドを生成（Ｓａ３４）、コマンド格納処理１（Ｓａ３０）の後、割込を許可して（Ｓａ３１）、エラー処理に移行する。
【０１３８】
Ｓａ１７のステップにおいて設定キースイッチ３７がｏｆｆであれば、各レジスタを電断前の状態、すなわちスタックに保存されている状態に復帰し（Ｓａ１８）、復帰コマンドを生成してコマンドバッファに格納し（Ｓａ１９）、コマンド格納処理１を行ってコマンドバッファ内の復帰コマンドを送信データレジスタ５６１に転送し（Ｓａ２０）、割込を許可して（Ｓａ２１）、電断前の最後に実行していた処理に戻る。
【０１３９】
図１０は、メイン制御部４１が実行するエラー処理の制御内容を示すフローチャートである。
【０１４０】
エラー処理では、まず、現在の遊技補助表示器１２の表示状態をスタックに退避し（Ｓｂ１）、レジスタに格納されているエラーコードを遊技補助表示器１２に表示し（Ｓｂ２）、エラーコードがＲＡＭ異常エラーまたは異常設定操作エラーであるか否かを判定し（Ｓｂ３）、ＲＡＭ異常エラーまたは異常設定操作エラーを示すエラーコードである場合には、いずれの処理も行わないループ処理に移行する。
【０１４１】
Ｓｂ３のステップにおいてＲＡＭ異常エラーを示すエラーコードでも異常設定操作エラーでもないと判定された場合には、エラー状態の発生及びその種類を示すエラーコマンドを生成し、コマンドバッファに格納し（Ｓｂ４）、割込を禁止し、その間にコマンドバッファに格納されたコマンドをシリアル通信回路５１１の送信データレジスタ５６１に転送するコマンド格納処理２を行ってコマンドバッファ内のエラーコマンドを送信データレジスタ５６１に転送する（Ｓｂ５）。
【０１４２】
Ｓｂ５のコマンド格納処理２では、図９（ｂ）に示すように、まず、割込禁止を設定し（Ｓｘ１１）、タイマ割込処理（メイン）の実行を禁止した後、コマンドバッファに格納されているコマンドデータのうち1バイト目のデータを送信データレジスタ５６１に転送し（Ｓｘ１２）、その後、コマンドバッファに格納されているコマンドデータのうち２バイト目のデータを送信データレジスタ５６１に転送し（Ｓｘ１３）、転送が完了すると割込を許可して（Ｓｘ１４）処理を終了する。そして、送信データレジスタ５６１に転送されたコマンドデータは、前述のように送信データレジスタ５６１に転送された順番でシリアルデータ化され、送信用シフトレジスタ５６２に格納され、サブ制御部９１に対して送信されることとなる。
【０１４３】
このようにコマンド格納処理２では、１バイト目のコマンドの転送を開始する前の段階から２バイト目のコマンドの転送が完了するまでの段階までの間、割込禁止に設定し、その間、タイマ割込処理（メイン）の実行が禁止されるようになっている。
【０１４４】
次いで、リセット／設定スイッチ３８のｏｆｆからｏｎの変化が検出されたか否かを判定し（Ｓｂ６）、リセット／設定スイッチ３８のｏｆｆからｏｎの変化が検出されていなければ、更にリセットスイッチ２３のｏｆｆからｏｎの変化が検出されているか否かを判定し（Ｓｂ７）、リセットスイッチ２３のｏｆｆからｏｎの変化も検出されていなければ、Ｓｂ６のステップに戻る。すなわちリセット／設定スイッチ３８またはリセットスイッチ２３のｏｆｆからｏｎの変化が検出されるまで、遊技の進行が不能な状態で待機する。
【０１４５】
そして、Ｓｂ６のステップにおいてリセット／設定スイッチ３８のｏｆｆからｏｎの変化が検出された場合、またはＳｂ７のステップにおいてリセットスイッチ２３のｏｆｆからｏｎの変化が検出された場合には、スイッチの検出状態がｏｆｆからｏｎに変化した旨またはｏｎからｏｆｆに変化した旨を示すエッジデータ（ｏｆｆからｏｎに変化した場合には立ち上がりエッジと呼び、ｏｎからｏｆｆに変化した場合には立ち下がりエッジと呼ぶ）をクリアし（Ｓｂ８）、レジスタに格納されているエラーコードをクリアし（Ｓｂ９）、遊技補助表示器１２の表示状態をＳｂ１のステップにおいてスタックに退避した表示状態に復帰させ（Ｓｂ１０）、エラー状態が解除された旨を示すエラーコマンドを生成してコマンドバッファに格納し（Ｓｂ１１）、コマンド格納処理２を行ってコマンドバッファ内のエラーコマンドを送信データレジスタ５６１に転送した後（Ｓｂ１２）、もとの処理に戻る。
【０１４６】
このようにエラー処理においては、ＲＡＭ異常以外によるエラー処理であれば、リセット／設定スイッチ３８またはリセットスイッチ２３が操作されることで、エラー状態を解除してもとの処理に復帰するが、ＲＡＭ異常によるエラー処理であれば、リセット／設定スイッチ３８またはリセットスイッチ２３が操作されてもエラー状態が解除され、元の状態に復帰することはない。
【０１４７】
図１１は、メイン制御部４１が実行する設定変更処理の制御内容を示すフローチャートである。
【０１４８】
設定変更処理では、まず、ＲＡＭ５０７の設定値ワークに格納されている設定値を読み出して、読み出した値を表示値とし（Ｓｃ１）、表示値が設定可能な範囲（１〜６）外か否かを判定し（Ｓｃ２）、表示値が設定可能な範囲内であればＳｃ４のステップに進み、表示値が設定可能な範囲外であれば、表示値を１に補正し、Ｓｃ５のステップに進む。
【０１４９】
Ｓｃ５のステップでは、設定値表示器２４に表示値を表示させた後、リセット／設定スイッチ３８とスタートスイッチ７のｏｆｆからｏｎの変化の検出待ちの状態となり（Ｓｃ５、Ｓｃ６）、Ｓｃ５のステップにおいてリセット／設定スイッチ３８のｏｆｆからｏｎの変化が検出されると、エッジデータをクリアし（Ｓｃ９）、表示値を１加算し（Ｓｃ１０）、Ｓｃ２のステップに戻る。
【０１５０】
また、Ｓｃ６のステップにおいてスタートスイッチ７のｏｆｆからｏｎの変化が検出された場合には、エッジデータをクリアし（Ｓｃ９）、さらに後述の確定データを参照して他のスイッチがｏｎの状態か否かを判定し（Ｓｃ１０）、いずれかのスイッチがｏｎの状態であれば、Ｓｃ５のステップに戻り、いずれのスイッチもｏｎの状態でなければ、設定値表示器２４に表示されている値を０に更新し（Ｓｃ１１）、設定キースイッチ３７がｏｆｆの状態となるまで待機する（Ｓｃ１２）。
【０１５１】
Ｓｃ１１のステップにおいて設定キースイッチ３７のｏｆｆが判定されると、表示値を設定値ワークに格納して（Ｓｃ１３）、設定の終了及び新たな設定値を示す設定コマンドを生成してコマンドバッファに格納し（Ｓｃ１４）、コマンド格納処理２を行ってコマンドバッファ内の設定コマンドを送信データレジスタ５６１に転送し（Ｓｃ１５）、ゲーム処理に移行する。
【０１５２】
図１２は、メイン制御部４１が実行するゲーム処理の制御内容を示すフローチャートである。
【０１５３】
ゲーム処理では、ＢＥＴ処理（Ｓｄ１）、内部抽選処理（Ｓｄ２）、リール回転処理（Ｓｄ３）、入賞判定処理（Ｓｄ４）、払出処理（Ｓｄ５）、ゲーム終了時処理（Ｓｄ６）を順に実行し、ゲーム終了時処理が終了すると、再びＢＥＴ処理に戻る。
【０１５４】
Ｓｄ１のステップにおけるＢＥＴ処理では、賭数を設定可能な状態で待機し、遊技状態に応じた規定数の賭数が設定され、スタートスイッチ７が操作された時点でゲームを開始させる処理を実行する。
【０１５５】
Ｓｄ２のステップにおける内部抽選処理では、Ｓｄ１のステップにおけるスタートスイッチ７の検出によるゲーム開始と同時にラッチされた内部抽選用の乱数値に基づいて上記した各役への入賞を許容するかどうかを決定する処理を行う。この内部抽選処理では、それぞれの抽選結果に基づいて、ＲＡＭ５０７に当選フラグが設定される。
【０１５６】
Ｓｄ３のステップにおけるリール回転処理では、各リール２Ｌ、２Ｃ、２Ｒを回転させる処理、遊技者によるストップスイッチ８Ｌ、８Ｃ、８Ｒの操作が検出されたことに応じて対応するリール２Ｌ、２Ｃ、２Ｒの回転を停止させる処理を実行する。
【０１５７】
Ｓｄ４のステップにおける入賞判定処理では、Ｓｄ３のステップにおいて全てのリール２Ｌ、２Ｃ、２Ｒの回転が停止したと判定した時点で、各リール２Ｌ、２Ｃ、２Ｒに導出された表示結果に応じて入賞が発生したか否かを判定する処理を実行する。
【０１５８】
Ｓｄ５のステップにおける払出処理では、Ｓｄ４のステップにおいて入賞の発生が判定された場合に、その入賞に応じた払出枚数に基づきクレジットの加算並びにメダルの払出等の処理を行う。
【０１５９】
Ｓｄ６のステップにおけるゲーム終了時処理では、次のゲームに備えて遊技状態を設定する処理を実行する。
【０１６０】
また、ゲーム処理では、ゲームの進行制御に応じてコマンドを生成してコマンドバッファに設定し、直後にコマンド格納処理２を実行することでコマンドバッファに格納されたコマンドがシリアル通信回路５１１の送信データレジスタ５６１に転送され、サブ制御部９１に送信されるようになっている。
【０１６１】
図１３〜図１５は、メイン制御部４１がＳｄ１のステップにおいて実行するＢＥＴ処理の制御内容を示すフローチャートである。
【０１６２】
ＢＥＴ処理では、まず、ＲＡＭ５０７において賭数の値が格納されるＢＥＴカウンタの値をクリアし（Ｓｅ１）、遊技状態に応じた規定数をＲＡＭ５０７に設定し（Ｓｅ２）、ＲＡＭ５０７にリプレイゲームである旨を示すリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定する（Ｓｅ３）。
【０１６３】
Ｓｅ３のステップにおいて当該ゲームがリプレイゲームであると判定された場合には、賭数が３加算された旨を示すＢＥＴコマンドを生成してコマンドバッファに格納し（Ｓｅ４）、コマンド格納処理２を行ってコマンドバッファ内のＢＥＴコマンドを送信データレジスタ５６１に転送し（Ｓｅ５）、ＢＥＴカウンタの値を１加算し（Ｓｅ６）、ＲＡＭ５０７に設定された賭数の規定数を参照し、ＢＥＴカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されているか否かを判定し（Ｓｅ７）、ＢＥＴカウンタの値が規定数でなければＳｅ６のステップに戻り、ＢＥＴカウンタの値が規定数であれば、メダルの投入不可を示す投入不可フラグをＲＡＭ５０７に設定し（Ｓｅ８）、Ｓｅ１０のステップに進む。
【０１６４】
Ｓｅ３のステップにおいて当該ゲームがリプレイゲームでないと判定されれば、投入待ち前の設定を行い（Ｓｅ９）、Ｓｅ１０のステップに進む。投入待ち前の設定では、ＲＡＭ５０７に設定されている投入不可フラグをクリアし、メダルの投入が可能な状態とする。
【０１６５】
Ｓｅ１０のステップでは、レジスタにエラーコードが設定されているか否か、すなわちエラーが検知されたか否かを判定し、エラーコードが設定されていれば、図１０に示すエラー処理に移行する。
【０１６６】
Ｓｅ１０のステップにおいてエラーコードが設定されていなければ、ＲＡＭ５０７に投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定する（Ｓｅ１１）。Ｓｅ１１のステップにおいてメダルの投入が可能な状態であると判定された場合には、流路切替ソレノイド３０をｏｎの状態とし、メダルの流路をホッパータンク側の経路としてメダルの投入が可能な状態とし（Ｓｅ１２）、Ｓｅ１４のステップに進み、メダルの投入が可能な状態でないと判定された場合には、流路切替ソレノイド３０をｏｆｆの状態とし、メダルの流路をメダル払出口９側の経路として新たなメダルの投入を禁止し（Ｓｅ１３）、Ｓｅ１４のステップに進む。
【０１６７】
Ｓｅ１４のステップにおいては、設定キースイッチ３７がｏｎの状態か否かを判定し、設定キースイッチ３７がｏｎであれば、ＢＥＴカウンタの値が０か否かを判定する（Ｓｅ１５）。そして、Ｓｅ１５のステップにおいてＢＥＴカウンタの値が０であれば、設定確認開始を示す設定確認コマンドを生成してコマンドバッファに格納し（Ｓｅ１６）、コマンド格納処理２を行ってコマンドバッファ内の設定確認コマンドを送信データレジスタ５６１に転送し（Ｓｅ１７）、設定確認処理（Ｓｅ１８）、すなわち設定確認状態に移行する。Ｓｅ１８のステップにおける設定確認処理が終了した後は、Ｓｅ１０のステップに戻る。
【０１６８】
Ｓｅ１４のステップにおいて設定キースイッチ３７がｏｎではない場合またはＳｅ１５のステップにおいてＢＥＴカウンタの値が０ではない場合には、Ｓｅ１９のステップに進み、投入メダルセンサ３１により投入メダルの通過が検出されたか否か、すなわち投入メダルの通過が検出された旨を示す投入メダルフラグの有無を判定する。Ｓｅ１９のステップにおいて投入メダルの通過が検出されていなければ、Ｓｅ３１のステップに進み、投入メダルの通過が検出されていれば、投入メダルフラグをクリアし（Ｓｅ２０）、ＲＡＭ５０７に投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定し（Ｓｅ２１）、メダルの投入が可能な状態でなければＳｅ３１のステップに進む。
【０１６９】
Ｓｅ２１のステップにおいてメダルの投入が可能な状態であれば、ＲＡＭ５０７に設定された賭数の規定数を参照し、ＢＥＴカウンタの値が規定数であるか否を判定し（Ｓｅ２２）、ＢＥＴカウンタの値が規定数でなければ、ＢＥＴカウンタの値を１加算し（Ｓｅ２３）、賭数が１加算された旨を示すＢＥＴコマンドを生成してコマンドバッファに格納し（Ｓｅ２４）、コマンド格納処理２を行ってコマンドバッファ内のＢＥＴコマンドを送信データレジスタ５６１に転送し（Ｓｅ２５）、Ｓｅ９のステップに戻る。
【０１７０】
Ｓｅ２２のステップにおいてＢＥＴカウンタの値が規定数であれば、ＲＡＭ５０７においてクレジットの値が格納されるクレジットカウンタの値を１加算し（Ｓｅ２６）、現在のクレジットカウンタの値を示すクレジットコマンドを生成してコマンドバッファに格納し（Ｓｅ２７）、コマンド格納処理２を行ってコマンドバッファ内のクレジットコマンドを送信データレジスタ５６１に転送し（Ｓｅ２８）、クレジットカウンタの値が上限値である５０であるか否かを判定し（Ｓｅ２９）、クレジットカウンタの値が５０でなければ、Ｓｅ９のステップに戻り、クレジットカウンタの値が５０であれば投入不可フラグをＲＡＭ５０７に設定し（Ｓｅ３０）、Ｓｅ９のステップに戻る。
【０１７１】
Ｓｅ３１のステップでは、スタートスイッチ７のｏｆｆからｏｎの変化が検出されているか否か、すなわちスタートスイッチ７の立上りを示す立上りエッジが設定されているか否かを判定する。
【０１７２】
Ｓｅ３１のステップにおいてスタートスイッチ７のｏｆｆからｏｎの変化が検出されていないと判定された場合には、Ｓｅ４１のステップに進み、スタートスイッチ７のｏｆｆからｏｎの変化が検出されていれば、割込を禁止し（Ｓｅ３２）、エッジデータをクリアし（Ｓｅ３３）、後述する確定データに基づいて他のスイッチがｏｎの状態か否かを判定し（Ｓｅ３４）、いずれかのスイッチがｏｎの状態であれば割込を許可して（Ｓｅ３５）、Ｓｅ９のステップに戻る。
【０１７３】
Ｓｅ３４のステップにおいて他のスイッチがいずれもｏｎの状態でなければさらにＲＡＭ５０７に設定された賭数の規定数を参照し、ＢＥＴカウンタの値が規定数であるか、すなわちゲームの開始条件となる賭数が設定されているか否かを判定する（Ｓｅ３６）。
【０１７４】
Ｓｅ３６のステップにおいてＢＥＴカウンタの値が規定数でなければ、割込を許可して（Ｓｅ３５）、Ｓｅ９のステップに戻り、ＢＥＴカウンタの値が規定数であれば、乱数値格納ワークの値を内部抽選用の乱数値として抽選用ワークに設定し（Ｓｅ３７）、割込を許可し（Ｓｅ３８）、投入不可フラグをＲＡＭ５０７に設定するとともに、流路切替ソレノイド３０をｏｆｆの状態とし、メダルの流路をメダル払出口９側の経路として新たなメダルの投入を禁止し（Ｓｅ３９）、ゲーム開始時の設定を行う（Ｓｅ４０）。そして、Ｓｅ４０のステップの後、ＢＥＴ処理を終了して図１２のフローチャートに復帰する。
【０１７５】
このようにスタートスイッチ７のｏｆｆからｏｎへの変化が検出された後、当該スタートスイッチ７の操作が無効とされるか、有効と判断され、乱数値格納ワークの値を抽選用ワークに設定するまでの間、割込が禁止されるようになっており、この間にタイマ割込処理（メイン）が実行され、乱数値格納ワークの値が書き換わってしまうことが防止されるようになっている。
【０１７６】
Ｓｅ４１のステップにおいては、１枚ＢＥＴスイッチ５のｏｆｆからｏｎの変化が検出されているか否か、すなわち１枚ＢＥＴスイッチ５の立上りを示す立上りエッジが設定されているか否かを判定する。Ｓｅ４１のステップにおいて１枚ＢＥＴスイッチ５のｏｆｆからｏｎの変化が検出されていなければ、Ｓｅ４９のステップに進み、１枚ＢＥＴスイッチ５のｏｆｆからｏｎの変化が検出されていればエッジデータをクリアし（Ｓｅ４２）、ＲＡＭ５０７に設定された賭数の規定数を参照し、ＢＥＴカウンタの値が規定数であるか否かを判定する（Ｓｅ４３）。Ｓｅ４６のステップにおいてＢＥＴカウンタの値が規定数であればＳｅ９のステップに戻り、ＢＥＴカウンタの値が規定数でなければ、クレジットカウンタの値が０であるか否かを判定し（Ｓｅ４４）、クレジットカウンタの値が０であればＳｅ９のステップに戻る。Ｓｅ４７のステップにおいてクレジットカウンタの値が０でなければ、クレジットカウンタの値を１減算し（Ｓｅ４５）、ＢＥＴカウンタの値を１加算して（Ｓｅ４６）、賭数が１加算された旨を示すＢＥＴコマンドを生成してコマンドバッファに格納し（Ｓｅ４７）、コマンド格納処理２を行ってコマンドバッファ内のＢＥＴコマンドを送信データレジスタ５６１に転送し（Ｓｅ４８）、Ｓｅ９のステップに戻る。
【０１７７】
Ｓｅ４９のステップにおいては、ＭＡＸＢＥＴスイッチ６のｏｆｆからｏｎの変化が検出されているか否か、すなわちＭＡＸＢＥＴスイッチ６の立上り示す立上りエッジが設定されているか否かを判定する。Ｓｅ４９のステップにおいてＭＡＸＢＥＴスイッチ６のｏｆｆからｏｎの変化が検出されていなければ、Ｓｅ５８のステップに進み、ＭＡＸＢＥＴスイッチ６のｏｆｆからｏｎの変化が検出されていれば、エッジデータをクリアし（Ｓｅ５０）、ＲＡＭ５０７に設定された賭数の規定数を参照し、ＢＥＴカウンタの値が規定数であるか否かを判定する（Ｓｅ５１）。Ｓｅ５１のステップにおいてＢＥＴカウンタの値が規定数であれば、Ｓｅ５５のステップに進み、ＢＥＴカウンタの値が規定数でなければ、クレジットカウンタの値が０であるか否かを判定し（Ｓｅ５２）、クレジットカウンタの値が０であれば、Ｓｅ５５のステップに進む。Ｓｅ５２のステップにおいてクレジットカウンタの値が０でなければ、クレジットカウンタの値を１減算し（Ｓｅ５３）、ＢＥＴカウンタの値を１加算して（Ｓｅ５４）、Ｓｅ５１のステップに戻る。Ｓｅ５５のステップでは、ＢＥＴカウンタが加算されたか否かを判定し、ＢＥＴカウンタが加算されていなければ、Ｓｅ９のステップに戻り、ＢＥＴカウンタが加算されていれば、加算された数分賭数が加算された旨を示すＢＥＴコマンドを生成してコマンドバッファに格納し（Ｓｅ５６）、コマンド格納処理２を行ってコマンドバッファ内のＢＥＴコマンドを送信データレジスタ５６１に転送し（Ｓｅ５７）、Ｓｅ９のステップに戻る。
【０１７８】
Ｓｅ５８のステップにおいては、精算スイッチ１０のｏｆｆからｏｎの変化が検出されているか否か、すなわち精算スイッチ１０の立上りを示す立上りエッジが設定されているか否かを判定する。Ｓｅ５８のステップにおいて精算スイッチ１０のｏｆｆからｏｎの変化が検出されていなければ、Ｓｅ９のステップに戻り、精算スイッチ１０のｏｆｆからｏｎの変化が検出されていれば、エッジデータをクリアし（Ｓｅ５９）、ＲＡＭ５０７にリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定し（Ｓｅ６０）、当該ゲームがリプレイゲームであればＳｅ９のステップに戻る。Ｓｅ６０のステップにおいて当該ゲームがリプレイゲームでなければ、ＢＥＴカウンタの値が０か否かを判定し（Ｓｅ６１）、ＢＥＴカウンタの値が０であればＳｅ６３のステップに進み、ＢＥＴカウンタの値が０でなければ、既に設定済み賭数の精算を行う旨を示す賭数精算フラグをＲＡＭ５０７に設定し（Ｓｅ６２）、Ｓｅ６３のステップに進む。Ｓｅ６３のステップにおいては、ホッパーモータ３４ｂを駆動してクレジットカウンタまたはＢＥＴカウンタに格納された値分のメダルを払い出す制御、すなわちクレジットとして記憶されているメダルまたは賭数の設定に用いられたメダルを返却する制御が行われる精算処理を行う。そして、Ｓｅ６３のステップにおける精算処理の後、ＲＡＭ５０７に設定されている投入不可フラグをクリアして（Ｓｅ６４）、Ｓｅ９のステップに戻る。
【０１７９】
図１６及び図１７は、メイン制御部４１がＳｄ３のステップにおいて実行するリール回転処理の制御内容を示すフローチャートである。
【０１８０】
リール回転処理では、まず、フリーズ抽選を実行する（Ｓｉ１）。フリーズ抽選では、内部抽選の結果等に基づいてフリーズ状態に制御するか否か、フリーズ状態に制御する場合にはその実行時期について決定する。
【０１８１】
Ｓｉ１のステップにおけるフリーズ抽選の後、前のゲームのリール回転開始時点からウェイトタイム（本実施例では、約４．１秒）が経過したか否かを判定し（Ｓｉ２）、ウェイトタイムが経過していなければ、ウェイトタイムが経過するまで待機する。
【０１８２】
そして、Ｓｉ２のステップにおいてウェイトタイムが経過していれば、ウェイトタイムを新たに設定する（Ｓｉ３）。
【０１８３】
次いで、リールモータの回転開始時の設定を行い、リールの回転を開始させる（Ｓｉ４）。そして、回転中のリール別に仮想滑りコマテーブルの滑りコマ数を設定する滑りコマ数設定処理を行い（Ｓｉ５）、停止準備完了時の設定を行う（Ｓｉ６）。これにより、停止操作を有効化させることが可能な状態となり、その後、タイマ割込処理（メイン）の原点通過時処理において、リールの定速回転が検出された時点で、停止操作が有効となる。
【０１８４】
次いで、フリーズ条件が成立しているか否か、すなわちフリーズ抽選にてフリーズ状態に制御する旨が決定され、かつフリーズ状態に制御する時期であるかを判定し（Ｓｉ７）、フリーズ条件が成立していなければ、Ｓｉ９のステップに進み、フリーズ条件が成立していれば、フリーズ状態の時間を計時するためにＲＡＭ５０７に割り当てられたフリーズタイマカウンタに規定値を設定し（Ｓｉ８）、Ｓｉ９のステップに進む。フリーズタイマカウンタの値は、タイマ割込処理（メイン）が４回実行される毎に１ずつ減算される。
【０１８５】
Ｓｉ９のステップにおいては、フリーズタイマカウンタの値が０か否か、すなわちフリーズ状態に制御されているか否かを判定する。Ｓｉ９のステップにおいてフリーズタイマカウンタの値が０ではない場合、すなわちフリーズ状態に制御されている場合には、フリーズタイマカウンタの値が０となるまで待機する。
【０１８６】
Ｓｉ９のステップにおいてフリーズタイマカウンタの値が０の場合、すなわちフリーズ状態に制御されていない場合（当初からフリーズ状態に制御されていない場合、またはフリーズ状態が終了した場合）には、いずれかのストップスイッチのｏｆｆからｏｎの変化が検出されたか否か、すなわちいずれかのストップスイッチの立ち上がりを示す立ち上がりエッジが設定されているか否かを判定し（Ｓｉ１０）、いずれのストップスイッチのｏｆｆからｏｎの変化も検出されていなければ、リール回転エラー（一定期間以上、リールセンサ３３によりリール基準位置が検出されない場合に判定されるエラー）が発生したか否かを判定し（Ｓｉ１１）、リール回転エラーが発生していなければ、更に、投入エラー（メダルの投入が許可されている期間以外で、メダルの投入を検出した場合に判定されるエラー）が発生したか否か、及び払出エラー（メダルの払出が許可されている期間以外で、メダルの払出を検出した場合に判定されるエラー）が発生したか否かを判定し（Ｓｉ１２、Ｓｉ１３）、Ｓｉ１１〜Ｓｉ１３のステップにおいていずれのエラーの発生も判定されなければ、Ｓｉ９のステップに戻る。
【０１８７】
また、Ｓｉ１２のステップにおいて投入エラーの発生が判定された場合、またはＳｉ１３のステップにおいて払出エラーが判定された場合には、リール回転中の投入・払出エラーを示すエラーコードをレジスタに設定し（Ｓｉ１４）、図１０に示すエラー処理に移行する（Ｓｉ１７）。そして、エラーが解除された場合には、再びＳｉ９のステップに戻る。
【０１８８】
また、Ｓｉ１１のステップにおいてリール回転エラーの発生が判定された場合には、リール回転エラーを示すエラーコードをレジスタに設定し（Ｓｉ１６）、図１０に示すエラー処理に移行する（Ｓｉ１７）。これに伴い、リールの回転も一時的に停止する。そして、エラーが解除された場合には、再びＳｉ４のステップに戻り、リールの回転が再開する。
【０１８９】
また、Ｓｉ１０のステップにおいていずれかのストップスイッチのｏｆｆからｏｎの変化が検出された場合には、エッジデータをクリアし（Ｓｉ１８）、他のスイッチがｏｎの状態か否かを判定し（Ｓｉ１９）、他のスイッチが１つでもｏｎの状態であればＳｉ１０のステップに戻る。
【０１９０】
Ｓｉ１９のステップにおいて他のスイッチが全てｏｆｆの状態であれば、ｏｆｆからｏｎの変化が検出されたストップスイッチに対応するリールモータにおける、その時点のリール基準位置からのステップ数（停止操作位置となるステップ数）を取得し、停止リールに対応するワークに設定した後（Ｓｉ２０）、リール停止コマンドを生成してコマンドバッファに格納し（Ｓｉ２１）、コマンド格納処理２を行ってコマンドバッファ内のＢＥＴコマンドを送信データレジスタ５６１に転送し（Ｓｉ２２）、停止操作に対応するリールの回転が停止するまで待機する（Ｓｉ２３）。
【０１９１】
そして、停止操作に対応するリールの回転が停止すると、全てのリールが停止したか否かを判定し（Ｓｉ２４）、全てのリールが停止していなければ、Ｓｉ５のステップに戻り、全てのリールが停止していれば、リール回転処理を終了して、図１２のフローチャートに復帰する。
【０１９２】
図１８及び図１９は、メイン制御部４１が一定間隔（０．５６ｍｓの間隔）で起動処理やゲーム処理に割り込んで実行するタイマ割込処理（メイン）の制御内容を示すフローチャートである。尚、タイマ割込処理（メイン）の実行期間中は自動的に他の割込が禁止される。
【０１９３】
タイマ割込処理（メイン）においては、まず、使用中のレジスタをスタック領域に退避した後（Ｓｋ１）、停電判定処理を行う。停電判定処理では、電断検出回路４８から電圧低下信号が入力されているか否かを判定し、電圧低下信号が入力されていれば、前回の停電判定処理でも電圧低下信号が入力されていたか否かを判定し、前回の停電判定処理でも電圧低下信号が入力されていた場合には停電と判定し、その旨を示す電断フラグを設定する。
【０１９４】
Ｓｋ２のステップにおける停電判定処理の後、電断フラグが設定されているか否かを判定し（Ｓｋ３）、電断フラグが設定されていなければ、Ｓｋ４に進み、電断フラグが設定されていた場合には、後述する電断処理（メイン）に移行する。
【０１９５】
Ｓｋ４のステップでは、入力ポートから各種スイッチ類の検出データを入力するポート入力処理を行う。
【０１９６】
次いで、４種類のタイマ割込１〜４から当該タイマ割込処理（メイン）において実行すべきタイマ割込を識別するための分岐用カウンタを１進める（Ｓｋ５）。Ｓｋ５のステップでは、分岐用カウンタ値が０〜２の場合に１が加算され、カウンタ値が３の場合に０に更新される。すなわち分岐用カウンタ値は、タイマ割込処理（メイン）が実行される毎に、０→１→２→３→０・・・の順番でループする。
【０１９７】
次いで、分岐用カウンタ値を参照して２または３か、すなわちタイマ割込３またはタイマ割込４かを判定し（Ｓｋ６）、タイマ割込３またはタイマ割込４ではない場合、すなわちタイマ割込１またはタイマ割込２の場合には、リールモータ３２Ｌ、３２Ｃ、３２Ｒの始動時または定速回転中か否かを確認し、リールモータ３２Ｌ、３２Ｃ、３２Ｒの始動時または定速回転中であれば、後述するＳｋ１０のモータステップ処理において変更した位相信号データや後述するＳｋ２３の最終停止処理において変更した位相信号データを出力するモータ位相信号出力処理を実行する（Ｓｋ７）。
【０１９８】
次いで、分岐用カウンタ値を参照して１か否か、すなわちタイマ割込２か否かを判定し（Ｓｋ８）、タイマ割込２ではない場合、すなわちタイマ割込１の場合には、リールモータ３２Ｌ、３２Ｃ、３２Ｒの始動時のステップ時間間隔の制御を行うリール始動処理（Ｓｋ９）、リールモータ３２Ｌ、３２Ｃ、３２Ｒの位相信号データの変更を行うモータステップ処理（Ｓｋ１０）、リールモータ３２Ｌ、３２Ｃ、３２Ｒの停止後、一定時間経過後に位相信号を１相励磁に変更するモータ位相信号スタンバイ処理（Ｓｋ１１）を順次実行した後、Ｓｋ２５のステップに進む。
【０１９９】
また、Ｓｋ８のステップにおいてタイマ割込２の場合には、各種表示器をダイナミック点灯させるＬＥＤダイナミック表示処理（Ｓｋ１２）、各種ＬＥＤ等の点灯信号等のデータを出力ポートへ出力する制御信号等出力処理（Ｓｋ１３）、各種時間カウンタを更新する時間カウンタ更新処理（Ｓｋ１４）、ドア開放検出スイッチ２５の検出状態の監視、ドアコマンドの送信要求などを行うドア監視処理（Ｓｋ１５）、ドアコマンドや操作検出コマンドのシリアル通信回路５１１への転送等を行うコマンド送信処理（Ｓｋ１６）、外部出力信号を更新する外部出力信号更新処理（Ｓｋ１７）を順次実行した後、Ｓｋ２５のステップに進む。
【０２００】
また、Ｓｋ６のステップにおいてタイマ割込３またはタイマ割込４であれば、更に、分岐用カウンタ値を参照して３か否か、すなわちタイマ割込４か否かを判定し（Ｓｋ１８）、タイマ割込４でなければ、すなわちタイマ割込３であれば、回転中のリール２Ｌ、２Ｃ、２Ｒの原点通過（リール基準位置の通過）をチェックし、リール回転エラーの発生を検知するとともに、停止準備が完了しているか（停止準備完了コードが設定されているか）を確認し、停止準備が完了しており、かつ定速回転中であれば、回転中のリールに対応するストップスイッチの操作を有効化する原点通過時処理（Ｓｋ１９）、スイッチ類の検出状態に変化があったか否かの判定、操作検出コマンドの送信要求等を行うスイッチ入力判定処理（Ｓｋ２０）、乱数値レジスタＲ１Ｄから数値データを読み出して乱数値格納ワークに格納する乱数値読出処理（Ｓｋ２１）を順次実行した後、Ｓｋ２５のステップに進む。
【０２０１】
また、Ｓｋ１８のステップにおいてタイマ割込４であれば、ストップスイッチ８Ｌ、８Ｃ、８Ｒの検出に伴って停止リールのワークに停止操作位置が格納されたときに、停止リールのワークに格納された停止操作位置から停止位置を決定し、何ステップ後に停止すれば良いかを算出する停止スイッチ処理（Ｓｋ２２）、停止スイッチ処理で算出された停止までのステップ数をカウントして、停止する時期になったら２相励磁によるブレーキを開始する停止処理（Ｓｋ２３）、停止処理においてブレーキを開始してから一定時間後に３相励磁とする最終停止処理（Ｓｋ２４）を順次実行した後、Ｓｋ２５のステップに進む。
【０２０２】
Ｓｋ２５のステップでは、Ｓｋ１においてスタック領域に退避したレジスタを復帰し、割込前の処理に戻る。
【０２０３】
図２０は、メイン制御部４１が前述したタイマ割込処理（メイン）のタイマ割込３内において実行するスイッチ入力判定処理の制御内容を示すフローチャートである。
【０２０４】
スイッチ入力判定処理では、ポート入力処理において取得した各スイッチの入力データを更新し（Ｓｋ１０１）、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じであるか否かを判定し（Ｓｋ１０２）、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じでなければ、図１９のフローチャートに復帰する。
【０２０５】
Ｓｋ１０２のステップにおいて、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じ場合、すなわち２．２４ｍｓの間同じ検出状態を示している場合には、該当するスイッチの確定データを更新し（Ｓｋ１０３）、Ｓｋ１０４のステップに進む。Ｓｋ１０３のステップでは、今回の確定データを前回の確定データに移動し、前回と今回が同じと判定された入力データが示す検出状態を今回の確定データとして設定する。
【０２０６】
Ｓｋ１０４のステップでは、更新後の前回の確定データと今回の確定データとが同じか否かを判定し、全てのスイッチについて前回の確定データと今回の確定データとが同じであれば、エッジデータをクリアし（Ｓｋ１０５）、図１９のフローチャートに復帰する。
【０２０７】
Ｓｋ１０４のステップにおいていずれか１つのスイッチでも前回の確定データと今回の確定データとが同じでなければ、前回の確定データと今回の確定データとが異なるスイッチについてｏｆｆからｏｎに変化したかを判定し（Ｓｋ１０６）、ｏｆｆからｏｎに変化したスイッチがなければＳｋ１０８のステップに進み、ｏｆｆからｏｎに変化したスイッチがある場合には、該当するスイッチがｏｆｆからｏｎに変化した旨を示す立上りエッジを設定した後（Ｓｋ１０７）、Ｓｋ１０８のステップに進む。
【０２０８】
Ｓｋ１０８のステップでは、前回の確定データと今回の確定データとが異なるスイッチについてｏｎからｏｆｆに変化したかを判定し、ｏｎからｏｆｆに変化したスイッチがなければ、Ｓｋ１１０に進み、ｏｎからｏｆｆに変化したスイッチがある場合には、該当するスイッチがｏｎからｏｆｆに変化した旨を示す立下りエッジを設定し（Ｓｋ１０９）、Ｓｋ１１０のステップに進む。
【０２０９】
Ｓｋ１１０のステップでは、前回の確定データと今回の確定データとが同じスイッチがあるか否かを判定し、前回の確定データと今回の確定データとが同じスイッチがなければ、Ｓｋ１１２のステップに進み、前回の確定データと今回の確定データとが同じスイッチがあれば、該当するスイッチのエッジデータのみをクリアし（Ｓｋ１１１）、Ｓｋ１１２のステップに進む。
【０２１０】
Ｓｋ１１２では、操作検出コマンド送信要求を設定し、検出状態が変化したスイッチ（エッジデータが設定されているスイッチ）、当該スイッチがｏｆｆからｏｎに変化したか、ｏｎからｏｆｆに変化したか（立上りエッジか、立下りエッジか）、他のスイッチ（検出状態が変化していないスイッチ）の検出状態（ｏｎ／ｏｆｆ）を示す操作検出コマンドを生成してＲＡＭ５０７に割り当てられた操作検出コマンド格納領域（操作検出コマンドが送信されるまで一時的に操作検出コマンドが格納される領域）に格納する（Ｓｋ１１３）ことで、操作検出コマンドの送信を命令した後、図１９のフローチャートに復帰する。
【０２１１】
図２１は、メイン制御部４１が前述したタイマ割込処理（メイン）のタイマ割込２内において実行するドア監視処理の制御内容を示すフローチャートである。
【０２１２】
ドア監視処理では、まず、ドア開放検出スイッチ２５の入力状態の履歴（ポート入力処理において取得したドア開放検出スイッチ２５の正論理化した検出信号の確定状態を約１００ｍｓ論理和し続けた値）であるドアセンサ履歴を更新する（Ｓｋ３０１）。すなわちドア開放検出スイッチ２５の正論理化した検出信号の確定状態とドアセンサ履歴との論理和をとって新たなドアセンサ履歴とする。
【０２１３】
次いで、ドア監視タイマの値が０か否か、すなわち前回の監視から約１００ｍｓが経過したか否かを判定し（Ｓｋ３０２）、ドア監視タイマの値が０でなければ、ドア監視タイマの値を１減算し（Ｓｋ３０３）、ドア監視処理を終了し、図１８のフローチャートに復帰する。
【０２１４】
Ｓｋ３０２のステップにおいてドア監視タイマの値が０であれば、ドア監視タイマの値として４４を設定し（Ｓｋ３０４）、新たに１００ｍｓの計時を開始する。そしてドアセンサ履歴をレジスタに取得し、ＲＡＭ５０７のドアセンサ履歴をクリアした後（Ｓｋ３０５）、レジスタに取得したドアセンサ履歴が示すドア開放検出スイッチ２５の検出状態と、ＲＡＭ５０７に割り当てられたドアコマンド格納領域（ドアコマンドが送信されるまで一時的にドアコマンドが格納される領域であり、ドア開放検出スイッチ２５の検出状態が変化することで新たな検出状態を示すドアコマンドに更新される）に格納されているドアコマンドが示すドア開放検出スイッチ２５の検出状態と、を比較し、ドア開放検出スイッチ２５の検出状態に変化があるか否かを判定する（Ｓｋ３０６）。
【０２１５】
Ｓｋ３０６のステップにおいてドア開放検出スイッチ２５の検出状態に変化がなければ、ドアコマンド送信要求１が設定されているか否か、すなわちメイン制御部４１の起動またはゲームの終了に伴いドアコマンドの送信が要求されているか否かを判定し（Ｓｋ３０７）、ドアコマンド送信要求１が設定されていなければ、ドア監視処理を終了し、図１８のフローチャートに復帰する。
【０２１６】
Ｓｋ３０６のステップにおいてドア開放検出スイッチ２５の検出状態に変化がある場合、またはＳｋ３０７のステップにおいてドアコマンド送信要求１が設定されている場合には、ドアコマンド送信要求１をクリアするとともに、ドアコマンド送信要求２を設定し（Ｓｋ３０８）、取得したドアセンサ履歴（変化後のドア開放検出スイッチ２５の検出状態）に基づくドアコマンドを生成してドアコマンド格納領域に格納する（Ｓｋ３０９）ことで、変化後のドアコマンドの送信を命令した後、ドア監視処理を終了し、図１８のフローチャートに復帰する。
【０２１７】
図２２は、メイン制御部４１が前述したタイマ割込処理（メイン）のタイマ割込２内において実行するコマンド送信処理の制御内容を示すフローチャートである。
【０２１８】
コマンド送信処理では、まず、シリアル通信回路５１１がコマンドの送信中でなければ、ドアコマンド送信要求２が設定されているか、すなわちドアコマンドの送信が命令されているか否かを判定する（Ｓｋ４０１）。
【０２１９】
Ｓｋ４０１のステップにおいてドアコマンド送信要求２が設定されている場合には、ドアコマンド送信要求２をクリアし（Ｓｋ４０２）、ドアコマンド格納領域に設定されているドアコマンドを読み出してコマンドバッファに格納し（Ｓｋ４０３）、コマンド格納処理１を行ってコマンドバッファ内のドアコマンドを送信データレジスタ５６１に転送し（Ｓｋ４０７）、図１８に示すフローチャートに復帰する。
【０２２０】
Ｓｋ４０１のステップにおいてドアコマンド送信要求２が設定されていない場合には、操作検出コマンド送信要求が設定されているか否か、すなわち操作検出コマンドの送信が命令されているか否かを判定する（Ｓｋ４０４）。
【０２２１】
Ｓｋ４０４のステップにおいて操作検出コマンド送信要求が設定されていない場合には、図１８に示すフローチャートに復帰し、操作検出コマンド送信要求が設定されている場合には、操作検出コマンド送信要求をクリアし（Ｓｋ４０５）、操作検出コマンド格納領域に設定されている操作検出コマンドを読み出してコマンドバッファに格納し（Ｓｋ４０６）、コマンド格納処理１を行ってコマンドバッファ内の操作検出コマンドを送信データレジスタ５６１に転送し（Ｓｋ４０７）、図１８に示すフローチャートに復帰する。
【０２２２】
図２３は、メイン制御部４１が前述したタイマ割込処理（メイン）において電断フラグが設定されていると判定した場合に実行する電断処理（メイン）の制御内容を示すフローチャートである。
【０２２３】
電断処理（メイン）においては、まず、使用している可能性がある全てのレジスタをスタック領域に退避する（Ｓｍ１）。尚、前述したＩレジスタ及びＩＹレジスタの値は使用されているが、起動時の初期化に伴って常に同一の固定値が設定されるため、ここでは保存されない。
【０２２４】
次いで、破壊診断用データ（本実施例では、５Ａ（Ｈ））をセットして（Ｓｍ２）、全ての出力ポートを初期化する（Ｓｍ３）。次いでＲＡＭ５０７の全ての格納領域（未使用領域及び未使用スタック領域を含む）の排他的論理和が０になるようにＲＡＭパリティ調整用データを計算してセットし（Ｓｍ４）、ＲＡＭ５０７へのアクセスを禁止する（Ｓｍ５）。
【０２２５】
その後、電圧が低下してＣＰＵ５０５が停止するか、ユーザリセット信号が入力されて再起動するか、の待機状態に移行する。
【０２２６】
そしてこの待機状態のまま電圧が低下すると内部的に動作停止状態になる。よって、電断時に確実にメイン制御部４１は動作停止する。また、この待機状態において、電圧が低下せずにユーザリセット信号が入力されると前述した起動処理（メイン）がユーザモードから実行され、ＲＡＭ５０７の格納データが正常であれば、元の処理に復帰することとなる。
【０２２７】
本実施例のメイン制御部４１は、電源スイッチ３９がＯＦＦからＯＮとなったとき（電源投入時）に、設定キースイッチ３７がＯＮを特定するための検出信号が出力されている特定操作状態となったときの前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定されたときには、不正行為とみなし、設定変更状態に制御しないようになっている。すなわち、本来であれば前面扉１ｂが開放状態でなければ、電源スイッチ３９や設定キースイッチ３７を操作できず特定操作状態にも成り得ないところ、特定操作状態となったときに前面扉１ｂが開放状態となっておらず不正行為が行われた可能性があるときには、設定変更状態に制御されることがない。これにより、不正行為によって設定変更状態に制御されて、設定変更が行われることを確実に防止することができる。
【０２２８】
また、図２で説明したように、ドア開放検出スイッチ２５と、設定変更操作を行うための設定キースイッチ３７、リセット／設定スイッチ３８、および電源スイッチ３９が搭載された電源ボックス１００とが、各々、筐体１ａ内の異なる側面に設けられているため、ドア開放検出スイッチ２５と電源ボックス１００との双方に対して不正行為を行うことの困難性が高められている。
【０２２９】
さらに、前面扉１ｂが筐体１ａに対して閉鎖状態でありながら、ドア開放検出スイッチ２５により開放状態と同じ検出信号が出力されるようにする不正行為が考えられる。しかし、前述したように、ドア開放検出スイッチ２５として反射型の光センサを採用している。このため、上記不正行為を行うためには、例えば反射部材を取り除くなどといった困難性を伴う。また、反射部材が取り除かれているか否かについては、視覚により認識することができるため、不正行為が行われたことを容易に把握することができる。よって、前面扉１ｂが筐体１ａに対して閉鎖状態でありながら、ドア開放検出スイッチ２５により開放状態と同じ検出信号が出力されるようにするような不正行為を防止することができる。
【０２３０】
一方、電源スイッチ３９がＯＦＦからＯＮとなったとき（電源投入時）に、設定キースイッチ３７がＯＮを特定するための検出信号が出力されている特定操作状態となったときの前面扉１ｂが開放状態である場合には、設定変更状態に移行し、この間は、前面扉１ｂの開閉状態の判定は行わない。このため、設定変更状態に移行後は、この設定変更状態が前面扉１ｂの開閉状態に関わらず、設定キースイッチ３７がＯＦＦされるまで継続される。すなわち、一旦設定変更状態に移行されてから、設定キースイッチ３７がＯＦＦされて設定終了条件が成立するまで、前面扉１ｂの開閉状態に関わらず、当該設定変更状態が維持される。このため、不正行為ではなく正規に電源スイッチ３９や設定キースイッチ３７の操作が行われて設定変更状態に制御された後においては、設定変更途中において、例えばドア開放検出スイッチに誤って手が触れるなどして前面扉１ｂが閉鎖状態であると誤検出されたとしても、当該設定変更状態を維持させて、確実に設定変更を行うことができる。このため、誤操作によって再度、電源を落として最初から設定変更状態としなければならないといった煩わしさを遊技場管理者に抱かせてしまうことがない。
【０２３１】
また、メイン制御部４１は、電源スイッチ３９がＯＦＦからＯＮとなったとき（電源投入時）に、設定キースイッチ３７がＯＮを特定するための検出信号が出力されている特定操作状態となったときの前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定されたときには、不正行為とみなし、設定変更状態に制御しないだけでなく、遊技の進行を不能化させるようになっている。この不能化は、ＲＡＭ異常エラーと同様に、リセットスイッチ２３やリセット／設定スイッチ３８を操作しても解除されないようになっており、前述した設定変更状態において新たな設定値が設定されるまで解除されることがない。このため、不正行為が行われたことを、遊技場管理者や他の遊技者などによって容易に特定されてしまうこととなる。その結果、不正行為を行うことのリスクを高めることにより、不正行為を抑止することができる。
【０２３２】
また、上記のように、設定変更状態において新たな設定値が設定されることで、遊技の不能化は解除されることとなるので、不正行為を行った者にとっては容易に遊技の不能動化を解除することができないのに対し、前面扉１ｂを開放状態にして設定キースイッチを操作することができる者（例えば遊技場管理者）であれば、容易かつ速やかに不能動化を解除することができる。
【０２３３】
尚、本実施例では、特定操作状態となったときの前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定され、遊技の進行が不能化された場合に、設定変更状態において新たな設定値が設定されることを条件に当該不能化が解除される構成であるが、これに限るものではなく、所定の解除操作を行うことで不能化が解除されるものであれば良く、例えば、特定操作状態となったときの前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定され、遊技の進行が不能化された場合に、設定キースイッチ３７がＯＮ状態である限り遊技を不能動化させ、設定キースイッチ３７がＯＦＦ状態とされることにより当該不能動化を解除するようにしても良く、この場合でも、不正行為を行った者にとっては容易に遊技の不能動化を解除することができないのに対し、前面扉１ｂを開放状態にして設定キースイッチを操作することができる者（例えば遊技場管理者）であれば、容易かつ速やかに不能動化を解除することができる。
【０２３４】
また、本実施例では、特定操作状態となったときの前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定された場合に、エラー状態に制御することで遊技を不能化する構成であるが、少なくとも遊技の進行が不能化される構成であれば良く、例えば、遊技を進行させるための操作が無効化される構成でも良い。
【０２３５】
また、本実施例では、有利度を設定するための設定値が、入賞の発生を許容する旨が決定される確率（当選率）を特定する値である例について説明したが、設定値は、遊技者にとっての有利度を異ならせるものであれば良く、例えば、当選状況に応じた情報が報知されるナビ演出を実行、あるいは当該ナビ演出を実行するアシストタイム（ＡＴ）に制御するスロットマシンにおいては、当該ナビ演出を実行する確率、あるいはＡＴに制御する確率を特定する値であっても良い。また、特定の図柄組み合わせにより、再遊技役の当選確率が向上するリプレイタイム（ＲＴ）に制御するスロットマシンにおいては、当該ＲＴに制御する確率を特定する値であっても良い。このように、設定値に応じて遊技者にとっての有利度が異なるものであれば、当選率が同じであっても良い。
【０２３６】
また、本実施例においては、ＢＥＴ処理において、設定キースイッチ３７がＯＮ状態であることを条件として、設定確認処理が行われる例について説明したが、これに関連して、ＢＥＴ処理において、設定キースイッチ３７がＯＮ状態であるときに、前面扉１ｂが開放状態であるか否かを判定して、前面扉１ｂが開放状態であるときには設定確認処理に移行可能とし、前面扉１ｂが閉鎖状態であるときには設定確認処理に移行させないように構成しても良い。さらに、前面扉１ｂが閉鎖状態であるときには、設定確認処理に移行させないことに加えて、遊技を不能化するようにしても良い。これにより、不正行為によって設定キースイッチ３７がＯＮ状態となり設定確認操作が行われた可能性があるときには、設定確認処理に制御されて設定値が確認されてしまうことを確実に防止することができる。
【０２３７】
また、本実施例においては、メイン制御部４１が、電源スイッチ３９がＯＦＦからＯＮとなったとき（電源投入時）に、設定キースイッチ３７がＯＮを特定するための検出信号が出力されている特定操作状態となったときに、ＲＡＭ５０７の格納領域のうち、使用中スタック領域、非初期化領域を除く全ての領域（未使用領域及び未使用スタック領域を含む）が初期化される初期化１の後に、前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態でないと判定されたときには、不正行為とみなし、設定変更状態に制御しない構成であるが、メイン制御部４１が、電源スイッチ３９がＯＦＦからＯＮとなったとき（電源投入時）に、設定キースイッチ３７がＯＮを特定するための検出信号が出力されている特定操作状態となったときに、前面扉１ｂの開閉状態を判定し、前面扉１ｂが開放状態であると判定されたときには、設定変更状態に移行する前、または設定変更状態に移行した後の少なくともいずれかのタイミングで初期化１を行う一方で、前面扉１ｂが開放状態でないと判定されたときには、不正行為とみなし、設定変更状態に制御せず、さらに初期化１も行わない構成としても良く、このような構成とすることで、本来であれば前面扉１ｂが開放状態でなければ、電源スイッチ３９や設定キースイッチ３７を操作できず、設定変更状態にもなり得ないところ、特定操作状態となったときに前面扉１ｂが開放状態となっておらず不正行為が行われた可能性があるときには、設定変更状態に制御されることがなく、かつＲＡＭ４１ｃのデータが初期化されてしまうこともないので、不正行為によって、設定変更状態に制御されて設定変更が行われることが防止できるうえに、その際、データが初期化されてしまうことも防止できるので、不正行為が行われた状態を初期化せずに保持することができる。
【０２３８】
次に、メイン制御部４１がサブ制御部９１に対して送信するコマンドについて説明する。
【０２３９】
本実施例では、メイン制御部４１がサブ制御部９１に対して、ＢＥＴコマンド、クレジットコマンド、内部当選コマンド、フリーズコマンド、リール回転開始コマンド、リール停止コマンド、入賞判定コマンド、払出開始コマンド、払出終了コマンド、遊技状態コマンド、待機コマンド、打止コマンド、エラーコマンド、復帰コマンド、設定コマンド、設定確認コマンド、ドアコマンド、操作検出コマンドを含む複数種類のコマンドを送信する。
【０２４０】
これらコマンドは、コマンドの種類を示す１バイトの種類データとコマンドの内容を示す１バイトの拡張データとからなり、サブ制御部９１は、種類データからコマンドの種類を判別できるようになっている。
【０２４１】
ＢＥＴコマンドは、メダルの投入枚数、すなわち賭数の設定に使用されたメダル枚数を特定可能なコマンドであり、ゲーム終了後（設定変更後）からゲーム開始までの状態であり、規定数の賭数が設定されていない状態において、メダルが投入されるか、１枚ＢＥＴスイッチ５またはＭＡＸＢＥＴスイッチ６が操作されて賭数が設定されたときに送信される。また、ＢＥＴコマンドは、賭数の設定操作がなされたときに送信されるので、ＢＥＴコマンドを受信することで賭数の設定操作がなされたことを特定可能である。
【０２４２】
クレジットコマンドは、クレジットとして記憶されているメダル枚数を特定可能なコマンドであり、ゲーム終了後（設定変更後）からゲーム開始までの状態であり、規定数の賭数が設定されている状態において、メダルが投入されてクレジットが加算されたときに送信される。
【０２４３】
内部当選コマンドは、内部当選フラグの当選状況、並びに成立した内部当選フラグの種類を特定可能なコマンドであり、スタートスイッチ７が操作されてゲームが開始したときに送信される。また、内部当選コマンドは、スタートスイッチ７が操作されたときに送信されるので、内部当選コマンドを受信することでスタートスイッチ７が操作されたことを特定可能である。
【０２４４】
フリーズコマンドは、後述するフリーズ状態に制御する旨が決定された場合に、フリーズ状態に制御するか否か及びフリーズ状態に制御する場合にはそのタイミングを示すコマンドであり、後述するフリーズ抽選の終了時に送信される。
【０２４５】
リール回転開始コマンドは、リールの回転の開始を通知するコマンドであり、リール２Ｌ、２Ｃ、２Ｒの回転が開始されたときに送信される。
【０２４６】
リール停止コマンドは、停止するリールが左リール、中リール、右リールのいずれかであるか、該当するリールの停止操作位置の領域番号、該当するリールの停止位置の領域番号、を特定可能なコマンドであり、各リールの停止操作に伴う停止制御が行われる毎に送信される。また、リール停止コマンドは、ストップスイッチ８Ｌ、８Ｃ、８Ｒが操作されたときに送信されるので、リール停止コマンドを受信することでストップスイッチ８Ｌ、８Ｃ、８Ｒが操作されたことを特定可能である。
【０２４７】
入賞判定コマンドは、入賞の有無、並びに入賞の種類、入賞時のメダルの払出枚数を特定可能なコマンドであり、全リールが停止して入賞判定が行われた後に送信される。
【０２４８】
払出開始コマンドは、メダルの払出開始を通知するコマンドであり、入賞やクレジット（賭数の設定に用いられたメダルを含む）の精算によるメダルの払出が開始されたときに送信される。また、払出終了コマンドは、メダルの払出終了を通知するコマンドであり、入賞及びクレジットの精算によるメダルの払出が終了したときに送信される。
【０２４９】
遊技状態コマンドは、次ゲームの遊技状態を特定可能なコマンドであり、ゲームの終了時に送信される。
【０２５０】
待機コマンドは、待機状態へ移行する旨を示すコマンドであり、１ゲーム終了後、賭数が設定されずに一定時間経過して待機状態に移行するとき、クレジット（賭数の設定に用いられたメダルを含む）の精算によるメダルの払出が終了し、払出終了コマンドが送信された後に送信される。
【０２５１】
打止コマンドは、打止状態の発生または解除を示すコマンドであり、ＢＢ終了後、エンディング演出待ち時間が経過した時点で打止状態の発生を示す打止コマンドが送信され、リセット操作がなされて打止状態が解除された時点で、打止状態の解除を示す打止コマンドが送信される。
【０２５２】
エラーコマンドは、エラー状態の発生または解除、エラー状態の種類を示すコマンドであり、エラーが判定され、エラー状態に制御された時点でエラー状態の発生及びその種類を示すエラーコマンドが送信され、リセット操作がなされてエラー状態が解除された時点で、エラー状態の解除を示すエラーコマンドが送信される。
【０２５３】
復帰コマンドは、メイン制御部４１が電断前の制御状態に復帰した旨を示すコマンドであり、メイン制御部４１の起動時において電断前の制御状態に復帰した際に送信される。
【０２５４】
設定コマンドは、設定変更状態の開始または終了、設定変更後設定値を示すコマンドであり、設定変更状態に移行する時点で設定変更状態の開始を示す設定コマンドが送信され、設定変更状態の終了時に設定変更状態の終了及び設定変更後の設定値を示す設定コマンドが送信される。また、設定変更状態への移行に伴ってメイン制御部４１の制御状態が初期化されるため、設定開始を示す設定コマンドによりメイン制御部４１の制御状態が初期化されたことを特定可能である。
【０２５５】
設定確認コマンドは、設定確認状態の開始または終了を示すコマンドであり、設定確認状態に移行する際に設定確認開始を示す設定確認コマンドが送信され、設定確認状態の終了時に設定確認終了を示す設定確認コマンドが送信される。
【０２５６】
ドアコマンドは、ドア開放検出スイッチ２５の検出状態、すなわちｏｎ（開放状態）／ｏｆｆ（閉状態）を示すコマンドであり、電源投入時、１ゲーム終了時（ゲーム終了後、次のゲームの賭数の設定が開始可能となる前までの時点）、ドア開放検出スイッチ２５の検出状態が変化（ｏｎからｏｆｆ、ｏｆｆからｏｎ）した時に送信される。
【０２５７】
操作検出コマンドは、操作スイッチ類（１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒ）のうち検出状態（ｏｎ／ｏｆｆ）が変化したスイッチ、検出状態がｏｆｆからｏｎに変化したのか、ｏｎからｏｆｆに変化したのか及び他のスイッチの検出状態（ｏｎ／ｏｆｆ）を示すコマンドであり、これら操作スイッチ類のいずれかの検出状態が変化したときに送信される。
【０２５８】
これらコマンドのうちドアコマンド及び操作検出コマンド以外のコマンドは、基本処理において生成され、非初期化領域に割り当てられたコマンドバッファ内のコマンドデータを新たに生成したコマンドデータに更新するとともに、シリアル通信回路５１１の送信データレジスタ５６１に転送することで、サブ制御部９１に送信される。
【０２５９】
一方、ドアコマンドは、タイマ割込処理（メイン）のドア監視処理において生成され、ドアコマンド格納領域に格納される。ドアコマンド格納領域には、電源投入時または１ゲーム終了時にその時点のドア開放検出スイッチ２５の検出状態を示すドアコマンドが格納され、ドア開放検出スイッチ２５の検出状態が変化した時にその変化後の検出状態を示すドアコマンドが格納される。また、ドアコマンド格納領域に格納されたドアコマンドは、当該ドアコマンドが送信された後もクリアされることがなく、その後、新たに格納されるドアコマンドによって上書きされるようになっている。尚、電源投入時または１ゲーム終了時には、ドアコマンド格納領域に格納されているドアコマンドの送信を要求するドアコマンド送信要求１が設定され、ドアコマンド送信要求１が設定されているか、ドア開放検出スイッチ２５の検出状態が変化したときに、ドアコマンド送信要求２が設定されるようになっており、このドアコマンド送信要求２が設定されることによりドアコマンド格納領域に格納されているドアコマンドの送信が命令され、その後実行されるタイマ割込処理（メイン）のコマンド送信処理において、コマンドバッファに格納され、シリアル通信回路５１１の送信データレジスタ５６１に転送することで、サブ制御部９１に送信される。
【０２６０】
また、操作検出コマンドは、タイマ割込処理（メイン）のスイッチ入力判定処理において、いずれかのスイッチの検出状態の変化が検出された場合（いずれかのスイッチのエッジデータが設定された場合）に生成され、操作検出コマンド格納領域に格納されるとともに、操作検出コマンド送信要求が設定されることにより操作検出コマンド格納領域に格納されている操作検出コマンドの送信が命令され、その後実行されるタイマ割込処理（メイン）のコマンド送信処理において、コマンドバッファに格納され、シリアル通信回路５１１の送信データレジスタ５６１に転送することで、サブ制御部９１に送信される。
【０２６１】
前述のようにドアコマンドも操作検出コマンドもともにタイマ割込処理（メイン）のコマンド設定処理においてコマンドバッファに格納され、シリアル通信回路５１１の送信データレジスタ５６１に転送することで、サブ制御部９１に送信されることとなるが、ドアコマンド送信要求２が設定されている場合、すなわちドアコマンドの送信が要求されている場合には、例え、操作検出コマンドの送信が要求されていても、ドアコマンドの送信を優先するようになっており、ドアコマンド送信要求２が設定されていない場合のみ操作検出コマンドが送信されることとなるため、ドアコマンド送信要求２と操作検出コマンド送信要求の双方が設定されている場合には、当該コマンド送信処理では、ドアコマンドが送信され、次回以降のコマンド送信処理において操作検出コマンドが送信されることとなる。
【０２６２】
また、本実施例では、ゲームの進行制御に伴う事象を契機とするコマンド（以下、第１のコマンドとする）は、基本処理において生成され、送信データレジスタ５６１に転送することでシリアル通信回路５１１によってサブ制御部９１に送信されることとなるが、ドアコマンドや操作検出コマンドなど、ゲームの進行とは関係なく生じうる事象を契機とするコマンド（以下、第２のコマンドとする）は、基本処理に定期的に割り込んで実行されるタイマ割込処理（メイン）により生成されるようになっている。また、コマンドが２バイトのデータから構成されているため、これら第２のコマンドを生成した時点で直ちに送信データレジスタ５６１に転送する構成とすると、場合によっては、基本処理においてゲームの進行制御に伴うコマンドデータ1バイト目を転送した後、２バイト目を転送する前にタイマ割込処理が割り込んで実行され、第１のコマンドのデータの１バイト目と２バイト目の間に、第２のコマンドのデータが入り込んでしまって、サブ制御部９１側で正規のコマンドとして受信できなくなってしまう可能性がある。
【０２６３】
これに対して本実施例では、割込が許可された後の基本処理（ゲーム処理）において生成した第１のコマンドを送信データレジスタ５６１に転送するコマンド格納処理２では、図２４に示すように、先頭のコマンドの転送を開始する前の段階から２バイト目のコマンドの転送が完了するまでの段階までの間、割込禁止に設定し、その間、コマンド送信処理を含むタイマ割込処理（メイン）の実行が禁止されるようになっており、第１のコマンドを構成する複数バイトのコマンドデータの間に、第２のコマンドが入り込んでしまうことがない。
【０２６４】
尚、本実施例では、ゲームの進行とは関係なく生じうる事象を契機とするコマンドとしてドアコマンド及び操作検出コマンドを適用しているが、ゲームの進行とは関係なく生じうるコマンドであり、タイマ割込処理（メイン）においてその送信が要求されるコマンドであれば良く、遊技機の振動など、突発的に生じうるエラーを検知した旨を示すコマンドを第２のコマンドとして適用しても良い。
【０２６５】
メイン制御部４１は、約１００ｍｓ毎にドア開放検出スイッチ２５の検出状態を監視する。詳しくは、タイマ割込処理（メイン）のタイマ割込１〜４のいずれでも行う、すなわち０．５６ｍｓ毎に行うポート入力処理においてドア開放検出スイッチ２５からの検出信号を正論理化した入力状態（ドア開放検出スイッチ２５ｏｎ＝１、ドア閉塞状態で０）を取得し、タイマ割込処理（メイン）のタイマ割込２で行う、すなわち２．２４ｍｓ毎に行うドア監視処理において、前述のポート入力処理において取得したドア開放検出スイッチ２５の検出信号の確定状態（２回連続同一となった入力状態）を、約１００ｍｓ（ドア監視処理４５回）論理和し続け、その結果を使用してドア開放検出スイッチ２５の検出状態を判定する。そして、約１００ｍｓが経過した時点で算出結果が１の場合、すなわちその間に１回でもドア開放検出スイッチ２５のｏｎ（開放状態）が検出された場合には、ドア開放検出スイッチ２５のｏｎと判定し、算出結果が０の場合、すなわちその間に１回もドア開放検出スイッチ２５のｏｎ（開放状態）が検出されていない場合には、ドア開放検出スイッチ２５のｏｆｆと判定する。この判定の結果と、ドアコマンド格納領域に格納されているドアコマンドが示すドア開放検出スイッチ２５の検出状態と、が一致すればドア開放検出スイッチ２５の検出状態に変化なしと判定し、一致しなければドア開放検出スイッチ２５の検出状態が変化したと判定し、ドアコマンド格納領域に格納されているドアコマンドを、変化後の検出状態を示すドアコマンドに更新し、ドアコマンド送信要求２を設定して当該ドアコマンドの送信を命令する。また、メイン制御部４１は、ドア開放検出スイッチ２５の検出状態が変化したと判定した場合に、ドアコマンドの送信命令に加えて、外部出力基板１０００に対するドア開放信号の出力状態も更新する。
【０２６６】
また、メイン制御部４１は、電源投入時または１ゲーム終了時に、起動処理またはゲーム処理においてドアコマンド送信要求１を設定し、ドアコマンド送信用バッファに格納されているドアコマンドの送信を要求する。一方ドア監視処理においては、ドアコマンド送信要求１が設定されているか否かを判定し、ドアコマンド送信要求１が設定されている場合には、ドアコマンドの送信要求ありと判定し、ドアコマンド送信要求２を設定してドアコマンド格納領域に格納されているドアコマンドの送信を命令する。また、メイン制御部４１は、ドアコマンド送信要求１が設定されている場合に、ドアコマンドの送信命令に加えて、外部出力基板１０００に対するドア開放信号の出力状態も更新する。
【０２６７】
このように外部出力基板１０００に対するドア開放信号の出力状態は、ドアコマンドの送信命令にリンクして更新されるようになっている。
【０２６８】
本実施例のスロットマシン１は、メイン制御部４１がゲームの進行制御を行う操作スイッチとして１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒを備える。
【０２６９】
これらスイッチ類の操作は、ゲームの終了時から次回のゲーム終了時までを構成する全ての制御状態において常にゲームの進行制御に関与するものではなく、制御状態に応じてゲームの進行制御に関与することもあれば関与しないことがある。
【０２７０】
メイン制御部４１は、これら操作スイッチを、一定時間間隔毎に割り込んで実行されるタイマ割込処理（メイン）中に実行するスイッチ入力判定処理において検出する。スイッチ入力判定処理では、操作スイッチの検出状態を監視し、いずれかの操作スイッチがｏｆｆからｏｎに変化した場合に、該当する操作スイッチがｏｆｆからｏｎに変化した旨を示すエッジデータ（立上りエッジ）を設定し、ｏｎからｏｆｆに変化した場合に、該当する操作スイッチがｏｎからｏｆｆに変化した旨を示すエッジデータ（立下りエッジ）を設定する。
【０２７１】
そして、メイン制御部４１は、ゲーム処理において現段階の制御状態に応じてゲームの進行制御に関与する操作スイッチの立上りエッジが設定されているか否かに基づいて当該操作スイッチの操作がなされたか否かを判定し、当該操作スイッチの操作がなされていると判定した場合には、エッジデータを全てクリアし、当該操作スイッチの操作に応じたゲームの進行制御を実行するとともに、ゲームの進行制御に伴うコマンド（ＢＥＴコマンド、内部当選コマンド、リール停止コマンドなど）をシリアル通信回路５１１の送信データレジスタ５６１に転送し、サブ制御部９１に対して送信させる。尚、いずれかの操作スイッチの操作が検出され、エッジデータが設定された場合でも、次回スイッチ入力判定処理までにクリアされなかった場合には、次回スイッチ入力判定処理でクリアされることとなる。
【０２７２】
メイン制御部４１は、リール回転処理において回転中のリールに対応するストップスイッチの立上りエッジが設定されていると判定した場合に、他の操作スイッチの検出状態がｏｎであるか否かを判定し、他の操作スイッチの検出状態がｏｎであると判定した場合、すなわち他の操作スイッチが操作されている状態で回転中のリールに対応するストップスイッチの操作が検出された場合には、有効な停止操作とせず、対応するリールの停止制御を行わないようになっている。
【０２７３】
これは、ストップスイッチ８Ｌ、８Ｃ、８Ｒのうち２つ以上の操作が検出された場合に、いずれかの操作に基づく停止制御を優先すると、他方の停止制御が遅れてしまい、リールの停止態様が不自然になる等の問題が生じ得る虞があるためであり、上記のように他の操作スイッチが操作されている状態で回転中のリールに対応するストップスイッチの操作が検出されても、対応するリールの停止制御を行わないことで、一方のリールの停止制御によって他方のリールの停止制御が遅れることがないようになっている。
【０２７４】
また、メイン制御部４１は、リール回転処理において回転中のリールに対応するストップスイッチの立上りエッジが設定されていると判定した場合に、他のストップスイッチに限らず、他の操作スイッチの検出状態がｏｎであるか否かを判定し、他の操作スイッチのいずれかの検出状態がｏｎであると判定した場合には、有効な停止操作とせず、対応するリールの停止制御を行わないようになっており、操作スイッチの検出状態のうちストップスイッチの検出状態のみを抽出することなく、例えば、ｏｎを１とし、ｏｆｆを０とした場合に、操作スイッチ全ての検出状態の総和を算出し、２以上であれば、他の操作スイッチが検出状態と判定するなど、操作スイッチ全ての検出状態を一括して判定することが可能となる。
【０２７５】
メイン制御部４１は、前述したスイッチ入力判定処理においていずれかの操作スイッチの検出状態の変化を判定した場合に、エッジデータを設定するとともに、エッジデータが設定されたスイッチ、立上りエッジであるか、立下りエッジであるか、他のスイッチの検出状態を示す操作検出コマンドを生成し、操作検出コマンド格納領域に格納するとともに、操作検出コマンド送信要求を設定する。
【０２７６】
そして、操作検出コマンド送信要求が設定されることで、タイマ割込処理（メイン）におけるコマンド送信処理において、操作検出コマンド格納領域に格納されている操作検出コマンドが読み出され、シリアル通信回路５１１の送信データレジスタ５６１に転送し、サブ制御部９１に対して送信させる。
【０２７７】
このように本実施例では、メイン制御部４１が、１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒが操作されたことを特定可能な操作検出コマンドをサブ制御部９１に対して送信することで、サブ制御部９１が、それぞれの制御状態においてゲームの進行制御に関与する操作スイッチであるか否かに関わらず、メイン制御部４１により検出される操作スイッチが操作されたことが特定できるようになっており、ゲームの進行制御に関与しない操作スイッチの操作に応じて演出を実行可能である。
【０２７８】
尚、本実施例では、いずれかの操作スイッチの検出状態（ｏｎ／ｏｆｆ）が変化したときのみ、その旨を示す操作検出コマンドを送信する構成であるが、メイン制御部４１が、１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒのいずれかが操作されたか否かに関わらず、１枚ＢＥＴスイッチ５、ＭＡＸＢＥＴスイッチ６、スタートスイッチ７、ストップスイッチ８Ｌ、８Ｃ、８Ｒそれぞれのｏｎ／ｏｆｆの状態を特定可能な操作検出コマンドを一定間隔毎に送信する構成としても良く、このような構成であってもサブ制御部９１側で、メイン制御部４１により検出される操作スイッチが操作されたことが特定できるようになっており、ゲームの進行制御に関与しない操作スイッチの操作に応じて演出を実行可能である。
【０２７９】
また、本実施例では、ゲームの進行制御に伴うコマンドは、基本処理において生成されるとともに、送信データレジスタ５６１に転送され、サブ制御部９１に送信される一方で、ゲームの進行制御に関与しない操作スイッチの操作に伴う操作検出コマンドは、タイマ割込処理（メイン）のスイッチ入力判定処理において生成され、その後のタイマ割込処理（メイン）のコマンド送信処理において送信データレジスタ５６１に転送され、サブ制御部９１に送信される構成であるが、基本処理においてゲームの進行制御に関与する操作スイッチの操作が検出されたか否かを判定し、ゲームの進行制御に関与する操作スイッチの操作が検出された場合にゲームを進行させる制御を行うとともに、ゲームの進行制御に伴うコマンドを生成し、コマンドバッファに一時的に格納するとともに、基本処理においてゲームの進行制御に関与しない操作が検出されたか否かも判定し、ゲームの進行制御に関与しない操作スイッチの操作が検出された場合に、ゲームの進行制御に関与しない操作が検出された旨の操作検出コマンドを生成し、ゲームの進行制御に伴うコマンドと同様にコマンドバッファに一時的に格納し、その後のタイマ割込処理（メイン）において送信待ちのコマンドがコマンドバッファに格納されている場合に、送信データレジスタ５６１に転送し、サブ制御部９１に対して送信させる構成としても良く、このような構成とすることで、基本処理の制御状態に関わりなく、コマンドの送信制御を共通化することが可能となる。
【０２８０】
また、このような構成を採った場合には、次回タイマ割込処理（メイン）においてコマンドバッファに格納されたコマンドを送信するまでに複数の送信待ちコマンドが格納される可能性がある。そして、複数のコマンドを連続して送信した場合、サブ制御部９１側で取りこぼす可能性があるうえに、タイマ割込処理（メイン）の処理時間が長くなってしまい、基本処理が停滞してしまう虞があることから、コマンドバッファに格納されたコマンドが複数ある場合には、タイマ割込処理（メイン）１回につき１つのコマンドのみを送信することが好ましい。しかしながら、タイマ割込処理（メイン）１回につき１つのコマンドのみを送信する構成とすると、コマンドの送信タイミングが遅くなってしまうこととなる。
【０２８１】
一方、上記の構成を採った場合、ゲームの進行制御に関与する操作スイッチの操作とゲームの進行制御に関与しない操作スイッチの操作が同時に検出された場合に、ゲームの進行制御に伴うコマンドと、ゲームの進行制御に関与しない操作スイッチの操作に伴う操作検出コマンドと、が同時に生成され、コマンドバッファに格納される可能性がある。この場合、その後のタイマ割込処理（メイン）では、操作検出コマンドよりもゲームの進行制御に伴うコマンドの送信を優先することが好ましく、このようにすることで、ゲームの進行制御に伴うコマンドの送信が遅れてしまうことがなく、ゲームの進行制御に関与しない操作の影響によってゲームの進行制御に関与する操作に応じた演出が遅れてしまうことを防止できる。
【０２８２】
次に、メイン制御部４１が演出制御基板９０に対して送信するコマンドに基づいてサブ制御部９１が実行する演出の制御について説明する。
【０２８３】
サブ制御部９１は、メイン制御部４１からのコマンドを受信した際に、コマンド受信割込処理を実行する。コマンド受信割込処理では、ＲＡＭ９１ｃに設けられた受信用バッファに、コマンド伝送ラインから取得したコマンドを格納する。
【０２８４】
受信用バッファには、最大で１６個のコマンドを格納可能な領域が設けられており、複数のコマンドを蓄積できるようになっている。
【０２８５】
サブ制御部９１は、タイマ割込処理（サブ）において、受信用バッファに未処理のコマンドが格納されているか否かを判定し、未処理のコマンドが格納されている場合には、そのうち最も早い段階で受信したコマンドに基づいてＲＯＭ９１ｂに格納された制御パターンテーブルを参照し、制御パターンテーブルに登録された制御内容に基づいて液晶表示器５１、演出効果ＬＥＤ５２、スピーカ５３、５４、リールＬＥＤ５５等の各種演出装置の出力制御を行う。
【０２８６】
制御パターンテーブルには、複数種類の演出パターン毎に、コマンドの種類に対応する液晶表示器５１の表示パターン、演出効果ＬＥＤ５２の点灯態様、スピーカ５３、５４の出力態様、リールＬＥＤの点灯態様等、これら演出装置の制御パターンが登録されており、サブ制御部９１は、コマンドを受信した際に、制御パターンテーブルの当該ゲームにおいてＲＡＭ９１ｃに設定されている演出パターンに対応して登録された制御パターンのうち、受信したコマンドの種類に対応する制御パターンを参照し、当該制御パターンに基づいて演出装置の出力制御を行う。これにより演出パターン及び遊技の進行状況に応じた演出が実行されることとなる。
【０２８７】
尚、サブ制御部９１は、あるコマンドの受信を契機とする演出の実行中に、新たにコマンドを受信した場合には、実行中の制御パターンに基づく演出を中止し、新たに受信したコマンドに対応する制御パターンに基づく演出を実行するようになっている。すなわち演出が最後まで終了していない状態でも、新たにコマンドを受信すると、受信した新たなコマンドが新たな演出の契機となるコマンドではない場合を除いて実行していた演出はキャンセルされて新たなコマンドに基づく演出が実行されることとなる。
【０２８８】
特に、本実施例では、演出の実行中に賭数の設定操作がなされたとき、すなわちサブ制御部９１が、賭数が設定された旨を示すＢＥＴコマンドを受信したときに、実行中の演出を中止するようになっている。このため、遊技者が、演出を最後まで見るよりも次のゲームを進めたい場合には、演出がキャンセルされ、次のゲームを開始できるので、このような遊技者に対して煩わしい思いをさせることがない。また、演出の実行中にクレジットまたは賭数の精算操作がなされたとき、すなわちサブ制御部９１が、ゲームの終了を示す遊技状態コマンドを受信した後、ゲームの開始を示す内部当選コマンドを受信する前に、払出開始コマンドを受信した場合には、実行中の演出を中止するようになっている。クレジットや賭数の精算を行うのは、遊技を終了する場合であり、このような場合に実行中の演出を終了させることで、遊技を終了する意志があるのに、不要に演出が継続してしまわないようになっている。
【０２８９】
演出パターンは、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じた選択率にて選択され、ＲＡＭ９１ｃに設定される。演出パターンの選択率は、ＲＯＭ９１ｂに格納された演出テーブルに登録されており、サブ制御部９１は、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じて演出テーブルに登録されている選択率を参照し、その選択率に応じて複数種類の演出パターンからいずれかの演出パターンを選択し、選択した演出パターンを当該ゲームの演出パターンとしてＲＡＭ９１ｃに設定するようになっており、同じコマンドを受信しても内部当選コマンドの受信時に選択された演出パターンによって異なる制御パターンが選択されるため、結果として演出パターンによって異なる演出が行われることがある。
【０２９０】
以上、本発明の実施例を図面により説明してきたが、本発明はこの実施例に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。
【０２９１】
前記実施例では、賭数の設定や入賞に伴う遊技用価値の付与に用いる遊技媒体としてメダルを適用したスロットマシンを例として説明した。しかしながら、本発明を具現化するスロットマシンは、パチンコ遊技機で用いられている遊技球を遊技媒体として適用したスロットマシンであっても良い。遊技球を遊技媒体として用いる場合は、例えば、メダル１枚分を遊技球５個分に対応させることができ、上記の実施例で賭数として３を設定する場合は、１５個の遊技球を用いて賭数を設定するものに相当する。
【０２９２】
また、前記実施例では、メダル並びにクレジットを用いて賭数を設定するスロットマシンを用いているが、本発明はこれに限定されるものではなく、遊技球を用いて賭数を設定するスロットマシンや、クレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンであっても良い。
【０２９３】
さらに、流路切替ソレノイド３０や投入メダルセンサ３１など、メダルの投入機構に加えて、遊技球の取込を行う球取込装置、球取込装置により取り込まれた遊技球を検出する取込球検出スイッチを設けるとともに、ホッパーモータ３４ｂや払出センサ３４ｃなど、メダルの払出機構に加えて、遊技球の払出を行う球払出装置、球払出装置により払い出された遊技球を検出する払出球検出スイッチを設け、メダル及び遊技球の双方を用いて賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球が払い出されるスロットマシンに適用しても良い。
【０２９４】
前記実施例１では、遊技機の一例としてスロットマシンを適用した例について説明したが、所定の遊技を行うことが可能な遊技機であり、開閉可能に設けられた開閉体と、開閉体が開放状態であるときに操作可能となる操作手段と、開閉体の開閉状態を検出する開閉状態検出手段と、遊技の進行制御を行う遊技制御手段と、遊技制御手段から受信した制御情報に基づいて演出の制御を行う演出制御手段と、を備える遊技機であれば、本発明を適用可能であり、遊技領域に遊技球を射出して遊技を行うパチンコ遊技機に本発明を適用しても良い。
【実施例２】
【０２９５】
次に、本発明が適用された実施例２のスロットマシンについて説明する。尚、本実施例のスロットマシンは、実施例１と類似した構成であるため、同様の構成については詳細な説明は省略し、ここでは、異なる点について主に説明する。
【０２９６】
実施例１においてメイン制御部４１は、起動処理（メイン）のＳａ３２のステップにおいて前面扉１ｂが開放状態ではないと判定した場合には、異常設定操作を示すエラーコードをレジスタに設定し（Ｓａ３３）、異常設定操作を示すエラーコマンドを生成してコマンドバッファに格納し（Ｓａ３４）、コマンド格納処理１を行ってコマンドバッファ内のエラーコマンドを送信データレジスタ５６１に転送し（Ｓａ３０）、割込を許可して（Ｓａ３１）、エラー処理、すなわち異常設定操作エラー状態に移行する構成であったが、本実施例では、図２５に示すように、Ｓａ３２のステップにおいて前面扉１ｂが開放状態ではないと判定した場合に、設定キースイッチ３７がＯＮ状態であるが前面扉１ｂが開放状態でない旨を示す、設定時扉閉状態フラグを設定し（Ｓａ３５）、Ｓａ１８の処理へ移行する。設定時扉閉状態フラグが設定されているときには、後述するように、所定のタイミングで遊技制御の進行が停止されて不能動化される。
【０２９７】
また、実施例１においてメイン制御部４１は、設定変更処理のＳｃ１５のステップにおいてコマンド格納処理２を行った後にゲーム処理に移行するのに対して、本実施例では、図２６に示すように、Ｓｃ１５のステップの後、遊技を不能動化させるための設定時扉閉状態フラグや不能化フラグが設定されているか否か判定する（Ｓｃ１６）。そして、Ｓｃ１６のステップにおいて当該フラグが設定されていないと判定されたときには、そのままゲーム処理に移行する一方、Ｓｃ１６のステップにおいて当該フラグが設定されていると判定されたときには、設定されている当該フラグをクリアし（Ｓｃ１７）、ゲーム処理に移行する。これにより、設定時扉閉状態フラグや不能化フラグが一旦設定されると設定変更状態に移行されるまで、当該フラグがクリアされないため、遊技を不能動化することができるようになっている。
【０２９８】
また、実施例１においてメイン制御部４１は、ＢＥＴ処理のＳｅ１４のステップにおいて設定キースイッチ３７がｏｎではない場合またはＳｅ１５のステップにおいてＢＥＴカウンタの値が０ではない場合には、Ｓｅ１９のステップに進み、投入メダルセンサ３１により投入メダルの通過が検出されたか否か、すなわち投入メダルの通過が検出された旨を示す投入メダルフラグの有無を判定する構成であるのに対して、本実施例では、図２７に示すように、ＢＥＴ処理のＳｅ１４のステップにおいて設定キースイッチ３７がｏｎではない場合またはＳｅ１５のステップにおいてＢＥＴカウンタの値が０ではない場合には、Ｓｅ６５のステップに進み、設定時扉閉状態フラグが設定されているか否かを判定する。設定時扉閉状態フラグが設定されていると判定されたときには、Ｓｅ６６のステップに進み、現在有効な特定操作が検出されたか否か判定する。現在有効な特定操作の検出とは、投入メダルセンサ３１の検出、１枚ＢＥＴスイッチ５の検出、ＭＡＸＢＥＴスイッチ６の検出、精算スイッチ１０の検出などをいう。
【０２９９】
尚、特定操作については、設定時扉閉状態フラグが設定されているときであっても、後述するスタートスイッチ７への操作が検出されるまでの間においては、有効に検出され、対応する処理（例えば、Ｓｅ１９、Ｓｅ４１、Ｓｅ４９、Ｓｅ５８各々においてＹＥＳと判定されたときの処理など）が実行される。
【０３００】
Ｓｅ６６において、現在有効な特定操作が検出されたと判定されたときには、Ｓｅ６７のステップに進み、スタートスイッチ７の操作を不能化することにより遊技の進行を停止させて不能動化させるための不能化フラグを設定する。一方、Ｓｅ６５で設定時扉閉状態フラグが設定されていないと判定されたとき、Ｓｅ６６で現在有効な特定操作が検出されていないと判定されたとき、およびＳｅ６７において不能化フラグが設定されたときには、Ｓｅ１９のステップに進む。
【０３０１】
また、実施例１では、Ｓｅ３６のステップにおいてＢＥＴカウンタの値が規定数であれば、乱数値格納ワークの値を内部抽選用の乱数値として抽選用ワークに設定し（Ｓｅ３７）、割込を許可し（Ｓｅ３８）、投入不可フラグをＲＡＭ５０７に設定するとともに、流路切替ソレノイド３０をｏｆｆの状態とし、メダルの流路をメダル払出口９側の経路として新たなメダルの投入を禁止し（Ｓｅ３９）、ゲーム開始時の設定を行う（Ｓｅ４０）構成であるのに対して、本実施例では、図２７に示すように、Ｓｅ３６のステップにおいてＢＥＴカウンタの値が規定数であれば、Ｓｅ６８のステップに進む。Ｓｅ６８では、不能化フラグが設定されているか否かを判定する。通常であれば前面扉１ｂを開放させなければ設定変更操作を行うことができないところ、Ｓｅ６８において不能化フラグが設定されていると判定されたときには、設定変更操作が行われた際に前面扉１ｂが閉鎖状態であったような異常時であるため、いずれの処理も行わないループ処理に移行する。これにより、設定変更状態に移行されるまで、遊技が不能動化される。このため、不正行為が行われたことを、遊技場管理者や他の遊技者などによって容易に特定されてしまう。その結果、不正行為を行うことのリスクを高めることにより、不正行為を抑止することができる。
【０３０２】
また、不能動化される直前の遊技の進行状況に関わらず、不能化フラグが設定されているときのスタートスイッチ７の操作が無効にされるため、スタートスイッチ７が操作されたときに不能化フラグが設定されているか否かを判断する処理を行い、不能動化フラグが設定されているときにループ処理に移行することにより、それ以後の遊技の進行を不能動化できる。このため、不能動化するための処理を容易化でき、かつ不能動化するために特殊な制御を行う必要性がなく処理負担が増大することを防止することができる。
【０３０３】
遊技が不能動化されているときに、例えば、設定キースイッチをＯＮ状態にせずに電源を再投入した場合には、当該ループ処理に移行される。このため、不能動化を解除することができない。一方、遊技が不能動化されているときに、例えば、前面扉１ｂを開放させて設定キースイッチをＯＮ状態にして電源を再投入した場合には、図２６の設定変更処理に移行されて、Ｓｃ１７において不能動化フラグが消去されることにより、不能動化を解除することができる。このように、遊技の不能動化は、正規に設定変更状態に移行されることにより解除される。よって、不正行為を行った者にとっては容易に遊技の不能動化を解除することができないのに対し、前面扉１ｂを開放状態にして設定キースイッチ３７を操作することができる者（例えば遊技場管理者）であれば、容易かつ速やかに不能動化を解除することができる。
【０３０４】
以上、本発明の実施例２を図面により説明してきたが、本発明はこの実施例２に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。また、実施例１と同一もしくは類似する構成については、実施例１で説明したものと同様の効果を有するものである。また、実施例１について例示した変形例についても実施例２に適用可能である。
【符号の説明】
【０３０５】
１  スロットマシン
１ｂ  前面扉
２Ｌ、２Ｃ、２Ｒ  リール
６  ＭＡＸＢＥＴスイッチ
７  スタートスイッチ
８Ｌ、８Ｃ、８Ｒ  ストップスイッチ
２５  ドア開放検出スイッチ２５
３７  設定キースイッチ
３８  リセット／設定スイッチ３８
３９  電源スイッチ
４１  メイン制御部
９１  サブ制御部
１００  電源ボックス
５０５  ＣＰＵ
５０６  ＲＯＭ
５０７  ＲＡＭ
５１１  シリアル通信回路
【図１】
2015096232.tif 000003
【図２】
2015096232.tif 000004
【図３】
2015096232.tif 000005
【図４】
2015096232.tif 000006
【図５】
2015096232.tif 000007
【図６】
2015096232.tif 000008
【図７】
2015096232.tif 000009
【図８】
2015096232.tif 000010
【図９】
2015096232.tif 000011
【図１０】
2015096232.tif 000012
【図１１】
2015096232.tif 000013
【図１２】
2015096232.tif 000014
【図１３】
2015096232.tif 000015
【図１４】
2015096232.tif 000016
【図１５】
2015096232.tif 000017
【図１６】
2015096232.tif 000018
【図１７】
2015096232.tif 000019
【図１８】
2015096232.tif 000020
【図１９】
2015096232.tif 000021
【図２０】
2015096232.tif 000022
【図２１】
2015096232.tif 000023
【図２２】
2015096232.tif 000024
【図２３】
2015096232.tif 000025
【図２４】
2015096232.tif 000026
【図２５】
2015096232.tif 000027
【図２６】
2015096232.tif 000028
【図２７】
2015096232.tif 000029