【課題】遊技機及びそのシステムにおける各基板間の通信において、データの盗聴、改ざんなどを防止するとともに、各基板間の通信手順を確立することによりデータ破損の恐れの無い安定した通信を提供する。
【解決手段】遊技機枠チップとデータ通信する遊技盤チップであって、当該遊技機枠チップは、当該遊技盤チップへのデータ要求を送信し、当該遊技盤チップは、当該遊技機枠チップを認証し、当該遊技機枠チップが認証された場合に、当該遊技機枠チップとの間の通信を開始させ、遊技情報をバッファに蓄積し、当該遊技情報をバックアップのために保持させ、当該データ要求に応答して、蓄積された当該遊技情報を当該遊技機枠チップへ送信し、当該データ要求に応答して、バックアップされた当該遊技情報を当該遊技機枠チップに再送信する。
前記バッファは、前記遊技情報送信手段によって送信された前記遊技情報が前記遊技機枠チップによって受信されたことが確認されるまで、送信された前記遊技情報を保持するものであって、
前記バックアップ手段は、前記バッファにバックアップする前記遊技情報を保持させるものである、請求項1に記載の遊技盤チップ。
前記遊技情報蓄積手段によって蓄積された前記遊技情報及び前記バックアップ手段によってバックアップされた前記遊技情報は、前記遊技盤チップにデータクリアを指示することによって、又は前記遊技機枠チップから所定の値を有する前記データ要求を前記遊技盤チップが受信することによって、消去される、請求項1から3のいずれか一つに記載の遊技盤チップ。
【発明を実施するための形態】
【0013】
遊技機システムの構成
図1は、本発明の実施例によるパチンコシステム100を示す。本実施例では、遊技機の一例として説明するが、通常のパチンコ機、封入式パチンコ機やパチスロ機などの他の遊技機に置き換えてもよい。
図1において、システム100は、2台のパチンコ機105、110、及び抽選媒体情報供給装置(玉貸し装置又はサンドとも呼ばれる)115を備える。
【0014】
パチンコ機105は、抽選の実行及び抽選結果の表示を行う遊技盤部120、抽選結果に応じて払出を行う払出部125、及び、抽選開始部130を備える。パチンコ機110は、パチンコ機105と同様な構成を備えている。パチンコ機105、110は、払出部125から実際の玉を排出することができ、又は排出せずに入賞などの際に玉を排出する画像を表示することができる。
【0015】
抽選媒体情報供給装置115は、購入したパチンコ玉の情報をパチンコ機105に供給する。抽選媒体情報供給装置115は、コイン投入部135を有し、遊技者によるコインの投入に応じて、抽選媒体であるパチンコ玉やメダルの数量の情報(クレジット情報とも称する)をパチンコ機105に供給する。抽選媒体が、紙幣やプリペイドカードなどの投入に応じて供給される場合、コイン投入部135は、紙幣やプリペイドカードなどの投入部とすることができる。コイン投入部135に投入されるものの例として、コイン、紙幣、プリペイドカードを挙げたが、これらは例示であり、他のものを投入対象にしてもよい。
【0016】
遊技者が抽選媒体情報供給装置115にコイン等を投入することによって、抽選媒体情報供給装置115は、投入されたコイン等に対応する抽選媒体情報をパチンコ機105に供給する。パチンコ機105は、抽選媒体情報に対応するパチンコ玉の数に応じて、遊技者にゲームを提供する。遊技者がパチンコ玉を操作して入賞させると、抽選開始部130がパチンコ機105に抽選を開始させる。
【0017】
上記の払出部125は、遊技盤部以外の機能を実現する一例であり、これに限定されない。遊技機における遊技盤部以外の機能は、遊技機の枠部分によって制御されてもよい。さらに、払出の制御は、遊技機の枠部分によって制御されてもよい。また、遊技盤部以外の部分は、一又は二以上の機能部(払出部、遊技機の枠部分など)から構成されてもよい。この場合、二以上の機能部の内部の構成は同様なものとすることができる。
【0018】
上記抽選媒体情報供給装置115は、外部装置の一例である、遊技機システムは、他の機能を実現する一又は二以上の外部装置を含んでいてもよい。
【0019】
遊技機システムにおける各プロセッサの構成
図2aは、本発明の実施例による遊技機における各プロセッサ200の概要を示した図である。遊技機システムにおいて、遊技盤部120、払出部125、抽選媒体情報供給装置115は、それぞれ独立した基板で構成されており、それぞれ独立したチップ(マイクロプロセッサ)を有する。遊技盤部120は、遊技盤チップ210によって制御される。遊技盤チップ210は、玉の検出、抽選、入賞時の払出の通知、画像や音などの演出制御などを行う。
【0020】
払出部125は、遊技機枠チップ220によって制御される。遊技機枠チップ220は、遊技盤チップ210が制御する処理以外である払出などの制御を行う。抽選媒体情報供給装置115は、パチンコ機105の外部に配置される外部装置であって、外部装置用チップ230によって制御される。遊技機枠チップ220は、外部装置用チップ230に接続されている。外部装置用チップ230は、クレジット情報を遊技機枠チップ220に供給する。
【0021】
遊技盤チップ210は、CPU212、通信制御回路214を有する。CPU212は、少なくとも抽選を制御する。遊技機枠チップ220は、CPU222、通信制御回路224を有する。外部装置チップ230は、外部装置制御回路232を有する。外部装置基板230は、さらに通信制御回路を有していてもよい。
【0022】
一つの実施例として、遊技盤チップ210は遊技盤制御基板に組み込まれることによって構成されていてもよい。また、遊技機枠チップ220は遊技機枠制御基板に組み込まれることによって構成されていてもよい。また、外部装置チップ230は外部装置基板に組み込まれることによって構成されていてもよい。
【0023】
一つの実施例として、遊技盤チップ、遊技機枠チップ及び外部装置チップの一部又は全部は、チップセットとして構成されていてもよい。
【0024】
通信制御回路214は、通信制御回路224と通信する。通信制御回路224は、通信制御回路214及び外部装置制御回路232と通信する。
【0025】
遊技盤チップの内部ブロックの構成
図2bは、本発明の実施例による遊技盤チップの内部ブロック図を示す。遊技機枠チップも同様の構成をとることができる。遊技盤チップは、CPU212、内蔵ROM252、内蔵RAM254、外部バスインタフェース256、クロック回路258、照合用回路260、固有情報262、演算回路264、リセットコントローラ266、指定エリア外走行禁止回路268、ウォッチドッグタイマ(WDT)270、乱数回路(RDG)272、フリーランカウンタ回路(FRC)274、タイマ回路(PTC)276、割込みコントローラ278、パラレル出力ポート280、アドレスデコード回路282、非同期シリアル通信回路(SCU)284、同期シリアル通信回路(SPI)286、非同期シリアル暗号通信回路(CSCU)288、パラレル入力ポート290、を有する。
【0026】
内蔵ROM252はユーザが作成したプログラム(ユーザプログラム)を格納し、内蔵RAM254はユーザプログラムのワークエリアとして使用される。
【0027】
外部バスインタフェース256は、アドレスバス、データバス、及び各制御信号の方向制御や、駆動能力を強化するバスインタフェースである。
【0028】
クロック回路258は、EX端子から入力されたクロックを2分周し、CPUコアや内部の各回路にシステムクロックとして供給する回路である。生成されたシステムクロックは、CLKO端子から外部に出力することができる。また、システムクロックを分周したクロックを出力することができる。
【0029】
照合用回路は260、外部の照合機と接続し、チップの照合(チップの真がんについてのチェック)を行う回路である。
【0030】
固有情報262は、複数の固有情報を含み、その中の特定情報は、ユーザプログラムから読み取ることができる。
【0031】
演算回路264は、乗算・除算を含む演算を行う回路である。
【0032】
リセットコントローラ266は、XSRST端子から入力された外部システムリセット、内部システムリセット、及び内部ユーザリセットを制御する回路である。内部システムリセットは、ウォッチドッグタイマタイムアウト信号又は指定エリア外走行禁止(IAT)発生信号を受けて発生する。システムリセットを受け付けるとCPUコアを含むすべての内部回路が初期化される。ウォッチドッグタイマ270は、タイムアウト信号を発生させる回路である。プログラム管理エリアは、内蔵ROM252内において、内蔵ROM252のユーザプログラムを実行するのに必要な情報を格納するエリアであるが、プログラム管理エリアを設定することによりタイムアウト時間を選択することができる。IAT回路268は、ユーザプログラムが指定エリア内で正しく実行されているかどうかを監視する回路である。指定エリア外でユーザプログラムが実行されると、IAT発生信号を出力する。
【0033】
乱数回路274は、乱数を発生させる回路であり、例えば8ビット乱数を6チャネル、16ビット乱数を4チャネル発生させることができる。
【0034】
フリーランカウンタ274は、カウント動作を行うものであり、例えば8ビットのカウンタ4チャネルとすることができる。
【0035】
タイマ回路276は、8ビットのプログラマブルタイマであり、8ビットのカウンタを3チャネル内蔵する。ユーザプログラムの設定により、リアルタイム割込み要求や時間計測をすることができる。
【0036】
割込みコントローラ278は、外部割込み要求や、内蔵の周辺回路(PTC、FRC、SCU、SPI、CSCU、RDG)からの割込み要求を制御する回路である。割込み要求をマスク制御することもできる。
【0037】
パラレル出力ポート280は、例えば8ビット幅の出力ポートとすることができ、他の機能との兼用端子であることができる。
【0038】
アドレスデコード回路282は、ユーザプログラムの外部デバイス用のデコード回路であり、チップセレクト信号を出力する。
【0039】
非同期シリアル通信(SCU)284は、外部の機器との非同期シリアル通信を行う回路であり、同期シリアル通信(SPI)286は、外部の機器との同期シリアル通信を行う回路である。非同期シリアル暗号通信(CSCU)288は、ECO遊技機用などの認証と非同期シリアル暗号通信を行う回路である。
【0040】
パラレル入力ポート290は、例えば6ビット幅の入力ポートとすることができ、一部の入力端子は他の機能との兼用端子とすることができる。
【0041】
遊技盤チップと遊技機枠チップの間の非同期シリアル暗号通信
図3aは、遊技盤チップ(又は遊技盤制御基板、以降は「遊技盤チップ」と記載)300と遊技機枠チップ(又は遊技機枠制御基板、以降は「遊技機枠チップ」と記載)310の間の非同期シリアル暗号通信の概要図であり、電源投入時、リセット発生時、又は断線復帰毎に実行される通信を示す。遊技盤チップ300と遊技機枠チップ310は、(1)接続確認通信320→(2)認証通信330→(3)リカバリ通信340→(4)遊技情報通信350の順で通信を行い、遊技情報通信350については、電源断、リセット、断線のいずれかの発生まで繰り返し行い、例えば一定周期で繰り返し行うことができる。各通信処理は、遊技機枠チップからの(要求)電文送信に対して、遊技盤チップが(応答)電文を返送する方式で行われる。接続確認通信320の開始は、ユーザプログラムの実行開始タイミングと非同期である。なお、遊技盤チップ及び遊技機枠チップは、販売する前の技術的な確認を行うための開発用チップと、販売し量産するための量産用チップがある。開発用チップは、認証通信330を行わず、暗号通信も行わない。遊技盤チップが開発用のチップ(又は量産用チップ)である場合は、遊技機枠チップも開発用のチップ(又は量産用チップ)である必要がある。
【0042】
一つの実施例の通信条件として、一次局(要求側)が遊技機枠チップ、二次局(応答側)が遊技盤チップの半二重通信であり、通信速度は38,400bpsであり、通信フォーマットは固定であってユーザプログラムでの設定は不要である。一つの実施例として、遊技盤チップと遊技機枠チップの間の通信は、RS422(差動)を用いて行い、この場合の通信用端子は、送信2線・受信2線の合計4端子を使用する。一つの実施例として、通信の制御自体はユーザプログラムを介さず自動的に行われ、通信状態の確認と遊技に関するデータのリード及びライトは、レジスタを介して行う。
【0043】
接続確認通信320は、電源投入時(リセット解除時)や断線からの復帰時において最初に行う通信であり、通信線の状態確認を行うため既定のデータの送受信を行い、通信回線の状態が正常と認識されるまで繰り返される。既定のデータの送受信において、送信されたデータが受信されない場合、通信回線を異常とすることができる。また、データ受信側において、差動信号の論理に矛盾がある場合、通信回線状態を異常とすることができる。
【0044】
認証通信330は、接続確認通信320で、通信線の状態が正常と判断された後に行う通信である。遊技盤チップと遊技機枠チップ間で相互認証を行う。認証に失敗した場合、以降の通信は実行されず、通信を再開させるには、認証に失敗したチップのリセット等の再起動処理が必要となる。
【0045】
リカバリ通信340は、認証通信330で、遊技機枠チップとの認証が正常と判断された後に行う通信である。これは、データを暗号して通信することも、又は暗号しないで通信することもできる。遊技機枠チップからのデータ要求に応答して、遊技盤チップは、直前の遊技情報通信350中に発生した断線又は電源断発生により送信未完了となった遊技情報を再送信する。送信未完了の遊技情報が無い場合においても、送信データが無いという情報を送信する。リカバリ通信において再送信されるこの遊技情報は、遊技機枠チップの受信完了が確認されるまで、遊技盤チップ側でバックアップされる。バックアップデータについては、次に説明する遊技情報通信350において、遊技盤チップは、遊技機枠チップからのデータ要求を受信し、遊技機枠チップの遊技情報の受信完了を確認することで、例えば通信のシーケンス番号を参照することで、送信完了したバックアップデータを削除する。なお、認証が正常と判断された後であるリカバリ通信340において、遊技盤チップは、遊技機枠チップからのデータ要求において、例えば遊技情報通信350の送受信周期や応答タイムアウトの既定時間などの遊技機枠チップが決定する設定データを、受信する。
【0046】
遊技情報通信350は、遊技に関するデータ(遊技情報、遊技状態情報および遊技機枠情報)の通信である。データは暗号して通信することも、又は暗号しないで通信することもでき、一定周期毎に遊技データの送受信を行う。周期は遊技機枠チップ側が決定することができる。電源断、リセット発生、断線検出時まで遊技情報通信350は繰り返される。ここで、遊技データに関する通信の概要図は、
図3bに示す通りであるが、遊技機枠チップは遊技情報通信(要求)において遊技機枠情報を送信し、遊技盤チップは遊技情報通信(応答)において遊技情報及び遊技状態情報を送信する。
【0047】
一つの実施例として、
図3cに示すように、遊技盤チップ300は、遊技機枠チップ310を認証する認証手段370、及び遊技機枠チップ300の認証が成功した場合に、遊技機枠チップ310との間の通信を開始させる通信開始手段372を有する。遊技機枠チップ310は、遊技盤チップ300へのデータ要求を送信するデータ要求手段360を有しており、これに対して遊技盤チップ300は、遊技情報380をバッファに蓄積する遊技情報蓄積手段384、及び遊技情報380をバックアップのために保持するバックアップ手段382を有しており、遊技機枠チップ310からのデータ要求に応答して、(イ)遊技情報蓄積手段384に蓄積された遊技情報380を遊技機枠チップ310へ送信する遊技情報通信手段388と、(ロ)バックアップ手段382によってバックアップされた遊技情報380を遊技機枠チップ310に再送信するリカバリ通信手段386と、を有する。さらに
図3dに示すように、遊技情報蓄積手段384は、その一部として、バックアップ手段382を含むことができる。
【0048】
非同期シリアル暗号通信回路の構成
図4は、非同期シリアル暗号通信回路(CSCU)288を示した図である。遊技機枠チップも同様の構成をとることができる。送信データレジスタ410は、入賞及び賞球を制御するための命令や、入賞情報及び賞球情報などのデータを表す情報である時系列情報をCSCUデータレジスタ(CCDT)450などから受け取る。CSCUデータレジスタ450、CSCU遊技状態情報レジスタm(MCIFm)458及びCSCU遊技機枠情報レジスタm(HFIFm)466は、ユーザプログラムが遊技に関するデータにアクセスするために準備されたレジスタであるが、各レジスタについては後で説明する。遊技盤チップは、送信データレジスタ410の情報及びCSCU遊技状態情報レジスタm(MCIFm)458の情報などを一つのデータセットとして、暗号回路414を経由して、又は経由しないで、送信用シフトレジスタ412に蓄積し、遊技機枠チップに送信する。送信データレジスタ410は、FIFOレジスタであることができ、又は、バッファレジスタであって、出力されたデータが遊技機枠チップによって受信されたことが確認されるまで、出力されたデータを保持するレジスタであることができる。ここで、遊技機枠チップからの受信の確認は、遊技盤チップが、遊技機枠チップからのデータ要求を受信することで行われ、例えば通信のシーケンス番号を参照することで行われる。遊技機枠チップからの受信の確認がなされると、出力された当該データは削除される。なお、CSCU送信FIFOカウントレジスタ(CCTFC)456は、送信FIFOにユーザプログラム側よりデータを送信する際に使用するFIFOバッファにセットされたデータのバイト数を示すレジスタである。一つの実施例としては、このFIFOにセットされているバイト数はCCTFCのビット1,0で表され、“00(初期値)”が0バイト、“01”が1バイト、“10”が2バイトを表す。
【0049】
遊技盤チップは、受信用シフトレジスタ422に、遊技機枠チップより受信した情報を蓄積し、当該情報が暗号化されているときは復号回路424で復号した後、暗号化されていないときは直接、受信データレジスタ420及びCSCU遊技機枠情報レジスタm(HFIFm)466などに蓄積する。
【0050】
認証回路430は、通信先のチップ(基板)及び外部装置を認証し、認証通信の制御を行う。認証には、例えば、MAC、MAIC方式などの任意の方式が用いられる。遊技盤チップ、例えば受信用シフトレジスタ422、が認証メッセージを遊技機枠チップから受信した後、遊技盤チップの認証回路は、認証メッセージのMAC計算などを行い認証メッセージが正しいか否かを判定する。判定が正しい場合、認証回路430は、通信先を認証する。正しくない場合、認証回路430は、通信先を認証しない。認証回路430は、判定結果を割込み制御回路468などの他の回路に通知することができる。
【0051】
CSCUステータス制御レジスタ(CCST)462は通信状態などを確認するためのレジスタであり、(a)応答タイムアウトエラーを示すビット(例えばCCSTのCCTO(ビット7))、(b)遊技機枠から受信する遊技情報に関するデータ通信の許可/不許可を示すビット(例えばCCSTのCOMEN(ビット6))、(c)カードユニット(抽選媒体情報供給装置115)と遊技機枠との認証状態を示すビット(例えばCCSTのCUHF(ビット5))、(d)遊技盤と遊技機枠との認証状態を示すビット(例えばCCSTのHFMC1、HFMC2(ビット4、3))、を含むことができる。通信状態及び認証状態については、ユーザプログラムからレジスタを介してリードすることで、例えば、(a)応答タイムアウトエラー、(b)通信許可状態、(c)認証状態(カードユニットと遊技機枠)、(d)認証状態(遊技盤と遊技機枠)、(e)リカバリ処理状態(リカバリレジスタにて記載)、を取得することができる。
【0052】
(a)応答タイムアウトは、遊技情報通信中、遊技機枠チップからのデータ送信が、既定時間以上途絶えた場合に発生する。遊技機枠チップは既定時間を決定し、リカバリ通信中に遊技盤チップは受信する。応答タイムアウトは、遊技盤チップのCSCUステータス制御レジスタの対応するビット(例えばCCTO)にて確認することができる。(b)通信許可状態については、遊技情報通信中、遊技機枠チップから遊技盤チップへ遊技情報に関するデータ通信の許可/不許可の状態が送信される。通信許可状態は、遊技盤チップのCSCUステータス制御レジスタの対応するビット(例えばCOMEN)にて確認することができる。(c)認証状態(カードユニットと遊技機枠)については、遊技情報通信中、遊技機枠チップから遊技盤チップへカードユニットと遊技機枠との認証状態が送信される。上記認証状態は、遊技盤チップのCSCUステータス制御レジスタの対応するビット(例えばCUHF)にて確認することができる。(d)認証状態(遊技盤と遊技機枠)は、遊技盤チップのCSCUステータス制御レジスタの対応するビット(例えばHFMC1、HFMC2)にて確認することができる。
【0053】
一つの実施例としては、(a)応答タイムアウトが発生した場合には当該ビット(例えばCCTO)は“1”となり、“0”(初期値)がライトされるとクリアされ、(b)通信許可の場合には当該ビット(例えばCOMEN)は“1”となり、不許可・断線を検知した場合に“0”(初期値)となり、(c)カードユニットと遊技機枠との認証が完了している場合に当該ビット(CUHF)は“1”となり、断線を検知した場合に“0”(初期値)となり、(d)認証通信が成功(次のリカバリ通信又は遊技情報通信を実行中)の場合に当該ビット(例えばHFMC1、HFMC2)は“11”となり、認証通信が失敗(通信停止)の場合に当該ビットは“10”となり、認証通信実行中(未完了)の場合に当該ビットは“01”となり、通信回線の正常接続を検出できない(断線状態と認識)場合は“00”(初期値)となる。
【0054】
一つの実施例としては、遊技盤チップは、遊技機枠チップを認証すると、CSCUステータス制御レジスタの対応するビット(例えばHFMC1、HFMC2)を参照し、所定の場合(認証通信330の成功を確認できた場合、例えばHFMC1、HFMC2が“11”の場合)のみリカバリ通信340及び遊技情報通信350を行うことができる。
【0055】
CSCU割込み制御レジスタ(CCIC)464は、割込み要求の許可/禁止を設定するレジスタであり、遊技盤チップは割込み要求の許可が設定された場合のみ、割込み制御回路468よりCSCI信号を割込みコントローラ278へ送信し、そこで割込み処理を起動することができる。
【0056】
一つの実施例として、(a)応答タイムアウトエラーを示すビットは、マスカブル割込みで処理され、又は割込みの設定がなされうる。割込み発生の条件は、応答タイムアウト状態のビットが“0”から“1”に変化した場合である。CSCU割込み制御レジスタ464の応答タイムアウト状態のビットに対応するビット(例えばCCICのCCTOIE(ビット7))に“1”が設定され、割込みコントローラ278にある割込みマスクレジスタ(図示せず)の、非同期シリアル暗号通信回路(CSCU)による割込み要因(CSCI)に対応するビットに“0”を設定されると、割込みの設定がなされうる。
【0057】
一つの実施例として、(b)遊技機枠から遊技情報に関するデータ通信の許可/不許可を示すビットは、マスカブル割込みで処理され、又は割込みの設定がなされうる。割込み発生の条件は、通信許可状態のビットが“0”から“1”又は“1”から“0”に変化した場合である。CSCU割込み制御レジスタ464の通信許可状態のビットに対応するビット(例えばCCICのCOMENIE(ビット6))に“1”が設定され、割込みコントローラ278にある割込みマスクレジスタ(図示せず)の、非同期シリアル暗号通信回路(CSCU)による割込み要因(CSCI)に対応するビットに“0”を設定されると、割込みの設定がなされうる。
【0058】
一つの実施例として、(c)カードユニットと遊技機枠との認証状態を示すビットは、マスカブル割込みで処理され、又は割込みの設定がなされうる。割込み発生の条件は、認証状態のビットが“0”から“1”又は“1”から“0”に変化した場合である。CSCU割込み制御レジスタ464の認証状態のビットに対応するビット(例えばCCICのCUHFIE(ビット5))に“1”が設定され、割込みコントローラ278にある割込みマスクレジスタ(図示せず)の、非同期シリアル暗号通信回路(CSCU)による割込み要因(CSCI)に対応するビットに“0”を設定されると、割込みの設定がなされうる。
【0059】
一つの実施例として、(d)遊技機枠と認証状態を示すビットは、マスカブル割込みで処理され、又は割込みの設定がなされうる。割込み発生の条件は、認証状態のビットの組み合わせが変化した場合である。CSCU割込み制御レジスタ464の認証状態のビットに対応するビット(例えばCCICのHFMCIE1、HFMCIE0(ビット4、3))に“11”が設定され、割込みコントローラ278にある割込みマスクレジスタ(図示せず)の、非同期シリアル暗号通信回路(CSCU)による割込み要因(CSCI)に対応するビットに“0”を設定されると、割込みの設定がなされうる。
【0060】
CSCUリカバリレジスタ(CCREC)460は、(e)リカバリ処理の状態を確認するためのレジスタである。リカバリ通信の状態は、レジスタ460の参照により把握することができる。例えばリカバリ通信の状態はレジスタ460のREST(ビット0)で参照することができ、リカバリ通信が完了した場合に当該ビットは“1”となり、断線を検知した場合および遊技機枠チップのリセット発生を検出した場合に、当該ビットは“0”(初期値)となる。CSCUクリアレジスタ(CCCLR)454は、リカバリデータをクリアするためのレジスタであり、例えば、レジスタへのライト時はリカバリデータのクリアを要求し、リード時はクリア処理状態を示す、ビットを含む。
【0061】
CSCUコマンドステータスレジスタ(CCCMS)452は、送信バッファのクリア及び送信状態を確認するためのレジスタである。例えばCSCUコマンドステータスレジスタ452は、送信バッファをクリアするためのビット(例えばCCCMSのCCTCL(ビット4))、CSCUデータレジスタ450のライト許可/禁止状態を示すビット(例えばCCCMSのCCTWE(ビット7))、及びCSCUデータレジスタ450へ2バイトライトしたことを示すビット(例えばCCCMSのCCTST(ビット0))、を含む。
【0062】
暗号通信ボーレート設定(KCSBS)442はプログラム管理エリア444内にあり、本設定が行われると、ボーレート生成回路440はボーレートを生成する。送信用シフトレジスタ412及び受信用シフトレジスタ422は、本クロックを使用して同期することができる。チップの内部システムクロック(SCLK)周波数より計算することで、通信ボーレートが38,400bpsとなる値をプログラム管理エリアの通信ボーレート設定(KCSBS)を行う。このとき、通信フォーマットは固定のため設定はない。例えば内部システムクロックが16MHzの場合の通信ボーレート設定値は、
として計算し、設定することができる。上記実施例のように設定値が整数とならない場合は、通信対象となる遊技機枠チップ側の設定値も考慮して通信ボーレート値を決定することができる。
【0063】
CSCUデータレジスタ450は、入賞情報などの遊技情報がライトされ、遊技盤チップは、ライトされたデータを遊技情報通信時に、送信データレジスタなどを経由して、遊技盤チップから遊技機枠チップへ送信する。なお、遊技情報は可変長データであることができる。遊技盤チップは、遊技機枠チップへの送信が完了するまで、例えばバックアップ用のレジスタやメモリなど(図示せず)に遊技情報をバックアップし、障害発生により送信未完了となったデータについては、次回のリカバリ通信にて遊技機枠チップへ再送する。バックアップについては、独立したレジスタやメモリなどで行われるのではなく、送信用のバッファであって、出力されたデータが遊技機枠チップによって受信されたことが確認されるまで保持されるバッファにおいて行われることもできる。遊技情報通信中に遊技機枠チップからのデータ要求を受信して、例えば通信のシーケンス番号を参照し、遊技盤チップは遊技機枠チップがデータを受信したことを確認してバックアップしたデータは消去される。
【0064】
一つの実施例として、遊技情報のライト(S500)手順を
図5に示す。当該手順においては、CSCUコマンドステータスレジスタ452のCSCUデータレジスタ450のライト許可/禁止状態を示すビットを確認して(S505)許可状態である場合(例えばCCCMSのCCTWE(ビット7)=“1”)に、2バイト単位でライトを行い(S510)、その後CSCUコマンドステータスレジスタ452のCSCUデータレジスタへ2バイトライトしたことを示すビットを確認し(S515)(例えばCCCMSのCCTST(ビット0)=“1”)、2バイトライトが完了していた場合は、終了となる(S520)。
【0065】
一つの実施例として、遊技情報のライト状態を初期化する(S600)手順を
図6に示す。2バイト単位の遊技情報において、最初の1バイトをライト直後に障害発生(リセット、電源断)した場合などに、遊技情報のライトが不完全に終了されうるため、不完全となった遊技情報のライトはクリアされうる。当該手順においては、CSCU送信FIFOカウントレジスタ456の値を確認し(S605)(例えばCCTFCのビット1、0が“00”以外の場合は不完全)不完全である場合、CSCUコマンドステータスレジスタ452の送信バッファのクリアするためのビットをライトし(S610)(例えばCCCMSのCCTCL(ビット4)=“1”をライト)、終了となる(S615)。
【0066】
CSCUデータレジスタ450に書き込まれた遊技情報は、遊技情報通信で遊技機枠チップへ送信されるまで、遊技盤チップ側にバックアップされる。遊技盤チップは、ユーザプログラムがライトした遊技情報がバックアップされて残っている状態で、当該遊技情報を消去することができる。消去するデータの対象は、バックアップ用のデータを含む送信用のバッファ(又は送信データレジスタ)のデータであるか、又はバックアップ用のデータ及び送信用のバッファ(又は送信データレジスタ)のデータである。例えば、RAMクリアスイッチなどによる遊技台の初期化が必要となる場合に、実施されうる。一つの実施例として消去する方法は、(イ)遊技盤チップ単体での遊技情報消去、(ロ)遊技機枠チップからの要求による遊技情報消去、の2つがある。(イ)については、遊技機枠チップとの通信回線が未接続の状態で行う遊技情報の消去方法であり、例えばCSCUクリアレジスタ454の当該ビットであるCLR(ビット0)に“1”(クリア)をライトすることで、遊技盤チップ側に残っている遊技情報を消去することができ、消去完了は同ビット(CLR)が“1”(クリア完了)であることにより、確認することができる。その他に例えば、遊技盤チップに所定のデータをリードさせることで、遊技盤チップ側に残っている遊技情報を消去することができる。遊技情報の消去は、リセット解除後一回のみ行われうる。(ロ)については、遊技機枠チップとの通信回線が接続の状態で行う遊技情報の消去方法である。リカバリ通信(要求)時、遊技機枠チップからの指示により、遊技盤チップ側に残っている遊技情報を消去する。なお、この方法において、ユーザプログラムが行う処理はない。
【0067】
CSCU遊技状態情報レジスタm458は、遊技機枠と共有する遊技状態情報を送信するためのレジスタである。遊技盤チップの現在状態などの遊技状態情報のライトに使用される。なお、遊技状態情報は固定長データであることができる。遊技盤チップは、ライトされたデータを遊技情報通信時に、遊技盤チップから遊技機枠チップへ送信する。レジスタ458へのライトは常に行えるが、遊技情報通信を行っていない場合には、遊技機枠チップへはデータ送信されない。
【0068】
遊技状態情報は、遊技情報通信中に遊技盤チップから遊技機枠チップへ送信されるが、CSCU遊技状態情報レジスタm458へ遊技状態情報データをライトすると、一定周期で遊技機枠チップから送信されてくる遊技情報通信要求データの応答として、レジスタ458にライトされた値を、自動的に遊技機枠チップへ送信する。認証通信及びリカバリ通信が完了していない(遊技情報通信を開始していない)場合は、遊技状態情報は遊技機枠側へ送信されないが、レジスタ458へのライト自体は行うことができる。
【0069】
CSCU遊技機枠情報レジスタm466は、遊技機枠と共有する遊技機枠情報を受信するためのレジスタである。遊技機枠チップの現在状態などの遊技機枠情報のリードに使用される。なお、遊技機枠情報は固定長データであることができる。遊技盤チップは、遊技情報通信時に、遊技機枠チップから遊技盤チップへ送信されるデータを本レジスタにライトする。レジスタ466へのリードは常に行えるが、遊技情報通信を行っていない場合には、遊技機枠チップの最新データでないことがありうる。
【0070】
遊技機枠情報は、遊技情報通信中に遊技機枠チップから遊技盤チップへ送信されるが、CSCU遊技機枠情報レジスタm466をリードすると、一定周期で遊技機枠チップから送信されてくる遊技機枠情報を取得することができる。認証通信及びリカバリ通信が完了していない(遊技情報通信を開始していない)場合は、遊技機枠情報は遊技盤側へ送信されてこないため、レジスタ466のリード自体は行うことができるが、最新の遊技機枠情報ではない場合がありうる。
【0071】
遊技盤チップと遊技機枠チップの間のデータ通信方法
また一つの実施例として、遊技盤チップ700と遊技機枠チップ710の間のデータ通信方法を
図7aに示す。まず、遊技機枠チップ710は、遊技盤チップ700へのデータ要求を送信するデータ要求ステップを実行する(S720)のに対し、遊技盤チップ700は、これに応答するデータ応答ステップを実行する(S722)。この動作を基本として遊技機枠チップが主局に対し遊技盤チップが従局として基本動作を行う。以下データ要求ステップ(S720)及びデータ応答ステップ(S722)において、遊技盤チップ700及び遊技機枠チップ710は、(1)接続確認通信ステップを実行し(S730)、(2)認証通信ステップを実行し(S740)、(3)リカバリ通信ステップを実行し(S750)、(4)遊技情報通信ステップ(S760)を実行する。ここで、遊技盤チップ700はユーザプログラム側から遊技情報770を受け取ると、遊技情報770をバックアップのために保持する(S752)と共に、遊技情報770をバッファ又はFIFOに蓄積する(S762)。又は、
図7bに示すように、遊技盤チップ700は、遊技情報770を受け取ると、遊技情報770をバッファに蓄積し(S762)、データ応答ステップ(S722)に応答して、遊技情報通信ステップ(S760)によって遊技情報が送信されると、送信された当該遊技情報が遊技機枠チップによって受信されたことが確認されるまで、送信された当該遊技情報を保持する(S752)。
【0072】
接続確認通信ステップ(S730)は、電源投入時(リセット解除時)や断線からの復帰時において最初に実行される。本ステップ(S730)において、遊技盤チップ700は、通信線の状態確認を行うため既定のデータの送受信を行い、送信されたデータが受信されない場合に通信回線を異常とする、又はデータ受信側において、差動信号の論理に矛盾がある場合に通信回線状態を異常とする。いずれの場合も通信回線の状態が正常と認識されるまで繰り返し実行される。
【0073】
認証通信ステップ(S740)は、接続確認通信ステップ(S730)において通信線の状態が正常と判断された後に実行される。本ステップ(S740)において、遊技盤チップ700は、遊技機枠チップ710を認証する認証ステップを実行し(S742)、認証が正常と判断された場合に、遊技機枠チップ710との間の通信を開始させる通信開始ステップ(S744)を実行する。
【0074】
リカバリ通信ステップ(S750)は、通信開始ステップ(S744)後に、実行される。本ステップ(S750)において、遊技盤チップ700は、バックアップステップ(S752)によってバックアップされた遊技情報770を、遊技機枠チップ710に再送信する。再送信の必要な遊技情報770が無い場合は、送信データが無いという情報を送信する。
【0075】
遊技情報通信ステップ(S760)は、電源断、リセット発生、断線検出時まで繰り返し実行される。本ステップ(S760)において、遊技盤チップ700は、遊技情報蓄積ステップ(S762)によって蓄積された遊技情報770を、遊技機枠チップ710へ送信する。また、本ステップ(S760)において、遊技盤チップ700は、バックアップステップ(S752)によってバックアップされた遊技情報770のうち、遊技機枠チップの受信が確認されたデータを削除する。
【0076】
以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。
【0077】
以上に説明してきた各実施例は、組み合わせることが可能である。これにより、二以上の実施例を組み合わせて一つの実施例にすることができる。
【0078】
以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。