JP2016163823A - 遊技台 - Google Patents

遊技台 Download PDF

Info

Publication number
JP2016163823A
JP2016163823A JP2016119601A JP2016119601A JP2016163823A JP 2016163823 A JP2016163823 A JP 2016163823A JP 2016119601 A JP2016119601 A JP 2016119601A JP 2016119601 A JP2016119601 A JP 2016119601A JP 2016163823 A JP2016163823 A JP 2016163823A
Authority
JP
Japan
Prior art keywords
command
control unit
special
main control
game
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.)
Pending
Application number
JP2016119601A
Other languages
English (en)
Inventor
裕成 植山
Hiroshige Ueyama
裕成 植山
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.)
Daito Giken KK
Original Assignee
Daito Giken KK
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 Daito Giken KK filed Critical Daito Giken KK
Priority to JP2016119601A priority Critical patent/JP2016163823A/ja
Publication of JP2016163823A publication Critical patent/JP2016163823A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Pinball Game Machines (AREA)

Abstract

【課題】制御手段に特徴を持った遊技台を提供する。【解決手段】遊技台は、第一の記憶手段を含む第二の制御手段を備え、前記第二の制御手段は、第一の処理、第二の処理および第三の処理を実行可能であり、前記第一の処理は、データを前記第一の記憶手段に記憶する処理であり、前記第二の処理は、前記第一の記憶手段を初期化する処理であり、前記データが第一の種類のデータとは異なる第一のデータであっても前記第一の処理を実行可能であり、前記第二の制御手段は、割込み処理を実行であり、電源投入後の最初の前記割込み処理の実行前に、前記第二の処理を実行であり、前記第一の記憶手段に前記第一の種類のデータが記憶されている状態において、前記第三の処理を実行可能であり、前記第一の記憶手段に前記第一のデータのみが記憶されている状態において、前記第三の処理を実行しないように構成されている。【選択図】図6

Description

本発明は、弾球遊技機(パチンコ機)、回胴遊技機(スロットマシン)、封入式遊技機あるいはメダルレススロットマシンに代表される遊技台に関する。
従来の遊技台では、制御手段がデータに基づいて処理を行っている(例えば、特許文献1)。
特開2008−200302公報
しかしながら、従来の遊技台は、制御手段について改良の余地がある。
本発明の目的は、制御手段に特徴を持った遊技台を提供することにある。
本発明に係る遊技台は、第二の制御手段を備えた遊技台であって、前記第二の制御手段は、第一の記憶手段を含む手段であり、前記第二の制御手段は、複数種類の処理を実行可能な手段であり、前記複数種類の処理のうちの一の処理は、第一の処理であり、前記複数種類の処理のうちの一の処理は、第二の処理であり、前記複数種類の処理のうちの一の処理は、第三の処理であり、前記第一の処理は、データを前記第一の記憶手段に記憶する処理であり、前記データが第一の種類のデータとは異なるデータ(以下、「第一のデータ」という。)であっても前記第一の処理を実行可能に構成されており、前記第二の処理が実行されることによって前記第一の記憶手段が初期化されるように構成されており、前記第二の制御手段は、割込み処理を実行可能な手段であり、電源投入後の最初の前記割込み処理の実行前に、前記第二の処理を実行可能に構成されており、前記第一の記憶手段に前記第一の種類のデータが記憶されている状態において、前記第三の処理を実行可能に構成されており、前記第一の記憶手段に前記第一のデータのみが記憶されている状態において、前記第三の処理を実行しないように構成されている、ことを特徴とする遊技台である。
本発明によれば、制御手段に特徴を持った遊技台を実現することができる。
パチンコ機を正面側(遊技者側)から見た外観斜視図である。 パチンコ機を背面側から見た外観図である。 遊技盤を正面から見た略示正面図である。 制御部の回路ブロック図を示したものである。 (a)特図の停止図柄態様の一例を示したものである。(b)装飾図柄の停止図柄態様の一例を示したものである。(c)普図の停止表示図柄の一例を示したものである。 本発明の実施形態に係るコマンド処理について説明する概要図である。 (a)主制御部と払出制御部の通信処理を説明するブロック図である。(b)シリアル通信回路を説明するブロック図である。(c)主制御部と払出制御部のシリアル通信の流れを説明するブロック図である。 (a)電源の遮断及び供給のタイミングに伴う各制御部の動作状態を示す概要図である。(b)電源遮断時における各制御部の動作状態を示す概要図である。 主制御部メイン処理の流れを示すフローチャートである。 主制御部メイン処理における遅延処理の流れを示すフローチャートである。 主制御部タイマ割込処理の流れを示すフローチャートである。 (a)シリアルコマンド管理処理の流れを示すフローチャートである。(b)シリアルコマンド受信処理の流れを示すフローチャートである。 (a)シリアルコマンド送信処理の流れを示すフローチャートである。(b)主制御部300が払出制御部600に送信するコマンドの一例である。 RAMの構成を示す概要図である。 RAMの初期化される領域とそのタイミングを示す概要図である。 払出制御部が実行するメイン処理のフローチャートである。 払出制御部割込み処理の流れを示すフローチャートである。 (a)受信コマンド処理のフローチャートである。(b)受信コマンド処理の他の例を示すフローチャートである。 コマンド解析処理を説明するフローチャートである。 コマンド解析処理を説明するフローチャートである。 (a)主制御通信確認コマンド受信時処理の流れを示すフローチャートである。(b)起動処理の流れを示すフローチャートである。 (a)賞球コマンド受信時処理の流れを示すフローチャートである。(b)賞球コマンド受信時処理の流れを示すフローチャートである。 エラー管理処理の流れを示すフローチャートである。 送信コマンド処理の流れを示すフローチャートである。 送信コマンド処理の変形例1を示した図である。 主制御通信確認コマンド受信時処理の流れを示すフローチャートである。 送信コマンド処理の流れを示すフローチャートである。 受信コマンドバッファエリアの一例を示す図である。 受信コマンドバッファエリアの一例を示す図である。 (a)受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理において使用する記憶領域の一部の構成を示す概要図である。(b)受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理において使用する記憶領域の一部の構成を示す概要図である。(c)受信コマンドの一例を示す図である。 受信コマンド処理の詳細を示す概要図である。 受信コマンド取得処理の詳細を示す概要図である。 受信コマンド解析処理の詳細を示す概要図である。 受信コマンド解析処理の詳細を示す概要図である。 受信コマンド解析処理の詳細を示す概要図である。 実施形態2に係るパチンコ機を正面側(遊技者側)から見た外観斜視図である。 同パチンコ機を背面側から見た外観図である。 遊技盤を正面から見た略示正面図である。 制御部の回路ブロック図を示したものである。 主基板、払出基板、外部端子板、および外部装置(ホールコンピュータ)の接続例を示した図である。 (a)主基板から出力する外部端子板信号の一例を示した図である。(b)払出基板から出力する外部端子板信号の一例を示した図である。 (a)上記図40に示した接続例に対して、主基板と払出基板の配置を逆にした接続例である。(b)主基板と払出基板の両方を直接、外部端子板に接続した接続例である。 メイン側マイコンと払出側マイコンの接続態様を示したブロック図である。 主制御部メイン処理の流れを示すフローチャートである。 主制御部メイン処理における遅延処理の流れを示すフローチャートである。 主制御部タイマ割込処理の流れを示すフローチャートである。 (a)入賞受付処理の流れを示すフローチャートである。(b)入賞口および始動口毎に設けた賞球数記憶領域308a〜308dの構成例を示した図である。 (a)シリアルコマンド管理処理の流れを示すフローチャートである。(b)シリアルコマンド受信処理の流れを示すフローチャートである。 シリアルコマンド送信処理の流れを示すフローチャートである。 賞球コマンド設定処理の流れを示すフローチャートである。 (a)〜(c)賞球数記憶領域308a〜308dの賞球数の変化の一例を示した図である。(d)賞球コマンドテーブルの一例を示した図である。 主制御部タイマ割込処理におけるデバイス監視処理の流れを示すフローチャートである。 主制御部タイマ割込処理における外部出力信号設定処理の流れを示すフローチャートである。 ステップS306における外部出力信号情報のマスク処理の一例を説明するための図である。 外部出力信号設定処理の変形例1を示した図である。 外部出力信号設定処理の変形例2を示した図である。 (a)払出制御部が実行するメイン処理のフローチャートである。(b)払出制御部のコマンド受信割込み処理のフローチャートである。 (a)コマンド解析処理の流れを示すフローチャートである。(b)主制御通信確認コマンド受信時処理の流れを示すフローチャートである。(c)起動処理の流れを示すフローチャートである。 払出制御部割込み処理の流れを示すフローチャートである。 (a)タイマ更新処理の流れを示すフローチャートである。(b)タイマ更新処理の流れを示すフローチャートである。 払出管理処理の流れを示すフローチャートである。 信号出力処理の流れを示すフローチャートである。 送信コマンド処理の流れを示すフローチャートである。 送信コマンド処理の変形例1を示した図である。 払出制御部600から主制御部300に送信するコマンドの一例を示した図である。 主制御部300と払出制御部600の通信例1のタイミングチャートと所定のタイミングにおける変数の変化の一例を示した図である。 (a)賞球コマンド送信時のタイムチャートの拡大図である。(b)図66のt3に示す期間のタイムチャートの拡大図である。 (a)1回の主制御部タイマ割込処理において始動口または入賞口の複数の入賞を検出した場合のタイムチャートの一例である。(b)払出制御部600からの通信確認コマンドの変形例を示すタイムチャートである。 外部端子板信号の出力例1を示すタイムチャートである。 外部端子板信号の出力例2を示すタイムチャートである。 外部端子板信号の出力例3を示すタイムチャートである。 外部端子板信号の出力例4を示すタイムチャートである。 外部端子板信号の出力例5を示すタイムチャートである。 外部端子板信号の出力例6を示すタイムチャートである。 外部端子板信号の出力例7を示すタイムチャートである。 外部端子板信号の出力例8を示すタイムチャートである。 実施形態3に係る電源基板182、払出基板170、および主基板156間の電源供給例を示す図である。 主基板156内の電源供給例を示す図である。 電源基板182と主基板156内の電源供給例を示す図である。 主基板156内の電源供給例を示す図である。
<実施形態1>
以下、図面を用いて、本発明の実施形態1に係る遊技台(パチンコ機100)について詳細に説明する。
<全体構成>
まず、図1〜図35を用いて、本発明の実施形態1に係るパチンコ機100の全体構成について説明する。なお、同図はパチンコ機100を正面側(遊技者側)から見た外観斜視図である。
パチンコ機100は、外部的構造として、外枠102と、本体104と、前面枠扉106と、球貯留皿付扉108と、発射装置110と、遊技盤200と、をその前面に備える。
外枠102は、遊技機設置営業店に設けられた設置場所(島設備等)へと固定させるための縦長方形状から成る木製の枠部材である。本体104は、内枠と呼ばれ、外枠102の内部に備えられ、ヒンジ部112を介して外枠102に回動自在に装着された縦長方形状の遊技機基軸体となる部材である。また、本体104は、枠状に形成され、内側に空間部114を有している。また、本体104が開放された場合、本体104の開放を検出する不図示の内枠開放センサを備える。
前面枠扉106は、ロック機能付きで且つ開閉自在となるようにパチンコ機100の前面側となる本体104の前面に対しヒンジ部112を介して装着され、枠状に構成されることでその内側を開口部とした扉部材である。なお、この前面枠扉106には、開口部にガラス製又は樹脂製の透明板部材118が設けられ、前面側には、スピーカ120や枠ランプ122が取り付けられている。前面枠扉106の後面と遊技盤200の前面とで遊技領域124を区画形成する。また、前面枠扉106が開放された場合、前面枠扉106の開放を検出する不図示の前面枠扉開放センサを備える。
球貯留皿付扉108は、パチンコ機100の前面において本体104の下側に対して、ロック機能付きで且つ開閉自在となるように装着された扉部材である。球貯留皿付扉108は、複数の遊技球(以下、単に「球」と称する場合がある)が貯留可能で且つ発射装置110へと遊技球を案内させる通路が設けられている上皿126と、上皿126に貯留しきれない遊技球を貯留する下皿128と、遊技者の操作によって上皿126に貯留された遊技球を下皿128へと排出させる球抜ボタン130と、遊技者の操作によって下皿128に貯留された遊技球を遊技球収集容器(俗称、ドル箱)へと排出させる球排出レバー132と、遊技者の操作によって発射装置110へと案内された遊技球を遊技盤200の遊技領域124へと打ち出す球発射ハンドル134と、遊技者の操作によって各種演出装置206の演出態様に変化を与えるチャンスボタン136と、チャンスボタン136を発光させるチャンスボタンランプ138と、遊技店に設置されたカードユニット(CRユニット)に対して球貸し指示を行う球貸操作ボタン140と、カードユニットに対して遊技者の残高の返却指示を行う返却操作ボタン142と、遊技者の残高やカードユニットの状態を表示する球貸表示部144と、を備える。また、下皿128が満タンであることを検出する不図示の下皿満タンセンサを備える。
発射装置110は、本体104の下方に取り付けられ、球発射ハンドル134が遊技者に操作されることによって回動する発射杆146と、遊技球を発射杆146の先端で打突する発射槌148と、を備える。
遊技盤200は、前面に遊技領域124を有し、本体104の空間部114に臨むように、所定の固定部材を用いて本体104に着脱自在に装着されている。なお、遊技領域124は、遊技盤200を本体104に装着した後、開口部から観察することができる。
図2は、図1のパチンコ機100を背面側から見た外観図である。パチンコ機100の背面上部には、上方に開口した開口部を有し、遊技球を一時的に貯留するための球タンク150と、この球タンク150の下方に位置し、球タンク150の底部に形成した連通孔を通過して落下する球を背面右側に位置する払出装置152に導くためのタンクレール154とを配設している。
払出装置152は、筒状の部材からなり、その内部には、不図示の払出モータとスプロケットと払出センサとを備えている。スプロケットは、払出モータによって回転可能に構成されており、タンクレール154を通過して払出装置152内に流下した遊技球を一時的に滞留させると共に、払出モータを駆動して所定角度だけ回転することにより、一時的に滞留した遊技球を払出装置152の下方へ1個ずつ送り出すように構成している。
払出センサは、スプロケットが送り出した遊技球の通過を検知するためのセンサであり、遊技球が通過しているときにハイまたはローの何れか一方の信号を、遊技球が通過していないときはハイまたはローの何れか他方の信号を払出制御部600へ出力する。なお、この払出センサを通過した遊技球は、不図示の球レールを通過してパチンコ機100の表側に配設した上皿126に到達するように構成しており、パチンコ機100は、この構成により遊技者に対して球の払い出しを行う。
払出装置152の図中左側には、遊技全般の制御処理を行う主制御部300を構成する主基板156を収納する主基板ケース158、主制御部300が生成した処理情報に基づいて演出に関する制御処理を行う第1副制御部400を構成する第1副基板160を収納する第1副基板ケース162、第1副制御部400が生成した処理情報に基づいて演出に関する制御処理を行う第2副制御部500を構成する第2副基板164を収納する第2副基板ケース166、遊技球の払出に関する制御処理を行う払出制御部600を構成するとともに遊技店員の操作によってエラーを解除するエラー解除スイッチ168を備える払出基板170を収納する払出基板ケース172、遊技球の発射に関する制御処理を行う発射制御部630を構成する発射基板174を収納する発射基板ケース176、各種電気的遊技機器に電源を供給する電源制御部660を構成するとともに遊技店員の操作によって電源をオンオフする電源スイッチ178と電源投入時に操作されることによってRWMクリア信号を主制御部300に出力するRWMクリアスイッチ180とを備える電源基板182を収納する電源基板ケース184、および払出制御部600とカードユニットとの信号の送受信を行うCRインターフェース部186を配設している。以下、主制御部300を構成する主基板156を主制御基板156という場合があり、払出制御部600を構成する払出基板170を払出制御基板170という場合がある。主制御基板156と払出制御基板170は別体の基板として構成される。
図3は、遊技盤200を正面から見た略示正面図である。遊技盤200には、外レール202と内レール204とを配設し、遊技球が転動可能な遊技領域124を区画形成している。
遊技領域124の略中央には、演出装置206を配設している。この演出装置206には、略中央に装飾図柄表示装置208を配設し、その周囲に、普通図柄表示装置210と、第1特別図柄表示装置212と、第2特別図柄表示装置214と、普通図柄保留ランプ216と、第1特別図柄保留ランプ218と、第2特別図柄保留ランプ220と、高確中ランプ222を配設している。なお、以下、普通図柄を「普図」、特別図柄を「特図」と称する場合がある。
演出装置206は、演出可動体224を動作して演出を行うものであり、詳細については後述する。装飾図柄表示装置208は、装飾図柄ならびに演出に用いる様々な表示を行うための表示装置であり、本実施例では液晶表示装置(Liquid Crystal Display)によって構成する。この装飾図柄表示装置208は、左図柄表示領域208a、中図柄表示領域208b、右図柄表示領域208cおよび演出表示領域208dの4つの表示領域に分割し、左図柄表示領域208a、中図柄表示領域208bおよび右図柄表示領域208cはそれぞれ異なった装飾図柄を表示し、演出表示領域208dは演出に用いる画像を表示する。さらに、各表示領域208a、208b、208c、208dの位置や大きさは、装飾図柄表示装置208の表示画面内で自由に変更することを可能としている。なお、装飾図柄表示装置208として液晶表示装置を採用しているが、液晶表示装置でなくとも、種々の演出や種々の遊技情報を表示可能に構成されていればよく、例えば、ドットマトリクス表示装置、7セグメント表示装置、有機EL(ElectroLuminescence)表示装置、リール(ドラム)式表示装置、リーフ式表示装置、プラズマディスプレイ、プロジェクタを含む他の表示デバイスを採用してもよい。
普図表示装置210は、普図の表示を行うための表示装置であり、本実施例では7セグメントLEDによって構成する。第1特図表示装置212および第2特図表示装置214は、特図の表示を行うための表示装置であり、本実施例では7セグメントLEDによって構成する。
普図保留ランプ216は、保留している普図変動遊技(詳細は後述)の数を示すためのランプであり、本実施例では、普図変動遊技を所定数(例えば、2つ)まで保留することを可能としている。第1特図保留ランプ218および第2特図保留ランプ220は、保留している特図変動遊技(詳細は後述)の数を示すためのランプであり、本実施例では、特図変動遊技を所定数(例えば、4つ)まで保留することを可能としている。高確中ランプ222は、遊技状態が大当りが発生し易い高確率状態であること、または高確率状態になることを示すためのランプであり、遊技状態を大当りが発生し難い低確率状態から高確率状態にする場合に点灯し、高確率状態から低確率状態にする場合に消灯する。
また、この演出装置206の周囲には、所定の球進入口、例えば、一般入賞口226と、普図始動口228と、第1特図始動口230と、第2特図始動口232と、可変入賞口234を配設している。
一般入賞口226は、本実施例では遊技盤200に複数配設しており、この一般入賞口226への入球を所定の球検出センサ(図示省略)が検出した場合(一般入賞口226に入賞した場合)、払出装置152を駆動し、所定の個数(例えば、10個)の球を賞球として上皿126に排出する。上皿126に排出した球は遊技者が自由に取り出すことが可能であり、これらの構成により、入賞に基づいて賞球を遊技者に払い出すようにしている。なお、一般入賞口226に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。本実施例では、入賞の対価として遊技者に払い出す球を「賞球」、遊技者に貸し出す球を「貸球」と区別して呼ぶ場合があり、「賞球」と「貸球」を総称して「球(遊技球)」と呼ぶ。
普図始動口228は、ゲートやスルーチャッカーと呼ばれる、遊技領域124の所定の領域を球が通過したか否かを判定するための装置で構成しており、本実施例では遊技盤200の左側に1つ配設している。普図始動口228を通過した球は一般入賞口226に入球した球と違って、遊技島側に排出することはない。球が普図始動口228を通過したことを所定の球検出センサが検出した場合、パチンコ機100は、普図表示装置210による普図変動遊技を開始する。
第1特図始動口230は、本実施例では遊技盤200の中央に1つだけ配設している。この第1特図始動口230への入球を所定の球検出センサが検出した場合、後述する払出装置152を駆動し、所定の個数(例えば、3個)の球を賞球として上皿126に排出するとともに、第1特図表示装置212による特図変動遊技を開始する。なお、第1特図始動口230に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
第2特図始動口232は、電動チューリップ(電チュー)と呼ばれ、本実施例では第1特図始動口230の真下に1つだけ配設している。この第2特図始動口232は、左右に開閉自在な羽根部材232aを備え、羽根部材232aの閉鎖中は球の入球が不可能であり、普図変動遊技に当選し、普図表示装置210が当り図柄を停止表示した場合に羽根部材232aが所定の時間間隔、所定の回数で開閉する。第2特図始動口232への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、4個)の球を賞球として上皿126に排出するとともに、第2特図表示装置214による特図変動遊技を開始する。なお、第2特図始動口232に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
可変入賞口234は、大入賞口またはアタッカーと呼ばれ、本実施例では遊技盤200の中央部下方に1つだけ配設している。この可変入賞口234は、開閉自在な扉部材234aを備え、扉部材234aの閉鎖中は球の入球が不可能であり、特図変動遊技に当選して特図表示装置が大当り図柄を停止表示した場合に扉部材234aが所定の時間間隔(例えば、開放時間29秒、閉鎖時間1.5秒)、所定の回数(例えば15回)で開閉する。可変入賞口234への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、15個)の球を賞球として上皿126に排出する。なお、可変入賞口234に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
さらに、これらの入賞口や始動口の近傍には、風車と呼ばれる円盤状の打球方向変換部材236や、遊技釘238を複数個、配設していると共に、内レール204の最下部には、いずれの入賞口や始動口にも入賞しなかった球をパチンコ機100の裏側に誘導した後、遊技島側に排出するためのアウト口を設けている。
このパチンコ機100は、遊技者が上皿126に貯留している球を発射レールの発射位置に供給し、遊技者の操作ハンドルの操作量に応じた強度で発射モータを駆動し、発射杆146および発射槌148によって外レール202、内レール204を通過させて遊技領域124に打ち出す。そして、遊技領域124の上部に到達した球は、打球方向変換部材236や遊技釘238等によって進行方向を変えながら下方に落下し、入賞口(一般入賞口226、可変入賞口234)や始動口(第1特図始動口230、第2特図始動口232)に入賞するか、いずれの入賞口や始動口にも入賞することなく、または普図始動口228を通過するのみでアウト口240に到達する。
<演出装置206>
次に、パチンコ機100の演出装置206について説明する。
この演出装置206の前面側には、遊技球の転動可能な領域にワープ装置242およびステージ244を配設し、遊技球の転動不可能な領域に演出可動体224を配設している。また、演出装置206の背面側には、装飾図柄表示装置208および遮蔽装置246(以下、扉と称する場合がある)を配設している。すなわち、演出装置206において、装飾図柄表示装置208および遮蔽手段は、ワープ装置242、ステージ244、および演出可動体224の後方に位置することとなる。
ワープ装置242は、演出装置206の左上方に設けたワープ入口242aに入った遊技球を演出装置206の前面下方のステージ244にワープ出口242bから排出する。ステージ244は、ワープ出口242bから排出された球や遊技盤200の釘などによって乗り上げた球などが転動可能であり、ステージ244の中央部には、通過した球が第1特図始動口230へ入球し易くなるスペシャルルート244aを設けている。
演出可動体224は、本実施形態では人間の右腕の上腕と前腕を模した上腕部224aと前腕部224bとからなり、肩の位置に上腕部224aを回動させる不図示の上腕モータと肘の位置に前腕部224bを回動させる不図示の前腕モータを備える。演出可動体224は、上腕モータと前腕モータによって装飾図柄表示装置208の前方を移動する。
遮蔽装置246は、格子状の左扉246aおよび右扉246bからなり、装飾図柄表示装置208および前面ステージ244の間に配設する。左扉246aおよび右扉246bの上部には、不図示の2つのプーリに巻き回したベルトをそれぞれ固定している。すなわち、左扉246aおよび右扉246bは、モータによりプーリを介して駆動するベルトの動作に伴って左右にそれぞれ移動する。遮蔽手段は、左扉246aおよび右扉246bを閉じた状態ではそれぞれの内側端部が重なり、遊技者が装飾図柄表示装置208を視認し難いように遮蔽する。左扉246aおよび右扉246bを開いた状態ではそれぞれの内側端部が装飾図柄表示装置208の表示画面の外側端部と若干重なるが、遊技者は装飾図柄表示装置208の表示の全てを視認可能である。また、左扉246aおよび右扉246bは、それぞれ任意の位置で停止可能であり、例えば、表示した装飾図柄がどの装飾図柄であるかを遊技者が識別可能な程度に、装飾図柄の一部だけを遮蔽するようなことができる。なお、左扉246aおよび右扉246bは、格子の孔から後方の装飾図柄表示装置208の一部を視認可能にしてもよいし、格子の孔の障子部分を半透明のレンズ体で塞ぎ、後方の装飾図柄表示装置208による表示を漠然と遊技者に視認させるようにしてもよいし、格子の孔の障子部分を完全に塞ぎ(遮蔽し)、後方の装飾図柄表示装置208を全く視認不可にしてもよい。
<制御部>
次に、図4を用いて、このパチンコ機100の制御部の回路構成について詳細に説明する。なお、同図は制御部の回路ブロック図を示したものである。
パチンコ機100の制御部は、大別すると、主に遊技の進行(例えば、遊技者による操作の検出、遊技状態の遷移、遊技媒体の払出制御、当否判定など)を制御する主制御部300と、主制御部300が送信するコマンド信号(以下、単に「コマンド」と呼ぶ)に応じて主に演出の制御を行う第1副制御部400と、第1副制御部400より送信されたコマンドに基づいて各種機器を制御する第2副制御部500と、主制御部300が送信するコマンドに応じて主に遊技球の払い出しに関する制御を行う払出制御部600と、遊技球の発射制御を行う発射制御部630と、パチンコ機100に供給される電源を制御する電源制御部660と、によって構成している。
<主制御部>
まず、パチンコ機100の主制御部300について説明する。
主制御部300は、主制御部300の全体を制御する基本回路302を備えており、この基本回路302には、CPU304と、制御プログラムや各種データを記憶するためのROM306と、一時的にデータを記憶するためのRAM308と、各種デバイスの入出力を制御するためのI/O310と、時間や回数等を計測するためのカウンタタイマ312と、プログラム処理の異常を監視するWDT314を搭載している。なお、ROM306やRAM308については他の記憶装置を用いてもよく、この点は後述する第1副制御部400についても同様である。この基本回路302のCPU304は、水晶発振器316bが出力する所定周期のクロック信号をシステムクロックとして入力して動作する。
また、基本回路302には、水晶発振器316aが出力するクロック信号を受信する度に0〜65535の範囲で数値を変動させるハードウェア乱数カウンタとして使用しているカウンタ回路318(この回路には2つのカウンタを内蔵しているものとする)と、所定の球検出センサ、例えば各始動口、入賞口、可変入賞口を通過する遊技球を検出するセンサや、前面枠扉開放センサや内枠開放センサや下皿満タンセンサを含む各種センサ320が出力する信号を受信し、増幅結果や基準電圧との比較結果をカウンタ回路318および基本回路302に出力するためのセンサ回路322と、所定の図柄表示装置、例えば第1特図表示装置212や第2特図表示装置214の表示制御を行うための駆動回路324と、所定の図柄表示装置、例えば普図表示装置210の表示制御を行うための駆動回路326と、各種状態表示部328(例えば、普図保留ランプ216、第1特図保留ランプ218、第2特図保留ランプ220、高確中ランプ222等)の表示制御を行うための駆動回路330と、所定の可動部材、例えば第2特図始動口232の羽根部材232aや可変入賞口234の扉部材234a等を開閉駆動する各種ソレノイド332を制御するための駆動回路334を接続している。
なお、第1特図始動口230に球が入賞したことを球検出センサ320が検出した場合には、センサ回路322は球を検出したことを示す信号をカウンタ回路318に出力する。この信号を受信したカウンタ回路318は、第1特図始動口230に対応するカウンタのそのタイミングにおける値をラッチし、ラッチした値を、第1特図始動口230に対応する内蔵のカウンタ値記憶用レジスタに記憶する。また、カウンタ回路318は、第2特図始動口232に球が入賞したことを示す信号を受信した場合も同様に、第2特図始動口232に対応するカウンタのそのタイミングにおける値をラッチし、ラッチした値を、第2特図始動口232に対応する内蔵のカウンタ値記憶用レジスタに記憶する。
さらに、基本回路302には、情報出力回路336を接続しており、主制御部300は、この情報出力回路336を介して、外部のホールコンピュータ(図示省略)等が備える情報入力回路350にパチンコ機100の遊技情報(例えば、遊技状態)を出力する。
また、主制御部300には、電源制御部660から主制御部300に供給している電源の電圧値を監視する電圧監視回路338を設けており、この電圧監視回路338は、電源の電圧値が所定の値(本実施例では9V)未満である場合に電圧が低下したことを示す低電圧信号を基本回路302に出力する。
また、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けており、CPU304は、この起動信号出力回路340から起動信号を入力した場合に、遊技制御を開始する(詳細は後述する)。
また、主制御部300は、第1副制御部400にコマンドを送信するための出力インタフェースと、払出制御部600にコマンドを送信するための出力インタフェースをそれぞれ備えており、この構成により、第1副制御部400および払出制御部600との通信を可能としている。なお、主制御部300と第1副制御部400および払出制御部600との情報通信は一方向の通信であり、主制御部300は第1副制御部400および払出制御部600にコマンド等の信号を送信できるように構成しているが、第1副制御部400および払出制御部600からは主制御部300にコマンド等の信号を送信できないように構成している。
<副制御部>
次に、パチンコ機100の第1副制御部400について説明する。第1副制御部400は、主に主制御部300が送信したコマンド等に基づいて第1副制御部400の全体を制御する基本回路402を備えており、この基本回路402には、CPU404と、制御プログラムや各種演出データを記憶するためのROM406と、一時的にデータを記憶するためのRAM408と、各種デバイスの入出力を制御するためのI/O410と、時間や回数等を計測するためのカウンタタイマ412を搭載している。この基本回路402のCPU404は、水晶発信器414が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。なお、ROM406は、制御プログラムと各種演出データとを別々のROMに記憶させてもよい。
また、基本回路402には、スピーカ120(およびアンプ)の制御を行うための音源IC416と、各種ランプ418(例えば、チャンスボタンランプ138)の制御を行うための駆動回路420と、遮蔽装置246の駆動制御を行うための駆動回路432と、遮蔽装置246の現在位置を検出する遮蔽装置センサ430と、チャンスボタン136の押下を検出するチャンスボタン検出センサ426と、遮蔽装置センサ430やチャンスボタン検出センサ426からの検出信号を基本回路402に出力するセンサ回路428と、CPU404からの信号に基づいてROM406に記憶された画像データ等を読み出してVRAM436のワークエリアを使用して表示画像を生成して装飾図柄表示装置208に画像を表示するVDP434(ビデオ・ディスプレイ・プロセッサー)と、を接続している。
次に、パチンコ機100の第2副制御部500について説明する。第2副制御部500は、第1副制御部400が送信した制御コマンドを入力インタフェースを介して受信し、この制御コマンドに基づいて第2副制御部500の全体を制御する基本回路502を備えており、この基本回路502は、CPU504と、一時的にデータを記憶するためのRAM508と、各種デバイスの入出力を制御するためのI/O510と、時間や回数等を計測するためのカウンタタイマ512を搭載している。基本回路502のCPU504は、水晶発振器514が出力する所定周期のクロック信号をシステムクロックとして入力して動作し、第2副制御部500の全体を制御するための制御プログラム及びデータ、画像表示用のデータ等が記憶されたROM506が設けられている。
また、基本回路502には、演出可動体224の駆動制御を行うための駆動回路516と、演出可動体224の現在位置を検出する演出可動体センサ424と、演出可動体センサ424からの検出信号を基本回路502に出力するセンサ回路518と、遊技盤用ランプ532の制御を行うための遊技盤用ランプ駆動回路530と、遊技台枠用ランプ542の制御を行うための遊技台枠用ランプ駆動回路540と、遊技盤用ランプ駆動回路530と遊技台枠用ランプ駆動回路540との間でシリアル通信による点灯制御を行うシリアル通信制御回路520と、を接続している。
<払出制御部、発射制御部、電源制御部>
次に、パチンコ機100の払出制御部600、発射制御部630、電源制御部660について説明する。
払出制御部600は、主に主制御部300が送信したコマンド等の信号に基づいて払出装置152の払出モータ602を制御すると共に、払出センサ604が出力する制御信号に基づいて賞球または貸球の払い出しが完了したか否かを検出すると共に、インタフェース部606を介して、パチンコ機100とは別体で設けられたカードユニット608との通信を行う。
発射制御部630は、払出制御部600が出力する、発射許可または停止を指示する制御信号や、球発射ハンドル134内に設けた発射強度出力回路が出力する、遊技者による球発射ハンドル134の操作量に応じた発射強度を指示する制御信号に基づいて、発射杆146および発射槌148を駆動する発射モータ632の制御や、上皿126から発射装置110に球を供給する球送り装置634の制御を行う。
電源制御部660は、パチンコ機100に外部から供給される交流電源を直流化し、所定の電圧に変換して主制御部300、第1副制御部400等の各制御部や払出装置152等の各装置に供給する。さらに、電源制御部660は、外部からの電源が断たれた後も所定の部品(例えば主制御部300のRAM308等)に所定の期間(例えば10日間)電源を供給するための蓄電回路(例えば、コンデンサ)を備えている。なお、本実施形態では、電源制御部660から払出制御部600と第2副制御部500に所定電圧を供給し、払出制御部600から主制御部300と第2副制御部500と発射制御部630に所定電圧を供給しているが、各制御部や各装置に他の電源経路で所定電圧を供給してもよい。
<図柄の種類>
次に、図5(a)〜(c)を用いて、パチンコ機100の第1特別図柄表示装置212、第2特別図柄表示装置214、装飾図柄表示装置208、普通図柄表示装置210が停止表示する特図および普図の種類について説明する。同図(a)は特図の停止図柄態様の一例を示したものである。
第1特図始動口230に球が入球したことを第1始動口センサが検出したことを条件として特図1変動遊技が開始され、第2特図始動口232に球が入球したことを第2始動口センサが検出したことを条件として特図2変動遊技が開始される。特図1変動遊技が開始されると、第1特別図柄表示装置212は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「特図1の変動表示」を行う。また、特図2変動遊技が開始されると、第2特別図柄表示装置214は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「特図2の変動表示」を行う。これらの「特図1の変動表示」および「特図2の変動表示」が本発明にいう図柄の変動表示の一例に相当する。そして、特図1の変動開始前に決定した変動時間(本発明にいう変動時間が相当)が経過すると、第1特別図柄表示装置212は特図1の停止図柄態様を停止表示し、特図2の変動開始前に決定した変動時間(これも本発明にいう変動時間が相当)が経過すると、第2特別図柄表示装置214は特図2の停止図柄態様を停止表示する。したがって、「特図1の変動表示」を開始してから特図1の停止図柄態様を停止表示するまで、あるいは「特図2の変動表示」を開始してから特図2の停止図柄態様を停止表示するまでが本発明にいう図柄変動停止表示の一例に相当し、以下、この「特図1又は2の変動表示」を開始してから特図1又は2の停止図柄態様を停止表示するまでの一連の表示を図柄変動停止表示と称する。後述するように、図柄変動停止表示は複数回、連続して行われることがある。同図(a)には、図柄変動停止表示における停止図柄態様として「特図A」から「特図J」までの10種類の特図が示されており、図中の白抜きの部分が消灯するセグメントの場所を示し、黒塗りの部分が点灯するセグメントの場所を示している。
「特図A」は15ラウンド(15R)特別大当り図柄であり、「特図B」は15R大当り図柄である。本実施形態のパチンコ機100では、後述するように、特図変動遊技における大当りか否かの決定はハードウェア乱数の抽選によって行い、特別大当りか否かの決定はソフトウェア乱数の抽選によって行う。大当りと特別大当りの違いは、次回の特図変動遊技で、大当りに当選する確率が高い(特別大当り)か低い(大当り)かの違いである。以下、この大当りに当選する確率が高い状態のことを特図高確率状態と称し、その確率が低い状態のことを特図低確率状態と称する。また、15R特別大当り遊技終了後および15R大当り遊技終了後はいずれも時短状態に移行する。時短については詳しくは後述するが、時短状態に移行する状態のことを普図高確率状態と称し、時短状態に移行しない状態のことを普図低確率状態と称する。15R特別大当り図柄である「特図A」は、特図高確率普図高確率状態であり、15R大当り図柄である「特図B」は、特図低確率普図高確率状態である。これらの「特図A」および「特図B」は、遊技者に付与する利益量が相対的に大きな利益量になる図柄である。
「特図C」は突然確変と称される2R大当り図柄であり、特図高確率普図高確率状態である。すなわち、15Rである「特図A」と比べて、「特図C」は2Rである点が異なる。「特図D」は突然時短と称される2R大当り図柄であり、特図低確率普図高確率状態である。すなわち、15Rである「特図B」と比べて、「特図D」は2Rである点が異なる。
「特図E」は隠れ確変と称される2R大当り図柄であり、特図高確率普図低確率状態である。「特図F」は突然通常と称される2R大当り図柄であり、特図低確率普図低確率状態である。これら「特図E」および「特図F」はいずれも、2Rであるとともに、時短状態に移行しない状態である。
「特図G」は第1小当り図柄であり、「特図H」は第2小当り図柄であり、何れも特図低確率普図低確率状態である。ここにいう小当りは、2R時短無し大当りと同じものに相当する。すなわち、この「特図G」、「特図H」は「特図F」と同じ状態であるが、両者では装飾図柄表示装置208に表示される演出が異なり、あえて、同じ状態でも「特図G」、「特図H」と「特図F」を設けておくことで、遊技の興趣を高めている。
また、「特図I」は第1はずれ図柄であり、「特図J」は第2はずれ図柄であり、遊技者に付与する利益量が相対的に小さな利益量になる図柄である。
なお、本実施形態のパチンコ機100には、15R特別大当り図柄として「特図A」以外の図柄も用意されており、15R大当り図柄等の他の図柄についても同様である。
図5(b)は装飾図柄の一例を示したものである。本実施形態の装飾図柄には、「装飾1」〜「装飾10」の10種類がある。第1特図始動口230または第2特図始動口232に球が入賞したこと、すなわち、第1特図始動口230に球が入球したことを第1始動口センサが検出したこと、あるいは第2特図始動口232に球が入球したことを第2始動口センサが検出したことを条件にして、装飾図柄表示装置208の左図柄表示領域208a、中図柄表示領域208b、右図柄表示領域208cの各図柄表示領域に、「装飾1」→「装飾2」→「装飾3」→・・・・「装飾9」→「装飾10」→「装飾1」→・・・の順番で表示を切り替える「装飾図柄の変動表示」を行う。そして、「特図B」の15R大当りを報知する場合には、図柄表示領域208a〜208cに15R大当りに対応する、同じ装飾図柄が3つ並んだ図柄組合せ(例えば「装飾1−装飾1−装飾1」や「装飾2−装飾2−装飾2」等)を停止表示する。「特図A」の15R特別大当りを報知する場合には、同じ奇数の装飾図柄が3つ並んだ図柄組合せ(例えば「装飾3−装飾3−装飾3」や「装飾7−装飾7−装飾7」等)を停止表示する。
また、「特図E」の隠れ確変と称される2R大当り、「特図F」の突然通常と称される2R大当り、あるいは「特図G」の第1小当り、「特図H」の第2小当りを報知する場合には、「装飾1−装飾2−装飾3」を停止表示する。さらに、「特図C」の突然確変と称される2R大当り、あるいは「特図D」の突然時短と称される2R大当りを報知する場合には、「装飾1−装飾3−装飾5」を停止表示する。一方、「特図I」の第1はずれ、「特図J」の第2はずれを報知する場合には、図柄表示領域208a〜208cに同図(b)に示す図柄組合せ以外の図柄組合せを停止表示する。
図5(c)は普図の停止表示図柄の一例を示したものである。本実施形態の普図の停止表示態様には、当り図柄である「普図A」と、外れ図柄である「普図B」の2種類がある。普図始動口228を球が通過したことを上述のゲートセンサが検出したことに基づいて、普通図柄表示装置210は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「普図の変動表示」を行う。そして、普図変動遊技の当選を報知する場合には「普図A」を停止表示し、普図変動遊技の外れを報知する場合には「普図B」を停止表示する。この同図(c)においても、図中の白抜きの部分が消灯するセグメントの場所を示し、黒塗りの部分が点灯するセグメントの場所を示している。
<主制御部から払出制御部に送信されたコマンドの処理>
図6は、本実施形態のパチンコ機100の主制御部300から払出制御部600に送信されたコマンドの処理について示す概要図である。
同図の如く、主制御部300と払出制御部600とはシリアル通信回線を介して電気的に接続されており、コマンド送信条件の成立があった場合に、主制御部300は払出制御部600に所定のコマンドを送信する。そして払出制御部600は、受信したコマンドを一旦(コマンドの解析より先に)、記憶手段(例えば、RAMなど)に記憶する処理と、記憶手段に記憶されたコマンドを解析する処理とを少なくとも行う。
つまり、同図に示すように、第一の処理を行う主制御部300から第二の処理を行う払出制御部600に複数のコマンド(コマンド1、コマンド2)が送信された場合、コマンド1、コマンド2のいずれもRAMなどに記憶し、その後、記憶されたコマンド1、コマンド2をそれぞれ解析するものである。例えば、コマンド2は正常なコマンドであるが、コマンド1が不正なコマンドであるような場合であっても、いずれのコマンドも一旦、RAMなどに記憶する。その後、コマンドの解析処理が行われ、不正なコマンド1は破棄され、正常なコマンド2は破棄されずコマンドに対応した処理(第二の処理)が実行される。
<主制御部と払出制御部のシリアル通信>
図7を参照して、パチンコ機100の主制御部300と払出制御部600のシリアル通信について詳細に説明する。
図7は、パチンコ機100の主制御部300と払出制御部600のシリアル通信を説明するブロック図であり、図7(a)は、シリアル通信回路の概略ブロック図であり、図2(b)は、主制御部300と払出制御部600シリアル通信に関するレジスタを説明するブロック図である。また図7(c)は、主制御部300と払出制御部600シリアル通信の流れを説明するブロック図である。
同図(a)を参照して説明すると、パチンコ機100は、遊技制御を少なくとも実行可能な主制御部用マイクロコンピュータ(マイクロプロセッサ)760と、賞球付与制御を少なくとも実行可能な払出制御部用マイクロコンピュータ(マイクロプロセッサ)770を有する。主制御部用マイクロコンピュータ760は、主制御部300を構成する主制御基板156に実装され、払出制御部用マイクロコンピュータは、払出制御部600を構成する払出制御基板170(主制御基板156とは別の基板)に実装される。主制御部用マイクロコンピュータ760と、払出制御部用マイクロコンピュータ770は、それぞれ同図(b)に示すシリアル通信回路750、752を内蔵し、信号(例えば、賞球コマンド)をシリアル通信で送受信することができる。
主制御部用マイクロコンピュータ760は、シリアル通信用のレジスタとして例えば、ステータスレジスタ762、受信データレジスタ764、送信データレジスタ766、その他のレジスタ768を有する。また、主制御部用マイクロコンピュータ760は、汎用レジスタ(Aレジスタ712、HLレジスタ(ペアレジスタ)714、その他レジスタ716など)を含むCPUコアレジスタ710や、ROM306、RAM(バッファ)308等を備える。
払出制御部用マイクロコンピュータ770は、シリアル通信用のレジスタとして例えば、ステータスレジスタ772、受信データレジスタ774、送信データレジスタ776、その他のレジスタ778を有する。
また、払出制御部用マイクロコンピュータ770は、汎用レジスタ(記憶領域)として、汎用レジスタ(Aレジスタ722、HLレジスタ(ペアレジスタ)724、その他レジスタ726など)を含むCPUコアレジスタ720および、ROM706、RAM(バッファエリア)708等を備える。
具体的には同図(a)に示すように、記憶領域(第一の記憶領域)にRAM(バッファエリア)708が設けられ、他の記憶領域(第二の記憶領域)にCPUコアレジスタ720が設けられ、他の記憶領域(第三の記憶領域)に払出制御部用マイクロコンピュータ770の受信データレジスタ774および送信データレジスタ776が設けられる。
なお、主制御部用マイクロコンピュータ760の受信データレジスタ764および送信データレジスタ766は、1つの送受信データレジスタであってもよい。また、払出制御部用マイクロコンピュータ770の受信データレジスタ774および送信データレジスタ776は、1つの送受信データレジスタであってもよい。
同図(b)に示すように、シリアル通信回路750,752は、4チャンネル(Ch0、Ch1、Ch2、Ch3)の回路を内蔵している。すべてのチャンネルは機能的に独立しており、送信部と受信部を有して送受信が可能なチャンネルと、送信部のみを有し送信のみが可能なチャンネルがある。主制御部用マイクロコンピュータ760と払出制御部用マイクロコンピュータ770のシリアル通信には、送受信が可能なチャンネル(Ch0)を使用する。また、シリアル通信回路750、752は、FIFOモードで動作する。送信は64バイト、受信は8バイトがFIFOとして使用できる。
例えば、主制御部用マイクロコンピュータ760がデータ送信を行う場合、主制御部300のCPU304が主制御部用マイクロコンピュータ760に内蔵されたシリアル通信回路750のステータスレジスタを参照して「送信可能」の場合に送信データレジスタ766にデータをセットする。シリアル通信回路750は送信データレジスタ766にセットされたデータを送信する。
例えば、払出制御部用マイクロコンピュータ770がデータ受信を行う場合、受信データが払出制御部用マイクロコンピュータ770に内蔵されたシリアル通信回路752の受信データレジスタ774に書き込まれる。払出制御部600のCPUはステータスレジスタを参照して「受信完了」になった場合に受信データレジスタ774から受信データを読み込む。
例えば、払出制御部用マイクロコンピュータ770がデータ送信を行う場合、払出制御部600のCPUが払出制御部用マイクロコンピュータ770に内蔵されたシリアル通信回路752のステータスレジスタを参照して「送信可能」の場合に送信データレジスタ776にデータをセットする。シリアル通信回路752は送信データレジスタ776にセットされたデータを送信する。
例えば、主制御部用マイクロコンピュータ760がデータ受信を行う場合、受信データが主制御部用マイクロコンピュータ760に内蔵されたシリアル通信回路750の受信データレジスタ764に書き込まれる。主制御部300のCPUはステータスレジスタを参照して「受信完了」になった場合に受信データレジスタ764から受信データを読み込む。
また、シリアル通信回路750、752はデータを送信する場合、シリアル通信回路750、752のステータスレジスタ762、772を参照し送信状態(データ送信完了など)を検出できる。また、シリアル通信回路750、752はデータを受信する場合、ステータスレジスタ762、772を参照し、所定条件が成立している場合に受信データレジスタ764、774からデータを読み込む。具体的には、ステータスレジスタ762、772を参照することで、受信データにノイズ検出されたデータがあるか否か、ブレークコード、フレーミングエラーおよびパリティエラーを含むデータの有無、またはオーバーランの検出の有無などを確認することができる。
このようにして例えば、主制御部用マイクロコンピュータ760から送信されたコマンドは、払出制御部用マイクロコンピュータ770の受信データレジスタ774に書き込まれ、各種演算処理や判定処理のために払出制御部用マイクロコンピュータ770のCPUコアレジスタ712に格納された後、RAM(バッファ)708に格納される。また、後述するが、払出制御部600で受信したコマンドは、コマンド解析処理の前に一旦、RAM(バッファ)708に保存される。このように受信コマンドのバッファへの保存をコマンド解析処理に優先して行うことにより、受信データレジスタ774からRAM708にコマンドが送信される期間または、受信データレジスタ774からCPUコアレジスタ712にコマンドが送信される期間を短縮することができるので、コマンドが各レジスタに点在する状況を減らすことが可能になるため、遊技制御の安定化が可能になる場合がある。
図7(c)を参照して、主制御部300と払出制御部600のシリアル通信処理の流れについて説明する。まず主制御部300から払出制御部600に、第一の通信確認コマンド(主制御通信確認コマンド)を送信する(1)。払出制御部600は、主制御部300から主制御通信確認コマンドを受信する(2)。払出制御部600は、主制御通信確認コマンドを受信すると、第二の通信確認コマンド(第一の通信確認コマンドに対する応答のコマンド、払出制御通信確認コマンド)を主制御部300に送信する(3)。払出制御通信確認コマンドを受信した主制御部300は、払出制御部600にコマンド(例えば、ここでは賞球コマンド)を送信する(4)。
処理(1)〜(3)は通信確認中の状態であり、この状態では主制御部300は払出制御部600に対してコマンドを送信しない。処理(3)が完了すると、通信確認が完了となり、この状態で主制御部300は払出制御部600に賞球コマンドを送信する。例えば、ノイズなどの影響も考慮し、処理(1)は複数回行い、処理(3)の通信確認の完了を示すコマンドが所定回数得られない場合に通信エラー状態とする。この通信エラーの状態となった場合も、主制御部300は払出制御部600に賞球コマンドを送信しない。また、エラーを報知するため、外部に接続する装置に信号を出力する。なお、外部に接続する装置への信号出力は行わなくてもよい。
処理(1)は、例えば所定回数の割込み処理毎に1回、例えば、主制御部のタイマ割込み処理を25回(50回、・・など)実行するうちに1回、実行する。処理(2)および処理(3)は同一の割込み処理で実行してもよいし、別の割込み処理で実行してもよい。また、処理(3)と同一の割込み処理で、払出制御部600の制御状態を送信してもよい。払出制御部600の制御状態は、変化のある場合のみ(例えば、正常な状態から異常な状態に変化した場合(エラーの場合)など)送信するものとしてもよい。
また、払出制御部600は、第1のコマンド(賞球コマンド)が第一の記憶手段(受信データレジスタ774など)に記憶されている場合に賞の付与に関する処理を少なくとも実行可能であり、第2のコマンド(主制御通信確認コマンド)が前記第一の記憶手段に記憶されている場合に、主制御部300に第3のコマンド(払出制御通信確認コマンド(主制御通信確認コマンドの応答コマンド))を送信する処理を少なくとも実行可能である(これについては後に詳述する)。
なお、主制御部用マイクロコンピュータ760の受信データレジスタ764、送信データレジスタ766および、払出制御部用マイクロコンピュータ770の受信データレジスタ774、送信データレジスタ776いずれも、そのサイズに限りがあり、CPUコアレジスタ712、722やRAM308、708とデータを送受信する場合に、例えば、異常が発生するなどの条件が発生した場合などにデータの漏れが発生する場合がある。
図8は、本実施形態の電源制御について説明する図である。図8(a)は、電源の遮断及び供給のタイミングに伴う各制御部の動作状態を示す概要図であり、図8(b)は、電源遮断時における各制御部の動作状態を示す概要図である。
電源制御部660は、パチンコ機100に外部から供給される電源を直流に変換し、払出制御部600および第1副制御部400に供給する。払出制御部600は主制御部300に電源を供給し、第1副制御部400は第2副制御部500に電源を供給する。つまり、電源がOFF状態からON状態に立ち上がると、第1副制御部400がリセット状態からリセット解除状態に立ち上がり、その後、第2副制御部500がリセット状態からリセット解除状態に立ち上がる。同様に、電源がOFF状態からON状態に立ち上がると、払出制御部600がリセット状態からリセット解除状態に立ち上がり、その後、主制御部300がリセット状態からリセット解除状態に立ち上がる。なお、電源はAC100Vを入力してもよい。
後述するが、払出制御部600がリセット解除状態に立ち上がってから主制御部300がリセット解除状態に立ち上がるまでの期間において、払出制御部600は、コマンドを受信することができ、受信したコマンドを解析することもできる。また、払出制御部600は、賞球数を設定することも可能であるが、払出処理は実行されない。その後、主制御部300がリセット解除状態に立ち上がった後に、主制御部300から送信された初回の主制御通信確認コマンドを払出制御部600で受信した場合に、設定した賞球数を(意図しないタイミングで送信された賞球コマンドとして)消去する場合がある。また、主制御部300がリセット解除状態に立ち上がった後(かつ、払出制御部600がリセット解除状態に立ち上がった後)、賞球コマンドが主制御部300から払出制御部600に送信された場合は、正常なコマンドとして処理を行う。
ここで、上記説明した内容を踏まえて、遊技台への電圧供給が低下した場合の動作について説明する。例えば大当り中の状態で停電などによって電源が切られた場合、再度電源投入によって遊技台が初期状態になると、遊技者にとって著しく不利益な状態になる。このような事態にならないよう、コンデンサに蓄えられた電力により遊技台の状態を保持する電断時処理(後述する)が実行される。この電断時処理は、電源が切られた場合(以下、電源オフと称する)の他、静電気などの要因により供給電圧が一時的に低下した場合(以下、瞬断と称する)にも実行される。同図(b)は、電断時処理の動作を示す図である。
電源が切られた場合、電圧が供給されなくなる(電断発生)が、すぐに電圧は0にはならず、コンデンサに蓄えられた電力により供給電圧が徐々に降下する。例えば、12Vの供給電圧が所定の電圧(本実施形態では9.66V)まで降下すると電圧監視回路338から低電圧信号が主制御部300のCPU304に送信される。この信号を受信したことにより、主制御部300のメイン処理(後述する)により電断が発生したと判定され、電断時処理が実行される。つまり、同図(b)に示すように、主制御部300の電源監視状態としては、電断が発生してから供給電圧が9.66Vに降下するまでは電源断解除状態であり、供給電圧が9.66Vより降下した後は、電源断状態となる。なお、ここでの電源断状態とは、電圧が所定の値を下回り、後述する低電圧信号がオンになる状態を意味するものであり、電源が実際に遮断された状態を意味するものではない。
同様に、払出制御部600では、12Vの供給電圧が所定の電圧(本実施形態では8.3V)まで降下すると、電断が発生したと判定され、電断時処理が実行される。つまり、同図(b)に示すように、払出制御部600の電源監視状態としては、電断が発生してから供給電圧が8.3Vに降下するまでは電源断解除状態であり、供給電圧が8.3Vより降下した後は、電源断状態となる。
また、主制御部300と払出制御部600はそれぞれに、、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(後述する)を設けている。例えば主制御部300では、基本回路302のCPU304が起動信号の入力を受付けると、リセット割込によりリセットスタートして(リセット解除状態となり)ROM306に予め記憶している制御プログラムに従って主制御部メイン処理を実行する。払出制御部600も同様である。そして、12Vの供給電圧が所定の電圧を下回った場合には、リセット状態となり、電源断解除状態になるまで待機する。
<主制御部メイン処理>
次に、図9を用いて、主制御部300のCPU304が実行する主制御部メイン処理について説明する。なお、同図は主制御部メイン処理の流れを示すフローチャートである。
上述したように、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けている。この起動信号を入力した基本回路302のCPU304は、リセット割込によりリセットスタートしてROM306に予め記憶している制御プログラムに従ってに示す主制御部メイン処理を実行する。
ステップS101では、初期設定1を行う。この初期設定1では、CPU304のスタックポインタ(SP)へのスタック初期値の設定(仮設定)、割込マスクの設定、I/O310の初期設定、RAM308に記憶する各種変数の初期設定、WDT314への動作許可及び初期値の設定等を行う。なお、本実施形態では、WDT314に、初期値として32.8msに相当する数値を設定し、RAM308に設けたマスク情報に初期値(例えば、11111111B(FFH(Hは数値が16進数であることを示す。以下同じ)))を設定する。また、後述する通信確認コマンドの初期値として25(約100msの時間に相当する数値)を設定する。
ステップS103では、低電圧信号がオンであるか否か、すなわち、電圧監視回路338が、電源制御部660から主制御部300に供給している電源の電圧値が所定の値(本実施形態では9.66V)未満である場合に電圧が低下したことを示す低電圧信号を出力しているか否かを監視する。そして、低電圧信号がオンの場合(CPU304が電源の遮断を検知した場合)にはステップS103の処理を繰り返し実行し、低電圧信号がオフの場合(CPU304が電源の遮断を検知していない場合)にはステップS107に進む。なお、電源が投入された直後で未だ上記所定の値(9.66V)に達しない場合にも、供給電圧がその所定の値以上になるまで、ステップS103の処理を繰り返し実行する。
ステップS105では、初期設定2を行う。この初期設定2では、後述する主制御部タイマ割込処理を定期毎に実行するための周期を決める数値をカウンタタイマ312に設定する処理、I/O310の所定の出力ポート(例えば試験用出力ポート、第1副制御部400への出力ポート)からクリア信号を出力する処理、RAM308への書き込みを許可する設定等を行う。
ステップS107では、電源の遮断前(電断前)の状態に復帰するか否かの判定を行い、電断前の状態に復帰しない場合(主制御部300の基本回路302を初期状態にする場合)には初期化処理(ステップS115)に進む。
具体的には、最初に、電源基板に設けたRWMクリアスイッチ180を遊技店の店員などが操作した場合に送信されるRAMクリア信号がオン(操作があったことを示す)であるか否か、すなわちRAMクリアが必要であるか否かを判定し、RAMクリア信号がオンの場合(RAMクリアが必要な場合)には、基本回路302を初期状態にすべくステップS115に進む。一方、RAMクリア信号がオフの場合(RAMクリアが必要でない場合)には、RAM308に設けた電源ステータス記憶領域に記憶した電源ステータスの情報を読み出し、この電源ステータスの情報がサスペンドを示す情報であるか否かを判定する。
そして、電源ステータスの情報がサスペンドを示す情報でない場合には、基本回路302を初期状態にすべくステップS115に進み、電源ステータスの情報がサスペンドを示す情報である場合には、RAM308の所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算することによりチェックサムを算出し、算出したチェックサムの結果が特定の値(例えば0)であるか否か(チェックサムの結果が正常であるか否か)を判定する。そして、チェックサムの結果が特定の値(例えば0)の場合(チェックサムの結果が正常である場合)には、電断前の状態に復帰すべくステップS109に進んでから、その後の処理を遅延させるべくステップS111に進む。チェックサムの結果が特定の値(例えば0)以外である場合(チェックサムの結果が異常である場合)には、パチンコ機100を初期状態にすべくステップS115に進む。同様に電源ステータスの情報が「サスペンド」以外の情報を示している場合にもステップS115に進む。
ステップS109では、復電時処理を行う。この復電時処理では、電断時にRAM308に設けられたスタックポインタ退避領域に記憶しておいたスタックポインタの値を読み出し、スタックポインタに再設定(本設定)する。また、電断時にRAM308に設けられたレジスタ退避領域に記憶しておいた各レジスタの値を読み出し、各レジスタに再設定した後、割込許可の設定を行う。以降、CPU304が、再設定後のスタックポインタやレジスタに基づいて制御プログラムを実行する結果、パチンコ機100は電源断時の状態に復帰する。すなわち、電断直前にタイマ割込処理(後述)に分岐する直前に行った(ステップS121内の所定の)命令の次の命令から処理を再開する。また、主制御部300における基本回路302に搭載されているRAM308には、送信情報記憶領域が設けられている。このステップS109では、その送信情報記憶領域に、電源投入情報(復電コマンド)をセットする。この復電コマンドは、電源断時の状態に復帰したことを表すコマンドであり、後述する、主制御部300のタイマ割込処理におけるステップS233において、第1副制御部400へ送信される。電源投入情報は、初期起動による電源投入の場合は00Hがセットされ、復帰起動による電源投入の場合は01Hがセットされる。つまり、ステップS109では、電源投入情報として復帰起動を示す値(01H)がセットされる。ステップS111では、遅延処理を実行する。詳細は後述するが、この遅延処理では、第1副制御部400の起動を待つための処理等を行う。なお、この例では、遅延処理(ステップS111)よりも前のステップS109の処理において、電源投入情報をセットしている。これにより、電源投入情報を参照して、第1副制御部400側に、初期起動であるか復帰起動であるかを送信することができる。ただしこの構成に限らず、復電時処理(ステップS109)よりも遅延処理(ステップS111)が先に実行されるものであってもよい。
ステップS113では、WDT314による時間計測を開始する。ステップS115では、初期化処理を行う。この初期化処理では、割込禁止の設定、スタックポインタへのスタック初期値の設定(本設定)、RAM308の全ての記憶領域の初期化などを行う。さらにここで、主制御部300のRAM308に設けられた送信情報記憶領域に正常復帰コマンドをセットする。この正常復帰コマンドは、主制御部300の初期化処理(ステップS115)が行われたことを表すコマンドであり、復電コマンドと同じく、主制御部300のタイマ割込処理におけるステップS233において、第1副制御部400へ送信される。
ステップS117では、上記ステップS111と同じ遅延処理を実行する(詳細は後述)。ステップS119では、WDT314のカウンタの値をクリアし、WDT314による時間計測を開始する。
ステップS121では、割込禁止の設定を行った後、基本乱数初期値更新処理を行う。この基本乱数初期値更新処理では、普図当選乱数カウンタ、および特図乱数値カウンタの初期値をそれぞれ生成するための2つの初期値生成用乱数カウンタと、普図タイマ乱数値、および特図タイマ乱数値それぞれを生成するための2つの乱数カウンタを更新する。例えば、普図タイマ乱数値として取り得る数値範囲が0〜100とすると、RAM308に設けた普図タイマ乱数値を生成するための乱数カウンタ記憶領域から値を取得し、取得した値に1を加算してから元の乱数カウンタ記憶領域に記憶する。このとき、取得した値に1を加算した結果が101であれば0を元の乱数カウンタ記憶領域に記憶する。他の初期値生成用乱数カウンタ、乱数カウンタもそれぞれ同様に更新する。なお、初期値生成用乱数カウンタは、後述するステップS207でも更新する。なお、ステップS121では、基本乱数初期値更新処理の他に後述する基本乱数更新処理を行ってもよいし、基本乱数更新処理のみを行ってもよい。
また、ステップS123では、コマンド送信処理を行う。このコマンド送信処理では、各種のコマンドをシリアル通信線612を介して払出制御部600に送信する。主制御部300は、所定の周期ごとに開始するタイマ割込処理を行っている間を除いて、ステップS121、S123の処理を繰り返し実行する。
<遅延処理>
次に、図10を用いて、主制御部300のCPU304が実行する遅延処理について説明する。なお、同図は主制御部メイン処理における遅延処理の流れを示すフローチャートである。
ステップS131では、I/O310の所定の出力ポートからクリア信号を送信する処理を実行する。ステップS133では、第1副制御部400の起動を待つ周期を決める副制御部起動待ちカウンタを初期設定(例えば90を設定)する。ステップS135では、割込み機能限定カウンタを初期設定(例えば250を設定)する。割込み機能限定カウンタは、4ms毎のタイマ割込み処理で減算される。
ステップS137では、基本乱数初期値更新処理を実行する(詳細は後述)。なお、ステップS137では、基本乱数初期値更新処理の他に後述する基本乱数更新処理を行ってもよいし、基本乱数更新処理のみを行ってもよい。ステップS139では、コマンド送信処理を行い、これにより各種のコマンドが第1副制御部400に送信される。
ステップS141では、割込み機能限定カウンタが0であるか否かの判定を行い、割込み機能限定カウンタが0以外の場合、ステップS137の処理に戻る。一方、割込み機能限定カウンタが0の場合、すなわち、ステップS135において割込み機能限定カウンタに250が設定され、4ms毎のタイマ割込み処理で減算されて1000ms=1秒経過した場合、ステップS143に進む。
ステップS143では、副制御部起動待ちカウンタを1減算する。ステップS145では、副制御部起動待ちカウンタが0であるか否かの判定を行い、副制御部起動待ちカウンタが0以外の場合、ステップS135に戻る。一方、副制御部起動待ちカウンタが0の場合、すなわち、ステップS133において副制御部起動待ちカウンタに90が設定され、90秒経過した場合、ステップS147に進む。ステップS147では、その他の処理を実行する。
<主制御部タイマ割込処理>
次に、図11を用いて、主制御部300のCPU304が実行する主制御部タイマ割込処理について説明する。なお、同図は主制御部タイマ割込処理の流れを示すフローチャートである。
主制御部300は、所定の周期(本実施形態では約4msに1回)でタイマ割込信号を発生するカウンタタイマ312を備えており、このタイマ割込信号を契機として主制御部タイマ割込処理を所定の周期で開始する。
ステップS201では、タイマ割込開始処理を行う。このタイマ割込開始処理では、CPU304の各レジスタの値をスタック領域に一時的に退避する処理などを行う。ステップS203では、WDT314のカウント値が初期設定値(本実施形態では32.8ms)を超えてWDT割込が発生しないように(処理の異常を検出しないように)、WDTを定期的に(本実施形態では、主制御部タイマ割込の周期である約4msに1回)リスタートを行う。
ステップS205では、入力ポート状態更新処理を行う。この入力ポート状態更新処理では、I/O310の入力ポートを介して、上述の前面枠扉開放センサや内枠開放センサや下皿満タンセンサ、各種の球検出センサを含む各種センサ320の検出信号を入力して検出信号の有無を監視し、RAM308に各種センサ320ごとに区画して設けた信号状態記憶領域に記憶する。球検出センサの検出信号を例にして説明すれば、前々回のタイマ割込処理(約4ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた前回検出信号記憶領域から読み出し、この情報をRAM308に各々の球検出センサごとに区画して設けた前々回検出信号記憶領域に記憶し、前回のタイマ割込処理(約4ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた今回検出信号記憶領域から読み出し、この情報を上述の前回検出信号記憶領域に記憶する。また、今回検出した各々の球検出センサの検出信号を、上述の今回検出信号記憶領域に記憶する。
また、ステップS205では、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域の各記憶領域に記憶した各々の球検出センサの検出信号の有無の情報を比較し、各々の球検出センサにおける過去3回分の検出信号の有無の情報が入賞判定パターン情報と一致するか否かを判定する。一個の遊技球が一つの球検出センサを通過する間に、約4msという非常に短い間隔で起動を繰り返すこの主制御部タイマ割込処理は何回か起動する。このため、主制御部タイマ割込処理が起動する度に、上述のステップS205では、同じ遊技球が同じ球検出センサを通過したことを表す検出信号を確認することになる。この結果、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域それぞれに、同じ遊技球が同じ球検出センサを通過したことを表す検出信号が記憶される。すなわち、遊技球が球検出センサを通過し始めたときには、前々回検出信号無し、前回検出信号有り、今回検出信号有りになる。本実施形態では、球検出センサの誤検出やノイズを考慮して、検出信号無しの後に検出信号が連続して2回記憶されている場合には、入賞があったと判定する。
主制御部300のROM306には、入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)が記憶されている。このステップS205では、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、予め定めた入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)と一致した場合に、一般入賞口226、可変入賞口234、第1特図始動口230、および第2特図始動口232への入球、または普図始動口228の通過があったと判定する。すなわち、これらの入賞口226、234やこれらの始動口230、232、228への入賞があったと判定する。例えば、一般入賞口226への入球を検出する一般入賞口センサにおいて過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致した場合には、一般入賞口226へ入賞があったと判定し、以降の一般入賞口226への入賞に伴う処理を行うが、過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致しなかった場合には、以降の一般入賞口226への入賞に伴う処理を行わずに後続の処理に分岐する。
なお、主制御部300のROM306には、入賞判定クリアパターン情報(本実施形態では、前々回検出信号有り、前回検出信号無し、今回検出信号無しであることを示す情報)が記憶されている。入賞が一度あったと判定した後は、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、その入賞判定クリアパターン情報に一致するまで入賞があったとは判定せず、入賞判定クリアパターン情報に一致すれば、次からは上記入賞判定パターン情報に一致するか否かの判定を行う。
ステップS207およびステップS209では、基本乱数初期値更新処理および基本乱数更新処理を行う。これらの基本乱数初期値更新処理および基本乱数更新処理では、上記ステップS115で行った初期値生成用乱数カウンタの値の更新を行い、次に主制御部300で使用する、普図当選乱数値、特図1乱数値、および特図2乱数値をそれぞれ生成するための2つの乱数カウンタを更新する。例えば、普図当選乱数値として取り得る数値範囲が0〜100とすると、RAM308に設けた普図当選乱数値を生成するための乱数カウンタ記憶領域から値を取得し、取得した値に1を加算してから元の乱数カウンタ記憶領域に記憶する。このとき、取得した値に1を加算した結果が101であれば0を元の乱数カウンタ記憶領域に記憶する。また、取得した値に1を加算した結果、乱数カウンタが一周していると判定した場合にはそれぞれの乱数カウンタに対応する初期値生成用乱数カウンタの値を取得し、乱数カウンタの記憶領域にセットする。
例えば、0〜100の数値範囲で変動する普図当選乱数値生成用の乱数カウンタから値を取得し、取得した値に1を加算した結果が、RAM308に設けた所定の初期値記憶領域に記憶している前回設定した初期値と等しい値(例えば7)である場合に、普図当選乱数値生成用の乱数カウンタに対応する初期値生成用乱数カウンタから値を初期値として取得し、普図当選乱数値生成用の乱数カウンタにセットすると共に、普図当選乱数値生成用の乱数カウンタが次に1周したことを判定するために、今回設定した初期値を上述の初期値記憶領域に記憶しておく。また、普図当選乱数値生成用の乱数カウンタが次に1周したことを判定するための上述の初期値記憶領域とは別に、特図乱数生成用の乱数カウンタが1周したことを判定するための初期値記憶領域をRAM308に設けている。なお、本実施形態では特図1の乱数値を取得するためのカウンタと特図2の乱数値を取得するためのカウンタとを別に設けたが、同一のカウンタを用いてもよい。
ステップS211では、演出乱数更新処理を行う。この演出乱数更新処理では、主制御部300で使用する演出用乱数値を生成するための乱数カウンタを更新する。ステップS212では、割込み機能限定カウンタが0であるか否かの判定を行い、割込み機能限定カウンタが0以外の場合、ステップS213に進む。一方、割込み機能限定カウンタが0の場合、ステップS214に進む。ステップS213では、割込み機能限定カウンタを1減算し、その後、ステップS215〜S235の処理を行うことなく、ステップS239に進む。
ステップS214では、特定異常検出フラグ(詳細は後述)がONであるか否かの判定を行い、特定異常検出フラグがONの場合、ステップS215〜S235の処理を行うことなく、ステップS239に進む。一方、特定異常検出フラグがOFFの場合、ステップS215に進む。
ステップS215では、タイマ更新処理を行う。このタイマ更新処理では、普通図柄表示装置210に図柄を変動・停止表示する時間を計時するための普図表示図柄更新タイマ、第1特別図柄表示装置212に図柄を変動・停止表示する時間を計時するための特図1表示図柄更新タイマ、第2特図表示装置214に図柄を変動・停止表示する時間を計時するための特図2表示図柄更新タイマ、所定の入賞演出時間、所定の開放時間、所定の閉鎖時間、所定の終了演出期間などを計時するためのタイマなどを含む各種タイマを更新する。
ステップS216では、入賞口カウンタ更新処理を行う。この入賞口カウンタ更新処理では、入賞口226、234や始動口230、232、228に入賞があった場合に、RAM308に各入賞口ごと、あるいは各始動口ごとに設けた賞球数記憶領域の値を読み出し、1を加算して、元の賞球数記憶領域に設定する。
また、ステップS217では、入賞受付処理を行う。詳細は後述するが、この入賞受付処理では、一般入賞口226、第1特図始動口230、第2特図始動口232、普図始動口228、および可変入賞口234への入賞があったか否かを判定し、入賞があった場合に、RAM308に入賞口および始動口毎に設けた賞球数記憶領域に、対応する賞球数を記憶する。ステップS219では、シリアルコマンド管理処理を行う。詳細は後述するが、このシリアルコマンド管理処理では、払出制御部600とのシリアル通信の管理等を行う。
ステップS221では、普図状態更新処理を行う。この普図状態更新処理は、普図の状態に対応する複数の処理のうちの1つの処理を行う。例えば、普図変動表示の途中(上述する普図表示図柄更新タイマの値が1以上)における普図状態更新処理では、普通図柄表示装置210を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、普通図柄表示装置210は普図の変動表示(普図変動遊技)を行う。
また、普図変動表示時間が経過したタイミング(普図表示図柄更新タイマの値が1から0になったタイミング)における普図状態更新処理では、当りフラグがオンの場合には、当り図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行い、当りフラグがオフの場合には、外れ図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行う。また、主制御部300のRAM308には、普図状態更新処理に限らず各種の処理において各種の設定を行う設定領域が用意されている。ここでは、上記点灯・消灯駆動制御を行うとともに、その設定領域に普図停止表示中であることを示す設定を行う。この制御を行うことで、普通図柄表示装置210は、当り図柄(普図A)および外れ図柄(普図B)いずれか一方の図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)、その表示を維持するためにRAM308に設けた普図停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された図柄が所定期間停止表示され、普図変動遊技の結果が遊技者に報知される。
また、普図変動遊技の結果が当りであれば、後述するように、普図当りフラグがオンされる。この普図当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理では、RAM308の設定領域に普図作動中を設定するとともに、所定の開放期間(例えば2秒間)、第2特図始動口232の羽根部材232aの開閉駆動用のソレノイド(332)に、羽根部材232aを開放状態に保持する信号を出力するとともに、RAM308に設けた羽根開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。
また、所定の開放期間が終了したタイミング(羽根開放時間管理用タイマの値が1から0になったタイミング)で開始する普図状態更新処理では、所定の閉鎖期間(例えば500m秒間)、羽根部材の開閉駆動用のソレノイド332に、羽根部材を閉鎖状態に保持する信号を出力するとともに、RAM308に設けた羽根閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。
また、所定の閉鎖期間が終了したタイミング(羽根閉鎖時間管理用タイマの値が1から0になったタイミング)で開始する普図状態更新処理では、RAM308の設定領域に普図非作動中を設定する。さらに、普図変動遊技の結果が外れであれば、後述するように、普図外れフラグがオンされる。この普図外れフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理でも、RAM308の設定領域に普図非作動中を設定する。普図非作動中の場合における普図状態更新処理では、何もせずに次のステップS223に移行するようにしている。
ステップS223では、普図関連抽選処理を行う。この普図関連抽選処理では、普図変動遊技および第2特図始動口232の開閉制御を行っておらず(普図の状態が非作動中)、且つ、保留している普図変動遊技の数が1以上である場合に、上述の乱数値記憶領域に記憶している普図当選乱数値に基づいた乱数抽選により普図変動遊技の結果を当選とするか、不当選とするかを決定する当り判定をおこない、当選とする場合にはRAM308に設けた当りフラグにオンを設定する。不当選の場合には、当りフラグにオフを設定する。また、当り判定の結果に関わらず、次に上述の普図タイマ乱数値生成用の乱数カウンタの値を普図タイマ乱数値として取得し、取得した普図タイマ乱数値に基づいて複数の変動時間のうちから普図表示装置210に普図を変動表示する時間を1つ選択し、この変動表示時間を、普図変動表示時間として、RAM308に設けた普図変動時間記憶領域に記憶する。なお、保留している普図変動遊技の数は、RAM308に設けた普図保留数記憶領域に記憶するようにしており、当り判定をするたびに、保留している普図変動遊技の数から1を減算した値を、この普図保留数記憶領域に記憶し直すようにしている。また当り判定に使用した乱数値を消去する。
ステップS224では、特図先読み制御処理を行う。この特図先読み制御処理では、特図当選乱数値などの先読みを行う。次いで、特図1および特図2それぞれについての特図状態更新処理を行うが、最初に、特図2についての特図状態更新処理(特図2状態更新処理)を行う(ステップS225)。この特図2状態更新処理は、特図2の状態に応じて、次の8つの処理のうちの1つの処理を行う。例えば、特図2変動表示の途中(上述の特図2表示図柄更新タイマの値が1以上)における特図2状態更新処理では、第2特別図柄表示装置214を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、第2特別図柄表示装置214は特図2の変動表示(特図2変動遊技)を行う。また、コマンド設定送信処理(ステップS233)で回転開始設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶してから処理を終了する。
また、主制御部300のRAM308には、15R大当りフラグ、2R大当りフラグ、第1小当りフラグ、第2小当りフラグ、第1はずれフラグ、第2はずれフラグ、特図確率変動フラグ、および普図確率変動フラグそれぞれのフラグが用意されている。特図2変動表示時間が経過したタイミング(特図2表示図柄更新タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、15R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグもオンの場合には特図A、15R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグはオンの場合には特図B、2R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグもオンの場合には特図C、2R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグはオンの場合には特図D、2R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグはオンの場合には特図E、2R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグもオフの場合には特図F、第1小当りフラグがオンの場合には特図G、第2小当りフラグがオンの場合には特図H、第1はずれフラグがオンの場合には特図I、第2はずれフラグがオンの場合には特図Iそれぞれの態様となるように、第2特別図柄表示装置214を構成する7セグメントLEDの点灯・消灯駆動制御を行い、RAM308の設定領域に特図2停止表示中であることを表す設定を行う。この制御を行うことで、第2特別図柄表示装置214は、15R特別大当り図柄(特図A)、15R大当り図柄(特図B)、突然確変図柄(特図C)、突然時短図柄(特図D)、隠れ確変図柄(特図E)、突然通常図柄(特図F)、第1小当り図柄(特図G)、第2小当り図柄(特図H)、第1はずれ図柄(特図I)、および第2はずれ図柄(特図J)のいずれか一つの図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)その表示を維持するためにRAM308に設けた特図2停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された特図2が所定期間停止表示され、特図2変動遊技の結果が遊技者に報知される。また、RAM308に設けられた時短回数記憶部に記憶された時短回数が1以上であれば、その時短回数から1を減算し、減算結果が1から0となった場合は、特図確率変動中(詳細は後述)でなければ、時短フラグをオフする。さらに、大当り遊技中(特別遊技状態中)にも、時短フラグをオフする。
また、コマンド設定送信処理(ステップS233)で回転停止設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶するとともに、変動表示を停止する図柄が特図2であることを示す特図2識別情報を、後述するコマンドデータに含める情報としてRAM308に追加記憶してから処理を終了する。
また、特図2変動遊技の結果が大当りであれば、後述するように、大当りフラグがオンされる。この大当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理では、RAM308の設定領域に特図2作動中を設定するとともに、所定の入賞演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを開始することを遊技者に報知する画像を表示している期間待機するためにRAM308に設けた特図2待機時間管理用タイマの記憶領域に入賞演出期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で入賞演出設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の入賞演出期間が終了したタイミング(特図2待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の開放期間(例えば29秒間、または可変入賞口234に所定球数(例えば10球)の遊技球の入賞を検出するまで)可変入賞口234の扉部材234aの開閉駆動用のソレノイド(332)に、扉部材234aを開放状態に保持する信号を出力するとともに、RAM308に設けた扉開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で大入賞口開放設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の開放期間が終了したタイミング(扉開放時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の閉鎖期間(例えば1.5秒間)可変入賞口234の扉部材234aの開閉駆動用のソレノイド(332)に、扉部材234aを閉鎖状態に保持する信号を出力するとともに、RAM308に設けた扉閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で大入賞口閉鎖設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、この扉部材の開放・閉鎖制御を所定回数(本実施例では15ラウンドか2ラウンド)繰り返し、終了したタイミングで開始する特図2状態更新処理では、所定の終了演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを終了することを遊技者に報知する画像を表示している期間待機するように設定するためにRAM308に設けた演出待機時間管理用タイマの記憶領域に演出待機期間を示す情報を設定する。また、普図確率変動フラグがオンに設定されていれば、この大当り遊技の終了と同時に、RAM308に設けられた時短回数記憶部に時短回数100回をセットするともに、RAM308に設けられた時短フラグをオンする。なお、その普図確率変動フラグがオフに設定されていれば、時短回数記憶部に時短回数をセットすることもなく、また時短フラグをオンすることもない。ここにいう時短とは、特図変動遊技における大当りを終了してから、次の大当りを開始するまでの時間を短くするため、パチンコ機が遊技者にとって有利な状態になることをいう。この時短フラグがオンに設定されていると、普図高確率状態である。普図高確率状態では普図低確率状態に比べて、普図変動遊技に大当りする可能性が高い。また、普図高確率状態の方が、普図低確率状態に比べて普図変動遊技の変動時間および特図変動遊技の変動時間は短くなる。さらに、普図高確率状態では普図低確率状態に比べて、第2特別始動口232の一対の羽根部材232aの1回の開放における開放時間が長くなりやすい。加えて、普図高確率状態では普図低確率状態に比べて、一対の羽根部材232aは多く開きやすい。また、上述のごとく、時短フラグは、大当り遊技中(特別遊技状態中)にはオフに設定される。したがって、大当り遊技中には、普図低確率状態が維持される。これは、大当り遊技中に普図高確率状態であると、大当り遊技中に可変入賞口234に所定の個数、遊技球が入球するまでの間に第2特図始動口232に多くの遊技球が入球し、大当り中に獲得することができる遊技球の数が多くなってしまい射幸性が高まってしまうという問題があり、これを解決するためのものである。さらに、コマンド設定送信処理(ステップS233)で終了演出設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の終了演出期間が終了したタイミング(演出待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、RAM308の設定領域に特図2非作動中を設定する。さらに、特図2変動遊技の結果が外れであれば、後述するように、はずれフラグがオンされる。このはずれフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理でも、RAM308の設定領域に特図2非作動中を設定する。特図2非作動中の場合における特図2状態更新処理では、何もせずに次のステップS227に移行するようにしている。
続いて、特図1についての特図状態更新処理(特図1状態更新処理)を行う(ステップS227)。この特図1状態更新処理では、特図1の状態に応じて、上述の特図2状態更新処理で説明した各処理を行う。この特図1状態更新処理で行う各処理は、上述の特図2状態更新処理で説明した内容の「特図2」を「特図1」と読み替えた処理と同一であるため、その説明は省略する。なお、特図2状態更新処理と特図1状態更新処理の順番は逆でもよい。
ステップS225およびステップS227における特図状態更新処理が終了すると、今度は、特図1および特図2それぞれについての特図関連抽選処理を行う。ここでも先に、特図2についての特図関連抽選処理(特図2関連抽選処理)を行い(ステップS229)、その後で、特図1についての特図関連抽選処理(特図1関連抽選処理)を行う(ステップS231)。これらの特図関連抽選処理についても、主制御部300が特図2関連抽選処理を特図1関連抽選処理よりも先に行うことで、特図2変動遊技の開始条件と、特図1変動遊技の開始条件が同時に成立した場合でも、特図2変動遊技が先に変動中となるため、特図1変動遊技は変動を開始しない。また、装飾図柄表示装置208による、特図変動遊技の大当り判定の結果の報知は、第1副制御部400によって行われ、第2特図始動口232への入賞に基づく抽選の抽選結果の報知が、第1特図始動口230への入賞に基づく抽選の抽選結果の報知よりも優先して行われる。
ステップS232では、デバイス監視処理を実行する。詳細は後述するが、このデバイス監視処理では、各種デバイスのエラーの有無を検出する処理などを行う。ここで、このデバイス監視処理で監視するエラーとしては、下受け皿満タンエラー(下皿満タンエラー)、払出装置エラー、払出超過エラー、不正払出エラー、払出個数スイッチエラー、主制御通信エラー、CRユニット未接続エラー、CRユニット通信エラー、磁気異常エラー、外部クロック異常エラー、磁界異常エラー、スイッチレベル異常エラー、枠開放エラー(前面枠扉開放エラー)、スイッチ未接続エラー、衝撃センサエラーなどが挙げられる。
下受け皿満タンエラーとは、下皿満タンスイッチ信号のオン状態が、メイン基板の所定の入力ポートによってタイマ割り込みでオンを1回読み込んだとき(オフ状態からオン状態に切り換わるとき)にメインから払出に出力されるものである。払出装置エラーとは、払出モータが払出要求数分の駆動を終了後(実際は+ブレーキ期間+無励磁期間経過後)の次の割り込み内で、払出数(払出個数スイッチのカウント数)が払出要求数よりも少ない場合に払出装置エラーの発生を検知するものである。1個ずつ遊技球を払い出すリトライ処理が完了することにより、当該エラー状態が解除される。
払出超過エラーとは、払出要求数に対して実際に払い出された遊技球が10個多く検知されたとき払出動作を停止するものである。この払出超過エラーは、エラー解除スイッチ168によって解除するエラーであり、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。不正払出エラーとは、払出要求が発生していない状態で遊技球の払出を検知(払出個数スイッチがカウント)したとき払出動作を停止するものである。この不正払出エラーは、エラー解除スイッチ168によって解除するエラーであり、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。
払出個数スイッチエラーとは、払出基板170に制御される遊技球の払出個数スイッチ(不図示)のエラーであり、払出個数スイッチの接続異常を検知したとき(メイン基板は関係なし)払出動作を停止するものである。この払出個数スイッチエラーは、エラー解除スイッチ168によって解除するエラーであり、スイッチの接続が正しいか確認した後、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。主制御通信エラーとは、主制御接続確認信号のオフ状態を検知した場合、または主制御動作確認信号のオン状態を2割り込み継続して検知した場合に発生するエラーであり、メイン基板からのコマンド受信が不能になるものである。但し、払出要求数が残存している場合は、その分までは払い出す。主制御接続確認信号のオン状態を検知した場合で、かつ、主制御動作確認信号のオフ状態を2割り込み継続して検知した場合に当該エラー状態が解除される。
CRユニット未接続エラーとは、CRユニット未接続エラーが解除状態のときに、CRユニット接続信号(VL信号)のオフ状態を検知し、16ms継続した場合に発生するものであり、貸出停止(賞球の払出には影響なし)となるものである。CRユニット接続信号のON状態を検知し、16ms継続した場合に当該エラー状態が解除される。なお、エラー解除した後、CRユニットREADY信号(BRDY信号)およびCRユニット貸出要求完了確認信号(BRQ信号)がオフ状態となるまでCRユニットとの通信が無効状態になる。
ここで、CRユニットとインタフェースの接続信号関係について説明する。各種信号が、CRユニットからインタフェースを介して払出基板へと伝達される場合、CRユニット接続信号とは、CRユニット内の+18V電源からなるVL信号である。CRユニットREADY信号とは、CRユニットが貸し出しの処理中であることを伝達するBRDY信号である。CRユニット貸出要求確認信号とは、CRユニットが基本単位分25個の貸出要求と貸出指示を伝達するBRQ信号である。
CRユニット通信エラーとは、貸出要求発生前にBRQ信号のオン状態を検知した場合に発生するものである(なお、他の条件もあるが、ここでは特に関係がないため割愛する)。遊技機側から通信異常を通知した後、BRDY信号およびBRQ信号をオフ状態にすることで当該エラー状態が解除される。
磁気異常エラーとは、所定量を超える磁力を検出したとき主制御動作を停止するものである。外部クロック異常エラーとは、乱数更新用クロックに異常を検出した場合に発生するエラーである。磁界異常エラーとは、所定量を超える磁界を検出した場合に発生するエラーである。スイッチレベル異常エラーとは、入賞スイッチを検出し、1s継続した場合に発生するエラーである。枠開放エラーとは、ガラス枠または内枠の開放を検出した場合に発生するエラーである。スイッチ未接続エラーとは、入賞スイッチ(不図示)のエラーであり、入賞スイッチの接続異常を検出した場合に発生するエラーである。衝撃センサエラーとは、衝撃センサが所定量を超える衝撃を検出したとき電源断まで継続してエラーを報知するものである。
ステップS233では、コマンド設定送信処理を行い、各種のコマンド(例えば、ステップS232のデバイス監視処理で特定異常があった場合は、特定異常を示す信号)が第1副制御部400に送信される。なお、第1副制御部400に送信する出力予定情報は例えば16ビットで構成しており、ビット15はストローブ情報(オンの場合、データをセットしていることを示す)、ビット11〜14はコマンド種別(本実施形態では、基本コマンド、図柄変動開始コマンド、図柄変動停止コマンド、入賞演出開始コマンド、終了演出開始コマンド、大当りラウンド数指定コマンド、復電コマンド、RAM(登録商標)クリアコマンドなどコマンドの種類を特定可能な情報)、ビット0〜10はコマンドデータ(コマンド種別に対応する所定の情報)で構成している。
具体的には、ストローブ情報は上述のコマンド送信処理でオン、オフするようにしている。また、コマンド種別が図柄変動開始コマンドの場合であればコマンドデータに、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値、特図関連抽選処理で選択したタイマ番号などを示す情報を含み、図柄変動停止コマンドの場合であれば、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値などを含み、入賞演出コマンドおよび終了演出開始コマンドの場合であれば、特図確率変動フラグの値などを含み、大当りラウンド数指定コマンドの場合であれば特図確率変動フラグの値、大当りラウンド数などを含むようにしている。コマンド種別が基本コマンドを示す場合は、コマンドデータにデバイス情報、第1特図始動口230への入賞の有無、第2特図始動口232への入賞の有無、可変入賞口234への入賞の有無などを含む。
また、上述の回転開始設定送信処理では、コマンドデータにRAM308に記憶している、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値、特図1関連抽選処理および特図2関連抽選処理で選択したタイマ番号、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の回転停止設定送信処理では、コマンドデータにRAM308に記憶している、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値などを示す情報を設定する。上述の入賞演出設定送信処理では、コマンドデータに、RAM308に記憶している、入賞演出期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の終了演出設定送信処理では、コマンドデータに、RAM308に記憶している、演出待機期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の大入賞口開放設定送信処理では、コマンドデータにRAM308に記憶している大当りラウンド数、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の大入賞口閉鎖設定送信処理では、コマンドデータにRAM308に記憶している大当りラウンド数、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。また、このステップS233では一般コマンド特図保留増加処理も行われる。この一般コマンド特図保留増加処理では、コマンドデータにRAM308の送信用情報記憶領域に記憶している特図識別情報(特図1または特図2を示す情報)、予告情報(事前予告情報、偽事前予告情報、または事前予告無情報のいずれか)を設定する。
第1副制御部400では、受信した出力予定情報に含まれるコマンド種別により、主制御部300における遊技制御の変化に応じた演出制御の決定が可能になるとともに、出力予定情報に含まれているコマンドデータの情報に基づいて、演出制御内容を決定することができるようになる。
ステップS235では、外部出力信号設定処理を行う。詳細は後述するが、この外部出力信号設定処理では、払出基板170に向けて外部端子板信号3〜10を出力する処理等を行う。なお、上述のとおり、外部端子板信号3〜10は、払出基板170を介さずに外部端子板609に出力するように構成してもよい。
ステップS239では、低電圧信号がオンであるか否かを監視する。そして、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS243に進み、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS241に進む。
ステップS241では、タイマ割込終了処理を行う。このタイマ割込終了処理では、ステップS201で一時的に退避した各レジスタの値を元の各レジスタに設定したり、割込許可の設定などを行い、その後、主制御部メイン処理に復帰する。一方、ステップS243では、復電時に電断時の状態に復帰するための特定の変数やスタックポインタを復帰データとしてRAM308の所定の領域に退避し、入出力ポートの初期化等の電断処理を行い、その後、上述の主制御部メイン処理に復帰する。
<シリアルコマンド管理処理>
次に、図12(a)を用いて、上述の主制御タイマ割込処理におけるシリアルコマンド管理処理(ステップS219)について説明する。なお、同図(a)は、シリアルコマンド管理処理の流れを示すフローチャートである。
上述のとおり、このシリアルコマンド管理処理は、上記ステップS212において割込み機能限定カウンタが0以外であると判定された場合(タイマ割込みの機能が限定されている場合)、または、上記ステップS214において特定異常検出フラグがONであると判定された場合(磁気異常エラーや磁界異常エラーなどの特定異常情報がある場合)には実行されない処理である。なお、タイマ割込みの機能が限定されている場合に当該シリアルコマンド管理処理が実行されるように構成してもよく、特定異常情報がある場合に当該シリアルコマンド管理処理が実行されるように構成してもよい。
シリアルコマンド管理処理のステップS155では、シリアルコマンド受信処理を行う。詳細は後述するが、このシリアルコマンド受信処理では、払出制御部600からコマンドを受信したか否かを判定し、コマンドを受信した場合には、当該コマンドに対応する処理を行う。ステップS156では、シリアルコマンド送信処理を行う。詳細は後述するが、このシリアルコマンド送信処理では、払出制御部600に対してコマンドを送信する処理を行う。
<シリアルコマンド受信処理>
次に、図12(b)を用いて、上述のシリアルコマンド管理処理におけるシリアルコマンド受信処理(ステップS155)について説明する。なお、同図(b)は、シリアルコマンド受信処理の流れを示すフローチャートである。
ステップS161では、払出制御部600から通信確認コマンドを受信したか否かを判定し、当該コマンドを受信した場合には、ステップS162〜S164の処理を実行することで各種情報を初期化し、当該コマンドを受信していない場合にはステップS165に進む。ステップS165では、その他のシリアルコマンド受信処理を行った後に処理を終了する。
ステップS162では、RAM308に記憶しているシリアルコマンドステータスに初期値(この例では、0)を設定し、次のステップS163では、RAM308に記憶している通信確認コマンド送信カウンタに初期値(この例では、10)を設定する。ここで、シリアルコマンドステータスは、賞球コマンドを送信可能な状態か否かを示す情報であり、当該情報が数値の0の場合には、賞球コマンドが送信可能な状態を示しており、当該情報が数値の1の場合には、賞球コマンドが送信不能な状態を示している。
また、通信確認コマンド送信カウンタは、後述するシリアルコマンド送信処理のステップS177において、通信確認コマンドを1回送信する毎に1つ減算されるカウンタであり、払出制御部600からの通信確認コマンドを正常に受信しているか否かを判定するために使用されるものである。通信確認コマンド送信コマンドの初期値として10を設定した場合、後述するシリアルコマンド送信処理のステップS178において通信確認コマンド送信カウンタが0であると判定されるのは、主制御部300が通信確認コマンドを10回送信している期間中に、払出制御部600からの通信確認コマンドを1回も受信できなかったときである。
ステップS164では、RAM308に記憶しているシリアルコマンド通信エラーフラグに0を設定し、次のステップS165で、その他のシリアルコマンド受信処理を行った後に処理を終了する。ここで、シリアルコマンド通信エラーフラグは、シリアル通信において異常が発生したか否かを示す情報であり、当該情報が数値の0の場合には、シリアル通信が正常であることを示しており、当該情報が数値の1の場合には、シリアル通信で異常が発生したことを示している。
<シリアルコマンド送信処理>
次に、図13を用いて、シリアルコマンド送信処理について説明する。なお、同図(a)は、シリアルコマンド送信処理の流れを示すフローチャートであり、同図(b)は主制御部300が払出制御部600に送信するコマンドの一例である。
ステップS171では、通信確認コマンド送信タイマから1を減算し、次のステップS172では、通信確認コマンド送信タイマが0であるか否か(払出制御部600に通信確認コマンドを送信してから所定の時間(本実施形態では、100ms)が経過したかどうか)を判定し、0の場合(所定の時間が経過した場合)にはステップS174以降の処理を行い、0以外の場合(所定の時間が経過した場合)にはステップS173に進む。ステップS173では、賞球コマンド設定処理を行う。詳細は後述するが、この賞球コマンド設定処理では、賞球コマンドの送信条件が成立した場合に賞球コマンドの送信準備等の処理を実行する。
ステップS174では、通信確認コマンド送信タイマに初期値(この例では、25)を設定し、次のステップS175では、上述のシリアルコマンドステータスに1(賞球コマンドが送信不能な状態)を設定する。通信確認コマンド送信タイマは、ステップS171において、主制御部タイマ割込処理の周期(本実施形態では、約4ms)毎に1つ減算されるカウンタであり、払出制御部600に通信確認コマンドを送信してから所定の時間が経過したかどうかを判定するために使用されるものである。通信確認コマンド送信タイマの初期値として25を設定した場合、ステップS172において通信確認コマンド送信タイマが0であると判定されるのは、約100ms(=4ms×25)経過後である。
なお、本実施形態では、ステップS175においてシリアルコマンドステータスに1を設定することで、通信確認コマンドを送信するタイミングでは、主制御部300から払出制御部600に賞球コマンドを送信できないように構成しているが、同タイミングで主制御部300から払出制御部600に賞球コマンドを送信できるように構成してもよい。
ステップS176では、送信データレジスタに通信確認コマンド(後述する)に対応する数値をセットすることで、シリアル通信線612を介して払出制御部600に通信確認コマンドを送信する。ステップS177では、通信確認コマンド送信カウンタから1を減算し、次のステップS178では、通信確認コマンド送信カウンタ0であるか否か(通信確認コマンドを10回送信したかどうか)を判定し、0の場合(10回送信した場合)にはステップS179以降の処理を行い、0以外の場合(10回送信していない場合)にはステップS181に進む。
ステップS179では、通信確認コマンド送信カウンタに初期値(この例では、10)を設定し、次のステップS180では、シリアルコマンドステータスに初期値(この例では、0)を設定した後にステップS181に進む。ステップS181では、その他シリアルコマンド送信処理を行った後に処理を終了する。
同図(b)に示すように、主制御部300が払出制御部600に送信するコマンドには、初期起動時の主制御通信確認コマンド(値は、10H)、復帰起動時の主制御通信確認コマンド(値は、11H)、3球の遊技球の払出を指示する賞球コマンド(値は、23H)、10球の遊技球の払出を指示する賞球コマンド(値は、2AH)、15球の遊技球の払出を指示する賞球コマンド(値は、2FH)などがある。主制御部300から受信した最初のコマンドが、復帰起動時の主制御通信確認コマンド(値は、11H)である場合、復帰処理を行い、初期起動時の主制御通信確認コマンド(値は、10H)の場合は、RAMクリア処理等を行う。このように、主制御部300は、通信確認コマンドを送信する際、常に電源投入情報を加味し、通信確認コマンドを意味する値(10H)と電源投入情報を示す値を加算して送信する。電源投入情報を示す値は、初期起動時は00Hであり、復帰起動時は01Hである。これにより、初期起動時の主制御通信確認コマンドの値は10Hとなり、復帰起動時の主制御通信確認コマンドの値は、11Hとなる。なお、通信確認コマンドを意味する値と、電源投入情報を示す値とは、通信確認コマンドの送信時に毎回加算されてもよいし、初回のみ加算されてもよいし、通信確認コマンドを所定回数送信する間は毎回加算されるものであってもよい。
本実施形態では、上述のステップS176において、主制御通信確認コマンド(値は、10H)と、図9の主制御部メイン処理の復電時処理(ステップS109)でセットされた電源投入情報を示す値(00Hまたは01H)とを加算した値(すなわち、10Hまたは11H)を、送信データレジスタにセットして、シリアル通信線612を介して主制御部300から払出制御部600に送信される。なお、主制御通信確認コマンドは、一例として100msに1回のタイミングで送信される。
図14および図15を用いて、本実施形態の記憶領域であるRAM(バッファエリア)708の構成について説明する。図14は、払出制御部600のRAM708に設けた各記憶領域に記憶される項目の一例を示す概要図である。また図15は、主制御部300のRAM308および、払出制御部600のRAM708にそれぞれ設けた記憶領域と、当該記憶領域の初期化のタイミングについて示す概要図である。
主制御部300および払出制御部600は、電断・復電時(例えば停電復旧時など)に遊技状態の復旧を行うため電断発生時の遊技状態を電源遮断処理によりRAM308,708に記憶し、バックアップ電源によりRAMの内容を保持する。
パチンコ機100のバックアップ機能の構成として、図示は省略するがバックアップ電源部、電源監視回路、RAMクリアスイッチを備えている。RAMクリアスイッチは、バックアップしたRAMのデータを初期化するものである。
図14に示すように、払出制御部600のRAM708に、小さいアドレス(ここでは、7F00H)からアドレス7F0DHまでの第一の領域708Aと、アドレス7F0EHからアドレス7FFFHまでの第二の領域708Bとが設けられている。第一の領域708Aは更に、複数の記憶領域に分かれ、例えば、賞球数、遊技球数、遊技情報、エラー状態、未送信コマンド、プログラム起動状態フラグ、電源状態情報などが格納される。一方、第二の領域708Bは、設定ポインタ用保存エリア、解析ポインタ保存用エリア、受信コマンドバッファエリアなどに分かれる。受信コマンドバッファエリアは、受信したコマンドが記憶される領域であり、設定ポインタ用保存エリアおよび解析ポインタ保存用エリアは、受信したコマンドの記憶処理に用いるポインタが格納される領域である。設定ポインタ用保存エリア、解析ポインタ保存用エリアおよび受信コマンドバッファエリアについては、後述する。
そして、第一の領域708Aは、電源遮断時には格納された情報が退避(バックアップ)される領域であり、第二の領域708Bは、電源投入直後に初期化される領域である。例えば、電断検出をしていない初期化処理(例えば、図9のステップS115)ではこれらの記憶領域の全てを初期化(クリア)し、復帰起動時の復電時処理(図9のステップS109)ではこれらのうち一部のみを初期化(クリア)する。つまり初期化処理では第一の領域708Aと第二の領域708Bがクリアされるが、電断が発生した場合には、第一の領域708Aの情報のみがバックアップされる。そして、その後の復電時処理では第一の領域は、RAM708の所定の領域にバックアップされた情報が復元(設定)され、第二の領域708Bのみがクリアされる。このように、払出制御部600のRAM708をクリアするタイミングは複数あり、かつ、クリアする領域も複数(第一の領域708A、第二の領域708B)ある。更に、第二の領域702Bは、払出制御部600の復帰起動時であっても、クリアされる場合があり、電断が発生した場合でもバックアップされない。つまり、受信したコマンドを記憶する領域(受信コマンドバッファエリア)およびその記憶処理に用いられる設定ポインタ用保存エリアおよび解析ポインタ保存用エリア(各ポインタの値)は復帰起動時でもクリアされる場合があり、電断時にはバックアップされない領域となる。このような構成とすることにより、主制御部300と払出制御部600の初期起動時であっても復帰起動時であっても、払出制御部600の電源投入直後は、第二の領域をクリアすることができ、意図しないタイミングで賞球コマンド等が払出制御部600に送信されることを防止できる場合がある。
ここでの図示は省略するが、主制御部300のRAM308も同様の構成としてもよい。すなわち、電断が発生した場合にバックアップされる第一の領域と、その後の復電時処理でクリアされる第二の領域とを有してもよる。主制御部300の第一の領域に格納されている情報は例えば、大当り状態(ラウンド回数も含む)、高確率・時短状態、保留メモリ(特別図柄、普通図柄)の乱数値、エラー状態、未送信コマンド、可動部材(普通電動役物、第1種特別電動役物)の動作状態などである。また、主制御部300のRAM308においても、電断が発生した場合には第一の領域に格納された情報のみがバックアップされるようにしてもよい。
図15は、図14に示した、払出制御部600のRAM708の第一の領域、第二の領域について初期化のタイミングを示す図である。本実施形態では、RAM708の初期化を行うタイミングが複数設けられている。同図において、第一のタイミングは、払出制御部600のそれぞれの電源投入直後のタイミングであり、第二のタイミングは、主制御通信確認コマンド受信時処理のタイミングである。なお、払出制御部600の電源投入直後のタイミングについては後述(図16等)する。
(1)主制御部300および払出制御部600のいずれもが初期起動等の場合
この場合、第一のタイミングでは、第一の領域708Aと第二の領域708Bのいずれもが初期化され、第二のタイミングでは第一の領域708Aと第二の領域708Bのいずれも初期化されない。
(2)主制御部300が復帰起動で、払出制御部600が初期起動等の場合は、(1)と同様である。
(3)主制御部300が初期起動等で払出制御部600が復帰起動の場合
この場合、第一のタイミングでは、第二の領域708Bのみが初期化され、第二のタイミングでは第一の領域708Aのみが初期化される。
(4)主制御部300および払出制御部600のいずれもが復帰起動の場合
この場合、第一のタイミングでは、第二の領域708Bのみが初期化され、第二のタイミングではいずれの領域も初期化されない。
<払出制御部メイン処理>
払出制御部600は、CPU、RAM708、ROM、I/Oポート、および電圧監視回路を備えている。これらCPU、RAM708、ROM、I/Oポートは一のマイクロコンピュータ(払出制御用マイクロコンピュータ)で構成されている。また、この払出制御用マイクロコンピュータは、本明細書における主制御用マイクロコンピュータと一部の機能が同じでもよく、例えば一部の機能(例えば乱数回路)を備えていなくてもよい。払出制御部600が備える電圧監視回路も、主制御部300が備える電圧監視回路と同じく、電源管理部650から払出制御部600に供給している電源の電圧値が所定の値(本実施形態では9.66V)未満である場合に電圧が低下したことを示す低電圧信号を払出制御部600のCPUに出力する。なお、主制御部300の電圧監視回路338から低電圧信号が出力されていても、この払出制御部600の電圧監視回路からは低電圧信号は出力されていないことはある。
払出制御部600には、主制御部300のCPU304から電源投入情報を含めたコマンドが送信される。このコマンドを受信したことに基づいて、払出制御部600のCPUは、払出制御部メイン処理を開始する。本実施形態では、コマンド受信時に払出制御部割込み処理は行わず、タイマ割込みで払出制御部割込み処理を行うが、シリアル通信回路の設定によって、コマンド受信時に払出制御部割込み処理を行うこともできる。
図16を参照して、払出制御部メイン処理について説明する。図16は、払出制御部メイン処理の流れを示すフローチャートである。
まず、ステップS301では、初期設定1を行う。この初期設定1では、払出制御部600のCPUのスタックポインタ(SP)へのスタック初期値の設定等を行う。ステップS302では、払出制御部600の電圧監視回路から低電圧信号が出力されているか否か、すなわち低電圧信号がオンであるか否かを判定する。低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS302の処理を繰り返し実行し、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS303に進む。
ステップS303では、初期設定2を行う。この初期設定2では、後述する払出制御部タイマ割り込み処理を定期毎に実行するための周期を決める数値をカウンタ・タイマに設定する処理、払出制御部600のRAM708への書き込みを許可する設定、I/Oポートの初期設定等を行う。
ステップS304では、電源の遮断前(電断前)の状態に復帰するか否かの判定を行い、電断前の状態に復帰しない場合(パチンコ機100を初期状態にする場合)にはステップS305に進み、電断前の状態に復帰する場合にはステップS306に進む。具体的には、このステップS304でも、主制御部メイン処理のステップS107と同様な処理が行われ、RAMクリアが必要な場合には、パチンコ機100を初期状態にすべくステップS305に進む。一方、RAMクリアが必要でない場合には、払出制御部600のRAM708から電源ステータスの情報を読み出し、電源ステータスの情報が、サスペンドを示す情報でない場合にはパチンコ機100を初期状態にすべくステップS305に進み、サスペンドを示す情報である場合には払出制御部600のRAM708についてチェックサムを実行し、チェックサムの結果が正常である場合には電断前の状態に復帰すべくステップS306に進み、チェックサムの結果が異常である場合には、パチンコ機100を初期状態にすべくステップS305に進む。同様に電源ステータスの情報が「サスペンド」以外の情報を示している場合にもステップS305に進む。
ステップS305では、初期化処理を行う。この初期化処理では、割り込み禁止の設定、スタックポインタへのスタック初期値の設定、払出制御部600のRAM708の所定の領域(例えば、全ての記憶領域)の初期化などを行う。
ステップS306では、復電時処理を行う。この復電時処理では、払出制御部600のRAM708の記憶領域のうち、復電時にクリアすべき記憶領域の初期化などを行う。すなわち、本ステップの状態は、第一のタイミング(払出制御部600の電源投入直後の状態)であるので、初期起動等であれば、第一の領域708Aおよび第二の領域708Bをクリアし、復帰起動であれば、第二の領域708Bのみをクリアする(図15参照)。
ステップS307では、初期設定3を行う。この初期設定3では、払出制御部600のRAM708に設けたエラー情報の一部をクリアしたり、割り込み許可の設定などを行う。
ステップS308では、主制御部300から入力したデータの中に未解析データがあるか無いかを判定する。ここでは、RAM708の設定ポインタで参照する値と解析ポインタで参照する値とを比較する処理を行って判定するが、これについては後述する。判定の結果、未解析データがある場合にはステップS309でコマンド解析処理を行い、未解析データがない場合にはステップS310に進む。
ステップS310では、未送信コマンドの有無を判定し、未送信コマンドがある場合はステップS311に進み、未送信コマンドが無い場合は、ステップS312に進む。
ステップS311では、未送信コマンドを払出制御部側マイクロコンピュータ770の送信データレジスタ776に設定し、送信コマンドとして出力する。
ステップS312では、ステップS302と同じく、低電圧信号がオフであるか否かを監視し、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS308に戻り、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS313に進む。
ステップS313では、電断時処理を行う。この電断時処理では、払出制御部600のRAM708に設けたスタックポインタ退避領域に現在のスタックポインタの値を記憶し、上述の電源ステータス記憶領域にサスペンドを示す情報を設定する。また、払出制御部600のRAM708の所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算し、チェックサム算出用数値記憶領域に記憶している値からその加算した結果を減算した値をチェックサム(電断時チェックサム)として算出し、算出した電断時チェックサムを上述のチェックサム算出用数値記憶領域に記憶し、払出制御部600のRAM708への書き込みを禁止する設定などを行う。また、払出制御部600のRAM708の第一の領域708Aのみ、格納されている情報のバックアップを行う。
その後のステップS314では、ステップS302と同じく低電圧信号がオフであるか否かを監視する処理を行い、低電圧信号がオフの場合(電源の遮断を検知していない場合)には払出制御部メイン処理の先頭(ステップS301)に戻り、低電圧信号がオンの場合は、ステップS314を繰り返し実行する。
<払出制御部割込み処理>
次に、図17を参照して、払出制御部600が実行する払出制御部割込み処理について説明する。同図は、払出制御部割込み処理の流れを示したフローチャートである。払出制御部600は、所定の周期(本実施形態では2msに1回)でタイマ割り込みを発生するカウンタ・タイマを備えており、このタイマ割り込みを契機として払出制御部タイマ割り込み処理を所定の周期で開始する。
ステップS401では、レジスタ値を退避し、ステップS402では、割り込みフラグをクリアし、ステップS403では、WDTクリアおよびリスタートを行う。また、ステップS404では、受信コマンドの処理を行う。この処理では、主制御部300からのコマンド受信(例えば、賞球コマンドの受信など)の有無を判定し、受信している場合は、受信したコマンドデータを受信コマンドバッファエリアに設定する。
ステップS405では、主制御通信確認コマンドを受信済みか否かを判定する。受信済みの場合は、ステップS406に進み、そうでない場合はステップS414に進む。上述のとおり、主制御部300は払出制御部600から電源の供給を受けているため、その起動が払出制御部600より遅れる。このため、本ステップでは主制御部300が起動するまで、これ以降のステップS406〜ステップS413の処理を待機するために判定処理を行う。
ステップS406では、ポート入力処理を行う。このポート入力処理では、I/Oポートの値を取得して、各種センサの状態などを検出する。具体的には、カードユニット608からインターフェース部606を介して入力する各種信号の状態、払出センサ604から入力する球払出信号、下皿センサから入力する信号、エラー解除スイッチから入力する信号の状態などを取得して、RAMに設けた入力信号情報記憶領域に記憶する。
ステップS407では、タイマ更新処理を行う。このタイマ更新処理では、主制御通信監視タイマや、RAMに設けた貸出要求待ちタイマおよび貸出指示待ちタイマや、払出報知用LEDの点灯/消灯時間、モータ駆動/非駆動時間などを計時するためのタイマなどを含む各種タイマを更新する。
ステップS408では、エラー管理処理を行う。このエラー管理処理では、主制御部300との通信に異常があるか否かを監視するとともに、各種エラーが発生しているか否かを判定し、RAMに設けたエラーステータス記憶領域にエラーに関する情報を記憶する。
ステップS409では、CRユニット通信処理を行う。このCRユニット通信処理では、カードユニット608からインターフェース部606を介して入力する各種信号の状態に基づいて、カードユニット608との通信を行う。例えば、カードユニット608から遊技球の貸出要求信号を受けた場合に、後述する貸出用払出数記憶部の払出数情報に貸出要求信号に含まれる貸出要求数を加算する。
ステップS410では、払出管理処理を行う。この払出管理処理では、払出装置552の制御などを行う。ステップS411では、信号出力処理を行う。この信号出力処理では、外部端子板(不図示)から外部に出力する信号の制御を行う。
ステップS412では、送信コマンド設定処理を行う。この送信コマンド設定処理では、払出制御部600から主制御部300に送信する各種コマンドを設定する処理を行う。この各種コマンドには、エラーに関するコマンドも含まれる。本明細書において「エラー」とは、払出個数スイッチエラー、不正払出エラー、払出超過エラー、下皿満タンエラー、払出しエラー、主制御通信エラー、扉開放エラーなど、本明細書において「エラー」と表記したものをすべて含む。また、ステップS413ではポート出力処理を行う。このポート出力処理では、例えば、パチンコ機100がエラー状態になった場合に、エラーが発生していることを遊技者に報知するためのLED(例えば、パチンコ機100の上部に配設されたLED)を点灯させるとともに、エラーが解消した場合には、そのLEDを消灯させる。例えば、RAM708に設けた払出超過エラーフラグがセットされている場合には、払出超過エラーが発生していることを遊技者に報知するためのLEDを点灯させるとともに、払出超過エラーフラグがクリアされた場合には、そのLEDを消灯させる。また、RAM708に設けた下皿満タンエラーフラグがセットされている場合には、下皿満タンエラーが発生していることを遊技者に報知するためのLEDを点灯させるとともに、下皿満タンエラーフラグがクリアされた場合には、そのLEDを消灯させる。
ステップS414ではレジスタ値を復帰し、ステップS415では、割り込み許可設定を行った後に処理を終了する。
このように、本実施形態では、受信コマンドをRAM708(バッファ)に格納する処理は、払出制御部割込み処理の受信コマンド処理(ステップS404)で行い、コマンドを解析する処理は、図16に示した払出制御部メイン処理のコマンド解析処理(ステップS309)で行う。
<受信コマンド処理(実施例A,実施例B)>
図18は、図17に示した払出制御部割込み処理の受信コマンド処理(ステップS404)の詳細について説明する図であり、図18(a)は、受信コマンド処理の一例(実施例A)を示すフローチャートであり、図18(b)は受信コマンド処理の他の例(実施例B)を示すフローチャートである。
同図(a)を参照して、実施例Aの受信コマンド処理では、まずステップS501において、払出制御部用マイクロコンピュータ770のステータスレジスタ772の特定ビット(受信データフルフラグ)を参照し、主制御部400からコマンドの受信の有無を判定する。受信データフルフラグは、受信データレジスタ774にデータがある場合にセットされる。払出制御部用マイクロコンピュータ770の受信データレジスタで主制御部400から送信されたコマンドを受信した場合、当該受信コマンドがAレジスタ722に格納される。Aレジスタ722に受信したコマンドがある場合は、ステップS502に進み、そうでない場合は、処理を終了する。
ステップS502では、ポインタ(後述)を用いてAレジスタ722の受信コマンドをRAM708のバッファ(第二の領域708Bに設けられた受信コマンドバッファエリア)に格納する。
実施例Aでは、受信したコマンドがある場合は、常に当該受信コマンドを受信コマンドバッファエリアに格納する。本来受け付けるべきでないコマンド(不正なコマンド)は、払出制御部メイン処理のコマンド解析処理(ステップS309)において、排除する。
また、同図(b)を参照して、実施例Bの受信コマンド処理では、まずステップS601において、払出制御部用マイクロコンピュータ770の受信データレジスタを参照し、主制御部400からコマンドの受信の有無を判定する。受信したコマンドがある場合は、ステップS602に進み、そうでない場合は、処理を終了する。
ステップS602では、主制御部300からの主制御通信確認コマンドの受信の有無を判定する。主制御通信確認コマンドを受信している場合には、ステップS604に進み、そうでない場合はステップS603に進む。
ステップS603では、賞球コマンド受付許可フラグがオンであるか否かを確認する。オンの場合は、ステップS604に進み、そうでない場合は処理を終了する。賞球コマンド受付許可フラグについては後述(図23)する。
ステップS604では、受信コマンドをRAM708のバッファ(第二の領域708Bに設けられた受信コマンドバッファエリア)に格納する。
実施例Bでは、主制御通信確認コマンド以外のコマンドについては、賞球コマンド受付許可フラグがオンであれば、バッファ(第二の領域708Bに設けられた受信コマンドバッファエリア)に格納する。より詳細には、払出制御部用マイクロコンピュータ770のシリアル通信関連レジスタである受信データレジスタ774のデータを、CUPコアレジスタ720の例えば、Aレジスタ722等に格納し、その後、第二の領域708Bに設けられた受信コマンドバッファエリアに格納する。あるいは、払出制御部用マイクロコンピュータ770の受信データレジスタ774のデータを直接、受信コマンドバッファエリアに格納する。
つまりこの場合も、本来受け付けるべきでないコマンド(不正なコマンド)は、払出制御部メイン処理のコマンド解析処理(ステップS309)において、排除する。なお、ステップS1603の判定処理の前に、受信したコマンドが賞球コマンドであるか否か、を判定する処理を行ってもよい。これにより、本来受信すべきでないコマンド(例えば、主制御通信確認コマンドや賞球コマンド以外のコマンド)を受信した場合に、当該判定処理で排除することができる。
<コマンド解析処理>
図19および図20を参照して、図16の払出制御部メイン処理のコマンド解析処理(ステップS309)について説明する。図19は、コマンド解析処理(実施例C)の処理の流れを示すフローチャートであり、図20は、他のコマンド解析処理(実施例D)の処理の流れを示すフローチャートである。例えば、図16に示す払出制御部メイン処理のコマンド解析処理(ステップS309)として、図19に示す処理(実施例C)を行う場合は、図17に示す払出制御部割込み処理の受信コマンド処理(ステップS404)で図18(a)の処理(実施例A)を行う。また、図16に示す払出制御部メイン処理のコマンド解析処理(ステップS309)として、図20に示す処理(実施例D)を行う場合は、図17に示す払出制御割込み処理の受信コマンド処理(ステップS404)で図18(b)の処理(実施例B)を行う。あるいは、実施例Aの受信コマンド処理と、実施例Cあるいは実施例Dのコマンド解析処理のいずれかを組み合わせる処理としてもよい。また、これに限らず、実施例A,Bの受信コマンド処理と、実施例C,Dのコマンド解析処理は、制御に不具合が無い限り、適宜組み合わせることが可能である。
図19を参照して、実施例Cのコマンド解析処理について説明する。
ステップS701では、RAM708の受信コマンドバッファエリアに格納されている受信コマンドを取得する。
ステップS702では、取得した受信コマンドを解析する処理を行う。この処理の詳細については、図28以降の図を参照して後述する。
ステップS703では、主制御部300からの主制御通信確認コマンドを受信しているか否かを判定する。この主制御通信確認コマンドは、図13に示した主制御部300のシリアルコマンド送信処理によって払出制御部600に送信されるものである。主制御通信確認コマンドを受信している場合は、ステップS706に進み、そうでない場合はステップS704に進む。
ステップS704では、主制御通信確認コマンド受信処理を行う。主制御通信確認コマンド受信処理については後述する。
ステップS705では、受信コマンドが賞球コマンドであるか否かを判定する。受信コマンドが賞球コマンドである場合は、ステップS706に進み、そうでない場合は、処理を終了する。本ステップにおいて、受信コマンドが、主制御通信確認コマンドおよび賞球コマンドのいずれでもない場合には、受信コマンドに対する処理を行わずにコマンド解析処理を終了することになる。
ステップS706では、賞球コマンド受付許可フラグがオンであるか否かを判定し、オンの場合は、ステップS707に進み、そうでない場合は処理を終了する。
ステップS707では、賞球コマンド受信時処理を行う。賞球コマンド受信時処理については、後述する。
図20を参照して、実施例Dのコマンド解析処理について説明する。
ステップS801では、RAM708の受信コマンドバッファエリアに格納されている受信コマンドを取得する。
ステップS802では、取得した受信コマンドを解析する処理を行う。この処理の詳細については、図28以降の図を参照して後述する。
ステップS803では、主制御部300からの主制御通信確認コマンドを受信しているか否かを判定する。この主制御通信確認コマンドは、図13に示した主制御部300のシリアルコマンド送信処理によって払出制御部600に送信されるものである。主制御通信確認コマンドを受信している場合は、ステップS805に進み、そうでない場合はステップS804に進む。
ステップS804では、受信コマンドが賞球コマンドであるか否かを判定する。受信コマンドが賞球コマンドである場合は、ステップS806に進み、そうでない場合は、処理を終了する。
ステップS806では、賞球コマンド受信時処理を行う。賞球コマンド受信時処理については、後述する。
なお、賞球コマンド受付許可フラグを判定する処理(図18(b)のステップS603、図19のステップS706)は、受信コマンド処理とコマンド解析処理の両方で行ってもよい。例えば、実施例A(図18(a))の受信コマンド処理で賞球コマンド受付許可フラグを判定する処理を行ってもよく、実施例D(図20)のコマンド解析処理で賞球コマンド受付許可フラグを判定する処理を行ってもよい。
<主制御通信確認コマンド受信時処理(実施例E)>
次に、図21(a)を用いて、上記コマンド解析処理における主制御通信確認コマンド受信時処理(ステップS704、S805)について説明する。なお、同図(a)は、主制御通信確認コマンド受信時処理の流れを示すフローチャートである。
ステップS901では、受信した主制御通信確認コマンドが、払出制御部500の起動後に最初に受信した主制御通信確認コマンドであるか否かを判定し、該当する場合にはステップS902に進み、該当しない場合にはステップS904に進む。最初に受信した主制御通信確認コマンドであるか否かは、RAM708に設けた主制御通信確認コマンド受信済みフラグがオフであるか否かを判定し、主制御通信確認コマンド受信済みフラグがオフの場合は、ステップS902に進む。
ステップS902では、主制御通信確認コマンド受信済みフラグをオンに設定した後に、ステップS903に進んで起動処理(詳細は後述)を実行する。
ステップS904では、主制御通信監視タイマに初期値(この例では、500)を設定し、次のステップS905では、主制御通信エラーフラグをオフに設定する。また、ステップS906では、通信確認コマンド受信フラグをオンに設定した後に処理を終了する。
<起動処理>
次に、図21(b)を用いて、上記主制御通信確認コマンド受信時処理における起動処理(ステップS903)について説明する。なお、同図(b)は、起動処理の流れを示すフローチャートである。
ステップS1001では、受信した主制御通信確認コマンドが初期起動であるか否かを判定し、該当する場合にはステップS1002に進み、該当しない場合には処理を終了する。本ステップの判定は、主制御部300から払出制御部600に送信される主制御通信確認コマンドの値(初期起動時は10H、復帰起動時は11H)の下位4ビットの値を参照して判定する。つまり、主制御通信確認コマンドの値が10Hの場合にはステップS1002に進み、主制御通信確認コマンドの値が11Hの場合などには処理を終了する。ここで、一度、主制御通信確認コマンドの値が10Hであることを判定した場合、それ以降、次に初期起動になるまではは復帰起動時となるため(常に、主制御通信確認コマンドの値は11Hとなるため)、次回以後に、主制御通信確認コマンドを受信した場合であっても下位4ビットの値を参照することはない。なお、主制御部300側で11Hを送信した後は、10Hを送信するようにしてもよい。
ステップS1002では、払出制御部600が復帰起動(電断前の状態に復帰する起動)であるか否かを判定し、該当する場合にはステップS1003に進み、該当しない場合には処理を終了する。
ステップS1003では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込み禁止し、その後のステップS1004ではRAM708の一部を初期化する。ここで初期化される領域は、主制御部300が初期起動(ステップS1001)、かつ、払出制御部600が復帰起動(ステップS1002)であって、第二のタイミング(主制御通信確認コマンド受信時処理)であるので、RAM708の第一の領域708Aのみが初期化される。
ステップS1004に続く、ステップS1005では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを許可し、処理を終了する。
<賞球コマンド受信時処理(実施例F,実施例G)>
図22を参照して、賞球コマンド受信時処理(図19のステップS707または図20のステップS806)について説明する。図22(a)は、図19のステップS707の賞球コマンド受信時処理(実施例F)の流れを示すフローチャートであり、図22(b)は図20のステップS806)の賞球コマンド受信時処理(実施例G)の流れを示すフローチャートである。
図22(a)を参照して実施例Fの賞球コマンド受信時処理について説明する。まず、ステップS1101では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを禁止する。
次のステップS1102では、解析データに基づいて賞球数を次賞球数エリアに加算する。本実施形態では、主制御部300から受信した賞球コマンドに含まれている賞球数(払出要求数)を、払出制御部600のRAM708に設けた次賞球数エリアに次賞球要求数として加算・記憶しておき、所定の期間の終了後に、その次賞球要求数分の賞球を連続的に払い出す。このため、本ステップにおいて、RAM408に設けた賞球数記憶領域に未解析データとして記憶した賞球数(払出要求数)を、次賞球数エリアに記憶されている次賞球要求数に加算する。なお、本実施形態の賞球コマンドの値は、23H(3球払出指示)、2AH(10球払出指示)、2FH(15球払出指示)であるので、本ステップにおいて賞球コマンドの下位4ビットを参照して、3H,AH,FH以外のコマンドの場合は、加算しない(排除する)ようにしてもよい。
次のステップS1103では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを許可して、処理を終了する。
図22(b)を参照して実施例Gの賞球コマンド受信時処理について説明する。まず、ステップS1201では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを禁止する。
次のステップS1202では、賞球コマンド受付許可フラグがオンであるか否かを判定する。賞球コマンド受付許可フラグがオンの場合は、ステップS1203に進み、そうでない場合はステップS1204に進む。本ステップにおいて、賞球コマンド受付許可フラグがオフの場合、受信コマンドは無視される。つまり、払出制御部のメイン処理(図16)のコマンド解析処理(ステップS309)において、不正なコマンドを排除している。
次のステップS1203では、解析データに基づいて賞球数を次賞球数エリアに加算する。本ステップは、実施例F(図22(a)のステップS1102)と同様であるので説明は省略する。
次のステップS1204では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを許可して、処理を終了する。
<エラー管理処理>
図23を参照して、エラー管理処理について説明する。同図は、エラー管理処理の流れを示すフローチャートである。
ステップS1301では、主制御通信監視タイマが0であるかどうかを判定し、0の場合(主制御部300から主制御通信確認コマンドを受信してから所定時間(本実施形態では、約1000ms)が経過した時)にはステップS1302に進み、0以外の場合にはステップS1304に進む。
ステップS1302では、主制御通信エラーフラグをオンに設定した後にステップS1303に進む。ステップS1303では、賞球コマンド受付許可フラグをオンに設定する。つまり、主制御通信確認コマンドを受信後、所定期間(1000ms=100ms×10)が経過した場合に、賞球コマンド受付許可フラグがオフに設定される。しかしこれに限らず、主制御部300から通信確認状態である旨のコマンドを受信した場合(すなわち、主制御通信確認コマンドを受信後、1000ms到達前)に、賞球コマンド受付許可フラグをオフに設定してもよい。
ステップS1304では、その他のエラー管理処理を行った後に処理を終了する。その他のエラー管理処理としては、例えば、各種エラーが発生しているか否かを判定し、RAMに設けたエラーステータス記憶領域にエラーに関する情報を記憶する処理や、ステップS1302で主制御部通信エラーフラグがオンに設定された場合に、発射装置110による球の打ち出しや払出を中止する処理などが挙げられる。
<送信コマンド処理(実施例H)>
次に、図24を用いて、上述の払出制御部割込み処理における送信コマンド処理(ステップS412)について説明する。なお、同図は、送信コマンド処理の流れを示すフローチャートである。
ステップS1401では、通信確認コマンド受信フラグがオンかオフかを判定し、オンの場合にはステップS1402〜S1404の処理を実行し、オフの場合にはステップS1405に進む。ステップS1402では、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に払出制御通信確認コマンドを送信する。
ステップS1403では、通信確認コマンド受信フラグをオフに設定し、次のステップS1404では、賞球コマンド受付許可フラグをオンに設定する。
本来、主制御部300からの主制御通信確認コマンドを受信し、払出制御部600が主制御部300に応答となる払出制御通信確認コマンドを送信した後に、主制御部300から払出制御部600に賞球コマンドが送信される。しかし、主制御部300からの主制御通信確認コマンドを受信し、払出制御部600が主制御部300に払出制御通信確認コマンドを送信する以前に、賞球コマンドを払出制御部600が受信し、受信コマンドバッファに書き込んでしまう場合がある。本実施形態では、払出制御通信確認コマンドを送信する以前では賞球コマンド受付許可フラグがオフに設定されており、賞球コマンド受付許可フラグがオンの場合に、正常の処理を行うこととしている。また、本来受信すべきでない不正コマンドが受信コマンドバッファに書き込まれた場合であっても、払出制御部メイン処理のコマンド解析処理において不正なコマンドを排除している。これによって、意図しないコマンド(不正なコマンド)を払出制御部600が受信した場合であっても、これらのコマンドを適切に排除することができる。
次のステップS1405では、他のエラーコマンドセット処理を行った後にステップS1406に進む。ステップS1405で実行する他のエラーコマンドセット処理としては、例えば、通信確認コマンドと、主制御通信エラーコマンド以外の他のコマンド(例えば、払出しエラーの発生を知らせるためのコマンド)の両方を送信する必要があるかどうかを判定し、必要がある場合に、通信確認コマンドに続けて他のコマンドを送信する処理などが該当する。
ステップS1406では、主制御通信エラーフラグがオンかオフかを判定し、オンの場合にはステップS1407の処理を実行し、オフの場合にはステップS1408に進む。ステップS1407では、送信データレジスタに主制御通信エラーコマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に主制御通信エラーコマンドを送信する。その後のステップS1408ではその他送信コマンド処理を実行し、処理を終了する。
<送信コマンド処理(実施例I)>
図25は、実施例Gの送信コマンド処理の他の例(実施例I)を示した図である。
ステップS1501では、通信確認コマンド受信フラグがオンかオフかを判定し、オンの場合にはステップS1504〜S1507の処理を実行し、オフの場合にはステップS1502に進む。ステップS1504では、RAM708に記憶している1バイト長の送信コマンド出力要求情報のBit0に1を設定することで、払出制御通信確認コマンド(10H)の送信要求を設定する。
また、ステップS1505では、その他のコマンドの送信要求を設定する。払出制御部600から主制御部300に送信するその他のコマンドとして例えば、賞球信号出力要求コマンド(20H)、エラー1コマンド(30H、31H、32H、34H、38H)、エラー2コマンド(40H、41H、42H、44H、48H)、払出表示LED報知コマンド(50H、51H)などがある。
賞球信号出力要求コマンド(20H)を送信する場合には、送信コマンド出力要求情報のBit1に1を設定することで、賞球信号出力要求コマンド(20H)の送信要求を設定し、エラー1コマンド(30H、31H、32H、34H、38H)を送信する場合には、送信コマンド出力要求情報のBit2に1を設定することで、エラー1コマンド(30H、31H、32H、34H、38H)の送信要求を設定する。
また、エラー2コマンド(40H、41H、42H、44H、48H)を送信する場合には、送信コマンド出力要求情報のBit3に1を設定することで、エラー2コマンド(40H、41H、42H、44H、48H)の送信要求を設定し、払出表示LED報知コマンド(50H、51H)を送信する場合には、送信コマンド出力要求情報のBit4に1を設定することで、払出表示LED報知コマンド(50H、51H)の送信要求を設定する。
また、ステップS1506では、その他のコマンドの出力情報を設定する。ここでは、エラー情報としてエラー解除状態または賞球払出動作終了を通知する場合には、RAMに設けた1バイト長の出力情報のBit0に0を設定し、払出個数スイッチエラーの発生、下受け皿満タンエラーの発生、または賞球払出動作中を通知する場合には、出力情報のBit0に1を設定する。また、不正払出エラーまたは払出装置エラーの発生を通知する場合には、出力情報のBit1に1を設定し、払出超過エラーまたは主制御通信エラーの発生を通知する場合には、出力情報のBit2に1を設定し、扉開放エラーまたはCRユニット未接続エラーの発生を通知する場合には、出力情報のBit3に1を設定する。
ステップS1502では、主制御通信エラーフラグがオンかオフかを判定し、オンの場合にはステップS1503の処理を実行し、オフの場合にはステップS1508に進む。ステップS1503では、送信データレジスタに主制御通信エラーコマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に主制御通信エラーコマンドを送信した後にステップS1508に進む。
ステップS1507では、賞球コマンド受付許可フラグをオンに設定した後、ステップS1508に進む。
ステップS1508では、賞球信号コマンド送信要求設定条件が成立したか否かを判定し、成立した場合にはステップS1509に進み、成立していない場合にはステップS1510に進む。ステップS1509では、賞球信号コマンドの送信要求を設定した後にステップS1510に進む。ステップS1510では、RAM708に記憶している送信コマンド設定カウンタに5を設定した後に、ステップS1511に進む。
ステップS1511では、送信コマンド設定処理実行条件が成立したか否かを判定し、成立した場合にはステップS1512に進み、成立していない場合にはステップS1513に進む。ステップS1512では、送信コマンド設定処理を行う。この送信コマンド設定処理では、ステップS1505で設定した送信コマンド出力要求情報の最下位Bit(Bit0)を参照し、1が設定されている場合には、送信データレジスタに通信確認コマンドに対応する数値(この例では、10H)をセットすることで、シリアル通信線612を介して主制御部300に通信確認コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1506で設定した出力情報と、エラー1コマンドに対応する数値(この例では、30H)を合成し、送信データレジスタに合成後の数値(この例では、30H、31H、32H、34H、38Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300にエラー1コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1506で設定した出力情報と、エラー2コマンドに対応する数値(この例では、40H)を合成し、送信データレジスタに合成後の数値(この例では、40H、41H、42H、44H、48Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300にエラー2コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1506で設定した出力情報と、払出表示LEDに対応する数値(この例では、50H)を合成し、送信データレジスタに合成後の数値(この例では、50H、51Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300に払出表示LED報知コマンドを送信する。
ステップS1513では、送信コマンド設定カウンタから1を減算した後に、ステップS1514に進む。ステップS1514では、送信コマンド設定カウンタが0であるか否かを判定し、0の場合には処理を終了し、0以外の場合にはステップS1511に戻ってコマンドの送信処理を継続する。
<主制御通信確認コマンド受信時処理(実施例J)>
次に、図26を用いて、図21(a)に示した実施例Eの主制御通信確認コマンド受信時処理の他の例をについて説明する。この例では、賞球コマンド受付許可フラグのオンのタイミングが図21(a)のフローと異なっている。同図(a)は、主制御通信確認コマンド受信時処理の流れを示すフローチャートである。
ステップS1601では、受信した主制御通信確認コマンドが、払出制御部600の起動後に最初に受信した主制御通信確認コマンドであるか否かを判定し、該当する場合にはステップS1602に進み、該当しない場合にはステップS1604に進む。ステップS1602では、RAM708に設けた主制御通信確認コマンド受信済みフラグをオンに設定した後に、ステップS1603に進んで起動処理(図21(b))を実行する。
ステップS1604では、主制御通信監視タイマに初期値(この例では、500)を設定し、次のステップS1605では、主制御通信エラーフラグをオフに設定する。次のステップS1606では、賞球コマンド受付許可フラグをオンに設定し、次のステップS1607では、通信確認コマンド受信フラグをオンに設定した後に処理を終了する。
<送信コマンド処理(実施例K)>
図27を用いて、図24に示した送信コマンド処理の他の例(実施例K)について説明する。この例では、賞球コマンド受付許可フラグのオフのタイミングが図24のフローと異なっている。同図は、送信コマンド処理の流れを示すフローチャートである。
ステップS1701では、通信確認コマンド受信フラグがオンかオフかを判定し、オンの場合にはステップS1702〜S1704の処理を実行し、オフの場合にはステップS1705に進む。ステップS1702では、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に通信確認コマンドを送信する。
ステップS1703では、通信確認コマンド受信フラグをオフに設定し、次のステップS1704では、他のエラーコマンドセット処理を行った後にステップS1705に進む。ステップS1704で実行する他のエラーコマンドセット処理としては、例えば、通信確認コマンドと、主制御通信エラーコマンド以外の第二のコマンド(例えば、払出しエラーの発生を知らせるためのコマンド)の両方を送信する必要があるかどうかを判定し、必要がある場合に、通信確認コマンドに続けて第二のコマンドを送信する処理などが該当する。
ステップS1705では、主制御通信エラーフラグが1であるか否か(オンかオフか)を判定し、オン(1)の場合にはステップS1706の処理を実行し、オフの場合にはステップS1708に進む。ステップS1706では、送信データレジスタに主制御通信エラーコマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に主制御通信エラーコマンドを送信する。
次のステップS1707では、賞球コマンド受付許可フラグにオフを設定し、次のステップS1708ではその他送信コマンド処理を実行して処理を終了する。
以上説明した、受信コマンド処理の実施例A、実施例Bと、コマンド解析処理の実施例C,実施例Dと、主制御通信確認コマンド受信処理の実施例E、実施例Jと、賞球コマンド受信時処理の実施例F,実施例Gと、送信コマンド処理の実施例H、実施例I、実施例Kとは、制御に不具合が無い限り適宜組み合わせることができる。
例えば、受信コマンド処理として実施例A(図18(a))を実行し、コマンド解析処理として実施例C(図19)を実行し、賞球コマンド受信時処理として実施例F(図22(a))を実行し、送信コマンド処理として実施例H(図24)を行うことができる。あるいは、受信コマンド処理として実施例A(図18(a))を実行し、コマンド解析処理として実施例D(図20)を実行し、賞球コマンド受信時処理として実施例G(図22(b))を実行し、送信コマンド処理として実施例H(図24)を行うことができる。
<受信コマンド処理、受信コマンド取得処理、受信コマンド解析処理(詳細)>
図28〜図35を参照して受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理の詳細について説明する。
図28および図29は、払出制御部600のRAM708の第二の領域708Bに設けられた、受信コマンドバッファエリアの一例を示す図である。
図28に示すように、受信コマンドバッファエリアは、固定長(ここでは、アドレス00H〜03H)の記憶領域(バッファ)をリング状に利用し、そのバッファにデータを格納するリングバッファとして設けられる。なお、ここでは、バッファのサイズとしてアドレス00H〜03Hの記憶領域を例示しているが、バッファのサイズはこれに限らない。受信コマンドバッファエリアでは、図示の如くデータの書き込み用ポインタ(設定ポインタ)と、データの読出し用ポインタ(解析ポインタ)を用いてデータ(受信コマンドの値)の設定と解析とを行う。どちらのポインタもバッファの終端(ここでは最下層)に達すると、バッファの先頭(ここでは最上層)に戻るように回転される。このようにして、概念的にあたかも環であるかのようにしてデータが処理され、実際の領域(固定長のバッファエリア)と二つのポインタ変数(設定ポインタと解析ポインタ)のみで、データが溢れることの無いバッファ管理を実現できる。
図28は、設定ポインタの値が直接、記憶領域のアドレスを示す例である。まず、同図(a)に示すように、設定ポインタと解析ポインタはいずれも受信コマンドバッファエリアの先頭アドレス(00H)の位置を参照している。リングバッファでは、読み出し用ポインタ(解析ポインタ)は、現在参照する位置からデータを読み出すが、書き込み用ポインタ(設定ポインタ)と参照アドレスが一致した場合には、データの読み込みを終了(待機)する。つまり同図(a)の状態では、設定ポインタと解析ポインタの位置が同じであるので、払出制御部600のCUPは、データの読み出しを待機している。
この状態で、払出制御部600が主制御部300から最初の受信コマンド(例えば、2AH(10球払出を指示する賞球コマンド)を受信すると、設定ポインタの位置(00H)に受信コマンドの値(2AH)が書き込まれ(同図(b))、設定ポインタは次のアドレス(01H)に移動する(同図(c))。なお、図28および図29においては、受信コマンドの値について16進数を示す「H」を省略して示す。
設定ポインタと解析ポインタとは異なるアドレスを参照しているため、解析ポインタはデータの読み込みを開始する。つまり解析ポインタは、先頭のアドレス(00H)に格納されている値(ここでは2AH)を参照し、当該値から受信コマンドの内容を解析して対応するモジュールにジャンプする(同図(c))。解析ポインタにより値が読み出された後に、解析ポインタが参照する記憶領域がクリアされ(同図(d))、解析ポインタは次のアドレス(01H)に移動する(同図(e))。なお、解析ポインタの値をインクリメントした後にデータを読み出してもよい。
次に受信コマンド(例えば、23H(3球払出を指示する賞球コマンド)を受信すると、設定ポインタの位置(01H)に受信コマンドの値(23H)が書き込まれ(同図(f))、設定ポインタは次のアドレス(02H)に移動する(同図(g))。次の受信コマンド(例えば、2FH(15球払出を指示する賞球コマンド)を受信すると、設定ポインタの位置(02H)に受信コマンドの値(2FH)が書き込まれ(同図(h))、設定ポインタは次のアドレス(03H)に移動する(同図(i))。解析ポインタは現在のアドレス(01H)に格納されている値(ここでは23H)を参照し、当該値から受信コマンドの内容を解析して対応するモジュールにジャンプし(同図(i))、その後、解析ポインタの参照する記憶領域がクリアされる(同図(j))。解析ポインタの参照する記憶領域がクリアされると、解析ポインタは次のアドレス(02H)に移動し(同図(k))、(設定ポインタの位置とは不一致であるので)バッファの値(2FH)を読み込んで解析する。その後、解析ポインタの参照する記憶領域がクリアされ(同図(l))、解析ポインタは次のアドレス(03H)に移動する(同図(m))。
同図(m)の状態では、設定ポインタと解析ポインタの参照アドレスが一致しているため、解析ポインタはデータの読み込みを待機する。次の受信コマンド(例えば、23H)を受信すると、設定ポインタの位置(03H)に受信コマンドの値(23H)が書き込まれ(同図(n))、設定ポインタは次のアドレス(00H)に移動する(同図(o))。解析ポインタは現在のアドレス03Hの値23Hを読出し、解析を行う(同図(o))。以下同様に、データの書き込みと読み出しが行われる。
図29は、受信コマンドバッファエリアの他の例を示す図である。同図に示す例では、設定ポインタおよび解析ポインタが参照する位置(その値)と、実際にデータが格納された記憶領域のアドレスとが異なる場合を示している。つまり、設定ポインタおよび解析ポインタが参照する位置(その値)に基づき、データが格納されたアドレスを算出して、データの書き込み及び読み込みを行うものである。
図29(a)を参照して、受信コマンドが格納される受信コマンドバッファエリアとして、例えばアドレス7F10H〜7F13Hまでの領域が確保されている。一方、設定ポインタは、例えばRAM708のアドレス7F0EHに記憶され、解析ポインタは例えば、RAM708のアドレス7F0FHに記憶されており、設定ポインタと解析ポインタにそれぞれ図示の値(例えば、00H〜03H)をセットする。
つまり、同図の状態では、設定ポインタと解析ポインタはいずれもの先頭の値00Hがセットされており、受信コマンドバッファエリアにはデータが格納されていない。
この状態で、払出制御部600が主制御部300から最初の受信コマンド(例えば、2AH)を受信した場合、設定ポインタにセットされた値(00H)に基づいて所定の演算処理を行い、受信コマンドバッファエリアの先頭アドレスの値(7F10H)を算出する。そして受信コマンドバッファエリアのアドレス7F10Hに受信コマンド(2AH)を格納する(同図(b))。そして、受信コマンド格納された後、設定ポインタの位置は更新(インクリメント)され、次のアドレスに移動する。解析ポインタは、セットされている値(00H)に基づいて所定の演算処理を行い、受信コマンドバッファエリアの先頭アドレスの値(7F10H)を算出する。そして受信コマンドバッファエリアのアドレス7F10Hのデータ(2AH)を読み込み、解析する(同図(c))。その後、受信コマンドバッファエリアのアドレス7F10Hがクリアされ(同図(d))、解析ポインタが更新されて次のアドレスの値がセットされる(同図(e))。この状態で、払出制御部600が主制御部300から次の受信コマンド(例えば、23H)を受信した場合、設定ポインタにセットされる値(01H)に基づいて所定の演算処理を行い、受信コマンドバッファエリアの先頭アドレスの値(7F11H)を算出し、当該アドレス7F11Hに受信コマンド(23H)を格納する(同図(f))。その後、設定ポインタは次のアドレスを参照し、解析ポインタはセットされた値(01H)に基づいて所定の演算処理を行い、受信コマンドバッファエリアのアドレス7F11Hを算出して、格納されているデータ(23H)を取得し、解析する。以降、同様の処理を繰り返してデータの格納と解析が行われる。
なお、設定ポインタおよび解析ポインタにセットする値は、実際には、0〜15(4ビット)の値を用い、インクリメント関数で値の更新をしている。設定ポインタおよび解析ポインタは8ビットであるが、ポインタには、セットする値(4ビットで0〜15)と0FHとの論理積の演算結果をセットするので、0〜15の範囲で循環させることが可能になる。
<記憶領域の構成>
図30(a)(b)は、本実施形態の受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理において使用する記憶領域の一部の構成を示す概要図である。また図30(c)は、主制御部300が払出制御部600に送信するコマンド(受信コマンド)の一例である。
図30(a)は、払出制御用マイクロコンピュータ770の内蔵レジスタの一部である、ステータスレジスタ772と受信データレジスタ774の概要図である(図7参照)。ステータスレジスタ772にはシリアル通信回路の状態を示す情報が格納され、受信データレジスタ774には、受信コマンドが格納される。なお、ここでは払出制御部600で受信したコマンドを格納する受信データレジスタ774として示しているが、送受信データが格納される送受信データレジスタであってもよい。
図30(b)は、払出制御部600のRAM708の第二の領域708B(図14参照)の構成を示す概要図である。同図に示すように、第二の領域708Bは例えば、アドレス7F0EH〜7F13Hまでの領域で構成され、アドレス7F0EHが設定ポインタ保存用エリア7081であり、アドレス7F0FHが解析ポインタ保存用エリア7082であり、アドレス7F10H〜7F13Hが受信コマンドバッファエリア(リングバッファ)708Rである。
受信コマンドバッファエリア708Rには、同図(c)で示す受信コマンドが格納される。同図(c)の内容は、図13(b)に示すものと同様であるので、説明は省略する。
<受信コマンド処理(詳細)>
図31を参照して、受信コマンド処理の一例について、詳細に説明する。上述したように、受信コマンド処理は、払出制御部割込み処理(図17)のステップS404において行われる処理(図18参照)である。また、以下の説明では図29に示したように、設定ポインタおよび解析ポインタの値に基づき、受信コマンドバッファエリアのアドレスを間接的に算出して参照する場合を例に示す。つまり、初期状態では、設定ポインタおよび解析ポインタの値はいずれも00Hであり、最初にデータが格納される領域は、受信コマンドバッファエリアのアドレス7F10Hである。
まず、払出制御部600のCPUはステータスレジスタ772の特定ビットを参照して「受信完了」になった場合に、受信データレジスタ774から受信データ(受信コマンド)を読み込む(1)。
受信コマンドの格納先は、一例として、設定ポインタ保存エリア7081の値と、受信コマンドバッファエリア708Rの先頭アドレスに基づいて求める。すなわち、設定ポインタ保存エリア7081(アドレス7F0EH)の値(01H)に、受信コマンドバッファエリア708Rの先頭アドレス7F10Hを加算して格納先のアドレス7F11Hを算出する(2)。払出制御部600のCPUは、受信データレジスタ774の受信コマンドを、受信コマンドバッファエリア708Rのアドレス7F11Hに格納する(3)。受信データレジスタ774から受信コマンドが読み出されると、ステータスレジスタ772の特定ビットがクリアされる。また、払出制御部600のCPUは、設定ポインタの値を更新(インクリメント)する(4)。
なお、払出制御部600のCPUが、受信データレジスタ774の受信コマンドを、受信コマンドバッファエリア708Rのアドレス7F11Hに格納するとともに、ステータスレジスタ772の特定ビットをクリアしてもよい。
<受信コマンド取得処理(詳細)>
図32を参照して、受信コマンド取得処理の一例について、詳細に説明する。受信コマンド取得処理は、払出制御部メイン処理(図16)のステップS309において行われる処理(図19のステップS701または図20のステップS801の処理)である。
まず、払出制御部600のCPUは、設定ポインタ保存エリア7081の値(ここでは02H)と、解析ポインタ保存エリア7082の値(ここでは01H)の値を比較し(1)、これらの値が不一致である場合、解析を行う。解析するデータ(受信コマンド)の格納先は、一例として、解析ポインタ保存エリア7082の値と、受信コマンドバッファエリア708Rの先頭アドレスに基づいて求める。すなわち、解析ポインタの値(ここでは01H)と、受信コマンドバッファエリア708Rの先頭アドレス7F10Hを加算して格納先のアドレス7F11Hを算出する(2)。払出制御部600のCPUは、受信コマンドバッファエリア708Rのアドレス7F11Hに格納されているデータを別の領域(例えば、Aレジスタ722(図7参照)など)に格納し、受信コマンドバッファエリア708Rのアドレス7F11Hのデータをクリアする(3)。また、払出制御部600のCPUは、解析ポインタの値を更新(インクリメント)する(4)。
この後、払出制御部600のCPUは、Aレジスタ722に格納した受信コマンドの種別(賞球コマンドであるか、通信確認コマンドであるか)を解析し、対応するモジュールにジャンプする。
<受信コマンド解析処理>
図33〜35を参照して、受信コマンド解析処理の一例について、詳細に説明する。受信コマンド解析処理は、払出制御部メイン処理(図16)のステップS309において行われる処理(図19のステップS702または図20のステップS802の処理)である。
図33は受信コマンドのデータの一例とジャンプテーブルの関係を示す図である。同図(a)は、受信コマンドのビット単位の設定例(内容)を示す図であり、同図(b)はジャンプテーブルの一例を示す図である。
同図(a)に示すように、受信コマンドは8ビットデータであり、上位4ビットがコマンド種別を示し、下位4ビットが実データを示している。例えば、上位4ビットの値が「1」の場合が主制御通信確認コマンドであり、そのうち、下位4ビットの実データ部分の値が「0」の場合に初期起動時であることを示し、下位4ビットの実データ部分の値が「1」の場合に復帰起動時であることを示す。また、例えば、上位4ビットの値が「2」の場合が賞球コマンドであり、そのうち、下位4ビットの実データ部分の値が「3」の場合に3球の払い出しであることを示し、下位4ビットの実データ部分の値が「10」の場合に10球の払い出しであることを示し、下位4ビットの実データ部分の値が「15」の場合に15球の払い出しであることを示す。なお、上位4ビットのコマンド種別と下位4ビットの実データは別々に一時保存されるが、これについては後述する。
同図(b)は、ジャンプテーブルの一例を示す。ジャンプテーブルは、払出制御部600のROM706の、ROM制御領域に設けられ、アドレス0700Hに、主制御通信確認コマンド受信処理(プログラム)の先頭アドレス0750Hのうちの下位8ビット(または上位8ビット)が記憶され、0701Hには、主制御通信確認コマンド受信処理の先頭アドレス(ここでは0750H)のうちの上位8ビット(または下位8ビット)が記憶されている。また、アドレス0702Hに、賞球数コマンド受信時処理(プログラム)の先頭アドレス(ここでは0780H)のうちの下位8ビット(または上位8ビット)が記憶され、0703Hには、賞球数コマンド受信時処理の先頭アドレス0780Hのうちの上位8ビット(または下位8ビット)が記憶されている。
払出制御部600のCPUは、賞球コマンドの上位4ビットを解析し、「1」の場合は、同図(b)のジャンプテーブルのアドレス0700Hを参照し、主制御通信確認コマンド受信時処理の先頭アドレス(ここでは0750H)にジャンプする。また、払出制御部600のCPUは、賞球コマンドの上位4ビットを解析し、「2」の場合は、同図(b)のジャンプテーブルのアドレス0702Hを参照し、賞球数コマンド受信時処理の先頭アドレス(ここでは0780H)にジャンプする。
図34および図35は、引き続き、受信コマンド解析処理の詳細を示す図であり、図32の(3)でAレジスタに格納された受信コマンドの解析例を示す図である。
図34(a)では、Aレジスタに例えば、3球払出を指示する賞球コマンド(23H)として「00100011」が格納されている場合を示す。まず、払出制御部600のCPUは、後にコマンド種別の判定を行うため、Aレジスタの値をBレジスタに退避する。なお、上述したように本実施形態では、図18(b)のステップS1403で賞球コマンド受付許可フラグがオフになっている場合には受信コマンドをバッファに格納せずに処理を終了し、また図19のステップS706で賞球コマンド受付許可フラグがオフになっている場合には、賞球コマンド受信時処理を行わずに処理を終了している。しかし図34(a)に示すタイミング(賞球コマンドをバッファに格納した後に)で、上位4ビットを参照して賞球コマンドであることを解析し、賞球コマンドの受付が不可(賞球コマンド受付許可フラグがオフ)となっている場合には、コマンドを破棄して処理を終了してもよい。また、主制御通信確認コマンドおよび賞球コマンド以外のコマンドを破棄した場合や、賞球コマンド受付許可フラグをオフすることで意図しない賞球コマンドを破棄した場合であっても、主制御部300にエラーである旨を送信しなくてもよい。
次に、同図(b)に示すように、Aレジスタの下位4ビットの値を取得するためにAレジスタの値「00100011」と0FH(「00001111」)の論理積を算出してAレジスタに格納する。この結果Aレジスタの値は上位4ビットがマスクされ実データ部分の値のみ(「00000011」)となる。
次に、同図(c)に示すように、Aレジスタの値(実データ部分)をCレジスタに退避し、その後、同図(d)に示すように、コマンド種別判定のためにBレジスタの値「00100011」をAレジスタに格納(復帰)する。なお、実データ部分の対比処理と、コマンド種別判定のための復帰処理の順番は、逆でもよい。
次に、同図(e)に示すように、Aレジスタの上位4ビットの値を取得するためにAレジスタの値「00100011」とF0H(「11110000」)の論理積を算出してAレジスタに格納する。この結果Aレジスタの値は下位4ビットがマスクされ、コマンド種別を示す値のみ(「00100000」)となる。
引き続き図35(a)では、Aレジスタの値について右シフトを4回行う。これによりAレジスタの値は、賞球コマンドの場合は図示の如く「00000010」となる(主制御通信確認コマンドの場合は、「00000001」となる)。
同図(b)では、オフセット算出のため、Aレジスタの値を減算(デクリメント)し、「00000001」を得る。その後、同図(c)に示すようにAレジスタのデクリメント後の値と特定の値(ここでは例えば02H)を比較(CP 02H命令)する。このタイミングで(デクリメント後の)Aレジスタの値は、通常では00Hまたは01Hであるので、キャリーが発生した場合には、正常なコマンドであり、キャリーが発生しなかった場合には意図しないコマンドと判定できる。したがって、キャリーが発生しなかった場合には意図しないコマンドであるとして処理を終了する。なお、特定の値との比較は減算処理前に行ってもよい。
次に、同図(d)では、図33(b)に示したジャンプテーブルの先頭アドレス0700Hを、払出制御部600のHLレジスタ(ペアレジスタ)724に格納する。
次に、同図(e)に示すように、HLレジスタの値に、同図(b)のAレジスタの値を2倍した値「00000010」を加算し、加算後のHLレジスタに記憶されているアドレスにジャンプする(モジュールに移行する)。HLレジスタに記憶されているアドレスへのジャンプは、例えば、「JP(HL)命令」などで行う。この例では、ジャンプテーブルのアドレス0702Hに格納されているアドレス0780Hにジャンプし、賞球数コマンド受信時処理が実行される。
また、図示は省略するが、受信コマンドが主制御通信確認コマンドの場合、同図(b)のAレジスタの値が「00000000」となる。つまり、同図(e)でHLレジスタに加算するAレジスタの値の2倍値も「00000000」となり、ジャンプテーブルのアドレス0700Hに格納されているアドレス0750Hにジャンプすることとなり、主制御通信確認コマンド受信時処理が実行される。
なお、同図(e)の後に、賞球数コマンド受信時処理に移行した場合は、図34(c)においてCレジスタに退避した実データ部分が賞球数となるので、この賞球数を図22(a)のステップS1102または図22(b)のステップS1203において、次賞球数エリアに加算する処理を行う。なお、賞球個数についての不正対策は行っていないが、賞球個数の不正対策として、Cレジスタに退避した実データ部分(下位4ビット)を参照する処理を行ってもよい。
以上、受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理について説明したが、送信コマンド処理(図17のステップS412)や、送信コマンド出力処理(図16のステップS311)は、上述の受信コマンド処理、受信コマンド取得処理および受信コマンド解析処理の少なくとも一つ以上と同様に実行してもよい。
なお、主制御通信確認コマンドは定期的に払出制御部600に送信しているが、賞球コマンド送信前だけ送信するようにしてもよく、その場合、初回の主制御通信確認コマンドのみ、賞球コマンドと別に送信するようにしてもよい。また、例えば、賞球コマンド1送信につき、主制御通信確認コマンド1送信するものとしてもよい。また、主制御部タイマ割込み処理の1割込みにつき1送信、あるいは1割り込みにつき複数送信、1割り込みにつきグループ単位で送信、1割り込みにつき255を超えない範囲で複数送信などを行うものであってもよい。
また、賞球が発生した場合の賞球コマンドの送受信の際に、デバイス等の状態に関する情報を送受信すると通信量が増えすぎてしまうため、主制御部300と払出制御部600の間で定期的に通信確認コマンドを送受信する場合には、払出制御部600では側は通信確認コマンドの送受信のタイミングで、デバイス等の状態に関する情報も送受信するとよい。
また、主制御通信確認コマンドを受信しない場合には、エラーに関するコマンドを主制御部300に送信しないものとしてもよい。この場合、エラーコマンドを使って、所定の種別のエラーは送信するなど一部のエラーについては送信するものとしてもよい。
また、主制御通信確認コマンドを受信した場合、主制御部300に、複数種類のコマンドを、別々のタイミング(例えば、異なるメイン処理など)で送信する場合がある。例えば、複数種類のコマンドの送信が同時に発生した場合には、例えばエラーコマンドの上位4ビットが小さいもの順に送るなどとしてもよいし、上位4ビットが大きいもの順に送るなどとしてもよい。
また、賞球コマンドは賞球に関わる重要なコマンドであることから、コマンドを暗号化してもよい。
また、上記の実施形態で説明した各処理のフローは、同様の機能が得られるものであれば、図示の流れに限定されるものではなく、処理順序は適宜入れ替えることが可能である。
また、図16の払出制御部メイン処理で受信コマンド処理(ステップS404)を実行し、図17の払出制御部割込み処理でコマンド解析処理(ステップS309)を実行するようにしてもよし、図16の払出制御部メイン処理で受信コマンド処理(ステップS404)とコマンド解析処理(ステップS309)を実行するようにしてもよいし、図17の払出制御部割込み処理で受信コマンド処理(ステップS404)とコマンド解析処理(ステップS309)を実行するようにしてもよい。
なお、図22(b)に示す賞球コマンド受信時処理では、払出制御部割込み処理(図17)における受信コマンド処理(ステップS404)の、賞球コマンド受付許可フラグの判定処理(図18(b)のステップS1403)では、賞球コマンド受付許可フラグがオフであっても、本ステップの賞球コマンド受付許可フラグがオンの場合には、次のステップS1203に進む。つまり、払出制御部割込み処理では不正なコマンドと判定されても、本ステップにおいて正常な受信コマンドとしての処理を行う場合がある。
<実施形態2>
以下、図36〜図76を用いて、本発明の実施形態2に係る遊技台(例えば、パチンコ機100等の弾球遊技機やスロット機等の回胴遊技機)について詳細に説明する。なお、図36〜図76及びこれらの参照符号は、本実施形態2における説明のみに使用するものとする。
<全体構成>
まず、図36を用いて、本発明の実施形態2に係るパチンコ機100の全体構成について説明する。なお、同図はパチンコ機100を正面側(遊技者側)から見た外観斜視図である。パチンコ機100は、外部的構造として、外枠102と、本体104と、前面枠扉106と、球貯留皿付扉108と、発射装置110と、遊技盤200と、をその前面に備える。
外枠102は、遊技機設置営業店に設けられた設置場所(島設備等)へと固定させるための縦長方形状から成る木製の枠部材である。本体104は、外枠102の内部に備えられ、ヒンジ部112を介して外枠102に回動自在に装着された縦長方形状の遊技機基軸体となる部材である。また、本体104は、枠状に形成され、内側に空間部114を有している。
前面枠扉106は、ロック機能付きで且つ開閉自在となるようにパチンコ機100の前面側となる本体104の前面に対しヒンジ部112を介して装着され、枠状に構成されることでその内側を開口部とした扉部材である。なお、この前面枠扉106には、開口部にガラス製又は樹脂製の透明板部材118が設けられ、前面側には、スピーカ120や枠ランプ122が取り付けられている。前面枠扉106の後面と遊技盤200の前面とで遊技領域124を区画形成する。
球貯留皿付扉108は、パチンコ機100の前面において本体104の下側に対して、ロック機能付きで且つ開閉自在となるように装着された扉部材である。球貯留皿付扉108は、複数の遊技球(以下、単に「球」と称する場合がある)が貯留可能で且つ発射装置110へと遊技球を案内させる通路が設けられている上皿126と、上皿126に貯留しきれない遊技球を貯留する下皿128と、遊技者の操作によって上皿126に貯留された遊技球を下皿128へと排出させる球抜ボタン130と、遊技者の操作によって下皿128に貯留された遊技球を遊技球収集容器(俗称、ドル箱)へと排出させる球排出レバー132と、遊技者の操作によって発射装置110へと案内された遊技球を遊技盤200の遊技領域124へと打ち出す球発射ハンドル134と、遊技者の操作によって各種演出装置206の演出態様に変化を与えるチャンスボタン136と、チャンスボタン136を発光させるチャンスボタンランプ138と、遊技店に設置されたカードユニット(CRユニット)に対して球貸し指示を行う球貸操作ボタン140と、カードユニットに対して遊技者の残高の返却指示を行う返却操作ボタン142と、遊技者の残高やカードユニットの状態を表示する球貸表示部144と、を備える。
発射装置110は、本体104の下方に取り付けられ、球発射ハンドル134が遊技者に操作されることによって回動する発射杆146と、遊技球を発射杆146の先端で打突する発射槌148と、を備える。遊技盤200は、前面に遊技領域124を有し、本体104の空間部114に臨むように、所定の固定部材を用いて本体104に着脱自在に装着されている。なお、遊技領域124は、遊技盤200を本体104に装着した後、開口部から観察することができる。
図37は、図36のパチンコ機100を背面側から見た外観図である。パチンコ機100の背面上部には、上方に開口した開口部を有し、遊技球を一時的に貯留するための球タンク150と、この球タンク150の下方に位置し、球タンク150の底部に形成した連通孔を通過して落下する球を背面右側に位置する払出装置152に導くためのタンクレール154とを配設している。
払出装置152は、筒状の部材からなり、その内部には、払出モータ602(図39参照)とスプロケットと払出センサ604(図39参照)とを備えている。スプロケットは、払出モータ602によって回転可能に構成されており、タンクレール154を通過して払出装置152内に流下した遊技球を一時的に滞留させると共に、払出モータ604を駆動して所定角度だけ回転することにより、一時的に滞留した遊技球を払出装置152の下方へ1個ずつ送り出すように構成している。
払出センサ604は、スプロケットが送り出した遊技球の通過を検知するためのセンサであり、遊技球が通過しているときにハイまたはローの何れか一方の信号を、遊技球が通過していないときはハイまたはローの何れか他方の信号を払出制御部600へ出力する。なお、この払出センサ604を通過した遊技球は、不図示の球レールを通過してパチンコ機100の表側に配設した上皿126に到達するように構成しており、パチンコ機100は、この構成により遊技者に対して球の払い出しを行う。
払出装置152の図中左側には、遊技全般の制御処理を行う主制御部300を構成する主基板156を収納する主基板ケース158、主制御部300が生成した処理情報に基づいて演出に関する制御処理を行う第1副制御部400を構成する第1副基板160を収納する第1副基板ケース162、第1副制御部400が生成した処理情報に基づいて演出に関する制御処理を行う第2副制御部500を構成する第2副基板164を収納する第2副基板ケース166、遊技球の払出に関する制御処理を行う払出制御部600を構成するとともに遊技店員の操作によってエラーを解除するエラー解除スイッチ168を備える払出基板170を収納する払出基板ケース172、遊技球の発射に関する制御処理を行う発射制御部630を構成する発射基板174を収納する発射基板ケース176、各種電気的遊技機器に電源を供給する電源管理部660を構成するとともに遊技店員の操作によって電源をオンオフする電源スイッチ178と電源投入時に操作されることによってRWMクリア信号を主制御部300に出力するRWMクリアスイッチ180とを備える電源基板182を収納する電源基板ケース184、および払出制御部600とカードユニットとの信号の送受信を行うCRインターフェース部186を配設している。
図38は、遊技盤200を正面から見た略示正面図である。遊技盤200には、外レール202と内レール204とを配設し、遊技球が転動可能な遊技領域124を区画形成している。
遊技領域124の略中央には、演出装置206を配設している。この演出装置206には、略中央に装飾図柄表示装置208を配設し、その周囲に、普通図柄表示装置210と、第1特別図柄表示装置212と、第2特別図柄表示装置214と、普通図柄保留ランプ216と、第1特別図柄保留ランプ218と、第2特別図柄保留ランプ220と、高確中ランプ222を配設している。なお、以下、普通図柄を「普図」、特別図柄を「特図」と称する場合がある。
演出装置206は、演出可動体224を動作して演出を行うものであり、詳細については後述する。装飾図柄表示装置208は、装飾図柄ならびに演出に用いる様々な表示を行うための表示装置であり、本実施例では液晶表示装置(Liquid Crystal Display)によって構成する。この装飾図柄表示装置208は、左図柄表示領域208a、中図柄表示領域208b、右図柄表示領域208cおよび演出表示領域208dの4つの表示領域に分割し、左図柄表示領域208a、中図柄表示領域208bおよび右図柄表示領域208cはそれぞれ異なった装飾図柄を表示し、演出表示領域208dは演出に用いる画像を表示する。さらに、各表示領域208a、208b、208c、208dの位置や大きさは、装飾図柄表示装置208の表示画面内で自由に変更することを可能としている。
なお、装飾図柄表示装置208として液晶表示装置を採用しているが、液晶表示装置でなくとも、種々の演出や種々の遊技情報を表示可能に構成されていればよく、例えば、ドットマトリクス表示装置、7セグメント表示装置、有機EL(ElectroLuminescence)表示装置、リール(ドラム)式表示装置、リーフ式表示装置、プラズマディスプレイ、プロジェクタを含む他の表示デバイスを採用してもよい。
普図表示装置210は、普図の表示を行うための表示装置であり、本実施例では7セグメントLEDによって構成する。第1特図表示装置212および第2特図表示装置214は、特図の表示を行うための表示装置であり、本実施例では7セグメントLEDによって構成する。
普図保留ランプ216は、保留している普図変動遊技(詳細は後述)の数を示すためのランプであり、本実施例では、普図変動遊技を所定数(例えば、2つ)まで保留することを可能としている。第1特図保留ランプ218および第2特図保留ランプ220は、保留している特図変動遊技(詳細は後述)の数を示すためのランプであり、本実施例では、特図変動遊技を所定数(例えば、4つ)まで保留することを可能としている。高確中ランプ222は、遊技状態が大当りが発生し易い高確率状態であること、または高確率状態になることを示すためのランプであり、遊技状態を大当りが発生し難い低確率状態から高確率状態にする場合に点灯し、高確率状態から低確率状態にする場合に消灯する。
また、この演出装置206の周囲には、一般入賞口226と、普図始動口228と、第1特図始動口230と、第2特図始動口232と、可変入賞口234を配設している。
一般入賞口226は、本実施例では遊技盤200に複数配設しており、この一般入賞口226への入球を所定の球検出センサ(図示省略)が検出した場合(一般入賞口226に入賞した場合)、払出装置152を駆動し、所定の個数(例えば、10個)の球を賞球として上皿126に排出する。上皿126に排出した球は遊技者が自由に取り出すことが可能であり、これらの構成により、入賞に基づいて賞球を遊技者に払い出すようにしている。なお、一般入賞口226に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。本実施例では、入賞の対価として遊技者に払い出す球を「賞球」、遊技者に貸し出す球を「貸球」と区別して呼ぶ場合があり、「賞球」と「貸球」を総称して「球(遊技球)」と呼ぶ。
普図始動口228は、ゲートやスルーチャッカーと呼ばれる、遊技領域124の所定の領域を球が通過したか否かを判定するための装置で構成しており、本実施例では遊技盤200の左側に1つ配設している。普図始動口228を通過した球は一般入賞口226に入球した球と違って、遊技島側に排出することはない。球が普図始動口228を通過したことを所定の玉検出センサが検出した場合、パチンコ機100は、普図表示装置による普図変動遊技を開始する。
第1特図始動口230は、本実施例では遊技盤200の中央に1つだけ配設している。この第1特図始動口230への入球を所定の球検出センサが検出した場合、後述する払出装置152を駆動し、所定の個数(例えば、3個)の球を賞球として上皿126に排出するとともに、第1特図表示装置による特図変動遊技を開始する。なお、第1特図始動口230に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
第2特図始動口232は、電動チューリップ(電チュー)と呼ばれ、本実施例では第1特図始動口230の真下に1つだけ配設している。この第2特図始動口232は、左右に開閉自在な羽根を備え、羽根の閉鎖中は球の入球が不可能であり、普図変動遊技に当選し、普図表示装置が当り図柄を停止表示した場合に羽根が所定の時間間隔、所定の回数で開閉する。第2特図始動口232への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、4個)の球を賞球として上皿126に排出するとともに、第2特図表示装置による特図変動遊技を開始する。なお、第2特図始動口232に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
可変入賞口234は、大入賞口またはアタッカーと呼ばれ、本実施例では遊技盤200の中央部下方に1つだけ配設している。この可変入賞口234は、開閉自在な扉部材を備え、扉部材の閉鎖中は球の入球が不可能であり、特図変動遊技に当選して特図表示装置が大当り図柄を停止表示した場合に扉部材が所定の時間間隔(例えば、開放時間29秒、閉鎖時間1.5秒)、所定の回数(例えば15回)で開閉する。可変入賞口234への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、15個)の球を賞球として上皿126に排出する。なお、可変入賞口234に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
さらに、これらの入賞口や始動口の近傍には、風車と呼ばれる円盤状の打球方向変換部材236や、遊技釘238を複数個、配設していると共に、内レール204の最下部には、いずれの入賞口や始動口にも入賞しなかった球をパチンコ機100の裏側に誘導した後、遊技島側に排出するためのアウト口を設けている。
このパチンコ機100は、遊技者が上皿126に貯留している球を発射レールの発射位置に供給し、遊技者の操作ハンドルの操作量に応じた強度で発射モータを駆動し、発射杆146および発射槌148によって外レール202、内レール204を通過させて遊技領域124に打ち出す。そして、遊技領域124の上部に到達した球は、打球方向変換部材236や遊技釘238等によって進行方向を変えながら下方に落下し、入賞口(一般入賞口226、可変入賞口234)や始動口(第1特図始動口230、第2特図始動口232)に入賞するか、いずれの入賞口や始動口にも入賞することなく、または普図始動口228を通過するのみでアウト口136に到達する。
<演出装置206>
次に、パチンコ機100の演出装置206について説明する。この演出装置206の前面側には、遊技球の転動可能な領域にワープ装置242およびステージ244を配設し、遊技球の転動不可能な領域に演出可動体224を配設している。また、演出装置206の背面側には、装飾図柄表示装置208および遮蔽装置246(以下、扉と称する場合がある)を配設している。すなわち、演出装置206において、装飾図柄表示装置208および遮蔽装置246は、ワープ装置242、ステージ244、および演出可動体224の後方に位置することとなる。
ワープ装置242は、演出装置206の左上方に設けたワープ入口242aに入った遊技球を演出装置206の前面下方のステージ244にワープ出口242bから排出する。ステージ244は、ワープ出口242bから排出された球や遊技盤200の釘などによって乗り上げた球などが転動可能であり、ステージ244の中央部には、通過した球が第1特図始動口230へ入球し易くなるスペシャルルート244aを設けている。
演出可動体224は、本実施形態では人間の右腕の上腕と前腕を模した上腕部224aと前腕部224bとからなり、肩の位置に上腕部224aを回動させる不図示の上腕モータと肘の位置に前腕部224bを回動させる不図示の前腕モータを備える。演出可動体224は、上腕モータと前腕モータによって装飾図柄表示装置208の前方を移動する。
遮蔽装置246は、格子状の左扉246aおよび右扉246bからなり、装飾図柄表示装置208および前面ステージ244の間に配設する。左扉246aおよび右扉246bの上部には、不図示の2つのプーリに巻き回したベルトをそれぞれ固定している。すなわち、左扉246aおよび右扉246bは、モータによりプーリを介して駆動するベルトの動作に伴って左右にそれぞれ移動する。遮蔽装置246は、左扉246aおよび右扉246bを閉じた状態ではそれぞれの内側端部が重なり、遊技者が装飾図柄表示装置208を視認し難いように遮蔽する。左扉246aおよび右扉246bを開いた状態ではそれぞれの内側端部が装飾図柄表示装置208の表示画面の外側端部と若干重なるが、遊技者は装飾図柄表示装置208の表示の全てを視認可能である。また、左扉246aおよび右扉246bは、それぞれ任意の位置で停止可能であり、例えば、表示した装飾図柄がどの装飾図柄であるかを遊技者が識別可能な程度に、装飾図柄の一部だけを遮蔽するようなことができる場合がある。
なお、左扉246aおよび右扉246bは、格子の孔から後方の装飾図柄表示装置208の一部を視認可能にしてもよいし、格子の孔の障子部分を半透明のレンズ体で塞ぎ、後方の装飾図柄表示装置208による表示を漠然と遊技者に視認させるようにしてもよいし、格子の孔の障子部分を完全に塞ぎ(遮蔽し)、後方の装飾図柄表示装置208を全く視認不可にしてもよい。
<制御部>
次に、図39を用いて、このパチンコ機100の制御部の回路構成について詳細に説明する。なお、同図は制御部の回路ブロック図を示したものである。
パチンコ機100の制御部は、大別すると、遊技の中枢部分を制御する主制御部300と、主制御部300が送信するコマンド信号(以下、単に「コマンド」と呼ぶ)に応じて主に演出の制御を行う第1副制御部400と、第1副制御部400より送信されたコマンドに基づいて各種機器を制御する第2副制御部500と、主制御部300が送信するコマンドに応じて主に遊技球の払い出しに関する制御を行う払出制御部600と、遊技球の発射制御を行う発射制御部630と、パチンコ機100に供給される電源を制御する電源管理部660と、によって構成している。
<主制御部>
まず、パチンコ機100の主制御部300について説明する。主制御部300は、主制御部300の全体を制御する基本回路302を備えており、この基本回路302には、CPU304と、制御プログラムや各種データを記憶するためのROM306と、一時的にデータを記憶するためのRAM308と、各種デバイスの入出力を制御するためのI/O310と、時間や回数等を計測するためのカウンタタイマ312と、プログラム処理の異常を監視するWDT314を搭載している。なお、ROM306やRAM308については他の記憶装置を用いてもよく、この点は後述する第1副制御部400についても同様である。この基本回路302のCPU304は、水晶発振器316が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。
また、基本回路302には、水晶発振器316が出力するクロック信号を受信する度に0〜65535の範囲で数値を変動させるハードウェア乱数カウンタとして使用しているカウンタ回路318(この回路には2つのカウンタを内臓しているものとする)と、各始動口、入賞口の入り口および可変入賞口の内部に設けた球検出センサを含む各種センサ320が出力する信号を受信し、増幅結果や基準電圧との比較結果をカウンタ回路318および基本回路302に出力するためのセンサ回路322と、第1特図表示装置212や第2特図表示装置214の表示制御を行うための駆動回路324と、普図表示装置210の表示制御を行うための駆動回路326と、各種状態表示部328(例えば、普図保留ランプ216、第1特図保留ランプ218、第2特図保留ランプ220、高確中ランプ222等)の表示制御を行うための駆動回路330と、第2特図始動口232や可変入賞口234等を開閉駆動する各種ソレノイド332を制御するための駆動回路334を接続している。
なお、第1特図始動口16に球が入賞したことを球検出センサ318が検出した場合には、センサ回路320は球を検出したことを示す信号をカウンタ回路316に出力する。この信号を受信したカウンタ回路316は、第1特図始動口126に対応するカウンタのそのタイミングにおける値をラッチし、ラッチした値を、第1特図始動口126に対応する内蔵のカウンタ値記憶用レジスタに記憶する。また、カウンタ回路316は、第2特図始動口128に球が入賞したことを示す信号を受信した場合も同様に、第2特図始動口128に対応するカウンタのそのタイミングにおける値をラッチし、ラッチした値を、第2特図始動口128に対応する内蔵のカウンタ値記憶用レジスタに記憶する。
また、主制御部300には、電源管理部660から主制御部300に供給している電源の電圧値を監視する電圧監視回路338を設けており、この電圧監視回路338は、電源の電圧値が所定の値(本実施例では9v)未満である場合に電圧が低下したことを示す低電圧信号を基本回路302に出力する。
また、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けており、CPU304は、この起動信号出力回路340から起動信号を入力した場合に、遊技制御を開始する(後述する主制御部メイン処理を開始する)。
また、主制御部300は、第1副制御部400にコマンドを送信するための出力インタフェースと、払出制御部600にコマンドを送信するための出力インタフェースをそれぞれ備えており、この構成により、第1副制御部400および払出制御部600との通信を可能としている。
なお、主制御部300と第1副制御部400との情報通信は一方向の通信であり、主制御部300は第1副制御部400にコマンド等の信号を送信できるように構成しているが、第1副制御部400からは主制御部300にコマンド等の信号を送信できないように構成している。一方、主制御部300と払出制御部600との情報通信は双方向の通信であり、主制御部300は払出制御部600にコマンド等の信号を送信でき、払出制御部600は主制御部300にコマンド等の信号を送信できるように構成している(詳細は後述する)。
<副制御部>
次に、パチンコ機100の第1副制御部400について説明する。第1副制御部400は、主に主制御部300が送信したコマンド等に基づいて第1副制御部400の全体を制御する基本回路402を備えており、この基本回路402には、CPU404と、制御プログラムや各種演出データを記憶するためのROM406と、一時的にデータを記憶するためのRAM408と、各種デバイスの入出力を制御するためのI/O410と、時間や回数等を計測するためのカウンタタイマ412を搭載している。この基本回路402のCPU404は、水晶発振器414が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。なお、ROM406は、制御プログラムと各種演出データとを別々のROMに記憶させてもよい。
また、基本回路402には、スピーカ120(およびアンプ)の制御を行うための音源IC416と、各種ランプ418(例えば、チャンスボタンランプ138)の制御を行うための駆動回路420と、遮蔽装置246の駆動制御を行うための駆動回路432と、遮蔽装置246の現在位置を検出する遮蔽装置センサ430と、チャンスボタン136の押下を検出するチャンスボタン検出センサ426と、遮蔽装置センサ430やチャンスボタン検出センサ426からの検出信号を基本回路402に出力するセンサ回路428と、CPU404からの信号に基づいてROM406に記憶された画像データ等を読み出してVRAM436のワークエリアを使用して表示画像を生成して装飾図柄表示装置110に画像を表示するVDP434(ビデオ・ディスプレイ・プロセッサー)と、を接続している。
次に、パチンコ機100の第2副制御部500について説明する。第2副制御部500は、第1副制御部400が送信した制御コマンドを入力インタフェースを介して受信し、この制御コマンドに基づいて第2副制御部500の全体を制御する基本回路502を備えており、この基本回路502は、CPU504と、一時的にデータを記憶するためのRAM508と、各種デバイスの入出力を制御するためのI/O510と、時間や回数等を計測するためのカウンタタイマ512を搭載している。基本回路502のCPU504は、水晶発振器514が出力する所定周期のクロック信号をシステムクロックとして入力して動作し、第2副制御部500の全体を制御するための制御プログラム及びデータ、画像表示用のデータ等が記憶されたROM506が設けられている。
また、基本回路502には、演出可動体224の駆動制御を行うための駆動回路516と、演出可動体224の現在位置を検出する演出可動体センサ424と、演出可動体センサ424からの検出信号を基本回路502に出力するセンサ回路518と、遊技盤用ランプ532の制御を行うための遊技盤用ランプ駆動回路530と、遊技台枠用ランプ542の制御を行うための遊技台枠用ランプ駆動回路540と、遊技盤用ランプ駆動回路530と遊技台枠用ランプ駆動回路540との間でシリアル通信による点灯制御を行うシリアル通信制御回路520と、を接続している。
<払出制御部、発射制御部、電源管理部>
次に、パチンコ機100の払出制御部600、発射制御部630、電源管理部660について説明する。
払出制御部600は、主に主制御部300が送信したコマンド等の信号に基づいて払出装置152の払出モータ602を制御すると共に、払出センサ604が出力する制御信号に基づいて賞球または貸球の払い出しが完了したか否かを検出すると共に、インタフェース部606を介して、パチンコ機100とは別体で設けられたカードユニット608との通信を行う。なお、払出制御部600と主制御部300との間の通信は一方向通信に限定されず、例えば、シリアルの双方向通信でもよい。
また、払出制御部600には、外部端子板609を接続しており、払出制御部600は、この外部端子板609を介して、外部のホールコンピュータ(図示省略)等が備える情報入力回路350に対して、主制御部300や払出制御部600が有する各種情報を出力する(詳細は後述する)。なお、ここでは、外部端子板609を主制御部300や払出制御部600と別体にする例を示したが、主制御部300または払出制御部600に内蔵してもよいし、その他の構成を採用してもよい。
発射制御部630は、払出制御部600が出力する、発射許可または停止を指示する制御信号や、球発射ハンドル134内に設けた発射強度出力回路が出力する、遊技者による球発射ハンドル134の操作量に応じた発射強度を指示する制御信号に基づいて、発射杆146および発射槌148を駆動する発射モータ632の制御や、上皿126から発射装置110に球を供給する球送り装置634の制御を行う。
電源管理部660は、パチンコ機100に外部から供給される交流電源を直流化し、所定の電圧に変換して主制御部300、第1副制御部400等の各制御部や払出装置152等の各装置に供給する。さらに、電源管理部660は、外部からの電源が断たれた後も所定の部品(例えば主制御部300のRAM308等)に所定の期間(例えば10日間)電源を供給するための蓄電回路(例えば、コンデンサ)を備えている。なお、本実施形態では、電源管理部660から払出制御部600と第2副制御部500に所定電圧を供給し、払出制御部600から主制御部300と第2副制御部500と発射制御部630に所定電圧を供給しているが、各制御部や各装置に他の電源経路で所定電圧を供給してもよい。
<外部端子板信号>
次に、図40と図41を用いて、上述の外部端子板609を介して外部に出力する外部端子板信号について説明する。なお、図40は、主基板156、払出基板170、外部端子板609、および外部装置(ホールコンピュータ)670の接続例を示した図であり、図41(a)は主基板156から出力する外部端子板信号の一例を示した図であり、図41(b)は払出基板170から出力する外部端子板信号の一例を示した図である。
<外部端子板信号3〜10>
主基板156は、図41(a)に示す8種類の外部端子板信号3〜10を出力可能に構成している。外部端子板信号10(セキュリティ情報信号)は、電源投入時や異常検出時に、所定期間(例えば、30秒間)、所定レベル(例えば、ハイレベル)の電圧を出力する信号である。ここで、セキュリティ情報信号の出力開始条件となる「電源投入時」とは、主制御部300の電圧監視回路338に入力される低電圧信号がオフになった後(電源制御部660から主制御部300に供給している電源の電圧値が所定の値(9V)に達した後)に、第1副制御部400の起動時間が経過した場合(主制御部300がカウントする副制御部起動待ちカウンタが0になった場合)が一例として挙げられる。
また、セキュリティ情報信号の出力開始条件となる「異常検出時」とは、後述する主制御部タイマ割込処理のデバイス監視処理で監視するエラーのうち、入賞に関する異常(例えば、磁気異常エラー、磁界異常エラー)や、スイッチに関する異常(例えば、スイッチレベル異常エラー、スイッチ未接続エラー)を検出した場合が一例として挙げられる。
外部端子板信号9(払出予定情報信号)は、遊技球の払出予定数を示す信号であり(詳細は後述)、外部端子板信号5〜8(大当り情報1〜4信号)は、特図変動遊技の当否判定結果に関する情報を示す信号であり、外部端子板信号4(始動口情報信号)は、始動口(第1特図始動口230、第2特図始動口232)に関する情報を示す信号であり、外部端子板信号3(図柄確定回数情報信号)は、普図や特図の図柄変動に関する情報を示す信号である。
図40に示すように、主基板156の出力端子(または入出力端子)から出力される8種類の外部端子板信号3〜10は、払出基板170と外部端子板609を介して、外部装置670(例えば、ホールコンピュータ)が備える情報入力回路350に入力される。これにより、外部装置670は、主基板157が有する各種情報を取得することが可能である。なお、この例では、外部端子板信号3〜10を主基板156の出力端子(または入出力端子)から出力する例を示したが、外部端子板信号3〜10に相当する情報を、上述の出力インターフェイスを介して、主基板156から払出基板170に制御コマンドとして出力してもよい。
また、主制御部300は、図41(a)に示すように、RAM308に1バイト長の外部出力信号情報の記憶領域を設けており、この外部出力信号情報のBit0〜Bit7には、外部端子板信号3〜10に対応する情報がそれぞれ割り当てられている。例えば、外部出力信号情報の値が10000000B(Bは2進数)の場合、外部端子板信号10に対応するセキュリティ情報が1、その他の外部端子板信号3〜9に対応する図柄確定回数情報、始動口情報、大当り情報1〜4、および払出予定情報が0であることを示している。
<外部端子板信号1、2>
払出基板170は、図41(b)に示す8種類の外部端子板信号1〜2、CR遊技機READY信号、CR遊技機貸出完了信号、払出エラーLED1〜4信号を出力可能に構成している。外部端子板信号1(払出信号)は、遊技球の払出数(払出完了数)を示す信号であり(詳細は後述)、外部端子板信号2(扉開放信号)は、前面枠扉106の開放状態を示す信号であり、CR遊技機READY信号は、遊技が可能な状態であるか否かを示す信号であり、CR遊技機貸出完了信号は、後述するEXS信号であり、払出しエラーLED1〜4信号は、後述する払出報知用LEDの点灯/消灯状態を示す信号である。
図40に示すように、払出基板170の出力端子(または入出力端子)から出力される2種類の外部端子板信号1〜2は、外部端子板609を介して、外部装置670(例えば、ホールコンピュータ)が備える情報入力回路350に入力される。これにより、外部装置670は、払出基板170が有する各種情報を取得することが可能である。
また、払出制御部600は、図41(b)に示すように、RAMに1バイト長の外部出力信号情報の記憶領域を設けており、この外部出力信号情報のBit0〜Bit7には、外部端子板信号1〜2、CR遊技機READY信号、CR遊技機貸出完了信号、払出しエラーLED1〜4信号に対応する情報がそれぞれ割り当てられている。例えば、外部出力信号情報の値が00000001B(Bは2進数)の場合、外部端子板信号1に対応する払出情報が1、その他の外部端子板信号2に対応する扉開放情報、CR遊技機READY信号に対応する情報、CR遊技機貸出完了信号に対応する情報、および払出しエラーLED1〜4信号に対応する情報が0であることを示している。
<外部端子板信号の他の接続例>
次に、図42を用いて、外部端子板信号の他の接続例について説明する。図42(a)は、上記図40に示した接続例に対して、主基板と払出基板の配置を逆にした接続例である。この例では、払出基板170の出力端子(または入出力端子)から出力される2種類の外部端子板信号1〜2は、主基板156と外部端子板609を介して、外部装置670が備える情報入力回路350に入力される。また、主基板156の出力端子(または入出力端子)から出力される8種類の外部端子板信号3〜10は、(払出基板170を介することなく)外部端子板609を介して、外部装置670が備える情報入力回路350に入力される。
このような構成とすれば、払出基板170に何らかの異常が生じた場合でも、払出基板170を介さない8種類の外部端子板信号3〜10を主基板156から外部装置670に出力することが可能である。このため、例えば、払出基板170の異常により外部端子板信号1(払出情報信号)を外部装置670に出力することができなくても、主基板156が正常に動作していれば、主基板156から外部端子板信号9(払出予定情報信号)を外部装置670に出力することができ、遊技媒体の払出数に関する情報を外部装置670に確実に伝えることが可能となる。
また、図42(b)は、主基板156と払出基板170の両方を直接、外部端子板609に接続した接続例である。この例では、払出基板170の出力端子(または入出力端子)から出力される2種類の外部端子板信号1〜2は、(主基板156を介することなく)外部端子板609を介して、外部装置670が備える情報入力回路350に入力される。また、主基板156の出力端子(または入出力端子)から出力される8種類の外部端子板信号3〜10は、(払出基板170を介することなく)外部端子板609を介して、外部装置670が備える情報入力回路350に入力される。
このような構成とすれば、払出基板170に何らかの異常が生じた場合でも、払出基板170を介さない8種類の外部端子板信号3〜10を主基板156から外部装置670に出力することが可能であるとともに、主基板156に何らかの異常が生じた場合でも、主基板156を介さない2種類の外部端子板信号1〜2を払出基板170から外部装置670に出力することが可能である。
このため、例えば、払出基板170の異常により外部端子板信号1(払出情報信号)を外部装置670に出力することができなくても、主基板156が正常に動作していれば、主基板156から外部端子板信号9(払出予定情報信号)を外部装置670に出力することができ、また、主基板156の異常により外部端子板信号9(払出予定情報信号)を外部装置670に出力することができなくても、払出基板170が正常に動作していれば、払出基板170から外部端子板信号1(払出情報信号)を外部装置670に出力することができ、遊技媒体の払出数に関する情報を外部装置670に確実に伝えることが可能となる。
<主制御部300と払出制御部600のシリアル通信>
次に、図43を用いて、主制御部300と払出制御部600のシリアル通信について説明する。なお、同図は、メイン側マイコンと払出側マイコンの接続態様を示したブロック図である。
上述のとおり、主制御部300と払出制御部600は双方向の通信が可能に構成されており、本実施形態では、主制御部300の基本回路302(メイン側マイコン)と、払出制御部600の基本回路610(払出側マイコン)をシリアル通信線612で接続している。シリアル通信線612のうちの一方の通信線612aは、主制御部300の送信端子と払出制御部600の受信端子に接続され、主制御部300が払出制御部600にコマンド等の信号を送信するために用いられる通信線である。また、シリアル通信線612のうちの他方の通信線612bは、主制御部300の受信端子と払出制御部600の送信端子に接続され、払出制御部600が主制御部300にコマンド等の信号を送信するために用いられる通信線である。
メイン側マイコン302と払出側マイコン610は、外部のI/Oと非同期シリアル通信を行うためのシリアル通信回路をそれぞれ備えており、主制御部300側のシリアル通信回路には、送受信が可能な1つの送受信用チャネルと、受信のみが可能な3つの受信専用チャネルが準備されている。本実施形態では、主制御部300は、4つのチャネルのうちの送受信用チャネルを用いて払出制御部600との非同期シリアル通信を実現している。なお、主制御部300と払出制御部600の間の通信フォーマットは、非同期シリアル通信に限定されるものではなく、例えば、調歩同期式シリアル通信やクロック同期式シリアル通信等の通信フォーマットを適用してもよいし、パラレル通信等、シリアル通信以外の通信フォーマットを適用してもよい。
また、メイン側マイコン302と払出側マイコン610は、ステータスレジスタ、受信データレジスタ、送信レジスタ等を含むシリアル通信関連レジスタ302a、610aをそれぞれ備えている。送信側のマイコンは、送信したいデータを送信データレジスタにセットすることで、受信側のマイコンにデータを送信可能であり、送信後に、ステータスレジスタに含まれる送信完了フラグを参照することで、データが送信中であるか、データの送信が完了したかのいずれかを検出可能である。
また、受信側のマイコンは、受信割込み等を契機としてステータスレジスタを参照し、ステータスレジスタに含まれる受信ビットがONのときに、受信データレジスタからデータを取り込むことで、送信側のマイコンからデータを受信可能である。なお、本実施形態では、メイン側マイコン302と払出側マイコン610のシリアル通信回路に送信FIFO(最大64バイト)と受信FIFO(最大8バイト)を備えており、送信FIFOに予め定めたバイト数の送信データがセットされたときに、当該送信データが受信側マイコンに送信され、受信FIFOに少なくとも1バイトの受信データがセットされたときに、当該受信データが受信可能である。
<主制御部メイン処理>
次に、図44を用いて、主制御部300のCPU304が実行する主制御部メイン処理について説明する。なお、同図は主制御部メイン処理の流れを示すフローチャートである。
上述したように、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けている。この起動信号を入力した基本回路302のCPU304は、リセット割込によりリセットスタートしてROM306に予め記憶している制御プログラムに従ってに示す主制御部メイン処理を実行する。
ステップS101では、初期設定1を行う。この初期設定1では、CPU304のスタックポインタ(SP)へのスタック初期値の設定(仮設定)、割込マスクの設定、I/O310の初期設定、RAM308に記憶する各種変数の初期設定、WDT314への動作許可及び初期値の設定等を行う。なお、本実施形態では、WDT314に、初期値として32.8msに相当する数値を設定し、RAM308に設けたマスク情報に初期値(例えば、11111111B(FFH))を設定する。また、後述する通信確認コマンドの初期値として25(約100msの時間に相当する数値)を設定する。
ステップS103では、低電圧信号がオンであるか否か、すなわち、電圧監視回路338が、電源制御部660から主制御部300に供給している電源の電圧値が所定の値(本実施形態では9V)未満である場合に電圧が低下したことを示す低電圧信号を出力しているか否かを監視する。そして、低電圧信号がオンの場合(CPU304が電源の遮断を検知した場合)にはステップS103の処理を繰り返し実行し、低電圧信号がオフの場合(CPU304が電源の遮断を検知していない場合)にはステップS107に進む。なお、電源が投入された直後で未だ上記所定の値(9V)に達しない場合にも、供給電圧がその所定の値以上になるまで、ステップS103の処理を繰り返し実行する。
ステップS105では、初期設定2を行う。この初期設定2では、後述する主制御部タイマ割込処理を定期毎に実行するための周期を決める数値をカウンタタイマ312に設定する処理、I/O310の所定の出力ポート(例えば試験用出力ポート、第1副制御部400への出力ポート)からクリア信号を出力する処理、RAM308への書き込みを許可する設定等を行う。
ステップS107では、電源の遮断前(電断前)の状態に復帰するか否かの判定を行い、電断前の状態に復帰しない場合(主制御部300の基本回路302を初期状態にする場合)には初期化処理(ステップS115)に進む。
具体的には、最初に、電源基板に設けたRWMクリアスイッチ180を遊技店の店員などが操作した場合に送信されるRAMクリア信号がオン(操作があったことを示す)であるか否か、すなわちRAMクリアが必要であるか否かを判定し、RAMクリア信号がオンの場合(RAMクリアが必要な場合)には、基本回路302を初期状態にすべくステップS115に進む。一方、RAMクリア信号がオフの場合(RAMクリアが必要でない場合)には、RAM308に設けた電源ステータス記憶領域に記憶した電源ステータスの情報を読み出し、この電源ステータスの情報がサスペンドを示す情報であるか否かを判定する。
そして、電源ステータスの情報がサスペンドを示す情報でない場合には、基本回路302を初期状態にすべくステップS115に進み、電源ステータスの情報がサスペンドを示す情報である場合には、RAM308の所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算することによりチェックサムを算出し、算出したチェックサムの結果が特定の値(例えば0)であるか否か(チェックサムの結果が正常であるか否か)を判定する。そして、チェックサムの結果が特定の値(例えば0)の場合(チェックサムの結果が正常である場合)には、その後の処理を遅延させるべくステップS109に進んでから、電断前の状態に復帰すべくステップS111に進む。チェックサムの結果が特定の値(例えば0)以外である場合(チェックサムの結果が異常である場合)には、パチンコ機100を初期状態にすべくステップS115に進む。同様に電源ステータスの情報が「サスペンド」以外の情報を示している場合にもステップS115に進む。
ステップS109では、遅延処理を実行する。詳細は後述するが、この遅延処理では、第1副制御部400の起動を待つための処理等を行う。ステップS111では、復電時処理を行う。この復電時処理では、電断時にRAM308に設けられたスタックポインタ退避領域に記憶しておいたスタックポインタの値を読み出し、スタックポインタに再設定(本設定)する。また、電断時にRAM308に設けられたレジスタ退避領域に記憶しておいた各レジスタの値を読み出し、各レジスタに再設定した後、割込許可の設定を行う。以降、CPU304が、再設定後のスタックポインタやレジスタに基づいて制御プログラムを実行する結果、パチンコ機100は電源断時の状態に復帰する。すなわち、電断直前にタイマ割込処理(後述)に分岐する直前に行った(ステップS121内の所定の)命令の次の命令から処理を再開する。また、主制御部300における基本回路302に搭載されているRAM308には、送信情報記憶領域が設けられている。このステップS111では、その送信情報記憶領域に、復電コマンドをセットする。この復電コマンドは、電源断時の状態に復帰したことを表すコマンドであり、後述する、主制御部300のタイマ割込処理におけるステップS233において、第1副制御部400へ送信される。
ステップS113では、WDT314による時間計測を開始する。ステップS115では、初期化処理を行う。この初期化処理では、割込禁止の設定、スタックポインタへのスタック初期値の設定(本設定)、RAM308の全ての記憶領域の初期化などを行う。さらにここで、主制御部300のRAM308に設けられた送信情報記憶領域に正常復帰コマンドをセットする。この正常復帰コマンドは、主制御部300の初期化処理(ステップS115)が行われたことを表すコマンドであり、復電コマンドと同じく、主制御部300のタイマ割込処理におけるステップS233において、第1副制御部400へ送信される。
ステップS117では、上記ステップS109と同じ遅延処理を実行する(詳細は後述)。ステップS119では、WDT314のカウンタの値をクリアし、WDT314による時間計測を開始する。
ステップS121では、割込禁止の設定を行った後、基本乱数初期値更新処理を行う。この基本乱数初期値更新処理では、普図当選乱数カウンタ、および特図乱数値カウンタの初期値をそれぞれ生成するための2つの初期値生成用乱数カウンタと、普図タイマ乱数値、および特図タイマ乱数値それぞれを生成するための2つの乱数カウンタを更新する。例えば、普図タイマ乱数値として取り得る数値範囲が0〜100とすると、RAM308に設けた普図タイマ乱数値を生成するための乱数カウンタ記憶領域から値を取得し、取得した値に1を加算してから元の乱数カウンタ記憶領域に記憶する。このとき、取得した値に1を加算した結果が101であれば0を元の乱数カウンタ記憶領域に記憶する。他の初期値生成用乱数カウンタ、乱数カウンタもそれぞれ同様に更新する。なお、初期値生成用乱数カウンタは、後述するステップS207でも更新する。なお、ステップS121では、基本乱数初期値更新処理の他に後述する基本乱数更新処理を行ってもよいし、基本乱数更新処理のみを行ってもよい。
また、ステップS123では、コマンド送信処理を行う。このコマンド送信処理では、各種のコマンドをシリアル通信線612を介して払出制御部600に送信する。主制御部300は、所定の周期ごとに開始するタイマ割込処理を行っている間を除いて、ステップS121、S123の処理を繰り返し実行する。
<遅延処理>
次に、図45を用いて、主制御部300のCPU304が実行する遅延処理について説明する。なお、同図は主制御部メイン処理における遅延処理の流れを示すフローチャートである。
ステップS131では、I/O310の所定の出力ポートからクリア信号を送信する処理を実行する。ステップS133では、第1副制御部400の起動を待つ周期を決める副制御部起動待ちカウンタを初期設定(例えば90を設定)する。ステップS135では、割込み機能限定カウンタを初期設定(例えば250を設定)する。割込み機能限定カウンタは、4ms毎のタイマ割込み処理で減算される。
ステップS137では、基本乱数初期値更新処理を実行する(詳細は後述)。なお、ステップS137では、基本乱数初期値更新処理の他に後述する基本乱数更新処理を行ってもよいし、基本乱数更新処理のみを行ってもよい。ステップS139では、コマンド送信処理を行い、これにより各種のコマンドが第1副制御部400に送信される。
ステップS141では、割込み機能限定カウンタが0であるか否かの判定を行い、割込み機能限定カウンタが0以外の場合、ステップS137の処理に戻る。一方、割込み機能限定カウンタが0の場合、すなわち、ステップS135において割込み機能限定カウンタに250が設定され、4ms毎のタイマ割込み処理で減算されて1000ms=1秒経過した場合、ステップS143に進む。
ステップS143では、副制御部起動待ちカウンタを1減算する。ステップS145では、副制御部起動待ちカウンタが0であるか否かの判定を行い、副制御部起動待ちカウンタが0以外の場合、ステップS135に戻る。一方、副制御部起動待ちカウンタが0の場合、すなわち、ステップS133において副制御部起動待ちカウンタに90が設定され、90秒経過した場合、ステップS147に進む。ステップS147では、その他の処理を実行する。
<主制御部タイマ割込処理>
次に、図46を用いて、主制御部300のCPU304が実行する主制御部タイマ割込処理について説明する。なお、同図は主制御部タイマ割込処理の流れを示すフローチャートである。
主制御部300は、所定の周期(本実施形態では約4msに1回)でタイマ割込信号を発生するカウンタタイマ312を備えており、このタイマ割込信号を契機として主制御部タイマ割込処理を所定の周期で開始する。
ステップS201では、タイマ割込開始処理を行う。このタイマ割込開始処理では、CPU304の各レジスタの値をスタック領域に一時的に退避する処理などを行う。ステップS203では、WDT314のカウント値が初期設定値(本実施形態では32.8ms)を超えてWDT割込が発生しないように(処理の異常を検出しないように)、WDTを定期的に(本実施形態では、主制御部タイマ割込の周期である約4msに1回)リスタートを行う。
ステップS205では、入力ポート状態更新処理を行う。この入力ポート状態更新処理では、I/O310の入力ポートを介して、上述の前面枠扉開放センサや内枠開放センサや下皿満タンセンサ、各種の球検出センサを含む各種センサ320の検出信号を入力して検出信号の有無を監視し、RAM308に各種センサ320ごとに区画して設けた信号状態記憶領域に記憶する。球検出センサの検出信号を例にして説明すれば、前々回のタイマ割込処理(約4ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた前回検出信号記憶領域から読み出し、この情報をRAM308に各々の球検出センサごとに区画して設けた前々回検出信号記憶領域に記憶し、前回のタイマ割込処理(約4ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた今回検出信号記憶領域から読み出し、この情報を上述の前回検出信号記憶領域に記憶する。また、今回検出した各々の球検出センサの検出信号を、上述の今回検出信号記憶領域に記憶する。
また、ステップS205では、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域の各記憶領域に記憶した各々の球検出センサの検出信号の有無の情報を比較し、各々の球検出センサにおける過去3回分の検出信号の有無の情報が入賞判定パターン情報と一致するか否かを判定する。一個の遊技球が一つの球検出センサを通過する間に、約4msという非常に短い間隔で起動を繰り返すこの主制御部タイマ割込処理は何回か起動する。このため、主制御部タイマ割込処理が起動する度に、上述のステップS205では、同じ遊技球が同じ球検出センサを通過したことを表す検出信号を確認することになる。この結果、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域それぞれに、同じ遊技球が同じ球検出センサを通過したことを表す検出信号が記憶される。すなわち、遊技球が球検出センサを通過し始めたときには、前々回検出信号無し、前回検出信号有り、今回検出信号有りになる。本実施形態では、球検出センサの誤検出やノイズを考慮して、検出信号無しの後に検出信号が連続して2回記憶されている場合には、入賞があったと判定する。
主制御部300のROM306には、入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)が記憶されている。このステップS205では、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、予め定めた入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)と一致した場合に、一般入賞口226、可変入賞口234、第1特図始動口230、および第2特図始動口232への入球、または普図始動口228の通過があったと判定する。すなわち、これらの入賞口226、234やこれらの始動口230、232、228への入賞があったと判定する。例えば、一般入賞口226への入球を検出する一般入賞口センサにおいて過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致した場合には、一般入賞口226へ入賞があったと判定し、以降の一般入賞口226への入賞に伴う処理を行うが、過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致しなかった場合には、以降の一般入賞口226への入賞に伴う処理を行わずに後続の処理に分岐する。
なお、主制御部300のROM306には、入賞判定クリアパターン情報(本実施形態では、前々回検出信号有り、前回検出信号無し、今回検出信号無しであることを示す情報)が記憶されている。入賞が一度あったと判定した後は、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、その入賞判定クリアパターン情報に一致するまで入賞があったとは判定せず、入賞判定クリアパターン情報に一致すれば、次からは上記入賞判定パターン情報に一致するか否かの判定を行う。
ステップS207およびステップS209では、基本乱数初期値更新処理および基本乱数更新処理を行う。これらの基本乱数初期値更新処理および基本乱数更新処理では、上記ステップS115で行った初期値生成用乱数カウンタの値の更新を行い、次に主制御部300で使用する、普図当選乱数値、特図1乱数値、および特図2乱数値をそれぞれ生成するための2つの乱数カウンタを更新する。例えば、普図当選乱数値として取り得る数値範囲が0〜100とすると、RAM308に設けた普図当選乱数値を生成するための乱数カウンタ記憶領域から値を取得し、取得した値に1を加算してから元の乱数カウンタ記憶領域に記憶する。このとき、取得した値に1を加算した結果が101であれば0を元の乱数カウンタ記憶領域に記憶する。また、取得した値に1を加算した結果、乱数カウンタが一周していると判定した場合にはそれぞれの乱数カウンタに対応する初期値生成用乱数カウンタの値を取得し、乱数カウンタの記憶領域にセットする。
例えば、0〜100の数値範囲で変動する普図当選乱数値生成用の乱数カウンタから値を取得し、取得した値に1を加算した結果が、RAM308に設けた所定の初期値記憶領域に記憶している前回設定した初期値と等しい値(例えば7)である場合に、普図当選乱数値生成用の乱数カウンタに対応する初期値生成用乱数カウンタから値を初期値として取得し、普図当選乱数値生成用の乱数カウンタにセットすると共に、普図当選乱数値生成用の乱数カウンタが次に1周したことを判定するために、今回設定した初期値を上述の初期値記憶領域に記憶しておく。また、普図当選乱数値生成用の乱数カウンタが次に1周したことを判定するための上述の初期値記憶領域とは別に、特図乱数生成用の乱数カウンタが1周したことを判定するための初期値記憶領域をRAM308に設けている。なお、本実施形態では特図1の乱数値を取得するためのカウンタと特図2の乱数値を取得するためのカウンタとを別に設けたが、同一のカウンタを用いてもよい。
ステップS211では、演出乱数更新処理を行う。この演出乱数更新処理では、主制御部300で使用する演出用乱数値を生成するための乱数カウンタを更新する。ステップS212では、割込み機能限定カウンタが0であるか否かの判定を行い、割込み機能限定カウンタが0以外の場合、ステップS213に進む。一方、割込み機能限定カウンタが0の場合、ステップS214に進む。ステップS213では、割込み機能限定カウンタを1減算し、その後、ステップS215〜S235の処理を行うことなく、ステップS239に進む。
ステップS214では、特定異常検出フラグ(詳細は後述)がONであるか否かの判定を行い、特定異常検出フラグがONの場合、ステップS215〜S235の処理を行うことなく、ステップS239に進む。一方、特定異常検出フラグがOFFの場合、ステップS215に進む。
ステップS215では、タイマ更新処理を行う。このタイマ更新処理では、普通図柄表示装置210に図柄を変動・停止表示する時間を計時するための普図表示図柄更新タイマ、第1特別図柄表示装置212に図柄を変動・停止表示する時間を計時するための特図1表示図柄更新タイマ、第2特図表示装置214に図柄を変動・停止表示する時間を計時するための特図2表示図柄更新タイマ、所定の入賞演出時間、所定の開放時間、所定の閉鎖時間、所定の終了演出期間などを計時するためのタイマなどを含む各種タイマを更新する。
ステップS216では、入賞口カウンタ更新処理を行う。この入賞口カウンタ更新処理では、入賞口226、234や始動口230、232、228に入賞があった場合に、RAM308に各入賞口ごと、あるいは各始動口ごとに設けた賞球数記憶領域の値を読み出し、1を加算して、元の賞球数記憶領域に設定する。
また、ステップS217では、入賞受付処理を行う。詳細は後述するが、この入賞受付処理では、一般入賞口226、第1特図始動口230、第2特図始動口232、普図始動口228、および可変入賞口234への入賞があったか否かを判定し、入賞があった場合に、RAM308に入賞口および始動口毎に設けた賞球数記憶領域に、対応する賞球数を記憶する。ステップS219では、シリアルコマンド管理処理を行う。詳細は後述するが、このシリアルコマンド管理処理では、払出制御部600とのシリアル通信の管理等を行う。
ステップS221では、普図状態更新処理を行う。この普図状態更新処理は、普図の状態に対応する複数の処理のうちの1つの処理を行う。例えば、普図変動表示の途中(上述する普図表示図柄更新タイマの値が1以上)における普図状態更新処理では、普通図柄表示装置210を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、普通図柄表示装置210は普図の変動表示(普図変動遊技)を行う。
また、普図変動表示時間が経過したタイミング(普図表示図柄更新タイマの値が1から0になったタイミング)における普図状態更新処理では、当りフラグがオンの場合には、当り図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行い、当りフラグがオフの場合には、外れ図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行う。また、主制御部300のRAM308には、普図状態更新処理に限らず各種の処理において各種の設定を行う設定領域が用意されている。ここでは、上記点灯・消灯駆動制御を行うとともに、その設定領域に普図停止表示中であることを示す設定を行う。この制御を行うことで、普通図柄表示装置210は、当り図柄(普図A)および外れ図柄(普図B)いずれか一方の図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)、その表示を維持するためにRAM308に設けた普図停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された図柄が所定期間停止表示され、普図変動遊技の結果が遊技者に報知される。
また、普図変動遊技の結果が当りであれば、後述するように、普図当りフラグがオンされる。この普図当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理では、RAM308の設定領域に普図作動中を設定するとともに、所定の開放期間(例えば2秒間)、第2特図始動口232の羽根部材232aの開閉駆動用のソレノイド(332)に、羽根部材232aを開放状態に保持する信号を出力するとともに、RAM308に設けた羽根開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。
また、所定の開放期間が終了したタイミング(羽根開放時間管理用タイマの値が1から0になったタイミング)で開始する普図状態更新処理では、所定の閉鎖期間(例えば500m秒間)、羽根部材の開閉駆動用のソレノイド332に、羽根部材を閉鎖状態に保持する信号を出力するとともに、RAM308に設けた羽根閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。
また、所定の閉鎖期間が終了したタイミング(羽根閉鎖時間管理用タイマの値が1から0になったタイミング)で開始する普図状態更新処理では、RAM308の設定領域に普図非作動中を設定する。さらに、普図変動遊技の結果が外れであれば、後述するように、普図外れフラグがオンされる。この普図外れフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理でも、RAM308の設定領域に普図非作動中を設定する。普図非作動中の場合における普図状態更新処理では、何もせずに次のステップS223に移行するようにしている。
ステップS223では、普図関連抽選処理を行う。この普図関連抽選処理では、普図変動遊技および第2特図始動口232の開閉制御を行っておらず(普図の状態が非作動中)、且つ、保留している普図変動遊技の数が1以上である場合に、上述の乱数値記憶領域に記憶している普図当選乱数値に基づいた乱数抽選により普図変動遊技の結果を当選とするか、不当選とするかを決定する当り判定をおこない、当選とする場合にはRAM308に設けた当りフラグにオンを設定する。不当選の場合には、当りフラグにオフを設定する。また、当り判定の結果に関わらず、次に上述の普図タイマ乱数値生成用の乱数カウンタの値を普図タイマ乱数値として取得し、取得した普図タイマ乱数値に基づいて複数の変動時間のうちから普図表示装置210に普図を変動表示する時間を1つ選択し、この変動表示時間を、普図変動表示時間として、RAM308に設けた普図変動時間記憶領域に記憶する。なお、保留している普図変動遊技の数は、RAM308に設けた普図保留数記憶領域に記憶するようにしており、当り判定をするたびに、保留している普図変動遊技の数から1を減算した値を、この普図保留数記憶領域に記憶し直すようにしている。また当り判定に使用した乱数値を消去する。
ステップS224では、特図先読み制御処理を行う。この特図先読み制御処理では、特図当選乱数値などの先読みを行う。次いで、特図1および特図2それぞれについての特図状態更新処理を行うが、最初に、特図2についての特図状態更新処理(特図2状態更新処理)を行う(ステップS225)。この特図2状態更新処理は、特図2の状態に応じて、次の8つの処理のうちの1つの処理を行う。例えば、特図2変動表示の途中(上述の特図2表示図柄更新タイマの値が1以上)における特図2状態更新処理では、第2特別図柄表示装置214を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、第2特別図柄表示装置214は特図2の変動表示(特図2変動遊技)を行う。また、コマンド設定送信処理(ステップS233)で回転開始設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶してから処理を終了する。
また、主制御部300のRAM308には、15R大当りフラグ、2R大当りフラグ、第1小当りフラグ、第2小当りフラグ、第1はずれフラグ、第2はずれフラグ、特図確率変動フラグ、および普図確率変動フラグそれぞれのフラグが用意されている。特図2変動表示時間が経過したタイミング(特図2表示図柄更新タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、15R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグもオンの場合には特図A、15R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグはオンの場合には特図B、2R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグもオンの場合には特図C、2R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグはオンの場合には特図D、2R大当りフラグはオン、特図確率変動フラグもオン、普図確率変動フラグはオンの場合には特図E、2R大当りフラグはオン、特図確率変動フラグはオフ、普図確率変動フラグもオフの場合には特図F、第1小当りフラグがオンの場合には特図G、第2小当りフラグがオンの場合には特図H、第1はずれフラグがオンの場合には特図I、第2はずれフラグがオンの場合には特図Iそれぞれの態様となるように、第2特別図柄表示装置214を構成する7セグメントLEDの点灯・消灯駆動制御を行い、RAM308の設定領域に特図2停止表示中であることを表す設定を行う。この制御を行うことで、第2特別図柄表示装置214は、15R特別大当り図柄(特図A)、15R大当り図柄(特図B)、突然確変図柄(特図C)、突然時短図柄(特図D)、隠れ確変図柄(特図E)、突然通常図柄(特図F)、第1小当り図柄(特図G)、第2小当り図柄(特図H)、第1はずれ図柄(特図I)、および第2はずれ図柄(特図J)のいずれか一つの図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)その表示を維持するためにRAM308に設けた特図2停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された特図2が所定期間停止表示され、特図2変動遊技の結果が遊技者に報知される。また、RAM308に設けられた時短回数記憶部に記憶された時短回数が1以上であれば、その時短回数から1を減算し、減算結果が1から0となった場合は、特図確率変動中(詳細は後述)でなければ、時短フラグをオフする。さらに、大当り遊技中(特別遊技状態中)にも、時短フラグをオフする。
また、コマンド設定送信処理(ステップS233)で回転停止設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶するとともに、変動表示を停止する図柄が特図2であることを示す特図2識別情報を、後述するコマンドデータに含める情報としてRAM308に追加記憶してから処理を終了する。
また、特図2変動遊技の結果が大当りであれば、後述するように、大当りフラグがオンされる。この大当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理では、RAM308の設定領域に特図2作動中を設定するとともに、所定の入賞演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを開始することを遊技者に報知する画像を表示している期間待機するためにRAM308に設けた特図2待機時間管理用タイマの記憶領域に入賞演出期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で入賞演出設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の入賞演出期間が終了したタイミング(特図2待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の開放期間(例えば29秒間、または可変入賞口234に所定球数(例えば10球)の遊技球の入賞を検出するまで)可変入賞口234の扉部材234aの開閉駆動用のソレノイド(332)に、扉部材234aを開放状態に保持する信号を出力するとともに、RAM308に設けた扉開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で大入賞口開放設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の開放期間が終了したタイミング(扉開放時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の閉鎖期間(例えば1.5秒間)可変入賞口234の扉部材234aの開閉駆動用のソレノイド(332)に、扉部材234aを閉鎖状態に保持する信号を出力するとともに、RAM308に設けた扉閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。また、コマンド設定送信処理(ステップS233)で大入賞口閉鎖設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、この扉部材の開放・閉鎖制御を所定回数(本実施例では15ラウンドか2ラウンド)繰り返し、終了したタイミングで開始する特図2状態更新処理では、所定の終了演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを終了することを遊技者に報知する画像を表示している期間待機するように設定するためにRAM308に設けた演出待機時間管理用タイマの記憶領域に演出待機期間を示す情報を設定する。また、普図確率変動フラグがオンに設定されていれば、この大当り遊技の終了と同時に、RAM308に設けられた時短回数記憶部に時短回数100回をセットするともに、RAM308に設けられた時短フラグをオンする。なお、その普図確率変動フラグがオフに設定されていれば、時短回数記憶部に時短回数をセットすることもなく、また時短フラグをオンすることもない。ここにいう時短とは、特図変動遊技における大当りを終了してから、次の大当りを開始するまでの時間を短くするため、パチンコ機が遊技者にとって有利な状態になることをいう。この時短フラグがオンに設定されていると、普図高確率状態である。普図高確率状態では普図低確率状態に比べて、普図変動遊技に大当りする可能性が高い。また、普図高確率状態の方が、普図低確率状態に比べて普図変動遊技の変動時間および特図変動遊技の変動時間は短くなる。さらに、普図高確率状態では普図低確率状態に比べて、第2特別始動口232の一対の羽根部材232aの1回の開放における開放時間が長くなりやすい。加えて、普図高確率状態では普図低確率状態に比べて、一対の羽根部材232aは多く開きやすい。また、上述のごとく、時短フラグは、大当り遊技中(特別遊技状態中)にはオフに設定される。したがって、大当り遊技中には、普図低確率状態が維持される。これは、大当り遊技中に普図高確率状態であると、大当り遊技中に可変入賞口234に所定の個数、遊技球が入球するまでの間に第2特図始動口232に多くの遊技球が入球し、大当り中に獲得することができる遊技球の数が多くなってしまい射幸性が高まってしまうという問題があり、これを解決するためのものである。さらに、コマンド設定送信処理(ステップS233)で終了演出設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、所定の終了演出期間が終了したタイミング(演出待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、RAM308の設定領域に特図2非作動中を設定する。さらに、特図2変動遊技の結果が外れであれば、後述するように、はずれフラグがオンされる。このはずれフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理でも、RAM308の設定領域に特図2非作動中を設定する。特図2非作動中の場合における特図2状態更新処理では、何もせずに次のステップS227に移行するようにしている。
続いて、特図1についての特図状態更新処理(特図1状態更新処理)を行う(ステップS227)。この特図1状態更新処理では、特図1の状態に応じて、上述の特図2状態更新処理で説明した各処理を行う。この特図1状態更新処理で行う各処理は、上述の特図2状態更新処理で説明した内容の「特図2」を「特図1」と読み替えた処理と同一であるため、その説明は省略する。なお、特図2状態更新処理と特図1状態更新処理の順番は逆でもよい。
ステップS225およびステップS227における特図状態更新処理が終了すると、今度は、特図1および特図2それぞれについての特図関連抽選処理を行う。ここでも先に、特図2についての特図関連抽選処理(特図2関連抽選処理)を行い(ステップS229)、その後で、特図1についての特図関連抽選処理(特図1関連抽選処理)を行う(ステップS231)。これらの特図関連抽選処理についても、主制御部300が特図2関連抽選処理を特図1関連抽選処理よりも先に行うことで、特図2変動遊技の開始条件と、特図1変動遊技の開始条件が同時に成立した場合でも、特図2変動遊技が先に変動中となるため、特図1変動遊技は変動を開始しない。また、装飾図柄表示装置208による、特図変動遊技の大当り判定の結果の報知は、第1副制御部400によって行われ、第2特図始動口232への入賞に基づく抽選の抽選結果の報知が、第1特図始動口230への入賞に基づく抽選の抽選結果の報知よりも優先して行われる。
ステップS232では、デバイス監視処理を実行する。詳細は後述するが、このデバイス監視処理では、各種デバイスのエラーの有無を検出する処理などを行う。ここで、このデバイス監視処理で監視するエラーとしては、下受け皿満タンエラー(下皿満タンエラー)、払出装置エラー、払出超過エラー、不正払出エラー、払出個数スイッチエラー、主制御通信エラー、CRユニット未接続エラー、CRユニット通信エラー、磁気異常エラー、外部クロック異常エラー、磁界異常エラー、スイッチレベル異常エラー、枠開放エラー(前面枠扉開放エラー)、スイッチ未接続エラー、衝撃センサエラーなどが挙げられる。
下受け皿満タンエラーとは、下皿満タンスイッチ信号のオン状態が、メイン基板の所定の入力ポートによってタイマ割り込みでオンを1回読み込んだとき(オフ状態からオン状態に切り換わるとき)にメインから払出に出力されるものである。払出装置エラーとは、払出モータが払出要求数分の駆動を終了後(実際は+ブレーキ期間+無励磁期間経過後)の次の割り込み内で、払出数(払出個数スイッチのカウント数)が払出要求数よりも少ない場合に払出装置エラーの発生を検知するものである。1個ずつ遊技球を払い出すリトライ処理が完了することにより、当該エラー状態が解除される。
払出超過エラーとは、払出要求数に対して実際に払い出された遊技球が10個多く検知されたとき払出動作を停止するものである。この払出超過エラーは、エラー解除スイッチ168によって解除するエラーであり、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。不正払出エラーとは、払出要求が発生していない状態で遊技球の払出を検知(払出個数スイッチがカウント)したとき払出動作を停止するものである。この不正払出エラーは、エラー解除スイッチ168によって解除するエラーであり、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。
払出個数スイッチエラーとは、払出基板170に制御される遊技球の払出個数スイッチ(不図示)のエラーであり、払出個数スイッチの接続異常を検知したとき(メイン基板は関係なし)払出動作を停止するものである。この払出個数スイッチエラーは、エラー解除スイッチ168によって解除するエラーであり、スイッチの接続が正しいか確認した後、エラー解除スイッチ168を操作するか、RAMクリアスイッチ180による初期化(RAMクリア)によって当該エラー状態が解除される。主制御通信エラーとは、主制御接続確認信号のオフ状態を検知した場合、または主制御動作確認信号のオン状態を2割り込み継続して検知した場合に発生するエラーであり、メイン基板からのコマンド受信が不能になるものである。但し、払出要求数が残存している場合は、その分までは払い出す。主制御接続確認信号のオン状態を検知した場合で、かつ、主制御動作確認信号のオフ状態を2割り込み継続して検知した場合に当該エラー状態が解除される。
CRユニット未接続エラーとは、CRユニット未接続エラーが解除状態のときに、CRユニット接続信号(VL信号)のオフ状態を検知し、16ms継続した場合に発生するものであり、貸出停止(賞球の払出には影響なし)となるものである。CRユニット接続信号のON状態を検知し、16ms継続した場合に当該エラー状態が解除される。なお、エラー解除した後、CRユニットREADY信号(BRDY信号)およびCRユニット貸出要求完了確認信号(BRQ信号)がオフ状態となるまでCRユニットとの通信が無効状態になる。
ここで、CRユニットとインタフェースの接続信号関係について説明する。各種信号が、CRユニットからインタフェースを介して払出基板へと伝達される場合、CRユニット接続信号とは、CRユニット内の+18V電源からなるVL信号である。CRユニットREADY信号とは、CRユニットが貸し出しの処理中であることを伝達するBRDY信号である。CRユニット貸出要求確認信号とは、CRユニットが基本単位分25個の貸出要求と貸出指示を伝達するBRQ信号である。
CRユニット通信エラーとは、貸出要求発生前にBRQ信号のオン状態を検知した場合に発生するものである(なお、他の条件もあるが、ここでは特に関係がないため割愛する)。遊技機側から通信異常を通知した後、BRDY信号およびBRQ信号をオフ状態にすることで当該エラー状態が解除される。
磁気異常エラーとは、所定量を超える磁力を検出したとき主制御動作を停止するものである。外部クロック異常エラーとは、乱数更新用クロックに異常を検出した場合に発生するエラーである。磁界異常エラーとは、所定量を超える磁界を検出した場合に発生するエラーである。スイッチレベル異常エラーとは、入賞スイッチを検出し、1s継続した場合に発生するエラーである。枠開放エラーとは、ガラス枠または内枠の開放を検出した場合に発生するエラーである。スイッチ未接続エラーとは、入賞スイッチ(不図示)のエラーであり、入賞スイッチの接続異常を検出した場合に発生するエラーである。衝撃センサエラーとは、衝撃センサが所定量を超える衝撃を検出したとき電源断まで継続してエラーを報知するものである。
ステップS233では、コマンド設定送信処理を行い、各種のコマンド(例えば、ステップS232のデバイス監視処理で特定異常があった場合は、特定異常を示す信号)が第1副制御部400に送信される。なお、第1副制御部400に送信する出力予定情報は例えば16ビットで構成しており、ビット15はストローブ情報(オンの場合、データをセットしていることを示す)、ビット11〜14はコマンド種別(本実施形態では、基本コマンド、図柄変動開始コマンド、図柄変動停止コマンド、入賞演出開始コマンド、終了演出開始コマンド、大当りラウンド数指定コマンド、復電コマンド、RAM(登録商標)クリアコマンドなどコマンドの種類を特定可能な情報)、ビット0〜10はコマンドデータ(コマンド種別に対応する所定の情報)で構成している。
具体的には、ストローブ情報は上述のコマンド送信処理でオン、オフするようにしている。また、コマンド種別が図柄変動開始コマンドの場合であればコマンドデータに、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値、特図関連抽選処理で選択したタイマ番号などを示す情報を含み、図柄変動停止コマンドの場合であれば、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値などを含み、入賞演出コマンドおよび終了演出開始コマンドの場合であれば、特図確率変動フラグの値などを含み、大当りラウンド数指定コマンドの場合であれば特図確率変動フラグの値、大当りラウンド数などを含むようにしている。コマンド種別が基本コマンドを示す場合は、コマンドデータにデバイス情報、第1特図始動口230への入賞の有無、第2特図始動口232への入賞の有無、可変入賞口234への入賞の有無などを含む。
また、上述の回転開始設定送信処理では、コマンドデータにRAM308に記憶している、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値、特図1関連抽選処理および特図2関連抽選処理で選択したタイマ番号、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の回転停止設定送信処理では、コマンドデータにRAM308に記憶している、15R大当りフラグや2R大当りフラグの値、特図確率変動フラグの値などを示す情報を設定する。上述の入賞演出設定送信処理では、コマンドデータに、RAM308に記憶している、入賞演出期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の終了演出設定送信処理では、コマンドデータに、RAM308に記憶している、演出待機期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の大入賞口開放設定送信処理では、コマンドデータにRAM308に記憶している大当りラウンド数、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。上述の大入賞口閉鎖設定送信処理では、コマンドデータにRAM308に記憶している大当りラウンド数、特図確率変動フラグの値、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。また、このステップS233では一般コマンド特図保留増加処理も行われる。この一般コマンド特図保留増加処理では、コマンドデータにRAM308の送信用情報記憶領域に記憶している特図識別情報(特図1または特図2を示す情報)、予告情報(事前予告情報、偽事前予告情報、または事前予告無情報のいずれか)を設定する。
第1副制御部400では、受信した出力予定情報に含まれるコマンド種別により、主制御部300における遊技制御の変化に応じた演出制御の決定が可能になるとともに、出力予定情報に含まれているコマンドデータの情報に基づいて、演出制御内容を決定することができるようになる。
ステップS235では、外部出力信号設定処理を行う。詳細は後述するが、この外部出力信号設定処理では、払出基板170に向けて外部端子板信号3〜10を出力する処理等を行う。なお、上述のとおり、外部端子板信号3〜10は、払出基板170を介さずに外部端子板609に出力するように構成してもよい。
ステップS239では、低電圧信号がオンであるか否かを監視する。そして、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS243に進み、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS241に進む。
ステップS241では、タイマ割込終了処理を行う。このタイマ割込終了処理では、ステップS201で一時的に退避した各レジスタの値を元の各レジスタに設定したり、割込許可の設定などを行い、その後、主制御部メイン処理に復帰する。一方、ステップS243では、復電時に電断時の状態に復帰するための特定の変数やスタックポインタを復帰データとしてRAM308の所定の領域に退避し、入出力ポートの初期化等の電断処理を行い、その後、上述の主制御部メイン処理に復帰する。
<入賞受付処理>
次に、図47を用いて、上述の主制御タイマ割込処理における入賞受付処理(ステップS217)について説明する。なお、同図(a)は、入賞受付処理の流れを示すフローチャートであり、同図(b)は、入賞口および始動口毎に設けた賞球数記憶領域308a〜308dの構成例を示した図である。
ステップS151では、上記ステップS203における入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)と一致するか否かの判定結果を用いて、一般入賞口226、第1特図始動口230、第2特図始動口232、普図始動口228、および可変入賞口234への入賞があったか否かを判定し、入賞があった場合にはステップS152に進み、入賞が無かった場合には処理を終了する。また、ステップS152では、入賞口および始動口毎に設けた賞球数記憶領域308a〜308dに、対応する賞球数を記憶するとともに、必要に応じて各種乱数値を取得する。
例えば、一般入賞口226への入賞があった場合には、一般入賞口226に対応する所定バイト(この例では、1バイト)の一般入賞口用賞球数記憶領域308dに、一般入賞口226に対応する賞球数(例えば、10)を記憶する。また、第1特図始動口230への入賞があった場合には、第1特図始動口230に対応する所定バイト(この例では、1バイト)の第1特図始動口用賞球数記憶領域308bに、第1特図始動口230に対応する賞球数(例えば、4)を記憶する。また、第1特図始動口230に対応する保留数記憶領域が満タンでない場合、カウンタ回路318の当選用カウンタ値記憶用レジスタから値を特図1当選乱数値として取得するとともに特図1乱数値生成用の乱数カウンタから値を特図1乱数値として取得して対応する乱数値記憶領域に格納する。
また、第2特図始動口232への入賞があった場合には、第2特図始動口232に対応する所定バイト(この例では、1バイト)の第2特図始動口用賞球数記憶領域308cに、第2特図始動口232に対応する賞球数(例えば、4)を記憶する。また、第2特図始動口232に対応する保留数記憶領域が満タンでない場合、カウンタ回路318の当選用カウンタ値記憶用レジスタから値を特図2当選乱数値として取得するとともに特図2乱数値生成用の乱数カウンタから値を特図2乱数値として取得して対応する乱数値記憶領域に格納する。
また、普図始動口228への入賞があった場合、かつ普図始動口228に対応する保留数記憶領域が満タンでない場合、普図当選乱数値生成用の乱数カウンタから値を普図当選乱数値として取得して対応する乱数値記憶領域に格納する。また、可変入賞口234への入賞があった場合には、可変入賞口234に対応する所定バイト(この例では、1バイト)の可変入賞口用賞球数記憶領域308aに、可変入賞口234に対応する賞球数(例えば、15)を記憶する。
なお、入賞口や始動口の数は本実施形態の例に限定されるものではなく、例えば、可変入賞口を複数個備える場合には、各々の可変入賞口に対して上記処理と同様の処理を行えばよい。また、球検出センサは、1つの入賞口毎または1つの始動口毎に設けてもよく、複数の入賞口毎または複数の始動口毎に設けてもよい。例えば、本実施形態では、一般入賞口226を複数備えるが、各々の一般入賞口226毎に球検出センサを設けてもよいし、複数の一般入賞口226に対して1つの球検出センサを設けてもよい。また、球検出センサを複数の入賞口毎または複数の始動口毎に設けた場合、当該複数の入賞口毎または複数の始動口毎に賞球数記憶領域を設けてもよい。また、賞球数記憶領域は1バイト長(0〜15)より大きな領域でもよく、例えば、2バイト長(0〜255)の領域でもよい。
<シリアルコマンド管理処理>
次に、図48(a)を用いて、上述の主制御タイマ割込処理におけるシリアルコマンド管理処理(ステップS219)について説明する。なお、同図(a)は、シリアルコマンド管理処理の流れを示すフローチャートである。
上述のとおり、このシリアルコマンド管理処理は、上記ステップS212において割込み機能限定カウンタが0以外であると判定された場合(タイマ割込みの機能が限定されている場合)、または、上記ステップS214において特定異常検出フラグがONであると判定された場合(磁気異常エラーや磁界異常エラーなどの特定異常情報がある場合)には実行されない処理である。なお、タイマ割込みの機能が限定されている場合に当該シリアルコマンド管理処理が実行されるように構成してもよく、特定異常情報がある場合に当該シリアルコマンド管理処理が実行されるように構成してもよい。
シリアルコマンド管理処理のステップS155では、シリアルコマンド受信処理を行う。詳細は後述するが、このシリアルコマンド受信処理では、払出制御部600からコマンドを受信したか否かを判定し、コマンドを受信した場合には、当該コマンドに対応する処理を行う。ステップS156では、シリアルコマンド送信処理を行う。詳細は後述するが、このシリアルコマンド送信処理では、払出制御部600に対してコマンドを送信する処理を行う。
<シリアルコマンド受信処理>
次に、図48(b)を用いて、上述のシリアルコマンド管理処理におけるシリアルコマンド受信処理(ステップS155)について説明する。なお、同図(b)は、シリアルコマンド受信処理の流れを示すフローチャートである。
ステップS161では、払出制御部600から通信確認コマンドを受信したか否かを判定し、当該コマンドを受信した場合には、ステップS162〜S164の処理を実行することで各種情報を初期化し、当該コマンドを受信していない場合にはステップS165に進む。ステップS165では、その他のシリアルコマンド受信処理を行った後に処理を終了する。
ステップS162では、RAM308に記憶しているシリアルコマンドステータスに初期値(この例では、0)を設定し、次のステップS163では、RAM308に記憶している通信確認コマンド送信カウンタに初期値(この例では、10)を設定する。ここで、シリアルコマンドステータスは、賞球コマンドを送信可能な状態か否かを示す情報であり、当該情報が数値の0の場合には、賞球コマンドが送信可能な状態を示しており、当該情報が数値の1の場合には、賞球コマンドが送信不能な状態を示している。
また、通信確認コマンド送信カウンタは、後述するシリアルコマンド送信処理のステップS177において、通信確認コマンドを1回送信する毎に1つ減算されるカウンタであり、払出制御部600からの通信確認コマンドを正常に受信しているか否かを判定するために使用されるものである。通信確認コマンド送信コマンドの初期値として10を設定した場合、後述するシリアルコマンド送信処理のステップS178において通信確認コマンド送信カウンタが0であると判定されるのは、主制御部300が通信確認コマンドを10回送信している期間中に、払出制御部600からの通信確認コマンドを1回も受信できなかったときである。
ステップS164では、RAM308に記憶しているシリアルコマンド通信エラーフラグに0を設定し、次のステップS165で、その他のシリアルコマンド受信処理を行った後に処理を終了する。ここで、シリアルコマンド通信エラーフラグは、シリアル通信において異常が発生したか否かを示す情報であり、当該情報が数値の0の場合には、シリアル通信が正常であることを示しており、当該情報が数値の1の場合には、シリアル通信で異常が発生したことを示している。
<シリアルコマンド送信処理>
次に、図49を用いて、上述のシリアルコマンド管理処理におけるシリアルコマンド送信処理(ステップS156)について説明する。なお、同図は、シリアルコマンド送信処理の流れを示すフローチャートである。
ステップS171では、通信確認コマンド送信タイマから1を減算し、次のステップS172では、通信確認コマンド送信タイマが0であるか否か(払出制御部600に通信確認コマンドを送信してから所定の時間(本実施形態では、100ms)が経過したかどうか)を判定し、0の場合(所定の時間が経過した場合)にはステップS174以降の処理を行い、0以外の場合(所定の時間が経過した場合)にはステップS173に進む。ステップS173では、賞球コマンド設定処理を行う。詳細は後述するが、この賞球コマンド設定処理では、賞球コマンドの送信条件が成立した場合に賞球コマンドの送信準備等の処理を実行する。
ステップS174では、通信確認コマンド送信タイマに初期値(この例では、25)を設定し、次のステップS175では、上述のシリアルコマンドステータスに1(賞球コマンドが送信不能な状態)を設定する。通信確認コマンド送信タイマは、ステップS171において、主制御部タイマ割込処理の周期(本実施形態では、約4ms)毎に1つ減算されるカウンタであり、払出制御部600に通信確認コマンドを送信してから所定の時間が経過したかどうかを判定するために使用されるものである。通信確認コマンド送信タイマの初期値として25を設定した場合、ステップS172において通信確認コマンド送信タイマが0であると判定されるのは、約100ms(=4ms×25)経過後である。
なお、本実施形態では、ステップS175においてシリアルコマンドステータスに1を設定することで、通信確認コマンドを送信するタイミングでは、主制御部300から払出制御部600に賞球コマンドを送信できないように構成しているが、同タイミングで主制御部300から払出制御部600に賞球コマンドを送信できるように構成してもよい。
ステップS176では、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して払出制御部600に通信確認コマンドを送信する。ステップS177では、通信確認コマンド送信カウンタから1を減算し、次のステップS178では、通信確認コマンド送信カウンタ0であるか否か(通信確認コマンドを10回送信したかどうか)を判定し、0の場合(10回送信した場合)にはステップS179以降の処理を行い、0以外の場合(10回送信していない場合)にはステップS181に進む。
ステップS179では、通信確認コマンド送信カウンタに初期値(この例では、10)を設定し、次のステップS180では、シリアルコマンドステータスに初期値(この例では、0)を設定した後にステップS181に進む。ステップS181では、その他シリアルコマンド送信処理を行った後に処理を終了する。
<賞球コマンド設定処理>
次に、図50と図51を用いて、上述のシリアルコマンド送信処理における賞球コマンド設定処理(ステップS173)について説明する。なお、図50は、賞球コマンド設定処理の流れを示すフローチャートである。
ステップS191では、賞球コマンド送信条件が成立したか否かを判定し、成立した場合にはステップS192に進み、成立していない場合にはステップS198に進む。ここで、「賞球コマンド送信条件が成立した場合」とは、上述の入賞受付処理(ステップS216)において、第1特図始動口230、第2特図始動口232、普図始動口228、または可変入賞口234への入賞があったと判定され、かつ、シリアルコマンドステータスが0(賞球コマンドが送信可能な状態)を示している場合、などが該当する。
ステップS192では、上述の可変入賞口用賞球数記憶領域308a、第1特図始動口用賞球数記憶領域308b、第2特図始動口用賞球数記憶領域308c、および、一般入賞口用賞球数記憶領域308dに記憶された賞球数の更新を行う。本実施形態では、賞球コマンド設定処理を実行する毎に(1回の主制御部タイマ割込処理を実行する毎に)、可変入賞口用賞球数記憶領域308a→第1特図始動口用賞球数記憶領域308b→第2特図始動口用賞球数記憶領域308c→一般入賞口用賞球数記憶領域308dの順番で各々の賞球数記憶領域を参照し、当該賞球数記憶領域に記憶された賞球数が1以上であるか否かを判定する。そして、賞球数が1以上の場合、賞球数から1を減算して賞球数を更新するとともに、参照している賞球数記憶領域308a〜308dに対応する賞球コマンドを賞球コマンドテーブルから取得する。
ステップS193では、ステップS192で取得した賞球コマンドに対応する数値を送信データレジスタにセットすることで、シリアル通信線612を介して払出制御部600に賞球コマンドを送信する。
図51(a)〜(c)は、賞球数記憶領域308a〜308dの賞球数の変化の一例を示した図であり、同図(d)は、賞球コマンドテーブルの一例を示した図である。この例では、N回目(Nは正の整数)の賞球コマンド設定処理において、第1特図始動口用賞球数記憶領域308bに記憶された賞球数が2(00000010B)であったことから、第1特図始動口用賞球数記憶領域308bの賞球数から1を減算し、賞球数を2(00000010B)から1(00000001B)に更新している。また、同図(d)に示す賞球コマンドテーブルから、参照している第1特図始動口用賞球数記憶領域308bに対応する第1特図始動口用の賞球コマンド(03H)を取得し、当該第1特図始動口用の賞球コマンド(03H)を払出制御部600に送信している。
また、N+1回目の賞球コマンド設定処理において、第1特図始動口用賞球数記憶領域308bに記憶された賞球数が1(00000001B)であったことから、第1特図始動口用賞球数記憶領域308bの賞球数から1を減算し、賞球数を1(00000001B)から0(00000000B)に更新している。また、同図(d)に示す賞球コマンドテーブルから、参照している第1特図始動口用賞球数記憶領域308bに対応する第1特図始動口用の賞球コマンド(03H)を取得し、当該第1特図始動口用の賞球コマンド(03H)を払出制御部600に送信している。
また、N+2回目の賞球コマンド設定処理において、一般入賞口用賞球数記憶領域308dに記憶された賞球数が1(00000001B)であったことから、一般入賞口用賞球数記憶領域308dの賞球数から1を減算し、賞球数を1(00000001B)から0(00000000B)に更新している。また、同図(d)に示す賞球コマンドテーブルから、参照している一般入賞口用賞球数記憶領域308dに対応する一般入賞口用の賞球コマンド(0AH)を取得し、当該一般入賞口用の賞球コマンド(0AH)を払出制御部600に送信している。
なお、ここでは、1回の賞球コマンド設定処理で賞球数を1つ減算する例を示したが、1回の賞球コマンド設定処理で賞球数を2つ以上減算してもよいし、この場合、同一種類の入賞口(または始動口)の賞球数を減算してもよいし、異なる種類の入賞口(または始動口)の賞球数を減算してもよい。また、賞球数記憶領域308a〜308dの参照の順番も限定されず、例えば、賞球数が多いものから先に参照してもよく、乱数値を取得するもの(例えば、第1特図始動口213や第2特図始動口214)から先に参照してもよい。また、1回の賞球コマンド設定処理で送信する賞球コマンドの回数も1回に限定されず、2回以上であってもよい。
図50に戻って、ステップS194では、賞球数記憶領域308a〜308dの値を読み出し、各々の賞球数記憶領域308a〜308dに記憶された値を加算し、RAM308に設けた全賞球数記憶領域に記憶する。ステップS195では、ステップS194で算出した全賞球数記憶領域の値(全賞球数)が所定数(この例では、10)以上であるか否かを判定し、該当する場合にはステップS196に進み、該当しない場合にはステップS198に進む。
ステップS196では、全賞球数記憶領域の値から10を減算し、次のステップS197では、RAM308に設けた出力要求数に1を加算した後にステップS195に戻る。ステップS198では、その他の賞球コマンド設定処理を行った後に処理を終了する。
なお、この例では、ステップS195において全賞球数が所定数以上と判定された場合に、ステップS196、S197の処理を行った後に、再びステップS195の判定に戻る構成としているため、例えば、全賞球数が25の場合には、ステップS196、S197の処理が2回行われる結果、出力要求数には2が設定されることになる。しかしながら、本発明はこのような処理に限定されず、例えば、ステップS196、S197の処理を行った後に、一度、賞球コマンド設定処理を終了し、次回以降の賞球コマンド設定処理において残りの出力要求数を加算する構成としてもよい。
このような構成とした場合、先の例では、ステップS196において全賞球数が25から15に減算され、続くステップS197において出力要求数に1が設定され、次回の賞球コマンド設定処理のステップS196において全賞球数が15から5に減算され、続くステップS197において出力要求数に1が設定されることになる。
<デバイス監視処理>
次に、図52を用いて、主制御部300のCPU304が実行するデバイス監視処理について説明する。なお、同図は主制御部タイマ割込処理におけるデバイス監視処理の流れを示すフローチャートである。
ステップS251では、上述のエラーの有無を示すデバイス情報を初期設定する。ステップS253では、信号状態記憶領域に記憶した各種センサの信号状態を読み出して、上述のエラーの有無を監視し、当該エラーを検出した場合に、ステップS255に進む。一方、上述のエラーを検出しなかった場合には、当該デバイス監視処理を終了する。ステップS255では、第1副制御部400に送信すべき送信情報に、ステップS253で検出したエラーを示す異常情報(デバイス情報)を設定する。
ステップS257では、ステップS255で設定した異常情報の中に、特定異常情報があるか否かを判定し、特定異常情報がある場合に、ステップS257に進む。一方、特定異常情報がない場合に、ステップS261に進む。なお、特定異常情報は、上述のエラーについての異常情報の中から、予め設定されている1つまたは複数のエラーの異常情報のことである。なお、本実施形態では、磁気異常エラーと磁界異常エラーの異常情報を特定異常情報として予め設定するが、これに限定されるものではない。ステップS259では、特定異常検出フラグをオンにする。ステップS261では、デバイスコマンド送信要求を設定する。
<外部出力信号設定処理>
次に、図53を用いて、主制御部300のCPU304が実行する外部出力信号設定処理について説明する。なお、同図は主制御部タイマ割込処理における外部出力信号設定処理の流れを示すフローチャートである。
ステップS301では、上述の外部出力信号情報に対応する各情報(払出予定情報を除く、図柄確定回数情報、始動口情報、大当り情報1〜4、およびセキュリティ情報)に基づいて、外部出力信号情報の値を更新する。例えば、セキュリティ情報が1で、他の情報が0の場合には、外部出力信号情報の値を10000000Bに更新する。
ステップS302では、出力要求数が1以上であるか否かを判定し、該当する場合にはステップS303に進み、該当しない場合にはステップS305に進む。ステップS303では、外部出力信号情報のBit6(払出予定情報)に1をセットする。例えば、先の例では、外部出力信号情報の値を10000000Bから11000000Bに更新する。また、ステップS304では、出力要求数から1を減算してステップS305に進む。
ステップS305では、特定異常検出フラグがオンかオフかを判定し、オンの場合にはステップS306に進み、オフの場合にはステップS307に進む。ステップS306では、RAM308に設けた外部出力情報のマスク処理を行う。
図54は、ステップS306における外部出力信号情報のマスク処理の一例を説明するための図である。この例では、マスク処理前の外部出力信号情報の値が11000001B、すなわち、セキュリティ情報、払出予定情報、および図柄確定回数情報が1、その他の大当り情報1〜4、および始動口情報が0の場合を示している。また、マスク処理に用いるマスク情報の値は10000000Bであることを示している。
ここで、「マスク情報」は、外部出力信号情報と同じ1バイト長の情報であり、マスク情報のBit0〜Bit7は、それぞれ外部出力信号情報のBit0〜Bit7に対応している。ステップS306のマスク処理では、このマスク情報と外部出力信号情報の論理積(AND)を算出することによって、外部出力信号情報の一部を強制的に0に設定(マスク)できるように構成している。
主制御部300は、初期設定において、マスク情報を11111111B(初期値)に設定するが、外部出力信号設定処理のステップS305において特定異常検出フラグオンと判定した場合(特定異常情報がある場合)には、マスク情報のBit0〜7のいずれかを1から0に更新する。本実施形態では、磁気異常エラーまたは磁界異常エラーが発生している場合には、図54に示すように、マスク情報のBit0〜6を1から0に更新することでマスク情報を10000000Bに設定し、マスク処理により外部出力信号情報のBit0〜6を強制的に0に設定(マスク)する。
これにより、外部出力信号情報のBit0〜6のいずれかに1が設定されている場合、すなわち、図柄確定回数情報、始動口情報、大当り情報1〜4、および払出予定情報のいずれかに1が設定されている場合でも、当該情報は全て0にマスク(設定)され、各々の情報に対応する信号からはローレベルの信号が出力される。
図53に戻って、ステップS307では、例えば、外部出力信号情報に基づいて、払出基板170に向けて外部端子板信号3〜10を出力する処理等を行う。具体的には、外部出力信号情報のBit0に1が設定されている場合には、外部端子板信号3(図柄確定回数情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
同様に、外部出力信号情報のBit1に1が設定されている場合には、外部端子板信号4(始動口情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit2に1が設定されている場合には、外部端子板信号5(大当り情報1信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit3に1が設定されている場合には、外部端子板信号6(大当り情報2信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
また、外部出力信号情報のBit4に1が設定されている場合には、外部端子板信号7(大当り情報3信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit5に1が設定されている場合には、外部端子板信号8(大当り情報4信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
また、外部出力信号情報のBit6に1が設定されている場合には、外部端子板信号9(払出予定情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit7に1が設定されている場合には、外部端子板信号10(セキュリティ情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。なお、本例における「所定期間(各信号の出力時間)」は500msの期間に限定されるものではなく、500ms未満の期間でもよいし、500msよりも大きい期間でもよい。
<外部出力信号設定処理の変形例1>
図55は外部出力信号設定処理の変形例1を示した図である。この変形例1に係る外部出力信号設定処理では、上記図53に示した外部出力信号設定処理のステップS305〜S306の処理に替えて、ステップS305、S401、S402の処理を適用している。
具体的には、ステップS305では、特定異常検出フラグがオンかオフかを判定し、オンの場合にはステップS401に進んで外部出力信号の第一のマスク処理を行い、オフの場合にはステップS402に進んで外部出力信号の第二のマスク処理を行う。第一のマスク処理では、上記ステップS306のマスク処理と同様の処理を行うが、第二のマスク処理では、第一のマスク処理で用いるマスク情報(第一のマスク情報)とは異なるマスク情報(第二のマスク情報)を用いてマスク処理を行う。ここで、本実施例では、第一のマスク情報をRAM308の記憶領域内に設け、内容の書き換えを可能としている一方で、第2のマスク情報をROM306の記憶領域内に設け、内容の書き換えを不可能としている。
例えば、第一のマスク処理では、マスク情報のBit0〜6を1から0に更新することで、マスク情報を初期値の11111111Bから10000000Bに変更し、マスク処理により外部出力信号情報のBit0〜6を強制的に0に設定(マスク)する。一方、第二のマスク処理では、マスク情報として初期値の11111111Bをそのまま使用し、マスク処理により外部出力信号情報のBit0〜7を強制的に0に設定(マスク)しないようにする。
このような構成とすれば、条件に応じて(例えば、特定異常の有無に応じて)マスク処理を使い分けることができ、条件に適した外部信号を出力できる場合がある。
<外部出力信号設定処理の変形例2>
図56は外部出力信号設定処理の変形例2を示した図である。この変形例2に係る外部出力信号設定処理では、上記図53に示した外部出力信号設定処理のステップS305のの処理と、ステップS302〜S304の処理の順番を入れ替えている。
具体的には、ステップS305では、特定異常検出フラグがオンかオフかを判定し、オンの場合にはステップS306に進んでマスク処理を行い、オフの場合にはステップS302以降の処理に進むように構成している。
このような構成とすれば、所定の条件が成立している場合に、外部信号を出力しないように(または、外部信号を遅延させるように)することができ、例えば、特定異常がある場合には外部信号を出力しないように(または、外部信号を遅延させるように)することができる場合がある。このため、外部信号を適切なタイミングで出力できる場合がある。
<払出制御部600の処理>
次に、図57を用いて、球数制御部600のCPUが実行する処理について説明する。なお、同図(a)は、払出制御部600のメイン処理の流れを示すフローチャートであり、同図(b)は、払出制御部600のコマンド受信割込みのフローチャートである。
払出制御部600には、電源が投入されるとリセット信号を出力するリセット信号出力回路を設けている。このリセット信号を入力した払出制御部600のCPUは、リセット割込みによりリセットスタートしてROMに予め記憶している制御プログラムに従って処理を実行する。
本実施形態では、払出制御部600がリセットスタート(起動)した後に、払出制御部600から電源の供給を受けた主制御部300が、払出制御部600よりも遅れてリセットスタート(起動)するように構成している。先に起動する払出制御部600は、払出制御部メイン処理において各種初期設定を実行した後、後述するコマンド解析処理において、主制御部300からの主制御通信確認コマンドの受信待ちとなる。払出制御部600は、主制御部300から最初の主制御通信確認コマンドを受信した場合に、後述する起動処理を行うとともに、払出制御部割込み処理の処理のうち、主制御通信確認コマンドの受信までは実行が制限されている一部の処理の実行を開始する(詳細は後述)。
ステップS401では、初期設定1を行う。この初期設定1では、CPUのスタックポインタ(SP)へのスタック初期値の設定等を行う。ステップS402では、低電圧信号がオンであるか否か、すなわち、電圧監視回路が、電源管理部650から払出制御部600に供給している電源の電圧値が所定の値(本実施例では9v)未満である場合に電圧が低下したことを示す低電圧信号を出力しているか否かを監視する。そして、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS402の処理を繰り返し実行し、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS403に進む。
ステップS403では、初期設定2を行う。この初期設定2では、RAMへの書き込みを許可する設定、I/Oポートの初期設定等を行う。ステップS404では、電源の遮断前(電断前)の状態に復帰するか否かの判定を行い、電断前の状態に復帰しない場合(パチンコ機100を初期状態にする場合)にはステップS405に進み、電断前の状態に復帰する場合にはステップS406に進む。
具体的には、最初に、電源基板に設けた操作部を遊技店の店員などが操作した場合に送信されるRAMクリア信号がオン(操作があったことを示す)であるか否か、すなわちRAMクリアが必要であるか否かを判定し、RAMクリア信号がオンの場合(RAMクリアが必要な場合)には、パチンコ機100を初期状態にすべくステップS405に進む。一方、RAMクリア信号がオフの場合(RAMクリアが必要でない場合)は、RAMに設けた電源ステータス記憶領域に記憶した電源ステータスの情報を読み出し、この電源ステータスの情報がサスペンドを示す情報であるか否かを判定する。
そして、電源ステータスの情報がサスペンドを示す情報でない場合には、パチンコ機100を初期状態にすべくステップS405に進み、電源ステータスの情報がサスペンドを示す情報である場合には、RAMの所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算することによりチェックサムを算出し、算出したチェックサムの結果が特定の値(例えば0)であるか否か(チェックサムの結果が正常であるか否か)を判定する。そして、チェックサムの結果が0の場合(チェックサムの結果が正常である場合)には電断前の状態に復帰すべくステップS406に進み、チェックサムの結果が0以外である場合(チェックサムの結果が異常である場合)には、パチンコ機100を初期状態にすべくステップS405に進む。同様に電源ステータスの情報が「サスペンド」以外の情報を示している場合にもステップS405に進む。
ステップS405では、初期化処理を行う。この初期化処理では、割込み禁止の設定、スタックポインタへのスタック初期値の設定、RAMの所定の領域(例えば、全ての記憶領域)の初期化などを行う。ステップS406では、復電時処理を行う。この復電時処理では、RAMの記憶領域のうち、復電時にクリアすべき記憶領域(コマンドを格納するためのコマンドバッファ、エラー状態を記憶するためのエラーステータスなどを除く記憶領域)の初期化などを行う。
ステップS407では、初期設定3を行う。この初期設定3では、RAMに設けたエラーステータス記憶領域に記憶したエラーステータスのうち、不正払出エラー(賞球の払出要求が発生していない状態で、払出を検知した場合に基づくエラー)と払出超過エラー(入賞口の入賞に基づいて払い出される遊技球を所定の個数を超える払出を検知した場合など、払出数が予定される払出数よりも多く払い出されたことに基づくエラー)以外の情報をクリアしたり、割り込み許可の設定などを行う。
ステップS408では、主制御部300から入力したデータの中に未解析データがあるか無いかを判定し、未解析データがある場合にはステップS409でコマンド解析処理を行い、未解析データがない場合にはステップS410に進む。
ステップS410では、未送信コマンドの有無を判定する。未送信コマンドがある場合は、ステップS411に進み、そうでない場合は、ステップS412に進む。ステップS411では、コマンド出力処理を行う。このコマンド出力処理では、ステップS409のコマンド解析処理で設定したコマンドを出力する。ステップS412では、低電圧信号がオフであるか否かを監視し、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS408に戻り、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS413に進む。
ステップS413では、電断時処理を行う。この電断時処理では、RAMに設けたスタックポインタ退避領域に現在のスタックポインタの値を記憶し、上述の電源ステータス記憶領域にサスペンドを示す情報を設定する。また、RAMの所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算し、チェックサム算出用数値記憶領域に記憶している値からその加算した結果を減算した値をチェックサム(電断時チェックサム)として算出し、算出した電断時チェックサムを上述のチェックサム算出用数値記憶領域に記憶し、RAMへの書き込みを禁止する設定などを行う。
ステップS414では、低電圧信号がオンであるか否かを監視し、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS414の処理を繰返し実行して低電圧信号がオフになるのを待ち、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS401に戻り、メイン処理を最初から開始する。
次に、同図(b)を用いて、払出制御部600のコマンド受信割込みについて説明する。このコマンド受信割込みは、払出制御部600が、主制御部300が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS451では、主制御部300が出力したコマンドを未処理コマンドとしてRAMに設けたコマンド記憶領域に記憶する。
<コマンド解析処理>
次に、図57(a)を用いて、上記払出制御部メイン処理におけるコマンド解析処理(ステップS409)について説明する。なお、同図(a)は、コマンド解析処理の流れを示すフローチャートである。
ステップS501では、コマンド記憶領域に記憶された未処理コマンドを参照し、処理コマンドが主制御通信確認コマンド(主制御部300から受信した通信確認コマンド)であるか否かを判定する。判定の結果、未処理コマンドが主制御通信確認コマンドである場合には、ステップS502に進んで主制御通信確認コマンド受信時処理(詳細は後述)を行った後に処理を終了し、そうでない場合にはステップS503に進んで賞球コマンド受信時の処理を行った後に処理を終了する。
<主制御通信確認コマンド受信時処理>
次に、図57(b)を用いて、上記コマンド解析処理における主制御通信確認コマンド受信時処理(ステップS502)について説明する。なお、同図(b)は、主制御通信確認コマンド受信時処理の流れを示すフローチャートである。
ステップS551では、受信した主制御通信確認コマンドが、払出制御部500の起動後に最初に受信した主制御通信確認コマンドであるか否かを判定し、該当する場合にはステップS552に進み、該当しない場合にはステップS554に進む。ステップS552では、RAMに設けた主制御通信確認コマンド受信済みフラグをオンに設定した後に、ステップS553に進んで起動処理(詳細は後述)を実行する。
ステップS554では、主制御通信監視タイマに初期値(この例では、500)を設定し、次のステップS555では、主制御通信エラーフラグをオフに設定する。また、ステップS556では、通信確認コマンド受信フラグをオンに設定した後に処理を終了する。
<起動処理>
次に、図58(c)を用いて、上記主制御通信確認コマンド受信時処理における起動処理(ステップS553)について説明する。なお、同図(c)は、起動処理の流れを示すフローチャートである。
ステップS601では、受信した主制御通信確認コマンドが初期起動であるか否かを判定し、該当する場合にはステップS602に進み、該当しない場合にはステップS604に進む。ステップS602では、払出制御部600が復帰起動(電断前の状態に復帰する起動)であるか否かを判定し、該当する場合にはステップS603に進み、該当しない場合にはステップS604に進む。ステップS603では、RAMを初期化した後に処理を終了する。ステップS604では、払出制御部割込み処理を起動するタイマ割込みを含むすべての割込みを禁止した後に処理を終了する。
<払出制御部割込み処理>
次に、図59を参照して、払出制御部600が実行する払出制御部割込み処理について説明する。同図は、払出制御部割込み処理の流れを示したフローチャートである。払出制御部600は、所定の周期(本実施形態では2msに1回)でタイマ割り込みを発生するカウンタ・タイマを備えており、このタイマ割り込みを契機として払出制御部タイマ割り込み処理を所定の周期で開始する。
ステップS701では、レジスタ値を退避し、ステップS702では、割り込みフラグをクリアし、ステップS703では、WDTクリアおよびリスタートを行う。また、ステップS704では、受信コマンドの処理を行う。この処理では、主制御部300からのコマンド受信(例えば、賞球コマンドの受信など)の有無を判定し、受信している場合は、受信したコマンドデータを受信コマンドバッファエリアに設定する。
ステップS705では、主制御通信確認コマンドを受信済みか否かを判定する。受信済みの場合は、ステップS706に進み、そうでない場合はステップS714に進む。上述のとおり、主制御部300は払出制御部600から電源の供給を受けているため、その起動が払出制御部600より遅れる。このため、本ステップでは主制御部300が起動するまで、これ以降のステップS706〜ステップS713の処理を待機するために判定処理を行う。
ステップS706では、ポート入力処理を行う。このポート入力処理では、I/Oポートの値を取得して、各種センサの状態などを検出する。具体的には、カードユニット608からインターフェース部606を介して入力する各種信号の状態、払出センサ604から入力する球払出信号、下皿センサから入力する信号、エラー解除スイッチから入力する信号の状態などを取得して、RAMに設けた入力信号情報記憶領域に記憶する。
ステップS707では、タイマ更新処理を行う。詳細は後述するが、このタイマ更新処理では、主制御通信監視タイマや、RAMに設けた貸出要求待ちタイマおよび貸出指示待ちタイマや、払出報知用LEDの点灯/消灯時間、モータ駆動/非駆動時間などを計時するためのタイマなどを含む各種タイマを更新する。
ステップS708では、エラー管理処理を行う。詳細は後述するが、このエラー管理処理では、主制御部300との通信に異常があるか否かを監視するとともに、各種エラーが発生しているか否かを判定し、RAMに設けたエラーステータス記憶領域にエラーに関する情報を記憶する。
ステップS709では、CRユニット通信処理を行う。このCRユニット通信処理では、カードユニット608からインターフェース部606を介して入力する各種信号の状態に基づいて、カードユニット608との通信を行う。例えば、カードユニット608から遊技球の貸出要求信号を受けた場合に、後述する貸出用払出数記憶部の払出数情報に貸出要求信号に含まれる貸出要求数を加算する。
ステップS710では、払出管理処理を行う。詳細は後述するが、この払出管理処理では、払出装置552の制御などを行う。ステップS1708では、信号出力処理を行う。詳細は後述するが、この信号出力処理では、外部端子板609から外部に出力する信号の制御を行う。
ステップS712では、送信コマンド設定処理を行う。詳細は後述するが、この送信コマンド設定処理では、払出制御部600から主制御部300に送信する各種コマンドを設定する処理を行う。また、ステップS713ではポート出力処理を行う。このポート出力処理では、例えば、パチンコ機100がエラー状態になった場合に、エラーが発生していることを遊技者に報知するためのLED(例えば、パチンコ機100の上部に配設されたLED)を点灯させるとともに、エラーが解消した場合には、そのLEDを消灯させる。例えば、RAMに設けた払出超過エラーフラグがセットされている場合には、払出超過エラーが発生していることを遊技者に報知するためのLEDを点灯させるとともに、払出超過エラーフラグがクリアされた場合には、そのLEDを消灯させる。また、RAMに設けた下皿満タンエラーフラグがセットされている場合には、下皿満タンエラーが発生していることを遊技者に報知するためのLEDを点灯させるとともに、下皿満タンエラーフラグがクリアされた場合には、そのLEDを消灯させる。
ステップS714ではレジスタ値を復帰し、ステップS715では、割り込み許可設定を行った後に処理を終了する。
<タイマ更新処理>
次に、図60(a)を用いて、上述の払出制御部割込み処理におけるタイマ更新処理(ステップS707)について説明する。なお、同図(a)は、タイマ更新処理の流れを示すフローチャートである。
ステップS751では、主制御通信監視タイマが0以外であるかどうかを判定し、0以外の場合にはステップS752に進んで主制御通信監視タイマから1を減算した後にステップS753に進み、0の場合にはステップS753に進む。なお、本実施形態では、払出制御部タイマ割込み処理の周期は約2msであり、上記主制御通信確認コマンド受信時処理において主制御通信監視タイマの初期値として500を設定しているため、ステップS751において主制御通信監視タイマが0であると判定されるのは、主制御部300から通信確認コマンドを受信してから約1000ms(=約2ms×500)が経過した時である。
ステップS753では、その他のタイマ更新処理を行った後に処理を終了する。なお、その他のタイマ更新処理としては、例えば、RAMに設けた貸出要求待ちタイマおよび貸出指示待ちタイマの更新処理や、払出報知用LEDの点灯/消灯時間、モータ駆動/非駆動時間などを計時するためのタイマの更新処理などが挙げられる。
<エラー管理処理>
次に、図60(b)を用いて、上述の払出制御部割込み処理におけるタイマ更新処理(ステップS708)について説明する。なお、同図(b)は、タイマ更新処理の流れを示すフローチャートである。
ステップS801では、主制御通信監視タイマが0であるかどうかを判定し、0の場合(上述のとおり、主制御部300から通信確認コマンドを受信してから所定時間(本実施形態では、約1000ms)が経過した時)にはステップS802に進んで主制御通信エラーフラグをオンに設定した後にステップS803に進み、0以外の場合にはステップS803に進む。
ステップS803では、その他のエラー管理処理を行った後に処理を終了する。その他のエラー管理処理としては、例えば、各種エラーが発生しているか否かを判定し、RAMに設けたエラーステータス記憶領域にエラーに関する情報を記憶する処理や、ステップS802で主制御部通信エラーフラグがオンに設定された場合に、発射装置110による球の打ち出しを中止する処理などが挙げられる。
<払出管理処理>
次に、図61を用いて、上述の払出制御部割込み処理における払出管理処理(ステップS710)について説明する。なお、同図は、払出管理処理の流れを示すフローチャートである。
ステップS901では、払出センサ604から球払出信号の入力があるか無いかを判定し、該当する場合にはステップS902に進み、該当しない場合にはステップS911に進む。ステップS902では、RAMに設けた貸出用払出数記憶部の払出数情報の値が0よりも大きいか否かを判定し、大きい場合にはステップS903に進み、そうでない場合にはステップS904に進む。ステップS903では、貸出用払出数記憶部の払出数情報の値をデクリメント(1つ減算)する。
ステップS904では、上記払出用払出数記憶部の払出数情報の値が0よりも大きいか否かを判定し、大きい場合にはステップS905に進み、そうでない場合にはステップS910に進む。ステップS905では、払出用払出数記憶部の払出数情報の値をデクリメント(1つ減算)する。ステップS906では、RAMに設けた払出時外部出力用払出記憶部の払出数情報をインクリメント(1つ加算)する。
ステップS907では、払出時外部出力用払出数記憶部の払出数情報の値が10以上であるか否かを判定し、該当する場合にはステップS908に進み、該当しない場合にはステップS911に進む。ステップS908では、RAMに設けた払出時外部装置出力カウントの値をインクリメント(1つ加算)する。ステップS909では、払出時外部出力用払出数記憶部の払出数情報の値から10を減算し、減算結果を払出数情報に記憶する。ステップS910では、払出超過エラー状態と判定し、当該情報をRAMに記憶した後にステップS911に進む。
ステップS911では、払出禁止状態であるか否か、すなわち、払出超過エラー中、受皿満タンセンサ検知中、主制御部と未接続中、カードユニット608と未接続中、カードユニット608との通信異常などに該当するか否かを判定する。そして、払出禁止状態でない場合にはステップS912に進み、払出禁止状態の場合には処理を終了する。
なお、皿満タンセンサの検知中でも、払出制御を行い、払出装置と下皿をつなぐ通路まで球がいっぱいになり、払出装置が物理的に払出を行うことができない状態になったら払出動作を止めるように構成してもよい。また、皿満タンセンサの検出に基づいて、副制御部400が皿満タンの報知を行うように構成してもよい。
ステップS912では、上記貸出用払出数記憶部の払出数情報の値が0よりも大きいか否かを判定し、大きい場合にはステップS914に進み、そうでない場合にはステップS913に進む。ステップS913では、上記払出用払出数記憶部の払出数情報の値が0よりも大きいか否かを判定し、大きい場合にはステップS914に進み、そうでない場合には処理を終了する。ステップS914では、払出装置152の払出モータ602を駆動して遊技球の払出を行う。
<信号出力処理>
次に、図62を用いて、上述の払出制御部割込み処理における信号出力処理(ステップS711)について説明する。なお、同図は、信号出力処理の流れを示すフローチャートである。
ステップS951では、上記払出時外部装置出力カウンタが0より大きいか否かを判定し、該当する場合にはステップS952に進み、該当しない場合にはステップS954に進む。ステップS952では、外部端子板609に対して払出時払出数情報を示す信号(遊技球の払出完了数を示す払出信号)を出力し、ステップS953では、外部装置出力カウンタの値をデクリメント(1つ減算)する。
より具体的には、払出制御部600は、主制御部300から上述の出力予定情報および払出要求情報を受信した後、上記払出管理処理のステップS907において払出時外部出力用払出数記憶部の払出数情報の値が10以上の場合には、次のステップS908において払出時外部装置出力カウンタをインクリメントする。これにより、払出制御部600は、信号出力処理(割込み処理)のステップS952において、外部端子板609を介して情報入力回路350に払出情報信号を出力する。すなわち、払出制御部600は、払出処理において球の払出を開始した後に、遊技球の払出完了数を示す払出情報信号を外部端子板609を介して情報入力回路350に出力する。
ステップS952では、その他の信号出力処理として、例えば、外部出力信号情報に基づいて、外部端子板609に向けて外部端子板信号1〜2、CR遊技機READY信号、CR遊技機貸出完了信号、および払出しエラーLED1〜4信号を出力する処理等を行う。具体的には、外部出力信号情報のBit0に1が設定されている場合には、外部端子板信号1(払出情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
同様に、外部出力信号情報のBit1に1が設定されている場合には、外部端子板信号2(扉開放情報信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit2に1が設定されている場合には、CR遊技機READY信号(PRDY信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit3に1が設定されている場合には、CR遊技機貸出完了信号(EXS信号)として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
また、外部出力信号情報のBit4に1が設定されている場合には、払出しエラーLED1信号として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit5に1が設定されている場合には、払出しエラーLED2信号として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
また、外部出力信号情報のBit6に1が設定されている場合には、払出しエラーLED3信号として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。また、外部出力信号情報のBit7に1が設定されている場合には、払出しエラーLED4信号として第一のレベルの信号(例えば、ハイレベルの信号)を所定期間(例えば、500msの期間)だけ出力し、0が設定されている場合には第二のレベルの信号(例えば、ローレベルの信号)を出力する。
<送信コマンド処理>
次に、図63を用いて、上述の払出制御部割込み処理における送信コマンド処理(ステップS712)について説明する。なお、同図は、送信コマンド処理の流れを示すフローチャートである。
ステップS1001では、通信確認コマンド受信フラグがオンかオフかを判定し、オンの場合にはステップS1002〜S1004の処理を実行し、オフの場合にはステップS1005に進む。ステップS1002では、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に通信確認コマンドを送信する。
ステップS1003では、通信確認コマンド受信フラグをオフに設定し、次のステップS1004では、他のエラーコマンドセット処理を行った後にステップS1005に進む。ステップS1004で実行する他のエラーコマンドセット処理としては、例えば、通信確認コマンドと、主制御通信エラーコマンド以外の第二のコマンド(例えば、払出しエラーの発生を知らせるためのコマンド)の両方を送信する必要があるかどうかを判定し、必要がある場合に、通信確認コマンドに続けて第二のコマンドを送信する処理などが該当する。
ステップS1005では、主制御通信エラーフラグがオンかオフかを判定し、オンの場合にはステップS1006の処理を実行し、オフの場合には処理を終了する。ステップS1006では、送信データレジスタに主制御通信エラーコマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に主制御通信エラーコマンドを送信する。
<払出制御部600におけるエラー>
次に、払出制御部600におけるエラーについて説明する。払出制御部600におけるエラーは、賞球(または貸出)の払出しに関するエラー、主制御部300との通信に関するエラー、遊技枠状態に関するエラー、および、CRユニット(カードユニット)608に関するエラーに大別することができる。
<賞球(または貸出)の払出しに関するエラー>
賞球(または貸出)の払出しに関するエラーには、下受け皿満タンエラー、払出装置エラー、払出超過エラー、および、不正払出エラーの4種類がある。下受け皿満タンエラーの発生条件は、下受け皿満タンスイッチ信号のONを検出し、その状態が100ms継続した場合であり、その解除条件は、下受け皿満タンスイッチ信号のOFFを検出し、その状態が100ms継続した場合である。下受け皿満タンエラーでは、発生条件が成立してから解除条件が成立するまで、払出モータの駆動を停止する。
払出装置エラーの発生条件は、払出動作終了後に払出し数の不足を確認した場合、または、払出動作中に払出モータ駆動数と実際の払出し数の差が5個に達した場合であり、その解除条件は、リトライ処理中に払出個数スイッチへの遊技球の通過を検出した場合である。払出装置エラーでは、発生条件が成立してから解除条件が成立するまで、リトライ処理を繰り返し実行する。
払出超過エラーは、払出しの超過数を10個検出した場合であり、その解除条件は、エラー解除スイッチ信号のONを検出した場合、または、電源投入時にRAMクリアスイッチ信号のONを検出した場合である。払出超過エラーでは、発生条件が成立してから解除条件が成立するまで、払出モータの駆動を停止する。
不正払出エラーは、払出要求未発生時に払出個数スイッチへの遊技球の通過を検出した場合、または、エラー解除スイッチ信号のONを検出した場合、または、電源投入時にRAMクリアスイッチ信号のONを検出した場合である。不正払出エラーでは、発生条件が成立してから解除条件が成立するまで、払出モータの駆動を停止する。
<主制御部300との通信に関するエラー>
主制御部300との通信に関するエラーには、主制御通信エラーがある。主制御通信エラーの発生条件は、主制御部300からの主制御通信確認コマンドの受信間隔が1000msを超えた場合であり、その解除条件は、主制御部300からの主制御通信確認コマンドを受信した場合である。主制御通信エラーでは、発生条件が成立してから解除条件が成立するまで、遊技球の発射を中止する。
<遊技枠状態に関するエラー>
遊技枠状態に関するエラーには、払出個数スイッチエラーがある。払出個数スイッチエラーの発生条件は、スイッチ電源確認信号がOFFで、かつ、払出個数スイッチ動作確認信号のONを検出し、その状態が16ms継続した場合であり、その解除条件は、エラー解除スイッチ信号のONを検出した場合、または、電源投入時のRAMクリアスイッチ信号のONを検出した場合である。払出個数スイッチエラーでは、発生条件が成立してから解除条件が成立するまで、払出モータの駆動を停止する。
<CRユニットに関するエラー>
CRユニットに関するエラーには、CRユニット未接続エラーと、CRユニット通信エラーの2種類がある。CRユニット未接続エラーの発生条件は、CRユニット接続信号のOFFを検出し、その状態が16ms継続した場合であり、その解除条件は、CRユニット接続信号のONを検出し、その状態が16ms継続した場合である。CRユニット未接続エラーでは、発生条件が成立してから解除条件が成立するまで、遊技球の発射を中止する。なお、貸出要求数が0個以外の場合、貸出要求数が0個になるまで貸出の払出動作を行う。
また、CRユニット通信エラーの発生条件は、遊技球等貸出装置からの入力信号監視中にCRユニットREADY信号(またはCRユニット貸出要求完了確認信号)の不正な入力を検出した場合であり、その解除条件は、遊技球等貸出装置に通信異常を通知した後、CRユニットREADY信号(またはCRユニット貸出要求完了確認信号)のOFFを検出した場合である。CRユニット通信エラーでは、発生条件が成立してから解除条件が成立するまで、CR遊技機READY信号およびCR遊技機貸出完了信号を出力し、遊技球等貸出装置からの入力信号に異常があったことを通知する。
<送信コマンド処理の変形例1>
図64は、送信コマンド処理の変形例1を示した図であり、図65は、払出制御部600から主制御部300に送信するコマンドの一例を示した図である。
図64に示す送信コマンド処理は、上記図63に示す送信コマンド処理のステップS1005、S1006の処理をステップS1051の判定がNOの場合に実行するとともに、ステップS1507〜1513の処理を追加したものである。
ステップS1051では、通信確認コマンド受信フラグがオンかオフかを判定し、オンの場合にはステップS1054〜S1056の処理を実行し、オフの場合にはステップS1052に進む。ステップS1054では、RAMに記憶している1バイト長の送信コマンド出力要求情報のBit0に1を設定することで、図65に示す通信確認コマンド(10H)の送信要求を設定する。
また、ステップS1055では、その他のコマンドの送信要求を設定する。ここでは、賞球信号出力要求コマンド(20H)を送信する場合には、送信コマンド出力要求情報のBit1に1を設定することで、図65に示す賞球信号出力要求コマンド(20H)の送信要求を設定し、エラー1コマンド(30H、31H、32H、34H、38H)を送信する場合には、送信コマンド出力要求情報のBit2に1を設定することで、図65に示すエラー1コマンド(30H、31H、32H、34H、38H)の送信要求を設定する。
また、エラー2コマンド(40H、41H、42H、44H、48H)を送信する場合には、送信コマンド出力要求情報のBit3に1を設定することで、図65に示すエラー2コマンド(40H、41H、42H、44H、48H)の送信要求を設定し、払出表示LED報知コマンド(50H、51H)を送信する場合には、送信コマンド出力要求情報のBit4に1を設定することで、図65に示す払出表示LED報知コマンド(50H、51H)の送信要求を設定する。
また、ステップS1056では、その他のコマンドの出力情報を設定する。ここでは、エラー情報としてエラー解除状態または賞球払出動作終了を通知する場合には、RAMに設けた1バイト長の出力情報のBit0に0を設定し、払出個数スイッチエラーの発生、下受け皿満タンエラーの発生、または賞球払出動作中を通知する場合には、出力情報のBit0に1を設定する。また、不正払出エラーまたは払出装置エラーの発生を通知する場合には、出力情報のBit1に1を設定し、払出超過エラーまたは主制御通信エラーの発生を通知する場合には、出力情報のBit2に1を設定し、扉開放エラーまたはCRユニット未接続エラーの発生を通知する場合には、出力情報のBit3に1を設定する。
ステップS1052では、主制御通信エラーフラグがオンかオフかを判定し、オンの場合にはステップS1053の処理を実行し、オフの場合にはステップS1057に進む。ステップS1053では、送信データレジスタに主制御通信エラーコマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に主制御通信エラーコマンドを送信した後にステップS1057に進む。
ステップS1057では、賞球信号コマンド送信要求設定条件が成立したか否かを判定し、成立した場合にはステップS1058に進み、成立していない場合にはステップS1059に進む。ステップS1059では、賞球信号コマンドの送信要求を設定した後にステップS1059に進む。ステップS1059では、RAMに記憶している送信コマンド設定カウンタに5を設定した後に、ステップS1060に進む。
ステップS1060では、送信コマンド設定処理実行条件が成立したか否かを判定し、成立した場合にはステップS1061に進み、成立していない場合にはステップS1062に進む。ステップS1061では、送信コマンド設定処理を行う。この送信コマンド設定処理では、ステップS1055で設定した送信コマンド出力要求情報の最下位Bit(Bit0)を参照し、1が設定されている場合には、送信データレジスタに通信確認コマンドに対応する数値(この例では、10H)をセットすることで、シリアル通信線612を介して主制御部300に通信確認コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1056で設定した出力情報と、エラー1コマンドに対応する数値(この例では、30H)を合成し、送信データレジスタに合成後の数値(この例では、30H、31H、32H、34H、38Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300にエラー1コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1056で設定した出力情報と、エラー2コマンドに対応する数値(この例では、40H)を合成し、送信データレジスタに合成後の数値(この例では、40H、41H、42H、44H、48Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300にエラー2コマンドを送信する。
続いて、送信コマンド出力要求情報を右方向に1Bitシフトした後に最下位Bit(Bit0)を参照し、1が設定されている場合には、ステップS1056で設定した出力情報と、払出表示LEDに対応する数値(この例では、50H)を合成し、送信データレジスタに合成後の数値(この例では、50H、51Hのいずれか)をセットすることで、シリアル通信線612を介して主制御部300に払出表示LED報知コマンドを送信する。
ステップS1062では、送信コマンド設定カウンタから1を減算した後に、ステップS1063に進む。ステップS1063では、送信コマンド設定カウンタが0であるか否かを判定し、0の場合には処理を終了し、0以外の場合にはステップS1060に戻ってコマンドの送信処理を継続する。
<主制御部300と払出制御部600の通信例1>
次に、図66を用いて、主制御部300と払出制御部600の通信例1について説明する。なお、同図は、主制御部300と払出制御部600の通信例1のタイミングチャートと所定のタイミングにおける変数の変化の一例を示した図である。
主制御部300は、N(Nは正の整数)回目の主制御部タイマ割込処理のシリアルコマンド送信処理において、通信確認コマンド送信タイマから1を減算し、この通信確認コマンド送信タイマが0になったタイミングで、通信確認コマンド送信タイマに初期値の25(約100msの時間に相当する数値)を設定し、シリアルコマンドステータスに1(賞球コマンドが送信不能な状態であることを示す数値)を設定する。また、同タイミングにおいて、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して払出制御部600に通信確認コマンドを送信した後、通信確認コマンド送信カウンタから1を減算し、例えば、通信確認コマンド送信カウンタの値が10の場合には9に更新する。
これに対し、払出制御部600は、コマンド解析処理において主制御通信確認コマンドを受信した場合に、主制御通信確認コマンド受信時処理を実行する。そして、この主制御通信確認コマンド受信時処理において、主制御通信監視タイマに初期値の500(約1000msの時間に相当する数値)を設定し、主制御通信エラーフラグをオフに設定し、通信確認コマンド受信フラグをオンに設定する。
続いて、払出制御部600は、送信コマンド処理のステップS1001において通信確認コマンド受信フラグがオンであると判定することから、送信データレジスタに通信確認コマンドに対応する数値をセットすることで、シリアル通信線612を介して主制御部300に通信確認コマンドを送信した後に、通信確認コマンド受信フラグがオフに設定する。
また、主制御部300は、N+1回目の主制御部タイマ割込処理のシリアルコマンド受信処理において、払出制御部600から通信確認コマンドを受信したと判定することから、シリアルコマンドステータスに初期値である0(賞球コマンドを送信可能な状態であることを示す数値)を設定し、通信確認コマンド送信カウンタに初期値である10を設定し、シリアルコマンド通信エラーフラグに0を設定する。また、N+1回目の主制御部割込処理のシリアルコマンド送信処理において、通信確認コマンド送信タイマから1を減算することで、通信確認コマンド送信タイマの値を25から24に更新する。
続いて、主制御部300は、N+2回目以降の主制御部タイマ割込処理の賞球コマンド設定処理において、賞球コマンド送信条件が成立したか否かを判定し、成立した場合には、賞球コマンドに対応する数値を送信データレジスタにセットすることで、シリアル通信線612を介して払出制御部600に賞球コマンドを送信する。
<賞球コマンドの送信タイミングの一例>
例えば、同図のt1に示す期間では、主制御部300は、N+1回目の主制御部タイマ割込処理において払出制御部600から通信確認コマンドを受信してシリアルコマンドステータスが0になった後に(賞球コマンドが送信可能な状態になった後に)、賞球コマンド送信条件が1回成立したことから、N+3回目の主制御部タイマ割込処理において、払出制御部600に対して賞球コマンドを1回、送信している。
また、同図のt2に示す期間では、N+1回目の主制御部タイマ割込処理において払出制御部600から通信確認コマンドを受信してシリアルコマンドステータスが0になった後に(賞球コマンドが送信可能な状態になった後に)、賞球コマンド送信条件が2回成立したことから、N+2回目とN+3回目の主制御部タイマ割込処理において、払出制御部600に対して賞球コマンドをそれぞれ1回、送信している。
また、同図のt3に示す期間では、主制御部300は、N+1回目の主制御部タイマ割込処理において払出制御部600から通信確認コマンドを受信してシリアルコマンドステータスが0になる前に(賞球コマンドが送信可能な状態になる前に)、賞球コマンド送信条件が1回成立したことから、賞球コマンドの送信を一時的に保留している。そして、N+1回目の主制御部タイマ割込処理において払出制御部600から通信確認コマンドを受信するのを待って(賞球コマンドが送信可能な状態になるのを待って)、当該N+1回目の主制御部タイマ割込処理において、払出制御部600に対して賞球コマンドを1回、送信している。
図67(a)は、賞球コマンド送信時のタイムチャートの拡大図である。この例では、符号Aで示すタイミングにおいて始動口または入賞口に球が入球し、その後のN回目の主制御部タイマ割込処理の符号Bで示すタイミングにおいて、始動口または入賞口への入球を検出している。また、同じN回目の主制御部タイマ割込処理の符号Cで示すタイミングにおいて、払出制御部600に対して賞球コマンドを1回、送信している。
一方、図67(b)は、図66のt3に示す期間のタイムチャートの拡大図である。この例では、符号Aで示すタイミングにおいて始動口または入賞口に球が入球し、その後のN回目の主制御部タイマ割込処理の符号Bで示すタイミングにおいて、始動口または入賞口への入球を検出している。また、同じN回目の主制御部タイマ割込処理の符号Fで示すタイミングにおいて、始動口または入賞口への入球パターンが予め定めた入賞判定パターン情報に一致したと判定しているが、この例では、同時に通信確認コマンドを送信するタイミングが到来したため、符号Fで示すタイミングにおいて、賞球コマンドよりも優先して通信確認コマンドを送信している(賞球コマンドの送信を一時的に保留している)。
これに対し、払出制御部600は、M+1(Mは正の整数)回目の払出制御部メイン処理の符号Hで示すタイミングにおいて、主制御部300に通信確認コマンドを送信している。また、主制御部300は、N+1回目の主制御部タイマ割込処理の符号Cで示すタイミングにおいて払出制御部600からの通信確認コマンドの受信を確認した後、払出制御部600に対して、保留していた賞球コマンドを1回、送信している。
図66に戻って、同図のt4に示す期間では、主制御部300は、N回目の主制御部タイマ割込処理の前に、賞球コマンド送信条件が2回成立したことから、N回目の主制御部タイマ割込処理において、払出制御部600に対して賞球コマンドを1回、送信しているが、その直後に、払出制御部600に通信確認コマンドを送信するタイミングが到来したことから、シリアルコマンドステータスを1に設定している(賞球コマンドが送信不能な状態になっている)。このため、賞球コマンドの送信を一時的に保留し、N+2回目の主制御部タイマ割込処理において払出制御部600から通信確認コマンドを受信するのを待って(賞球コマンドが送信可能な状態になるのを待って)、当該N+2回目の主制御部タイマ割込処理において、払出制御部600に対して賞球コマンドを1回、送信している。
<シリアル通信エラーの一例>
同図のt6に示す期間では、主制御部300は、N回目の主制御部タイマ割込処理において払出制御部600に通信確認コマンドを送信した後、N回目以降の主制御部タイマ割込処理において当該通信確認コマンドに対する払出制御部600の応答を受信できていないことから、シリアルコマンドステータスを1に保持している。
以降、主制御部300は、通信確認コマンド送信カウンタの値が10から0になるまで通信確認コマンドに対する払出制御部600の応答を待ち、それでも応答が無い場合に、同図のt8に示すように、シリアル通信エラーフラグを0から1に変更する。また、その後に払出制御部600からの応答があった場合には、同図のt9に示すように、シリアル通信エラーフラグを1から0に変更して、シリアル通信を再開する。
<始動口または入賞口の複数の入賞を検出した場合>
図68(a)は、1回の主制御部タイマ割込処理において始動口または入賞口の複数の入賞を検出した場合のタイムチャートの一例である。この例では、符号Aと符号Iで示すタイミングにおいて始動口または入賞口に球がそれぞれ入球し、その後のN回目の主制御部タイマ割込処理の符号Bと符号Jで示すタイミングにおいて、始動口または入賞口への入球を検出している。また、同じN回目の主制御部タイマ割込処理の符号Cで示すタイミングにおいて、払出制御部600に対して賞球コマンドを1回、送信し、続くN+1回目の主制御部タイマ割込処理の符号Kで示すタイミングにおいて、払出制御部600に対して賞球コマンドを1回、送信している。
<払出制御部600からの通信確認コマンドの変形例>
図68(b)は、払出制御部600からの通信確認コマンドの変形例を示すタイムチャートである。この例では、符号Aで示すタイミングにおいて始動口または入賞口に球が入球し、その後のN回目の主制御部タイマ割込処理の符号Bで示すタイミングにおいて、始動口または入賞口への入球を検出している。また、同じN回目の主制御部タイマ割込処理の符号Fで示すタイミングにおいて、始動口または入賞口への入球パターンが予め定めた入賞判定パターン情報に一致したと判定しているが、この例では、同時に通信確認コマンドを送信するタイミングが到来したため、符号Fで示すタイミングにおいて、賞球コマンドよりも優先して通信確認コマンドを送信している(賞球コマンドの送信を一時的に保留している)。
これに対し、払出制御部600は、M+1(Mは正の整数)回目の払出制御部メイン処理の符号Hで示すタイミングにおいて、主制御部300に通信確認コマンドを送信している。また、主制御部300は、N+1回目の主制御部タイマ割込処理の符号Cで示すタイミングにおいて払出制御部600からの通信確認コマンドの受信を確認した後、払出制御部600に対して賞球コマンドを1回、送信している。また、この賞球コマンドに対し、払出制御部600は、M+3回目の払出制御部メイン処理の符号Mで示すタイミングにおいて、主制御部300に通信確認コマンドを送信している。
<外部端子板信号の出力例>
次に、図69〜図76を用いて、外部端子板信号の出力例について説明する。なお、図面における「賞球」は、主制御部300による入賞検出のタイミングと賞球数(払出要求数)を示しており、「払出」は、払出制御部600による遊技球の払出のタイミングと払出数を示している。また、「払出予定情報信号」は、主制御部300によって出力される払出予定情報信号(外部端子板信号9)の波形を示しており、「払出情報信号」は、払出制御部600によって出力される払出情報信号(外部端子板信号1)の波形を示している。
<外部端子板信号の出力例1>
図69は、外部端子板信号の出力例1を示すタイムチャートである。この例では、主制御部300は、第1特図始動口230への入賞を検出したことにより、入賞口カウンタ更新処理(ステップS216)において、第1特図始動口230に対応する賞球数記憶領域に賞球数として3を記憶するとともに、シリアルコマンド管理処理(ステップS219)において、払出要求数(=賞球数3)の情報を含む賞球コマンドを払出制御部600に送信する。
また、主制御部300は、シリアルコマンド管理処理(ステップS219)において、全賞球数が所定数10以上であるか否かを判定し、該当する場合には全賞球数から10を減算し、出力要求数に1を加算するが、ここでは、全賞球数が3であるため、出力要求数に1を加算する処理は行わない。また、主制御部300は、外部出力信号設定処理(ステップS235)において、出力要求数が1以上の場合に払出予定情報信号を1回出力するが、ここでは、出力要求数が0であるため、払出予定情報信号を出力する処理は行わない。
続いて、払出制御部600は、コマンド解析処理の賞球コマンド受信時処理(ステップS503)において、主制御部300から受信した賞球コマンドに含まれる払出要求数(この例では3)を、払出用払出数記憶部の払出数情報(この例では初期値の0)と、払出時外部出力用払出数記憶部の払出数情報(この例では初期値の0)にそれぞれ加算し、払出用払出数記憶部の払出数情報を3、払出時外部出力用払出数記憶部の払出数情報を3に更新する。また、払出制御部600は、払出管理処理(ステップS710)において、払出用払出数記憶部の払出数情報に基づいて、払出装置152の払出モータ602を駆動して遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を払出数だけ減算するが、ここでは、払出用払出数記憶部の払出数情報が3であるため、3個の遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を0(=3−3)に更新する。
続いて、払出制御部600は、信号出力処理(ステップS711)において、払出時外部出力用払出数記憶部の払出数情報の値が所定数(本実施形態では10)以上の場合には、外部端子板609を介して情報入力回路350に払出情報信号を出力するための処理を行うが、ここでは、払出時外部出力用払出数記憶部の払出数情報が3であるため、払出情報信号を出力するための処理は行わない。
続いて、主制御部300は、可変入賞口234への入賞を検出したことにより、入賞口カウンタ更新処理(ステップS216)において、可変入賞口234に対応する賞球数記憶領域に賞球数として15を記憶するとともに、シリアルコマンド管理処理(ステップS219)において、払出要求数(=賞球数15)の情報を含む賞球コマンドを払出制御部600に送信する。また、主制御部300は、シリアルコマンド管理処理(ステップS219)において、全賞球数が所定数10以上であるか否かを判定し、該当する場合には全賞球数から10を減算し、出力要求数に1を加算する。この例では、全賞球数が15で所定数10以上であるため、全賞球数15から所定数10を減算して全賞球数を5に更新し、出力要求数を1に更新し、出力要求数を1に更新する。
続いて、主制御部300は、外部出力信号設定処理(ステップS235)において、出力要求数が1以上の場合に払出予定情報信号を1回出力するが、この例では、出力要求数が1であるため、外部出力信号設定処理(ステップS235)において、1回目の払出予定情報信号として、ハイレベルの信号を所定期間Taに亘って出力している。
続いて、払出制御部600は、コマンド解析処理の賞球コマンド受信時処理(ステップS503)において、主制御部300から受信した賞球コマンドに含まれる払出要求数(この例では15)を払出用払出数記憶部の払出数情報(この例では0)と、払出時外部出力用払出数記憶部の払出数情報(この例では3)にそれぞれ加算し、払出用払出数記憶部の払出数情報を15、払出時外部出力用払出数記憶部の払出数情報を18に更新する。また、払出制御部600は、払出管理処理(ステップS710)、払出用払出数記憶部の払出数情報に基づいて、払出装置152の払出モータ602を駆動して遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を払出数だけ減算するが、ここでは、払出用払出数記憶部の払出数情報が15であるため、15個の遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を0(=15−15)に更新する。
また、払出制御部600は、信号出力処理(ステップS711)において、払出時外部出力用払出数記憶部の払出数情報の値が所定数(本実施形態では10)以上の場合には、外部端子板609を介して情報入力回路350に払出情報信号を出力するための処理を行うが、ここでは、払出時外部出力用払出数記憶部の払出数情報が18であるため、払出数情報の値が所定数(本実施形態では10)以上であると判定したタイミングで払出情報信号を1回出力している。なお、この例では、払出情報信号として、ハイレベルの信号を期間Tbに亘って出力している。
ここで、主制御部300が出力する払出予定情報信号のハイレベルの期間Taと、払出制御部600が出力する払出情報信号のハイレベルの期間Tbについては特に限定されないが、この例では、期間Taを期間Tb(最短期間は800ms)よりも長く設定している。このような構成とすれば、外部装置は、パルス幅の違いによって払出予定情報信号と払出情報信号を容易に区別することができる場合がある。
<外部端子板信号の出力例2>
図70は、外部端子板信号の出力例2を示すタイムチャートである。上述のとおり、主制御部300は、シリアルコマンド管理処理(ステップS219)において、全賞球数が所定数10以上であるか否かを判定し、該当する場合には全賞球数から10を減算し、出力要求数に1を加算する。この例では、全賞球数が24で所定数10以上であるため、全賞球数24から所定数10を減算して全賞球数を14に更新し、出力要求数を1に更新した後、減算後の全賞球数が14で所定数10以上であるため、再び、全賞球数14から所定数10を減算して全賞球数を4に更新し、出力要求数を2に更新している。
続いて、主制御部300は、外部出力信号設定処理(ステップS235)において、出力要求数が1以上の場合に払出予定情報信号を1回出力するが、この例では、出力要求数が2であるため、外部出力信号設定処理において、1回目の払出予定情報信号として、ハイレベルの信号を所定期間に亘って出力した後、その後の外部出力信号設定処理において、一度、ローレベルの信号を期間Tcに亘って出力し、その後の外部出力信号設定処理において、2回目の払出予定情報信号として、ハイレベルの信号を所定期間に亘って出力している。
続いて、払出制御部600は、コマンド解析処理の賞球コマンド受信時処理(ステップS503)において、主制御部300から受信した賞球コマンドに含まれる払出要求数(この例では15)を払出用払出数記憶部の払出数情報(この例では0)と、払出時外部出力用払出数記憶部の払出数情報(この例では9)にそれぞれ加算し、払出用払出数記憶部の払出数情報を15、払出時外部出力用払出数記憶部の払出数情報を24に更新する。また、払出制御部600は、払出管理処理(ステップS710)において、払出用払出数記憶部の払出数情報に基づいて、払出装置152の払出モータ602を駆動して遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を払出数だけ減算するが、ここでは、払出用払出数記憶部の払出数情報が15であるため、15個の遊技球の払出を行った後に、払出用払出数記憶部の払出数情報を0(=15−15)に更新する。
また、払出制御部600は、信号出力処理(ステップS711)において、払出時外部出力用払出数記憶部の払出数情報の値が所定数(この例では10)以上の場合には、外部端子板609を介して情報入力回路350に払出情報信号を出力するための処理を行うが、ここでは、払出時外部出力用払出数記憶部の払出数情報が24で所定数10以上であるため、払出情報信号を1回出力するとともに、払出時外部出力用払出数記憶部の払出数情報24から所定数10を減算し、払出時外部出力用払出数記憶部の払出数情報を14に更新している。また、払出制御部600は、減算後の払出時外部出力用払出数記憶部の払出数情報が14で所定数10以上であるため、再び、払出情報信号を1回出力するとともに、払出時外部出力用払出数記憶部の払出数情報14から所定数10を減算し、払出時外部出力用払出数記憶部の払出数情報を4に更新している。なお、この例では、1回目の払出情報信号として、ハイレベルの信号を所定期間に亘って出力した後、一度、ローレベルの信号を期間Tdに亘って出力した後、2回目の払出情報信号として、ハイレベルの信号を所定期間に亘って出力している。
この例では、主制御部300による払出予定情報信号の出力と、払出制御部600による払出情報信号の出力を、各々2回ずつ行っているとともに、主制御部300による1回目の払出予定情報信号のハイレベル信号の出力期間と、払出制御部600による1回目の払出情報信号のハイレベル信号の出力期間の一部が重なっている。このような構成とすれば、外部装置は、払出予定情報信号および払出情報信号を同時に検出することができ、両者の論理和や論理積を算出することによって、従来に無い新たな情報を取得できる場合がある。
また、主制御部300が出力する1回目の払出予定情報信号と2回目の払出予定情報信号の間隔Tcよりも、払出制御部600が出力する1回目の払出情報信号と2回目の払出情報信号の間隔Tdを長く設定している。このような構成とすれば、外部装置は、払出予定情報信号の出力間隔と払出情報信号の出力間隔の違いによって、払出予定情報信号と払出情報信号を容易に区別することができる場合がある。
なお、この例では、主制御部300は、シリアルコマンド管理処理において、全賞球数が24で所定数10以上であるため、全賞球数24から所定数10を減算して全賞球数を14に更新し、出力要求数を1に更新した後、減算後の全賞球数が14で所定数10以上であるため、再び、全賞球数14から所定数10を減算して全賞球数を4に更新し、出力要求数を2に更新しているが、この例に限定されるものではない。
したがって、例えば、主制御部300は、N(Nは正の整数)回目のシリアルコマンド管理処理において、全賞球数24から所定数10を減算して全賞球数を14に更新し、出力要求数を1に更新した後、一度、シリアルコマンド管理処理を終了し、外部出力信号設定処理において1回目の払出情報信号を出力した後、N+1回目以降のシリアルコマンド管理処理において、全賞球数14から所定数10を減算して全賞球数を4に更新し、出力要求数を1に更新した後、外部出力信号設定処理において2回目の払出情報信号を出力してもよい。すなわち、一回のシリアルコマンド管理処理において出力要求数の更新を全て行う替りに、複数回のシリアルコマンド管理処理に分けて出力要求数の更新を行うようにしてもよい。
このような構成とすれば、賞球数の大小によってシリアルコマンド管理処理の処理時間がばらつくような事態を回避することができ、払出情報信号の出力タイミングが遅延することが無い上に、安定した遊技制御を行うことができる場合がある。
<外部端子板信号の出力例3>
図71は、外部端子板信号の出力例3を示すタイムチャートである。ここで、図における「図柄関連信号」は、主制御部300によって出力される図柄確定回数情報信号(外部端子板信号3)の波形を示しているが、その他の始動口情報信号(外部端子板信号4)、大当り情報1〜4信号(外部端子板信号5〜8)のいずれかに置き換えて考えることもできる(以下に説明する例も同様)。
この例では、主制御部300は、N(Nは正の整数)回目の外部出力信号設定処理において、払出予定情報信号としてハイレベルの信号を出力するとともに、図柄関連信号としてハイレベルの信号を出力している。また、その後、N+1回目以降の外部出力信号設定処理において、払出予定情報信号としてローレベルの信号を出力するとともに、図柄関連信号としてハイレベルの信号を出力している。すなわち、払出予定情報信号および図柄関連信号として同一期間、ハイレベル信号を出力している。
このような構成とすれば、外部装置は、払出予定情報信号および図柄関連信号を同時に検出することができ、両者の論理和や論理積を算出することによって、従来に無い新たな情報を取得できる場合がある。
<外部端子板信号の出力例4>
図72は、外部端子板信号の出力例4を示すタイムチャートである。この例では、主制御部300は、N(Nは正の整数)回目の外部出力信号設定処理において、出力要求数が1以上であり、かつ特定異常検出フラグオン(例えば、磁気異常を検出)の場合に、当該N回目の外部出力信号設定処理では払出予定情報信号を出力せずに、N+1回目以降の外部出力信号設定処理において払出予定情報信号の出力を行うことで、払出予定情報信号をN回目の外部出力信号設定処理から所定期間だけ遅延させて出力している。
一方、主制御部300は、N回目の外部出力信号設定処理において、出力要求数が1以上であり、かつ特定異常検出フラグオン(例えば、磁気異常を検出)の場合に、当該外部出力信号設定処理では図柄関連信号を出力せずに、N+1回目以降の外部出力信号設定処理においても図柄関連信号を出力しないように構成している。
このような構成とすれば、パチンコ機100において何らかの異常が発生したことを外部に知らせることができ、不正行為などを未然に防止できる場合がある。なお、この例では、特定異常検出フラグオンの場合に図柄関連信号を出力しない例を示したが、払出予定情報信号と同様に、本来出力するタイミングよりも遅延させて出力を行うように構成しても、同様の効果を得ることができる場合がある。
<外部端子板信号の出力例5>
図73は、外部端子板信号の出力例5を示すタイムチャートである。なお、この例では、可変入賞口234への入賞による賞球数を10に設定している。
この例では、主制御部300は、可変入賞口234への入賞を検出したことにより、入賞口カウンタ更新処理(ステップS216)において、可変入賞口234に対応する賞球数記憶領域に賞球数として10を記憶するとともに、シリアルコマンド管理処理(ステップS219)において、払出要求数(=賞球数10)の情報を含む賞球コマンドを払出制御部600に送信する。また、主制御部300は、シリアルコマンド管理処理(ステップS219)において、全賞球数が所定数10以上であるか否かを判定し、該当する場合には全賞球数から10を減算し、出力要求数に1を加算する。この例では、全賞球数が10で所定数10以上であるため、全賞球数10から所定数10を減算して全賞球数を0に更新し、出力要求数を1に更新する。
続いて、主制御部300は、外部出力信号設定処理(ステップS235)において、出力要求数が1以上の場合に払出予定情報信号を1回出力するが、この例では、出力要求数が1であるため、外部出力信号設定処理(ステップS235)において、払出予定情報信号として、ハイレベルの信号を所定期間に亘って出力している。
すなわち、この例では、可変入賞口234への入賞による賞球数(この例では10)と、出力要求数を加算する条件となる閾値(この例では10)を同一に設定しているため、1回のシリアルコマンド管理処理において出力要求数を1に更新し、後続の外部出力信号設定処理において、払出予定情報信号としてハイレベルの信号を出力している。
このように、特定の入賞口への入賞による賞球数と、出力要求数を加算する条件となる閾値を同一に設定する構成とすれば、特定の入賞口に1回入賞するたびに、払出予定情報信号を1回出力することができるため、特定の入賞口への入賞回数を推測することが可能となり、例えば、単位時間当りの入賞回数が所定回数を超える場合に、異常と判定して適切な処理(例えば、エラー報知)を行うことができる場合がある。
<外部端子板信号の出力例6>
図74は、外部端子板信号の出力例6を示すタイムチャートである。この例では、主制御部300は、可変入賞口234への入賞を2回検出したことにより、N(Nは正の整数)回目の外部出力信号設定処理において、1回目の払出予定情報信号としてハイレベルの信号を所定期間Taだけ出力した後に、所定期間Tc経過後のN+1回目以降の外部出力信号設定処理において、2回目の払出予定情報信号としてハイレベルの信号を所定期間だけ出力している。
一方、払出制御部600は、信号出力処理(ステップS711)において、払出時外部出力用払出数記憶部の払出数情報の値が所定数(この例では10)以上であると判定したタイミングで、払出情報信号を所定期間Tbだけ1回出力している。
この例では、主制御部300による2回目の払出予定情報信号のハイレベル信号の出力期間と、払出制御部600による1回目の払出情報信号のハイレベル信号の出力期間の一部が重なっている。このような構成とすれば、外部装置は、2回目の払出予定情報信号および1回目の払出情報信号を同時に検出することができ、両者の論理和や論理積を算出することによって、従来に無い新たな情報を取得できる場合がある。
<外部端子板信号の出力例7>
図75は、外部端子板信号の出力例7を示すタイムチャートであり、同図(a)は上記図70のタイムチャートの一部を抜き出して示したもの、同図(b)は同図(a)に示す例において特定異常検出フラグオンと判定した場合のタイムチャートである。
この例では、同図(b)に示すように、主制御部300は、外部出力信号設定処理において、出力要求数が1以上であり、かつ特定異常検出フラグオン(例えば、磁気異常を検出)の場合に、払出予定情報信号を出力しないように構成している。このような構成とすれば、パチンコ機100において何らかの異常が発生したことを外部に知らせることができ、不正行為などを未然に防止できる場合がある。
<外部端子板信号の出力例8>
図76は、外部端子板信号の出力例8を示すタイムチャートであり、同図(a)は正常時のタイムチャートの一部を抜き出して示したもの、同図(b)は異常発生時のタイムチャートである。
この例では、同図(b)に示すように、主制御部300は、外部出力信号設定処理において、出力要求数が1以上であり、かつ特定異常検出フラグオン(例えば、磁気異常を検出)の場合に、払出予定情報信号を出力していないが、セキュリティ情報信号を出力している。一方、払出制御部600は、信号出力処理(ステップS1708)において、払出時外部出力用払出数記憶部の払出数情報の値が所定数(この例では10)以上であると判定したタイミングで、払出情報信号を出力している。
このような構成とすれば、断線などが原因でセキュリティ情報信号が外部装置に出力できない場合でも、外部装置は、主制御部300からの払出予定情報信号と、払出制御部600からの払出情報信号の情報に基づいて、払出に関する異常の有無を把握できる場合がる。また、外部装置は、セキュリティ信号および払出情報信号を同時に検出することができ、両者の論理和や論理積を算出することによって、従来に無い新たな情報を取得できる場合がある。なお、セキュリティ情報信号を出力する場合には、セキュリティ情報信号を出力しない場合の払出予定情報信号の出力タイミングよりも所定時間だけ遅延させたタイミングで払出予定情報信号を出力するようにしてもよい。
<実施形態3>
以下、図面を用いて、本発明の実施形態3に係るパチンコ機(遊技台)について詳細に説明する。なお、図77〜図80及びこれらの参照符号は、本実施形態3における説明のみに使用するものとする。
図77は、図2を用いて説明した電源基板182、払出基板170、および主基板156間の電源供給例を示している。図77(a)に示す例では、各種電気的遊技機器に電源を供給する電源制御部660を備える電源基板182から電源ラインpl01と電源ラインpl02とが引き出され、電源ラインpl01と電源ラインpl02が共に、遊技球の払出に関する制御処理を行う払出制御部600を備える払出基板(払出制御基板)170に接続されている。電源投入後に一定時間経過したら電源ラインpl01にはDC(直流)12Vの電圧が印加され、電源ラインpl02にはDC12Vと異なる直流電圧が印加される。払出基板170からは電源ラインpl03が引き出され、電源ラインpl03は、遊技全般の制御処理を行う主制御部300を構成する主基板(主制御基板)156に接続されている。電源ラインpl03は払出基板170内で電源ラインpl01に接続されている。従って、電源投入後に一定時間経過したら主基板156には払出基板170を介して電源基板182からDC12Vの電圧が供給される。なお、これらの電圧値は一例であって、駆動する回路によってこれらと異なる電圧値の電圧を印加するようにしてももちろんよい。
図77(b)に示す例では、電源基板182から電源ラインpl04と電源ラインpl05、および電源ラインpl06が引き出されている。電源ラインpl04は主基板156に接続されている。電源ラインpl05と電源ラインpl06は共に、払出基板170に接続されている。電源投入後に一定時間経過したら電源ラインpl04と電源ラインpl05にはDC12Vの電圧が印加され、電源ラインpl06にはDC12Vと異なる直流電圧が印加される。つまり、電源投入後に一定時間経過したら主基板156には払出基板170を介さずに、電源基板182から直接にDC12Vの電圧が供給される。
図77(c)に示す例では、電源基板182から電源ラインpl07、電源ラインpl08、電源ラインpl09、および電源ラインpl10が引き出されている。電源ラインpl07と電源ラインpl08は主基板156に接続されている。電源ラインpl09と電源ラインpl10は共に、払出基板170に接続されている。電源投入後に一定時間経過したら電源ラインpl07と電源ラインpl09にはDC12Vの電圧が印加され、電源ラインpl08にはDC5Vの電圧が印加され、電源ラインpl10にはDC5V/12Vとは異なる直流電圧が印加される。つまり、電源投入後に一定時間経過したら主基板156には払出基板170を介さずに、電源基板182から直接にDC5VとDC12Vの2種類の電圧が供給される。
図78は、主基板156内の電源供給例を示している。本例では図77(a)に示す構成を用いて説明する。払出基板170から引き出された電源ラインpl03は主基板156内に引き込まれて、DC−DCコンバータ7001の入力端子に接続されている。DC−DCコンバータ7001は電源ラインpl03に印加されたDC12Vの電圧をDC5Vに変換する機能を有している。DC−DCコンバータ7001で生成されたDC5Vの電圧は電源ラインpl11に印加される。
電源ラインpl11には複数の分岐ラインが接続されており、所定の分岐ラインがリセットIC7003の電源端子Aに接続されている。電源投入後に一定時間経過したら電源端子AにDC5Vの電圧が駆動電圧として印加され、これによりリセットIC7003が駆動される。また、電源ラインpl11から分岐した別の分岐ラインがマイコン(CPU)304の電源端子Fに接続されている。電源投入後に一定時間経過したら電源端子FにDC5Vの電圧がマイコン304の駆動電圧として印加される。なお、リセットIC7003とマイコン304の駆動電圧は同じでなく異なっていてもよい。また、リセットIC7003やマイコン304の駆動電圧の電圧値自体と電源ラインpl11に印加される電圧の電圧値が同じでなく異なっているようにいてもよい。
リセットIC7003の信号入力端子Bは別の分岐ラインを介して電源ラインpl11に接続されている。リセットIC7003は、信号入力端子Bの端子電圧をモニタして、マイコン304の端子Fに印加されるマイコン304の駆動電圧の状態を把握するようになっている。一方、リセットIC7003の信号入力端子Cは所定の分岐ラインを介して電源ラインpl03に接続されている。リセットIC7003は、信号入力端子Cの端子電圧をモニタして、電源ラインpl03に印加されている電圧の状態を把握するようになっている。
リセットIC7003には少なくとも2つの信号出力端子D、Eが設けられている。信号出力端子Dからはリセット信号(起動信号)が出力され、信号出力端子Eからは低電圧信号が出力される。リセットIC7003は、信号入力端子Bの端子電圧がマイコン304の動作保証電圧(例えば、4.5V)を超えていないと判断したら、信号出力端子Dに出力しているリセット信号をネゲート(無効)状態にする。一方、信号入力端子Bの端子電圧がマイコン304の動作保証電圧を超えたと判断したら、信号出力端子Dに出力しているリセット信号をアサート(有効)状態にする。つまり、信号入力端子Bの端子電圧がマイコン304の動作保証電圧(例えば、4.5V)を超えていない場合に、信号出力端子Dに出力されているリセット信号がネゲート状態になり、信号入力端子Bの端子電圧がマイコン304の動作保証電圧を超えた場合には、信号出力端子Dに出力されているリセット信号がアサート状態になる。なお、リセットIC7003の端子の数は任意であり図示のものは一例示であり、説明に必要な端子を図示しているだけであって、端子の数、配置位置は図示のものと同じでもよいし同じでなくてもよい。
リセットIC7003の信号出力端子Dは、信号ラインpl12を介してマイコン304の信号入力端子Gに接続されている。信号入力端子Gはシステムリセット(XSRST)端子として用いられている。このため、信号ラインpl12に出力されているリセット信号がアサート状態になると、マイコン304はセキュリティモードに移行する。このように、リセットIC7003は、信号出力端子Dがリセット信号出力端子として機能して図4に示す起動信号出力回路340としての役割を果たしている。
リセットIC7003は、信号入力端子Cの端子電圧が所定の電圧値(例えば、9V)を超えていないと判断したら、信号出力端子Eに出力している低電圧信号をアサート状態にする。一方、信号入力端子Cの端子電圧が所定の電圧値を超えたと判断したら、信号出力端子Eに出力している低電圧信号をネゲート状態にする。
リセットIC7003の信号出力端子Eは、信号ラインpl13を介してマイコン304の信号入力端子Hに接続されている。信号入力端子Hはデータ端子D0〜D7のいずれか1つのデータ端子として用いられている。例えば、マイコン304は、信号ラインpl13に出力されている低電圧信号がネゲート状態になるまで、例えば図10のステップS103とステップS105の処理を繰り返す。このように、リセットIC7003は、信号出力端子Eが定電圧信号出力端子として機能して図4に示す電圧監視回路338としての役割を果たしている。
この例では信号ラインpl13上の低電圧信号がアサート状態からネゲート状態(あるいはその逆)になるときの信号入力端子Cの所定の閾値電圧値を9Vとしているがこれに限られない。例えば図14に示す主制御部タイマ割込処理のステップS239およびステップS243における電断検出から電断処理に要する期間中にマイコン304が電断処理を継続できる電圧が電源端子Fに印加されていればよい。DC−DCコンバータ7001から電源ラインpl11に出力されるDC5V電圧は、DC−DCコンバータ7001に入力する電源ラインpl03のDC12V電圧が7V程度に低下する辺りから徐々に低下を始める。そこで、信号入力端子Cの端子電圧が所定の電圧値(例えば、9V)未満になると、信号出力端子Eに出力している低電圧信号をネゲート状態からアサート状態にするようにしている。所定の電圧値として例えば9Vを用いれば、電源ラインpl11の電圧が徐々に低下しても主制御部タイマ割込処理のステップS239およびステップS243における電断検出から電断処理に要する期間中にマイコン304が動作を継続できる。
図79は、電源基板182と主基板156内の電源供給例を示している。図78に示す電源供給構成と比較して説明すると、図78で主基板156内に配置されていたDC−DCコンバータ7001とリセットIC7003が、図79に示す構成では電源基板182上に配置されている。これにより、電源ラインpl11と信号ラインpl12およびpl13は電源基板182および主基板156の間を跨いで配線されている。このような構成によれば、DC5V、DC12V、およびその他の電圧値の電源を電源基板182で全て供給可能になるので、主基板156や払出基板170に電源供給用回路を設ける必要がなくなり、基板上の回路レイアウトに余裕を持たせることができる場合がある。
図80は、主基板156内の電源供給例を示している。図80(a)は、CPU304の外部マスカブル割込み端子XINTと外部ノンマスカブル割込み端子XNMIに電源ラインpl11の分岐ラインを接続して、両端子XINTおよびXNMIにDC5Vの電圧を常時印加している状態を示している。こうすることにより、両端子XINTおよびXNMIに入力する割込み信号は常にネゲート状態を維持するため、割込み端子による外部割込みを使用しない場合には、ノイズ等による誤動作を確実に防止することができる。図80(b)に示す構成は、図78に示す構成におけるCPU304の端子Hが外部ノンマスカブル割込み端子XNMIとして機能している場合を例示している。なお、割込み端子の符号のXは、ローアクティブを示しておりL信号が入力されてアサート状態となるが、ハイアクティブでアサート状態になる回路の場合はL信号(例えば、0V)を常に入力させるようにする。
以上説明したように、本実施形態に係る遊技台(例えば、パチンコ機100)は、第一の制御手段(例えば、主制御部300)と、第二の制御手段(例えば、払出制御部600)と、を備えた遊技台であって、前記第二の制御手段は、前記第一の制御手段と、シリアル通信線を介して少なくとも電気的に接続されたものであり、前記第二の制御手段は、複数の記憶手段を少なくとも含むものであり、前記複数の記憶手段のうちの少なくとも一つは、第一の記憶手段(例えば、受信データレジスタ774)であり、前記複数の記憶手段のうちの少なくとも一つは、第二の記憶手段(例えば、CPUコアレジスタ720、RAM708)であり、前記第一の制御手段は、第一の処理(例えば、コマンド送信処理)を少なくとも実行可能なものであり、前記第二の制御手段は、第二の処理(例えば、賞球コマンド受信時処理)を少なくとも実行可能なものであり、前記第一の処理は、複数のコマンドのうちの少なくとも一のコマンド(以下、「制御コマンド」という。)を前記第二の制御手段に送信する処理を少なくとも含むものであり、前記制御コマンドは、前記第一の記憶手段に記憶されるものであり、前記第二の処理は、前記制御コマンドを前記第二の記憶手段に記憶させる処理を少なくとも含むものであり、前記第二の制御手段は、前記複数のコマンドとは異なるコマンドが前記第一の記憶手段に記憶されている場合であっても、前記第二の処理を少なくとも実行可能なものである、ことを特徴とする遊技台。
なお、ここでいう、前記制御コマンドは、前記第一の制御手段から送信されたコマンドである。
また、ここでいう、前記制御コマンドは、前記第一の記憶手段に記憶されているコマンドである。
本実施形態に係る遊技台によれば、第二の制御手段で受信した制御コマンド(受信すべきでない(異常な)コマンドも含む)を一旦、第二の記憶手段に保存してからコマンドの解析処理を行うことができ、正常な制御コマンドの取りこぼしを防止することができる場合がある。
また、前記第二の制御手段は、第三の処理(例えば、送信コマンド処理)を少なくとも実行可能なものであり、前記第三の処理は、エラーに関するコマンドを前記第一の制御手段に送信する処理を少なくとも含むものであり、前記第二の制御手段は、前記複数のコマンドとは異なるコマンドが前記第一の記憶手段に記憶されている場合であっても、前記第三の処理を少なくとも実行しないものとしてもよい。また、前記第二の制御手段は、処理実行条件の成立があった場合に、前記第三の処理を少なくとも実行可能なものであり、前記処理実行条件は、前記複数のコマンドとは異なるコマンドが前記第一の記憶手段に記憶されている場合であっても、成立しない場合がある条件である、ものとしてもよい。
このような構成とすることにより、第二の制御手段(払出制御部)は、複数のコマンドとは異なるコマンド(受信すべきでない(異常な)コマンド)の受信を条件とすることないため、正常な制御コマンドの取りこぼしを防止することができる場合がある。
また、前記第一の制御手段は、遊技制御を少なくとも実行可能な第一の制御マイクロプロセッサを少なくとも含むものであり、前記第二の制御手段は、賞を付与する制御(以下、「賞付与制御」という。)を少なくとも実行可能な第二の制御マイクロプロセッサを少なくとも含むものである、ものとしてもよい。また、前記第一の制御マイクロプロセッサは、第一のシリアル通信回路を少なくとも含むものであり、前記第二の制御マイクロプロセッサは、第二のシリアル通信回路を少なくとも含むものであり、前記第二の制御マイクロプロセッサは、RAMを少なくとも含むものであり、前記第二のシリアル通信回路は、前記第一の記憶手段を少なくとも含むものであり、前記RAMは、前記第二の記憶手段を少なくとも含むものである、ものとしてもよい。
また、前記第一の制御手段は、第一の制御プログラムに応じて前記遊技制御を少なくとも実行可能なものであり、前記第二の制御手段は、第二の制御プログラムに応じて前記賞付与制御を少なくとも実行可能なものであり、前記第二の制御プログラムは、メイン処理を少なくとも含むものであり、前記第二の制御プログラムは、割込処理を少なくとも含むものであり、前記第二の処理は、前記割込処理において少なくとも実行可能なものである、ものとしてもよい。
このような構成によれば、第二の制御手段で受信したコマンドを一旦、第二の記憶手段(バッファ)に保存してからコマンドの解析処理を行うことができ、コマンドの取りこぼしを防止することができる場合がある。
また、受信コマンドの第二の記憶手段への保存をコマンド解析処理に優先して行うことにより、第一の記憶手段(受信データレジスタ774)から第一の記憶領域(CPUコアレジスタ712)にコマンドが送信される期間を短縮することができるので、コマンドが各レジスタに点在する状況を減らすことが可能になるため、遊技制御の安定化が可能になる場合がある。
また、前記第二の制御マイクロプロセッサは、RAMを少なくとも含むものであるものとしてもよい。また、前記複数のコマンドのうちの少なくとも一つは、第一のコマンドであり、前記第一のコマンドは、前記賞を付与することを指令するコマンドを少なくとも含むものとしてもよい。また、前記遊技台は、ぱちんこ機またはスロットマシンである、ものとしてもよい。
また、本実施形態に係る遊技台(例えば、パチンコ機100)は、第一の制御手段(例えば、主制御部300)と、第二の制御手段(例えば、払出制御部600)と、を備えた遊技台であって、前記第二の制御手段は、前記第一の制御手段と、シリアル通信線を介して電気的に接続された手段であり、前記第二の制御手段は、複数の記憶手段を含む手段であり、前記複数の記憶手段のうちの少なくとも一つは、第一の記憶手段(例えば、RAM708の第一の領域708A)であり、前記複数の記憶手段のうちの少なくとも一つは、第二の記憶手段(例えば、RAM708の第二の領域708B、受信コマンドバッファエリア)であり、前記第一の制御手段は、第一の処理(例えば、コマンド送信処理)を実行可能な手段であり、前記第二の制御手段は、第二の処理を実行可能な手段であり、前記第二の制御手段は、第三の処理(例えば、図19のコマンド解析処理、図22(a)の賞球コマンド受信時処理)を実行可能な手段であり、前記第二の制御手段は、電断処理(例えば、図16の払出制御部メイン処理の電断処理(ステップS313))を実行可能な手段であり、前記第二の制御手段は、割込処理(例えば、図17の払出制御部割込処理)を実行可能な手段であり、前記第一の処理は、複数のコマンドのうちの少なくとも一のコマンド(以下、「制御コマンド」という。)を前記第二の制御手段に送信する処理を含むものであり、前記第一の記憶手段は、少なくとも電源状態情報を含む情報が記憶される記憶手段であり、前記第二の処理は、コマンドを前記第二の記憶手段に記憶させる処理(例えば、図18(a)の受信コマンド処理)を含むものであり、前記第三の処理は、賞球に関する処理を含むものであり、前記第一の記憶手段は、格納されていた前記情報が前記電断処理において退避される記憶手段であり、前記第二の記憶手段は、格納されていた前記コマンドが前記電断処理において退避されない記憶手段であり、前記第二の記憶手段は、電源投入後の最初の前記割込処理の前(例えば、図16の払出制御部メイン処理の復電処理(ステップS306)、初期化処理(ステップS305))に初期化される記憶手段であり、前記第二の制御手段は、前記複数のコマンドとは異なるコマンド(以下、「異なるコマンド(例えば、意図しないコマンド、不正なコマンド)」という。)を受信した場合であっても、前記第二の処理を実行可能な手段であり、前記第二の制御手段は、処理実行条件が成立した場合(例えば、賞球コマンド受付許可フラグがオンの場合)に前記第三の処理を実行する場合がある手段であり、前記第二の制御手段は、前記処理実行条件が成立した場合に前記異なるコマンドに関する処理を実行しない手段であり、前記処理実行条件は、前記異なるコマンドが前記第二の記憶手段に記憶されている場合には、成立しない場合がある条件である、ことを特徴とする遊技台である。
また、前記第二の制御手段は、第四の処理(例えば、送信コマンド処理)を実行可能な手段であり、前記第四の処理は、エラーに関するコマンドを前記第一の制御手段に送信する処理を含むものであり、前記第二の制御手段は、前記複数のコマンドとは異なるコマンドが前記第一の記憶手段に記憶されている場合であっても、前記第四の処理を少なくとも実行しない手段である、ものであってもよい。
また、前記第二の制御手段は、前記処理実行条件の成立があった場合に、前記第四の処理を実行可能な手段であり、前記処理実行条件は、前記第二の制御手段が、通信に関する前記制御コマンド(例えば、通信確認コマンド)を前記第一の制御手段に送信した後に成立する場合がある条件であってもよい。
また、前記第一の制御手段は、遊技制御を実行可能な第一の制御マイクロプロセッサを含む手段であり、前記第二の制御手段は、賞を付与する制御(以下、「賞付与制御」という。)を実行可能な第二の制御マイクロプロセッサを含む手段であってもよい。
また、前記第一の制御マイクロプロセッサは、第一のシリアル通信回路を含むものであり、前記第二の制御マイクロプロセッサは、第二のシリアル通信回路を含むものであり、前記第二の制御マイクロプロセッサは、RAMを含むものであり、前記第二のシリアル通信回路は、前記第一の記憶手段を含むものであり、前記RAMは、前記第二の記憶手段を含むものであってもよい。
また、前記第一の制御手段は、第一の制御プログラムに応じて前記遊技制御を実行可能な手段であり、前記第二の制御手段は、第二の制御プログラムに応じて前記賞付与制御を実行可能な手段であり、前記第二の制御プログラムは、メイン処理を含むものであり、前記第二の制御プログラムは、前記割込処理を含むものであり、前記第二の処理は、前記割込処理において実行可能なものであってもよい。
また、前記第二の制御マイクロプロセッサは、RAMを含むものであってもよい。
また、前記複数のコマンドのうちの少なくとも一つは、第一のコマンドであり、前記第一のコマンドは、前記賞を付与することを指令するコマンドを含むものであってもよい。
また、前記遊技台は、ぱちんこ機またはスロットマシンであってもよい。
また、本実施形態に係る遊技台(例えば、パチンコ機100)は、第二の制御手段(例えば、主制御部300とは異なる制御部)を備えた遊技台であって、前記第二の制御手段は、第一の記憶手段(例えば、RAM708の所定の領域)を含む手段であり、前記第二の制御手段は、複数種類の処理を実行可能な手段であり、前記複数種類の処理のうちの一の処理は、第一の処理(例えば、受信コマンドをRAM708の所定の領域に格納する処理)であり、前記複数種類の処理のうちの一の処理は、第二の処理(例えば、RAM708の所定の領域を初期化する処理)であり、前記複数種類の処理のうちの一の処理は、第三の処理(例えば、コマンドに関する処理)であり、前記第一の処理は、データを前記第一の記憶手段に記憶する処理であり、前記データが第一の種類のデータとは異なるデータ(以下、「第一のデータ(例えば、本来受け付けるべきでないコマンド、意図しないコマンド、不正なコマンド)」という。)であっても前記第一の処理を実行可能に構成されており、前記第二の処理が実行されることによって前記第一の記憶手段が初期化されるように構成されており、前記第二の制御手段は、割込み処理(例えば、図17の払出制御部割込処理)を実行可能な手段であり、電源投入後の最初の前記割込み処理の実行前に、前記第二の処理を実行可能に構成されており、前記第一の記憶手段に前記第一の種類のデータが記憶されている状態において(例えば、賞球コマンド受付許可フラグがオンの場合に)、前記第三の処理を実行可能に構成されており、前記第一の記憶手段に前記第一のデータのみが記憶されている状態において、前記第三の処理を実行しないように構成されている、ことを特徴とする遊技台である。
また、本実施形態に係る遊技台(例えば、パチンコ機100)は、第二の制御手段(具体的には、払出制御部600)を備えた遊技台であって、前記第二の制御手段は、第一の記憶手段(具体的には、RAM708の第二の領域708B、受信コマンドバッファエリア708R)を含む手段であり、前記第二の制御手段は、複数種類の処理を実行可能な手段であり、前記複数種類の処理のうちの一の処理は、第一の処理(具体的には、図18(a)の受信コマンド処理)であり、前記複数種類の処理のうちの一の処理は、第二の処理(具体的には、図16の払出制御部メイン処理の復電処理(ステップS306)、初期化処理(ステップS305))であり、前記複数種類の処理のうちの一の処理は、第三の処理(具体的には、図19のコマンド解析処理、図22(a)の賞球コマンド受信時処理)であり、前記第一の処理は、データを前記第一の記憶手段に記憶する処理であり、前記データが第一の種類のデータとは異なるデータ(以下、「第一のデータ(具体的には、主制御通信確認コマンドや賞球コマンド以外のコマンド、意図しないコマンド、不正なコマンド)」という。)であっても前記第一の処理を実行可能に構成されており、前記第二の処理が実行されることによって前記第一の記憶手段が初期化されるように構成されており、前記第二の制御手段は、割込み処理(具体的には、図17の払出制御部割込処理)を実行可能な手段であり、電源投入後の最初の前記割込み処理の実行前(具体的には、図16の払出制御部メイン処理の復電処理(ステップS306)、初期化処理(ステップS305))に、前記第二の処理を実行可能に構成されており、前記第一の記憶手段に前記第一の種類のデータが記憶されている状態において(具体的には、賞球コマンド受付許可フラグがオンの場合に)、前記第三の処理を実行可能に構成されており、前記第一の記憶手段に前記第一のデータのみが記憶されている状態において、前記第三の処理を実行しないように構成されている、ことを特徴とする遊技台である。
また、前記第一の種類のデータは、遊技者の利益に関するデータ(例えば、賞球に関するコマンド)であってもよい。
また、前記第一の種類のデータは、遊技者の利益に関するデータ(具体的には、賞球コマンド)であってもよい。
また、前記第三の処理は、遊技者の利益に関する処理(例えば、賞球に関する処理)のうちの一の処理であってもよい。
また、第一の制御手段(例えば、主制御部300)を有し、前記第一の制御手段は、前記第一の種類のデータを前記第二の制御手段に送信可能な手段であってもよい。
また、前記第一の制御手段は、第二の種類のデータ(例えば、エラーを示す異常情報(デバイス情報))を前記第二の制御手段に送信可能な手段であってもよい。
また、前記第一の制御手段は、遊技制御を実行可能な第一の制御マイクロプロセッ(例えば、主制御部300の基本回路302)サを含む手段であってもよい。
また、前記第一の制御マイクロプロセッサは、第一のシリアル通信回路(例えば、主制御部300側のシリアル通信回路)を含むものであってもよい。
また、前記第一の制御手段は、第一の制御プログラム(例えば、ROM306に予め記憶している制御プログラム)に応じて前記遊技制御を実行可能な手段であってもよい。
また、前記第二の制御手段は、賞を付与する制御(以下、「賞付与制御」という。)を実行可能な第二の制御マイクロプロセッサ(例えば、払出制御部600の基本回路)を含む手段であってもよい。
また、前記第二の制御マイクロプロセッサは、第二のシリアル通信回路(例えば、払出側マイコン610のシリアル通信回路)を含むものであってもよい。
また、前記第二のシリアル通信回路は、第二の記憶手段(シリアル通信用のレジスタ)を含むものであってもよい。
また、前記第二のシリアル通信回路は、第二の記憶手段(具体的には、ステータスレジスタ772、受信データレジスタ774、送信データレジスタ776、その他のレジスタ778)を含むものであってもよい。
また、前記第二の制御マイクロプロセッサは、RAM(例えば、RAM708)を含むものであり、前記RAMは、前記第一の記憶手段(例えば、受信コマンドバッファエリア708R)を含むものであってもよい。
また、前記第二の制御手段は、第二の制御プログラム(例えば、ROMに予め記憶している制御プログラム)に応じて前記賞付与制御を実行可能な手段であってもよい。
また、前記第二の制御プログラムは、メイン処理(例えば、払出制御部メイン処理)を含むものであり、前記第二の制御プログラムは、前記割込み処理を含むものであり、前記第一の処理は、前記割込み処理において実行可能なものであってもよい。
また、前記遊技台は、ぱちんこ機であってもよい。また、前記遊技台は、スロットマシンであってもよい。
また、本実施形態に係る遊技台(例えば、パチンコ機100)は、遊技制御を少なくとも実行可能な第一の制御手段(例えば、主制御部300)と、賞を付与する制御を少なくとも実行可能な第二の制御手段(例えば、払出制御部600)と、記憶手段(例えば、CPUコアレジスタ722、RAM708など)と、を少なくとも備えた遊技台であって、前記第一の制御手段と前記第二の制御手段は、シリアル通信線を介して少なくとも電気的に接続されたものであり、前記第一の制御手段は、コマンド送信条件の成立があった場合に、コマンドを前記第二の制御手段に少なくとも送信可能なものであり、前記第二の制御手段は、受信した前記コマンドを前記記憶手段に記憶する処理(以下、「コマンド記憶処理」という。)を少なくとも実行可能なものであり、前記第二の制御手段は、前記記憶手段に記憶された前記コマンドを解析する処理(以下、「コマンド解析処理」という。)を少なくとも実行可能なものである、ことを特徴とする遊技台である。
本実施形態に係る遊技台によれば、第二の制御手段で受信したコマンドを一旦、記憶領域(バッファ)に保存してからコマンドの解析処理を行うことができ、コマンドの取りこぼしを防止することができる場合がある。
また、受信コマンドの第一の記憶領域(バッファ)への保存をコマンド解析処理に優先して行うことにより、第三の記憶領域(受信データレジスタ774)から第一の記憶領域にコマンドが送信される期間または、第三の記憶領域(受信データレジスタ774)から第二の記憶領域(CPUコアレジスタ712)にコマンドが送信される期間を短縮することができるので、コマンドが各レジスタに点在する状況を減らすことが可能になるため、遊技制御の安定化が可能になる場合がある。
また、前記第二の制御手段(例えば、払出制御部600)は、メイン処理を少なくとも実行可能なものであり、前記第二の制御手段は、所定の割込み要因が発生したことに応じて開始される所定の割込処理を少なくとも実行可能なものであり、前記メイン処理は、前記コマンド解析処理を少なくとも行うものであり、前記割込処理は、前記コマンド記憶処理を少なくとも行うものである、ものとしてもよい。
このような構成とすることにより、第二の制御手段で受信したコマンドを一旦、記憶領域(バッファ)に保存してからコマンドの解析処理を行うことができ、コマンドの取りこぼしを防止することができる場合がある。
また、前記メイン処理は、前記記憶手段への書き込み参照位置(設定ポインタの値)と読み出し参照位置(解析ポインタ値)を比較する処理を少なくとも行う、ものとしてもよい。
このような構成とすることにより、概念的にあたかも環であるかのようにしてデータが処理され、実際の領域(固定長のバッファエリア)と二つのポインター変数(設定ポインタと解析ポインタ)のみで、データが溢れることの無い記憶領域の管理を実現できる場合がある。
また、前記記憶手段は、第一の領域(例えば、第一の領域708A)と第二の領域(例えば、第二の領域708B)を含むものであり、前記第一の領域は、電源遮断時には格納された情報が退避される領域であり、前記第二の領域は、電源投入直後に初期化される領域であり、前記コマンドは、前記第二の領域に記憶されるものとしてのよい。また、前記第二の領域には、前記コマンドの書き込み参照位置情報と前記コマンドの読み出し参照位置情報が記憶されるものとしてもよい。
このような構成とすることにより、第一の制御手段と第二の制御手段の初期起動時であっても復帰起動時であっても、第二の制御手段の電源投入直後は、第二の領域をクリアすることができ、意図しないタイミングで賞球コマンド等が第二の制御手段に送信されることを防止できる場合がある。
また、前記コマンドは、前記賞を付与することを指令するコマンドを少なくとも含むものとしてもよい。また、前記コマンドは、前記第一の制御手段と前記第二の制御手段との通信を確認するコマンドを少なくとも含むものである、ものとしてもよい。
また、前記第一の制御手段は、前記遊技制御を少なくとも実行可能な第一の制御マイクロプロセッサ(例えば、主制御部300の基本回路320)を少なくとも含むものであってもよい。また、前記第二の制御手段は、前記賞を付与する制御を少なくとも実行可能な第二の制御マイクロプロセッサ(例えば、払出制御部600の基本回路)を少なくとも含むものであってもよい。
<付記>
<付記1>
遊技制御を少なくとも実行可能な第一の制御手段と、
賞を付与する制御を少なくとも実行可能な第二の制御手段と、
記憶手段と、
を少なくとも備えた遊技台であって、
前記第一の制御手段と前記第二の制御手段は、シリアル通信線を介して少なくとも電気的に接続されたものであり、
前記第一の制御手段は、コマンド送信条件の成立があった場合に、コマンドを前記第二の制御手段に少なくとも送信可能なものであり、
前記第二の制御手段は、受信した前記コマンドを前記記憶手段に記憶する処理(以下、「コマンド記憶処理」という。)を少なくとも実行可能なものであり、
前記第二の制御手段は、前記記憶手段に記憶された前記コマンドを解析する処理(以下、「コマンド解析処理」という。)を少なくとも実行可能なものである、
ことを特徴とする遊技台。
<付記2>
付記1に記載の遊技台であって、
前記第二の制御手段は、メイン処理を少なくとも実行可能なものであり、
前記第二の制御手段は、所定の割込み要因が発生したことに応じて開始される所定の割込処理を少なくとも実行可能なものであり、
前記メイン処理は、前記コマンド解析処理を少なくとも行うものであり、
前記割込処理は、前記コマンド記憶処理を少なくとも行うものである、
ことを特徴とする遊技台。
<付記3>
付記2に記載の遊技台であって、
前記メイン処理は、前記記憶手段への書き込み参照位置と読み出し参照位置を比較する処理を少なくとも行う、
ことを特徴とする遊技台。
<付記4>
付記1〜3のいずれかに記載の遊技台であって、
前記記憶手段は、第一の領域と第二の領域を含むものであり、
前記第一の領域は、電源遮断時には格納された情報が退避される領域であり、
前記第二の領域は、電源投入直後に初期化される領域であり、
前記コマンドは、前記第二の領域に記憶される、
ことを特徴とする遊技台。
<付記5>
付記4に記載の遊技台であって、
前記第二の領域には、前記コマンドの書き込み参照位置情報と前記コマンドの読み出し参照位置情報が記憶される、
ことを特徴とする遊技台。
<付記6>
付記1〜5のいずれかに記載の遊技台であって、
前記コマンドは、前記賞を付与することを指令するコマンドを少なくとも含むものである、
ことを特徴とする遊技台。
<付記7>
付記1〜6のいずれかに記載の遊技台であって、
前記コマンドは、前記第一の制御手段と前記第二の制御手段との通信を確認するコマンドを少なくとも含むものである、
ことを特徴とする遊技台。
<付記8>
付記1〜7のいずれかに記載の遊技台であって、
前記第一の制御手段は、前記遊技制御を少なくとも実行可能な第一の制御マイクロプロセッサを少なくとも含むものである、
ことを特徴とする遊技台。
<付記9>
付記1〜8のいずれかに記載の遊技台であって、
前記第二の制御手段は、前記賞を付与する制御を少なくとも実行可能な第二の制御マイクロプロセッサを少なくとも含むものである、
ことを特徴とする遊技台。
また、本発明に係る遊技台は、電子的な賞を付与する封入式遊技機や、メダルレスのスロットマシンに適用することもできる。また、主制御部、第1副制御部、および第2副制御部をワンチップで構成してもよいし、主制御部と第1副制御部で双方向の通信が可能に構成してもよい。また、主制御部と第1副制御部で双方向の通信を可能とする一方で、第1副制御部から第2副制御部への通信は一方向の通信としてもよい。
また、本発明の実施の形態に記載された作用および効果は、本発明から生じる最も好適な作用および効果を列挙したに過ぎず、本発明による作用および効果は、本発明の実施の形態に記載されたものに限定されるものではない。また、実施例に記載した複数の構成のうち、1つの構成に記載している内容を、他の構成に適用することでより遊技の幅を広げられる場合がある。
本発明の遊技台は、回胴遊技機(スロットマシン)や弾球遊技機(パチンコ等)に代表される遊技台の分野で特に利用することができる。
100 パチンコ機
102 外枠
104 内枠
140 球貸ボタン
142 返却ボタン
144 切替ボタン
208 装飾図柄表示装置
208d 演出表示領域
212 第1特図表示装置
214 第2特図表示装置
230 第1特図始動口
232 第2特図始動口
2321 羽根部材
234 可変入賞口
2341 扉部材
300 主制御部
304 CPU
306 ROM
308 RAM
600 払出制御部
708 RAM

Claims (16)

  1. 第二の制御手段を備えた遊技台であって、
    前記第二の制御手段は、第一の記憶手段を含む手段であり、
    前記第二の制御手段は、複数種類の処理を実行可能な手段であり、
    前記複数種類の処理のうちの一の処理は、第一の処理であり、
    前記複数種類の処理のうちの一の処理は、第二の処理であり、
    前記複数種類の処理のうちの一の処理は、第三の処理であり、
    前記第一の処理は、データを前記第一の記憶手段に記憶する処理であり、
    前記データが第一の種類のデータとは異なるデータ(以下、「第一のデータ」という。)であっても前記第一の処理を実行可能に構成されており、
    前記第二の処理が実行されることによって前記第一の記憶手段が初期化されるように構成されており、
    前記第二の制御手段は、割込み処理を実行可能な手段であり、
    電源投入後の最初の前記割込み処理の実行前に、前記第二の処理を実行可能に構成されており、
    前記第一の記憶手段に前記第一の種類のデータが記憶されている状態において、前記第三の処理を実行可能に構成されており、
    前記第一の記憶手段に前記第一のデータのみが記憶されている状態において、前記第三の処理を実行しないように構成されている、
    ことを特徴とする遊技台。
  2. 請求項1に記載の遊技台であって、
    前記第一の種類のデータは、遊技者の利益に関するデータである、
    ことを特徴とする遊技台。
  3. 請求項1または請求項2に記載の遊技台であって、
    前記第三の処理は、遊技者の利益に関する処理のうちの一の処理である、
    ことを特徴とする遊技台。
  4. 請求項1乃至請求項3のうちいずれか一項に記載の遊技台であって、
    第一の制御手段を有し、
    前記第一の制御手段は、前記第一の種類のデータを前記第二の制御手段に送信可能な手段である、
    ことを特徴とする遊技台。
  5. 請求項4に記載の遊技台であって、
    前記第一の制御手段は、第二の種類のデータを前記第二の制御手段に送信可能な手段である、
    ことを特徴とする遊技台。
  6. 請求項4または請求項5に記載の遊技台であって、
    前記第一の制御手段は、遊技制御を実行可能な第一の制御マイクロプロセッサを含む手段である、
    ことを特徴とする遊技台。
  7. 請求項6に記載の遊技台であって、
    前記第一の制御マイクロプロセッサは、第一のシリアル通信回路を含むものである、
    ことを特徴とする遊技台。
  8. 請求項6または請求項7に記載の遊技台であって、
    前記第一の制御手段は、第一の制御プログラムに応じて前記遊技制御を実行可能な手段である、
    ことを特徴とする遊技台。
  9. 請求項1乃至請求項8のうちいずれか一項に記載の遊技台であって、
    前記第二の制御手段は、賞を付与する制御(以下、「賞付与制御」という。)を実行可能な第二の制御マイクロプロセッサを含む手段である、
    ことを特徴とする遊技台。
  10. 請求項9に記載の遊技台であって、
    前記第二の制御マイクロプロセッサは、第二のシリアル通信回路を含むものである、
    ことを特徴とする遊技台。
  11. 請求項10に記載の遊技台であって、
    前記第二のシリアル通信回路は、第二の記憶手段を含むものである、
    ことを特徴とする遊技台。
  12. 請求項9乃至請求項11のうちいずれか一項に記載の遊技台であって、
    前記第二の制御マイクロプロセッサは、RAMを含むものであり、
    前記RAMは、前記第一の記憶手段を含むものである、
    ことを特徴とする遊技台。
  13. 請求項9乃至請求項12のうちいずれか一項に記載の遊技台であって、
    前記第二の制御手段は、第二の制御プログラムに応じて前記賞付与制御を実行可能な手段である、
    ことを特徴とする遊技台。
  14. 請求項13に記載の遊技台であって、
    前記第二の制御プログラムは、メイン処理を含むものであり、
    前記第二の制御プログラムは、前記割込み処理を含むものであり、
    前記第一の処理は、前記割込み処理において実行可能なものである、
    ことを特徴とする遊技台。
  15. 請求項1乃至請求項14のうちいずれか一項に記載の遊技台であって、
    前記遊技台は、ぱちんこ機である、
    ことを特徴とする遊技台。
  16. 請求項1乃至請求項14のうちいずれか一項に記載の遊技台であって、
    前記遊技台は、スロットマシンである、
    ことを特徴とする遊技台。
JP2016119601A 2016-06-16 2016-06-16 遊技台 Pending JP2016163823A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016119601A JP2016163823A (ja) 2016-06-16 2016-06-16 遊技台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016119601A JP2016163823A (ja) 2016-06-16 2016-06-16 遊技台

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013159091A Division JP5956390B2 (ja) 2013-07-31 2013-07-31 遊技台

Publications (1)

Publication Number Publication Date
JP2016163823A true JP2016163823A (ja) 2016-09-08

Family

ID=56875833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016119601A Pending JP2016163823A (ja) 2016-06-16 2016-06-16 遊技台

Country Status (1)

Country Link
JP (1) JP2016163823A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020081370A (ja) * 2018-11-26 2020-06-04 株式会社ソフイア 遊技機
JP2022040275A (ja) * 2019-02-18 2022-03-10 株式会社ソフイア 遊技機
JP2023143501A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143499A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143502A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143503A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143500A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010005116A (ja) * 2008-06-26 2010-01-14 Sankyo Co Ltd 遊技機
JP2013081505A (ja) * 2011-10-06 2013-05-09 Sophia Co Ltd 遊技機

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010005116A (ja) * 2008-06-26 2010-01-14 Sankyo Co Ltd 遊技機
JP2013081505A (ja) * 2011-10-06 2013-05-09 Sophia Co Ltd 遊技機

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020081370A (ja) * 2018-11-26 2020-06-04 株式会社ソフイア 遊技機
JP7294627B2 (ja) 2018-11-26 2023-06-20 株式会社ソフイア 遊技機
JP2022040275A (ja) * 2019-02-18 2022-03-10 株式会社ソフイア 遊技機
JP2023143503A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143499A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143502A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143501A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP2023143500A (ja) * 2022-03-25 2023-10-06 京楽産業.株式会社 遊技機
JP7416458B2 (ja) 2022-03-25 2024-01-17 京楽産業.株式会社 遊技機
JP7416457B2 (ja) 2022-03-25 2024-01-17 京楽産業.株式会社 遊技機
JP7416454B2 (ja) 2022-03-25 2024-01-17 京楽産業.株式会社 遊技機
JP7416456B2 (ja) 2022-03-25 2024-01-17 京楽産業.株式会社 遊技機
JP7416455B2 (ja) 2022-03-25 2024-01-17 京楽産業.株式会社 遊技機

Similar Documents

Publication Publication Date Title
JP2016163823A (ja) 遊技台
JP4975876B1 (ja) 遊技台
JP4976571B1 (ja) 遊技台
JP2012223330A (ja) 遊技台
JP2015116353A (ja) 遊技台
JP5793760B1 (ja) 遊技台
JP2009112700A (ja) 遊技台
JP4976569B1 (ja) 遊技台
JP5903753B2 (ja) 遊技台
JP5888528B2 (ja) 遊技台
JP5256438B2 (ja) 遊技台
JP5720022B2 (ja) 遊技台
JP2014030730A (ja) 遊技台
JP5956390B2 (ja) 遊技台
JP2015202169A (ja) 遊技台
JP2015202168A (ja) 遊技台
JP2013031596A (ja) 遊技台
JP5344357B2 (ja) 遊技台
JP5176174B2 (ja) 遊技台
JP5555948B1 (ja) 遊技台
JP5770216B2 (ja) 遊技台
JP2015164653A (ja) 遊技台
JP4740165B2 (ja) 遊技台
JP2013022449A (ja) 遊技台
JP2012223573A (ja) 遊技台

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170613

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20171212