(57)【要約】【課題】あらかじめ設定してあるリセット管理情報に基づき、内部リセット要因が発生したときの対応としてシステムリセットとユーザリセットの何れかを任意に選択できるコンピュータチップを提供することを目的とする。【解決手段】遊技機毎で異なる値に設定される遅延時間分を有するランダム・セキュリティチェック時間で初期化を実行するセキュリティリセットと、セキュリティモードを経ずにユーザモードに移行させて初期化を実行するユーザリセットの切替えを、予め設定したリセット管理情報に基づいて行われるようにしたので、セキュリティに重点を置くのであればシステムリセットが実行されるように設定し、ユーザモードへ短時間で移行させることに重点を置くのであればユーザリセットが実行されるように設定するといったような選択を各開発ユーザが任意に指定することが可能になった。【選択図】図２
2015073609.tif 000002
【特許請求の範囲】
【請求項１】
セキュリティチェックに関するセキュリティモードと、所望の遊技処理に関するユーザモードの状態遷移を有する遊技機用コンピュータチップであって、
リセット信号を入力したとき、遊技機毎で異なる値に設定される遅延時間を所定のセキュリティモード時間に加算したランダム・セキュリティチェック時間を有するセキュリティモードに移行させて前記遊技機用コンピュータチップの初期化を実行するシステムリセットと、
リセット信号を入力したとき、前記セキュリティモードを経ずにユーザモードに移行させて初期化を実行するユーザリセットと、
の何れか一方を指定するためのリセット管理情報を記憶しており、
ウォッチドッグタイマー及びイリーガル・アドレストラップを含む内部リセット要因の発生を識別したとき、前記リセット管理情報に基づきシステムリセット或いはユーザリセットの選択がされることを特徴とする遊技機用コンピュータチップ。
【請求項２】
前記セキュリティモードでセキュリティチェックが実行された後は、前記ユーザモードに切り替わって所定のユーザプログラムに従った遊技処理が実行される、請求項１に記載の遊技機用コンピュータチップ。
【請求項３】
前記リセット管理情報は、前記ユーザプログラム内の初期設定用エリアに事前に格納され、前記内部リセット要因の発生が識別されると当該初期設定用エリアから読み出される、請求項１又は２に記載の遊技機用コンピュータチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ぱちんこやパチスロ等で代表される遊技機の内部リセットを実行するとき、システムリセットにするか或いはユーザリセットにするかを選択できる機能を備えた遊技機制御用マイクロコンピュータに関する。
【背景技術】
【０００２】
ＣＰＵが暴走したときに発生する内部リセット要因として、ＷＤＴ（ウォッチドッグタイマー）やＩＡＴ（イリーガル・アドレストラップ）などがある。ＣＰＵの暴走を解除するにはリセットを行う必要があり、リセットには「システムリセット」と「ユーザリセット」とがある。
【０００３】
ここで、遊技機を制御するマイクロコンピュータ（以下、「メインチップ」という。）の状態遷移について説明しておく。遊技機は、メインチップ内のユーザＲＯＭと呼ばれる不揮発性メモリ内に遊技機メーカーが開発したプログラムが格納されている。出玉や大当たり回数などを操作する不正行為はこのユーザプログラムが書き換えられることで行われる。不正行為の対策の一つとして、ユーザＲＯＭ内のプログラムが改ざんされた場合にＣＰＵの動作を停止するセキュリティチェック機能がチップに搭載されている。
【０００４】
図１は、メインチップのモード遷移図を示している。まず、メインチップに電源が投入されリセット信号が入力されるとセキュリティモードに入り、セキュリティチェックが実行される。このセキュリティチェックにおいて、ユーザプログラムが正規のもの（改ざんなし）であると判定された場合、ユーザプログラムにしたがって通常の遊技を実行するユーザモードに移行することができる。ユーザモード中にＷＤＴなどの内部リセット要因が発生した場合は、電源投入時と同じ手順を踏んでセキュリティモードでＣＰＵを初期化させた後にユーザプログラムを動作させるシステムリセットを実行するか、或いはユーザモードの開始状態に戻るユーザリセットの実行で対処する。ユーザリセットは、セキュリティモードを経ずにユーザモードにするため、セキュリティモードを省略した割り込みを開始させることになる。
【０００５】
システムリセット信号が入力されてセキュリティモードが経過し、その後ユーザモードに入って最初の大当たりまでの時間が一定であると、当該時間から大当たり発生タイミングが計算され、想定外で大当たりが発生させられてしまう不正行為が行われることもあった。このような不正行為の対策として、セキュリティモードにおけるセキュリティチェック時間を可変にするための情報をメインチップ内のユーザＲＯＭに設定しておき、システムリセットの入力があると、このユーザＲＯＭ内の情報を基にセキュリティチェック時間がランダムに変更されるようにしていた（例えば、下記特許文献１）。
【０００６】
ユーザリセットでは、同じタイミングでユーザモードが開始されることになるので大当たり発生タイミングの予測がされやすく、しかも複数の遊技機にわたり当該予測が展開されて人為的に乱数値が操作され得るリスクが大きい。これに対してシステムリセットの場合、ＣＰＵの立ち上がり時間をランダムなセキュリティチェック時間でばらつかせることができるので、システムリセットの入力からユーザプログラムの実行開始までの時間を外部から予測できないようにすることが可能であるというメリットを有している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−３４２３５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ＷＤＴなどの内部リセット要因が発生したときシステムリセットをしてしまうとユーザプログラムを実行させる状態のユーザモードへ移行するまでに時間がかかるため、ユーザリセットが行われるようにすることも多い。ＣＰＵを迅速に回復させるという時間面ではユーザリセットを行うのが好都合な一方で、ユーザリセットでは上述したランダムなセキュリティチェック時間が考慮されることがないため、内部リセット要因でユーザリセットが用いられているときはセキュリティ面、即ち不正対策が万全とは言えない。
【０００９】
そこで、本発明は上記問題に鑑みて成されたもので、あらかじめ設定してあるリセット管理情報に基づき、内部リセット要因が発生したときの対応としてシステムリセットとユーザリセットを任意に選択できるチップを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の遊技機用コンピュータチップは、セキュリティチェックに関するセキュリティモードと、所望の遊技処理に関するユーザモードの状態遷移を有しており、(i)リセット信号を入力したとき、遊技機毎で異なる値に設定される遅延時間を所定のセキュリティモード時間に加算したランダム・セキュリティチェック時間を有するセキュリティモードに移行させて前記遊技機用コンピュータチップの初期化を実行するシステムリセットと、(ii)リセット信号を入力したとき、前記セキュリティモードを経ずにユーザモードに移行させて初期化を実行するユーザリセットと、の何れか一方を指定するためのリセット管理情報を記憶し、ウォッチドッグタイマー及びイリーガル・アドレストラップを含む内部リセット要因の発生を識別したときは、前記リセット管理情報に基づきシステムリセット或いはユーザリセットの選択がされることを特徴とする。
【００１１】
また、本発明の遊技機用コンピュータチップは、セキュリティモードでセキュリティチェックが実行された後は、ユーザモードに切り替わって所定のユーザプログラムに従った遊技処理が実行され、特に、リセット管理情報は、ユーザプログラム内の初期設定用エリアに事前に格納され、内部リセット要因の発生が識別されると初期設定用エリアから読み出されることを特徴とする。
【発明の効果】
【００１２】
本発明の遊技機用コンピュータチップによれば、セキュリティチェック時間が一定ではくランダムであることを特徴とするセキュリティモードに移行させるシステムリセットと、セキュリティモードを経ずにユーザモードに移行させるとの切替えをリセット管理情報に基づき実行するため、セキュリティに重点を置くのであればシステムリセットが実行されるように設定し、ユーザモードへ短時間で移行させることに重点を置くのであればユーザリセットが実行されるように設定するといったフレキシブルな選択が可能になる。
【００１３】
したがって、ノイズ等によって故意にＣＰＵを暴走させることで初期化処理を開始させ、乱数値の生成が制御されてしまう不正に対してユーザリセットが行われることに不都合がある場合はシステムリセットの選択が可能になり、初期状態から大当たりのタイミングを予測されにくいシステムリセットの利点が、ウォッチドッグタイマーやイリーガル・アドレストラップなどの内部リセット要因に対しても適用できるようになる。
【図面の簡単な説明】
【００１４】
【図１】遊技機に設置される制御基板内のコンピュータチップの一般的なモード遷移図である。
【図２】本発明の遊技機のメインチップの動作モードを表した図である。
【図３】セキュリティモードにおいてシステムリセットを入力した時点からユーザモードに移行するまでのセキュリティチェック時間が変化する状態を表した図である。
【図４】セキュリティチェック時間に関係する追加の遅延時間や延長時間の一例を示す図である。
【発明を実施するための形態】
【００１５】
以下に図面を参照しながら、本発明の実施形態について説明する。図２は、遊技機のメインチップの動作モードを表した図である。電源投入後は、メインチップにシステムリセット信号が入力されるが、この場合には、最初にセキュリティモード１０になる。セキュリティモード１０は、例えば、メインチップ内のブートＲＯＭからブートプログラムを読出し、ＣＰＵ内の様々な設定をやり直すための初期化を行うものである。セキュリティモード１０でセキュリティチェックがＯＫであればユーザモード２０に移行する。
【００１６】
ＷＤＴやＩＡＴなどのリセット要因が発生した場合、メインチップはシステムリセットにすべきか、ユーザリセットにすべきかの選択処理を行う。どちらを選択するかの判断はリセット管理情報に基づき決定され、このリセット管理情報はユーザプログラム内の初期設定用エリアに事前に格納されている。したがって、メインチップは、ＷＤＴやＩＡＴなどのリセット要因が発生したことを識別したら、初期設定用エリアからリセット管理情報を読み出す。
【００１７】
セキュリティに重点を置く開発ユーザはシステムリセット、ユーザモードへ短時間で移行させることに重点を置くのであればユーザリセットが指定される情報を、リセット管理情報として初期設定用エリアに事前に設定しておく。なお、このリセット管理情報は、ユーザモードで実行されるユーザプログラムでは書き換えられない情報である。
【００１８】
読み出されたリセット管理情報に応じて、セキュリティモードでのリセット、或いはユーザモードでのユーザリセットの何れか一方が実行されることになるので、メインチップを使う開発ユーザは、ＷＤＴやＩＡＴなどのリセット要因に対して、システムリセット或いはユーザリセットのどちらのリセットを選択するかを柔軟に決定することができるようになる。
【００１９】
図３は、セキュリティモードにおいてシステムリセットを入力した時点からユーザモードに移行するまでのセキュリティチェック時間が変化する理由を表している。チップの種類（バージョン）が同じであれば同一の値をもつ固定セキュリティモード時間を有するが、この固定セキュリティモード時間に対してランダムな遅延時間、延長時間、又は両者を加算した時間が、セキュリティチェック時間である。
【００２０】
図４（Ａ）に示すように、ランダムな遅延時間は延長時間が設定コード（設定値）と対応づけられる。例えば、メインチップ固有のＩＤ番号で固定延長させたり、０〜２００ｍｓ等のある時間幅の中で、乱数回路で発生させた乱数値に基づき遅延させるためのランダムな時間が決められたりする。また、図４（Ｂ）に示すように、設定コードごとに所定の延長時間が加算されるようにすることもある。
【００２１】
したがって、メインチップにシステムリセットが入ってから、ユーザモードが開始するまでの時間は、ランダムな遅延時間や延長時間が加算されている分、常に同じとならないことから、メインチップごとに（すなわち、個々の遊技機で）大当たりの発生時間が異なる状況にすることができるのである。
【００２２】
なお、メインチップには、リセットで初期化されないカウンタがあり、このカウンタの値を初期値として遅延時間をランダムに変動させている。
【００２３】
以上説明してきたとおり、本実施の形態のメインチップは、ユーザリセットではランダムなセキュリティチェック時間による遊技機ごとの変動性がないために大当たりのタイミングが予測され易いリスクを、システムリセットに切替える機能を利用して回避している。従来では、ウォッチドッグタイマーやイリーガル・アドレストラップなどの内部リセット要因についてはユーザリセットで対処していた状況を、ユーザの任意な選択（事前の設定）により、システムリセットでも対処できるという拡張性のあるメインチップを実現することができるようになった。
【００２４】
また、個々のメインチップのプログラム管理エリアに設定されたコードに応じてセキュリティチェック時間を延長させたり、更には当該コードに応じて異なる時間幅の中で電源投入ごとに異なるランダムな遅延時間を設定することもできるので、一つの遊技機の大当たり発生時間が不正者に解析されたとしても、別の遊技機に対する不正行為を阻止することを、上述したシステムリセットへの切替えによって容易に実現できるようになった。
【符号の説明】
【００２５】
１０  セキュリティモード
２０  ユーザモード
【図１】
2015073609.tif 000003
【図２】
2015073609.tif 000004
【図３】
2015073609.tif 000005
【図４】
2015073609.tif 000006