(57)【特許請求の範囲】
【請求項１】
回転方向に沿って複数の図柄が形成された複数の回胴と、
前記回胴を回転駆動する回転駆動手段と、
記憶部の記憶データに基づいて遊技動作に関する処理を実行する制御手段とを備え、
前記回胴を回転させて抽選結果に応じた停止態様で停止させることにより１ゲームが終了する遊技において、
前記制御手段は、
前記遊技動作の進行を制御するメイン処理と、メイン処理を中断して所定時間毎に実行される割込み処理とを有して構成され、
前記メイン処理は、
前記回胴の回転停止を指示する回転停止操作が行われたことに応じて前記回胴の停止位置を決定する停止位置決定手段と、
回転中の前記回胴が、前記停止位置決定手段が決定した停止位置に到達したときに停止命令情報を設定する停止命令設定手段と、
全ての前記回胴について前記停止命令情報が設定されたことを条件に行われる所定の処理を実行した後、次のゲームが開始されるまでに、前記記憶部に記憶された記憶データを初期化する初期化手段と、を含み、
前記割込み処理は、
前記回胴の回転中に、前記回転駆動手段を駆動させるための駆動データを繰り返し更新して前記記憶部に記憶する更新手段と、
前記停止命令設定手段が設定した前記停止命令情報に基づいて、前記駆動データの更新を中止して所定の駆動データを前記記憶部に記憶する停止手段と、
前記停止手段が機能した後、前記記憶部に記憶された時間情報に基づく時間が経過するまで前記記憶部に記憶された前記所定の駆動データを維持する保持手段と、
前記記憶部に記憶された駆動データに基づく駆動信号を前記回転駆動手段に出力する出力手段と、を含み、
前記記憶部は、１ゲームの終了毎に初期化される初期化対象領域と、それ以外の非初期化対象領域とに区分され、前記非初期化対象領域に、前記時間情報と前記駆動データを記憶するための領域が設定されており、
前記保持手段により前記時間情報に基づく時間が経過するまで前記所定の駆動データを維持している期間が終了する前に、前記初期化手段が前記初期化対象領域を初期化して、次のゲームのための処理に移行可能とされた
遊技機。
【請求項２】
前記初期化対象領域に、前記抽選結果、前記停止態様に関する情報を記憶するための領域が設定されている
請求項１に記載の遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回転方向に沿って複数の図柄が形成された回胴を備えた遊技機に係り、特には、遊技の進行に係る各種の変数が保持される記憶部の初期化処理に関する。
【先行技術文献】
【特許文献】
【０００２】
【特許文献１】特開２０１３−２１２２６４号公報
【背景技術】
【０００３】
スロットマシンなどの回胴遊技機では、遊技者がメダル投入口にメダルを投入してスタートレバーを操作すると、これに応じて、回転リールの回転が開始される。そして、遊技者がストップボタンを押して回転リールを停止させたとき、有効な停止ラインに図柄が揃うと、その図柄に応じた配当メダルが払い出されるようになっている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、回胴遊技機では、１ゲームごとに、遊技の進行に係る各種の変数が保持される記憶部（例えばＲＡＭ：Random Access Memory）の初期化（クリア）を行っている。
このような記憶部の初期化処理は、１ゲームを開始するにあたり各種変数を設定し直すために行っており、当該初期化処理が実行されなければ、１ゲームを開始するための各種変数の設定処理を開始できない。このため、次ゲームへの移行が速やかに行われるためには、当該初期化処理を速やかに実行できることが望ましい。
【０００５】
そこで、本発明では、記憶部の初期化処理を速やかに実行し、次ゲームへの移行が速やかに行われるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
第１に、本発明に係る遊技機は、回転方向に沿って複数の図柄が形成された複数の回胴と、前記回胴を回転駆動する回転駆動手段と、記憶部の記憶データに基づいて遊技動作に関する処理を実行する制御手段とを備え、前記回胴を回転させて抽選結果に応じた停止態様で停止させることにより１ゲームが終了する遊技において、前記制御手段は、前記遊技動作の進行を制御するメイン処理と、メイン処理を中断して所定時間毎に実行される割込み処理とを有して構成され、前記メイン処理は、前記回胴の回転停止を指示する回転停止操作が行われたことに応じて前記回胴の停止位置を決定する停止位置決定手段と、回転中の前記回胴が、前記停止位置決定手段が決定した停止位置に到達したときに停止命令情報を設定する停止命令設定手段と、全ての前記回胴について前記停止命令情報が設定されたことを条件に行われる所定の処理を実行した後、次のゲームが開始されるまでに、前記記憶部に記憶された記憶データを初期化する初期化手段と、を含み、前記割込み処理は、前記回胴の回転中に、前記回転駆動手段を駆動させるための駆動データを繰り返し更新して前記記憶部に記憶する更新手段と、前記停止命令設定手段が設定した前記停止命令情報に基づいて、前記駆動データの更新を中止して所定の駆動データを前記記憶部に記憶する停止手段と、前記停止手段が機能した後、前記記憶部に記憶された時間情報に基づく時間が経過するまで前記記憶部に記憶された前記所定の駆動データを維持する保持手段と、前記記憶部に記憶された駆動データに基づく駆動信号を前記回転駆動手段に出力する出力手段と、を含み、前記記憶部は、１ゲームの終了毎に初期化される初期化対象領域と、それ以外の非初期化対象領域とに区分され、前記非初期化対象領域に、前記時間情報と前記駆動データを記憶するための領域が設定されており、前記保持手段により前記時間情報に基づく時間が経過するまで前記所定の駆動データを維持している期間が終了する前に、前記初期化手段が前記初期化対象領域を初期化して、次のゲームのための処理に移行可能とされているものである。
【０００７】
これにより、初期化処理が回胴停止のための停止駆動の完了前に実行される場合であっても、初期化処理において停止駆動で用いる時間情報及び駆動データがクリアされないため、これらの時間情報及び駆動データに基づいて回胴が適正に停止される。
【０００８】
第２に、上記した本発明に係る遊技機においては、前記初期化対象領域に、前記抽選結果、前記停止態様に関する情報を記憶するための領域が設定されていることが望ましい。
これにより、次ゲームへの移行にあたってクリアの必要な情報が１ゲームの終了に応じてクリアされる。
【発明の効果】
【０００９】
本発明によれば、１ゲームの終了時に対応した所定処理を実行した後に速やかに記憶部の初期化処理を行うことができるので、次ゲームへの移行が速やかに行われるようにできる。
【図面の簡単な説明】
【００１０】
【図１】遊技機の正面図である。
【図２】遊技機の平面図（図２Ａ）及び右側面図（図２Ｂ）である。
【図３】遊技機が備える前面パネルの背面図である。
【図４】遊技機が備える本体ケースの正面図である。
【図５】遊技機内部の制御構成の概略的なブロック図である。
【図６】遊技機が備える主制御基板の回路構成を示した図である。
【図７】遊技機が備えるステッピングモータについての説明図である。
【図８】回転リール（回胴）に形成された図柄についての説明図である。
【図９】メイン処理のフローチャートである。
【図１０】タイマ割込み処理のフローチャートである。
【図１１】回胴制御フラグについての説明図である。
【図１２】回胴回転開始設定処理のフローチャートである。
【図１３】励磁出力タイムデータテーブルについての説明図である。
【図１４】回胴回転制御処理のフローチャートである。
【図１５】同じく、回胴回転制御処理のフローチャートである。
【図１６】励磁出力タイムデータテーブルにより実現される起動時の励磁動作について説明するための図である。
【図１７】実施の形態の起動処理についての説明図である。
【図１８】回胴停止処理のフローチャートである。
【図１９】図柄停止制御処理のフローチャートである。
【図２０】停止処理可能位置と停止処理不可能位置の説明図である。
【図２１】初期化処理における初期化対象領域と非初期化対象領域とを模式的に表した図である。
【発明を実施するための形態】
【００１１】
以下、本発明に係る遊技機の実施の形態について、次の順序で説明する。なお、実施の形態ではパチンコ遊技機を例に挙げる。
＜１．回胴遊技機の機構構成＞
＜２．回胴遊技機の制御構成＞
＜３．回胴モータ及び回転リール＞
＜４．メイン処理＞
＜５．タイマ割込み処理＞
＜６．回胴の回転及び停止に係る処理＞
［6-1．回胴制御フラグ］
［6-2．回胴の回転開始〜定常回転中に係る処理］
［6-3．実施の形態の起動処理の意義について］
［6-4．回胴の停止に係る処理］
［6-5．停止操作時の図柄と停止図柄との関係］
＜７．ＲＡＭ初期化処理について＞
＜８．まとめ及び変形例＞
【００１２】
＜１．回胴遊技機の機構構成＞
先ず、図１〜図４により実施の形態のスロットマシンの外観構成を説明する。
図１はスロットマシンの正面図、図２Ａは平面図、図２Ｂは右側面図、図３は前面パネル２の背面図、図４は本体ケース１の正面図である。
【００１３】
本実施の形態のスロットマシンは、図２からわかるように、矩形箱状の本体ケース１と、各種の遊技部材を装着した前面パネル２とが、図示しないヒンジ機構を介して連結され、前面パネル２が本体ケース１に対して開閉可能に構成されている。
【００１４】
図４に示すように、本体ケース１の略中央には、３つの回転リール（回胴）４ａ，４ｂ，４ｃを備える図柄回転ユニット３が配置されている。また、その下側に、メダル払出装置５が配置されている。
各回転リール４ａ，４ｂ，４ｃには、後述する各種図柄、例えばＢＢ（ビッグボーナス）やＲＢ（レギュラーボーナス）用の図柄や、各種のフルーツ図柄、リプレイ図柄などが描かれている。
メダル払出装置５は、メダルを貯留するメダルタンク５ａを有する。また払出ケース５ｂ内に、図５で後述する払出モータ７５、払出接続基板７３、ホッパー基板７４、メダル払出センサ７６等が収納されている。
メダルタンク５ａに貯留されたメダルは、払出モータ７５の回転に基づいて、払出口５ｃから図面手前方向に向けて導出される。なお、限界量を越えて貯留されたメダルは、超過メダル導出部５ｄを通して、補助タンク６に落下するよう構成されている。
【００１５】
メダル払出装置５に隣接して電源基板４１が配置される。また、図柄回転ユニット３の上方に主制御基板４０が配置され、主制御基板４０に隣接して回胴設定基板７１が配置されている。
また図柄回転ユニット３の内部には、図５に示す回胴ＬＥＤ（Light Emitting Diode）中継基板５６と回胴中継基板５３とが設けられ、図柄回転ユニット３に隣接して外部集中端子板７０が配置されている。
【００１６】
さらに、本体ケース１においては、図柄回転ユニット３の側方に前面パネル２の開放（ドアの開放）を検知するためのドア開放センサ３５が設けられている。
【００１７】
図１に示すように、前面パネル２の上部にはＬＣＤ（Liquid Crystal Display）ユニット７が配置されている。このＬＣＤユニット７には、遊技動作を盛り上げるためなどに各種のキャラクタが表示される。
またＬＣＤユニット７の下部には、回転リール４ａ，４ｂ，４ｃを表出させる表示窓８が形成されている。この表示窓８を通しては、各回転リール４ａ，４ｂ，４ｃの回転方向に、各々３個程度の図柄が見えるようにされている。そして、例えば、合計９個の図柄の水平方向の二本（又は三本）と、対角線方向の二本が仮想的な停止ラインとなる。
【００１８】
なお、図柄回転ユニット３の内部には、回転リール４ａ，４ｂ，４ｃが停止した状態において視認される９個の図柄それぞれを内側から照射可能な位置に回胴用ＬＥＤ９０，９１，９２，９３，９４，９５，９６，９７，９８が配置されている（不図示）。それぞれの回胴用ＬＥＤはそれぞれの回転リールの回転状態や停止状態、或いは各種演出に応じて点灯・消灯される。
【００１９】
表示窓８の下方には、遊技状態を示すＬＥＤ群９や、遊技成果として払出されるメダル数を表示する払出表示部１０や、貯留数表示部１１が設けられている。
ＬＥＤ群９は、例えば、当ゲームに投入されたメダルの枚数を示すＬＥＤや再遊技状態を示すＬＥＤ、回胴を回転させる準備が整ったことを示すＬＥＤ（当ゲームの遊技に要する所定枚数のメダルの投入が完了したことを示すＬＥＤ）、メダルの投入の受付状態を示すＬＥＤなどで構成されている。
払出表示部１０は、７セグメントＬＥＤを２個連設して構成されており、払出メダル数を特定すると共に、何らかの異常事態の発生時には、異常内容を表示するエラー表示器としても機能する。
貯留数表示部１１は、クレジット状態で貯留されているメダル数が表示されている。
【００２０】
表示窓８の上方、左、右には、ＬＥＤ演出部１５ａ，１５ｂ，１５ｃが設けられている。ＬＥＤ演出部１５ａ，１５ｂ，１５ｃは、所定の絵柄、意匠が施され、内側に配置されたＬＥＤによって光による演出が実行されるように構成されている。ＬＥＤ演出部１５ａ，１５ｂ，１５ｃで実行される演出は、例えば、ＢＢやＲＢに当選したことを示す演出や、ＡＴ（アシストタイム）やＡＲＴ（アシストリプレイタイム）等の状態を示す演出、ＡＴ中やＡＲＴ中のアシスト演出等である。
なお、個々の説明は省略するが、前面パネル２には、演出や動作状態を提示するためのＬＥＤとして他のＬＥＤが各種配置されている。
【００２１】
前面パネル２の中央右側には、メダルを投入するメダル投入口１２が設けられ、これに近接して、メダル投入口１２に詰まったメダルを返却させるための返却ボタン１３が設けられている。返却ボタン１３の右側には、専用のキー９９を差し込むための鍵穴１００が設けられている。前面パネル２が本体ケース１に対して閉じた状態において、鍵穴１００に差し込まれたキー９９を右へ回すことにより前面パネル２が解錠され（以下「解錠動作」と表記）、前面パネル２の本体ケース１に対する開閉が可能となる。また、鍵穴１００に差し込まれたキー９９を左へ回すことにより、打ち止めやエラーによる遊技の中止状態が解除される（以下「中止解除動作」と表記）。
また、前面パネル２の中央左側には、クレジット状態のメダルを払出すクレジット精算ボタン１４と、クレジット状態のメダルを擬似的に三枚投入するマックス投入ボタン１６とが設けられている。
【００２２】
また、前面パネル２には、回転リール４ａ，４ｂ，４ｃの回転を開始させるためのスタートレバー１７と、回転中の回転リール４ａ，４ｂ，４ｃを停止させるための停止ボタン１８ａ，１８ｂ，１８ｃが設けられている。
遊技者がスタートレバー１７を操作すると、通常は、３つの回転リール４ａ，４ｂ，４ｃが正方向に回転を開始する。但し、内部当選状態を予告するリール演出のために、回転リール４ａ，４ｂ，４ｃの全部又は一部が、変則的に回転（いわゆる「演出回転」）した上で正方向の回転を開始する場合もある。
リール演出としては具体的内容が各種考えられ、例えば、
・極めてゆっくり正方向に回転して静止するスロー演出
・正転と逆転を繰り返した後に、所定時間だけ逆方向に回転して静止する逆回転演出
・第１の所定時間だけ正転と逆転を繰り返した後に静止する第１の揺動演出
・第２の所定時間だけ正転と逆転を繰り返した後に静止する第２の揺動演出
・第２の所定時間だけ正転と逆転を繰り返した後に静止し、さらに、極めてゆっくり正転した後に静止するスロー揺動演出
・第２の時間だけ正転と逆転を繰り返した後に静止し、さらに、所定時間だけ逆転した後に静止する揺動逆回転演出
などが用意されている。そして、このようなリール演出時には、ＬＣＤユニット７におけるキャラクタ演出や、ＬＥＤランプを点滅させるランプ演出や、スピーカを駆動する音声演出の全部又は一部が適宜に選択されて実行される。
【００２３】
前面パネル２の下方には、メダルを蓄える横長の受け皿１９と、払出装置５の払出口５ｃに連通するメダル導出口２０とが設けられている。
また前面パネル２の上方左右、及び下方左右にはスピーカ３０ａ，３０ｂ，３０ｃ，３０ｄが配置されている。
【００２４】
図３に示すように、前面パネル２の裏側は、図１で示したメダル投入口１２に投入されたメダルの選別を行うメダル選別装置２１と、メダル選別装置２１により不適正と判別されたメダルをメダル導出口２０に案内する返却通路２２とが設けられている。
また、前面パネル２の裏側上部には、基板ケース２３が配置されている。この基板ケース２３には、図５で述べる演出制御基板４２、演出インターフェース基板４３、液晶制御基板４４、液晶インターフェース基板４５などが収容されている。
またメダル選別装置２１の側方には、図１に示す各種の遊技部材と主制御基板４０との間の信号を中継する遊技中継基板６０（図５で後述する）が設けられている。
【００２５】
＜２．回胴遊技機の制御構成＞
次に本実施の形態のスロットマシンの制御系の構成について説明する。
図５は、パチンコ遊技機１の内部の制御構成の概略的なブロック図である。本実施の形態のスロットマシンは、その制御構成が主制御基板４０を中心に構成されている。
主制御基板４０は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等を備えたマイクロコンピュータやインターフェースのための回路等が搭載され、スロットマシンの遊技動作全般に係る統括的な制御を行う。例えば主制御基板４０が回転リール４ａ，４ｂ，４ｃを含む各種の遊技部材の動作を制御するとともに、動作状況を把握する。また遊技動作に応じて演出を実行させる。
主制御基板４０は、電源基板４１、演出インターフェース基板４３、回胴中継基板５３、遊技中継基板６０、外部集中端子板７０、回胴設定基板７１、払出接続基板７３との間で各種信号（コマンドや検出信号等）のやりとりを行う。
なお主制御基板４０に搭載されたマイクロコンピュータ等を含めて主制御基板４０の構成体が、請求項に言う「制御手段」に相当する。
【００２６】
電源基板４１は、ＡＣ２４Ｖを受けて、これを整流・平滑して直流電圧を得る。そして電源基板４１はコンバータ回路を備えて各部に必要な電源電圧を生成する。図では主制御基板４０を介して各部に与えられる主制御電源電圧Ｖ１、及び演出インターフェース基板４３を介して各部に与えられる演出制御電源電圧Ｖ２を示している。
また電源基板４１には電源遮断状態を検出する電源監視回路や、主制御基板４０にバックアップ電源電圧を供給するバックアップ電源回路なども設けられている。
【００２７】
演出制御基板４２は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を備えたマイクロコンピュータやインターフェースのための回路等が搭載され、スロットマシンの演出動作に関する制御を行う。
演出制御基板４２は、演出インターフェース基板４３を介して主制御基板４０からのコマンドを受け取る。例えば主制御基板４０は、演出制御基板４２に対して、スピーカ３０（３０ａ〜３０ｄ）による音演出、ＬＥＤランプや冷陰極線管放電管によるランプ演出、ＬＣＤユニット７による図柄演出を実現するための制御コマンドを出力し、演出制御基板４２はその制御コマンドに応じた演出制御処理を行う。
また演出制御基板４２では、主制御基板４０から内部抽選結果を特定する制御コマンド（遊技開始コマンド）受けると、内部抽選結果に対応してアシストタイム当選状態とするか否かのＡＴ抽選を実行する。
なお、演出制御基板４２においてＡＴ抽選に当選した後の所定回数のゲーム（ＡＴ中）では、小役当選状態において、その図柄を停止ラインに整列できるよう、３つの回転リール４の停止順序を遊技者に報知している。
また演出制御基板４２は、主制御基板４０からのリール演出実行を示す制御コマンドを受けると、主制御基板４０で実行するリール演出に対応する演出動作を開始する。
これらのような演出制御動作のため、演出制御基板４２は、演出インターフェース基板４３を通して各部と必要な通信を行う。
【００２８】
演出制御基板４２は、演出インターフェース基板４３、及び液晶インターフェース基板４５を介して液晶制御基板４４に接続されている。
液晶制御基板４４は、ＬＣＤユニット７における画像表示による演出の制御を行う。この液晶制御基板４４には、ＶＤＰ（Video Display Processor）、画像ＲＯＭ、ＶＲＡＭ（Video RAM）、液晶制御ＣＰＵ、液晶制御ＲＯＭ、液晶制御ＲＡＭ等が搭載される。
ＶＤＰは、画像展開処理や画像の描画などの映像出力処理全般の制御を行う。
画像ＲＯＭには、ＶＤＰが画像展開処理を行う画像データ（演出画像データ）が格納されている。
ＶＲＡＭは、ＶＤＰが展開した画像データを一時的に記憶する画像メモリ領域とされる。
液晶制御ＣＰＵは、ＶＤＰが表示制御を行うために必要な制御データを出力する。
液晶制御ＲＯＭには、液晶制御ＣＰＵの表示制御動作手順を記述したプログラムやその表示制御に必要な種々のデータが格納される。
液晶制御ＲＡＭは、ワークエリアやバッファメモリとして機能する。
このような液晶制御基板４４は、演出制御基板４２からの表示演出に関するコマンドを受け付け、それに応じて表示駆動信号を生成する。そして液晶インターフェース基板４５を介してＬＣＤユニット７に表示駆動信号を供給し、画像表示を実行させる。
【００２９】
また、演出制御基板４２は、演出インターフェース基板４３を介してスピーカ中継基板４７を制御し、スピーカ３０ａ〜３０ｄを用いた音演出を実行させる。
また演出制御基板４２は、演出インターフェース基板４３を介して、ＬＥＤ基板４８や回胴ＬＥＤ中継基板５６を経由して各種のＬＥＤによるランプ演出を実現している。
ＬＥＤ基板４８には、例えば図１に示したＬＥＤ演出部１５ａ，１５ｂ，１５ｃとしてのＬＥＤが配置されている。
回胴ＬＥＤ中継基板５６は、第１回胴ＬＥＤ基板５０ａ、第２回胴ＬＥＤ基板５０ｂ、第３回胴ＬＥＤ基板５０ｃについて演出制御基板４２からのＬＥＤ駆動信号を中継する。
第１回胴ＬＥＤ基板５０ａには、回転リール４ａの図柄を内側から照射する回胴用ＬＥＤ９０，９１，９２が配置されている。第２回胴ＬＥＤ基板５０ｂには、回転リール４ｂの図柄を内側から照射する回胴用ＬＥＤ９３，９４，９５が配置されている。また、第３回胴ＬＥＤ基板５０ｃには、回転リール４ｃの図柄を内側から照射する回胴用ＬＥＤ９６，９７，９８が配置されている。
【００３０】
主制御基板４０は、遊技中継基板６０を介して、図５のようにスロットマシンの各種遊技部材に接続されている。
遊技表示基板６１は、遊技状態を示すＬＥＤ群９や、７セグメントＬＥＤを有した払出表示部１０や、同じく７セグメントＬＥＤを有した貯留数表示部１１を搭載している。主制御基板４０は、遊技表示基板６１に対して、遊技中継基板６０を介して制御コマンドを送信し、遊技状態に応じた表示を実行させるように制御している。
【００３１】
始動スイッチ基板６２には、スタートレバー１７による始動スイッチが搭載されている。
停止スイッチ基板６３には停止ボタン１８ａ、１８ｂ、１８ｃによる停止スイッチが搭載されている。
貯留メダル投入スイッチ基板６４には、マックス投入ボタン１６の投入スイッチが搭載されている。
精算スイッチ基板６５には清算ボタン１４の清算スイッチが搭載されている。
主制御基板４０は、これらの基板（６１，６２，６３，６４，６５）のスイッチによる遊技者操作の検出信号を、遊技中継基板６０を介して受信する。
【００３２】
ドアセンサ６６は、前面パネル２の鍵穴１００に対して設けられたセンサである。ドアセンサ６６によって、前述した遊技の中止解除動作を認識可能とされている。
メダル通過センサ６７及びレバー検出センサ６８は、メダル選別装置２１に設けられている。メダル通過センサ６７は、例えばフォトインタラプタで構成され、選別された正規のメダルの通過を検出するセンサである。レバー検知センサ６８は、例えばフォトマイクロセンサで構成され、メダル投入口１２から投入されたメダルの通過を検出するセンサである。つまり、メダル投入口１２から投入されたメダルは、レバー検知センサ６８を通過した後に正規のメダルだけが選別された後、メダル通過センサ６７によりその通過が検出される。
主制御基板４０は、これらのセンサ（６６，６７，６８）の検出信号を、遊技中継基板６０を介して受信する。さらに、主制御基板４０は、受信したセンサの検出信号により投入されたメダルの投入時間や通過方向を検出し、所定の規定に合致した場合にのみ投入メダルとして受け付け、それ以外の場合には投入メダルエラーとして処理する。
ブロッカーソレノイド６９は、不正メダルの通過を阻止するブロッカーをＯＮ／ＯＦＦに駆動する。主制御基板４０は、遊技中継基板６０を介してブロッカーソレノイドを制御する。
【００３３】
また、主制御基板４０は、回胴中継基板５３を経由して、回転リール４ａ，４ｂ，４ｃを回転させる３つのステッピングモータ５４（第１回胴ステッピングモータ５４ａ、第２回胴ステッピングモータ５４ｂ、第３回胴ステッピングモータ５４ｃ）と接続されている。
さらに主制御基板４０は、回胴中継基板５３を経由して、回転リール４ａ，４ｂ，４ｃの原点位置（後述する原点位置１０１）を検出するための３つのインデックスセンサ５５（第１回胴インデックスセンサ５５ａ、第２回胴インデックスセンサ５５ｂ、第３回胴インデックスセンサ５５ｃ）に接続されている。
主制御基板４０は、ステッピングモータ５４ａ，５４ｂ，５４ｃを駆動又は停止させることによって、回転リール４ａ，４ｂ，４ｃの回転動作と、目的位置での停止動作を実現している。また主制御基板４０は、インデックスセンサ５５ａ，５５ｂ，５５ｃの検出信号に基づき、回転リール４ａ，４ｂ，４ｃの原点位置を検知できる。
【００３４】
また、主制御基板４０は、払出接続基板７３を介してメダル払出のための装置部にも接続されている。メダル払出のための装置部として、メダル払出制御を行うホッパー基板７４と、払出モータ７５と、メダル払出センサ７６が設けられている。
ホッパー基板７４は、主制御基板４０からの制御コマンドに基づいて払出モータ７５を回転させて、所定量のメダルを払出しする。
メダル払出センサ７６は、払出メダルの通過を検出する。メダル払出センサ７６による検出信号は、払出メダル枚数が不足したり払出動作が行われないなどの払出異常状態の検出に用いられる。
【００３５】
また主制御基板４０は、外部集中端子板７０に接続されている。外部集中端子板７０は、例えばホールコンピュータに接続されており、主制御基板４０は、外部集中端子板７０を通して、メダルの投入枚数やメダルの払出枚数などをホールコンピュータに出力している。
【００３６】
また主制御基板４０は、回胴設定基板７１にも接続されている。回胴設定基板７１は、係員が設定キースイッチ７２を用いて設定した設定値を示す信号などを出力している。設定値とは、当該スロットマシンで実行される抽選処理の当選確率などを、設定１から設定６まで６段階で規定するもので、遊技ホールの営業戦略に基づいて適宜に設定される。
【００３７】
続いて、図６で主制御基板４０の回路構成を説明する。
図示の通り、主制御基板４０は、ワンチップマイコンによるコントローラ８０と、８ビットパラレルデータを入出力するＩ／Ｏポート回路８３と、カウンタ回路８１と、各部とのインターフェース部を有して構成されている。
【００３８】
コントローラ８０は、ＣＰＵ８０ａ、ＲＯＭ８０ｂ、ＲＡＭ８０ｃの他、割込コントローラ８０ｄやＣＴＣ(Counter/Timer Circuit) ８０ｅ等を内蔵している。
ＣＴＣ８０ｅは、８ビットのカウンタやタイマを集積した回路であり、ＣＰＵ８０ａの処理における周期的割り込みや一定周期のパルス出力作成機能（ビットレートジェネレータ）、時間計測の機能を付与するものである。本例では、ＣＴＣ８０ｅを利用して、ＣＰＵ８０ａに１．４９ｍｓの時間間隔でタイマ割込み（後述の図１０）をかけている。
【００３９】
カウンタ回路８１はハードウェア的に乱数値を生成する回路である。コントローラ８０（ＣＰＵ８０ａ）はカウンタ回路８１で生成された乱数値を利用して抽選処理を行う。
【００４０】
主制御基板４０には、コントローラ８０と図５に示した各基板等とのインターフェースが設けられる。
電源インターフェース８２は電源基板４１の電源回路との間のインターフェースである。
遊技インターフェース８４は遊技中継基板６０との間のインターフェースである。コントローラ８０は、遊技インターフェース８４を介して各種スイッチ、センサの検出信号の入力や、ＬＥＤ制御、ブロッカーソレノイド制御のためのコマンド送信を行う。
回胴モータ駆動部８５は回胴中継基板５３との間のインターフェースである。コントローラ８０は、回胴モータ駆動部８５によりステッピングモータ５４ａ，５４ｂ，５４ｃに対するモータ駆動信号（後述する励磁データφ１〜φ４）の出力を行うと共に、回胴モータ駆動部８５を経由して入力されるインデックスセンサ５５ａ，５５ｂ，５５ｃからの検出信号を取得する。
演出制御インターフェース８６は、コントローラ８０が演出インターフェース基板４３を介して演出制御基板４２へのコマンド送信を行うためのインターフェースである。具体的には例えば８ビットパラレルポートである。
払出接続インターフェース８７は払出接続基板７３とのインターフェースである。
【００４１】
外部インターフェース８８は、外部集中端子板７０を介したホールコンピュータとのインターフェースである。
回胴設定インターフェース８９は、回胴設定基板７１との間のインターフェースである。
【００４２】
＜３．回胴モータ及び回転リール＞
続いて、回転リール４ａ，４ｂ，４ｃを回転させる各ステッピングモータ５４ａ，５４ｂ，５４ｃの駆動方式と回転リール４ａ，４ｂ，４ｃに形成された図柄との関係について図７及び図８を参照して説明する。
本実施の形態において、ステッピングモータ５４ａ，５４ｂ，５４ｃはユニポーラ駆動のステッピングモータとされ、それぞれセンタータップされた２つの駆動巻線を有している。本実施の形態の場合、ステッピングモータ５４ａ，５４ｂ，５４ｃの駆動は１相励磁と２相励磁とを交互に繰り返す１−２相励磁によって行われる。
【００４３】
図７Ａは、ステッピングモータ５４ａ，５４ｂ，５４ｃがそれぞれ有する２つの固定子と、各固定子に巻回された駆動巻線と、回転子の回転位置（矢印）との関係を表した図である。図のようにユニポーラ駆動のステッピングモータにおいては駆動巻線がセンタータップされ、一方の駆動巻線においてセンタータップを境に分割形成されたそれぞれの巻線部を巻線部Ａ、巻線部Ａバーと表記する。また、他方の駆動巻線においてセンタータップを境に分割形成されたそれぞれの巻線部を巻線部Ｂ、巻線部Ｂバーと表記する。
【００４４】
図７Ｂは、１−２相励磁において巻線部Ａ、Ａバー、Ｂ、Ｂバーに与えられる駆動信号φ（駆動電流）を表している。図のように巻線部Ｂバーの駆動信号をφ１、巻線部Ａバーの駆動信号をφ２、巻線部Ｂの駆動信号をφ３、巻線部Ａの駆動信号をφ４とそれぞれ表記する。
図７Ｂに示すように、１−２相励磁においては、駆動信号φ１〜φ４による駆動態様について図中の０〜７の８つのステップが繰り返される。具体的には、
・０ステップ目：φ１＝ｏｎ、φ２＝ｏｆｆ、φ３＝ｏｆｆ、φ４＝ｏｎ
・１ステップ目：φ１＝ｏｆｆ、φ２＝ｏｆｆ、φ３＝ｏｆｆ、φ４＝ｏｎ
・２ステップ目：φ１＝ｏｆｆ、φ２＝ｏｆｆ、φ３＝ｏｎ、φ４＝ｏｎ
・３ステップ目：φ１＝ｏｆｆ、φ２＝ｏｆｆ、φ３＝ｏｎ、φ４＝ｏｆｆ
・４ステップ目：φ１＝ｏｆｆ、φ２＝ｏｎ、φ３＝ｏｎ、φ４＝ｏｆｆ
・５ステップ目：φ１＝ｏｆｆ、φ２＝ｏｎ、φ３＝ｏｆｆ、φ４＝ｏｆｆ
・６ステップ目：φ１＝ｏｎ、φ２＝ｏｎ、φ３＝ｏｆｆ、φ４＝ｏｆｆ
・７ステップ目：φ１＝ｏｎ、φ２＝ｏｆｆ、φ３＝ｏｆｆ、φ４＝ｏｆｆ
が繰り返される。このように１−２相励磁においては、２つの駆動巻線が同時駆動される（つまり２つの固定子が同時励磁される）ステップ（０，２，４，６）と、一方の駆動巻線のみが駆動される（一方の固定子のみが励磁される）ステップ（１，３，５，７）とが交互に繰り返される。
【００４５】
上記のような１−２相励磁により、回転子は、図７Ａに示すように０→１→２→３→４→５→６→７→０の位置に間欠的に移動することになり、２相励磁、すなわち０→２→４→６→０の位置に間欠移動する場合と比較してステップ角を半分できる。具体的に、ステッピングモータ５４ａ，５４ｂ，５４ｃのステップ角は３６０°÷８＝４５°である。
【００４６】
なお、上記説明からも理解されるように、ここで言う「ステップ」とは、ステッピングモータ５４ａ，５４ｂ，５４ｃの最小回転駆動量と換言できるものである。
【００４７】
図７Ｃは、上記のような１−２相励磁を実現するために参照される励磁データテーブルについての説明図である。
励磁データテーブルにおいては、励磁ポインタＰＴの０〜７が上記の０〜７のステップにそれぞれ対応しており、励磁ポインタＰＴの０〜７のそれぞれに対しては駆動信号φ１〜φ４のｏｎ／ｏｆｆを表す４ビットの励磁データが対応付けられている。なお、図７Ｃでは、それぞれの励磁データの１６進数表記と励磁ポインタＰＴの０〜７のそれぞれに対応する２相励磁／１相励磁の別も併せて示している。
ここで以下、駆動信号φ１〜φ４の各々に関して、各駆動信号φのｏｎ／ｏｆｆを表す各１ビットのデータのことを「励磁データ」と表記する。また、駆動信号φ１についての励磁データについては「励磁データφ１」、駆動信号φ２についての励磁データについては「励磁データφ２」と表記する。同様に、駆動信号φ３についての励磁データは「励磁データφ３」、駆動信号φ４についての励磁データは「励磁データφ４」と表記する。
【００４８】
後述もするが、主制御基板４０のＣＰＵ８０ａは、このような励磁データテーブルを参照した結果に基づきステッピングモータ５４ａ，５４ｂ，５４ｃの駆動制御を行う。具体的には、励磁ポインタＰＴを０→１→２→・・・→７→０→・・・と循環させつつ、現在の励磁ポインタＰＴの値に対応する励磁データφ１〜φ４に基づいてステッピングモータ５４ａ，５４ｂ，５４ｃが駆動されるように制御を行う。
励磁ポインタＰＴの最短更新周期は、１．４９ｍｓごとに起動されるタイマ割込み処理（図１０）ごとの周期とされる。
なお、励磁データテーブルは、ＲＯＭ８０ｂ等のＣＰＵ８０ａが読み出し可能な記憶手段に対して記憶されている。
【００４９】
図８は、回転リール４ａ，４ｂ，４ｃに形成された図柄についての説明図である。
本例において、回転リール４ａ，４ｂ，４ｃの表面には、回転方向に沿って２１コマ分の図柄が配置されている。回転リール４ａ，４ｂ，４ｃのそれぞれにおいて、図柄の種類は１０種類（赤７、白７、バー、キャラ、チェリー、すいか、ベル、リプレイ、はずれ１、はずれ２）とされ、それらが所定の順序で配列されている。図中では、回転リール４ａに形成された２１コマの図柄をそれぞれ図柄４ａ１，４ａ２，・・・，４ａ２１と表している。同様に、回転リール４ｂに形成された２１コマの図柄を図柄４ｂ１，４ｂ２，・・・，４ｂ２１、回転リール４ｃに形成された２１コマの図柄を図柄４ｃ１，４ｃ２，・・・，４ｃ２１と表している。各図柄の符号の末尾に付した番号は、その図柄の番号を表している。
【００５０】
回転リール４ａ，４ｂ，４ｃにおいて、各図柄は等間隔で配置され、図中では図柄の切れ目位置を破線で表している。回転リール４ａ，４ｂ，４ｃにおいては、所定の図柄切れ目位置が原点位置１０１とされている。本例における原点位置１０１は、それぞれ１番目の図柄である図柄４ａ１，４ｂ１，４ｃ１と、２１番目の図柄である図柄４ａ２１，４ｂ２１，４ｃ２１との間の図柄切れ目位置にそれぞれ設定されている。
【００５１】
図中の矢印Ｒは、定常回転中（正方向回転中）における回転リール４ａ，４ｂ，４ｃの回転方向を表している。このことから理解されるように、各図柄に付した番号は、原点位置１０１を起点として、定常回転中において図柄が遷移する順番を表している。
【００５２】
ここで、本例においては、ステッピングモータ５４ａ，５４ｂ，５４ｃが１回転すると回転リール４ａ，４ｂ，４ｃがそれぞれ１／６３回転するようにステッピングモータ５４ａ，５４ｂ，５４ｃと回転リール４ａ，４ｂ，４ｃとの間の回転比が設定されている。換言すれば、回転リール４ａ，４ｂ，４ｃを１回転させるにはステッピングモータ５４ａ，５４ｂ，５４ｃを６３回転させることを要する。
このため、本例においては、回転リール４ａ，４ｂ，４ｃを１回転させるために必要なステッピングモータ５４ａ，５４ｂ，５４ｃの駆動ステップ数は８×６３＝５０４とされている。
【００５３】
本例における回転リール４ａ，４ｂ，４ｃには２１コマの図柄が等間隔で形成されているため、図柄１コマ当たりのステップ数は５０４÷２１＝２４ステップである。
これに応じ、各図柄については、ステップ位置として計２４の位置を検出可能とされている。ここで、図柄中のステップ位置は、後の図１５で説明するステップＳ４２９によってタイマ割込みごとに図柄ステップ数がデクリメント（−１）されていくことで検出可能とされる。すなわち、各図柄中で検出可能なステップ位置は、２４番（先頭ステップ位置）〜１番（最終ステップ位置）の２４個である。このとき、図１５の処理では、図柄ステップ数＝０、すなわちその図柄の最終ステップ位置に到達すると、その後のステップＳ４３４の処理で即座に図柄ステップ数＝２４とされる。このため、０番のステップ位置は、次の図柄における２４番のステップ位置と同義となる。
【００５４】
また、各図柄については、２４（０）番〜１番のステップ位置のうち所定のステップ位置がその図柄の停止位置（停止許可ステップ位置）として定められている。具体的には、８番のステップ位置が図柄の停止許可ステップ位置として定められている。回転リール４の停止時には停止図柄が決定され、該停止図柄で回転リール４を停止させるが、この際、回転リール４を停止させる位置は停止図柄中のどのステップ位置でも良いわけではなく、８番のステップ位置に達したことに応じて停止を許可するように定められている。なお、この点については後の「回胴の停止に係る処理」として改めて説明する。
【００５５】
＜４．メイン処理＞
続いて、主制御基板４０のＣＰＵ８０ａが実行する各種の処理について説明する。ＣＰＵ８０ａは、主として電源投入時に開始される無限ループ状のメイン処理と、ＣＴＣ８０ｅからの定期割込みで一定時間毎に起動されるマスク可能な(Maskable Interrupt)タイマ割込み処理とを実行する。
【００５６】
先ずは図９のフローチャートにより、ＣＰＵ８０ａが実行するメイン処理について説明する。
ＣＰＵ８０ａは、スロットマシンの電源が投入されるとステップＳ１０１の初期設定処理を実行する。ここで、電源投入後の状態としては、電断前に実行されていた処理を再開してホットスタートするか、或いは、ステップＳ１０２の処理に移行してコールドスタートするかの何れかとなる。
例えば、営業開始前に係員が前述した設定キースイッチ７２を操作して抽選処理の当選確率などを設定した場合には、コールドスタート処理となるが、そのような係員の操作が無く、且つ異常が検出されない場合には、遊技動作をホットスタートする。
【００５７】
ここで、ホットスタートである場合、ＣＰＵ８０ａはステップＳ１０１の初期設定処理において、所定の電断復帰処理を実行する。該電断復帰処理としては、電断が
ａ）リール演出中であった場合
ｂ）起動中であった場合
ｃ）起動が終了し定常回転中であった場合
ｄ）停止ボタン１８ａ，１８ｂ，１８ｃが操作された後であった場合
のそれぞれに対応した処理を実行する。具体的に、ａ）のケースでは、リール演出を最初からやり直すための各種設定処理、ｂ）又はｃ）のケースでは回転リール４ａ，４ｂ，４ｃの起動をやり直すための各種設定処理、ｄ）のケースでは電断前の停止操作に応じて実行されていた停止制御を再開させるための各種設定処理をそれぞれ実行する。なお、このようなホットスタート時に対応して実行される電断復帰処理の具体的な内容については、例えば特開２０１３−２１２２６４号などにも記載されているため、詳しくはそちらを参照されたい。
【００５８】
なお、ＣＰＵ８０ａは、電断時に対応しては、電源基板４１より供給される電源遮断を通知する信号を受けて、マスク不能のＮＭＩ(Non Maskable Interrupt)割込み処理を実行する。このＮＭＩ割込み処理では、ＲＡＭ８０ｃの所定領域についてのチェックサム演算及び算出したチェックサム値の保持やバックアップフラグのセット、及びレジスタの値の退避処理等が実行されるが、詳細な内容については上記の特開２０１３−２１２２６４号などを参照されたい。
【００５９】
一方、コールドスタートである場合、ＣＰＵ８０ａはステップＳ１０２〜Ｓ１１７で表す一連のメインループ処理を繰返す。ステップＳ１０２〜Ｓ１１７のメインループ処理は、１ゲームごとに繰り返し実行されるものである。なお、１ゲームの期間は、回転リール４を回転させて抽選結果に応じた停止態様で停止させるまでの期間を指す。
【００６０】
先ず、ステップＳ１０２でＣＰＵ８０ａは、ＲＡＭ初期化処理を実行する。すなわち、ＲＡＭ８０ｃのワークエリアにおける所定領域を０クリアする。
なお、本実施の形態のＲＡＭ初期化処理に関する説明は後に改めて行う。
【００６１】
続くステップＳ１０３でＣＰＵ８０ａは、現在のゲームにおける遊技状態フラグを生成する。遊技状態フラグとは、現在のゲームが「ボーナスゲーム中」か「ボーナス内部当選中」か「通常ゲーム中」かなどの遊技状態を特定するフラグである。
【００６２】
さらに、ＣＰＵ８０ａは次のステップＳ１０４で遊技メダル投入処理を実行する。すなわち、メダル投入口１２から実際に投入されたメダル、及び、マックス投入ボタン１６の押下によって擬似的に投入されたメダルについての投入メダル管理処理が実行される。この投入メダル管理処理では、投入又は擬似投入されたメダルの枚数を判定し、その後、スタートレバー１７がオン操作されるとサブルーチン処理を終了する。
なおこの際、メダルの投入に応じて、その旨を表す制御コマンド（投入コマンド）が演出制御インターフェース８６における送信バッファにセットされ、後述するタイマ割込み処理（図１０）のコマンド出力処理（Ｓ２０５）において、演出制御基板４２に送信される。なお、このタイミングでは、遊技者による清算動作を示す清算コマンドなどが送信されることもある。
【００６３】
上記のステップＳ１０４によりスタートレバー１７がオン操作されて遊技メダル投入処理が終了すると、ＣＰＵ８０ａはステップＳ１０５で内部抽選用乱数抽出処理を実行する。具体的には、カウンタ回路８１に保持されているカウンタ値を取得する。取得したカウンタ値は、乱数値としてＲＡＭ８０ｃの所定の番地に保持される。
【００６４】
そして、続くステップＳ１０６でＣＰＵ８０ａは、記憶された乱数値に基づいて内部抽選処理（図柄抽選処理）を実行する。図柄抽選処理では、ボーナス図柄への当選か否か、小役図柄への当選か否か、再遊技を示すリプレイ図柄への当選か否かが決定され、決定された抽選結果を示す制御コマンド（遊技開始コマンド）が演出制御インターフェース８６における送信バッファにセットされ、タイマ割込み処理のコマンド出力処理（Ｓ２０５）によって演出制御基板４２に送信される。なお、小役図柄としては、例えば、「チェリー図柄」（４ａ１０，４ｂ３，４ｃ９）、「ベル図柄」（４ａ４，４ｂ５，４ｃ３等）、「すいか図柄」（４ａ９，４ｂ１２，４ｃ１等）などを例示することができる。
【００６５】
ステップＳ１０６の内部抽選処理を実行したことに応じて、ＣＰＵ８０ａは次のステップＳ１０７でリール演出を実行するか否かを決定するリール演出抽選処理を実行する。なお、リール演出抽選処理において選出可能な演出は、内部抽選処理の結果に対応して定められている。例えば、「すいか図柄」等の所定の図柄に内部当選状態であれば、所定の当選確率に基づいて「極めてゆっくり正方向に回転して静止するスロー演出」等の所定のリール演出が選出可能となる。
【００６６】
ステップＳ１０７のリール演出抽選処理を実行したことに応じて、ＣＰＵ８０ａは次のステップＳ１０８で停止図柄決定初期化処理として後述する図柄停止制御処理（図１８のステップＳ５１０）で用いる各種データの初期化を実行した上で、次のステップＳ１０９で回転リール４ａ〜４ｃの回転を開始させるべく回胴回転開始設定処理を実行する。
ステップＳ１０９の回胴回転開始設定処理は、リール演出抽選に当選しているか否かによって処理内容が異なっている。
ここで、リール演出は、スタートレバー１７の操作に応じて実行される。つまり、リール演出抽選に当選している場合には、スタートレバー１７の操作に応じてリール演出が実行された上で回転リール４ａ，４ｂ，４ｃが一旦停止し、その後に改めて回転リール４ａ，４ｂ，４ｃが起動（加速回転）されて一定速度による定常回転状態に遷移する。
リール演出抽選に当選している場合、ステップＳ１０９の回胴回転開始設定処理においては、回転リール４ａ，４ｂ，４ｃを演出回転させた後に改めて定常回転状態に向けて起動させるための各種の設定処理が実行される。
一方、リール演出抽選に当選していない場合、ステップＳ１０９の回胴回転開始設定処理では回転リール４ａ，４ｂ，４ｃを定常回転状態に向けて起動させるための各種の設定処理が実行される。
なお、当該ステップＳ１０９で実行される具体的な処理の内容については後の図１２で改めて説明する。
【００６７】
ところで、遊技者は、スタートレバー１７の操作に応じて或るリール演出が実行された場合には、そのリール演出の種類に応じた所定の図柄に内部当選していることを推理できる。遊技者は、このような推理から目標とした図柄が停止ライン上に揃うように停止操作を行う。推理が当った場合であって、且つ、停止タイミングが適切な場合に限り、内部当選状態が実効化されて所定のメダルが払出される。
【００６８】
ＣＰＵ８０ａは、ステップＳ１０９の回胴回転開始設定処理を実行したことに応じ、次のステップＳ１１０で回胴停止処理を実行する。
回胴停止処理では、停止ボタン１８ａ，１８ｂ，１８ｃの操作に応じて、回転リール４ａ，４ｂ，４ｃの停止図柄を決定するための処理や、回転リール４ａ，４ｂ，４ｃを停止図柄で停止させるための各種データの設定処理が行われる。また、回胴停止処理では、停止ライン上に停止された図柄の照合処理も行われる。
なお、ステップＳ１１０の回胴停止処理として実行される具体的な処理の内容については後の図１８により改めて説明する。
【００６９】
なお、上記の回胴停止処理においては、内部抽選処理（Ｓ１０６）の当否結果に沿うように、回転リール４ａ，４ｂ，４ｃのうち対応する回転リール４を停止制御する。すなわち、内部抽選処理の結果、何らかの内部当選状態であれば、遊技者の適切な停止操作を条件として、当選結果に合うよう回転リール４ａ，４ｂ，４ｃの図柄を整列させる。但し、遊技者が停止ボタン１８を押すタイミングや、停止操作の順番が不適切である場合には、ハズレ状態の図柄で停止される。この結果、折角の小役当選も無駄になるが、ボーナス当選については、次回のゲーム以降も持ち越される。但し、リール演出が実行された場合には、その示唆に沿って正しい停止操作を実行すれば、メダルの取りこぼしが回避可能となる。
【００７０】
ＣＰＵ８０ａは、ステップＳ１１０の回胴停止処理を実行したことに応じ、次のステップＳ１１１で入賞判定処理を実行する。すなわち、ステップＳ１１０の回胴停止処理における上記の照合処理の結果に基づき、停止ライン上に当選図柄（当選役）が揃ったか否かを判定すると共に、当該判定結果に応じたメダルの払出枚数を算出する。
なお、入賞判定処理では、停止ライン上に当選図柄が揃ったか否かの判定結果を示す制御コマンド（入賞情報コマンド）を演出制御基板４２に送信するべく、入賞情報コマンドを演出制御インターフェース８６における送信バッファにセットする処理も行われる。
また、入賞判定処理では、算出した払出枚数分のメダル払出をメダル払出装置５に実行させるべく、当該払出枚数によるメダル払出を指示する制御コマンドを払出接続インターフェース８７における送信バッファにセットする処理も行われる。
【００７１】
続くステップＳ１１２でＣＰＵ８０ａは、メダル払出枚数監視処理として、メダル払出センサ７６の検出信号に基づき払出メダル枚数をカウントすると共に、メダル払出に応じてクレジットの値を更新する処理を行う。
なお、メダル払出枚数監視処理では、メダル払出を示す制御コマンド（払出コマンド）を演出制御基板４２に送信するべく、払出コマンドを演出制御インターフェース８６における送信バッファにセットする処理も行われる。
【００７２】
さらに、次のステップＳ１１３でＣＰＵ８０ａは、再遊技設定処理を実行する。再遊技設定処理では、リプレイ当選状態か否かを判定し、リプレイ当選状態であれば、再遊技動作の開始処理を実行し、ステップＳ１１４に進む。リプレイ当選状態でない場合には、再遊技動作の開始処理は実行せずにステップＳ１１４に進む。
【００７３】
ステップＳ１１４でＣＰＵ８０ａは、現在がボーナスゲーム中か否かを判定する。ボーナスゲーム中であれば、ＣＰＵ８０ａはステップＳ１１６のボーナス作動中処理としてボーナス作動中である場合に対応した所定処理を実行した上で、先のステップＳ１０２に戻る。
【００７４】
一方、現在がボーナスゲーム中でなかった場合、ＣＰＵ８０ａはステップＳ１１５でボーナス図柄が揃っているか否かを判定し、ボーナス図柄が揃っている場合には、ステップＳ１１７のボーナス作動開始処理としてボーナス開始時に対応した各種の設定処理を実行した上で、ステップＳ１０２に戻る。
ボーナス図柄が揃っていなかった場合、ＣＰＵ８０ａはステップＳ１１７のボーナス作動開始処理をパスしてステップＳ１０２に戻る。
【００７５】
＜５．タイマ割込み処理＞
続いて、図１０を参照して１．４９ｍｓごとに起動されるタイマ割込み処理について説明する。
先ず、ＣＰＵ８０ａはステップＳ２０１でレジスタの値を退避させた上で（レジスタ退避処理）、ステップＳ２０２で各種スイッチ信号やセンサ信号を受ける入力ポートのデータを取得し、例えばＲＡＭ８０ｃの所定領域に記憶させる（ポート入力処理）。なお、センサ信号には、メダル通過センサ６７やメダル払出センサ７６、第１回胴インデックスセンサ５５ａ、第２回胴インデックスセンサ５５ｂ及び第３回胴インデックスセンサ５５ｃの各インデックスセンサ５５、及びドアセンサ６６等からの検出信号が含まれる。また、ポート入力処理では、カウンタ回路８１からの乱数値の取り込みも行われる。
【００７６】
次に、ＣＰＵ８０ａはステップＳ２０３で回胴回転制御処理を実行する。回胴回転制御処理は、図９のメイン処理における回胴回転開始設定処理（Ｓ１０９）や回胴停止処理（Ｓ１１０）での設定データに基づいて、実際にステッピングモータ５４ａ，５４ｂ，５４ｃを回転／停止させるための励磁データφ１〜φ４をＲＡＭ８０ｃに用意された出力バッファにセットする処理となる。
なお、ステップＳ２０３の回胴回転制御処理については後の図１４及び図１５により改めて説明する。
【００７７】
続くステップＳ２０４でＣＰＵ８０ａは、定期更新処理として各種の対象タイマについての更新処理を実行した上で、ステップＳ２０５でコマンド出力処理を実行する。すなわち、演出制御インターフェース８６における送信バッファにセットされている制御コマンドを１バイト毎に演出制御基板４２に出力する。
【００７８】
次のステップＳ２０６でＣＰＵ８０ａは、表示・モータ出力処理として各種ランプの表示動作を更新すると共にステップＳ２０３でセットした励磁データφ１〜φ４を回胴モータ駆動部８５を介してステッピングモータ５４ａ，５４ｂ，５４ｃに出力させる。なお、このステップＳ２０６で表示更新されるランプには、ＬＥＤ群９として設けられたランプ（例えば回胴を回転させる準備が整ったことを示すＬＥＤやメダルの投入受付状態を示すＬＥＤ、投入されたメダルの枚数を示すＬＥＤ等）が含まれている。
【００７９】
さらに、ＣＰＵ８０ａは、次のステップＳ２０７で異常監視処理を実行し、ステップＳ２０８で外部情報信号出力処理を実行する。ステップＳ２０７の異常監視処理では、前述したレバー検知センサ６８やメダル払出センサ７６、ドア開放センサ３５の検出信号に基づく異常の有無の判定と判定結果に応じた処理を実行する。また、ステップＳ２０８の外部情報信号出力処理は、前述した外部集中端子板７０を介した情報出力に係る処理であり、具体的には、払出したメダルなどの情報をホールコンピュータに出力する処理を実行する。
【００８０】
続くステップＳ２０９でＣＰＵ８０ａは、マックス投入ボタン有効フラグを確認し、マックス投入ボタン有効フラグが「１」（オン）であればステップＳ２１０でマックス投入ボタン１６が操作されているか否かを判別する。なお、マックス投入ボタン有効フラグは、１ゲームに必要な枚数のコインが投入されたことに応じてオン、それ以外の場合はオフ（「０」）とされるフラグである。
ステップＳ２１０において、マックス投入ボタン１６が操作されていた場合、ＣＰＵ８０ａはステップＳ２１１でマックス投入操作コマンドをセットし、ステップＳ２１２に進む。
【００８１】
一方、ステップＳ２０９でマックス投入ボタン有効フラグが「０」であった場合、又はステップＳ２１０でマックス投入ボタン１６が操作されていなかった場合には、ＣＰＵ８０ａはそのままステップＳ２１２に処理を進める。
【００８２】
ステップＳ２１２でＣＰＵ８０ａは、先のステップＳ２０１の処理で退避したレジスタの値を復帰させる。ステップＳ２１２のレジスタ復帰処理を実行したことに応じ、ＣＰＵ８０ａはタイマ割込み処理を終える。
【００８３】
＜６．回胴の回転及び停止に係る処理＞
［6-1．回胴制御フラグ］
続いて、回転リール４ａ〜４ｃの回転と停止に係る処理について説明する。
先ずは、回転リール４ａ〜４ｃの回転と停止に係る処理で用いられる回胴制御フラグＦＧａ〜ＦＧｃについて説明しておく。
本実施の形態においては、３つの回転リール４ａ〜４ｃに対応してそれぞれ各１バイト長（８ビット長）の回胴制御フラグＦＧａ〜ＦＧｃが用意され、該回胴制御フラグＦＧａ〜ＦＧｃの各バイトの値に基づいて演出回転、及び起動回転（加速回転）から完全停止までの回転動作の制御が行われる。
【００８４】
図１１Ａは、回胴制御フラグＦＧａ〜ＦＧｃのデータ構造を例示している。
回胴制御フラグＦＧａ〜ＦＧｃの各々は、それぞれ１ビットで成る制御中フラグＦ０、リール演出中フラグＦ１、回胴センサＯＮフラグＦ２、停止命令フラグＦ３、停止信号検出フラグＦ４、回胴起動済みフラグＦ５、回胴起動フラグＦ６、回胴停止中フラグＦ７の８ビットで構成されている。各フラグＦのビット位置は、そのフラグＦに付した番号が表すビット位置と一致している。
【００８５】
図１１Ｂは、各フラグＦ７〜Ｆ０の意義についての説明図である。
制御中フラグＦ０は、回転リール４が回転制御中であるか否かを表し、スタートレバー１７のＯＮ操作による回転開始から、停止ボタン１８のＯＮ操作に応じた完全停止状態までの間はＦ０＝１となる。リール演出中フラグＦ１は、回転リール４を変則回転させるリール演出中であることをＦ１＝１により表す。回胴起動中フラグＦ６は、回転リール４を定常回転としての一定速度による回転状態まで加速させる起動動作中であることをＦ６＝１で表す。回胴起動済みフラグＦ５は、起動を終えた回転リール４が定常回転していることをＦ５＝１で表す。
【００８６】
また、停止信号検出フラグＦ４は、遊技者が停止ボタン１８をＯＮ操作したことが検出されるとＦ４＝１となり、停止命令フラグＦ３は、その後の滑り（スベリ）制御を経てメイン処理の回胴停止処理（Ｓ１１０）で停止図柄への到達が検出されたことに応じてＦ３＝１となる。
回胴停止中フラグＦ７は、停止図柄における所定の停止ステップ位置への到達に応じてＦ７＝１となる。このＦ７＝１となるタイミングは、後述する停止のための全相励磁が開始するタイミングに相当する。なお、回胴停止中フラグＦ７は、後の図１２により説明するステップＳ３０７で回転リール４の起動前に回胴制御フラグＦＧ＝０１ｈにセットされることでＦ７＝０となる。
【００８７】
また、回胴センサＯＮフラグＦ２は、各回転リール４が回転を開始した後、原点位置１０１に達する毎にインデックスセンサ５５がＯＮすること応じてＦ２＝１にセットされる。回胴センサＯＮフラグＦ２は、遊技者による停止操作を受け付けるか否かを規定しており、Ｆ２＝１となった後の停止操作が有効な停止操作として受け付けられる。
【００８８】
［6-2．回胴の回転開始〜定常回転中に係る処理］
回転リール４ａ〜４ｃの回転動作や停止動作は、図９に示したメイン処理における回胴回転開始設定処理（Ｓ１０９）及び回胴停止処理（Ｓ１１０）と、図１０に示したタイマ割込み処理における回胴回転制御処理（Ｓ２０３）とが協働(cooperation) することで実現される。
以下、これら回胴回転開始設定処理、回胴停止処理、及び回胴回転制御処理について、回胴の回転開始〜定常回転中と、回転停止との観点で分けて説明する。
【００８９】
先ずは図１２のフローチャートにより、回胴回転開始設定処理について説明する。
図１２において、ＣＰＵ８０ａは、ステップＳ３０１でリール演出フラグを取得し、ステップＳ３０２でリール演出抽選に当選しているか否かを判別する。リール演出フラグは、図９のメイン処理におけるリール演出抽選処理（Ｓ１０７）の抽選結果を表すフラグであり、リール演出抽選の当否及び当選したリール演出の種類を表す。
【００９０】
リール演出抽選に当選していた場合、ＣＰＵ８０ａはステップＳ３０３でリール演出開始設定・待機処理を実行する。すなわち、予め用意されたモータ動作テーブルのうちから当選したリール演出の種類に応じたモータ動作テーブルをステッピングモータ５４ａ，５４ｂ，５４ｃごとに選択すると共に、選択したモータ動作テーブルに格納されたリール演出時間に基づく時間長分の待機処理を行う。
ここで、選択したモータ動作テーブルに基づく回転制御のための処理は、図１０に示したタイマ割込み処理における回胴回転制御処理（Ｓ２０３）で実行される。具体的には、後の図１４に示すリール演出中処理（Ｓ４０４）を経てタイマ割込みごとに対応する励磁データφ１〜φ４を出力することで実行される。上記の待機処理は、このようなタイマ割込み処理における回胴回転制御処理で実現されるリール演出動作が終了するまで待機する処理となる。
【００９１】
ここで、図１４を参照して分かるように、ステップＳ４０４のリール演出中処理が実行されるためには、前述した回胴制御フラグＦＧにおける制御中フラグＦ０及びリール演出中フラグＦ２が共に「１」とされている必要がある（Ｓ４０２及びＳ４０３を参照）。このため、ステップＳ３０３のリール演出開始設定・待機処理においては、回胴制御フラグＦＧａ〜ＦＧｃのうちリール演出を要する回胴制御フラグＦＧの値を０３ｈにセットする。ＦＧ＝０３ｈは、その回胴制御フラグＦＧについて、制御中フラグＦ０と、リール演出中フラグＦ１とが「１」にセットされたことを意味する。
リール演出を実行しない回転リールについては、その回胴制御フラグＦＧを００ｈに初期設定する。ＦＧ＝００ｈは、制御中フラグＦ０＝０であることを意味するので、その回転リールは停止状態を維持する。
【００９２】
ステップＳ３０３によるリール演出開始設定・待機処理が完了した場合（つまりリール演出が完了した場合）、又は先のステップＳ３０２でリール演出抽選に当選していないとの否定結果が得られた場合、ＣＰＵ８０ａは、ステップＳ３０４のウェイトタイマ取得処理及び続くステップＳ３０５の指定数割込み待ち処理を実行した上で、次のステップＳ３０６でウェイトタイマを４．１ｓにセットする。このウェイトタイマのセットにより、４．１ｓのタイムカウントがスタートされる。
ここで、４．１ｓは、ゲーム間の時間間隔として最低限空けるべき時間長である。このようにゲーム間の時間間隔として最低限の間隔が定められていることで、遊技者がメダルを過大消費してしまうことの防止が図られている。
ステップＳ３０４のウェイトタイマ取得処理では、１ゲーム前に実行されたステップＳ３０６のタイマセット処理によりカウントスタートされたウェイトタイマの値が取得される。ステップＳ３０５の待ち処理では、このように取得したウェイトタイマの値に応じたタイマ割込回数（取得ウェイトタイマ値÷１．４９ｍｓ）分の待機を行う。
これにより、ゲーム間の間隔が最低でも４．１ｓ以上空けられる。
なお、４．１ｓは一例であって、適宜変更が可能である。
【００９３】
ＣＰＵ８０ａは、ステップＳ３０６のタイマセット処理を実行したことに応じ、ステップＳ３０７で回胴制御フラグＦＧａ〜ＦＧｃを０１ｈにセットする。ここで、回胴制御フラグＦＧ＝０１ｈとは、制御中フラグＦ０＝１で、他のフラグＦ１〜Ｆ７が全て０を意味する。このように制御中フラグＦ０のみが「１」に設定されたことで、その後のタイマ割込み処理の回胴回転制御処理（Ｓ２０３）によって、３つの回転リール４ａ〜４ｃを定常回転に向けて起動させるための制御が開始される（図１４及び図１５を参照）。
【００９４】
次のステップＳ３０８でＣＰＵ８０ａは、起動用のモータ動作テーブルをセットする。すなわち、ステッピングモータ５４ａ〜５４ｃを定常回転に向けて加速回転させるためのモータ動作を実現するためのモータ動作テーブルをセットする。
本実施の形態の場合、起動用のモータ動作テーブルとしては、図１３に示す励磁出力タイムデータテーブルをセットするが、これについては後に改めて説明する。
タイマ割込み処理の回胴回転制御処理（Ｓ２０３）では、このようにメイン処理側でセットされた励磁出力タイムデータテーブルに従って３つの回転リール４ａ〜４ｃを定常回転に向けて起動させるための処理が実行される（図１４及び図１５参照）。
【００９５】
ＣＰＵ８０ａは、ステップＳ３０８で起動用のモータ動作テーブルをセットしたことに応じ、ステップＳ３０９で再遊技作動状態ビットのクリアと再遊技ＬＥＤのオフ制御とを行う。なお、再遊技作動状態ビットは、１つ前のゲームに対応して実行されたステップＳ１１３の再遊技設定処理において、リプレイ当選状態であった場合に所定値（例えば１）がセットされている。
【００９６】
続くステップＳ３１０でＣＰＵ８０ａは、回転状態フラグを「１」に設定して全ての回転リール４が回転中である旨を表し、次のステップＳ３１１で回転開始コマンドを演出制御インターフェース８６における送信バッファにセットした上で、この図に示す回胴回転開始設定処理を終える。
【００９７】
ここで、上記のステップＳ３０８で起動用のモータ動作テーブルとしてセットされる励磁出力タイムデータテーブルについて図１３を参照して説明しておく。
図１３に示すように、励磁出力タイムデータテーブルは、０から昇順の値が付されたインデックス（以下「タイムテーブルインデックス」とも表記）ごとに、それぞれタイマ値が対応づけられたテーブルとされている。本実施の形態の場合、タイムテーブルインデックスとしては０〜２５の計２６個が用意されている。
【００９８】
ここで、タイマ値は、タイマ割込み処理におけるステップＳ２０３の回胴回転制御処理で用いられるモータ出力タイマＴｏｍに設定される値である。
モータ出力タイマＴｏｍは、定常回転中以外の回転制御において用いられるタイマであり、先の図７Ｃで説明した０〜７の８種の励磁データφ１〜φ４の組に関して、同一種類の励磁データφ１〜φ４による励磁状態を維持する時間長を管理するためのタイマとされている。モータ出力タイマＴｏｍの値は、ＲＡＭ８０ｃに保持される。すなわち、モータ出力タイマＴｏｍの値の更新はＲＡＭ８０ｃ上で行われる。
定常回転中においては、励磁ポインタＰＴの値が１回のタイマ割込み処理ごとにインクリメントされるため、同一種類の励磁データφ１〜φ４の組による励磁状態を維持する割込み回数を管理する必要がない。一方、定常回転中以外の回転制御、すなわちリール演出での演出回転制御、定常回転に向けての起動回転制御、及び回転停止制御においては、同一種類の励磁データφ１〜φ４の組による励磁状態を複数回のタイマ割込み処理にわたって維持することがある。このため、モータ出力タイマＴｏｍを設けて、同一種類の励磁データφ１〜φ４の組による励磁状態を維持するタイマ割込み回数を管理可能としている。
【００９９】
モータ出力タイマＴｏｍに値がセットされると、１回のタイマ割込み処理ごとにモータ出力タイマＴｏｍの値がデクリメントされ、モータ出力タイマＴｏｍの値が「０」となったことに応じて励磁ポインタＰＴの値がインクリメントされる。これにより、モータ出力タイマＴｏｍにセットする値によって、同一種類の励磁データφ１〜φ４の組による励磁状態を維持するタイマ割込み回数を指定可能とされている。
【０１００】
起動回転時には、図１３に示す励磁出力タイムデータテーブルに格納されたタイマ値がモータ出力タイマＴｏｍに逐次セットされる。具体的に、起動回転時には、インデックス＝０に対応づけられたタイマ値がモータ出力タイマＴｏｍにセットされた後、モータ出力タイマＴｏｍの値が０となるごとに、次のインデックスに対応づけられたタイマ値がモータ出力タイマＴｏｍにセットされる。
前述のようにモータ出力タイマＴｏｍの値が「０」となると励磁ポインタＰＴの値がインクリメントされるため、出力される励磁データφ１〜φ４の組が切り替えられる。同時に、モータ出力タイマＴｏｍの値が「０」となると、上記のように励磁データテーブルにおけるインデックスの値も切り替えられる。
【０１０１】
このことから理解されるように、励磁出力タイムデータテーブルは、インデックスごとに格納するタイマ値によって、励磁ポインタＰＴ（０〜７）の各値が示す励磁データφ１〜φ４の組による励磁状態を維持する時間長を規定可能とされていると共に、インデックスの設定数によって起動時間を規定することも可能とされる。
【０１０２】
なお、励磁出力タイムデータテーブルについて、インデックスごとに格納されるタイマ値の具体的数値については後に改めて説明する。
【０１０３】
上記の前提を踏まえ、タイマ割込み処理において実行されるステップＳ２０３の回胴回転制御処理を図１４及び図１５のフローチャートを参照して説明する。
なお、回胴回転制御処理は、回転リール４の停止に係る処理も含むが、ここでは先ず、回転リール４の起動と定常回転中に対応した処理について説明する。
【０１０４】
図１４において、ＣＰＵ８０ａは、先ずステップＳ４０１で回胴制御フラグＦＧをチェックする。すなわち、回胴制御フラグＦＧａ〜ＦＧｃのうち、現在の処理対象である回転リール４に対応する回胴制御フラグＦＧをチェックする。
【０１０５】
続くステップＳ４０２でＣＰＵ８０ａは、制御中フラグＦ０の値を判別し、Ｆ０＝０であればステップＳ４４４で全ての回転リール４について処理が終了したか（全ての回転リール４についてステップＳ４０１以降の処理を実行したか）否かを判別する。全ての回転リール４について処理が終了していなければ、ＣＰＵ８０ａはステップＳ４０１に戻って次の回転リール４に対応する回胴制御フラグＦＧをチェックし、全ての回転リール４について処理が終了していれば回胴回転制御処理を終える。
なお、リール演出を行うべき回転リール４についての回胴制御フラグＦＧは、前述したステップＳ３０３のリール演出開始設定・待機処理において回胴制御フラグＦＧが０３ｈにセットされることで制御中フラグＦ０＝１、リール演出中フラグＦ２＝１とされている。リール演出を実行しない回転リール４についての回胴制御フラグＦＧはステップＳ３０３の処理で００ｈに設定されるため制御中フラグＦ０＝０である。
【０１０６】
一方、ステップＳ４０２においてＦ０＝１であった場合、ＣＰＵ８０ａはステップＳ４０３でリール演出中フラグＦ２の値を判別し、Ｆ２＝１であった場合はステップＳ４０４のリール演出中処理を実行する。
リール演出中処理は、前述したステップＳ３０３のリール演出開始設定・待機処理で選択したモータ動作テーブルに従って、今回のタイマ割込み処理に対応した励磁ポインタＰＴの値を取得する処理となる。
ＣＰＵ８０ａは、ステップＳ４０４のリール演出中処理により励磁ポインタＰＴの値を取得したことに応じて、ステップＳ４３６で励磁データテーブル（図７Ｃ）を参照して励磁ポインタＰＴに応じた励磁データφ１〜φ４を取得し、取得した励磁データφ１〜φ４をステップＳ４４３で当該回転リール４（現在の処理対象である回転リール４）に対応する出力バッファ（前述のようにＲＡＭ８０ｃ内に用意されている）にセットする。このようにセットされた励磁データφ１〜φ４が、回胴モータ駆動部８５を介して該当するステッピングモータ５４に対して出力される（先のステップＳ２０６「表示・モータ出力処理」参照）。
ステップＳ４４３で励磁データφ１〜φ４をセットしたことに応じ、ＣＰＵ８０ａは前述したステップＳ４４４に処理を進める。
【０１０７】
このようにリール演出中には、１回のタイマ割込み処理において、ステップＳ４０１→Ｓ４０２→Ｓ４０３→Ｓ４０４→Ｓ４３６→Ｓ４４３→Ｓ４４４→Ｓ４０１の処理が繰り返し実行され、リール演出を実行すべき全ての回転リール４について１タイマ割込み処理分の励磁データφ１〜φ４がそれぞれ対応する出力バッファにセットされる。このような１タイマ割込み処理ごとの励磁データφ１〜φ４をセットする処理がモータ動作テーブルに規定された態様で実行されることで、リール演出を実行すべき全ての回転リール４についての演出回転が実現される。
なお、リール演出に係る処理（特にＳ４０４のリール演出中処理）については本発明と直接関わるものではないため、詳細な説明については省略する。
【０１０８】
ここで、回転リール４の演出回転が終了したことに応じては、回転リール４ａ〜４ｃの起動回転を開始させるべく、前述したステップＳ３０７の処理により回胴制御フラグＦＧａ〜ＦＧｃが０１ｈにセットされる。すなわち、制御中フラグＦ０＝１、それ以外のフラグＦ１〜Ｆ７が全て０にセットされる。これに応じて、回転リール４ａ〜４ｃごとに以下で説明する起動のための処理が実行される。
【０１０９】
先ず、制御中フラグＦ０のみが「１」で他のフラグＦ１〜Ｆ７が全て「０」であることから、ＣＰＵ８０ａはステップＳ４０１→Ｓ４０２→Ｓ４０３と処理を進める。リール演出中フラグＦ１＝０であるため、ＣＰＵ８０ａはステップＳ４０３からステップＳ４０５に処理を進めて回胴停止中フラグＦ７＝１であるか否かを判別するが、Ｆ７＝１ではないためステップＳ４０６に進んで回胴起動中フラグＦ６の値を判別する。Ｆ６＝１ではないため、ＣＰＵ８０ａは図１５に示すステップＳ４０７に進んで回胴起動済みフラグＦ５＝１であるか否かを判別する。Ｆ５＝０であるため、ＣＰＵ８０ａはステップＳ４１２に処理を進める。
【０１１０】
ステップＳ４１２〜Ｓ４１５の処理は、処理対象の回転リール４について起動を開始させるために各種の変数を初期設定する処理となる。
先ず、ステップＳ４１２でＣＰＵ８０ａは、励磁ポインタＰＴのビット０（ＬＳＢ：Least Significant Bit）の値をクリアする。図７Ｃに示したように、励磁ポインタＰＴは値「０〜７」の別を表すもので、本例では例えば３ビットで構成されている。励磁ポインタＰＴのＬＳＢの値をクリアするということは、励磁ポインタＰＴの値を０，２，４，６の何れか（つまり偶数）にセットすることを意味する。例えば、励磁ポインタＰＴの値が「６」を表す「１１０」であった場合にはそのまま「６」を表す「１１０」がセットされる。一方、励磁ポインタＰＴの値が「７」を表す「１１１」であった場合には、「６」を表す「１１０」にセットされることになる。
【０１１１】
続くステップＳ４１３でＣＰＵ８０ａは、回胴起動中フラグＦ６＝１、回胴センサＯＮフラグＦ２＝０にセットする。回胴センサＯＮフラグＦ２は、後述するステップＳ４２３において処理対象の回転リール４についての原点位置１０１が検出されたことに応じてステップＳ４２５で「１」がセットされるフラグであり、回胴センサＯＮフラグＦ２＝１でない、つまりは原点位置１０１が検出されていなければ、停止操作が受け付けられないようになっている（この点は後述する）。
【０１１２】
次のステップＳ４１４でＣＰＵ８０ａは、図柄ステップ数を初期値である「２４」にセットし、さらに次のステップＳ４１５でリール起動中の初期化処理としてリールエラータイマ＝０、図柄カウンタ＝０、タイムテーブルインデックス＝０、モータ出力タイマＴｏｍ＝１にセットする。
【０１１３】
ここで、「図柄カウンタ」及び「図柄ステップ数」は、共に回転リール４の定常回転が開始（つまり起動が終了）された後にその回転リール４の原点位置１０１が検出されてからカウントが開始される値とされている（Ｓ４２６，Ｓ４２９，Ｓ４３２を参照）。図柄カウンタは、回転リール４における現在の図柄（つまり１番目〜２１番目）の番号を表す。図柄ステップ数は、図柄カウンタの値が表す図柄におけるステップ位置（つまり２４（０）番〜１番の何れか）を表す。
「リールエラータイマ」は、回転リール４が定常回転中である状態で、当該回転リール４が正常に回転しているか否かを判定するためのタイマである。
また、「タイムテーブルインデクス」は、図１３で説明した励磁出力タイムデータテーブルのインデックスの値である。
【０１１４】
ＣＰＵ８０ａは、ステップＳ４１５のリール起動中の初期化処理を実行したことに応じ、図１４に示すステップＳ４１６に進んでモータ出力タイマＴｏｍの値（前述のようにＲＡＭ８０ｃ内に保持されている）をデクリメント（−１）した上で、ステップＳ４１７でモータ出力タイマＴｏｍの値が「０」であるか否かを判別する。
モータ出力タイマＴｏｍの値が「０」でなければ、ＣＰＵ８０ａは前述したステップＳ４４４に進んで全ての回転リール４について処理が終了したか否かを判別する。このようにモータ出力タイマＴｏｍ≠０のときは、ステップＳ４４３による励磁データφ１〜φ４のセット処理は実行されない。従って、既に以前のタイマ割込み処理時に励磁データφ１〜φ４がセットされていれば、その励磁データφ１〜φ４の出力状態が維持される。
なお、起動開始時には、モータ出力タイマＴｏｍの値は先のステップＳ４１５で「１」とされた後、ステップＳ４１６で−１されるため「０」である。
【０１１５】
一方、モータ出力タイマＴｏｍの値が０であった場合、ＣＰＵ８０ａはステップＳ４１８で励磁出力タイムデータテーブルを参照しタイムテーブルインデックスに応じたタイマ値を取得する。前述のように起動開始時におけるタイムテーブルインデックスはステップＳ４１５で「０」に設定されているため、先ずは図１３におけるインデックス＝０に対応するタイマ値（「１」）が取得される。
【０１１６】
続くステップＳ４１９でＣＰＵ８０ａは、取得したタイマ値をモータ出力タイマＴｏｍにセットする。そして、次のステップＳ４２０でタイムテーブルインデックスをインクリメント（＋１）し、ステップＳ４２１で加速終了（起動終了）か否かを判別する。具体的には、タイムテーブルインデックスの値が励磁出力タイムデータテーブルにおける最後のインデックスの値である「２５」に達しているか否かを判別する。
【０１１７】
ステップＳ４２１において、タイムテーブルインデックスの値が「２５」に達しており加速終了であるとの判別結果が得られた場合、ＣＰＵ８０ａはステップＳ４２２で回胴起動中フラグＦ６を「０」、回胴起動済みフラグＦ５を「１」にそれぞれ設定した上で、ステップＳ４３５に処理を進める。
一方、タイムテーブルインデックスの値が「２５」に達しておらず加速終了ではないとの判別結果が得られた場合、ＣＰＵ８０ａはステップＳ４２２をパスしてステップＳ４３５に進む。
【０１１８】
ステップＳ４３５でＣＰＵ８０ａは、励磁ポインタＰＴの値をインクリメント（＋１）した上で、ステップＳ４３６で励磁データテーブルから励磁ポインタＰＴに応じた励磁データφ１〜φ４を取得し、さらにステップＳ４４３に進んで当該回転リール４に対応する出力バッファに励磁データφ１〜φ４をセットする。起動開始時に対応してステップＳ４１２から処理が開始されたときは、当該ステップＳ４４３の処理によって起動のための最初の励磁データφ１〜φ４がセットされることになる。
【０１１９】
ステップＳ４４３で励磁データφ１〜φ４をセットした後は、ステップＳ４４４で全ての回転リール４についての処理が終了したか否かが判別される。
全ての回転リール４についての処理が終了していない場合、ＣＰＵ８０ａはステップＳ４０１に戻って次の回転リール４についての回胴制御フラグＦＧがチェックするが、起動時においては前述のように全ての回転リール４についての回胴制御フラグＦＧが０１ｈにセットされているため、次の回転リール４についても上記と同様の処理が実行され、当該回転リール４について起動のための励磁データφ１〜φ４が同様にセットされる。
【０１２０】
なお、本例において、起動開始時に初回にセットされる励磁データφ１〜φ４は、必ず１相励磁に対応した励磁データとなる。上述のように起動開始時には、励磁ポインタＰＴの値はステップＳ４１２でビット０がクリアされた後ステップＳ４３５で＋１されるため、起動開始時には必ず奇数（１，３，５，７の何れか）が設定される。図７Ｃを参照して分かるように、奇数の値による励磁ポインタＰＴに対応づけられた励磁データφ１〜φ４の組は１相励磁の組となる。従って、起動開始時のモータ励磁は必ず１相励磁により行われる。
【０１２１】
起動開始時には、全ての回転リール４についてステップＳ４４３による励磁データφ１〜φ４のセット処理が実行されると、ステップＳ４４４で全ての回転リール４について処理が終了したと判別され、今回のタイマ割込みにおける回胴回転制御処理は終了する。
次回のタイマ割込み処理におけるステップＳ２０３の回胴回転制御処理では、回転リール４ごとにステップＳ４０１から処理が実行されるが、上述のように直前のタイマ割込み処理（起動開始時）ではステップＳ４１３において回胴起動中フラグＦ６＝１にセットされているため、ステップＳ４０６のフラグ判別処理を経て、処理はステップＳ４１６に進められる。
この際、回胴起動中フラグＦ６＝１の状態は、先のステップＳ４２１で加速終了と判別されて後述するステップＳ４２２で０がセットされるまで維持されるため、起動が開始されてから終了するまでの間は、各タイマ割込みごとにステップＳ４１６以降の処理が実行される。
【０１２２】
ここで、ステップＳ４１６以降の処理においては、ステップＳ４１７の判別処理が設けられたことで、ステップＳ４１６でデクリメントされた後のモータ出力タイマＴｏｍの値が「０」となると、モータ出力タイマＴｏｍの値が以前のタイマ割込み処理時に＋１されたタイムテーブルインデックスの値に応じたタイマ値にセットされる（Ｓ４１８及びＳ４１９）。さらに、タイムテーブルインデックスの値が＋１され（Ｓ４２０）、励磁ポインタＰＴの値が＋１され（Ｓ４３５）た上で、励磁ポインタＰＴが示す励磁データφ１〜φ４の組が出力バッファにセットされる（Ｓ４４３）。
一方、ステップＳ４１６のデクリメント処理を経た後のモータ出力タイマＴｏｍの値が「０」でない場合には、上記の各処理は行われず、従ってタイムテーブルインデックスの値及び励磁ポインタＰＴの値は同値で維持される。
【０１２３】
このように、モータ出力タイマＴｏｍ＝０となるまでは励磁ポインタＰＴの値が同値で維持されるため、モータの励磁状態としては以前のタイマ割込み処理時（現在から見て最後にモータ出力タイマＴｏｍ＝０となったタイマ割込み処理時）にセットされた励磁データφ１〜φ４による励磁状態が維持される。すなわち、モータ出力タイマＴｏｍにセットしたタイマ値に応じたタイマ割込み回数分、同じ励磁データφ１〜φ４による励磁状態が維持される。
【０１２４】
このように同じ励磁データφ１〜φ４による励磁状態が維持される回数（タイマ割込み回数）は、モータ出力タイマＴｏｍにセットする値、つまりは励磁出力タイムデータテーブルに格納されたタイマ値によって定まる。従って、前述もしたように、励磁出力タイムデータテーブルに格納されたタイマ値は同じ励磁データφ１〜φ４による励磁状態を維持させるタイマ割込み回数を規定する値として機能する。
【０１２５】
ここで、上記の前提を踏まえた上で、本実施の形態における励磁出力タイムデータテーブルの内容について説明する。
図１３において、本実施の形態の励磁出力タイムデータテーブルは、０〜２５の計２６個のタイムテーブルインデックスに対し、次のようにタイマ値が対応づけられている。すなわち、最後のインデックス２５を除く０〜２４のインデックスについては、偶数のインデックスに対して全てタイマ値＝１が対応づけられ、奇数のインデックスに対しては全て１より大きいタイマ値が対応づけられている。これら奇数のインデックスについては、インデックスの値の昇順にタイマ値が段階的に小さくなるように対応づけが行われている。具体的に、インデックス１にはタイマ値＝３３、インデックス３にはタイマ値＝８、インデックス５にはタイマ値＝４、インデックス７，９，１１，１３，１５にはタイマ値＝３、インデックス１７，１９，２１，２３にはタイマ値＝２が対応づけられている。
最後のインデクス２５には、回転リール４の停止励磁時に用いる極めて大きなタイマ値が対応づけられており、本例ではタイマ値＝１５１が対応づけられている。
【０１２６】
前述のように、起動開始時の処理（メイン処理側のステップＳ３０７で回胴制御フラグＦＧ＝０１ｈに設定された直後に実行されたタイマ割込み処理）では、タイムテーブルインデックスの値はステップＳ４１５で「０」とされる。そして、その後のステップＳ４１８・Ｓ４１９の処理では、このように「０」とされたタイムテーブルインデックスの値に応じたタイマ値がタイマＴｏｍにセットされる。
励磁出力タイムデータテーブルにおいて、インデックス＝０に応じたタイマ値は「１」であるため、起動開始時のタイマ割込み処理の次のタイマ割込み処理では、ステップＳ４１６のデクリメント処理でモータ出力タイマＴｏｍ＝０とされ、ステップＳ４１７の判別処理を経てステップＳ４１８以降の処理が実行される。ステップＳ４１８以降の処理が実行されることで、励磁ポインタＰＴが更新されて次の励磁データφ１〜φ４がセットされる。
このように、インデックス０にタイマ値＝１が対応づけられていることにより、起動開始時には、最初にセットされた励磁データφ１〜φ４による励磁状態が１回のタイマ割込み（１．４９ｍｓ）に相当する時間分維持される。
【０１２７】
また、上記のように起動開始時の次のタイマ割込み処理でステップＳ４１８以降の処理が実行されることによっては、ステップＳ４１８・Ｓ４１９の処理によりモータ出力タイマＴｏｍの値として起動開始時のタイマ割込み処理時に＋１したインデックスの値に応じたタイマ値がセットされる。
起動開始時のタイマ割込み処理時におけるステップＳ４２０のインクリメント処理が行われた時点のインデックスの値は「１」であるため、今回のタイマ割込み処理時でのステップＳ４１８・Ｓ４１９で用いられるインデックスの値は「１」である。このため、今回のタイマ割込み処理時のステップＳ４１８・Ｓ４１９で設定されるタイマ値は「３３」である。
よって以降は、ステップＳ４１６のモータ出力タイマＴｏｍのデクリメント処理が３３回行われるまで、つまりは３３回のタイマ割込み処理が実行されるまで、今回のタイマ割込み処理のステップＳ４３６で取得された励磁データφ１〜φ４の組による励磁状態が維持される。
【０１２８】
その後、３３回のタイマ割込み処理が実行されてモータ出力タイマＴｏｍ＝０となったら、同様にステップＳ４１８以降の処理が行われて、モータ出力タイマＴｏｍの値のセット（Ｓ４１８・Ｓ４１９）、及びタイムテーブルインデックスの値のインクリメント（Ｓ４２０）が行われた上で、励磁データテーブルにおける次の励磁ポインタＰＴが示す励磁データφ１〜φ４による励磁状態が開始される（Ｓ４３５・Ｓ４３６・Ｓ４４３）。
以降も、ステップＳ４１６でモータ出力タイマＴｏｍの値が０となったタイマ割込み処理時にステップＳ４１８以降の処理が実行され、Ｔｏｍ＝０とならないタイマ割込み処理時にはそれらの処理が実行されないことで、励磁出力タイムデータテーブルに従った励磁態様によりステッピングモータ５４の励磁が行われる。
【０１２９】
ここで、前述のように、起動開始時に最初にセットされる励磁データφ１〜φ４の組は必ず１相励磁の組となるようにされている。よって、起動時は、モータ出力タイマＴｏｍ＝０となるごとに、１相→２相→１相…が切り替えられる。このことによると、図１３に示す励磁出力タイムデータテーブルにおける偶数のインデックスは１相励磁に対応し、奇数のインデックスは２相励磁に対応していることが分かる。
よって、本例の励磁出力タイムデータテーブルは、起動回転として、１回のタイマ割込み処理分の１相励磁と複数回のタイマ割込み処理分の２相励磁とを交互に繰り返すことを規定したものとなる。
なおこのことから理解されるように、起動回転としても、前述した１−２相励磁により行われるものである。
【０１３０】
図１６は、図１３に示す励磁出力タイムデータテーブルにより実現される起動時の励磁動作について説明するための図であり、起動開始から起動終了までの励磁ポインタＰＴ、励磁データφ１〜φ４、タイマ値（モータ出力タイマＴｏｍの値）の遷移を示している。
なお、図１６では起動開始時のステップＳ４３５の処理により励磁ポインタＰＴの値が７とされた場合を例示している。
【０１３１】
本実施の形態の励磁出力タイムデータテーブルによっては、励磁ポインタＰＴの値がモータ出力タイマＴｏｍ＝０となるごとに更新される下で、「１相励磁×１タイマ割込み分」→「２相励磁×３３タイマ割込み分」→「１相励磁×１タイマ割込み分」→「２相励磁×８タイマ割込み分」→「１相励磁×１タイマ割込み分」→「２相励磁×４タイマ割込み分」→「１相励磁×１タイマ割込み分」→「２相励磁×３タイマ割込み分と１相励磁×１タイマ割込み分を交互に５回繰り返し」→「２相励磁×２タイマ割込み分と１相励磁×１タイマ割込み分を交互に４回繰り返し」→「２相励磁×１タイマ割込み分」のモータ励磁が行われる。すなわち、本実施の形態における回転リール４の起動は、このような励磁態様により行われる。
なお、最後の「２相励磁×１タイマ割込み分」は、励磁出力タイムデータテーブルに格納されたタイマ値に直接基づくものではなく、ステップＳ４２１で加速終了（つまりインデックス＝２５）と判別された後に実行されるステップＳ４３５・Ｓ４３６・Ｓ４４３の処理に伴い実現されるものである。
【０１３２】
上記のように、本実施の形態の励磁出力タイムデータテーブルに基づくモータ励磁では、回転トルクに劣る１相励磁を１タイマ割込み分で終えて、回転トルクに勝る２相励磁に移行される。このことで、円滑な加速回転が実現されている。
また、本実施の形態では、２相励磁に関して、励磁状態をホールドするタイマ割込み処理回数（回転待機数）を段階的に減少させているが、このことで、極めて遅い低速回転から漸次、回転速度を効率的に高めることができる。
【０１３３】
ここで、図１６を参照して分かるように、本実施の形態における回転リール４の起動処理は、異なる組の励磁データφ１〜φ４を合計で２６回セットして終了する。これまでの説明からも理解されるように、新たな励磁データφ１〜φ４がセットされると、ステッピングモータ５４（回転リール４）が１ステップ分回転する。このことより、本実施の形態における回転リール４の起動処理は、回転リール４を２６ステップ分回転させて終了するものであることが分かる。
なお、本実施の形態において、このように回転リール４の起動処理を２６ステップという比較的少ないステップ数で終了する意義については後述する。
【０１３４】
続いて、図１４及び図１５に戻り、定常回転中における処理について説明する。
先の説明から理解されるように、回転リール４の起動終了時には、図１４のステップＳ４２２において回胴起動中フラグＦ６＝０、回胴起動済みフラグＦ５＝１とされる。このため、起動終了時のタイマ割込み処理の次のタイマ割込み処理時における回胴回転制御処理では、処理がステップＳ４０１→Ｓ４０２→Ｓ４０３→Ｓ４０５→Ｓ４０６→Ｓ４０７→Ｓ４０８の順で進められる。
ステップＳ４０８でＣＰＵ８０ａは、停止信号検出フラグＦ４の値を判別する。ここで、停止信号検出フラグＦ４の値は、起動開始の直前に回胴制御フラグＦＧ＝０１ｈが設定されて「０」とされた以降、起動終了時までの間に更新はされていない。従って、起動終了時のタイマ割込み処理の次のタイマ割込み処理時に実行されるステップＳ４０８の処理では、停止信号検出フラグＦ４＝０と判別される。
【０１３５】
停止信号検出フラグＦ４＝０と判別された場合、ＣＰＵ８０ａは、ステップＳ４０９以降に示す定常回転中の処理を実行する。このステップＳ４０９以降の処理としては、大別して、ステップＳ４０９〜Ｓ４１１による回転異常検知のための処理、ステップＳ４２３〜Ｓ４２６及びステップＳ４２９〜Ｓ４３４による図柄ステップ数・図柄カウンタの更新のための処理、及び図１４に示すステップＳ４３５・Ｓ４３６・Ｓ４４３による励磁データの更新のための処理に区分することができる。
【０１３６】
ここで、ステップＳ４０９以降の定常回転中の処理においては、図中のステップＳ４１１でエラーと判別されない限り、ステップＳ４３５・Ｓ４３６・Ｓ４４３による励磁データの更新のための処理が必ず実行されることが分かる。すなわち、定常回転中においては、回転異常が検知されない限り、励磁データφ１〜φ４の組がタイマ割込み処理ごとに更新されるものであり、タイマ割込み処理ごとにステッピングモータ５４が１ステップずつ回転する。
【０１３７】
図１５において、ＣＰＵ８０ａは、先ずステップＳ４０９で励磁ポインタＰＴの値が１相励磁に対応したものか２相励磁に対応したものかを判別する。励磁ポインタＰＴの値が２相励磁に対応したもの（つまり０，２，４，６の何れか）である場合、ＣＰＵ８０ａはステップＳ４１０でリールエラータイマの値をインクリメント（＋１）し、次のステップＳ４１１でリールエラータイマの値が２５２より大きいか否かを判別する。
一方、励磁ポインタＰＴの値が１相励磁に対応したもの（つまり１，３，５，７の何れか）である場合、ＣＰＵ８０ａはステップＳ４１０及びＳ４１１をパスしてステップＳ４２３に進む。
【０１３８】
ここで、前述のように回転リール４の１回転＝５０４ステップであり、上記の「２５２」とは「５０４」の半分である。定常回転中においては、上述のように励磁データφ１〜φ４の組がタイマ割込み処理ごとに更新されることから、１回転中においてステップＳ４０９で２相励磁状態と判別される、すなわちリールエラータイマの値がインクリメントされる回数は最大でも５０４÷２＝２５２回である。
このことから、上記のようにリールエラータイマの値が２５２よりも大きいか否かを判別することで、回転異常の検知を行うことができる。
なお、リールエラータイマの値は、起動開始時における先のステップＳ４１５で０リセットされると共に、後述するステップＳ４２３で原点位置１０１が検出されたことに応じてステップＳ４２４で０クリアされる。
【０１３９】
ステップＳ４１１において、リールエラータイマの値が２５２よりも大きければ、ＣＰＵ８０ａはステップＳ４１２以降の処理を実行する。すなわち、回転リール４の回転異常が検知された場合は、当該回転リール４については起動処理からやり直しとなる。
【０１４０】
一方、リールエラータイマの値が２５２以下であった場合、ＣＰＵ８０ａはステップＳ４２３で原点位置１０１が検出されたか否かを判別する。つまり、現在の処理対象である回転リール４に対応して設けられたインデックスセンサ５５の検出信号に基づき、当該回転リール４の原点位置１０１が検出されたか否かを判別する。
原点位置１０１が検出された場合、ＣＰＵ８０ａはステップＳ４２４でリールエラータイマの値を０クリアし、続くステップＳ４２５で回胴センサＯＮフラグＦ２＝１にセットする。さらにＣＰＵ８０ａは、次のステップＳ４２６で図柄ステップ数を「２４」、図柄カウンタを「１」にそれぞれリセットする。
なお、先の図８で説明したように、本例においては図柄１コマ分のステップ数＝２４であり、回転リール４には１コマ目〜２１コマ目までの２１個の図柄が形成されている。
【０１４１】
一方、ステップＳ４２３で原点位置１０１が検出されなかった場合、ＣＰＵ８０ａはステップＳ４２９に進んで図柄ステップ数をデクリメント（−１）した上で、ステップＳ４３０で図柄ステップ数が「０」であるか否かを判別する。すなわち、図柄同士の境界に達したか否かを判別する。
図柄ステップ数＝０であれば、ＣＰＵ８０ａはステップＳ４３１で図柄ステップ数を「２４」にリセットした上で、続くステップＳ４３２で図柄カウンタの値をインクリメント（＋１）し、ステップＳ４３３で図柄カウンタの値が「２１」であるか否かを判別する。図柄カウンタの値が「２１」であれば、ＣＰＵ８０ａはステップＳ４３４で図柄カウンタの値を「１」にリセットする。
【０１４２】
上記のようなステップＳ４２３〜Ｓ４２６及びステップＳ４２９〜Ｓ４３４の処理により、定常回転中においては、原点位置１０１で図柄ステップ数＝２４、図柄カウンタ＝１がセットされた後、タイマ割込み処理ごとに図柄ステップ数がデクリメントされていき、図柄ステップ数＝０となったら図柄カウンタの値がインクリメントされ、且つ図柄ステップ数が２４にリセットされる。
これにより、現在の図柄位置及びその図柄におけるステップ位置を検出可能とされている。
【０１４３】
ステップＳ４２６による図柄ステップ数及び図柄カウンタのリセット処理、又はステップＳ４３４による図柄ステップ数のリセット処理を実行したことに応じ、ＣＰＵ８０ａは図１４に示すステップＳ４３５に処理を進める。
ステップＳ４３５以降では、前述したように励磁データの更新のための処理（ステップＳ４３５・Ｓ４３６・Ｓ４４３）が実行されて出力バッファに新たな励磁データφ１〜φ４の組がセットされ、ステップＳ４４４で全ての回転リール４について処理が終了したか否かが判別される。
ステップＳ４４４で全ての回転リール４について処理が終了していなければ、ステップＳ４０１において次の回転リール４についての回胴制御フラグＦＧをチェックする処理が実行される。このことから理解されるように、上記で説明したステップＳ４０９以降の処理は、１回のタイマ割込み処理において全ての回転リール４について実行されるものである。
【０１４４】
［6-3．実施の形態の起動処理の意義について］
前述のように、本実施の形態では、回転リール４の起動処理を２６ステップという比較的少ないステップ数で終了することとしている。これは、回転リール４が起動してから回転停止操作が受け付け可能となるまでの時間の短縮化を図るためである。
後述もするが、スロットマシンにおいては、回転リール４の停止操作の受け付けを許可するにあたり、
１）当該回転リール４が定常回転に移行（回胴起動済みフラグＦ５＝１）した後、
２）当該回転リール４の原点位置１０１が検出される（回胴センサＯＮフラグＦ２＝１）
ことを条件としている。
【０１４５】
該条件の下で生じ得る問題を図１７Ａにより説明する。
図１７Ａでは、回転リール４に形成された図柄のうち原点位置１０１付近に位置する２０コマ目〜２コマ目の計４つの図柄を抽出して示している。なお図中において、回転リール４の左側に付した番号は図柄の番号を表し、右側に付した番号はステップ数を表している。
【０１４６】
ここで、仮に回転リール４についての前ゲームにおける停止図柄が２０コマ目の図柄であったとすると、起動直前における回転リール４は、前述した「停止許可ステップ位置」（＝８番のステップ位置）に基づき定まるステップ位置で停止していることになる。
後にステップＳ４２８（図１５）の処理として説明するように、本実施の形態においては、図柄の停止タイミングは、現在の図柄ステップ数が９未満（つまり「停止許可ステップ位置」の図柄ステップ数である「８」以下）で且つ現在のモータ励磁状態が２相励磁状態であるタイミングとして定められている。すなわち、本実施の形態の図柄の停止制御処理は、８番又は７番のステップ位置を「停止ステップ位置」として回転リール４を停止させる処理とされている。このため、前ゲームにおける停止図柄が２０コマ目の図柄であった回転リール４は、２０コマ目の図柄における８番のステップ位置、又は７番のステップ位置の何れかで停止していることになる。
図中の矢印Ｓｔで表すように、ここでは回転リール４が８番のステップ位置で停止していた例を示している。
【０１４７】
上記のような停止状態から、定常回転に向けて起動処理が開始されたとする。
このとき、当該起動処理が原点位置１０１を通過するまでに終了しなければ、上記の１）２）の停止操作受け付け条件が満たされないため、停止操作が受け付け可能となるには回転リール４が１周して原点位置１０１を再度通過することを要する。つまり、停止操作の受け付けが可能となるまでに、回転リール４を１周余分に回転させなければならない。
【０１４８】
そこで、本実施の形態では、起動処理の開始から終了までに費やすステップ数を次のように設定する。
図１７Ｂは、本実施の形態で費やす起動処理のステップ数についての説明図であり、図１７Ａと同様に回転リール４の原点位置１０１近傍に位置する２０コマ目〜２コマ目の計４つの図柄を示している。
本実施の形態では、起動処理を「図柄１コマ分のステップ数（Ｎ）＋停止ステップ位置から次の図柄までのステップ数（Ｍ）」で計算されるステップ数分回転リール４を回転させるまでに終了する。具体的に、本実施の形態においては、「停止ステップ位置」が８番のステップ位置であれば回転リール４を「２４（Ｎ）＋８（Ｍ）」＝３２ステップ数分回転させるまでに起動処理を終了し、「停止ステップ位置」が７番のステップ位置であれば回転リール４を「２４（Ｎ）＋７（Ｍ）」＝３１ステップ数分回転させるまでに起動処理を終了する。
すなわち、本例のように「停止ステップ位置」が８番又は７番のステップ位置とされている場合には、起動処理は少なくとも回転リール４を「２４＋７」＝３１ステップ数分回転させるまでに終了すればよい。
【０１４９】
ここで、起動処理前の停止図柄が何れの図柄であっても上記のような１周分の余分な回転を生じさせないためには、起動処理は、回転リール４を停止ステップ位置のステップ数分回転させるまでに終了できればよい。これにより、起動処理前の停止図柄が原点位置１０１の直前の図柄（２１コマ目の図柄）であったとしても、原点位置１０１までに起動処理を終了できるため、起動後の初回の原点位置１０１の通過に応じて即座に回転停止操作の受け付けが可能となる。
しかしながら、通常、回転リール４を定常回転としての一定速度まで加速させるには、或る程度の回転量を要する。具体的には、少なくとも図柄１コマ分程度の回転量を要する。
この点に鑑み本実施の形態では、起動処理を上記のように「図柄１コマ分のステップ数＋停止ステップ位置から次の図柄までのステップ数」で計算されるステップ数分回転リール４を回転させるまでに終了する。
これにより、起動処理前の停止図柄が原点位置１０１の直前の図柄であった場合を除き、停止操作を受け付け可能となるまでに１周分の余分な回転が生じることがない。
従って、回転リール４が起動を開始してから回転停止操作が受け付け可能となるまでの時間の短縮化を図ることができる。
【０１５０】
ここで、先の説明では、起動処理を２６ステップで終了する、すなわち起動処理を「図柄１コマ分のステップ数＋２ステップ」で計算されるステップ数分回転リール４を回転させた時点で終了する場合を例示した。このことで、停止ステップ位置が８番、７番の何れのステップ位置であった場合にも、起動処理前の停止図柄が原点位置１０１の直前の図柄であった場合を除き、停止操作を受け付け可能となるまでに１周分の余分な回転を生じさせないようにできる。つまり、停止ステップ位置が８番、７番の何れのステップ位置であった場合にも、回転リール４が起動を開始してから回転停止操作が受け付け可能となるまでの時間を短縮化できる。
また、起動処理を図柄１コマ分以上の時間をかけて行っているため、回転リール４を定常回転時の一定速度まで充分に加速させることができる。
【０１５１】
［6-4．回胴の停止に係る処理］
続いて、回転リール４の停止に係る処理について説明する。
回転リール４の停止操作の受け付けは図９に示したメイン処理における回胴停止処理（Ｓ１１０）により行われるため、以下では先ずステップＳ１１０の回胴停止処理について説明する。
【０１５２】
図１８は、ステップＳ１１０の回胴停止処理のフローチャートである。
図１８において、ＣＰＵ８０ａは、先ずステップＳ５０１で１回の割込み処理が完了するまで待機する。
ここで、ステップＳ１１０の回胴停止処理の直前のステップＳ１０９では回胴回転開始設定処理が実行されている。先の説明から理解されるように、回転リール４ａ〜４ｃの回転は、当該ステップＳ１０９の回胴回転開始設定処理で必要な設定が為された後の初回のタイマ割込み処理で図１４及び図１５の回胴回転制御処理（Ｓ２０３）が実行されることで開始される。従って、ステップＳ５０１の待機処理は、回転リール４ａ〜４ｃが回転を開始するまで待機する処理として機能する。
なお、ステップＳ５０１の待機処理は、この図に示す処理が進行する過程で複数回実行される。２回目以降に実行されるステップＳ５０１の待機処理は、図１４及び図１５の回胴回転制御処理が１回分行われる、すなわち回転制御が１タイマ割込み分進行するのを待機する処理として機能する。
【０１５３】
ステップＳ５０１の待機処理を行ったことに応じ、ＣＰＵ８０ａはステップＳ５０２で回転中の回胴（回転リール４）に対応する回胴センサＯＮフラグＦ２を判定し、続くステップＳ５０３で回胴センサＯＮフラグＦ２が全てＯＮ（＝１）であるか否か、すなわち全ての回転リール４について原点位置１０１が検出されたか否かを判別する。
これは、先に１）２）として示した停止操作受け付け条件が満たされたか否かを判別していることに相当する。
【０１５４】
回胴センサＯＮフラグＦ２が全てＯＮであるとの条件が満たされていない場合、ＣＰＵ８０ａはステップＳ５１８で停止ボタン１８ａ〜１８ｃを赤点灯させ、ステップＳ５０１に戻る。なお、赤点灯は、停止操作の受け付けが禁止である旨を表す。
【０１５５】
一方、回胴センサＯＮフラグＦ２が全てＯＮであるとの条件が満たされている場合、ＣＰＵ８０ａはステップＳ５０４で無効な操作が行われているか否かを判別する。すなわち、停止ボタン１８ａ〜１８ｃのうち１つの停止ボタン１８を押圧するという有効な停止操作以外の無効な操作が行われているか否かを判別する。
無効な操作が行われている場合、ＣＰＵ８０ａはステップＳ５１８で停止ボタン１８ａ〜１８ｃを赤点灯させ、ステップＳ５０１に戻る。
【０１５６】
無効な操作が行われていない場合、ＣＰＵ８０ａはステップＳ５０５で有効な停止操作が行われているか否かを判別し、有効な停止操作が行われていない場合はステップＳ５１９で回転中の回転リール４に対応する停止ボタン１８を青点灯させ、ステップＳ５０１に戻る。
一方、有効な停止操作が行われている場合、ＣＰＵ８０ａはステップＳ５０６で停止ボタン１８ａ〜１８ｃの全てを赤点灯させる。
【０１５７】
ここで、停止ボタン１８の点灯制御のみについて着目すると、該ステップＳ５０６で停止ボタン１８ａ〜１８ｃの全てを赤点灯させた後には、ステップＳ５１３で全ての回転リール４が停止操作されたか否かが判別され、全ての回転リール４が停止操作されていなければステップＳ５０１に戻って上記のような青点灯・赤点灯に係る処理が実行される。
このような処理の流れにより、回転リール４ａ〜４ｃの回転開始後には、停止ボタン１８ａ〜１８ｃの点灯制御が以下のように行われる。
・回転開始（リール演出開始又は起動開始）から停止操作が受け付け可能となるまでは、停止ボタン１８ａ〜１８ｃの全てを赤点灯で維持させる。
・停止操作が受け付け可能となったとき、停止ボタン１８ａ〜１８ｃの全てを青点灯させる。但し、無効な操作が行われたときは、停止ボタン１８ａ〜１８ｃの全てを赤点灯させる。
・回転リール４の停止操作が行われたときは、一旦停止ボタン１８ａ〜１８ｃの全てを赤点灯させた後、停止操作が行われた回転リール４の停止ボタン１８のみを赤点灯で維持させ、他の回転中の回転リール４に対応する停止ボタン１８を青点灯に戻す。この際、回転中の回転リール４がなければ、停止ボタン１８ａ〜１８ｃの全てが赤点灯状態のままとなる。
【０１５８】
処理の説明を続ける。
上記のようにステップＳ５０５で有効な停止操作が行われていると判別され、ステップＳ５０６で停止ボタン１８ａ〜１８ｃを赤点灯させたことに応じ、ＣＰＵ８０ａはステップＳ５０７で停止信号検出フラグＦ４＝１にセットする。
そして、続くステップＳ５０８でＣＰＵ８０ａは、回転状態フラグを更新する。回転状態フラグは、先の図１２に示した回胴回転開始設定処理（Ｓ１０９）におけるステップＳ３１０の処理で「１」（全ての回転リール４が回転中を表す）に設定されている。ステップＳ５０８では、回転状態フラグの値を回転リール４ａ〜４ｃの停止状態に応じた値に更新する。
【０１５９】
ステップＳ５０８の更新処理を実行したことに応じ、ＣＰＵ８０ａはステップＳ５０９で各種変数の更新処理を実行する。具体的には、停止回胴最新フラグ、図柄停止数、停止対象リール番号の各値を回転リール４ａ〜４ｃの停止状態に応じた値に更新すると共に、停止間隔タイマを２１１ｍｓにセットする。
なお、停止回胴最新フラグ、図柄停止数、停止対象リール番号は、後述する図柄停止制御処理（Ｓ５１０）におけるステップＳ６０５の停止位置取得処理で停止図柄を決定する際に用いられる変数である。
また、停止間隔タイマにセットする２１１ｍｓは、最大滑りコマ数である４コマ分の時間に相当する。
【０１６０】
ステップＳ５０９で各種変数の更新処理を実行したことに応じ、ＣＰＵ８０ａはステップＳ５１０で図柄停止制御処理を実行する。この図柄停止制御処理は、停止操作が行われた回転リール４についての停止図柄を含めた停止位置を決定（算出）し、停止図柄に到達したことに応じて停止命令フラグＦ３＝１をセットし、有効な停止ライン上の図柄を照合することが主な処理内容となるが、詳細については図１９により改めて説明する。
【０１６１】
ステップＳ５１０の図柄停止制御処理を実行したことに応じ、ＣＰＵ８０ａはステップＳ５１１に処理を進め、停止結果情報コマンドセット処理として、停止結果を表す停止結果情報コマンドを演出制御基板４２に送出するべく演出制御インターフェース８６における送信バッファにセットする。
【０１６２】
続くステップＳ５１２でＣＰＵ８０ａは、停止間隔タイマ＝０となるまで待機する。このステップＳ５１２の待機処理により、先のステップＳ５０９で停止間隔タイマが設定されてから２１１ｍｓ分の時間が経過するまでの待機が実現される。このような待機により、停止操作が行われてから次の回転リール４についての停止操作が受け付け可能となるまでの間に必ず最大滑りコマ数分の時間が確保される。
【０１６３】
ＣＰＵ８０ａは、ステップＳ５１２の待機処理を実行したことに応じ、ステップＳ５１３で全ての回転リール４が停止操作されたか否かを判別し、全ての回転リール４が停止操作されていない（つまり停止操作されていない回転リール４が残されている）場合は前述のようにステップＳ５０１に戻り、全ての回転リール４が停止操作されていた場合はステップＳ５１４に処理を進める。
【０１６４】
ステップＳ５１４でＣＰＵ８０ａは、入力ポートの情報取得処理として、停止ボタン１８ａ〜１８ｃ、スタートレバー１７、マックス投入ボタン１６、クレジット精算ボタン１４、及びドア開放センサ３５についての入力情報を取得し、次のステップＳ５１５で上記の各入力情報に対応した操作のうち何れかの操作が行われているか否かを判別する。
何れかの操作が行われている場合、ＣＰＵ８０ａはステップＳ５１４の情報取得処理とステップＳ５１５の判別処理を再度実行する。つまり、何れかの操作が行われている限り処理がステップＳ５１４→Ｓ５１５→Ｓ５１４とループする。
【０１６５】
何れの操作も行われていなければ、ＣＰＵ８０ａはステップＳ５１６に進み、全停止後ウェイトタイマセット処理として、ウェイトタイマに所定値（本例では１０１ｍｓ）をセットし、続くステップＳ５１７で指定数割込み待ち処理を実行する。指定数割込み待ち処理としては、ステップＳ５１６でセットしたウェイトタイマの値に応じた回数分のタイマ割込み処理が実行されるまで待機する処理を実行する。
【０１６６】
ステップＳ５１７の待機処理を実行したことに応じ、ＣＰＵ８０ａはこの図に示す回胴停止処理を終える。
【０１６７】
図１９は、ステップＳ５１０の図柄停止制御処理のフローチャートである。
図柄停止制御処理において、ＣＰＵ８０ａは、先ずステップＳ６０１で図柄ステップ数が１１以上であるか否かを判別する。すなわち、図１８のステップＳ５０５で有効な停止操作が検知された回転リール４についての図柄ステップ数が１１以上であるか否かを判別する。なお、後述するように、図柄ステップ数は、停止操作が行われて停止信号検出フラグＦ４＝１となった以降もタイマ割込みごとにデクリメントされている（図１５参照）。
ＣＰＵ８０ａは、ステップＳ６０１の判別処理を図柄ステップ数が１１以上となるまで実行する。
なお、ステップＳ６０１の判別処理の意義については後述する。
【０１６８】
図柄ステップ数が１１以上であった場合、ＣＰＵ８０ａはステップＳ６０２に進み、停止操作が受け付けられた旨を演出制御基板４２に通知するべく停止操作受付情報コマンドを演出制御インターフェース８６における送信バッファにセットする。
そして、ＣＰＵ８０ａはステップＳ６０３で図柄カウンタの値を取得する。該ステップＳ６０３で取得される図柄カウンタの値は、停止操作が行われたタイミングでの図柄位置を表す。
【０１６９】
ステップＳ６０３で停止操作時の図柄カウンタの値を取得したことに応じ、ＣＰＵ８０ａはステップＳ６０４で停止ボタン押下時回胴図柄番号、及び評価用回胴図柄番号に取得した図柄カウンタの値をセットする。
そして、続くステップＳ６０５でＣＰＵ８０ａは、停止位置取得処理を実行する。停止位置取得処理では、ステップＳ６０４でセットした停止ボタン押下時回胴図柄番号、評価用回胴図柄番号等の必要情報を用いて、停止操作が行われた回転リール４についての停止位置を最大滑りコマ範囲内で決定（算出）する。すなわち、最大滑りコマ範囲内で当該回転リール４についての停止図柄及び停止許可ステップ位置を停止位置として決定する。
なお、停止位置取得処理については本発明と直接関連するものではないため、詳細な説明は省略する。
【０１７０】
ＣＰＵ８０ａは、ステップＳ６０５の停止位置取得処理を実行したことに応じ、ステップＳ６０６で停止図柄に到達するまで待機する。すなわち、図柄カウンタの値がステップＳ６０５で決定された停止図柄に対応する値と一致するまで待機する。
【０１７１】
停止図柄に到達したことに応じ、ＣＰＵ８０ａはステップＳ６０７で停止命令フラグＦ３＝１にセットする。このように停止命令フラグＦ３＝１とされたことで、先の図１４及び図１５に示した回胴回転制御処理により回転リール４を停止させるための制御が開始されるが、これについては後述する。
【０１７２】
ステップＳ６０７で停止命令フラグＦ３＝１にセットしたことに応じ、ＣＰＵ８０ａはステップＳ６０８の優先停止情報取得処理、及び続くステップＳ６０９の演算用マスクデータ格納処理としてそれぞれ所定の処理を実行し、次のステップＳ６１０で有効ライン図柄データ照合処理を実行する。有効ライン図柄データ照合処理では、有効な停止ライン上で停止している図柄の情報を取得する処理が実行される。
【０１７３】
ステップＳ６１０の図柄データ照合処理を実行したことに応じ、ＣＰＵ８０ａはこの図に示す図柄停止制御処理を終える。
【０１７４】
続いて、タイマ割込み処理側で実行される回転リール４の停止のための処理について先の図１４及び図１５を参照して説明する。
上記のようにメイン処理側では、停止操作が行われたことに応じて、当該停止操作が行われた回転リール４に対応する停止信号検出フラグＦ４が「１」にセットされる（Ｓ５０７）。
先の説明から理解されるように、停止操作が行われる前の定常回転中においては、回胴制御フラグＦＧとしては制御中フラグＦ０及び回胴起動済みフラグＦ５のみが「１」で他のフラグＦは全て「０」であったため、停止操作が行われたことに応じては、回胴制御フラグＦＧにおいて制御中フラグＦ０及び回胴起動済みフラグＦ５と共に停止信号検出フラグＦ４が「１」にセットされた状態となる。
【０１７５】
このため、停止操作が行われた回転リール４については、図１４及び図１５に示す回胴回転制御処理において、処理がステップＳ４０１→Ｓ４０２→Ｓ４０３→Ｓ４０５→Ｓ４０６→Ｓ４０７→ＳＳ４０８→Ｓ４２７と進められる。
ステップＳ４２７でＣＰＵ８０ａは、停止命令フラグＦ３の値を判定する。先の図１８及び図１９の説明から理解されるように、停止命令フラグＦ３は、停止操作が行われ（Ｓ５０５）、停止図柄が決定された後（Ｓ６０５）、停止図柄に到達したことに応じて「１」がセットされるものである（Ｓ６０７）。
【０１７６】
停止命令フラグＦ３＝０である場合、すなわち停止操作後の滑り中である場合、ＣＰＵ８０ａは前述したステップＳ４２９以降の処理を実行する。すなわち、図柄ステップ数及び図柄カウンタの値をカウントするための処理（Ｓ４２９〜Ｓ４３４）と、励磁データの更新のための処理（Ｓ４３５・Ｓ４３６・Ｓ４４３）とを実行する。
このことから理解されるように、滑り中においては、定常回転が維持されつつ、図柄ステップ数及び図柄カウンタの値についてのカウントも引き続き行われる。
【０１７７】
なお、前述もしたが、ステップＳ４４３の処理が実行された後は、ステップＳ４４４で全ての回転リール４について処理が終了したか否かが判別され、全ての回転リール４について処理が終了していなければステップＳ４０１において次の回転リール４についての回胴制御フラグＦＧをチェックする処理が実行される。
この際、次の回転リール４についての停止操作が行われていなければ（つまり停止信号検出フラグＦ４＝１でなければ）、当該回転リール４については定常回転中に対応した処理（Ｓ４０９以降の処理）が継続される。一方、次の回転リール４についての停止操作が行われていれば、上記で説明したステップＳ４２９以降の滑り中に対応した処理が実行される。
このように、停止操作が行われた回転リール４から順次、ステップＳ４２９以降の滑り中に対応した処理が実行される。なお、この点については、以下で説明する停止命令フラグＦ３の値に基づく処理についても同様である。
【０１７８】
また、ＣＰＵ８０ａは、ステップＳ４２７で停止命令フラグＦ３＝１であった場合、すなわち停止図柄に到達している場合は、ステップＳ４２８に進んで停止可能位置か否かを判別する。具体的には、図柄ステップ数が「９」未満で且つモータ励磁状態が２相励磁状態である（励磁ポインタＰＴの値が０，２，４，６の何れかである）か否かを判別する。当該ステップＳ４２８の判別処理により、「停止許可ステップ位置」としての８番のステップ位置か、或いは励磁状態の条件が合わなければ７番のステップ位置で回転リール４が停止される。
【０１７９】
ここで、図柄ステップ数のカウントは原点位置１０１を通過したことに応じて開始されるので、原点位置１０１を通過したときの励磁状態が１相励磁か２相励磁かによって［偶数のステップ位置＝２相励磁、奇数のステップ位置＝１相励磁］となるか、或いは［偶数のステップ位置＝１相励磁、奇数のステップ位置＝２相励磁］となるかが定まる。
原点位置１０１通過時の励磁状態が２相励磁であった場合は、偶数のステップ位置＝２相励磁となるため、ステップＳ４２８の判別処理では、図柄ステップ数＝８となったときに励磁状態＝２相励磁と判別される。従ってこの場合は、図柄ステップ数＝８となったときに後述する全相励磁による停止制御が開始され、８番のステップ位置で回転リール４が停止する。
一方、原点位置１０１通過時の励磁状態が１相励磁であった場合は、奇数のステップ位置＝２相励磁となるため、ステップＳ４２８の判別処理では図柄ステップ数＝７となったときに励磁状態＝２相励磁と判別される。つまりこの場合は、７番のステップ位置で回転リール４が停止する。
【０１８０】
ステップＳ４２８において、図柄ステップ数が「９」未満且つ２相励磁状態であるとの条件が満たされず、停止可能位置ではないとの判別結果が得られた場合、ＣＰＵ８０ａは前述したステップＳ４２９以降の処理を実行する。すなわち、停止図柄に到達してから停止可能位置に到達するまでの間は、定常回転が維持されつつ、図柄ステップ数のカウントが引き続き行われる。
【０１８１】
一方、ステップＳ４２８で図柄ステップ数が「９」未満且つ２相励磁状態であるとの条件が満たされ、停止可能位置であるとの判別結果が得られた場合、ＣＰＵ８０ａはステップＳ４３７で回胴停止中フラグＦ７＝１にセットした上で、図１４に示すステップＳ４３８に処理を進める。このステップＳ４３８以降の処理が実行されることで、停止操作が行われた回転リール４に対応するステッピングモータ５４についての停止励磁が行われる。
【０１８２】
先ず、ステップＳ４３２においてＣＰＵ８０ａは、モータ出力タイマＴｏｍの値が０であるか否かを判別する。
ここで、先のステップＳ４３７で回胴停止中フラグ＝１にセットした後、初回にステップＳ４３８の処理が実行される時点では、モータ出力タイマＴｏｍの値としてタイムテーブルインデックス＝２５に対応した「１５１」がセットされている。これは、起動処理の最後のタイマ割込み処理で実行されたステップＳ４１８及びＳ４１９の処理によってタイムテーブルインデックス＝２５に対応した「１５１」が取得・セットされた以降、定常回転中においてはモータ出力タイマＴｏｍの値が一切更新されないためである。
【０１８３】
モータ出力タイマＴｏｍの値が０でない場合、ＣＰＵ８０ａはステップＳ４３９でモータ出力タイマＴｏｍの値をデクリメント（−１）し、続くステップＳ４４０で励磁データφ１〜φ４として０Ｆｈ（「１１１１」）を生成した上で、ステップＳ４４３で当該回転リール４に対応する出力バッファに励磁データφ１〜φ４をセットする。すなわち、ステップＳ４４０で生成した「１１１１」による励磁データφ１〜φ４をセットする。
これにより、先のステップＳ４２８で停止可能位置に到達した回転リール４に対応するステッピングモータ５４について、前述した巻線部Ａ、Ａバー、Ｂ、Ｂバーの全ての駆動信号をｏｎとする「全相励磁」が開始される。このような全相励磁状態が所定時間継続されることで、高速回転する定常回転時の慣性力に拘らず、回転リール４を目的位置に停止させることができる。
【０１８４】
ここで、上記のようにステップＳ４３７で回胴停止中フラグＦ７＝１にセットしたタイマ割込み処理の次のタイマ割込み処理では、停止可能位置に到達した回転リール４について、ステップＳ４０１で回胴制御フラグＦＧの値がチェックされるが、上記のように回胴停止中フラグＦ７＝１にセットされているため、この場合の処理はステップＳ４０１→Ｓ４０２→Ｓ４０３→Ｓ４０５→Ｓ４３８と進められる。これにより、モータ出力タイマＴｏｍの値が０となるまで、すなわちステップＳ４３９のデクリメント処理が「１５１」回実行されるまで、上記したステップＳ４４０の励磁データ生成処理及びステップＳ４４３の励磁データセット処理が繰り返し実行される。従って、「１５１」回のタイマ割込み処理分の時間長にわたって全相励磁状態が維持される。
【０１８５】
モータ出力タイマＴｏｍの値が０となった場合、ＣＰＵ８０ａはステップＳ４４１で励磁データφ１〜φ４として００ｈ（「００００」）を生成し、続くステップＳ４４２で制御中フラグＦ０＝１にセットした上で、ステップＳ４４３の励磁データセット処理を実行する。これにより、巻線部Ａ、Ａバー、Ｂ、Ｂバーの全ての駆動信号がｏｆｆとされ、回転リール４が完全停止状態となる。
【０１８６】
［6-5．停止操作時の図柄と停止図柄との関係］
上記で説明した回胴の停止に係る処理では、図１８のステップＳ５０５で有効な停止操作が検出された回転リール４についての回胴停止制御処理（Ｓ５１０：図１９）において、図柄ステップ数が１１以上であるか否かの判別が行われ（Ｓ６０１）、図柄ステップ数が１１以上であった場合は図柄カウンタの値が取得され（Ｓ６０３）、取得された図柄カウンタの値が停止位置取得処理（Ｓ６０５）で用いる停止ボタン押下時回胴図柄番号、評価用回胴図柄番号の値としてセットされる（Ｓ６０４）。
これによると、停止操作が行われたときのステップ位置が１１番以上（つまり１１番よりも手前）のステップ位置であった場合は、ステップＳ６０１からステップＳ６０２に即座に処理が進められるため、当該停止操作が行われた時点での図柄カウンタの値が示す図柄を基準に最大滑りコマ範囲内で停止図柄が決定される。
一方、停止操作が行われたときのステップ位置が１１番未満のステップ位置であった場合は、ステップＳ６０１で図柄ステップ数が１１以上となるまで待機される、すなわち図柄ステップ数が２４にリセットされるまで待機されるため、停止操作が行われた時点での図柄カウンタの値が示す図柄ではなく、その次の図柄を基準に停止位置取得処理で停止図柄が決定されることになる。
【０１８７】
図２０は、この点を整理した図であり、或る図柄ｎについての２４番〜１番のステップ位置を示している。
上記のように停止操作が行われた時点での図柄ステップ数が１１以上の場合は、停止操作が行われた時点の図柄カウンタの値が示す図柄に基づく停止位置取得処理が実行される。つまり、図柄ｎにおける１１番以上のステップ位置は、その位置で有効な停止操作が行われれば図柄ｎに基づいて停止位置取得処理が実行される。この意味で、２４番〜１１番のステップ位置を「停止処理可能位置」と表記している。
これに対し、ステップ番号が１１未満のステップ位置は、その位置で有効な停止操作が行われても図柄ｎに基づく停止位置取得処理が実行されない。この意味で、１０番〜１番のステップ位置については「停止処理不可能位置」と表記している。
【０１８８】
ここで、前述のように停止許可ステップ位置は８番のステップ位置であるため、本来であれば８番以上のステップ位置を「停止処理可能位置」とすべきである。すなわち、８番以上のステップ位置で停止操作が行われれば、停止操作時の図柄に基づいて停止図柄を決定すべきである。これにより、滑りコマ数＝０である場合、つまり停止図柄＝停止操作時の図柄である場合に、当該停止操作時の図柄の停止ステップ位置（本例では８番又は７番）で回転リール４を停止させることが理論上可能である。
【０１８９】
しかしながら、上記のように８番以上のステップ位置を「停止処理可能位置」としてしまうと、滑りコマ数＝０である場合に、停止操作が行われてから１ステップ以内という比較的速いタイミングで回転リール４を停止させなければならないケースが生じ得る（停止操作が８番のステップ位置で行われた場合）。
停止図柄を決定するための停止位置取得処理は比較的処理内容が複雑で、終了までに比較的長い時間を要する場合があるため、上記のように滑りコマ数＝０であって停止操作が行われてから１ステップ以内という比較的速いタイミングで回転リール４を停止させる必要があるケースにおいては、停止位置図柄取得処理が本来回転リール４を停止すべきタイミングまでに完了せず、回転リール４を停止ステップ位置で適切に停止させることができない虞がある。
【０１９０】
そこで、本実施の形態では、停止許可ステップ位置よりも所定ステップ数以上（本例では３ステップ以上）手前のステップ位置を「停止処理可能ステップ位置」として定めている。
具体的には、停止操作が行われたタイミングで検出されていたステップ位置を停止操作時ステップ位置としたときに、停止操作時ステップ位置が停止許可ステップ位置よりも所定ステップ数以上手前のステップ位置である停止処理可能ステップ位置であった場合には、停止操作が行われたタイミングで検出されていた図柄を基準として最大滑りコマ範囲内で停止位置を決定し、停止操作時ステップ位置が停止処理可能ステップ位置以外であった場合には停止操作が行われたタイミングで検出されていた図柄の次の図柄を基準として最大滑りコマ範囲内で停止位置を決定する。
【０１９１】
これにより、停止操作が行われてから回転リール４を停止させるまでの間に上記の「所定ステップ数」分の時間的な余裕が設けられるため、滑りコマ数＝０である場合でも、停止位置を決定するための処理が停止ステップ位置に至るまでの間に必ず終了するように図ることができる。
従って、回転リール４が停止ステップ位置で安定して停止されるように図ることができる。
【０１９２】
＜７．ＲＡＭ初期化処理について＞
続いて、ＲＡＭ初期化処理（図９のステップＳ１０２）について説明する。
先の説明から理解されるように、ステップＳ１０２のＲＡＭ初期化処理は、１ゲームごとに繰り返し実行されるものである。
このＲＡＭ初期化処理が実行されなければ、１ゲームを開始するための各種変数の設定処理を開始できないため、次ゲームへの移行を速やかに行うためには、ＲＡＭ初期化処理を速やかに実行できることが望ましい。
【０１９３】
この点を踏まえ、本実施の形態における停止に係る処理とＲＡＭ初期化処理との関係について説明する。
これまでの説明から理解されるように、回転リール４の停止制御は、メイン処理における回胴停止処理（図１８及び図１９）と、タイマ割込み処理における回胴回転制御処理（図１４及び図１５）との協業により実現されている。１ゲームの終了間際におけるこれらメイン処理側とタイマ割込み処理側での処理の流れを追ってみると、先ず、メイン処理側では、図１８に示す回胴停止処理（Ｓ１１０）は、次のような流れで終了に至る。すなわち、ステップＳ５１０の図柄停止制御処理において停止図柄への到達に応じて停止命令フラグＦ３＝１にセット（図１９のステップＳ６０７参照）し、ステップＳ５１２で停止間隔タイマ（２１１ｍｓ）が「０」となるまで待機し、さらにステップＳ５１７でウェイトタイマ＝１０１ｍｓ分の待機処理を行った上で終了に至る。そして、このような回胴停止処理（Ｓ１１０）が終了すると、図９に示すように、入賞判定処理（Ｓ１１１）、メダル払出枚数監視処理（Ｓ１１２）、再遊技設定処理（Ｓ１１３）が実行されると共に、必要に応じてボーナス作動中処理（Ｓ１１６）、ボーナス動作開始処理（Ｓ１１７）が実行された上で、ステップＳ１０２のＲＡＭ初期化処理が実行される。
なお、この流れを追ってみると、ステップＳ１０２のＲＡＭ初期化処理は、全ての回転リール４について停止命令フラグＦ３＝１とされた（つまり停止命令情報が設定された）ことを条件に行われる所定の処理（ステップＳ６０８以降ステップＳステップＳ１１６又はＳ１１７までの処理）を実行した後、次のゲームが開始されるまでに実行されることが分かる。
【０１９４】
一方、タイマ割込み処理における回胴回転制御処理（図１４及び図１５）では、ステップＳ４２７で停止命令フラグＦ３＝１（つまり停止図柄への到達）が検知された以降において、ステップＳ４３７で停止可能位置への到達が検知されたことに応じてステップＳ４３８以降の処理が繰り返し実行される。すなわち、１５１回分の時間長に及ぶ全相励磁が行われる。これにより、回転リール４が完全停止状態となる。
なお、全相励磁前（つまり定常回転中）においては、ステップＳ４３５，Ｓ４３６，Ｓ４４３の処理によって駆動データφ１〜φ４を繰り返し更新してＲＡＭ８０ｃの出力バッファに記憶する処理が行われている。停止のための全相励磁は、メイン処理側のステップＳ６０７で設定された停止命令情報に基づき、上記のような定常回転中の駆動データφ１〜φ４の更新を中止し、全相励磁のための所定の駆動データφ１〜φ４をＲＡＭ８０ｃの出力バッファに記憶する（Ｓ４４０→Ｓ４４３）ことで実現されている。
【０１９５】
ここで、停止命令フラグＦ３＝１にセットされた時点（停止図柄への到達時点）を基準として、メイン処理が終了しＲＡＭ初期化処理が実行されるまでに要する時間と、タイマ割込み処理側で全相励磁が完了するまでに要する時間とを対比してみる。
先ず、メイン処理側において、停止命令フラグＦ３＝１にセットした時点（Ｓ６０７）からＲＡＭ初期化処理が実行されるまでの間には、少なくとも、ステップＳ５１２で停止間隔タイマ（２１１ｍｓ）が「０」となるまで待機し、さらにステップＳ５１７でウェイトタイマ＝１０１ｍｓ分の待機を行うことになる。
但し、上記の停止間隔タイマは、停止命令フラグＦ３＝１にセットされるステップＳ５１０の図柄停止制御処理よりも手前のステップＳ５０９においてカウントがスタートされているため、停止命令フラグＦ３＝１にセットされた時点からＲＡＭ初期化処理が実行されるまでに要する時間は単純に２１１ｍｓ＋１０１ｍｓではない。特に、ステップＳ６０５の停止位置取得処理において滑りコマ数が比較的大きく設定された場合（例えば滑りコマ数が３や４）は、ステップＳ５０９で停止間隔タイマのカウントがスタートされてからステップＳ５１０の図柄停止制御処理で停止命令フラグＦ３＝１にセットされるまでに比較的多くの時間が消費される（例えば滑りコマ数＝４であれば９６ステップ×１．４９ｍｓ≒１４３ｍｓが消費される）。このため、停止命令フラグＦ３＝１にセットされた時点からＲＡＭ初期化処理が実行されるまでに要する時間は１７０ｍｓ程度（２１１ｍｓ−１４３ｍｓ＋１０１ｍｓ）となるケースが生じ得る。
【０１９６】
これに対し、停止命令フラグＦ３＝１にセットされてからタイマ割込み処理側で全相励磁が完了するまでに要する時間は、{停止図柄への到達時点から停止可能位置（８番又は７番のステップ位置）に到達するまでのステップ数＝１６又は１７＋１５１}×１．４９ｍｓより、２４８．８３ｍｓ又は２５０．３２ｍｓである。
【０１９７】
これらの対比より、停止命令フラグＦ３＝１にセットされた時点からＲＡＭ初期化処理が実行されるまでに要する時間は、停止命令フラグＦ３＝１にセットされてから全相励磁が完了するまでに要する時間よりも短くなる場合がある。すなわち、ステップＳ１０２のＲＡＭ初期化処理が、全相励磁が完了する前に実行されるケースが生じ得るものである。
【０１９８】
ここで、先の説明からも理解されるように、所定時間長の全相励磁を適正に実行するためには、モータ出力タイマＴｏｍの値が適正にカウントされている必要がある。すなわち、モータ出力タイマＴｏｍの値がＲＡＭ８０ｃにおいて適正に保持されていなければならない。これと同時に、全相励磁のための所定の駆動データφ１〜φ４がＲＡＭ８０ｃの出力バッファに保持されている必要もある。
しかしながら、上記のように全相励磁が完了する前にＲＡＭ初期化処理が実行されてしまうケースでは、全相励磁が完了する前にモータ出力タイマＴｏｍの値や出力バッファにおける駆動データφ１〜φ４がクリアされてしまうこととなり、回転リール４を適正に停止させることができなくなる虞がある。
【０１９９】
このような問題の解決を図るために、ステップＳ１０２のＲＡＭ初期化処理を、全相励磁が完了するまで待機した上で実行することも考えられる。しかしながら、その場合にはＲＡＭ初期化処理の実行までに余分な待機時間を要することとなり、次ゲームへの移行を速やかに行うことができないという問題が生じる。
【０２００】
このため、本実施の形態では、モータ出力タイマＴｏｍの値すなわち回胴の駆動に係る時間情報と、駆動データφ１〜φ４としての回胴を駆動するための駆動データとを、ＲＡＭ８０ｃにおけるステップＳ１０２のＲＡＭ初期化処理での初期化対象領域以外の領域に保持することとしている。換言すれば、ＲＡＭ８０ｃにおける初期化対象領域以外の領域にこれら時間情報と駆動データを記憶するための領域を設定する。
【０２０１】
図２１は、ステップＳ１０２のＲＡＭ初期化処理で１ゲームの終了毎に初期化される初期化対象領域と、当該初期化の対象とされない非初期化対象領域とを模式的に表している。
このようにＲＡＭ８０ｃにおける記憶領域を初期化対象領域と非初期化対象領域とに分けて捉えたとき、本実施の形態では、ＣＰＵ８０ａが上記の時間情報と駆動データを記憶するための領域が非初期化対象領域側に設定されている。
【０２０２】
これにより、ＲＡＭ初期化処理が全相励磁（つまりステッピングモータ５４の停止駆動）の完了前に実行される場合であっても、ＲＡＭ初期化処理において上記の時間情報及び駆動データがクリアされないため、これらの時間情報及び駆動データに基づいて回転リール４が適正に停止される。
従って、全相励磁が完了するまで待機する必要がなくなるため、１ゲームの終了時に対応した所定処理（メイン処理におけるステップＳ６０８以降ステップＳステップＳ１１６又はＳ１１７までの処理）を実行した後に速やかにＲＡＭ初期化処理を行うことができるので、次ゲームへの移行が速やかに行われるようにできる。
【０２０３】
ここで、ＲＡＭ８０ｃにおける初期化対象領域側には、例えばステップＳ１０６の内部抽選処理による抽選結果やステップＳ６０５の停止位置取得処理により決定された停止態様（停止位置）に関する情報等を記憶するための領域が設定されている。これにより、次ゲームへの移行にあたってクリアの必要な情報が１ゲームの終了に応じてクリアされる。
従って、この点でも次ゲームへの移行が速やかに行われるようにできる。
【０２０４】
なお、上記では、回転リール４を回転駆動する手段が備えるアクチュエータがモータとされた場合を例示したが、上記のＲＡＭ初期化処理に係る発明にあっては、当該アクチュエータとしては、回転リール４の停止にあたり動作を所定時間ロックする制御が行われるものであればその種類は問わない。
【０２０５】
＜８．まとめ及び変形例＞
以上で説明したＣＰＵ８０ａの処理により、遊技動作の進行を制御負荷の低減を図りつつ効率的に実現できる。また、遊技動作の進行に要するメモリ容量も削減することができる。特に、回胴の起動回転や、回転停止時の駆動制御を工夫していることで、メモリ領域を浪費することなく、処理負担の軽減が図られている。
【０２０６】
なお、本発明は実施の形態で挙げた例に限らず多様な変形例や適用例が考えられる。
例えば上記では、本発明がスロットマシンに適用される例を示したが、本発明は回転方向に沿って複数の図柄が形成された回胴を備えた遊技機に広く好適に適用できる。
【符号の説明】
【０２０７】
１…本体ケース
２…前面パネル
３…図柄回転ユニット
４ａ〜４ｃ…回転リール（回胴）
１６…マックス投入ボタン
１７…スタートレバー
１８ａ〜１８ｃ…停止ボタン
４０…主制御基板
５４ａ…第１回胴ステッピングモータ
５４ｂ…第２回胴ステッピングモータ
５４ｃ…第３回胴ステッピングモータ
５５ａ…第１回胴インデックスセンサ
５５ｂ…第２回胴インデックスセンサ
５５ｃ…第３回胴インデックスセンサ
８０…コントローラ
８０ａ…ＣＰＵ
８０ｃ…ＲＡＭ
【図１】
0005899250.tif 000002
【図２】
0005899250.tif 000003
【図３】
0005899250.tif 000004
【図４】
0005899250.tif 000005
【図５】
0005899250.tif 000006
【図６】
0005899250.tif 000007
【図７】
0005899250.tif 000008
【図８】
0005899250.tif 000009
【図９】
0005899250.tif 000010
【図１０】
0005899250.tif 000011
【図１１】
0005899250.tif 000012
【図１２】
0005899250.tif 000013
【図１３】
0005899250.tif 000014
【図１４】
0005899250.tif 000015
【図１５】
0005899250.tif 000016
【図１６】
0005899250.tif 000017
【図１７】
0005899250.tif 000018
【図１８】
0005899250.tif 000019
【図１９】
0005899250.tif 000020
【図２０】
0005899250.tif 000021
【図２１】
0005899250.tif 000022