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