(57)【特許請求の範囲】
【請求項１】
制御コマンドと前記制御コマンドに付加されて前記制御コマンドの正当性を検査する誤り検査値とを送信する主制御部と、前記制御コマンドに基づく処理を行う周辺部と、前記主制御部と前記周辺部との間に設けられた中間部とを備える遊技機であって、
前記主制御部は、
前記制御コマンドを出力する出力手段と、
所定の過去に送信された制御コマンドおよび誤り検査値を用いて、前記出力手段によって出力された前記制御コマンドに付加される新たな誤り検査値を生成する第一生成手段と、
前記出力手段によって出力された前記制御コマンドに、前記第一生成手段によって生成された前記新たな誤り検査値を付加して前記中間部に送信する第一送信手段と、
を有し、
前記中間部は、
前記所定の過去に送信された制御コマンドおよび誤り検査値を用いて新たな誤り検査値を生成する第二生成手段と、
前記第一送信手段によって送信された新たな誤り検査値と、前記第二生成手段によって生成された新たな誤り検査値とを用いて、前記第一送信手段によって送信された前記制御コマンドの正当性の検査を行い、検査結果を出力する検査手段と、
前記制御コマンドと前記検査結果とを前記周辺部に送信する第二送信手段と、
を有し、
前記周辺部は、前記検査結果に基づく処理を行い、
前記第一生成手段は、前記出力手段によってＮ（Ｎは自然数）個前に出力された制御コマンドおよび当該制御コマンドに付加された誤り検査値を記憶する制御コマンド記憶手段を有し、当該制御コマンド記憶手段に記憶された制御コマンドおよび誤り検査値から前記新たな誤り検査値を生成し、生成した当該新たな誤り検査値を前記第一送信手段に出力し、
前記第二生成手段は、前記Ｎ個前に送信された制御コマンドおよび当該制御コマンドに付加して送信された誤り検査値を用いて前記新たな誤り検査値を生成し、生成した当該新たな誤り検査値を前記検査手段に出力し、
前記第一送信手段は、１〜Ｎ個目に送信される制御コマンドには、当該遊技機に固有の情報である固有情報を前記新たな誤り検査値の代りに付加して前記中間部に送信する
ことを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パチンコ店等の遊技店に設置されるパチンコ遊技機、雀球遊技機、アレンジボール等の弾球遊技機、スロットマシン等の回胴式遊技機などの遊技機に関する。
【背景技術】
【０００２】
遊技機に対し行われる、メダルや遊技球など（以下、「遊技媒体」という）を遊技とは無関係に強制的に払い出させる不正行為のうち、遊技に係る基本動作を制御する主制御部が搭載された主制御基板や、主制御部からの制御命令に基づき演出処理等を実行する周辺部が搭載された周辺基板に関するものとして、例えば以下に示すものがある。
（１）正規な主制御基板と不正な主制御基板との交換
（２）主制御基板に搭載されたＣＰＵが実行する正規なプログラムが記憶されたＲＯＭと上記プログラムを改ざんした不正なプログラムが記憶されたＲＯＭとの交換
（３）主制御基板と周辺基板との間に不正な基板（なりすまし基板）を設け、かつ上記（２）のＲＯＭの交換
【０００３】
このような不正行為を防止するため、従来の遊技機には、次のようなものがあった。例えば、特許文献１に記載の遊技機は、主制御基板は、制御コマンドを生成してサブ制御基板に送信する第１送信手段と、第１送信手段が所定期間内に送信した制御コマンドのチェックサムを状態監視コマンドとして所定のタイミングで送信する第２送信手段とを備えている。特許文献１に記載の遊技機は、サブ制御基板が、所定期間内に受信した制御コマンドのチェックサムと、所定のタイミングで受信した状態監視コマンドとを比較することで、所定期間内に送信された制御コマンドの正当性を検証している。すなわち、特許文献１に記載の遊技機は、制御コマンドの正当性を検証するための状態監視コマンドを所定のタイミングで送信することで、上記不正行為の防止を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１８０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の遊技機では、所定のタイミングで状態監視コマンドを単独で送信する処理を行っている。状態監視コマンドは、上述のように所定期間内に送信した制御コマンドのチェックサムなので、状態監視コマンドと通常の制御コマンドとは異なるデータ形式あるいはデータ量の情報である。したがって、特許文献１に記載の遊技機では、不正行為を働こうとする者（以下、不正者という）は状態監視コマンドの送信タイミングを容易に知ることができ、不正検出のための検査タイミングを容易に知ることができる。そして、状態監視コマンドの送信タイミングを知ることができる不正者が、状態監視コマンドを不正に取得して内容を解析する虞があった。
【０００６】
また、特許文献１に記載の遊技機では、制御コマンドにそのチェックサムを付加して送信している。制御コマンドにそのチェックサムを付加して送信することにより、通信エラーチェックを行うことは一般的に行われることである。しかしながら、所定期間内に送信した制御コマンドのチェックサムを状態監視コマンドとしている特許文献１に記載の遊技機では、制御コマンドにそのチェックサムを付加していることにより、不正者が制御コマンドを取得することで状態監視コマンドの内容を解析容易にしている。具体的には、不正者が、状態監視コマンドの送信タイミングを容易に知ることができるのは上述したとおりである。状態監視コマンドの送信タイミングを知った不正者が、所定期間内の制御コマンドとそのチェックサムを取得して比較することで、状態監視コマンドの内容を容易に解析することができるという虞があった。
【０００７】
また、特許文献１に記載の遊技機では、状態監視コマンドを送信するという、通常の処理とは異なる処理を行っている。これにより、処理が複雑となるうえ、所定期間内に送信する全てのチェックサムを記憶しておく必要があり、主制御基板の処理負荷が増大するという問題があった。遊技機においては、「風俗営業等の規制及び業務の適正化等に関する法律（風営法）」の規制により主制御基板のＲＯＭやＲＡＭの容量に制限があり、主制御基板のリソースが限られている。にもかかわらず、遊技機メーカーには、遊技機の演出に係わるプログラムに、限られた容量の多くを割り振りたいという要望があった。このため、セキュリティに関する処理による、主制御基板の処理負荷の増大は、看過できない大きな問題であった。
【０００８】
本発明は、上記事情に鑑みてなされたものであり、従来ない簡易な手段により上記不正行為を防止してセキュリティ強度を向上することができる遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために本発明は、制御コマンドと前記制御コマンドに付加されて前記制御コマンドの正当性を検査する誤り検査値とを送信する主制御部と、前記制御コマンドに基づく処理を行う周辺部と、前記主制御部と前記周辺部との間に設けられた中間部とを備える遊技機であって、前記主制御部は、前記制御コマンドを出力する出力手段と、所定の過去に送信された制御コマンドおよび誤り検査値を用いて、前記出力手段によって出力された前記制御コマンドに付加される新たな誤り検査値を生成する第一生成手段と、前記出力手段によって出力された前記制御コマンドに、前記第一生成手段によって生成された前記新たな誤り検査値を付加して前記中間部に送信する第一送信手段と、を有し、前記中間部は、前記所定の過去に送信された制御コマンドおよび誤り検査値を用いて新たな誤り検査値を生成する第二生成手段と、前記第一送信手段によって送信された新たな誤り検査値と、前記第二生成手段によって生成された新たな誤り検査値とを用いて、前記第一送信手段によって送信された前記制御コマンドの正当性の検査を行い、検査結果を出力する検査手段と、前記制御コマンドと前記検査結果とを前記周辺部に送信する第二送信手段と、を有し、前記周辺部は、前記検査結果に基づく処理を行い、前記第一生成手段は、前記出力手段によってＮ（Ｎは自然数）個前に出力された制御コマンドおよび当該制御コマンドに付加された誤り検査値を記憶する制御コマンド記憶手段を有し、当該制御コマンド記憶手段に記憶された制御コマンドおよび誤り検査値から前記新たな誤り検査値を生成し、生成した当該新たな誤り検査値を前記第一送信手段に出力し、前記第二生成手段は、前記Ｎ個前に送信された制御コマンドおよび当該制御コマンドに付加して送信された誤り検査値を用いて前記新たな誤り検査値を生成し、生成した当該新たな誤り検査値を前記検査手段に出力し、前記第一送信手段は、１〜Ｎ個目に送信される制御コマンドには、当該遊技機に固有の情報である固有情報を前記新たな誤り検査値の代りに付加して前記中間部に送信することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、出力手段によって少なくとも過去に出力された制御コマンドとそれに付加された誤り検査値とを用いて生成手段が生成した誤り検査値を今回出力する制御コマンドに付加して中間部に送信する。このように従来にない簡易な方法を適用することにより、制御コマンドとそれに付加された誤り検査値の関係を不正者が解析することを困難にし、不正者が制御コマンドおよびそれに付加された誤り検査値を詐取得したとしても不正を行うことを困難にすることができる。すなわち、本発明によれば、簡易な方法で遊技機のセキュリティ強度を向上することができる。
【００１１】
また、本発明によれば、認証処理は、中間部のみが実行するので、周辺部を構成するＣＰＵの処理負荷の増大を抑制することができる。このため、周辺部の処理速度が低下し、演出のための表示がスムーズに行われないなどの問題の発生を防止することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態に係るパチンコ遊技機の外観構成を示す正面図である。
【図２】本発明の第１の実施形態に係るパチンコ遊技機の電気的構成を示すブロック図である。
【図３】本発明の第１の実施形態に係る主制御部の構成を示す機能ブロック図である。
【図４】制御コマンドへの誤り検査値の付加方法を説明する説明図である。
【図５】主制御部の認証に関する処理を示すシーケンス図である。
【図６】主制御部が出力する制御コマンドの種別の一例を示す図である。
【図７】本発明の第１の実施形態に係る中間部の構成を示す機能ブロック図である。
【図８】中間部の認証に関する処理を示すシーケンス図である。
【図９】主制御部のメイン処理を示すフローチャートである。
【図１０】主制御部の制御コマンド送信処理を示すフローチャートである。
【図１１】中間部のメイン処理を示すフローチャートである。
【図１２】演出制御部のメイン処理を示すフローチャートである。
【図１３】演出制御部の割込処理を示すフローチャートである。
【図１４】演出制御部のコマンド解析処理を示すフローチャートである。
【図１５】演出制御部の認証結果データ解析処理を示すフローチャートである。
【図１６】主制御部の認証に関するハードウェア構成の一例を示す図である。
【図１７】本発明の第２の実施形態に係る主制御部の構成を示す機能ブロック図である。
【図１８】本発明の第２の実施形態に係る主制御部の認証に関する処理を示すシーケンス図である。
【図１９】本発明の第２の実施形態に係る中間部の構成を示す機能ブロック図である。
【図２０】本発明の第２の実施形態に係る中間部の認証に関する処理を示すシーケンス図である。
【図２１】本発明の第２の実施形態に係る主制御部の制御コマンド送信処理を示すフローチャートである。
【図２２】本発明の第２の実施形態に係る中間部のメイン処理を示すフローチャートである。
【図２３】本発明の第２の実施形態に係る主制御部の認証に関するハードウェア構成の一例を示す図である。
【図２４】本発明の制御コマンドへの誤り検査値の付加方法を説明する説明図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明を実施するための形態について説明する。
［遊技機の基本構成］
図１は、本発明に係る遊技機の一実施形態である第１の実施形態のパチンコ遊技機１の外観構成を示す正面図である。また、図２は、図１に示すパチンコ遊技機１の電気的構成を示すブロック図である。
【００１４】
本実施の形態に係るパチンコ遊技機１は、遊技盤１０１を備えている。遊技盤１０１の図１において右下方であって、枠部材１１０の右下部には、遊技者によって操作され、発射部２９２（図２参照）を作動させるための操作ハンドル１１３が設けられている。操作ハンドル１１３は、遊技者側に突出する形状を呈している。操作ハンドル１１３は、発射部２９２を作動させて遊技球を発射させる発射指示部材１１４を備えている。発射指示部材１１４は、操作ハンドル１１３の外周部において、遊技者から見て右回りに回転可能に設けられている。発射部２９２は、発射指示部材１１４が遊技者によって直接操作されている場合に、遊技球を発射させる。公知の技術であるため説明を省略するが、操作ハンドル１１３には、遊技者が発射指示部材１１４を直接操作していることを検出するセンサなどが設けられている。
【００１５】
発射部２９２の作動によって発射された遊技球は、レール１０２ａ，１０２ｂ間を上昇して遊技盤１０１の上部位置に達した後、遊技領域１０３内を落下する。遊技領域１０３には、複数の釘（図示せず）や、遊技球の落下方向を変化させる風車（図示せず）や、入球口が配設されており、遊技球を各種の方向に向けて落下させるようにしている。ここで、「入球口」は、いずれも後述する第１始動口１０５、第２始動口１２０、普通入賞口１０７、第１大入賞口１０９ｃ、第２大入賞口１２９ｃの総称である。
【００１６】
遊技盤１０１の略中央部分には、図柄表示部１０４が配置されている。図柄表示部１０４は、例えば、液晶ディスプレイ等のディスプレイを有している。図柄表示部１０４の下方には、遊技領域１０３に向けて打ち込まれた遊技球を受入れ可能な第１始動口１０５が配置されている。第１始動口１０５の下方には、第２始動口１２０が配置されている。第２始動口１２０は、一対の可動片（図示せず）が閉状態であるときは遊技球を受け入れることが不可能又は受け入れ困難となっており、この一対の可動片が開状態であるときは、第１始動口１０５よりも遊技球の受け入れが容易となる。
【００１７】
また、図柄表示部１０４の左側には、入賞ゲート１０６が配設されている。入賞ゲート１０６は、遊技球の通過を検出し、第２始動口１２０を一定時間だけ開放させる普通図柄の抽選を行うために設けられている。図柄表示部１０４の左側部や下方等には、複数の普通入賞口１０７が配設されている。各普通入賞口１０７に遊技球が入球すると、所定の賞球数（例えば、１０個）の払い出しが行われる。遊技領域１０３の最下部には、どの入球口にも入球しなかった遊技球を回収する回収口１０８が設けられている。
【００１８】
図柄表示部１０４は、後述する演出制御部２０３（図２参照）から第１始動口１０５又は第２始動口１２０に遊技球が入球したことが報知されたときに、複数の装飾図柄の変動表示を開始し、所定時間経過後に当該装飾図柄の変動を停止させる。この停止時に特定図柄（例えば、「７７７」）が揃うと、遊技者は第１大当たり遊技（長当たり遊技）を実行する権利を獲得したこととなり、その後、第１大当たり遊技（長当たり遊技）が開始される。第１大当たり遊技（長当たり遊技）が開始されると、遊技領域１０３の下方に位置する第１大入賞口開閉装置１０９における第１大入賞口開閉扉１０９ａが、一定の期間開放する動作を所定回数（例えば、１５回）繰り返し、入球した遊技球に対応する賞球が払い出される。
【００１９】
一方、図柄表示部１０４における上記装飾図柄の停止時に上記特定図柄とは別の特定図柄（例えば、「７３７」）が揃うと、遊技者は第２大当たり遊技（短当たり遊技）を実行する権利を獲得したこととなり、その後、第２大当たり遊技（短当たり遊技）が開始される。第２大当たり遊技（短当たり遊技）が開始されると、第１大入賞口開閉装置１０９の右斜め上方に位置する第２大入賞口開閉装置１２９における第２大入賞口開閉扉１２９ａが、第１大入賞口開閉扉１０９ａの開閉動作に比して短い時間にて一定の期間開放する動作を所定回数（例えば、１５回）繰り返し、入球した遊技球がある場合、これに対応する賞球が払い出される。
【００２０】
また、遊技盤１０１の遊技領域１０３の外周には、枠部材１１０が設けられ、開口部から遊技領域１０３が遊技者側に露出している。枠部材１１０は、遊技者側に突出する形状を呈している。枠部材１１０において、遊技領域１０３の左上部及び右下部には、演出ライト（ランプユニット）１１１ａ及び１１１ｂがそれぞれ設けられている。各演出ライト１１１ａ及び１１１ｂは、複数のライト１１２を備えている。各演出ライト１１１ａ及び１１１ｂは、上下駆動モータ（図示せず）でそれぞれ駆動されることにより、それぞれが備える複数のライト１１２から照射される光の方向を上下方向、すなわち、パチンコ遊技機１の正面にいる遊技者の頭部と腹部を結ぶ方向に平行な方向に変更可能に構成されている。
【００２１】
また、各ライト１１２は、各演出ライト１１１ａ及び１１１ｂを構成する回転駆動モータ（図示せず）で駆動されることにより、それぞれ所定半径を有する円の円周方向に移動する。上記構成により、各ライト１１２から照射された光を回転移動させつつ、各演出ライト１１１ａ及び１１１ｂ全体から照射された光を上下移動させる演出を行うことができる。さらに、枠部材１１０の下部には、遊技球が供給される受け皿ユニット１１９が設けられている。この受け皿ユニット１１９には、貸し玉装置（図示せず）から貸し出される遊技球が供給される。
【００２２】
図１において、図柄表示部１０４の右側には、演出用の役物（以下、「演出役物」という）１１５が設けられている。演出役物１１５は、キャラクターとして人間の上半身（特に頭部）を模式的に表している。演出役物１１５は、キャラクターの瞼部１１６を開閉して、キャラクターが瞬きをするが如くに、瞼部１１６を上下方向に沿って移動可能に設けられている。また、演出役物１１５は、キャラクターの頭部を左右方向に移動可能に設けられている。
【００２３】
また、枠部材１１０において、操作ハンドル１１３の左側には、遊技者により操作される演出ボタン１１７が設けられている。演出ボタン１１７の操作は、例えば、遊技中における特定のリーチ演出に際し、演出ボタン１１７の操作を促すガイダンスが表示されている間だけ有効となる。
【００２４】
加えて、枠部材１１０には、演出効果音又は不正を知らしめる音響を出力するスピーカ２７７（図２参照）が組み込まれている。このスピーカ２７７は、高音・中音・低音の領域を出力できるタイプのものであり、通常演出時は高音・中音・低音をバランスよく出力するが、例えば、特別演出時又は不正等があった場合には、周りによく聞こえるように高音領域を高く出力するように制御される。
【００２５】
次に、本発明の実施の形態に係るパチンコ遊技機１の電気的構成について、図２に示すブロック図を参照して説明する。パチンコ遊技機１は、電気的な構成上は、制御手段２００に、第１始動口検出部２２１等の各種検出手段や、図柄表示部１０４等の各種演出手段、役物作動装置２３１、払出部２９１、発射部２９２などが接続されて構成されている。制御手段２００は、図２に示す例では、主制御部１０と、中間部２０と、演出制御部２０３と、賞球制御部２０４と、ランプ制御部２０５とから構成されている。
【００２６】
主制御部１０は、ＣＰＵ１０ａと、ＲＯＭ１０ｂと、ＲＡＭ１０ｃと、生成送信回路１０ｇとを備えている。ＣＰＵ１０ａは、パチンコ遊技機１の遊技に係る基本動作を制御し、ＲＯＭ１０ｂに予め記憶されているプログラム（プログラムコード）に基づき、遊技内容の進行に伴う基本処理を実行する。ＲＯＭ１０ｂには、ＣＰＵ１０ａがパチンコ遊技機１の遊技内容の進行に伴う基本処理を実行するためのプログラムコードが予め記憶されている。
【００２７】
ＲＡＭ１０ｃは、ＣＰＵ１０ａがパチンコ遊技機１の遊技内容の進行に伴う基本処理を実行する際に行う演算処理において、データ等のワークエリアとして機能する。生成送信回路１０ｇは、主制御部１０から中間部２０を介して演出制御部２０３に送信される制御コマンドの正当性を認証するために用いる誤り検査値を生成し、生成した誤り検査値を制御コマンドに付加して中間部２０に送信する。なお、主制御部１０が行う制御コマンドの正当性を認証する認証処理に係る処理の詳細については後述する。この主制御部１０では、第１始動口１０５又は第２始動口１２０への遊技球の入球を契機として、大当たりの抽選を行うとともに、この抽選結果に基づいて、ＲＯＭ１０ｂに記憶されている演出に係わるコマンドの選択を行う。
【００２８】
主制御部１０の入力側には、第１始動口検出部２２１と、第２始動口検出部２２５と、ゲート検出部２２２と、普通入賞口検出部２２３と、第１大入賞口検出部２１４と、第２大入賞口検出部２２４とが接続されている。第１始動口検出部２２１は、第１始動口１０５に遊技球が入球したことを検出して検出結果を主制御部１０へ送信する。第２始動口検出部２２５は、第２始動口１２０に遊技球が入球したことを検出して検出結果を主制御部１０へ送信する。ゲート検出部２２２は、入賞ゲート１０６を遊技球が通過したことを検出して検出結果を主制御部１０へ送信する。普通入賞口検出部２２３は、普通入賞口１０７に入球した遊技球を検出して検出結果を主制御部１０へ送信する。第１大入賞口検出部２１４は、第１大入賞口１０９ｃに入球した遊技球を検出して検出結果を主制御部１０へ送信する。第２大入賞口検出部２２４は、第２大入賞口１２９ｃに入球した遊技球を検出して検出結果を主制御部１０へ送信する。上記各検出部は、例えば、近接スイッチなどを用いて構成することができる。
【００２９】
また、この主制御部１０の出力側には、役物作動装置２３１が接続されている。本実施の形態では、役物作動装置２３１は、第１大入賞口開閉扉１０９ａ及び第２大入賞口開閉扉１２９ａをそれぞれ開閉させる第１大入賞口開閉ソレノイド１０９ｂ及び第２大入賞口開閉ソレノイド１２９ｂと、第２始動口１２０を開閉させる第２始動口開閉ソレノイド１２０ｂとから構成されている。
【００３０】
役物作動装置２３１は、主制御部１０によって制御され、長当たり遊技時に、第１大入賞口開閉ソレノイド１０９ｂを通電して第１大入賞口開閉扉１０９ａを開放したり、短当たり遊技及び小当たり遊技時に、第２大入賞口開閉ソレノイド１２９ｂを通電して第２大入賞口開閉扉１２９ａを開放したり、また、上記普通図柄の当選によって第２始動口開閉ソレノイド１２０ｂを通電して第２始動口１２０を開閉したりする。
【００３１】
中間部２０は、ＣＰＵ２０ａと、ＲＯＭ２０ｂと、ＲＡＭ２０ｃ等を備えている。ＣＰＵ２０ａは、主にパチンコ遊技機１の認証に係る動作を制御し、ＲＯＭ２０ｂに予め記憶されているプログラム（プログラムコード）に基づき認証処理を実行する。ＲＯＭ２０ｂには、ＣＰＵ２０ａが処理を実行するためのプログラムコードが記憶されている。ＲＡＭ２０ｃは、ＣＰＵ２０ａが処理を実行する際に行う演算処理や認証処理を実行する際に行う演算処理等のワークエリアとして機能する。中間部２０は、主制御部１０の生成送信回路１０ｇと同様の方法で誤り検査値を生成する。中間部２０は、主制御部１０から送信された誤り検査値と生成した誤り検査値とを用いて、制御コマンドの正当性を認証する認証処理を行う認証機能と、主制御部１０から送信される制御コマンドを示す制御信号を演出制御部２０３等へ中継する中継機能とを有している。
【００３２】
演出制御部２０３は、ＣＰＵ２０３ａと、ＲＯＭ２０３ｂと、ＲＡＭ２０３ｃと、ＶＲＡＭ２０３ｄ等を備えている。ＣＰＵ２０３ａは、主にパチンコ遊技機１の遊技中における演出を制御し、ＲＯＭ２０３ｂに予め記憶されているプログラム（プログラムコード）に基づき、主制御部１０より送信される制御信号にて示された制御コマンドに基づいて演出の抽選及び演出処理を実行する。ＲＯＭ２０３ｂには、ＣＰＵ２０３ａが演出の抽選及び演出処理を実行するためのプログラムコードと、過去の演出パターンとが予め記憶されている。ＲＡＭ２０３ｃは、ＣＰＵ２０３ａが演出の抽選及び演出処理を実行する際に行う演算処理等を実行する際に行う演算処理等のワークエリアとして機能する。ＶＲＡＭ２０３ｄには、図柄表示部１０４に表示させるための画像データが書き込まれる。
【００３３】
この演出制御部２０３は、主制御部１０より送信される演出に係る制御コマンドを示す制御信号を受信すると、この制御信号にて示された制御コマンドに基づいて抽選を行い、演出背景パターン、リーチ演出パターン、登場キャラクター等の演出を確定するとともに、当該確定した演出の制御を行う。
また、演出制御部２０３の出力側には、図柄表示部１０４が接続されており、抽選によって決定された内容のとおりに、図柄表示部１０４に、例えば、図柄変動の演出表示を展開する。
【００３４】
そして通常、ＣＰＵ２０３ａがＲＯＭ２０３ｂに記憶されたプログラムコードを読み込んで、背景画像表示処理、図柄画像表示及び変動処理、キャラクター画像表示処理など各種画像処理を実行し、必要な画像データをＲＯＭ２０３ｂから読み出してＶＲＡＭ２０３ｄに書き込む。背景画像、図柄画像、キャラクター画像は、表示画面上において図柄表示部１０４に重畳表示される。
すなわち、図柄画像やキャラクター画像は背景画像よりも手前に見えるように表示される。このとき、同一位置に背景画像と図柄画像が重なる場合、Ｚバッファ法など周知の陰面消去法により各画像データのＺバッファのＺ値を参照することで、図柄画像を優先してＶＲＡＭ２０３ｄに記憶させる。
【００３５】
演出制御部２０３の入力側には、上記演出ボタン１１７が操作されたことを検出する演出ボタン検出部２２０が接続されている。また演出制御部２０３の出力側には、スピーカ２７７が接続されており、演出制御部２０３において確定したとおりに、音声が出力されるようにしている。
また演出制御部２０３の出力側には、ランプ制御部２０５を備えている。
【００３６】
ランプ制御部２０５は、演出制御部２０３より送信された制御信号にて示された制御コマンドに基づきＲＯＭ２０５ｂから読み込んだプログラムを作動させて演出処理を実行するＣＰＵ２０５ａと、上記プログラムコード及び各種演出パターンデータを記憶するＲＯＭ２０５ｂと、ＣＰＵ２０５ａの演算処理時におけるデータのワークエリアとして機能するＲＡＭ２０５ｃ等を備えている。ランプ制御部２０５は、ランプ２６２、演出ライト１１１ａ及び１１１ｂ、演出役物作動装置２５４を制御する。演出役物作動装置２５４は、演出役物１１５等の、演出用の役物を作動させるモータやソレノイド等によって構成されている。
【００３７】
ランプ制御部２０５は、遊技盤１０１や台枠等に設けられている各種ランプ２６２に対する点灯制御等を行い、また、演出ライト１１１ａ及び１１１ｂをそれぞれ構成する複数のライト１１２に対する点灯制御等を行い、各ライト１１２からの光の照射方向を変更するためにモータに対する駆動制御等を行う。
また、ランプ制御部２０５は、演出制御部２０３より送信された制御信号にて示された制御コマンドに基づき、演出役物１１５を動作させる演出役物作動装置２５４のソレノイドや、瞼部１１６を動作させる演出役物作動装置２５４のモータに対する駆動制御等を行う。
【００３８】
賞球制御部２０４は、主制御部１０と送受信可能に接続されている。賞球制御部２０４は、ＲＯＭ２０４ｂに記憶されたプログラムコードに基づき、賞球制御を行う。この賞球制御部２０４は、ＲＯＭ２０４ｂに記憶されたプログラムを作動して賞球制御の処理を実行するＣＰＵ２０４ａと、ＣＰＵ２０４ａの演算処理時におけるデータのワークエリアとして機能するＲＡＭ２０４ｃ等を備えている。
【００３９】
賞球制御部２０４は、接続される払出部２９１に対して、各入球口（第１始動口１０５、第２始動口１２０、普通入賞口１０７、第１大入賞口１０９ｃ、第２大入賞口１２９ｃ）に入球した遊技球に対応した賞球数を払い出す制御を行う。また、賞球制御部２０４は、発射部２９２に対する遊技球の発射の操作を検出し、遊技球の発射を制御する。発射部２９２は、遊技のための遊技球を発射するものであり、遊技者による遊技操作を検出するセンサ（図示せず）と、遊技球を発射させるソレノイド等（図示せず）を備えている。賞球制御部２０４は、発射部２９２のセンサにより遊技操作を検出すると、検出された遊技操作に対応してソレノイド等を駆動させて遊技球を間欠的に発射させ、遊技盤１０１の遊技領域１０３に遊技球を送り出す。
払出部２９１は、遊技球の貯留部から所定数を払い出すためのモータ等からなる。
【００４０】
ここで、上記構成の演出制御部２０３、賞球制御部２０４、及びランプ制御部２０５を総称して「周辺部３０」とする。また、主制御部１０と、演出制御部２０３と、賞球制御部２０４と、ランプ制御部２０５とは、それぞれ異なるプリント基板（例えば、主制御部１０は主制御基板、演出制御部２０３は演出制御基板、賞球制御部２０４は賞球制御基板、ランプ制御部２０５はランプ制御基板）に搭載されている。これらのうち、演出制御基板、賞球制御基板、及びランプ制御基板を総称して「周辺基板」とする。なお、ランプ制御部２０５は、演出制御部２０３と同一のプリント基板上に搭載することもできる。また、賞球制御部２０４は、主制御部１０と同一のプリント基板上に搭載することもできる。
【００４１】
［遊技機の認証に関する構成］
次に、上記構成のパチンコ遊技機１が不正防止のために有する認証機能を実現する手段について、図面を参照しながら説明する。本実施の形態に係るパチンコ遊技機１の認証機能は、中間部２０が主制御部１０から送信された制御コマンドの正当性を認証することで、主制御部の認証を行うことによって実現される。つまり、パチンコ遊技機１は、主制御部から送信されてきた制御コマンドが正当なものであれば、主制御部も正当なものであると判断するのである。なお、本実施の形態では、中間部２０で得られた認証結果は、周辺部３０のうち演出制御部２０３へ送信され、演出制御部２０３が認証結果に応じた処理を行うこととして説明する。
【００４２】
具体的には、主制御部１０が、１個前（すなわち、前回）に中間部２０を介して演出制御部２０３に送信した制御コマンドとそれに付加された誤り検査値とを用いて生成した誤り検査値を、今回送信するべき制御コマンドに付加して中間部２０に送信する。中間部２０は、１個前に受信した制御コマンドとそれに付加された誤り検査値を用いて誤り検査値を生成し、これと、今回受信した制御コマンドに付加された誤り検査値とを照合して、これらが一致した場合は、今回および前回送信された制御コマンドの正当性が認証され、その結果として主制御部１０の認証が成功したと判断する。中間部２０は、認証結果を、演出制御部２０３へ送信する。演出制御部２０３は、中間部２０から送信された認証結果を確認し、認証結果に応じた処理を行う。
なお、以下、主制御部１０から中間部２０へと送信される制御コマンド（制御コマンドデータ）に誤り検査値が付加された誤り検査値付き制御コマンドを制御コマンド情報という。
【００４３】
図３は、本発明の一実施形態に係るパチンコ遊技機１を構成する主制御部１０の認証処理に関する構成を示す機能ブロック図である。主制御部１０は、制御コマンド出力部５００と、誤り検査値生成部５１０と、付加部５４０と、送信部５５０とを備えている。さらに、誤り検査値生成部５１０は、誤り検査値演算部５２０と、誤り検査値記憶部５３０とから構成される。主制御部１０を構成する各機能ブロックは、図２に示す、ＣＰＵ１０ａ、ＲＯＭ１０ｂ、ＲＡＭ１０ｃおよび生成送信回路１０ｇの各手段を適宜組み合わせて構成される。
【００４４】
制御コマンド出力部５００は、演出制御部２０３によって行われる遊技処理の内容を指示するために、演出制御部２０３に今回送信する制御コマンドを生成し、誤り検査値生成部５１０および付加部５４０に出力する。制御コマンド出力部５００の機能を実現する具体的な手段は、図２に示すＣＰＵ１０ａの一部、ＲＯＭ１０ｂの一部、およびＲＡＭ１０ｃの一部から構成することができる。より具体的には、ＣＰＵ１０ａは、ＲＡＭ１０ｃをワークエリアとして、ＲＯＭ１０ｂに予め記憶されているプログラムに基づき、今回出力すべき制御コマンドを決定し、出力する。
【００４５】
誤り検査値生成部５１０は、制御コマンド出力部５００から出力された今回送信する制御コマンドと、予め保存されている前回送信された制御コマンド情報を用いて生成された誤り検査値とを用いて、次回送信する制御コマンドに付加するための新たな誤り検査値を生成する。さらに、誤り検査値生成部５１０は、演出制御部２０３に前回送信された制御コマンド情報を用いて生成された誤り検査値を付加部５４０に送る。
【００４６】
具体的には、誤り検査値生成部５１０を構成する誤り検査値演算部５２０は、制御コマンド出力部５００から送られた、演出制御部２０３に今回送信する制御コマンドと、後述するように誤り検査値記憶部５３０から送られた、前回送信された制御コマンド情報を用いて生成された誤り検査値とを用いて新たな誤り検査値を生成する。すなわち、今回送信する制御コマンド情報から新たな誤り検査値を生成する。そして、誤り検査値演算部５２０は、生成した誤り検査値を保存するために誤り検査値記憶部５３０に送る。誤り検査値演算部５２０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【００４７】
なお、本実施形態において、「制御コマンド情報を用いて誤り検査値を生成する」とは、制御コマンドの具体的な値である制御コマンドデータと付加された誤り検査値とを用いて、新たな誤り検査値を生成することである。本実施形態において、特に言及しない限りにおいて「制御コマンド」という言葉には、制御コマンドデータの意味が含まれるものとする。また、「制御コマンド情報を用いて生成された誤り検査値」を単に「制御コマンド情報の誤り検査値」ともいう。
【００４８】
また、本実施形態において誤り検査値の生成方法は、特に制限されず、例えば、チェックサム方式、ＣＲＣ方式、奇数パリティ方式、偶数パリティ方式、群計数チェック方式、垂直パリティ方式、垂平パリティ方式、またはハミング符号方式等の公知の方式を用いることができる。
【００４９】
誤り検査値記憶部５３０は、誤り検査値生成部５１０が生成した誤り検査値のうち、今回送信する制御コマンド情報を用いて生成した新たな誤り検査値および前回送信した制御コマンド情報を用いて生成した誤り検査値の少なくとも２つを記憶する。また、誤り検査値記憶部５３０は、前回送信した制御コマンド情報を用いて生成した誤り検査値を誤り検査値演算部５２０および付加部５４０に送る。誤り検査値記憶部５３０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【００５０】
付加部５４０は、制御コマンド出力部５００から出力された今回送信する制御コマンドに、誤り検査値記憶部５３０から送られた前回送信した制御コマンド情報を用いて生成された誤り検査値を付加して、今回送信する制御コマンド情報を生成する。付加部５４０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【００５１】
ここで、制御コマンド情報の形式について説明する。図４は、本実施形態における制御コマンド情報の形式を示す説明図である。図４に示すように、制御コマンド情報は、基本的に、制御コマンドにその１つ前に送信された制御コマンド情報の誤り検査値を付加した形式になっている。ただし、最初に送信される制御コマンド１には所定の初期値が付加されている。そして、２番目に送信される制御コマンド２には、最初に送信された制御コマンド情報、すなわち制御コマンド１と初期値とから生成された誤り検査値１が付加され、制御コマンド情報が生成される。同様に、３番目に送信される制御コマンド３には、２番目に送信される制御コマンド情報、すなわち制御コマンド２と誤り検査値１とから生成された誤り検査値２が付加され、制御コマンド情報が生成される。以下、同様にして制御コマンド情報が生成される。このように、今回送信する制御コマンドに付加する誤り検査値は、初期値を含む既に送信された全ての制御コマンド情報を用いて生成されることとなる。
【００５２】
ここで、初期値は特に制限されず、予め決められた誤り検査値のダミーデータや、遊技機１に固有の情報である固有情報を用いることができる。固有情報は、具体的には、主制御基板の製造番号、ＣＰＵ１０ａに固有のシリアル番号やメーカーコードなどの主制御基板に固有の識別情報である。また、固有情報としては、ＲＯＭ１０ｂに記憶されているデータの一部である所定のデータを用いてもよい。すなわち、本実施形態において、固有情報は、予め決められた遊技機１に固有のデータである。なお、上記識別情報は、ＲＯＭ１０ｂに記憶しておいてもよいし、主制御基板に設けられた他の記憶手段に記憶しておいてもよい。
【００５３】
送信部５５０は、今回送信する制御コマンドに前回送信した制御コマンド情報の誤り検査値を付加して生成された制御コマンド情報を中間部２０へと送信する。送信部５５０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【００５４】
次に、認証処理時における主制御部１０の各構成部の処理について説明する。図５は、主制御部の認証に関する処理を示すシーケンス図である。
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始する。なお、上述のように最初に送信される制御コマンドには誤り検査値に替えて所定の初期値が付加される。
【００５５】
ステップＳ３１において、制御コマンド出力部５００は、中間部２０に今回送信する制御コマンドを生成し、誤り検査値生成部５１０および付加部５４０に出力する。
制御コマンド出力部５００から出力された制御コマンドを受信した誤り検査値生成部５１０は、ステップＳ３２において、受信した今回送信する制御コマンドと前回送信した制御コマンド情報を用いて生成された誤り検査値（すなわち、前回生成された誤り検査値）とを用いて、次回送信する制御コマンドに付加する新たな誤り検査値を生成する。続いて、ステップＳ３３において、誤り検査値生成部５１０は、生成した誤り検査値を保存する。続いて、ステップＳ３４において、誤り検査値生成部５１０は、予め保存してある前回送信した制御コマンド情報を用いて生成された誤り検査値（すなわち、前回生成された誤り検査値）を付加部５４０に出力する。
【００５６】
次に、ステップＳ３５において、付加部５４０は、ステップＳ３１で制御コマンド出力部５００から出力された今回送信する制御コマンドに、ステップＳ３４で誤り検査値生成部５１０から出力された前回送信した制御コマンド情報を用いて生成された誤り検査値を付加して制御コマンド情報を生成し、送信部５５０へ送る。続いて、ステップＳ３６において、送信部５５０は、付加部５４０から受け取った制御コマンド情報を中間部２０へと送信する。
【００５７】
なお、本実施形態では、誤り検査値生成部５１０が、今回送信する制御コマンド情報の誤り検査値を生成（ステップＳ３２）し、生成した誤り検査値を保存（ステップＳ３３）した後に、前回送信した制御コマンド情報の誤り検査値を付加部５４０に出力（ステップＳ３４）するとしたが、これに限定されない。例えば、誤り検査値生成部５１０が、前回送信した制御コマンド情報の誤り検査値を付加部５４０に出力（ステップＳ３４）した後に、今回送信する制御コマンド情報の誤り検査値を生成（ステップＳ３２）し、生成した誤り検査値を保存（ステップＳ３３）するようにしてもよい。この場合、誤り検査値生成部５１０は、少なくとも一つの誤り検査値を保存しておけばよく、誤り検査値を保存するステップＳ３３において、既に保存されている誤り検査値に新しい誤り検査値を上書き保存するようにしてもよい。
【００５８】
次に、主制御部１０から中間部２０を介して演出制御部２０３に対して送信される制御コマンドの種別について図６を用いて説明する。なお、図６は、本発明の実施の形態に係るパチンコ遊技機１を構成する主制御部１０が出力する制御コマンドの種別の一例を示す図であって、図６に示された制御コマンドの種別に限定されるものではない。
【００５９】
主制御部１０から中間部２０を介して演出制御部２０３へ送信される制御コマンドは、１コマンドが２バイトのデータで構成されており、制御コマンドの分類を識別するための１バイトのＭＯＤＥの情報と、各制御コマンドの詳細な制御内容を示す１バイトのＤＡＴＡの情報とから構成されている。ＭＯＤＥの情報とＤＡＴＡの情報は、主制御部１０のＲＯＭ１０ｂに予め記憶されている。なお、本実施形態では、制御コマンドには前回送信された制御コマンド情報の誤り検査値が付加され、制御コマンド情報として中間部２０に送信される。以下の説明において、「制御コマンドを送信する」との表現には、制御コマンドに誤り検査値を付加して制御コマンド情報を生成し、この制御コマンド情報を中間部２０に送信することが含まれる。
【００６０】
「電源投入コマンド」は、パチンコ遊技機１の電源が投入されたことを示すものであり、「ＭＯＤＥ」が「Ｅ１Ｈ」で設定され、「ＤＡＴＡ」が「００Ｈ」に設定されている。
この電源投入コマンドは、パチンコ遊技機１の電源が投入されたときに中間部２０へ送信される。具体的には、パチンコ遊技機１の電源が投入されたとき、主制御部１０を構成する制御コマンド出力部５００は、誤り検査値生成部５１０および付加部５４０に電源投入コマンドを出力する。この電源投入コマンドは、最初に出力された制御コマンドなので、付加部５４０は、制御コマンドから生成した誤り検査値に替えて、予め記憶されている初期値を電源投入コマンドに付加して制御コマンド情報を生成し、送信部５５０は、この制御コマンド情報を送信する。
【００６１】
「客待ちデモコマンド」は、パチンコ遊技機１が非遊技状態における客待ちのデモ画面を表示させることを示すものであり、「ＭＯＤＥ」が「Ｅ２Ｈ」で設定され、「ＤＡＴＡ」が「００Ｈ」に設定されている。
この客待ちデモコマンドは、電源投入時に表示される初期演出表示としてデモが開始されてから、又は後述する未抽選入賞回数がゼロとなりデモが開始されてから、所定時間経過したときに中間部２０へ送信される。
【００６２】
「図柄変動パターンコマンド」は、パチンコ遊技機１の始動口（第１始動口１０５又は第２始動口１２５）に遊技球が入賞し、図柄表示部１０４にて入賞抽選結果に応じた図柄の変動態様を示すものであり、「ＭＯＤＥ」が「Ｅ３Ｈ」で設定され、各種の変動パターンに合わせてＤＡＴＡの情報が設定されている。
この図柄変動パターンコマンドは、入賞抽選時の大当たり判定後の各種の図柄変動パターンの決定時に中間部２０へ送信される。具体的には、入賞抽選時に取得した大当たり判定用乱数が予め設定された大当たり判定テーブルのいずれかの乱数値と対応するかが判断され、各種の図柄変動パターンが決定されて図柄変動が開始されたときに、決定された図柄変動パターンに対応する図柄変動パターンコマンドが中間部２０へ送信される。
【００６３】
「図柄停止コマンド」は、図柄変動を停止表示させることを示すものであり、「ＭＯＤＥ」が「Ｅ４Ｈ」で設定され、「ＤＡＴＡ」が「００Ｈ」に設定されている。
この図柄停止コマンドは、図柄変動が開始され図柄変動時間が経過した後に演出制御部２０３へ送信される。具体的には、図柄変動が開始された後、予め設定された図柄変動時間が経過したため図柄変動を停止させるときに中間部２０へ送信される。
【００６４】
「大当たり開始コマンド」は、各種の大当りが開始することを示すものであり、「ＭＯＤＥ」が「Ｅ５Ｈ」で設定され、大当たりの種別に合わせてＤＡＴＡの情報が設定されている。
この大当たり開始コマンドは、各種の大当りが開始するときに、大当たりの種別に対応する大当たり開始コマンドが中間部２０へ送信される。具体的には、大当たり遊技処理の開始のときに、大当たりの種別に対応する大当たり開始コマンドが中間部２０へ送信される。
【００６５】
「大当たりコマンド」は、各種大当りの種別に合わせた大当たりのラウンド数を示すものであり、「ＭＯＤＥ」が「Ｅ６Ｈ」で設定され、大当たりのラウンド数に合わせてＤＡＴＡの情報が設定されている。
この大当たりコマンドは、大当りラウンドが開始されるときに、開始されたラウンド数に対応する大当たりコマンドが中間部２０へ送信される。具体的には、第１大入賞口開閉扉１０９ａ又は第２大入賞口開閉扉１２９ａを開放させるときに、開放させるときのラウンド数に対応する大当たりコマンドが中間部２０へ送信される。
【００６６】
「大当たり終了コマンド」は、各種の大当りが終了したことを示すものであり、「ＭＯＤＥ」が「Ｅ７Ｈ」で設定され、大当たりの種別に合わせてＤＡＴＡの情報が設定されている。
この大当たり終了コマンドは、各種の大当りが終了するときに、大当たりの種別に対応する大当たり終了コマンドが中間部２０へ送信される。具体的には、大当り遊技終了処理の開始のときに、大当たりの種別に対応する大当たり終了コマンドが中間部２０へ直ちに送信される。
【００６７】
図７は、本発明の一実施形態に係るパチンコ遊技機１を構成する中間部２０の認証処理に関する構成を示す機能ブロック図である。中間部２０は、受信部６００と、誤り検査値生成部６１０と、誤り検査部６４０と、付加部６５０と、送信部６６０とを備えている。さらに、誤り検査値生成部６１０は、誤り検査値演算部６２０と、誤り検査値記憶部６３０とから構成される。中間部２０を構成する各機能ブロックは、図２に示す、ＣＰＵ２０ａ、ＲＯＭ２０ｂ、およびＲＡＭ２０ｃ等の各手段を適宜組み合わせて構成される。
【００６８】
受信部６００は、受信データ用記憶領域を有し、主制御部１０から受信した制御コマンド情報を受信データ用記憶領域に書き込む。また、受信部６００は、今回受信した制御コマンド情報を誤り検査値生成部６１０へ、今回受信した制御コマンドを付加部６５０へ、今回受信した制御コマンドに付加された誤り検査値を誤り検査部６４０へと出力する。受信部６００の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。より具体的には、ＣＰＵ２０ａは、ＲＡＭ２０ｃをワークエリアとして、ＲＯＭ２０ｂに予め記憶されているプログラムに基づき、今回受信した制御コマンド情報を誤り検査値生成部６１０へ、今回受信した制御コマンド情報に含まれる制御コマンドを付加部６５０へ、誤り検査値を誤り検査部６４０へと送信する。
【００６９】
誤り検査値生成部６１０は、受信部６００から送られた今回受信した制御コマンド情報を用いて誤り検査値を生成する。さらに、誤り検査値生成部６１０は、受信部６００から前回送られた制御コマンド情報、すなわち、中間部２０が前回受信した制御コマンド情報を用いて生成された誤り検査値を誤り検査部６４０に送る。
【００７０】
具体的には、誤り検査値生成部６１０を構成する誤り検査値演算部６２０は、受信部６００から送られた、中間部２０が今回受信した制御コマンド情報を用いて誤り検査値を生成し、生成した誤り検査値を、誤り検査値記憶部６３０に送る。誤り検査値演算部６２０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。なお、本実施形態において、誤り検査値の生成方法は、主制御部１０の誤り検査値生成部５１０が行う誤り検査値生成方法と同一であればよく、誤り検査値生成部５１０が行う誤り検査値生成方法と同様に特に制限されず、上述の各種の方法を適用することができる。
【００７１】
誤り検査値記憶部６３０は、誤り検査値演算部６２０が生成した誤り検査値のうち、今回受信した制御コマンド情報を用いて生成された新たな誤り検査値および前回受信した制御コマンド情報を用いて生成された誤り検査値の少なくとも２つを記憶する。また、誤り検査値記憶部６３０は、前回受信した制御コマンド情報を用いて生成された誤り検査値を誤り検査部６４０に送る。誤り検査値記憶部６３０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【００７２】
誤り検査部６４０は、受信部６００から送られた今回受信した制御コマンドに付加された誤り検査値と、誤り検査値記憶部６３０から送られた前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行う。すなわち、誤り検査部６４０は、今回受信した誤り検査値が付加された制御コマンド、および今回の誤り検査値を生成元である前回受信した制御コマンド情報に含まれる制御コマンドの正当性を認証する認証処理を行う。また、誤り検査部６４０は認証結果を認証結果データとして付加部６５０に出力する。誤り検査部６４０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【００７３】
付加部６５０は、受信部６００から出力された、今回中間部２０で受信した制御コマンドに、誤り検査部６４０から出力された認証結果データを付加して、演出制御部２０３へ送信する認証結果データ付き制御コマンドを生成する。また、付加部６５０は、生成した認証結果データ付き制御コマンドを送信部６６０に出力する。付加部６５０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【００７４】
送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へと送信する。送信部５５０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【００７５】
次に、認証処理における中間部２０の各構成部の処理について説明する。図８は、中間部２０の認証に関する処理を示すシーケンス図である。
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始し、中間部２０に誤り検査値付き制御コマンドである制御コマンド情報を送信する。なお、上述のように最初に送信される制御コマンドには誤り検査値に替えて所定の初期値が付加される。
【００７６】
ステップＳ４１において、受信部６００は、誤り検査値付き制御コマンドである制御コマンド情報を受信して、受信データ用記憶領域に書き込む。続いて、ステップＳ４２において、受信部６００は、受信した制御コマンド情報を誤り検査値生成部６１０に、受信した制御コマンド情報に含まれる誤り検査値を誤り検査部６４０に、制御コマンドを付加部６５０に出力する。
【００７７】
受信部６００から今回受信した制御コマンド情報を受信した誤り検査値生成部６１０は、ステップＳ４３において、今回受信した制御コマンド情報を用いて新たな誤り検査値を生成する。続いて、ステップＳ４４において、誤り検査値生成部６１０は、生成した誤り検査値を保存する。続いて、ステップＳ４５において、誤り検査値生成部６１０は、予め保存してある前回受信した制御コマンド情報の誤り検査値を誤り検査部６４０に出力する。
【００７８】
次に、ステップＳ４６において、誤り検査部６４０は、ステップＳ４２で受信部６００から出力された今回受信した制御コマンドに付加された誤り検査値と、ステップＳ４５で誤り検査値生成部６１０から出力された前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行う。具体的には、誤り検査部６４０は、上記２つの誤り検査値を照合し、同一の値であるかを検証する。同一の場合は、誤り検査部６４０は、今回および前回受信した制御コマンドの正当性を認証する。非同一の場合は、誤り検査部６４０は、制御コマンドに正当性がなく、誤りがあると判断する。なお、最初に受信した制御コマンドには誤り検査値に替えて所定の初期値が付加されるので、誤り検査部６４０は、同様に所定の初期値を用いて誤り検査を行う。
【００７９】
次に、ステップＳ４７において、誤り検査部６４０は、誤り検査の結果、すなわち認証結果である認証結果データを付加部６５０に出力する。続いて、ステップＳ４８において、付加部６５０は、ステップＳ４２で受信部６００から出力された今回受信した制御コマンドに、誤り検査部６４０から出力された認証結果データを付加して、認証結果データ付き制御信号を生成し、送信部６６０に出力する。続いて、ステップＳ４９において、送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へ送信する。
【００８０】
なお、本実施形態では、誤り検査値生成部６１０が、今回受信した制御コマンド情報の誤り検査値を生成（ステップＳ４３）し、生成した誤り検査値を保存（ステップＳ４４）した後に、前回受信した制御コマンド情報の誤り検査値を誤り検査部６４０に出力（ステップＳ４５）するとしたが、本発明はこれに限定されない。例えば、誤り検査値生成部６１０が、前回受信した制御コマンド情報の誤り検査値を誤り検査部６４０に出力（ステップＳ４５）した後に、今回受信した制御コマンド情報の誤り検査値を生成（ステップＳ４３）し、生成した誤り検査値を保存（ステップＳ４４）するようにしてもよい。この場合、誤り検査値生成部６１０は、少なくとも一つの誤り検査値を保存しておけばよく、誤り検査値を保存するステップＳ４４において、既に保存されている誤り検査値に新しい誤り検査値を上書き保存するようにしてもよい。
【００８１】
［遊技機の動作処理］
次に、上記構成のパチンコ遊技機１の動作処理について、図面を参照して説明する。以下、主制御部１０による中間部２０への制御コマンドの送信を含む動作処理について、図９に示すフローチャートを参照して説明する。主制御部１０の構成部であるＣＰＵ１０ａは、図示しないパルス発生部より出力されるクロック信号に基づいて、所定の周期（例えば４ミリ秒）ごとに制御コマンドの実行等の処理を行う。なお、以下の説明では、各制御コマンドの送信処理には、制御コマンドに誤り検査値（または初期値）を付加して制御コマンド情報を生成し、生成した制御コマンド情報を送信する処理を含む。この制御コマンド送信処理の詳細については後述する。
【００８２】
ステップＳ１において、まず、主制御部１０は、パチンコ遊技機１の電源投入に伴う初期設定処理を実行した後、ステップＳ２へ進む。なお、パチンコ遊技機１に電源が投入された際には、周辺基板が主制御基板から受信する制御コマンドを確実に取り込むために、周辺基板が立ち上がってＲＡＭ領域の初期化を行い、待機状態となった後、主制御基板が立ち上がるように構成されている。主制御部１０は、初期設定処理として、例えば、スタックポインタに予め決められた所定値を設定するとともに、演出制御部２０３が待機状態になることを待つために、一定時間（例えば、約１秒間）だけ待機する。
【００８３】
ステップＳ２において、制御コマンド出力部５００は、図６に示す電源投入コマンドを付加部５４０に出力し、付加部５４０で初期値が付加された電源投入コマンド（図４参照）を送信部５５０が中間部２０へ送信する。電源投入コマンドを送信した後、主制御部１０は、ステップＳ３へ進む。中間部２０を介して電源投入コマンドを受信すると、演出制御部２０３は、図柄表示部１０４やランプ制御部２０５のそれぞれに対して電源投入時の演出用の制御コマンド、具体的には、遊技機が非遊技状態における客待ちのデモ画面を表示するための客待ちデモコマンド、あるいは、ランプの点灯等を行うための制御コマンドを送信する。
【００８４】
なお、電源投入コマンドは、電源投入後に電源投入に伴う処理を実行させるための制御コマンドを示し、各制御基板が立ち上がった後に、主制御部１０から中間部２０を介して演出制御部２０３へ送信される制御コマンドであって、電源投入後の立ち上げ時における遊技を制御するための初期制御情報、例えば、制御モード、バックアップデータ等を送信するための制御コマンド、あるいは初期演出表示の制御を行うための制御コマンド、各種のデモ表示を開始させるための制御コマンドである。また、この電源投入コマンドは遊技機のリセットボタンを押圧したときにも実行される、上記制御モード、バックアップデータ等を送信するための制御コマンドも含む。
【００８５】
ステップＳ３において、主制御部１０は、ＲＡＭ１０ｃに記憶されている未抽選入賞回数データを参照して、未抽選入賞回数が０回であるか否かを判断する。ここで、未抽選入賞回数とは、第１始動口検出部２２１又は第２始動口検出部２２５で検出された遊技球の数（入賞回数）から、当該遊技球の入球に対応する抽選が行われた回数（既抽選回数）を減じた数である。ステップＳ３の判断結果が「ＮＯ」の場合、すなわち、未抽選入賞回数が０回でない場合には、主制御部１０は、後述するステップＳ１０へ進む。一方、ステップＳ３の判断結果が「ＹＥＳ」の場合、すなわち、未抽選入賞回数が０回である場合には、主制御部１０は、ステップＳ４へ進む。
【００８６】
ステップＳ４において、主制御部１０は、電源投入時のデモが開始されてから経過した時間を計測した後、ステップＳ５へ進む。
ステップＳ５において、主制御部１０は、電源投入時のデモが開始されてから所定時間が経過したか否かを判断する。ステップＳ５の判断結果が「ＹＥＳ」の場合、すなわち、電源投入時のデモが開始されてから所定時間が経過した場合には、主制御部１０は、ステップＳ６へ進む。なお、上記電源投入時のデモを開始するための制御コマンドは、客待ちデモコマンドとしてもよい。
【００８７】
ステップＳ６において、主制御部１０は、客待ちデモコマンドを中間部２０へ送信した後、ステップＳ７へ進む。中間部２０を介して客待ちデモコマンドを受信すると、演出制御部２０３は、図柄表示部１０４やランプ制御部２０５のそれぞれに対して客待ちデモ演出用の制御コマンドを送信する。
【００８８】
一方、ステップＳ５の判断結果が「ＮＯ」の場合、すなわち、電源投入時のデモ（又は客待ちデモ）が開始されてから所定時間が経過していない場合には、主制御部１０は、ステップＳ７へ進む。
ステップＳ７において、主制御部１０は、第１始動口検出部２２１で第１始動口１０５への遊技球の入球が検出されたか又は第２始動口検出部２２５で第２始動口１２０への遊技球の入球が検出されたか否かを判断する。ステップＳ７の判断結果が「ＹＥＳ」の場合、すなわち、第１始動口検出部２２１で第１始動口１０５への遊技球の入球が検出されたか又は第２始動口検出部２２５で第２始動口１２０への遊技球の入球が検出された場合には、主制御部１０は、ステップＳ８へ進む。
【００８９】
一方、ステップＳ７の判断結果が「ＮＯ」の場合、すなわち、第１始動口検出部２２１で第１始動口１０５への遊技球の入球が検出されず、かつ、第２始動口検出部２２５で第２始動口１２０への遊技球の入球が検出されない場合には、主制御部１０は、ステップＳ４へ戻り、ステップＳ４以降の処理を繰り返す。
【００９０】
ステップＳ８において、主制御部１０は、客待ちデモ（又は電源投入時のデモ）が開始されてから計測していた時間をクリアした後、ステップＳ９へ進む。
ステップＳ９において、主制御部１０は、未抽選入賞回数に１を加算する。なお、第１始動口検出部２２１又は第２始動口検出部２２５で複数の遊技球の入球が検出された場合、このステップＳ９では、主制御部１０は、未抽選入賞回数に入球に相当する数を加算する。そして、主制御部１０は、ステップＳ１０へ進む。
【００９１】
ステップＳ１０において、主制御部１０は、予め用意された乱数カウンタ（例えば、０〜２５５をカウント）から１つの大当たり判定用乱数を無作為に取得した後、ステップＳ１１へ進む。
ステップＳ１１において、主制御部１０は、未抽選入賞回数から１を減算した後、ステップＳ１２へ進む。
【００９２】
ステップＳ１２において、主制御部１０は、例えば、予めデータ記憶部に記憶されている大当り判定データテーブルを参照して、ステップＳ１０の処理で取得した大当たり判定用乱数が、この大当り判定データテーブルに記憶されている大当たりの乱数値であるか否かを判断する。また、ステップＳ１２では、主制御部１０は、取得した大当たり判定用乱数がはずれの乱数の場合には、例えば、大当り判定データテーブルを参照して、さらに「リーチ有りのはずれ」又は「リーチ無しのはずれ」であるかについても判断する。ステップＳ１２の判断結果が「ＹＥＳ」の場合、すなわち、ステップＳ１０で取得した大当たり判定用乱数が予め定められた大当たり乱数である場合には、主制御部１０は、ステップＳ１３へ進む。
【００９３】
ステップＳ１３において、主制御部１０は、例えば、大当たりの種別コード（通常当りか確率変動当りか等）、リーチ有り、図柄変動時間、等の「ＭＯＤＥ］の情報を含む図柄変動コマンド（大当たりリーチコマンド）を送信部５５０にセットし、中間部２０へ送信した後、ステップＳ１４へ進む。
ステップＳ１４において、主制御部１０は、図柄変動時間が経過したか否かを判断する。ステップＳ１４の判断結果が「ＮＯ」の場合、すなわち、図柄変動時間が経過していない場合には、主制御部１０は、同判断を繰り返す。そして、図柄変動時間が経過すると、ステップＳ１４の判断結果が「ＹＥＳ」となり、主制御部１０は、ステップＳ１５へ進む。
【００９４】
ステップＳ１５において、主制御部１０は、図柄停止コマンドを中間部２０へ送信した後、ステップＳ１６へ進む。
ステップＳ１６において、主制御部１０は、大当たり開始コマンドを中間部２０へ送信した後、ステップＳ１７へ進む。
ステップＳ１７において、主制御部１０は、大当たり中の各ラウンドに対応するコマンド（大当たりコマンド）を中間部２０に順次送信し、すべてのラウンドの大当たりコマンドの送信を終了した後、ステップＳ１８へ進む。
ステップＳ１８において、主制御部１０は、大当たり終了コマンドを中間部２０へ送信した後、ステップＳ２２へ進む。
【００９５】
一方、ステップＳ１２の判断結果が「ＮＯ」の場合、すなわち、ステップＳ１０の処理で取得した大当たり判定用乱数が予め定められた大当たり乱数でない場合には、主制御部１０は、ステップＳ１９へ進む。
ステップＳ１９において、主制御部１０は、「リーチ有りのはずれ」の場合には「リーチ有りのはずれ」に対応する図柄変動パターンコマンド（はずれリーチコマンド）を、「リーチ無しのはずれ」の場合には「リーチ無しのはずれ」に対応する図柄変動パターンコマンド（はずれコマンド）を中間部２０へ送信した後、ステップＳ２０へ進む。
【００９６】
ステップＳ２０において、主制御部１０は、図柄変動時間が経過したか否かを判断する。ステップＳ２０の判断結果が「ＮＯ」の場合、すなわち、図柄変動時間が経過していない場合には、主制御部１０は、同判断を繰り返す。そして、図柄変動時間が経過すると、ステップＳ２０の判断結果が「ＹＥＳ」となり、主制御部１０は、ステップＳ２１へ進む。
ステップＳ２１において、主制御部１０は、図柄停止コマンドを中間部２０へ送信した後、ステップＳ２２へ進む。
【００９７】
ステップＳ２２において、主制御部１０は、パチンコ遊技機１の電源がオフにされたか否かを判断する。ステップＳ２２の判断結果が「ＮＯ」の場合、すなわち、パチンコ遊技機１の電源がオフにされていない場合には、主制御部１０は、ステップＳ３へ戻り、ステップＳ３以降の処理を繰り返す。
【００９８】
一方、ステップＳ２２の判断結果が「ＹＥＳ」の場合、すなわち、パチンコ遊技機１の電源がオフにされた場合には、主制御部１０は、ステップＳ２３へ進む。
ステップＳ２３において、主制御部１０は、中間部２０に終了処理コマンドを演出制御部２０３へ送信した後、本フローチャートによる処理を終了する。
【００９９】
以下、図９に示す、ステップＳ６の客待ちデモコマンド、ステップＳ１３およびＳ１９の図柄変動パターンコマンド、ステップＳ１５およびＳ２１の図柄停止コマンド、ステップＳ１６の大当り開始コマンド、ステップＳ１７の大当りコマンド、ならびにステップＳ１８の大当り終了コマンドの各制御コマンド送信処理の手順について説明する。
図１０は、主制御部１０による制御コマンド送信処理の手順の一例を示すフローチャートである。
【０１００】
図９に示す、主制御部１０のメイン処理において制御コマンドの送信タイミングになったら、ステップＳ５１において、誤り検査値生成部５１０は、制御コマンド出力部５００から出力された今回送信する制御コマンドと、前回送信された制御コマンド情報の誤り検査値とを用いて新たな誤り検査値を生成し、ステップＳ５２へと進む。
【０１０１】
ステップＳ５２において、誤り検査値生成部５１０は、生成した誤り検査値を保存し、ステップＳ５３へと進む。本実施形態においては、誤り検査値生成部５１０は、前回送信した制御コマンド情報の誤り検査値と、今回送信した制御コマンド情報の誤り検査値との２つの誤り検査値を記憶しておけばよい。
【０１０２】
ステップＳ５３において、付加部５４０は、誤り検査値生成部５１０に保存されている前回送信した制御コマンド情報の誤り検査値を受け取って、今回送信する制御コマンドに付加して制御コマンド情報を生成し、ステップＳ５４へ進む。
ステップＳ５４において、送信部５５０は、付加部５４０が生成した制御コマンド情報を受け取って中間部２０に送信した後、本フローチャートによる処理を終了する。
【０１０３】
なお、本実施形態では、今回送信する制御コマンド情報の誤り検査値を生成するステップＳ５１を行って、生成した誤り検査値を保存するステップＳ５２を行った後に、制御コマンド情報を生成するステップＳ５３を行って、制御コマンド情報を送信するステップＳ５４を行っているが、これに限定されない。例えば、ステップＳ５３とステップＳ５４を行った後に、誤り検査値を生成保存するステップＳ５１およびステップＳ５２を行ってもよいし、ステップＳ５３を行った後に誤り検査値を生成保存するステップＳ５１およびステップＳ５２を行ってもよい。この場合、誤り検査値生成部５１０は、少なくとも一つの誤り検査値を保存しておけばよく、誤り検査値を保存するステップＳ５２において、既に保存されている誤り検査値に新しい誤り検査値を上書き保存するようにしてもよい。
【０１０４】
以下、中間部２０が実行する処理について、図１１に示すフローチャートを参照して説明する。図１１は、中間部２０によるメイン処理である認証処理の手順の一例を示すフローチャートである。
【０１０５】
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始し、中間部２０に誤り検査値付き制御コマンドである制御コマンド情報を送信する。中間部２０の受信部６００は、誤り検査値付き制御コマンドである制御コマンド情報を受信すると、それを受信データ用記憶領域に書き込む。ステップＳ２００１において、中間部２０は、受信データ用記憶領域に制御コマンド情報が書き込まれているか否かを判断することにより、制御コマンド情報を受信したか否かを判断する。中間部２０は、制御コマンド情報を受信するまで同判断を繰り返す。制御コマンド情報を受信していた場合は、ステップＳ２００２に進む。
【０１０６】
ステップＳ２００２において、中間部２０の受信部６００は、受信した制御コマンド情報から誤り検査値を取得して誤り検査部６４０に出力する。また、中間部２０の受信部６００は、受信した制御コマンド情報を誤り検査値生成部６１０に、制御コマンドを付加部６５０に出力する。
続いて、ステップＳ２００３において、中間部２０の誤り検査値生成部６１０は、受信部６００から出力された制御コマンド情報を用いて誤り検査値を生成し、保存する。
【０１０７】
続いて、ステップＳ２００４において、中間部２０の誤り検査部６４０は、誤り検査値生成部６１０から予め保存してある前回受信した制御コマンド情報の誤り検査値を取得する。誤り検査部６４０は、受信部６００から出力された今回受信した制御コマンドに付加された誤り検査値と、誤り検査値生成部６１０から取得した前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行い、ステップＳ２００５に進む。
ステップＳ２００５において、誤り検査部６４０は、検査結果が正しいか否かを判断する。具体的には、誤り検査部６４０は、上記２つの誤り検査値を照合し、同一の値であるかを検証する。同一の場合は、誤り検査部６４０は、検査結果が正しいと判断し、ステップＳ２００６へ進み、制御コマンドの正当性の認証が成功したことを示す認証結果データを生成し、付加部６５０へ出力する。非同一の場合は、誤り検査部６４０は、検査結果が正しくないと判断し、ステップＳ２００７へ進み、制御コマンドの正当性の認証が不成功であったことを示す認証結果データを生成し、付加部６５０へ出力する。
【０１０８】
続いて、ステップＳ２００８において、付加部６５０は、受信部６００から出力された今回受信した制御コマンドに、誤り検査部６４０から出力された認証結果データを付加して、認証結果データ付き制御信号を生成し、送信部６６０に出力する。
続いて、ステップＳ２００９において、送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へ送信し、本フローチャートによる処理を終了する。
【０１０９】
以下、演出制御部２０３が実行する制御処理について、図１２〜図１５に示すフローチャートを参照して説明する。
図１２は、演出制御部２０３によるメイン処理の手順の一例を示すフローチャートである。
ステップＳ１０００において、演出制御部２０３のＣＰＵ２０３ａは、初期設定処理を行う。この処理において、ＣＰＵ２０３ａは、電源投入に応じて、演出制御部２０３のＲＯＭ２０３ｂからメイン処理に関するプログラムコードを読み込む。これとともに、ＣＰＵ２０３ａは、演出制御部２０３のＲＡＭ２０３ｃに記憶されるフラグなどを初期化し、所定値に設定する処理を行う。この処理が終了した場合には、ステップＳ１２００へ処理を移す。
【０１１０】
ステップＳ１１００において、ＣＰＵ２０３ａは、演出用乱数更新処理を行う。この処理において、ＣＰＵ２０３ａは、ＲＡＭ２０３ｃに記憶される演出用乱数値を更新する処理を行う。以降は、所定の割込処理が行われるまで、上記ステップＳ１１００の処理を繰り返し行う。
【０１１１】
図１３は、演出制御部２０３による割込処理の手順の一例を示すフローチャートである。ＣＰＵ２０３ａは、演出制御部２０３に設けられたクロックパルス発生回路（図示せず）から出力されるクロック信号に基づいて、所定の周期（例えば４ミリ秒）ごとに、演出制御部２０３のタイマ割込処理を実行する。
【０１１２】
ステップＳ１２００において、演出制御部２０３は、ＣＰＵ２０３ａのレジスタに格納されている情報をスタック領域に退避させる。
ステップＳ１３００において、演出制御部２０３は、演出制御部２０３で用いられる各種タイマカウンタの更新処理を行う。
【０１１３】
ステップＳ１４００において、演出制御部２０３は、コマンド解析処理を行う。この処理において、演出制御部２０３は、受信データ用記憶領域に書き込まれた制御コマンドの種別を解析する処理を行う。なお、コマンド解析処理の詳細については後述する。
【０１１４】
ステップＳ１５００において、演出制御部２０３は、演出ボタン検出部２２０の信号のチェックを行い、演出ボタン検出部２２０に関する演出入力制御処理を行う。
ステップＳ１６００において、演出制御部２０３は、ＲＡＭ２０３ｃの送信データ用記憶領域に書き込まれた制御コマンドや各種データを図柄表示部１０４やランプ制御部２０５へ送信するデータ送信処理を行う。
ステップＳ１７００において、演出制御部２０３は、ステップＳ１２００で退避した情報をＣＰＵ２０３ａのレジスタに復帰させる。
【０１１５】
図１４は、演出制御部２０３によるコマンド解析処理の手順の一例を示すフローチャートである。
ステップＳ１４０１において、演出制御部２０３は、ＲＡＭ２０３ｃの所定の記憶領域である受信データ用記憶領域に認証結果データ付き制御コマンドが書き込まれているか否かを確認して、制御コマンドを受信したか否かを判断する。そして、演出制御部２０３は、受信データ用記憶領域に認証結果データ付き制御コマンドが書き込まれていない場合、本フローチャートによる処理を終了し、受信データ用記憶領域に認証結果データ付き制御コマンドが書き込まれている場合、ステップＳ１４１０へ進む。
【０１１６】
ステップＳ１４１０において、演出制御部２０３は、受信データ用記憶領域に書き込まれた認証結果データ付き制御コマンドから認証結果データを取得し、認証結果データ解析処理を行う。この認証結果データ解析処理の詳細については図１５を用いて後に詳述する。認証結果データ解析処理が終了したらステップＳ１４２０へ進む。
【０１１７】
ステップＳ１４２０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、客待ちデモコマンド（図９のステップＳ６参照）である場合、ステップＳ１４２１へ進み、客待ちデモコマンドでない場合、ステップＳ１４３０へ進む。
ステップＳ１４２１において、演出制御部２０３は、客待ちデモ用の演出パターンを決定するデモ演出処理を行う。具体的には、客待ちデモ用の演出パターンを決定し、決定したデモ演出パターンに基づく演出処理コマンドをＲＡＭ２０３ｃの送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１１８】
ステップＳ１４３０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、大当たり用又ははずれ用の図柄変動パターンコマンド（図９のステップＳ１３又はステップＳ１９参照）である場合、ステップＳ１４３１へ進み、図柄変動パターンコマンドでない場合、ステップＳ１４４０へ進む。
ステップＳ１４３１において、演出制御部２０３は、大当たり用又ははずれ用のそれぞれについて用意された各種変動演出パターンの中から、１つ変動演出パターンを決定する図柄変動演出処理を行う。具体的には、演出制御部２０３は、図１１のステップＳ１１００において更新されている演出用乱数値から１つの乱数値を取得し、取得した演出用乱数値とＲＯＭ２０３ｂに予め保持する変動演出パターン決定テーブルとに基づいて、１つの変動演出パターンを決定する。そして、演出制御部２０３は、決定した変動演出パターンに基づく演出処理コマンドを送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１１９】
ステップＳ１４４０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、図柄停止コマンド（図９のステップＳ１５又はステップＳ２１参照）である場合、ステップＳ１４４１へ進み、図柄停止コマンドでない場合、ステップＳ１４５０へ進む。
ステップＳ１４４１において、演出制御部２０３は、変動態様を示す演出図柄を停止表示させるための図柄停止演出処理を行う。具体的には、演出制御部２０３は、図柄停止コマンドに基づく演出処理コマンドを送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１２０】
ステップＳ１４５０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、大当たり開始コマンド（図９のステップＳ１６参照）である場合、ステップＳ１４５１へ進み、大当たり開始コマンドでない場合、ステップＳ１４６０へ進む。
ステップＳ１４５１おいて、演出制御部２０３は、大当たり開始演出パターンを決定する大当たり開始演出処理を行う。具体的には、演出制御部２０３は、大当たり開始コマンドに基づいて大当たり開始演出パターンを決定し、決定した大当たり開始演出パターンに基づく演出処理コマンドを送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１２１】
ステップＳ１４６０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、大当たりコマンド（図９のステップＳ１７参照）である場合、ステップＳ１４６１へ進み、大当たりコマンドでない場合、ステップＳ１４７０へ進む。
ステップＳ１４６１おいて、演出制御部２０３は、ラウンド別の大当たりコマンドに対応する大当たり演出処理を行う。具体的には、演出制御部２０３は、各大当たりラウンドのそれぞれに対応した大当たりコマンドに基づく演出処理コマンドを送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１２２】
ステップＳ１４７０において、演出制御部２０３は、受信データ用記憶領域に書き込まれている制御コマンドが、大当たり終了コマンド（図９のステップＳ１８参照）である場合、ステップＳ１４７１へ進み、大当たり終了コマンドでない場合、本フローチャートによる処理を終了する。
ステップＳ１４７１において、演出制御部２０３は、大当たり終了演出パターンを決定する大当たり終了演出処理を行う。具体的には、演出制御部２０３は、大当たり終了コマンドに基づいて大当たり終了演出パターンを決定し、決定した大当たり終了演出パターンに基づく演出処理コマンドを送信データ用記憶領域に書き込んで送信データとし、図柄表示部１４０やランプ制御部２０５へ送信させる。
【０１２３】
以下、図１４に示す、ステップＳ１４１０の演出制御部２０３による認証結果データ解析処理について、図１５に示すフローチャートを参照して説明する。図１５は、演出制御部２０３による認証結果データ解析処理の手順の一例を示すフローチャートである。
【０１２４】
ステップＳ１４１１において、演出制御部２０３は、受信データ用記憶領域に書き込まれた認証結果データ付き制御コマンドから認証結果データを取得する。
続いて、ステップＳ１４１２において、演出制御部２０３は、取得した認証結果データが、認証成功を示す結果であるか否かを確認する。演出制御部２０３は、認証結果データが認証成功を示す結果である場合、今回の中間部２０での認証処理が成功し、パチンコ遊技機１の正当性を認証することができたと判断して、本フローチャートによる処理を終了する。一方、演出制御部２０３は、認証結果データが認証不成功を示す結果である場合、今回の中間部２０での認証処理が不成功であり、パチンコ遊技機１で不正行為や通信エラーが発生したおそれがあると判断し、ステップＳ１４１３へ進む。
【０１２５】
ステップＳ１４１３において、パチンコ遊技機１で不正行為や通信エラーが発生したおそれがあると判断された場合、演出制御部２０３は、その旨を報知する為に報知信号を出力し、本フローチャートによる処理を終了する。
【０１２６】
演出制御部２０３は、生成した報知信号を、例えば、図柄表示部１０４やランプ制御部２０５、あるいはパチンコ遊技機１を管理するセンター制御装置などへ送信する。図柄表示部１０４やランプ制御部２０５等は、受信した報知信号に基づいて、パチンコ遊技機１で不正行為や通信エラーが発生したおそれがある旨を報知する演出を実行する。この演出は、例えば、図柄表示部１０４に通常出現しないキャラクターを出現させたり、通常出現するキャラクターを通常とは異なる方法で出現させるなどである。また、図柄表示部１０４の輝度を変えたり、色を変えたり、ランプ制御部２０５に対して所定のランプを表示制御するようにしてもよい。いずれにせよ、遊技店の従業員が当該パチンコ遊技機１の前を通過した際に、その状態に気付くようにしてあればよい。また、この演出は、顧客がその状態に気付かないような演出でもよく、また、顧客が容易に気付く演出であってもよい。顧客が容易に気付く演出にすれば、不正行為を効率的に抑止することができる。
【０１２７】
また、報知信号に「大当たり中」や「確率変動中」などのパチンコ遊技機１の遊技状態に関する情報を含めてもよい。これらの遊技状態に関する情報に基づいて、パチンコ遊技機１を管理するセンター制御装置などによって不正行為が行われているか否かの判断を行ってもよい。例えば、大当たり中や確率変動中は入賞が集中していても正常である場合がある。よって、大当たり中や確率変動中は、その他の状態とは異なる条件で不正行為のおそれがあるか否かについて判断するのがよい。また、遊技状態に関する情報は、報知信号に含めずに別信号として出力するようにしてもよい。この場合、従業員は、報知信号と遊技状態に関する情報の両方に基づいて、不正行為のおそれがあるか否かについて判断する。
【０１２８】
なお、主制御部１０と賞球制御部２０４との間に中間部２０を設けた場合の認証処理は、主制御部１０と演出制御部２０３との間に中間部２０を設けた場合の認証処理とほぼ同様の手順で行われるため説明を省略する。
【０１２９】
以上のように、本実施形態では、主制御部１０は、制御コマンド情報の誤り検査値を生成し保存している。そして主制御部１０は、今回送信する制御コマンドに前回送信した制御コマンド情報の誤り検査値を付加して制御コマンド情報として中間部２０に送信する。一方、中間部２０は、受信した制御コマンド情報の誤り検査値を生成し保存している。そして中間部２０は、今回受信した制御コマンド情報に含まれる誤り検査値と、前回受信した制御コマンド情報の誤り検査値とを照合して誤り検査を行う。
すなわち、本発明に係る遊技機は、過去に送信した制御コマンド情報の誤り検査値を今回送信する制御コマンドに付加して、主制御部１０から中間部２０に送信している。
【０１３０】
通常チェックサム等の誤り検査値は生成元の制御コマンドに付加されて通信エラーチェックに利用される。これに対して、本実施形態の遊技機１は、上述のように、前回送信した制御コマンド情報の誤り検査値を、今回送信する制御コマンドに付加する。このような従来にない新規かつ簡易な手法を用いることにより、不正者が制御コマンドと誤り検査値を不正に取得しても制御コマンドと誤り検査値の関係を容易に知ることができない。したがって、本実施形態によれば、不正者による不正行為を防止することができ、セキュリティ強度を向上させることができる。
【０１３１】
また、主制御部１０が前回送信した制御コマンド情報の誤り検査値を、今回送信する制御コマンドに付加して送信し、中間部２０が認証処理を行うことにより、今回受信した制御コマンドの正当性を認証するとともに、前回受信した制御コマンド、すなわち、今回付加された誤り検査値の生成元となった制御コマンド情報に含まれる制御コマンドの正当性をも認証することができる。すなわち、制御コマンドの連続性を認証することができる。
【０１３２】
また、本実施形態では、前回送信した制御コマンドとそれに付加された誤り検査値を用いて、今回送信する制御コマンドに付加する誤り検査値を生成している。これにより、今回送信する誤り検査値が、それまでに送信された制御コマンド情報を含む、すなわち、それまでに付加された誤り検査値の情報をも含むことになる。したがって、今回送信する誤り検査値が、既に送信された制御コマンドの送信履歴の情報を含むことになるので、不正者が一部の制御コマンド情報を取得したとしても誤り検査値を解析することができないようにすることができ、セキュリティ強度を向上することができる。また、誤り検査値が制御コマンドの送信履歴の情報を含むことになるので、制御コマンドの連続性を検証することができる。
【０１３３】
また、上述のように、本実施形態では、前回送信した制御コマンドとそれに付加された誤り検査値を用いて今回送信する制御コマンドに付加する誤り検査値を生成しており、今回送信する誤り検査値が過去に送信した制御コマンド情報の履歴を含んでいる。これにより、今回送信する誤り検査値は、生成元となる前回送信した制御コマンド情報に含まれる制御コマンドの種類によって一義的に決まらない値となる。例えば、大当たりコマンドのように同一の種類の制御コマンドが連続して発生するような場合であっても、制御コマンド情報を用いて誤り検査値を生成するので、連続して送信される大当たりコマンドのそれぞれに異なる誤り検査値が付加されることとなる。したがって、不正者が連続して制御コマンド情報を不正に取得したとしても、制御コマンドと誤り検査値との関係の解析を困難とすることができ、セキュリティ強度を向上することができる。
【０１３４】
また、本実施形態では、最初に送信される制御コマンドには初期値を付加して制御コマンド情報を生成しているので、今回送信する制御コマンドに付加される誤り検査値に、初期値を含む過去に送信した制御コマンド情報に関する情報が含まれている。この初期値として遊技機１に固有の値である固有情報を用いることにより、誤り検査値を遊技機１に特有の値とすることができる。これにより、初期値の値を知らない不正者が一部の制御コマンド情報を取得したとしても誤り検査値の解析を不可能とすることができ、セキュリティ強度をより一層向上することができる。
【０１３５】
また、本実施形態では、各制御コマンドに誤り検査値を付加して主制御部１０から中間部２０に送信し、中間部２０が各制御コマンド情報毎に認証処理を行うので、常時不正を検査することができる。
【０１３６】
また、本実施形態の遊技機１は、通常は通信エラーチェックに用いる誤り検査値を不正を検出するための検査値として利用している。このように通信エラーチェックに従来から用いている誤り検査値を用いることで、誤り検査値を行うための検査値を別に生成するための手段を設けることなく、簡単な構成で不正者による不正を防止することができ、セキュリティ強度を向上させることができる。すなわち、遊技機の主制御基板のリソースが限られているという状況下において、セキュリティ強度を向上させつつ、主制御基板の処理負荷の増大を抑制することができる。
【０１３７】
また、本実施形態の遊技機１では、中間部２０は、認証結果データを制御コマンドに付加して認証結果データ付き制御コマンドとして演出制御部２０３へ送信している。このように構成することにより、中間部２０から演出制御部２０３に送信される信号と、主制御部１０から中間部２０に送信される信号との形式を同一の形式とすることができる。これにより、不正者が、中間部２０から演出制御部２０３へ送る信号に着目することを防止でき、その結果として、認証結果データを取得して不正を働くことを防止することができる。
【０１３８】
［主制御部のハードウェア構成］
ここで、本実施形態は、簡易な構成で実現できるため、ハードウェアでもソフトウェアでも容易に実現可能である。以下、ハードウェアで実現する場合の主制御部の認証に関する構成の一例について説明する。図１６は、主制御部１０の認証に関する構成である誤り検査値生成・送信部（生成送信回路１０ｇ）を示す構成図である。
【０１３９】
誤り検査値生成・送信部７００は、ＣＰＵ１０ａの指示に基づいて、制御コマンド情報を生成して演出制御部２０３に送信するための具体的な手段であり、制御回路７１０と、誤り検査値生成回路７２０と、誤り検査値入出力部７３０と、データ送信バッファ７４０と、データ送信回路７５０とを備える。
【０１４０】
制御回路７１０は、ＣＰＵ１０ａと制御線で接続されており、誤り検査値生成・送信部７００を構成する各部の動作を制御する。誤り検査値生成回路７２０は、制御回路７１０の生成回路制御指示に基づいて、ＣＰＵ１０ａから出力された制御コマンドと誤り検査値入出力部７３０から出力された前回送信した制御コマンド情報から生成された誤り検査値とを用いて誤り検査値を生成し、生成した誤り検査値を誤り検査値入出力部７３０に出力する。誤り検査値入出力部７３０は、シフトレジスタ等によって構成され、制御回路７１０のデータ入出力指示に基づいて既に保存されている前回送信した制御コマンド情報の誤り検査値を誤り検査値生成回路７２０およびデータ送信バッファ７４０に出力する。また、誤り検査値入出力部７３０は、誤り検査値生成回路７２０から出力された今回送信する制御コマンド情報の誤り検査値を保存する。ここで、誤り検査値生成回路７２０は、図３に示す誤り検査値生成部５１０に対応している。また、誤り検査値入出力部７３０は、誤り検査値記憶部５３０に対応している。また、誤り検査値生成回路７２０と誤り検査値入出力部７３０は誤り検査値生成部７６０を構成し、これは誤り検査値生成部５１０に対応している。
【０１４１】
データ送信バッファ７４０は、ＣＰＵ１０ａから出力された今回送信する制御コマンドと、誤り検査値入出力部７３０から出力された誤り検査値を併せて送信するために、これらを一時的に保存する記憶領域である。データ送信バッファ７４０は、制御回路７１０の送信制御指示に基づいて一時的に保存した制御コマンドと誤り検査値とを併せてデータ送信回路７５０に出力する。データ送信回路７５０は、データ送信バッファ７４０から出力された制御コマンドと誤り検査値とを用いて制御コマンド情報を生成し、中間部２０に送信する。ここで、データ送信バッファ７４０とデータ送信回路７５０は、図２に示す付加部５４０と送信部５５０に対応している。
【０１４２】
なお、上述のハードウェア構成は一例であり、本実施形態の遊技機１の機能を実現するハードウェア構成であればよい。また、上述のハードウェア構成では、特に言及しなかったが、誤り検査値生成・送信部７００をＣＰＵ１０ａと、ＲＯＭ１０ｂと、ＲＡＭ１０ｃと一体のワンチップマイコンとして構成してもよい。また、ワンチップマイコンとして構成する場合、制御回路７１０とデータ送信バッファ７４０と、データ送信回路７５０から構成される送信部と、誤り検査値生成部７６０とを別に設けてもよい。これにより、既存のワンチップマイコンの送信部を転用するとともに誤り検査値生成部７６０を追加することで、既存のワンチップマイコンを利用して容易に形成することができる。
【０１４３】
［第２の実施形態］
以下、本発明の遊技機の一実施形態に係る第２の実施形態について説明する。第１の実施形態の遊技機１は、前回送信した制御コマンド情報の誤り検査値を今回送信する制御コマンドに付加して制御コマンド情報を生成するために、生成した誤り検査値を保存しておき、保存しておいた前回送信した制御コマンド情報の誤り検査値を取得して制御コマンド情報を生成していた。これに対して、本実施形態の遊技機は、制御コマンド情報を保存しておき、既に保存してある前回送信した制御コマンド情報を取得してその誤り検査値を生成し、この誤り検査値を今回送信する制御コマンドに付加して制御コマンド情報を生成する。本実施形態の遊技機は、それ以外の点では基本的に第１の実施形態の遊技機１と同様なので、以下、同一の部材については同一の符号を付すとともにその説明は省略し、異なる点について重点的に説明する。
【０１４４】
［遊技機の認証に関する構成］
図１７は、本実施形態に係るパチンコ遊技機を構成する主制御部１０の認証処理に関する構成を示す機能ブロック図である。主制御部１０は、制御コマンド出力部５００と、誤り検査値生成部８１０と、付加部５４０と、送信部５５０とを備えている。さらに、誤り検査値生成部８１０は、制御コマンド情報記憶部８２０と、誤り検査値演算部８３０とから構成される。主制御部１０を構成する各機能ブロックは、図２に示す、ＣＰＵ１０ａ、ＲＯＭ１０ｂ、ＲＡＭ１０ｃおよび生成送信回路１０ｇの各手段を適宜組み合わせて構成される。
【０１４５】
制御コマンド出力部５００は、演出制御部２０３に今回送信する制御コマンドを生成し、誤り検査値生成部８１０および付加部５４０に出力する。付加部５４０は、制御コマンド出力部５００から出力された今回送信する制御コマンドに、誤り検査値生成部８１０から送られた前回送信した制御コマンド情報を用いて生成された誤り検査値を付加して、中間部２０へと今回送信する制御コマンド情報を生成する。送信部５５０は、この制御コマンド情報を中間部２０へと送信する。
【０１４６】
制御コマンド情報記憶部８２０は、制御コマンド出力部５００から出力された制御コマンドと誤り検査値演算部８３０から出力された前回送信した制御コマンド情報の誤り検査値とを合わせて制御コマンド情報として記憶する。また、制御コマンド情報記憶部８２０は、前回送信した制御コマンド情報を誤り検査値演算部８３０に出力する。本実施形態では、制御コマンド情報記憶部８２０は、少なくとも１つの制御コマンド情報を記憶しておけばよい。制御コマンド情報記憶部８２０は、制御コマンド出力部５００から今回送信する制御コマンドを受信すると、前回送信した制御コマンド情報を誤り検査値演算部８３０に出力するとともに、今回送信する制御コマンドを上書き保存する。なお、制御コマンド情報記憶部８２０は、今回送信する制御コマンド情報と前回送信した制御コマンド情報との少なくとも２つを記憶していてもよい。制御コマンド情報記憶部８２０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【０１４７】
誤り検査値演算部８３０は、制御コマンド情報記憶部８２０から出力された前回送信した制御コマンド情報を用いて誤り検査値を生成する。さらに、誤り検査値演算部８３０は、前回送信した制御コマンド情報を用いて生成された誤り検査値を制御コマンド情報記憶部８２０および付加部５４０に送る。誤り検査値演算部８３０の機能を実現する具体的な手段は、図２に示す生成送信回路１０ｇから構成することができる。
【０１４８】
次に、認証処理時における主制御部１０の各構成部の処理について説明する。図１８は、主制御部の認証に関する処理を示すシーケンス図である。
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始する。
【０１４９】
ステップＳ６１において、制御コマンド出力部５００は、演出制御部２０３に今回送信する制御コマンドを生成し、誤り検査値生成部８１０および付加部５４０に出力する。
制御コマンド出力部５００から出力された制御コマンドを受信した誤り検査値生成部８１０は、ステップＳ６２において、制御コマンド情報記憶部８２０に既に保存されている前回送信した制御コマンド情報を用いて、誤り検査値演算部８３０によって誤り検査値を生成する。ステップＳ６３において、ステップＳ６２で生成した前回送信した制御コマンドの誤り検査値を付加部５４０に出力するとともに、制御コマンド情報記憶部８２０にも出力する。続いて、ステップＳ６４において、誤り検査値生成部８１０は、制御コマンド出力部５００から出力された制御コマンドと誤り検査値演算部８３０から出力された誤り検査値とを今回送信する制御コマンド情報として制御コマンド情報記憶部８２０に保存する。
【０１５０】
次に、ステップＳ６５において、付加部５４０は、ステップＳ６１で制御コマンド出力部５００から出力された今回送信する制御コマンドに、ステップＳ６４で誤り検査値生成部８１０から出力された前回送信した制御コマンド情報を用いて生成された誤り検査値を付加して制御コマンド情報を生成し、送信部５５０に送る。続いて、ステップＳ６６において、送信部５５０は、今回送信する制御コマンド情報を中間部２０へと送信する。なお、上述のように最初に送信される制御コマンドには誤り検査値に替えて所定の初期値が付加される。
【０１５１】
なお、本実施形態では、誤り検査値生成部８１０が、前回送信した制御コマンド情報の誤り検査値を付加部５４０に出力（ステップＳ６３）した後に、今回送信する制御コマンド情報を保存（ステップＳ６４）するとしたが、これに限定されない。例えば、誤り検査値生成部８１０が、前回送信した制御コマンド情報の誤り検査値を生成（ステップＳ６２）し、今回送信する制御コマンド情報を保存（ステップＳ６４）した後に、前回送信した制御コマンドの誤り検査値を付加部５４０に出力（ステップＳ６３）するようにしてもよい。
また、誤り検査値生成部８１０は、制御コマンド出力部５００から制御コマンドを受信したら、受信した制御コマンドを保存し、続いて、前回送信した制御コマンド情報の誤り検査値を生成（ステップＳ６２）し、前回送信した制御コマンド情報の誤り検査値を付加部５４０に出力（ステップＳ６３）し、今回送信する制御コマンド情報を保存（ステップＳ６４）するようにしてもよい。この場合、誤り検査値生成部８１０は、２つの制御コマンド情報を保存可能に構成すればよく、制御コマンドを保存するステップにおいて、既に保存されている前々回に送信した制御コマンド情報に新しい制御コマンドを上書き保存すればよい。
【０１５２】
図１９は、本発明の第２の実施形態に係るパチンコ遊技機を構成する中間部２０の認証処理に関する構成を示す機能ブロック図である。中間部２０は、受信部６００と、誤り検査値生成部９１０と、誤り検査部６４０と、付加部６５０と、送信部６６０とを備えている。さらに、誤り検査値生成部９１０は、制御コマンド情報記憶部９２０と、誤り検査値演算部９３０とから構成される。中間部２０を構成する各機能ブロックは、図２に示す、ＣＰＵ２０ａ、ＲＯＭ２０ｂ、およびＲＡＭ２０ｃ等の各手段を適宜組み合わせて構成される。
【０１５３】
受信部６００は、受信データ用記憶領域を有し、主制御部１０から受信した制御コマンド情報を受信データ用記憶領域に書き込む。また、受信部６００は、今回受信した制御コマンド情報を誤り検査値生成部９１０へ、今回受信した制御コマンド情報に含まれる誤り検査値を誤り検査部６４０へ、今回受信した制御コマンド情報に含まれる制御コマンドを付加部６５０へと送信する。誤り検査部６４０は、受信部６００から送られた誤り検査値と、誤り検査値生成部９１０から送られた前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行う。また、誤り検査部６４０は誤り検査の結果である認証結果データを付加部６５０に出力する。
【０１５４】
付加部６５０は、受信部６００から出力された、今回中間部２０で受信した制御コマンドに、誤り検査部６４０から出力された認証結果データを付加して、演出制御部２０３へ送信する認証結果データ付き制御コマンドを生成し、送信部６６０へ出力する。送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へと送信する。
【０１５５】
誤り検査値生成部９１０は、受信部６００から送られた今回受信した制御コマンド情報を保存する。さらに、誤り検査値生成部９１０は、受信部６００から前回送られた制御コマンド情報、すなわち、中間部２０が前回受信した制御コマンド情報を用いて生成された誤り検査値を誤り検査部６４０に送る。
【０１５６】
具体的には、誤り検査値生成部９１０を構成する制御コマンド情報記憶部９２０は、受信部６００から出力された制御コマンド情報を記憶する。また、制御コマンド情報記憶部９２０は、前回受信した制御コマンド情報を誤り検査値演算部９３０に出力する。本実施形態では制御コマンド情報記憶部９２０は、今回受信した制御コマンド情報と前回受信した制御コマンド情報との少なくとも２つを記憶すればよい。なお、制御コマンド情報記憶部９２０は、少なくとも１つの制御コマンド情報を保存可能に構成してもよい。この場合、制御コマンド情報記憶部９２０は、受信部６００から今回受信した制御コマンド情報を受信すると、前回受信した制御コマンド情報を誤り検査値演算部９３０に出力するとともに、今回受信した制御コマンドを上書き保存する。制御コマンド情報記憶部９２０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【０１５７】
誤り検査値演算部９３０は、制御コマンド情報記憶部９２０から出力された前回受信した制御コマンド情報を用いて誤り検査値を生成する。さらに、誤り検査値演算部９３０は、前回受信した制御コマンド情報を用いて生成した誤り検査値を誤り検査部６４０に送る。誤り検査値演算部９３０の機能を実現する具体的な手段は、図２に示すＣＰＵ２０ａの一部、ＲＯＭ２０ｂの一部、およびＲＡＭ２０ｃの一部等から構成することができる。
【０１５８】
次に、認証処理時における中間部２０の各構成部の処理について図２０を用いて説明する。図２０は、中間部２０の認証に関する処理を示すシーケンス図である。
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始し、中間部２０に誤り検査値付き制御コマンドである制御コマンド情報を送信する。なお、上述のように最初に送信される制御コマンドには誤り検査値に替えて所定の初期値が付加される。
【０１５９】
ステップＳ７１において、受信部６００は、誤り検査値付き制御コマンドである制御コマンド情報を受信して、受信データ用記憶領域に書き込む。続いて、ステップＳ７２において、受信部６００は、受信した制御コマンド情報を誤り検査値生成部９１０に、受信した制御コマンド情報に含まれる誤り検査値を誤り検査部６４０に、受信した制御コマンド情報に含まれる制御コマンドを付加部６５０に出力する。
【０１６０】
受信部６００から今回受信した制御コマンド情報を受信した誤り検査値生成部９１０は、ステップＳ７３において、今回受信した制御コマンド情報を保存する。続いて、ステップＳ７４において、誤り検査値生成部９１０は、既に保存されている前回受信した制御コマンド情報を取得して、この前回受信した制御コマンド情報を用いて誤り検査値を生成する。続いて、ステップＳ７５において、生成した前回受信した制御コマンド情報の誤り検査値を誤り検査部６４０に出力する。
【０１６１】
次に、ステップＳ７６において、誤り検査部６４０は、ステップＳ４２で受信部６００から出力された今回受信した制御コマンドに付加された誤り検査値と、ステップＳ７５で誤り検査値生成部９１０から送られた前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行う。具体的には、誤り検査部６４０は、上記２つの誤り検査値を照合し、同一の値であるかを検証する。同一の場合は、誤り検査部６４０は、今回および前回受信した制御コマンドの正当性を認証する。非同一の場合は、誤り検査部６４０は、制御コマンドに正当性がなく、誤りがあると判断する。なお、最初に受信した制御コマンドには誤り検査値に替えて所定の初期値が付加されるので、誤り検査部６４０は、同様に所定の初期値を用いて誤り検査を行う。
【０１６２】
次に、ステップＳ７７において、誤り検査部６４０は、誤り検査の結果、すなわち制御コマンドの認証結果である認証結果データを付加部６５０に出力する。続いて、ステップＳ７８において、付加部６５０は、ステップＳ７２で受信部６００から出力された今回受信した制御コマンドに、ステップＳ７７で誤り検査部６４０から出力された認証結果データを付加して、認証結果データ付き制御信号を生成し、送信部６６０に出力する。続いて、ステップＳ７９において、送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へ送信する。
【０１６３】
なお、本実施形態では、誤り検査値生成部９１０が、今回受信した制御コマンド情報を保存（ステップＳ７３）した後に、前回受信した制御コマンド情報の誤り検査値を生成（ステップＳ７４）し、生成した誤り検査値を誤り検査部６４０に出力（ステップＳ７５）するとしたが、これに限定されない。例えば、誤り検査値生成部９１０が、前回受信した制御コマンド情報の誤り検査値を生成（ステップＳ７４）し、生成した誤り検査値を誤り検査部６４０に出力（ステップＳ７５）した後に、今回受信した制御コマンド情報を保存（ステップＳ７３）するようにしてもよい。
【０１６４】
［遊技機の動作処理］
次に、上記構成のパチンコ遊技機の動作処理について、図面を参照して説明する。
本実施形態において主制御部１０による処理は、第１の実施形態と制御コマンド送信処理のみが異なる。また。中間部２０による処理は、誤り検査値生成部９１０による誤り検査値の生成処理が異なる。よって、以下、主制御部１０による中間部２０への制御コマンドの送信する際の制御コマンド送信処理について図２１を用いて説明する。また、中間部２０による処理について図２２を用いて説明する。なお、演出制御部２０３による処理は第１の実施形態と同一なので、その説明は省略する。
【０１６５】
図２１は、主制御部１０による制御コマンド送信処理の手順の一例を示すフローチャートである。図９に示す、主制御部１０のメイン処理において制御コマンドの送信タイミングになったら、ステップＳ８１において、誤り検査値生成部８１０は、制御コマンド出力部５００から出力された今回送信する制御コマンドを保存し、ステップＳ８２へと進む。
ステップＳ８２において、誤り検査値生成部８１０は、既に保存されている前回送信した制御コマンド情報を取得して、この前回送信した制御コマンド情報を用いて誤り検査値を生成し、ステップＳ８３へ進む。
【０１６６】
ステップＳ８３において、付加部５４０は、前回送信した制御コマンド情報の誤り検査値を誤り検査値生成部８１０から受け取って、この誤り検査値を制御コマンド出力部５００から出力された今回送信する制御コマンドに付加して今回送信する制御コマンド情報を生成する。また、誤り検査値生成部８１０は、ステップ８３で生成した誤り検査値を、今回送信する制御コマンドとあわせて今回送信する制御コマンド情報として保存し、ステップＳ８４へ進む。
ステップＳ８４において、送信部５５０は、誤り検査値付き制御コマンドである制御コマンド情報を付加部５４０から受け取って、中間部２０に送信し、本フローチャートによる処理を終了する。
【０１６７】
以下、中間部２０が実行する処理について、図２２に示すフローチャートを参照して説明する。図２２は、中間部２０によるメイン処理である認証処理の手順の一例を示すフローチャートである。
【０１６８】
パチンコ遊技機１の電源が投入され、主制御部１０のＣＰＵ１０ａが初期設定処理を行った後、主制御部１０を構成する制御コマンド出力部５００は、制御コマンドの出力を開始し、中間部２０に誤り検査値付き制御コマンドである制御コマンド情報を送信する。中間部２０の受信部６００は、誤り検査値付き制御コマンドである制御コマンド情報を受信すると、それを受信データ用記憶領域に書き込む。ステップＳ２０２１において、中間部２０は、受信データ用記憶領域に制御コマンド情報が書き込まれているか否かを判断することにより、制御コマンド情報を受信したか否かを判断する。中間部２０は、制御コマンド情報を受信するまで同判断を繰り返す。制御コマンド情報を受信していた場合は、ステップＳ２０２２に進む。
【０１６９】
ステップＳ２０２２において、中間部２０の受信部６００は、受信した誤り検査値付き制御コマンドから誤り検査値を取得して誤り検査部６４０に出力する。同時に、中間部２０の受信部６００は、受信した制御コマンド情報を誤り検査値生成部９１０に、受信した制御コマンド情報に含まれる制御コマンドを付加部６５０に出力する。
【０１７０】
続いて、ステップＳ２０２３において、中間部２０の誤り検査値生成部９１０は、受信部６００から出力された制御コマンド情報を保存する。
続いて、ステップＳ２０２４において、誤り検査値生成部９１０は、予め保存してある前回受信した制御コマンド情報を取得し、取得した制御コマンド情報を用いて誤り検査値を生成し、誤り検査部６４０へ出力する。
続いて、ステップＳ２０２５において、中間部２０の誤り検査部６４０は、受信部６００から出力された今回受信した制御コマンドに付加された誤り検査値と、誤り検査値生成部６１０から出力された前回受信した制御コマンド情報を用いて生成された誤り検査値とを用いて誤り検査を行い、ステップＳ２０２６に進む。
ステップＳ２０２６において、誤り検査部６４０は、検査結果が正しいか否かを判断する。具体的には、誤り検査部６４０は、上記２つの誤り検査値を照合し、同一の値であるかを検証する。同一の場合は、誤り検査部６４０は、検査結果が正しいと判断し、ステップＳ２０２７へ進み、今回および前回受信した制御コマンドの正当性の認証が成功したことを示す認証結果データを生成し、付加部６５０へ出力する。非同一の場合は、誤り検査部６４０は、検査結果が正しくないと判断し、ステップＳ２０２８へ進み、制御コマンドの正当性の認証が不成功であったことを示す認証結果データを生成し、付加部６５０へ出力する。
【０１７１】
続いて、ステップＳ２０２９において、付加部６５０は、受信部６００から出力された今回受信した制御コマンドに、誤り検査部６４０から出力された認証結果データを付加して、認証結果データ付き制御信号を生成し、送信部６６０に出力する。
続いて、ステップＳ２０３０において、送信部６６０は、付加部６５０から出力された認証結果データ付き制御コマンドを演出制御部２０３へ送信し、本フローチャートによる処理を終了する。
【０１７２】
なお、本実施形態においても、第１の実施形態同様に、中間部２０を介して主制御部１０と賞球制御部２０４との間で認証処理を行う場合も、本実施形態のように中間部２０を介して主制御部１０と演出制御部２０３との間の認証処理とほぼ同様の手順で行われるため説明を省略する。
【０１７３】
以上のように、本実施形態では、主制御部１０は、制御コマンド情報を保存している。そして主制御部１０は、既に保存している前回送信した制御コマンド情報の誤り検査値を生成し、今回送信する制御コマンドに付加して制御コマンド情報として中間部２０に送信する。一方、中間部２０は、制御コマンド情報を保存している。そして中間部２０は、今回受信した制御コマンド情報に含まれる誤り検査値と、既に保存している前回受信した制御コマンド情報から生成した誤り検査値とを照合して誤り検査を行う。すなわち、本実施形態に係る遊技機も第１の実施形態同様に、過去に送信した制御コマンド情報の誤り検査値を今回送信する制御コマンドに付加して、主制御部１０から中間部２０に送信している。上述のように構成される本実施形態の遊技機も第１の実施形態の遊技機１と同様の効果を得ることができる。
【０１７４】
［主制御部のハードウェア構成］
ここで、本実施形態の遊技機も、第１の実施形態の遊技機１と同様に、簡易な構成で実現できるため、ハードウェアでもソフトウェアでも容易に実現可能である。以下、ハードウェアで実現する場合の主制御部の認証に関する構成の一例について説明する。図２３は、主制御部１０の認証に関する構成である誤り検査値生成・送信部（生成送信回路１０ｇ）を示す構成図である。
【０１７５】
誤り検査値生成・送信部１０００は、ＣＰＵ１０ａの指示に基づいて、制御コマンド情報を生成して演出制御部２０３に送信するための具体的な手段であり、制御回路１０１０、制御コマンド情報入出力部１０２０、誤り検査値生成回路１０３０、データ送信バッファ１０４０、およびデータ送信回路１０５０を備える。
【０１７６】
制御回路１０１０は、ＣＰＵと制御線で接続されており、誤り検査値生成・送信部１０００を構成する各部の動作を制御する。制御コマンド情報入出力部１０２０は、シフトレジスタ等によって構成され、制御回路１０１０のデータ入出力指示に基づいて既に保存されている前回送信した制御コマンド情報を誤り検査値生成回路１０３０に出力する。また、制御コマンド情報入出力部１０２０は、ＣＰＵ１０ａから出力された今回送信する制御コマンドと、誤り検査値生成回路１０３０から出力された前回送信した制御コマンド情報の誤り検査値とを合わせて、今回送信する制御コマンド情報として保存する。誤り検査値生成回路１０３０は、制御回路１０１０の生成回路制御指示に基づいて、制御コマンド情報入出力部１０２０から出力された前回送信した制御コマンド情報を用いて誤り検査値を生成する。誤り検査値生成回路１０３０は、生成した誤り検査値をデータ送信バッファ１０４０に出力する。ここで、制御コマンド情報入出力部１０２０は、図１６に示す、制御コマンド情報記憶部８２０に対応している。また、誤り検査値生成回路１０３０は、図１６に示す誤り検査値演算部８３０に対応している。また、制御コマンド情報入出力部１０２０と誤り検査値生成回路１０３０は誤り検査値生成部１０６０を構成し、これは図１６に示す誤り検査値生成部８１０に対応している。
【０１７７】
データ送信バッファ１０４０は、ＣＰＵ１０ａから出力された今回送信する制御コマンドと、誤り検査生成回路１０３０から出力された誤り検査値を併せて送信するために、これらを一時的に保存する記憶領域である。データ送信バッファ１０４０は、制御回路１０１０の送信制御指示に基づいて一時的に保存した制御コマンドと誤り検査値とを併せてデータ送信回路１０５０に出力する。データ送信回路７５０は、データ送信バッファ１０４０から出力された制御コマンドと誤り検査値とを用いて制御コマンド情報を生成し、中間部２０に送信する。ここで、データ送信バッファ１０４０とデータ送信回路１０５０は、図１６に示す付加部５４０と送信部５５０に対応している。
【０１７８】
なお、上述のハードウェア構成は一例であり、本実施形態の遊技機の機能を実現するハードウェア構成であればよい。また、上述のハードウェア構成では、特に言及しなかったが、誤り検査値生成・送信部１０００をＣＰＵ１０ａとＲＯＭ１０ｂとＲＡＭ１０ｃと一体のワンチップマイコンとして構成してもよい。また、ワンチップマイコンとして構成する場合、制御回路１０１０とデータ送信バッファ１０４０と、データ送信回路１０５０から構成される送信部と、誤り検査値生成部１０６０とを別に設けてもよい。このように、既存のワンチップマイコンの送信部を転用するとともに誤り検査値生成部１０６０を追加することで、既存のワンチップマイコンを利用して容易に形成することができる。
【０１７９】
以上、本発明の遊技機の一例である各実施形態について詳細に説明したが、本発明の遊技機は上記実施形態に限定されず、各種の変更を行ってもよい。例えば、上記実施形態では、図４に示すように、今回送信する制御コマンドに、前回送信した制御コマンド情報、すなわち１個前に送信した制御コマンド情報の誤り検査値を付加して制御コマンド情報とした。しかしながら、本発明はこれに限定されず、今回送信する制御コマンドにｎ（ｎは２以上の整数）個前に送信した制御コマンド情報の誤り検査値を付加して制御コマンド情報を生成するようにしてもよい。この場合、１〜ｎ個目に送信する制御コマンドは誤り検査値のダミーデータや遊技機固有のＩＤ等を初期値として付加して制御コマンド情報とすればよい。また、第１の実施形態の遊技機の場合、少なくともｎ個の誤り検査値を保存可能に構成すればよい。また、第２の実施形態の遊技機の場合、少なくともｎ個の制御コマンド情報を保存可能に構成すればよい。
【０１８０】
具体的に、ｎ＝２の場合、すなわち、今回送信する制御コマンドに、２個前に送信した制御コマンド情報の誤り検査値を付加する場合の制御コマンド情報の構成について、図２３を用いて説明する。図２４に示すように、制御コマンド情報は、基本的に、制御コマンドにその２つ前に送信された制御コマンド情報の誤り検査値を付加した形式になっている。ただし、最初に送信される制御コマンド１には所定の初期値１が付加されている。また、２つ目に送信される制御コマンド２には初期値２が付加されている。そして、３番目に送信される制御コマンド３には、最初に送信された制御コマンド１と初期値１からなる制御コマンド情報の誤り検査値１が付加され、制御コマンド情報が生成される。同様に、４番目に送信される制御コマンド４には、２番目に送信される制御コマンド２と初期値２からなる制御コマンド情報の誤り検査値２が付加され、制御コマンド情報が生成される。以下、同様にして制御コマンド情報が生成される。
【０１８１】
このように、ｎ個前に送信した制御コマンド情報の誤り検査値を、今回送信する制御コマンドに付加することにより、制御コマンドとそれに付加された誤り検査値との関係をより解析困難とすることができる。これにより、不正者が制御コマンド情報を取得したとしても、不正を行うことをより困難とすることができる。
【０１８２】
また、上記実施形態では、誤り検査値を生成する際に、制御コマンドのＭＯＤＥとＤＡＴＡの両方のデータを用いるとしたが、本発明の遊技機は、これに限定されない。例えば、本発明の遊技機は、制御コマンドのＭＯＤＥの情報、すなわち制御コマンドの分類を識別するための１バイトのデータのみを用いて誤り検査値を生成するようにしてもよい。
【０１８３】
また、本発明の遊技機は、過去に送信した複数の制御コマンド情報を用いて誤り検査値を生成するようにしてもよい。これにより、制御コマンドとそれに付加された誤り検査値との関係がより解析困難とすることができ、不正者が制御コマンド情報を取得したとしても、不正を行うことをより困難とすることができる。
【０１８４】
過去に送信した複数の制御コマンド情報を用いて誤り検査値を生成するための具体的な構成は、例えば、次のようなものが考えられる。誤り検査値生成部において、制御コマンド出力部から出力された制御コマンドと、誤り検査値演算部が生成したその誤り検査値を制御コマンド情報として複数記憶する制御コマンド情報記憶部を設け、この制御コマンド記憶部から出力された複数の制御コマンドを用いて誤り検査値演算部が誤り検査値を生成するように構成すればよい。
【０１８５】
上述のように、本発明の遊技機は、今回送信する制御コマンドに対して所定の過去に出力された制御コマンド情報を少なくとも用いて生成した誤り検査値を、今回送信する制御コマンドに付加する。これにより、制御コマンドとそれに付加された誤り検査値との関係をより解析困難とすることができ、不正者が制御コマンド情報を取得したとしても、不正を行うことを困難とすることができる。
【０１８６】
なお、本発明の遊技機は、過去に送信した制御コマンド情報に加えて、今回送信する制御コマンドも含めて誤り検査値を生成してもよい。これにより、今回受信した制御コマンドの通信エラーチェックを、今回受信した制御コマンドに付加された誤り検査値を用いて、リアルタイムに行うことができる。
【０１８７】
今回送信する制御コマンドも含めて誤り検査値を生成するための具体的な構成は、例えば、次のようなものが考えられる。誤り検査値を生成する対象となるデータである過去に送信した制御コマンド情報を記憶する記憶部を設け、記憶部から出力された制御コマンド情報と、制御コマンド出力部から出力された今回送信する制御コマンドとを用いて誤り検査値を生成するように構成すればよい。
【０１８８】
このように、本発明の遊技機は、過去に送信した制御コマンド情報に加えて、今回送信する制御コマンドも含めて誤り検査値を生成してもよいが、セキュリティ強度の向上という観点においては、今回送信する制御コマンドの誤り検査値を、今回送信する制御コマンド自身を用いずに生成する方が好ましい。具体的には、過去に送信した制御コマンド情報を用いて、今回送信する制御コマンドに付加する誤り検査値を生成するのが好ましい。このように、今回送信する制御コマンドを用いずに誤り検査値を生成する場合、今回送信する制御コマンドとそれに付加された誤り検査値との間に関連性がない。このため、不正者が、制御コマンドとそれに付加された誤り検査値との二つの値を取得したとしても、これらの関係を解析することができない。したがって、不正者が制御コマンドとそれに付加された誤り検査値との関係を解析することをより一層困難とすることができる。すなわち、不正者が制御コマンド情報を取得したとしても、不正を行うことをより一層困難とすることができる。
【０１８９】
また、上記実施形態では、主制御部１０は、制御コマンドに所定の初期値を付加して送信し、中間部２０は、同様に所定の初期値を用いて認証を行うとしたが、本発明はこれに限定されず、初期値が付加された制御コマンドに関し認証処理を行わないようにしてもよい。例えば、ｎ個前に送信した制御コマンド情報を用いて今回送信する制御コマンドに付加する誤り検査値を生成する場合、中間部２０は、１〜ｎ個目に受信した制御コマンド情報については初期値が付加されているとして、認証処理を行わず、ｎ＋１個目に受信した制御コマンド情報から認証処理を行うようにすればよい。
【０１９０】
また、主制御部１０に計時手段を設け、または、主制御部１０が予め備えている計時手段を用いて、制御コマンド送信タイミングにおいて計時手段から取得した計時情報を初期値として用いてもよい。これにより、誤り検査値を遊技機１の状態に特有の値とすることができ、初期値の値を知らない不正者が一部の制御コマンド情報を取得したとしても誤り検査値の解析を不可能とすることができ、セキュリティ強度をより一層向上することができる。なお、この場合、上述のように、初期値が付加された制御コマンドに関し認証処理を行わないようにすればよい。また、２個以上の制御コマンドに初期値として計時情報が付加される場合において、中間部２０は、初期値として連続して送信された計時情報の間に時間の連続性が保持されているか、すなわち、連続して送信された計時情報の値が送信順番に従って増加しているか否かを参照することによって認証処理を行ってもよい。
【０１９１】
このように本発明において、初期値として用いる固有情報に計時情報を含めてもよい。すなわち、固有情報は、制御コマンドの送信タイミングにおいて初期値を取得する遊技機１に固有の情報といえる。なお、計時情報としては、遊技機１の電源がオンになってから主制御部１０の計時手段が計測する遊技機１に固有の計時情報を用いてもよく、絶対時間の情報を用いてもよい。遊技機１に固有の計時情報を用いることにより、初期値の秘匿性を高めることができ、セキュリティ強度をより一層向上させることができる。
【０１９２】
また、複数の制御コマンドに初期値を付加する場合、初期値は固定値としてもよいし、変動値としてもよい。例えば、初期値として識別情報を用いる場合、制御コマンド毎に異なる識別情報を用いてもよいし、同じ識別情報を用いてもよい。また、初期値として計時情報を用いる場合、制御コマンドの送信タイミング毎に計時手段から取得した計時情報を用いてもよいし、最初に送信する制御コマンドの送信タイミングに取得した計時情報を複数の制御コマンドに対して初期値として用いてもよい。
【０１９３】
また、上記実施形態では、演出制御部２０３は、ＣＰＵ２０３ａ、ＲＯＭ２０３ｂ、ＲＡＭ２０３ｃ、ＶＲＡＭ２０３ｄを備えており、これらを用いて、図柄表示部１０４の画像表示、およびスピーカ２７７の音声出力を制御していた。すなわち、演出制御部２０３は、ランプ制御部２０５の制御機能を備えるとともに、画像制御部としての機能および音声制御部としての機能を備えていた。しかしながら、本発明の遊技機は、これに限定されず、演出制御部２０３は、ＣＰＵ２０３ａ、ＲＯＭ２０３ｂ、およびＲＡＭ２０３ｃの他に、画像制御部としての機能および音声制御部としての機能を実現するためのＣＰＵ、ＲＯＭ、およびＲＡＭ等のハードウェア構成を別途備える構成であってもよい。さらにまた、画像制御部としての機能を実現するハードウェア構成と、音声制御部としての機能を実現するハードウェア構成とを別々に備える構成であってもよい。この場合、主制御部１０から送信された制御コマンドを受信したＣＰＵ２０３ａは、所定の取り決めに基づいて、上記別途設けられたハードウェア構成を制御する制御信号であるサブコマンドを出力し、このサブコマンドに基づいて別途設けられたハードウェア構成が画像制御および音声制御を行う。
【０１９４】
また、本発明によれば、認証処理は、中間部２０のみが実行するので、周辺部３０を構成するＣＰＵの処理負荷の増大を抑制することができる。このため、周辺部３０の処理速度が低下し、演出のための表示がスムーズに行われないなどの問題の発生を防止することができる。
【０１９５】
さらに、本発明によれば、認証処理を実行する中間部２０と、所定の処理を行う周辺部３０とが別個独立しているため、認証用のプログラムまたはハードウェアと、所定の処理用のプログラムまたはハードウェアとを別個に設計することができる。これにより、所定の処理を行う周辺部３０の演出処理に認証機能を追加する場合と比較して、認証機能を追加するタイミングの設計・機能の実装・機能の検証、ハードウェアの設計などをより簡単に実現することができる。また、認証用のプログラム及び所定の処理用のプログラムの構成が比較的簡単となるため、他の機能と整合性を保つことが容易となる。
【０１９６】
さらにまた、本発明によれば、遊技機の機種ごとに所定の処理が異なる場合であっても、認証処理は共通化が可能であるため、遊技機の機種ごとのプログラム設計やハードウェア設計が容易であり、設計時間の短縮化を図ることができるとともに、作業効率が向上する。
【０１９７】
なお、上記実施形態では、主制御部１０は、誤り検査値を生成するための生成送信回路１０ｇを備えていたが、これに限定されず、同様の機能をＣＰＵ１０ａ、ＲＯＭ１０ｂ、およびＲＡＭ１０ｃを用いて実現してもよい。すなわち、本実施形態はハードウェアにて、認証機能を実現していたが、これに限定されず、ＣＰＵ１０ａ、ＲＯＭ１０ｂ、およびＲＡＭ１０ｃを用いてソフトウェアによって実現してもよい。
【０１９８】
また、中間部２０は、ＣＰＵ２０ａ、ＲＯＭ２０ｂ、およびＲＡＭ２０ｃを用いてソフトウェアによって認証機能を実現していたが、これに限定されず、誤り検査値を生成するための生成回路や誤り検査を行う検査回路等を設け、ハードウェアによって認証機能を実現してもよい。
【０１９９】
また、上記実施形態では、中間部２０は、認証結果データを制御コマンドに付加して認証結果データ付き制御コマンドとして演出制御部２０３に送信するとしたが、これに限定されず、制御コマンドおよび認証結果データを別々に送信するようにしてもよい。この場合、演出制御部２０３は、認証結果データを受信したかを判断し、認証結果データを受信した場合に図１５に示す認証結果データ解析処理を行うようにすればよい。なお、制御コマンドと認証結果データのそれぞれにダミーデータを付加して、データ量が同一となるようにしてもよい。このようにすることにより、不正者が、制御コマンドと認証結果データを区別することを困難とすることができ、不正防止の強度を向上することができる。
【０２００】
また、上記実施形態では、中間部２０は、認証成功の場合も認証不成功の場合も、認証結果を認証結果データとして制御コマンドに付加して演出制御部２０３へ送信するとしたが、本発明はこれに限定されない。例えば、中間部２０は、認証不成功の場合のみ認証不成功を示す認証結果データ、あるいは認証が不成功であることを報せる認証不成功信号を演出制御部２０３へ送信するようにしてもよい。演出制御部２０３は、認証結果データまたは認証不成功信号を受信したか否かを判断し、受信した場合に報知信号を出力するように構成すればよい。
【０２０１】
また、第１の実施形態の主制御部１０の構成に第２の実施形態の演出制御部２０３の構成を組み合わせてもよい。すなわち、主制御部１０は、誤り検査値を保存しておく構成を採用し、演出制御部２０３は、制御コマンドを保存しておく構成を採用してもよい。また、同様に、第２の実施形態の主制御部１０の構成に第１の実施形態の演出制御部２０３の構成を組み合わせてもよい。
【０２０２】
また、上記実施形態では、本発明をパチンコ遊技機に適用する例を示したが、これに限定されず、本発明は、雀球遊技機、アレンジボール等のパチンコ遊技機以外の弾球遊技機、スロットマシン等の回胴式遊技機などの他の遊技機にも適用することができる。これらの遊技機においても、上記実施形態と同様に構成することにより、上記実施形態と同様の効果を得ることができる。また、上記実施形態は、その目的及び構成等に特に矛盾や問題がない限り、互いの技術を流用することができる。
【０２０３】
また、上述した本発明は、過去に送信した制御コマンド情報を少なくとも用いて出力した誤り検査値を今回送信する制御コマンドに付加して送信するという方法を用いる認証方法を実現する基本形であり、よりセキュリティ強度の高い認証方法や誤り検査値の生成方法を実現する形態へと発展させることができるものである。
【符号の説明】
【０２０４】
１        パチンコ遊技機
１０      主制御部
１０ａ，２０ａ，２０３ａ，２０４ａ    ＣＰＵ
１０ｂ，２０ｂ，２０３ｂ，２０４ｂ    ＲＯＭ
１０ｃ，２０ｃ，２０３ｃ，２０４ｃ    ＲＡＭ
１０ｇ    生成送信回路
２０      中間部
２０３    演出制御部
２０３ｄ  ＶＲＡＭ
２０４    賞球制御部
５００    制御コマンド出力部
５１０，６１０，８１０，９１０    誤り検査値生成部
５２０，６２０，８３０，９３０    誤り検査値演算部
５３０，６３０    誤り検査値記憶部
５４０，６５０    付加部
５５０，６６０    送信部
６００    受信部
６４０    誤り検査部
８２０，９２０    制御コマンド情報記憶部
【図１】
0005430003.tif 000002
【図２】
0005430003.tif 000003
【図３】
0005430003.tif 000004
【図４】
0005430003.tif 000005
【図５】
0005430003.tif 000006
【図６】
0005430003.tif 000007
【図７】
0005430003.tif 000008
【図８】
0005430003.tif 000009
【図９】
0005430003.tif 000010
【図１０】
0005430003.tif 000011
【図１１】
0005430003.tif 000012
【図１２】
0005430003.tif 000013
【図１３】
0005430003.tif 000014
【図１４】
0005430003.tif 000015
【図１５】
0005430003.tif 000016
【図１６】
0005430003.tif 000017
【図１７】
0005430003.tif 000018
【図１８】
0005430003.tif 000019
【図１９】
0005430003.tif 000020
【図２０】
0005430003.tif 000021
【図２１】
0005430003.tif 000022
【図２２】
0005430003.tif 000023
【図２３】
0005430003.tif 000024
【図２４】
0005430003.tif 000025