JP2014045844A - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP2014045844A JP2014045844A JP2012189661A JP2012189661A JP2014045844A JP 2014045844 A JP2014045844 A JP 2014045844A JP 2012189661 A JP2012189661 A JP 2012189661A JP 2012189661 A JP2012189661 A JP 2012189661A JP 2014045844 A JP2014045844 A JP 2014045844A
- Authority
- JP
- Japan
- Prior art keywords
- special
- game
- command
- random number
- information
- 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
Links
Images
Landscapes
- Pinball Game Machines (AREA)
- Display Devices Of Pinball Game Machines (AREA)
Abstract
【解決手段】演出制御装置300は、他の遊技機に遊技機間通信のコマンド(サブ間コマンド)を送信する際、複数段階に分けてコマンドを送信可能な構成とする。例えば、サブ間コマンドのうちの同期演出系コマンドについては、まず予告演出の内容と準備実行を指令する第1演出コマンド(第1遊技機間コマンド)を送信し、その後当該予告演出の実行開始を指示する第2演出コマンド(第2遊技機間コマンド)を送信する構成とする。
【選択図】図160
Description
演出手段と、この演出手段を制御して演出を行う制御装置とを備えた遊技機において、
前記制御装置は、
他の遊技機(他機)の制御装置との間で遊技機間通信が可能であり、
他の遊技機に前記遊技機間通信によってコマンドを送信する際、複数段階に分けてコマンドを送信可能であることを特徴とする。
A.パチンコ機の正面構成
最初に、図1によって本例のパチンコ機の全体構成について説明する。図1は本例のパチンコ機1の前面側斜視図である。
パチンコ機1は、当該パチンコ機1が設置される島に対して固定される機枠2と、この機枠2にヒンジ部3において回動可能に軸支されることによって、機枠2に対して開閉自在とされた前面枠4とを備える。この前面枠4には、遊技盤20(図2に示す)が取り付けられている。
ここで、前面枠4は遊技枠という名称で呼称され、ガラス枠5は前枠という名称で呼称されることもあるが、本実施例では前面枠4、ガラス枠5で説明している。
このガラス枠5の下側には、操作パネル6が設けられている。
なお、通常、パチンコ機1には遊技媒体貸出装置としてのCRユニット(カード式球貸制御ユニット)が併設されることもあるが、ここでは図示を略している。ただし、図4では、CRユニットをカードユニット551として図示しており、このカードユニット551との間で信号などの伝達を中継するカードユニット接続基板54についても図4で示している。
また、前面枠4の開閉側(図1において右側)の縁部には、前面枠4及びガラス枠5の施錠装置(図示省略)の鍵挿入部8が形成されている。
また、操作パネル6には、上皿7の遊技球を遊技者の操作によって移すことができる下皿10と、遊技球の発射操作を行う発射操作ハンドル11とが設けられている。
また、図1において符号12a、12bで示すものは、効果音等を出力するスピーカである。このうち符号12aは、ガラス枠5の上部左右両側に設けられた上スピーカである。また符号12bは操作パネル6の左端部(下皿10の左側)に設けられた下スピーカである。
また、パチンコ機1の盤と枠という概念で装飾機構を区分するとすれば、装飾ランプ13とムービングライト14は枠側の演出機構に相当し、図6に示す枠装飾装置43を構成し、またムービングライト14は図6に示す枠演出装置45も構成する。
図2において、符号21は遊技盤20のガイドレールであり、既述したように、遊技盤前面の略円形領域がこのガイドレール21で囲まれることにより遊技領域22が形成されている。
遊技領域22には、図2に示すように、アウト球流入口23、センターケース24、第1始動入賞口25、普通電動役物(普電)としての第2始動入賞口26、変動入賞装置27、一般入賞口28〜31、普図始動ゲート32、多数の遊技釘(図示省略)などが設けられている。また、遊技盤20の遊技領域22外には、一括表示装置35が設けられている。なお遊技釘は、遊技領域22の上部に飛入した遊技球がこれに当たりながら流下するものであり、センターケース等の取付部分を除いた遊技領域内に複数本植設されている。
なお、演出又は装飾のためのランプ類は、遊技盤20のセンターケース24以外の部分(遊技領域22外でもよい)にも設けられる。なお、遊技盤20(センターケース24含む)に設けられた演出又は装飾のためのランプ類は、盤側の演出機構に相当し、盤装飾装置42(図6に示す)また、センターケース24に設けられた電動役物は、盤側の演出機構に相当し、盤演出装置44(図6に示す)を構成する。なお、盤演出装置44を構成する電動役物は、遊技盤20のセンターケース24以外の箇所に設けられてもよい。
表示装置41は、数字や文字などの識別情報(特図という)を表示可能な表示部41a(画面)を有し、複数列の特図を表示可能である。例えば、左側と中央と右側に特図を縦3列に表示し、各列において数字や文字等よりなる特図を停止状態で表示(停止表示)したり、あるいは変動状態(例えば、縦方向にスクロールする状態)で表示(即ち、変動表示)したりすることが可能である。
また表示部には、上記特図とは別個に背景画像やキャラクタ画像などの演出用又は情報報知用の画像、或いは、いわゆる普図に相当する画像が表示可能である。なお、特図とは大当りに関連する変動表示ゲームで変動表示される識別情報であり、普図とは普図当り(大当りではない)に関連する変動表示ゲームで変動表示される識別情報である。
なお、第2始動入賞口26は普通電動役物(普電)ともいい、普通変動入賞装置に相当する。
また変動入賞装置27は、開閉部材27bによって開閉される大入賞口27aを有する装置(いわゆるアタッカー)である。この大入賞口27aは、後述する大当りになったことを条件として開放されて遊技球が入賞可能となる。
遊技球が普図始動ゲート32を通過したとき、表示部41a等(表示装置41とは別に独自の普図表示器を配置してもよい)で普図の変動表示による普図の変動表示ゲーム(以下、普図変動表示ゲームという)が行われ、停止した普図が所定の態様(特定表示態様)であれば、普図当りと呼ばれる特典が付与される。
普図当りになると、第2始動入賞口26の一対の開閉部材26aが逆ハの字に開いた開状態に、所定の開放時間だけ一時的に保持される遊技が行われ、遊技球が始動入賞し易くなり、その分、特図の変動表示ゲームの実施回数が増えて大当りになる可能性が増す。
また、上記普図の変動表示ゲーム中に、普図始動ゲート32にさらに遊技球が入賞したときには、後述の一括表示装置35の表示器によって普図始動記憶の保留表示が実行されて、例えば4個まで記憶され、普図の変動表示ゲームの終了後に、その記憶に基づいて上記普図の変動表示ゲームが繰り返される。なお、普図の確率を高確率にすれば、普図当たりしやすくなる。
なお、一括表示装置35の表示器によって表示される普図始動記憶の保留表示は、本普図始動記憶である。一括表示装置35とは別に、飾り普図始動記憶を表示するための独自の普図始動記憶表示器を遊技領域22に配置してもよい
ここで、時短について説明しておくと、以下のようなものである。
時短は「時間短縮」の略で、大当たり終了後、特図や普図の変動時間を通常よりも短縮し、時間効率を高めるとともに、普図当たり確率を高めて普通電動役物(普電)(第2始動入賞口26)の開放(普電の開放時間を通常よりも長くすることも含む)による始動口への入賞のサポートを行うことで、一定の特図の変動表示ゲームの実施回数まで持ち玉(持球数)を減らさずに効率よく特図を変動させる機能である。
なお、この一括表示装置35の表示器によって表示されるものが本特図や本普図(正式な特図や普図)であるのに対して、前述の変動表示装置41の表示部等で行われる特図や普図の表示は、遊技者向けの演出用のダミー表示である。このため、遊技者から見て特図や普図といえば、このダミー表示の方を指している。なお以下では、このダミー表示であることを強調する場合に、例えば「飾り特図」と表記する。
このように、この一括表示装置35は、遊技者向けのものではなく、遊技盤20の検査などで使用されるものである。例えば、遊技者向けの特図の始動記憶の表示(特図保留表示)は、例えば変動表示装置41の表示部、或いは遊技盤20に設けた複数のランプ(発光部)によって行われる。
次に図3は、本実施例のパチンコ機1の裏側全体構成を示す図である。
パチンコ機1における裏機構の主要な部品としては、貯留タンク51、誘導路52a、払出ユニット53、カードユニット接続基板54、外部情報端子板55、払出制御装置200、遊技制御装置100、演出制御装置300、及び電源装置500などがある。
外部情報端子板55はパチンコ機1の各種情報(固有IDを含む)をホールの管理装置140に送る場合の中継端子基板(外部端子基板)としての機能を有するものである。
固有IDとは、後述のように、遊技用マイコン101を識別可能な個体識別情報(主基板固有ID)や払出用マイコン201を識別可能な個体識別情報(払出固有ID)を表す概念であり、これらを遊技機の外部に出力するのは、固有IDを外部でチェックして遊技機の正当性を判定するためである。上記の管理装置140は遊技機(パチンコ機1)の外部装置に相当し、固有IDに基づいてパチンコ機1の正当性を外部で判定する機能を有する。
なお、遊技機の正当性を判定する機能を有する外部装置としては、管理装置140に限るものではなく、例えばカードユニット551(図4参照)に遊技機の正当性を判定する機能を持たせてもよい。その場合は、上述の外部情報端子板55からパチンコ機1の固有IDをカードユニット551に送る構成とする。
また、遊技機の正当性の判定は、管理装置140のみで行う形態、管理装置140とカードユニット551の双方で行う形態、あるいはカードユニット551のみで行う形態の何れであってもよい。
そこで、本実施例1では必要に応じて遊技用マイコン101を識別可能な個体識別情報を主基板固有ID,払出用マイコン201を識別可能な個体識別情報を払出固有IDと適宜、区別して説明する。
また、遊技用マイコン101を識別可能な個体識別情報に対して、これと区別する概念として、払出用マイコン201を識別可能な個体識別情報を払出個体識別情報という。後述の他の実施例についても同様である。
なお、区別しないで、通常単に固有IDというときは、主基板固有IDを指す。
また、発明概念では、固有IDを「個体識別情報」と称しているが、通常の現場レベルなど一般的な場合は、個体識別情報を固有IDとして称することも多いので、本明細書において、実施例1では、個体識別情報を固有IDとして説明したり、また、明細書及び図面上も固有IDとのバランス上、固有情報あるいは固有識別情報として記述や図示することがある。
遊技制御装置100は、遊技盤20に配設されているソレノイド等を制御するとともに、他の制御装置に制御情報(コマンド)を送って、遊技の進行を統括的に管理制御するものであり(詳細後述する)、これら制御を行うマイコンを含む回路が形成された基板が、所定のケース内に収納された構成となっている。
また、カードユニット接続基板54(図3参照、図4にも図示)は、パチンコ機1側と球を貸し出すCRユニット(カードユニット551のこと。以下同様)側との配線接続のための基板である。このカードユニット接続基板54での上記配線接続がされていないと、パチンコ機1では遊技球の発射が不可能となるように制御される。
次に、本例のパチンコ機1の制御系について、図4乃至図7を参照して説明する。なお図や以下の説明において、「SW」はスイッチを意味する。また、図面では部材の名称が長い場合に図示がしにくくなるので、適宜、短めにして表記(図示)することがある。
パチンコ機1は、制御系の主な構成要素として、遊技制御装置100、払出制御装置200、演出制御装置300、発射制御装置400及び電源装置500を備えている。
まず、パチンコ機1の遊技制御装置100の構成と、この遊技制御装置100に接続される機器について、図4によって説明する。
なお、図4で矢印に添えて示す信号のうち、「主ID」とは主基板固有ID、「外部情報」とは遊技機状態信号、「賞球信号」とは払出制御装置から賞球として払い出される球数信号、「排出コマンド」とは遊技制御装置からの排出指令コマンド、「各種信号」とは払出制御装置から出される払出異常ステータス信号、シュート球切れスイッチ信号、オーバーフロースイッチ信号、ガラス枠開放スイッチ信号、前面枠開放スイッチ信号などをそれぞれ表す。
また、「外部情報」と「賞球信号」とを合わせて「外部・賞球」とも表す。
遊技制御装置100は、遊技を統括的に制御する主制御装置(主基板)であって、遊技用マイクロコンピュータ(以下、遊技用マイコンと称する)101及び検査装置接続端子102を備えている。遊技用マイコン101の詳細については後述する。
遊技制御装置100は制御装置に相当する。
また、遊技用マイコン101は遊技用演算処理装置(演算処理装置)としての機能を有し、本発明の第1の演算処理装置に相当する。
検査装置接続端子102は、例えばフォトカプラを含んで構成され、遊技用マイコン101から得られる各種の遊技情報を検査装置に伝送するためのケーブルが接続される端子である。
ここで、第1始動口スイッチ120は前記第1始動入賞口25に入賞した遊技球を1個ずつ検出する入賞球検出用のセンサであり、第2始動口スイッチ121は前記第2始動入賞口26に入賞した遊技球を1個ずつ検出する入賞球検出用のセンサである。
カウントスイッチ124は前記変動入賞装置27の大入賞口に入賞した遊技球を検出する同様のセンサである。また、入賞口スイッチ123は一般入賞口28〜31に対して設けられた同様のセンサであり、一般入賞口がn個あるときには、それぞれに1個ずつ、全体としてn個設けられる。なお、一般入賞口のそれぞれに1個ずつセンサを設けるのではなく、複数の一般入賞口に対して、全体で1個のセンサを設けるようにしてもよい。ゲートスイッチ122は前記普図始動ゲート32を通過する遊技球を1個ずつ検出するセンサである。
これら遊技球を検出する上記各センサ120、121、122、123、124は、本例では近接スイッチであり、ハイレベルが11Vでロウレベルが7Vのような負論理の検出信号を出力するように回路構成されている。
さらに、ガラス枠開放検出スイッチ211はパチンコ機前面のガラス枠5が開放されていることを検出するセンサである。前面枠開放検出スイッチ212はガラス枠5が取り付けられた前面枠4が開放されていることを検出するセンサである。
なお、遊技制御装置100には、上記各センサ120、121、122、123、124、125,126からの信号を処理する近接I/Fが設けられているが、詳細は図5を用いて後述する。
電源装置500は、24Vの交流電源から上記DC32Vの直流電圧を生成するAC−DCコンバータやDC32Vの電圧からDC12V,DC5Vなどのより低いレベルの直流電圧を生成するDC−DCコンバータなどを有する通常電源部501と、遊技用マイコン101の内部のRAMに対して停電時に電源電圧を供給するバックアップ電源部502と、停電監視回路を有し遊技制御装置100に停電の発生、回復を知らせる停電監視信号やリセット信号などの制御信号を生成して出力する制御信号生成部503と、遊技用マイコン101の内部のRAMなどを初期化するRAMクリアスイッチ504などを備える。
なお本例の場合、初期化スイッチ信号は電源投入時に読み込まれ、停電監視信号は遊技用マイコン101や払出用マイコン201が実行するメインプログラムのメインループの中で繰り返し読み込まれる。リセット信号は、制御システム全体をリセットさせる。
遊技制御装置100からは外部情報端子板55を介して遊技制御装置100の固有ID、詳しくは遊技用マイコン101を識別可能な個体識別情報(主基板固有ID)及び外部情報が外部装置としての管理装置140に出力されるようになっている。
外部情報端子板55は遊技制御装置100とケーブルで接続されており、外部情報、遊技制御装置100の固有ID(主基板固有ID)を外部装置としての管理装置140に伝送する際の中継を行う。
なお、管理装置140は遊技店に設置された多数のパチンコ機からの情報(例えば、外部情報など)を収集して、営業に必要な情報の演算処理や集計表示などの処理を行う。
なお、特典状態信号は、大当り状態終了後に発生するため、“大当り状態+遊技者に有利な状態”期間中に出力される信号である。
また、遊技制御装置100からは払出制御装置200に対してパラレル通信でデータ(例えば、払出コマンド)が送信されるようになっている。一方、払出制御装置200から遊技制御装置100に対して、払出異常ステータス信号、シュート球切れスイッチ信号、オーバーフロースイッチ信号が出力される。各信号の内容は後述する。
試射試験装置131は、認定機関が遊技機の試射試験などを行うものである。普電ソレノイド132は第2始動入賞口26の開閉部材を開閉させるソレノイド、大入賞口ソレノイド133は変動入賞装置27の開閉部材を開閉させるソレノイド、一括表示装置35は前述したように、いわゆる普図の表示や特図の表示、さらには特図や普図の始動記憶の保留表示や遊技状態の表示を行うものである。
また、遊技制御装置100からは演出制御装置300に対して、パラレル通信でデータ(例えば、演出コマンド)が送信されるようになっている。
次に、演出制御装置300の構成と、この演出制御装置300に接続される機器について説明する。
演出制御装置300は、主制御用マイコン、該主制御用マイコンの制御下でもっぱら映像制御を行う映像制御用マイコン、表示装置41への映像表示のための画像処理を行うグラフィックプロセッサとしてのVDP、各種のメロディや効果音などの出力を制御する音源LSIなどを有しているが、細かい構成については、図6で後述する。
演出制御装置300は遊技制御装置100の遊技用マイコン101からの制御コマンド(8ビットのデータ信号)を解析し、演出内容を決定して表示装置41の出力映像の内容を制御したり、音源LSIへの再生音の指示をしてスピーカ12a、12bを駆動して効果音等を出したり、前述した装飾LED301の駆動制御などの処理を実行する。また、演出制御装置300は遊技制御装置100からエラー報知の指示を受けると、エラー報知LED302に対して信号を出力してオンさせる。
ここで、遊技制御装置100の遊技用マイコン101から演出制御装置300へ送信されるコマンドには、単独コマンド(例えば、停止コマンド)の他に、単独では演出を開始せず、組で効果を発揮するものがあるが、それは例えば特図変動開始時の「変動パターンコマンド+図柄指定コマンド」などであるが、コマンドの種類の詳細などについては後述する。なお、コマンド通信はパラレル通信方式でもよいし、あるいはシリアル通信方式でもよい。本実施例では、コマンド通信としてパラレル通信方式を採用している。
次に、払出制御装置200の構成と、この払出制御装置200に接続される機器について説明する。
払出制御装置200は、遊技球の払出(賞球払出又は貸球払出)を制御する払出用マイクロコンピュータ(以下、払出用マイコンと称する)201、エラーナンバー表示器202、エラー解除スイッチ203、検査装置接続端子204を備えている。払出用マイコン201の詳細については後述する。
なお、払出用マイコン201は払出用演算処理装置(演算処理装置)としての機能を有し、本発明の第2の演算処理装置に相当する。
検査装置接続端子204は、例えばフォトカプラを含んで構成され、払出用マイコン201から得られる払い出しに関連する各種の情報を検査装置に伝送するためのケーブルが接続される端子である。エラーナンバー表示器202は払出制御の処理でエラーがある場合に、エラーの内容に応じて特定のナンバーを点灯させる。エラー解除スイッチ203は払出制御の処理でエラーがあって処理が停止した場合などに、操作されるとエラーを解除する信号を出すものである。
オーバーフロースイッチ213は下皿10の遊技球が過剰であることを検出するスイッチ、電波検知センサ214は不正などの異常な電波を検知するセンサ、払出球検出スイッチ215は払出ユニット53(図3)によって上皿7に向けて払い出される遊技球(賞球あるいは貸球)を1個ずつ検出するスイッチ、シュート球切れスイッチ216は貯留タンク51に遊技球を供給するシュートに遊技球が無いことを検出するスイッチである。
払出制御装置200は、遊技制御装置100からの信号(払出制御コマンド)に従って、払出ユニット53の払出モータ222を駆動させ、賞球を払い出させるための制御を行う。また、払出制御装置200は、カードユニット接続基板54に接続されているカードユニット(CRユニット)551からのBRQ信号(貸出要求信号)等に基づいて払出モータ222を駆動させ、貸球を払い出させるための制御を行う。
また、カードユニット接続基板54には操作パネル基板552が接続されており、操作パネル基板552はパチンコ機1に設けられている球貸可LED、残高表示器、球貸スイッチ、返却スイッチ(何れも図示略)などが接続されている。操作パネル基板552は球貸可LED、残高表示器などの信号をカードユニット(CRユニット)551から受け取るとともに、球貸スイッチ、返却スイッチからの操作信号をカードユニット(CRユニット)551に送り、貸球の払い出しに必要な制御が行われる。
なお図示省略しているが、この払出制御装置200のRAMエリアにも、停電時に電源装置500からバックアップ電源が供給される構成となっている。
なお、カードユニット551にて払出固有IDの正当性を判定する場合には、外部情報端子板55を介して払出固有IDをカードユニット551に出力する構成とする。
外部情報端子板55は払出制御装置200とケーブルで接続されており、賞球信号、払出制御装置200の固有ID(払出固有ID)を外部装置としての管理装置140に伝送する際の中継を行う。
遊技制御装置100は、遊技を統括的に制御する主制御装置であって、主基板(つまり主基板に形成された回路)に相当し、具体的には図5に示す回路よりなる。この遊技制御装置100は、図5に示すように、遊技用マイクロコンピュータ(つまり、遊技用マイコン)101を有するCPU部150、入力ポートなどを有する入力部151、出力ポートなどを有する出力部152、CPU部150と入力部151と出力部152との間を接続するデータバス153などからなる。
遊技用マイコン101は、CPU(中央処理ユニット:マイクロプロセッサ)101A、読出し専用のROM(リードオンリメモリ)101B及び随時読出し書込み可能なRAM(ランダムアクセスメモリ)101Cを備える。
また、図示しないが、遊技用マイコン101は、特図変動表示ゲームの大当り判定用乱数や大当りの図柄を決定するための大当り図柄用乱数、普図変動表示ゲームの当り判定用乱数等をハード的に生成するための乱数生成回路と、発振回路113からの発振信号(原クロック信号)に基づいてCPU101Aに対する所定周期(例えば、4ミリ秒)のタイマ割込み信号や乱数生成回路の更新タイミングを与えるクロックを生成するクロックジェネレータと、を備えている。
電源装置500は、24Vの交流電源から上記DC32Vの直流電圧を生成するAC−DCコンバータやDC32Vの電圧からDC12V,DC5Vなどのより低いレベルの直流電圧を生成するDC−DCコンバータなどを有する通常電源部501と、遊技用マイコン101の内部のRAMに対して停電時に電源電圧を供給するバックアップ電源部502と、停電監視回路や初期化スイッチを有し遊技制御装置100に停電の発生、回復を知らせる停電監視信号や初期化スイッチ信号、リセット信号などの制御信号を生成して出力する制御信号生成部503などを備える。
入力部151には、これらの各スイッチ120〜124から入力される検出信号を0V−5Vの正論理の信号に変換するインタフェースチップ(近接I/F)163が設けられている。近接I/F163は、入力の範囲が7V−11Vとされることで、近接スイッチ(上記各スイッチ120〜124)のリード線が不正にショートされたり、スイッチがコネクタから外されたり、リード線が切断されてフローティングになったような異常状態を検出でき、このような異常状態を検出すると異常検知信号を出力する構成とされている。また近接I/F163には、前記のような信号レベル変換機能を可能にするため、電源装置400から通常のICの動作に必要な例えば5Vのような電圧の他に、12Vの電圧が供給されている。
また、近接I/F163の出力のうち第1始動口スイッチ120と第2始動口スイッチ121の検出信号は、第2入力ポート162の他、反転回路112を介して遊技用マイコン101へ入力されるように構成されている。反転回路112を設けているのは、遊技用マイコン101の信号入力端子が、マイクロスイッチなどからの信号が入力されることを想定し、かつ負論理、即ち、ロウレベル(0V)を有効レベルとして検知するように設計されているためである。
また、リセット信号RSTを中継基板170を介して試射試験装置へ出力可能に構成するようにしてもよい。なお、リセット信号RSTは入力部151の各入力ポート161,162には供給されない。リセット信号RSTが入る直前に遊技用マイコン101によって出力部152の各ポートに設定されたデータはシステムの誤動作を防止するためリセットする必要があるが、リセット信号RSTが入る直前に入力部151の各ポートから遊技用マイコン101が読み込んだデータは、遊技用マイコン101のリセットによって廃棄されるためである。
第1ポート171は、払出制御装置200へ出力する4ビットのデータ信号(例えば、賞球払出しのコマンドやデータ)と、このデータ信号の有効/無効を示す制御信号(データストローブ信号)と、バッファ173を介して演出制御装置300へ出力するデータストローブ信号SSTBとを生成する。
第2ポート172は、演出制御装置300へ出力する8ビットのデータ信号を生成する。
なおバッファ173は、演出制御装置300の側から遊技制御装置100へ信号を入力できないようにするため、即ち、片方向通信を担保するために、第1ポート171からの上記データストローブ信号SSTB及び第2ポート172からの8ビットのデータ信号を出力する単方向のバッファである。なお、第1ポート171から払出制御装置200へ出力する信号に対しても同様のバッファを設けるようにしてもよい。
第4ポート176は、一括表示装置35に表示する内容に応じてLEDのアノード端子が接続されているセグメント線のオン/オフデータを出力するための出力ポートである。
また第5ポート177は、大当り情報などパチンコ機1に関する情報を外部情報信号(図4に示す外部情報)として外部情報端子板55へ出力するための出力ポートである。なお、外部情報端子板55から出力された情報は、例えば遊技店に設置された情報収集端末や管理装置140に供給される。また、外部情報端子板55にはフォトリレー55aが内蔵されており、このフォトリレー55aを介して外部情報、遊技制御装置100の固有ID(主基板固有ID)、払出制御装置200の固有ID(払出固有ID)が外部装置としての管理装置140に伝送される。なお、フォトカプラでは極性があるので、接続に注意する必要があるが、上記のようにフォトリレー55aを用いれば極性が不要となり、便利であるという利点がある。
なお、カードユニット551にて払出固有IDの正当性を判定する場合には、外部情報端子板55を介して払出固有IDをカードユニット551に出力する構成とする。
本実施例では、演出制御装置300はデフォルト値設定手段、演出制御手段、書換手段を構成する。
演出制御装置300は、遊技用マイコン101と同様にアミューズメントチップ(IC)からなる主制御用マイコン(1stCPU)311と、該1stCPU311からのコマンドやデータに従って表示装置41への映像表示のための画像処理を行うグラフィックプロセッサとしてのVDP(Video Display Processor)312と、各種のメロディや効果音などをスピーカ12a,12bから再生させるため音の出力を制御する音源LSI313とを備えている。
ここで、主制御用マイコン(1stCPU)311の他に、該1stCPU311の制御下でもっぱら映像制御を行う映像制御用マイコン(2ndCPU)を配置し、2つのCPUを備え、VDPは該2ndCPU312からのコマンドやデータに従って表示装置41への映像表示のための画像処理を行うという構成も考えられるが、本実施例では、高性能化した1stCPU311のみを備え、配置スペースやコストの点で有利にしている。
なお、主制御用マイコン(1stCPU)と、該1stCPUの制御下でもっぱら映像制御を行う映像制御用マイコン(2ndCPU)の2つを配置する構成を採用してもよい。
RTC325は時刻を刻むクロック素子であり、設定により実時刻に合わせることが可能であり、そのクロック信号は主制御用マイコン311に送られる、主制御用マイコン311はRTC325からの信号を用いて、例えば遊技店のイベント告知や特殊演出など時刻に関した演出制御が可能になっている。
一方、VDP312にはキャラクタ画像や映像データが記憶された画像ROM322が接続され、音源LSI313には音声データが記憶された音声ROM323が接続されている。
主制御用マイコン311は、遊技制御装置100の遊技用マイコン101からの制御コマンド(前記第2ポート172から出力される8ビットのデータ信号)を解析し、演出内容を決定して表示装置41の出力映像の内容を指示したり、音源LSI313への再生音の指示、前述した装飾装置42、43や演出装置44、45の駆動制御などの処理を実行する。
なお、演出制御装置300の制御で実際に実施される特図の変動表示等の態様は、遊技制御装置100からのコマンドによって一義的に決定されてもよいが、上記コマンドで与えられた条件の範囲で、演出制御装置300の主制御用マイコン311が乱数抽出などによって態様を最終的に選択する構成(演出制御装置300にも態様を選択する、ある程度の裁量が与えられた構成)となっている。
また、特に限定されるわけではないが、主制御用マイコン311と音源LSI313との間は、シリアル方式でデータの送受信が行なわれ、主制御用マイコン311とVDP312との間は、パラレル方式でデータの送受信が行なわれるように構成されている。一般には、パラレル方式でデータを送受信することで、シリアルの場合よりも短時間にコマンドやデータを送信することができる。
VDP312には、画像ROM322から読み出されたキャラクタなどの画像データを展開したり加工したりするのに使用される超高速なVRAM(ビデオRAM)312aや、画像を拡大、縮小処理するためのスケーラ312b、LVDS(小振幅信号伝送)方式で表示装置41へ送信する映像信号を生成する信号変換回路312cなどが設けられている。
なお、遊技制御装置100の遊技用マイコン101から送信されてくるコマンドは、必要に応じて主制御用マイコン311に内蔵されて作業領域を提供するRAM311aに記憶される。
この場合、上記コマンドはRAM311aのコマンド記憶領域のようなエリアに記憶される。詳しくは、遊技制御装置100から演出制御装置300へ送られるコマンドのうち、例えば組となる変動パターンコマンド及び図柄コマンドが順次送信される場合、これらのコマンドはRAM311aの記憶エリアのうち、コマンド記憶領域に順次記憶保持され、組が成立した時点でコマンド記憶領域から読みだされて主制御用マイコン311が演出処理を実行するようになっている。なお、コマンド記憶領域は、第1コマンド記憶領域及び第2コマンド記憶領域に分けた構成でもよい。
また、先に送られる変動パターンコマンドを受信した時点で、演出制御装置300では主制御用マイコン311のRAM311aの演出に関する記憶領域をデフォルト値(例えば、はずれ図柄での図柄停止状態)に設定する動作が行われるようになっている。
上記の「演出に関する記憶領域」はデフォルト値を設定するエリアであり、コマンド記憶領域とは別になっている。
遊技制御装置100の遊技用マイコン101はDC5Vで動作し、演出制御装置300の主制御用マイコン311はDC3.3Vで動作するため、コマンドI/F331には信号のレベル変換の機能が設けられている。
無線モジュール360は、主制御用マイコン311に接続され、主制御用マイコン311からの指令に従って自身の遊技機(パチンコ機1)と他の遊技機370との間で無線通信(後述のサブ間通信)を行い、その通信によって互いの遊技機の状態を情報交換したり、画像やキャラクタの伝送や交換などの制御を行い、各遊技機の表示装置に相互に関連性のある画像やキャラクタを同調あるいは同期させながら表示させる連携演出を行うための通信モジュールである。CPU360aは無線通信の制御や画像、キャラクタの伝送などの処理を行い、ROM360bはCPU360aの実行するプログラムを格納しており、RAM360cはワークエリアとして用いられる。
遊技機番号は、例えば無線モジュールに設定されている固有IDを基に定義するようにしてもよいが、この場合は無線モジュールの固有IDの値がほぼランダムであることから遊技機の並びを特定するのが困難であり、島の左端の遊技機から順に群予告が流れていくといったような演出を行いたい場合は、各遊技機のロケーション情報を管理するためのマスターとなる遊技機や管理装置を設ける必要が出てしまい、手間がかかる。
そこで、本実施例では単純に島の遊技機を順番に特定可能な設定スイッチ371による手動設定によって、演出台を特定して演出を行えるようにしたので、誰でも簡単に操作できる上、前記演出も楽に制御できるようになっている。
また、設定スイッチ371の用途として、ロケーション情報設定用ではなく、無線モジュール360の制御内容を複数段階にモード設定し、遊技店の営業形態等に合わせて切り替えて選択するためのものとしてもよい。
VDP312は、CPUI/F601、データ転送回路602、CGバスI/F603、圧縮データ伸長回路604、描画回路605、第1VRAM606、第2VRAM607及び表示回路608を備えており、データ転送のためにバス609〜611を介して必要な回路同士が接続されている。
VDP312は、CPUI/F601を介して演出制御装置300の主制御用マイコン311に接続されるとともに、CGバスI/F603を介して画像ROM322に接続される。そして、VDP312では、基本的に演出制御装置300の主制御用マイコン311からの指示で、表示装置41に表示する1フレーム毎の画像データを作成し、表示回路608表示装置42に出力する。なお、第1VRAM606は主にフレームバッファ用のRAMとして、具体的には例えばフレームバッファ、Zバッファ用(3次元の場合、Z軸方向の量)のRAMとして用いられる。一方、第2VRAM607は主に素材用のデータを格納する描画素材用のRAMとして用いられる。
描画回路605は、主に第2VRAM607に格納されている描画用素材を加工して(例えば、各種エフェクト、拡大、縮小などの加工)、また、表示する位置や順序(例えば、画面の奥から手前への表示順序など)を制御し、1フレームの画像データを作成して第1VRAM606に格納する。
そして、表示回路608は、第1VRAM606に格納された1フレームの画像データをインターレスモードやノンインターレスモードの設定タイミングで、LVDS仕様の信号レベルにしてRGBデータを表示装置41へ出力する。なお、スケーラ608aにより画像データの表示領域を拡大して(例えばVGA→XGAにして)表示することも可能である。例えば、VGAであれば、画像サイズは640×480となり、XGAであれば画像サイズは1024×768の大きさとなる。
データ転送回路602は、主制御用マイコン311と第1VRAM606との間、主制御用マイコン311から描画回路605への間、CGバスI/F603と第1VRAM606との間等のデータ転送機能を有する。
次に、本例のパチンコ機1で行われる遊技の概要や遊技の流れについて説明する。
まず、遊技開始当初の時点(或いは遊技開始前の時点)では、客待ち状態(デモ中)となっており、客待ち画面の表示を指令するコマンドが遊技制御装置100のバッファ(例えば、同様の機能の図5ではバッファ173に相当)から演出制御装置300に送信され、表示装置の表示部41aには客待ち画面(動画又は静止画)が表示される。
また、通常モードにおいて、変動表示ゲームの停止結果態様が特別結果態様のうちの特定の態様(例えば、「7、7、7」のゾロ目)であれば、上記大当りになるとともに、大当り遊技後(後述する特賞期間後)に、ゲーム状態が通常モードから確変モードへ移行する。この確変モードでは、特図が大当りになる確率(以下、特図の大当り確率という)を高める制御が行われる。また場合によっては、いわゆる時短(特図等の変動表示時間を短くして変動表示ゲームの頻度を高め当り易くするもの)も行われる。
また上記大当りのラウンド数としては、例えば、通常は15ラウンド大当りが主の大当りであるが、プレミアとして16R大当りを発生させる構成でもよいし、その他の構成でもよい。また、いわゆる突確(出玉の少ない大当りを経由して大当り確率が変化する突然確変)として2ラウンド大当り等があってもよい。
即ち、変動表示ゲームが大当りで終了すれば大当り状態に移行し、変動表示ゲームがはずれで終了し始動記憶があれば再度変動表示ゲームが実行され、変動表示ゲームがはずれで終了し始動記憶がなければ客待ち状態に戻り、大当りが終了して始動記憶があれば再度変動表示ゲームが実行され、大当りが終了して始動記憶がなければ客待ち状態に戻る流れとなっている。
また、遊技球が第2始動入賞口26に入ることによる特図始動入賞(第2始動入賞)があると、表示装置41にて特図2の変動表示による第2変動表示ゲームが行われる。そして、何れかの特図変動表示ゲーム中などに遊技球が第2始動入賞口26に入賞すると、第2始動記憶(特図2保留表示に対応する始動記憶)が1個記憶され、これに対して、上記特図変動表示ゲーム終了後などに、表示装置41にて特図2の変動表示による第2変動表示ゲームが行われる構成となっている。
なお、第1始動記憶と第2始動記憶の両方があるときには、予め設定されたルールに従って第1変動表示ゲームと第2変動表示ゲームのうちの何れかが先に実行される。例えば、第2始動入賞口26に対応する第2変動表示ゲームが優先的に行われる態様(即ち、第2始動記憶が優先的に消化される態様)、或いは2種類の変動表示ゲームが交互に行われる態様などが有り得る。
この普図当りになると、第2始動入賞口26の一対の開閉部材26aが逆ハの字に開いた開状態に、所定の開放時間だけ一時的に保持される遊技が行われる。これにより、遊技球が始動入賞し易くなり、その分、特図の変動表示ゲームの実施回数が増えて大当りになる可能性が増す。
また、上記普図の変動表示ゲーム中に、普図始動ゲート32にさらに遊技球が入賞したときには、一括表示装置35によって普図始動記憶の保留表示が実行されて、例えば4個まで記憶され、普図の変動表示ゲームの終了後に、その記憶に基づいて上記普図の変動表示ゲームが繰り返される。
また、固有IDは外部からの要求に応答して外部(ここでは図4の検査装置接続端子102)へと転送される。そして、例えば検査装置接続端子102に検査装置を接続することにより、遊技用マイコン101に格納されている固有IDが検査機関にて読み出されることになる。
一方、払出制御装置200の払出用マイコン201を識別可能な払出固有ID(払出個体識別情報)は、払出制御装置200にて払出プログラムの動作によりシリアル通信形式(又はパラレル通信形式でもよい)にされて、外部情報端子板55で中継されて外部の管理装置140(又はカードユニット551を含めてもよい)に伝送される。これにより、払出用マイコン201に格納されている払出固有IDを遊技店側に送ることが可能になる。
この場合、遊技制御装置100から演出制御装置300へ送信されるコマンドのうち、単独では演出を開始せず、組で効果を発揮するものがあり、例えば特図変動開始時の「変動パターンコマンド+図柄指定コマンド」がある。
その後、コマンドの組が正常に演出制御装置300へ送信された(組が成立)時点で、正規の情報に書き換えられ、正しい演出が実行される。
次に、遊技制御装置100の制御内容について図8〜図92により説明する。
最初に、以下のフローチャートの説明に使用する主要な構成の概念を明確にしておくと、下記の通りである。
前述したように、一括表示装置35で本特図や本普図を表示している。以下の制御処理の説明における特図は、この特図(本特図)を意味するので、以上を前提に細かく説明する。なお、遊技制御装置100からのコマンドに基づいて演出制御装置300が制御する特図は表示装置41の方に表示される演出用の特図である。
(イ)特図の表示装置
以下のフローチャートで特図という場合には、一括表示装置35で表示される「本特図」の方を指している。また、表示装置41で表示される遊技者向けの演出用のダミー表示の方を指す場合は「飾り特図」という。
このように特図を表示する装置は一括表示装置35であるが、一括表示装置35における本特図を表示する領域の名称としては、例えば特別図柄表示装置、特図表示装置というものがあり、普図表示装置との区別を図るため、特別図柄表示装置ということがある。
(ロ)普図の表示装置
以下のフローチャートで普図という場合には、一括表示装置35で表示される「本普図」の方を指している。また、表示装置41で表示される遊技者向けの演出用のダミー表示の方を指す場合は、例えば「飾り普図」という。
このように普図を表示する装置は一括表示装置35であるが、一括表示装置35における本普図を表示する領域の名称としては、例えば普通図柄表示装置、普図表示装置というものがあり、特図表示装置との区別を図るため、普通図柄表示装置ということがある。
ただし、本実施例では、このような普図の表示を表示装置41では表示していない構成になっている。なお、普図(ここでは飾り普図)表示を行う表示器を設けてもよい。遊技機の説明をする上で、必要な場合には「飾り普図」を表示する装置を含めて説明することもある。
(ハ)普電
普電に相当する装置は、普通電動役物(普電)としての第2始動入賞口26である。
ただし、普電を普通変動入賞装置ということがあり、例えばフローチャートの説明では、特に普通電動役物(普通変動入賞装置26)ということがある。
また、例えば高確率時や時短時などに、普通電動役物(普電)としての第2始動入賞口26の開閉部材26aが開放する動作によって始動入賞をサポートすることが行われるが、これを単に普電サポートということがある。
(ニ)特図記憶
以下のフローチャートで特図保留(単に「保留」という場合もある)、特図記憶、あるいは特図の始動記憶という場合には、一括表示装置35で表示される「本特図記憶」の方を指している。また、表示装置41で表示される遊技者向けの演出用のダミー表示の方を指す場合は「飾り特図保留」、あるいは「飾り特図記憶」という。
特図の始動入賞口として機能する入賞口は、始動入賞口25,26である。
(ホ)普図記憶
以下のフローチャートで普図保留、普図記憶、あるいは普図の始動記憶という場合には、一括表示装置35で表示される「本普図記憶」の方を指している。また、表示装置41で表示される遊技者向けの演出用のダミー表示の方を指す場合は「飾り普図保留」、あるいは「飾り普図記憶」という。
ただし、本実施例では、このような普図の始動記憶表示を表示装置41では表示していない構成になっている。なお、普図の始動記憶(ここでは飾り普図記憶)表示を行う表示器を設けてもよい。遊技機の説明をする上で、必要な場合には「飾り普図記憶」を表示する装置を含めて説明することもある。
(ヘ)変動入賞装置
変動入賞装置27は、開閉部材27bによって開閉される大入賞口27aを有する装置(いわゆるアタッカー)である。この変動入賞装置27は、普通変動入賞装置と区別するために特別変動入賞装置ということもある。
まず、図8、9により、遊技制御装置100(遊技用マイコン101)のメイン処理を説明する。
このメイン処理は、遊技用マイコン101に強制的にリセットがかけられたことに基づいて開始する。すなわち、電源装置500の図示省略した電源スイッチがオン操作されると、所定のタイミングに(電源投入時の所定のリセット期間に)電源装置500の制御信号生成部503からリセット信号が遊技制御装置100に入力されて遊技用マイコン101のリセット端子がオンし、その後このリセット信号が解除されると、遊技用マイコン101が起動する。なお、停電からの電源復旧時にも、同様にリセット信号がオンした後に解除されて遊技用マイコン101が起動する。また、作業者が遊技制御装置100のユーザワークRAM等の初期化をしようとする場合には、電源装置500のRAMクリアスイッチ504(初期化スイッチ)をオン操作しながら前記電源スイッチをオン操作する必要がある。
次いで、ステップS5で払出基板(払出制御装置200)のプログラムが正常に起動するのを待つために所定のディレイ時間(例えば4msec)だけ処理の進行を停止する。これにより、電源投入の際に仮に遊技制御装置100が先に立ち上がって払出制御装置200が立ち上がる前にコマンドを払出制御装置200へ送ってしまい、払出制御装置200がコマンドを取りこぼすのを回避することができる。
ここで、本実施例においてRWMとは、RAM101Cを指すが、RAMに限らず、RWMとして例えばEEPROM等の読出し書込み可能な記憶素子を含めて使用してもよい。
なお、リセット信号によって各出力ポートはオフ設定(リセット)されているので、ソフト的に各出力ポートにオフ信号を出力する必要は必ずしもないが、ここでは念のためにステップS7が設けられている。
続いて、ステップS8ではシリアルポート((遊技用マイコン101に予め搭載されているポート)この実施例では、払出制御装置200や演出制御装置300とパラレル通信を行っているため使用しない))を使用しない状態に設定する処理を行う。
ここで、シリアルポートを使用しない状態に設定するのは、固有IDを外部(例えば、管理装置140)へ出力するときに、このシリアルポートを使用するから、ここでは一旦使用しない状態にしておくものである。なお、払出制御装置200や演出制御装置300との間でシリアル通信を行う必要がある場合もあるので、そのときはステップS8でシリアルポートを使用する状態に設定することになる。
なお、ステップS25に進むのは、前記初期化スイッチがオン操作されて遊技用マイコン101が起動した場合、後述するステップS11、ステップS13のそれぞれでRWMの停電検査領域1、停電検査領域2が全て正常ではないと判定された場合、或いは後述するステップS16でチェックサムが正常でないと判定された場合である。このため、ステップS25に進むと、遊技用マイコン101のRWM内のデータ(アクセス禁止領域を除く)を初期化するなどの処理を行う。
このように、RWMの停電検査領域1、2の値が全て正常であれば、停電復帰時であると判断してステップS14に進むことになる。一方、RWMの停電検査領域1、2の値が異常であれば(正常に記憶されてなければ)通常の電源投入時であるとしてステップS25にジャンプすることになる。
なお、停電検査領域チェックデータ1、2は、後述するステップS25で設定されるものである。これらのステップS10、12では、このように複数のチェックデータ1,2によって停電復帰時であるか否か判定するので、停電復帰時であるか否かの判断が信頼性高く為される。
ステップS17では全ての停電検査領域をクリアし、ステップS18でチェックサム領域をクリアし、更にステップS19でエラー及び不正監視に係る領域をリセットする。このようにして、停電復旧のための処理(初期値設定)を実行する。
また、ステップS20で高確率であると(ステップS20;YES)と判定した場合は、ステップS21で高確率報知フラグ領域にオン情報をセーブし、ステップS22で例えば一括表示装置35に設けられる高確率報知LED(図示略)のオンデータをセグメント領域にセーブする。これにより、今回の高確率状態に対応する処置が行なわれることとなり、例えば一括表示装置35に設けられる高確率報知LEDが点灯して高確率状態を知らせる表示がされる。
次いで、ステップS23で特図ゲーム処理番号に対応する停電復旧時のコマンド(停電復旧コマンド)を送信する。このステップS23を経ると、ステップS24に進む。
電源投入コマンドが送信されると、他の制御装置は、この電源投入コマンドを受けて、例えば演出制御装置300であれば枠演出装置のモータの動作位置を初期位置にするなどの初期化を行い、RWMクリアがなされたことを報知する演出を開始する。ステップS29を経ると、ステップS24に進む。
なお、CTC回路は、遊技用マイコン101内のクロックジェネレータに設けられている。クロックジェネレータは、水晶発振器113からの発振信号(原クロック信号)を分周する分周回路と、分周された信号に基づいてCPU101Aに対して所定周期(例えば、4ミリ秒)のタイマ割込み信号及び乱数生成回路へ供給する乱数更新のトリガを与える信号CTCを発生するCTC回路とを備えている。
この乱数生成回路によってハード的に特図や普図の各乱数のうちの一部が生成される。但し、これら乱数の初期値は、後述するステップS33の処理によってソフト的に設定される。そして、本実施例で使用するCPU101A内の乱数生成回路においては、電源投入毎にソフト乱数レジスタの初期値が変わるように構成されているため、この値を各種初期値乱数の初期値(スタート値)とすることで、ソフトウェアで生成される乱数の規則性を崩すことができ、遊技者による不正な乱数の取得を困難にすることができる。
なお、特図に関連する乱数としては、大当り乱数(大当りとするか否かを決定するための乱数)、大当り図柄乱数1,2(大当り停止図柄決定用の乱数)、変動パターン乱数(リーの有無等を含む変動パターンを決定する乱数)、停止図柄乱数(外れの停止図柄決定用の乱数)などがある。また、普図に関連する乱数としては、例えば、普図当り乱数(普図当りとするか否かを決定するための乱数)などがある。このうちステップS30,33で対象とする乱数(ハード乱数)は、例えば、大当り乱数、普図当り乱数、大当り図柄乱数1,2である。なお、上記特図に関する乱数は、特図が2種類ある場合、特図1と特図2で共通でもよいし、別個に設けられていてもよい。
なお、上記ステップS33での初期値乱数更新処理は、メイン処理のほか、タイマ割込み処理の中においても初期値乱数更新処理を行う方法もあり、そのような方法を採用した場合には両方で初期値乱数更新処理が実行されるのを回避するため、メイン処理で初期値乱数更新処理を行う場合には割込みを禁止してから更新して割込みを解除する必要があるが、本実施例のようにタイマ割込み処理の中での初期値乱数更新処理はせず、メイン処理内のみした場合には初期値乱数更新処理の前に割込みを解除しても何ら問題はなく、それによってメイン処理が簡素化されるという利点がある。
次いでステップS34に進み、停電監視信号のチェック回数(例えば2回)を設定し、次のステップS35で停電監視信号がオンしているか否か判定し、オンしていれば停電の最終判断のためのステップS36に進み、オンしていなければステップS33に戻る。通常運転中は、ステップS33〜S35を繰り返す。
なお停電監視信号がオンになると、この停電監視信号をNMI割込信号として、実行中の処理を中断してステップS37以降の停電処理を強制的に実行する態様でもよい。但し本例の構成であると、停電監視信号のオン状態をステップS36で複数回チェックするので、実際には停電が発生していないのにノイズ等によって停電監視信号が一時的かつ瞬間的にオンした場合に停電発生と誤判断してしまうことがないという利点がある。
ステップS40を経ると、次のステップS41でRWMの電源遮断時のチェックサムを算出する処理を行なった後、ステップS42で算出したチェックサムを所定のチェックサム領域にセーブする。
次いでステップS43でRWMへのアクセスを禁止した後、待機する(前述した制御信号生成部503からのリセット信号を待つリセット待ち状態となる)。
このように、停電復旧検査領域にチェックデータをセーブするとともに、電源遮断時のチェックサムを算出することで、電源の遮断の前にRWMに記憶されていた情報が正しくバックアップされているか否かを電源再投入時に判断することができる。
なお、以上のステップS37〜S43の停電処理は、停電によって電源電圧が遊技用マイコン101の動作電圧未満に低下する前に行われる。
次に、前記メイン処理におけるチェックサム算出処理(ステップS41)を図10により説明する。
このルーチンが開始されると、まずステップS51で算出アドレスの開始値としてRWMの先頭アドレスを設定し、ステップS52で繰り返し数を設定する。繰り返し数は、使用しているRWMのバイト数に対応して設定される。次いで、ステップS53で算出値として「0」を設定した後、ステップS54で算出値+算出アドレスの内容を新たな算出値として演算する。このようにして、各アドレスの毎の内容を算出値として加算していく。次いで、ステップS55で算出アドレスを「+1」だけ更新し、ステップS56で繰り返し数を「−1」だけ更新して算出終了かをチェックし、ステップS57で算出終了か否かを判定しする。ステップS57の判定結果がNOであれば、ステップS54に戻ってルーチンを繰り返す。そして、繰り返し数=RWMのバイト数になると、算出終了と判断してステップS57からYESに抜けて、ルーチンを終了する。
このようにして、RWMの電源遮断時におけるチェックサムの算出が行われる。
次に、前記メイン処理における初期値乱数更新処理(ステップS33)を図11により説明する。
このルーチンが開始されると、当り初期値乱数をインクリメント(更新(+1))する処理(ステップS61)、大当り図柄初期値乱数1をインクリメント(更新(+1))する処理(ステップS62)、大当り図柄初期値乱数2をインクリメント(更新(+1))する処理(ステップS63)を順次行う。
ここで、「大当り図柄初期値乱数1」は、特図1の大当り停止図柄を決定する乱数の初期値となる乱数で、0〜200の範囲で更新していく。「大当り図柄初期値乱数2」は、特図2の大当り停止図柄を決定する乱数の初期値乱数のことで、0〜200の範囲で更新していく。ある。また、「当り初期値乱数」は普図変動ゲームの当りを決定する乱数の初期値となる乱数のことで、0〜250の範囲で更新していく。ある。このように、メイン処理の中で時間が許す限り乱数をインクリメントし続けることによって、乱数のランダム性を高めることができるようにしている。
次に、遊技制御装置100(遊技用マイコン101)のタイマ割込処理を図12により説明する。
このタイマ割込処理は、前述したメイン処理におけるステップS24,S32の処理によって開始され、所定のタイマ割込周期で繰り返し実行される。
次いで、ステップS72で入力処理を実行する。この入力処理では、前述の各センサ類(始動口スイッチ120、121、ゲートスイッチ122、入賞口スイッチ123、カウントスイッチ124など)の検出信号の読み取りを実行する。具体的には、各センサの出力値をタイマ割込周期毎に判定し、同じレベルの出力値が規程回数(例えば、2回)以上継続した場合に、この出力値のレベルを各センサの検出信号の確定的な値として読み取る。なお、何れかのセンサがオンしていることが読み取られると、それを示すフラグ(入力フラグ)がたてられる。
その後、ステップS75,S76で、乱数更新処理1,2をそれぞれ実行する。ここでは、特図に関連するソフト乱数及び普図に関連するソフト乱数の更新が行われる。特図に関連するソフト乱数としては、例えば、大当り図柄乱数1,2(大当り停止図柄決定用の乱数)、変動パターン乱数(リーチアクションの有無等を含む変動パターンを決定する乱数)、停止図柄乱数(外れの停止図柄決定用の乱数)などがある。ここでの、乱数の更新は、乱数を例えば「1」ずつ増やすことにより実行される。したがって、このタイマ割込み処理のルーチンが繰り返される毎に、乱数が変り、このソフト乱数の抽出値がアトランダム性を保つようになる。
ここで、変動開始条件の成立時とは、客待ち状態で始動口入賞があって変動表示ゲームが開始される時、変動表示ゲームがはずれで終了し始動記憶があって再度変動表示ゲームが実行される時、大当たりが終了して始動記憶があって再度変動表示ゲームが実行される時の3種類がある。
また、この特図ゲーム処理では、特図の変動表示ゲームに関する各種出力データを設定する処理も行われる。即ち、特図の変動表示ゲームの遊技状態に合わせて、例えば、演出制御装置300などへ送信するコマンドの内容(コマンドデータ)を設定する。
次に、ステップS80では、セグメントLED編集処理を実行する。これは、ステップS78の特図ゲーム処理において決定された特図の図柄やステップS79の普図ゲーム処理において決定された普図の図柄、その他の情報を、一括表示装置35の本特図の表示器(LED、7セグメントの表示器)において表示するための処理である。
次に、ステップS81では、磁石不正監視処理を実行する。これは、磁気センサスイッチ125や振動センサスイッチ126からの検出信号をチェックして異常がないか判定する
ものである、例えば、磁気センサスイッチ125の入力フラグが設定されていると、磁気エラーが発生したとして、所定の処理(エラー報知コマンドの送信等)を実行する。
その後、メインルーチンを再開すべく、ステップS83でタイマ割込み要求をクリアし、ステップS84で退避させたレジスタを復帰させ、ステップS85で割込を許可し、そして割込時に中断した処理に復帰(リターン)する。
次に、前記タイマ割込み処理における入力処理(ステップS72)を図13により説明する。
入力処理においては、まず入力ポート1、即ち、第1入力ポート161に取り込まれたスイッチの検出信号の状態を読み込む(ステップS91)。そして、8ビットのポートのうち未使用ビットがあればそのビットの状態をクリアする(ステップS92)。
続いて、読み込まれた入力ポート1の状態をRWM内のスイッチ制御領域1にセーブ(格納)する(ステップS93)。その後、ステップS94で入力ポート2、即ち、第2入力ポート162に取り込まれた信号の状態を読み込むためのパラメータの準備を行なってから、スイッチ読込み処理(ステップS95)へ移行する。ここで、本実施形態において「準備」とは、レジスタに値をセットすることを意味するが、これに限らず、RWM、その他のメモリに値をセットするようにしてもよい。
次に、上述の入力処理におけるスイッチ読込み処理(ステップS95)を図14により説明する。
スイッチ読込み処理においては、先のステップS94にて準備されたパラメータで指定された入力ポート、即ち、第2入力ポート162に取り込まれた信号の状態を読み込む(ステップS101)。そして、8ビットのポートのうち未使用ビットがあればそのビットの状態をクリアする(ステップS102)。続いて、読み込まれた入力ポート2の状態をRWM内のスイッチ制御領域2にセーブ(格納)する(ステップS103)。それから、2回目の読込みまでのディレイ時間(例えば、0.1ms)が経過するのを待つ(ステップS104)。
なお、スイッチの読込みは、タイマ割込みの周期が短い場合(例えば2ms)には、各割込みの処理ごとにそれぞれ1回ずつスイッチの読込みを行なって前回の読込みの結果と比較することで信号が変化したか否か判定する方法があるが、そのようにすると次の割込み処理までに前回の割込みで読み込んだスイッチの状態が失われた場合、正しい判定が行なえないおそれがある。また、単純計算でタイマ割込み周期の2倍以上の時間分、スイッチの入力パルスが保持されなくてはならないので、パルスを延長する電気回路の設計やスイッチを通過する遊技球の速度を遅くするための球流路の構造設計などが必要になる。
これに対し、本実施例のように、所定の時間差をおいて1回の割込み処理の中で2回のスイッチ読込み処理を行うことで、タイマ割込みの周期を延ばすことによる割込み内の処理可能量増加と、構造設計等の容易さを両立させ、上記のような不具合を回避することが可能となる。
次に、上述のタイマ割込み処理における出力処理(ステップS73)を図15により説明する。
出力処理では、まず一括表示装置(LED)35のセグメントのデータを出力するポート176(図5参照)の出力データを全てオフにする(ステップS121)。続いて、一括表示装置(LED)35のデジット線を順次スキャンするためのデジットカウンタの値を更新(0〜3の範囲で(+1)更新)(ステップS122)し、デジットカウンタの値に対応するLEDのデジット線の出力データをロードする(ステップS123)。次いで、ソレノイド・試験端子・デジットのデータ出力用のポート175(図5参照)へ出力するデータを合成し、合成したデータをソレノイド・試験端子・デジットのデータ出力用のポート175へ出力する(ステップS124)。
その後、デジットカウンタの値に対応するRWM内のセグメントデータ領域からセグメント線の出力データを取得し(ステップS125)、取得したセグメント出力データをセグメント出力用のポート176に出力する(ステップS126)。
次いで、試射試験装置へ出力する試験信号の出力データ7〜8をロードして合成し、中継基板170上に設けられている試験端子出力ポート3へ合成したデータを出力する(ステップS130)。また、試射試験装置へ出力する試験信号の出力データ9〜10をロードして合成し、中継基板170上に設けられている試験端子出力ポート4へ合成したデータを出力する(ステップS131)。さらに、試射試験装置へ出力する試験信号の出力データ11をロードして合成し、中継基板170上に設けられている試験端子出力ポート5へ合成したデータを出力(ステップS132)して、図15の出力処理を終了する。
次に、上述のタイマ割込み処理におけるコマンド送信処理(ステップS74)を図16により説明する。
コマンド送信処理は、演出制御装置300に対する演出制御コマンド送信処理(ステップS141)と、払出制御装置200に対する払出コマンド送信処理(ステップS142)とからなる。これらの詳細は、後述する。
まず、上述のコマンド送信処理における演出制御コマンド送信処理(ステップS141)を図17により説明する。
演出制御コマンド送信処理においては、先ず、送信コマンドをRWMに設定するときに「+1」されるライトカウンタの値と、RWMから送信コマンドを読み出すときに「+1」されるリードカウンタの値とを比較して、コマンドが設定されているかチェックする(ステップS151)。具体的には、ライトカウンタの値とリードカウンタの値とが同一であれば設定コマンドなしと判定し、ライトカウンタの値とリードカウンタの値とが一致していない場合には、未送信のコマンドが設定されていると判定する(ステップS152)。
次に、上述の演出制御コマンド送信処理における演出制御コマンド出力処理(ステップS158)を図18により説明する。
演出制御コマンド出力処理においては、まず、演出制御コマンド(MODE)出力中を示すストローブ信号のオフ時間を準備して(ステップS161)、コマンドデータ出力処理(ステップS162)を実行する。その後、演出制御コマンド(ACTION)を出力し(ステップS163)、演出制御コマンド(ACTION)出力中を示すストローブ信号のオフ時間を準備(ステップS164)してから、コマンドデータ出力処理(ステップS165)を実行する。
次に、上述の演出制御コマンド出力処理におけるコマンドデータ出力処理(ステップS162、S165)を図19により説明する。
コマンドデータ出力処理においては、まず、ポートの直前の状態が失われないようにするため、演出制御コマンド出力のストローブ信号を含む出力ポート171のポート状態保持データをロードする(ステップS171)。それから、演出制御コマンドを出力ポート172へ出力(ステップS172)し、出力ポート171へはストローブ信号を除く信号を直前の状態に保持してオフ状態(データの読取り無効を示す例えばロウレベル)のストローブ信号を付加して出力(つまり、OFF状態のストローブを出力)する(ステップS173)。そして、次のステップS174で、ストローブ信号をオフ状態にすべき時間(オフ時間:ストローブOFF期間)が終了したか否か判定する。ここで、オフ時間が終了していない(ステップS174;NO)と判定するとステップS172へ戻って上記処理を繰り返す。
そして、次のステップS178で、ストローブ信号をオン状態にすべき時間(オン時間:つまりストローブON期間))が終了したか否か判定する。ここで、オン時間が終了していない(ステップS178;NO)と判定するとステップS176へ戻って上記処理を繰り返す。また、ステップS178で、オン時間が終了した(ステップS178;YES)と判定するとステップS179へ移行して、ロードしたデータを保持するレジスタ上で、出力ポート171のストローブ信号を除く信号を直前の状態に保持したまま、オフ状態のストローブ信号を設定してから、オフ状態のストローブ信号を出力(OFF状態のストローブ出力)(ステップS179)して、当該コマンドデータ出力処理を終了する。
なお、ステップS176で演出制御コマンドを再度出力しているのは、ステップS176〜S178のループ処理中に停電が発生した場合に、出力中の演出制御コマンドが停電復帰後に出力されなくなるのを回避するためである。また、ノイズによって、コマンドコードが変わってしまうのを回避することもできる。なお、このステップS174及びステップS178は、各々の処理のみをループさせることも可能である。
次に、上述のコマンド送信処理における払出コマンド送信処理(ステップS142)を図20により説明する。
払出コマンド送信処理においては、まず入賞口別に設けられている入賞数カウンタ領域に「0」でないカウント数があるかチェックする(ステップS181)。ここで、カウント数がない(ステップS182;NO)と判定した場合には、ステップS183へ進んでチェック対象となる入賞数カウンタ領域のアドレスを更新し、すべての入賞数カウンタ領域のカウント数のチェックが終了したか判定する(ステップS184)。この判定で、すべてのチェックが終了した(ステップS184;YES)と判定すると、当該コマンド送信処理を終了する。一方、ステップS184ですべてのチェックが終了していない(ステップS184;NO)と判定すると、ステップS181へ戻って上記処理を繰り返す。
そして、次のステップS191で、引き続き払出コマンド(負論理のデータ)を出力するとともにオン状態(ハイレベル)のストローブ信号をポート171へ出力する。その後、ステップS190で設定した負論理データの残り出力時間が経過したか否か判定し(ステップS192)、経過していない場合(ステップS192;NO)にはステップS191へ戻り、経過した場合(ステップS192;YES)にはステップS193へ進む。
次に、上述のタイマ割込み処理における乱数更新処理1(ステップS75)を図21により説明する。
乱数更新処理1は、図11の初期値乱数更新処理の対象となっている大当り図柄乱数1、当り乱数、大当り図柄乱数2の初期値(スタート値)を更新するための処理である。
乱数更新処理1においては、まず乱数の更新状態を示すソフト乱数ステータスレジスタの値を読み込み、乱数が1周して次回の初期値(スタート値)設定待ちの乱数があるかチェックする(ステップS211)。ここで、初期値設定待ちの乱数がなければ、当該乱数更新処理1を終了する(ステップS212;NO)。一方、初期値設定待ちの乱数があるときはステップS213へ進む(ステップS212;YES)。
一方、大当り図柄乱数2が初期値設定待ちであるときはステップS223へ進む(ステップS222;YES)。ステップS223では、大当り図柄乱数2の次回の初期値として大当り図柄初期値乱数2をロードし、続くステップS224で次回初期値に対応するスタート値設定レジスタに、ロードした大当り図柄初期値乱数2を設定する。すなわち、大当り図柄乱数2の次回の初期値(大当り図柄初期値乱数2)を、対応する乱数カウンタ(乱数領域)のスタート値を保持するレジスタに設定する。ステップS224を経ると、当該乱数更新処理1を終了する。
次に、上述のタイマ割込み処理における乱数更新処理2(ステップS76)を図22により説明する。
乱数更新処理2は、特図1,特図2の変動表示ゲームにおける変動パターンを決定するための変動パターン乱数を更新する処理である。
なお、本実施例においては、変動パターン乱数として1バイトの乱数(変動パターン乱数2、3)と、2バイトの乱数(変動パターン乱数1)があり、図21の乱数更新処理2は両方を更新対象とし、割込みが発生するごとに更新対象を切り替えて処理する。しかも、更新対象の乱数が2バイトの場合には、上位のバイトと下位のバイトに対して異なる割込み時に更新処理を行うようになっている。即ち、メイン処理に対する一の割り込み処理において実行される乱数更新処理2による2バイトの変動パターン乱数1(リーチ変動態様決定用乱数)の更新は、上位1バイト若しくは下位1バイトの何れかについて実行されるように構成されている。
なお、マスク値として、変動パターン乱数1の下位1バイトを更新する場合には、Rレジスタの下位3ビットを、また、変動パターン乱数1の上位1バイトを更新する場合には、Rレジスタの下位4ビットを例示したが、数値は一例であってこれに限られるものではない。
マスクした値に「1」を加算するのは、マスクした値が「0」になる場合があり、「0」を後に加算すると加算する前の値から変化しないので、それを避けるためである。
一方、更新する乱数領域が2バイト乱数の下位又は1バイト乱数であれば(ステップS237;NO)、ステップS239に分岐して「0」を加算値(上位)とし、マスク値に「1」を加算したものを加算値(下位)としてステップS240に進む。
乱数領域が2バイト乱数であるときは、ステップS243で更新する乱数領域の値(2バイト)を乱数値としてステップS244に進む。
新たに算出した乱数値が上限判定値を超えていれば、算出した乱数値から上限判定値を差し引いて今回の乱数値とし(ステップS246)、その後、ステップS247に進む。一方、新たに算出した乱数値が上限判定値を超えていなければ、算出した乱数値を今回の乱数値とし、ステップS246をジャンプしてステップS247に進む。
ステップS247では、乱数値の下位を対応する乱数領域にセーブする。ここでは、1バイト乱数領域又は2バイト乱数の下位領域のいずれかの領域にセーブする。続いて、更新した乱数が2バイト乱数かをチェックし(ステップS248)、2バイト乱数であれば(ステップS249;YES)、乱数値の上位を乱数領域の上位(2バイト乱数(上位))側にセーブする(ステップS250)。ここでは、2バイト乱数の上位の領域にセーブする。ステップS250を経ると、当該乱数更新処理2を終了する。
一方、更新した乱数が2バイト乱数でなければ(ステップS249;NO)、ステップS250をジャンプし、その処理は行わず、当該乱数更新処理2を終了する。
従って、CPU101Aは、始動入賞口25や普通変動入賞装置26の始動領域への遊技球の流入に基づいて抽出された各種乱数のうち、リーチ状態におけるリーチ変動態様を決定するためのリーチ変動態様決定用乱数(変動パターン乱数)を更新する乱数更新手段をなす。
次に、上述のタイマ割込み処理における入賞口スイッチ/エラー監視処理(ステップS77)を図23により説明する。
入賞口スイッチ/エラー監視処理は、各種入賞口に設けられたスイッチから信号の入力(信号の変化)があるか否かの監視や、エラーの監視を行う処理である。
次いで、普電内の入賞口スイッチの不正監視テーブルを準備する(ステップS263)。普電内の入賞口スイッチとしては、普通電動役物(普電)としての第2始動入賞口26への入賞を検出する第2始動口スイッチ121がある。
次いで、不正&入賞監視処理を行う(ステップS264)。これは、普通電動役物(普電)としての第2始動入賞口26への正規の遊技球の入賞を監視するとともに、不正な第2始動入賞口26への入賞を監視するものである。次いで、不正監視が不要な入賞口スイッチの入賞監視テーブル(例えば、不正監視不要なスイッチを示すリスト)を準備する(ステップS265)。不正監視が不要な入賞口スイッチとしては、例えば第1始動口スイッチ120、一般入賞口28〜31に対して設けられた入賞口スイッチ123がある。
不正監視が不要な入賞口スイッチについては、不正監視はしないが入賞検出処理は行うので、ステップS265でその処理のために入賞監視テーブルを用意し、次のステップで、入賞数を更新する入賞数カウンタ更新処理(ステップS266)を実行する。この入賞数カウンタ更新処理の詳細な手順については、後述する。
遊技機を監視するエラーの種類としては、以下のものがあり、これらは払出制御装置200からのシュート球切れスイッチ、オーバーフロースイッチ、払出制御装置の異常監視用のエラーなどに対応する。
(イ)0のとき:スイッチ異常エラー(コネクタ抜け、スイッチ故障など)
(ロ)1のとき:シュート球切れエラー
(ハ)2のとき:オーバフローエラー
(ニ)3のとき:払い出し異常エラー
次いで、遊技機エラー監視テーブル1で定義した種類のエラーチェックを行い(ステップS269)、その後、遊技機エラー監視テーブル2を準備する(ステップS270)。
遊技機エラー監視テーブル2で定義するエラー監視の種類は、下記の通りである。
(ホ)0,2のとき:ガラス枠開放(前枠開放)
(ヘ)1,3のとき:前面枠開放(遊技枠開放)
次いで、前枠及び遊技枠の開放監視用エラースキャンカウンタをロードし、遊技機エラー監視テーブル2用に変換し、準備する(ステップS271)。次いで、遊技機エラー監視テーブル2で定義した種類のエラーチェックを行い(ステップS272)、タイマ割込処理にリターンする。
次に、上述の入賞口スイッチ/エラー監視処理における不正&入賞監視処理(ステップS262、ステップS264)を図24により説明する。
入賞監視処理は、大入賞口のカウントスイッチ124又は普電内の第2始動口スイッチ121に対して行なわれる処理であり、ここでは入賞の検出の他に不正の監視をする。大入賞口(特別変動入賞装置27)や普電(普通変動入賞装置26)は、無理やり開閉部材を開いて遊技球を入れて賞球を払い出させる不正が行なわれ易いためである。
不正&入賞監視処理においては、まず対象の不正監視期間フラグをチェックし(ステップS281)、不正監視期間中かどうかを判定する(ステップS282)。不正監視期間中でなければ、ステップS296にジャンプして、ステップS296以降の処理を行う。
一方、不正監視期間中であれば、エラー監視対象の入賞口スイッチ(大入賞口のカウントスイッチ124又は普電内の第2始動口スイッチ121)に入力があるかチェックする(ステップS283)。ここで、入力なし(ステップS284;NO)と判定すると、ステップS298へジャンプし、入力がある(ステップS284;YES)と判定すると、ステップS285へ進んで対象の不正入賞数を更新(+1)(加算)してステップS286へ進む。
ステップS288では、不正入賞数を不正発生判定個数に留め、次のステップS289で対象の不正入賞報知タイマ領域に初期値(例えば、60000ms)をセーブしてから、対象の不正入賞発生コマンドを準備し(ステップS290)、さらに不正フラグとして不正入賞発生フラグを設定する(ステップS291)。
したがって、上記のように不正が発生していると、不正報知コマンドが演出制御装置300へ送信され、不正報知がなされることになる。
一方、ステップS293でYESのとき、すなわち、設定した不正フラグが対象の不正フラグ領域の値と一致していれば、既に演出制御装置300に教えてある状態と同じと判断できるので、ステップS294、ステップS295の処理を行わずに、当該不正&入賞監視処理を終了する。これは、フラグが変化したその時だけコマンドを送信するからである。
対象の不正入賞報知タイマが既にタイムアップ又は(−1)更新後にタイムアップしていなければ、ステップS299の判定がNOとなり、リターンしてルーチンが繰り返される。
次に、上述の入賞口スイッチ/エラー監視処理における入賞数カウンタ更新処理(ステップS266)及び不正&入賞監視処理における入賞数カウンタ更新処理(ステップS297)を図25により説明する。
入力数カウンタ更新処理においては、まず、上述の入賞口スイッチ/エラー監視処理にて取得した入賞監視テーブルから監視する入賞口スイッチの個数を取得する(ステップS311)。次いで、監視対象の入賞口スイッチから検出信号の入力(正確には入力の変化)があるかチェックする(ステップS312)。ここで、入力がない(S313;NO)と判定するとステップS318へジャンプし、入力がある(S313;YES)と判定すると、次のステップS314で、対象の入賞数カウンタ領域の値をロードする。
一方、ステップS316でカウンタオーバーフローが発生している(S316;YES)と判定すると、ステップS317をスキップしてステップS318へジャンプする。設けられた入賞数カウンタ領域のサイズによって、最大記憶数(例えば、1バイトサイズなら255個、2バイトサイズなら65535個)が決まるので、それを超えると値が「0」に戻ってしまい、支払うべき大量の賞球数の情報を失ってしまうことになる。それを回避するためにステップS315では、いきなり領域の内容を更新せず、領域の外で(+1)して「0」になってしまわないかを確認した上で更新を行うようにしている。
ステップS318では、全部のスイッチの監視処理が終了したか判定して、終了している場合(ステップS318;YES)には当該入力数カウンタ更新処理を終了し、終了していない場合(ステップS318;NO)には、ステップS312へ戻り上記処理を繰り返す。
次に、上述の入賞口スイッチ/エラー監視処理におけるエラーチェック処理(ステップS269、ステップS272)を図26により説明する。
エラーチェック処理においては、まず、エラーを監視すべき複数のスイッチ並びに信号のうちいずれのスイッチ又は信号を今回の監視の対象とするかを順番に指定するためのエラースキャンカウンタに対応するエラー監視テーブルを取得する(ステップS321)。
準備された遊技機エラー監視テーブル上に定義されている情報としては、以下のものがある。
(イ)エラー監視テーブルのアドレス(監視するエラーの数分だけある)
(ロ)スイッチの状態を判定するデータ
(ハ)エラー報知コマンド
(ニ)エラー報知終了コマンド
(ホ)エラー発生監視タイマ比較値
(ヘ)エラー解除監視タイマ比較値
(ト)スイッチ状態領域のアドレス
(チ)エラー監視タイマ領域のアドレス
(リ)エラーフラグ領域のアドレス
例えば、遊技機エラー監視テーブルで定義するエラーの1つとして、シュート球切れの場合であれば、貯留タンク51に遊技球を供給するシュートに遊技球が無いことがシュート球切れスイッチ216で検出されてオンになると、ステップS323がYESとなる。YESであればステップS324で、エラー発生フラグを設定することになる。
ステップS328の結果がNO(不一致)であれば、まだエラーの処置まで必要ないと判断してステップS329でスイッチ状態領域に今回のスイッチ状態をセーブし、続いて
対象のエラー監視タイマをクリアする(ステップS330)。
一方、ステップS328の判別結果がYES(一致)であれば、エラーの処置が必要かどうかのタイマを判断するためにステップS334で対象のエラー監視タイマを「1」だけ更新(インクリメント)し、監視タイマ比較値(エラーへの処置が必要と判断する基準値)に達したかどうかをチェックする。監視タイマ比較値に達していれば、ステップS336でエラー監視タイマを「−1」だけ更新(デクリメント)し、ステップS337に進み、設定したエラーフラグを対象のエラーフラグ領域の値と比較する。
ここで、ステップS335で対象のエラー監視タイマが監視タイマ比較値に達したと判定したときは、エラー発生または解除の状態が確定したと見なされることになる。しかし、既にエラーが発生している状態のときにエラー発生が確定するか、またはエラー発生中でない状態のときにエラー解除が確定するという状況もあり得るので、ステップS336の処理を経て、ステップS337では、設定したエラーフラグを対象のエラーフラグ領域の値と比較することにより、今回確定したエラー状態は現エラーフラグの状態と同じかどうかをチェックするようにする。
このようにして、エラーが発生すれば、該当するエラーフラグを立てて処置のコマンドを設定し、エラーが解消すれば該当するエラーフラグを消して解消のコマンドの設定が行なわれる。特に、このエラーチェック処理では、エラーの発生だけを監視しているものではなく、解除も合わせて監視するようにして、処理を共通にしている。
なお、このようなエラーチェック処理は、例えばガラス枠開放、前面枠開放などのエラーについても同様である。
次に、前記タイマ割込処理における特図ゲーム処理(ステップS78)を図27により説明する。
特図ゲーム処理では、第1始動口スイッチ120及び第2始動口スイッチ121の入力の監視と、特図変動表示ゲームに関する処理全体の制御、特図の表示の設定を行う。
特図ゲーム処理では、まず、ステップS351で第1始動口スイッチ120及び第2始動口スイッチ121の入賞を監視する始動口スイッチ監視処理を行う。
始動口スイッチ監視処理では、始動入賞口25、第2始動入賞口をなす普通変動入賞装置26に遊技球の入賞があると、各種乱数(大当り乱数など)の抽出を行い、当該入賞に基づく特図変動表示ゲームの開始前の段階で入賞に基づく遊技結果を事前に判定する遊技結果事前判定を行う。
次いでステップS352でカウントスイッチ監視処理を行う。これは、特別変動入賞装置27内に設けられたカウントスイッチ124のカウント数を監視する処理を行うものである。
特図ゲーム処理タイマは、後述する処理番号による分岐後の各処理(ステップS359〜S365:処理番号=0乃至処理番号=6に相当)において、それぞれ所定の値にタイマ値が設定されるものであり、この特図ゲーム処理タイマがタイムアップしたときにステップS359以降を実行すべきタイミングになるように設定される。これにより、ステップS353を実行した時点で、ステップS355以降を実行すべきタイミングになっていると、ステップS354の判定結果が肯定的になり、ステップS355以降(ステップS366〜S369含む)が実行される。そして、ステップS353を実行した時点で、ステップS355〜S365を実行すべきタイミングでない場合には、ステップS354の判定結果が否定的になり、ステップS366〜S369のみが実行される構成となっている。
次いでステップS358では、処理番号により分岐する。即ち、処理番号0でステップS359(特図普段処理)へ、処理番号1でステップS360(特図変動中処理)へ、処理番号2でステップS361(特図表示中処理)へ、処理番号3でステップS362(ファンファーレ/インターバル中処理)へ、処理番号4でステップS363(大入賞口開放中処理)へ、処理番号5でステップS364(大入賞口残存球処理)へ、処理番号6でステップS365(大当り終了処理)へ進む。なお、客待ち状態(デモ中)は、処理番号0である。
また、ステップS361(特図表示中処理)では、特図の変動表示結果を一定時間(1秒〜2秒)表示するための処理を行う。前記一定時間の表示が終了すると、大当りなら処理番号を3とし、はずれなら処理番号を0としてリターンする。前記一定時間が未経過のときは、そのままリターンする(処理番号は2のままとする)。
また、ステップS363(大入賞口開放中処理)は、変動入賞装置27の大入賞口27aを開放している間の処理である。大入賞口開放が終了すると、処理番号を5にする。
またステップS365(大当り終了処理)では、大当たり終了後に特図普段処理S359を実行するための処理を行い、処理番号を0に戻してリターンする。
次いでステップS368に進み、特図2の一括表示装置35での表示(本特図2の表示)を制御するためのテーブルを準備し、次のステップS369では、この本特図2の変動表示のための制御処理(図柄変動制御処理)を行い、その後リターンする。
次に、上述の特図ゲーム処理における始動口スイッチ監視処理(ステップS351)を図28により説明する。
始動口スイッチ監視処理では、先ず、始動入賞口25(第1始動口)による保留の情報を設定するテーブルを準備した後(ステップS371)、特図始動口スイッチ共通処理(ステップS372)を行う。なお、ステップS372における特図始動口スイッチ共通処理の詳細については、ステップS377における特図始動口スイッチ共通処理とともに後述する。
普通変動入賞装置26は、閉状態では遊技球が入賞不可能であり、開状態でのみ遊技球が入賞可能である。よって、閉状態で遊技球が入賞した場合は何らかの異常や不正が発生した場合であり、このような閉状態で入賞した遊技球があった場合はその数を不正入賞数として計数する。そして、このように計数された不正入賞数が所定の不正発生判定個数(上限値)以上であるかが判定される。
また、ステップS375にて、不正入賞数が不正判定個数以上であると判定された場合も(ステップS375;YES)、始動口スイッチ監視処理を終了する。即ち、第2始動記憶をそれ以上発生させないようにする。
次に、上述の始動口スイッチ監視処理における特図始動口スイッチ共通処理(ステップS372、S377)を図29により説明する。
特図始動口スイッチ共通処理は、第1始動口スイッチ120や第2始動口スイッチ121の入力があった場合に、各々の入力について共通して行われる処理である。
特図始動口スイッチ共通処理では、まず、第1始動口スイッチ120及び第2始動口スイッチ121のうち、監視対象の始動口スイッチ(例えば、第1始動口スイッチ120等)に入力があるか否かをチェックして(ステップS381)、監視対象の始動口スイッチに入力がない(ステップS382;NO)と判定すると、特図始動口スイッチ共通処理を終了する。一方、ステップS382にて、監視対象の始動口スイッチに入力がある(ステップS383;YES)と判定すると、当該監視対象の始動口スイッチの始動口入賞フラグをセーブした後(ステップS383)、対象のハード乱数ラッチレジスタに抽出された大当り乱数をロード(大当り乱数を抽出)する(ステップS384)。
そして、ステップS389にて、第1始動口スイッチ120及び第2始動口スイッチ121のうち、監視対象の始動口スイッチ(例えば、第1始動口スイッチ120等)に対応する更新対象の特図保留(始動記憶)数が上限値未満か否かをチェックして(ステップS389)、特図保留数が上限値未満か否かを判定する処理(ステップS390)を行う。
次いで、特図保留数に対応する乱数セーブ領域のアドレスを算出する処理(ステップS395)を行う。続けて、大当り乱数をRWMの乱数セーブ領域にセーブし(ステップS396)、次に当該監視対象の始動口スイッチの大当り図柄乱数をロード(大当り図柄乱数を抽出)して準備し(ステップS397)、対応する大当り図柄乱数をRWMの大当り図柄乱数セーブ領域にセーブするとともに、その大当り図柄乱数をレジスタに退避する((ステップS398)。
ここで、RWMは、始動入賞口25や普通変動入賞装置26の始動領域への遊技球の流入に基づいて各種乱数を抽出し、該抽出された各種乱数を始動記憶として記憶可能な始動記憶手段をなす。
次いで、特図保留情報判定処理(ステップS402)を行って、特図始動口スイッチ共通処理を終了する。
一方、ステップS404にて、第1始動口スイッチ120の入力でないと判定された場合にも(ステップS404;NO)、特図始動口スイッチ共通処理を終了する。
次に、上述の始動口スイッチ共通処理における特図保留情報判定処理(ステップS402)を図30により説明する。
特図保留情報判定処理は、対応する始動記憶に基づく特図変動表示ゲームの開始タイミングより前に当該始動記憶に対応した結果関連情報の判定を行う先読み処理である。
・特図1:普通変動入賞装置26がサポート中(普電サポート中)、かつ大当り中以外
・特図2:条件なし
このような条件を満たすときは、当該始動記憶に対応した結果関連情報の判定を行う先読み処理を行うことになる。
ステップS411のチェック結果はステップS412で判定し、先読み演出を実行してよい条件を満たしていなければ、ルーチンを終了してリターンする。一方、先読み演出を実行してよい条件を満たしていれば、ステップS413に進んで、大当り判定処理を行う。大当り判定処理は、始動入賞のタイミングで抽出した乱数が大当りの範囲内にあるかどうかで大当りと判定するもので、大当り判定のときは大当りフラグ領域に大当り情報がセーブされることになる。
ここで、大当り図柄乱数チェックテーブル上に定義されている情報には、以下のものがある。
・乱数の判定値(振り分け率を表す)
・判定値に対応する大当り情報テーブルのアドレス
また、大当り情報テーブル上に定義されている情報には、以下のものがある。
・図柄情報
・始動口入賞演出図柄コマンド
ステップS416又はステップS417からステップS418に進むと、ステップS418では、設定した情報テーブルから図柄情報を取得し、図柄情報(作業用)領域にセーブする。次いで、ステップS419に進み、設定した情報テーブルから始動口入賞演出図柄コマンドを取得し、入賞演出図柄コマンド領域にセーブする。
次に、第1始動口スイッチ120及び第2始動口スイッチ121のうち、監視対象の始動口スイッチの始動口入賞フラグを準備した後(ステップS420)、対象の始動口入賞演出コマンド設定テーブルを準備し(ステップS421)、当該監視対象の始動口に関して設定された特図情報を設定する特図情報設定処理(ステップS422)を行う。
続けて、特図変動表示ゲームにおける変動態様のうち、後半変動パターンを設定する後半変動パターン設定処理(ステップS423)を行った後、特図変動表示ゲームの変動態様を設定する変動パターン設定処理(ステップS424)を行う。
なお、ステップS422における特図情報設定処理、ステップS423における後半変動パターン設定処理、ステップS424における変動パターン設定処理の各々は、特図1変動開始処理1等における特図情報設定処理(図42参照)、後半変動パターン設定処理(図43参照)、変動パターン設定処理(図44参照)と同様であり、その詳細については後述する。
すなわち、ステップS425、S426にて始動口入賞演出コマンドが準備され、ステップS428にて始動口入賞演出図柄コマンドが準備されることで、始動記憶に対応した結果関連情報の判定結果(先読み結果)を、対応する始動記憶に基づく特図変動表示ゲームの開始タイミングより前に演出制御装置300に対して知らせることができ、特に表示装置41に表示される特図保留の表示態様を変化させるなどして、その特図変動表示ゲームの開始タイミングより前に遊技者に結果関連情報を報知することが可能となる。
次に、上述の特図ゲーム処理におけるカウントスイッチ監視処理(ステップS352)を図31により説明する。
カウントスイッチ監視処理では、まず、特別変動入賞装置27の大入賞口が開放中であるか否かをチェックして(ステップS451)、大入賞口が開放中である(ステップS452;YES)と判定すると、カウントスイッチ124の入力があるか否かをチェックして(ステップS453)、カウントスイッチ124の入力がある(ステップS454;YES)と判定すると、大入賞口カウンタの数値を更新(+1)する処理(ステップS455)を行う。
次に、上述の特図ゲーム処理における特図普段処理(ステップS359)の詳細について図32により説明する。
特図普段処理では、まず、第2特図保留数(第2始動記憶数)が0であるか否かをチェックする(ステップS461)。
そして、第2特図保留数が0である(ステップS462;YES)と判定すると、第1始動記憶数(第1特図保留数)が0であるか否かをチェックする(ステップS463)。
そして、第1特図保留数が0である(ステップS464;YES)と判定すると、既に客待ちデモが開始されているか否かをチェックして(ステップS465)、客待ちデモを開始していない、即ち、開始済みでない(ステップS466;NO)と判定すると、客待ちデモフラグ領域に客待ちデモ中フラグをセーブする処理(ステップS467)を行う。
一方、ステップS465にて、既に客待ちデモが開始されている(ステップS466;YES)と判定すると、既に客待ちデモフラグ領域に客待ちデモ中フラグがセーブ(ステップS467)され、客待ちデモコマンドも準備(ステップS468)され、コマンド設定処理(ステップS469)も実行されているため、これらの処理を行わずにステップS470に移行する。
次に、特図普段処理移行設定処理1を行う(ステップS470)。これは、特図普段処理に移行するための各種データ、例えば特図普段処理に係る処理番号「0」、大入賞口不正監視期間を規定するフラグ(大入賞口不正監視情報)等を設定する処理を行うもので、その後、特図普段処理を終了する。
そして、特図変動中処理移行設定処理(特図2)を行う(ステップS470)。これは、特図変動中処理に移行するためのテーブル(第2特図用)を準備したり、当該テーブルに特図変動中処理に係る処理番号「1」、客待ちデモの終了に係る情報、第2特図の変動中に係る試験信号、一括表示装置35の中のLEDセグメントである特図2表示器における第2特図変動表示ゲームの制御用の情報(例えば、特図2表示器の変動中に係るフラグ、特図2表示器の点滅の周期のタイマの初期値など)等を設定する処理を行うもので、その後、特図普段処理を終了する。
そして、特図変動中処理移行設定処理(特図1)を行う(ステップS474)。これは
、特図変動中処理に移行するためのテーブル(第1特図用)を準備したり、当該テーブルに特図変動中処理に係る処理番号「1」、客待ちデモの終了に係る情報、第1特図の変動中に係る試験信号、一括表示装置35の中のLEDセグメントである特図1表示器における第1特図変動表示ゲームの制御用の情報(例えば、特図1表示器の変動中に係るフラグ、特図1表示器の点滅の周期のタイマの初期値など)等を設定する処理を行うもので、その後、特図普段処理を終了する。
このように、ステップS461とステップS462における第2特図保留数のチェックを、ステップS463とステップS464における第1特図保留数のチェックよりも先に行うことで、第2特図保留数が0でない場合には、特図2変動開始処理1(ステップS471)が実行されることとなる。
すなわち、第2特図変動表示ゲームが第1特図変動表示ゲームに優先して実行されることとなる。
次に、上述の特図普段処理における特図普段処理移行設定処理1(ステップS470)の詳細について図33により説明する。
このルーチンが開始されると、まずステップS481で処理番号として「0」を設定(例えば、特図普段処理に移行するためのテーブルを準備して当該テーブルに特図普段処理に係る処理番号「0」を設定)し、ステップS482で特図ゲーム処理番号領域に処理番号をセーブする。
次いで、ステップS483で変動図柄判別フラグ領域をリセットし、ステップS484で大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブしてルーチンを終了する。これにより、特図普段処理に移行するための各種データ、例えば特図普段処理に係る処理番号「0」を設定し、大入賞口不正監視期間を規定するフラグ(大入賞口不正監視情報)を設定する処理が行われる。
次に、上述の特図普段処理における特図1変動開始処理1(ステップS473)の詳細について図34により説明する。
特図1変動開始処理は、第1特図変動表示ゲームの開始時に行う処理であり、具体的には、図34に示すように、まず、第1特図変動表示ゲームが大当りであるか否かを判定するための大当りフラグ1にはずれ情報や大当り情報を設定する大当りフラグ1設定処理(ステップS491)を行う。なお、ステップS491における大当りフラグ1設定処理の詳細については後述する。
続けて、特図1停止図柄設定処理にて設定された図柄情報を図柄情報(作業用)領域にセーブする(ステップS494)。
続けて、変動パターンに関する情報を設定するテーブル(特図1用)を準備し(ステップS497)、特図情報を設定する特図情報設定処理(ステップS498)を行う。続けて、第1特図変動表示ゲームにおける変動態様のうち、後半変動パターンを設定する後半変動パターン設定処理(ステップS499)を行った後、第1特図変動表示ゲームの変動態様を設定する変動パターン設定処理(ステップS500)を行う。その後、第1特図の変動開始の情報を設定する変動開始情報設定処理(ステップS501)を行って、特図1変動開始処理を終了する。
なお、ステップS498における特図情報設定処理、ステップS499における後半変動パターン設定処理、ステップS500における変動パターン設定処理、ステップS501における特図1変動開始処理の詳細については後述する。
次に、上述の特図1変動開始処理1における大当りフラグ1設定処理(ステップS491)の詳細について図35により説明する。
ルーチンが開始すると、ステップS511で大当りフラグ1領域にはずれ情報をセーブする。大当り判定前には、予めはずれの情報をセットしておくためである。次いで、ステップS512で大当り乱数セーブ領域(特図1用)から大当り乱数をロードして準備し、ステップS513で大当り判定処理を行う。これは、今回、抽出した特図1に対応する大当り乱数が大当りの範囲(大当り下限判定値と上限判定値の間にある値:大当り判定値と一致)にあるかどうかをチェックするもので、大当りの範囲内にあれば、大当りと判断できる(詳細ルーチンは後述)。
一方、ステップS514でNOのとき(はずれのとき)には、ステップS515をジャンプしてステップS516に進む。したがって、このときは、大当りフラグ1にはずれ情報がセーブされた状態で処理を終わり、大当りフラグ1は設定されない。
次に、上述の特図1変動開始処理1における特図1停止図柄設定処理(ステップS492)の詳細について図36により説明する。
ルーチンが開始すると、ステップS521で大当りフラグ1が大当りか(大当り情報がセーブされているか)どうかをチェックし、ステップS522で大当りと判定すると、ステップS523に進んで特図1の大当り図柄テーブルを設定する。
ここで、特図1の大当り図柄テーブル上に定義されている情報としては、以下のものがある。
・乱数の判定値(振り分け率を示す)
・判定値に対応する停止図柄番号
続けて、ステップS524で大当り図柄乱数セーブ領域から(特図1用)から大当り図柄乱数をロードし、ステップS525で大当り図柄乱数に対応する停止図柄番号を取得して準備し、ステップS526では取得した停止図柄番号を特図1停止図柄領域にセーブする。
普電サポート中であれば、ステップS528に進んで、高確率時、時短時の特図1大当り停止図柄情報テーブルを準備した後、ステップS529に進む。一方、普電サポート中でなければ、ステップS530に分岐して低確率時の特図1大当り停止図柄情報テーブルを準備して、ステップS529に進む。
ステップS529では、特図1停止図柄(大当り図柄)に対応する停止図柄情報を設定する停止図柄情報設定処理を行う。なお、ステップS529における停止図柄情報設定処理の詳細については後述する。
そして、ステップS535にてRWMの大当り図柄乱数セーブ領域(特図1用)を0クリアして、特図1停止図柄設定処理を終了する。
一方、上記ステップS522で大当りフラグ1が大当りでないと判定された場合(NO)には、ステップS523乃至ステップS529の処理は行わず、ステップS536に分岐する。そして、ステップS536では、はずれ時の停止図柄番号を特図1停止図柄領域にセーブし、続くステップS537に進んで、はずれ時の図柄情報を図柄情報領域にセーブした後、ステップS531に進み、以降の処理を行う。
次に、上述の特図普段処理における特図2変動開始処理1(ステップS471)の詳細について図37により説明する。
特図2変動開始処理は、第2特図変動表示ゲームの開始時に行う処理であり、具体的には、図37に示すように、まず、第2特図変動表示ゲームが大当りであるか否かを判定するための大当りフラグ2にはずれ情報や大当り情報を設定する大当りフラグ2設定処理(ステップS541)を行う。なお、ステップS541における大当りフラグ2設定処理の詳細については後述する。
続けて、特図2停止図柄設定処理にて設定された図柄情報を図柄情報(作業用)領域にセーブする(ステップS544)。
続けて、変動パターンに関する情報を設定するテーブル(特図2用)を準備し(ステップS547)、特図情報を設定する特図情報設定処理(ステップS548)を行う。続けて、第2特図変動表示ゲームにおける変動態様のうち、後半変動パターンを設定する後半変動パターン設定処理(ステップS549)を行った後、第2特図変動表示ゲームの変動態様を設定する変動パターン設定処理(ステップS550)を行う。その後、第2特図の変動開始の情報を設定する変動開始情報設定処理(ステップS551)を行って、特図2変動開始処理を終了する。
なお、ステップS548における特図情報設定処理、ステップS549における後半変動パターン設定処理、ステップS550における変動パターン設定処理、ステップS551における特図2変動開始処理の詳細については後述する。
次に、上述の特図2変動開始処理1における大当りフラグ2設定処理(ステップS541)の詳細について図38により説明する。
ルーチンが開始すると、ステップS561で大当りフラグ2領域にはずれ情報をセーブする。大当り判定前には、予めはずれの情報をセットしておくためである。次いで、ステップS562で大当り乱数セーブ領域(特図2用)から大当り乱数をロードして準備し、ステップS563で大当り判定処理を行う。これは、今回、抽出した特図2に対応する大当り乱数が大当りの範囲(大当り下限判定値と上限判定値の間にある値:大当り判定値と一致)にあるかどうかをチェックするもので、大当りの範囲内にあれば、大当りと判断できる(詳細ルーチンは後述)。
一方、ステップS564でNOのとき(はずれのとき)には、ステップS565をジャンプしてステップS566に進む。したがって、このときは、大当りフラグ2にはずれ情報がセーブされた状態で処理を終わり、大当りフラグ2は設定されない。
次に、上述の特図2変動開始処理1における特図2停止図柄設定処理(ステップS542)の詳細について図39により説明する。
ルーチンが開始すると、ステップS571で大当りフラグ2が大当りか(大当り情報がセーブされているか)どうかをチェックし、ステップS572で大当りと判定すると、ステップS573に進んで特図2の大当り図柄テーブルを設定する。
ここで、特図2の大当り図柄テーブル上に定義されている情報としては、以下のものがある。
・乱数の判定値(振り分け率を示す)
・判定値に対応する停止図柄番号
続けて、ステップS574で大当り図柄乱数セーブ領域から(特図2用)から大当り図柄乱数をロードし、ステップS575で大当り図柄乱数に対応する停止図柄番号を取得して準備し、ステップS576では取得した停止図柄番号を特図2停止図柄領域にセーブする。
ステップS579では、特図2停止図柄(大当り図柄)に対応する停止図柄情報を設定する停止図柄情報設定処理を行う。なお、ステップS579における停止図柄情報設定処理の詳細については後述する。
そして、ステップS585にてRWMの大当り図柄乱数セーブ領域(特図2用)を0クリアして、特図2停止図柄設定処理を終了する。
一方、上記ステップS572で大当りフラグ2が大当りでないと判定された場合(NO)には、ステップS573乃至ステップS579の処理は行わず、ステップS586に分岐する。そして、ステップS586では、はずれ時の停止図柄番号を特図2停止図柄領域にセーブし、続くステップS587に進んで、はずれ時の図柄情報を図柄情報領域にセーブした後、ステップS581に進み、以降の処理を行う。
次に、上述の大当りフラグ1設定処理及び大当りフラグ2設定処理におけるそれぞれの大当り判定処理(ステップS513、ステップS563)の詳細について図40により説明する。
ルーチンが開始すると、ステップS591で大当り判定用の下限判定値を設定する処理を行う。その後、ステップS592で対象の大当り乱数の値が下限判定値未満であるか否かをチェック、つまり、図35のステップS512で読み込んだ大当り乱数の値が、当該大当り乱数の当り判定値の下限値未満であるかをチェックし、ステップS593で大当り乱数の値が下限判定値未満であると判定すると、ステップS594に分岐し、判定結果としてはずれを設定し、リターンする。
また、ステップS595で高確率時でないと判定すると、ステップS598に分岐し、低確率時における大当り判定用の上限判定値を設定する処理を行い、その後、ステップS597に進む。
このようにして、高確率時と低確率時の上限判定値が設定された場合、対象の大当り乱数の値が下限判定値と上限判定値で挟まれた間(ゾーン)にあれば、大当りと判断できることになる。
そのため、ステップS597では対象の大当り乱数の値が上限判定値より大きいか(上限判定値を超えたか)否かをチェックし、ステップS598で大当り乱数の値が上限判定値より大きいと判定(ステップS598;YES)すると、大当りではないと判断できるので、ステップS594に進んで判定結果としてはずれを設定し、リターンする。
一方、ステップS598で対象の大当り乱数の値が上限判定値以下である(上限判定値を超えていない)と判定(ステップS598;NO)すると、対象の大当り乱数の値が下限判定値と上限判定値で挟まれた間(ゾーン)にあらから、大当りと判断して、ステップS600で判定結果として大当りを設定してリターンする。
次に、上述の特図1停止図柄設定処理における停止図柄情報設定処理(ステップS529)及び特図2停止図柄設定処理における停止図柄情報設定処理(ステップS579)の詳細について図41により説明する。
停止図柄情報設定処理では、まず、ステップS611で対象の停止図柄番号に対応する図柄情報を取得し、図柄情報領域にセーブする。
ここで、図柄情報を取得する場合、準備された停止図柄情報テーブル上に定義されている情報から所得するが、その内容は以下の通りである(後述の各情報も同様)。
・図柄情報
・確率変動判定フラグ
・ラウンド数上限値情報
・大入賞口開放情報
・特殊演出情報(例えば、
・特殊演出情報(例えば、大当り終了後に行われる昇格演出実行期間の有無等)
ここで、昇格演出とは、以下の概念である。
本実施例の場合、通常図柄で当たった時、大当り終了後の時短期間内に特定の回転数(例えば、20、50、100回転目)になると、通常の大当り確率(通常モード)から高確率モードに昇格するかどうかの昇格演出を行うようになっている。この昇格演出は、遊技者に対して確変(確率変動によって高確率モードになること)になるかもしれないと大きな期待感を持たせるもので、ハラハラドキドキ感のある演出である。
ただし、パチンコ機1内部では、確変かどうかは事前に決まっているものであるが、外部の遊技者に演出を伝える表示装置41の画面上はあいまいな報知しかしないので、遊技者は確信が持てない状態である。そこで、昇格演出を行うことによって、確変確定か否かを遊技者に報知してあげるようになっている。
また、何回目の昇格演出で確変昇格するかも事前に決まっており(この情報も特殊演出情報に含まる)、確変当りでない場合は上記3回とも昇格するかどうかの演出は行うが、全て失敗に終わるような演出になる。
次に、ステップS613で停止図柄番号に対応するラウンド数上限値情報を取得し、当該ラウンド数上限値情報をRWMのラウンド数上限値情報領域にセーブする。続けて、ステップS614で停止図柄番号に対応する大入賞口開放情報を取得し、当該大入賞口開放情報をRWMの大入賞口開放情報領域にセーブする。次いで、ステップS615で停止図柄番号に対応する特殊演出情報(設定用)を取得し、当該特殊演出情報(設定用)をRWMの特殊演出情報(設定用)領域にセーブして、停止図柄情報設定処理を終了する。
次に、上述の特図1変動開始処理、特図2変動開始処理における特図情報設定処理(ステップS498、ステップS548)の詳細について図42により説明する。
特図情報設定処理では、まず、準備したフラグを対象の特図を示すフラグとして図柄判別フラグ(作業用)領域にセーブする(ステップS621)。
ここで、特図情報のために準備されているテーブル上に定義されている情報として、以下のものがある。
・特図保留数領域のアドレス
・前半変動情報1領域のアドレス
・前半変動情報2領域のアドレス
・前半変動グループ情報領域のアドレス
・後半変動グループ情報領域のアドレス
・乱数セーブ領域のアドレス(変動パターン乱数1)
・乱数セーブ領域のアドレス(変動パターン乱数2)
・後半変動番号領域のアドレス
・乱数セーブ領域のアドレス(変動パターン乱数3)
次いで、ステップS630で情報生成パラメータ4、6を元に前半変動グループ情報を生成し、前半変動グループ情報領域にセーブする。続いて、ステップS631で情報生成パラメータ1を元に後半変動グループ情報を生成し、対象の後半変動グループ情報領域にセーブし、ステップS632で情報生成パラメータ2、4、5元に変動グループ選択テーブルポイントを生成し、準備してリターンする。したがって、このときは普電サポートなしの特図情報が設定されることになる。
したがって、このときは低確率及び普電サポート中の特図情報が設定されることになる。
また、ステップS633で高確率時と判定(YES)したときは、ステップS635に分岐して、前半情報生成パラメータ2が特殊演出実行中かをチェックし、チェック結果をステップS636で判定し、判定結果がNO(特殊演出実行中でない)のときはステップS637に進んで、情報生成パラメータ3として高確率及び普電サポート中の値を設定した後、ステップS626に抜け、以後は、ステップS626乃至ステップS632を実行してリターンする。
したがって、このときは高確率及び普電サポート中の特図情報が設定されることになる。
さらに、ステップS636で前半情報生成パラメータ2が特殊演出実行中である(YES)と判定したときは、ステップS638に分岐して、情報生成パラメータ3として特殊演出実行時の値を設定した後、ステップS626に抜け、以後は、ステップS626乃至ステップS632を実行してリターンする。
したがって、このときは特殊演出実行時の特図情報が設定されることになる。
次に、上述の特図1変動開始処理、特図2変動開始処理における後半変動パターン設定処理(ステップS499、ステップS549)の詳細について図43により説明する。
後半変動パターン設定処理では、まず、第1特図及び第2特図のうち、特図情報設定処理にて設定された特図情報(例えば、第1特図等)に対応する変動グループ選択テーブルポインタに対応する変動グループ選択テーブルのアドレスを算出し、準備する処理(ステップS641)を行う。
なお、算出前の変動グループ選択アドレステーブルに定義される情報としては、変動グループ選択テーブルのアドレスがあるが、これは変動グループ選択テーブルポインタの数分だけある。
なお、はずれの変動グループ選択テーブル上に定義されている情報としては、変動グループ選択テーブルのアドレスがあるが、これは、保留数毎でテーブルを変えるために追加算出が行われるものであるが、大当り時は保留数に影響しない。
一方、ステップS634で図柄情報(作業用)がはずれ図柄情報ではないと判定(NO)すると、ステップS644、ステップS645をジャンプしてステップS646に進む。
したがって、図柄情報(作業用)がはずれ図柄情報のときは、はずれに対応した情報が準備される。
次いで、2バイト振り分け処理を行うことにより得られた後半変動選択テーブルのアドレスを取得して準備した後(ステップS648)、特図変動表示ゲームの後半変動パターンを選択するための判定用乱数として、変動パターン乱数2を対象の領域からロードして準備し(ステップS649)、後半変動番号の特定に係る振り分け処理(ステップS650)を行う。
次に、振り分け処理を行うことにより得られた後半変動番号を取得する処理(ステップS651)を行って、当該後半変動番号をRWMの対象となる後半変動番号領域にセーブして(ステップS652)、後半変動パターン設定処理を終了する。
次に、上述の特図1変動開始処理、特図2変動開始処理における変動パターン設定処理(ステップS500、ステップS550)の詳細について図44により説明する。
変動パターン設定処理では、まず、第1特図及び第2特図のうち、特図情報設定処理にて設定された特図情報(例えば、第1特図等)に対応する、つまり対象の前半変動グループ情報領域から前半変動グループ情報をロードする処理(ステップS661)を行う。
次に、前半変動グループ情報に対応する前半変動グループテーブルのアドレスを算出し(ステップS662)、続いて対象の領域から後半変動番号をロードして(ステップS663)、算出後のテーブルを用い、後半変動番号に対応するアドレスを算出する(ステップS664)。
また、ステップS666にて、後半変動番号がリーチなし変動の番号でない(ステップS666;NO)と判定すると、ステップS669に分岐して対象の前半変動情報2領域から前半変動情報2をロードした後、ステップS668に進む。
次いで、ステップS668では、算出後のテーブルを用い、前半変動情報に対応するアドレスを算出する処理を行い、ステップS670で算出後のアドレスから前半変動選択テーブルのアドレスを取得し、準備する処理を行う。
続いて、ステップS671で対象の領域から変動パターン乱数3をロードして準備し、ステップS672で前半変動番号を特定する振り分け処理を行う。次に、ステップS673で振り分け処理の結果得られた前半変動番号を取得して準備する処理を行って、変動パターン設定処理を終了する。
次に、上述の特図1変動開始処理、特図2変動開始処理における変動パターン設定処理(ステップS500、ステップS550)の詳細について図45により説明する。
変動開始情報設定処理では、まず、対象となる変動パターン乱数1〜3のRWMのセーブ領域をクリアした後(ステップS681)、変動パターン設定処理にて取得された前半変動番号に対応する前半変動時間値テーブルの値を取得する処理(ステップS682)を行い、続けて、前半変動番号に対応する前半変動時間値を取得する処理(ステップS683)を行い、さらに、後半変動パターン設定処理にて取得された後半変動番号に対応する後半変動時間値テーブルを設定する処理(ステップS684)を行う。
続けて、前半変動番号に対応する変動コマンド(MODE)を算出して準備した後(ステップS688)、後半変動番号の値を変動コマンド(ACTION)として準備して(ステップS689)、コマンド設定処理(ステップS690)を行う。
続けて、変動図柄判別フラグに対応する(すなわち、表示装置41に表示される特図保留数に係る)飾り特図1保留数コマンド(MODE)を準備して(ステップS693)、変動図柄判別フラグに対応するRWMの第1特図の乱数セーブ領域のアドレスを設定する(ステップS694)。
そして、第1特図及び第2特図のうち、変動図柄判別フラグに対応する変動対象の特図の乱数セーブ領域をシフトし(ステップS698)、シフト後の空き領域をクリアする処理(ステップS699)を行って、変動開始情報設定処理を終了する。
次に、上述の特図普段処理における特図変動中処理移行設定処理(特図1)(ステップS474)の詳細について図46により説明する。
ルーチンが開始すると、ステップS711で処理番号として「1」(特図変動中処理に係る処理番号に相当)を設定し、ステップS712で特図ゲーム処理番号領域に処理番号(ここでは「1」)をセーブする。次いで、ステップS713で客待ちデモフラグ領域に客待ちデモ中以外フラグをセーブし、ステップS714で特図1変動開始に関する信号を試験信号出力データ領域にセーブする。
次いで、ステップS715で特図1変動制御フラグ領域に変動中フラグをセーブし、ステップS716で特図1変動制御タイマ領域に図柄変動制御タイマ初期値(例えば、200ms)をセーブしてルーチンを終了する。
このようにして、特図1に関して特図変動中処理に移行するための処理が行われる。
次に、上述の特図普段処理における特図変動中処理移行設定処理(特図2)(ステップS472)の詳細について図47により説明する。
ルーチンが開始すると、ステップS721で処理番号として「1」(特図変動中処理に係る処理番号に相当)を設定し、ステップS722で特図ゲーム処理番号領域に処理番号(ここでは「1」)をセーブする。次いで、ステップS723で客待ちデモフラグ領域に客待ちデモ中以外フラグをセーブし、ステップS724で特図2変動開始に関する信号を試験信号出力データ領域にセーブする。
次いで、ステップS725で特図2変動制御フラグ領域に変動中フラグをセーブし、ステップS726で特図2変動制御タイマ領域に図柄変動制御タイマ初期値(例えば、200ms)をセーブしてルーチンを終了する。
このようにして、特図2に関して特図変動中処理に移行するための処理が行われる。
次に、上述の特図ゲーム処理における特図変動中処理(ステップS360)の詳細について図48により説明する。
特図変動中処理では、まず、ステップS729で図柄停止コマンドを準備し、次いでステップS730で図柄停止コマンド(ステップS729で準備したもの)についてコマンド設定処理(後述する)を実行する。図柄停止コマンドは、演出制御装置300に対して、特図(飾り図柄)の変動表示の停止を指令するものである。なお本例は、このように主基板(遊技制御装置100)からサブ基板(演出制御装置300)に図柄停止コマンドを送信する構成であるが、この態様に限定されない。例えば、サブ基板側で計時して自動的に(即ち、主基板からのコマンドによらずに)図柄停止(特図の飾り図柄の変動表示の停止)を行う構成としてもよく、この場合には、主基板から図柄停止コマンドを送信する必要は必ずしもない。但しこの場合も、検査時等に使えるように、サブ基板側の処理として図柄停止コマンドを受信する処理を残してもよい。
次に、ステップS731で図柄情報がはずれ図柄情報であるかをチェックし、ステップS732でYES(図柄情報がはずれ図柄情報である)と判定すると、ステップS733に進んで、後半変動番号がリーチなし変動の番号かをチェックする。チェック結果をステップS734で判定し、YES(リーチなし変動)であれば、ステップS735ではずれ時の特図表示時間ポインタを設定する。次いで、ステップS736で特図表示時間テーブルを設定し、ステップS737で特図表示時間ポインタに対応する特図表示時間を取得し、さらにステップS738で特図表示時間を特図ゲーム処理タイマ領域にセーブする。その後、ステップS739で特図表示中移行設定処理を行い、リターンする。
また、ステップS732で図柄情報がはずれ図柄情報でない(NO)と判定すると、ステップS741に分岐して大当り時の特図表示時間ポインタを設定した後、ステップS736に進み、以降の処理を行う。
次に、上述の特図変動中処理における特図表示中処理移行設定処理(ステップS739)の詳細について図49により説明する。
ルーチンが開始すると、ステップS751で処理番号として「2」(特図表示中処理に係る処理番号に相当)を設定し、ステップS752で特図ゲーム処理番号領域に処理番号(ここでは「2」)をセーブする。次いで、ステップS753で特図1変動終了処理に関する信号を試験信号出力データ領域にセーブし、ステップS754で特図2変動終了処理に関する信号を試験信号出力データ領域にセーブする。
次いで、ステップS755で図柄確定回数信号制御タイマ領域に制御タイマ初期値(例えば、256ms)をセーブし、ステップS756で特図1変動制御フラグ領域に停止フラグをセーブし、ステップS757で特図2変動制御フラグ領域に停止フラグをセーブしてルーチンを終了する。
このようにして、特図表示中処理に移行するための処理が行われる。
次に、上述の特図ゲーム処理における特図表示中処理(ステップS361)の詳細について図50、図51により説明する。
特図表示中処理では、まず、特図2変動開始処理1における大当りフラグ2設定処理にて設定された大当りフラグ2をロードして(ステップS761)、RWMの大当りフラグ2領域をクリアする処理(ステップS762)を行う。
次に、ロードされた大当りフラグ2が大当りかをチェックして(ステップS763)、大当りである(ステップS764;YES)と判定すると、ステップS770にジャンプしてRWMの大当りフラグ1領域をクリアする処理を行い、次いで、ステップS771で特図2大当りの開始に関する信号を試験信号出力データ領域にセーブし、ステップS772に処理を移行する。
続けて、ロードされた大当りフラグ1が大当りかをチェックして(ステップS767)、大当りである(ステップS768;YES)と判定すると、特図1大当りの開始に関する信号を試験信号出力データ領域にセーブし(ステップS769)、ステップS772に処理を移行する。
また、ステップS768で大当りでない(NO)と判定すると、図51のステップS787に処理を移行する。このときは、以後に時短の有無を判断して処理を進めることになる。
次いで、ラウンド数上限値情報に対応するラウンド数上限値を取得し、ラウンド数上限値をラウンド数上限値領域にセーブする(ステップS773)。続けて、ラウンド数上限値情報に対応するラウンドLEDポインタを取得し、当該ラウンドLEDポインタをラウンドLEDポインタ領域にセーブする(ステップS774)。
次に、普図変動表示ゲーム及び特図変動表示ゲームにて当り結果となる確率を通常確率状態(低確率状態)とする情報に係る低確率時の確率情報コマンドを準備して(ステップS775)、コマンド設定処理(ステップS776)を行う。
続けて、図柄情報に対応するファンファーレコマンドを準備し(ステップS777)、コマンド設定処理(ステップS778)を行う。
次に、大入賞口開放情報と確率の状態に対応する信号を外部情報出力データ領域にセーブし(ステップS781)、大入賞口開放情報に対応する大当りファンファーレ時間を設定して(ステップS782)、当該大当りファンファーレ時間を特図ゲーム処理タイマ領域にセーブする(ステップS783)。
その後、大入賞口への不正入賞数領域をリセットした後(ステップS784)、大入賞口不正監視期間フラグ領域に不正監視期間外フラグをセーブする(ステップS785)。
ここで、各種状態が切り替わるための情報としては、例えば、外部情報端子板55に出力用の遊技状態が特別遊技状態(大当り状態)であることを示す信号、普図変動表示ゲーム及び特図変動表示ゲームにて当り結果となる確率が通常確率状態(低確率状態)であることを示す試験信号、大入賞口不正監視期間における大入賞口への入賞数のクリアに係る情報、特別遊技状態のラウンド数のクリアに係る情報、高確率状態の表示に係る遊技状態表示LEDを消灯させる情報、普図変動表示ゲームにて当り結果となる確率を通常確率状態(低確率状態)とする情報、停電復旧時に点灯した高確率状態の表示に係る遊技状態表示LED(高確率報知LED)を消灯させる情報、特図変動表示ゲームの制御用の情報(例えば、特図変動表示ゲームにて当り結果となる確率を通常確率状態(低確率状態)とする情報や、停電復旧時に演出制御装置300に出力される、普図変動表示ゲームや特図変動表示ゲームにて当り結果となる確率が通常確率状態(低確率状態)であることを示す情報や、大当り後の残り時間短縮変動回数のクリアに係る情報など)等が挙げられる。
ここで、遊技状態が時短状態でない(ステップS787;NO)と判定すると、特図普段処理に移行するための各種データを設定する特図普段処理移行設定処理1(ステップS788)、具体的には、当該テーブルに、特図普段処理に係る処理番号「0」等を設定する処理を行って、特図表示中処理を終了する。
一方、ステップS787にて、遊技状態が時短状態である(ステップS787;YES)と判定すると、特図変動表示ゲームが時短動作状態で行われる回数(例えば、100回)に係る時短変動回数(時間短縮変動回数)を更新(−1)した後(ステップS789)、当該更新後の時短変動回数が「0」であるか否かを判定する処理(ステップS790)を行う。
ここで、時短変動回数が「0」でない(ステップS790;NO)と判定すると、処理をステップS788に移行して、それ以降の処理を行う。
次に、時短が終了した時における特図普段処理に移行するための各種データを設定する特図普段処理移行設定処理2(時短終了時)(ステップS793)、具体的には、当該テーブルに、特図普段処理に係る処理番号「0」、特図変動表示ゲームと普図変動表示ゲームの時短動作状態と普通変動入賞装置26の開放時間を延長する状態(時短状態)の終了に係る情報等を設定する処理を行って、特図表示中処理を終了する。
次に、上述の特図表示中処理における特図普段処理移行設定処理2(時短終了時)(ステップS793)の詳細について図52により説明する。
ルーチンが開始すると、ステップS801で処理番号として「0」(特図普段処理に係る処理番号に相当)を設定し、ステップS802で特図ゲーム処理番号領域に処理番号(ここでは「0」)をセーブする。次いで、ステップS803で時短の終了に関する信号を外部情報出力データ領域にセーブし、ステップS804で時短の終了に関する信号を試験信号出力データ領域にセーブする。
次に、上述の特図表示中処理におけるファンファーレ/インターバル中処理移行設定処理1(ステップS786)の詳細について図53により説明する。
ルーチンが開始すると、ステップS821で処理番号として「3」(ファンファーレ/インターバル中処理に係る処理番号に相当)を設定し、ステップS822で特図ゲーム処理番号領域に処理番号(ここでは「3」)をセーブする。次いで、ステップS823で大当りの開始に関する信号を外部情報出力データ領域にセーブし、ステップS824で高確率&時短の終了に関する信号を試験信号出力データ領域にセーブする。
次に、上述の特図ゲーム処理におけるファンファーレ/インターバル中処理(ステップS362)の詳細について図54により説明する。
ファンファーレ/インターバル中処理では、まず、特別遊技状態のラウンド数を更新(+1)する処理(ステップS841)を行った後、特別遊技状態の各ラウンドにおける大入賞口の開放時間(変動入賞装置27の開閉部材27bの開放時間。以下、適宜同様)を判断するために、大入賞口開放情報が長開放か否かをチェックする。
なお、特別遊技状態の各ラウンドにおける大入賞口の開放時間(変動入賞装置27の開閉部材27bの開放時間)としては、開放時間の短い短開放(例えば、0.8秒等)と、開放時間の長い長開放(例えば、25秒等)とがある。この判定は、例えば大入賞口開放情報判定フラグを設定し、当該大入賞口開放情報判定フラグが大入賞口の開放時間の長い長開放(例えば、25秒等)であるか否かをチェックして行うようにすればよい。
次に、RWMの飾り特図コマンド領域から、飾り特図変動表示ゲームに係る停止図柄パターン情報に対応する飾り特図コマンドをロードして準備し(ステップS846)、コマンド設定処理(ステップS847)を行う。
そして、特別遊技状態の各ラウンドにおける変動入賞装置27の開閉部材27bの開放時間(大入賞口の開放時間)として開放時間の長い長開放(例えば、25000ms=25秒)を設定する処理(ステップS848)を行った後、当該開放時間(長開放に係る開放時間)を特図ゲーム処理タイマにセーブする(ステップS849)。
次に、大入賞口開放中処理に移行するための各種データを設定する大入賞口開放中処理移行設定処理(ステップS850)、具体的には、大入賞口開放中処理に係る処理番号「4」、大入賞口の開放に係る試験信号、大入賞口を開放するための大入賞口ソレノイド133の駆動に係る制御信号(オン信号)、大入賞口への入賞数のクリアに係る情報等を設定する処理を行って、ファンファーレ/インターバル中処理を終了する。
したがって、大当りのラウンド数が15ラウンドである場合は、大入賞口の開放時間として長開放に係る開放時間が特図ゲーム処理タイマにセーブされ、大当りのラウンド数が2ラウンドである場合は、大入賞口の開放時間として短開放に係る開放時間が特図ゲーム処理タイマにセーブされることとなる。
次に、上述のファンファーレ/インターバル中処理における大入賞口開放中処理移行設定処理(ステップS850)の詳細について図55により説明する。
ルーチンが開始すると、ステップS861で処理番号として「4」(大入賞口開放中処理に係る処理番号に相当)を設定し、ステップS862で特図ゲーム処理番号領域に処理番号(ここでは「4」)をセーブする。次いで、ステップS863で大入賞口開放開始に関する信号を試験信号出力データ領域にセーブする。大入賞口開放開始に関する信号としては、例えば特別電動役物1作動中信号をONしたものがある。
次いで、ステップS864で大入賞口ソレノイド出力データ領域にONデータをセーブし、ステップS865で大入賞口カウント数をリセットしてリターンする。
次に、上述の特図ゲーム処理における大入賞口開放中処理(ステップS363)の詳細について図56により説明する。
大入賞口開放中処理では、まず、大入賞口開放情報が開放時間の長い長開放(例えば、25秒等)であるか否かをチェックする(ステップS871)。これは、例えば大入賞口開放情報判定フラグを用いて判断する。
そして、大入賞口の開放時間が長開放である(ステップS872;YES)と判定すると、実行中の特別遊技状態における今回のラウンド数をRWMのラウンド数上限値領域のラウンド数上限値と比較して、今回のラウンドが上限値(つまり最終ラウンド)に達したか否かをチェックする処理(ステップS873)を行う。
続けて、RWMの飾り特図コマンド領域から、飾り特図変動表示ゲームに係る停止図柄パターン情報に対応する飾り特図コマンドをロードして準備し(ステップS877)、コマンド設定処理(ステップS878)を行う。
即ち、RWMの飾り特図コマンド領域から、飾り特図変動表示ゲームに係る停止図柄パターン情報に対応する飾り特図コマンドをロードして準備し(ステップS877)、コマンド設定処理(ステップS878)を行った後、大入賞口残存球処理に移行するための各種データを設定する大入賞口残存球処理移行設定処理(ステップS879)を行う。具体的には、大入賞口残存球処理に係る処理番号「5」、特図ゲーム処理タイマにセーブする大入賞口残存球処理に係る処理時間、大入賞口を閉塞するための大入賞口ソレノイド133の駆動に係る制御信号(オフ信号)等を設定する処理を行って、大入賞口開放中処理を終了する。
次に、上述の大入賞口開放中処理における大入賞口残存球処理移行設定処理(ステップS879)の詳細について図57により説明する。
ルーチンが開始すると、ステップS881で処理番号として「5」(大入賞口残存球処理に係る処理番号に相当)を設定し、ステップS882で特図ゲーム処理番号領域に処理番号(ここでは「5」)をセーブする。次いで、ステップS883で残存球処理時間(例えば、1900ms)を設定し、ステップS884で特図ゲーム処理タイマ領域に残存球処理時間をセーブする、次いで、ステップS885で大入賞口ソレノイド出力データ領域にOFFデータをセーブしてリターンする。
次に、上述の特図ゲーム処理における大入賞口残存球処理(ステップS364)の詳細について図58により説明する。
大入賞口残存球処理では、まず、実行中の特別遊技状態における今回のラウンド数とRWMのラウンド数上限値領域のラウンド数上限値とを比較して今回のラウンドが上限値に達した(最終ラウンド)か否かをチェックする(ステップS891)。
そして、ステップS891におけるチェックの結果、特別遊技状態における今回のラウンドが最終ラウンドでない(ステップS892;NO)と判定すると、インターバル時間テーブルを設定し(ステップS893)、大入賞口開放情報と今回のラウンド数に対応するインターバル時間を取得し(ステップS894)、さらにインターバル時間を特図ゲーム処理タイマ領域にセーブする(ステップS895)。その後、ファンファーレ/インターバル中処理に移行するための各種データを設定するファンファーレ/インターバル中処理移行設定処理2(ステップS896)、具体的には、ファンファーレ/インターバル中処理に係る処理番号「3」、特図ゲーム処理タイマにセーブするファンファーレ/インターバル中処理に係る処理時間、変動入賞装置27の作動終了を示す試験信号等を設定する処理を行って、大入賞口残存球処理を終了する。
次に、上述の大入賞口残存球処理におけるファンファーレ/インターバル中処理移行設定処理2(ステップS896)の詳細について図59により説明する。
ルーチンが開始すると、ステップS911で処理番号として「3」(ファンファーレ/インターバル中処理に係る処理番号に相当)を設定し、ステップS912で特図ゲーム処理番号領域に処理番号(ここでは「3」)をセーブする。次いで、ステップS913で大入賞口開放終了に関する信号を試験信号出力データ領域にセーブしてリターンする。大入賞口開放終了に関する信号としては、例えば特別電動役物1作動中信号をOFFしたものがある。
次に、上述の大入賞口残存球処理における大当り終了処理移行設定処理(ステップS900)の詳細について図60により説明する。
ルーチンが開始すると、ステップS921で処理番号として「6」(大当り終了処理に係る処理番号に相当)を設定し、ステップS922で特図ゲーム処理番号領域に処理番号(ここでは「6」)をセーブする。次いで、ステップS923で大入賞口開放終了に関する信号(例えば、特別電動役物1作動中信号OFF)を試験信号出力データ領域にセーブする。
次いで、ステップS924で大入賞口カウント数をリセットし、ステップS925でラウンド数をリセットし、ステップS926でラウンド数上限値領域をリセットする。続いて、ステップS927でラウンド数上限値情報領域をリセットし、ステップS928で大入賞口開放情報領域をリセットしてリターンする。
次に、上述の特図ゲーム処理における大当り終了処理(ステップS365)の詳細について図61により説明する。
大当り終了処理では、まず、停止図柄情報設定処理にて設定された確率変動判定フラグが高確率突入フラグかをチェックし(ステップS931)、チェック結果をステップS932で判定し、NOであれば高確率突入でないと判断してステップS933に進む。
ステップS933では大当り終了設定処理1を行う。これは、高確率突入でない状態であるから、大当り終了後に時短となるモードに移行する処理を設定するものである。次いで、ステップS934で確率変動判定フラグに対応する確率情報コマンドを準備し、ステップS935でコマンド処理を行う。
一方、上記ステップS932でYES(高確率突入)のときは、ステップS938に分岐して大当り終了設定処理2を行う。これは、高確率突入の状態であるから、大当り終了後に確率変動(高確率開始)となるモードに移行する処理を設定するものである。次いで、ステップS934以降の処理を実行する。
次に、上述の大当り終了処理における大当り終了設定処理1(ステップS933)の詳細について図62により説明する。
ルーチンが開始すると、ステップS941で時短の開始に関する信号を外部情報出力データ領域にセーブする。この領域での時短の開始に関する信号は、例えば大当り2信号ONである。次いで、ステップS942で時短の開始に関する信号を試験信号出力データ領域にセーブする。この領域での時短の開始に関する信号は、以下のものがある。
・特別図柄1変動時間短縮状態信号をON
・特別図柄2変動時間短縮状態信号をON
・普通図柄1高確率状態信号をON
・普通図柄1変動時間短縮状態信号をON
・普通電動役物1開放延長状態信号をON
次いで、ステップS943で遊技状態表示番号領域に時短時の番号をセーブし、ステップS945で特図ゲームモードフラグ領域に低確率&時短フラグをセーブする。次いで、ステップS946で停電復旧時送信コマンド領域に確率情報コマンド(時短)をセーブし、ステップS947で時短変動回数領域に時短変動回数初期値(例えば、100)をセーブしてリターンする。
このようにして、大当り終了後に時短となるモードに移行する処理が行われる。
次に、上述の大当り終了処理における大当り終了設定処理2(ステップS938)の詳細について図63により説明する。
ルーチンが開始すると、ステップS951で高確率の開始に関する信号を外部情報出力データ領域にセーブする。この領域での高確率の開始に関する信号は、例えば大当り2信号ONである。次いで、ステップS952で高確率の開始に関する信号を試験信号出力データ領域にセーブする。この領域での時短の開始に関する信号は、以下のものがある。
・特別図柄1高確率状態信号をON
・特別図柄2高確率状態信号をON
・特別図柄1変動時間短縮状態信号をON
・特別図柄2変動時間短縮状態信号をON
・普通図柄1高確率状態信号をON
・普通図柄1変動時間短縮状態信号をON
・普通電動役物1開放延長状態信号をON
次いで、ステップS953で遊技状態表示番号領域に高確率時の番号をセーブし、ステップS954で普図ゲームモードフラグ領域に普図高確率&普電サポートフラグをセーブする。次いで、ステップS955で特図ゲームモードフラグ領域に高確率&時短フラグをセーブする。次いで、ステップS956で停電復旧時送信コマンド領域に確率情報コマンド(高確率)をセーブし、ステップS957で時短変動回数領域をリセットしてリターンする。
このようにして、大当り終了後に高確率となるモードに移行する処理が行われる。
次に、上述の大当り終了処理における特図普段処理移行設定処理3(ステップS937)の詳細について図64により説明する。
ルーチンが開始すると、ステップS961で処理番号として「0」(特図普段処理に係る処理番号に相当)を設定し、ステップS962で特図ゲーム処理番号領域に処理番号(ここでは「0」)をセーブする。次いで、ステップS963で大当りの終了に関する信号を外部情報出力データ領域にセーブする。
ここでの大当りの終了に関する信号としては、大当り1信号をOFF、大当り3信号をOFFがある。
・条件装置作動中信号をOFF
・役物連続作動装置作動中信号をOFF
・特別図柄1当り信号又は特別図柄2当り信号をOFF
次いで、ステップS965で確率変動判定フラグ領域をリセットし、ステップS966でラウンドLEDポインタ領域をリセットし、ステップS967で大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブし、さらにステップS968で特殊演出情報(設定用)領域をリセットしてリターンする。
〔普図ゲーム処理〕
まず、上述のタイマ割込み処理における普図ゲーム処理(ステップS79)の詳細について図65により説明する。
普図ゲーム処理では、ゲートスイッチ122の入力の監視と、普図変動表示ゲームに関する処理全体の制御、普図の表示の設定等を行う。
まず、ゲートスイッチ122からの入力を監視するゲートスイッチ監視処理(ステップB1)を行う。なお、ゲートスイッチ監視処理(ステップB1)の詳細については後述する。
次に、第2始動口スイッチ121からの入力を監視する普電入賞スイッチ監視処理(ステップB2)を行う。なお、普電入賞スイッチ監視処理(ステップB2)の詳細については後述する。
そして、分岐処理終了後のリターンアドレスをスタック領域に退避させる処理(ステップB7)を行った後、ゲーム処理番号に応じてゲーム分岐処理(ステップB8)を行う。
なお、普図普段処理(ステップB9)の詳細については後述する。
また、ステップB8にて、ゲーム処理番号が「1」の場合は、普図表示中処理を行うために必要な情報の設定等を行う普図変動中処理(ステップB10)を行う。
なお、普図変動中処理(ステップB10)の詳細については後述する。
また、ステップB8にて、ゲーム処理番号が「2」の場合は、普図変動表示ゲームの結果が当りであれば、普通変動入賞装置37がサポート中であるか否かに応じた普電開放時間の設定や、普図当り中処理を行うために必要な情報の設定等を行う普図表示中処理(ステップB11)を行う。
なお、普図表示中処理(ステップB11)の詳細については後述する。
なお、普図当り中処理(ステップB12)の詳細については後述する。
また、ステップB8にて、ゲーム処理番号が「4」の場合は、普図当り終了処理を行うために必要な情報の設定等を行う普電残存球処理(ステップB13)を行う。
なお、普電残存球処理(ステップB13)の詳細については後述する。
また、ステップB8にて、ゲーム処理番号が「5」の場合は、普図普段処理(ステップB9)を行うために必要な情報の設定等を行う普図当り終了処理(ステップB14)を行う。
なお、普図当り終了処理(ステップB14)の詳細については後述する。
その後、普図表示器(一括表示装置35)による普通図柄の変動を制御するための各種テーブルを準備した後(ステップB15)、普図表示器(一括表示装置35)による普通図柄の変動の制御に係る図柄変動制御処理(ステップB16)を行って、普図ゲーム処理を終了する。
次に、上述の普図ゲーム処理におけるゲートスイッチ監視処理(ステップB1)の詳細について図66により説明する。
ゲートスイッチ監視処理では、まず、ゲートスイッチ122に入力があるか否かをチェックする(ステップB21)。そして、ゲートスイッチ122に入力があると(ステップB22;YES)判定すると、普図保留数を取得して当該普図保留数が上限値(例えば、4)未満か否かをチェックして(ステップB23)、普図保留数が上限値未満である(ステップB24;YES)と判定すると、普図保留数を更新(+1)する処理(ステップB25)を行う。
また、ステップB22にて、ゲートスイッチ122に入力がないと判定されるか(ステップB22;NO)、或いは、ステップB24にて、普図保留数が上限値未満でないと判定された場合にも(ステップB24;NO)ゲートスイッチ監視処理を終了する。
次に、上述の普図ゲーム処理における普電入賞スイッチ監視処理(ステップB2)の詳細について図67により説明する。
普電入賞スイッチ監視処理では、まず、普図変動表示ゲームが当り状態となって普通変動入賞装置26が所定回数(例えば、3回)の開放動作を実行中であるか(普図当り中か)否かをチェックする(ステップB31)。そして、普図当り中である(ステップB32;YES)と判定すると、第2始動口スイッチ121に入力があるか否かをチェックして(ステップB33)、第2始動口スイッチ121に入力がある(ステップB34;YES)と判定すると、普電カウンタのカウント数を更新(+1)する処理(ステップB35)を行う。
即ち、普図の当り状態中に上限値以上の普電入賞があった場合は、その時点で普図当り中処理制御ポインタに当り終了を設定し、以下に説明する普図当り中処理で普図の当り状態が途中で終了するようにする。
次に、上述の普図ゲーム処理における普図普段処理(ステップB9)の詳細について図68により説明する。
普図普段処理では、まず、普図保留数が「0」であるか否かをチェックして(ステップB41)、普図保留数が「0」である(ステップB42;YES)と判定すると、ステップB70に移行して、普図普段処理移行設定処理1を行った後、普図普段処理を終了する。普図普段処理移行設定処理1は、次回に普図普段処理を繰り返すための処理を行うもので、詳細は後述する。
ここで、普図高確率時(普通変動入賞装置26がサポート中)でない(ステップB43;NO)と判定すると、普図変動表示ゲームにて当り結果となる確率が高確率状態となっていないことから、乱数セーブ領域から当り乱数をロードして準備し(ステップB44)、普図低確率時の判定値を設定する(ステップB45)を行う。
その後、当り乱数の値が判定値と一致しているか否かをチェックして(ステップB46)、当り乱数の値が判定値と一致していない(ステップB47;NO)と判定すると、当りフラグ領域にはずれ情報をセーブした後(ステップB48)、普図停止図柄にはずれ時の停止図柄番号を設定する処理(ステップB49)を行う。その後、処理をステップB50に移行して、乱数セーブ領域を「0」クリアする処理(ステップB50)を行う。
また、ステップB43にて普図高確率時である(ステップB43;YES)と判定すると、普図変動表示ゲームにて当り結果となる確率が高確率状態となっていることから、乱数セーブ領域から当り乱数をロードして準備し(ステップB53)、普図高確率時の下限判定値を設定する処理(ステップB54)を行う。
その後、当り乱数の値が下限判定値未満であるか否かをチェックして(ステップB55)、当り乱数の値が下限判定値未満でない(ステップB56;NO)と判定すると、普図高確率時の上限判定値を設定する処理(ステップB57)を行う。
そして、当り乱数の値が上限判定値より大きいか否かをチェックして(ステップB58)、当り乱数の値が上限判定値より大きくない(ステップB59;NO)と判定すると、処理をステップB51に移行して、当りフラグに当り情報をセーブした後(ステップB51)、普図停止図柄に当り時の停止図柄番号を設定する処理(ステップB52)を行い、その後、処理をステップB50に移行して、乱数セーブ領域を「0」クリアする処理(ステップB50)を行う。
続けて、当り乱数セーブ領域をシフトする処理(ステップB62)を行って、シフト後の空き領域を「0」クリアする処理(ステップB63)を行った後、普図保留数を更新(−1)する処理(ステップB64)を行う。
すなわち、最も古い普図保留1に関する普図変動表示ゲームが実行されることに伴い、普図保留1以降に保留となっている普図保留2〜4の順位を1つずつ繰り上げる処理を行うことになる。この処理により、当り乱数セーブ領域の普図保留2用から普図保留4用の値(例えば、当り乱数)が、当り乱数セーブ領域の普図保留1用から普図保留3用に移動することとなる。そして、当り乱数セーブ領域の普図保留4用の値がクリアされて、普図保留数が1デクリメントされる。
一方、ステップB65にて、普通サポート中でない(ステップB65;NO)と判定した場合には、ステップB69に分岐して普電サポートなし時の普図の変動時間(例えば、10秒)を設定する処理(ステップB69)を行い、その後、ステップB67に進んで、ステップB69にて設定された普電サポートなしの場合の普図の変動時間を普図ゲーム処理タイマにセーブする。
そして、ステップB67の処理を経た後は、普図変動中処理に移行するための普図変動中処理移行設定処理(ステップB68)を行って当該普図普段処理を終了する。
次に、上述の普図普段処理における普図普段処理移行設定処理1(ステップB70)の詳細について図69により説明する。
ルーチンが開始すると、ステップB81で処理番号として「0」(普図普段処理に係る処理番号に相当)を設定し、ステップB82で普図ゲーム処理番号領域に処理番号(ここでは「0」)をセーブする。次いで、ステップB83で普電不正監視期間フラグ領域に不正監視期間中フラグをセーブしてリターンする。これにより、次回に普図普段処理に移行する。
次に、上述の普図普段処理における普図変動中処理移行設定処理(ステップB68)の詳細について図70により説明する。
ルーチンが開始すると、ステップB91で処理番号として「1」(普図変動中処理に係る処理番号に相当)を設定し、ステップB92で普図ゲーム処理番号領域に処理番号(ここでは「1」)をセーブする。次いで、ステップB93で普図変動開始に関する信号(えば、普通図柄1変動中信号をON)を試験信号出力データ領域にセーブし、ステップB94で普図変動制御フラグ領域に変動中フラグをセーブする。次いで、ステップB95で普図変動制御タイマ領域に変動タイマ初期値(例えば、200ms)をセーブしてリターンする。これにより、次回に普図変動中処理に移行する。
次に、上述の普図ゲーム処理における普図変動中処理(ステップB10)の詳細について図71により説明する。
ルーチンが開始すると、ステップB101で普図表示中処理移行設定処理を行う。これは、普図表示中処理に移行するための設定を行うもので、詳細は後述する。この処理を経ると、リターンする。
次に、上述の普図変動中処理における普図表示中処理移行設定処理(ステップB101)の詳細について図72により説明する。
ルーチンが開始すると、ステップB111で処理番号として「2」(普図表示中処理に係る処理番号に相当)を設定し、ステップB112で普図ゲーム処理番号領域に処理番号(ここでは「2」)をセーブする。次いで、ステップB113で普図表示時間を設定(例えば、600ms)する。次いで、ステップB114で普図ゲーム処理タイマ領域に普図表示時間をセーブし、ステップB115で普図変動終了に関する信号(例えば、普通図柄1変動中信号をOFF)を試験信号出力データ領域にセーブする。次いで、ステップB116で普図変動制御タイマ領域に停止フラグをセーブしてリターンする。これにより、次回に普図表示中処理に移行する。
次に、上述の普図ゲーム処理における普図表示中処理(ステップB11)の詳細について図73により説明する。
普図表示中処理では、まず、普図普段処理にて設定された当りフラグをロードして(ステップB121)、当りフラグ領域をクリアする処理(ステップB122)を行う。
次に、ロードされた当りフラグが当りか否かをチェックして(ステップB123)、当りフラグが当りでない(ステップB124;NO)と判定すると、ステップB125に分岐して普図普段処理移行設定処理1(図69で説明)を行い、普図表示中処理を終了する。
普電サポート中である(ステップB126;YES)と判定すると、普通変動入賞装置26がサポート中である場合の普電開放時間(例えば、1.7秒)を設定する処理(ステップB127)を行った後、普通変動入賞装置26がサポート中である場合の当り開始ポインタを設定する処理(ステップB128)を行う。すなわち、普通変動入賞装置26がサポート中である場合には、普通変動入賞装置26の開放回数が2回以上の複数回となるように当り開始ポインタ(例えば、当り開始ポインタ「0」〜「4」等があるが、ここでは「0」とする)を設定する。続けて、普図当り中処理制御ポインタ領域に当り開始ポインタをセーブする(ステップB129)。
次いで、ステップB127にて設定された普電開放時間(例えば、1.7秒)を普図ゲーム処理タイマ領域にセーブした後(ステップB130)、普図当り中処理移行設定処理(ステップB131)を行う。これは、普図当り中処理に移行するための設定を行うもので、詳細は後述する。この処理を経ると、リターンする。
このルートでステップB129に移行した場合、普図当り中処理制御ポインタ領域に当り開始ポインタ(この場合は「4」となる)をセーブした後、ステップB130ではステップB132にて設定された普電開放時間(例えば、0.3秒)を普図ゲーム処理タイマ領域にセーブし、ステップB131で普図当り中処理移行設定処理を行ってリターンする。
次に、上述の普図表示中処理における普図当り中処理移行設定処理(ステップB131)の詳細について図74により説明する。
ルーチンが開始すると、ステップB141で処理番号として「3」(普図当り中処理に係る処理番号に相当)を設定し、ステップB142で普図ゲーム処理番号領域に処理番号(ここでは「3」)をセーブする。次いで、ステップB143で普図当りの開始に関する信号(例えば、普通図柄1当り信号をON)と普電作動開始に関する信号(例えば、普通電動役物1作動中信号をON)を試験信号出力データ領域にセーブする。次いで、ステップB144で普電ソレノイド出力データ領域にONデータをセーブし、ステップB145で普電カウント数をリセットする、次いで、ステップB146で普電不正入賞数をリセットし、ステップB147で普電不正監視期間フラグ領域に不正監視期間外フラグをセーブしてリターンする。これにより、次回は普図当り中処理に移行する。
次に、上述の普図ゲーム処理における普図当り中処理(ステップB12)の詳細について図75により説明する。
普図当り中処理では、まず、普図当り中処理制御ポインタをロードして準備した後(ステップB151)、ロードされた普図当り中処理制御ポインタが当り終了の値(例えば、「4」等)であるか否かをチェックして(ステップB152)、当り終了の値でない(ステップB153;NO)と判定すると、普図当り中処理制御ポインタ領域を更新(+1)する処理(ステップB154)を行う。
次に、普電作動移行設定処理(ステップB155)を行う。ここでは、普電の作動を制御することが行われる。その後、リターンする。
また、ステップB153にて、当り終了の値であると判定された場合には(ステップB153;YES)、ステップB154における普図当り中処理制御ポインタを更新(+1)する処理を行わずに、処理をステップB155に移行して、それ以降の処理を行う。
次に、上述の普図当り中処理における普電作動移行設定処理(ステップB155)の詳細について図76により説明する。
ルーチンが開始すると、ステップB161で制御ポインタによる分岐を行う。ここでは、ステップB151でロードして準備された制御ポインタの値に応じて分岐する。具体的には、ステップB161で制御ポインタが「0」若しくは「2」の場合には、ステップB162に分岐してウエイト時間(例えば、800ms)を設定し、ステップB163で普図ゲーム処理タイマ領域にウエイト時間をセーブし、続くステップB164で普電ソレノイド出力データ領域にOFFでデータをセーブした後、リターンする。これにより、普通変動入賞装置26の開放後の閉塞時間が上記ウエイト時間となり、その期間は普通変動入賞装置26が閉塞することになる。
また、ステップB161で制御ポインタが「4」の場合には、ステップB168に分岐して処理番号として「4」を設定し、ステップB169で普図ゲーム処理番号領域に処理番号(ここでは「4」)をセーブする。次いで、ステップB170で普電残存球処理時間(例えば、600ms)を設定し、ステップS171で普図ゲーム処理タイマ領域に普電残存球処理時間をセーブし、続いてステップB172で普電ソレノイド出力データ領域にOFFデータをセーブしてリターンする。したがって、制御ポインタが「4」のときは、普電開放制御を終了して、次の普電残存球処理を行うために必要な情報が設定されることになる。
次に、上述の普図ゲーム処理における普電残存球処理(ステップB13)の詳細について図77により説明する。
ルーチンが開始すると、ステップB181で普図当り終了処理移行設定処理を行う。これは、普図当り終了処理に移行するための設定を行うもので、詳細は後述する。この処理を経ると、リターンする。
次に、上述の普電残存球処理における普図当り終了処理移行設定処理(ステップB181)の詳細について図78により説明する。
ルーチンが開始すると、ステップB191で処理番号として「5」(普図当り終了処理に係る処理番号に相当)を設定し、ステップB192で普図ゲーム処理番号領域に処理番号(ここでは「5」)をセーブする。次いで、ステップB193で普図エンディング時間を設定(例えば、100ms)し、ステップB194で普図ゲーム処理タイマ領域にエンディング時間をセーブし、ステップB195で普電作動終了に関する信号(例えば、普通電動役物1作動中信号をOFF)を試験信号出力データ領域にセーブする。次いで、ステップB196で普電カウント数をリセットし、ステップB197で普図当り中処理制御ポインタ領域をリセットしてリターンする。これにより、次回は普図当り終了処理に移行する。
次に、上述の普図ゲーム処理における普図当り終了処理(ステップB14)の詳細について図79により説明する。
ルーチンが開始すると、ステップB201で普図普段処理移行設定処理2を行う。これは、普図普段処理移行設定処理2に移行するための設定を行うもので、詳細は後述する。この処理を経ると、リターンする。
次に、上述の普図当り終了処理における普図普段処理移行設定処理2(ステップB201)の詳細について図80により説明する。
ルーチンが開始すると、ステップB211で処理番号として「0」(普図普段処理に係る処理番号に相当)を設定し、ステップB212で普図ゲーム処理番号領域に処理番号(ここでは「0」)をセーブする。次いで、ステップB213で普図当りの終了に関する信号(例えば、普通図柄1当り信号をOFF)を試験信号出力データ領域にセーブする。次いで、ステップB214で普電不正監視期間フラグ領域に不正監視期間外フラグをセーブしてリターンする。これにより、次回は普図普段処理に移行する。
ここでは、ステップ番号として「ステップC」を用いて説明する。
〔セグメントLED編集処理〕
まず、上述のタイマ割込み処理におけるセグメントLED編集処理(ステップS80)の詳細について図81により説明する。
セグメントLED編集処理は一括表示装置35(図2、4、5)に設けられたセグメントLEDに関する処理を行うものであり、一括表示装置35は前述したように、普図の表示や特図の表示、さらには特図や普図の始動記憶の保留表示(特図保留表示、普図保留表示)や、遊技状態の表示を行うようになっている。
これらの表示は、例えばLEDを発光源とする複数の表示器(例えば、1個のランプや7セグメント表示器)によって行われる構成である。より具体的には、例えば特図1保留表示器、特図2保留表示器、普図保留表示器、第1遊技状態表示部、第2遊技状態表示部、エラー表示部、ラウンド表示部などの機能を有するセグメントLEDで構成され、それらの駆動に関する設定等を行うのがセグメントLED編集処理である。
その後、表示制御タイマが出力ONタイミングであるか否かをチェックして(ステップC2)、出力ONタイミングである(ステップC3;YES)と判定すると、点滅制御ポインタとして点灯ポインタを設定する処理(ステップC4)を行った後、処理をステップC5に移行する。
一方、ステップC3にて出力ONタイミングでない(ステップC3;NO)と判定すると、ステップC6に分岐して点滅制御ポインタとして消灯ポインタを設定する処理(ステップC6)を行った後、処理をステップC5に移行する。
ここで、出力ONタイミングであるか否かの判定とは、特定のビットの状態を監視し、この監視するビットが「1」であれば出力ONタイミングであると判定する一方、監視するビットが「0」であれば出力ONタイミングでないと判定するものである。
特に、本実施例では表示制御タイマのビット5が「1」のとき、出力ONタイミングであると判定する。このとき、例えば128msの点滅になるように設定される。
続けて、特図2保留数に対応する表示データを取得した後、取得した表示データをセグメント領域(例えば、特図2保留表示器のセグメント領域)にセーブする(ステップC8)。
続けて、遊技状態表示番号に対応する表示データを取得した後、取得した表示データをセグメント領域(例えば、第1遊技状態表示部若しくは第2遊技状態表示部のセグメント領域)にセーブする(ステップC10)。
一方、ステップC12にて、高確率を報知するタイミングである(ステップC12;YES)と判定すると、ステップC13をスキップして、セグメントLED編集処理を終了する。
次に、上述のタイマ割込み処理における磁石不正監視処理(ステップS81)の詳細について図82により説明する。
磁石不正監視処理は、磁気センサスイッチ125からの検出信号をチェックして異常がないか判定して不正報知の開始や終了の設定等を行うものである。
磁石不正監視処理では、まず、磁気センサスイッチ125から出力されて第2入力ポート162(入力ポート2)に取り込まれる磁気センサ検出信号ビットをチェックして(ステップC21)、磁気センサ検出信号の入力がない(ステップC22;NO)と判定すると、磁石不正監視タイマをクリアする(ステップC23)。
その後、磁石不正の報知時間を規定する磁石不正報知タイマが既にタイムアップしたか、又は磁石不正報知タイマを更新(−1)した後、当該タイマがタイムアップしたか否かをチェックする(ステップC24)。磁石不正報知タイマがタイムアップしたか否かの判定結果において、タイムアップしていない(ステップC25;NO)と判定された場合には、リターンしてルーチンを繰り返す。
ルーチンの繰り返しにより、磁石不正報知タイマがタイムアップしたか否かの判定結果において、タイムアップした(ステップC25;YES)と判定された場合には、磁石不正報知終了コマンド(ACTION)を準備し(ステップC26)、磁石不正フラグとして磁石不正解除フラグを設定する処理(ステップC27)を行った後、処理をステップC34に移行して、以降の処理を行う。この場合、ルーチンを繰り返しても、不正が発生していない正常な状態であるため、不正の報知は行われていない。すなわち、磁石不正報知タイマが常にタイムアップした状態である。
そのため、磁気センサ検出信号の入力が一定期間、即ち、所定回数(例えば、8割込み)連続して行われることで、ステップC29にて、磁石不正監視タイマがタイムアップした(ステップC29;YES)と判定すると、磁石不正監視タイマをクリアし(ステップC30)、続いて、磁石不正報知タイマ初期値(例えば、60000ms)を磁石不正報知タイマ領域にセーブする(ステップC31)。
したがって、このときは磁気センサスイッチ125からの検出信号の連続したON入力により、不正報知が行われることになる。すなわち、不正報知の開始が行われる。不正開始の報知は、前述したように、磁気センサ検出信号のON入力が32ms継続したときに開始(つまり、不正報知コマンドが発生)する。
なお、その後、不正が無くなると、ステップC22で磁気センサスイッチ125からの検出信号のON入力がなく、ステップC22でNOに分岐してステップC23以降の処理に進むことになる。このとき、ステップC37で不正報知終了コマンドの設定が行われる。
したがって、不正報知終了コマンドについては、不正報知コマンドの開始から磁石不正報知タイマ初期値(60000ms)から、更に60000msが経過した時点で、不正報知終了コマンドが設定されることになる。すなわち、磁気センサスイッチ125からの検出信号のON中と、同信号がOFFしてからの約60000ms(60秒間)は不正の報知が行われ、同信号がONしている限り、不正報知を続けることになる。
まとめると、磁気センサスイッチ125からの検出信号がONになると、その32ms後に、不正発生状態と判断して不正報知コマンドが設定され、磁気センサスイッチ125からの検出信号ON中は32ms毎に磁石不正監視タイマがタイムアップして初期値に戻り、磁気センサスイッチ125からの検出信号がOFFすると、その時点から約60000ms(60秒間)は不正報知が継続し、60000ms後に不正発生状態が解除されて、不正報知終了コマンドが設定される。
次に、上述のタイマ割込み処理における外部情報編集処理(ステップS82)の詳細について図83、図84により説明する。
このルーチンが開始されると、まずステップC41固有情報信号編集処理を行う。これは、主基板の固有情報(固有ID)を取得するものであり、詳細は後述する。
次いで、ステップC42でセキュリティ信号制御タイマが既にタイムアップ又は「−1」更新後にタイムアップしたかどうかをチェックする。セキュリティ信号制御タイマは、不正や遊技機エラー状態を一定時間毎にチェックしているものである。チェック結果はステップC43で判別し、NOであればステップC44に進んで固有情報出力要求済みか否かを判定する。ここでの固有情報とは、主基板の固有情報、つまり固有IDのことである。
ステップC44で固有情報出力要求済みでなければ、ステップC45に進んで電源投入での固有情報信号の出力要求フラグをセットし、ステップC46で電源投入での固有情報信号の出力要求済みフラグをセットする。これにより、パチンコ機1の電源投入時(例えば、開店時)において固有ID(主基板の固有情報)が外部に出力されることになる。ステップC46を経ると、ステップC47でセキュリティ信号ONの出力データを設定した後、ステップC48に進む。
一方、ステップC43でセキュリティ信号制御タイマが既にタイムアップ又は「−1」更新後にタイムアップしていれば、ステップC49に分岐して電源投入での固有情報信号の出力要求済みフラグをクリアし、ステップC50でセキュリティ信号OFFの出力データを設定した後、ステップC48に移行する。すなわち、セキュリティ信号制御タイマが既にタイムアップしていれば、セキュリティに関連する情報の外部出力の設定は行なわれない。
これにより、不正や遊技機エラー状態が外部に出力されることになる。一方、ステップC48でNO、ステップC51でNO、ステップC52でNOのとき、すなわち、ステップC48、51、52で全てNOのときは、ステップC52からステップC55に分岐して遊技機エラー状態信号OFFの出力データを設定する。
扉又は枠の開放中であれば、ステップC57に進んで固有情報出力要求済みか否かを判定し、NO(要求済みでない)であれば、ステップC58で扉・枠開放での固有情報信号の出力要求フラグをセットし、ステップC59で扉・枠開放での固有情報信号の出力要求済みフラグをセットした後、ステップC60に進む。したがって、このときはパチンコ機1のガラス枠5又は前面枠4が開放されたとき(例えば、不正な開放も含む)に、固有ID(主基板の固有情報)が外部に出力されることになる。
一方、ステップC56でNOのとき、つまり扉又は枠の開放中でなければ、扉又は枠の開放というイベントが発生しないので、そのような出力データの設定は行う必要がないので、ステップC63に分岐して扉・枠開放での固有情報信号の出力要求済みフラグをクリアし、ステップC64で扉・枠開放信号OFFの出力データを設定してステップC62に進む。
一方、ステップC65で大当り時に固有情報出力要求済みであれば、ステップC66、67をジャンプしてステップC68に進む。
ステップC68では、大当り1信号ONの出力データを設定し、その後、ステップC69に進んで始動口信号編集処理を行い、続くステップC70で図柄確定回数信号編集処理を行なってリターンする。これは、始動入賞があった場合に外部に出力する信号の編集や特図の図柄確定などにつき外部に出力する信号の編集を行うものである。
一方、ステップC62で大当り動作中でないとき(NO)には、ステップC71に分岐して大当りでの固有情報信号の出力要求フラグをクリアし、ステップC72で大当り1信号OFFの出力データを設定した後、ステップC69に進む。したがって、大当りが発生しないときは、固有ID(主基板の固有情報)の外部への出力はない。
次に、上述の外部情報編集処理における固有情報信号編集処理(ステップC41)の詳細について図85により説明する。
このルーチンが開始されると、まずステップC81でシリアル通信中かどうかを判別する。これは、遊技制御装置100が管理装置140(又はカードユニット551を含めてもよい)とシリアル通信が実行中かどうかを判断するもので、シリアル通信中であれば、今回はリターンする。シリアル通信中でなければ、ステップC82以降の処理を実行する。なお、遊技制御装置100と管理装置140との間は単一方向通信であり、遊技制御装置100から管理装置140への信号伝送のみ許容されている。したがって、シリアル通信中か否かの判定は、遊技制御装置100内のシリアル送信バッファが通信中であるかをチェックして行う。
シリアル通信中でない場合、ステップC82で固有情報信号の出力要求フラグがセットされているかをチェックし、ステップC83でNO(出力要求フラグがセットなし)であれば、ルーチンを終了してリターンする。一方、ステップC83でYES(出力要求フラグがセットあり)であれば、ステップC84に進んで、固有情報信号の出力要求フラグをクリアする。
ここで、固有情報信号の出力要求フラグは「電源投入時のセキュリティ信号」、「扉・枠開放信号」、「大当り1信号」に対応して独立にセットされる。複数同時に成立している場合には、優先順位を設けて1つずつ対応して処理する。したがって、一度に全部の出力要求フラグをクリアするのではない。
次いで、ステップC85でCPU固有情報取得処理を行う。これは、固有情報を取得する処理で、詳細は後述する。ステップC85を経ると、リターンする。
次に、上述の固有情報信号編集処理におけるCPU固有情報取得処理(ステップC85)の詳細について図86により説明する。
このルーチンが開始されると、まずステップC91でスタートコードを遊技制御装置100内のシリアル送信バッファに書き込む。シリアル通信の開始であることを受け側である管理装置140に特定させるためのコードである。次いで、ステップC92で取得はチップコード(主基板固有ID)のみかどうかを判別し、取得がチップコードのみであればステップC97にジャンプして、チップコード識別コードをシリアル送信バッファに書き込み、ステップC98で個体識別情報(固有ID)としてのチップコードを読み出し、シリアル送信バッファに書き込み、リターンする。これにより、固有IDが取得されて管理装置140に出力されることになる。
また、パラレル転送(送信)に比べて、配線の本数が少なくなるのでコスト減になる。
なお、上記のようにシリアル通信で遊技制御装置100から管理装置140へ固有IDなどを送信する例に限らず、例えばパラレル通信で送信するようにしてもよい。
次に、上述の外部情報編集処理における始動口信号編集処理(ステップC69)の詳細について図87により説明する。
始動口信号編集処理は、第1始動口スイッチ120や第2始動口スイッチ121の入力があった場合に、各々の入力について共通して行われる処理である。
ルーチンが開始すると、まず、始動口信号出力制御タイマが「0」でなければ、更新(−1)する処理(ステップC101)を行う。なお、始動口信号出力制御タイマの最小値は、0に設定されている。
次いで、タイマ割込みが行われる毎に所定時間(例えば、4ms)ずつ減算されていく始動口信号出力制御タイマがタイムアップか否かをチェックする(ステップC102)。始動口信号出力制御タイマがタイムアップである(ステップC103;YES)と判定すると、始動口信号出力回数が0であるか否かをチェックする(ステップC104)。
ここで、始動口信号出力制御タイマ初期値としては、始動口信号のオン状態(例えば、ハイレベル)の時間(例えば、128ms)とオフ状態(例えば、ロウレベル)の時間(例えば、64ms)を加算した時間(例えば、192ms)をセーブする。
これは、始動口信号がオン状態(ハイレベル)になると同時に、初期値例えば、128ms)に設定された始動口信号出力制御タイマがデクリメント(更新(−1))を開始し、始動口信号のオン状態の時間(128ms)を過ぎて始動口信号がオフ状態(ロウレベル)になっても、その後も始動口信号出力制御タイマはデクリメントしていき、始動口信号のオフ状態になった後の経過時間(64ms)が経過した時点で、始動口信号出力制御タイマがタイムアップ(「0」)になるというタイミング構成になっているからである。
次いで、始動口信号のONデータを設定する処理(ステップC108)を行う。その後、ステップC108にてONに設定された始動口信号を外部情報出力データ領域にセーブする処理(ステップC109)を行って、始動口信号編集処理を終了する。
また、ステップC105にて、始動口信号出力回数が0である(ステップC105;YES)と判定すると、ステップC110に分岐して始動口信号のOFFデータを設定する処理を行い、その後、ステップC109に進み、OFFに設定された始動口信号を外部情報出力データ領域にセーブする処理を行って、始動口信号編集処理を終了する。
そして、始動口信号出力制御タイマが出力ON区間中である(ステップC112;YES)と判定すると、ステップC108に進んで、始動口信号のONデータを設定する処理(ステップC108)を行い、その後、ONに設定された始動口信号を外部情報出力データ領域にセーブする処理(ステップC109)を行って、始動口信号編集処理を終了する。
また、始動口信号出力制御タイマが出力ON区間中でない(ステップC112;NO)と判定すると、ステップC110に進んで、始動口信号のOFFデータを設定する処理を行い、その後、ステップC109に進み、OFFに設定された始動口信号を外部情報出力データ領域にセーブする処理を行って、始動口信号編集処理を終了する。
次に、上述の外部情報編集処理における図柄確定回数信号編集処理(ステップC90)の詳細について図88により説明する。
このルーチンが開始されると、まずステップC121で図柄確定回数信号のOFFデータを設定し、ステップC122で図柄確定回数信号制御タイマが既にタイムアップ又は(−1)更新後にタイムアップしたか否かをチェックする。これは、特図の図柄確定につき、一定時間が経過後に図柄を確定させて、外部に信号を出力することから、その時間経過を上記タイマでカウントしているものである。
ステップC122の判定結果はステップC123で判定し、図柄確定回数信号制御タイマがタイマアップしていなければ(NO)、ステップC124に進んで、図柄確定回数信号のONデータを設定し、ステップC125に進む。ステップC125では、先のステップC124で設定した図柄確定回数信号(この場合はONデータ)を外部情報出力データ領域にセーブしてリターンする。
このようにして、特図の図柄が一定時間後に確定して、それが外部情報として出力されることになる。
次に、上述のタイマ割込み処理中に実行される各コマンド設定処理の詳細について図89により説明する。
コマンド設定処理では、まず、バッファの書き込む場所を規定するライトカウンタを更新する処理(ステップC131)を行う。ライトカウンタは「0」から「31」の範囲で(+1)更新される。
続けて、ライトカウンタに対応するコマンド送信領域(MODE)に、コマンドをセーブする(ステップC132)。これは、2バイトのコマンドのうちの上位1バイトのコマンドが(MODE)に対応するので、それをセーブするものである。
その後、ライトカウンタに対応するコマンド送信領域(ACTION)に、コマンドをセーブする(ステップC133)。これは、2バイトのコマンドのうちの下位1バイトのコマンドが(ACTION)に対応するので、それをセーブするものである。ステップC133を経ると、リターンする。
このようにして、ライトカウンタに対応するコマンド送信領域(MODE)に2バイトのコマンドのうちの上位1バイトのコマンドがセーブされ、コマンド送信領域(ACTION)に下位1バイトのコマンドがセーブされる。
次に、上述の特図ゲーム処理のステップS367、S369や普図ゲーム処理のステップB16における図柄変動制御処理の詳細について図90により説明する。
このルーチンが開始されると、まずステップC141で対象の図柄の変動制御フラグ(下記の(イ)から読みだす)が変動中か否かをチェックする。
ここで、予め準備されている変動制御テーブル上に定義されている情報は、以下の通りである。
(イ)変動制御フラグ゛領域のアドレス
(ロ)図柄表示テーブル(変動用)のアドレス
(ハ)図柄表示テーブル(停止用)のアドレス
また、図柄表示テーブル(変動用)上に定義されている情報は、以下の通りである。
(ニ)変動図柄番号領域のアドレス
(ホ)表示データ(変動図柄番号の数分ある)
(ヘ)セグメント領域のアドレス
さらに、図柄表示テーブル(停止用)上に定義されている情報は、以下の通りである。
(ト)停止図柄番号領域のアドレス
(チ)表示データ(停止図柄番号の数分ある)
(リ)セグメント領域のアドレス
したがって、このときは対象の図柄の変動タイマがタイムアップしないので、変動用の図柄番号に対応する図柄の表示データが対象のセグメント領域にセーブされて、ルーチンが繰り返されることになる。
したがって、このときは対象の図柄の変動タイマがタイムアップしたことにより、タイマ初期値がセーブされて、変動図柄番号が更新され、図柄の表示データが対象のセグメント領域にセーブされることになる。
したがって、このときは対象の図柄の変動制御フラグが変動中から停止したことにより、停止用の図柄表示データが対象のセグメント領域にセーブされることになる。
次に、上述の後半変動パターン設定処理における振り分け処理(ステップS650)や変動パターン設定処理における振り分け処理(ステップS672)の詳細について図91により説明する。
このルーチンが開始されると、まずステップC161で対象の選択テーブル(変動グループ選択テーブル)の先頭のデータが振り分けなしコードか否かをチェックする。
ここで、選択テーブルは少なくとも一の変動パターングループと対応付けて所定の振り分け値を記憶しており、例えば振り分けの必要がなければ、振り分けなしのコードが先頭に規定されている。
一方、ステップC162にて、選択テーブルの先頭のデータが振り分けなしのコードではない(ステップC162;NO)と判定すると、対象の変動パターン乱数(例えば、変動パターン乱数2)を選択値としてロードした後(ステップC163)、選択テーブルに最初に規定されている一の振り分け値を取得する(ステップC164)。
続けて、ステップC163にてロードされた選択値(例えば、変動パターン乱数2の値)からステップC164にて取得された振り分け値を減算して新たな選択値を算出した後(ステップC165)、当該算出された新たな選択値が「0」よりも小さいか否かを判定する(ステップC166)。
すなわち、ステップC164にて、選択テーブルに次に規定されている振り分け値を取得した後、ステップC166において判定済みの新たな選択値を選択値として振り分け値を減算することで、新たな選択値を算出する(ステップC165)。そして、算出された新たな選択値が「0」よりも小さいか否かを判定する(ステップC166)。
上記の処理をステップC166にて、新たな選択値が「0」よりも小さい(ステップC166;YES)と判定するまでループを繰り返して実行する。これにより、選択テーブルに規定されている少なくとも一の後半変動パターングループの中から何れか一の後半変動パターングループを選択する。
そして、ステップC166にて、新たな選択値が「0」よりも小さい(ステップC166;YES)と判定すると、処理をステップC168に移行して、振り分けた結果に対応するデータのアドレスに更新して(ステップC168)、振り分け処理を終了する。
したがって、この振り分け処理を実行することにより、選択テーブルの先頭のデータが振り分けなしのコードではない場合には、選択テーブルに記憶されている振り分け値及び当該判定に係る選択値に基づいて、新たな選択値を算出し、新たな選択値が所定値「0」未満であるか否かを判定する処理を繰り返すことで、複数の変動パターングループのうち、何れか一の変動パターングループを速やかに設定することができるようにしている。
次に、上述の後半変動パターン設定処理における2バイト振り分け処理(ステップS647)の詳細について図92により説明する。
2バイト振り分け処理は、変動パターン乱数1に基づいて、はずれ変動パターン選択テーブルや大当り変動パターン選択テーブル等の変動グループ選択テーブルから特図変動表示ゲームの後半変動パターングループを選択するための処理である。
特に、乱数の大きさが2バイトであるときの処理であり、2バイトのデータとしては、例えば「0」から「49999」まである。
このルーチンが開始されると、まずステップC171で対象の選択テーブルの先頭のデータが振り分けなしコードか否かをチェックする。
ここで、選択テーブルは少なくとも一の変動パターングループと対応付けて所定の振り分け値を記憶しており、例えば振り分けの必要がなければ、振り分けなしのコードが先頭に規定されている。
一方、ステップC172にて、選択テーブルの先頭のデータが振り分けなしのコードではない(ステップC172;NO)と判定すると、対象の変動パターン乱数(例えば、変動パターン乱数1)を選択値としてロードした後(ステップC173)、選択テーブルに最初に規定されている一の振り分け値を取得する(ステップC174)。
続けて、ステップC173にてロードされた選択値(例えば、変動パターン乱数1の値)からステップC174にて取得された振り分け値を減算して新たな選択値を算出した後(ステップC175)、当該算出された新たな選択値が「0」よりも小さいか否かを判定する(ステップC176)。
すなわち、ステップC174にて、選択テーブルに次に規定されている振り分け値を取得した後、ステップC176において判定済みの新たな選択値を選択値として振り分け値を減算することで、新たな選択値を算出する(ステップC175)。そして、算出された新たな選択値が「0」よりも小さいか否かを判定する(ステップC176)。
上記の処理をステップC176にて、新たな選択値が「0」よりも小さい(ステップC176;YES)と判定するまでループを繰り返して実行する。これにより、選択テーブルに規定されている少なくとも一の後半変動パターングループの中から何れか一の後半変動パターングループを選択する。
そして、ステップC176にて、新たな選択値が「0」よりも小さい(ステップC176;YES)と判定すると、処理をステップC178に移行して、振り分けた結果に対応するデータのアドレスに更新して(ステップC178)、2バイト振り分け処理を終了する。
そして、はずれ変動パターン選択テーブルや大当り変動パターン選択テーブル等の変動グループ選択テーブルは、特図変動表示ゲームにおけるリーチ状態の発生の有無や当該リーチ状態が発生する場合の特図変動表示ゲームにおけるリーチの種類(リーチ変動態様)に応じて、複数種類の後半変動パターングループが規定されており、当該変動グループ選択テーブルを記憶するROM101Bは、特図変動表示ゲームにおける第1特図、第2特図(識別情報)の変動態様として、リーチ状態の発生しないリーチなし変動態様並びに複数種類のリーチ変動態様の各々の設定に係る複数の変動振り分け情報(後半変動パターングループ)とそれぞれの振り分け値とを所定の順序で対応付けて記憶している。
したがって、この2バイト振り分け処理を実行することにより、選択テーブルの先頭のデータが振り分けなしのコードではない場合には、選択テーブルに記憶されている振り分け値及び当該判定に係る選択値に基づいて、新たな選択値を算出し、新たな選択値が所定値「0」未満であるか否かを判定する処理を繰り返すことで、複数の変動パターングループのうち、何れか一の変動パターングループを速やかに設定することができるようにしている。
ここでは、ステップ番号として「ステップD」を用いて説明する。なお、演出制御装置300が制御する特図は表示装置41に表示される演出用の特図であり、以下の演出制御装置300の制御処理の説明における特図は、この演出用の特図(本特図ではない飾り図柄)を意味する。
まず、図93により、演出制御装置300のパワーオンリセット処理を説明する。
このパワーオンリセット処理は、パチンコ機1の電源供給が開始された時点で開始する。
パチンコ機1の電源供給が開始すると、まずステップD1で割込みを禁止し、次にステップD2でCPU311の初期設定を行い、次にステップD3でVDP312の初期設定を行い、次にステップD4で割込みを許可し、次いでステップD5のメイン処理を開始する。メイン処理を開始すると、電源遮断(停電含む)までこのメイン処理を実行する。
次に、上述のパワーオンリセット処理におけるメイン処理(ステップD5)を図94により説明する。
メイン処理を開始すると、まずステップD11で無線モジュール360を初期化する無線モジュール初期化処理を実行し、ステップD12乃至D16を順次実行した後、ステップD17に進む。なお、本例は異なるパチンコ機におけるサブ基板間(この場合、演出制御装置間、以下場合により、単にサブ間という。)の通信を無線通信で行う例としているが、無線通信に限定されるものではなく、有線通信でもよい。
ステップD13では、表示用データ生成を許可する。これは、表示回路608がVRAM606,607へアクセスを行い、表示データを生成するのを許可する処理である。
ステップD14では、乱数シードを設定する。これは、例えばsrand関数を用いて擬似乱数の発生系列を設定する処理である。ここで、srand関数に与える引数としては、0(ゼロ)などの固定値を使用してもよいし、遊技機毎に異なるようにCPU等のID値などを基に作成した値を使用してもよい。
次にステップD17に進むと、ステップD17乃至D24を実行し、ステップD25に進む。
ステップD17では、乱数更新処理を実行する。これは、例えばrand関数を用いてメイン処理の制御周期毎に最低1回は擬似乱数の更新を行う処理である。rand関数は再計算が行われる度に指定の発生系列に基づいて乱数を発生するので、関数を実行するだけでよい。なお、主基板(遊技制御装置100)のように+1ずつ更新する乱数を使ってもよい。
ステップD20では、サブ間送信開始処理を実行する。これは、サブ間コマンド送信の要求があった場合にサブ間送信割込みを許可したりする処理である。なお、演出によっては直ぐにコマンドを送りたくない場合もあるので時間調整も行う(詳細後述する)。
ステップD21では、サブ間受信タスク処理を実行する。これは、受信したサブ間コマンドの解析を主に行う処理である(詳細後述する)。
ステップD22では、サブ間ack応答タスク処理を実行する。これは、他台にack(返信)を要求した場合の監視を行う処理である(詳細後述する)。
ステップD24では、演出表示編集処理を実行する。これは、VDP312に表示装置41での描画内容を指示するための各種コマンドとそのパラメータの設定を行う処理である(詳細後述する)。なお、この演出表示編集処理ではコマンドがテーブル状に設定され、こうして設定されたコマンドは後述するステップD28(画面描画を指示)でVDP312に順次送信される。
ステップD27では、圧縮展開要求があるなら展開実行を指示する。これは、動画は圧縮されてキャラROM(画像ROM322)に格納されているので、動画を再生する場合に、展開しつつ再生することをVDP312に指示する処理である。(詳細後述する)。
ステップD28では、VDP312に画面描画を指示する。
ステップD29では、演出ボタン入力処理を実行する。これは、演出ボタン9が有効時に押された場合の編集を行う処理である。なお、演出ボタンは高速でオンオフしないので、ボタンの入力を感知する処理はこの処理内で行ってもよいし、図示していない短周期のタイマ割込み内で行ってもよい。
ステップD31では、各種LED等を制御するための装飾制御処理を実行する。
ステップD32では、各種モータやSOL(ソレノイド)を制御するためのモータ/SOL制御処理を実行する。
なお、ステップD30乃至D32の制御処理は、画面の演出に合わせるため、動作の切り替えが処理周期単位で実行されるこれらのステップ内で行っているが、これら制御処理で生成又は設定された信号やデータ(特に各種LEDやモータを駆動制御する信号等)を実際にポートに出力する処理は、図示していない短周期のタイマ割込み内で行われる。ただし、各種デバイスの制御に特化したICを使用している場合は、シリアル通信等で指示するだけで、タイマ割込みで信号等の出力を行わない場合もある。
次に、コマンド受信割込み処理について図95により説明する。このコマンド受信割込み処理は、遊技制御装置100(主基板)から送信されるコマンドを演出制御装置(サブ基板)で受信するための処理であり、当該コマンドを構成するデータが正常な範囲に入っているかをチェックする内容も含まれている。
なお本例の場合、この主基板とサブ基板の通信が、ストローブ信号(以下、場合によりSTB信号と表記する)を用いたパラレル通信によって行われる場合を例に挙げて説明する。
このコマンド受信割込み処理は、遊技制御装置100(主基板)の制御処理で説明したストローブ信号がオンして演出制御装置300(サブ基板)においてコマンド受信割込みが発生することによって開始される。即ち、主基板から出力される前記ストローブ信号は、サブ基板のCPU311の割込み端子(図示省略)にも入力されており、この割込み端子に入力されている前記ストローブ信号がオンすることによってこのコマンド受信割込みが発生する。ここで、このコマンド受信割込みは、前述したVブランク割込みよりも、割込みの優先順位が高い。また、上記コマンド受信割込みは上述したように不定期に発生するが、主基板がコマンドを連続で送信する時には、その送信間隔(例えば4msec)に対応してサブ基板での上記コマンド受信割込みの発生間隔も同じ間隔(例えば4msec)になる。
また、主基板からのコマンドは、MODEのデータ(1バイト)とACTIONのデータ(1バイト)とを含む構成となっており、これらが順次送信される。以下では、コマンドを構成するこのようなデータを、コマンドのデータ或いはコマンドデータという。
ここで、ステップD42の判定結果は通常はNOになってステップD43に進む。本ルーチンは前述したようにSTB信号がオンすることによって開始されるからである。但し、ノイズ等によってコマンド受信割込みが異常に発生した場合には、ポート入力のSTB信号がオフしていればステップD42の判定結果はYESになってステップD59に進み、ノイズ等によって誤ってコマンド受信の処理(ステップD43乃至D58)が実行されることが回避される。
ステップD45に進むと、ステップD43で入力したコマンドデータを受信MODEとして格納し、次にステップD46でMODE受信フラグに「OK」をセットし、次にステップD47で受信監視タイマの値をゼロにリセットして当該受信開始タイマの計時動作をスタートし、その後リターンする。なお、上記ステップD45で使用しているように、単に格納するというときは、後の制御処理に使用するために所定の記憶領域に読出し可能に記憶保存することを意味する(以下同様)。
ステップD52では、コマンド受信カウンタの値が31より大きいか判定し、大きい場合には後述するコマンドバッファの容量を超えるのでリターンし、大きくない場合(コマンド受信カウンタ≦31の場合)にはステップD53に進む。なお、コマンド受信カウンタの値が0乃至31でステップD53に進む構成としているが、0乃至31という値は後述するコマンドバッファの容量に対応する値であり、システム制御周期(前述の処理周期;例えば1/30秒)で主基板から送信される可能性のあるコマンド数以上になっていればよい。
ステップD55では、範囲チェックOKか否か判定し、OKでなければコマンド(受信MODE及び受信ACTION)を廃棄すべくリターンし、OKならばステップD56乃至D58を順次実行した後にリターンする。ここで、ステップD55での範囲チェックの判定結果は、後述する受信コマンド範囲チェック処理においてコマンド範囲正常フラグがセットされていれば範囲チェックOK(ステップD55がYes)となり、後述する受信コマンド範囲チェック処理においてコマンド範囲異常フラグがセットされていれば範囲チェックOKでない(ステップD55がNo)となる。
ステップD57では、コマンド受信カウンタの値を1だけ増やす更新を行う。
ステップD58では、コマンドバッファにデータを格納した(即ち、書き込んだ)ので、コマンド書込インデックスの値を0乃至31の範囲で1だけ増やす更新を行う。なお、コマンド書込インデックスはコマンドバッファの書込用ポインタであり、このコマンド書込インデックスの値を本例では0乃至31の範囲としているが、この範囲はコマンドバッファの容量(この場合、32)に対応しており、既述したように、システム制御周期(前述の処理周期;例えば1/30秒)の1周期の間に主基板から送信される可能性のあるコマンド数以上になっていればよい。
次に、上述のコマンド受信割込み処理における受信コマンド範囲チェック処理(ステップD54)の詳細について図96により説明する。
このルーチンが開始されると、まずステップD61で、ステップD45で格納された受信MODEの値が正常範囲か判定し、正常範囲でなければステップD67でコマンド範囲異常フラグをセットしてリターンし、正常範囲であればステップD62、D63を順次実行した後にステップD64に進む。MODEの値は、MODE範囲の値の全てが指令内容を定義されているわけではなく、定義されずに使用されていない値もあり、このような使用されていない値である場合には、ステップD61の判定で正常範囲でないと判定される。
ステップD63では、ステップD45で格納された受信MODEの値に対応するACTIONの値としてあり得る値のうちの最大値(ACTION_max)を取得する。
ステップD64に進むと、ステップD50で格納された受信ACTIONの値が、ステップD62で取得された最小値よりも小さいか判定し、小さい場合は異常であるのでステップD67に進み、小さくない場合にはステップD65に進む。
ステップD66に進む場合には、正常であるので、コマンド範囲正常フラグをセットしてリターンする。ステップD67に進む場合は、異常であるので、コマンド範囲異常フラグをセットしてリターンする。
次に、上述のメイン処理における受信コマンドチェック処理(ステップD18)の詳細について図97により説明する。
このルーチンが開始されると、まずステップD71でコマンド受信カウンタの値をコマンド受信数としてロードし、次にステップD72でコマンド受信数がゼロでないか判定し、ゼロでないならばステップD73乃至D75を順次実行した後にステップD76に進み、ゼロならばリターンする。なお本願では、上記ステップD71のように、制御処理においてデータを「ロードする」とは、RAM(本例の演出制御装置300ではCPU311内のRAM)からデータを取り出すことを意味する。
なお、A:コマンド受信カウンタの値、B:コマンド受信数とすると、ステップD71の実行直後では「A=B」である。そして、ステップD73の実行直後では「A=A−B=0」となるのが通常の動きだが、本例の態様(主基板からのコマンドがストローブ信号を用いたパラレル通信の場合)では、演出制御装置は遊技制御装置(主基板)からのコマンド受信割込みを割込み禁止にせず最優先にしているので、ステップD71の処理からステップD73の処理の間にAの値が増えている可能性がある。よって、ステップD73の処理を「A←0」(即ち、コマンド受信カウンタの値をゼロとする処理)としてしまうとコマンドのカウントがずれてしまうので、ステップD73では「A−B」という減算処理を行っている。だたし、主基板からのコマンドの送受信にシリアル通信を使用した場合は、割込み禁止にしてステップD71の処理からステップD73の処理の間にAの値が増えることがないようにすることによって、ステップD73の処理内容を「A←0」としてもよい。
ステップD75では、コマンドバッファのデータを読み出したので、コマンドバッファの読出用ポインタであるコマンド読出インデックスの値を0乃至31の範囲で1だけ増やす更新を行う。なお、ここでの0乃至31の範囲は、ステップD58で更新されるコマンド書込インデックスと同範囲になっていればよい。
ステップD79に進むと、コマンド領域のアドレス(次に読み出すべきデータのアドレス)を更新し、ステップD80に進む。
ステップD80では、コマンド受信数分のコマンドを解析完了したか否か(即ち、コマンド受信数分だけステップD77乃至D79を繰り返し実行したか否か)を判定し、完了していなければステップD77に戻ってステップD77から処理を繰り返し、完了していればリターンする。
次に、上述の受信コマンドチェック処理における受信コマンド解析処理(ステップD78)の詳細について図98乃至図101により説明する。
このルーチンが開始されると、まずステップD91で、ExModeとExActの値をクリアする。ExModeとExActは、後述するステップD125,D127,D158で、コマンドのデータが上位バイトと下位バイトに分離されてそれぞれ記録される記憶領域である。
ステップD95では、今回のコマンドに対応する図柄種別情報を設定する変動パターン対応図柄設定処理(詳細後述する)を実行する。
ステップD97に進むと、今回のコマンドのデータをcmd1st(組を成す第1コマンドと第2コマンドのうちの第1コマンド)として記憶し、次にステップD98で今回のコマンドが指令する変動パターンに対応する特図の図柄種別情報(ステップD95の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、その後ステップD162に進む。待受け図柄情報とは、後述する図柄コマンド(第2コマンド)に先だって送信された第1コマンド(変動系コマンドなど)から設定すべき特図の図柄の種別が判定できる場合に、対応する図柄コマンドを受信する前に記憶保存される当該特図の種別情報(即ち、図柄情報)である。
ステップD100では、リーチ変動系の図柄種別情報テーブルを準備する。
ステップD101では、今回のコマンドについて変動パターン対応図柄設定処理(後述する)を実行する。
ステップD103に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD104で今回のコマンドが指令する変動パターンに対応する特図の図柄情報(ステップD101の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、その後ステップD162に進む。
ステップD115では、突発変動系の図柄種別情報テーブルを準備する。
ステップD116では、今回のコマンドについて変動パターン対応図柄設定処理(後述する)を実行する。
ステップD118に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD119で今回のコマンドが指令する変動パターンに対応する特図の図柄情報(ステップD116の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、その後ステップD162に進む。
ステップD120に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD121で今回のコマンドのACTのデータに対応する特図の図柄情報(15R大当り図柄、2R大当り図柄などの情報)を待受け図柄情報として格納し、その後ステップD162に進む。
ここで、ステップD120、D121では、無条件でMODEやACTのデータを採用しているわけではない。図示省略しているが、例えばMODEのデータの歯抜けチェックを行い、さらに、そのMODEに対応する正常なACTの値であるかをチェックした上で採用しており、これらチェックの何れかで無効なコマンドと判定されればMODE及びACTのデータを破棄してリターンする構成となっている。
なお、MODEのデータの歯抜けチェックとは、チェック対象のMODEのデータが、MODEがとり得る値が連続していない部分における無効な値に相当していないか否か判定することを意味する。このMODEのデータの歯抜けチェックは、ステップD112等の判定がMODEのデータがとり得る最小値以上で最大値以下であるかというだけの判定(不連続な部分をチェックしていない判定)であった場合に、必要に応じて例えば上記ステップD120の直前において実行される。MODEの値に不連続な部分が無い場合には、この歯抜けチェックは不要である。また、ステップD93、D99、D111、D112、及び後述するステップD113、D114、D131、D132、D145、D146、D172では、このようなMODEのデータの歯抜けチェックも必要に応じて判定内容に含む構成としてもよく、この構成の場合には、上記MODEのデータの歯抜けチェックを別途実行する必要はない。また、ACTの正常値にも歯抜け(不連続部分)がある場合があり、この場合には例えば、MODEに対応する正常なACTの値であるかをチェックする際に、このACTのデータの範囲チェックに加えて歯抜けチェックも行う構成となっている。
ステップD122では、今回のコマンド(図柄コマンド)のACTのデータに対応する特図の図柄情報を取得する。
ステップD124に進むと、ステップD122で取得した図柄情報に対応する生成すべき停止図柄情報を設定し、ステップD125に進む。
ステップD125に進むと、cmd1stとして記憶されているコマンドデータの上位バイトをExMode(確定したMODEのデータ)とし、下位バイトをExAct(確定したACTのデータ)として分離して記憶し、その後ステップD126に進む。
なお、このステップD125では、上記ExMode及びExActとしてのコマンドデータの記憶を実行した後、cmd1stとして記憶されているコマンドデータを消去する処理も実行する。この消去により、後述するステップD162の判定結果はNOになる。
ステップD126に進むと、待受け図柄情報をクリアし、ステップD162に進む。
ステップD127では、今回のコマンドのMODEのデータをExModeとして記憶し、今回のコマンドのACTのデータをExActとして記憶する。
ステップD128では、待受け図柄情報をクリアし、ステップD162に進む。
ここで、ステップD127、D128では、前述のステップD120、D121と同様に、無条件でMODEやACTのデータを採用しているわけではない。図示省略しているが、例えばMODEのデータの歯抜けチェックを行い、さらに、そのMODEに対応する正常なACTの値であるかをチェックした上で採用しており、これらチェックの何れかで無効なコマンドと判定されればMODE及びACTのデータを破棄してリターンする構成となっている。
ステップD134では、今回のコマンドについて変動パターン対応図柄設定処理(後述する)を実行する。
ステップD136に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD137で今回のコマンドが指令する変動パターンに対応する特図の図柄種別情報(ステップD134の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、次にステップD138で先読み情報設定処理1を実行し、その後ステップD162に進む。なお、先読み情報設定処理1及び後述する先読み情報設定処理2は、先読みが行われる場合の特図の変動パターン(或いは始動記憶の保留表示)を実行するための設定を行う処理である。
ステップD139では、先読み用リーチ変動系の図柄種別情報テーブルを準備する。
ステップD140では、今回のコマンドについて変動パターン対応図柄設定処理(後述する)を実行する。
ステップD142に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD143で今回のコマンドが指令する変動パターンに対応する特図の図柄種別情報(ステップD140の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、次にステップD144で先読み情報設定処理1を実行し、その後ステップD162に進む。
ステップD150では、先読み用突発変動系の図柄種別情報テーブルを準備する。
ステップD151では、今回のコマンドについて変動パターン対応図柄設定処理(後述する)を実行する。
ステップD153に進むと、今回のコマンドのデータをcmd1stとして記憶し、次にステップD154で今回のコマンドが指令する変動パターンに対応する特図の図柄種別情報(ステップD151の変動パターン対応図柄設定処理で設定されたもの)を待受け図柄情報として格納し、次にステップD155で先読み情報設定処理1を実行し、その後ステップD162に進む。
ステップD156では、今回のコマンドのACTのデータに対応する特図の図柄情報を取得する。
ステップD158に進むと、cmd1stとして記憶されているコマンドデータの上位バイトをExModeとし、下位バイトをExActとして分離して記憶し、その後ステップD159に進む。
なお、このステップD158では、上記ExMode及びExActとしてのコマンドデータの記憶を実行した後、cmd1stとして記憶されているコマンドデータを消去する処理も実行する。この消去により、後述するステップD162の判定結果はNOになる。
ステップD159に進むと、待受け図柄情報をクリアし、次のステップD160で先読み情報設定処理2を実行し、その後ステップD162に進む。
ここで、前述のステップD97、D103、D118、D120、D136、D142、及びD153のうちの何れかが実行された状態であれば、このcmd1stの設定は有りとなる(即ち、ステップD162の判定結果はYESとなる)。また、前述のステップD125及びD158のうちの何れかが実行されてcmd1stの設定が消去されたままの状態であれば、このcmd1stの設定は無しとなる(即ち、ステップD162の判定結果はNOとなる)。このため、ステップD163が実行されるのは、cmd1st(第1コマンド)の受信時となる。
ステップD163では、CPU311のRAMの記憶領域のうち、初期化の必要な領域を対応するデフォルト値で初期化する。
なお、ステップD163で初期化する初期化の必要な領域には、組で効果を発揮する第1コマンドと第2コマンド(例えば、ファンファーレコマンドなどの演出画面コマンドと組を成す大当り図柄コマンド)によって内容が確定する情報を記憶する領域が含まれる。例えば、特図の変動に関する情報(停止図柄情報など)を記憶する領域と、大当り画面に関する情報(大当り図柄の情報、ラウンド数、カウント数など)を記憶する領域とが含まれる。なお、ステップD163によれば、組で効果を発揮する第1コマンドと第2コマンドのうちの第1コマンドを受信した時点で、第1コマンドと第2コマンドによって内容が確定する演出に関する情報を記憶する領域を一旦初期化することになる。ここでは、受信した第1コマンドと異なる種別又は系統の第2コマンドによって内容が確定する情報を記憶する領域についても初期化する(例えば、ファンファーレコマンドなどの大当り系の演出画面コマンドを受信した場合に、この演出画面コマンドと組を成す大当り図柄コマンドで確定する情報の記憶領域のみならず、例えば変動系の変動パターンコマンドと停止図柄コマンドで確定する情報を記憶する領域も初期化する)。
ステップD147に進むと、ExModeの設定がなしか否か判定し、なしの場合にはリターンし、ありの場合にはステップD148に進む。ここで、ExModeの設定がありとは、ExModeとしてデータが記憶されている状態である。またExModeの設定がなしとは、ExModeのデータがクリアされたままの状態である。なお、ExModeは前記ステップD91でクリアされる。
ステップD148に進むと、ExModeのデータが変動系コマンド(先読み変動系コマンド含む)以外であるか判定され、変動系コマンド(先読み変動系コマンド含む)以外である場合にはステップD149に進み、変動系コマンド(先読み変動系コマンド含む)である場合にはステップD161に進む。
ステップD149では、受信コマンド別初期化処理1(後述する)を実行し、その後リターンする。
ステップD161では、受信コマンド別初期化処理2(後述する)を実行し、その後リターンする。
次に、上述の受信コマンド解析処理(親モジュール)におけるステップD95、D101、D116、D134、D140、D151でそれぞれ実行される変動パターン対応図柄設定処理(子モジュール)の詳細について図102により説明する。
このルーチンが開始されると、まずステップD171で、前述のステップD92で記憶されたACTのデータに対応する有効な図柄種別情報を取得し、ステップD172に進む。この図柄種別情報の取得は、直前のステップ(例えばステップD95であれば、その前のステップD94)で設定された図柄種別情報テーブルに基づいて行われる。
また本例の場合には、図柄種別情報としては、「はずれ図柄」、「2R大当り図柄」、及び「15R大当り図柄」の3パターンがある。但し、この態様に限定されず、例えば2R又は15R以外のラウンド数の大当り図柄や、小当たり図柄などの種別が設定されていてもよく、この図柄種別の設定は機種の仕様によって変化する。
ここで、ステップD182では、テーブルの内容(即ち、直前のステップで取得されたチェックテーブルにおいて、その時点でのポインタに対応するデータ)が、前述のステップD92で記憶されたACTのデータと一致するか判定し、一致すればこの繰り返しループを抜けてステップD177に進み、一致しなければステップD183に進む。
ステップD183に進むと、当該チェックテーブルのポインタの値を更新し、ステップD184に進む。
ステップD184に進むと、当該チェックテーブルの最後のデータまでステップD182が繰り返し実行されたか判定し、最後のデータまでステップD182が繰り返された場合にはステップD185に進み、そうでない場合にはステップD182に戻って処理を繰り返す。
そしてステップD185では、異常であるとして無効コマンド情報を返し、リターンする。またステップD177では、ステップD171で取得した図柄種別情報の値を返す。
なお、前述のステップD98等では、このステップD177で返された図柄種別情報が待受け図柄情報として格納される。
次に、上述の受信コマンド解析処理におけるステップD149で実行される受信コマンド別初期化処理1の詳細について図103乃至図106により説明する。
このルーチンが開始されると、まずステップD191で、初期化の必要な領域を対応するデフォルト値で初期化し、次のステップD192で全面フェード情報としてNULL(情報が無いことを示すデータ)を設定し、ステップD193に進む。なお、ステップD191で初期化する初期化の必要な領域は、CPU311のRAMの記憶領域のうち、コマンド確定時に初期化すべき共通領域(例えば、予告情報領域の全域)である。
ステップD196に進むと、P機状態(パチンコ機の状態)が客待ちデモ中か判定し、客待ちデモ中ならばステップD199に進み、客待ちデモ中でなければステップD197に進む。
ステップD197に進むと、表示制御フラグ領域に客待ちA表示開始の情報を設定し、次のステップD198で背景情報に客待ち表示データ(客待ちデモ用制御テーブルの情報)を設定し、ステップD199に進む。
また、ステップD201における特図停止図柄領域の値とは、後述するステップD341で設定されるデータであり、また特図表示図柄番号は、例えば特図変動中に客待ちデモコマンドが送信された場合に、その時点の特図停止図柄領域の値を保存しておく記憶領域である。なお、こうして保存された特図表示図柄番号の値は、客待ち中の図柄表示に利用される。
ステップD203bでは、客待ちデモ同期(客待ちデモ表示におけるサブ間同期)のサブ間コマンド(ブロードキャスト送信設定)を準備し、この準備したサブ間コマンドを編集すべく次のステップD203cでサブ間送信データ編集処理(図120で後述する)を実行する。
ステップD203eでは、サブ間演出開始待ちタイマ(後述するステップD532で使用されるタイマ)を設定する。
ステップD203fでは、サブ間送信要求フラグをセットする。サブ間送信要求フラグは、後述するステップD461の判定に使用される。
ステップD204では、P機状態として大当り中を設定する。
ステップD205では、ラウンド表示情報をNULLに設定する。
ステップD206では、背景情報に大当りファンファーレ表示データ(大当りファンファーレ用の背景制御テーブルの情報)を設定する。
ステップD207では、全面フェード情報として黒フェード表示を設定する。
ステップD208では、特図表示図柄番号として特図停止図柄領域の値を設定する。
ステップD210では、保留表示移動制御なしを設定する。
これらステップD204乃至D210は、ファンファーレ演出(表示装置41でのファンファーレ表示含む)を実行するための処理である。
ステップD223では、P機状態として大当り中を設定する。
ステップD224では、ラウンド表示情報としてラウンド数に対応するシーン切り替えテーブルを設定する。
ステップD225では、背景情報にExActのデータに対応する大当りラウンド背景表示データ(大当りラウンド用の背景制御テーブルの情報)を設定する。
ステップD226では、ExActのデータに対応するラウンド数表示データを設定する。
ステップD227では、特図表示図柄番号として特図停止図柄領域の値を設定する。
ステップD228では、ラウンド中の図柄動作テーブル(ラウンド中用の図柄変動テーブルの情報)を図柄変動テーブル領域にセットする。
ステップD229では、保留表示移動制御なしを設定する。
これらステップD223乃至D229は、ラウンド演出(表示装置41でのラウンド表示含む)を実行するための処理である。
ステップD230では、P機状態として大当り中を設定する。
ステップD231では、ラウンド表示情報をNULLに設定する。
ステップD232では、背景情報に大当りインターバル背景表示データ(インターバル用の背景制御テーブルの情報)を設定する。
ステップD233では、特図表示図柄番号として特図停止図柄領域の値を設定する。
ステップD234では、ラウンド中の図柄動作テーブルをセットする。
ステップD235では、保留表示移動制御なしを設定する。
これらステップD230乃至D235は、インターバル演出(表示装置41でのインターバル表示含む)を実行するための処理である。
ステップD244では、P機状態として大当り中を設定する。
ステップD245では、ラウンド表示情報にシーン切替時間テーブルを設定する。
ステップD246では、背景情報にエンディング背景表示データ(エンディング用の背景制御テーブルの情報)を設定する。
ステップD247では、全面フェード情報として黒フェード表示を設定する。
ステップD248では、特図表示図柄番号として特図停止図柄領域の値を設定する。
ステップD250では、保留表示移動制御なしを設定する。
これらステップD244乃至D250は、エンディング演出(表示装置41でのエンディング表示含む)を実行するための処理である。
なお、特図2についても、上記ステップD242及びD251と同様のステップが設けられるが、図示及び説明を省略する。
ステップD252では、現在のBGMが基本BGMでないならサウンド停止要求をセットする。
ステップD253では、変動終了時背景情報がNULLでなければ背景情報で上書きする。
ステップD254では、P機状態として変動中を設定する。
ステップD255では、背景情報に通常背景表示データ(通常用の背景制御テーブルの情報)を設定する。
ステップD256では、変動終了時背景情報にNULLを設定する。
ステップD257では、特図表示図柄番号として特図停止図柄領域の値を設定する。
ステップD259では、保留表示移動制御なしを設定する。
これらステップD252乃至D259は、特図の図柄停止の演出(表示装置41での特図の停止表示含む)を実行するための処理である。
なお、この受信コマンド別初期化処理1については、特図2保留数のコマンドに対する処理以外の他の処理についても、図示及び説明を省略している。例えば、非変動系の他のコマンド(エラー系、確率状態系等のコマンドなど)を受信した場合の対応処理も省略している。
次に、上述の受信コマンド別初期化処理1におけるステップD251で実行される特図1保留情報設定処理の詳細について図107により説明する。
このルーチンが開始されると、まずステップD261で、その時点の特図1保留数のデータをロードして、このロードしたデータを前保留数として記憶し、次にステップD262で、コマンド(ExMode及びExActのデータ)で指令された保留数の値を特図1保留数として記憶し、その後ステップD263に進む。
ステップD264では、保留数が増加したか(即ち、新保留数>前保留数であるか)判定し、増加したならばステップD265に進み、増加していないならばステップD267に進む。
ステップD265に進むと、新保留数に対応する色情報領域に保留通常点灯の表示パターンを設定し、次のステップD266で始動口入賞音を出力要求し、その後リターンする。
なお、ステップD265に進むのは、特図1の始動入賞があった場合であるので、この始動入賞による保留表示(保留されている始動記憶の表示)や演出用の入賞音出力を行うためにステップD265及びD266が実行される。また、ステップD267に進むのは、特図1の始動記憶の保留数が減少した場合であるため、先読み表示(例えば大当り予告や変動パターン予告)を行っている保留数の表示をずらして表示したり、先読み情報(先読みした変動パターンや停止図柄の情報及び先読み演出有無等の各種情報(フラグ等))を保留数に対応する領域にずらすために、ステップD267、D268が実行される。なお、演出制御装置300では、前述のステップD138、D144、D155、D160、及びステップD161(受信コマンド別初期化処理2)において、各保留毎に、先読みコマンド(先読み変動系コマンド及び先読み図柄コマンド)の解析結果として上記先読み情報を設定している。そして、この先読み情報の格納領域は、主基板で変動開始時に乱数格納領域をシフトするのと同様に、前記保留数の減少に対応させてシフトさせる必要があり、この格納領域のシフトを行っているのが、上記ステップD267である。またステップD268は、先読み情報に応じた保留表示色(即ち、先読み演出のために先読み演出の有無や内容によって異ならせている保留表示の色)の情報の格納領域を同様にシフトさせるための処理である。
次に、前述の受信コマンド解析処理におけるステップD161で実行される受信コマンド別初期化処理2の詳細について図108、図109により説明する。
このルーチンが開始されると、まずステップD271乃至D281を実行し、ステップD282に進む。
ステップD271では、初期化の必要な領域を対応するデフォルト値で初期化する。
ステップD273では、表示制御フラグ領域に通常変動表示の情報を設定する。
ステップD274では、変動する特図の第4図柄の変動初期化フラグを設定する。
ステップD275では、変動する特図の第4図柄ステータスを変動中として設定する。
これらステップD274及びD275の処理によって、特図1又は特図2のうちの変動中のものに対応する第4図柄が変動する(後述する第4図柄編集処理を参照)
ステップD276では、保留表示移動制御なしに設定する。
ステップD278では、上記ステップD277の変動パターン分類処理で返された大別パターンに対応する予告振分テーブルを準備する。
ステップD279では、乱数抽選処理A(後述する)を実行する。
ステップD280では、上記ステップD277で返された大別パターンに対応するステップUP予告振分テーブルを準備する。
ステップD281では、乱数抽選処理B(後述する)を実行する。
ステップD283では、上記ステップD277で返された大別パターンに対応するリーチ中予告振分テーブルを準備する。
ステップD284では、乱数抽選処理C(後述する)を実行する。
ステップD285に進むと、予告演出設定処理1(後述する)を実行し、次にステップD286で予告演出設定処理2(後述する)を実行し、次にステップD287で基本BGMの曲番号をセットし、その後ステップD288に進む。
なお本例では、12秒前半通常変動の場合には、リーチアクション無しの変動パターンしかあり得ない。この場合、リーチアクションを行わないので後半変動の時間値は0として設定し、合計で12秒となる変動パターン(即ち、12秒通常変動;ここでの「通常」はリーチではない変動という意味である)として定義している。つまり、ExActのデータ(後半変動パターン)が示す後半変動時間値は0秒変動ということになる。
ステップD289では、背景情報を通常変動背景(通常変動用の背景制御テーブルの情報)に設定する。
ステップD290では、変動終了時背景情報にNULLを設定する。
ステップD291では、後述する図柄変動テーブルとして、12秒前半通常変動時の序盤変動テーブルを設定する。具体的には、この序盤変動テーブルのアドレスの情報を図柄変動テーブル領域に格納する(以下同様)。
ステップD292では、図柄変動テーブルとして、12秒前半通常変動時の前半変動テーブルを設定する。
ステップD293では、図柄変動テーブルとして、ExActに対応する後半変動テーブルを設定する。
ステップD294では、バラケ目図柄生成のフラグをセットする。バラケ目図柄とは、特図を構成する複数の図柄がリーチや大当りとなる図柄でない状態(リーチ形の組み合わせでなければ「776」のような組み合わせも含む)を意味する。
ステップD295では、停止図柄設定処理(後述する)を実行する。
なお、これらステップD289乃至D295は、リーチアクションなしの場合の一例であり、実際にはリーチアクションなしでも沢山のモードがあるが、そのための制御処理については図示及び説明を省略する。
ステップD302では、10.4秒前半通常変動時の序盤変動テーブルを設定する。
ステップD303では、10.4秒前半通常変動時の前半変動テーブルを設定する。
これらステップD302乃至D303は、10.4秒前半通常変動における序盤及び前半の特図(特図1又は特図2)の表示装置41での変動表示を実行するための処理である。なお本願では、前半変動時間の内の図柄の動きだしの期間を「序盤」、前半変動時間の内の残りの期間を「前半」としている。同一の前半変動時間でも図柄の動きだしが、そのまま下にスクロールする場合や一旦上にホッピングしたりする場合(予告の一種)もあるので、動きが一通りにならないよう「序盤+前半=前半変動」という構成になっている。また本実施例は、このように、特図変動時の演出を時間的に複数に分割した各期間について演出内容をそれぞれ設定し、各期間の演出内容の組合せとして特図変動時の演出全体を構成する組合せ式となっている。これにより、制御データ記憶用の不揮発性メモリ(本例ではPROM321)に格納しなければならない総データ量が減るというメリットがある。即ち、例えば、少しでも動きが違う演出内容毎に前半変動のテーブルを全て用意するとデータ量が膨大になってしまうが、この組合せ式であればそのような問題が改善される。
ステップD307では、背景情報としてノーマルリーチアクションの背景(ノーマルリーチアクション用の背景制御テーブルの情報)を設定する。
ステップD308では、変動終了時背景情報にNULLを設定する。
ステップD309では、後述する図柄変動テーブルとして、ExActに対応する後半変動テーブルを設定する。
ステップD310では、−1はずれ図柄生成のフラグをセットする。
ステップD311では、停止図柄設定処理(後述する)を実行する。
これらステップD307乃至D311は、10.4秒前半通常変動の後半変動であってノーマル−1外れの場合の特図(特図1又は特図2)の表示装置41での変動表示を実行するための処理である。
ステップD312では、背景情報として武将リーチアクションの背景(武将リーチアクション用の背景制御テーブルの情報)を設定する。
ステップD313では、変動終了時背景情報に武将リーチ終了時の背景を設定する。
ステップD314では、後述する図柄変動テーブルとして、ExActに対応する後半変動テーブルを設定する。ここでは、武将リーチ中の予告(大当り予告)の種類に応じてテーブルを選択する。
ステップD315では、−1はずれ図柄生成のフラグをセットする。
ステップD316では、停止図柄設定処理(後述する)を実行する。
ステップD317では、全面フェード情報に白フェード表示の情報を設定する。
これらステップD312乃至D317は、10.4秒前半通常変動の後半変動であって武将リーチ−1はずれの場合の特図(特図1又は特図2)の表示装置41での変動表示を実行するための処理である。
ステップD318に進むと、その他のExMode及びExActにおける各種リーチ種類(大当りとなるもの含む)に対応する設定処理を行う。
なお、上記ステップD301乃至D305及びステップD307乃至D317は、リーチアクション有りの場合の一部の例の処理である。実際にはリーチアクションには、他にも沢山の種類があるが、ここでは煩雑を避けるために、それら他の種類の処理についてはステップD306及びステップD318でまとめて図示しており、その詳細については図示及び説明を省略する。
次に、前述の受信コマンド別初期化処理2におけるステップD295、D311、D316で実行される停止図柄設定処理の詳細について図110により説明する。なお本例では、演出用の特図が左右並んで配置される3個の図柄(左図柄、中図柄、右図柄)からなり、各図柄として9種類の図柄(図柄番号0乃至8)がある場合を例示する。
このルーチンが開始すると、まずステップD321で、図柄生成フラグとしてはずれバラケ目が設定されているか判定し、設定されていればステップD322乃至D323を実行した後にステップD324に進み、設定されていなければステップD331に進む。なお、はずれバラケ目の図柄生成フラグは前述のステップD294でセットされる(即ち、設定される)。
ステップD323は、8種類の図柄番号0乃至7からランダムに一つ選択した図柄番号を右図柄rxとして設定する処理である。
ステップD324に進むと、ステップD323で設定した右図柄rxがステップD322で設定した左図柄lx以上の値であるか判定し、右図柄rx≧左図柄lxであればステップS325で右図柄rxの図柄番号を1つ増やしてステップD326に進み、右図柄rx≧左図柄lxでなければ(即ち、右図柄rx<左図柄lxであれば)ステップD325を実行しないでステップD326に進む。
これらステップD322乃至D325の処理により、左図柄lxと右図柄rxがランダムに設定されるとともに、左図柄lxと右図柄rxは必ず異なる図柄番号に設定される。ステップD323で図柄番号7以下の範囲から選択するのは、ステップD325で必ず一つ増やすことができるようにするためである。
具体的に説明すると、例えば3,5,7の組合せの図柄が出現禁止図柄であるとすると、ステップD326では、左図柄lxと右図柄rxの図柄番号が3,5,7のうちの異なる何れか二つである場合には、出現禁止図柄となり得るとしてステップD327に進む。
ステップD327を経るとステップD328で、8種類の図柄番号0乃至7からランダムに一つ選択した図柄番号を中図柄cxとして設定する処理を実行し、その後ステップD329に進む。
これらステップD328乃至D330の処理によれば、中図柄cxの値は必ずnocxと異なる値になり、結局、「左図柄lx,中図柄cx,右図柄rx」の組合せは、必ず出現禁止図柄でないものとなる。
ステップD338に進むと、8種類の図柄番号0乃至7からランダムに一つ選択した図柄番号を中図柄cxとして設定する処理を実行し、その後ステップD341に進む。
ステップD332では、10種類の値0乃至9からランダムに一つ選択した値をtmprndとして格納する処理を実行する。
ステップD333に進むと、tmprndの値が0か判定し、0ならばステップD334とD335を順次実行した後にステップD336に進み、0でないならばステップD339とD340を順次実行した後にステップD336に進む。
ステップD339では、偶数である5種類の値0,2,4,6,8からランダムに一つ選択した値を左図柄lxの番号として格納する処理を実行する。
ステップD335又はステップD340では、リーチの図柄とするために、右図柄rxの値を左図柄lxの値と同じにする(即ち、右図柄を左図柄と同じ図柄とする)。
ステップD337に進むと、その他の図柄生成フラグに対応する組合せの図柄(大当り図柄含む)を生成する処理を実行した後、ステップD341に進む。
ステップD341では、ここまでのステップで設定された左図柄lx、中図柄cx、右図柄rxの値を、停止図柄領域の左図柄・中図柄・右図柄にそれぞれ格納し、その後リターンする。
なお、上記ステップD321乃至D336及びステップD338乃至D340は、以上説明したように、はずれバラケ目の場合と、リーチ−1はずれ目の場合の処理である。実際には停止図柄の種類には、他にも沢山の種類があるが、ここでは煩雑を避けるために、それら他の種類の処理についてはステップD337でまとめて図示しており、その詳細については図示及び説明を省略する。
次に、前述の受信コマンド別初期化処理2におけるステップD277で実行される変動パターン分類処理の詳細について図111により説明する。
このルーチンが開始されると、まずステップD351でExModeのデータが変動系コマンドであるか判定し、変動系コマンドであればステップD352に進み、変動系コマンドでなければステップD358に進む。
ステップD352に進むと、ExActのデータは有効範囲か判定し、有効範囲であればステップD353を実行してステップD354に進み、有効範囲でなければステップD358に進む。
ステップD354に進むと、ステップD353で取得した変動パターンチェックデータが0か判定し、0ならばステップD358に進み、0でなければステップD355乃至D357を順次実行した後にリターンする。
ステップD356では、ステップD355で設定された大別パターンテーブルに基づいてExActのデータに対応する大別パターンデータを取得する。
ステップD357では、ステップD356で取得した大別パターンデータを返してリターンする。
ステップD358に進むと、0を返してリターンする。
次に、前述の受信コマンド別初期化処理2におけるステップD279で実行される乱数抽選処理Aの詳細について図112により説明する。このルーチンは、前述のステップD278で振分けのグループA用として準備された予告振分テーブルにおける振分け結果を種別毎に乱数により選択する処理である。
このルーチンが開始されると、予告種別番号Aを初期値1から増分1だけ増加させつつ終値na(例えば、na=9)になるまで、ステップD361乃至ステップD368を繰り返し実行し、その後リターンする。即ち、ステップD361ではルーチン開始直後は予告種別番号Aを1としてステップD362に進む。ステップD368では、予告種別番号Aがna未満である場合にはステップD361に戻り、予告種別番号Aがnaである場合にはリターンする。そしてステップD361に戻ると、予告種別番号Aの値を1だけ増加させてステップD362に進む。なお、終値naの値は機種毎に異なる。
ステップD365に進むと、前記rdmの値から前記振分値を減算した値を新たなrdmの値として設定し、次にステップD366で振分テーブルポインタを1だけ増加させる更新(振分テーブルの同一行において1列分だけポインタ位置を先頭から離れる方向にずらす更新)を実行した後に、ステップD364に戻って処理を繰り返す。
ステップD368に進むと、前述したように、予告種別番号Aがna未満である場合にはステップD361に戻り、予告種別番号Aがnaである場合にはリターンする。
次に、前述の受信コマンド別初期化処理2におけるステップD281で実行される乱数抽選処理Bの詳細について図113により説明する。このルーチンは、前述のステップD280で振分けのグループB用として準備されたステップアップ予告振分テーブルにおける振分け結果を種別毎に乱数により選択する処理である。
このルーチンでは、前述の乱数抽選処理Aと同様に、予告種別番号Bを初期値1から増分1だけ増加させつつ終値nb(例えば、nb=7)になるまで、ステップD371乃至ステップD378を繰り返し実行し、その後リターンする。終値nbの値は機種毎に異なる。
次に、前述の受信コマンド別初期化処理2におけるステップD284で実行される乱数抽選処理Cの詳細について図114により説明する。このルーチンは、前述のステップD283で振分けのグループC用として準備されたリーチ中予告振分テーブルにおける振分け結果を種別毎に乱数により選択する処理である。
このルーチンでは、前述の乱数抽選処理A又はBと同様に、予告種別番号Cを初期値1から増分1だけ増加させつつ終値nc(例えば、nc=6)になるまで、ステップD381乃至ステップD388を繰り返し実行し、その後リターンする。終値ncの値は機種毎に異なる。
これにより、上述の乱数抽選処理A,B,Cによれば、全てのグループA,B,Cのそれぞれで全ての予告種別番号の値に対して振分け結果が予め選択され、この振分け結果に応じた演出内容を指定する各種情報が予め所定の記憶領域にそれぞれ格納されることになる。
次に、前述の受信コマンド別初期化処理2におけるステップD285で実行される予告演出設定処理1の詳細について図115により説明する。この予告演出設定処理1としては、乱数抽選結果(前述した乱数抽選処理A、B、Cの結果)に応じてSU予告の設定を行う場合を例示しているが、当然機種毎に予告演出の内容は異なる。
このルーチンが開始されると、まずステップD391で予告種別領域のSU予告回数領域から振分け結果をロードし、ステップD392に進む。
ステップD393に進むと、ステップD391でロードしたSU予告回数が2か判定し、2でない場合にはステップD403に進み、2である場合にはステップD394に進む。
ステップD404に進むと、予告種別領域のSU進行パターン領域から振分け結果をロードし、ステップD405に進む。
ステップD406に進むと、SU1予告情報領域に男性武将1_1情報を設定し、リターンする。ステップD407に進むと、SU1予告情報領域に女性武将1_1情報を設定し、リターンする。SU1予告情報領域は、ステップアップ予告の1回目の情報を記憶する領域であり、この領域に設定された情報に基づいてステップアップ予告の1回目が実行される。なお、上記ステップD406、D407で設定される情報は、SU1予告用の予告データ(SU1予告用の制御テーブル内の例えば特定の行を指定するアドレス情報)である。
ステップD395に進むと、ステップD394でロードしたSU2種別が1か判定し、1でない場合にはステップD396に進み、1である場合にはステップD408に進む。
ステップD408に進むと、SU1予告情報領域に女性武将1_2情報(SU1予告用の予告データ)を設定し、次にステップD409でSU2予告情報領域に女性武将2_2情報(SU2予告用の予告データ)を設定し、ステップD398に進む。SU2予告情報領域は、ステップアップ予告の2回目の情報を記憶する領域であり、この領域に設定された情報に基づいてステップアップ予告の2回目が実行される。
ステップD399に進むと、ステップD398でロードしたSU進行パターンが0か判定し、0でない場合にはステップD411に進み、0である場合にはステップD400に進む。
ステップD400に進むと、予告種別領域のSU2女性出現パターン領域から振分け結果をロードし、ステップD401に進む。
ステップD402に進むと、SU1予告情報領域に女性武将1_2情報(SU1予告用の予告データ)を設定し、ステップD411に進む。
ステップD410に進むと、SU2予告情報領域に女性武将2_2情報(SU2予告用の予告データ)を設定し、ステップD411に進む。
ステップD412に進むと、SU1予告情報領域に女性武将1_2情報(SU1予告用の予告データ)を設定し、次のステップD413でSU2予告情報領域に女性武将2_2情報(SU2予告用の予告データ)を設定し、リターンする。
ステップD403に進むと、以下同様に、SU予告回数振分け結果に応じてSU予告情報領域の設定を行い、その後リターンする。
なお、SU予告の設定はSU予告回数が3回以上の場合もあるが、ここでは煩雑を避けるために、それら他のSU予告の設定処理についてはステップD403でまとめて図示しており、その詳細については図示及び説明を省略する。
次に、前述の受信コマンド別初期化処理2におけるステップD286で実行される予告演出設定処理2の詳細について図116、図117により説明する。この予告演出設定処理2としては、乱数抽選結果(前述した乱数抽選処理A、B、Cの結果)に応じて巻物、PB、武将予告の設定を行う場合を例示しているが、当然機種毎に予告演出の内容は異なる。PBとはプッシュボタンを意味し、例えば本例の演出ボタン9に相当する。
このルーチンが開始されると、まずステップD421で予告種別領域の予告種別C4領域から振分け結果をロードし、ステップD422に進む。
なお、C4等の名前はスペック上の名称であり、演出の各ルートにおける予告の種別番号を表す。例えば、「ルートCにおける予告種別4」ということを表す。
ステップD425に進むと、前面予告情報4領域に巻物予告0情報(前面予告4用の予告データ)を設定し、リターンする。前面予告情報4領域に巻物予告0情報が設定されると、巻物予告が実行される。
ステップD423に進むと、ステップD421でロードした予告種別C4の振分け結果のデータが文字予告を指定するものであるか判定し、文字予告でない場合にはステップD424に進み、文字予告である場合にはステップD426乃至D429を順次実行した後にリターンする。
ステップD427では、前面予告情報4領域に予告種別C5の振分け結果に対応する巻物色情報(前面予告4用の予告データ)を設定する。
ステップD428では、予告種別領域の予告種別C6領域から振分け結果をロードする。
ステップD429では、前面予告情報5領域に予告種別C6の振分け結果に対応する巻物文字情報(前面予告5用の予告データ)を設定する。
これらステップD427、D429の設定に基づいて、文字予告が実行される。
ステップD431では、前面予告情報4領域に予告種別P1の振分け結果に対応するPB色情報(前面予告4用の予告データ)を設定する。このPB色情報の設定によりPB予告におけるPBの画像の表示色が設定される。
ステップD441では、予告種別領域の予告種別C8領域から振分け結果(武将人数を決めるデータ)をロードする。
ステップD442に進むと、ステップD441でロードした振分け結果が武将人数1人を指定するものであるか判定し、武将人数1人でない場合にはステップD443に進み、武将人数1人である場合にはステップD445乃至D448を順次実行した後にステップD444に進む。
ステップD446では、前面予告情報5領域に左セリフ枠情報(前面予告5用の予告データ)を設定する。
ステップD447では、前面予告情報6領域にステップD445でロードした予告種別N1の振分け結果に対応する武将セリフ枠情報(前面予告6用の予告データ)を設定する。
ステップD448では、前面予告情報7領域にステップD445でロードした予告種別N1の振分け結果に対応する左武将キャラクタ情報(前面予告7用の予告データ)を設定する。
これらステップD446乃至D448の設定に基づいて、武将人数1人の予告演出の表示等が実行される。
ステップD450では、前面予告情報5領域に左セリフ枠情報(前面予告5用の予告データ)を設定する。
ステップD451では、前面予告情報6領域にステップD449でロードした予告種別N2の振分け結果に対応する武将セリフ枠情報(前面予告6用の予告データ)を設定する。
ステップD452では、前面予告情報7領域にステップD449でロードした予告種別N2の振分け結果に対応する左武将キャラクタ情報(前面予告7用の予告データ)を設定する。
ステップD453では、前面予告情報8領域に右セリフ枠情報(前面予告8用の予告データ)を設定する。
ステップD454では、前面予告情報9領域にステップD449でロードした予告種別N2の振分け結果に対応する武将セリフ情報(前面予告9用の予告データ)を設定する。
ステップD455では、前面予告情報10領域にステップD449でロードした予告種別N2の振分け結果に対応する右武将キャラクタ情報(前面予告10用の予告データ)を設定する。
ステップD444に進むと、以下同様に、予告種別領域の振分け結果を用いて、各種予告情報の設定を行い、その後リターンする。
なお、予告設定には他にも沢山種類があるが、ここでは煩雑を避けるために、それら他の予告種類の設定処理についてはステップD444でまとめて図示しており、その詳細については図示及び説明を省略する。
また本例では、上記のようにプログラムで予告種別の設定を行っている例を挙げたが、データテーブルを用いて汎用的に設定する処理とする態様でもよい。
次に、前述のメイン処理におけるステップD20で実行されるサブ間送信開始処理の詳細について図118により説明する。なお、サブ間送信とは、サブ間通信における送信のことである。サブ間通信とは、遊技場の異なるパチンコ機のサブ基板(本例では、演出制御装置)の間で行われる通信(本例では、無線通信)である。
このルーチンが開始されると、まずステップD461でサブ間送信要求があるか(即ち、前述したステップD203f、或いは後述するステップD480等でセットされるサブ間送信要求フラグがセットされているか)判定し、サブ間送信要求があれば(サブ間送信要求フラグがセットされていれば)ステップD462に進み、サブ間送信要求がなければ(サブ間送信要求フラグがセットされていない場合には)リターンする。
ステップD462に進むと、サブ間送信開始待ちタイマの値が0より大きいか判定し、0より大きい場合にはステップD466に進み、0以下の場合にはステップD463乃至D465を順次実行した後にリターンする。
ステップD464では、サブ間送信許可フラグをセットする。
ステップD465では、サブ間送信割込みを許可する。なお、サブ間送信割込みは、サブ間通信で送信するデータが発生すればこのステップD465で許可され、送信するデータが無くなれば禁止される(後述するステップD1196参照)。
ステップD466に進むと、サブ間送信開始待ちタイマを更新する(即ち、タイマの値を一定値減らす)。サブ間送信開始待ちタイマは、後述するステップD479で初期値を設定され、後述するステップD491でクリアされる(値が0とされる)タイマである。
次に、前述のメイン処理におけるステップD21で実行されるサブ間受信タスク処理の詳細について図119により説明する。
このルーチンが開始されると、まずステップD471で、サブ間受信タスク要求があるか(即ち、後述するステップD1179でセットされるサブ間受信タスク要求フラグがセットされているか)判定し、サブ間受信タスク要求があれば(サブ間受信タスク要求フラグがセットされていれば)ステップD472に進み、サブ間受信タスク要求がなければ(サブ間受信タスク要求フラグがセットされていない場合には)リターンする。
ステップD473に進むと、ステップD472でロードしたSB_MODEのデータが端末ID報知を示すものか判定し、端末ID報知を示すものでない場合にはステップD474に進み、端末ID報知を示すものである場合にはステップD482乃至D485を順次実行した後にステップD481に進む。
ステップD483では、ステップD482でロードした端末IDに対応する端末情報領域の端末有無情報を「あり」に設定する。
ステップD484では、ステップD482でロードした端末IDに対応する端末情報領域の端末有効期間タイマに、初期値を設定する。なお、端末有効期間タイマを設けることで、受信した端末IDの遊技機が「ある」と認識することに制限時間を設けている。つまり、サブ間通信を行う遊技機間で定期的に互いの存在を確認する必要があり、この端末有効期間タイマに基づく図示省略した処理(例えば、端末有効期間タイマがタイムアップするまでの間に同じ端末ID報知がまた受信されなければ、当該端末IDに対応する端末有無情報を「なし」に更新する処理)によって、この確認を定期的に行っている。こうしておくことで、次のような利点がある。即ち、ある遊技機が電源を落としたり、無線モジュールが突然故障したりした場合など、何らかの理由により一度は互いに通信を確立した遊技機間の通信が成立しなくなった場合、その相手が存在している前提で通信をし続けることは無駄であるし、それによりサブ間演出の効果が低下してしまう虞もある。例えば、サブ間演出として、島内の左端の遊技機から順次隣の遊技機にサブ間通信で指令を送り、島内の左端の遊技機から順次特定の登場人物等(キャラクタ)の画像を各遊技機の表示装置41に右方に流れるように表示させるといった連続演出(連携演出の一種)を行う場合、その通信が成立しなくなった遊技機のところで、この連続演出が途切れて中断してしまう虞がある。しかし、上記確認を定期的に行って端末有無情報を更新している構成であれば、途中で存在が「なし」となった遊技機にはサブ間演出の要求をしないようにできるので、例えば電源を落としてしまった台を飛ばして上記連動演出を行うなど、効率良いサブ間演出を確実に行えるようになる。
但し、サブ間演出は遊技の結果に影響を与えないものなので、上述したような弊害(例えば、存在のなくなった相手に演出要求をした結果演出が行われなくなってしまう弊害)があっても問題ないとする思想も成立する。そのような思想に従った仕様の場合には前記端末有効期間タイマは不要である。
ステップD485では、ステップD482でロードした端末IDに対応する端末情報領域のゲーム状態に、受信したゲーム状態のデータ(後述するステップD1178でサブ間コマンドゲーム状態領域にコピーされた値)を格納する。
ステップD477に進むと、サブ間データ送信中か判定し、サブ間データ送信中ならばステップD481に進み、サブ間データ送信中でなければステップD478乃至D480を順次実行した後にステップD480aに進む。なお、サブ間データ送信とは、サブ間通信におけるデータ送信(例えば、コマンドの送信)である。また本願では、サブ間通信で送受信されるコマンドをサブ間コマンドと称している。
ステップD478では、受信したサブ間コマンドの内容に対応する各種演出のサブ間コマンド、或いはパラメータ等を設定する。
ステップD479では、ステップD478で設定したサブ間コマンドを他の遊技機のサブ基板に送信すべく、サブ間送信開始待ちタイマを設定する。また同様に、ステップD480ではサブ間送信要求フラグをセットする。
ステップD480aに進むと、ステップD472でロードしたSB_MODEのデータはack応答が必要なコマンドか判定し、ack応答が必要なコマンドでない場合にはステップD481に進み、ack応答が必要なコマンドである場合にはステップD488乃至D491を順次実行した後にステップD481に進む。
ステップD488では、受信した送信元IDを送信先IDコマンドとして準備する。
ステップD489では、ack応答のSB_MODE及びSB_ACTのデータを準備する。なお、SB_MODEとSB_ACTは、サブ間コマンドを構成するデータであり、図158に示すパケット構成例(後述する)における8バイト目と9バイト目のデータである。
ステップD490では、サブ間送信データ編集処理(後述する)を実行する。
ステップD491では、サブ間送信開始待ちタイマをクリアする(タイマの値を0にする)。
なお、ステップD477及びD487が設けられていることにより、サブ間データの送信中である場合には、サブ間コマンド(演出系コマンド)により要求された動作を行わない構成となっている。これは、サブ間コマンドは主基板からのコマンドと違って必ず対応する必要はないし、送信中ということは、他台に要求をしているか、ackを返している最中ということなので、更に他の台からの要求に応える必要はないという思想からである。また、全ての要求に応えていたら演出に矛盾が出たりする可能性も考えられるが、この構成とすれば、このような矛盾が生じる可能性が無くなるという利点があるからである。但し、この思想は基本的な考え方であり、どんな状態でも行いたい演出があった場合には、送信中でも要求された動作を行う態様も有り得る。
次に、上述のサブ間受信タスク処理におけるステップD490(或いは前述の受信コマンド別初期化処理1のステップD203c)で実行されるサブ間送信データ編集処理の詳細について図120により説明する。なお、サブ間で送受信されるパケットの構成は後述する図158に示す構成になっているものとする。
ステップD501では、パケット開始コード(STX)のデータ(例えば02H)を、サブ間送信バッファ0に設定する。ここで、サブ間送信バッファ0は、サブ間通信のための送信バッファ領域(サブ間送信バッファ領域)の一部であり、このサブ間送信バッファ領域のアドレス0の位置の記憶領域がサブ間送信バッファ0である(以下、他のアドレス1,2,3,…11についても同様)。
ステップD502では、サブ間送信データ数(SIZE)のデータ(例えば12バイトを示すデータ)を、サブ間送信バッファ1に設定する。
ステップD504では、送信先ID(DID)のデータ(端末ID及びグループID)を、サブ間送信バッファ3に設定する。なお、送信元ID(SID)と送信先ID(DID)のデータは、それぞれ、1バイトのうちの上位ビットがグループID、下位ビットが端末IDとなっている。
ステップD505では、サブ間メーカコード(MAKER)のデータを、サブ間送信バッファ4に設定する。
ステップD506では、西暦コード(YEAR)のデータを、サブ間送信バッファ5に設定する。
ステップD508では、サブ間コマンドMODE(SB_MODE)のデータ(例えば、前述のステップD489等で準備されたもの)を、サブ間送信バッファ7に設定する。
ステップD509では、サブ間コマンドACT(SB_ACT)のデータ(例えば、前述のステップD489等で準備されたもの)を、サブ間送信バッファ8に設定する。
ステップD510では、自分のゲーム状態STS(即ち、当該パチンコ機のゲーム状態)のデータ(例えば、今大当りの5ラウンド目である、などを示すデータ)を、サブ間送信バッファ9に設定する。
ステップD512では、ステップD511で算出したチェックサムの演算結果(SUM)のデータを、サブ間送信バッファ10に設定する。
ステップD513では、パケット終了コード(ETX)のデータ(例えば03H)を、サブ間送信バッファ11に設定する。
ステップD514では、サブ間送信ポインタ(サブ間送信バッファ領域のアドレスを指定するパラメータ)のデータとしてサブ間送信バッファ0のアドレスを設定する。このサブ間送信ポインタは後述するステップD1192で使用される。
次に、前述のメイン処理におけるステップD22で実行されるサブ間ack応答タスク処理の詳細について図121により説明する。
このルーチンが開始されると、まずステップD521でack待ちタイマの値が0か判定し、0ならばリターンし、0でない場合にはステップD522でack待ちタイマを更新(値を規定値だけ減らす)した後にステップD523に進む。なお、ack待ちタイマは、前述したステップD203dで初期値をセットされる。
ステップD524では、ack受信フラグをクリアする。
ステップD525では、ack待ちタイマをクリアする。
ステップD526では、ack応答を受信したので、このack応答を待っていた演出に対応するための各種パラメータ設定を実行する。
次に、前述のメイン処理におけるステップD23で実行されるサブ間演出設定処理の詳細について図122により説明する。
このルーチンが開始されると、まずステップD531で、サブ間演出要求ありか否か(即ち、サブ間演出要求フラグがセットされているか否か)を判定し、サブ間演出要求ありならばステップD532に進み、サブ間演出要求なし(サブ間演出要求フラグがクリアされた状態)の場合にはリターンする。サブ間演出要求フラグは、前述のステップD478でセットされる。
ステップD533に進むと、受信したサブ間コマンドのSB_MODE及びSB_ACT(以下、サブ間コマンドとはSB_MODE及びSB_ACTを含むものである)のデータをロードし、次のステップD534でこのロードしたデータがサブ間連動予告系コマンドであるか判定し、サブ間連動予告系コマンドであればステップD534aに進み、サブ間連動予告系コマンドでなければステップD535に進む。なお、サブ間連動予告系コマンドは、サブ間通信を行っている複数のパチンコ機で予告演出を連動させる連携演出のためのコマンドである。連携演出には、例えば同じキャラクタの画像が島内を横方向に移動するように各遊技機で順次表示されるような演出もあれば、同じ演出を同期して一斉に行う同期演出もある。
ステップD539では、ステップD533でロードしたサブ間コマンドのSB_MODE及びSB_ACTのデータが指定する演出に対応する演出動作テーブルを設定する。なお、このステップD539で設定された演出動作テーブルは後述のサブ間連動予告編集処理のステップD924等で使用される。
ステップD544では、サブ間演出実行フラグをセットする。サブ間演出実行フラグは、後述するステップD920で使用される。
ステップD546では、ステップD533でロードしたサブ間コマンドのSB_MODE及びSB_ACTのデータが指定する演出に対応する演出動作テーブル(他機コマンド受信時用)を設定する。なお、このステップD546で設定された演出動作テーブル(例えば予告制御テーブル)は例えば後述のサブ間連動予告編集処理のステップD924等で使用される。
ステップD547では、サブ間演出実行フラグをクリアする。これは、予告種別指定コマンドを受信したときには、その予告種別指定コマンドで指定される演出の準備(即ち、上記ステップD546の処理)を実行するだけで、演出をまだ開始しないため、演出が実行されないようにサブ間演出実行フラグをクリアする必要があるためである。
ステップD549に進むと、今回受信した実行指定コマンドで実行を指令されている演出内容が、ステップD546で設定されている演出動作テーブル(受信時用)の演出内容と一致するか判定し、一致であればステップD550でサブ間演出実行フラグをセットした後にステップD537に進み、不一致であればステップD550を実行しないでステップD537に進む。
以上説明したステップD534a及びステップD545乃至D550の処理によれば、受信したサブ間コマンドがサブ間連動予告系コマンドのうちの同期演出系コマンドである場合、予告種別指定コマンド(第1遊技機間コマンド)を受信したときには準備のみ(ステップD546でのテーブルの設定)を行い、その後実行指示コマンド(第2遊技機間コマンド)を受信したときに当該サブ間連動予告(同期演出)を開始することになる。
ステップD540に進むと、客待ちデモ演出中か否か(即ち、客待ちデモ演出を行っている最中か否か)を判定し、客待ちデモ演出中でなければ客待ちタイミング調整を行うべきでないのでステップD537に進み、客待ちデモ演出中であれば客待ちタイミング調整を行うべくステップD541に進む。
ステップD541では、サブ間コマンドを受信した当該パチンコ機(即ち、自機)のデモステータス(実行している客待ちデモ演出の種類等を示す情報)が図柄表示(前述した客待ちA)であるか判定し、図柄表示(客待ちA)であればステップD543に進み、図柄表示(客待ちA)でなければ(即ち、ムービー表示(客待ちB)実行中であれば)ステップD542に進む。
ステップD543に進むと、デモ制御タイマを図柄表示開始の値に初期化し、その後ステップD537に進む。デモ制御タイマを図柄表示開始の値に初期化すると、実行中の図柄表示(客待ちA)の客待ちデモ演出が途中で終了され、図柄表示(客待ちA)の客待ちデモ演出が最初から開始される。
なお本例では、このように、予告演出を連動させるものと、客待ちデモ演出のタイミングを合わせる演出の処理を、サブ間演出のための処理の具体例として挙げた。しかし、サブ間演出の内容は、このような態様に限定されず、本例の態様に代えて、或いは本例の態様に加えて、他の内容のサブ間演出を行う構成としてもよい。
本例では、煩雑を避けるために、それら他の種類のサブ間演出の設定処理についてはステップD536でまとめて図示しており、その詳細については図示及び説明を省略する。
次に、前述のメイン処理におけるステップD24で実行される演出表示編集処理の詳細について図123により説明する。この演出表示編集処理は、メイン処理で説明したように、VDP312に表示装置41での描画内容を指示するための各種コマンドとそのパラメータの設定を行う処理である。この演出表示編集処理ではコマンドがテーブル状に設定され、こうして設定されたコマンドはメイン処理のステップD28(画面描画を指示)でVDP312に順次送信される。
このルーチンが開始されると、ステップD551乃至D569を順次実行し、その後リターンする。
ステップD552では、描画領域の初期設定を実行する。
ステップD553では、背景編集処理(後述する)を実行する。
ステップD554では、背景予告編集処理(後述する)を実行する。
ステップD555では、図柄編集処理(後述する)を実行する。
ステップD556では、予告編集処理1(後述する)を実行する。
ステップD557では、保留編集処理(後述する)を実行する。
ステップD558では、予告編集処理2(後述する)を実行する。
ステップD559では、サブ間連動予告編集処理(後述する)を実行する。
ステップD560では、縮小図柄編集処理(後述する)を実行する。
ステップD561では、第4図柄編集処理(後述する)を実行する。
ステップD562では、大当りラウンド編集処理(後述する)を実行する。
ステップD564では、後述するステップD767と同様に、左図柄制御領域の先頭アドレスをセットする。
ステップD565では、ステップD564でセットされた先頭アドレスに基づいて変動パラメータ更新処理(後述する)を実行する。
ステップD566では、後述するステップD764と同様に、中図柄制御領域の先頭アドレスをセットする。
ステップD567では、ステップD566でセットされた先頭アドレスに基づいて変動パラメータ更新処理(後述する)を実行する。
ステップD568では、後述するステップD770と同様に、右図柄制御領域の先頭アドレスをセットする。
ステップD569では、ステップD568でセットされた先頭アドレスに基づいて変動パラメータ更新処理(後述する)を実行する。
次に、前述の演出表示編集処理におけるステップD551で実行される客待ち表示編集処理の詳細について図124により説明する。
このルーチンが開始されると、まずステップD571で客待ち表示制御中(即ち、客待ちデモ演出の実行中)であるか判定し、制御中ならばステップD572に進み、制御中でなければリターンする。なお、前述のExModeのデータが客待ちデモを指令するものであるとき、客待ちデモ演出が行われる。
客待ち演出を初期化すべき状態とは、客待ちデモ演出以外の他の演出を行っていて客待ちAに切り替えるべき状態であり、具体的には、前述した受信コマンド別初期化処理1のステップD197で設定される客待ちA表示開始の情報が表示制御フラグ領域に設定されていれば、この客待ち演出を初期化すべき状態と判定される。
ステップD574では、客待ち制御ポインタに対応するデモ制御タイマを設定する。即ち、その時点の客待ち制御ポインタの値によって指定される客待ちデモ用制御テーブルにおける特定位置に登録されている客待ちデモの情報から、客待ちデモ実行時間の値を読出し、この客待ちデモ実行時間の値をデモ制御タイマの値として設定する。ここでは、具体的には、客待ちAを実行する時間(例えば、30秒)が設定される。デモ制御タイマは、客待ちデモ演出を実行する時間(即ち、客待ちデモ実行時間)をカウントするためのタイマである。
ステップD575では、客待ちAを開始するので、デモステータス(客待ちデモ演出の種類や状態等を示す情報)として図柄表示(客待ちA)を示すデータを設定する。
ステップD577では、飾り図柄表示フラグをセットする。
ステップD578では、保留表示フラグをセットする。
ステップD586では、飾り図柄表示フラグをクリアする。
ステップD587では、保留表示フラグをクリアする。
ステップD580に進むと、デモ制御タイマの値が0になったか(即ち、設定された客待ちデモ実行時間が経過したか)判定し、デモ制御タイマの値が0になっている場合にはステップD581乃至D582を順次実行した後にステップD583に進み、デモ制御タイマの値が0でない場合にはリターンする。
ステップD582では、客待ちデモ演出を進行させるため、客待ち制御ポインタを1だけ増やす更新を実行する。
ステップD583に進むと、客待ち制御ポインタの値が客待ちデモ用制御テーブルにおける最後のデータを示すものか判定し、最後ならば客待ちデモ用制御テーブルの繰り返し位置から客待ちデモ演出を繰り返し実行すべくステップD584で客待ち制御ポインタのデータとして繰り返し位置のポインタ値を設定した後にステップD585に進み、最後でなければステップD584を実行しないでステップD585に進む。
ステップD585に進むと、その時点の客待ち制御ポインタの値に対応するデモ制御タイマを設定し、その後リターンする。
なお、図示していないが、客待ちデモ表示における1ループ目のムービー表示中だけBGMを流す(毎回だとうるさいため)ようにしてもよいし、演出ボタン9を押すことで、今の表示をスキップして次の区間に移行できる機能を設けて、客待ちBの表示を見たい時や煩わしい時などに利用できるようにしてもよい。なおこの場合、画面が切り替わり過ぎないように演出ボタン9を一定時間無効にしたり、ダブルクリックのように複数回押しで切り替える構成としてもよい。また、節電のため、一定時間以上客待ち演出が続くと、客待ちデモ演出中の装飾ランプ類の点灯や音の出力をオフにしたり、映像を静止画表示にしたりして電力の消費を押さえる構成としてもよい。その際、液晶パネルの駆動特性に合わせて画像の色を設定すると効果が大きくなる。
次に、前述の演出表示編集処理におけるステップD553で実行される背景編集処理の詳細について図125により説明する。
このルーチンが開始されると、まずステップD591で背景表示制御中(即ち、背景表示実行中)か判定し、背景表示制御中でなければリターンし、背景表示制御中ならばステップD592に進む。なお、上記ステップD591の判定は、例えば背景制御ポインタの値としてNULL(設定無し)が設定されているか否かに基づいて行うことができる。例えば背景制御ポインタの値としてNULLが設定されていれば、背景表示制御中でないと判定できる。背景制御ポインタは、後述する背景制御テーブル内のデータを指定するポインタである。
なお、「背景情報」には、背景の変更の指示がある場合に新たな演出の背景制御テーブルの例えば先頭アドレスのデータが入っている。例えば、特図の変動表示が行われる場合には、前述のステップD289やD307等でそのための背景情報のデータ(特定の背景制御テーブルを指定する例えば先頭アドレスのデータ)が背景情報として設定される。よってこの群の処理(ステップD593乃至D597)は、新規背景演出を行う場合の初期設定の為の処理となっている。
ステップD594では、背景情報のデータを背景制御ポインタ戻り値として設定する。
ステップD595では、背景情報をNULL(設定無し)とする。
ステップD596では、背景制御ポインタに対応する背景制御タイマを設定する。
ステップD597では、背景切替えありフラグをセットする。
ステップD606では、背景情報更新判定処理(後述する)を実行する。
ステップD599では、背景番号として、背景制御ポインタに対応する背景CG番号を設定する。ここで、「背景制御ポインタに対応する」とは、「背景制御ポインタによって指定された背景制御テーブル内のデータに対応する」という意味である(以下同様)。また、背景CG番号は、画像ROM322に保存されている画像データ(キャラクタデータ)のうちの背景用の画像データの番号である。
ステップD600では、背景インデックスとして、背景制御ポインタに対応する背景インデックス番号(本例では、背景は原則的に一番奥の0番)を設定する。
ステップD601では、背景制御ポインタに対応する音声出力要求をセットする。
ステップD602では、動画インデックス設定処理(後述する)を実行する。
ステップD604に進むと、同様に背景の画像タイプが静止画か判定し、静止画であればステップD608に進み、静止画でければステップD605に進む。
ステップD605に進むと、同様に背景の画像タイプが表示オフ(表示無し)か判定し、表示オフであればステップD609に進み、表示オフでければリターンする。
ステップD607では、背景動画データ編集処理(後述する)を実行する。
ステップD608では、背景静止画データ編集処理(後述する)を実行する。
ステップD609では、背景オフデータ編集処理(後述する)を実行する。
次に、前述の背景編集処理におけるステップD606で実行される背景情報更新判定処理の詳細について図126により説明する。
このルーチンが開始されると、まずステップD611で背景制御領域のアドレスをセットしてステップD612に進む。背景制御領域は、背景表示を制御するための背景演出制御データを格納する領域である。
ステップD612に進むと、背景表示制御中(背景表示実行中)か判定し、背景表示制御中でなければリターンし、背景表示制御中ならばステップD613に進む。
ステップD616に進むと、表示タイマがタイムアップしたか判定し、タイムアップしたならばステップD617で背景制御ポインタの値を1だけ増加させる更新を実行した後にステップD618に進み、タイムアップしていない場合にはリターンする。
ステップD618に進むと、背景制御ポインタによって指定されている背景制御テーブル内のデータにおいて、背景表示の状態を表す表示ステータスコードが客待ち中の図柄表示系コードであるか判定し、客待ち中の図柄表示系コードであるとステップD619に進み、客待ち中の図柄表示系コードでなければステップD631に進む。
ステップD620に進むと、図柄表示フラグ及び保留表示フラグをセットし、次にステップD621で背景制御ポインタを1だけ増加させる更新を実行し、その後ステップD631に進む。
ステップD628に進むと、図柄表示フラグ及び保留表示フラグをクリアし、次にステップD629で背景制御ポインタを1だけ増加させる更新を実行し、その後ステップD631に進む。。
ステップD634では、背景制御ポインタのポインタ位置の背景演出制御データを背景制御領域に格納し、その後リターンする。
ステップD632に進むと、前記表示ステータスコードが戻り位置に戻るであるか判定し、戻り位置に戻るであるとステップD635、D636を順次実行した後にリターンし、戻り位置に戻るでなければステップD633に進む。
ステップD633に進むと、前記表示ステータスコードが背景演出終了であるか判定し、背景演出終了であるとステップD637で背景制御ポインタの値としてNULL(設定無し)を設定した後にリターンし、背景演出終了でなければリターンする。
以上説明したルーチンによれば、時間制御ありの場合の背景表示の更新が実現される。
次に、前述の背景編集処理におけるステップD602で実行される動画インデックス設定処理の詳細について図127により説明する。
このルーチンが開始されると、まずステップD641で背景制御ポインタに基づいて背景の画像タイプが動画か判定し、動画であればステップD642に進み、動画でなければ本ルーチンの処理は不要であるためリターンする。
ステップD642に進むと、圧縮展開停止中(圧縮された動画データを展開する動作を停止中)か否か判定し、圧縮展開停止中でなければこのステップD642を繰り返し実行し、圧縮展開停止中であればステップD643乃至D650を順次実行してリターンする。即ち、ステップD643乃至D650の処理は、圧縮展開停止中に実行する。
ステップD644では、前記ステップD600で設定された背景インデックス番号をロードする。VDP312により1画面上に配置できるのは例えば128個のキャラクタ(ムービー、背景画像、図柄等含む)であり、これら128個のキャラクタに通し番号(インデックス又はインデックス番号という)が付与される。背景画像の場合のインデックス番号(即ち、背景インデックス番号)には、一番目(一番奥)のインデックスとして基本的に0がセットされる。但し、この時点では描画されないので対象の背景データは無効状態フラグがセットされる。
ステップD645では、VRAMインデックステーブル設定処理(説明省略)を実行する。
ステップD646では、デコード回路(圧縮データ伸長回路604)の初期化を指示する。
ステップD647では、背景動画表示のためのストリームデータの開始アドレスを設定する。
ステップD649では、実行オプションを設定する。実行オプションは、動画再生に関するVDP内部の各種設定を指示するものである。
ステップD650では、画像展開サブ領域の開始アドレスを設定する。画像展開サブ領域は、画像の展開に補助的に使われるメモリ領域である。
次に、前述の背景編集処理におけるステップD607で実行される背景動画データ編集処理の詳細について図128により説明する。
このルーチンが開始されると、ステップD661乃至D665を順次実行した後にリターンする。
ステップD661では、VDP312に描画を指示しようとしている画像データ(キャラクタデータ)の前述のインデックスを設定する。
ステップD663では、上記画像データの表示に使用する描画エフェクト(透明度の設定、奥行き情報、その他)を設定する。
ステップD664では、スプライトを仮想描画空間に貼り付ける。これは、上記画像をいわゆるスプライト描画により表示するための処理である。
ステップD665では、圧縮展開要求フラグをセットする。これは、動画が圧縮されているので、VDP312に展開を要求するための処理である。
次に、前述の背景編集処理におけるステップD608で実行される背景静止画データ編集処理の詳細について図129により説明する。
このルーチンが開始されると、ステップD671乃至D674を順次実行した後にリターンする。
ステップD671では、描画しようとしている画像データ(静止画)のVRAMへのロードをVDP312に指示する。なお、キャラクタデータ(いわゆるキャラデータ)は圧縮されているので、VRAMに展開してから作業を行う。画像データを指定すればVDP312が自動的にVRAMに展開する。
ステップD673では、上記画像の表示に使用する描画エフェクト(透明度の設定、奥行き情報、その他)を設定する。
ステップD674では、スプライトを仮想描画空間に貼り付ける。即ち、VRAM上に展開されたキャラデータをVDP312のフレームバッファに貼り付けるこれは、上記画像をいわゆるスプライト描画により表示するための処理である。
次に、前述の背景編集処理におけるステップD609で実行される背景オフデータ編集処理の詳細について図130により説明する。
このルーチンが開始されると、ステップD681乃至D683を順次実行した後にリターンする。
ステップD681では、画面の塗りつぶし色を設定する。
ステップD682では、描画エフェクトを設定する。
ステップD683では、画面を塗りつぶすためのスプライトを仮想描画空間に貼り付ける。
以上のステップD681乃至D683の処理は、キャラクタROM(画像ROM322)内のデータ(即ち、キャラクタデータ)を使用せず、VDP312の機能(四角形描画等)を使用して描画を行う処理である。この機能は、白や黒で画面全体がフェードイン、フェードアウトする時などに有効である。
次に、前述の演出表示編集処理におけるステップD554で実行される背景予告編集処理の詳細について図131により説明する。このルーチンでは、背景の前面であり、特図の後面である位置に表示される予告キャラクタの表示設定を行う。つまり、背景内において行われる予告の編集を行う。
このルーチンが開始されると、まずステップD691で背景予告表示制御中か判定し、背景予告表示制御中でなければ(即ち、背景予告演出を実行中でなければ)リターンし、背景予告表示制御中ならば(即ち、背景予告演出を実行中であれば)ステップD692で背景予告情報領域のアドレスをセットしてステップD693に進む。
ステップD694では、予告情報更新判定処理(後述する)を実行する。ステップD695では、予告表示データ編集処理(後述する)を実行する。
次に、前述の背景予告編集処理におけるステップD694(或いは、後述する予告編集処理1,2のステップD864、D914等)で実行される予告情報更新判定処理の詳細について図132、図133により説明する。
このルーチンが開始されると、まずステップD701で予告制御領域(ステップD692の背景予告情報領域に相当)に入力されている背景予告データが示す予告制御テーブルポインタのデータをロードしてステップD702に進む。
そして、上記予告制御テーブルには、各種のデータ種別(例えば、キャラクタの種類等を指定するための画像パターンテーブルアドレス、キャラクタの表示位置を指定するための座標テーブルアドレス、キャラクタの透過性を指定するための透過テーブルアドレスなど)があり、これらデータ種別毎に進行順にデータ(パラメータやテーブルアドレス等のデータ)が複数設定されており、これらデータを進行順に適宜参照して演出が行われる。そして、この予告制御テーブルに設定されているデータがテーブルアドレス(テーブルのデータが記憶された記憶領域を示す情報)である場合には、さらにこのテーブルアドレスのデータ(即ちアドレス)が示す領域に該当種別の制御データテーブル(例えば、座標テーブル、画像パターンテーブル、透過テーブル)があり、この制御データテーブルを参照して演出が行われる。また、この予告制御テーブルは、予め異なるものが複数登録されており、演出の種類や、演出中の各区間(シナリオ)に対して、何れかの予告制御テーブルが適宜選択されて使用される。その際、どの予告制御テーブルを使用するのかを指定するのが予告制御テーブルポインタのデータ(即ち、予告制御テーブルポインタという記憶領域に格納されているデータ)である。以下、例えば「予告制御テーブルポインタが指定する」といった記載は、詳細には、予告制御テーブルポインタのデータが指定するという意味である。
なお、予告制御テーブルを指定するポインタとして予告制御テーブルポインタがあるのと同様に、画像パターンテーブルを指定するポインタとして画像パターン制御ポインタがあり、座標テーブルを指定するポインタとして座標制御ポインタがあり、透過テーブルを指定するポインタとして透過制御ポインタがある。
ステップD705では、予告表示開始ディレイタイマがタイムアップしたか(値が0になったか)判定し、タイムアップした場合にはステップD715で予告用サウンド領域に演出に対応する音声番号を設定した後にリターンし、タイムアップしていない場合にはステップD706に進む。
ここで、表示フレームカウンタについて説明する。1つの予告演出中においてもシナリオがあり、その予告演出の各区間毎に時間値を設定する必要がある。表示フレームカウンタはその各区間の時間値の残時間をカウントするカウンタである。この表示フレームカウンタの値が0以上である間(即ち、前記残時間がある間)は、キャラクタの種類や表示座標等を毎フレーム更新してゆく必要があり、そのための処理がステップD707以降の処理である。
ステップD708では、現在実行している予告演出が最終データに達していないなら座標制御ポインタを1だけ増やす更新を実行する。
ステップD709に進むと、現在実行している予告演出に透過テーブル(テーブル状の透過データ)の設定があるか判定し、透過テーブルの設定があればステップD710に進み、透過テーブルの設定がなければステップD711に進む。
ステップD711では、表示フレームカウンタの値が0より大きいか判定し、0より大きいとステップD712で表示フレームカウンタの値を1だけ減らす更新を実行した後にステップD713に進み、0より大きくない場合にはステップD712を実行しないでステップD713に進む。
ステップD732では、予告制御テーブルポインタを1だけ増やす更新を実行する。
ステップD733では、その時点での予告制御テーブルポインタの値を、テーブルポインタ戻り値として設定する。
ステップD722に進むと、前記予告ステータスは通常更新となっているか判定し、通常更新でなければステップD723に進み、通常更新ならばステップD725に進む。
ステップD734では、制御テーブルポインタ戻り値(ステップD733で設定したテーブルポインタ戻り値)を、予告制御テーブルポインタの値として設定する。
ステップD725に進むと、予告表示開始ディレイタイマを設定し、次にステップD726で予告表示フレームカウンタ(前述の表示フレームカウンタ)を設定した後にステップD727に進む。
ステップD1201ではサブ間コマンドの設定があるか否かを判定し、設定がなければ、ルーチンを終了してリターンする。一方、サブ間コマンドの設定があれば、ステップD1202に進んでコマンド(サブ間コマンド)内容に対応するデータを設定する。データの設定とは、サブ間コマンドの内容に合わせて自己遊技機(自機)が動作を行うための演出動作テ−ブルを設定したり、サブ間演出実行フラグをセット、クリアしたりするものである。
なお、ステップD1201にてサブ間コマンドの設定がある状態は、遊技制御装置100から送信されてきた図柄の変動コマンドに基づいた変動表示ゲームを行っている最中に連動予告演出を行う予告を実行するタイミングとなると、その時の当該予告動作テーブル上にはサブ間コマンドが定義されていたという状況に相当し、このとき、サブ間通信によるサブ間予告演出の開始条件が成立した状態になる。
なお、図158のパケット構成例に示すように、本例では島の同一グループ内の全台のIDを指定する場合には送信先の端末IDとして「0F」を設定し、全端末が対象であることを通知する。また、特定の1台とやり取りするような演出の場合は、その台の端末IDを指定する。
一方、ステップD1203でサブ間データの送信中であれば、ルーチンを終了してリターンする。
ステップD1204を経ると、次いで、ステップD1205に進み、サブ間送信データ編集処理(図120)を行う。次いで、ステップD1206でサブ間送信要求フラグをセットする。サブ間送信要求フラグは、ステップD461の判定に使用されるもので、サブ間送信要求フラグがセットされていると、サブ間送信が開始されることになる。
前述したように、本例では、客待ちデモ同期のサブ間コマンドには、ackの返信を要求する内容が入っているが、「サブ間連動予告系コマンド」の場合も同様であるので、ステップD1207ではack待ちをするコマンドであるか否かを判定し、同コマンドであれば、ack待ちタイマの初期値をセットすることになる。
このように、自機においてある変動パターンを行うことになり、例えば予告態様Aが抽選されたとき、特図の図柄変動が進行していき、予告態様Aの発生タイミングが来ると、予告態様Aを実行するためのテーブルが予告制御領域に設定されて予告が実行される。そして、自機において予告態様Aのシナリオがテーブル上に定義されているが、そのテーブルに他機への送信コマンド(例えば、「サブ間連動予告系コマンド」)も定義されていると、前述したステップD1201でサブ間コマンドの設定があるという判定結果になる。
なお、他機としては「サブ間連動予告系コマンド」を受信し、そのコマンド(サブ間連動予告系コマンド)の指示に対する演出を実行すると決定したときに予告動作テーブルを設定して、サブ間連動予告を行うことになる。
但し、既述したように、サブ間連動予告系コマンドのうちの同期演出系コマンドである場合には、予告種別指定コマンド(第1遊技機間コマンド)を受信したときには準備のみ(テーブルの設定)を行い、その後実行指示コマンド(第2遊技機間コマンド)を受信したときに当該サブ間連動予告(同期演出)を行う。
次に、前述の背景予告編集処理におけるステップD695(或いは、後述する予告編集処理1,2のステップD865、D915等)で実行される予告表示データ編集処理の詳細について図134により説明する。本ルーチンは、予告演出のキャラクタ(ムービー等も含む。キャラROM(画像ROM322)内に保存された画像を指す)の描画指示コマンド(VDP312に対するコマンド)を作る処理である。次図以降(図135乃至図147)の処理も同様である。
このルーチンが開始されると、まずステップD741で、予告表示開始ディレイタイマの値が0より大きいか判定し、0より大きい場合にはリターンし、0より大きくない場合(0以下の場合)にはステップD742に進む。
ステップD743では、画像データ(即ち、キャラクタデータ)の各種パラメータ(画像データのID、幅、高さなど)を前記画像パターンテーブルから取得する。
ステップD744では、画像データの座標データを、座標制御ポインタが指定する座標テーブルから取得する。
ステップD745では、透過なしの透過データをセットする。透過データは、必要に応じ後述するステップD747で設定されるが、ここでは透過データのデフォルト値として、透過なしを設定する。
ステップD747では、透過データ(ステップD745でいったん透過なしに設定されているもの)を前記透過テーブルに対応したデータ(透過なしも有り得る)に差替える。
ステップD748では、ステップD743で取得したパラメータに対応する画像データ(キャラクタデータ)のVRAMへのロードを指示する。
ステップD749では、ステップD743で取得したパラメータやステップD744で取得した座標データに従って前記画像データの属性(色数、カラーパレット、座標等)を設定する。
ステップD750では、前記透過データに従って前記画像データの透過パラメータ(透過性のある画像にする透過制御を行うか否かや、透過性の程度など)を設定する。
ステップD751では、前記画像データの描画エフェクト(透明度の設定、奥行き情報他)を設定する。
ステップD752では、スプライトを仮想描画空間に貼り付ける。これは、上記画像(キャラクタ)をいわゆるスプライト描画により表示するための処理である。
次に、前述の演出表示編集処理におけるステップD555で実行される図柄編集処理の詳細について図135により説明する。
このルーチンが開始されると、まずステップD761で、図柄変動テーブル領域のデータ(図柄変動テーブルの例えば先頭アドレスの情報)がNULL(設定無し)か判定し、NULLである場合にはリターンし、NULLでない場合にはステップD762を実行した後にステップD763に進む。ここで、ステップD761では、後述するステップD781の「左図柄変動テーブル領域」、ステップD782の「左図柄制御領域内の変動テーブル領域」、ステップD785の「中図柄変動テーブル領域」、ステップD786の「中図柄制御領域内の変動テーブル領域」、ステップD789の「右図柄変動テーブル領域」、ステップD790の「右図柄制御領域内の変動テーブル領域」の全6領域が全てNULLかをチェックしている。
ステップD762では、上記図柄変動テーブル領域のデータによって指定される図柄変動テーブルのデータに基づいて図柄情報展開処理(後述する)を実行する。
なお、上記座標テーブル(X座標テーブル、Y座標テーブル)を指定するポインタとして座標制御ポインタ(X座標テーブルポインタとY座標テーブルポインタ)があり、上記透過テーブルを指定するポインタとして透過テーブルポインタがある。
また、図柄制御領域(中図柄制御領域、左図柄制御領域、及び右図柄制御領域)は、テーブルアドレス(図柄変動テーブルポインタのデータ)だけではなく、表示図柄番号、停止図柄番号、現在のフレームカウンタ、座標テーブルのテーブルポインタ等のデータが格納されるRAM(本例ではCPU311内のRAM)内の記憶エリアのグループ(構造体)であり、複数バイトで構成されている。このため、各図柄制御領域内は、複数の領域に分けれらるが、このうち、テーブルアドレス(図柄変動テーブルポインタのデータ)を記憶する領域を「変動テーブル領域」という。この「変動テーブル領域」としては、序盤変動テーブル用、前半変動テーブル用、後半変動テーブル用がそれぞれ設けられており、合計3領域ある。また、各図柄制御領域内において、座標テーブルのテーブルポインタ(X座標テーブルポインタ、Y座標テーブルポインタ)のデータ、或いは、透過テーブルのテーブルポインタ(透過テーブルポインタ)のデータを記憶する領域を、それぞれ、「X座標テーブル領域」、「Y座標テーブル領域」、「透過テーブル領域」という。
ステップD765では、上記ステップD764の設定に基づいて中図柄について現図柄表示編集処理(後述する)を実行し、ステップD766では、同様に中図柄について次図柄表示編集処理(後述する)を実行する。
ステップD768では、上記ステップD767の設定に基づいて左図柄について現図柄表示編集処理(後述する)を実行し、ステップD769では、同様に左図柄について次図柄表示編集処理(後述する)を実行する。
ステップD771では、上記ステップD770の設定に基づいて右図柄について現図柄表示編集処理(後述する)を実行し、ステップD772では、同様に右図柄について次図柄表示編集処理(後述する)を実行する。
次に、前述の図柄編集処理におけるステップD762で実行される図柄情報展開処理の詳細について図136により説明する。
このルーチンが開始されると、まずステップD781で、左図柄変動テーブル領域のデータ(即ち、左図柄用の図柄制御テーブルを指定するアドレス情報)がNULL(設定無し)か判定し、NULLである場合にはステップD785に進み、NULLでない場合にはステップD782乃至D784を順次実行した後にステップD785に進む。
ステップD783では、左図柄変動テーブル領域にNULLを設定する。
ステップD784では、ステップD782で左図柄制御領域に設定されたテーブルアドレスによって指定された左図柄用の図柄制御テーブルから、左図柄の各種制御パラメータを取得して格納する。
ここで、図柄の各種制御パラメータには、図柄制御テーブルの説明で既述したように、動作パターン、図柄更新情報、制御フレーム数、制御リピート数、X座標テーブルポインタ、Y座標テーブルポインタ、透過テーブルポインタなどがある。ここで、図柄更新情報は図柄を更新するか否かを制御する情報であり、制御フレーム数及び制御リピート数は後述する変動パラメータ更新処理で使用するパラメータである。
ステップD786では、中図柄変動テーブル領域のデータが示すテーブルアドレスを中図柄制御領域に設定する。詳しくは、中図柄制御領域内の各変動テーブル領域(序盤変動テーブル用、前半変動テーブル用、後半変動テーブル用)に、図柄変動テーブル領域のデータが示すテーブルアドレス(序盤変動テーブルにおける中図柄変動テーブルのアドレス、前半変動テーブルにおける中図柄変動テーブルのアドレス、後半変動テーブルにおける中図柄変動テーブルのアドレス)をそれぞれ設定する。
ステップD787では、中図柄変動テーブル領域にNULLを設定する。
ステップD788では、ステップD786で中図柄制御領域に設定されたテーブルアドレスによって指定された中図柄用の図柄制御テーブルから、中図柄の各種制御パラメータを取得して格納する。
ステップD790では、右図柄変動テーブル領域のデータが示すテーブルアドレスを右図柄制御領域に設定する。詳しくは、右図柄制御領域内の各変動テーブル領域(序盤変動テーブル用、前半変動テーブル用、後半変動テーブル用)に、図柄変動テーブル領域のデータが示すテーブルアドレス(序盤変動テーブルにおける右図柄変動テーブルのアドレス、前半変動テーブルにおける右図柄変動テーブルのアドレス、後半変動テーブルにおける右図柄変動テーブルのアドレス)をそれぞれ設定する。
ステップD791では、右図柄変動テーブル領域にNULLを設定する。
ステップD792では、ステップD790で右図柄制御領域に設定されたテーブルアドレスによって指定された右図柄用の図柄制御テーブルから、右図柄の各種制御パラメータを取得して格納する。
次に、前述の図柄編集処理におけるステップD765、D768、D771で実行される現図柄表示編集処理の詳細について図137により説明する。
このルーチンが開始されると、ステップD801乃至803を順次実行した後にステップD804に進む。
ステップD801では、図柄番号(現図柄として表示装置41に表示されるべき図柄番号)に対応するCG番号(画像データのID)を現図柄のCG番号として設定する。なお、数字のみ図柄の場合には、この設定は後述するステップD821で変更される。
ステップD802では、現図柄について、通常サイズでの幅、高さのデータと、透過なしのデータを設定する。なお、ここでの設定は、デフォルト値としての設定であり、後述するステップD816等が実行されると変更される。
なお、前記座標データ(X座標、Y座標のデータ)としては、原則的に、1フレーム単位毎の図柄の表示位置のデータ(絶対座標データ)が、座標テーブル(X座標テーブル、Y座標テーブル)上に必要なフレーム数分だけそろって並べられている。ここで、演出時間全体のフレーム数分の座標データを全て羅列した形で定義すれば、そのデータを順次使用するだけで済むので、座標の制御が非常に楽に行える(例えば、制御処理が簡素になる)。しかしこの場合、座標テーブルのデータ量が膨大になってしまうというデメリットがあるので、本実施例では、動きが周期的に繰り返されるような箇所毎にテーブルを分けて定義し、動作に該当するテーブルを適宜選択して使用する構成としている。この構成なら、状況に応じたテーブルを設定する処理や同一の動作を繰り返す制御を行わなくてはならないが、座標データ量を非常に少なくでき、高価なメモリ(ROM)の容量を格段に低減して原価低減に大きく貢献できる等のメリットがある。例えば、図柄が高速に下方向にスクロールを行う期間においてはしばらく同様の動きを繰り返すので、上から下へ移動する際のフレーム数分の座標データを1セット定義した座標テーブルを設けておいて、高速スクロール期間はその座標テーブルを繰り返し使用すれば事足りるのでデータ量が非常に少なくできる。どちらの構成でも図柄の座標制御が可能であるが、既述したように本実施例では後者の構成で制御を行っている。また本実施例では、X座標とY座標のテーブルを分けて定義し、必要に応じたそれぞれのテーブルを選択するようにしている(例えば、左図柄、中図柄、右図柄が揃ってが高速に下方向にスクロールを行う場合、各図柄のX座標は異なるがY座標は同じとなるので、X座標テーブルは図柄毎に異なるテーブルを使用し、Y座標テーブルは同一のテーブルを使用できるので、更なるデータ量の低減が見込める。)が、X座標とY座標、その他表示に関するパラメータを同一テーブルに定義するようにしても構わない。また、絶対座標で制御する例を提示したが、相対座標データ(前回位置からの移動量データ、或いは基準対象物からの距離データ等)で制御する構成としてもよい。以上説明した座標制御の構成(座標テーブルの構成等)については、図柄だけに限定されず、画面上に表示する全てのオブジェクト(キャラクタ)の座標制御についても同様である。
ステップD804では、前述のステップD784等で取得された動作パターンのデータが非表示を示すものか判定し、非表示であれば図柄を表示しないのでリターンし、非表示でなければステップD805に進む。
ステップD806に進むと、前記動作パターンのデータが拡大表示を示すものか判定し、拡大表示であればステップD816、D817を順次実行した後にステップD809に進み、拡大表示でなければステップD807に進む。
ステップD816では、現図柄について、拡大サイズでの幅、高さデータをセットする。
ステップD817では、現図柄について、拡大時のY座標データを算出して設定する。
ステップD818では、現図柄について、現サイズに対応する幅、高さデータを算出して設定する。
ステップD819では、現サイズに対応するY座標データを算出して設定する。
ステップD820では、数字のみ図柄での幅、高さデータをセットする。
ステップD821では、図柄番号に対応する数字のみ図柄のCG番号に変更する。
ステップD811では、VRAMへの現図柄の画像データ(ステップD801又はD821で設定されたCG番号に対応するもの)のロードを指示する。
ステップD813では、上記画像データの透過パラメータを透過データに基づいて設定する。
ステップD814では、上記画像データの描画エフェクトを設定する。
ステップD815では、上記画像のスプライトを仮想描画空間に貼り付ける。
以上の処理により、前述のステップD784、D788、D792で格納された各種制御パラメータのデータに対応した「現図柄」(左図柄、中図柄、或いは右図柄)を描画(表示)させるためのVDP312への指令が編集される。
次に、前述の図柄編集処理におけるステップD766、D769、D772で実行される次図柄表示編集処理の詳細について図138により説明する。
このルーチンが開始されると、まずステップD831で、図柄番号(例えばステップD801の現図柄の図柄番号の次の番号)を次図柄の番号としてロードし、その後ステップD832に進む。
ステップD832に進むと、ステップD831でロードした図柄番号に1を加算した番号が図柄番号上限値より大きいか判定し、大きくない場合にはステップD834に進み、大きい場合にはステップD833でロード値(ステップD831でロードした図柄番号)を0に変更した後にステップD834に進む。
ステップD834では、前記ロード値に対応するCG番号(画像データのID)を次図柄のCG番号として設定する。
ステップD835では、次図柄について、通常サイズでの幅、高さのデータと、透過なしのデータを設定する。なお、ここでの設定は、デフォルト値としての設定であり、後述するステップD849等が実行されると変更される。
ステップD837では、前述のステップD784等で取得された動作パターンのデータが非表示を示すものか判定し、非表示であれば図柄を表示しないのでリターンし、非表示でなければステップD838に進む。
ステップD838に進むと、前記動作パターンのデータが数字のみ図柄を示すものか判定し、数字のみ図柄であればこれ以上の設定は不要であるのでリターンし、数字のみ図柄でなければステップD840に進む。
ステップD849では、次図柄について、拡大サイズでの幅、高さデータをセットする。
ステップD850では、次図柄について、拡大時のY座標データを算出して設定する。
ステップD851では、次図柄について、現サイズに対応する幅、高さデータを算出して設定する。
ステップD852では、次図柄について、現サイズに対応するY座標データを算出して設定する。
ステップD844では、VRAMへの次図柄の画像データ(ステップD834で設定されたCG番号に対応するもの)のロードを指示する。
ステップD846では、上記画像データの透過パラメータを透過データに基づいて設定する。
ステップD847では、上記画像データの描画エフェクトを設定する。
ステップD848では、上記画像のスプライトを仮想描画空間に貼り付ける。
以上の処理により、前述のステップD784、D788、D792で格納された各種制御パラメータのデータに対応した「現図柄」に対する「次図柄」(左図柄、中図柄、或いは右図柄)を描画(表示)させるためのVDP312への指令が編集される。
次に、前述の演出表示編集処理におけるステップD556で実行される予告編集処理1の詳細について図139により説明する。このルーチンでは、特図の前面であり、保留表示の後面である位置に表示される予告キャラクタの表示設定を行う。
このルーチンが開始されると、まずステップD861で予告表示制御中か判定し、予告表示制御中でなければ(即ち、予告演出を実行中でなければ)リターンし、予告表示制御中ならば(即ち、予告演出を実行中であれば)ステップD862で予告情報領域のアドレスをセットしてステップD863に進む。
ここで、予告情報領域は、例えば前述の受信コマンド別初期化処理2で予告表示に使用する予告データ(予告用の制御テーブルの例えば先頭アドレスの情報)が設定される領域である。
ステップD864では、前述した予告情報更新判定処理を実行する。ステップD865では、前述した予告表示データ編集処理を実行する。
ステップD866に進むと、次の予告情報領域のアドレスに更新し、次にステップD867で全予告情報領域に対して編集が完了したか判定し、完了したならばリターンし、完了していなければステップD863に戻って処理を繰り返す。
次に、前述の演出表示編集処理におけるステップD557で実行される保留編集処理の詳細について図140により説明する。
このルーチンが開始されると、まずステップD871で、特図1の始動記憶の保留表示を実行するための特図1保留表示編集処理(後述する)を実行し、次にステップD872で、特図2の始動記憶の保留表示を実行するための特図2保留表示編集処理を実行し、その後リターンする。なお、特図1保留表示編集処理と特図2保留表示編集処理の違いは、飾り特図の種類の違い(特図1か特図2か)であるので、特図2保留表示編集処理についての説明は省略する。
次に、前述の保留編集処理におけるステップD871で実行される特図1保留表示編集処理の詳細について図141により説明する。
このルーチンが開始されると、まずステップD881で、保留表示制御中(即ち保留表示実行中)か否か判定し、保留表示制御中であればステップD882を実行した後にステップD883に進み、保留表示制御中でなければリターンする。
ステップD882では、保留画像データの幅、高さデータをセットする。
なおこの例では、4個の保留表示(実保留)の両側に同型の飾り表示を行うため、ステップD883乃至D895の処理を合計6回繰り返す構成となっている。
以下、ステップD884乃至D894の各処理を説明する。
ステップD885では、numの値に対応して、保留表示或いは前記飾り表示のための表示パターンに対応するCG番号を設定する。
ステップD886では、VRAMへの画像データ(上記CG番号のキャラクタデータ)のロードを指示する。
ステップD887では、上記画像データの属性を設定する。
ステップD889では、上記画像データの描画エフェクトを設定する。
ステップD890では、numの値に対応して、上記画像データのX座標、Y座標、幅、高さデータを算出する。
ステップD892では、保留移動テーブルポインタに対応させて上記画像データの座標を変更する。保留移動テーブルポインタは、前述の図柄変動テーブルポインタ等と同様に、保留表示を制御するためのポインタである。
ステップD893では、保留移動テーブルポインタのデータがテーブルの最後でなければ、保留移動テーブルポインタを更新する。
ステップD894では、上記画像データのスプライトを仮想描画空間に貼り付ける。
ステップD895では、前述したように、numの値が4未満である場合にはステップD883に戻り、numの値が4である場合にはリターンする。
次に、前述の特図1保留表示編集処理におけるステップD884で実行される保留表示パターン編集処理の詳細について図142により説明する。なおこのルーチンは、前述のnumの値に対応する保留表示(或いは飾り表示)1個分について実行される。
このルーチンが開始されると、まずステップD901で、numの値に対応する保留表示(或いは飾り表示)について、保留消灯の表示パターンを設定する。なお、このルーチンで保留消灯の表示パターン(保留がない状態を示すキャラクタ情報)が設定されると保留がない状態を示すキャラクタが表示され、このルーチンの後述するステップD906が実行されると、保留点灯の表示パターン(保留がある状態を示すキャラクタ情報)が設定され、保留がある状態を示すキャラクタが表示される。なお、遊技機の仕様によっては、制御対象となる保留がある場合にのみ保留キャラクタを表示し、制御対象となる保留がない場合には保留キャラクタは非表示とする態様もある。このような態様の場合、保留消灯の表示パターンが設定された時には、このルーチンを抜けた後、対象となる保留数のキャラクタ表示に関する制御を実行しない態様もあり得る。
ステップD903に進むと、現在の保留数(主基板からのコマンドにより指令されている始動記憶の保留数の最新値)が、入力パラメータ(numの値)よりも大きいか判定する。numの値よりも大きい場合には、ステップD904に進む。一方、現在の保留数がnumの値以下である場合には、numの値に対応する実保留を点灯させるべきでないのでリターンする。
そしてステップD906に進むと、numの値に対応する保留表示(或いは飾り表示)について、保留通常点灯の表示パターンを設定し、その後リターンする。
ここで、上記保留情報領域には、前述のステップD265の処理によって、主基板からのコマンドにより指令されている始動記憶の保留数の最新値に基づいて、表示パターンのデータ(保留消灯か保留点灯かの情報を含む)が適宜更新して登録されている。
なお、上記ステップD906では、前述のステップD268による設定を用いて、保留表示の点灯色を設定したり、他にも保留表示を通常とは異なるキャラクタ形状に変更するなどして、このような保留表示の違いによる先読み演出(大当り等を予告する演出)を行ってもよい。
次に、前述の演出表示編集処理におけるステップD558で実行される予告編集処理2の詳細について図143により説明する。このルーチンでは、保留表示の前面であり、縮小図柄や第4図柄の後面である位置に表示される予告キャラクタの表示設定を行う。予告として目立たせるためにかなり前面に押し出した演出表示となっているが、縮小図柄や第4図柄よりも後面としているので、この演出を行っている間も遊技者が図柄を視認できるように配慮されている。
このルーチンが開始されると、まずステップD911で前面予告表示制御中(即ち、前面予告演出実行中)か判定し、前面予告表示制御中でなければリターンし、前面予告表示制御中ならばステップD912で前面予告情報領域のアドレスをセットしてステップD913に進む。
ここで、前面予告情報領域は、例えば前述の受信コマンド別初期化処理2で前面予告表示に使用する前面予告データ(前面予告用の制御テーブルの例えば先頭アドレスの情報)が設定される領域である。
ステップD914では、前述した予告情報更新判定処理を実行する。ステップD915では、前述した予告表示データ編集処理を実行する。
次に、前述の演出表示編集処理におけるステップD559で実行されるサブ間連動予告編集処理の詳細について図144により説明する。なお、本実施例ではサブ間連動予告を前面予告(前記予告編集処理2によるもの)より目立たせる意図を持って前面予告の前に表示されるようにこのルーチンを配置しているが、サブ間連動予告のキャラクタ表示はこの位置に限定されない。サブ間連動予告は、例えば背景内にキャラクタが出現するような演出形態でもよいし、特図と絡めた演出形態としてもよい。尚、サブ間連動予告として遊技者に対するメッセージ表示のような演出を行う場合は、本実施例のような表示位置としておくとメッセージが図柄等で隠れないという利点がある。
次にステップD921に進むと、サブ間連動予告表示制御中(即ち、サブ間連動予告演出実行中)か判定し、サブ間連動予告表示制御中でなければリターンし、サブ間連動予告表示制御中ならばステップD922でサブ間連動予告情報領域のアドレスをセットしてステップD923に進む。
ここで、サブ間連動予告情報領域は、例えば前述の受信コマンド別初期化処理2でサブ間連動予告表示に使用するサブ間連動予告データ(サブ間連動予告用の制御テーブルの例えば先頭アドレスの情報)が設定される領域である。
ステップD924では、前述した予告情報更新判定処理を実行する。ステップD925では、前述した予告表示データ編集処理を実行する。
次に、前述の演出表示編集処理におけるステップD560で実行される縮小図柄編集処理の詳細について図145により説明する。なお、縮小図柄とは、リーチ中のムービー演出の時などに、表示装置41の画面隅に変動中を明示するために小さく表示して変動させる飾り図柄(例えば通常の図柄を縮小した形態のもので、左、中、右の図柄がある)である。本ルーチンは、この縮小図柄を変動表示するための処理である。
このルーチンが開始されると、まずステップD931で縮小図柄表示制御中(即ち、縮小図柄表示実行中)か判定し、縮小図柄表示制御中でなければリターンし、縮小図柄表示制御中ならばステップD932乃至D937を順次実行した後にリターンする。
ステップD933では、上記ステップD932の設定に基づいて中図柄について縮小図柄表示編集処理(説明省略する)を実行する。
ステップD934では、前述の中図柄制御領域の先頭アドレスを設定する。
ステップD935では、上記ステップD934の設定に基づいて中図柄について縮小図柄表示編集処理(説明省略する)を実行する。
ステップD936では、前述の右図柄制御領域の先頭アドレスを設定する。
ステップD937では、上記ステップD936の設定に基づいて右図柄について縮小図柄表示編集処理(説明省略する)を実行する。
次に、前述の演出表示編集処理におけるステップD561で実行される第4図柄編集処理の詳細について図146、図147により説明する。第4図柄とは、やはりムービー演出の時などに、表示装置41の画面端に変動中を明示するために小さく表示して変動させる飾り図柄(通常の図柄とは異なる形態のもの)である。本例では、特図1と特図2について上下一対の図柄がある(即ち、特図1第4図柄上、特図1第4図柄下、特図2第4図柄上、特図2第4図柄下がある)。
このルーチンが開始されると、まずステップD941で第4図柄表示制御中(即ち、第4図柄表示実行中)か判定し、第4図柄表示制御中でなければリターンし、第4図柄表示制御中ならばステップD942に進む。なお、前述のステップD275によって第4図柄ステータスが変動中に設定されていると、上記ステップD941では、第4図柄表示制御中と判定される。
ステップD943では、変動初期化フラグをクリアする。
ステップD944では、第4図柄変動パラメータ(第4図柄変動タイマ、変動用図柄番号)を初期化する。
ステップD947に進むと、特図2第4図柄(特図2第4図柄上及び特図2第4図柄下)は変動中か判定し、変動中ならばステップD955で特図2の変動用図柄番号に対応するCG番号をセットした後にステップD949に進み、変動中でなければステップD948で特図2停止図柄番号に対応するCG番号をセットした後にステップD949に進む。
ステップD950では、第4図柄変動タイマの値が切替判定値より大きいか判定し、大きい場合にはステップD951を実行した後にステップD952に進み、大きくない場合にはステップD961に進む。
ステップD951では、変動用図柄番号を1だけ増やす更新を行う。
ステップD952に進むと、変動用図柄番号が上限値より大きいか判定し、大きい場合にはステップD953で変動用図柄番号を0に設定した後にステップD961に進み、大きくない場合にはステップD953を実行しないでステップD961に進む。
ステップD961では、特図1第4図柄上の座標(X座標とY座標のデータ)をセットする。
ステップD962では、特図1第4図柄上の画像データ(前記ステップD946又はD954で設定されたCG番号の画像データ)のVRAMへのロードをVDP312に指示する。
ステップD963では、上記画像データの属性を設定する。
ステップD964では、上記画像データの表示に使用する描画エフェクトを設定する。
ステップD965では、上記画像データのスプライトを仮想描画空間に貼り付ける。
なお、上記ステップD961、D963、D964で設定するデータは、例えば、規定値として予め設定されたデータが使用される(以下、他の第4図柄について同様)。
ステップD967では、特図1第4図柄下の画像データ(前記ステップD946又はD954で設定されたCG番号の画像データ)のVRAMへのロードをVDP312に指示する。
ステップD968では、上記画像データの属性を設定する。
ステップD969では、上記画像データの表示に使用する描画エフェクトを設定する。
ステップD970では、上記画像データのスプライトを仮想描画空間に貼り付ける。
ステップD972では、特図2第4図柄上の画像データ(前記ステップD948又はD955で設定されたCG番号の画像データ)のVRAMへのロードをVDP312に指示する。
ステップD973では、上記画像データの属性を設定する。
ステップD974では、上記画像データの表示に使用する描画エフェクトを設定する。
ステップD975では、上記画像データのスプライトを仮想描画空間に貼り付ける。
ステップD977では、特図2第4図柄下の画像データ(前記ステップD948又はD955で設定されたCG番号の画像データ)のVRAMへのロードをVDP312に指示する。
ステップD978では、上記画像データの属性を設定する。
ステップD979では、上記画像データの表示に使用する描画エフェクトを設定する。
ステップD980では、上記画像データのスプライトを仮想描画空間に貼り付ける。
次に、前述の演出表示編集処理におけるステップD562で実行される大当りラウンド編集処理の詳細について図148により説明する。このルーチンは、大当りのラウンド中に加え、大当りのファンファーレ、インターバル、エンディングでの演出も含めた大当り時の演出についての処理である。また、このルーチンの処理は、描画するものを編集するのではなく、各シーンの時間値等を制御するための処理である。同一ラウンド中でも、メッセージを表示したり、アニメーションを再生したりといった演出の流れがあり、この流れを制御する処理である。なお、演出内容によって、設定する必要のあるデータは変化する。大当り中の演出なら、動画の変更指示や、音声変更指示などがあり、その流れを制御しているのが本ルーチンである。
ステップD992では、ラウンド制御ポインタ(例えば、前述の受信コマンド別初期化処理2で設定される大当り用の制御テーブル内の制御データの位置を示すポインタ)に対応する演出内容(即ち、ラウンド制御ポインタによって指定される上記制御データによって決まる演出内容)が大当りの演出開始であるか判定し、演出開始でなければステップD996に進み、演出開始であればステップD993乃至D995を実行した後にステップD996に進む。
ステップD994では、ラウンド制御ポインタに対応するデモ制御タイマの値を設定する。
ステップD995では、ラウンド制御ポインタに対応するその他の各種データを設定する。
ステップD996に進むと、デモ制御タイマの値を1だけ減らす更新を行い、次のステップD997でデモ制御タイマの値を判定し、0でなければリターンし、0ならばステップD998に進む。
ステップD1001に進むと、ラウンド制御ポインタに対応するデモ制御タイマの値を設定し、次にステップD1002でラウンド制御ポインタに対応するその他の各種設定を行う。
次に、前述の演出表示編集処理におけるステップD565、D567、D569で実行される変動パラメータ更新処理の詳細について図149、図150により説明する。本ルーチンは、図柄変動においてのパラメータを更新する為の処理である。
このルーチンが開始されると、まずステップD1011で、図柄変動テーブル領域のデータ(図柄変動テーブルの例えば先頭アドレスの情報)がNULL(設定無し)か判定し、NULLである場合にはリターンし、NULLでない場合にはステップD1012乃至D1015を順次実行した後にステップD1016に進む。
ステップD1013乃至D1015では、前記図柄制御領域の該当領域から、図柄更新情報、制御フレーム数、制御リピート数のデータをそれぞれロードする。
ステップD1017に進むと、その時点のX座標テーブルポインタの値によって指定されるX座標テーブル内の制御データがX座標テーブル内の最後のデータでなければ、X座標テーブルポインタの値を1だけ増やす更新を行い、その後ステップD1018に進む。この更新により、X座標テーブル内の指定位置が次の位置になり、X座標テーブル内の次の位置の制御データが指定されることになる。
ステップD1019に進むと、その時点のY座標テーブルポインタの値によって指定されるY座標テーブル内の制御データがY座標テーブル内の最後のデータでなければ、Y座標テーブルポインタの値を1だけ増やす更新を行い、その後ステップD1020に進む。この更新により、Y座標テーブル内の指定位置が次の位置になり、Y座標テーブル内の次の位置の制御データが指定されることになる。
ステップD1021に進むと、その時点の透過テーブルポインタの値によって指定される透過テーブル内の制御データが透過テーブル内の最後のデータでなければ、透過テーブルポインタの値を1だけ増やす更新を行い、その後ステップD1022に進む。この更新により、透過テーブル内の指定位置が次の位置になり、透過テーブル内の次の位置の制御データが指定されることになる。
ステップD1023に進むと、制御フレーム数が0か判定し、0である場合にはステップD1024に進み、0でない場合にはステップD1031に進む。
ステップD1024に進むと、制御リピート数を1だけ減らす更新を行い、次にステップD1025でX座標テーブルポインタ、Y座標テーブルポインタ、及び透過テーブルポインタを初期化する(即ち、各テーブルの例えば先頭位置を指定する初期値に再設定する)処理を実行した後にステップD1026に進む。なお、制御リピート数は、ステップD1015でロードされた値である。
ステップD1027に進むと、表示する図柄の図柄番号を1だけ増やす更新を行い、次にステップD1028で前記図柄番号が図柄上限値を超えたか判定し、超えた場合にはステップD1029で前記図柄番号を0に設定した後にステップD1030に進み、超えていない場合にはステップD1029を実行しないでステップD1030に進む。なお、このステップD1027の更新(図柄の切替)や前記ステップD1017やD1019の更新(図柄位置の移動)によって、図柄が例えば上下にスクロールしつつ切り替る図柄変動の表示が実現されることになる。またステップD1028、D1029は、図柄の変動が一巡したら最初の図柄に戻すための処理である。
ステップD1041に進むと、図柄変動テーブルポインタを更新し、その後ステップD1042に進む。図柄変動テーブルポインタを更新すると、各パラメータ(動作パターン、図柄更新情報、…など)が、前記図柄制御テーブルの次の位置(次の行)へと切り替わる。なお本例では、以上の説明から分かるように、制御フレーム数が0になる度にステップD1024で制御リピート数が減少し、この結果制御リピート数が0になったときにステップD1041以降に進む。したがって、ステップD1041に進むことによる図柄変動テーブルポインタの更新は、制御フレーム数も制御リピート数も0になったときに実行される。
ステップD1043に進むと、前記動作パターンのデータに対応する前半変動テーブルに図柄変動テーブルを切り替えて、この前半変動テーブルの先頭アドレスのデータを図柄変動テーブルポインタの値として設定し、その後ステップD1044に進む。
ステップD1045に進むと、前記動作パターンのデータに対応する後半変動テーブルに図柄変動テーブルを切り替えて、この後半変動テーブルの先頭アドレスのデータを図柄変動テーブルポインタの値として設定し、その後ステップD1046に進む。
ステップD1047では、差し替える図柄番号を図柄送り数を基に停止図柄から逆算する。
ステップD1048では、ステップD1047で算出した図柄番号を表示図柄領域に格納する。
ステップD1049では、図柄変動テーブルポインタを更新する。
ステップD1051に進むと、ステップD1051乃至D1052を順次実行した後にステップD1053に進む。
ステップD1051では、図柄変動テーブルポインタを更新する。
ステップD1052では、リーチラインを表示するための飾り図柄予告編集処理(詳細説明省略)を実行する。
ステップD1054に進むと、ステップD1054乃至D1055を順次実行した後にステップD1056に進む。
ステップD1054では、保留表示移動制御を行うための保留表示移動テーブル(前述した保留移動テーブルに相当)を設定する。これにより、例えば前述したステップD891の判定で保留座標移動ありと判定され、保留座標の移動(即ち、保留表示移動制御)が実行される。
ステップD1055では、図柄変動テーブルポインタを更新する。
ステップD1057に進むと、ステップD1057乃至D1058を順次実行した後にステップD1059に進む。
ステップD1057では、保留表示テーブルのデータをNULLに設定する。これにより、例えば前記ステップD881で保留表示制御中でないと判定されて保留表示がされなくなる。
ステップD1058では、図柄変動テーブルポインタを更新する。
ステップD1060に進むと、ステップD1060乃至D1061を順次実行した後にステップD1062に進む。
ステップD1060では、リーチ種別番号に対応するリーチ名表示テーブルを前面予告情報領域に設定する。これにより予告編集処理2によってリーチ名表示が実行される。
ステップD1061では、図柄変動テーブルポインタを更新する。
ステップD1063に進むと、動作パターンポインタがテーブル最終データか否か(即ち、図柄制御テーブルの動作パターンの項目において、現在指定されている動作パターンのデータ位置が最後か否か)判定し、最終データであればステップD1064で図柄変動テーブルポインタの値を1だけ減らす更新をした後にステップD1065に進み、最終データでなければステップD1064を実行しないでステップD1065に進む。ここで、ステップD1063、D1064によれば、最終データまで進むと最終行から2行目の位置に戻ってその2行目の動作を繰り返し行うように制御される。但し、このような構成に限らず、例えば、戻り位置は動作毎に異なるように設定する態様でもよい。この態様の場合、ステップD1064では、例えば「図柄変動テーブルポインタを戻り位置の値に設定する」という処理を実行することになる。
ステップD1067では、対応する図柄音の出力要求をセットする。
なお、ステップD1065によれば、図柄制御テーブルの行が変わる度に(即ち、図柄変動テーブルポインタが更新される度に)、この図柄制御テーブルの行のデータがROM(本例の場合、PROM321)からRAM(本例の場合、CPU311内のRAM)の図柄制御領域にそれぞれコピーされる。その後は図柄制御テーブルの次の行に移るまで、RAMの図柄制御領域から必要なデータ(ポインタのデータ含む)を取り出して(ロードして)それを基に図柄表示の制御処理が行われる。これは、RAMの中でないと現在処理しているテーブルアドレスの値やタイマ値等の更新ができないためである。
次に、前述のメイン処理におけるステップD30で実行されるサウンド制御処理の詳細について図151により説明する。なお本例は、0〜3までの4チャンネルを使用し、各チャンネルに2トラック使用してステレオになっている例である。
このルーチンが開始されると、チャンネル番号を初期値1から増分1だけ増加させつつ終値3になるまで、ステップD1071乃至ステップD1080を繰り返し実行し、その後リターンする。即ち、ステップD1071ではルーチン開始直後はチャンネル番号を1としてステップD1072に進む。ステップD1080では、チャンネル番号が3未満である場合にはステップD1072に戻り、チャンネル番号が3である場合にはリターンする。そしてステップD1071に戻ると、チャンネル番号の値を1だけ増加させてステップD1072に進む。
ステップD1074では、曲情報領域を0クリアする。
ステップD1075では、ステップD1072でロードした曲番号に基づいて、音源LSI313に対してサウンド出力の設定を行うサウンド出力処理(詳細後述する)を実行する。
ステップD1078では、エフェクト情報領域を0クリアする。
ステップD1079では、ステップD1076でロードしたエフェクト番号に基づいて、音源LSI313に対してサウンドエフェクト出力の設定を行うサウンドエフェクト出力処理(詳細後述する)を実行する。
ステップD1080に進むと、前述したように、チャンネル番号が3未満である場合にはステップD1071に戻り、チャンネル番号が3である場合にはリターンする。
次に、前述のサウンド制御処理におけるステップD1075で実行されるサウンド出力処理の詳細について図152により説明する。
このルーチンが開始されると、まずステップD1091乃至D1095を順次実行した後にステップD1096に進む。
ステップD1091では、チャンネル番号を2倍してトラック番号を算出する。なお、ステレオで2トラック使用しているため、ステレオの場合、奇数トラックが左チャンネル、偶数トラックが右チャンネルとなっている。
ステップD1093では、前記音番号に対応するモノラル/ステレオ情報を取得する。
ステップD1094では、前記音番号に対応するループ情報を取得する。
ステップD1095では、前記音番号に対応する音声フェード情報を取得する。
ステップD1096に進むと、チャンネル番号が0か判定し、0でない場合にはステップD1099に進み、0ならばD1097乃至D1098を順次実行した後にステップD1099に進む。
ステップD1099に進むと、ステップD1099乃至D1108を順次実行した後にリターンする。
ステップD1100では、前記トラック番号とステップD1093で取得したモノラル/ステレオ情報に対応するM/Sデータ(モノラルとするかステレオとするかを制御するデータ)を設定する。
ステップD1101では、前記トラック番号に対応する左チャンネルボリュームを設定する。
ステップD1102では、前記トラック番号に対応する右チャンネルボリュームを設定する。
ステップD1104乃至D1107では、前記ループデータ、前記M/Sデータ、前記音声フェード情報、及び前記フレーズ番号を、それぞれ音源LSI313のレジスタに設定する。
そしてステップD1108では、該当トラックの再生を開始する。
次に、前述のサウンド制御処理におけるステップD1079で実行されサウンドエフェクト出力処理の詳細について図153により説明する。
このルーチンが開始されると、まずステップD1111でチャンネル番号を2倍してトラック番号を算出し、その後ステップD1112に進む。
ステップD1112に進むと、エフェクト番号が1(再生停止)か判定し、1ならばステップD1115で該当トラックの再生を停止した後にステップD1116に進み、1でない場合にはステップD1113に進む。
ステップD1116に進むと、チャンネル番号が0か判定し、0でなければリターンし、0ならばステップD1117で効果音番号(即ち、エフェクト番号=1)を現在出力フレーズの効果音番号として格納した後にリターンする。
ステップD1118に進むと、フェード間隔データを前記レジスタに設定し、次にステップD1119で該当トラックのフェードイン実行を音源LSI313に指示した後にリターンする。
ステップD1114に進むと、エフェクト番号が3(フェードアウト)か判定し、3ならばステップD1120に進み、3でなければリターンする。
ステップD1120に進むと、フェード間隔データを前記レジスタに設定し、次にステップD1121で該当トラックのフェードアウト実行を音源LSI313に指示した後にリターンする。
次に、サブ間受信割込み処理について図154により説明する。
このルーチンは、例えば、演出制御装置300のCPU311のシリアル受信バッファ(図示省略)に無線モジュール360から1個の受信データ(本例では、1バイト分のデータ)が格納されて受信フラグがセットされることによって割込みが発生して開始される。なお、受信フラグはCPU311内部のレジスタであり、前記シリアル受信バッファに受信データが格納されると、セットされる(即ち、前記レジスタにフラグがセットされたことを示すデータが設定される)。
このルーチンが開始されると、まずステップD1131で、1個の受信データを前記シリアル受信バッファから読み込み、ステップD1132に進む。
受信パケット解析処理では、受信したデータがサブ間通信データとして正常なものか及び正常であるが1パケット分(この場合12バイト分)のデータが受信されていないか解析する。そして、正常でなければ少なくとも今回ステップD1151で受信したデータを廃棄すべく受信カウンタ減算値を返し、正常であるが1パケット分のデータが未だ受信されていない場合には、受信継続すべきとして受信継続コードを返す。また、正常であり、かつ1パケット分のデータが受信されている場合には受信データの登録(所定領域へのコピー)を実行し受信カウンタ減算値として0を返す(詳細後述する)。
ステップD1138では、ステップD1136の受信パケット解析処理から返された受信カウンタ減算値を現在の受信カウンタの値から減算する演算を行い、この演算結果を新たな受信カウンタの値として設定し、その後ステップD1139に進む。
ステップD1141に進むと、ステップD1136での解析の結果として受信パケットインデックスがステップD1140で更新されたか判定し、更新された場合にはステップD1142及びD1143を実行した後にリターンし、更新されていない場合にはステップD1142及びD1143を実行しないでリターンする。
ステップD1143では、前述の受信フラグをクリアする(即ち、前記レジスタにフラグがクリアされたことを示すデータを設定する)。
次に、上述のサブ間受信割込み処理におけるステップD1136で実行される受信パケット解析処理の詳細について図155、図156により説明する。
このルーチンが開始されると、まずステップD1151で、受信パケットインデックスの値に対応するサブ間通信データバッファ領域の受信データ(本例では、1バイト分のデータ)の値をロードし、ステップD1152に進む。
ステップD1156に進むと、受信カウンタの値から求められる全受信データの容量がサブ間送信データの1パケット分のデータ長の規定値(本例の場合、12バイト)よりも小さいか判定し、小さい場合には受信データが不足である(未だ12バイト分の受信データが格納されていない)のでステップD1165で受信継続コードを返した後にリターンし、小さくない場合には1パケット分以上の受信データがあるのでステップD1157に進む。
ステップD1158に進むと、ステップD1157でロードした値が規定値(例えば03H)であるか判定し、規定値であればステップD1159に進み、規定値でなければステップD1164で受信カウンタ減算値として1を返した後にリターンする。
ステップD1159に進むと、受信データのパケット先頭からデータ長−2までのチェックサム(即ち、STXからSTSまでのデータのチェックサム)を算出し、次にステップD1160でサブ間通信データバッファ領域におけるsum領域からチェックサム(SUM)のデータをロードし、その後ステップD1161に進む。
ステップD1171に進むと、サブ間通信データバッファ領域の送信先ID領域から送信先ID(DID)のデータをロードし、さらに、このロードしたデータの上位ビットをグループIDとして抽出し、下位ビットを端末IDとして抽出し、その後ステップD1172に進む。
ステップD1173に進むと、ステップD1171で抽出した端末IDの値が自分の端末IDと一致しているか判定し、一致していれば正常であるので受信データに対応した演出を行うべくステップD1175乃至D1181を実行した後にリターンし、不一致であればステップD1174に進む。
ステップD1176では、サブ間通信データバッファ領域のsb_mode領域からサブ間コマンドMODE(SB_MODE)のデータをSB_MODE領域にコピーする。
ステップD1177では、サブ間通信データバッファ領域のsb_act領域からサブ間コマンドACT(SB_ACT)のデータをSB_ACT領域にコピーする。
ステップD1178では、サブ間通信データバッファ領域のゲーム状態領域からゲーム状態STSのデータをサブ間コマンドゲーム状態領域にコピーする。
ステップD1180では、データ長の規定値(本例の場合、12)を現在の受信カウンタの値から減算する演算を行い、この演算結果を新たな受信カウンタの値として設定する。これにより、ステップD1179までの処理で処理済みの受信データ(正常なデータ)が1パケット分破棄される。
ステップD1181では、受信カウンタ減算値として0を返す。
ステップD1182に進むと、受信カウンタ減算値としてデータ長規定値(本例の場合、12)を返した後にリターンする。なお、ステップD1182に進むのは、受信データが異常な無効データの場合であるので、この受信データ(1パケット、12バイト分)を全て破棄させるため、データ長規定値を受信カウンタ減算値として返している。
次に、サブ間送信割込み処理について図157により説明する。
このルーチンは、例えば、演出制御装置300のCPU311のシリアル送信バッファ(図示省略)が空になり(即ち、CPU311のシリアル通信機能によりシリアル送信バッファの送信データが全て送信されて消去され)、送信フラグがセットされると割込みが発生して開始される。なお、送信フラグはCPU311内部のレジスタであり、前記シリアル送信バッファが空になると、セットされる(即ち、前記レジスタにフラグがセットされたことを示すデータが設定される)。
ステップD1194では、1バイトのデータが1つ送信されたので、ステップD1191で判定されるデータ送信数を1だけ減らす更新を行う。
ステップD1195では、前述の送信フラグをクリアする。
次に、サブ間通信のパケット構成例を図158により説明する。
本例のサブ間通信のパケット構成は、図の上側の表に示すようなデータ構成となっている。各データの説明が図の下側に記載してある。即ち、1バイトのデータがNo.1からNo.12まで合計12個あり、全体の容量(1パケットの容量)は12バイトである。
No.2は、パケットサイズ、即ちサブ間送信データ数(SIZE)のデータ(この場合、12バイトを示すデータ)である。
No.3は、送信元ID(SID)のデータ(端末ID及びグループID)である。
No.4は、送信先ID(DID)のデータ(端末ID及びグループID)である。なお、送信元ID(SID)と送信先ID(DID)のデータは、それぞれ、1バイトのうちの上位ビットがグループID、下位ビットが端末ID(及びブロードキャスト)となっている。ここで、端末IDの範囲は16進数で例えば00乃至0Eの範囲となっており、上記下位ビットのデータが0Fのときには前述のブロードキャストコードのデータとして取り扱われる構成となっている。
No.6は、西暦コード(YEAR)のデータ(例えば西暦下2桁)である。
No.7は、サブ間機種コード(TYPE)のデータである。
No.8は、サブ間コマンドMODE(SB_MODE)のデータである。
No.9は、サブ間コマンドACT(SB_ACT)のデータである。
No.10は、自機のゲーム状態を表すSTSのデータである。
No.11は、STXからSTSまでのデータのチェックサムある。
No.12は、パケット終端を表すパケット終了コード(ETX)のデータ(例えば03H)である。
なお、以上説明したサブ間通信のパケット構成例は、あくまで一例であり、各種の態様があり得る。例えば、データは各々1バイト構成でなくてもよいし(例えば、機種コードを複数バイトにするなど)、送る順番も上記構成例の態様に限られない。また、他の意味を持つデータがあってもよいし、逆にデータ数が上記構成例よりも少なくてもよい。また、送信順において、例えば「メーカコード」を2番目に持ってくる態様としてもよい。この態様であると、他メーカの遊技機からのコマンドを効率良く破棄したり、逆に他メーカとのコラボするために対応する受信処理(他メーカコマンド受信処理)に分岐させて効率良く処理したりすることができる。ここで、他メーカコマンド受信処理とは、メーカ毎でコマンド形態が違う場合に、他メーカのコマンド形態に対応したコマンド受信をするための処理である。
前述したような各プログラムにより、遊技制御装置100からコマンドが演出制御装置300に送信され、このコマンドに基づく演出制御装置300の制御によって各演出手段(表示装置41、盤装飾装置42、枠装飾装置43、盤演出装置44、枠演出装置45、スピーカ12a,12b等)による各種演出が実行される。
以下では、そのうちの本発明の特徴部分に関連するサブ間演出(サブ間通信を利用して複数の遊技機で行う連携演出)の制御の詳細及び作用効果について説明する。
ところが、例えば主基板からのコマンドは優先度が高いため、サブ間通信のコマンドを受信しても主基板からの優先度の高い処理を行う必要が生じて直ちにサブ間通信のコマンドに対応する演出を実行できないという状況が考えられる。優先処理が終了し、サブ間コマンドに関する処理を実行できるようになった時点から演出の準備を始めても他台では既に演出を開始してしまい、一部の遊技機だけがずれた演出を行ってしまう虞があるという問題がある。
また、前述した特許文献1には、他機の演出情報に基づき自機で関連する演出を実行可能な遊技機について記載されている。しかし、引用文献1の遊技機は、1回の指示により同期演出を行っている(詳細な説明はない)ため、上記問題を解決できていない。
図159及び図160は、特定の遊技機D(予告発生台)から他の遊技機に同期演出のためのサブ間コマンドが送信される直前に他の遊技機Aで主基板からのコマンドの送信が行われた場合の例を示している。この例では、図159の例えば上段(1段目)に示すように、連携演出を行う同一グループの遊技機として遊技機A〜Fが横並びに6台設置されている。6台の遊技機は、演出制御装置300のプログラムが同一な同一機種(例えば、全てパチンコ機1と同一機種)か、少なくとも前記プログラムのサブ間通信に関する部分が共通なもの(例えば、同じ名前でも性能が違う機種)である。また、各遊技機A〜Fの各演出制御装置300のプログラムには、それぞれ、前述のフローチャートで説明したサブ間通信に関する処理が全て盛り込まれている。
なお図160等では、第1演出コマンドを「第1コマンド」と簡略化して記載し、第2演出コマンドを「第2コマンド」と簡略化して記載している箇所がある。
また、上記具体例では、サブ間コマンドに対して全ての遊技機で同じ演出(同じ予告用キャラクタ画像の表示)を行っているが、受信した遊技機での遊技状態や大当りの期待度等に応じて予告演出の態様(例えば、トラのキャラクタAの態様)を変化させ遊技機毎に異なる態様での連携演出を行ってもよい。例えば、大当り中に予告を行う場合には当該キャラクタA出現に伴いいわゆる昇格演出や確変報知等を行ったり、大当り期待度の高いリーチ変動であれば当該キャラクタAの予告表示態様を変化させたりして期待感を煽るようにしてもよい。このようにすると、予告発生台(連携演出のサブ間コマンドの送信元の遊技機)ではない遊技機において、遊技者が「自分の遊技を邪魔された」ような感覚を覚えることを払拭でき、予告発生台でない遊技者に対しても何らかのお得感を与えることができ、遊技の興趣をより高めることができる。
図161の上段及び下段に示すテーブルは、演出制御装置のフローチャートの説明で既述した予告制御テーブル(予告動作テーブルともいう)に相当するものである。
このうち、図161の上段に示すテーブルは、自機演出用の制御テーブルの具体例「予告動作テーブルNJ(自機演出用)」(構造体名称;YOKOKU_INFO、テーブル名称;s_YOK_NJ1A)である。この予告動作テーブルNJ(自機演出用)は、図162の場合、遊技機Aにおいて設定される。自機演出用の制御テーブルとは、自機における制御処理で設定されるテーブルである。既述したように、演出制御装置300では、遊技制御装置から送信されたコマンドと乱数抽選によって、演出内容を決定するテーブル(例えば、図柄変動テーブル)が選定され、このテーブルのデータに従って演出制御が行われる。そして、図柄変動テーブルには、予告制御テーブルを指定する予告テーブル情報(予告)が含まれており、この予告テーブル情報によって複数ある予告制御テーブルのうちの何れかが選定され、選定された予告制御テーブルに従って各予告演出の有無や実行タイミングを制御している。このように1台の遊技機内の処理のみで選定されて使用される制御テーブルが自機演出用のテーブルである。
そして、これら制御テーブルの主なデータ種別としては、図161に示すように、ステータス(sts)、開始フレーム(開始f)、表示フレーム(表示f)、音パラメータ(音)、サブ間コマンド、画像パターンテーブルアドレス(画像p)、座標テーブルアドレス(座標p)、透過テーブルアドレス(透過p)がある。
開始フレーム(開始f)は、現在の行の演出動作を開始するまでの待ち時間(予告表示開始ディレイタイマ(遅延タイマ)の設定値)に相当するフレーム数を示す。この開始フレーム(開始f)の値が「0」ならば直ちに開始(遅延時間は0)であり、「0」以外ならばフレーム切替周期(例えば、1/30秒)を掛けた時間だけ開始が遅延する。この開始フレームが例えば「45」でフレーム切替周期が1/30秒ならば、遅延時間が1.5秒(=45/30秒)となる。
音パラメータ(音)は、音声のフレーズ番号(ステップD715で説明した音声番号に対応)を表し、「0」ならば音声出力要求無しを意味する。
サブ間コマンドは、他機に送信するサブ間コマンドの有無及び内容を指定するデータである。これが「0」であれば、他機に送信するサブ間コマンドの設定は無い(他機にサブ間コマンドを送信しない)ことになる。ちなみに、前述の図133のステップD1201では、この制御テーブルの該当行におけるサブ間コマンドのデータに設定があるか否かを判定している。
画像パターンテーブルアドレス(画像p)は、演出動作として表示装置41に表示するキャラクタデータ(画像データ)を指定するための画像パターンテーブルのアドレスに相当する情報であり、これが「NULL」であるならば当該演出動作において画像表示は無いことを意味する。
座標テーブルアドレス(座標p)は、上記キャラクタデータの表示位置を指定する座標テーブルのアドレスに相当する情報である。
透過テーブルアドレス(透過p)は、上記キャラクタデータの透過性を指定する透過テーブルのアドレスに相当する情報であり、これが「NULL」であるならば透過性の設定を行わないことを意味する。
即ち、まず遊技機Aにおいて、予告動作テーブルNJ(自機演出用)の最初の行はステータス(sts)が「sINI」であるので、この予告テーブルNJ(自機演出用)の実行タイミング直後の1回目のシーケンス(ここでシーケンスとは、メイン処理においてフレーム切替タイミング毎に実行される1フレーム分の一連の処理)では、前述の予告情報更新判定処理(図132)において、ステップD702の判定結果がNOになってステップD721に進み、さらにステップD721の判定結果がYESになってステップD732、D733を経てステップD725以降に進む(即ち、予告演出の初期化処理が実行される)。この際、ステップD732(図133)では、予告制御テーブルポインタを1だけ増やす更新が行われるため、予告動作テーブルNJ(自機演出用)で参照される行が1番目から2番目に切り替わる。またステップD725では、予告表示開始ディレイタイマ(遅延タイマ)の値として、開始fの値(予告動作テーブルNJ(自機演出用)の2番目の行の「0」)に相当する値(時間にすると0秒)が設定される。またステップD726では、予告表示フレームカウンタ(表示フレームカウンタ)の値として、表示fの値(予告動作テーブルNJ(自機演出用)の2番目の行の「0」、時間にすると0秒)が設定される。そのため、その後のステップD1201では、予告動作テーブルNJ(自機演出用)の2行目が参照され、この2行目のサブ間コマンドのデータとしては、第1演出コマンド(予告種別指定コマンド)に相当する「YOK_NJ1」が設定されているため、このステップD1201の判定結果はYESになってステップD1202以降に進み、サブ間データ送信中でなければステップD1204乃至D1206が実行されて「YOK_NJ1」に対応した第1演出コマンドが送信される(図162の上段に相当)。
しかし、遊技機Aにおける次の78回目のシーケンスになると、前記予告情報更新判定処理では、ステップD703の判定結果がNOになってステップD706に進み、ステップD706の判定結果はYESになり、その後のステップD712の処理により予告表示フレームカウンタの値が0になるため、次のステップD713の判定結果がYESになってステップD714が実行され、それにより予告動作テーブルNJ(自機演出用)で参照される行は3番目から4番目に切り替わる。
図163の上段に示すテーブルは、自機演出用の制御テーブルの具体例「予告動作テーブルNJGN(自機演出用)」(構造体名称;YOKOKU_INFO、テーブル名称;s_YOK_NJGNA)である。この予告動作テーブルNJGN(自機演出用)は、図164の場合、遊技機Aにおいて設定される。
まず、遊技機Aにおいて、予告動作テーブルNJGN(自機演出用)の2行目が参照されると、この2行目のサブ間コマンドのデータとしては、第1演出コマンド(予告種別指定コマンド)に相当する「YOK_NJGN」が設定されているため、この「YOK_NJGN」に対応した第1演出コマンドが送信される(図164の上段に相当)。
そして、この遊技機Aのみで行われる第1予告演出が終了すると、遊技機Aにおいては、予告動作テーブルNJGN(自機演出用)の4行目が参照される。この4行目には、表示f、音、サブ間コマンド、画像p、座標pのデータがそれぞれ設定され、開始fは「0」である。このため、図164の下段に示すように、遊技機Aにおいて、予告動作テーブルNJGN(自機演出用)の4行目に基づく予告演出(以下、第2予告演出という)の画像表示が即座に開始される。この場合、画像pの「PIC_NJGN」で指定される複数のトラのキャラクタの画像が、座標pの「ZTB_NJGN」で指定される表示位置に表示される。また、音パラメータ(音)の4行目の「30」で指定される音声出力(図164の下段に「デロ〜ン♪」で示す音声出力)が実行される。なお、この第2予告演出は、表示fの値から開始fの値を減算した値(75=75−0)に対応する時間(即ち、2.5秒)だけ継続して実行される。
以上説明した図163及び図164の具体例のように、同期させる演出の態様を遊技機毎に異ならせてもよいし、第1演出コマンド(第1遊技機間コマンド)の送信時点と、第2演出コマンド(第2遊技機間コマンド)の送信時点の間の時間に、特定の遊技機(例えば、予告発生台)でのみ別の演出を実行するようにしてもよい。このようにすると、同期演出の面白さを向上できるとともに、同期演出が実行されることを事前に報知できるし、遊技機毎の状態の違いを報知することもできる(例えば、自機が予告発生台なのか否かを遊技者に明確に知らせることができる)などの利点がある。その結果、遊技の興趣をさらに向上できる。
(1)遊技機は、遊技機間通信機能を備えて遊技を行うものであれば、実施例のような例に限らず、例えば封入球式遊技機、スロットマシン等にも適用できる。
(2)また、表示装置は、液晶を用いた表示装置に限らず、例えば有機EL、ブラウン管、ドットLED、7セグメントLED、電子ペーパのように曲がる素材を用いた装置など、表示内容を変化させて演出できる機器であれば何でもよい。
本発明は、以下のような変形例であってもよい。
(1)前述の実施例では、遊技機間通信を無線通信としたが、有線通信でもよい。
(2)遊技機間通信を行う制御装置は、必ずしも演出制御装置に限られない。例えば、遊技制御装置が遊技機間通信を行ってもよい。
(3)また、複数段階に分けて送信する遊技機間通信のコマンドは、予告演出に限定されず、他の演出のためのコマンドでもよい。また、演出のためのコマンドに限定されず、他のコマンドでもよい。例えば、遊技者に遊技店の営業情報等を報知する表示を、複数の遊技機で連携して行うためのコマンドなどに適用しても、同様の効果が得られる。
(5)前述の実施例は、映像、音声、装飾、役物の動作を1枚の演出制御基板で制御する例であるが、これに限らず、例えば複数の演出制御基板で制御する構成にしてもよいし、あるいは同一基板上に複数のCPUを実装して分担制御する構成にしてもよい。
「発明概念A1」
実施例1では、遊技制御装置100から演出制御装置300へ組となる変動パターンコマンド及び図柄コマンドを送信した場合、先に送られる変動パターンコマンドを演出制御装置300が受信した時点で、演出に関する記憶領域がデフォルト値に設定され、後で送られる図柄コマンドを取りこぼすと、組となるコマンドが成立しないので、演出制御装置300では演出に関する記憶領域のデフォルト値を使用して特図(飾り特図)の演出が行われる。
したがって、後で送られてくる図柄コマンドを取りこぼした場合でも、デフォルト値に基づいて特図変動を行うことにより、いつもの遊技ゲームと変わらないタイミングで特図変動の演出が行われ、よって、遊技者に不信感を与えることがない。
上記構成の発明概念は、下記のように表される。
遊技の進行を制御する遊技制御装置と、
前記遊技制御装置から送信されるコマンドに基づき、表示装置に複数の図柄を変動表示させて停止させる変動表示ゲームの演出を行う演出制御装置と、
を備え、
前記遊技制御装置は、始動入賞口への遊技球の入賞に基づきコマンドを前記演出制御装置に送信して変動表示ゲームを実行させ、前記変動表示ゲームの停止態様が特定表示態様となったときに特典を付与するようにした遊技機において、
前記演出制御装置は、
複数で組となるコマンドのうち、先に送られるコマンドの受信に基づき、演出に関する記憶領域をデフォルト値に設定するデフォルト値設定手段と、
複数で組となるコマンドのうち、後で送られるコマンドを受信すると、組となる複数のコマンドに基づいて演出を行う一方、
後で送られるコマンドの受信を取りこぼすと、前記デフォルト値設定手段によって設定されたデフォルト値に基づいて演出を行う演出制御手段と、
を備えたことを特徴とする遊技機。
実施例1では、後で送られる図柄指定コマンドを受信した時点で、組となるコマンドが成立したと判断して、演出に関する記憶領域に格納されているデフォルト値(はずれ図柄での図柄停止状態)を正規のコマンド(図柄指定コマンド)に対応する情報に書き換える処理が行われる。
そして、演出制御装置300では、組となる複数のコマンド(先に送られる変動パターンコマンド及び後で送られる図柄指定コマンド)の成立に基づいて図柄の変動表示制御の演出を行う。この場合、後で送られる図柄指定コマンドは、デフォルト値から書き換えられ正規のコマンド(図柄指定コマンド)となり、これらの組となる各コマンドに基づいて図柄演出が実行されることになる。
したがって、正規のコマンドに基づく演出が行われ、遊技が正常に進行する。
上記構成の発明概念は、下記のように表される。
演出制御装置は、
遊技制御装置から送られる組となるコマンドの受信に基づき、演出に関する記憶領域に記憶されているデフォルト値を正規のコマンドに対応する情報に書き換える書換手段を備え、
前記演出制御手段は、先に送られるコマンド及び前記書換手段によって書き換えられた情報に基づいて図柄の変動表示の演出を行うことを特徴とする遊技機。
実施例1では、後で送られる図柄コマンドを取りこぼした場合であっても、先に受信するコマンドを受信した時点で演出に関する記憶領域にデフォルト値として、はずれ図柄での図柄停止状態が設定されており、このデフォルト値に基づいて特図変動を行う。
したがって、デフォルト値がはずれ図柄での図柄停止状態というような値に設定されるので、図柄コマンドを取りこぼしたでも、遊技結果に矛盾することなく、特図演出を行える。
上記構成の発明概念は、下記のように表される。
デフォルト値設定手段は、
前記デフォルト値として、はずれ図柄での図柄停止状態となるような情報に設定することを特徴とする遊技機。
実施例1では、遊技制御装置100から演出制御装置300へ変動パターンコマンド及び図柄コマンドを送信した場合、まず、先に送られる変動パターンコマンドを演出制御装置300が受信した時点で、演出に関する記憶領域がデフォルト値としてはずれ図柄での図柄停止状態に設定され、次いで、後で送られる図柄指定コマンドを取りこぼしすと、デフォルト値(はずれ図柄での図柄停止状態)に基づいて特図変動を行う。
したがって、図柄コマンドを取りこぼしても、デフォルト値に基づいて特図変動を行うので、遊技結果に矛盾することなく、はずれ図柄で停止させることができる。
上記構成の発明概念は、下記のように表される。
遊技制御装置から送信される前記コマンドは、組で効果を発揮する第1コマンドと第2コマンドとからなり、
前記第1コマンドは先に送られ、前記第2コマンドは後で送られる構成であり、
これらの各コマンドは、画面変化コマンドと、結果態様コマンドであり、
前記デフォルト値設定手段は
前記第1コマンドの受信に基づき、演出に関する記憶領域にデフォルト値としてはずれ図柄にて演出を行う情報を設定することを特徴とする遊技機。
実施例1では、後で送られる図柄指定コマンドを受信した時点で、組となるコマンドが成立したと判断して、演出に関する記憶領域に格納されているデフォルト値(はずれ図柄での図柄停止状態)を正規のコマンド(図柄指定コマンド)に対応する情報に書き換える処理が行われる。
上記構成の発明概念は、下記のように表される。
書換手段は、
後で送られるコマンドを受信した時点で、組となるコマンドが成立したと判断して、前記デフォルト値を正規のコマンドに対応する情報に書き換えることを特徴とする遊技機。
実施例1では、はずれ図柄変動(はずれ停止)又は大当り図柄変動(大当りで停止)の何れの場合であっても、複数で組となるコマンドのうち、先に送られるコマンド(第1コマンド)を受信した時点で、演出に関する記憶領域にデフォルト値を設定する構成である。
したがって、はずれなのに大当り図柄が表示されるなどのトラブルを回避できる。
上記構成の発明概念は、下記のように表される。
デフォルト値設定手段は、
図柄変動あるいは前記特定表示態様の演出を行うときに対応するコマンドの何れの種類であっても、前記第1コマンドの受信に基づき、演出に関する記憶領域にデフォルト値を設定することを特徴とする遊技機。
実施例1では、遊技制御装置100から演出制御装置300へ変動パターンコマンド及び図柄コマンドを順次送信した場合、まず、先に送られる変動パターンコマンドを演出制御装置300が受信した時点で、演出に関する記憶領域がデフォルト値(例えば、はずれ図柄での図柄停止状態)に設定され、次いで、後で送られる図柄指定コマンドを受信した時点で、組となるコマンドが成立したと判断して、演出に関する記憶領域のデフォルト値が正規のコマンド(図柄指定コマンド)に対応する情報に書き換えられる。
上記構成の発明概念は、下記のように表される。
デフォルト値設定手段は、
組で効果を発揮する第1コマンドと第2コマンドのうちの第1コマンドの受信に基づき、第1コマンドと第2コマンドによって内容が確定する演出のための情報を記憶する演出に関する記憶領域にデフォルト値を設定することを特徴とする遊技機。
実施例1では、技制御装置100から演出制御装置300へ変動パターンコマンド及び図柄コマンドが順次送信されてきた場合、演出制御装置300では、送信されてきた組となる複数のコマンドに基づいて特図の演出制御を行う。この場合、後で送られる図柄コマンドは、デフォルト値から書き換えられ正規のコマンド(図柄指定コマンド)となり、これらの組となる各コマンドに基づいて図柄演出が実行される。
しかし、後で送られる図柄コマンドを取りこぼすと、デフォルト値を使用(採用)して特図の演出を行う。
上記構成の発明概念は、下記のように表される。
演出制御装置の演出制御手段は、
複数で組となるコマンドのうち、後で送られるコマンドの受信に基づき、組となる複数のコマンドに基づいて図柄の変動表示の演出を行う一方、
後で送られるコマンドの受信を取りこぼすと、前記デフォルト値設定手段によって設定されたデフォルト値に基づいて図柄の変動表示の演出を行うことを特徴とする遊技機。
実施例1の変形例として、先に送られるコマンドを受信した時点で、演出制御装置300では主制御用マイコン311のRAM311aのコマンド記憶領域にデフォルト値としてデフォルトコマンドを設定しておき、その後、後に続く正規コマンドが来たら(受信したら)、そのコマンド(受信したコマンド)で前記デフォルト値を上書きして書き換え、先に送られるコマンド及び書き換えられたコマンドに基づいて演出を行う構成にしてもよい。
この発明概念は、以下のように表される。
演出制御装置のデフォルト値設定手段は、
複数で組となるコマンドのうち、先に送られるコマンドの受信に基づき、コマンド記憶領域をデフォルト値に設定し、
書換手段は、後で送られるコマンドの受信に基づき、コマンド記憶領域に記憶されているデフォルト値を正規のコマンドに書き換え、
演出制御手段は、先に送られるコマンド及び前記書換手段によって書き換えられたコマンドに基づいて演出を行うことを特徴とする遊技機。
実施例1では、遊技制御装置100から演出制御装置300へ組となる変動パターンコマンド及び図柄コマンドが順次送信され、それに基づいて演出制御が行われるが、それに限らず、例えば後の図柄コマンドを取りこぼした場合に、以下のような制御を行うような変形例を実施したとすると、発明概念B1が導かれる。
すなわち、先に送られる変動パターンコマンドを演出制御装置300が受信した時点で、前回の図柄変動終了から今回の変動パターンコマンド受信までの時間が規定時間(例えば、1秒)以内か否かを判定し、前回の図柄変動終了から今回の変動パターンコマンド受信までの時間が規定時間以内と判定されると、後で送られる図柄コマンドの受信を取りこぼしても、図柄の変動を開始する処理を行い、前回の図柄変動終了から今回の変動パターンコマンド受信までの時間が規定時間を超えていると判定すると、図柄の変動を開始しない処理を行う構成とするようにしてもよい。
この発明概念によれば、遊技者に極力ストレスを与えない特図演出を行うことができる。
上記構成の発明概念は、下記のように表される。
遊技の進行を制御する遊技制御装置と、
前記遊技制御装置から送信されるコマンドに基づき、表示装置に複数の図柄を変動表示させて停止させる変動表示ゲームの演出を行う演出制御装置と、
を備え、
前記遊技制御装置は、始動入賞口への遊技球の入賞に基づきコマンドを前記演出制御装置に送信して変動表示ゲームを実行させ、前記変動表示ゲームの停止態様が特定表示態様となったときに特典を付与するようにした遊技機において、
前記演出制御装置は、
複数で組となるコマンドのうち、先に送られるコマンドの受信に基づき、前回の図柄変動終了から今回のコマンド受信までの時間が規定時間以内か否かを判定する判定手段と、
前記判定手段により前回の図柄変動終了から今回のコマンド受信までの時間が規定時間以内と判定されると、後で送られるコマンドの受信を取りこぼしても、図柄の変動を開始する処理を行い、
前回の図柄変動終了から今回のコマンド受信までの時間が規定時間を超えていると判定されると、図柄の変動を開始しない処理を行うように制御する演出制御手段と、
を備えたことを特徴とする遊技機。
発明概念B1において、変動パターンコマンドから図柄停止結果態様(はずれ又は大当り)を判断し、基本的にはずれの停止図柄コマンドは1種類であるので、図柄コマンドを取りこぼしても、変動パターンコマンドさえ受信できていれば図柄変動を開始できる構成とする。
上記構成の発明概念は、下記のように表される。
遊技制御装置から送信されるコマンドは、組で効果を発揮する第1コマンドと第2コマンドとからなり、
前記第1コマンドは先に送られ、前記第2コマンドは後で送られる構成であり、
これらの各コマンドは、画面変化コマンドと、結果態様コマンドであり、
演出制御手段は
前記第1コマンドの受信に基づき、第1コマンドに基づいて変動表示ゲームの停止態様を判断し、判断した停止態様となるように前記変動の図柄を決定することを特徴とする遊技機。
発明概念B1において、変動パターンコマンドから図柄停止結果態様(はずれ又は大当り)を判断し、図柄停止結果態様からはずれと判断した場合、前回の図柄変動終了から今回の変動パターンコマンド受信までの時間が規定時間以内と判定されると、後で送られる図柄コマンドの受信を取りこぼしても、連続変動として図柄変動を開始させる一方、図柄停止結果態様から大当りと判断した場合、前回の図柄変動終了から今回の変動パターンコマンド受信までの時間が規定時間以内と判定されると、後で送られる図柄コマンドの受信を取りこぼしても、変動を開始した後に強制的に非確変図柄(通常図柄)となる停止態様にて図柄を確定させる構成とする。
この構成であると、はずれ又は大当りの何れの場合であっても、遊技の違和感をなくして、遊技者に極力ストレスを与えないようにできる。
上記構成の発明概念は、下記のように表される。
演出制御手段は
前記先のコマンドの受信に基づき、変動表示ゲームの停止態様を判断し、はずれ表示態様になる場合には、前記変動を開始させ、
特定表示態様としての当り表示態様になる場合には、前記変動を開始し、停止態様が通常の当り図柄となる制御を行うことを特徴とする遊技機。
発明概念B1において、変動パターンコマンドから図柄停止結果態様として大当りと判断したとき、強制的に非確変図柄(例えば、「444」)で停止する構成とする。
この構成であると、大当りの開始演出で確変図柄が停止したのに確変にならない、というようなトラブルは回避することができる。
その後、次の演出に係るコマンドとして、演出制御装置300にてファンファーレコマンド及び図柄コマンドを受信したとき、この図柄コマンドを受信したことに基づき、この図柄コマンドで指定される実際の大当り図柄を表示して、大当り演出を行う構成とする。
この構成であると、大当りが発生するとき、通常図柄又は確変図柄の何れの場合であっても、遊技の違和感なく、大当りの演出を行うことができる。
上記構成の発明概念は、下記のように表される。
演出制御手段は
前記先のコマンドの受信に基づき、変動表示ゲームの停止態様を判断し、特定表示態様としての当り表示態様になる場合には、前記変動を開始させ、
図柄変動の開始後、その後に受信したコマンドで指定される実際の当り図柄で図柄変動を停止させて表示する制御を行うことを特徴とする遊技機。
発明概念B1において、変動パターンコマンドから図柄停止結果態様(はずれ又は大当り)を判断したとき、確変図柄専用の変動パターンであると判断した場合には、強制的に非確変図柄で停止する演出を経由せずに、図柄の連続変動を開始し、確変図柄となる停止態様にて図柄を確定させる構成とする。
この構成であると、分かりやすく、違和感のない遊技進行にすることができる。
上記構成の発明概念は、下記のように表される。
演出制御手段は
前記先のコマンドの受信に基づき、変動表示ゲームの停止態様を判断し、特定表示態様としての確率変動を伴う当り表示態様になる場合には、前記変動を開始し、停止態様が確率変動を伴う当り図柄となる制御を行うことを特徴とする遊技機
発明概念B1において、連続変動判定に保留数チェックを追加した構成とする。
すなわち、変動パターンコマンドの受信時点で、保留数チェックを行い、特図保留数が「0」であるときは、今回の変動パターンコマンドは不正なコマンドと判定(不正判定)し、前回の停止コマンドを受信する以前に始動入賞に伴う特図保留数が「1」であれば、今回の変動パターンコマンドの受信は正当と判定するという制御を行う構成とする。
この構成であると、変動パターンコマンド受信時に保留数チェックを行うことで、不正な変動パターンコマンドに基づく図柄変動の開始を防ぐことができる。
上記構成の発明概念は、下記のように表される。
遊技制御装置は、
始動入賞口への遊技球の入賞に基づく始動入賞数を所定範囲で記憶する始動入賞記憶手段を備え、
演出制御装置は、
前記遊技制御装置から送られる始動入賞記憶に関する情報を受信した場合には、先に送られるコマンドの受信に基づき、始動入賞記憶が存在するか否かを判定する始動入賞記憶判定手段を備え、
前記演出制御手段は、
前記始動入賞記憶判定手段の判定結果を加えて、前記図柄の変動を開始するか否かを判断することを特徴とする遊技機。
発明概念B1において、連続変動の条件を満たし、かつ、今回の変動がはずれ変動であった場合に、変動パターンコマンド受信と同時に、次の図柄コマンド゛受信(4ms後)を待たずに、変動開始の各種設定を開始する構成とする。
この構成であると、はずれ図柄変動時のコマンドの整合性チェックの処理等を省略することができる。よって、演出データの設定に時間を割け、演出制御装置300のCPU311の処理時間に余裕を持たせることができるという利点がある。
上記構成の発明概念は、下記のように表される。
演出制御装置の演出制御手段は、
前記判定手段により前回の図柄変動終了から今回のコマンド受信までの時間が規定時間以内と判定されると、後で送られるコマンドの受信を待たずに、直ちに図柄の変動の開始のための設定を開始する処理を行うことを特徴とする遊技機。
実施例1では、遊技の進行を制御する遊技制御装置100と、この遊技制御装置100から送信されるコマンドに基づいて演出手段を制御して演出を行う演出制御装置300と、を備えた遊技機(パチンコ機1)において、遊技制御装置100から送信されるコマンドの値がコマンドの種別毎の所定範囲にあるか否かの種別判定を、親モジュールと子モジュールとで、それぞれ実行し、各モジュールでの種別判定結果が所定範囲内となることが、当該コマンドに応じた演出手段の制御のための処理を実行する必要条件となっている。
このため、コマンドを先ず上記種別判定(範囲チェック)により限定して無駄なデータやプログラムを少なくすることができるから、コマンドの解析処理のプログラム(処理に必要な各種データ含む)が効率良く作成できる。
上記構成の発明概念は、下記のように表される。
遊技の進行を制御する遊技制御装置と、この遊技制御装置から送信されるコマンドに基づいて演出手段を制御して演出を行う演出制御装置と、を備えた遊技機において、
前記コマンドを受信した前記演出制御装置が実行する前記コマンドの解析処理を、当該解析処理を統括するルーチンである親モジュールと、この親モジュールから呼び出されて実行されるルーチンである子モジュールと、より構成し、
前記コマンドの値が前記コマンドの種別毎の所定範囲にあるか否かの種別判定を、前記親モジュールと前記子モジュールとで、それぞれ実行し、
各モジュールでの前記種別判定結果が前記所定範囲内となることを、当該コマンドに応じた前記演出手段の制御のための処理を実行する条件としたことを特徴とする遊技機。
実施例1では、親モジュールの方がチェックする範囲が狭い構成であり、分岐する前に狭い範囲まで限定するので、対応する処理を細分化しやすいという利点がある。
上記構成の発明概念は、下記のように表される。
前記種別判定の基準となる前記所定範囲が、前記子モジュールよりも前記親モジュールの方が狭いことを特徴とする遊技機。
実施例1では、種別判定のステップD93、D99等でMODEが所定範囲内にないと判定されて判定結果が全てNOになる場合には、ExModeは設定されずステップD147を経てリターンするため、当該コマンドは採用されず(即ち、無効とされ)、結果的に当該コマンドは破棄されることになる。
上記構成の発明概念は、下記のように表される。
前記種別判定結果が前記所定範囲外となった場合には、当該コマンドを破棄するか又は無効とすることを特徴とする遊技機。
実施例1では、演出制御装置300が、コマンドが遊技制御装置100から送信されることにより発生するコマンド受信割込みがあると、前記コマンドを受信するための受信処理(コマンド受信割込み処理)を実行し、この受信処理で受信したコマンドの解析処理(受信コマンド解析処理)を、前記受信処理とは別個に所定周期で実行する構成であり、受信したコマンドの値が所定範囲にあるか否かの正常性判定を、少なくとも前記受信処理で実行する(ステップD54等)。このため、前記解析処理の負担を減らし、コマンドの受信及び解析が効率良く実現できる。
上記構成の発明概念は、下記のように表される。
遊技の進行を制御する遊技制御装置と、この遊技制御装置から送信されるコマンドに基づいて演出手段を制御して演出を行う演出制御装置と、を備えた遊技機において、
前記演出制御装置は、
前記コマンドが前記遊技制御装置から送信されることにより発生するコマンド受信割込みがあると、前記コマンドを受信するための受信処理を実行し、この受信処理で受信した当該コマンドの解析処理を、前記受信処理とは別個に所定周期で実行する構成であり、
当該コマンドの値が所定範囲にあるか否かの正常性判定を、前記受信処理で実行することを特徴とする遊技機。
実施例1では、前記正常性判定結果が前記所定範囲内とならなければ、当該コマンドに応じた演出手段の制御のための処理を実行しない構成であり、これにより誤動作を防止している。
上記構成の発明概念は、下記のように表される。
前記正常性判定結果が前記所定範囲内となることを、当該コマンドに応じた前記演出手段の制御のための処理を実行する条件としたことを特徴とする遊技機。
実施例1では、演出制御装置300において、遊技制御装置100から送信されるコマンドの受信処理(コマンド受信割込み処理)と、前記コマンドの解析処理(受信コマンド解析処理)とで、前記コマンドの値が所定範囲にあるか否かの正常性判定を、それぞれ実行している(ステップD54、D93、D172等)。
このため、コマンドの正常性判定の負担を受信処理と解析処理とで適度に分担して、コマンドのとりこぼしを回避しつつ処理全体の高速化が図れるなどの効果が実現できる。
上記構成の発明概念は、下記のように表される。
前記正常性判定を、前記受信処理と前記解析処理においてそれぞれ実行することを特徴とする遊技機。
実施例1では、前記正常性判定の基準となる所定範囲が、前記解析処理よりも前記受信処理の方が広い構成として、1回の前記受信処理をより早めに終了させて、コマンドのとりこぼしを確実に回避するなどの効果を実現している。
上記構成の発明概念は、下記のように表される。
前記正常性判定の基準となる前記所定範囲が、前記解析処理よりも前記受信処理の方が広いことを特徴とする遊技機。
実施例1では、前記正常性判定の基準となる所定範囲が、前記受信処理では、前記コマンドがとり得る値の集合全体であり(ステップD54)、前記解析処理では、受信した当該コマンドが該当する種別の正常な前記コマンドがとり得る値の集合である(ステップD93等)構成として、1回の前記受信処理をより早めに終了させて、コマンドのとりこぼしを確実に回避するなどの効果を実現している。
上記構成の発明概念は、下記のように表される。
前記正常性判定の基準となる前記所定範囲が、前記受信処理では、前記コマンドがとり得る値の集合全体であり、前記解析処理では、受信した当該コマンドが該当する種別の正常な前記コマンドがとり得る値の集合であることを特徴とする遊技機。
実施例1では、演出制御装置300におけるコマンド受信割込み処理において、ステップD54(ステップD61)で受信MODEが所定範囲内にないと判定されて判定結果がNOになる場合には、受信したコマンドをコマンドバッファに格納するステップD56の処理は実行されずステップD55を経てリターンするため、当該コマンドは採用されず(即ち、無効とされ)、結果的に当該コマンドは破棄されることになる。また受信コマンド解析処理におけるステップD93、D99等でMODEが所定範囲内にないと判定されて判定結果が全てNOになる場合には、ExModeは設定されずステップD147を経てリターンするため、当該コマンドは採用されず(即ち、無効とされ)、結果的に当該コマンドは破棄されることになる。
上記構成の発明概念は、下記のように表される。
前記正常性判定結果が前記所定範囲外となった場合には、当該コマンドを破棄するか又は無効とすることを特徴とする遊技機。
実施例1では、演出制御装置300の制御処理の説明(フローチャートの説明)で既述したように、演出制御装置300による予告情報更新判定処理(図132)におけるステップD703乃至705、ステップD725等の処理によって、次のような制御(演出動作の開始を遅延させる遅延制御)が実行可能となっている。即ち、予告演出の反映を基準時間から送らせたい場合に、予告表示開始ディレイタイマ(遅延タイマ)がセットされ、予告表示開始ディレイタイマがタイムアップした時点で予告演出が開始される。このディレイタイマがセットされていない時(0の時)は、基準時間通りに演出が行われる。これにより、演出の開始時間を微調整できるなどの効果が得られる。例えば、ステップアップ予告1段階目等、演出が行われるタイミングは基本的に機種毎にほぼ決まっている。これは、毎回バラバラのタイミングでは、予測ができないので反って興趣が低下してしまうのを防止するためである。但し、同じSU1演出でも、振り分けによって出現するキャラクタの種類等を変えて、信頼度を変化させたりして遊技の興趣を高めており、基本同一タイミングの演出でも演出内容によって演出時間を異ならせたい場合が多々あると考えられ、このような場合に、上記予告表示開始ディレイタイマによれば、演出の開始時間を微妙に調整できるし、演出終了のタイミングなどを合わせることもできる。
上記構成の発明概念は、下記のように表される。
演出手段の演出動作を制御して演出を行う演出制御装置を備えた遊技機において、
前記演出制御装置は、
所定の基本タイミングに対して実行すべき前記演出動作があった場合、この演出動作に対して遅延タイマを設定し、当該遅延タイマの設定値分だけ前記基本タイミングから遅らせたタイミングで前記演出動作を開始可能な構成であることを特徴とする遊技機。
実施例1では、演出制御装置300の制御処理で使用する図柄変動テーブルや予告制御テーブルの設定によって、前記基本タイミングが前記演出動作毎に別個に存在する構成とすることが可能である。この場合、前記遅延タイマによる遅延時間が比較的短くて済み、実際には演出動作(予告演出用画像の表示等)を行っていないのにその演出動作のための制御処理を行っている期間を比較的短くすることができる。
上記構成の発明概念は、下記のように表される。
複数の前記演出動作について、前記基本タイミングが前記演出動作毎に別個に存在する構成であることを特徴とする遊技機。
実施例1では、演出制御装置300の制御処理で使用する図柄変動テーブルや予告制御テーブルの設定によって、複数の演出動作について前記基本タイミングを同一とし、この同一の基本タイミングから各演出動作の各制御処理を開始する構成とすることが可能である。この場合、図柄変動の進行状況とリンクさせた予告発生タイミングを常時管理することが不要になり、プログラム構造が簡素化できて開発効率が上がる。というのは、例えば変動開始時に全予告を起動し、タイムアップしたものから演出動作を開始させるというシンプルな考え方でプログラムの作成等が行えるためである。また、予告発生のタイミングを仕様変更する場合でも、遅延タイマ値を変更するだけで済み、図柄変動テーブルの内容を見直して図柄の動きとの整合取りなどを行うというめんどうな作業が不要になるからである。
上記構成の発明概念は、下記のように表される。
複数の前記演出動作について、前記基本タイミングが同一の前記演出動作が複数存在する構成であり、
前記演出制御装置が、複数の前記演出動作の各制御処理を前記同一の基本タイミングから開始する構成であることを特徴とする遊技機。
実施例1では、表示装置41の画面41aにおいて特図の飾り図柄の変動表示ゲームの演出を行う構成であり、この変動表示ゲームにおける画面41aでの演出用画像(例えば予告用画像)の表示動作に対して、前記遅延制御が実行可能となっている。
上記構成の発明概念は、下記のように表される。
前記演出手段としての表示装置を有し、
前記演出制御装置が、前記表示装置の画面において図柄を変動表示させて停止させる変動表示ゲームの演出を行う構成であり、
前記演出動作には、前記変動表示ゲームにおける前記画面での演出用画像の表示動作が含まれることを特徴とする遊技機。
実施例1では、前記基本タイミングとしては、少なくとも特図の飾り図柄の変動表示の開始時点がある。
上記構成の発明概念は、下記のように表される。
前記基本タイミングは少なくとも前記図柄の変動表示の開始時点を含むことを特徴とする遊技機。
実施例1では、演出制御装置300(表示制御装置)が、特定画像(現図柄)の画面41aにおける表示位置を指定する絶対座標データと、特定画像とは少なくとも表示位置が異なる関連画像(次図柄、拡大した現図柄、拡大した次図柄等)の特定画像に対する相対位置を指定する相対座標データ(差分データ)とをPROM321(記憶手段)に記憶し、特定画像の表示制御では、対応する前記絶対座標データに基づいて表示位置を設定し、関連画像の表示制御では、対応する前記相対座標データ及び前記絶対座標データから表示位置を算出(ステップD836、D817、D850)して設定する表示制御機能(表示制御手段)を有する構成である。即ち本実施例は、あるキャラクタの表示位置データを基に、別キャラクタの表示位置を求めている(あるキャラクタは絶対座標で表示位置を指定し、その位置からの差分データを用いて別キャラクタの位置を算出する)。
このため、基準となる特定画像(この場合、現図柄)の座標テーブルのみを用い、次図柄、拡大図柄(拡大した現図柄及び次図柄)等の動きも制御できるようになる。これにより、データ量が僅かな差分データ(相対座標データ)を用いるだけで全図柄に同等の動きを実現できるので、表示制御が効率良く実現でき、PROM321(記憶手段)に記憶する必要のあるデータ量を格段に減らすことができ、仕様変更時の作業量も格段に減ることになるので開発効率も向上させることができる。なお、特定画像や関連画像は、特図の図柄に限られないことはいうまでもなく、例えば予告用のキャラクタの画像でもよい。
上記構成の発明概念は、下記のように表される。
演出用の表示装置と、この表示装置の画面に演出用の画像を表示する表示制御を行う表示制御装置と、を備えた遊技機において、
前記表示制御装置は、
演出用の特定画像の前記画面における表示位置を指定する絶対座標データと、前記特定画像とは少なくとも前記表示位置が異なる関連画像の前記特定画像に対する相対位置を指定する相対座標データと、を記憶する記憶手段と、
前記特定画像の表示制御では、当該特定画像に対応する前記絶対座標データに基づいて当該特定画像の前記表示位置を設定し、前記関連画像の表示制御では、当該関連画像に対応する前記相対座標データ及び前記絶対座標データから当該関連画像の前記表示位置を算出して設定する表示制御手段と、を有することを特徴とする遊技機。
実施例1では、表示制御装置(演出制御装置300)が、前記表示位置を指定する絶対座標データを、当該絶対座標データが時系列に一つ又は複数設定されてなる座標テーブルとして記憶し、この座標テーブルに基づいて図柄等の画像の表示制御を行い、前記座標テーブルは、座標軸毎に別個に設けられている。即ちこの場合、X軸方向(左右方向)の絶対座標データ(X座標データ)は、X座標テーブル内のデータとして記憶され、Y軸方向(上下方向)の絶対座標データ(Y座標データ)は、Y座標テーブル内のデータとして記憶され、これらX座標テーブルとY座標テーブルは、別個に設けられ、別個に指定されて使用される。
このため、必要な動きに合わせてテーブルをピックアップして組合わせて使用することができて、更にデータ量を減らす事ができる。というのは、例えばX座標とY座標の両方のデータを含む統合型の座標テーブルとすることもできるが、この場合、例えばX座標のデータが全く同じでもY座標のデータが異なればテーブルが異なることになりテーブル数が膨大な量になってしまう。これに対して、本実施例のようにX座標とY座標で座標テーブルが異なると、X座標のデータが同じであれば、Y座標のデータが異なっても同じX座標テーブルを使用することができる。また、X座標のデータが異なっても、Y座標のデータが同じであれば、共通のY座標テーブルを使用することができる。このため、このような座標テーブルの共通化(使いまわし)により、座標テーブルの数を更に減らし、ひいてはデータ量を更に減らすことができる。
上記構成の発明概念は、下記のように表される。
前記絶対座標データが時系列に一つ又は複数設定されてなる座標テーブルとして、前記絶対座標データを前記記憶手段に記憶し、座標軸毎に前記座標テーブルが別個に設けられていることを特徴とする遊技機。
実施例1では、現図柄を特定画像とし、現図柄の座標データから次図柄等の座標データを相対的に算出する態様であるが、これに加えて、或いはこれに代えて、変動表示を行う複数の表示位置の図柄(例えば、左図柄、中図柄、右図柄)のうちの何れかの図柄を本発明の特定画像とし、他の図柄の座標データを相対的に算出する態様でもよい。例えば、中図柄を特定画像とし、中図柄の座標データから左図柄及び右図柄(関連画像)の座標データを算出する態様でもよい。
この態様であると、例えば中図柄についてのみ絶対座標データの座標テーブルを記憶し、左図柄及び右図柄については、中図柄に対する相対座標データのみを記憶しておけばよいため、更にデータ量を低減できる。
上記構成の発明概念は、下記のように表される。
前記表示制御装置が、前記画面における複数の表示位置において図柄をそれぞれ変動表示させて停止させる変動表示ゲームの演出を行う構成であり、
前記特定画像は、前記複数の表示位置のうちの特定の表示位置の図柄であり、前記関連画像は、前記複数の表示位置のうちの他の表示位置の図柄であることを特徴とする遊技機。
発明概念M3では、例えば中図柄を特定画像とする態様について説明したが、一般的に中図柄は、リーチアクション等において左図柄や右図柄に比べてより多彩な変動表示を行う図柄であるため、絶対座標データの座標テーブルで動きを制御する特定画像がこの中図柄である態様であると、表示制御がより効率的になるという効果がある。つまり、飾り図柄の変動表示ゲームの表示演出では、いわゆるリーチアクション演出が行われる場合がある。このリーチアクションは、飾り図柄の各表示位置(例えば、左、中、右)における見かけ上の図柄の停止時期が異なる変動表示演出である。例えば、一般的なリーチアクションとしては、左右の図柄が先に停止(僅かに振動しているなどの見かけ上の停止であってもよい。以下同様)し、その後中図柄のみがゆっくり変動した後に最後に停止するといった表示が行われる。この場合に、最後に停止する図柄を特定の表示位置の図柄(特定画像)とし、この最後に停止する図柄について絶対座標データを記憶し、停止順が最後でない図柄を他の表示位置の図柄(関連画像)とし、この停止順が最後でない図柄について相対座標データを記憶する。そして、最後に停止する図柄の表示制御では、当該最後に停止する図柄に対応する絶対座標データに基づいて表示位置を設定し、停止順が最後でない図柄の表示制御では、当該停止順が最後でない図柄に対応する相対座標データ及び前記絶対座標データから表示位置を算出して設定する態様であってもよい。この場合、最後に停止する図柄は、他の図柄(停止順が最後でない図柄)に比べて動きが多彩であるため、絶対座標データで制御する構成の方が効率が良いという効果が得られる。なお、最後に停止する図柄は、中図柄に限定されす、左図柄或いは右図柄であってもよい。また、実施例1は、飾り図柄の表示位置が左右3列の3リール構成であるが、飾り図柄の表示位置が上下に複数列ある態様(例えば、横方向にスクロールするもの)でもよいし、2リール構成や、4リール以上の構成でも上記態様は適用でき、何れの場合も、最後に停止する図柄の位置は特定の位置(例えば中央の位置)に限定されず、どの位置でもよい。
上記構成の発明概念は、下記のように表される。
前記表示制御装置が、前記変動表示ゲームの演出として、前記複数の表示位置における見かけ上の図柄の停止時期が異なるリーチアクション演出を実行可能であり、
前記特定の表示位置の図柄は前記リーチアクション演出の場合に最後に停止する図柄であり、前記他の表示位置の図柄は前記リーチアクション演出の場合に停止順が最後でない図柄であることを特徴とする遊技機。
実施例1では、前記特定画像は、特図の飾り図柄の変動表示のスクロール方向における特定の表示位置の図柄(現図柄)であり、前記関連画像は、前記スクロール方向における他の表示位置の図柄(次図柄)である。
このため、スクロールしている状態を表示する図柄が、現図柄、次図柄、或いは更に前図柄、といったように多数ある場合に、特に有利となる。これら図柄の全てについて絶対座標データからなる座標テーブルを設定して記憶するとなると相当に膨大な記憶容量が必要になるが、本実施例のように、たった一つの図柄(現図柄)についてのみ絶対座標データの座標テーブルを設定しておき、あとはデータ量として極めて僅かな相対座標データ(前述した差DYのような値)のみを設定しておけばよいからである。
上記構成の発明概念は、下記のように表される。
前記表示制御装置が、前記画面において図柄をスクロール方向に複数表示する変動表示を行って停止させる変動表示ゲームの演出を行う構成であり、
前記特定画像は、前記スクロール方向における特定の表示位置の図柄であり、前記関連画像は、前記スクロール方向における他の表示位置の図柄であることを特徴とする遊技機。
実施例1では、基準となる画像(例えば、現図柄)については、相対座標データを使った演算を行っていないが、関連する全ての画像(例えば、現図柄及び次図柄)について、基準の絶対座標データ(基準座標データ)に相対座標データを加算する演算を必ず行って表示位置を設定する態様でもよい。例えば、図137のステップD803においてX座標、Y座標のデータを取得する座標テーブルを、現図柄の表示位置を指定するものととらえないで、現図柄及び次図柄の基準表示位置を指定する基準座標データのテーブルと考える。そして、この場合に基準表示位置に表示することになる現図柄については、X座標及びY座標の各座標データ(座標テーブルから取得したデータ)に相対座標データとして0を加算する演算を例えばステップD803の直後において実行する態様としてもよい。この場合、現図柄についてはステップD803の直後で、次図柄についてはステップD836で、基準の絶対座標データ(基準座標データ)に相対座標データを加算する演算をそれぞれ必ず行うことになる。なお、ここで「加算」には減算も実質的に含まれる。相対座標データがマイナス値であれば加算する演算によって実質的に減算が為されるからである。また、基準座標データ及び相対座標データは、必ずしもテーブルの形で記憶する必要はない。また、以上のことは図柄以外の画像(予告用のキャラクタの画像など)でも同様である。
上述した態様であると、相対座標データを使った演算を行うものと、当該演算を行わないものが生じないので、処理が共通化できるという効果がある。また、前述の実施例1で基準となる画像(例えば、現図柄)の表示位置を変更する作業も、相対座標データを変更するだけでよい(例えば、0から、0でないプラス又はマイナスの値に変更するだけでよい)ので、関連する全ての画像について表示位置を変更する作業が容易になるという利点もある。
上記態様を発明概念として記載すると、以下のようになる。
演出用の表示装置と、この表示装置の画面に演出用の画像を表示する表示制御を行う表示制御装置と、を備えた遊技機において、
前記表示制御装置は、
前記画像のうち関連する複数の画像について、前記画面における基準表示位置を指定する共通の基準座標データを記憶するとともに、前記基準座標データに加算することによって実際の表示位置を指定可能な相対座標データを、少なくとも表示位置が異なる画像毎に記憶する記憶手段と、
前記関連する複数の画像の表示制御では、前記基準座標データに、表示しようとする画像に対応する前記相対座標データを加算する演算をそれぞれ実行することによって、実際の表示位置を設定する表示制御手段と、を有することを特徴とする遊技機。
ここで、「関連する複数の画像」は、スクロール方向における複数の表示位置の画像(現図柄、次図柄など)に限定されず、前述したように、変動表示を行う複数の表示位置の図柄(例えば、左図柄、中図柄、右図柄)でもよいし、予告用のキャラクタの複数の画像(少なくとも表示位置が異なる画像)であってもよい。
実施例1では、コマンドバッファをリングバッファとしている。リングバッファであると、コマンドデータの用済み化処理(本例ではステップD74によるコマンド格納領域への複写)が完了したコマンドバッファ領域についてはコマンドデータが残っていても上書きできるようになり、コマンドの入力からコマンドバッファに格納するまでの受信処理が早くなる。しかも、コマンドデータの解析のための読み出し処理(本例では、コマンド格納領域への複写)の際に又はその後にコマンドデータのクリアやシフトを実行する必要がないため(但し、コマンド消去条件成立により消去される場合除く)、より処理が早くなる。
上記構成の発明概念は、下記のように表される。
遊技の進行を制御する遊技制御装置と、この遊技制御装置から送信されるコマンドに基づいて演出手段を制御して演出を行う演出制御装置と、を備えた遊技機において、
前記演出制御装置は受信した前記コマンドを格納するコマンドバッファを有し、このコマンドバッファがリングバッファであることを特徴とする遊技機。
実施例1では、演出制御装置300は、他の遊技機に遊技機間通信のコマンド(即ちサブ間コマンド)を送信する際、複数段階に分けてコマンドを送信可能である。例えば、第1遊技機間コマンドと第2遊技機間コマンドの2段階に分けてサブ間コマンドを送信可能である。これにより、複数の遊技機間で例えば同時に演出を行おうとする場合に、特定の台で直ちにサブ間コマンドに対応する演出を実行できない状況が発生しても問題なく同期させることができる。というのは、多段階にしたことで演出の準備期間が設けられるようになり、準備が完了している状態で実行指示コマンドを受信すれば直ちに実行を開始できるからである。
上記構成の発明概念は、下記のように表される。
演出手段と、この演出手段を制御して演出を行う制御装置とを備えた遊技機において、
前記制御装置は、
他の遊技機(他機)の制御装置との間で遊技機間通信が可能であり、
他の遊技機に前記遊技機間通信によってコマンドを送信する際、複数段階に分けてコマンドを送信可能であることを特徴とする遊技機。
実施例1では、サブ間コマンドのうちの同期演出系コマンドについては、まず予告種別指定コマンド(第1遊技機間コマンド)が送信され、その後実行指示コマンド(第2遊技機間コマンド)が送信される。これにより、サブ間コマンドを受信して同期演出を行う各遊技機は、まず予告種別指定コマンド(第1遊技機間コマンド)を受信した時点で例えば演出制御用のテーブルの設定を含む同期演出の準備処理を事前に行うことができ、その後実行指示コマンド(第2遊技機間コマンド)を受信したときには、準備が完了している状態であるので、直ちに同期演出の実行を開始できる。仮に実行指示コマンド受信時点で、主基板からのコマンド送信など、優先度の高い制御が割り込んだとしても、同期の遅れは僅かであり、ほとんど遅れ無しになる。
上記構成の発明概念は、下記のように表される。
前記制御装置は、
少なくとも第1遊技機間コマンドと第2遊技機間コマンドの2段階に分けて前記コマンドを送信可能であり、前記第1遊技機間コマンドは実行する所定演出の内容を伝えるためのコマンドであり、前記第2遊技機間コマンドは前記所定演出の実行開始を指令するコマンドであることを特徴とする遊技機。
4 前面枠
5 ガラス枠
12a、12b スピーカ(演出手段)
20 遊技盤
25 第1始動入賞口
26 第2始動入賞口2(普通電動役物:普電)
27 変動入賞装置(特別変動入賞装置)
32 普図始動ゲート
35 一括表示装置
41 表示装置(特図表示装置)(演出手段)
42 盤装飾装置(演出手段)
43 枠装飾装置(演出手段)
44 盤演出装置(演出手段)
45 枠演出装置(演出手段)
54 カードユニット接続基板
55 外部情報端子板
100 遊技制御装置(主基板)
101 遊技用マイコン
101A CPU
101B ROM
101C RAM
120 第1始動口スイッチ
121 第2始動口スイッチ
122 ゲートスイッチ
123 入賞口スイッチ
124 カウントスイッチ
125 磁気センサスイッチ
126 振動センサスイッチ
140 管理装置
200 払出制御装置
201 払出用マイコン
211 ガラス枠開放検出スイッチ
212 前面枠開放検出スイッチ
213 オーバーフロースイッチ
214 電波検知センサ
215 払出球検出スイッチ
216 シュート球切れスイッチ
300 演出制御装置(サブ基板)(制御装置)
311 主制御用マイコン(1stCPU)
311a RAM
321 PROM
360 無線モジュール
371 設定スイッチ
500 電源装置
551 カードユニット
Claims (1)
- 演出手段と、この演出手段を制御して演出を行う制御装置とを備えた遊技機において、
前記制御装置は、
他の遊技機の制御装置との間で遊技機間通信が可能であり、
他の遊技機に前記遊技機間通信によってコマンドを送信する際、複数段階に分けてコマンドを送信可能であることを特徴とする遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012189661A JP2014045844A (ja) | 2012-08-30 | 2012-08-30 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012189661A JP2014045844A (ja) | 2012-08-30 | 2012-08-30 | 遊技機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014045844A true JP2014045844A (ja) | 2014-03-17 |
JP2014045844A5 JP2014045844A5 (ja) | 2015-10-01 |
Family
ID=50606163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012189661A Pending JP2014045844A (ja) | 2012-08-30 | 2012-08-30 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014045844A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016041133A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
JP2016041130A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
JP2016041135A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002095821A (ja) * | 2000-09-26 | 2002-04-02 | Sophia Co Ltd | 遊技機 |
JP2010172770A (ja) * | 2010-05-19 | 2010-08-12 | Sanyo Product Co Ltd | 遊技機用画像表示装置 |
JP2010220981A (ja) * | 2009-03-25 | 2010-10-07 | Daito Giken:Kk | 遊技台 |
-
2012
- 2012-08-30 JP JP2012189661A patent/JP2014045844A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002095821A (ja) * | 2000-09-26 | 2002-04-02 | Sophia Co Ltd | 遊技機 |
JP2010220981A (ja) * | 2009-03-25 | 2010-10-07 | Daito Giken:Kk | 遊技台 |
JP2010172770A (ja) * | 2010-05-19 | 2010-08-12 | Sanyo Product Co Ltd | 遊技機用画像表示装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016041133A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
JP2016041130A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
JP2016041135A (ja) * | 2014-08-15 | 2016-03-31 | 京楽産業.株式会社 | 遊技機 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6005373B2 (ja) | 遊技機 | |
JP5959228B2 (ja) | 遊技機 | |
JP5952589B2 (ja) | 遊技機 | |
JP5959335B2 (ja) | 遊技機 | |
JP6152581B2 (ja) | 遊技機 | |
JP2013172884A (ja) | 遊技機 | |
JP2013198604A (ja) | 遊技機 | |
JP6167275B2 (ja) | 遊技機 | |
JP5969809B2 (ja) | 遊技機 | |
JP5747210B2 (ja) | 遊技機 | |
JP6186052B2 (ja) | 遊技機 | |
JP2013188349A (ja) | 遊技機 | |
JP6166513B2 (ja) | 遊技機 | |
JP5878080B2 (ja) | 遊技機 | |
JP2013252172A (ja) | 遊技機 | |
JP5947619B2 (ja) | 遊技機 | |
JP2014045844A (ja) | 遊技機 | |
JP6142158B2 (ja) | 遊技機 | |
JP6078745B2 (ja) | 遊技機 | |
JP6303181B2 (ja) | 遊技機 | |
JP2017038937A (ja) | 遊技機 | |
JP6102043B2 (ja) | 遊技機 | |
JP6207038B2 (ja) | 遊技機 | |
JP2016083468A (ja) | 遊技機 | |
JP6248315B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150806 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150806 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170714 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20171222 |