(57)【特許請求の範囲】
【請求項１】
ＲＯＭ領域として、
プログラムが記憶されている第一制御領域と、
データが記憶されている第一データ領域と、
プログラムが記憶されている第二制御領域と、
データが記憶されている第二データ領域と
を少なくとも有し、
ＲＡＭ領域として、
前記第一制御領域に記憶されているプログラムの処理結果情報を記憶可能な第一情報格納領域と、
前記第二制御領域に記憶されているプログラムの処理結果情報を記憶可能な第二情報格納領域と
を少なくとも有し、
前記第二制御領域に記憶されているプログラムによって所定のエラーを検出した場合には、前記第二情報格納領域に前記所定のエラーを検出したことを示す情報を記憶可能とし、
前記第二情報格納領域に前記所定のエラーを検出したことを示す情報が記憶されている場合には、前記第一制御領域に記憶されているプログラムによって前記第二情報格納領域に記憶されている前記所定のエラーを検出したことを示す情報を参照可能とし、前記第一制御領域に記憶されているプログラムによって前記所定のエラーに対応したエラー情報を表示可能に構成され、
前記第一制御領域に記憶されているプログラムによって電源断が発生したか否かを判断可能とし、電源断が発生したと判断した場合には電源断処理を実行可能とし、
前記電源断処理では、前記第二制御領域に記憶されているプログラムによって前記ＲＡＭ領域の情報に基づいて誤り検出用情報を算出可能とし、その後に、前記第一制御領域に記憶されているプログラムによってリセット待ちのループ処理を実行可能である
ことを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
遊技機に関する。
【背景技術】
【０００２】
回胴式遊技機（スロットマシン）は、所定数の遊技メダルを投入後に遊技開始指示装置（スタートレバー）が操作されたことを契機として、複数の図柄が外周上に配置された複数列の回胴（リール）が回転動作し、当該回転動作を停止させるための回胴停止装置（ストップボタン）を駆使して回胴を停止させた結果、有効ライン上に所定の図柄の組合せ（例えば「７７７」）が並んだ場合には、通常遊技状態よりも遊技者にとって利益状態の高い特別遊技状態｛通常時よりも当選役の抽選確率が上昇する遊技状態｝に移行するタイプのものが一般的である。ここで、スロットマシンにおいては、遊技の興趣性を高めるための演出用の画像等が、リールの回転動作及び停止動作とシンクロした形で、液晶等のディスプレイ上にて表示される場合があり、ストップボタン等を操作した際に、リール上に表示された図柄とディスプレイ上に表示された演出用の画像等とを見比べながら、遊技の結果を予測して楽しむよう構成されているものが多い。
【０００３】
また、ぱちんこ遊技機は、始動口（スタートチャッカー）に遊技球が入球したことを契機として、７セグ等の表示部上で「特別図柄」と称される図柄が変動表示され、当該特別図柄が特定態様（例えば「７」）となった場合、通常遊技状態よりも遊技者にとって利益状態の高い特別遊技状態｛通常時は閉状態にある大入賞口（アタッカー）が所定条件で開放する内容の遊技｝に移行するタイプの、いわゆる「デジパチ」と呼ばれている機種（従来の「第一種遊技機」）が一般的である。ここで、遊技者の利益に直結する特別図柄の表示制御の負担を軽減するために、前記の「特別図柄」とは別に、遊技の興趣性を高めるための演出用の「装飾図柄」と称される図柄が、前記特別図柄の変動とシンクロした形で、前記表示部よりもサイズが大きい液晶等のディスプレイ上で変動表示される場合がある。そして、特別図柄の変動が開始されると装飾図柄もこれに合わせて変動を開始し、特別図柄が特定態様（例えば「７」）で停止した場合、装飾図柄もこれに合わせて所定態様（例えば「７７７」）で停止することとなる。そして、装飾図柄が所定態様で停止したことにより、特別遊技へ移行が確定したことを遊技者が明確に認識できるよう構成されているものが多い。
【０００４】
このような仕組みはこの種の多くの遊技機で共通するのであるが、遊技機の動作制御等を司るプログラム容量は、不正プログラムの混入防止（遊技機メーカーが提供するプログラムの正当性保障）の観点からその容量上限が厳しく規制されていると共に、遊技性仕様を実装するためのプログラムの他にも、遊技機に対して不正行為がなされる（例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等）ことを防御するための不正行為防止用のプログラムも数多く実装されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１４７６７５
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、現状では、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとが混在してＲＯＭ上に配置されていることが多く、その結果これらプログラムの正当性を検証することが困難となっているという課題が存在する。
【課題を解決するための手段】
【０００７】
本態様に係る遊技機は、
ＲＯＭ領域として、
プログラムが記憶されている第一制御領域と、
データが記憶されている第一データ領域と、
プログラムが記憶されている第二制御領域と、
データが記憶されている第二データ領域と
を少なくとも有し、
ＲＡＭ領域として、
前記第一制御領域に記憶されているプログラムの処理結果情報を記憶可能な第一情報格納領域と、
前記第二制御領域に記憶されているプログラムの処理結果情報を記憶可能な第二情報格納領域と
を少なくとも有し、
前記第二制御領域に記憶されているプログラムによって所定のエラーを検出した場合には、前記第二情報格納領域に前記所定のエラーを検出したことを示す情報を記憶可能とし、
前記第二情報格納領域に前記所定のエラーを検出したことを示す情報が記憶されている場合には、前記第一制御領域に記憶されているプログラムによって前記第二情報格納領域に記憶されている前記所定のエラーを検出したことを示す情報を参照可能とし、前記第一制御領域に記憶されているプログラムによって前記所定のエラーに対応したエラー情報を表示可能に構成され、
前記第一制御領域に記憶されているプログラムによって電源断が発生したか否かを判断可能とし、電源断が発生したと判断した場合には電源断処理を実行可能とし、
前記電源断処理では、前記第二制御領域に記憶されているプログラムによって前記ＲＡＭ領域の情報に基づいて誤り検出用情報を算出可能とし、その後に、前記第一制御領域に記憶されているプログラムによってリセット待ちのループ処理を実行可能である
ことを特徴とする遊技機である。
＜付記＞
尚、本態様とは異なる別態様について以下に列記しておくが、これらには何ら限定されることなく実施することが可能である。
本別態様に係る遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報（例えば、ＣＰＵＣ１００内のレジスタで保持されている情報）を当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理で更新可能に構成されている
ことを特徴とする遊技機である。
【発明の効果】
【０００８】
本態様に係る遊技機によれば、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの正当性を検証することが容易となるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態に係る回胴式遊技機の斜視図である。
【図２】図２は、本実施形態に係る回胴式遊技機の扉を開いた状態の斜視図である。
【図３】図３は、本実施形態に係る回胴式遊技機における、メダル投入口内部の斜視図である。
【図４】図４は、本実施形態に係る回胴式遊技機における、メダル払出装置の正面図及び上面図である。
【図５】図５は、本実施形態に係る回胴式遊技機の電気的全体構成図である。
【図６】図６は、本実施形態に係る回胴式遊技機の主制御チップに係る電気的構成図である。
【図７】図７は、本実施形態に係る回胴式遊技機における、主制御チップのメモリマップ構成図である。
【図８】図８は、本実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャートである。
【図９】図９は、本実施形態に係る回胴式遊技機における、主制御基板側での設定変更装置制御処理のフローチャートである。
【図１０】図１０は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理（１枚目）のフローチャートである。
【図１１】図１１は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理（２枚目）のフローチャートである。
【図１２】図１２は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理（３枚目）のフローチャートである。
【図１３】図１３は、本実施形態に係る回胴式遊技機における、主制御基板側での復帰不可能エラー処理のフローチャートである。
【図１４】図１４は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入エラー検出処理のフローチャートである。
【図１５】図１５は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出エラー検出処理のフローチャートである。
【図１６】図１６は、本実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラー検出処理のフローチャートである。
【図１７】図１７は、本実施形態に係る回胴式遊技機における、主制御基板側でのタイマ割り込み時処理のフローチャートである。
【図１８】図１８は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入チェック処理のフローチャートである。
【図１９】図１９は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出チェック処理のフローチャートである。
【図２０】図２０は、本実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラーチェック処理のフローチャートである。
【図２１】図２１は、本実施形態に係る回胴式遊技機における、主制御基板側での電源断時処理のフローチャートである。
【図２２】図２２は、第２実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャート（１枚目）である。
【図２３】図２３は、第２実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャート（２枚目）である。
【図２４】図２４は、第２実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理（２枚目）のフローチャートである。
【図２５】図２５は、第２実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入エラー検出処理のフローチャートである。
【図２６】図２６は、第２実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出エラー検出処理のフローチャートである。
【図２７】図２７は、第２実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラー検出処理のフローチャートである。
【図２８】図２８は、第２実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理（３枚目）のフローチャートである。
【図２９】図２９は、第２実施形態に係る回胴式遊技機における、主制御基板側での復帰不可能エラー処理のフローチャートである。
【図３０】図３０は、第２実施形態に係る回胴式遊技機における、主制御基板側でのタイマ割り込み時処理のフローチャートである。
【図３１】図３１は、第２実施形態に係る回胴式遊技機における、主制御基板側での電源断時処理のフローチャートである。
【００１０】
はじめに、本明細書における各用語の意義について説明する。「乱数」とは、回胴式遊技機において何らかの遊技内容を決定するための抽選（電子計算機によるくじ）に使用される乱数であり、狭義の乱数の他に擬似乱数も含む（例えば、乱数としてはハード乱数、擬似乱数としてはソフト乱数）。例えば、遊技の結果に影響を与えるいわゆる「基本乱数」、具体的には、特別遊技の移行や入賞役と関連した「当選乱数」、等を挙げることができる。「ＣＰＵ」とは、当業界において周知であるものと同義であり、使用されているアーキテクチャ（ＣＩＳＣ、ＲＩＳＣ、ビット数等）や処理性能等には何ら限定されない。「電断（電源断）」とは、遊技機に設けられた電源スイッチの操作実行有無に係らず、遊技機に供給される電源電圧が一定レベル以下となったことを指し、例えば、電源供給ユニットの破損や停電等による不測の事態による電源供給の遮断をも包含する。「ＲＯＭ」とは、当業界において周知であるものと同義であり、情報を物理的に保持する（例えば、データ読み出し用の電流を与えた場合、導通する素子構成であれば「１」、導通しない素子構成であれば「０」となる）。ＲＡＭとは、当業界において周知であるものと同義であり、情報を電気的に保持する（例えば、データ読み出し用の電流を与えた場合、蓄電されていれば「１」、蓄電されていなければ「０」となる。尚、ＲＡＭ内で保持されているデータの一部又はすべてに対して、電断時にはバックアップ電源が供給されるよう構成されていることが一般的である）。「遊技状態」とは、例えば、遊技メダルが獲得容易であり遊技者にとって有利な特別遊技状態（いわゆる大当り遊技であり、ボーナス遊技や第１種ＢＢ・第２種ＢＢ等と呼ばれるものが該当する）、再遊技の当選率があらかじめ定められた値である通常遊技状態よりも再遊技当選率が高い（又は低い）状態である再遊技確率変動遊技状態（ＲＴ状態）、当選した役を入賞させるためのリールの停止順を報知し得るＡＴ（アシストタイム）状態、前記ＲＴ状態とＡＴ状態とが複合したＡＲＴ（アシストリプレイタイム）状態、等が挙げられる。また、前記通常遊技状態においても、前記ＲＴ状態、ＡＴ状態、ＡＲＴ状態への移行抽選確率が異なる、高確率通常遊技状態、低確率通常遊技状態、等が挙げられる。また、前記遊技状態は複合しても問題ない｛更に、これらの遊技状態や機能（例えば、ＡＴ状態への移行抽選や、リールの停止順に係る報知指示の出力等）は、遊技進行を制御する主制御基板側ですべて実装してしまっても問題ない｝。
【００１１】
以下の実施形態は、回胴式遊技機（いわゆるスロットマシン）を前提としたものとなっているが、これには何ら限定されず、他の遊技機（例えば、ぱちんこ遊技機、雀球、アレンジボール等）に応用された場合も範囲内であり、即ち、遊技進行を制御するマイコンチップ（ＣＰＵ、ＲＯＭ、ＲＡＭを搭載したチップ）を備え、当該マイコンチップにてプログラムを動作させるものに対して応用することができる技術である。尚、本実施形態は、あくまで一例であり、各手段が存在する場所や機能等、各種処理に関しての各ステップの順序、フラグのオン・オフのタイミング、各ステップの処理を担う手段名等に関し、以下の態様に限定されるものではない。また、上記した実施形態や変更例は、特定のものに対して適用されると限定的に解すべきでなく、どのような組み合わせであってもよい。例えば、ある実施形態についての変更例は、別の実施形態の変更例であると理解すべきであり、また、ある変更例と別の変更例が独立して記載されていたとしても、当該ある変更例と当該別の変更例を組み合わせたものも記載されていると理解すべきである。
【００１２】
ここで本発明の詳細な説明に先立ち、本発明に係る簡潔な構成を説明する。
【００１３】
本発明に係る回胴式遊技機のうち、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域（又は、レジスタ領域）を更新及び参照し得る構成を（本実施形態）にて詳細に説明する。
【００１４】
本発明に係る回胴式遊技機のうち、第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第２ＲＡＭ領域を参照可能に構成し、且つ、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域を参照し得る構成を（第２実施形態）にて詳細に説明する。
【００１５】
（本実施形態）
ここで、各構成要素について説明する前に、本実施形態に係る回胴式遊技機Ｐの特徴（概略）を説明する。以下、図面を参照しながら、各要素について詳述する。
【００１６】
まず、図１（一部の構成については図２）を参照しながら、本実施形態に係る回胴式遊技機の前面側の基本構造を説明する。まず、回胴式遊技機Ｐは、主に前扉（フロントドアとも称す）と、裏箱（キャビネット、基体とも称す）と裏箱内に設置されたリールユニット、ホッパ装置、電源ユニット、主制御基板Ｍ（主制御チップＣが搭載されている基板）で構成される。以下、これらを順に説明する。
【００１７】
次に、回胴式遊技機Ｐの前扉ＤＵは、装飾ランプユニットＤ１５０、メダル受け皿Ｄ２３０、を含む。まず、装飾ランプユニットＤ１５０は、回胴式遊技機Ｐの遊技の進行に応じて発光する発光源を有したものである。また、前扉ＤＵの開閉状態を検出可能な扉スイッチＤ８０が設けられている。また、前扉ＤＵには鍵穴Ｄ２６０が設けられており、鍵穴Ｄ２６０の形状と整合するキー（ドアキー）を鍵穴Ｄ２６０に差し込む｛加えて、所定の方向（例えば、時計回り）に捻る｝ことで、前扉ＤＵを開放し得るよう構成されている。更に、本実施形態においては、ドアキーを鍵穴Ｄ２６０に差し込む｛加えて、所定の方向（例えば、反時計回り）に捻る｝ことで、エラー状態（後述する、ドア開放エラー等）を解除し得るよう構成されている。次に、メダル受け皿Ｄ２３０は、放出口Ｄ２４０から放出された遊技メダル（或いは単にメダルと呼ぶことがある）の受け皿である。
【００１８】
次に、前扉ＤＵは、遊技状態を視認可能にするための機構、遊技媒体の入力を可能にするための機構、リールユニットを操作するための機構、等を含む。具体的には、遊技状態を視認可能にするための機構として、リール窓Ｄ１６０、投入数表示灯Ｄ２１０、操作状態表示灯Ｄ１８０、特別遊技状態表示装置Ｄ２５０、払出数表示装置Ｄ１９０、クレジット数表示装置Ｄ２００等が取り付けられている。また、遊技媒体の投入や賭け数（ベット数）の入力を可能にするための機構として、メダル投入口Ｄ１７０、ベットボタンＤ２２０、投入された遊技媒体の払い出しを可能にするための機構として、精算ボタンＤ６０が取り付けられている。そして、リールユニットを操作するための機構として、スタートレバーＤ５０、停止ボタンＤ４０が取り付けられている。以下、各要素について詳述する。
【００１９】
＜遊技状態を視認可能にするための機構＞
次に、リール窓Ｄ１６０は、前扉ＤＵの一部を構成する合成樹脂等によって形成された透明な部材であり、リール窓Ｄ１６０を通して遊技機枠内に設置されたリールユニットを視認可能に構成されている。また、投入数表示灯Ｄ２１０は、ＬＥＤによって構成されており、現在ベット（一の遊技を開始するために必要な遊技メダルを投入すること）されているメダル数と同数のＬＥＤが点灯するよう構成されている。また、操作状態表示灯Ｄ１８０は、ＬＥＤによって構成されており、現在の操作状態（メダル受付可否状態、再遊技入賞状態、遊技開始ウェイト状態等）に応じて点灯・消灯するよう構成されている。また、特別遊技状態表示装置Ｄ２５０は、７セグメントディスプレイによって構成されており、特別遊技中に払い出された払出数の総数が表示されるよう構成されている。尚、特別遊技状態表示装置Ｄ２５０を設けない構成としてもよく、そのように構成した場合には、演出表示装置Ｓ４０にて当該払出数の総数を表示するよう構成することで遊技者は特別遊技中に払い出された払出数の総数を認識することができユーザーフレンドリーな遊技機とすることができる。また、払出数表示装置Ｄ１９０は、７セグメントディスプレイによって構成されており、現在払出されている遊技メダル数が表示されるよう構成されている。また、クレジット数表示装置Ｄ２００は、７セグメントディスプレイによって構成されており、遊技者の持ちメダルとして遊技機内に貯留されているメダル数の総数（クレジット数）が表示されるよう構成されている。
【００２０】
＜遊技媒体の入力を可能にするための機構＞
次に、メダル投入口Ｄ１７０は、遊技メダルの投入口であり、メダル受付可能状態である状況下において当該投入口に投入された遊技メダルは遊技機枠内部へと誘導される。また、遊技機枠内部にはメダルの投入を検出するセンサとして、投入受付センサＤ１０ｓと、第１投入センサＤ２０ｓと、第２投入センサＤ３０ｓと、が設けられており、当該遊技機枠内部へと誘導された遊技メダルが正常に投入されたと判断した場合に、当該投入されたメダルをベットされたメダルとして検出し得るよう構成されている。また、ベットボタンＤ２２０は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル（クレジットのメダル）をベットすることができるよう構成されている。また、精算ボタンＤ６０は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル（クレジットのメダル）及び／又はベットされているメダルを遊技者に払い戻すことが可能となっている。尚、精算ボタンＤ６０の操作によって払い戻された遊技メダルは、放出口Ｄ２４０に払い出されるよう構成されている。
【００２１】
＜リールユニットを操作するための機構＞
次に、スタートレバーＤ５０は、遊技者によって操作可能に構成されており、当該操作によってリールユニットの動作を開始可能に構成されている。また、停止ボタンＤ４０は、遊技者によって操作可能な左停止ボタンＤ４１、中停止ボタンＤ４２、右停止ボタンＤ４３を備えており、夫々の停止ボタンを操作することによってリールユニットの動作を順次停止可能に構成されている。
【００２２】
次に、回胴式遊技機Ｐのリールユニットは、リールＭ５０とリールＭ５０の駆動源（ステッピングモータ等）とを備えている。また、リールＭ５０は、左リールＭ５１、中リールＭ５２、右リールＭ５３を備えている。ここで、夫々のリール部は合成樹脂等により形成され、当該リール部の外周上（リール帯上）には複数の図柄が描かれている。そして、スタートレバーＤ５０及び停止ボタンＤ４０における各停止ボタンの操作に基づき、夫々のリール部の回転動作及び停止動作を可能とするよう構成されている。また、図示しないが、左リールＭ５１、中リールＭ５２及び右リールＭ５３の内部にはＬＥＤ（以下、リールバックライトと呼ぶことがある）が設けられており、当該ＬＥＤが点灯した際にはリール部外周を透過した光によって、リール部外周が点灯したように視認できるよう構成されている。
【００２３】
＜その他の機構＞
また、回胴式遊技機Ｐの遊技機枠の内外には、遊技の興趣性を高めるための機構として、予告演出や背景演出等の演出を表示するための演出表示装置Ｓ４０、様々な点灯態様にて点灯し得るＬＥＤランプＳ１０、サウンドを出力し得るスピーカＳ２０、合成樹脂等によって形成された部材である、上パネルＤ１３０及び下パネルＤ１４０、等が設けられている。
【００２４】
次に、図２は、前扉ＤＵを開いて回胴式遊技機Ｐの内部の構成を示した斜視図である。前扉ＤＵの裏面側上部には、演出表示装置Ｓ４０が取り付けられている。前扉ＤＵのほぼ中央にはリール窓Ｄ１６０が設けられており、その下方には、後述する扉基板Ｄが設けられている。また、扉基板Ｄには、前述した停止ボタンＤ４０や、スタートレバーＤ５０、精算ボタンＤ６０等の入力信号が入力される。また、扉基板Ｄの下方には、スピーカＳ２０が設けられている。
【００２５】
また、詳細は後述するが、扉基板Ｄの付近には、メダル投入口Ｄ１７０から投入された遊技メダルの通路となる投入受付センサＤ１０ｓが設けられており、当該投入受付センサＤ１０ｓの下方には、遊技メダルを放出口Ｄ２４０に導くためのコインシュータＤ９０などが設けられている。投入受付センサＤ１０ｓは、メダル投入口Ｄ１７０から投入された遊技メダルを主に寸法に基づいて選別し、規格寸法に適合した遊技メダルだけを受け入れる機能を有しており、当該機能により適合しないと判断されたメダル（又は、その他の異物）は、ブロッカＤ１００により放出口Ｄ２４０に払い戻されるよう構成されている。遊技者がスタートレバーＤ５０を操作する前に（遊技メダルの投入が有効である状態にて）遊技メダルを投入すると、遊技メダルは投入受付センサＤ１０ｓによって選別され、規格を満足しているものだけがホッパＨ４０内に投入され、規格を満たしていないメダルは、コインシュータＤ９０を通って、放出口Ｄ２４０に返却されるようになっている。これに対して、スタートレバーＤ５０が操作された後に（遊技メダルの投入が有効でない状態にて）遊技メダルが投入された場合は、投入された遊技メダルはコインシュータＤ９０を通って、放出口Ｄ２４０に返却される。また、投入受付センサＤ１０ｓの内部（流路の奥）には、詳細後述するメダル投入に係るセンサが設けられており、寸法規格を満たして受け入れられた遊技メダルが通過すると、第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓによって検出されて、その信号が後述する主制御基板Ｍに供給されるようになっている。
【００２６】
リールＭ５０の上方には、遊技全体の制御を司る後述する主制御基板Ｍが格納されており、リールＭ５０の背後には、各リール（左リールＭ５１、中リールＭ５２、右リールＭ５３）を駆動するための後述する回胴基板Ｋが格納されている。また、リールＭ５０の左方には、図１に示した演出表示装置Ｓ４０や、ＬＥＤランプＳ１０、スピーカＳ２０等を用いて行われる各種演出の制御を司る後述する副制御基板Ｓが格納されている。また、主制御基板Ｍには、後述する設定変更装置制御処理を実行するため（設定変更を行うため）に使用する設定キースイッチＭ２０、設定値の変更やエラー解除等を実行し得る設定／リセットボタンＭ３０、設定キースイッチＭ２０や設定／リセットボタンＭ３０等を保護するための設定扉（不図示）の開閉を判定する設定扉スイッチＭ１０が接続されている。尚、設定キースイッチＭ２０、設定／リセットボタンＭ３０、設定扉スイッチＭ１０については何れも不図示としているが、主制御基板Ｍの基板上等の適宜位置に設けられていればよい（即ち、前扉ＤＵを開かなければ人為的なアクセスが困難な位置に設けられていればよい）。
【００２７】
リールＭ５０の下方には、投入された遊技メダルが集められるホッパＨ４０や、遊技メダルを払い出すメダル払出装置Ｈが設けられており、回胴式遊技機Ｐ全体に電源を供給するための電源基板Ｅが格納されている。メダル払出装置Ｈから払い出された遊技メダルは、コインシュータＤ９０を通って、放出口Ｄ２４０から払い出されるようになっている。また、電源基板Ｅの前面には、回胴式遊技機Ｐの電源を投入するための電源スイッチＥ１０も設けられている。
【００２８】
次に、図３は、回胴式遊技機内部における、メダル投入口Ｄ１７０に投入された遊技メダルの経路（セレクタ）を示した斜視図である。メダル投入口Ｄ１７０に投入された遊技メダルは、まず投入受付センサＤ１０ｓを通過する。当該投入受付センサＤ１０ｓは機械式のダブルセンサになっており、遊技メダルが通過することによって、２つの突起した機構が押下されることによりオンとなり遊技メダルが正常に通路を通過することができることとなる。また、このような構成により、遊技メダルではない異物（例えば、遊技メダルよりも径が小さいもの）が投入された場合には、前記２つの突起した機構が押下されない。このようなメダルは、起立した状態をメダルが維持できないため、通路を通過できず（メダルが倒れこむ）放出口Ｄ２４０に払い戻されることとなる。そのほかにも、投入受付センサＤ１０ｓは、オンとなっている時間が所定時間以上連続した場合等にも、エラーであると判定し得る（その結果、ブロッカＤ１００がオフとなり得る）よう構成されている。
【００２９】
遊技メダルがブロッカＤ１００を正常に通過した場合に、当該通過直後に第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓを通過することとなる。この投入センサ（第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓ）は２つのセンサで構成されており（遊技メダルの規格上の直径よりも小さい間隔で隣接配置されており）、夫々のセンサのオン・オフ状況（第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓのオン・オフの組み合わせの遷移していく順序、等）及びオン・オフとなっている時間を監視することにより様々なエラー（後述する、投入メダル滞留エラー、投入メダル逆流エラー、等）を検出可能に構成されている。
【００３０】
次に、図４は、回胴式遊技機における、メダル払出装置Ｈの正面図及び斜視図である。メダル払出装置Ｈは、クレジット（遊技機内部に電子的に貯留されている遊技メダル）又はベットされているメダル（遊技を開始するために投入されたメダル）が存在する状態で、精算ボタンが操作された、又は、入賞により遊技メダルが払い出される場合に作動することとなる。作動する場合には、まず、ホッパモータＨ８０が駆動することにより、ディスク回転軸Ｈ５０ａを中心にディスクＨ５０が回転する。当該回転によりメダル払出装置Ｈ内の遊技メダルは放出付勢手段Ｈ７０を変位させて遊技メダル出口Ｈ６０から放出口Ｄ２４０に向かって流下していくこととなる。尚、払出センサ（第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓ）は２つのセンサで構成されており、夫々のセンサのオン・オフ状況（第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓのオン・オフの組み合わせの遷移していく順序、等）及びオン・オフとなっている時間を監視することにより様々なエラー（後述する、払出メダル滞留エラー、等）を検出可能に構成されている。より具体的には、例えば、遊技メダル出口Ｈ６０を正常に通過する際には、放出付勢手段Ｈ７０の変位により、第１払出センサＨ１０ｓ＝オフ・第２払出センサＨ２０ｓ＝オフの状態から、第１払出センサＨ１０ｓ＝オフ・第２払出センサＨ２０ｓ＝オフ→第１払出センサＨ１０ｓ＝オン・第２払出センサＨ２０ｓ＝オフ→第１払出センサＨ１０ｓ＝オン・第２払出センサＨ２０ｓ＝オン→第１払出センサＨ１０ｓ＝オン・第２払出センサＨ２０ｓ＝オフ→第１払出センサＨ１０ｓ＝オフ・第２払出センサＨ２０ｓ＝オフ、というセンサ状態遷移となるため、このセンサ状態遷移と反する動きを検出した場合には、エラーとするよう構成することを例示することができる。
【００３１】
次に、図５のブロック図を参照しながら、本実施形態に係る回胴式遊技機Ｐの電気的な概略構成を説明する。はじめに、本実施形態に係る回胴式遊技機は、遊技の進行を制御する主制御基板Ｍを中心として、副制御基板Ｓ、扉基板Ｄ、回胴基板Ｋ、電源基板Ｅ、中継基板ＩＮ、設定扉スイッチＭ１０、設定キースイッチＭ２０、設定／リセットボタンＭ３０等がデータをやり取り可能に接続されて構成されている。尚、図中の実線部がデータのやり取りに関する動きを示したものであり、図中の破線部が電源供給ルートを示したものである。尚、電源供給ルートはこれに限られたものではなく、例えば電源基板Ｅから主制御基板を介さずに中継基板ＩＮや扉基板Ｄに電源を供給しても良い。
【００３２】
主制御基板Ｍは、回胴式遊技機Ｐで行われる遊技全体の進行を司る基板である。当該主制御基板Ｍには、主制御チップＣが搭載されており、主制御チップＣには、ＣＰＵＣ１００、内蔵ＲＯＭＣ１１０、内蔵ＲＡＭＣ１２０等がバスによって互いにデータをやり取り可能に接続されて搭載されている（図示及び詳細については後述する）。そして、主制御基板Ｍは、前扉ＤＵに搭載された扉基板Ｄから、スタートレバーＤ５０等が操作されたことを示す信号等を受け取って、副制御基板Ｓや、扉基板Ｄ、回胴基板Ｋ等に向かって制御コマンド（あるいは制御信号）を出力することにより、これら各種基板の動作を制御している。
【００３３】
また、副制御基板Ｓにも、前述した主制御基板Ｍと同様に、副制御チップＳＣが搭載されており、副制御チップＳＣには、ＣＰＵや、ＲＯＭ、ＲＡＭ等が設けられていて、バスによって互いにデータをやり取り可能に接続されて構成されている。また、副制御基板Ｓには、各種ＬＥＤランプＳ１０、スピーカＳ２０、演出表示装置Ｓ４０、回胴バックライトＳ３０等が接続されている。ここで回胴バックライトＳ３０とは、左リールＭ５１、中リールＭ５２、右リールＭ５３夫々の内部に設けられ、当該リールの表面に描かれた図柄を裏側から照らすライトである。副制御基板Ｓは、主制御基板Ｍから受け取った制御コマンドを解析して、各種ＬＥＤランプＳ１０、スピーカＳ２０、演出表示装置Ｓ４０、回胴バックライトＳ３０等にそれぞれ駆動信号を出力することにより、各種の演出を行っている。
【００３４】
扉基板Ｄには、前述した投入受付センサＤ１０ｓ、第１投入センサＤ２０ｓ、第２投入センサＤ３０ｓ、回転しているリールＭ５０を停止するための停止ボタンＤ４０、リールＭ５０の回転を開始するためのスタートレバーＤ５０、貯留されている遊技メダル（クレジット）や投入された遊技メダルを払い出して遊技を終了するための精算ボタンＤ６０、遊技の状態を表示する各種の表示パネルＤ７０（前述した、投入数表示灯Ｄ２１０、操作状態表示灯Ｄ１８０、特別遊技状態表示装置Ｄ２５０、払出数表示装置Ｄ１９０は、クレジット数表示装置Ｄ２００、等の表示装置の集合体）、扉の開閉の判定やエラーの解除や設定値の変更を実行するための扉スイッチＤ８０、投入された後に適合しないと判断された遊技メダル（又は、その他の異物）を放出口Ｄ２４０に払い戻すためのブロッカＤ１００等が接続されている。また、この扉基板Ｄは、前述した主制御基板Ｍとデータをやり取り可能に接続されている。このため、前扉ＤＵに設けられたスタートレバーＤ５０や、停止ボタンＤ４０、精算ボタンＤ６０等を操作すると、扉基板Ｄを介して、当該操作に係る信号が主制御基板Ｍに供給されるようになっている。また、投入受付センサＤ１０ｓが遊技メダルの通過を検出した信号も、扉基板Ｄを介して主制御基板Ｍに供給される。
【００３５】
また、回胴基板Ｋには、リールＭ５０を回転させるための回胴モータＫ１０と、リールＭ５０の回転位置を検出するための回胴センサＫ２０等が接続されている。回胴基板Ｋは、当該回胴センサＫ２０によって、リールＭ５０の回転位置を検出しながら回胴モータＫ１０を駆動することにより、リールＭ５０を、決定された停止位置で停止させることが可能となっている。また、本実施形態の回胴式遊技機においては、回胴モータＫ１０には、所謂ステップモータ（ステッピングモータ）が使用されている。尚、ステップモータは、リールＭ５０が１回転するステップ数として、５０４ステップが設定されている。また、各リール（左リールＭ５１、中リールＭ５２、右リールＭ５３）には略均一の大きさで所定数（例えば、２１個）の図柄が設定されており、１図柄分に相当するステップ数としては、２４ステップ（＝２１／５０４）が設定されている。尚、ステップ数、リール１周あたりの図柄の数は変更しても何ら問題ない。
【００３６】
また、メダル払出装置Ｈは、中継基板ＩＮを介して、主制御基板Ｍに接続されており、主制御基板Ｍからの制御信号に基づいて、所定枚数（例えば、１０枚）の遊技メダルを払い出す動作を行う。尚、メダル払出装置Ｈにはメダルが正常に払い出されたか否かの判定や払い出された遊技メダルの数の計測を実行する第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓと、ディスクＨ５０を回転させるためのホッパモータＨ８０と、が接続されている。
【００３７】
これら各種制御基板、及び基板で消費される電力は、電源基板Ｅ（電源スイッチＥ１０により電源供給の有無を制御する基板）から供給されている。図５では、電源基板Ｅから電力が供給される様子を破線の矢印で表している。図示されているように、主制御基板Ｍおよび副制御基板Ｓには、電源基板Ｅから電力が直接供給されており、各種基板（扉基板Ｄ、回胴基板Ｋ、中継基板ＩＮ）には、主制御基板Ｍを介して電力が供給されている。電源基板Ｅには所定量（例えば、１００Ｖ）の交流電圧が供給されており、この電力を規定電圧の直流電圧に変換した後、夫々の制御基板及び基板に供給している。
【００３８】
また、主制御基板Ｍには、後述する設定変更装置制御処理を実行するため（設定変更を行うため）に使用する設定キースイッチＭ２０、設定値の変更やエラー解除等を実行し得る設定／リセットボタンＭ３０、設定キースイッチＭ２０や設定／リセットボタンＭ３０等を保護するための設定扉（不図示）の開閉を判定する設定扉スイッチＭ１０が接続されている。
【００３９】
＜主制御部の基本回路の構成例＞
次に、図６を用いて、主制御基板Ｍの主制御チップＣの構成例について説明する。
【００４０】
まず、図６に示す主制御チップＣには、ＣＰＵＣ１００、内蔵ＲＯＭＣ１１０（第１ＲＯＭ領域Ｃ１１１、第２ＲＯＭ領域Ｃ１１２）、内蔵ＲＡＭＣ１２０（第１ＲＡＭ領域Ｃ１２１、第２ＲＡＭ領域Ｃ１２２）、外部バス制御回路Ｃ１９０、パラレル入力ポートＣ１３０、アドレスデコード回路Ｃ１５０、タイマ回路Ｃ１７０、カウンタ回路Ｃ１８０、リセット制御回路Ｃ２２０に加え、割込み制御回路Ｃ１６０、クロック回路Ｃ２１０、乱数生成回路Ｃ１４０、照合用ブロックＣ２３０、固有情報Ｃ２４０、演算回路Ｃ２５０が備えられており、これら全てが内部バスＣ２００を介して互いに接続されている。
【００４１】
以下、上記説明した各部の詳細について説明する。
【００４２】
まず、ＣＰＵＣ１００は、内蔵ＲＯＭＣ１１０や内蔵ＲＡＭＣ１２０のプログラムやデータによって様々な数値計算や情報処理、制御処理などを実行する。内蔵ＲＯＭＣ１１０は、制御プログラムや各種データを記憶する。内蔵ＲＡＭＣ１２０は、一時的にデータを記憶する。また、内蔵ＲＯＭＣ１１０及び内蔵ＲＡＭＣ１２０はアドレスとデータとをセットとして保持しており、アドレス範囲で用途が区切られている。尚、当該用途として主なものは、プログラム領域とデータ領域であるが、この点の詳細については、後述するメモリマップの説明に譲る。
【００４３】
外部バス制御回路Ｃ１９０は、ＩＯリクエスト端子（ＸＩＯＲＱ端子）、メモリリクエスト端子（ＸＭＲＥＱ端子）、リード信号端子（ＸＲＤ端子）、ライト信号端子（ＸＷＲ端子）、１６ビット幅のアドレス出力端子（Ａ０端子〜Ａ１５端子）、および８ビット幅の入出力端子であるデータ入出力端子（Ｄ０端子〜Ｄ７端子）を有する。本実施形態では、このうちデータ入出力端子（Ｄ０端子〜Ｄ７端子）は、各駆動回路（例えば、中継基板ＩＮを介しての回胴基板Ｋ）へのデータ出力と、各周辺制御回路（例えば、扉基板Ｄを介しての各種センサや各種操作部材）からのデータ入力に用いられている。このデータ入出力端子（Ｄ０端子〜Ｄ７端子）によるデータの入出力先は、アドレス出力端子（Ａ０端子〜Ａ１５端子）から出力されるアドレス信号、およびアドレスデコード回路Ｃ１５０から出力されるチップセレクト信号を用いて切り替えられる。
【００４４】
パラレル入力ポートＣ１３０は、４つの入力端子（Ｐ０端子〜Ｐ３端子）を有する。これらの入力端子（Ｐ０端子〜Ｐ３端子）は、例えば、その入力端子のいずれかがスタートレバーＤ５０に接続されており、乱数生成回路Ｃ１４０が生成する乱数をＣＰＵＣ１００に取得させるためのラッチ信号として、乱数生成回路Ｃ１４０に出力する。
【００４５】
アドレスデコード回路Ｃ１５０は、所定数（例えば、１４）の出力端子（ＸＣＳ０端子〜ＸＣＳ１３端子）を有する。当該出力端子（ＸＣＳ０端子〜ＸＣＳ１３端子）は、主制御チップＣの外部にある周辺制御回路に接続されており、外部バス制御回路Ｃ１９０のデータ入出力端子（Ｄ０端子〜Ｄ７端子）から出力されるデータの送信先を切り替えるためのチップセレクト信号等の出力に用いられている。
【００４６】
タイマ回路Ｃ１７０は、時間の計測に用いられる。尚、タイマ回路Ｃ１７０は設定された計測時間を過ぎると、タイムアウト信号をカウンタ回路Ｃ１８０に出力する。一方、カウンタ回路Ｃ１８０は、各種信号の立ち上がり（あるいは立ち下がり）の回数の計測に用いられる。当該カウンタ回路で計測される信号には、主制御チップＣのシステムクロックの他、前記タイマ回路からのタイムアウト信号、メモリの読み書き信号、メモリリクエスト信号、外部入出力の信号、割込みに対する応答信号等も計測することができる。
【００４７】
リセット制御回路Ｃ２２０は、システムリセット入力端子（ＸＳＲＳＴ端子）と、リセット出力端子（ＸＲＳＴＯ端子）の２つの端子を有する。このシステムリセット入力端子（ＸＳＲＳＴ端子）は電圧監視回路（電圧を監視するための回路であり、不図示となっている）に接続されている。当該システムリセット入力端子（ＸＳＲＳＴ端子）からシステムリセット信号（例えば一定時間Ｌレベルの信号）が入力されると、リセット制御回路Ｃ２２０は、主制御チップＣの内部の回路に対してこのシステムリセット信号を出力するとともに、主制御チップＣの外部にある周辺制御回路に対してリセット出力端子（ＸＲＳＴＯ端子）からリセット信号（例えば、ＬレベルからＨレベルへの立ち上がり信号）が出力される。この場合、主制御チップＣでは、システムリセットと称する処理が実行され、各回路が初期化される。当該システムリセットが実行される一例として、電源投入時が挙げられる。
【００４８】
また、リセット制御回路Ｃ２２０は、ウォッチドッグタイマＣ２２２と、指定エリア外走行禁止回路Ｃ２２１とを備えている。ウォッチドッグタイマＣ２２２がタイムアウトになった場合や、ＣＰＵＣ１００が所定の範囲以外のアドレスを参照（指定エリア外走行）した場合には、リセット制御回路Ｃ２２０は、主制御チップＣの内部の回路に対してシステムリセット信号およびユーザリセット信号のいずれかを出力する。尚、システムリセット信号およびユーザリセット信号のどちらを出力するかは、内蔵ＲＯＭＣ１１０内のプログラム領域（詳細は後述する）の設定に従う。また、主制御チップＣの外部にある周辺制御回路に対しては、リセット出力端子（ＸＲＳＴＯ端子）からリセット信号が出力される。
【００４９】
主制御チップＣでは、設定によって上記のシステムリセットか、或いはユーザリセットと称する処理のいずれかを実行させることができる。
【００５０】
上記指定エリア外走行は、プログラムが想定外の動作をしていることを意味する。この場合、ＣＰＵＣ１００が本来プログラムとして扱われるはずのないコードにより動作することになる。このような状況は、プログラムミスによる所謂暴走した状態の他に、何らかの不正によって生じている可能性がある。この場合、上記のシステムリセットおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるようになっている。また、ウォッチドッグタイマＣ２２２がタイムアウトになった場合としては、プログラムミスによる暴走した状態や、電圧降下によりＣＰＵＣ１００が本来設計した動作を行うことができなくなった場合等がある。この場合にも、上記のシステムおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるように構成されている。
【００５１】
割込み制御回路Ｃ１６０は、外部入力や内部状態の変化に応じて適宜処理を実行させるために割込みを発生させる。この割込み処理には、例えば外部からの入力（センサによる信号）を受け付けた場合に実行する処理がある。本実施形態では、タイマ回路からの割込み要求により実行されるタイマ割込み処理を実行するようにしている。尚、割込み制御回路Ｃ１６０は、内部情報レジスタＣ１６１を備えており、当該内部情報レジスタＣ１６１には、乱数生成回路Ｃ１４０で乱数更新周期を決める外部クロック（カウントクロック）の周期の異常、および乱数の更新に関する異常、さらに、直前に発生したユーザリセットのリセット要因の情報等が格納される。
【００５２】
クロック回路Ｃ２１０は、水晶発振器（不図示）から外部クロック入力端子（ＥＸ端子）を介して入力される外部クロック（この例では、２４ＭＨｚのクロック）を所定の分周比（例えば、１／２）で分周し、分周後のシステムクロック（この例では、１２ＭＨｚのクロック）をこの主制御チップＣ内部の各回路に供給する。また、このシステムクロックをシステムクロック出力端子（ＣＬＫＯ端子）を介して主制御チップＣ外部の周辺制御回路に出力する。
【００５３】
乱数生成回路Ｃ１４０は、乱数を更新するためのクロック信号（カウントクロック）を用いて、乱数のラッチ信号を受信したときにこの更新された乱数を乱数レジスタ内に保持するものである。本実施形態では、水晶発振器から外部クロック入力端子（ＲＣＫ端子）を介して入力される外部クロック信号を所定の分周比（例えば、１／２）で分周してこのカウントクロックに用いているが、主制御チップＣ内部のクロック信号を用いることもでき、この場合は水晶発振器は不要となる。乱数レジスタに保持された値は、乱数として読み出して使用することができる。尚、乱数レジスタから乱数を読み出すと、乱数レジスタが次の乱数をラッチすることを許容する許容状態とすることができる。
【００５４】
照合用ブロックＣ２３０は、主制御チップＣが型式認定で合格した正規のものかどうかの真贋検査であるセキュリティチェックを実行するものであり、ＳＣ端子及びＢＲＣ端子を介して当該セキュリティチェックに係る信号を外部端子板に送信又は外部端子板から受信し得るよう構成されている。
【００５５】
固有情報Ｃ２４０には、主制御チップＣの製造時に書き込まれた固有の識別番号が格納されており、当該識別番号は書き換えができないよう構成されている。また、演算回路Ｃ２５０は、四則演算や論理演算を実行する回路である。
【００５６】
＜メモリマップ＞
次に、図７を用いて、図６に示す主制御チップＣのメモリマップの一例について説明する。当該メモリマップには、「００００Ｈ」から「ＦＦＦＦＨ」までのアドレス空間が示されている。このうち、「００００Ｈ」から「２７ＦＦＨ」までの空間には内蔵ＲＯＭＣ１１０が割り当てられ、「２８００Ｈ」から「２８ＦＦＨ」までの空間には主制御チップＣ内の各回路に内蔵されているレジスタ領域が割り当てられ、「Ｆ０００Ｈ」から「Ｆ２ＦＦＨ」までの空間には内蔵ＲＡＭＣ１２０が割り当てられ、「ＦＤＤ０Ｈ」から「ＦＤＦＢＨ」までの空間にはＸＣＳデコードエリア（与えられた機械語を内部表現として解釈することであるデコードを実行する領域）が割り当てられている。ＣＰＵＣ１００に、これらの番地に対してアクセスする命令を実行させることにより、対応するハードウェアに対するアクセスを実行させることができる。
【００５７】
尚、内蔵ＲＯＭＣ１１０は、主として遊技の進行を制御する領域である第１ＲＯＭ領域と、主としてエラー関連等の遊技の正常な進行とは異なる処理を制御する領域である第２ＲＯＭ領域と、を有しており、「００００Ｈ」から「１ＦＦＦＨ」までの空間には第１ＲＯＭ領域が割り当てられ、「２０００Ｈ」から「２７ＦＦＨ」までの空間には第２ＲＯＭ領域が割り当てられている。尚、第１ＲＯＭ領域は、第２ＲＯＭ領域よりも容量が大きくなるよう構成されている（換言すれば、第１ＲＯＭ領域内に存在しＣＰＵＣ１００からアクセスされるデータ容量は、第２ＲＯＭ領域内に存在しＣＰＵＣ１００からアクセスされるデータ容量よりも大きくなるよう構成されている）。
【００５８】
また、第１ＲＯＭ領域は、プログラムコード（ＣＰＵＣ１００に対する命令コードセット）が格納されている第１制御領域と、プログラムが使用する（このプログラムコードに基づくＣＰＵＣ１００の処理によって読みだされる）プログラムデータが格納されている第１データ領域と、各種識別情報（会社名、製造日、型式名等）が格納される領域と、主制御チップＣを動作させる際に用いられる各種設定（乱数生成回路Ｃ１４０の動作設定、ウォッチドッグタイマＣ２２２の動作設定等）が格納されているプログラム管理エリアとを有している。尚、同図にて、第１ＲＯＭ領域におけるメモリマップイメージを図示しておくが、各領域のバイト数や未使用領域の有無はあくまでも一例である。
【００５９】
また、第２ＲＯＭ領域は、プログラムコード（ＣＰＵＣ１００に対する命令コードセット）が格納されている第２制御領域と、プログラムが使用する（このプログラムコードに基づくＣＰＵＣ１００の処理によって読みだされる）プログラムデータが格納されている第２データ領域と、を有しており、第２制御領域は、第１制御領域よりも容量が小さくなるよう構成されており（換言すれば、第２制御領域内に存在しＣＰＵＣ１００からアクセスされるプログラムコード容量は、第１制御領域内に存在しＣＰＵＣ１００からアクセスされるプログラムコード容量よりも小さくなり）、第２データ領域は、第１データ領域よりも容量が小さくなるよう構成されている（換言すれば、第２データ領域内に存在しＣＰＵＣ１００からアクセスされるプログラムデータ容量は、第１データ領域内に存在しＣＰＵＣ１００からアクセスされるプログラムデータ容量よりも小さくなる）。
【００６０】
他方、内蔵ＲＡＭＣ１２０は、主として遊技の進行に基づく情報を格納する領域である第１ＲＡＭ領域と、主としてエラー関連等の遊技の正常な進行とは異なる処理に基づく情報を格納する領域である第２ＲＡＭ領域と、プログラムが内部的にデータを保存しておく必要がある場合使用されるスタックエリアと、を有しており、「Ｆ０００Ｈ」から「Ｆ１ＦＦＨ」までの空間には第１ＲＡＭ領域が割り当てられ、「Ｆ２００Ｈ」から「Ｆ２Ｃ９Ｈ」までの空間には第２ＲＡＭ領域が割り当てられ、「Ｆ２ＣＡＨ」から「Ｆ２ＦＦＨ」までの空間にはスタックエリアが割り当てられている（但し、各領域のバイト数はあくまでも一例である）。
【００６１】
また、第１ＲＡＭ領域は、主として遊技の進行に係る情報を一時記憶するための作業領域である第１作業領域を有しており、第２ＲＡＭ領域は、主としてエラー関連等に係る情報を一時記憶するための作業領域である第２作業領域と、第１ＲＡＭ領域及び第２ＲＡＭ領域に一時記憶された情報の誤り検出を行うための作業領域であるチェックサム領域を有している。尚、第１ＲＡＭ領域は、第２ＲＡＭ領域よりも容量が大きくなるよう構成されている。また、本実施形態においては、チェックサム領域は第２ＲＡＭ領域のみが有しており（第１ＲＡＭ領域は有しておらず）、当該チェックサム領域が第１ＲＡＭ領域と第２ＲＡＭ領域との双方の（双方に一時記憶された情報を通算した）チェックサムを管理するよう構成されている。また、本実施形態においては、後述するように、チェックサムを算出する際、未使用領域をも含めて算出しているが、これには限定されず、未使用領域を除いた領域（第１作業領域及び第２作業領域）についてチェックサムを算出するよう構成してもよい。また、誤り検出を行う手法は、チェックサムチェックを行う手法に限らず、その他の手法（例えば、パリティチェック等）を行う手法を用いてもよく、その場合には、当該チェックサム領域が、これら手法を用いる際に必要となる誤り検出用の情報（例えば、パリティビット等）を格納する領域となる。
【００６２】
尚、各種識別情報（会社名、製造日、型式名等）が格納される領域のアドレスは、内蔵ＲＡＭのアドレス以降としても何ら問題ない。また、未使用領域となっているアドレスも変更しても問題ないが、第１データ領域と第２制御領域との間（間のアドレス）には未使用領域を設けることが好適である。即ち、図７に示すようなメモリマップ構成である場合、第１制御領域内に存在しＣＰＵＣ１００からアクセスされるプログラムコードと、第２制御領域内に存在しＣＰＵＣ１００からアクセスされるプログラムコードとは、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されており、未使用領域を間に挟んでいるため、プログラムソースコード上又はダンプリスト上において、双方のプログラムコードの配置位置を視覚上明確に切り分けることができる（その他、未使用領域を間に挟んでいる場合には、同様のことがいえる）。
【００６３】
ここで、主制御基板Ｍが搭載するＲＯＭに関しては、不正行為によって改造されたプログラム等を書き込まれることを防止するため、未使用の領域（充填されていない領域）を設けないよう構成することが好適である（例えば、未使用領域を全て０によって充填、使用している領域を若い番地に詰めて書き込む、等）。また、第１制御領域及び第１データ領域には、ノイズや不正行為によって、通常時には参照しないデータを参照してしまうことを防止するため、未使用のデータ（例えば、スペック違いの遊技機において参照するデータや、開発段階でのテストにのみ使用するデータ等）を設けないよう構成することが好適である。また、第１制御領域、第１データ領域、第２制御領域、第２データ領域、第１作業領域及び第２作業領域は、若い番地に詰めて領域を使用し、当該領域内（当該領域内のアドレス）に未使用の領域を設けない（例えば、「００００Ｈ」〜「０ＦＡ７Ｈ」の範囲となっている第１制御領域内の、「００１０Ｈ」〜「００５０Ｈ」を未使用領域としない）よう構成することが好適である。尚、本例における、未使用領域は、すべてのビットが「０」となっており、当該未使用領域以外の領域は、いずれかのビットが「１」となっている（「０」ではなくなっている）。
【００６４】
次に、図８〜３４は、本実施形態における、主制御基板Ｍが行う一般的な処理の流れを示したフローチャートである。はじめに、これら処理の流れを示したフローチャートにおいては、第１ＲＯＭ領域にて配置されているプログラムコード及びプログラムデータに基づき、ＣＰＵＣ１００が処理を実行する場合、もしくは、その処理結果をＣＰＵＣ１００内のレジスタ（レジスタ領域）や第１ＲＡＭ領域へ格納（更新）したり、第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にてその処理結果を参照する場合を、「第１ＲＯＭ・ＲＡＭ領域における処理」として点線で囲んで図示し、「第１ＲＯＭ・ＲＡＭ領域内のデータに基づき」ＣＰＵＣ１００が処理を実行する旨を記載している。また、これら処理の流れを示したフローチャートにおいては、第２ＲＯＭ領域にて配置されているプログラムコード及びプログラムデータに基づき、ＣＰＵＣ１００が処理を実行する場合、もしくは、その処理結果をＣＰＵＣ１００内のレジスタ（レジスタ領域）や第２ＲＡＭ領域へ格納（更新）したり、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にてその処理結果を参照する場合を、「第２ＲＯＭ・ＲＡＭ領域における処理」として点線で囲んで図示し、「第２ＲＯＭ・ＲＡＭ領域内のデータに基づき」ＣＰＵＣ１００が処理を実行する旨を記載している。
【００６５】
また、フローチャートは主に、処理ステップ（長方形にて図示）、判断（ひし形にて図示）、流れ線（矢印）、開始・終了・復帰等を示す端子（角丸長方形にて図示）によって構成されている。また、処理ステップの内、別のフローチャートにて詳細を図示している場合、当該別のフローチャートを参照するものをサブルーチン（左右の線が二重線である長方形にて図示）として図示している。ここで、遊技機の開発段階においては、スペック違いの遊技機を同時に開発することも行われているが、本例においては、メイン側の処理内に、スペック違いの遊技機で実行するサブルーチン（通常は使用しないサブルーチン）を残さないよう構成しており、ノイズや不正行為によって、通常時には実行されない未使用サブルーチンに係る処理が実行されることを防止している。
【００６６】
そして、これらの動きに沿わない場合であり、例えば、第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第２ＲＡＭ領域を更新又は参照する場合や、逆に、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域を更新又は参照する場合には、その更新・参照先がいずれのものであるかを特記している（又は、これらの動きに沿う場合であっても、明確化のため必要に応じて特記している場合がある）。尚、以下に示す実施形態における処理の動きを概念的に纏めておくと、次のようなケースに分かれる。
【００６７】
＜動作１＞第１ＲＯＭ領域（特に、第１制御領域）にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理によって、第１ＲＯＭ領域（特に、第１データ領域）にて配置されているプログラムデータが読みだされる、又は、第２ＲＯＭ領域（特に、第２制御領域）にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理によって、第２ＲＯＭ領域（特に、第２データ領域）にて配置されているプログラムデータが読みだされる。但し、第１ＲＯＭ領域（特に、第１制御領域）にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理によっては、第２ＲＯＭ領域（特に、第２データ領域）にて配置されているプログラムデータが読みだされない、及び、第２ＲＯＭ領域（特に、第２制御領域）にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理によっては、第１ＲＯＭ領域（特に、第１データ領域）にて配置されているプログラムデータが読みだされない。
【００６８】
＜動作２＞第１ＲＯＭ領域にて配置されているプログラムコード及びプログラムデータに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域を更新及び参照する。また、第２ＲＯＭ領域にて配置されているプログラムコード及びプログラムデータに基づくＣＰＵＣ１００の処理にて、第２ＲＡＭ領域を更新及び参照する。
【００６９】
＜動作３＞第１ＲＯＭ領域にて配置されているプログラムコードにおける呼び出し命令（例えば、ニーモニックでいうＣＡＬＬ命令）によって、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理が実行され得るが、第２ＲＯＭ領域にて配置されているプログラムコードにおける呼び出し命令（例えば、ニーモニックでいうＣＡＬＬ命令）によって、第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理が実行され得ない。即ち、第１ＲＯＭ領域にて配置されているプログラムコードと第２ＲＯＭ領域にて配置されているプログラムコードとは、主従関係にあり、主となる第１ＲＯＭ領域にて配置されているプログラムコードにおける呼び出し命令があってはじめて、従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理が実行され得る状態となる。
【００７０】
＜動作４＞主となる第１ＲＯＭ領域にて配置されているプログラムコードにおける呼び出し命令があって、従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理が実行される場合、当該従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の実行時には、当該呼び出し命令があった時点で記憶されている情報（例えば、レジスタ領域内の情報）を参照する。或いは、当該従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理が実行された後、当該主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理に復帰する場合、当該主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の実行時には、当該復帰した時点で記憶されている情報（例えば、レジスタ領域内の情報）を参照する。
【００７１】
＜動作５＞前述の＜動作４＞において、レジスタ領域内の情報を参照しない場合には、＜動作５−１＞主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理結果を、第１ＲＡＭ領域に格納しておき、従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の実行時には、当該第１ＲＡＭ領域に格納された処理結果を参照及び更新可能としておく（当該主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の復帰時には、当該更新された第１ＲＡＭ領域を参照する）、＜動作５−２＞主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理結果を、第１ＲＡＭ領域に格納しておき、従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の実行時には、当該第１ＲＡＭ領域に格納された処理結果を参照可能としておく、且つ、従となる第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理結果を、第２ＲＡＭ領域に格納しておき、当該主となる第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理の復帰時には、当該第２ＲＡＭ領域に格納された処理結果を参照可能としておく、のいずれかで動作する。
【００７２】
以上のような前提（説明を行う上での前提）に基づき、主制御基板Ｍが行う一般的な処理の流れについて説明を行っていくこととするが、上記した＜動作１＞乃至＜動作３＞は必須となる前提となる一方で、＜動作４＞と＜動作５＞とは、ＣＰＵＣ１００での処理結果を主従関係にあるプログラムコード間で、如何にして引き継いでいくかの実装方法によって取捨選択できる前提であるため、以下の処理の流れにおいて、＜動作４＞及び＜動作５＞のいずれか一方のみで例示されていた場合であっても、他方で代替することが可能であることを予め補足しておく。
【００７３】
まず、図８は、回胴式遊技機Ｐの電源を投入した後（或いはシステムリセットやユーザリセット時において）、主制御基板ＭのＣＰＵＣ１００にて初めて実行される処理の流れを示したフローチャートである。この場合、一般的には、内蔵ＲＯＭＣ１１０の００００Ｈとなるアドレス（即ち、第１制御領域）に配置されているプログラムコードから順番に実行されていくこととなる。尚、主制御基板Ｍにおける主制御チップＣの構成によっては、回胴式遊技機Ｐの電源を投入した後（或いはシステムリセットやユーザリセット時において）、前述したセキュリティチェックを実行するよう構成される場合があり、当該セキュリティチェックを実行するためのプログラムコードが先に実行されるよう構成される場合も想定できるが、そのような構成であっても、本実施形態において示す第１制御領域に配置されているプログラムコードから順番に実行されていくことには変わりない（加えて、内蔵ＲＯＭＣ１１０の初期アドレスが、００００Ｈではない場合であっても、前述したメモリマップの全体構成に変わりない＝各アドレスが適宜ずれるのみ）。また、本実施形態においては、内蔵ＲＡＭＣ１２０に格納されているデータが電源断時においても保持されるよう、内蔵ＲＡＭＣ１２０に対してバックアップ電源が供給されるよう構成されているものとしている。
【００７４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
まず、ステップ１０００で、回胴式遊技機Ｐの電源を投入した後、ステップ１００２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、タイマ割り込みをセットする（ここでは、タイマ割り込みの種類をセットするのみであり、以降の処理において、タイマ割り込みが開始されると定期的に後述するタイマ割り込み時処理に係るフローチャートが実行される）。次に、ステップ１００４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、主制御チップＣの機能設定を実行する。次に、ステップ１００６で、ＣＰＵＣ１００は、第２ＲＯＭ領域の電源断復帰処理を呼び出す。
【００７５】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１００８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域の先頭アドレスからチェックサム領域直前のアドレスまでのチェックサムを算出する。次に、ステップ１０１０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ及び第２ＲＡＭをチェックし（例えば、当該算出したチェックサムとチェックサム領域に保持されているチェックサムデータとに基づき、電源断・電源断復帰により内蔵ＲＡＭＣ１２０に格納されているデータが正しく保持されているか否かをチェックし）、電源断復帰データを生成する（当該チェック結果やステップ１８００の電源断時処理にて実行した処理に基づいて生成し、第２ＲＡＭ領域内で保持する）。次に、ステップ１０１２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１０１４に移行する。
【００７６】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０１４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、前扉スイッチＤ８０、設定扉スイッチＭ１０及び設定キースイッチＭ２０のスイッチ状態を確認する。次に、ステップ１０１６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータを参照し、扉スイッチＤ８０、設定扉スイッチＭ１０及び設定キースイッチＭ２０のいずれかがオフであるか否かを判定する。ステップ１０１６でＹｅｓの場合、ステップ１０１８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域内の非設定変更時初期化処理を呼び出し、ステップ１０２２に移行する。他方、ステップ１０１６でＮｏの場合には、ステップ１０２０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域内の設定変更時初期化処理を呼び出し、ステップ１０３０に移行する。
【００７７】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０２２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ内の電源断処理済みフラグのオン・オフ（ステップ１９０４でオンとなる）及び全ＲＡＭのチェックサム状態（ステップ１０１０でのチェック結果）を参照し、第２ＲＡＭ内の電源断復帰データは正常ではないか否かを判定する。ステップ１０２２でＹｅｓの場合、ステップ１０２６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、バックアップエラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。他方、ステップ１０２２でＮｏの場合、ステップ１０２８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ及び第２ＲＡＭの初期化範囲を未使用ＲＡＭ範囲（図中欄外にて示す、第１ＲＡＭ領域における未使用領域と第２ＲＡＭ領域における未使用領域）に決定してセットし（例えば、レジスタ領域内にセットし）、ステップ１０３６に移行する。
【００７８】
他方、ステップ１０２０の処理の後、ステップ１０３０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ内の電源断処理済みフラグのオン・オフ（ステップ１９０４でオンとなる）及び全ＲＡＭのチェックサム状態（ステップ１０１０でのチェック結果）を参照し、第２ＲＡＭ内の電源断復帰データは正常であるか否かを判定する。ステップ１０３０でＹｅｓの場合、ステップ１０３２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ及び第２ＲＡＭの初期化範囲をＲＡＭ内における設定値を除くすべての範囲に決定してセットし（例えば、レジスタ領域内にセットし）、ステップ１０３６に移行する。尚、設定値は第１ＲＡＭ領域の先頭アドレスに格納されている。他方、ステップ１０３０でＮｏの場合、ステップ１０３４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ及び第２ＲＡＭの初期化範囲をＲＡＭのすべての範囲に決定してセットし（例えば、レジスタ領域内にセットし）、ステップ１０３６に移行する。
【００７９】
次に、ステップ１０３６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、決定された初期化範囲で第２ＲＡＭ領域のみの初期化を実行する。次に、ステップ１０３８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１０４０に移行する。
【００８０】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０４０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ステップ１０２８、ステップ１０３２又はステップ１０３４にて決定された初期化範囲で、第１ＲＡＭ領域のみの初期化を実行する。次に、ステップ１０４１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、前扉スイッチＤ８０、設定扉スイッチＭ１０及び設定キースイッチＭ２０のいずれかがオフであるか否かを判定する。ステップ１０４１でＹｅｓの場合、ステップ１０４２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域内の設定値チェック処理を呼び出し、ステップ１０４４に移行する。他方、ステップ１０４１でＮｏの場合には、ステップ１１００で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、設定変更装置制御処理（設定変更処理とも称す）を実行する。
【００８１】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０４４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内を参照し、第１ＲＡＭ領域内の設定値に係るデータは正常範囲内（本例では、１〜６）であるか否かを判定する。ステップ１０４４でＹｅｓの場合、ステップ１０４６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１０５０に移行する。他方、ステップ１０４４でＮｏの場合、ステップ１０４８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定値エラー表示（例えば、払出数表示装置Ｄ１９０に表示されることとなる）をセットする（例えば、レジスタ領域内にセットする）。次に、ステップ１３００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する復帰不可能エラー処理を実行する。
【００８２】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０５０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、電源断時の処理（ステップ１９０２）にて保存したスタックポインタに係るデータに基づき、スタックポインタを復帰する。次に、ステップ１０５２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、入力ポートの読み込みを実行する。次に、ステップ１０５４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ステップ１００２にてセットしたタイマ割り込みを開始する。次に、ステップ１０５６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のフラグエリア内にある電源断処理済みフラグをオフにし、復帰したスタックポインタに従い電源断時の処理に復帰する。
【００８３】
尚、不図示ではあるが、主制御基板Ｍが搭載する一時記憶領域（ＲＡＭ領域等）の初期値（処理開始時の値）は、特別遊技が実行される値とならないよう構成することが好適である（プログラムの処理開始直後に、ノイズや不正行為により、特別遊技の実行判定を行う処理を実行してしまった場合に特別遊技が誤って実行されることを防止するため）。また、不図示ではあるが、主制御基板ＭのＲＡＭ領域内に当選乱数等の乱数を記憶する場合には、専用の記憶領域を確保し、乱数に係る情報を記憶しているバイト内には当該乱数に係る情報のみを記憶する（各種タイマ値等、その他の情報を記憶しない）よう構成することが好適である（同じ１バイト内に記憶した別のデータを操作する際に、ノイズ等によって乱数に係る情報が書き換わってしまうことを防止するため）。
【００８４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図９は、図８におけるステップ１１００のサブルーチンに係る、設定変更装置制御処理のフローチャートである。まず、ステップ１１０２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、スタックポインタをセットする（当該処理の先頭アドレスで初期化する）。次に、ステップ１１１８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、タイマ割り込みを開始する。次に、ステップ１１２０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータを参照し、第１ＲＡＭ領域内の設定値は正常範囲内（本例では、１〜６）ではないか否かを判定する。ステップ１１２０でＹｅｓの場合、ステップ１１２２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定値に所定値（例えば、１＝遊技者にとって最も不利となる値）をセットし、ステップ１１２４に移行する。他方、ステップ１１２０でＮｏの場合にもステップ１１２４に移行する。次に、ステップ１１２４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、エラー表示ＬＥＤ（不図示）に設定変更装置作動中である旨を表示し、設定表示ＬＥＤ（不図示）に設定値を表示し、ステップ１１２６に移行する。
【００８５】
次に、ステップ１１２６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定／リセットボタンＭ３０がオフからオンに切り替わったか否かを判定する。ステップ１１２６でＹｅｓの場合、ステップ１１２８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、現在の設定値に１を加算し（加算した結果設定値が６を超過した場合には、設定値は１となる）、ステップ１１３０に移行する。尚、ステップ１１２６でＮｏの場合にも、ステップ１１３０に移行する。次に、ステップ１１３０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、スタートレバーＤ５０がオフからオンに切り替わったか否かを判定する。ステップ１１３０でＹｅｓの場合、ステップ１１３２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定キースイッチＭ２０がオンからオフに切り替わったか否かを判定する。ステップ１１３２でＮｏの場合には、ステップ１１３２の処理をループする。他方、ステップ１１３２でＹｅｓの場合、ステップ１１３４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、エラー表示ＬＥＤ（不図示）に設定変更装置の作動が終了した旨を表示し、設定表示ＬＥＤ（不図示）の設定値の表示を消去し、ステップ１２００の遊技進行制御処理に移行する。尚、ステップ１１３０でＮｏの場合には、ステップ１１２６に移行する。
【００８６】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１０は、図９におけるステップ１２００のサブルーチンに係る、遊技進行制御処理（１枚目）のフローチャートである。まず、ステップ１２０２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、スタックポインタをセットする（当該処理の先頭アドレスで初期化する）。次に、ステップ１２０４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、当該ゲームに必要な第１ＲＡＭ領域内のデータ（例えば、ベット上限数、入賞の有効ライン、等）をセットする。次に、ステップ１２０６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、当該ゲームにおける遊技状態（例えば、通常遊技中、大当り遊技中、再遊技確率変動遊技中、ＡＴ遊技中等）をセットする。次に、ステップ１２０８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル払出装置Ｈが遊技メダルで満杯ではないか否かを判定する。具体的には、メダル払出装置Ｈから溢れ出たメダルを格納するサブタンク（不図示）を備え、サブタンクに設けられた複数の満杯検知センサによる電流の導通／非導通にて判定する（メダルを介して電流が導通した場合には、満杯と判定する）。ステップ１２０８でＹｅｓの場合、ステップ１２１８に移行する。
【００８７】
他方、ステップ１２０８でＮｏの場合、ステップ１２１０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル満杯エラーフラグをオンにする（例えば、第１ＲＡＭ領域のメダル満杯エラーフラグ領域内をオンに相当する値で更新する）。次に、ステップ１２１２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル満杯エラーに対応したエラー番号の表示を７セグＬＥＤ（例えば、貯留表示ＬＥＤ又は獲得枚数ＬＥＤ）で実行する。次に、ステップ１２１４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータを参照して、メダル満杯エラーが解除されたか否か（例えば、サブタンクによる電流が非導通、且つ、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１２１４でＹｅｓの場合、ステップ１２１６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル満杯エラーフラグをオフにし（例えば、第１ＲＡＭ領域のメダル満杯エラーフラグ領域内をオフに相当する値で更新し）、ステップ１２１８に移行する。他方、ステップ１２１４でＮｏの場合には、ステップ１２１２に移行する。次に、ステップ１２１８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル投入受付を許可し（再遊技の次ゲームにおいては自動にて投入動作が実行されることとなる）、次の処理（ステップ１２２０の処理）に移行する。ここで、ステップ１２１８では、ブロッカＤ１００のオン処理（メダル流路が形成する処理）を行う。具体的には、前回遊技で再遊技役が成立した場合には、現在の貯留数（クレジット）が所定値（本例では、５０枚）未満であることを条件として、ブロッカＤ１００のオン処理を実行する。換言すると、現在の貯留数（クレジット）が所定値である場合には、ブロッカＤ１００のオン処理を実行しない。一方、前回遊技で再遊技役が成立しなかった場合には、一律にブロッカＤ１００のオン処理を実行するようにしている。このように構成することにより、再遊技が成立した場合であっても貯留数（クレジット）が所定値に達していない場合には、遊技メダルが投入できるように構成され、通常遊技状態よりも再遊技確率の高いＲＴ状態に滞在しているときや、見た目では再遊技とは分かり辛い再遊技（小役に見せかけた再遊技：無効ライン上にベル−ベル−ベルや、左リールにチェリーが停止した図柄組合せ）が停止した場合であっても、遊技者はリズム良く（違和感なく）遊技を行うことができる。
【００８８】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１１は、図９におけるステップ１２００のサブルーチンに係る、遊技進行制御処理（２枚目）のフローチャートである。まず、ステップ１２２０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、遊技メダルがベットされていない、且つ、クレジットが存在していないか否かを判定する。ステップ１２２０でＹｅｓの場合、ステップ１２２１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定表示条件を充足している（例えば、扉スイッチＤ８０、設定扉スイッチＭ１０、設定キースイッチＭ２０がすべてオンとなると当該条件を充足する）か否かを判定する。ステップ１２２１でＹｅｓの場合、ステップ１２２２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定表示ＬＥＤ（不図示だが、払出数表示装置Ｄ１９０、クレジット数表示装置Ｄ２００、投入数表示灯Ｄ２１０としてもよい）に設定値を表示し、ステップ１２２１に移行する。ステップ１２２０又はステップ１２２１でＮｏの場合、ステップ１２２４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、遊技メダルの投入及び精算に係る管理を実行する。次に、ステップ１２２５で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、遊技メダルの受付可能枚数を確認する。次に、ステップ１２２６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ブロッカＤ１００がオンか否かを判定する。ステップ１２２６でＹｅｓの場合、ステップ１２２７で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１投入センサＤ２０ｓ又は第２投入センサＤ３０ｓがオンであるか否かを判定する（第１投入センサＤ２０ｓ又は第２投入センサＤ３０ｓがオンとなると、遊技メダルを１枚受け付けたと判定する）。ステップ１２２７でＹｅｓの場合、ステップ１２２８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のメダル投入エラー検出処理を呼び出し、ステップ１４００に移行する。
【００８９】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１４００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行する。次に、ステップ１２２９で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２３０に移行する。
【００９０】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２３０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓがオフであるか否かを判定する（第１投入センサＤ２０ｓ又は第２投入センサＤ３０ｓがオンとなった後、第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓがオフとなると、受け付けた１枚の遊技メダルが第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓを通過したと判定する）。ステップ１２３０でＹｅｓの場合、ステップ１２３１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、１枚の正常な遊技メダルの投入を受け付けたと判定する。不図示であるが、ステップ１２３１の後、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、クレジットが上限数（本例では、５０）、且つ、ベット数が最大数（本例では、３）ではないか否かを判定し、Ｙｅｓと判定した場合にはブロッカＤ１００をオフ（メダル流路を形成しない状態）に制御する。尚、ステップ１２３０でＮｏの場合には、ステップ１２２８に移行し、ステップ１２２６またはステップ１２２７でＮｏの場合には、ステップ１２３２に移行する。
【００９１】
次に、ステップ１２３２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、精算ボタンＤ６０の操作があったか否かを判定する。ステップ１２３２でＹｅｓの場合、ステップ１２３３で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、クレジットの残り枚数又はベットされている遊技メダルが存在するか否かを判定する。ステップ１２３３でＹｅｓの場合、ステップ１２３４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグ（第１ＲＡＭ領域内のフラグであり、ホッパモータＨ８０を駆動している際にオンとするフラグ）をオンにし、遊技メダル１枚の払出を実行する。次に、ステップ１２３６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータを参照し、第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンであるか否かを判定する（第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンとなると、遊技メダル１枚の払出動作が行われていると判定する）。ステップ１２３６でＹｅｓの場合、ステップ１２３８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域内のメダル払出エラー検出処理を呼び出し、ステップ１４５０に移行する。ここで、フローチャート上には明記してはいないが、前回遊技が再遊技役であった場合にはクレジットの残り枚数のみが精算の対象となる。
【００９２】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１４５０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ１２４０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域内の呼び出し元に復帰し、ステップ１２４７に移行する。
【００９３】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
他方、ステップ１２３６でＮｏの場合、ステップ１２４１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動後（ステップ１２３４の処理のタイミング後）から所定時間（例えば、５秒）経過したか否かを判定する。具体的には、ホッパ駆動信号をホッパモータＨ８０に送信している（ホッパモータＨ８０が回転している）のにもかかわらず、メダルが払い出されていないと判定している状況が所定時間継続したか否かを判定する。ステップ１２４１でＹｅｓの場合、ステップ１２４２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラーフラグをオンにする（例えば、第１ＲＡＭ領域のメダル空エラーフラグ領域内をオンに相当する値で更新する）。次に、ステップ１２４４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラー表示を実行する。次に、ステップ１２４５で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１２４５でＹｅｓの場合、ステップ１２４６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のフラグエリア内にある、メダル空エラーフラグをオフにし（例えば、第１ＲＡＭ領域のメダル空エラーフラグ領域内をオフに相当する値で更新し）、ステップ１２４７に移行する。他方、ステップ１２４５でＮｏの場合、ステップ１２４４に移行する。
【００９４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２４７で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓがオフであるか否かを判定する（第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンとなった後、第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓがオフとなると、払出動作が行われていた１枚の遊技メダルの払出動作が完了したと判定する）。ステップ１２４７でＹｅｓの場合、ステップ１２４８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ１２３３に移行する。尚、ステップ１２４１又はステップ１２４７でＮｏの場合には、ステップ１２３６に移行する。
【００９５】
他方、ステップ１２３２又はステップ１２３３でＮｏの場合、ステップ１２４９で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域の投入・払出エラー検出処理を呼び出し、ステップ１５００に移行する。
【００９６】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１５００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ１２５０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２５１に移行する。
【００９７】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２５１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、スタートレバーＤ５０が有効であり（例えば、ゲームを開始するための規定枚数の遊技メダルが投入された等）、且つ、当該スタートレバーＤ５０の操作があったか否かを判定する。ステップ１２５１でＹｅｓの場合、ステップ１２５２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、乱数の取得、ブロッカＤ１００をオフにする処理を実行した後に、第２ＲＯＭ領域の設定値チェック処理を呼び出し、ステップ１２５３に移行する。
【００９８】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２５３で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の設定値は正常範囲内（本例では、１〜６）であるか否かを判定する。ステップ１２５３でＹｅｓの場合、ステップ１２５４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、次の処理（ステップ１２５７の処理）に移行する。他方、ステップ１２５３でＮｏの場合、ステップ１２５６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定値エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
【００９９】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１２は、図９におけるステップ１２００のサブルーチンに係る、遊技進行制御処理（３枚目）のフローチャートである。まず、ステップ１２５７で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、内部抽選（当該ゲームにおいて入賞可能となる役を決定するための抽選）を開始する。次に、ステップ１２５８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、全リール（リールＭ５０）の回転を開始し、ステップ１２６０に移行する。次に、ステップ１２６０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、引き込みポイント作成要求（回転している左リールＭ５１、中リールＭ５２、右リールＭ５３の停止位置を決定するために要求され、停止順番や他のリールの停止位置に応じて適宜要求される）があったか否かを判定する。ステップ１２６０でＹｅｓの場合、ステップ１２６１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、引き込みポイントを作成し、ステップ１２６２に移行する。他方、ステップ１２６０でＮｏの場合にも、ステップ１２６２に移行する。次に、ステップ１２６２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、リール停止受付可否チェックを実行する。次に、ステップ１２６３で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、いずれかの停止ボタン（左停止ボタンＤ４１、中停止ボタンＤ４２、右停止ボタンＤ４３）の操作があったか否かを判定する。ステップ１２６３でＹｅｓの場合、ステップ１２６４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、操作があった停止ボタンに対応したリール（例えば、左停止ボタンＤ４１には左リールＭ５１が対応）の停止位置を決定し、ステップ１２６５に移行する。他方、ステップ１２６３でＮｏの場合にも、ステップ１２６５に移行する。次に、ステップ１２６５で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、全リール停止チェック処理を実行する。次に、ステップ１２６６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、すべてのリール（左リールＭ５１、中リールＭ５２、右リールＭ５３）が停止したか否かを判定する。ステップ１２６６でＹｅｓの場合、ステップ１２６７で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域の表示判定チェック処理を呼び出し、ステップ１２６８に移行する。尚、ステップ１２６６でＮｏの場合、ステップ１２６０に移行する。
【０１００】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２６８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ内の図柄停止位置データと、内部成立役停止可能位置データとを比較する。次に、ステップ１２６９で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータを参照し、表示された図柄の組み合わせが正常であるか否かを判定する（内部抽選によって決定された入賞可能となる役と一致していなければ異常であると判定される）。ステップ１２６９でＹｅｓの場合、ステップ１５００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ１２７０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２７４に移行する。他方、ステップ１２６９でＮｏの場合、ステップ１２７２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、表示判定エラー表示をセットする（例えば、レジスタ領域内にセットする）。次に、ステップ１３００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
【０１０１】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２７４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、入賞による遊技メダルの払出処理を実行する。次に、ステップ１２７５で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、遊技メダルを払い出す入賞があったか否かを判定する｛入賞によって獲得した遊技メダルが、クレジットの最大数（本例では、５０）を超過した場合に、遊技メダルの払出が実行される｝。ステップ１２７５でＹｅｓの場合、ステップ１２７６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグ（第１ＲＡＭ領域内のフラグであり、ホッパモータＨ８０を駆動している際にオンとするフラグ）をオンにし、遊技メダル１枚の払出を実行する。次に、ステップ１２７７で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンであるか否かを判定する（第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンとなると、遊技メダル１枚の払出動作が行われていると判定する）。ステップ１２７７でＹｅｓの場合、ステップ１２７８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域内のメダル払出エラー検出処理を呼び出し、ステップ１４５０に移行する。
【０１０２】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１４５０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ１２８４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域内に呼び出し元に復帰し、ステップ１２８６に移行する。
【０１０３】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
他方、ステップ１２７７でＮｏの場合、ステップ１２７９で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動後（ステップ１２７６の処理のタイミング後）から所定時間（例えば、５秒）経過したか否かを判定する。ステップ１２７９でＹｅｓの場合、ステップ１２８０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラーフラグをオンにする（例えば、第１ＲＡＭ領域のメダル空エラーフラグ領域内をオンに相当する値で更新する）。次に、ステップ１２８１で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラー表示を７セグＬＥＤで実行する。次に、ステップ１２８２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１２８２でＹｅｓの場合、ステップ１２８３で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル空エラーフラグをオフにし（例えば、第１ＲＡＭ領域のメダル空エラーフラグ領域内をオフに相当する値で更新し）、ステップ１２８６に移行する。他方、ステップ１２８２でＮｏの場合、ステップ１２８１に移行する。
【０１０４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２８６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓがオフであるか否かを判定する（第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンとなった後、第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓがオフとなると、払出動作が行われていた１枚の遊技メダルの払出動作が完了したと判定する）。ステップ１２８６でＹｅｓの場合、ステップ１２８８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ１２９０に移行する。尚、ステップ１２７９又はステップ１２８６でＮｏの場合には、ステップ１２７７に移行する。次に、ステップ１２９０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、当該入賞（ステップ１２７５でＹｅｓとなった入賞）に対応した払出が完了したか否かを判定する。ステップ１２９０でＹｅｓの場合、ステップ１２９２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、遊技終了処理（例えば、ベット数のクリア、遊技状態の移行処理等）を実行し、次の処理（ステップ１２０２の処理）に移行する。尚、ステップ１２８６でＮｏの場合には、ステップ１２７７に移行し、ステップ１２７５でＮｏの場合には、ステップ１２９２に移行する。
【０１０５】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１３は、図８におけるステップ１３００の（及び他のフローチャートにおいて呼び出された）サブルーチンに係る、復帰不可能エラー処理のフローチャートである。まず、ステップ１３０２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、割り込みを禁止する（以降は、後述するタイマ割り込み時処理に係るフローチャートが実行されない）。次に、ステップ１３０４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、出力ポートアドレス及び出力ポート数をセットする。次に、ステップ１３０６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、出力ポート（本例では、０〜６であり、各種ＬＥＤへの表示出力や各種モータへの駆動出力）をオフにする。次に、ステップ１３０８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、次のポート出力アドレスをセットする（この繰り返しにより、各種ＬＥＤへの表示出力や各種モータへの駆動出力が順次停止される）。次に、ステップ１３１０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、各出力ポートへの出力が終了したか否かを判定する。ステップ１３１０でＹｅｓの場合には、ステップ１３１２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、セットされているエラー表示を実行し（本処理を実行する際には何らかのエラーが発生している）、当該処理の実行を繰り返し、電源電圧が低下することでリセット信号が入力されて終了する。（即ち、無限ループに突入するので、復帰を促す一切の操作を受け付けない）。尚、ステップ１３１０でＮｏの場合には、ステップ１３０６に移行する。尚、ステップ１３０６〜ステップ１３１０の処理は、ＬＥＤ・モータへの出力をクリアする処理である（但し、外部出力信号はクリアしないので、エラーに関する情報やエラー発生時における遊技進行状況等をホールコンピュータ側へ出力することは可能である）。
【０１０６】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１４は、図１１におけるステップ１４００のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。まず、ステップ１４０２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル逆流エラーフラグ（ステップ１７０６でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１４０２でＹｅｓの場合、ステップ１４０４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル逆流エラー（投入された遊技メダルが逆流したことによるエラーであり、例えば、第１投入センサＤ２０ｓオフ且つ第２投入センサＤ３０ｓオン→第１投入センサＤ２０ｓオン且つ第２投入センサＤ３０ｓオンとなった場合にエラーとなる）表示を実行する。次に、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダルエラー逆流エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１４０６でＹｅｓの場合、ステップ１４０８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル逆流エラーフラグをオフにし、次の処理（ステップ１２２９の処理）に移行する。
【０１０７】
他方、ステップ１４０２でＮｏの場合、ステップ１４１０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル滞留エラーフラグ（ステップ１７１０でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１４１０でＹｅｓの場合、ステップ１４１２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル滞留エラー（投入された遊技メダルが滞留したことによるエラーであり、例えば、第１投入センサＤ２０ｓオン且つ第２投入センサＤ３０ｓオンである状態が所定時間継続した場合にエラーとなる）表示を実行する。次に、ステップ１４１４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル滞留エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１４１４でＹｅｓの場合、ステップ１４１６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル滞留エラーフラグをオフにし、次の処理（ステップ１２２９の処理）に移行する。
【０１０８】
他方、ステップ１４１０でＮｏの場合、ステップ１４１８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入枚数エラーフラグ（ステップ１７１６でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１４１８でＹｅｓの場合、ステップ１４２０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入枚数エラー（投入された遊技メダルの枚数と正常通過した遊技メダルの枚数とが一致しないことによるエラーであり、例えば、投入受付センサＤ１０ｓが検知した遊技メダルの枚数と第２投入センサＤ３０ｓが検知した遊技メダルの枚数とが一致しない場合又は所定の許容範囲外となった場合にエラーとなる）表示を実行する。次に、ステップ１４２２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入枚数エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１４２２でＹｅｓの場合、ステップ１４２４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入枚数エラーフラグをオフにし、次の処理（ステップ１２２９の処理）に移行する。
【０１０９】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１５は、図１１及び図１２におけるステップ１４５０のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。まず、ステップ１４５２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出メダル滞留エラーフラグ（ステップ１７５６でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１４５２でＹｅｓの場合、ステップ１４５６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出メダル滞留エラー（払い出された遊技メダルが滞留したことによるエラーであり、例えば、第１払出センサＨ１０ｓオン且つ第２払出センサＨ２０ｓオンである状態が所定時間継続した場合にエラーとなる）表示を実行する。次に、ステップ１４５８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出メダル滞留エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１４５８でＹｅｓの場合、ステップ１４６０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出メダル滞留エラーフラグをオフにし、次の処理（ステップ１２４０又はステップ１２８４の処理）に移行する。
【０１１０】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１６は、図１１及び図１２におけるステップ１５００のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。まず、ステップ１５０２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常投入エラーフラグ（ステップ１８０６でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１５０２でＹｅｓの場合、ステップ１５０４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常投入エラー（遊技メダルが投入されないはずのタイミングにて遊技メダルの投入を検出したことによるエラー）表示を実行する。次に、ステップ１５０６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常投入エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１５０６でＹｅｓの場合、ステップ１５０８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常投入エラーフラグをオフにし、ステップ１５１０に移行する。尚、ステップ１５０２でＮｏの場合にも、ステップ１５１０に移行する。
【０１１１】
次に、ステップ１５１０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常払出エラーフラグ（ステップ１８１６でオンとなるフラグであり、本実施形態においては、第２ＲＡＭ領域内のフラグ）がオンであるか否かを判定する。ステップ１５１０でＹｅｓの場合、ステップ１５１４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常払出エラー（遊技メダルが払い出されないはずのタイミングにて遊技メダルの払出を検出したことによるエラー）表示を実行する。次に、ステップ１５１６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常払出エラーが解除されたか否か（例えば、設定／リセットボタンＭ３０が押下されたか否か）を判定する。ステップ１５１６でＹｅｓの場合、ステップ１５１８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常払出エラーフラグをオフにし、次の処理（ステップ１２５０又はステップ１２７０の処理）に移行する。尚、ステップ１５１０でＮｏの場合にも、次の処理（ステップ１２５０又はステップ１２７０の処理）に移行する。
【０１１２】
次に、図１７は、本実施形態におけるステップ１６００のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。当該サブルーチンの処理は、ステップ１０５４又はステップ１１１８の処理にて、タイマ割り込みが開始された場合に実行開始され、以降、所定時間（本例では、Ｔとしているが、例えば、２ｍｓ程度の時間が設定される）を周期として定期的に実行されるよう構成されている。
【０１１３】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
まず、ステップ１６０２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、割り込み開始時の処理（例えば、ＣＰＵＣ１００内のレジスタで保持されているデータの退避、電源断検知信号の入力ポートチェック等）を実行する。次に、ステップ１６０４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、現在（今回の割り込み処理にて）電源断を検知していないか否かを判定する。ステップ１６０４でＮｏの場合、ステップ１９００で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、電源断時処理を実行する。他方、ステップ１６０４でＹｅｓの場合、ステップ１６０６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、タイマ計測（ソフトウエアで管理する各種タイマの更新処理）を開始する。次に、ステップ１６０８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、入力ポートデータを生成して、当該データを記憶する（第１ＲＡＭ領域内の各入力ポートデータの格納領域を更新する）。ここで、入力ポートデータとは、精算ボタンＤ６０、スタートレバーＤ５０、停止ボタンＤ４０、前扉スイッチＤ８０、設定扉スイッチＭ１０、設定キースイッチＭ２０、設定／リセットボタンＭ３０、電源断検知信号、投入受付センサＤ１０ｓ、第１投入センサＤ２０ｓ、第２投入センサＤ３０ｓ、第１払出センサＨ１０ｓ、第２払出センサＨ２０ｓ、等の検出に係る情報である（即ち、これらの操作部材での操作有無やセンサ検知状態が、割り込み間隔Ｔでサンプリングされる）。
【０１１４】
次に、ステップ１６１０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の入力ポートデータを参照し、各入力ポートデータのサンプリング結果に応じて、前扉スイッチフラグ、設定扉スイッチフラグ、設定キースイッチフラグのオン・オフを切り替える（例えば、前扉スイッチＤ８０のスイッチ状態が複数回のサンプリングに亘って連続してオンである場合に、前扉スイッチフラグをオンとすることで、ノイズの影響を受けることなく前扉ＤＵが開状態であることを検出することもできる）。次に、ステップ１６１２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、全リール（左リールＭ５１、中リールＭ５２、右リールＭ５３）の回胴駆動制御処理（リールＭ５０の駆動の制御に係る処理）を実行する。次に、ステップ１６１４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、出力データを出力ポートに出力する。ここで、出力データとは、リールＭ５０、ブロッカＤ１００、等を駆動するためのデータである。ステップ１６１６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のエラーチェック処理を呼び出し、ステップ１７００に移行する。
【０１１５】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１７００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル投入チェック処理を実行する。次に、ステップ１７５０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル払出チェックを実行する。次に、ステップ１８００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、投入・払出エラーチェック処理を実行する。次に、ステップ１６１８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、すべてのエラーフラグがオフ（投入メダル逆流フラグ、投入枚数エラーフラグ、メダル滞留エラーフラグ、投入異常エラーフラグ、払出異常エラーフラグ、払出メダル滞留エラーフラグ、扉スイッチフラグ、等のエラーに係るフラグが全てオフ）であるか否かを判定する（但し、本実施形態では、扉スイッチフラグに関しては、第１ＲＡＭ領域内で格納されているため、第１ＲＡＭ領域を参照して判定する）。ステップ１６１８でＹｅｓの場合、ステップ１６２０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、エラー未検出コマンド（サブ側へのコマンドであり、エラーが検出されていない旨に係るコマンド）をセットし（例えば、レジスタ領域内にセットし）、ステップ１６２４に移行する。他方、ステップ１６１８でＮｏの場合、ステップ１６２２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、エラー検出コマンド（サブ側へのコマンドであり、エラーが検出されている旨に係るコマンド）をセットし（例えば、レジスタ領域内にセットし）、ステップ１６２４に移行する。尚、ステップ１６２２においては、オンとなっているエラーフラグに対応したエラー（現在発生しているエラー）に係る情報がサブ側に送信されるよう構成されている。また、エラー未検出コマンドはエラーが発生していた状態からエラーが解除された場合にのみ（フラグがオフになったと判定された場合にのみ）セットしても良いし、エラー未検出のときには当該情報のセット処理を実行しなくても良い（Ｓ１６２０が無くても良い）。更に、エラー検出コマンドはエラーが発生していない状態からエラーが発生した場合にのみセット処理を実行しても良いし、第１のエラー（例えば、投入メダル滞留エラー）が発生している状態から第２のエラー（例えば、払出メダル滞留エラー）のようにエラーの種類が変わった場合にセット処理を実行しても良い。次に、ステップ１６２４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１６２６に移行する。
【０１１６】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１６２６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、制御コマンド（サブ側のコマンド）を送信する（例えば、ステップ１６２０やステップ１６２２でレジスタ領域内にセットされている場合には、そのセットされた制御コマンドを引き継ぐこととなる）。次に、ステップ１６２８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、外部信号（回胴式遊技機Ｐから外部のホールコンピュータ等へ情報伝達するための信号）を出力する。尚、当該外部信号にて出力されるエラーに係る情報としては、ドア開放エラー、投入異常エラー、払出異常エラー、設定扉開放エラー（不図示）、投入受付センサ滞留エラー（不図示）、等が出力される。尚、ドア開放エラーは、前扉ＤＵが開放されドアスイッチフラグがオンとなった場合にエラーとなるよう構成されており、設定扉開放エラーは設定扉が開放され設定扉スイッチフラグがオンとなった場合にエラーとなるよう構成されており、投入受付センサ滞留エラーは投入受付センサが遊技メダルの滞留を検出した場合にエラーとなるよう構成されている。次に、ステップ１６３０で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ＬＥＤ（７セグＬＥＤランプ、等）の出力データ（例えば、複数の７セグＬＥＤユニットのうち、所定の７セグＬＥＤユニットを点灯させ、７セグの所定のセグメントを点灯させる）を出力する（所謂、ダイナミック点灯）。次に、ステップ１６３２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ＬＥＤの点灯態様（例えば、ＬＥＤの点灯色を変更）を実行する。尚、ステップ１６３２は実行されなくても良い。次に、ステップ１６３４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、ソフト乱数管理処理（ソフトウエアで管理する乱数値の更新処理等）を実行する。次に、ステップ１６３６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域の乱数チェック処理を呼び出し、ステップ１６３８に移行する。
【０１１７】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１６３８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、内部情報レジスタデータを取得する（内部情報レジスタには、乱数発生回路に異常が出ると異常フラグ用ビットが立つ領域が存在している）。次に、ステップ１６４０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、乱数更新用クロックの周波数は正常であるか否か（当該周波数異常を示す異常フラグ用ビットが立っていないか否か）を判定する。具体的には、乱数更新用クロックの周波数が所定値を下回った場合に異常用フラグビットが立つ。ステップ１６４０でＹｅｓの場合、ステップ１６４２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、内蔵乱数の更新状態は正常であるか否か（当該更新状態異常を示す異常フラグ用ビットが立っていないか否か）を判定する。ステップ１６４２でＹｅｓの場合、ステップ１６４４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰する。他方、ステップ１６４０又はステップ１６４２でＮｏの場合には、ステップ１６４６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、内蔵乱数エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、前述した、復帰不可能エラー処理を実行する。
【０１１８】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１６４８で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、割り込み終了処理を実行し、次の処理（ステップ１６０２の処理）に移行する。
【０１１９】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１８は、図１７におけるステップ１７００のサブルーチンに係る、メダル投入チェック処理のフローチャートである。まず、ステップ１７０２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１投入センサＤ２０ｓがオンであるか否か（検出しているか否か）を判定する（但し、第１投入センサＤ２０ｓの入力ポートデータ自体が、第１ＲＡＭ領域内で格納されている場合には、第１ＲＡＭ領域を参照して判定する）。ステップ１７０２でＹｅｓの場合、ステップ１７０４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓが、投入された遊技メダルの逆流を検知している（例えば、第１投入センサＤ２０ｓオフ、且つ、第２投入センサＤ３０ｓオン→第１投入センサＤ２０ｓオン、且つ、第２投入センサＤ３０ｓオンとなった場合に検知するものであり、この検知状態の時系列データ自体は第２ＲＡＭ領域内で保持されている）か否かを判定する。ステップ１７０４でＹｅｓの場合、ステップ１７０６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル逆流エラーフラグをオンにし（例えば、第２ＲＡＭ領域の投入メダル逆流エラーフラグ領域内をオンに相当する値で更新し）、ステップ１７０８に移行する。他方、ステップ１７０４でＮｏの場合にも、ステップ１７０８に移行する。
【０１２０】
次に、ステップ１７０８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓが、投入されたメダルの滞留を検出している（例えば、第１投入センサＤ２０ｓオンである状態が所定時間継続した場合、又は第２投入センサＤ３０ｓオンである状態が所定時間継続した場合に検知するものであり、この検知状態のデータ自体は第２ＲＡＭ領域内で保持されている）か否かを判定する。ステップ１７０８でＹｅｓの場合、ステップ１７１０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入メダル滞留エラーフラグをオンにし（例えば、第２ＲＡＭ領域の投入メダル滞留エラーフラグ領域内をオンに相当する値で更新し）、ステップ１７１２に移行する。他方、ステップ１７０８でＮｏの場合にも、ステップ１７１２に移行する。次に、ステップ１７１２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、受付メダル枚数（遊技メダルの投入を受け付けた枚数）から正常通過枚数（正常に投入されたとみなされた遊技メダルの枚数）を減算した値が所定範囲内（例えば、０〜２枚）でないか否かを判定する。ステップ１７１２でＹｅｓの場合、ステップ１７１６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入枚数エラーフラグをオンにし（例えば、第２ＲＡＭ領域の投入枚数エラーフラグ領域内をオンに相当する値で更新し）、次の処理（ステップ１７５０の処理）に移行する。尚、ステップ１７１２でＮｏの場合にも、次の処理（ステップ１７５０の処理）に移行する。尚、所定時間（例えば、５秒）の投入枚数エラー監視期間を設けて、当該監視期間中に、受付メダル枚数から正常通過枚数を減算した値が所定範囲内（例えば、０〜２枚）ではなくなった場合に投入枚数エラーとなるよう構成してもよい。
【０１２１】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図１９は、図１７におけるステップ１７５０のサブルーチンに係る、メダル払出チェック処理のフローチャートである。まず、ステップ１７５２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグがオンであるか否か（検出しているか否か）を判定する（但し、ホッパ駆動フラグ自体が、第１ＲＡＭ領域内で格納されている場合には、第１ＲＡＭ領域を参照して判定する）。ステップ１７５２でＹｅｓの場合、ステップ１７５４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払い出されたメダルの滞留を検出（例えば、第１払出センサＨ１０ｓオンである状態が所定時間継続した場合、且つ、第２払出センサＨ２０ｓオンである状態が所定時間継続した場合に検知するものであり、この検知状態のデータ自体は第２ＲＡＭ領域内で保持されている）しているか否かを判定する。ステップ１７５４でＹｅｓの場合、ステップ１７５６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出メダル滞留エラーフラグをオンにし（例えば、第２ＲＡＭ領域の払出メダル滞留エラーフラグ領域内をオンに相当する値で更新し）、次の処理（ステップ１８００の処理）に移行する。尚、ステップ１７５２又はステップ１７５４でＮｏの場合も、次の処理（ステップ１８００の処理）に移行する。
【０１２２】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２０は、図１７におけるステップ１８００のサブルーチンに係る、投入・払出エラーチェック処理のフローチャートである。まず、ステップ１８０２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、ブロッカＤ１００がオフであるか否かを判定する（但し、ブロッカＤ１００の出力ポートデータ自体が、第１ＲＡＭ領域内で格納されている場合には、第１ＲＡＭ領域を参照して判定する）。ステップ１８０２でＹｅｓの場合、ステップ１８０４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入センサの異常検出（第１投入センサＤ２０ｓ又は第２投入センサＤ３０ｓが遊技メダルの検出をしないはずのタイミングにおける検出）があるか否かを判定する。ステップ１８０４でＹｅｓの場合、ステップ１８０６で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常投入エラーフラグをオンにし（例えば、第２ＲＡＭ領域の異常投入エラーフラグ領域内をオンに相当する値で更新し）、ステップ１８０８に移行する。尚、ステップ１８０２又はステップ１８０４でＮｏの場合にも、ステップ１８０８に移行する。
【０１２３】
次に、ステップ１８０８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、ホッパ駆動フラグがオフであるか否かを判定する（但し、ホッパ駆動フラグ自体が、第１ＲＡＭ領域内で格納されている場合には、第１ＲＡＭ領域を参照して判定する）。ステップ１８０８でＹｅｓの場合、ステップ１８１０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、払出センサの異常検出（第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓが遊技メダルの検出をしないはずのタイミングにおける検出）があるか否かを判定する。ステップ１８１０でＹｅｓの場合、ステップ１８１２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、異常払出エラーフラグをオンにし（例えば、第２ＲＡＭ領域の異常払出エラーフラグ領域内をオンに相当する値で更新し）、次の処理（ステップ１６１８の処理）に移行する。尚、ステップ１８０８又はステップ１８１でＮｏの場合にも、次の処理（ステップ１６１８の処理）に移行する。
【０１２４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２１は、図１７におけるステップ１９００のサブルーチンに係る、電源断時処理のフローチャートである。まず、ステップ１９０２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、スタックポインタを保存する。次に、ステップ１９０４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、電源断処理済みフラグをオンにする（例えば、第１ＲＡＭ領域の電源断処理済みフラグ領域内をオンに相当する値で更新する）。次に、ステップ１９０６で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のチェックサム算出処理を呼び出し、ステップ１９０８に移行する。
【０１２５】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１９０８で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域の先頭アドレスからチェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報（例えば、当該算出したチェックサムにおける下位１バイト、或いは、その補数となるもの）をチェックサム領域にてセットする（チェックサム領域に係るアドレスは同図下段の「ＲＡＭに係るメモリマップ」を参照）。次に、ステップ１９１０で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１９１２に移行する。
【０１２６】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１９１２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ・第２ＲＡＭの書き込みを禁止し、ステップ１９１４に移行する。次に、ステップ１９１４で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、リセットを待機するための無限ループ処理を実行する。
【０１２７】
以上のように構成することで、本実施形態に係る回胴式遊技機によれば、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域（又は、レジスタ領域）を更新及び参照可能に構成し、エラー検出、エラー表示等の遊技機に対して不正行為がなされる（例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等）ことを防御するための不正行為防止用のプログラムを第２ＲＯＭ・ＲＡＭ領域における処理にて実行し得るよう構成することで、遊技の進行に係る処理と領域を明確に分けることができ、当該不正行為防止用のプログラムの正当性を検証することが容易となる。
【０１２８】
（第２実施形態）
尚、本実施形態においては、エラー表示処理等も不正行為防止用のプログラムとして見做し、第２ＲＯＭ領域にて配置されているプログラムコードとして実装するための一例を示したが、エラー表示処理等は遊技進行を制御する上でも必要不可欠な処理であるため、不正行為防止用のプログラムではなく遊技性仕様を実装するためのプログラムとして見做した方が、人為的な検証が容易になる可能性がある。そこで、このような事情に鑑み、本実施形態で示した一例をベースとし、遊技性仕様を実装するためのプログラムとして見做した方が好適となり得る処理を、第１ＲＯＭ領域にて配置されているプログラムコードとして実装するための一例を第２実施形態とし、以下、本実施形態からの変更点について詳述していく。
【０１２９】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
はじめに、図２２は、第２実施形態に係る回胴式遊技機Ｐの電源を投入した後（或いはシステムリセットやユーザリセット時において）、主制御基板ＭのＣＰＵＣ１００にて初めて実行される処理の流れを示したフローチャート（１枚目）である。本実施形態との相違点は、ステップ１００５‐１（第２）、ステップ１００５‐２（第２）、ステップ１００９‐１（第２）、ステップ１００９‐２（第２）、ステップ１０１７（第２）、ステップ１０１９‐１（第２）〜ステップ１０１９‐３（第２）、ステップ１０２１‐１（第２）、ステップ１０２１‐２（第２）、ステップ１０２７（第２）、ステップ１０２９（第２）、ステップ１０３５‐１（第２）及びステップ１０３５‐２（第２）であり、即ち、ステップ１００４で、チップの機能設定を実行した後、ステップ１００５‐１（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域の先頭アドレスから第１チェックサム領域直前アドレスまでのチェックサムを算出する。ここで、同図右（ＲＡＭに係るメモリマップ）に示されるように、第２実施形態においては、第１ＲＡＭ領域のチェックサム領域（第１チェックサム領域）と第２ＲＡＭ領域のチェックサム領域（第２チェックサム領域）とが別々になっており、後述する第２実施形態における電源断時処理にて、第１ＲＡＭ領域のチェックサム算出と第２ＲＡＭ領域のチェックサム算出とが別々に行われ、夫々の算出結果に基づく誤り検出用情報が夫々の領域に格納される。次に、ステップ１００５‐２で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭをチェックし、第１ＲＡＭ電源断復帰データ（第１ＲＡＭに係る電源断復帰データ）を生成し、ステップ１００６に移行する。よって、ここでの「第１ＲＡＭをチェック」とは、第１ＲＡＭ領域を対象としたチェックサムと、第１チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵ＲＡＭＣ１２０に格納されているデータが正しく保持されているか否かをチェックする処理となる。
【０１３０】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
他方、ステップ１００６で電源断復帰処理を呼び出した後、ステップ１００９‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域の先頭アドレスから、第２チェックサム領域を除く最終アドレスまでのチェックサムを算出する。次に、ステップ１００９‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭをチェックし、第２ＲＡＭ電源断復帰データ（第１ＲＡＭに係る電源断復帰データ）を生成し、ステップ１０１２に移行する。即ち、ここでの「第２ＲＡＭをチェック」とは、第２ＲＡＭ領域を対象としたチェックサムと、第２チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵ＲＡＭＣ１２０に格納されているデータが正しく保持されているか否かをチェックする処理となる。
【０１３１】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１０１６ですべてのスイッチがオンであった場合、ステップ１０１７（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定変更操作ありフラグをオンにし（例えば、第１ＲＡＭ領域の設定変更操作ありフラグ領域内をオンに相当する値で更新し）、ステップ１０１８に移行する。
【０１３２】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１０１８で非設定変更時初期化処理を呼び出した後、ステップ１０１９‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ１０１９‐１（第２）でＹｅｓの場合、ステップ１０１９‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の電源断復帰データは正常であるか否か（特に、第１ＲＡＭ領域を対象とした誤り検出結果が正常であるか否か）を判定する。ステップ１０１９‐２（第２）でＹｅｓの場合、ステップ１０１９‐３（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断復帰データは正常であるか否か（特に、第２ＲＡＭ領域を対象とした誤り検出結果が正常であるか否か）を判定する。ステップ１０１９‐３（第２）でＹｅｓの場合、ステップ１０２８で、第１ＲＡＭ領域及び第２ＲＡＭ領域の初期化範囲を未使用ＲＡＭ範囲に決定してセットし、ステップ１０２７（第２）で、第２ＲＡＭ領域内の電源断異常フラグをオフにし、ステップ１０３６に移行する。他方、ステップ１０１９‐２（第２）又はステップ１０１９‐３（第２）でＮｏの場合、ステップ１０２９（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断異常フラグをオンにし、ステップ１０３６に移行する。
【０１３３】
他方、ステップ１０１９‐１（第２）でＮｏの場合、ステップ１０２１‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の電源断復帰データは正常であるか否か（特に、第１ＲＡＭ領域を対象とした誤り検出結果が正常であるか否か）を判定する。ステップ１０２１‐１（第２）でＹｅｓの場合、ステップ１０２１‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断復帰データは正常であるか否か（特に、第２ＲＡＭ領域を対象とした誤り検出結果が正常であるか否か）を判定する。ステップ１０２１‐２（第２）でＹｅｓの場合、ステップ１０３２で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域及び第２ＲＡＭ領域の初期化範囲を第１ＲＡＭ領域内の設定値を除くすべての範囲に決定してセットし、ステップ１０３５‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断異常フラグをオフにし、ステップ１０３６に移行する。他方、ステップ１０２１‐１（第２）又はステップ１０２１‐２（第２）でＮｏの場合、ステップ１０３４で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域及び第２ＲＡＭ領域の初期化範囲をすべての範囲に決定してセットし、ステップ１０３５‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断異常フラグをオンにし、ステップ１０３６に移行する。
【０１３４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２３は、第２実施形態に係る回胴式遊技機Ｐの電源を投入した後（或いはシステムリセットやユーザリセット時において）、主制御基板ＭのＣＰＵＣ１００にて初めて実行される処理の流れを示したフローチャート（２枚目）である。本実施形態との相違点は、ステップ１０３９‐１（第２）、ステップ１０３９‐２（第２）、ステップ１０２６（第２）、ステップ１３００（第２）、ステップ１０４５（第２）、ステップ１０４６（第２）及びステップ１０４７（第２）であり、即ち、ステップ１０３９‐１（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ１０３９‐１（第２）でＹｅｓの場合、ステップ１０３９‐２（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の電源断異常フラグがオフであるか否かを判定する。ステップ１０３９‐２（第２）でＹｅｓの場合又はステップ１０３９‐１（第２）でＮｏの場合には、ステップ１０４０に移行し（即ち、設定変更装置を作動させる場合か、設定変更装置を作動させない場合において第１ＲＡＭ領域及び第２ＲＡＭ領域を対象とした別個の誤り検出結果が正常であることを含め、正常に電断復帰している場合には以降の処理を続行し）、ステップ１０３９‐２（第２）でＮｏの場合、ステップ１０２６（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、バックアップエラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする（即ち、設定変更装置を作動させない場合において第１ＲＡＭ領域及び第２ＲＡＭ領域を対象とした別個の誤り検出結果が異常であることを含め、正常に電断復帰していない場合には復帰不可能な状態へと移行する）。ここで、本例においては、設定変更装置を作動させない場合において第１ＲＡＭ領域及び第２ＲＡＭ領域を対象とした別個の誤り検出結果がいずれも正常である場合において以降の処理を続行するよう構成されているが、これには限定されず、例えば、第１ＲＡＭ領域を対象とした誤り検出結果が正常であれば、第２ＲＡＭ領域を対象とした誤り検出結果が異常であっても（第２ＲＡＭ領域の全領域を初期化した上で）以降の処理を続行するよう構成してもよい。
【０１３５】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１０４４で、第１ＲＡＭ領域内の設定値が正常範囲内であった場合、ステップ１０４５（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグをオフにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１０４７（第２）に移行する。他方、ステップ１０４４でＮｏの場合、ステップ１０４６（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグをオンにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１０４７（第２）に移行する。
【０１３６】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１０４７（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグがオフであるか否かを判定する。ステップ１０４７（第２）でＹｅｓの場合には、ステップ１０５０に移行し、Ｎｏの場合には、ステップ１０４８（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定値エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第２実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示（バックアップエラー表示、設定値エラー表示）のセット処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１３７】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２４は、第２実施形態におけるステップ１２００のサブルーチンに係る、遊技進行制御処理（２枚目）のフローチャートである。本実施形態との相違点は、ステップ１２２８（第２）、ステップ１７００（第２）、ステップ１４００（第２）、ステップ１２３７（第２）、ステップ１７５０（第２）、ステップ１４５０（第２）、ステップ１２４９‐１（第２）、ステップ１８００（第２）、ステップ１５００（第２）、ステップ１２５４‐１（第２）〜ステップ１２５４‐３（第２）、ステップ１２５６（第２）及びステップ１３００（第２）であり、即ち、ステップ１２２７で遊技メダルの投入を受け付けた後、又は、ステップ１２３０で第１投入センサＤ２０ｓ及び第２投入センサＤ３０ｓがオフでなかった場合に、ステップ１２２８（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のメダル投入チェック処理を呼び出し、ステップ１７００（第２）に移行する。
【０１３８】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１７００（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル投入チェック処理を実行し、ステップ１２２９に移行する。尚、この第２ＲＯＭ領域のメダル投入チェック処理の趣旨としては、本実施形態において、遊技進行制御処理（ループ処理）とタイマ割り込み時処理（非ループ処理）とで分けて実装されていたメダル投入チェック関連の処理を、遊技進行制御処理（ループ処理）にて纏めて実装する方法の一例を示すことにある。
【０１３９】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２２９で第１ＲＯＭ領域の呼び出し元に復帰した後、ステップ１４００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行し、ステップ１２３０に移行する。尚、第２実施形態においては、メダル投入エラー検出処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１４０】
また、ステップ１２３６で第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンであった場合、ステップ１２４１でホッパ駆動後所定時間が経過していない場合、又は、ステップ１２４７で第１払出センサＨ１０ｓ及び第２払出センサＨ２０ｓがオフでなかった場合に、ステップ１２３７（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のメダル払出チェック処理を呼び出し、ステップ１７５０（第２）に移行する。
【０１４１】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１７５０（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ１２４０に移行する。尚、この第２ＲＯＭ領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理（ループ処理）とタイマ割り込み時処理（非ループ処理）とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理（ループ処理）にて纏めて実装する方法の一例を示すことにある。
【０１４２】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２４０で第１ＲＯＭ領域の呼び出し元に復帰した後、ステップ１４５０（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ１２４７に移行する。尚、第２実施形態においては、メダル払出エラー検出処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１４３】
また、ステップ１２３２で精算ボタンＤ６０の操作がなかった場合、又は、ステップ１２３３で残りクレジット及びベットメダルがなかった場合に、ステップ１２４９‐１（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域の投入・払出エラーチェック処理を呼び出し、ステップ１８００（第２）に移行する。
【０１４４】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１８００（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ１２５０に移行する。尚、この第２ＲＯＭ領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理（ループ処理）とタイマ割り込み時処理（非ループ処理）とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理（ループ処理）にて纏めて実装する方法の一例を示すことにある。
【０１４５】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２５０で第１ＲＯＭ領域の呼び出し元に復帰した後、ステップ１５００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行し、ステップ１２５１に移行する。尚、第２実施形態においては、投入・払出エラー検出処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１４６】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２５３で第１ＲＡＭ領域内の設定値が正常範囲内であった場合、ステップ１２５４‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグをオフにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２５４‐３（第２）に移行する。他方、ステップ１２５３で第１ＲＡＭ領域内の設定値が正常範囲内でなかった場合、ステップ１２５４‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグをオンにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２５４‐３（第２）に移行する。
【０１４７】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２５４‐３（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の設定値異常フラグがオフであるか否かを判定する。ステップ１２５４‐３（第２）でＹｅｓの場合、次の処理（ステップ１２５７の処理）に移行し、Ｎｏの場合には、ステップ１２５６（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、設定値エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第２実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示（設定値エラー表示）のセット処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１４８】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２５は、第２実施形態における、図２４のステップ１４００（第２）のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第１ＲＯＭ・ＲＡＭ領域における処理としていることである。即ち、本実施形態においては、メダル投入エラー関連のエラー表示処理を実行する場合、第２ＲＯＭ領域において実装された当該処理を呼び出していたのであるが、第２実施形態においては、当該処理が第１ＲＯＭ領域において実装されており、第２ＲＯＭ・ＲＡＭ領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第１ＲＯＭ領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム（遊技進行を制御するためのプログラム）として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第１ＲＯＭ領域において実装されたエラー表示処理へと引き渡すための第２ＲＡＭ領域内のフラグである、投入メダル逆流エラーフラグ、投入メダル滞留エラーフラグ及び投入枚数エラーフラグは、エラーが解除された場合には、本例のように第１ＲＯＭ領域において実装されたエラー表示処理から直接オフとしてもよいし、第２ＲＯＭ領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
【０１４９】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２６は、第２実施形態における、図２４のステップ１４５０（第２）のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第１ＲＯＭ・ＲＡＭ領域における処理としていることである。即ち、本実施形態においては、メダル払出エラー関連のエラー表示処理を実行する場合、第２ＲＯＭ領域において実装された当該処理を呼び出していたのであるが、第２実施形態においては、当該処理が第１ＲＯＭ領域において実装されており、第２ＲＯＭ・ＲＡＭ領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第１ＲＯＭ領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム（遊技進行を制御するためのプログラム）として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第１ＲＯＭ領域において実装されたエラー表示処理へと引き渡すための第２ＲＡＭ領域内のフラグである、払出メダル滞留エラーフラグは、エラーが解除された場合には、本例のように第１ＲＯＭ領域において実装されたエラー表示処理から直接オフとしてもよいし、第２ＲＯＭ領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
【０１５０】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２７は、第２実施形態における、図２４のステップ１５００（第２）のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第１ＲＯＭ・ＲＡＭ領域における処理としていることである。即ち、本実施形態においては、投入・払出エラー関連のエラー表示処理を実行する場合、第２ＲＯＭ領域において実装された当該処理を呼び出していたのであるが、第２実施形態においては、当該処理が第１ＲＯＭ領域において実装されており、第２ＲＯＭ・ＲＡＭ領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第１ＲＯＭ領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム（遊技進行を制御するためのプログラム）として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第１ＲＯＭ領域において実装されたエラー表示処理へと引き渡すための第２ＲＡＭ内のフラグである、異常投入エラーフラグ及び異常払出エラーフラグは、エラーが解除された場合には、本例のように第１ＲＯＭ領域において実装されたエラー表示処理から直接オフとしてもよいし、第２ＲＯＭ領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
【０１５１】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２８は、第２実施形態における、遊技進行制御処理（３枚目）のフローチャートである。本実施形態との相違点は、ステップ１２６９‐１（第２）〜ステップ１２６９‐４（第２）、ステップ１２７２（第２）、ステップ１３００（第２）、ステップ１８００（第２）、ステップ１５００（第２）、ステップ１２７７‐１（第２）、ステップ１７５０（第２）及びステップ１４５０（第２）であり、即ち、ステップ１２６９で、表示された図柄の組み合わせが正常である場合、ステップ１２６９‐１（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の表示判定異常フラグをオフにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２６９‐３（第２）に移行する。他方、ステップ１２６９で、表示された図柄の組み合わせが正常でない場合、ステップ１２６９‐２（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の表示判定異常フラグをオンにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１２６９‐３（第２）に移行する。
【０１５２】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１２６９‐３（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の表示判定異常フラグがオフであるか否かを判定する。ステップ１２６９‐３（第２）でＹｅｓの場合、ステップ１２６９‐４（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域の投入・払出エラーチェック処理を呼び出し、ステップ１５００（第２）に移行する。他方、ステップ１２６９‐３（第２）でＮｏの場合には、ステップ１２７２（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、表示判定エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第２実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示（表示判定エラー表示）のセット処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１５３】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１８００（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ１２７０に移行する。尚、この第２ＲＯＭ領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理（ループ処理）とタイマ割り込み時処理（非ループ処理）とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理（ループ処理）にて纏めて実装する方法の一例を示すことにある。
【０１５４】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２７０で第１ＲＯＭ領域の呼び出し元に復帰した後、ステップ１５００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、前述した、投入・払出エラー検出処理を実行し、ステップ１２７４に移行する。尚、第２実施形態においては、投入・払出エラー検出処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１５５】
他方、ステップ１２７７で第１払出センサＨ１０ｓ又は第２払出センサＨ２０ｓがオンであった場合、ステップ１２７７‐１（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＯＭ領域のメダル払出チェック処理を呼び出し、ステップ１７５０（第２）に移行する。
【０１５６】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１７５０（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ１２８４に移行する。尚、この第２ＲＯＭ領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理（ループ処理）とタイマ割り込み時処理（非ループ処理）とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理（ループ処理）にて纏めて実装する方法の一例を示すことにある。
【０１５７】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
また、ステップ１２８４で第１ＲＯＭ領域の呼び出し元に復帰した後、ステップ１４５０（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ１２８６に移行する。尚、第２実施形態においては、メダル払出エラー検出処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１５８】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図２９は、第２実施形態における、図２３、図２４、図２８及び図３０のステップ１３００（第２）のサブルーチンに係る、復帰不可能エラー処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第１ＲＯＭ・ＲＡＭ領域における処理としていることである。即ち、本実施形態においては、復帰不可能エラー処理を実行する場合、第２ＲＯＭ領域において実装された当該処理を呼び出していたのであるが、第２実施形態においては、当該処理が第１ＲＯＭ領域において実装されており、第２ＲＯＭ・ＲＡＭ領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第１ＲＯＭ領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、復帰不可能な（即ち、回胴式遊技機Ｐを動作不能とする）状態へと移行させるという強制力をもった処理を、遊技性仕様を実装するためのプログラム（遊技進行を制御するためのプログラム）として実装することができる。
【０１５９】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、図３０は、第２実施形態におけるステップ１６００のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。本実施形態との相違点は、ステップ１６４８（第２）、ステップ１６５０（第２）及びステップ１６５４（第２）であり、即ち、ステップ１６４２で、内蔵乱数の更新状態が正常であった場合、ステップ１６４８（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の内蔵乱数異常フラグをオフにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１６５４（第２）に移行する。他方、ステップ１６４０で、乱数更新用クロックの周波数が正常でなかった、又は、ステップ１６４２で、内蔵乱数の更新状態が正常でなかった場合に、ステップ１６５０（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域内の内蔵乱数異常フラグをオンにし、第１ＲＯＭ領域の呼び出し元に復帰し、ステップ１６５４（第２）に移行する。
【０１６０】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１６５４（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、内蔵乱数異常フラグがオフであるか否かを判定する。ステップ１６５４（第２）でＹｅｓの場合には、ステップ１６３６に移行し、Ｎｏの場合には、ステップ１６４８（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、内蔵乱数エラー表示をセットする（例えば、レジスタ領域内にエラー番号をセットする）。次に、ステップ１３００（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第２実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示（内蔵乱数エラー表示）のセット処理を、第１ＲＯＭ・ＲＡＭ領域にて実行するよう構成している。
【０１６１】
＜第１ＲＯＭ・ＲＡＭ領域における処理＞
次に、図３１は、第２実施形態における、図３０のステップ１９００のサブルーチンに係る、電源断時処理のフローチャートである。本実施形態との相違点は、ステップ１９０５（第２）及びステップ１９０９（第２）であり、即ち、ステップ１９０４で、電源断処理済みフラグをオンにした後、ステップ１９０５（第２）で、ＣＰＵＣ１００は、第１ＲＯＭ・ＲＡＭ領域内のデータに基づき、第１ＲＡＭ領域の先頭アドレスから第１チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報（例えば、当該算出したチェックサムにおける下位１バイト、或いは、その補数となるもの）を第１チェックサム領域にてセットする。次に、ステップ１９０６で、第２ＲＯＭ領域のチェックサム算出処理を呼び出し、ステップ１９０９（第２）に移行する。
【０１６２】
＜第２ＲＯＭ・ＲＡＭ領域における処理＞
次に、ステップ１９０９（第２）で、ＣＰＵＣ１００は、第２ＲＯＭ・ＲＡＭ領域内のデータに基づき、第２ＲＡＭ領域の先頭アドレスから第２チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報（例えば、当該算出したチェックサムにおける下位１バイト、或いは、その補数となるもの）を第２チェックサム領域にてセットし、ステップ１９１０に移行する。前述したように、第２実施形態においては、チェックサム領域は第１チェックサム領域と第２チェックサム領域とに分かれており、同図下段に示されるように、第１チェックサム領域は第１ＲＡＭ領域の最終アドレスに、第２チェックサム領域は第２ＲＡＭ領域の最終アドレスに夫々存在している。また、第１ＲＡＭ領域のチェックサム算出及びセットは第１ＲＯＭ領域における処理が実行し、第２ＲＡＭ領域のチェックサム算出及びセットは第２ＲＯＭ領域における処理が実行するよう構成されている。
【０１６３】
以上のように構成することで、第２実施形態に係る回胴式遊技機によれば、第１ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第２ＲＡＭ領域を参照可能に構成し、且つ、第２ＲＯＭ領域にて配置されているプログラムコードに基づくＣＰＵＣ１００の処理にて、第１ＲＡＭ領域を参照可能に構成し、エラー検出等の遊技機に対して不正行為がなされる（例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等）ことを防御するための不正行為防止用のプログラムを第２ＲＯＭ・ＲＡＭ領域における処理にて実行し得るよう構成することで、遊技の進行に係る処理と領域を明確に分けることができ、本実施形態と同様に、当該不正行為防止用のプログラムの正当性を検証することが容易となる。
【０１６４】
（まとめ）
尚、以上の実施例において示した構成に基づき、以下のような概念を抽出（列記）することができる。但し、以下に列記する概念はあくまで一例であり、これら列記した概念の結合や分離（上位概念化）は勿論のこと、以上の実施例において示した更なる構成に基づく概念を、これら概念に付加してもよい。
【０１６５】
はじめに、以上の実施例が解決しようとする課題について簡潔に述べる。遊技機の動作制御等を司るプログラム容量は、不正プログラムの混入防止（遊技機メーカーが提供するプログラムの正当性保障）の観点からその容量上限が厳しく規制されていると共に、遊技性仕様を実装するためのプログラムの他にも、遊技機に対して不正行為がなされる（例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等）ことを防御するための不正行為防止用のプログラムも数多く実装されている。しかしながら、現状では、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとが混在してＲＯＭ上に配置されていることが多く、その結果これらプログラムの正当性を検証することが困難となっているという課題が存在する。
【０１６６】
本態様（１−１）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成されている
ことを特徴とする遊技機である。
【０１６７】
本態様（１−１）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１６８】
本態様（１−２）に係る回胴式遊技機は、
前記第二の終点アドレス値よりも大きく且つ前記第三の始点アドレス値よりも小さい一又は複数の前記アドレス値が存在し、当該一又は複数の前記アドレス値に対して、前記プログラム及び前記データのいずれともならない特殊情報が配置されている、本態様（１−１）の遊技機である。
【０１６９】
本態様（１−２）に係る回胴式遊技機によれば、前述した効果に加え、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと第一制御領域内に存在し読みだされるデータとを第一のブロックとし、第二制御領域内に存在しＣＰＵからアクセスされるプログラムと第二制御領域内に存在し読みだされるデータとを第二のブロックとすると、第一のブロックと第二のブロックとの間には、ＣＰＵからアクセスされない特殊情報が配置されているので、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなって、双方のブロックの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一のブロック＝遊技性仕様を実装するための制御ブロック、第二のブロック＝不正行為防止用の制御ブロックとして配置することで、機能上性質の異なる双方の制御ブロックを、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方の制御ブロックの正当性を人為的に検証することが容易となる。
【０１７０】
本態様（１−３）に係る回胴式遊技機は、
前記特殊情報は、すべてのビットがゼロである、本態様（１−２）の遊技機である。
【０１７１】
本態様（１−３）に係る回胴式遊技機によれば、前述した効果に加え、第一のブロックと第二のブロックとの間に、ＣＰＵからアクセスされない特殊情報を配置するに際し、この特殊情報のすべてのビットがゼロであるため、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなる役割を好適に果たし、双方のブロックの配置位置を視覚上より明確に切り分けることができる。
【０１７２】
本態様（１−４）に係る回胴式遊技機は、
前記特殊情報は、予め定められたコード化手法により遊技機に関する情報がコード化されたビット列となる、本態様（１−２）の遊技機である。
【０１７３】
本態様（１−４）に係る回胴式遊技機によれば、前述した効果に加え、第一のブロックと第二のブロックとの間に、ＣＰＵからアクセスされない特殊情報を配置するに際し、この特殊情報が「遊技機に関する情報」となるため、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなる役割を果たすと共に、プログラムソースコードの出所を同時に示すことができるため、双方の制御ブロックの正当性を人為的に検証することが更に容易となる。
【０１７４】
本態様（１−５）に係る回胴式遊技機は、
前記第二制御領域にて配置されている全ての前記プログラムに係る総バイト数は、前記第一制御領域にて配置されている全ての前記プログラムに係る総バイト数よりも少なく、且つ、前記第二データ領域にて配置されている全ての前記データに係る総バイト数は、前記第一データ領域にて配置されている全ての前記データに係る総バイト数よりも少ない、本態様（１−１）の遊技機である。
【０１７５】
本態様（１−５）に係る回胴式遊技機によれば、前述した効果に加え、第一のブロック＝遊技性仕様を実装するための制御ブロック、第二のブロック＝不正行為防止用の制御ブロックとして配置するよう構成した場合において、遊技性仕様を実装するためのデータ容量よりも不正行為防止用のデータ容量の方が小さくなる。ここで、不正行為防止用のデータは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、そのデータ容量を相対的に小さくして制限しておけば、不正行為防止用のデータの正当性を人為的に検証する労力を低減することが可能となる。
【０１７６】
本態様（２）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際には、前記第一データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第二データ領域にて配置されている前記データは読み出されないように構成されており、
前記第二制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際には、前記第二データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第一データ領域にて配置されている前記データは読み出されないよう構成されている
ことを特徴とする遊技機である。
【０１７７】
本態様（２）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１７８】
本態様（２）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムは、第一制御領域内に存在し読みだされるデータに対してしかアクセスできず、第二制御領域内に存在しＣＰＵからアクセスされるプログラムは、第二制御領域内に存在し読みだされるデータに対してしかアクセスできないため、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと第一制御領域内に存在し読みだされるデータとを第一のブロックとし、第二制御領域内に存在しＣＰＵからアクセスされるプログラムと第二制御領域内に存在し読みだされるデータとを第二のブロックとすると、第一のブロックと第二のブロックとが機能上性質の異なる制御ブロックであることを担保容易となり、双方の制御ブロックの正当性を人為的に検証することが容易となる。
【０１７９】
本態様（３）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第二制御領域にて配置されている前記プログラムは、前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合に前記ＣＰＵによる処理が実行可能となるよう構成されている、
ことを特徴とする遊技機である。
【０１８０】
本態様（３）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１８１】
本態様（３）に係る回胴式遊技機によれば、更に、第二制御領域内に存在しＣＰＵからアクセスされるプログラムは、第一制御領域内に存在しＣＰＵからアクセスされるプログラムにおける呼び出し命令があった場合においてのみＣＰＵによる処理が実行可能となる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合にのみ限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となり、特に、不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０１８２】
本態様（４）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報（例えば、ＣＰＵＣ１００内のレジスタで保持されている情報）を参照可能に構成されている
ことを特徴とする遊技機である。
【０１８３】
本態様（４）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１８４】
本態様（４）に係る回胴式遊技機によれば、更に、第二制御領域内に存在しＣＰＵからアクセスされるプログラムは、第一制御領域内に存在しＣＰＵからアクセスされるプログラムにおける呼び出し命令があった場合においてＣＰＵによる処理が実行可能となる。その際には、当該呼び出し命令があった時点で記憶されている情報として、例えば、ＣＰＵ内のレジスタで保持されている情報（即ち、当該呼び出し命令がある直前に第一制御領域内に存在しＣＰＵからアクセスされるプログラムで処理していた処理結果）を、第二制御領域内に存在しＣＰＵからアクセスされるプログラムへと引き渡すことが可能となる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、主となる遊技性仕様を実装するためのプログラムの処理結果を引き継いで、従となる不正行為防止用のプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムの処理結果は、秘匿性の高い情報となり得るため、不正行為報知用の情報を外部出力し得る従となる不正行為防止用のプログラムへ無暗に引き渡してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の引き渡しタイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、（処理結果の引き渡しタイミングを含め）不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０１８５】
本態様（５）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報（例えば、ＣＰＵＣ１００内のレジスタで保持されている情報）を当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理で更新可能に構成されている
ことを特徴とする遊技機である。
【０１８６】
本態様（５）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１８７】
本態様（５）に係る回胴式遊技機によれば、更に、第二制御領域内に存在しＣＰＵからアクセスされるプログラムは、第一制御領域内に存在しＣＰＵからアクセスされるプログラムにおける呼び出し命令があった場合においてＣＰＵによる処理が実行可能となる。その際には、当該呼び出し命令があった時点で記憶されている情報として、例えば、ＣＰＵ内のレジスタで保持されている情報（即ち、当該呼び出し命令がある直前に第一制御領域内に存在しＣＰＵからアクセスされるプログラムで処理していた処理結果）を、第二制御領域内に存在しＣＰＵからアクセスされるプログラムで処理した処理結果で更新することが可能となる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、従となる不正行為防止用のプログラムの処理結果を引き継いで、主となる遊技性仕様を実装するためのプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムの処理結果は、秘匿性の高い情報となり得るため、不正行為報知用の情報を外部出力し得る従となる不正行為防止用のプログラムから無暗に更新してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の更新タイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、（処理結果の更新タイミングを含め）不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０１８８】
本態様（６）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際においては、当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理結果を、当該呼び出し命令から復帰した後で前記第一制御領域にて配置されている前記プログラムに従い前記ＣＰＵが処理を実行する際において参照可能に構成されている
ことを特徴とする遊技機である。
【０１８９】
本態様（６）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１９０】
本態様（６）に係る回胴式遊技機によれば、更に、第二制御領域内に存在しＣＰＵからアクセスされるプログラムは、第一制御領域内に存在しＣＰＵからアクセスされるプログラムにおける呼び出し命令があった場合においてＣＰＵによる処理が実行可能となる。その際には、当該呼び出し命令から復帰した時点で記憶されている情報として、例えば、ＣＰＵ内のレジスタで保持されている情報（即ち、当該呼び出し命令から復帰する直前に第二制御領域内に存在しＣＰＵからアクセスされるプログラムで処理していた処理結果）を、第一制御領域内に存在しＣＰＵからアクセスされるプログラムへ引き渡すことが可能となる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、従となる不正行為防止用のプログラムの処理結果を引き継いで、主となる遊技性仕様を実装するためのプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムは、秘匿性の高い情報を処理し得るため、不正行為防止用の情報を外部から取り込み得る従となる不正行為防止用のプログラムの処理結果を無暗に引き渡してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の引き渡しタイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、（処理結果の引き渡しタイミングを含め）不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０１９１】
本態様（７）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、第１エラー（例えば、ステップ１２０８に示される、メダル払出装置Ｈが遊技メダルで満杯となった事象）を検出した場合に第１エラーに伴うエラー処理（例えば、ステップ１２１０に示される、メダル満杯エラー状態の制御処理）を実行可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、第２エラー（例えば、ステップ１０４４に示される、設定値に係るデータが正常範囲内でない事象）を検出した場合に第２エラーに伴うエラー処理（例えば、ステップ１０４８及びステップ１３００に示される、復帰不可能エラー処理）を実行可能に構成されている
ことを特徴とする遊技機である。
【０１９２】
本態様（７）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１９３】
本態様（７）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される第１エラーに伴うエラー処理と、第二制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される第２エラーに伴うエラー処理とを、プログラムソースコード上又はダンプリスト上において、明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、第１エラーに伴うエラー処理を、遊技進行上において（即ち、不正行為がなされなくとも）発生し得るエラーとし、第２エラーに伴うエラー処理は、不正行為がなされた際において発生し得るエラーとし、両者のエラー処理が果たす役割が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、第２エラーに伴うエラー処理の必要性を、第１エラーに伴うエラー処理と対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０１９４】
本態様（８）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＲＡＭ（例えば、内蔵ＲＡＭＣ１２０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記ＲＡＭは、
前記第一制御領域にて配置されている前記プログラムに従う前記ＣＰＵによる処理結果データを記憶する第一情報格納領域（例えば、第１ＲＡＭ領域）と、
前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵによる処理結果データを記憶する第二情報格納領域（例えば、第２ＲＡＭ領域）と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出（例えば、チェックサムチェックを行う手法）と前記第二情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出（例えば、チェックサムチェックを行う手法）とを別々に行うよう構成されている
ことを特徴とする遊技機である。
【０１９５】
本態様（８）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１９６】
本態様（８）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される処理結果と、第二制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される処理結果とを、別々の情報格納領域へ格納することができ、その際には、当該格納された処理結果の誤り検出を行う際に、夫々の情報格納領域に対して別々に誤り検出を行うことができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムによって処理される処理結果と不正行為防止用のプログラムによって処理される処理結果とが混在して格納されないことを担保でき、且つ、当該格納された処理結果が仮に破壊された場合、当該双方の処理結果のいずれが破壊されたのかを明確に知ることができる。よって、例えば、不正行為防止用のプログラムによって処理される処理結果の重要性が低い場合には、仮に不正行為防止用のプログラムによって処理される処理結果が破壊されてしまった場合であっても、遊技性仕様を実装するためのプログラムによって処理される処理結果が破壊されずに保持されていれば、処理を続行させるよう構成することも可能となる。
【０１９７】
本態様（９）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＲＡＭ（例えば、内蔵ＲＡＭＣ１２０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記ＲＡＭは、
前記第一制御領域にて配置されている前記プログラムに従う前記ＣＰＵによる処理結果データを記憶する第一情報格納領域（例えば、第１ＲＡＭ領域）と、
前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵによる処理結果データを記憶する第二情報格納領域（例えば、第２ＲＡＭ領域）と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データと前記第二情報格納領域に記憶された処理結果データとを通算した誤り検出用情報に基づき誤り検出を行う（例えば、チェックサムチェックを行う手法）よう構成されている
ことを特徴とする遊技機である。
【０１９８】
本態様（９）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０１９９】
本態様（９）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される処理結果と、第二制御領域内に存在しＣＰＵからアクセスされるプログラムによって処理される処理結果とを、別々の情報格納領域へ格納することができ、その際には、当該格納された処理結果の誤り検出を行う際に、夫々の情報格納領域を統合したものに対して誤り検出を行うことができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムによって処理される処理結果と不正行為防止用のプログラムによって処理される処理結果とが混在して格納されないことを担保でき、且つ、当該格納された処理結果が仮に破壊された場合、当該双方の処理結果のいずれかが破壊されたことを簡易的に知ることができる。よって、例えば、不正行為防止用のプログラムによって処理される処理結果の重要性が高い場合には、遊技性仕様を実装するためのプログラムによって処理される処理結果及び不正行為防止用のプログラムによって処理される処理結果のいずれもが破壊されていないことが簡易的に導出できた場合においてのみ、処理を続行させるよう構成することが可能となる。
【０２００】
本態様（１０）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、所定のセンサ部（例えば、第１投入センサＤ２０ｓや第２投入センサＤ３０ｓ）からの入力信号に基づき、所定の事象（例えば、ステップ１２２７に示される、遊技メダルを１枚受け付けた事象）の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、前記所定のセンサ部からの入力信号に基づき、遊技進行に係る異常な事象（例えば、ステップ１４００のサブルーチンに示される、投入メダル逆流エラーや投入メダル滞留エラー等）の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
【０２０１】
本態様（１０）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０２０２】
本態様（１０）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る正常な事象の発生有無を判定し、第二制御領域内に存在しＣＰＵからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る異常な事象の発生有無を判定することができ、いずれの場合においても、同一のセンサ信号に基づく判定とすることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムにおいては、当該同一のセンサ信号を遊技進行上必要な入力信号として取り扱い、不正行為防止用のプログラムにおいては、当該同一のセンサ信号を不正行為防止上必要な入力信号として取り扱うことができるため、プログラムソースコード上又はダンプリスト上において、当該同一のセンサ信号の取り扱い方が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、当該同一のセンサ信号の取り扱い方に関する相違点を対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。
【０２０３】
本態様（１１）に係る回胴式遊技機は、
ＲＯＭ（例えば、内蔵ＲＯＭＣ１１０）と、ＣＰＵ（例えば、ＣＰＵＣ１００）とを備えた遊技機であって、
前記ＲＯＭには、アドレスが割り当てられ、前記ＣＰＵに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ＲＯＭ内における前記アドレス値が昇順にて連続しているメモリマップ上（例えば、実施例において＜メモリマップ＞として示した主制御チップＣのメモリマップの一例）において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域（例えば、第１ＲＯＭ領域における第１制御領域）と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域（例えば、第１ＲＯＭ領域における第１データ領域）と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域（例えば、第２ＲＯＭ領域における第２制御領域）と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域（例えば、第２ＲＯＭ領域における第２データ領域）と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、遊技媒体の払出しを指示する制御信号（例えば、ホッパモータ駆動信号）と所定のセンサ部（例えば、第１払出センサＨ１０ｓや第２払出センサＨ２０ｓ）の非検出時間とに基づき、遊技進行に係る異常な事象である第一異常事象（例えば、ステップ１２７９に示される、ホッパ駆動後において遊技メダル１枚の払出動作が行われていない事象）の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記ＣＰＵの処理によって、前記所定のセンサ部の検出時間に基づき、遊技進行に係る異常な事象である第二異常事象（例えば、ステップ１４５０のサブルーチンに示される、払出メダル滞留エラー）の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
【０２０４】
本態様（１１）に係る回胴式遊技機によれば、第一制御領域内に存在しＣＰＵからアクセスされるプログラムと、第二制御領域内に存在しＣＰＵからアクセスされるプログラムとが、メモリマップ上において離隔して（アドレスが連続しない配置で）配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しＣＰＵからアクセスされるプログラムの方が、第二制御領域内に存在しＣＰＵからアクセスされるプログラムよりも若いアドレスに配置されているため、ＣＰＵが最初に実行するプログラムを第一制御領域内に存在しＣＰＵからアクセスされるプログラム（即ち、遊技性仕様を実装するためのプログラム）に限定することが容易となる。
【０２０５】
本態様（１１）に係る回胴式遊技機によれば、更に、第一制御領域内に存在しＣＰＵからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る「軽度となる」異常な事象の発生有無を判定し、第二制御領域内に存在しＣＰＵからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る「重度となる」異常な事象の発生有無を判定することができ、いずれの場合においても、同一のセンサ信号に基づく判定とすることができる。その結果、例えば、第一制御領域内に存在しＣＰＵからアクセスされるプログラム＝遊技性仕様を実装するためのプログラム、第二制御領域内に存在しＣＰＵからアクセスされるプログラム＝不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムにおいては、当該同一のセンサ信号を通常の遊技進行上において発生し得るエラー検出に必要な入力信号として取り扱い、不正行為防止用のプログラムにおいては、当該同一のセンサ信号を不正行為防止上必要な（即ち、通常の遊技進行上においては発生し難いエラー検出に必要な）入力信号として取り扱うことができるため、プログラムソースコード上又はダンプリスト上において、当該同一のセンサ信号の取り扱い方が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、当該同一のセンサ信号の取り扱い方に関する相違点を対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。
【符号の説明】
【０２０６】
Ｐ  回胴式遊技機、ＤＵ  前扉（ドア）
Ｄ  扉基板、Ｄ１０ｓ  投入受付センサ
Ｄ２０ｓ  第１投入センサ、Ｄ３０ｓ  第２投入センサ
Ｄ４０  停止ボタン、Ｄ４１  左停止ボタン
Ｄ４２  中停止ボタン、Ｄ４３  右停止ボタン
Ｄ５０  スタートレバー、Ｄ６０  精算ボタン
Ｄ７０  表示パネル、Ｄ８０  扉スイッチ
Ｄ９０  コインシュータ、Ｄ１００  ブロッカ
Ｄ１３０  上パネル、Ｄ１４０  下パネル
Ｄ１５０  装飾ランプユニット、Ｄ１６０  リール窓
Ｄ１７０  メダル投入口、Ｄ１８０  操作状態表示灯
Ｄ１９０  払出数表示装置、Ｄ２００  クレジット数表示装置
Ｄ２１０  投入数表示灯、Ｄ２２０  ベットボタン
Ｄ２３０  メダル受け皿、Ｄ２４０  放出口
Ｄ２５０  特別遊技状態表示装置、Ｄ２６０  鍵穴
Ｍ  主制御基板、Ｍ１０  設定扉スイッチ
Ｍ２０  設定キースイッチ、Ｍ３０  設定／リセットボタン
Ｃ  主制御チップ、Ｍ５０  リール
Ｍ５１  左リール、Ｍ５２  中リール
Ｍ５３  右リール
Ｓ  副制御基板、Ｓ１０  ＬＥＤランプ
Ｓ２０  スピーカ、Ｓ３０  回胴バックライト
Ｓ４０  演出表示装置、ＳＣ  副制御チップ
Ｅ  電源基板、Ｅ１０  電源スイッチ
Ｈ  メダル払出装置、Ｈ１０ｓ  第１払出センサ
Ｈ２０ｓ  第２払出センサ、Ｈ４０  ホッパ
Ｈ５０  ディスク、Ｈ５０ａ  ディスク回転軸
Ｈ６０  遊技メダル出口、Ｈ７０  放出付勢手段
Ｈ８０  ホッパモータ
Ｋ  回胴基板、Ｋ１０  回胴モータ
Ｋ２０  回胴センサ
ＩＮ  中継基板
【図１】
0006507593.tif 000002
【図２】
0006507593.tif 000003
【図３】
0006507593.tif 000004
【図４】
0006507593.tif 000005
【図５】
0006507593.tif 000006
【図６】
0006507593.tif 000007
【図７】
0006507593.tif 000008
【図８】
0006507593.tif 000009
【図９】
0006507593.tif 000010
【図１０】
0006507593.tif 000011
【図１１】
0006507593.tif 000012
【図１２】
0006507593.tif 000013
【図１３】
0006507593.tif 000014
【図１４】
0006507593.tif 000015
【図１５】
0006507593.tif 000016
【図１６】
0006507593.tif 000017
【図１７】
0006507593.tif 000018
【図１８】
0006507593.tif 000019
【図１９】
0006507593.tif 000020
【図２０】
0006507593.tif 000021
【図２１】
0006507593.tif 000022
【図２２】
0006507593.tif 000023
【図２３】
0006507593.tif 000024
【図２４】
0006507593.tif 000025
【図２５】
0006507593.tif 000026
【図２６】
0006507593.tif 000027
【図２７】
0006507593.tif 000028
【図２８】
0006507593.tif 000029
【図２９】
0006507593.tif 000030
【図３０】
0006507593.tif 000031
【図３１】
0006507593.tif 000032