(57)【特許請求の範囲】
【請求項１】
ＣＰＵコアと遊技機向け付加回路で構成される遊技機制御用マイクロコンピュータの当該遊技機向け付加回路の機能をエミュレートするインサーキットエミュレータ用アダプタであって、
前記ＣＰＵコアの機能をエミュレートするＣＰＵコア用インサーキットエミュレータが遊技機制御用プログラムの実行を停止していることを検出する停止検出手段と、
前記停止検出手段によって遊技機制御用プログラムの実行停止が検出されたことに応答して、前記遊技機向け付加回路の内部状態を保存したまま、前記遊技機向け付加回路に含まれる所定のメモリとレジスタに記憶されているデータが前記ＣＰＵコア用インサーキットエミュレータによって読み出されることを可能とする読出制御手段と、
を備えることを特徴とするインサーキットエミュレータ用アダプタ。
【請求項２】
前記停止検出手段は、前記遊技機制御用プログラムの実行を停止したときに前記ＣＰＵコア用インサーキットエミュレータから出力されるブレーク信号が入力されたことにより、遊技機制御用プログラムの実行停止を検出することを特徴とする請求項１に記載のインサーキットエミュレータ用アダプタ。
【請求項３】
前記遊技機向け付加回路は、生成された乱数値を乱数値レジスタに設定する乱数回路と、カウンタのカウンタ値が所定の値と一致するとタイムアウト信号を発生するウォッチドッグタイマと、受信した複数のデータを記憶する記憶部と当該記憶部から出力されるデータを指定するリードポインタとを含んでおり、当該記憶部から当該各データを受信した順番で出力する受信用ＦＩＦＯ回路とを有し、
前記読出制御手段は、前記遊技機制御用プログラムの実行停止が検出されたことに応答して、前記乱数回路と前記ウォッチドッグタイマの状態遷移を停止させ、前記ＣＰＵコア用インサーキットエミュレータによって前記乱数回路に含まれる乱数値レジスタと前記ウォッチドッグタイマに含まれるカウンタからそれぞれ乱数値とカウンタ値が読み出されることを可能とし、かつ、前記ＣＰＵコア用インサーキットエミュレータによって、前記リードポインタのポインタ値を保存して前記受信用ＦＩＦＯ回路に含まれる記憶部から記憶されている各データが読み出されることを可能にする、
ことを特徴とする請求項１又は２に記載のインサーキットエミュレータ用アダプタ。
【請求項４】
前記読出制御手段は、
前記ＣＰＵコア用インサーキットエミュレータに接続されるデータバスと、
前記ＣＰＵコア用インサーキットエミュレータに接続されるアドレスバスと、
を有し、
前記アドレスバスを送信されるアドレスに基づいて、前記乱数回路に含まれる乱数値レジスタに記憶されている乱数値又は前記ウォッチドッグタイマに含まれるカウンタに記憶されているカウンタ値又は前記受信用ＦＩＦＯ回路に含まれる記憶部に記憶されている各データを前記データバスに出力させる、
ことを特徴とする請求項３に記載のインサーキットエミュレータ。
【請求項５】
ＣＰＵコアの機能をエミュレートするＣＰＵコア用インサーキットエミュレータと遊技機向け付加回路の機能をエミュレートするインサーキットエミュレータ用アダプタとで構成されるインサーキットエミュレータであって、
前記ＣＰＵコア用インサーキットエミュレータは、遊技機制御用プログラムの実行を停止している間、ブレーク信号を出力するブレーク信号出力手段を備え、
前記インサーキットエミュレータ用アダプタは、
前記ＣＰＵコア用インサーキットエミュレータのブレーク信号出力手段によってブレーク信号が出力されていることに応答して、前記遊技機向け付加回路の内部状態を保存したまま、前記遊技機向け付加回路に含まれる所定のメモリとレジスタに記憶されているデータが前記ＣＰＵコア用インサーキットエミュレータによって読み出されることを可能とする読出制御手段と、
を備えることを特徴とするインサーキットエミュレータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊技機制御用マイクロコンピュータの遊技機向け付加回路の機能をエミュレートするインサーキットエミュレータ用アダプタと、このインサーキットエミュレータ用アダプタと遊技機制御用マイクロコンピュータのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）コアの機能をエミュレートするＣＰＵコア用インサーキットエミュレータで構成されるインサーキットエミュレータに関する。
【背景技術】
【０００２】
遊技機制御用マイクロコンピュータは、プログラムの改ざん等の不正行為を検出するために外部の照合機によって検査可能な構成でなければならない。このため、ＣＰＵコアは、従来から遊技機制御用マイクロコンピュータに搭載されているものを用いざるを得ない。
【０００３】
一方、遊技機の高機能化・高性能化に対応するために、遊技機制御用マイクロコンピュータには、ウオッチドックタイマ、乱数回路、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）回路等の遊技機向け付加回路が搭載されるようになった。
【０００４】
ここで、遊技機用のプログラムや遊技機のハードを開発する際には、遊技機制御用マイクロコンピュータの機能をエミュレートするインサーキットエミュレータ（以下、ＩＣＥという。）が用いられる。
ただし、様々な付加回路が搭載された遊技機制御用マイクロコンピュータごとにＩＣＥを開発するとＩＣＥのコストが高くなる。そこで、遊技機制御用マイクロコンピュータの機能をエミュレートするＩＣＥは、ＣＰＵコア用ＩＣＥと、遊技機向け付加回路の機能をエミュレートするＩＣＥ用アダプタとで構成される（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−４３２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
遊技機制御用マイクロコンピュータ用ＩＣＥは、プログラムの実行を停止している（ブレークしている）とき、ＣＰＵコア内の回路の内部状態を保存したまま、ＣＰＵコア内の所定のメモリやレジスタからデータを読みだすことができる。
しかし、アダプタに搭載されている遊技機向け付加回路の中には、ブレーク中にデータを読み出すと回路の内部状態が変化するものが含まれている。
例えば、受信用ＦＩＦＯ回路は、ブレーク中にデータを読み出すとリードポインタのポインタ値が変化する。特許文献１に開示されているＩＣＥは、ブレーク中にリードポインタのポインタ値を変化させずに、受信用ＦＩＦＯ回路に記憶されている複数のデータのうち最初に入力されたデータのみ受信用ＦＩＦＯ回路から読み出すことができる。けれども、このＩＣＥは、ブレーク中に、２番目以降に入力されたデータを受信用ＦＩＦＯ回路から読み出すことができない。
【０００７】
本発明は、上記実情に鑑みてなされたものであり、ブレーク中に、アダプタに搭載されている遊技機向け付加回路の内部状態を保存したまま、その付加回路内の所定のメモリやレジスタからデータを読み出すことができる遊技機制御用マイクロコンピュータのためのインサーキットエミュレータ用アダプタとそれを用いたインサーキットエミュレータを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係るインサーキットエミュレータ用アダプタは、
ＣＰＵコアと遊技機向け付加回路で構成される遊技機制御用マイクロコンピュータの当該遊技機向け付加回路の機能をエミュレートするインサーキットエミュレータ用アダプタであって、
前記ＣＰＵコアの機能をエミュレートするＣＰＵコア用インサーキットエミュレータが遊技機制御用プログラムの実行を停止していることを検出する停止検出手段と、
前記停止検出手段によって遊技機制御用プログラムの実行停止が検出されたことに応答して、前記遊技機向け付加回路の内部状態を保存したまま、前記遊技機向け付加回路に含まれる所定のメモリとレジスタに記憶されているデータが前記ＣＰＵコア用インサーキットエミュレータによって読み出されることを可能とする読出制御手段と、
を備えることを特徴とする。
【０００９】
好ましくは、前記停止検出手段は、前記遊技機制御用プログラムの実行を停止したときに前記ＣＰＵコア用インサーキットエミュレータから出力されるブレーク信号が入力されたことにより、遊技機制御用プログラムの実行停止を検出する。
【００１０】
好ましくは、前記遊技機向け付加回路は、生成された乱数値を乱数値レジスタに設定する乱数回路と、カウンタのカウンタ値が所定の値と一致するとタイムアウト信号を発生するウォッチドッグタイマと、受信した複数のデータを記憶する記憶部と当該記憶部から出力されるデータを指定するリードポインタとを含んでおり、当該記憶部から当該各データを受信した順番で出力する受信用ＦＩＦＯ回路とを有し、
前記読出制御手段は、前記遊技機制御用プログラムの実行停止が検出されたことに応答して、前記乱数回路と前記ウォッチドッグタイマの状態遷移を停止させ、前記ＣＰＵコア用インサーキットエミュレータによって前記乱数回路に含まれる乱数値レジスタと前記ウォッチドッグタイマに含まれるカウンタからそれぞれ乱数値とカウンタ値が読み出されることを可能とし、かつ、前記ＣＰＵコア用インサーキットエミュレータによって、前記リードポインタのポインタ値を保存して前記受信用ＦＩＦＯ回路に含まれる記憶部から記憶されている各データが読み出されることを可能にする。
【００１１】
好ましくは、前記読出制御手段は、
前記ＣＰＵコア用インサーキットエミュレータに接続されるデータバスと、
前記ＣＰＵコア用インサーキットエミュレータに接続されるアドレスバスと、
を有し、
前記アドレスバスを送信されるアドレスに基づいて、前記乱数回路に含まれる乱数値レジスタに記憶されている乱数値又は前記ウォッチドッグタイマに含まれるカウンタに記憶されているカウンタ値又は前記受信用ＦＩＦＯ回路に含まれる記憶部に記憶されている各データを前記データバスに出力させる。
【００１２】
また、本発明に係るインサーキットエミュレータは、
ＣＰＵコアの機能をエミュレートするＣＰＵコア用インサーキットエミュレータと遊技機向け付加回路の機能をエミュレートするインサーキットエミュレータ用アダプタとで構成されるインサーキットエミュレータであって、
前記ＣＰＵコア用インサーキットエミュレータは、遊技機制御用プログラムの実行を停止している間、ブレーク信号を出力するブレーク信号出力手段を備え、
前記インサーキットエミュレータ用アダプタは、
前記ＣＰＵコア用インサーキットエミュレータのブレーク信号出力手段によってブレーク信号が出力されていることに応答して、前記遊技機向け付加回路の内部状態を保存したまま、前記遊技機向け付加回路に含まれる所定のメモリとレジスタに記憶されているデータが前記ＣＰＵコア用インサーキットエミュレータによって読み出されることを可能とする読出制御手段と、
を備える。
【発明の効果】
【００１３】
本発明によれば、遊技機制御用マイクロコンピュータ用ＩＣＥが、ブレーク中に、アダプタに搭載されている遊技機向け付加回路の内部状態を保存したまま、その付加回路内の所定のメモリやレジスタからデータを読み出すことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る遊技機制御用マイクロコンピュータのためのインサーキットエミュレータの構成の一例を示す図である。
【図２】本発明の実施形態に係る乱数回路の構成の一例を示す図である。
【図３】本発明の実施形態に係るウォッチドッグタイマの構成の一例を示す図である。
【図４】本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第１の例を示す図である。
【図５】本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第２の例を示す図である。
【図６】本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第３の例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について図面を参照しながら説明する。
【００１６】
本発明の実施形態に係る遊技機制御用マイクロコンピュータのためのインサーキットエミュレータ１は、図１に示すように、ＩＣＥ用アダプタ１０とＣＰＵコア用ＩＣＥ２０とを含んでいる。なお、ターゲットボード３０は、遊技機を構成する回路が搭載されたボードである。
ＣＰＵコア用ＩＣＥ２０は、図示しないコンピュータ等に接続される。インサーキットエミュレータ１は、このコンピュータ等により制御される。
【００１７】
ＣＰＵコア用ＩＣＥ２０は、例えば、Ｚ８０命令互換のＣＰＵコアやＭ６８００／Ｍ６８０１命令互換のＣＰＵコアの機能をエミュレートする。
ＩＣＥ用アダプタ１０は、乱数回路１１やウォッチドッグタイマ１２等の遊技機専用の回路、受信用ＦＩＦＯ回路１３、送信用ＦＩＦＯ回路（図示なし）、タイマ回路（図示なし）等の遊技機に必要とされる汎用回路およびＣＰＵソケット１４を含んでいる。
【００１８】
ＣＰＵコア用ＩＣＥ２０は、ＣＰＵコアの全ての入出力端子とブレーク信号出力端子（Ｂｒｅａｋ）とを有している。
ＣＰＵコアの全ての入出力端子は、ＣＰＵソケット１４を介してＩＣＥ用アダプタ１０に接続される。これらの入出力端子は、アドレス出力端子（Ａｄｄｒｅｓｓ）、データ入出力端子（Ｄａｔａ）、制御信号端子（Ｃｏｎｔｒｏｌ）に分類される。
制御信号端子は、ＣＰＵコアの種類によって異なるが、例えば、Ｚ８０命令互換のＣＰＵコアの場合、リードストローブ出力端子とライトストローブ出力端子を含む。以下、リードストローブ出力端子から出力される信号をＲＤ信号、ライトストローブ出力端子から出力される信号をＷＲ信号という。
以下では、Ｚ８０命令互換のＣＰＵコアを例として説明する。
【００１９】
ブレーク信号出力端子から出力されるブレーク信号は、ＣＰＵコア用ＩＣＥ２０がブレークされたこと、すなわちプログラムの実行を停止させられたことを示す。
ユーザがインサーキットエミュレータ１を制御するコンピュータからインサーキットエミュレータ１をブレークさせる旨の指示を入力すると、ＣＰＵコア用ＩＣＥ２０は遊技機制御用プログラムの実行を停止する。そして、ＣＰＵコア用ＩＣＥ２０は遊技機制御用プログラムの実行を停止している間、ブレーク信号を出力する。
【００２０】
ターゲットボード３０には、遊技機制御用マイクロコンピュータのためのソケットが実装されている。完成した遊技機では、このソケットに遊技機制御用マイクロコンピュータが装着される。遊技機のハードやソフトの開発中には、このソケットを介してＩＣＥ用アダプタ１０の入出力端子がターゲットボード３０に接続される。
なお、ブレーク信号はＣＰＵコア用ＩＣＥ２０とＩＣＥ用アダプタ１０との間の信号であり、遊技機制御用マイクロコンピュータから出力される信号ではない。このため、ブレーク信号出力端子はターゲットボード３０には接続されない。
【００２１】
乱数回路１１、ウォッチドッグタイマ１２、受信用ＦＩＦＯ回路１３、およびその他のＩＣＥ用アダプタ１０に搭載されている回路は、必要に応じてアドレスバス（Ａｄｄｒｅｓｓ）、データバス（Ｄａｔａ）、ＲＤ信号線とＷＲ信号線を含む制御信号線（Ｃｏｎｔｒｏｌ）、ブレーク信号線（Ｂｒｅａｋ）に接続される。
【００２２】
乱数回路１１は、大当たりのような入賞のタイミングを制御する等の目的で擬似乱数を生成する。
乱数回路１１は、図２に示すように、カウンタ１１１と、乱数生成回路１１２と、乱数値レジスタ１１３と、乱数生成停止回路１１４と、アドレスデコード回路１１５と、トライステートバッファ１１６とを有している。
【００２３】
カウンタ１１１と乱数生成回路１１２はクロックごとに回路の状態が遷移する状態遷移回路である。
カウンタ１１１は、周期的に乱数を更新する場合に使用される。カウンタ１１１のカウンタ値が予め設定された値になると、乱数生成回路１１２の乱数値が更新される。
乱数生成回路１１２は、クロックごとに乱数値を生成し、生成した乱数値を乱数値レジスタ１１３に設定する。
乱数生成停止回路１１４は、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行しているとき、カウンタ１１１と乱数生成回路１１２を動作させる。一方、乱数生成停止回路１１４は、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されているとき、カウンタ１１１と乱数生成回路１１２の状態遷移を停止させる。
【００２４】
アドレスデコード回路１１５は、アドレスバスに出力されるアドレスが乱数値レジスタ１１３に割り当てられているアドレスと一致し、ＲＤ信号線にＲＤ信号が出力されている場合に、トライステートバッファ１１６をオープンし、乱数値レジスタ１１３に設定されている乱数値をデータバスに出力する。
【００２５】
従って、ＣＰＵコア用ＩＣＥ２０は、遊技機制御用プログラムを実行している間に、アドレスバスとＲＤ信号線にそれぞれ乱数値レジスタ１１３のアドレスとＲＤ信号を出力し、データバスに出力された乱数値を読み取ることによって、乱数値レジスタ１１３から乱数値を読み出すことができる。
また、ＣＰＵコア用ＩＣＥ２０は、ブレークされている（遊技機制御用プログラムの実行を停止している）間には、乱数回路１１（カウンタ１１１と乱数生成回路１１２）の状態遷移を停止させて、乱数値レジスタ１１３から乱数値を読み出すことができる。
なお、アドレスデコード回路１１５にブレーク信号を入力してアドレスとブレーク信号をまとめてデコードすることにより、遊技機制御用プログラムを実行している間とブレークされている間とで異なるアドレスを乱数値レジスタ１１３に割り当てることもできる。
【００２６】
静電気等のノイズの影響を受けても遊技機が暴走しないように、遊技機制御用マイクロコンピュータは、所定時間毎にリセットされ、メモリの所定の番地（例えば、０番地）からプログラムの実行を再開する。
このために、ウォッチドッグタイマ１２が設けられる。ウォッチドッグタイマ１２は、所定時間毎にタイムアウト信号を発生する。タイムアウト信号が発生すると、遊技機制御用マイクロコンピュータはリセットされる。
ウォッチドッグタイマ１２は、図３に示すように、カウンタ１２１と、出力制御回路１２２と、ウォッチドッグタイマ停止回路１２３と、アドレスデコード回路１２４と、トライステートバッファ１２５とを有している。
【００２７】
カウンタ１２１はクロックごとに回路の状態が遷移する状態遷移回路である。カウンタ１２１は上述した所定時間に相当するクロック数をカウントする。
出力制御回路１２２は、カウンタ１２１のカウンタ値が所定時間に相当するクロック数になると、タイムアウト信号を出力する。
ウォッチドッグタイマ停止回路１２３は、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されていない間、カウンタ１２１を動作させる。一方、ウォッチドッグタイマ停止回路１２３は、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されている間、カウンタ１２１を停止させる。
【００２８】
アドレスデコード回路１２４は、アドレスバスに出力されるアドレスがカウンタ１２１に割り当てられているアドレスと一致し、ＲＤ信号線にＲＤ信号が出力され、ブレーク信号が出力されている場合に、トライステートバッファ１２５をオープンし、カウンタ１２１のカウンタ値をデータバスに出力する。
【００２９】
従って、ＣＰＵコア用ＩＣＥ２０は、ブレークされている（遊技機制御用プログラムの実行を停止している）間に、ウォッチドッグタイマ１２（カウンタ１２１）を停止させて、アドレスバスとＲＤ信号線にそれぞれカウンタ１２１のアドレスとＲＤ信号を出力し、データバスに出力されたカウンタ値を読み取ることによって、カウンタ１２１からカウンタ値を読み出すことができる。
【００３０】
受信用ＦＩＦＯ１３は、受信したデータを受信した順（古い順）に出力する。
図４は、本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第１の例を示す。
ＦＩＦＯ回路１３Ａは、記憶部１３１と、リードポインタ（ＲＤＰ）１３２と、リードポインタ（ＲＤＰ）１３３と、リードポインタ（ＲＤＰ）切換回路１３４と、セレクタ１３５と、セレクタ１３６と、アドレスデコード回路１３７と、トライステートバッファ１３８と、図示しないライトポインタとを有している。
【００３１】
記憶部１３１は、０番地から３番地まで４ワード記憶することができる。入力ポートに入力したデータは、記憶部１３１のライトポインタの指す番地に書き込まれる。ライトポインタは、記憶部１３１にデータを書き込むごとに、１だけインクリメントし、３を超えると０に戻る。
【００３２】
リードポインタ切換回路１３４は、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行している間、リードポインタ１３２を動作させる。一方、リードポインタ切換回路１３４は、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されると、リードポインタ１３２を停止させ、リードポインタ１３２のポインタ値をリードポインタ１３３にコピーしてリードポインタ１３３を動作させる。
【００３３】
セレクタ１３５は、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行しているときリードポインタ１３２を選択し、リードポインタ１３２の記憶している番地をセレクタ１３６に送る。このとき、セレクタ１３６は、リードポインタ１３２の指す番地に記憶されている記憶部１３１のデータを選択する。
リードポインタ１３２は、記憶部１３１からデータが読み出されるごとに、１だけインクリメントし、３を超えると０に戻る。なお、リードポインタ１３２の指す番地がライトポインタの指す番地を超えないように図示しない回路により制御される。
【００３４】
一方、セレクタ１３５は、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されると、リードポインタ１３３を選択し、リードポインタ１３３の記憶している番地をセレクタ１３６に送る。このとき、セレクタ１３６は、リードポインタ１３３の指す番地に記憶されている記憶部１３１のデータを選択する。
リードポインタ１３３は、記憶部１３１からデータが読み出されるごとに、１だけインクリメントし、３を超えると０に戻る。なお、リードポインタ１３３の指す番地がライトポインタの指す番地を超えないように図示しない回路により制御される。
【００３５】
アドレスデコード回路１３７は、アドレスバスに出力されるアドレスがＦＩＦＯ回路１３Ａに割り当てられているアドレスと一致し、ＲＤ信号線にＲＤ信号が出力されている場合に、トライステートバッファ１３８をオープンする。これにより、記憶部１３１のリードポインタ１３２またはリードポインタ１３３の指す番地のデータがデータバスに出力される。
【００３６】
このように、ＦＩＦＯ回路１３Ａは、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行しているときリードポインタ１３２を使用し、ＣＰＵコア用ＩＣＥ２０がブレークされているとき、リードポインタ１３３を使用し、リードポインタ１３２を停止させる。このため、ブレーク中にＦＩＦＯ回路１３Ａからデータを読み出してもリードポインタ１３２の内容は変化せず、保存される。
リードポインタ切換回路１３４は、ＣＰＵコア用ＩＣＥ２０がブレークされている状態から遊技機制御用プログラムの実行に戻ったとき、リードポインタ１３３を停止させ、再びリードポインタ１３２を動作させる。
【００３７】
なお、記憶部１３１はセレクタ１３６と分離してレジスタで構成することもできるし、記憶部１３１とセレクタ１３６を一体化してメモリで構成することもできる。
【００３８】
図５は、本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第２の例を示す。
受信用ＦＩＦＯ回路の第２の例は、ＦＩＦＯ回路１３ＢとＦＩＦＯ回路１３Ｃと、ＦＩＦＯ切換回路１３９とで構成される。
ＦＩＦＯ回路１３Ｂは、記憶部１３１と、リードポインタ１３２と、セレクタ１３６と、アドレスデコード回路１３７Ｂと、トライステートバッファ１３８と、図示しないライトポインタとを有している。
ＦＩＦＯ回路１３Ｃは、記憶部１３１と、リードポインタ１３３と、セレクタ１３６と、アドレスデコード回路１３７Ｃと、トライステートバッファ１３８と、図示しないライトポインタとを有している。
図４と図５の同一の構成要素には同一の符号を付し、説明を省略する。
【００３９】
入力ポートから入力したデータは、ＦＩＦＯ回路１３Ｂの記憶部１３１とＦＩＦＯ回路１３Ｃの記憶部１３１の同一の番地に書き込まれる。従って、ＦＩＦＯ回路１３Ｂの記憶部１３１とＦＩＦＯ回路１３Ｃの記憶部１３１とは同一のデータを保持している。
【００４０】
ＦＩＦＯ切換回路１３９は、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行している間、ＦＩＦＯ回路１３Ｂからデータを出力させ、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されている間、ＦＩＦＯ回路１３Ｃからデータを出力させる。
すなわち、アドレスデコード回路１３７Ｂは、ＣＰＵコア用ＩＣＥ２０が遊技機制御用プログラムを実行している間、ＦＩＦＯ回路１３Ｂのトライステートバッファ１３８をオープンし、リードポインタ１３２の指す番地のデータを記憶部１３１からデータバスに出力させる。一方、アドレスデコード回路１３７Ｃは、ＣＰＵコア用ＩＣＥ２０からブレーク信号が出力されている間、ＦＩＦＯ回路１３Ｃのトライステートバッファ１３８をオープンし、リードポインタ１３３の指す番地のデータを記憶部１３１からデータバスに出力させる。
【００４１】
ＣＰＵコア用ＩＣＥ２０がブレークされているとき、ＦＩＦＯ回路１３Ｂは動作しない。このため、リードポインタ１３２の内容は変化せず、保存される。
ＦＩＦＯ切換回路１３９は、ＣＰＵコア用ＩＣＥ２０がブレークされている状態から遊技機制御用プログラムの実行に戻ったとき、ＦＩＦＯ回路１３Ｃを停止させ、再びＦＩＦＯ回路１３Ｂを動作させる。
【００４２】
図６は、本発明の実施形態に係る受信用ＦＩＦＯ回路の構成の第３の例を示す。
ＦＩＦＯ回路１３Ｄは、記憶部１３１と、リードポインタ１３２と、セレクタ１３６と、アドレスデコード回路１３７と、トライステートバッファ１３８と、アドレスデコード回路１４０と、トライステートバッファ１４１と、トライステートバッファ１４２と、トライステートバッファ１４３と、トライステートバッファ１４４と、図示しないライトポインタとを有している。
図４と図６の同一の構成要素には同一の符号を付し、説明を省略する。
【００４３】
トライステートバッファ１４１〜１４４は、それぞれ記憶部１３１の０番地〜３番地に記憶されているデータをアドレスバスに出力するために設けられている。トライステートバッファ１４１〜１４４には、別々のアドレスが割り当てられている。
アドレスデコード回路１４０は、例えば、アドレスバスに出力されるアドレスとトライステートバッファ１４１に割り当てられているアドレスとが一致し、ＲＤ信号線にＲＤ信号が出力され、ブレーク信号線にブレーク信号が出力されている場合に、トライステートバッファ１３１をオープンする。これにより、記憶部１３１の０番地のデータがデータバスに出力される。アドレスデコード回路１４０は、トライステートバッファ１４２〜１４４も同様に動作させる。
【００４４】
ＣＰＵコア用ＩＣＥ２０がブレークされているとき、記憶部１３１に記憶されているデータはトライステートバッファ１４１〜１４４を介して読み出される。このため、リードポインタ１３２の内容は変化せず、保存される。
【００４５】
なお、上記図４〜図６に示した受信用ＦＩＦＯ回路の第１〜第３の例では、記憶部１３１が４ワードのデータを記憶できる場合を示したが、記憶部１３１が記憶できるデータ数は４ワードに限らず８ワードや１６ワード等であって良い。また、その他のワード数であっても良い。
【００４６】
また、上記実施形態では、Ｚ８０命令互換のＣＰＵコアを例として説明したが、本発明は、Ｍ６８００／Ｍ６８０１命令互換のＣＰＵコアやその他のＣＰＵコアに対して適用できることは言うまでもない。
【００４７】
以上説明したように、本発明によれば、乱数回路やウォッチドッグタイマのように状態遷移回路を含む回路では、ＣＰＵコア用ＩＣＥがブレークされているとき、状態遷移回路の状態遷移を止める。このため、ブレーク中に、ＣＰＵコア用ＩＣＥがその回路に含まれるレジスタやメモリの内容を読み出すときに、回路の内部状態は変化せず、保存される。
また、受信用ＦＩＦＯ回路のリードポインタのように、ＣＰＵコア用ＩＣＥがレジスタやメモリの内容を読み出すと内部状態が変化する回路では、内部状態を保存したままレジスタやメモリの内容を読み出すことができる回路を付加する。
従って、本発明に係る遊技機制御用マイクロコンピュータ用ＩＣＥは、ブレーク中に、アダプタに搭載されている遊技機向け付加回路の内部状態を保存したまま、その付加回路内の所定のメモリやレジスタからデータを読み出すことができる。
【００４８】
以上、本発明の実施形態について説明したが、設計上の都合やその他の要因によって必要となる様々な修正や組み合わせは、請求項に記載されている発明や発明の実施形態に記載されている具体例に対応する発明の範囲に含まれると理解されるべきである。
【符号の説明】
【００４９】
１…インサーキットエミュレータ、１０…インサーキットエミュレータ用アダプタ、１１…乱数回路、１２…ウォッチドッグタイマ、１３…受信用ＦＩＦＯ回路、１４…ＣＰＵソケット、２０…ＣＰＵコア用インサーキットエミュレータ、３０…ターゲットボード、１１１…カウンタ、１１２…乱数生成回路、１１３…乱数値レジスタ、１１４…乱数生成停止回路、１１５…アドレスデコード回路、１１６…トライステートバッファ、１２１…カウンタ、１２２…出力制御回路、１２３…ウォッチドッグタイマ停止回路、１２４…アドレスデコード回路、１２５…トライステートバッファ、１３Ａ、１３Ｂ、１３Ｃ、１３Ｄ…ＦＩＦＯ回路、１３１…記憶部、１３２…リードポインタ、１３３…リードポインタ、１３４…リードポインタ切換回路、１３５…セレクタ、１３６…セレクタ、１３７、１３７Ｂ、１３７Ｃ…アドレスデコード回路、１３８…トライステートバッファ、１３９…ＦＩＦＯ切換回路、１４０…アドレスデコード回路、１４１、１４２、１４３、１４４…トライステートバッファ
【図１】
0005443956.tif 000002
【図２】
0005443956.tif 000003
【図３】
0005443956.tif 000004
【図４】
0005443956.tif 000005
【図５】
0005443956.tif 000006
【図６】
0005443956.tif 000007