(57)【特許請求の範囲】
【請求項１】
遊技機の動作制御のためのプログラムを、まとまった動作制御機能を実現するためのモジュール毎に分割し、分割された複数種類のモジュールの夫々が主制御手段によって実行されることによって遊技機の動作制御が行なわれるように構成された遊技機であって、
遊技進行に応じて前記主制御手段からの制御信号の送信に基づいて動作制御される複数種類の被制御装置と、
前記主制御手段の内部に設けられ、前記複数種類の被制御装置の動作制御を行なうための複数種類のモジュールを記憶する記憶手段と、を備え、
前記記憶手段に記憶される前記複数種類のモジュールは、前記被制御装置の作動のために要求される作動条件を指示する制御パラメータを送信する遊技制御モジュールと、前記複数種類の被制御装置それぞれに対応して設けられ前記遊技制御モジュールから送信された制御パラメータを受信する複数種類の被制御装置制御モジュールと、を含み、
前記被制御装置制御モジュールは、前記遊技制御モジュールから送信された前記制御パラメータに基づき、前記主制御手段の外部に設けられた前記対応する被制御装置に所望の動作を開始させるとともに、前記遊技制御モジュールに対して前記送信された制御パラメータに対応する前記被制御装置の動作状態を示す動作パラメータを送信して応答することを特徴とする遊技機。
【請求項２】
請求項１に記載の遊技機において、
前記記憶手段に記憶される前記複数種類のモジュールは、１以上のプログラム部が属する階層が多階層ある階層構造になっていて、同一階層に属するプログラム部同士における情報送受信は、より高階層のプログラム部を経由して行なうようになっていることを特徴とする遊技機。
【請求項３】
請求項２に記載の遊技機において、
前記記憶手段は、階層構造になっている前記複数種類のモジュールの内で、被制御装置の動作制御に直接係わるプログラム部を記憶する第１の領域と、これ以外のプログラム部を記憶する第２の領域とを分離して備えることを特徴とする遊技機。
【請求項４】
請求項２に記載の遊技機において、
前記記憶手段が記憶する階層構造になっている前記複数種類のモジュールを構成する或るプログラム部は、モードに応じて実行すべき他のプログラム部を予め記憶する記憶プログラム部と、送信されてきた制御パラメータに基づいてモードを決定し、この記憶プログラム部の記憶内容を参照して前記決定したモードに応じて実行すべき他のプログラムを起動する起動プログラム部とを含むことを特徴とする遊技機。
【請求項５】
請求項１に記載の遊技機において、
前記遊技制御モジュールは、複数の遊技態様の夫々に応じて所要の被制御装置に送信すべき制御パラメータを予め記憶する記憶プログラム部と、この記憶プログラム部の記憶内容を参照して、実現すべき遊技態様に対する制御パラメータを対応する被制御装置側に送信する制御プログラム部とを含むことを特徴とする遊技機。
【請求項６】
請求項１に記載の遊技機において、
前記遊技制御モジュールは、複数のエラー状態の夫々に応じて所要の被制御装置に送信すべきエラー制御パラメータを予め記憶するエラーデータ記憶プログラム部と、このエラーデータ記憶プログラム部の記憶内容を参照して、発生したエラー状態に対する制御パラメータを対応する被制御装置側に送信するエラー処理プログラム部とを含むことを特徴とする遊技機。
【請求項７】
請求項１に記載の遊技機において、
所定のポートに出力データが出力されることによって被制御装置の実際の動作制御が行なわれるように遊技機が構成されていて、
前記記憶手段は、前記複数種類のモジュールの一つとして、被制御装置側から送信される動作パラメータとしてのフラグに対して予め定められた出力データを記憶する出力データ記憶部と、この出力データ記憶部の記憶内容を参照して、受信したフラグに対する出力データを前記所定のポートに出力する出力制御部とを含む出力制御モジュールを記憶することを特徴とする遊技機。
【請求項８】
請求項７に記載の遊技機において、
前記出力制御モジュールの出力制御部は、複数種類の被制御装置に対する出力ポートに同一アドレスに割り当てられている場合、受信したフラグに対するデジタル出力データを被制御装置毎に獲得してこれらに論理和演算を行なった論理和演算結果を、前記同一アドレスが割り当てられた出力ポートに出力する出力制御部であることを特徴とする遊技機。
【請求項９】
請求項１に記載の遊技機において、
前記複数種類のモジュールの少なくとも一つには、アドレスを指定するアドレスデータと加算限界値を示す加算限界値データとを少なくとも組にした加算サブルーチンが含まれ、
前記主制御手段は、この加算サブルーチンを実行することによって、
前記アドレスデータで指定されるアドレスの内容を、所定の初期値から前記加算限界値データで示される数値となるまでインクリメントする処理を循環的に行うことを特徴とする遊技機。
【請求項１０】
請求項１に記載の遊技機において、
前記複数種類のモジュールの少なくとも一つには、アドレスを指定するアドレスデータと減算限界値を示す減算限界値データとを少なくとも組にした減算サブルーチンが含まれ、
前記主制御手段は、この減算サブルーチンを実行することによって、
前記アドレスデータで指定されるアドレスの内容を、所定の初期値から前記減算限界値データで示される数値となるまでデクリメントする処理を循環的に行うことを特徴とする遊技機。
【請求項１１】
請求項１に記載の遊技機において、
前記被制御装置は、自装置の動作試験を行なうための複数種類のテストプログラムを記憶したテストプログラム記憶手段と、このテストプログラム記憶手段に記憶されたテストプログラムを実行して動作試験を行なう副制御手段と、を含むことを特徴とする遊技機。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のモジュールの夫々が実行されることによって遊技機の動作制御が行なわれるようにした遊技機の改良に関する。
【０００２】
【従来の技術】
近年では、パチンコ遊技機の制御動作が複雑になり、これを制御するための制御プログラムも大容量化しており、開発工数が増加の一途をたどっているのが実情である。この様な実情に鑑みて、例えば特開平８−２８０８８１号公報記載の技術によれば、簡明で変更が容易な制御システムを実現するために、機能単位にブロック化された基本入出力処理手段を備えた構成の遊技機が提案されている。
【０００３】
しかし、この遊技機によれば、基本入出力処理手段をモジュール化したのみであるので、制御プログラムの開発工数を低減することや不正なプログラム改ざん発見の容易化等の点においては満足の行くものではなかった。そこで、本出願人は先に特許出願を行ない（出願時未公開）、主制御部が、ＲＯＭに記憶されている動作制御のための複数のモジュールの夫々を実行すると遊技機の制御動作全体が行なわれるようにして、全制御プログラムをモジュール化したものを提案した。
【０００４】
図２は、この遊技機においてＲＯＭ２０に記憶される全モジュールを示したものであり、図示しない主制御部が各モジュールを実行していくことによって図３のジェネラルフローチャートで示される処理が実行される。すなわち、まず、電源スイッチによって電源回路(図示せず)を起動状態とすると主制御部が起動状態となるが、この電源投入が行われてから初めての処理が実行されたか否かを判定する（ステップＳ１１０）。電源投入後、初めての処理の場合には（Ｙｅｓ）ステップＳ２００に移行する一方、これ以外の場合には（Ｎｏ）ステップＳ１２０に移行する。
【０００５】
次に、主制御部がＲＡＭクリアモジュール２７を実行することによって、ＲＡＭ（図示せず）の初期化処理として記憶エリアのクリア処理が実行され（ステップＳ２００）、次いで、主制御部が初期データセット処理モジュール２８を実行することによって、初期制御処理を行うためのデータがＲＡＭの所定の領域にセットされる。一方、主制御部は各種乱数更新モジュール２１を実行することによって、ＲＡＭ内に形成される図示しない、大当り判定用、小当り判定用、モード選択等の各種の乱数生成用ループカウンタのカウント値がインクリメントされる。
【０００６】
次に、主制御部が入力ポート処理モジュール２２を実行することによって、特別図柄始動スイッチ、普通図柄作動スイッチ、大入賞口スイッチ（いずれも図示せず）が出力した検出信号を入力ポート（図示せず）を介して自身内のレジスタ（図示せず）に読み込み格納する入力ポート処理が実行され（ステップＳ１４０）、次いで、主制御部がスイッチチェック処理モジュール２３を実行することによって、ポート入力処理で読み込み格納したデータを把握するためのスイッチチェック処理が実行される（ステップＳ１５０）。
【０００７】
次に、主制御部が異常検出処理モジュール２４を実行することによって、各スイッチの断線や短絡の有無のチェックが行なわれ、これらの障害が発生している場合には（Ｙｅｓ）ステップＳ２２０に移行する一方、これ以外の場合には（Ｎｏ）ステップＳ１８０に移行する（ステップＳ１６０、Ｓ１７０）。そして、主制御部が図柄制御処理モジュール２５を実行することによって、普通図柄表示装置（図示せず）の表示制御に必要なデータがＲＡＭの所定領域に格納されると共に、特別図柄表示装置（図示せず）の表示制御に必要なコマンドがＲＡＭの所定領域に格納される（ステップＳ１８０）。
【０００８】
次に、主制御部が入賞装置制御処理モジュール２６を実行することによって、大入賞口と特別図柄始動口の開閉部材（共に図示せず）とを所定パターンで開閉制御するために、普通電動役物作動ソレノイドと大入賞口作動ソレノイドと（共に図示せず）を駆動制御し（ステップＳ１９５）、次いで、主制御部が賞球セット処理モジュール２９を実行することによって、賞球払出装置（図示せず）に払出し動作を行わせるための制御情報を出力するための賞球セット処理を実行させ（ステップＳ２２０）、さらに、主制御部が外部情報処理モジュール３０を実行することによって、遊技機管理装置（図示せず）に各種の遊技データを出力する外部情報処理（ステップＳ２３０）を実行させ、主制御部が表示灯制御処理モジュール３１を実行することによって、ランプ表示装置（図示せず）を遊技状態に対応させて点灯制御するためのコマンドをＲＡＭの所定エリアに格納する表示灯制御処理を実行させ（ステップＳ２４０）、制御部が効果音処理モジュール３２を実行することによって、効果音発生装置（図示せず）を遊技状態に対応させて効果音発生制御するためのコマンドをＲＡＭの所定エリアに格納する効果音処理を実行させる（ステップＳ２５０）。
【０００９】
次に、主制御部がポート出力処理モジュール３３を実行することによって、各処理でＲＡＭに格納したデータを出力ポート（図示せず）を介して対応する装置に出力させ（ポート出力処理）（ステップＳ２６０）、これを受け取った装置側はこれに基づいた制御動作を行う。そして、主制御部が図柄、制御乱数更新処理モジュール３４を実行することによって、リセット回路（図示せず）からリセット信号が入力されるまでリセット待機処理を実行させると共に、リセット信号が入力された場合にはステップＳ１１０に移行して遊技機制御を継続する（ステップＳ２７０）。このように従来の遊技機にあっては、主制御部が各モジュールを直接実行して行くことによって遊技機動作が行なわれるようになっていた。
【発明が解決しようとする課題】
ところで、このような従来の遊技機にあっては、特別図柄表示装置、普通図柄表示装置、普通電動役物作動ソレノイド、大入賞口作動ソレノイド、ランプ表示装置、効果音発生装置、等の主制御部によって制御される被制御装置に仕様変更がある場合、特に、他の機種のパチンコ機の被制御装置を新たに制御対象とする場合等には、被制御装置の制御のためのモジュール、例えば、図柄制御処理モジュール２５、入賞装置制御処理モジュール２６、表示灯制御モジュール３１、効果音処理モジュール３２等を大幅に修正する必要がありその修正箇所も局所的ではないため、修正工数は極めて大きなものであった。
【００１０】
また、修正作業が大変なことに比例してデバッグ作業も困難になり、機種変更に対して汎用性の高い制御プログラムとなっていなかったという問題があった。
【００１１】
本発明は、かかる従来の課題を解決するためになされたもので、採用する被制御装置の変更等があってもそれに対してのプログラムの修正やデバッグが容易な遊技機を提供することを目的とする。また、本発明の他の目的は、被制御装置の試験を自動で行なうことも可能とした遊技機を提供することにある。
【課題を解決するための手段】
上記目的を達成するために、請求項１に係る発明は、遊技機の動作制御のためのプログラムを、まとまった動作制御機能を実現するためのモジュール毎に分割し、分割された複数種類のモジュールの夫々が主制御手段によって実行されることによって遊技機の動作制御が行なわれるように構成された遊技機であって、
遊技進行に応じて前記主制御手段からの制御信号の送信に基づいて動作制御される複数種類の被制御装置と、
前記主制御手段の内部に設けられ、前記複数種類の被制御装置の動作制御を行なうための複数種類のモジュールを記憶する記憶手段と、を備え、
前記記憶手段に記憶される前記複数種類のモジュールは、前記被制御装置の作動のために要求される作動条件を指示する制御パラメータを送信する遊技制御モジュールと、前記複数種類の被制御装置それぞれに対応して設けられ前記遊技制御モジュールから送信された制御パラメータを受信する複数種類の被制御装置制御モジュールと、を含み、
前記被制御装置制御モジュールは、前記遊技制御モジュールから送信された前記制御パラメータに基づき、前記主制御手段の外部に設けられた前記対応する被制御装置に所望の動作を開始させるとともに、前記遊技制御モジュールに対して前記送信された制御パラメータに対応する前記被制御装置の動作状態を示す動作パラメータを送信して応答することを特徴とする遊技機である。
【００１２】
この発明によれば、主制御手段がこの遊技制御モジュールを実行すると、或る被制御装置を制御するための制御パラメータを当該被制御装置側に送信する動作が行なわれると共に、当該被制御装置側からその装置の動作状態を示す動作パラメータを受信する動作が行なわれる。したがって、パラメータの送受信のみで被制御装置の動作制御が行なえるので、遊技機の機種が変更して被制御装置の種類が変更となっても、遊技制御モジュール中のパラメータを変更すれば新たな遊技機に対応でき、プログラム修正作業やデバッグ作業が容易になる。
【００１４】
また、この発明によれば、主制御手段がこの遊技制御モジュールを実行すると、或る被制御装置を制御するための制御パラメータを、当該被制御装置に対して予め定められているプログラムインターフェイスを介して、当該被制御装置側に送信する動作が行なわれると共に、当該被制御装置側からプログラムインターフェイスを介してその装置の動作状態を示す動作パラメータを受信する動作が行なわれる。
【００１５】
したがって、プログラムインターフェイスを介したパラメータの送受信で被制御装置の動作制御が行なえるので、プログラムインターフェイスに所定の機能を持たせることによって、遊技制御モジュールのプログラム修正作業やデバッグ作業が一層容易になる。
【００１６】
また、請求項２に係る発明は、請求項１に記載の遊技機において、前記記憶手段に記憶される前記複数種類のモジュールは、１以上のプログラム部が属する階層が多階層ある階層構造になっていて、同一階層に属するプログラム部同士における情報送受信は、より高階層のプログラム部を経由して行なうようになっていることを特徴とする。
【００１７】
この発明によれば、たとえ同一階層に属するプログラム部同士において情報を送受信する場合であっても、直接、情報の送受信を行なわないようにしたので、プログラムの階層化が一層明確にされて、プログラム修正作業やデバッグ作業が一層容易になる。
【００１８】
また、請求項３に係る発明は、請求項２に記載の遊技機において、前記記憶手段は、階層構造になっている前記複数種類のモジュールの内で、被制御装置の動作制御に直接係わるプログラム部を記憶する第１の領域と、これ以外のプログラム部を記憶する第２の領域とを分離して備えることを特徴とする。
【００１９】
この発明によれば、プログラムインターフェイスの内で、被制御装置の動作制御に直接係わるプログラム部と、これ以外のプログラム部とが分離した状態でメモリマッピングされているので、これによってもプログラム修正作業やデバッグ作業が一層容易になる。
【００２０】
また、請求項４に係る発明は、請求項２に記載の遊技機において、前記記憶手段が記憶する階層構造になっている前記複数種類のモジュールを構成する或るプログラム部は、モードに応じて実行すべき他のプログラム部を予め記憶する記憶プログラム部と、送信されてきた制御パラメータに基づいてモードを決定し、この記憶プログラム部の記憶内容を参照して前記決定したモードに応じて実行すべき他のプログラムを起動する起動プログラム部とを含むことを特徴とする。
【００２１】
この発明によれば、起動プログラム部は、記憶プログラム部の記憶内容を参照して決定したモードに応じて実行すべき他のプログラムを起動するようにするので、起動させるべきプログラムを変更する際には、この記憶プログラム部の記憶内容を変更すれば良いだけであるので、起動させるべきプログラム変更等によるプログラム修正が容易になる。
【００２２】
また、請求項５に係る発明は、請求項１に記載の遊技機において、前記遊技制御モジュールは、複数の遊技態様の夫々に応じて所要の被制御装置に送信すべき制御パラメータを予め記憶する記憶プログラム部と、この記憶プログラム部の記憶内容を参照して、実現すべき遊技態様に対する制御パラメータを対応する被制御装置側に送信する制御プログラム部とを含むことを特徴とする。
【００２３】
この発明によれば、制御プログラム部は、記憶プログラム部の記憶内容を参照して、実現すべき遊技態様に対する制御パラメータを対応する被制御装置側に送信して被制御装置の動作制御が行なわれる。したがって、遊技態様の変更等に伴って被制御装置の動作制御態様を変更する際には、記憶プログラム部の記憶内容を修正すれば良いだけであるので、遊技態様変更等による被制御装置の制御態様変更のためのプログラム修正が容易になる。
【００２４】
また、請求項６に係る発明は、請求項１に記載の遊技機において、前記遊技制御モジュールは、複数のエラー状態の夫々に応じて所要の被制御装置に送信すべきエラー制御パラメータを予め記憶するエラーデータ記憶プログラム部と、このエラーデータ記憶プログラム部の記憶内容を参照して、発生したエラー状態に対する制御パラメータを対応する被制御装置側に送信するエラー処理プログラム部とを含むことを特徴とする。
【００２５】
この発明によれば、エラー処理プログラム部は、エラーデータ記憶プログラム部の記憶内容を参照して、発生したエラー状態に対する制御パラメータを対応する被制御装置側に送信してエラー内容に応じた被制御装置の動作制御が行なわれる。したがって、エラー時の被制御装置の動作制御内容の変更等を行なう際には、エラーデータ記憶プログラム部の記憶内容を修正すれば良いだけであるので、エラー処理の内容変更のためのプログラム修正が容易になる。
【００２６】
また、請求項７に係る発明は、請求項１に記載の遊技機において、所定のポートに出力データが出力されることによって被制御装置の実際の動作制御が行なわれるように遊技機が構成されていて、
前記記憶手段は、前記複数種類のモジュールの一つとして、被制御装置側から送信される動作パラメータとしてのフラグに対して予め定められた出力データを記憶する出力データ記憶部と、この出力データ記憶部の記憶内容を参照して、受信したフラグに対する出力データを前記所定のポートに出力する出力制御部とを含む出力制御モジュールを記憶することを特徴とする。
【００２７】
この発明によれば、主制御手段によって出力制御モジュールが実行されることによって、出力制御部は、出力データ記憶部の記憶内容を参照して、受信したフラグに対する出力データを所定のポートに出力するので、このポートに対する被制御装置の実際の動作制御が行なわれる。したがって、動作制御内容の変更が生じても、出力データ記憶部の記憶内容を変更すれば良いだけなので、プログラム修正が容易である。
【００２８】
また、請求項８に係る発明は、請求項７に記載の遊技機において、前記出力制御モジュールの出力制御部は、複数種類の被制御装置に対する出力ポートに同一アドレスに割り当てられている場合、受信したフラグに対するデジタル出力データを被制御装置毎に獲得してこれらに論理和演算を行なった論理和演算結果を、前記同一アドレスが割り当てられた出力ポートに出力する出力制御部であることを特徴とする。
【００２９】
この発明によれば、出力制御部は、複数種類の被制御装置に対する出力ポートに同一アドレスに割り当てられている場合、受信したフラグに対する出力データを被制御装置毎に獲得してこれらに論理和演算を行なった論理和演算結果を、同一アドレスが割り当てられた出力ポートに出力するので、同一のポートに対して複数の被制御装置を割り付けてもこれらを動作制御することが可能となり、もってプログラム修正が容易となる。
【００３０】
また、請求項９に係る発明は、請求項１に記載の遊技機において、前記複数種類のモジュールの少なくとも一つには、アドレスを指定するアドレスデータと加算限界値を示す加算限界値データとを少なくとも組にした加算サブルーチンが含まれ、
前記主制御手段は、この加算サブルーチンを実行することによって、
前記アドレスデータで指定されるアドレスの内容を、所定の初期値から前記加算限界値データで示される数値となるまでインクリメントする処理を循環的に行うことを特徴とする。
【００３１】
この発明によれば、主制御手段が加算ルーチンを実行することによって、アドレスデータで指定されるアドレスの内容を、所定の初期値から加限界値データで示される数値となるまでインクリメント（例えば１だけの加算）する処理を循環的に行うので、簡単なデータ構造をモジュールに備えることによって加算処理を実行させることができる。
【００３２】
また、請求項１０に係る発明は、請求項１に記載の遊技機において、前記複数種類のモジュールの少なくとも一つには、アドレスを指定するアドレスデータと減算限界値を示す減算限界値データとを少なくとも組にした減算サブルーチンが含まれ、
前記主制御手段は、この減算サブルーチンを実行することによって、
前記アドレスデータで指定されるアドレスの内容を、所定の初期値から前記減算限界値データで示される数値となるまでデクリメントする処理を循環的に行うことを特徴とする。
【００３３】
この発明によれば、主制御手段が減算ルーチンを実行することによって、アドレスデータで指定されるアドレスの内容を、所定の初期値から減算限界値データで示される数値となるまでデクリメント（例えば１だけの減算）する処理を循環的に行うので、簡単なデータ構造体をモジュールに備えることによって減算処理を実行させることができる。
【００３４】
そして、請求項１１に係る発明は、請求項１に記載の遊技機において、前記被制御装置は、自装置の動作試験を行なうための複数種類のテストプログラムを記憶したテストプログラム記憶手段と、このテストプログラム記憶手段に記憶されたテストプログラムを実行して動作試験を行なう副制御手段と、を含むことを特徴とする。
【００３５】
この発明によれば、被制御装置の副制御手段が、テストプログラム記憶手段に記憶されたテストプログラムを実行して動作試験を行なうので動作試験が容易に行なえ、また、複数種類のテストプログラムを実行できるので、例えば複数種類の機種に対する試験が容易に行なえる。
【００３８】
特別図柄表示装置１００の真下には特別図柄始動口１０４が配設されていて、この特別図柄始動口１０４の両側には普通図柄作動ゲート１０２、１０２が配設されている。また、一対の開閉部材１２０、１２０が特別図柄始動口１０４を形成するように離間して開閉可能に設けられている。
【００３９】
さらに、特別図柄始動口１０４の下方には、大入賞口１０６、普通図柄表示装置１０８、アウト口１１４がこの順で配設されており、さらに、特別図柄始動口１０４の両斜め上方にはランプ表示装置１１０、１１０が配設されていると共に、遊技盤１０の両側端部近傍にもランプ表示装置（より具体的にはＬＥＤ装置）１１２、１１２が配設されている。
【００４０】
そして、特別図柄始動口１０４に遊技玉が入賞されて乱数抽選が行われ、この抽選された乱数が大当り値である時には、表示エリアにおいて図柄変動表示が開始された後所定パターン（例えば「７、７、７」）の表示が特別図柄表示装置１００によって行われ、大入賞口１０６が所定パターンで開閉制御されて遊技者にとって有利な大当り遊技状態となる。さらに、大当たり出目のうちでも特定の出目になると、大当たり確率が小から大となる確率変動機能を有すると共に、変動表示回数が所定数回、例えば５０回の間は図柄変動時間が短縮されて遊技者にとって有利となる時間短縮機能を有している。
【００４１】
また、普通図柄作動ゲート１０２が遊技玉の通過を検出すると、乱数抽選が行われこの抽選された乱数が小当り値である時には、普通図柄表示装置１０８の表示部を所定パターン（例えば「７」や「３」）に表示させ、その後に、開閉部材１２０が開状態となって遊技玉が特別図柄始動口１０４に入賞した場合にも、同様に乱数抽選が行われこの抽選された乱数が大当り値である時には、表示エリアにおける図柄変動表示が開始されその後、所定表示パターン（例えば「７、７、７」）の表示が特別図柄表示装置１００によって行われ、大入賞口１０６が所定パターンで開閉制御されて遊技者にとって有利な大当り状態となる。一方、入賞されない打玉はアウト口１１４を介して排出される。
【００４２】
図４は、このような遊技の進行状況に応じた遊技機制御が行われる遊技機の主要部のみを示した制御ブロック図である。主制御部２００は、ＣＰＵを内蔵したマイクロプロセッサを搭載していて、遊技機の動作制御プログラムをまとまった動作制御機能を実現するためのモジュール毎に分割して得られた複数のモジュールが格納されるモジュール格納領域２０２が形成されたＲＯＭ２０１とワークエリアが形成されるＲＡＭ２０３とが設けられていて、一体型のワンチップマイコンとなっている。そして、マイクロコンピュータが実行可能に各モジュールがモジュール格納領域２０２に格納されている。
【００４３】
主制御部２００には、入力ポート２１０を介して、特別図柄始動口１０４内部に設けられ遊技玉の特別図柄始動口１０４への入賞を検出する特別図柄始動スイッチ３０４、普通図柄作動ゲート１０２の内部に設けられ遊技玉のゲート通過を検出する普通図柄作動スイッチ３０６、および、大入賞口１０６の内部に設けられ遊技玉の大入賞口１０６への入賞を検出する大入賞口スイッチ３０８が接続さされ、主制御部２００は各検出信号を受信可能となっている。
【００４４】
また、主制御部２００には、出力ポート２１５を介して、特別図柄やキャラクタを表示する表示エリアを有して左、中、右の夫々の図柄を独立して可変表示可能でＬＣＤ等で実現される特別図柄表示装置１００、ランプを点灯制御するランプ表示装置１１０、１１２、効果音を発生する効果音発生装置１１６、賞球払出し動作を行なう賞球払出装置１１７、例えば７セグメント表示デバイスで実現される普通図柄表示装置１０８、始動口の開閉部材１２０を開閉制御するための普通電動役物作動ソレノイド３００、および、大入賞口１０６の幅広な開閉部材を開閉制御するための大入賞口作動ソレノイド３０２が接続され、主制御部２００は各装置を制御するための制御信号を送信可能となっている。
【００４５】
そして、主制御部２００には、電源供給を行うための電源回路２１２と所定時間毎にリセット信号を出力するリセット回路２１３とが接続されていて、さらに、リセット回路２１３には、主制御部２００から周期的タイマカウンタによって生成されたパルス信号が入力されると共に、電源回路２１２からの電流供給状況を監視するためのモニタ信号が入力される。
【００４６】
さらに、図５に示すように、特別図柄表示装置１００は、図柄を表示する表示器５０５とこれに表示を行なわせるための特別図柄制御部５００とを有し、さらに、特別図柄制御部５００は、ＣＰＵ５０２、ＲＯＭ５０３、ＲＡＭ５０４を備えている。そして、ＣＰＵ５０２は、ＲＯＭ５０３に格納された表示制御プログラムを実行することによって特別図柄表示装置の動作制御を行なう。同様に、ランプ表示装置１１０（１１２）は、点灯消滅動作を行なうランプ５１５とこれに点灯消灯を行なわせるためのランプ制御部５１０とを有し、さらに、ランプ制御部５１０は、ＣＰＵ５１２、ＲＯＭ５１３、ＲＡＭ５１４を備えている。そして、ＣＰＵ５１２は、ＲＯＭ５０３に格納された点灯消灯制御プログラムを実行することによってランプ表示装置１１０（１１２）の動作制御を行なう。
【００４７】
また、効果音発生装置１１６は、効果音を出力するスピーカー５２５とこれに効果音出力を行なわせるための効果音制御部５２０とを有し、さらに、効果音制御部５２０は、ＣＰＵ５２２、ＲＯＭ５２３、ＲＡＭ５２４を備えている。そして、ＣＰＵ５２２は、ＲＯＭ５２３に格納された効果音出力制御プログラムを実行することによって効果音発生装置１１６の動作制御を行なう。同様に、賞球払出装置１１７は、賞球の払出し動作を行なう賞球払出機構５３５とこれに払出しを行なわせるための賞球払出制御部５３０とを有し、さらに、賞球払出制御部５３０は、ＣＰＵ５３２、ＲＯＭ５３３、ＲＡＭ５３４を備えている。そして、ＣＰＵ５３２は、ＲＯＭ５３３に格納された払出し制御プログラムを実行することによって賞球払出装置１１７の動作制御を行なう。このように、図５に示す各装置は独自のプロセッサを備えて複雑な動作制御を行なうことが可能となっていて、出力ポート２１５の所定のポートに出力データが出力されることによって被制御装置の実際の動作制御が行なわれるように遊技機が構成されている。
【００４８】
さて、図６はＲＯＭ２０１に形成されたモジュール格納領域２０２に格納されたモジュールを示した模式的構成図である。遊技機の動作制御プログラムが、まとまった機能を実現するためのモジュールに分割され、分割された複数のモジュールが格納されている。なお、１つのモジュールは、例えば複数のサブルーチンやデータテーブル等からなっている。
【００４９】
プログラム管理モジュール６０１は、これが主制御部２００によって実行されることによって、電源回路２１２の電源投入が始めて行なわれたものか否かを判定する初期準備を行い、予め定めた順番で各モジュールを起動させるように働く。初期制御モジュール６０２、乱数制御モジュール６０３、入力制御モジュール６０４、エラー制御モジュール６０５が主制御部２００によって実行されると、夫々、「ＲＡＭ２０３の初期化処理として記憶エリアのクリアを行なうＲＡＭクリア、および、初期制御処理を行なわせるためのデータをＲＡＭ２０３の所定の領域にセットする初期データセット処理（初期制御モジュール６０２）」、「ＲＡＭ２０３内に形成される図示しない、大当り判定用、小当り判定用等の各種の乱数生成用ループカウンタのカウンタ値をインクリメントする各種乱数更新処理（乱数制御モジュール６０３）」、「特別図柄始動スイッチ３０４、普通図柄作動スイッチ３０６、大入賞口スイッチ３０８が出力した検出信号を入力ポート２１０を介して自身内のレジスタ（図示せず）に読み込み格納する入力ポート処理、および、ポート入力処理で読み込み格納したデータを把握するためのスイッチチェック処理（入力制御モジュール６０４）」、「各スイッチ３０４、３０６、３０８等の断線や短絡の有無のチェックを行なう異常検出処理（エラー制御モジュール６０５）」の各処理が実行されることになる。
【００５０】
また、賞球制御モジュール６０６、外部情報制御モジュール６０７、出力制御モジュール６０８が主制御部２００によって実行されると、夫々、「賞球払出装置１１７に払出し動作を行なわせるための制御情報を出力するための賞球セット処理（賞球制御モジュール６０６）」、「図示しない遊技機管理装置に各種の遊技データを出力する外部情報処理（外部情報制御モジュール６０７）」、「ＲＡＭ２０３に格納したデータを出力ポート２１５を介して対応する装置に出力するポート出力処理（出力制御モジュール６０８）」の各処理が実行されることになる。
【００５１】
そして、遊技制御モジュール６１０が主制御部２００によって実行されると、「普通図柄表示装置１０８の表示制御に必要なデータをＲＡＭ２０３の所定領域に格納すると共に、特別図柄表示装置１００の表示制御に必要なコマンドをＲＡＭ２０３の所定領域に格納する図柄制御処理」、「大入賞口１０６と特別図柄始動口１０４の開閉部材１２０とを所定パターンで開閉制御するために、普通電動役物ノレノイド３００と大入賞口作動ソレノイド３０２とを駆動制御する入賞装置制御処理」、「ランプ装置１１０、１１２を遊技状態に対応させて点灯制御するためのコマンドをＲＡＭ２０３の所定エリアに格納する表示灯制御処理」、「効果音発生装置１１６を遊技状態に対応させて効果音発生制御を行なうための効果音処理」等の処理を実行させる。
【００５２】
したがって、図１３に示すように、主制御部２００はステップＳ１３００においてプログラム管理モジュール６０１を実行することによって、図３におけるステップＳ１２０の処理が実行され、ステップＳ１３１０において初期化制御モジュール６０２を実行することによって、図３におけるステップＳ２００、２１０の処理が実行され、ステップＳ１３１５において乱数制御モジュール６０３を実行することによって、図３のステップＳ１２０の処理が実行され、ステップＳ１３２０において入力制御モジュール６０４を実行することによって、図３のステップＳ１４０、１５０の処理が実行され、ステップＳ１３２５においてエラー制御モジュール６０５を実行することによって図３のステップＳ１６０、１７０の処理が実行される。
【００５３】
さらに、ステップＳ１３３０において遊技制御モジュール６１０を実行することによって、図３のステップＳ１８０、１９５、２４０、２５０の処理が実行され、ステップＳ１３３５において、賞球制御モジュール６０６を実行することによって、図３のステップＳ２２０の処理が実行され、ステップＳ１３４０において外部情報制御モジュール６０７を実行することによって、図３のステップＳ２３０の処理が実行され、ステップＳ１３４５において出力制御モジュール６０８を実行することによって、図３のステップＳ２６０の処理が実行され、ステップＳ１３５０において再度、乱数制御モジュール６０３を実行することによって、図３のステップＳ２７０の処理が実行される。したがって、主制御部２００がモジュール格納領域２０２に格納されたモジュールを実行して行くことによって、図３に示す処理が行なわれて遊技機の制御動作が行なわれることになる。
【００５４】
（第１の実施形態）
さて、この発明の第１の特徴は、主制御部２００による遊技制御モジュール６１０の実行時にモジュール間でパラメータを送受信しながら、被制御装置単位の制御機能を実現していくことにある。図７乃至図１０は、遊技制御モジュール６１０が被制御装置の動作制御を行なうと共にその動作状況を把握するために、被制御装置との間に設けられたプログラムインタフェイスを介してパラメータを送受信することを説明するための図面である。図７（ａ）には、普通図柄表示装置１０８との間に設けられたプログラムインターフェイスである普通図柄表示装置制御モジュール６２１と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されている。例えば、普通図柄表示装置１０８に「３秒間（作動時間）動作したら、図柄７（停止図柄番号）で停止させる」動作を開始させる場合、遊技制御モジュール６１０は、この「３秒間、図柄７（要求名：普通図柄作動開始要求）」を制御パラメータとして普通図柄表示装置制御モジュール６２１に送信する。これによって普通図柄表示装置１０８に所望の動作を開始させる（要求）。一方、普通図柄表示装置制御モジュール６２１は、この動作が開始された場合には作動状態が「作動中（作動状態）」であることを示す動作パラータを遊技制御モジュール６１０に送信する（返答）。また、遊技制御モジュール６１０は、普通図柄表示装置１０８の動作を継続させたい場合には普通図柄作動継続要求（要求名）のみを送信し、作動中か作動停止したかの情報を動作パラメータとして受信する。
【００５５】
また、図８には、普通電動役物作動ソレノイド３００との間に設けられたプログラムインターフェイスである普通電動役物制御モジュール６２２と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されている。例えば、普通電動役物作動ソレノイド３００を「３秒間開放し（開放時間）、３秒間閉止し（閉止時間）、２個入賞したら閉止させ（開放時閉止個数）、最大１０回開放させる（最大開放回数）」動作を開始させる場合、遊技制御モジュール６１０は、これらを制御パラメータとして（要求名：普通電動役物作動開始要求）送信する。これによって、普通電動役物作動ソレノイド３００に所要の動作を開始させる（要求）。一方、普通電動役物制御モジュール６２２は、この動作が開始された場合には作動状態が「作動中（作動状態）」であることを示す動作パラータを遊技制御モジュール６１０に送信する（返答）。また、遊技制御モジュール６１０は、普通電動役物作動ソレノイド３００の開閉動作を継続させたい場合には「普通電動役物作動ソレノイドの開状態または閉状態とする（要求名：普通図柄作動継続要求）」パラメータを送信し、作動中か作動停止したかの情報を動作パラメータとして受信する。
【００５６】
また、図９には、特別図柄表示装置１００との間に設けられたプログラムインターフェイスである特別図柄表示装置制御モジュール６２３と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されている。例えば、特別図柄表示装置１００を「変動パターン１で変動させて（変動パターン）、７７７なる出目で停止させる（停止図柄）」動作を開始させる場合、遊技制御モジュール６１０はこれらを制御パラメータとして（要求名：特別図柄変動開始要求）特別図柄表示装置制御モジュール６２３に送信する。これによって、特別図柄表示装置１００に所要の動作を開始させる（要求）。一方、特別図柄表示装置制御モジュール６２３は、この動作が開始された場合には作動状態が「変動中（変動状態）」であることを示す動作パラータを遊技制御モジュール６１０に送信する（返答）。また、遊技制御モジュール６１０は、特別図柄表示装置１００の変動動作を継続させたい場合には特別図柄変動継続要求（要求名）を送信し、変動中か変動停止したかの情報を動作パラメータとして受信する。さらに、特別図柄表示装置１００に「1番の装飾画像を表示させる（装飾画像番号）」場合には、遊技制御モジュール６１０はこの装飾画像番号を制御パラメータとして送信し、動作パラメータの受信は行なわない。
【００５７】
同様に、図１０には、大入賞口作動ソレノイド３０２との間に設けられたプログラムインターフェイスである大入賞口制御モジュール６２４と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されている。例えば、大入賞口作動ソレノイド３０２を「３秒間開放し（開放時間）、３秒間閉止し（閉止時間）、１６回を最大開閉回数とし（最大開閉回数）、１０個入賞したら閉止させる（閉止個数）」動作を開始させる場合、遊技制御モジュール６１０は、これらを制御パラメータとして（要求名：大入賞口作動ソレノイド作動開始要求）送信する。これによって、大入賞口作動ソレノイド３０２に所要の動作を開始させる（要求）。一方、大入賞口制御モジュール６２４は、この動作が開始された場合には作動状態が「作動中（作動状態）」であることを示す動作パラータを遊技制御モジュール６１０に送信する（返答）。また、大入口作動ソレノイド作動継続要求の場合には、遊技制御モジュール６１０は「作動中であるか作動停止であるか（作動状態）、開状態か閉状態であるか（開閉状態）、何回目の開閉動作か（開閉回数）」等の動作パラメータを受信する。
【００５８】
さらに、図１１には、ランプ表示装置１１０（１１２）との間に設けられたプログラムインターフェイスであるランプ制御モジュール６２５と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されており、また、図１２には、効果音発生装置１１６との間に設けられたプログラムインターフェイスである効果音制御モジュール６２６と、遊技制御モジュール６１０との間のパラメータの送受信の様子を示しており、同図（ｂ）には実際に送受信されるパラメータが示されている。遊技制御モジュール６１０は、ランプ制御モジュール６２５や効果音制御モジュール６２６に対しては、どの制御パターンで制御させるかを指示する制御パラメータ（ランプ管理番号、効果音管理番号）を送信して被制御装置の動作制御を行なって、それら被制御装置の動作パラメータは受信しない。なお、以上説明してきた第１の実施形態ではプログラムインターフェイスを介在させるようにしたが、遊技制御モジュール６１０と被制御装置とが直接パラメータの送受信を行なうようにしても良い。
【００５９】
この実施の形態によれば、第１に、主制御部２００が遊技制御モジュール６１０を実行すると、或る被制御装置を制御するための制御パラメータを当該被制御装置側に送信する動作が行なわれると共に、当該被制御装置側からその装置の動作状態を示す動作パラメータを受信する動作が行なわれる。したがって、パラメータの送受信のみで被制御装置の動作制御が行なえるので、遊技機の機種が変更して被制御装置の種類が変更となっても、遊技制御モジュール中のパラメータを変更すれば新たな遊技機に対応でき、プログラム修正作業やデバッグ作業が容易になる。また、プログラムインターフェイスを介したパラメータの送受信で被制御装置の動作制御が行なえるので、プログラムインターフェイスに所望の機能を担わせることによって、遊技制御モジュール６１０のプログラム修正作業やデバッグ作業が一層容易になる。
【００６０】
また、第２に、或る被制御装置を制御するための制御パラメータをこの或る被制御装置側に送信するか、または、この或る被制御装置側からその装置の動作状態を示す動作パラメータを受信するようにすれば、被制御装置に制御パラメータを与えて所望の制御動作を行なえるか、または、被制御装置の動作パラメータを得て動作管理を行なえる。このようにしても、遊技機の機種変更によるプログラム修正はパラメータを変更すればよいのでプログラム修正やデバッグ作業が容易になる。
【００６１】
（第２の実施形態）
この実施の形態は、モジュールやプログラムインターフェイスをサブルーチンの階層構造として構成したものにおける動作に特徴がある。図６にて示した各モジュールや各プログラムインターフェイスは階層構造となっている。図１４は、一例として普通図柄表示制御モジュール６２１の階層構造を示していて、最上位階層はサブルーチン１４００でなり、最下位階層はサブルーチン１４０３〜１４０７でなり、その中間階層がサブルーチン１４０１、１４０２でなっている３階層の階層構造で構成されている。そして、図１５の概念的説明図に示すように、たとえ、同一階層に属するサブルーチン１５０１、１５０２同士間でパラメータの送受信を行なう必要があっても、必ずこれより上位階層のサブルーチン１５００を経由してパラメータの送受信が行なわれるように構成されている。
【００６２】
図１４において、例えば先に述べた「３秒間（作動時間）、図柄７（停止図柄番号）」なるパラメータをサブルーチン１４００が受信すると、サブルーチン１４０１を呼び出し（コール）、次いで、サブルーチン１４０１はサブルーチン１４０３を呼び出しパラメータを自サブルーチン内に確保する（点線Ａ）。一方、このパラメータを、表示器に実際に「７」を出力させるためのコード変換を行なうサブルーチン１４０６、表示器に実際に「７」を出力させるための処理を実行するサブルーチン１４０７にも与える必要がある。したがって、サブルーチン１４０１、１４００、１４０２が順次呼び出されてパラメータが渡され、最終的にサブルーチン１４０６、１４０７が呼び出されてパラメータが渡され（点線Ｂ）、表示器に「７」が表示される。この実施の形態によれば、たとえ同一階層に属するサブルーチン（プログラム部）同士においてパラメータを送受信する場合であっても、直接、パラメータの送受信を行なわないようにしたので、プログラムの階層化が一層明確にされて、プログラム修正作業やデバッグ作業が一層容易になる。
【００６３】
また、階層構造になっているプログラムインターフェイスの内で、被制御装置の動作制御に直接係わるプログラム部を記憶する第１の領域と、これ以外のプログラム部を記憶する第２の領域とを分離して備えるようにしても良い。例えば、普通図柄表示制御モジュール６２１に即して図１６の模式的説明図を用いて説明すると、普通図柄表示装置１０８に実際に図柄表示するためのサブルーチン１４０２、１４０６、１４０７と、これ以外のタイマ管理等の装置制御に直接には関係しない純粋なソフトウエア的な処理を実行するサブルーチン１４００、１４０１、１４０３、１４０４、１４０５をモジュール格納領域２０２内で分離して格納すればプログラム修正作業やデバッグ作業が一層容易になる。
【００６４】
さらに、図１７に示すように、或るサブルーチンにおいて、モードと呼び出すべきサブルーチンとを対応付けたデータを記憶しておき、この或るサブルーチンが、送信されてきた制御パラメータに基づいてモードを決定し、このデータを参照してモードに応じて実行すべき他のサブルーチンを呼び出し起動するようにしても良い。このモードとしては、例えば普通図柄表示装置」１０８を例にとると、その変動態様に応じて、「変動開始モード」、「変動中モード」、「変動停止モード」の３モードが挙げられる。これによれば、起動させるべきサブルーチンを変更する際には、データ内容を変更すれば良いだけであるので、起動させるべきプログラム変更等によるプログラム修正が容易になる。
【００６５】
（第３の実施形態）
この実施形態は、遊技パターンに対して予め制御パラメータを定めておいて、遊技パターンに応じて特別図柄表示装置１００、効果音発生装置１１６、ランプ表示装置１１０（１１２）を動作制御する点に特徴がある。遊技パターンとしては、例えば、デモ時、変動時、大当り時等が挙げられる。
【００６６】
図１８に示すように、遊技制御サブルーチン１８０１が実行されることによって、遊技進行に応じた遊技パターンを決定し、この決定した遊技パターンに対する遊技パターン番号を通知する。この通知を受けた特別図柄・効果音・ランプ制御サブルーチン１８０２は、図１９に示すように、遊技パターン番号と被制御装置の制御パラメータとを対応付けて予め記憶しているデータテーブルを参照して、通知された遊技パターン番号に対応する制御パラメータを特別図柄表示装置制御モジュール６２３、効果音制御モジュール６２６、ランプ制御モジュール６２５に送信する。例えば、大当り状態で遊技パターン番号が「２」である時には、特別図柄表示装置制御モジュール６２３、効果音制御モジュール６２６、ランプ制御モジュール６２５の夫々に、制御パラメータ「ｃ」、「ｆ」、「ｉ」を送信する。すると、第１の実施形態で説明したようにして特別図柄表示装置１００、効果音発生装置１１６、ランプ表示装置１１０（１１２）が所望の動作を行なうように制御される。
【００６７】
この実施の形態によれば、特別図柄・効果音・ランプ制御サブルーチン１８０２は、データテーブルの記憶内容を参照して、実現すべき遊技態様に対する制御パラメータを対応する被制御装置側に送信して被制御装置の動作制御が行なわれる。したがって、遊技態様の変更等に伴って被制御装置の動作制御態様を変更する際には、データテーブルの記憶内容を修正すれば良いだけであるので、遊技態様変更等による被制御装置の制御態様変更のためのプログラム修正が容易になる。
【００６８】
（第４の実施の形態）
この実施の形態は、エラーパターンに対して予め制御パラメータを定めておいて、エラーパターンに応じて特別図柄表示装置１００、効果音発生装置１１６、ランプ表示装置１１０（１１２）を動作制御する点に特徴がある。エラーパターンとしては、断線短絡エラー、無通過エラー等が挙げられる。
図２０（ａ）は、プログラム管理モジュール６０１とエラー制御モジュール６０５との間のパラメータの送受信の様子を示しており、同図（ｂ）に示すように、プログラム管理モジュール６０１が「各スイッチ状態、遊技異常状態（要求名：エラー監視要求）」なるパラメータを送信すると、エラー制御モジュールは、これに応答して、パラメータ「エラー状態」、例えば、エラーパターンに対するエラー番号を送信するので、プログラム管理モジュール６０１は、これを受信して遊技制御モジュール６１０に送信する。
【００６９】
さて、図２２は、エラーパターンを示すエラー番号と、特別図柄表示装置１００、効果音発生装置１１６、ランプ表示装置１００（１１２）の制御パラメータとを対応付けたデータテーブルであって、遊技制御モジュール６１０が備えている。図２１を参照して動作説明をする。まず、エラーが発生すると、先に説明したようにして、エラー制御モジュール６０５は、エラーの態様に応じたエラー番号を決定してこれをプログラム管理モジュール６０１に動作パラメータ（エラー状態）として通知し、この通知を受けたプログラム管理モジュール６０１は遊技制御モジュール６１０に送信する。そして、遊技制御モジュール６１０は、図２２に示すようなデータテーブルを参照して、受信したエラー番号に対応する制御パラメータを特別図柄表示装置制御モジュール６２３、効果音制御モジュール６２６、ランプ制御モジュール６２５に送信する。例えば、エラー番号が「２」である場合には、特別図柄表示装置制御モジュール６２３、効果音制御モジュール６２６、ランプ制御モジュール６２５の夫々に、制御パラメータ「ｋ」、「ｍ」、「ｏ」を送信する。すると、第１の実施形態で説明したようにして特別図柄表示装置１００、効果音発生装置１１６、ランプ表示装置１１０（１１２）が所望の動作を行なうように制御される。
【００７０】
この実施の形態によれば、遊技制御モジュール６１０は、データテーブルを参照して、発生したエラー状態に対する制御パラメータを対応する被制御装置側に送信して、エラー内容に応じた被制御装置の動作制御が行なわれる。したがって、エラー時の被制御装置の動作制御内容の変更等を行なう際には、データテーブルの内容を修正すれば良いだけであるので、エラー処理の内容変更のためのプログラム修正が容易になる。
【００７１】
（第５の実施の形態）
この実施の形態は、被制御装置のイベントに応じた動作を出力ポートを用いて実際に行なう際の改良に関する。大入賞口制御モジュール６２４、ランプ制御モジュール６２５は、図２４に示すような、イべントと、動作パラメータとしてのフラグとを対応付けたデータテーブルを含んでいる。また、出力制御モジュール６０８は、図２５に示すような、フラグと出力データとを対応付けたデータテーブルを含んでいる。
【００７２】
今、大入賞口作動ソレノイド３０２、ランプ表示装置１１０（１１２）でイベントが発生すると、大入賞口制御モジュール６２４、ランプ制御モジュール６２５は、図２４に示したデータテーブルを参照してフラグを遊技制御モジュール６１０に送信する。そして、このフラグがプログラム管理モジュール６０１を経由して出力制御ブロック６０８に送信されると、出力制御ブロック６０８は、図２５に示したデータテーブルを参照して、受け取ったフラグに対する出力データを出力ポート２１５の所定のアドレスに出力する。これによって、イベントに対応する実際の被制御装置の動作制御が行なわれる。なお、複数の被制御装置のイベントに対する出力ポートのアドレスが同一のものである場合には、出力制御モジュール６０８は、出力データの論理和演算を行ってこの論理和演算結果を出力するようにすればよい。この場合、複数種類のイベントの夫々に対する出力データを、例えば、互いに「１」の立つビット位置が異なる８ビットのデジタルデータとして図２５に示すデータテーブルに記憶しておけば良い。
【００７３】
この実施の形態によれば、主制御部２００によって出力制御モジュール６０８が実行されることによって、図２５に示すデータテーブルを参照して、受信したフラグに対するデジタル出力データを所定のポートに出力するので、このポートに対する被制御装置の実際の動作制御が行なわれる。したがって、動作制御内容の変更が生じても、出力データ記憶部の記憶内容を変更すれば良いだけなので、プログラム修正が容易である。また、複数種類の被制御装置に対する出力ポートに同一アドレスに割り当てられている場合、受信したフラグに対するデジタル出力データを被制御装置毎に獲得してこれらに論理和演算を行なった論理和演算結果を、同一アドレスが割り当てられた出力ポートに出力するので、同一のポートに対して複数の被制御装置を割り付けてもこれらを動作制御することが可能となる。
【００７４】
（第６の実施の形態）
この実施の形態は、乱数制御モジュール６０３等に組み込まれる加算サブルーチンに関する。図２６に示すようにこのサブルーチンには、１または２バイトのいずれかの指定を示す識別コードと、加算値を記憶するＲＡＭの絶対アドレスと、加算の上限値とを組にしたデータ構造体２６００を少なくとも１つ備えている。なお、データ終端の識別コードはデータ終端を示す終端コードとなっている。
【００７５】
主制御部２００は、このサブルーチンを実行すると、ＲＡＭの絶対アドレスで指定されたアドレスの内容を所定の初期値（例えば０）から１づつ、識別コードで指定されたバイト指定で加算していく（インクリメント）。この加算は加算値が上限値に達するまで行なわれ、上限値に達したら、再度、前記アドレスの内容を初期値に戻し循環的に加算を行なう。そして、このようなデータ構造体毎に加算処理を順に行っていって、終端コードが出現すると先頭のデータ構造体に戻って加算処理を再度行う。
【００７６】
この実施の形態によれば、主制御部２００が加算ルーチンを実行することによって、ＲＡＭの絶対アドレスで指定されるアドレスの内容を、所定の初期値から上限値で示される数値となるまでインクリメント（例えば１だけの加算）する処理を循環的に行うので、簡単なデータ構造をモジュールに備えることによって加算処理を実行させることができる。
【００７７】
（第７の実施の形態）
この実施の形態は、乱数制御モジュール６０３等に組み込まれる減算サブルーチンに関する。図２７に示すようにこのサブルーチンには、１または２バイトのいずれかの指定を示す識別コードと、減算値を記憶するＲＡＭの絶対アドレスと、減算の下限値とを組にしたデータ構造体２７００を少なくとも１つ備えている。なお、データ終端の識別コードはデータ終端を示す終端コードとなっている。
【００７８】
主制御部２００は、このサブルーチンを実行すると、ＲＡＭの絶対アドレスで指定されたアドレスの内容を所定の初期値（例えば１６進数でＦＦ）から１づつ、識別コードで指定されたバイト指定で減算していく（デクリメント）。この減算は減算値が下限値に達するまで行なわれ、下限値に達したら、再度、前記アドレスの内容を初期値に戻し循環的に減算を行なう。そして、このようなデータ構造体毎に減算処理を順に行っていって、終端コードが出現すると先頭のデータ構造体による減算処理を再度行う。または、イベント発生毎に、該当データ構造体を用いて１回だけ減算処理を行なうようにしても良い。
【００７９】
この実施の形態によれば、主制御部２００が減算ルーチンを実行することによって、ＲＡＭの絶対アドレスで指定されるアドレスの内容を、所定の初期値から下限値データで示される数値となるまでデクリメント（例えば１だけの減算）する処理を循環的に行うので、簡単なデータ構造体をモジュールに備えることによって減算処理を実行させることができる。
【００８０】
（第８の実施の形態）
この実施の形態では、ＲＯＭにテストプログラムを格納しておいて被制御装置の試験動作を行なうようにした点に特徴がある。図２８に示す被制御装置ＲＯＭ２８００は、図５に示すような被制御装置側のＲＯＭ５０３、５１３、５２３、５３３に相当する。図２８に示すようにこの被制御装置ＲＯＭ２８００には、自装置を制御するためのサブ制御プログラムが格納されると共に、その末尾アドレス近傍には３種類のテストプログラム２８０１、２８０２、２８０３が格納されている。これらは３種類の機種に対するテストプログラムである。
【００８１】
そして、例えば、主制御部２００からのテスト指示用の制御パラメータが送られてきた時には、被制御装置側のＣＰＵは指示に基づくテストプログラムを実行することによって、遊技機全体の組み立てが完了していない場合でも、被制御装置の試験を行なうことができる。しかも、テストプログラムを３機種分持っているので、３機種に対応した試験が行なえる。なお、被制御装置側に設けたディップスイッチを切換操作することによって、主制御部２００から分離されて所望のテストプログラムが実行されるようにしておけば、簡単に試験を行なうことができるのでより好ましい。
【００８２】
この実施の形態によれば、被制御装置側のＣＰＵが、被制御装置ＲＯＭ２８００に記憶されたテストプログラムを実行して動作試験を行なうので動作試験が容易に行なえ、また、複数種類のテストプログラムを実行できるので、例えば複数種類の機種に対する試験が容易に行なえ、この試験は製造時、出荷時、ホール設置後等様々な時期に容易に行なえる。
【００８３】
なお、以上説明したきた各実施形態において、各モジュールをＲＯＭ２０１にマッピングする際に、変更可能な箇所が多い部分、例えば、機種が変更するとこれに伴ってパラメータ変更すべき部分を各モジュールの先頭または末尾部分に配置したり、各モジュール（プログラムインターフェイスを含む）においてパラメータ変更すべき部分を切り出して、ＲＯＭ２０１の末尾部に配置してモジュール実行の際にはパラメータを参照しに行くようにしても良いし、また、総てのモジュールにおいて双方向通信としても良い。また、本発明の要旨を逸脱しない範囲内で上述してきた各実施形態の種々の変形が可能であることは言うまでもない。
【００８４】
なお、以上の各実施の形態では遊技機の一例としてパチンコ機を例にとって説明してきたが、これ以外の遊技機、例えばパチスロ機等の被制御装置を備えている遊技機に適用しても好適であることは言うまでもない。
【発明の効果】
以上説明したきたように、請求項１に係る発明によれば、遊技機の機種が変更して被制御装置の種類が変更となっても、遊技制御モジュール中のパラメータを変更すれば新たな遊技機に対応でき、プログラム修正作業やデバッグ作業が容易になるという効果が得られる。
【００８５】
また、請求項１に係る発明によれば、特に、プログラムインターフェイスを介したパラメータの送受信で被制御装置の動作制御が行なえるので、プログラムインターフェイスに所定の機能を持たせることによって、遊技制御モジュールのプログラム修正作業やデバッグ作業が一層容易になるという効果が得られる。
【００８６】
また、請求項２に係る発明によれば、プログラムの階層化が一層明確にされて、プログラム修正作業やデバッグ作業が一層容易になるという効果が得られる。
【００８７】
また、請求項３に係る発明によれば、被制御装置の動作制御に直接係わるプログラム部と、これ以外のプログラム部とが分離した状態でメモリマッピングされているので、これによってもプログラム修正作業やデバッグ作業が一層容易になるという効果が得られる。
【００８８】
また、請求項４に係る発明によれば、起動させるべきプログラムを変更する際には、記憶プログラム部の記憶内容を変更すれば良いので、起動させるべきプログラム変更等によるプログラム修正が容易になるという効果が得られる。
【００８９】
また、請求項５に係る発明によれば、遊技態様の変更等に伴って被制御装置の動作制御態様を変更する際には、記憶プログラム部の記憶内容を修正すれば良いので、遊技態様変更等による被制御装置の制御態様変更のためのプログラム修正が容易になるという効果が得られる。
【００９０】
また、請求項６に係る発明によれば、エラー時の被制御装置の動作制御内容の変更等を行なう際には、エラーデータ記憶プログラム部の記憶内容を修正すれば良いので、エラー処理の内容変更のためのプログラム修正が容易になるという効果が得られる。
【００９１】
また、請求項７に係る発明によれば、動作制御内容の変更が生じても、出力データ記憶部の記憶内容を変更すれば良いので、プログラム修正が容易であり、特に請求項８に係る発明によれば、同一のポートに対して複数の被制御装置を割り付けてもこれらを動作制御することが可能となり、もってプログラム修正が容易になるという効果が得られる。
【００９２】
また、請求項９、１０に係る発明によれば、簡単なデータ構造をモジュールに備えることによって加算処理や減算処理を実行させることができるという効果が得られる。
【００９３】
また、請求項１１に係る発明によれば、被制御装置の副制御手段が、テストプログラム記憶手段に記憶されたテストプログラムを実行して動作試験を行なうので動作試験が容易に行なえ、また、複数種類のテストプログラムを実行できるので、例えば複数種類の機種に対する試験が容易に行なえるという効果が得られる。
【図面の簡単な説明】
【図１】遊技盤の模式的説明図である。
【図２】従来技術の説明図である。
【図３】遊技機動作を説明するためのジェネラルフローチャートである。
【図４】遊技機の制御ブロック図である。
【図５】特別図柄表示装置１００、ランプ表示装置１１０（１１２）、効果音発生装置１１６、賞球払出装置１１７のブロック構成図である。
【図６】モジュール格納領域２０２に格納されたモジュールの説明図である。
【図７】遊技制御モジュール６１０と普通図柄表示装置制御モジュール６２１とのパラメータの送受信の説明図である。
【図８】遊技制御モジュール６１０と普通電動役物制御モジュール６２２とのパラメータの送受信の説明図である。
【図９】遊技制御モジュール６１０と特別図柄表示装置制御モジュール６２３とのパラメータの送受信の説明図である。
【図１０】遊技制御モジュール６１０と大入賞口制御モジュール６２４とのパラメータの送受信の説明図である。
【図１１】遊技制御モジュール６１０からランプ制御モジュール６２５へのパラメータの送信の説明図である。
【図１２】遊技制御モジュール６１０から効果音制御モジュール６２６へのパラメータの送信の説明図である。
【図１３】モジュール実行によって遊技機動作を行なうことを説明するためのジェネラルフローチャートである。
【図１４】普通図柄表示装置制御モジュール６２１の階層構造の説明図である。
【図１５】第２の実施の形態の動作概要の説明図である。
【図１６】モジュール格納領域２０２にサブルーチンが分離して格納されたことを説明するための模式的説明図である。
【図１７】モードと呼び出すべきサブルーチンとを対応付けたデータテーブルの説明図である。
【図１８】第３の実施の形態の説明図である。
【図１９】遊技パターン番号と制御パラメータとを対応付けたデータテーブルの説明図である。
【図２０】プログラム管理モジュール６０１とエラー制御モジュール６０５とのパラメータの送受信の説明図である。
【図２１】第４の実施の形態の説明図である。
【図２２】エラー番号と制御パラメータとを対応付けたデータテーブルの説明図である。
【図２３】第５の実施の形態の説明図である。
【図２４】イベントとフラグとを対応付けたデータテーブルの説明図である。
【図２５】フラグと出力データとを対応付けたデータテーブルの説明図である。
【図２６】加算サブルーチン用のデータ構造体の説明図である。
【図２７】減算サブルーチン用のデータ構造体の説明図である。
【図２８】第８の実施の形態の説明図である。
【符号の説明】
１０  遊技盤
１００  特別図柄表示装置
１０２  普通図柄作動ゲート
１０４  特別図柄始動口
１０６  大入賞口
１０８  普通図柄表示装置
１１０  ランプ表示装置
１１２  ランプ表示装置
１１４  アウト口
１１６  効果音発生装置
１１７  賞球払出装置
１２０  開閉部材
２００  主制御部
２０１  ＲＯＭ
２０２  モジュール格納領域
２０３  ＲＡＭ
２１０  入力ポート
２１３  リセット回路
２１２  電源回路
２１５  出力ポート
３００  普通電動役物作動ソレノイド
３０２  大入賞口作動ソレノイド
３０４  特別図柄始動スイッチ
３０６  普通図柄作動スイッチ
３０８  大入賞口スイッチ
５００  特別図柄制御部
６０１  プログラム管理モジュール
６０２  初期化制御モジュール
６０３  乱数制御モジュール
６０４  入力制御モジュール
６０５  エラー制御モジュール
６０６  賞球制御モジュール
６０７  外部情報制御モジュール
６０８  出力制御モジュール
６１０  遊技制御モジュール
６２１  普通図柄表示装置制御モジュール
６２２  普通電動役物制御モジュール
６２３  特別図柄表示装置制御モジュール
６２４  大入賞口制御モジュール
６２５  ランプ制御モジュール
６２６  効果音制御モジュール
１４０１〜１４０７  サブルーチン
１８０１  遊技制御サブルーチン
１８０２  特別図柄・効果音・ランプ制御サブルーチン
２６００  データ構造体
２７００  データ構造体
２８００  被制御装置ＲＯＭ
２８０１  テストプログラム
２８０２  テストプログラム
２８０３  テストプログラム
【図１】
0004390924.tif 000002
【図２】
0004390924.tif 000003
【図３】
0004390924.tif 000004
【図４】
0004390924.tif 000005
【図５】
0004390924.tif 000006
【図６】
0004390924.tif 000007
【図７】
0004390924.tif 000008
【図８】
0004390924.tif 000009
【図９】
0004390924.tif 000010
【図１０】
0004390924.tif 000011
【図１１】
0004390924.tif 000012
【図１２】
0004390924.tif 000013
【図１３】
0004390924.tif 000014
【図１４】
0004390924.tif 000015
【図１５】
0004390924.tif 000016
【図１６】
0004390924.tif 000017
【図１７】
0004390924.tif 000018
【図１８】
0004390924.tif 000019
【図１９】
0004390924.tif 000020
【図２０】
0004390924.tif 000021
【図２１】
0004390924.tif 000022
【図２２】
0004390924.tif 000023
【図２３】
0004390924.tif 000024
【図２４】
0004390924.tif 000025
【図２５】
0004390924.tif 000026
【図２６】
0004390924.tif 000027
【図２７】
0004390924.tif 000028
【図２８】
0004390924.tif 000029