Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4300263B2 - Payout command transmission / reception device for gaming machine - Google Patents
[go: Go Back, main page]

JP4300263B2 - Payout command transmission / reception device for gaming machine - Google Patents

Payout command transmission / reception device for gaming machine Download PDF

Info

Publication number
JP4300263B2
JP4300263B2 JP2003061886A JP2003061886A JP4300263B2 JP 4300263 B2 JP4300263 B2 JP 4300263B2 JP 2003061886 A JP2003061886 A JP 2003061886A JP 2003061886 A JP2003061886 A JP 2003061886A JP 4300263 B2 JP4300263 B2 JP 4300263B2
Authority
JP
Japan
Prior art keywords
control device
command
payout
data
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003061886A
Other languages
Japanese (ja)
Other versions
JP2004202186A (en
Inventor
高明 市原
明伸 寺部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Daiichi Co Ltd
Original Assignee
Daiichi Shokai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Daiichi Shokai Co Ltd filed Critical Daiichi Shokai Co Ltd
Priority to JP2003061886A priority Critical patent/JP4300263B2/en
Publication of JP2004202186A publication Critical patent/JP2004202186A/en
Application granted granted Critical
Publication of JP4300263B2 publication Critical patent/JP4300263B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、遊技制御を総括的に行うメイン制御装置と、遊技価値媒体を払い出す遊技価値媒体排出装置と、メイン制御装置から指令される払出数データに従った払出数の遊技価値媒体を払い出すように遊技価値媒体排出装置を制御するサブ制御装置とを備えた遊技機の払出コマンド送受信装置に関する。
【0002】
【従来の技術】
従来より、遊技制御を総括的に行うメイン制御装置と、遊技価値媒体を払い出す遊技価値媒体排出装置と、メイン制御装置から指令される払出数データに従った払出数の遊技価値媒体を払い出すように遊技価値媒体排出装置を制御するサブ制御装置(払出制御装置)とを備えた遊技機は周知である。
【0003】
図12は、従来のメイン制御装置と払出制御装置とのデータ通信に関わる制御系(払出コマンド送受信装置)の一形態を示すブロック図である。メイン制御装置2から払出制御装置3への指令信号線は、払出数データを指令するための8ビットで構成されたD0〜D7の信号線と、払出制御装置3へ送信データを認識させるためのチップセレクト信号線(CE信号)と、払出制御装置3に送信データの読み込みタイミングであることを認識させるためのWR信号線とにより構成される。
【0004】
また、図13は、従来のメイン制御装置から払出制御装置への指令信号送信を示すタイムチャートである。まず、CE信号がハイレベルにされ、引き続いてD0信号〜D7信号による払出数データ(払出数コマンド)が送信され、D0信号〜D7信号と同期してWR信号(ストローブ信号)がハイレベルにされる。
【0005】
払出制御装置は、CE信号のハイレベルによりINT割込が発生して払出数データを受け付ける状態となり、WR信号の立上りタイミングでD0信号〜D7信号による払出数データを読み込み、INT割込による処理ルーチンから抜ける。この後、WR信号がローレベルにされ、さらに、所定タイミング後に、CE信号がローレベルにされる。
【0006】
図14は、メイン制御装置から払出制御装置へ送信される従来の払出数データ(払出数コマンド)の内容を表形式で示す図である。払出数データは、1コマンド1バイトで構成される。払出数データで指定される払出数は、賞球1個払出し〜賞球15個払出しまでの15種類である。なお、図14では、D0信号〜D7信号に対応するビット0〜ビット7の内容と、これらを16進数表現したものを示している。なお、払出数データにおいて、実際に払出数の指定に関わっているのは下位4ビット(ビット0〜ビット3)であり、上位4ビット(ビット4〜ビット7)は全て「0」に固定である。
【0007】
ところで、メイン制御装置から払出制御装置に対して指令される実際の払出数よりも多い数の賞球の払い出しを得ようと企てる不正行為が行われる可能性がある。上記従来の払出コマンド送受信装置に対しては、例えば、メイン制御装置と払出制御装置とを接続する信号線のうち払出数に関わるD0〜D4の信号線を中途において、不正にあるビットに対応する信号線(例えば、D3信号線)をハイレベルにプルアップして固定された場合、図14から明らかなように、常に、最低でも9個以上の賞球払い出しが払出制御装置に指令されてしまうことになる(賞球1個払出しから賞球7個払出しまでの払出数データが不正の影響を受ける結果)。一例として、払出制御装置に対して指令された払出数データが賞球4個払出し(「00000100」)である場合、不正によりD3信号(3ビット目)がハイレベルに固定されている結果、賞球12個払出し(「00001100」)が払出制御装置に指令されてしまうことになる。従って、通常よりも多くの賞球の払出しを行ってしまう虞がある。よって、払出コマンド送受信装置においては、遊技価値媒体の払い出し制御に直接関わるため、このような不正行為を防止する対策が必要となる。
【0008】
【発明が解決しようとする課題】
本発明の目的は、メイン制御装置からサブ制御装置に対して払出数データを指令するための複数の信号線に対して、その一部又は全てをハイレベルに固定、又はローレベルに固定して払出数データを改ざんする不正を異常として検出することができる遊技機の払出コマンド送受信装置を提供することにある。
【0009】
【課題を解決するための手段】
請求項1に係る遊技機の払出コマンド送受信装置は、遊技制御を総括的に行うメイン制御装置と、遊技価値媒体を払い出す遊技価値媒体排出装置と、前記メイン制御装置から指令される払出数データに従った払出数の遊技価値媒体を払い出すように前記遊技価値媒体排出装置を制御するサブ制御装置とを備え、前記メイン制御装置は、1つの払出に対して、払出数データと該払出数データと特定の相関関係にある確認データとを送信し、前記サブ制御装置は、前記払出数データと前記確認データとを受信すると、前記相関関係に基いて前記払出数データと前記確認データとの整合性を確認し、整合性が確認された場合に前記払出数データを払出数コマンドとして記憶するものであって、前記メイン制御装置は、前記確認データの送信時および検査コマンドの送信時から予め定めた監視期間に前記サブ制御装置からACK信号が返信されない場合、前記サブ制御装置に対して前記検査コマンドを送信する検査コマンド送信手段を備え、前記サブ制御装置は、前記整合性の確認により前記払出コマンドを記憶した場合および前記検査コマンドを記憶した場合に、前記メイン制御装置に対して前記ACK信号を送信するACK信号送信手段と、前記メイン制御装置から送信された前記検査コマンドを連続して受信すると異常と判定して異常報知するACK信号線異常報知手段と、を備えたことを特徴とする。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。図1は、本発明の実施形態に関わる遊技機に配備されたメイン制御装置と払出制御装置とのデータ通信に関わる制御系統(払出コマンド送受信装置1)の要部ブロック図である。メイン制御装置2は、遊技制御を総括的に行うもので、また、払出制御装置(請求項1に記載のサブ制御装置に相当する)3は、メイン制御装置2から指令される払出数データに従った払出数の遊技価値媒体(例えば、賞球或いはメダル)を払い出すように遊技価値媒体排出装置4を制御するものである。
【0012】
メイン制御装置2は、図示しないメイン制御基板に配備される。メイン制御装置2は、遊技(例えば、パチンコ遊技)に関わる総括的な制御を行うための処理実行手段としてのメインCPUと、メインCPUが実行するための遊技全体に関わる制御プログラムが格納されているROMと、随時読み出しおよび書き込みが可能なRAMと、メインCPUが周辺機器との間でデータ通信を行うための通信インタフェース等を含んで構成されている。なお、メイン制御装置14の具体的な構成については図示を省略する。メイン制御装置14は、入賞態様(例えば、各入賞領域に配備された各入賞検出スイッチによる検出信号)に対応する遊技価値媒体の払出数コマンド(払出数データ)を払出制御装置3に指令送信する。
【0013】
払出制御装置3は、制御処理実行手段としてのサブCPUと、サブCPUが行う各制御プログラムを格納したROMと、随時データの読み出し並びに書き込みが可能なRAMと、メイン制御装置2とデータ通信を行うための通信インタフェースと、入力インタフェース回路と、出力インタフェース回路により構成されている。なお、払出制御装置3の具体的な内部構成については図示を省略する。
【0014】
払出制御装置3は、前述のメイン制御装置2に対して通信接続されている他、賞品球の払出しを行う遊技価値媒体排出装置(例えば、モータ等により駆動される賞球排出装置)4、遊技価値媒体排出装置4から排出された遊技価値媒体を検出するための排出遊技価値媒体センサ(例えば、排出球センサ)5に接続されている。
【0015】
メイン制御装置2から払出制御装置3への指令信号線は、払出数データを指令するための8ビットで構成されたD0〜D7の信号線と、払出制御装置3へ送信データの1バイト目か2バイト目かを認識させるためのセレクト信号線(SEL信号)と、払出制御装置3に送信データの読み込みタイミングであることを認識させるためのWR信号線とにより構成される。また、本実施形態では、払出制御装置3からメイン制御装置2への応答のためのACK信号線を設けてあり、払出制御装置3が払出数データを読み込んだ場合に、メイン制御装置2に対してACK信号(承認信号)が送信される。
【0016】
また、本実施形態においては、メイン制御装置2から払出制御装置3へ送信される払出数データ(払出数コマンド)を2バイトで構成してあり、メイン制御装置2は、1回目に送信する1バイト目のデータを払出数とし、2回目に送信する2バイト目のデータは1バイト目のデータをビット反転したデータとしている。
【0017】
図2は、メイン制御装置2から払出制御装置3へ送信される払出数データ(払出数コマンド)の内容を表形式で示す図である。払出数データは、1コマンド2バイトで構成される。払出数データで指定される払出数は、賞球1個払出し〜賞球15個払出しまでの15種類である。なお、図2では、D0信号〜D7信号に対応するビット0〜ビット7の内容と、これらを16進数表現したものを示している。なお、払出数データの1バイト目において、実際に払出数の指定に関わっているのは下位4ビット(ビット0〜ビット3)であり、上位4ビット(ビット4〜ビット7)は全て「0」に固定である。
【0018】
また、図3は、払出コマンド送受信装置1におけるメイン制御装置2から払出制御装置3への指令信号送信を示すタイムチャートである。メイン制御装置2から払出制御装置3への払出数データの送信手順は、次の通りである。まず、D0信号〜D7信号による払出数データの1バイト目(払出数コマンド)が送信され、D0信号〜D7信号による払出数データの1バイト目と同期してWR信号(ストローブ信号)がハイレベルにされる。なお、払出数データの1バイト目及びWR信号の送信時間は、3.9msとしてある。
【0019】
払出数データの1バイト目及びWR信号の送信時から3.9ms経過時に、払出数データの1バイト目の送信が完了し、払出数データの1バイト目の送信完了と同期してWR信号(ストローブ信号)がローレベルにされる。なお、WR信号の送信停止時間は、3.9msとしてある。
【0020】
払出数データの1バイト目の送信完了及びWR信号の送信停止時から3.9ms経過時に、SEL信号がハイレベルにされ、D0信号〜D7信号による払出数データの2バイト目が送信され、SEL信号及びD0信号〜D7信号と同期してWR信号(ストローブ信号)がハイレベルにされる。なお、払出数データの2バイト目、SEL信号及びWR信号の送信時間は、3.9msとしてある。
【0021】
払出数データの2バイト目、SEL信号及びWR信号の送信時から3.9ms経過時に、払出数データの2バイト目の送信が完了し、払出数データの2バイト目の送信完了と同期してSEL信号及びWR信号がローレベルにされる。なお、WR信号の送信停止時間は、1ms〜13msとしてある。
【0022】
払出制御装置3は、所定周期毎(実施形態では2ms毎)に発生するタイマ割込により、WR信号、SEL信号及び払出数データ(D0〜D7)の状態を監視している。なお、払出制御装置3が行う払出数データの読み込みについては後述する。払出制御装置3は、払出数データの読み込みを行うと、メイン制御装置2に対してACK信号を送信する。なお、ACK信号の送信時間は、12msとしてある。メイン制御装置2は、ACK信号を受けると指令信号送信が正常であると判定し、次の払出制御装置3への払出数データの送信を行う。
【0023】
以上のように構成された実施形態の遊技機の払出コマンド送受信装置における払出制御装置3のサブCPUが実行するコマンド受信処理、コマンド異常判定&読込処理、コマンド受信完了処理について順次説明する。以下に説明するコマンド受信処理、コマンド異常判定&読込処理、コマンド受信完了処理の各処理は、2ms毎に発生するタイマ割込によって順次実行される処理である。
【0024】
図4乃至図5は、サブCPUが実行するコマンド受信処理のサブルーチンを示すフローチャートである。メイン制御装置2から1バイト単位で送信される全2バイト構成の払出数データ(コマンドデータ)の取得について概略で説明すると、1バイト目のコマンドデータは、WR信号をタイマ割込周期でサンプリングした結果が、「0・0・1」、さらに「0・0・1・1」となったときの2つのタイミングで、その時のSEL信号が何れも「0(オフ)」であるときに読み込み、2つの読み込んだ値が同じならば取得する。また、2バイト目のコマンドデータは、WR信号をタイマ割込周期でサンプリングした結果が、「0・0・1」、さらに「0・0・1・1」となったときの2つのタイミングで、その時のSEL信号が何れも「1(オン)」であるときに読み込み、2つの読み込んだ値が同じならば取得する。
【0025】
サブCPUは、コマンド受信処理を開始すると、サブCPUは、まず、SEL信号及びWR信号についてのサンプリング履歴を記憶する処理を行う。まず、サブCPUは、8ビットで構成されるSEL判定レジスタSELH(以下、単にSELHという)の内容を1ビット右にシフトする(ステップA01)。次いで、サブCPUは、SEL信号がオフであるか否かを判別する(ステップA02)。SEL信号は、メイン制御装置2から1バイト単位で送信される全2バイト構成の払出数データの1バイト目であるか2バイト目であるかをサブ制御装置3に識別させるための識別信号である。
【0026】
サブCPUは、SEL信号がオフである場合には、SELHの0ビット目に0をセットし(ステップA03)、ステップA05に進む。一方、SEL信号がオフでない場合には、即ち、SEL信号がオンである場合には、SELHの0ビット目に1をセットし(ステップA04)、ステップA05に進む。
【0027】
ステップA05に進むと、サブCPUは、次に、8ビットで構成されるWR判定レジスタWRH(以下、単にWRHという)の内容を1ビット右にシフトする(ステップA05)。次いで、サブCPUは、WR信号がオフであるか否かを判別する(ステップA06)。WR信号は、メイン制御装置2から1バイト単位で送信される全2バイト構成の払出数データの1バイト目のデータ或いは2バイト目のデータの読込タイミングをサブ制御装置3に認識させるための読込信号である。
【0028】
サブCPUは、WR信号がオフである場合には、WRHの0ビット目に0をセットし(ステップA07)、ステップA09に進む。一方、WR信号がオフでない場合には、即ち、WR信号がオンである場合には、WRLHの0ビット目に1をセットし(ステップA08)、ステップA09に進む。
【0029】
以上のようにして、SEL信号及びWR信号についてのサンプリング履歴を記憶する。ステップA09に進むと、サブCPUは、WRHの下位4ビットをXレジスタ(演算等に用いる汎用レジスタで8ビット構成)にコピーする(ステップA09)。なお、Xレジスタの内容は、WRHの下位4ビットの内容を「****」で表すとすると、「0000****」となる。
【0030】
サブCPUは、ステップA10に進み、Xレジスタの内容(ここで問題とするのはXレジスタの下位4ビットであるので図4では単に「0001」として表している)が、「0001」であるか否かを判別する(ステップA10)。Xレジスタの内容が、「0001」である場合、図3のタイムチャートのWR信号の立上りを検出したことになる。この場合、サブCPUは、次に、SEL信号がオフであるか否かを判別することによって(ステップA11)、メイン制御装置2から送信される払出数データの1バイト目のデータか2バイト目のデータかを判別する。
【0031】
ステップA11においてSEL信号がオフである場合は(図3参照)、メイン制御装置2から送信される払出数データの1バイト目のデータであることになり、サブCPUは、8ビット(1バイト)で構成されたD0信号〜D7信号を1回目コマンド取得エリアに記憶し(ステップA12)、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。
【0032】
一方、ステップA11においてSEL信号がオフでない場合は、即ち、SEL信号がオンである場合は(図3参照)、メイン制御装置2から送信される払出数データの2バイト目のデータであることになり、サブCPUは、8ビット(1バイト)で構成されたD0信号〜D7信号を1回目コマンド取得エリアに記憶し(ステップA13)、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。
【0033】
サブCPUは、1回目の払出数データの1バイト分のデータの取得を終えると、次のタイマ割込発生で2回目の払出数データの1バイト分のデータの取得を行うことになる。即ち、次のタイマ割込発生で、WR信号が前回タイマ割込に続けてオンである場合、ステップA08にてその履歴がWRHに記憶される。その結果、サブCPUは、ステップA10においては、Xレジスタの内容が「0001」ではなく、偽と判別する。次いで、ステップA14に進み、Xレジスタの内容が「0011」であるか否かを判別する(ステップA14)。Xレジスタの内容が、「0011」である場合、図3のタイムチャートのWR信号の立上りに続くオン状態を検出したことになる。この場合、サブCPUは、次に、SEL信号がオフであるか否かを判別することによって(ステップA15)、メイン制御装置2から送信される払出数データの1バイト目のデータか2バイト目のデータかを判別する。
【0034】
ステップA15においてSEL信号がオフである場合は(図3参照)、メイン制御装置2から送信される払出数データの1バイト目のデータであることになり、サブCPUは、8ビット(1バイト)で構成されたD0信号〜D7信号を2回目コマンド取得エリアに記憶し(ステップA16)、ステップA17に進む。ステップA17に進むと、サブCPUは、1回目に取得した払出数データの1バイト目のデータの内容と、2回目に取得した払出数データの1バイト目のデータの内容とが同じであるか否かを判別する(ステップA17)。サブCPUは、1回目と2回目とが同じ内容である場合、読取ミスなしと判定し、取得した払出数データの1バイト目のデータを1バイト目コマンド取得エリアに記憶し(ステップA18)、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。
【0035】
一方、ステップA15においてSEL信号がオフでない場合は、即ち、SEL信号がオンである場合は(図3参照)、メイン制御装置2から送信される払出数データの2バイト目のデータであることになり、サブCPUは、8ビット(1バイト)で構成されたD0信号〜D7信号を2回目コマンド取得エリアに記憶し(ステップA19)、ステップA20に進む。サブCPUは、ステップA20に進むと、1回目に取得した払出数データの2バイト目のデータの内容と、2回目に取得した払出数データの2バイト目のデータの内容とが同じであるか否かを判別する(ステップA20)。サブCPUは、1回目と2回目とが同じ内容である場合、読取ミスなしと判定し、取得した払出数データの2バイト目のデータを2バイト目コマンド取得エリアに記憶し(ステップA21)、取得済フラグに「1(データ取得済)」をセットし(ステップA22)、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。
【0036】
なお、ステップA17及びステップA20において、判定結果が偽の場合には、即ち、1回目に取得した払出数データの1バイト目分のデータの内容と、2回目に取得した払出数データの1バイト分のデータの内容とが同じでない場合には、データ取り込み時にノイズ等により読取ミスが発生したと判定し、記憶した1バイト分のデータの正規の取得は行わず、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。また、WR信号の履歴が、言い換えれば、Xレジスタの内容が「0001」でなく、「0011」でもない場合には、ステップA10を偽、ステップA14を偽と判別し、コマンドデータの取得は行わず、今回のコマンド受信処理を終えてタイマ割込処理ルーチンにリターンする。
【0037】
以上に説明したコマンド受信処理において、取得済フラグに「1」がセットされた場合に、メイン制御装置2から1バイト単位で送信される全2バイト構成の払出数データがサブ制御装置3に取得されたことになる。
【0038】
次に、コマンド異常判定&読込処理について説明する。図6は、サブCPUが実行するコマンド異常判定&読込処理のサブルーチンを示すフローチャートである。払出数データ(コマンドデータ)の読込について概略で説明すると、コマンドバッファは1バイトとしてある。コマンドのバッファリングは、SEL信号をタイマ割込でサンプリングした結果が、「0・0・1・1」となったとき、かつコマンドデータを2バイト分取得していて、さらに整合性が確認されたとき行い、1バイト目のコマンドを格納する。また、整合性の確認は、1バイト目のデータと2バイト目のデータのビット毎の排他的論理和をとった値が、16進数表現で「FFH」であるか否かで行い、結果が「FFH」であれば正常と判定する。
【0039】
サブCPUは、コマンド異常判定&読込処理を開始すると、まず、SELHの下位4ビットをXレジスタ(演算等に用いる汎用レジスタで8ビット構成)にコピーする(ステップA31)。なお、Xレジスタの内容は、SELHの下位4ビットの内容を「****」で表すとすると、「0000****」となる。
【0040】
サブCPUは、ステップA32に進み、Xレジスタの内容(ここで問題とするのはXレジスタの下位4ビットであるので図6では単に「1100」として表している)が、「1100」であるか否かを判別する(ステップA32)。Xレジスタの内容が、「1100」でない場合、サブCPUは、ステップA32を偽と判別し、この場合には、実質的なコマンド異常判定&読込処理は行われない。
【0041】
一方、ステップA32において、Xレジスタの内容が、「1100」である場合、図3のタイムチャートのSEL信号の履歴が「オン、オン、オフ、オフ」であることを検出したことになる。この場合、サブCPUは、次に、取得済フラグに1(データ取得済を表す)がセットされているか否かを判別する(ステップA33)。なお、取得済フラグの初期値は「0」であり、前述のコマンド受信処理において、1バイト目のコマンドデータ及び2バイト目のコマンドデータが取得された場合にのみ、「1」がセットされるフラグである。取得済フラグに1がセットされていない場合、即ち、取得済フラグの値が0の場合には、サブCPUは、ステップA33を偽と判別し、今回のコマンド異常判定&読込処理を終えてタイマ割込処理ルーチンにリターンする。この場合も、実質的なコマンド異常判定&読込処理は行われない。
【0042】
一方、ステップA33にて、取得済フラグに1(データ取得済)がセットされている場合、サブCPUは、ステップA34に進み、1バイト目コマンド取得エリアの内容(1バイト目のコマンドデータ)をAレジスタ(演算等に用いる汎用レジスタで8ビット構成)にセットし(ステップA34)、次いで、2バイト目コマンド取得エリアの内容(2バイト目のコマンドデータ)をBレジスタ(演算等に用いる汎用レジスタで8ビット構成)にセットし(ステップA35)、Aレジスタの内容とBレジスタの内容との排他的論理和をとり、排他的論理和の結果をYレジスタ(演算等に用いる汎用レジスタで8ビット構成)に格納する(ステップA36)。
【0043】
1回目に送信された1バイト目のコマンドデータは払出数であり、2回目に送信する2バイト目のコマンドデータは1バイト目のデータをビット反転したデータである。このため、送信されたコマンドデータが正常であれば、1バイト目と2バイト目との排他的論理和は、ビット表現で「11111111」、16進数表現では「FFH」となる。サブCPUは、ステップA37に進み、Yレジスタの内容が「FFH」であるか否か、即ち、取得したコマンドデータが正常であるか否かを判別する(ステップA37)。
【0044】
ステップA37にて、取得したコマンドデータが正常であれば、サブCPUは、1バイト目コマンド取得エリアの内容(1バイト目のコマンドデータ)を払出数コマンド記憶エリアに記憶し(ステップA38)、取得済フラグを0クリアし(ステップA39)、記憶済フラグに1(払出数コマンドの記憶済を表す)をセットし(ステップA40)、今回のコマンド異常判定&読込処理を終えてタイマ割込処理ルーチンにリターンする。なお、取得済フラグが0クリアされた結果、次回以降周期には実質的なコマンド異常判定&読込処理は行われない。
【0045】
一方、ステップA37にて、1バイト目と2バイト目との排他的論理和をとった結果が「FFH」とならない場合には、取得したコマンドデータが異常であることになる。一例として、払出制御装置3に対して指令された払出数データが賞球4個払出し「00000100」である場合、メイン制御装置2から1バイト目のコマンドデータとして「00000100」が送信されるが、不正によりD3信号(3ビット目)がハイレベルに固定されている結果、賞球12個払出し「00001100」が払出制御装置3に受信されてしまうことになる。従って、1バイト目のコマンドデータとして「00001100」が記憶される。次に、2バイト目のコマンドデータは1バイト目のデータをビット反転したデータであるから、メイン制御装置2からは「11111011」が送信されるが、不正によりD3信号(3ビット目)がハイレベルに固定されている結果、「11111011」が払出制御装置3に受信される。従って、2バイト目のコマンドデータとして「11111011」が記憶される。1バイト目のコマンドデータ「00001100」と2バイト目のコマンドデータ「11111011」との排他的論理和の結果は、ビット表現で「11110111」となり、正常な結果、ビット表現で「11111111」、即ち、16進数表現で「FFH」とはならない。
【0046】
このように、払出数データを2バイトとし、かつ1回目に送信する1バイト目のデータを払出数とし、2回目に送信する2バイト目のデータは1バイト目のデータをビット反転したデータとしているので、1つのビットで1回目と2回目とが同じ値となることは本来あり得ず、メイン制御装置2から払出制御装置3に対して払出数データを指令するための複数の信号線に対して、その一部又は全てをハイレベルに固定、又はローレベルに固定して払出数データを改ざんする不正を直ちに異常として検出することができる。
【0047】
サブCPUは、取得したコマンドデータが異常であると判定した場合、ステップA41に進み、1バイト目コマンド記憶エリアを0クリアし(ステップA41)、2バイト目コマンド記憶エリアを0クリアして取得したコマンドデータを破棄し(ステップA42)、取得済フラグを0クリアし(ステップA43)、今回のコマンド異常判定&読込処理を終えてタイマ割込処理ルーチンにリターンする。なお、取得済フラグが0クリアされた結果、次回以降周期には実質的なコマンド異常判定&読込処理は行われない。
【0048】
次に、コマンド受信完了処理について説明する。図7は、サブCPUが実行するコマンド受信完了処理のサブルーチンを示すフローチャートである。コマンド受信完了処理を開始すると、サブCPUは、まず、記憶済フラグに1がセットされているか否かを判別する(ステップA51)。なお、記憶済フラグの初期値は「0」であり、前述のコマンド異常判定&読込処理にて取得したコマンドデータの整合性が確認されて払出数コマンドとして記憶された場合にのみ、「1」がセットされるフラグである。サブCPUは、記憶済フラグに1がセットされていない場合には、ステップA51を偽と判別し、コマンド受信完了処理を終えてタイマ割込処理ルーチンにリターンする。従って、この場合は、実質的なコマンド受信完了処理は行われない。
【0049】
一方、記憶済フラグに1がセットされている場合には、サブCPUは、ステップA51を真と判別してステップA52に進み、送信中フラグに「1(送信中を表す)」がセットされいるか否かを判別する(ステップA52)。なお、送信中フラグは、ACK信号を送信中であるか否かを識別するためのフラグであり、初期値は送信なしを表す「0」であり、「1」でACK信号の送信中を表す。コマンド受信完了処理の開始時、送信中フラグは初期値「0」である結果、サブCPUはステップA52を偽と判別してステップA53に進む。
【0050】
ステップA53に進むと、サブCPUは、ACK信号出力フラグをセットし(ステップA53)、送信タイマにACK信号の送信時間12msをセットし(ステップA54)、送信中フラグに1をセットし(ステップA55)、今回のコマンド受信完了処理を終えてタイマ割込処理ルーチンにリターンする。なお、ACK信号出力フラグがセットされた結果、図示しない出力処理にて、メイン制御装置2に対してACK信号が出力される。
【0051】
次周期以降のコマンド受信完了処理では、送信中フラグに1がセットされている結果、サブCPUは、ステップA51を真、ステップA52を真と判別し、ステップA56に進み、送信タイマのタイマ値が0であるか否か、即ち、送信時間12msが経過したか否かを判別する(ステップA56)。サブCPUは、送信タイマのタイマ値が0でなければ、ステップA56を偽と判別し、今回のコマンド受信完了処理を終えてタイマ割込処理ルーチンにリターンする。以下、サブCPUは、送信時間12msが経過するまで、ステップA51を真、ステップA52を真、ステップA56を偽と判別する処理ルーチンを繰り返す。なお、送信タイマにセットされたタイマ値の減算は、図示しないタイマ減算処理にて行われる。
【0052】
送信時間12msが経過すると、送信タイマのタイマ値が0となり、サブCPUは、ステップA56を真と判別し、ACK信号出力フラグをクリアし(ステップA57)、送信中フラグを0クリアし(ステップA58)、記憶済フラグを0クリアし(ステップA59)、今回のコマンド受信完了処理を終えてタイマ割込処理ルーチンにリターンする。なお、記憶済フラグが0クリアされた結果、次回以降周期には実質的なコマンド受信完了処理は行われない。また、ACK信号出力フラグがクリアされた結果、図示しない出力処理にて、メイン制御装置2に対してACK信号の出力が停止される。
【0053】
なお、上述の実施形態では、払出数データと特定の相関関係にある確認データとして、払出数データをビット反転して確認データとしているが、確認データは払出数データをビット反転するものに限られるものではなく、特定の相関関係にあるデータ同士によって整合性の確認ができればどのような関係であってもよい。例えば、払出数データをローテーションして確認データとしてもよい。具体的な一例を示すと、払出数データが「00001111」である場合、払出数データを1ビット右にローテーション・シフトし(0ビット目を7ビット目にするように1ビット右にシフトする)、即ち、「10000111」を確認データとする。そして、メイン制御装置2は払出制御装置3に、払出数データ「00001111」及び確認データ「10000111」を送信する。払出制御装置3は、確認データ「10000111」を1ビット左にローテーション・シフトし(7ビット目を0ビット目にするように1ビット左にシフトし)、ローテーション・シフトしたデータと払出数データとが一致するかを判定して整合性を確認する。
【0054】
一方、ACK信号に異常がある場合、例えば、ACK信号線が切断していたり断線している場合が考えられるが、この場合には、払出制御装置3から送信されたACK信号はメイン制御装置2に伝達されない。メイン制御装置2は、確認データの送信時から予め定めた監視期間(例えば、この実施形態では100msとしている)にACK信号が返信されない場合、払出制御装置3に対して検査コマンド(2バイト)を送信し、再度、予め定めた監視期間にACK信号が返信されるか否かを監視する。なお、ACK信号線が完全に切断していたり断線している場合には、払出制御装置3から送信されたACK信号はメイン制御装置2に伝達されないため、メイン制御装置2は、払出制御装置3に対して再度検査コマンド(2バイト)を送信する。払出制御装置3は、検査コマンドを連続して受信すると異常と判定し、7セグメント形式等のLED表示器(正常時の表示は「−」)により「異常(数字0)」を表示して異常報知する。
【0055】
図8は、払出コマンド送受信装置におけるACK信号に関わるメイン制御装置2から払出制御装置3への指令信号送信を示すタイムチャートである。図8に示す実施形態では、メイン制御装置2は、確認データの送信時から予め定めた監視期間(例えば、この実施形態では100msとしている)にACK信号(承認信号)が返信されるか否かを監視する。メイン制御装置2は、ACK信号が確認されれば、払出数データが正しく払出制御装置3に取得されていると判定して次の払出コマンドを払出制御装置3に送信する。
【0056】
また、上述の実施形態では、払出制御装置3が、整合性の確認により払出コマンドを記憶した場合に、メイン制御装置2に対してACK信号(承認信号)を送信する構成としている。この構成によれば、払出数データが正しく払出制御装置3に取得されていることをメイン制御装置2が確認することができる。
【0057】
以上に説明したACK信号に関わるメイン制御装置2の処理を説明する。図9は、メイン制御装置2のCPU(以下、メインCPUという)が実行する払出制御装置3に対するコマンド伝送出力処理のサブルーチンを示すフローチャートである。なお、払出制御装置3に対するコマンド伝送出力処理は、所定周期毎(図3のタイミングでは、3.9ms毎)のタイマ割込が入ると実行される図示しないタイマ割込処理ルーチンにて実行される。
【0058】
払出制御装置3に対するコマンド伝送出力処理を開始すると、メインCPUは、検査コマンド用送信バッファに検査コマンドがセットされているか否かを判別する(ステップS301)。なお、検査コマンド用送信バッファは、電源投入時に行われる図示しない初期化処理にて0クリアされている。メインCPUは、検査コマンド用送信バッファに検査コマンドがセットされていなければ、払出コマンド送信処理を行い(ステップS302)、ステップS304に進む。なお、払出コマンド送信処理は、払出コマンド用の送信バッファに図2に示す払出数コマンド(1バイト目のみ)がセット(蓄積形式)されている場合に、最上位にセットされている払出数コマンドについて先に述べた2バイト構成(図2参照)とし、図3に示すタイミングで払出数コマンドを払出制御装置3に対して送信する。
【0059】
一方、検査コマンド用送信バッファに検査コマンドがセットされている場合には、検査コマンド送信処理を行い(ステップS303)、ステップS304に進む。なお、検査コマンド用送信バッファにセットされる検査コマンドは、16進数表示で「30H」(1バイト)である。検査コマンド送信処理は、検査コマンド(1バイト)について先に述べた2バイト構成とし、即ち、2バイト目を1バイト目の「30H」をビット反転させたデータとし、図3にタイミングで検査コマンド(2バイト)を払出制御装置3に対して送信する。
【0060】
ステップS304に進むと、メインCPUは、ACK信号の返信を監視中であることを識別する監視フラグに「1(監視中)」をセットし(ステップS304)、監視タイマに予め定めた監視時間(例えば、100ms)に相当するタイマ値をセットし(ステップS305)、払出制御装置3に対するコマンド伝送出力処理を抜けて図示しないタイマ割込処理ルーチンに戻る。なお、監視タイマにセットされたタイマ値は、図示しないタイマ割込処理ルーチンのタイマ減算処理にて減算される。
【0061】
図9のフローチャートから明らかなように、検査コマンドが検査コマンド用送信バッファにセットされている場合には、払出数コマンドの蓄積記憶があっても、払出制御装置3に対する払出数コマンドの送信は実行されず、実質的に払出制御装置3に対する払出数コマンドの送信は中断される。但し、遊技盤面で発生する打球の入賞に対する入賞検出情報の記憶は続けて行われる。
【0062】
図10は、メインCPUが実行するACK信号監視処理のサブルーチンを示すフローチャートである。なお、ACK信号監視処理は図示しないタイマ割込処理ルーチンにて実行される。ACK信号監視処理を開始すると、メインCPUは、監視フラグに「1(監視中)」がセットされているか否かを判別する(ステップS11)。監視フラグに「1」がセットされていない場合、メインCPUは、ACK信号監視処理を抜けて図示しないタイマ割込処理ルーチンに戻る。
【0063】
一方、払出制御装置3に対するコマンド伝送出力処理において、払出数コマンド或いは検査コマンドが送信された場合には、監視フラグに「1」がセットされる。監視フラグに「1」がセットされている場合、メインCPUは、ACK信号の返信ありか否かを判別する(ステップS12)。メインCPUは、ACK信号の返信ありの場合、検査コマンド用送信バッファを0クリアし(ステップS13)、監視フラグを0クリアし(ステップS16)、ACK信号監視処理を抜けて図示しないタイマ割込処理ルーチンに戻る。従って、ACK信号の返信ありの場合、検査コマンド用送信バッファが0クリアされる結果、払出制御装置3に対するコマンド伝送出力処理で、ステップS301が偽となり、蓄積記憶された入賞検出情報がある場合、払出制御装置3に対する払出数コマンドの送信が実行される。また、監視フラグが0クリアされる結果、次周期以降のACK信号監視処理は実質的に実行されない。
【0064】
一方、ステップS12においてACK信号の返信なしの場合、メインCPUはステップS14に進み、監視タイマの値が0か否か、即ち、ACK信号の監視時間が経過したか否かを判別する(ステップS14)。メインCPUは、監視タイマの値が0でなければ、ステップS14を偽と判別し、ACK信号監視処理を抜けて図示しないタイマ割込処理ルーチンに戻る。以下、メインCPUは、ACK信号の返信がなければ、ACK信号の監視時間が経過するまで、ステップS11を真、ステップS12を偽、ステップS14を偽と判別する処理ルーチンを繰り返す。
【0065】
予め定めた監視期間にACK信号の返信がない場合、ACK信号の監視時間が経過して監視タイマの値が0となる。メインCPUは、ステップS14を真と判別し、検査コマンド用送信バッファに検査コマンドをセットし(ステップS15)、監視フラグを0クリアし(ステップS16)、ACK信号監視処理を抜けて図示しないタイマ割込処理ルーチンに戻る。
【0066】
従って、払出制御装置3に対する払出数コマンドの送信時から予め定めた監視期間にACK信号の返信がない場合、検査コマンド用送信バッファに検査コマンドがセットされる。また、次周期の払出制御装置3に対するコマンド伝送出力処理において、検査コマンド用送信バッファにセットされた検査コマンドが払出制御装置3に送信される。また、監視フラグに「1」がセットされ、監視タイマに監視時間がセットされ、再度、ACK信号監視処理において予め定めた監視時間にACK信号の返信があるか否かを監視する。
【0067】
払出制御装置3に送信された検査コマンドは、先に説明したコマンド受信処理(図4〜図5参照)で受信され、コマンド異常判定&読込処理(図6参照)で異常がない場合に記憶され、コマンド受信完了処理(図7参照)でACK信号の送信が行われる。そして、コマンド受信完了処理に続いて実行される検査コマンドチェック処理にて受信したコマンドが検査コマンドであるか否かがチェックされる。
【0068】
図11は、サブCPUが実行する検査コマンドチェック処理のサブルーチンを示すフローチャートである。検査コマンドチェック処理を開始すると、サブCPUは、記憶済フラグに1がセットされているか否かを判別する(ステップA71)。
【0069】
前述のコマンド異常判定&読込処理にて取得したコマンドデータの整合性が確認されて検査コマンドとして記憶された場合には、記憶済フラグに「1」がセットされる。サブCPUは、記憶済フラグに1がセットされていない場合には、ステップA71を偽と判別し、検査コマンドチェック処理を抜けてタイマ割込処理ルーチンにリターンする。従って、この場合は、実質的な検査コマンドチェック処理は行われない。
【0070】
一方、記憶済フラグに1がセットされている場合には、サブCPUは、ステップA71を真と判別してステップA72に進み、ステップA38(図6参照)において払出数コマンド記憶エリアに記憶したコマンドが検査コマンド「30H」であるか否かを判別する(ステップA72)。サブCPUは、払出数コマンド記憶エリアに記憶したコマンドが検査コマンドであれば、ステップA72を真と判別してステップA73に進み、払出数コマンド記憶エリアに記憶したコマンドが払出数コマンドでない理由から払出数コマンド記憶エリアを0クリアし(ステップA73)、連続回数カウンタの値を+1し(ステップA74)、払出中止フラグに「1(中止)」をセットし(ステップA75)、ステップA76に進み、連続回数カウンタの値が「2」であるか否かを判別する(ステップA76)。なお、連続回数カウンタは、検査コマンドを連続して記憶した回数をカウントするカウンタであり、その初期値は「0」である。また、払出中止フラグに「1(中断)」がセットされた場合には、図示しない賞球払出処理において賞球の払出動作が中断される。
【0071】
ステップA76において、連続回数カウンタの値が「2」でない場合、サブCPUは、ステップA76を偽と判別して検査コマンドチェック処理を抜けてタイマ割込処理ルーチンにリターンする。
【0072】
一方、サブCPUは、払出数コマンド記憶エリアに記憶したコマンドが検査コマンドでなければ、ステップA72を偽と判別してステップA77に進み、連続回数カウンタの値を0クリアし(ステップA77)、払出中止フラグを0クリア(中断解除)し(ステップA78)、検査コマンドチェック処理を抜けてタイマ割込処理ルーチンにリターンする。検査コマンドを1回受信記憶した後、次に受信記憶したコマンドが正規の払出数コマンドである場合、連続回数カウンタが0クリアされ、払出中止フラグを0クリアされる。従って、図示しない賞球払出処理において中断されていた賞球の払出動作が再開される。
【0073】
ACK信号線が完全に断線している場合には、払出制御装置3から送信されたACK信号はメイン制御装置2に伝達されないため、監視時間の間にACK信号の返信なしとなる状態が2回続けて発生する。従って、メインCPUは、払出制御装置3に対して2回続けて検査コマンド(2バイト)を送信することになる。
【0074】
検査コマンドチェック処理では、検査コマンドが2回続けて判別される結果、ステップA74で+1加算された連続カウンタの値が2に達する。サブCPUは、ステップA76を真と判別し、異常報知フラグに「1(異常報知)」をセットし(ステップA79)、検査コマンドチェック処理を抜けてタイマ割込処理ルーチンにリターンする。なお、異常報知フラグに「1(異常報知)」がセットされる結果、図示しない出力処理にて、7セグメントLED式の報知表示器により「異常(数字0)」を表示して異常報知する。従って、係員が呼出ランプ等により遊技台に出向いた場合、賞球の払出等が中断している状態の遊技機の異常状態を遊技機裏面の報知表示器を見ただけで払出制御部分の異常と認識することができる。
【0075】
なお、ACK信号線が接触不良状態にある場合には、ACK信号が正しく出力されない場合があると考えられる。つまり、検査コマンドが連続ではなく、断続的に払出制御装置において受信されると考えられる。このような場合においては、所定期間内に受信する検査コマンドの回数や、受信する間隔に応じて異常判定する構成とする。この構成とすることで、断線時のみならず、接触不良の異常も検知することができる。
【0076】
また、遊技開始後に異常判定するようにしたが、電源投入時にも検査コマンドを送信するようにしてもよい。このようにすると、遊技中のみならず、遊技を開始する前に異常を判定することができ、遊技開始前に断線しているような場合には、遊技者に迷惑をかけずに済む。
【0077】
【発明の効果】
請求項1に記載の構成によれば、メイン制御装置が確認データの送信時および検査コマンドの送信時から予め定めた監視期間にACK信号が返信されない場合、サブ制御装置に対して検査コマンドを送信し、サブ制御装置が検査コマンドを連続して受信すると異常と判定して異常報知するので、通信線異常を的確に特定でき、ホールでのメンテナンス性を向上することができる。
【図面の簡単な説明】
【図1】本発明の実施形態に関わる遊技機に配備されたメイン制御装置と払出制御装置とのデータ通信に関わる制御系統(払出コマンド送受信装置)の要部ブロック図
【図2】メイン制御装置から払出制御装置へ送信される払出数データ(払出数コマンド)の内容を表形式で示す図
【図3】払出コマンド送受信装置におけるメイン制御装置から払出制御装置への指令信号送信を示すタイムチャート
【図4】実施形態の払出制御装置に配備されたサブCPUが実行するコマンド受信処理のサブルーチンを示すフローチャート
【図5】図4のフローチャートのつづき
【図6】同上のサブCPUが実行するコマンド異常判定&読込処理のサブルーチンを示すフローチャート
【図7】同上のサブCPUが実行するコマンド受信完了処理のサブルーチンを示すフローチャート
【図8】払出コマンド送受信装置におけるACK信号に関わるメイン制御装置から払出制御装置への指令信号送信を示すタイムチャート
【図9】メイン制御装置のメインCPUが実行する払出制御装置に対するコマンド伝送出力処理のサブルーチンを示すフローチャート
【図10】メインCPUが実行するACK信号監視処理のサブルーチンを示すフローチャート
【図11】サブCPUが実行する検査コマンドチェック処理のサブルーチンを示すフローチャート
【図12】従来のメイン制御装置と払出制御装置とのデータ通信に関わる制御系(払出コマンド送受信装置)の一形態を示すブロック図
【図13】従来のメイン制御装置から払出制御装置への指令信号送信を示すタイムチャート
【図14】メイン制御装置から払出制御装置へ送信される従来の払出数データ(払出数コマンド)の内容を表形式で示す図
【符号の説明】
1 払出コマンド送受信装置
2 メイン制御装置
3 払出制御装置(サブ制御装置)
4 遊技価値媒体排出装置
5 排出遊技価値媒体センサ
[0001]
BACKGROUND OF THE INVENTION
The present invention provides a main control device that performs overall game control, a game value medium discharge device that pays out game value media, and pays out a game value medium of the number of payouts according to payout number data commanded from the main control device. The present invention relates to a payout command transmission / reception device for a gaming machine comprising a sub-control device for controlling a gaming value medium discharging device.
[0002]
[Prior art]
Conventionally, a main control device that performs overall game control, a game value medium discharge device that pays out game value media, and pays out game value media of the number of payouts according to the payout number data commanded from the main control device As described above, a gaming machine provided with a sub-control device (payout control device) for controlling the gaming value medium discharging device is well known.
[0003]
FIG. 12 is a block diagram showing an example of a control system (payout command transmission / reception device) related to data communication between a conventional main control device and a payout control device. The command signal line from the main control device 2 to the payout control device 3 is a signal line of D0 to D7 composed of 8 bits for instructing the payout number data and the payout control device 3 for recognizing transmission data. It is composed of a chip select signal line (CE signal) and a WR signal line for making the payout control device 3 recognize that it is the read timing of transmission data.
[0004]
FIG. 13 is a time chart showing command signal transmission from the conventional main control device to the payout control device. First, the CE signal is set to high level, and subsequently, the number-of-payout data (payout number command) is transmitted by the D0 signal to D7 signal, and the WR signal (strobe signal) is set to high level in synchronization with the D0 signal to D7 signal. The
[0005]
The payout control device is in a state of accepting the payout number data by generating an INT interrupt due to the high level of the CE signal, reads the payout number data by the D0 signal to the D7 signal at the rising timing of the WR signal, and processes the processing by the INT interrupt Get out of it. Thereafter, the WR signal is set to low level, and the CE signal is set to low level after a predetermined timing.
[0006]
FIG. 14 is a table showing the contents of conventional payout number data (payout number command) transmitted from the main control device to the payout control device in a table format. The payout number data is composed of one byte per command. The number of payouts specified by the payout number data is 15 types from 1 award ball payout to 15 award ball payouts. FIG. 14 shows the contents of bit 0 to bit 7 corresponding to the D0 signal to D7 signal and their hexadecimal representation. In the payout amount data, it is the lower 4 bits (bit 0 to bit 3) that are actually related to the designation of the payout amount, and the upper 4 bits (bit 4 to bit 7) are all fixed to “0”. is there.
[0007]
By the way, there is a possibility that a fraudulent act that attempts to obtain a payout of a larger number of prize balls than the actual payout number commanded from the main control device to the payout control device may be performed. For the above conventional payout command transmission / reception device, for example, among the signal lines connecting the main control device and the payout control device, the D0 to D4 signal lines related to the number of payouts correspond to illegal bits in the middle. When a signal line (for example, D3 signal line) is pulled up and fixed to a high level, as is apparent from FIG. 14, at least nine prize ball payouts are always instructed to the payout control device. (As a result, the number-of-payout data from the payout of one prize ball to the payout of seven prize balls is affected by fraud). As an example, when the number-of-payout data commanded to the payout control device is payout of four prize balls (“00000100”), the D3 signal (third bit) is fixed at a high level due to fraud. Dispensing of 12 balls (“00001100”) is instructed to the dispensing control device. Therefore, there is a possibility that more prize balls will be paid out than usual. Therefore, since the payout command transmission / reception apparatus is directly related to the payout control of the game value medium, it is necessary to take measures to prevent such illegal acts.
[0008]
[Problems to be solved by the invention]
An object of the present invention is to fix a part or all of a plurality of signal lines for instructing payout number data from a main control device to a sub control device at a high level or a low level. An object of the present invention is to provide a payout command transmission / reception device for a gaming machine that can detect fraud in which the payout number data is falsified as an abnormality.
[0009]
[Means for Solving the Problems]
Claim 1 Affect The payout command transmission / reception device of the gaming machine includes a main control device that performs overall game control, a game value medium discharge device that pays out game value media, and a payout amount according to the payout number data commanded from the main control device. A sub-control device for controlling the gaming value medium discharging device so as to pay out the gaming value medium. ,in front The main control device, for one payout, payout number data and confirmation data having a specific correlation with the payout number data Send When the sub-control device receives the payout number data and the confirmation data, the sub-control device confirms the consistency between the payout number data and the confirmation data based on the correlation, and the consistency is confirmed. In this case, the payout number data is stored as a payout number command. When the main control device does not return an ACK signal from the sub control device during a predetermined monitoring period from the time of transmission of the confirmation data and the time of transmission of the inspection command, the main control device A test command transmitting means for transmitting a test command, wherein the sub-control device stores the ACK to the main control device when the payout command is stored by checking the consistency and when the test command is stored. An ACK signal transmitting means for transmitting a signal, and an ACK signal line abnormality notifying means for determining abnormality and notifying abnormality when continuously receiving the inspection command transmitted from the main control device. It is characterized by that.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a principal block diagram of a control system (payout command transmission / reception device 1) related to data communication between a main control device and a payout control device arranged in a gaming machine according to an embodiment of the present invention. The main control device 2 performs overall game control, and the payout control device (corresponding to the sub-control device according to claim 1) 3 stores the payout number data commanded from the main control device 2. The game value medium discharging device 4 is controlled so as to pay out the game value medium (for example, a prize ball or a medal) according to the number of payouts.
[0012]
The main control device 2 is provided on a main control board (not shown). The main control device 2 stores a main CPU as processing execution means for performing overall control related to a game (for example, a pachinko game) and a control program related to the entire game to be executed by the main CPU. It includes a ROM, a RAM that can be read and written as needed, and a communication interface for the main CPU to perform data communication with peripheral devices. Note that the specific configuration of the main controller 14 is not shown. The main control device 14 transmits to the payout control device 3 a payout number command (payout number data) corresponding to a winning mode (for example, a detection signal from each winning detection switch arranged in each winning area). .
[0013]
The payout control device 3 performs data communication with a sub CPU as a control processing execution means, a ROM storing each control program executed by the sub CPU, a RAM capable of reading and writing data at any time, and the main control device 2. Communication interface, an input interface circuit, and an output interface circuit. Note that illustration of a specific internal configuration of the payout control device 3 is omitted.
[0014]
The payout control device 3 is connected to the above-mentioned main control device 2 in communication, and also includes a game value medium discharge device (for example, a prize ball discharge device driven by a motor or the like) 4 for paying out prize balls, It is connected to a discharged game value medium sensor (for example, a discharged ball sensor) 5 for detecting a game value medium discharged from the value medium discharge device 4.
[0015]
The command signal line from the main control device 2 to the payout control device 3 is a signal line of D0 to D7 composed of 8 bits for instructing the payout number data, and the first byte of data transmitted to the payout control device 3. It is composed of a select signal line (SEL signal) for recognizing the second byte and a WR signal line for causing the payout control device 3 to recognize that it is the read timing of transmission data. Further, in this embodiment, an ACK signal line is provided for a response from the payout control device 3 to the main control device 2, and when the payout control device 3 reads out the payout amount data, the main control device 2 is read. ACK signal (acknowledgment signal) is transmitted.
[0016]
In the present embodiment, the payout number data (payout number command) transmitted from the main control device 2 to the payout control device 3 is composed of 2 bytes, and the main control device 2 transmits the first time 1 The byte data is the number of payouts, and the second byte data transmitted for the second time is bit-inverted data of the first byte data.
[0017]
FIG. 2 is a table showing the contents of the payout number data (payout number command) transmitted from the main control device 2 to the payout control device 3 in a table format. The number-of-payout data is composed of 2 bytes per command. The number of payouts specified by the payout number data is 15 types from 1 award ball payout to 15 award ball payouts. FIG. 2 shows the contents of bit 0 to bit 7 corresponding to the D0 signal to D7 signal and their hexadecimal representation. In the first byte of the payout amount data, the lower 4 bits (bit 0 to bit 3) are actually related to the designation of the payout amount, and the upper 4 bits (bit 4 to bit 7) are all “0”. Is fixed.
[0018]
FIG. 3 is a time chart showing command signal transmission from the main control device 2 to the payout control device 3 in the payout command transmission / reception device 1. The procedure for transmitting the payout amount data from the main control device 2 to the payout control device 3 is as follows. First, the first byte (payout number command) of the payout number data by the D0 signal to the D7 signal is transmitted, and the WR signal (strobe signal) is at the high level in synchronization with the first byte of the payout number data by the D0 signal to the D7 signal. To be. The transmission time of the first byte of the payout amount data and the WR signal is 3.9 ms.
[0019]
When the first byte of the payout number data and 3.9 ms have passed since the transmission of the WR signal, the transmission of the first byte of the payout number data is completed, and the WR signal ( Strobe signal) is set to a low level. The WR signal transmission stop time is set to 3.9 ms.
[0020]
When transmission of the first byte of the payout number data is completed and 3.9 ms has elapsed from when WR signal transmission is stopped, the SEL signal is set to the high level, and the second byte of the payout number data by the D0 to D7 signals is transmitted. The WR signal (strobe signal) is set to the high level in synchronization with the signal and the D0 to D7 signals. The transmission time of the second byte of the payout amount data, the SEL signal, and the WR signal is set to 3.9 ms.
[0021]
When the second byte of the payout number data, 3.9 ms has elapsed since the transmission of the SEL signal and the WR signal, transmission of the second byte of the payout number data is completed, and in synchronization with the completion of transmission of the second byte of the payout number data The SEL signal and the WR signal are set to a low level. The WR signal transmission stop time is set to 1 ms to 13 ms.
[0022]
The payout control device 3 monitors the state of the WR signal, the SEL signal, and the payout number data (D0 to D7) by a timer interrupt that occurs every predetermined period (every 2 ms in the embodiment). The reading of the payout amount data performed by the payout control device 3 will be described later. When the payout control device 3 reads the payout amount data, the payout control device 3 transmits an ACK signal to the main control device 2. Note that the transmission time of the ACK signal is 12 ms. When receiving the ACK signal, the main control device 2 determines that the command signal transmission is normal, and transmits the payout number data to the next payout control device 3.
[0023]
The command reception processing, command abnormality determination & reading processing, and command reception completion processing executed by the sub CPU of the payout control device 3 in the payout command transmitting / receiving device of the gaming machine according to the embodiment configured as described above will be sequentially described. The command reception process, command abnormality determination & reading process, and command reception completion process described below are processes that are sequentially executed by a timer interrupt that occurs every 2 ms.
[0024]
4 to 5 are flowcharts showing a subroutine of command reception processing executed by the sub CPU. The acquisition of the payout number data (command data) of the entire 2-byte configuration transmitted from the main controller 2 in 1-byte units will be described briefly. The command data of the first byte is obtained by sampling the WR signal at the timer interrupt cycle. When the result is “0 · 0 · 1” and “0 · 0 · 1 · 1”, the timing is read when both SEL signals are “0 (off)”, If two read values are the same, get it. The command data of the second byte has two timings when the result of sampling the WR signal at the timer interrupt cycle is “0 · 0 · 1” and “0 · 0 · 1 · 1”. When the SEL signals at that time are both “1 (on)”, they are read and if the two read values are the same, they are acquired.
[0025]
When the sub CPU starts command reception processing, the sub CPU first performs processing for storing sampling histories for the SEL signal and the WR signal. First, the sub CPU shifts the contents of an 8-bit SEL determination register SELH (hereinafter simply referred to as SELH) to the right by 1 bit (step A01). Next, the sub CPU determines whether or not the SEL signal is off (step A02). The SEL signal is an identification signal for causing the sub-control device 3 to identify whether it is the first byte or the second byte of the payout number data of the entire 2-byte configuration transmitted from the main control device 2 in 1-byte units. is there.
[0026]
If the SEL signal is off, the sub CPU sets 0 to the 0th bit of SELH (step A03) and proceeds to step A05. On the other hand, when the SEL signal is not off, that is, when the SEL signal is on, 1 is set to the 0th bit of SELH (step A04), and the process proceeds to step A05.
[0027]
In step A05, the sub CPU next shifts the contents of the 8-bit WR determination register WRH (hereinafter simply referred to as WRH) to the right by 1 bit (step A05). Next, the sub CPU determines whether or not the WR signal is off (step A06). The WR signal is read for causing the sub-control device 3 to recognize the read timing of the first byte data or the second byte data of the payout number data of the entire 2-byte configuration transmitted from the main control device 2 in 1-byte units. Signal.
[0028]
If the WR signal is off, the sub CPU sets 0 to the 0th bit of WRH (step A07) and proceeds to step A09. On the other hand, when the WR signal is not off, that is, when the WR signal is on, 1 is set to the 0th bit of WRLH (step A08), and the process proceeds to step A09.
[0029]
As described above, the sampling history for the SEL signal and the WR signal is stored. In step A09, the sub CPU copies the lower 4 bits of WRH to the X register (a general-purpose register used for calculation or the like and configured with 8 bits) (step A09). The contents of the X register are “0000 ***” if the contents of the lower 4 bits of WRH are represented by “***”.
[0030]
The sub CPU proceeds to step A10, and whether the contents of the X register (here, the problem is the lower 4 bits of the X register and are simply represented as “0001” in FIG. 4) is “0001”. It is determined whether or not (step A10). When the content of the X register is “0001”, it means that the rising edge of the WR signal in the time chart of FIG. 3 has been detected. In this case, the sub CPU next determines whether or not the SEL signal is off (step A11), whereby the first byte data or the second byte of the payout amount data transmitted from the main control device 2 is determined. It is determined whether the data.
[0031]
When the SEL signal is OFF in step A11 (see FIG. 3), it is the first byte data of the payout amount data transmitted from the main controller 2, and the sub CPU has 8 bits (1 byte). Are stored in the first command acquisition area (step A12), the current command reception process is terminated, and the process returns to the timer interrupt process routine.
[0032]
On the other hand, if the SEL signal is not OFF in step A11, that is, if the SEL signal is ON (see FIG. 3), it is the second byte data of the payout amount data transmitted from the main controller 2. The sub CPU stores the D0 to D7 signals composed of 8 bits (1 byte) in the first command acquisition area (step A13), finishes the current command reception process, and returns to the timer interrupt processing routine. To do.
[0033]
When the sub CPU finishes acquiring 1 byte of data of the first payout number data, it acquires 1 byte of data of the second payout number data when the next timer interrupt occurs. That is, when the next timer interrupt occurs and the WR signal is on following the previous timer interrupt, the history is stored in the WRH in step A08. As a result, in step A10, the sub CPU determines that the contents of the X register are not “0001” but false. Next, the process proceeds to step A14, and it is determined whether or not the content of the X register is “0011” (step A14). When the content of the X register is “0011”, it means that the ON state following the rising of the WR signal in the time chart of FIG. 3 is detected. In this case, the sub CPU next determines whether or not the SEL signal is OFF (step A15), whereby the first byte data or the second byte of the payout amount data transmitted from the main control device 2 is determined. It is determined whether the data.
[0034]
When the SEL signal is OFF in step A15 (see FIG. 3), it is the first byte data of the payout amount data transmitted from the main controller 2, and the sub CPU has 8 bits (1 byte). Are stored in the second command acquisition area (step A16), and the process proceeds to step A17. In step A17, the sub CPU determines whether the content of the first byte data of the payout number data acquired the first time is the same as the content of the first byte data of the payout number data acquired the second time. It is determined whether or not (step A17). If the first and second times have the same contents, the sub CPU determines that there is no reading error, stores the first byte data of the acquired payout number data in the first byte command acquisition area (step A18), After this command reception process is completed, the process returns to the timer interrupt process routine.
[0035]
On the other hand, if the SEL signal is not OFF in step A15, that is, if the SEL signal is ON (see FIG. 3), it is the second byte data of the payout amount data transmitted from the main controller 2. Thus, the sub CPU stores the D0 signal to D7 signal composed of 8 bits (1 byte) in the second command acquisition area (step A19), and proceeds to step A20. When the sub CPU proceeds to step A20, is the content of the second byte data of the payout number data acquired the first time identical to the content of the second byte data of the payout number data acquired the second time? It is determined whether or not (step A20). If the first and second times have the same contents, the sub CPU determines that there is no reading error, stores the second byte data of the acquired payout number data in the second byte command acquisition area (step A21), The acquired flag is set to “1 (data acquired)” (step A22), the current command reception process is terminated, and the process returns to the timer interrupt process routine.
[0036]
In step A17 and step A20, if the determination result is false, that is, the content of the first byte of the payout number data acquired for the first time and the one byte of the payout number data acquired for the second time. If the contents of the minute data are not the same, it is determined that a reading error has occurred due to noise or the like when fetching the data, the stored data for one byte is not properly acquired, and the current command reception process is completed. Return to the timer interrupt processing routine. If the history of the WR signal, in other words, the contents of the X register is neither “0001” nor “0011”, it is determined that step A10 is false and step A14 is false, and command data is acquired. First, the current command reception process is completed, and the process returns to the timer interrupt process routine.
[0037]
In the command reception process described above, when the acquired flag is set to “1”, the sub-control device 3 acquires the payout number data of the entire 2-byte configuration transmitted from the main control device 2 in units of 1 byte. It will be done.
[0038]
Next, the command abnormality determination & reading process will be described. FIG. 6 is a flowchart showing a subroutine of command abnormality determination & reading processing executed by the sub CPU. The reading of the payout amount data (command data) will be described briefly. The command buffer is 1 byte. For command buffering, when the result of sampling the SEL signal with a timer interrupt is "0, 0, 1, 1", and 2 bytes of command data have been acquired, further consistency has been confirmed. This is done when the first byte command is stored. Consistency is confirmed by checking whether the value obtained by performing exclusive OR for each bit of the first byte data and the second byte data is “FFH” in hexadecimal notation. If it is “FFH”, it is determined as normal.
[0039]
When the sub CPU starts the command abnormality determination & reading process, first, the lower 4 bits of SELH are copied to the X register (a general-purpose register used for calculation or the like and configured with 8 bits) (step A31). The contents of the X register are “0000 ***” when the contents of the lower 4 bits of SELH are represented by “***”.
[0040]
The sub CPU proceeds to step A32 and checks whether the content of the X register (here, the problem is the lower 4 bits of the X register and is simply represented as “1100” in FIG. 6) is “1100”. It is determined whether or not (step A32). If the content of the X register is not “1100”, the sub CPU determines that step A32 is false, and in this case, the substantial command abnormality determination & reading process is not performed.
[0041]
On the other hand, in step A32, when the content of the X register is “1100”, it is detected that the history of the SEL signal in the time chart of FIG. 3 is “on, on, off, off”. In this case, the sub CPU next determines whether or not 1 (indicating that data has been acquired) is set in the acquired flag (step A33). Note that the initial value of the acquired flag is “0”, and “1” is set only when the first byte command data and the second byte command data are acquired in the above-described command reception processing. Flag. When the acquired flag is not set to 1, that is, when the acquired flag value is 0, the sub CPU determines that step A33 is false, finishes the current command abnormality determination & reading process, and sets a timer. Return to the interrupt processing routine. Also in this case, substantial command abnormality determination & reading processing is not performed.
[0042]
On the other hand, when 1 (data acquired) is set in the acquired flag in step A33, the sub CPU proceeds to step A34 and stores the contents of the first byte command acquisition area (command data of the first byte). Set to A register (8-bit general-purpose register used for operations, etc.) (step A34), and then the contents of the second byte command acquisition area (second-byte command data) to B-register (general-purpose register used for operations, etc.) (Step A35), the exclusive OR of the contents of the A register and the B register is taken, and the result of the exclusive OR is set to the Y register (a general-purpose register used for operations, etc., 8 bits). (Step A36).
[0043]
The first byte of command data transmitted for the first time is the number of payouts, and the second byte of command data transmitted for the second time is data obtained by bit-inversion of the first byte of data. Therefore, if the transmitted command data is normal, the exclusive OR of the first byte and the second byte is “11111111” in bit representation and “FFH” in hexadecimal representation. The sub CPU proceeds to step A37 and determines whether or not the content of the Y register is “FFH”, that is, whether or not the acquired command data is normal (step A37).
[0044]
If the acquired command data is normal in step A37, the sub CPU stores the contents of the first byte command acquisition area (command data of the first byte) in the payout number command storage area (step A38). The completed flag is cleared to 0 (step A39), the stored flag is set to 1 (indicating that the number-of-payout command has been stored) (step A40), the current command abnormality determination & reading process is terminated, and the timer interruption process routine Return to As a result of clearing the acquired flag to 0, no substantial command abnormality determination & reading process is performed in the next and subsequent cycles.
[0045]
On the other hand, if the result of the exclusive OR of the first byte and the second byte is not “FFH” in step A37, the acquired command data is abnormal. As an example, when the payout number data instructed to the payout control device 3 is payout of four prize balls “00000100”, “00000100” is transmitted as command data of the first byte from the main control device 2, As a result of improperly fixing the D3 signal (the third bit) to the high level, the payout control device 3 receives 12 prize balls “00001100”. Accordingly, “00001100” is stored as the command data of the first byte. Next, since the command data of the second byte is data obtained by bit-inversion of the data of the first byte, “11111011” is transmitted from the main control device 2, but the D3 signal (third bit) is high due to fraud. As a result of being fixed to the level, “11111011” is received by the payout control device 3. Accordingly, “11111011” is stored as the second byte of command data. The result of the exclusive OR of the command data “00001100” of the first byte and the command data “11111011” of the second byte is “11110111” in the bit representation, and “11111111” in the bit representation is normal. It is not “FFH” in hexadecimal.
[0046]
In this way, the payout number data is 2 bytes, the first byte data transmitted for the first time is the payout number, and the second byte data transmitted for the second time is the data obtained by bit-inverting the first byte data. Therefore, it is impossible that the first time and the second time are the same value by one bit, and the plurality of signal lines for instructing the payout amount data from the main control device 2 to the payout control device 3 are not provided. On the other hand, it is possible to immediately detect an irregularity in which a part or all of the payout number data is fixed at a high level or fixed at a low level and the payout number data is falsified as an abnormality.
[0047]
If the sub CPU determines that the acquired command data is abnormal, it proceeds to step A41 and clears the first byte command storage area to zero (step A41) and acquires the second byte command storage area to zero. The command data is discarded (step A42), the acquired flag is cleared to 0 (step A43), the current command abnormality determination & reading process is completed, and the process returns to the timer interrupt processing routine. As a result of clearing the acquired flag to 0, no substantial command abnormality determination & reading process is performed in the next and subsequent cycles.
[0048]
Next, command reception completion processing will be described. FIG. 7 is a flowchart showing a subroutine of command reception completion processing executed by the sub CPU. When the command reception completion process is started, the sub CPU first determines whether or not 1 is set in the stored flag (step A51). The initial value of the stored flag is “0”, and “1” is used only when the consistency of the command data acquired by the command abnormality determination & reading process is confirmed and stored as a payout number command. Is a flag that is set. If the stored flag is not set to 1, the sub CPU determines that step A51 is false, finishes command reception completion processing, and returns to the timer interrupt processing routine. Accordingly, in this case, substantial command reception completion processing is not performed.
[0049]
On the other hand, if the stored flag is set to 1, the sub CPU determines that step A51 is true and proceeds to step A52, and whether the transmission flag is set to “1 (represents transmission in progress)”. It is determined whether or not (step A52). The transmission flag is a flag for identifying whether or not an ACK signal is being transmitted. The initial value is “0” indicating no transmission, and “1” indicates that the ACK signal is being transmitted. . At the start of the command reception completion process, as a result of the transmission flag being the initial value “0”, the sub CPU determines that step A52 is false and proceeds to step A53.
[0050]
In step A53, the sub CPU sets the ACK signal output flag (step A53), sets the transmission time of the ACK signal to 12 ms in the transmission timer (step A54), and sets the transmission flag to 1 (step A55). ), This command reception completion processing is completed, and the process returns to the timer interrupt processing routine. As a result of setting the ACK signal output flag, an ACK signal is output to the main control device 2 in an output process (not shown).
[0051]
In the command reception completion process after the next period, as a result of setting the transmission flag to 1, the sub CPU determines that step A51 is true and step A52 is true, and proceeds to step A56, where the timer value of the transmission timer is It is determined whether or not 0, that is, whether or not the transmission time of 12 ms has elapsed (step A56). If the timer value of the transmission timer is not 0, the sub CPU determines that step A56 is false, ends the current command reception completion process, and returns to the timer interrupt process routine. Thereafter, the sub CPU repeats a processing routine for determining that step A51 is true, step A52 is true, and step A56 is false until the transmission time of 12 ms elapses. The timer value set in the transmission timer is subtracted by a timer subtraction process (not shown).
[0052]
When the transmission time of 12 ms elapses, the timer value of the transmission timer becomes 0, the sub CPU determines that step A56 is true, clears the ACK signal output flag (step A57), and clears the transmission flag to 0 (step A58). ), The stored flag is cleared to 0 (step A59), the current command reception completion process is terminated, and the process returns to the timer interrupt process routine. As a result of the stored flag being cleared to 0, no substantial command reception completion processing is performed in the next and subsequent cycles. As a result of clearing the ACK signal output flag, the output of the ACK signal to the main control device 2 is stopped by an output process (not shown).
[0053]
In the above-described embodiment, as the confirmation data having a specific correlation with the payout number data, the payout number data is bit-inverted to obtain confirmation data. However, the confirmation data is limited to the bit-inverted payout number data. Any relationship may be used as long as consistency can be confirmed by data having a specific correlation. For example, the payout number data may be rotated and used as confirmation data. As a specific example, when the number-of-payout data is “00001111”, the number-of-payout data is rotated and shifted to the right by 1 bit (shifted to the right by 1 bit so that the 0th bit becomes the 7th bit). That is, “10000111” is used as confirmation data. The main control device 2 transmits the payout amount data “00001111” and the confirmation data “10000111” to the payout control device 3. The payout control device 3 rotates and shifts the confirmation data “10000111” to the left by 1 bit (shifts to the left by 1 bit so that the 7th bit becomes the 0th bit). Is checked to determine if they match.
[0054]
On the other hand, when the ACK signal is abnormal, for example, the ACK signal line may be disconnected or disconnected. In this case, the ACK signal transmitted from the payout control device 3 is the main control device 2. Not transmitted to. If the ACK signal is not returned in the predetermined monitoring period (for example, 100 ms in this embodiment) from the time when the confirmation data is transmitted, the main control device 2 sends an inspection command (2 bytes) to the payout control device 3. Transmit and monitor again whether or not an ACK signal is returned in a predetermined monitoring period. When the ACK signal line is completely disconnected or disconnected, the ACK signal transmitted from the payout control device 3 is not transmitted to the main control device 2, so that the main control device 2 performs the payout control device 3. Again, the inspection command (2 bytes) is transmitted. The payout control device 3 determines that it is abnormal when it continuously receives inspection commands, and displays “abnormal (numeral 0)” on the 7-segment LED display (normal display is “-”). Inform.
[0055]
FIG. 8 is a time chart showing command signal transmission from the main control device 2 to the payout control device 3 related to the ACK signal in the payout command transmitting / receiving device. In the embodiment shown in FIG. 8, the main control device 2 determines whether or not an ACK signal (acknowledgment signal) is returned in a predetermined monitoring period (for example, 100 ms in this embodiment) from the time when the confirmation data is transmitted. To monitor. If the ACK signal is confirmed, the main control device 2 determines that the payout amount data is correctly acquired by the payout control device 3 and transmits the next payout command to the payout control device 3.
[0056]
Further, in the above-described embodiment, the payout control device 3 is configured to transmit an ACK signal (approval signal) to the main control device 2 when the payout command is stored by checking the consistency. According to this configuration, the main control device 2 can confirm that the payout amount data is correctly acquired by the payout control device 3.
[0057]
Processing of the main control device 2 related to the ACK signal described above will be described. FIG. 9 is a flowchart showing a subroutine of command transmission output processing for the payout control device 3 executed by the CPU of the main control device 2 (hereinafter referred to as main CPU). Note that the command transmission output process for the payout control device 3 is executed by a timer interrupt processing routine (not shown) that is executed when a timer interrupt occurs every predetermined period (3.9 ms at the timing shown in FIG. 3). .
[0058]
When the command transmission output process for the payout control device 3 is started, the main CPU determines whether or not the inspection command is set in the inspection command transmission buffer (step S301). Note that the inspection command transmission buffer is cleared to 0 in an initialization process (not shown) performed when the power is turned on. If the inspection command is not set in the inspection command transmission buffer, the main CPU performs a payout command transmission process (step S302), and proceeds to step S304. The payout command transmission processing is performed when the payout command transmission buffer for payout command has the payout number command (only the first byte) shown in FIG. 2 set (accumulation format). The payout number command is transmitted to the payout control device 3 at the timing shown in FIG.
[0059]
On the other hand, when a test command is set in the test command transmission buffer, a test command transmission process is performed (step S303), and the process proceeds to step S304. The inspection command set in the inspection command transmission buffer is “30H” (1 byte) in hexadecimal notation. The inspection command transmission processing has the 2-byte configuration described above for the inspection command (1 byte), that is, the second byte is data obtained by bit-inverting “30H” of the first byte. (2 bytes) is transmitted to the payout control device 3.
[0060]
In step S304, the main CPU sets “1 (monitoring)” to the monitoring flag for identifying that the response of the ACK signal is being monitored (step S304), and sets a monitoring time ( For example, a timer value corresponding to 100 ms) is set (step S305), the command transmission output process for the payout control device 3 is exited, and the process returns to a timer interrupt process routine (not shown). The timer value set in the monitoring timer is subtracted by timer subtraction processing of a timer interrupt processing routine (not shown).
[0061]
As is apparent from the flowchart of FIG. 9, when the inspection command is set in the inspection command transmission buffer, the payout number command is transmitted to the payout control device 3 even if the payout number command is stored. The transmission of the payout number command to the payout control device 3 is substantially interrupted. However, the winning detection information for the winning of the hit ball generated on the game board surface is continuously stored.
[0062]
FIG. 10 is a flowchart showing a subroutine of ACK signal monitoring processing executed by the main CPU. The ACK signal monitoring process is executed by a timer interrupt process routine (not shown). When the ACK signal monitoring process is started, the main CPU determines whether or not “1 (monitoring)” is set in the monitoring flag (step S11). When “1” is not set in the monitoring flag, the main CPU exits the ACK signal monitoring process and returns to a timer interrupt process routine (not shown).
[0063]
On the other hand, in the command transmission output process for the payout control device 3, when a payout number command or an inspection command is transmitted, “1” is set in the monitoring flag. When “1” is set in the monitoring flag, the main CPU determines whether or not a ACK signal is returned (step S12). When the ACK signal is returned, the main CPU clears the inspection command transmission buffer to 0 (step S13), clears the monitoring flag to 0 (step S16), exits the ACK signal monitoring process, and performs a timer interrupt process (not shown). Return to the routine. Therefore, when the ACK signal is returned, the inspection command transmission buffer is cleared to 0. As a result, in the command transmission output process for the payout control device 3, step S301 is false and there is accumulated and stored winning detection information. Transmission of a payout number command to the payout control device 3 is executed. Further, as a result of the monitoring flag being cleared to 0, the ACK signal monitoring process after the next period is not substantially executed.
[0064]
On the other hand, if no ACK signal is returned in step S12, the main CPU proceeds to step S14 to determine whether or not the value of the monitoring timer is 0, that is, whether or not the monitoring time of the ACK signal has passed (step S14). ). If the value of the monitoring timer is not 0, the main CPU determines that step S14 is false, exits the ACK signal monitoring process, and returns to a timer interrupt process routine (not shown). Hereinafter, the main CPU repeats a processing routine for determining that step S11 is true, step S12 is false, and step S14 is false until the ACK signal monitoring time has elapsed unless an ACK signal is returned.
[0065]
When no ACK signal is returned during a predetermined monitoring period, the monitoring timer value becomes 0 after the ACK signal monitoring time elapses. The main CPU determines that step S14 is true, sets the inspection command in the inspection command transmission buffer (step S15), clears the monitoring flag to 0 (step S16), exits the ACK signal monitoring process, and sets a timer allocation (not shown). Return to the process routine.
[0066]
Therefore, when no ACK signal is returned during a predetermined monitoring period from the time when the payout control device 3 sends the payout number command, the check command is set in the check command transmission buffer. In the command transmission output process for the payout control device 3 in the next cycle, the inspection command set in the inspection command transmission buffer is transmitted to the payout control device 3. In addition, “1” is set in the monitoring flag, the monitoring time is set in the monitoring timer, and it is monitored again whether or not an ACK signal is returned at a predetermined monitoring time in the ACK signal monitoring processing.
[0067]
The inspection command transmitted to the payout control device 3 is received in the command reception process (see FIGS. 4 to 5) described above, and stored when there is no abnormality in the command abnormality determination & reading process (see FIG. 6). In the command reception completion process (see FIG. 7), an ACK signal is transmitted. Then, it is checked whether or not the command received in the test command check process executed following the command reception completion process is a test command.
[0068]
FIG. 11 is a flowchart showing a subroutine of the inspection command check process executed by the sub CPU. When the inspection command check process is started, the sub CPU determines whether or not 1 is set in the stored flag (step A71).
[0069]
When the consistency of the command data acquired by the above-described command abnormality determination & reading process is confirmed and stored as an inspection command, “1” is set to the stored flag. If the stored flag is not set to 1, the sub CPU determines that step A71 is false, exits the check command check process, and returns to the timer interrupt process routine. Therefore, in this case, substantial inspection command check processing is not performed.
[0070]
On the other hand, if the stored flag is set to 1, the sub CPU determines that step A71 is true, proceeds to step A72, and stores the command stored in the payout number command storage area in step A38 (see FIG. 6). Is an inspection command “30H” (step A72). If the command stored in the payout number command storage area is an inspection command, the sub CPU determines that step A72 is true and proceeds to step A73, and pays out because the command stored in the payout number command storage area is not a payout number command. The number command storage area is cleared to 0 (step A73), the value of the continuous number counter is incremented by 1 (step A74), the payout stop flag is set to “1 (stop)” (step A75), and the process proceeds to step A76. It is determined whether or not the value of the number counter is “2” (step A76). The continuous number counter is a counter that counts the number of times the inspection command is stored continuously, and its initial value is “0”. When “1 (interrupt)” is set in the payout stop flag, the payout operation of the prize ball is interrupted in a prize ball payout process (not shown).
[0071]
If the value of the continuous number counter is not “2” in step A76, the sub CPU determines that step A76 is false, exits the check command check process, and returns to the timer interrupt process routine.
[0072]
On the other hand, if the command stored in the payout number command storage area is not a test command, the sub CPU determines that step A72 is false, proceeds to step A77, clears the value of the continuous number counter to 0 (step A77), and pays out. The cancel flag is cleared to 0 (interrupt is canceled) (step A78), the inspection command check process is exited, and the process returns to the timer interrupt process routine. After the inspection command is received and stored once, if the next received and stored command is a regular payout number command, the continuous number counter is cleared to 0 and the payout stop flag is cleared to 0. Therefore, the payout operation of the prize ball that has been interrupted in the prize ball payout process (not shown) is resumed.
[0073]
When the ACK signal line is completely disconnected, the ACK signal transmitted from the payout control device 3 is not transmitted to the main control device 2, so that there is no return of the ACK signal during the monitoring time twice. It continues to occur. Accordingly, the main CPU transmits the inspection command (2 bytes) to the dispensing control device 3 twice in succession.
[0074]
In the inspection command check process, the inspection command is determined twice in succession. As a result, the value of the continuous counter incremented by 1 in step A74 reaches 2. The sub CPU determines that step A76 is true, sets "1 (abnormality notification)" to the abnormality notification flag (step A79), exits the inspection command check processing, and returns to the timer interruption processing routine. As a result of setting “1 (abnormality notification)” to the abnormality notification flag, an abnormality notification is made by displaying “abnormality (number 0)” on a 7-segment LED type notification display in an output process (not shown). Therefore, when an attendant goes to the game stand by a call lamp or the like, an abnormal state of the payout control portion can be found simply by looking at the information display on the back of the game machine for the abnormal state of the game machine where the payout of the prize ball is interrupted. Can be recognized.
[0075]
If the ACK signal line is in a poor contact state, the ACK signal may not be output correctly. In other words, it is considered that the inspection command is not continuously received but intermittently received by the dispensing control device. In such a case, an abnormality is determined according to the number of inspection commands received within a predetermined period and the reception interval. By adopting this configuration, it is possible to detect not only a disconnection but also an abnormal contact.
[0076]
Further, although an abnormality is determined after the game is started, an inspection command may be transmitted even when the power is turned on. In this way, an abnormality can be determined not only during the game but also before the game is started, and in the case of disconnection before the game is started, the player is not disturbed.
[0077]
【The invention's effect】
According to the configuration of claim 1, If the main control unit does not send back an ACK signal during the predetermined monitoring period from the time when the confirmation data is sent and the time when the test command is sent, the test command is sent to the sub-control unit, and If it is received, it will be judged as abnormal and an abnormality will be notified, so it is possible to accurately identify communication line abnormalities and improve maintainability in the hall can do.
[Brief description of the drawings]
FIG. 1 is a principal block diagram of a control system (payout command transmission / reception device) related to data communication between a main control device and a payout control device arranged in a gaming machine according to an embodiment of the present invention.
FIG. 2 is a diagram showing the contents of payout number data (payout number command) transmitted from the main control device to the payout control device in a tabular format.
FIG. 3 is a time chart showing command signal transmission from the main control device to the payout control device in the payout command transmission / reception device;
FIG. 4 is a flowchart showing a command reception processing subroutine executed by a sub CPU arranged in the payout control apparatus according to the embodiment.
FIG. 5 is a continuation of the flowchart of FIG.
FIG. 6 is a flowchart showing a subroutine of command abnormality determination & reading processing executed by the sub CPU;
FIG. 7 is a flowchart showing a subroutine of command reception completion processing executed by the sub CPU;
FIG. 8 is a time chart showing command signal transmission from the main control device to the payout control device related to the ACK signal in the payout command transmitting / receiving device.
FIG. 9 is a flowchart showing a subroutine of command transmission output processing for the payout control device executed by the main CPU of the main control device;
FIG. 10 is a flowchart showing a subroutine of ACK signal monitoring processing executed by the main CPU.
FIG. 11 is a flowchart showing a subroutine of an inspection command check process executed by the sub CPU.
FIG. 12 is a block diagram showing an embodiment of a control system (payout command transmission / reception device) related to data communication between a conventional main control device and a payout control device.
FIG. 13 is a time chart showing command signal transmission from a conventional main control device to a payout control device.
FIG. 14 is a diagram showing the contents of conventional payout number data (payout number command) transmitted from the main control device to the payout control device in a tabular format.
[Explanation of symbols]
1 Dispensing command transmitter / receiver
2 Main controller
3 Dispensing control device (sub control device)
4 Game value medium ejector
5 Emission game value medium sensor

Claims (1)

遊技制御を総括的に行うメイン制御装置と、
遊技価値媒体を払い出す遊技価値媒体排出装置と、
前記メイン制御装置から指令される払出数データに従った払出数の遊技価値媒体を払い出すように前記遊技価値媒体排出装置を制御するサブ制御装置とを備え
記メイン制御装置は、1つの払出に対して、払出数データと該払出数データと特定の相関関係にある確認データとを送信し、
前記サブ制御装置は、前記払出数データと前記確認データとを受信すると、前記相関関係に基いて前記払出数データと前記確認データとの整合性を確認し、整合性が確認された場合に前記払出数データを払出数コマンドとして記憶する遊技機の払出コマンド送受信装置において、
前記メイン制御装置は、前記確認データの送信時および検査コマンドの送信時から予め定めた監視期間に前記サブ制御装置からACK信号が返信されない場合、前記サブ制御装置に対して前記検査コマンドを送信する検査コマンド送信手段を備え、
前記サブ制御装置は、
前記整合性の確認により前記払出コマンドを記憶した場合および前記検査コマンドを記憶した場合に、前記メイン制御装置に対して前記ACK信号を送信するACK信号送信手段と、
前記メイン制御装置から送信された前記検査コマンドを連続して受信すると異常と判定して異常報知するACK信号線異常報知手段と、を備えた、
ことを特徴とする遊技機の払出コマンド送受信装置。
A main control device for overall game control;
A game value medium discharging device for paying out the game value medium;
A sub-control device for controlling the game value medium discharging device so as to pay out the game value medium of the number of payouts according to the payout number data commanded from the main control device ;
Before SL main control unit, for one dispensing, it sends the confirmation data in a specific correlation with payout data and該払out number data,
When the sub-control device receives the payout number data and the confirmation data, the sub control device confirms the consistency between the payout number data and the confirmation data based on the correlation, and when the consistency is confirmed, In a payout command transmission / reception device of a gaming machine that stores payout number data as a payout number command ,
The main control device transmits the inspection command to the sub control device when an ACK signal is not returned from the sub control device during a predetermined monitoring period from the time of transmission of the confirmation data and the time of transmission of the inspection command. An inspection command transmission means;
The sub-control device
ACK signal transmission means for transmitting the ACK signal to the main control device when the payout command is stored by checking the consistency and when the inspection command is stored;
ACK signal line abnormality notifying means for determining abnormality and notifying abnormality when continuously receiving the inspection command transmitted from the main control device,
A payout command transmission / reception device for a gaming machine.
JP2003061886A 2002-10-29 2003-03-07 Payout command transmission / reception device for gaming machine Expired - Fee Related JP4300263B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003061886A JP4300263B2 (en) 2002-10-29 2003-03-07 Payout command transmission / reception device for gaming machine

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002314825 2002-10-29
JP2003061886A JP4300263B2 (en) 2002-10-29 2003-03-07 Payout command transmission / reception device for gaming machine

Publications (2)

Publication Number Publication Date
JP2004202186A JP2004202186A (en) 2004-07-22
JP4300263B2 true JP4300263B2 (en) 2009-07-22

Family

ID=32828219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003061886A Expired - Fee Related JP4300263B2 (en) 2002-10-29 2003-03-07 Payout command transmission / reception device for gaming machine

Country Status (1)

Country Link
JP (1) JP4300263B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007111113A (en) * 2005-10-18 2007-05-10 Sanyo Product Co Ltd Game machine
JP2007111106A (en) * 2005-10-18 2007-05-10 Sanyo Product Co Ltd Game machine
JP2007111127A (en) * 2005-10-18 2007-05-10 Sanyo Product Co Ltd Game machine
JP5374813B2 (en) * 2006-09-08 2013-12-25 株式会社三洋物産 Game machine
JP2009219546A (en) * 2008-03-13 2009-10-01 Sammy Corp Game machine
JP5631257B2 (en) * 2011-04-26 2014-11-26 株式会社藤商事 Bullet ball machine
JP5573929B2 (en) * 2012-11-30 2014-08-20 株式会社三洋物産 Game machine
JP6350725B2 (en) * 2017-06-22 2018-07-04 株式会社三洋物産 Game machine

Also Published As

Publication number Publication date
JP2004202186A (en) 2004-07-22

Similar Documents

Publication Publication Date Title
JP4300263B2 (en) Payout command transmission / reception device for gaming machine
JP4945287B2 (en) Hard random number generator error detection method
JP5744298B1 (en) Game machine
JP2002058850A (en) Command control method for game machine and game machine having fraud preventing function
CN109074343A (en) Communication equipment, communication means, program and communication system
JP3885229B2 (en) Test equipment for spinning machine
JP2015204869A (en) Game machine
JP4247368B2 (en) Pachinko machine
JP2003225360A (en) Slot machine
JP4577337B2 (en) Game machine
JP2004181076A (en) Command transmitting/receiving device for game machine
JP2016083179A (en) Game machine
JP4139046B2 (en) Game machine
JP2003236199A (en) Game machine
JP4191066B2 (en) Gaming machine, fraud prevention method and program for gaming machine
JP2011056279A (en) Controller of game machine
JPH10328391A (en) Game board signal administrating device
JP2001075878A (en) Bus error detection processor
JP2000167212A (en) Pachinko game machine
JP2000093625A (en) Gaming machine control device
JP2015204866A (en) Game machine
JP4761949B2 (en) Game machine
JP4433222B2 (en) Game machine
JP4433228B2 (en) Game machine
JP2015204868A (en) Game machine

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080901

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090210

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090227

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20090312

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150501

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees