JP2016209043A - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP2016209043A JP2016209043A JP2015092421A JP2015092421A JP2016209043A JP 2016209043 A JP2016209043 A JP 2016209043A JP 2015092421 A JP2015092421 A JP 2015092421A JP 2015092421 A JP2015092421 A JP 2015092421A JP 2016209043 A JP2016209043 A JP 2016209043A
- Authority
- JP
- Japan
- Prior art keywords
- rom
- area
- ram area
- data
- cpuc
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims description 814
- 238000000034 method Methods 0.000 claims description 812
- 230000008569 process Effects 0.000 claims description 792
- 238000003860 storage Methods 0.000 claims description 100
- 230000008859 change Effects 0.000 claims description 49
- 230000003405 preventing effect Effects 0.000 abstract description 85
- 238000012360 testing method Methods 0.000 description 128
- 238000009987 spinning Methods 0.000 description 99
- 238000001514 detection method Methods 0.000 description 92
- 238000003780 insertion Methods 0.000 description 87
- 230000037431 insertion Effects 0.000 description 87
- 238000012986 modification Methods 0.000 description 63
- 230000004048 modification Effects 0.000 description 63
- 230000007704 transition Effects 0.000 description 35
- 230000005856 abnormality Effects 0.000 description 28
- 230000002159 abnormal effect Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 26
- 238000011084 recovery Methods 0.000 description 23
- 230000001276 controlling effect Effects 0.000 description 22
- 230000005540 biological transmission Effects 0.000 description 18
- 241000219109 Citrullus Species 0.000 description 17
- 235000012828 Citrullus lanatus var citroides Nutrition 0.000 description 17
- 230000000694 effects Effects 0.000 description 17
- 230000014759 maintenance of location Effects 0.000 description 17
- 239000000758 substrate Substances 0.000 description 17
- 230000007246 mechanism Effects 0.000 description 15
- 238000003825 pressing Methods 0.000 description 15
- 241000167854 Bourreria succulenta Species 0.000 description 13
- 235000019693 cherries Nutrition 0.000 description 13
- 230000001174 ascending effect Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 11
- 238000005259 measurement Methods 0.000 description 11
- 230000002265 prevention Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000002829 reductive effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000002360 preparation method Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 241001494479 Pecora Species 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 102100024452 DNA-directed RNA polymerase III subunit RPC1 Human genes 0.000 description 3
- 101000689002 Homo sapiens DNA-directed RNA polymerase III subunit RPC1 Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 239000013078 crystal Substances 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000002708 enhancing effect Effects 0.000 description 3
- 229910052698 phosphorus Inorganic materials 0.000 description 3
- 230000002250 progressing effect Effects 0.000 description 3
- 229920003002 synthetic resin Polymers 0.000 description 3
- 239000000057 synthetic resin Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000001343 mnemonic effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000287127 Passeridae Species 0.000 description 1
- 241000287531 Psittacidae Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 229910052757 nitrogen Inorganic materials 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Slot Machines And Peripheral Devices (AREA)
Abstract
【解決手段】遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとのROM上における配置位置を切り分け、プログラムソースコード上或いはメモリマップ上において互いが混在しないよう構成された。
【選択図】図90
Description
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが記憶されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが記憶されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが記憶されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが記憶されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域に記憶されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域に記憶されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記スタック領域は、第一スタック領域と第二スタック領域とに分かれており、
前記第一制御領域に記憶されているプログラムに従って第一の処理を実行する特定のタイミングで、レジスタに記憶されているデータを前記第一スタック領域へ退避し、前記第二制御領域に記憶されているプログラムに従って第二の処理を実行する所定のタイミングで、レジスタに記憶されているデータを前記第二スタック領域へ退避するよう構成されており、
前記第一制御領域に記憶されているプログラムにおける呼び出し命令があった場合であって、前記第二制御領域に記憶されているプログラムに従い所定の処理を実行するときには、スタックポインタのアドレス値を、前記第一スタック領域におけるアドレス値から前記第二スタック領域におけるアドレス値へと変更するよう構成されており、
前記スタックポインタのアドレス値を、前記第一スタック領域におけるアドレス値から前記第二スタック領域におけるアドレス値へと変更する処理が終了するまでの期間は、定期的に発生する割り込み制御の実行タイミングに到達した場合であっても、当該割り込み制御の実行が禁止されるよう構成されている
ことを特徴とする遊技機である。
ここで、各構成要素について説明する前に、本実施形態に係る回胴式遊技機Pの特徴(概略)を説明する。以下、図面を参照しながら、各要素について詳述する。
次に、リール窓D160は、前扉DUの一部を構成する合成樹脂等によって形成された透明な部材であり、リール窓D160を通して遊技機枠内に設置されたリールユニットを視認可能に構成されている。また、投入数表示灯D210は、LEDによって構成されており、現在ベット(一の遊技を開始するために必要な遊技メダルを投入すること)されているメダル数と同数のLEDが点灯するよう構成されている。また、操作状態表示灯D180は、LEDによって構成されており、現在の操作状態(メダル受付可否状態、再遊技入賞状態、遊技開始ウェイト状態等)に応じて点灯・消灯するよう構成されている。また、特別遊技状態表示装置D250は、7セグメントディスプレイによって構成されており、特別遊技中に払い出された払出数の総数が表示されるよう構成されている。尚、特別遊技状態表示装置D250を設けない構成としてもよく、そのように構成した場合には、演出表示装置S40にて当該払出数の総数を表示するよう構成することで遊技者は特別遊技中に払い出された払出数の総数を認識することができユーザーフレンドリーな遊技機とすることができる。また、払出数表示装置D190は、7セグメントディスプレイによって構成されており、現在払出されている遊技メダル数が表示されるよう構成されている。また、クレジット数表示装置D200は、7セグメントディスプレイによって構成されており、遊技者の持ちメダルとして遊技機内に貯留されているメダル数の総数(クレジット数)が表示されるよう構成されている。また、押し順表示装置D270は、リール停止順(左停止ボタンD41、中停止ボタンD42、右停止ボタンD43の停止順)によって入賞する役が相違し得る条件装置{いわゆる押し順小役であるが、入賞する役が相違した場合には、遊技者に付される利益率(払出枚数、その後のRT状態等)が異なり得るよう構成されているものが一般的である}が成立したゲームにて、遊技者に最も有利となるリール停止順を報知し得るよう構成されている。また、ARTカウンタ値表示装置D280は、押し順表示装置D270に表示された押し順ナビ表示に従って遊技を進行した場合に保障されることとなるART状態(詳細は後述)に滞在し得るゲーム数を表示し得るよう構成されている。尚、押し順表示装置D270は、払出数表示装置D190と兼用してもよいし、兼用しない場合、払出数表示装置D190には、後述するART状態中における入賞によって払出されたメダルの合計枚数(又は純増枚数)が表示されるよう構成されていてもよい。
次に、メダル投入口D170は、遊技メダルの投入口であり、メダル受付可能状態である状況下において当該投入口に投入された遊技メダルは遊技機枠内部へと誘導される。また、遊技機枠内部にはメダルの投入を検出するセンサとして、投入受付センサD10sと、第1投入センサD20sと、第2投入センサD30sと、が設けられており、当該遊技機枠内部へと誘導された遊技メダルが正常に投入されたと判断した場合に、当該投入されたメダルをベットされたメダルとして検出し得るよう構成されている。また、ベットボタンD220は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル(クレジットのメダル)をベットすることができるよう構成されている。また、精算ボタンD60は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル(クレジットのメダル)及び/又はベットされているメダルを遊技者に払い戻すことが可能となっている。尚、精算ボタンD60の操作によって払い戻された遊技メダルは、放出口D240に払い出されるよう構成されている。
次に、スタートレバーD50は、遊技者によって操作可能に構成されており、当該操作によってリールユニットの動作を開始可能に構成されている。また、停止ボタンD40は、遊技者によって操作可能な左停止ボタンD41、中停止ボタンD42、右停止ボタンD43を備えており、夫々の停止ボタンを操作することによってリールユニットの動作を順次停止可能に構成されている。
また、回胴式遊技機Pの遊技機枠の内外には、遊技の興趣性を高めるための機構として、予告演出や背景演出等の演出を表示するための演出表示装置S40、様々な点灯態様にて点灯し得るLEDランプS10、サウンドを出力し得るスピーカS20、合成樹脂等によって形成された部材である、上パネルD130及び下パネルD140、等が設けられている。
次に、図6を用いて、主制御基板Mの主制御チップCの構成例について説明する。
次に、図7を用いて、図6に示す主制御チップCのメモリマップの一例について説明する。当該メモリマップには、「0000H」から「FFFFH」までのアドレス空間が示されている。このうち、「0000H」から「27FFH」までの空間には内蔵ROMC110が割り当てられ、「2800H」から「28FFH」までの空間には主制御チップC内の各回路に内蔵されているレジスタ領域が割り当てられ、「F000H」から「F2FFH」までの空間には内蔵RAMC120が割り当てられ、「FDD0H」から「FDFBH」までの空間にはXCSデコードエリア(与えられた機械語を内部表現として解釈することであるデコードを実行する領域)が割り当てられている。CPUC100に、これらの番地に対してアクセスする命令を実行させることにより、対応するハードウェアに対するアクセスを実行させることができる。
まず、ステップ1000で、回胴式遊技機Pの電源を投入した後、ステップ1002で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ割り込みをセットする(ここでは、タイマ割り込みの種類をセットするのみであり、以降の処理において、タイマ割り込みが開始されると定期的に後述するタイマ割り込み時処理に係るフローチャートが実行される)。次に、ステップ1004で、CPUC100は、第1ROM・RAM領域内のデータに基づき、主制御チップCの機能設定を実行する。次に、ステップ1006で、CPUC100は、第2ROM領域の電源断復帰処理を呼び出す。
次に、ステップ1008で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスからチェックサム領域直前のアドレスまでのチェックサムを算出する。次に、ステップ1010で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMをチェックし(例えば、当該算出したチェックサムとチェックサム領域に保持されているチェックサムデータとに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックし)、電源断復帰データを生成する(当該チェック結果やステップ1800の電源断時処理にて実行した処理に基づいて生成し、第2RAM領域内で保持する)。次に、ステップ1012で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1014に移行する。
次に、ステップ1014で、CPUC100は、第1ROM・RAM領域内のデータに基づき、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のスイッチ状態を確認する。次に、ステップ1016で、CPUC100は、第1ROM・RAM領域内のデータを参照し、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のいずれかがオフであるか否かを判定する。ステップ1016でYesの場合、ステップ1018で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の非設定変更時初期化処理を呼び出し、ステップ1022に移行する。他方、ステップ1016でNoの場合には、ステップ1020で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の設定変更時初期化処理を呼び出し、ステップ1030に移行する。
次に、ステップ1022で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の電源断処理済みフラグのオン・オフ(ステップ1904でオンとなる)及び全RAMのチェックサム状態(ステップ1010でのチェック結果)を参照し、第2RAM内の電源断復帰データは正常ではないか否かを判定する。ステップ1022でYesの場合、ステップ1026で、CPUC100は、第2ROM・RAM領域内のデータに基づき、バックアップエラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。他方、ステップ1022でNoの場合、ステップ1028で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMの初期化範囲を未使用RAM範囲(図中欄外にて示す、第1RAM領域における未使用領域と第2RAM領域における未使用領域)に決定してセットし(例えば、レジスタ領域内にセットし)、ステップ1036に移行する。
次に、ステップ1040で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1028、ステップ1032又はステップ1034にて決定された初期化範囲で、第1RAM領域のみの初期化を実行する。次に、ステップ1041で、CPUC100は、第1ROM・RAM領域内のデータに基づき、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のいずれかがオフであるか否かを判定する。ステップ1041でYesの場合、ステップ1042で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の設定値チェック処理を呼び出し、ステップ1044に移行する。他方、ステップ1041でNoの場合には、ステップ1100で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、設定変更装置制御処理(設定変更処理とも称す)を実行する。
次に、ステップ1044で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内を参照し、第1RAM領域内の設定値に係るデータは正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1044でYesの場合、ステップ1046で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1050に移行する。他方、ステップ1044でNoの場合、ステップ1048で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示(例えば、払出数表示装置D190に表示されることとなる)をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する復帰不可能エラー処理を実行する。
次に、ステップ1050で、CPUC100は、第1ROM・RAM領域内のデータに基づき、電源断時の処理(ステップ1902)にて保存したスタックポインタに係るデータに基づき、スタックポインタを復帰する。次に、ステップ1052で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入力ポートの読み込みを実行する。次に、ステップ1054で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1002にてセットしたタイマ割り込みを開始する。次に、ステップ1056で、CPUC100は、第1ROM・RAM領域内のフラグエリア内にある電源断処理済みフラグをオフにし、復帰したスタックポインタに従い電源断時の処理に復帰する。
次に、図9は、図8におけるステップ1100のサブルーチンに係る、設定変更装置制御処理のフローチャートである。まず、ステップ1102で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタをセットする(当該処理の先頭アドレスで初期化する)。次に、ステップ1118で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ割り込みを開始する。次に、ステップ1120で、CPUC100は、第1ROM・RAM領域内のデータを参照し、第1RAM領域内の設定値は正常範囲内(本例では、1〜6)ではないか否かを判定する。ステップ1120でYesの場合、ステップ1122で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値に所定値(例えば、1=遊技者にとって最も不利となる値)をセットし、ステップ1124に移行する。他方、ステップ1120でNoの場合にもステップ1124に移行する。次に、ステップ1124で、CPUC100は、第1ROM・RAM領域内のデータに基づき、エラー表示LED(不図示)に設定変更装置作動中である旨を表示し、設定表示LED(不図示)に設定値を表示し、ステップ1126に移行する。
次に、図10は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(1枚目)のフローチャートである。まず、ステップ1202で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタをセットする(当該処理の先頭アドレスで初期化する)。次に、ステップ1204で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに必要な第1RAM領域内のデータ(例えば、ベット上限数、入賞の有効ライン、等)をセットする。次に、ステップ1206で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームにおける遊技状態(例えば、通常遊技中、大当り遊技中、再遊技確率変動遊技中、AT遊技中等)をセットする。次に、ステップ1208で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル払出装置Hが遊技メダルで満杯ではないか否かを判定する。具体的には、メダル払出装置Hから溢れ出たメダルを格納するサブタンク(不図示)を備え、サブタンクに設けられた複数の満杯検知センサによる電流の導通/非導通にて判定する(メダルを介して電流が導通した場合には、満杯と判定する)。ステップ1208でYesの場合、ステップ1218に移行する。
次に、図11は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。まず、ステップ1220で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルがベットされていない、且つ、クレジットが存在していないか否かを判定する。ステップ1220でYesの場合、ステップ1221で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定表示条件を充足している(例えば、扉スイッチD80、設定扉スイッチM10、設定キースイッチM20がすべてオンとなると当該条件を充足する)か否かを判定する。ステップ1221でYesの場合、ステップ1222で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定表示LED(不図示だが、払出数表示装置D190、クレジット数表示装置D200、投入数表示灯D210としてもよい)に設定値を表示し、ステップ1221に移行する。ステップ1220又はステップ1221でNoの場合、ステップ1224で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルの投入及び精算に係る管理を実行する。次に、ステップ1225で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルの受付可能枚数を確認する。次に、ステップ1226で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ブロッカD100がオンか否かを判定する。ステップ1226でYesの場合、ステップ1227で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1投入センサD20s又は第2投入センサD30sがオンであるか否かを判定する(第1投入センサD20s又は第2投入センサD30sがオンとなると、遊技メダルを1枚受け付けたと判定する)。ステップ1227でYesの場合、ステップ1228で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル投入エラー検出処理を呼び出し、ステップ1400に移行する。
次に、ステップ1400で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行する。次に、ステップ1229で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1230に移行する。
次に、ステップ1230で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1投入センサD20s及び第2投入センサD30sがオフであるか否かを判定する(第1投入センサD20s又は第2投入センサD30sがオンとなった後、第1投入センサD20s及び第2投入センサD30sがオフとなると、受け付けた1枚の遊技メダルが第1投入センサD20s及び第2投入センサD30sを通過したと判定する)。ステップ1230でYesの場合、ステップ1231で、CPUC100は、第1ROM・RAM領域内のデータに基づき、1枚の正常な遊技メダルの投入を受け付けたと判定する。不図示であるが、ステップ1231の後、CPUC100は、第1ROM・RAM領域内のデータに基づき、クレジットが上限数(本例では、50)、且つ、ベット数が最大数(本例では、3)ではないか否かを判定し、Yesと判定した場合にはブロッカD100をオフ(メダル流路を形成しない状態)に制御する。尚、ステップ1230でNoの場合には、ステップ1228に移行し、ステップ1226またはステップ1227でNoの場合には、ステップ1232に移行する。
次に、ステップ1450で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ1240で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域内の呼び出し元に復帰し、ステップ1247に移行する。
他方、ステップ1236でNoの場合、ステップ1241で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動後(ステップ1234の処理のタイミング後)から所定時間(例えば、5秒)経過したか否かを判定する。具体的には、ホッパ駆動信号をホッパモータH80に送信している(ホッパモータH80が回転している)のにもかかわらず、メダルが払い出されていないと判定している状況が所定時間継続したか否かを判定する。ステップ1241でYesの場合、ステップ1242で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオンにする(例えば、第1RAM領域のメダル空エラーフラグ領域内をオンに相当する値で更新する)。次に、ステップ1244で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラー表示を実行する。次に、ステップ1245で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1245でYesの場合、ステップ1246で、CPUC100は、第1ROM・RAM領域内のフラグエリア内にある、メダル空エラーフラグをオフにし(例えば、第1RAM領域のメダル空エラーフラグ領域内をオフに相当する値で更新し)、ステップ1247に移行する。他方、ステップ1245でNoの場合、ステップ1244に移行する。
次に、ステップ1247で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s及び第2払出センサH20sがオフであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなった後、第1払出センサH10s及び第2払出センサH20sがオフとなると、払出動作が行われていた1枚の遊技メダルの払出動作が完了したと判定する)。ステップ1247でYesの場合、ステップ1248で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ1233に移行する。尚、ステップ1241又はステップ1247でNoの場合には、ステップ1236に移行する。
次に、ステップ1500で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ1250で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1251に移行する。
次に、ステップ1251で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタートレバーD50が有効であり(例えば、ゲームを開始するための規定枚数の遊技メダルが投入された等)、且つ、当該スタートレバーD50の操作があったか否かを判定する。ステップ1251でYesの場合、ステップ1252で、CPUC100は、第1ROM・RAM領域内のデータに基づき、乱数の取得、ブロッカD100をオフにする処理を実行した後に、第2ROM領域の設定値チェック処理を呼び出し、ステップ1253に移行する。
次に、ステップ1253で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の設定値は正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1253でYesの場合、ステップ1254で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、次の処理(ステップ1257の処理)に移行する。他方、ステップ1253でNoの場合、ステップ1256で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
次に、図12は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(3枚目)のフローチャートである。まず、ステップ1257で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部抽選(当該ゲームにおいて入賞可能となる役を決定するための抽選)を開始する。次に、ステップ1258で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全リール(リールM50)の回転を開始し、ステップ1260に移行する。次に、ステップ1260で、CPUC100は、第1ROM・RAM領域内のデータに基づき、引き込みポイント作成要求(回転している左リールM51、中リールM52、右リールM53の停止位置を決定するために要求され、停止順番や他のリールの停止位置に応じて適宜要求される)があったか否かを判定する。ステップ1260でYesの場合、ステップ1261で、CPUC100は、第1ROM・RAM領域内のデータに基づき、引き込みポイントを作成し、ステップ1262に移行する。他方、ステップ1260でNoの場合にも、ステップ1262に移行する。次に、ステップ1262で、CPUC100は、第1ROM・RAM領域内のデータに基づき、リール停止受付可否チェックを実行する。次に、ステップ1263で、CPUC100は、第1ROM・RAM領域内のデータに基づき、いずれかの停止ボタン(左停止ボタンD41、中停止ボタンD42、右停止ボタンD43)の操作があったか否かを判定する。ステップ1263でYesの場合、ステップ1264で、CPUC100は、第1ROM・RAM領域内のデータに基づき、操作があった停止ボタンに対応したリール(例えば、左停止ボタンD41には左リールM51が対応)の停止位置を決定し、ステップ1265に移行する。他方、ステップ1263でNoの場合にも、ステップ1265に移行する。次に、ステップ1265で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全リール停止チェック処理を実行する。次に、ステップ1266で、CPUC100は、第1ROM・RAM領域内のデータに基づき、すべてのリール(左リールM51、中リールM52、右リールM53)が停止したか否かを判定する。ステップ1266でYesの場合、ステップ1267で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の表示判定チェック処理を呼び出し、ステップ1268に移行する。尚、ステップ1266でNoの場合、ステップ1260に移行する。
次に、ステップ1268で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の図柄停止位置データと、内部成立役停止可能位置データとを比較する。次に、ステップ1269で、CPUC100は、第2ROM・RAM領域内のデータを参照し、表示された図柄の組み合わせが正常であるか否かを判定する(内部抽選によって決定された入賞可能となる役と一致していなければ異常であると判定される)。ステップ1269でYesの場合、ステップ1500で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ1270で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1274に移行する。他方、ステップ1269でNoの場合、ステップ1272で、CPUC100は、第2ROM・RAM領域内のデータに基づき、表示判定エラー表示をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
次に、ステップ1274で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入賞による遊技メダルの払出処理を実行する。次に、ステップ1275で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルを払い出す入賞があったか否かを判定する{入賞によって獲得した遊技メダルが、クレジットの最大数(本例では、50)を超過した場合に、遊技メダルの払出が実行される}。ステップ1275でYesの場合、ステップ1276で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグ(第1RAM領域内のフラグであり、ホッパモータH80を駆動している際にオンとするフラグ)をオンにし、遊技メダル1枚の払出を実行する。次に、ステップ1277で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s又は第2払出センサH20sがオンであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなると、遊技メダル1枚の払出動作が行われていると判定する)。ステップ1277でYesの場合、ステップ1278で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内のメダル払出エラー検出処理を呼び出し、ステップ1450に移行する。
次に、ステップ1450で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ1284で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域内に呼び出し元に復帰し、ステップ1286に移行する。
他方、ステップ1277でNoの場合、ステップ1279で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動後(ステップ1276の処理のタイミング後)から所定時間(例えば、5秒)経過したか否かを判定する。ステップ1279でYesの場合、ステップ1280で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオンにする(例えば、第1RAM領域のメダル空エラーフラグ領域内をオンに相当する値で更新する)。次に、ステップ1281で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラー表示を7セグLEDで実行する。次に、ステップ1282で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1282でYesの場合、ステップ1283で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオフにし(例えば、第1RAM領域のメダル空エラーフラグ領域内をオフに相当する値で更新し)、ステップ1286に移行する。他方、ステップ1282でNoの場合、ステップ1281に移行する。
次に、ステップ1286で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s及び第2払出センサH20sがオフであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなった後、第1払出センサH10s及び第2払出センサH20sがオフとなると、払出動作が行われていた1枚の遊技メダルの払出動作が完了したと判定する)。ステップ1286でYesの場合、ステップ1288で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ1290に移行する。尚、ステップ1279又はステップ1286でNoの場合には、ステップ1277に移行する。次に、ステップ1290で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該入賞(ステップ1275でYesとなった入賞)に対応した払出が完了したか否かを判定する。ステップ1290でYesの場合、ステップ1292で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技終了処理(例えば、ベット数のクリア、遊技状態の移行処理等)を実行し、次の処理(ステップ1202の処理)に移行する。尚、ステップ1286でNoの場合には、ステップ1277に移行し、ステップ1275でNoの場合には、ステップ1292に移行する。
次に、図13は、図8におけるステップ1300の(及び他のフローチャートにおいて呼び出された)サブルーチンに係る、復帰不可能エラー処理のフローチャートである。まず、ステップ1302で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込みを禁止する(以降は、後述するタイマ割り込み時処理に係るフローチャートが実行されない)。次に、ステップ1304で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力ポートアドレス及び出力ポート数をセットする。次に、ステップ1306で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力ポート(本例では、0〜6であり、各種LEDへの表示出力や各種モータへの駆動出力)をオフにする。次に、ステップ1308で、CPUC100は、第1ROM・RAM領域内のデータに基づき、次のポート出力アドレスをセットする(この繰り返しにより、各種LEDへの表示出力や各種モータへの駆動出力が順次停止される)。次に、ステップ1310で、CPUC100は、第1ROM・RAM領域内のデータに基づき、各出力ポートへの出力が終了したか否かを判定する。ステップ1310でYesの場合には、ステップ1312で、CPUC100は、第1ROM・RAM領域内のデータに基づき、セットされているエラー表示を実行し(本処理を実行する際には何らかのエラーが発生している)、当該処理の実行を繰り返し、電源電圧が低下することでリセット信号が入力されて終了する。(即ち、無限ループに突入するので、復帰を促す一切の操作を受け付けない)。尚、ステップ1310でNoの場合には、ステップ1306に移行する。尚、ステップ1306〜ステップ1310の処理は、LED・モータへの出力をクリアする処理である(但し、外部出力信号はクリアしないので、エラーに関する情報やエラー発生時における遊技進行状況等をホールコンピュータ側へ出力することは可能である)。
次に、図14は、図11におけるステップ1400のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。まず、ステップ1402で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグ(ステップ1706でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1402でYesの場合、ステップ1404で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラー(投入された遊技メダルが逆流したことによるエラーであり、例えば、第1投入センサD20sオフ且つ第2投入センサD30sオン→第1投入センサD20sオン且つ第2投入センサD30sオンとなった場合にエラーとなる)表示を実行する。次に、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダルエラー逆流エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1406でYesの場合、ステップ1408で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグをオフにし、次の処理(ステップ1229の処理)に移行する。
次に、図15は、図11及び図12におけるステップ1450のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。まず、ステップ1452で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグ(ステップ1756でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1452でYesの場合、ステップ1456で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラー(払い出された遊技メダルが滞留したことによるエラーであり、例えば、第1払出センサH10sオン且つ第2払出センサH20sオンである状態が所定時間継続した場合にエラーとなる)表示を実行する。次に、ステップ1458で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1458でYesの場合、ステップ1460で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグをオフにし、次の処理(ステップ1240又はステップ1284の処理)に移行する。
次に、図16は、図11及び図12におけるステップ1500のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。まず、ステップ1502で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグ(ステップ1806でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1502でYesの場合、ステップ1504で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラー(遊技メダルが投入されないはずのタイミングにて遊技メダルの投入を検出したことによるエラー)表示を実行する。次に、ステップ1506で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1506でYesの場合、ステップ1508で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグをオフにし、ステップ1510に移行する。尚、ステップ1502でNoの場合にも、ステップ1510に移行する。
まず、ステップ1602で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み開始時の処理(例えば、CPUC100内のレジスタで保持されているデータの退避、電源断検知信号の入力ポートチェック等)を実行する。次に、ステップ1604で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在(今回の割り込み処理にて)電源断を検知していないか否かを判定する。ステップ1604でNoの場合、ステップ1900で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、電源断時処理を実行する。他方、ステップ1604でYesの場合、ステップ1606で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ計測(ソフトウエアで管理する各種タイマの更新処理)を開始する。次に、ステップ1608で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入力ポートデータを生成して、当該データを記憶する(第1RAM領域内の各入力ポートデータの格納領域を更新する)。ここで、入力ポートデータとは、精算ボタンD60、スタートレバーD50、停止ボタンD40、扉スイッチD80、設定扉スイッチM10、設定キースイッチM20、設定/リセットボタンM30、電源断検知信号、投入受付センサD10s、第1投入センサD20s、第2投入センサD30s、第1払出センサH10s、第2払出センサH20s、等の検出に係る情報である(即ち、これらの操作部材での操作有無やセンサ検知状態が、割り込み間隔Tでサンプリングされる)。
次に、ステップ1700で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル投入チェック処理を実行する。次に、ステップ1750で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出チェックを実行する。次に、ステップ1800で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラーチェック処理を実行する。次に、ステップ1618で、CPUC100は、第2ROM・RAM領域内のデータに基づき、すべてのエラーフラグがオフ(投入メダル逆流フラグ、投入枚数エラーフラグ、メダル滞留エラーフラグ、投入異常エラーフラグ、払出異常エラーフラグ、払出メダル滞留エラーフラグ、扉スイッチフラグ、等のエラーに係るフラグが全てオフ)であるか否かを判定する(但し、本実施形態では、扉スイッチフラグに関しては、第1RAM領域内で格納されているため、第1RAM領域を参照して判定する)。ステップ1618でYesの場合、ステップ1620で、CPUC100は、第2ROM・RAM領域内のデータに基づき、エラー未検出コマンド(サブ側へのコマンドであり、エラーが検出されていない旨に係るコマンド)をセットし(例えば、レジスタ領域内にセットし)、ステップ1624に移行する。他方、ステップ1618でNoの場合、ステップ1622で、CPUC100は、第2ROM・RAM領域内のデータに基づき、エラー検出コマンド(サブ側へのコマンドであり、エラーが検出されている旨に係るコマンド)をセットし(例えば、レジスタ領域内にセットし)、ステップ1624に移行する。尚、ステップ1622においては、オンとなっているエラーフラグに対応したエラー(現在発生しているエラー)に係る情報がサブ側に送信されるよう構成されている。また、エラー未検出コマンドはエラーが発生していた状態からエラーが解除された場合にのみ(フラグがオフになったと判定された場合にのみ)セットしても良いし、エラー未検出のときには当該情報のセット処理を実行しなくても良い(S1620が無くても良い)。更に、エラー検出コマンドはエラーが発生していない状態からエラーが発生した場合にのみセット処理を実行しても良いし、第1のエラー(例えば、投入メダル滞留エラー)が発生している状態から第2のエラー(例えば、払出メダル滞留エラー)のようにエラーの種類が変わった場合にセット処理を実行しても良い。次に、ステップ1624で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1626に移行する。
次に、ステップ1626で、CPUC100は、第1ROM・RAM領域内のデータに基づき、制御コマンド(サブ側のコマンド)を送信する(例えば、ステップ1620やステップ1622でレジスタ領域内にセットされている場合には、そのセットされた制御コマンドを引き継ぐこととなる)。次に、ステップ1628で、CPUC100は、第1ROM・RAM領域内のデータに基づき、外部信号(回胴式遊技機Pから外部のホールコンピュータ等へ情報伝達するための信号)を出力する。尚、当該外部信号にて出力されるエラーに係る情報としては、ドア開放エラー、投入異常エラー、払出異常エラー、設定扉開放エラー(不図示)、投入受付センサ滞留エラー(不図示)、等が出力される。尚、ドア開放エラーは、前扉DUが開放されドアスイッチフラグがオンとなった場合にエラーとなるよう構成されており、設定扉開放エラーは設定扉が開放され設定扉スイッチフラグがオンとなった場合にエラーとなるよう構成されており、投入受付センサ滞留エラーは投入受付センサが遊技メダルの滞留を検出した場合にエラーとなるよう構成されている。次に、ステップ1630で、CPUC100は、第1ROM・RAM領域内のデータに基づき、LED(7セグLEDランプ、等)の出力データ(例えば、複数の7セグLEDユニットのうち、所定の7セグLEDユニットを点灯させ、7セグの所定のセグメントを点灯させる)を出力する(所謂、ダイナミック点灯)。次に、ステップ1632で、CPUC100は、第1ROM・RAM領域内のデータに基づき、LEDの点灯態様(例えば、LEDの点灯色を変更)を実行する。尚、ステップ1632は実行されなくても良い。次に、ステップ1634で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ソフト乱数管理処理(ソフトウエアで管理する乱数値の更新処理等)を実行する。次に、ステップ1636で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の乱数チェック処理を呼び出し、ステップ1638に移行する。
次に、ステップ1638で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内部情報レジスタデータを取得する(内部情報レジスタには、乱数発生回路に異常が出ると異常フラグ用ビットが立つ領域が存在している)。次に、ステップ1640で、CPUC100は、第2ROM・RAM領域内のデータに基づき、乱数更新用クロックの周波数は正常であるか否か(当該周波数異常を示す異常フラグ用ビットが立っていないか否か)を判定する。具体的には、乱数更新用クロックの周波数が所定値を下回った場合に異常用フラグビットが立つ。ステップ1640でYesの場合、ステップ1642で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内蔵乱数の更新状態は正常であるか否か(当該更新状態異常を示す異常フラグ用ビットが立っていないか否か)を判定する。ステップ1642でYesの場合、ステップ1644で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰する。他方、ステップ1640又はステップ1642でNoの場合には、ステップ1646で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内蔵乱数エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理を実行する。
次に、ステップ1648で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み終了処理を実行し、次の処理(ステップ1602の処理)に移行する。
次に、図18は、図17におけるステップ1700のサブルーチンに係る、メダル投入チェック処理のフローチャートである。まず、ステップ1702で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1投入センサD20sがオンであるか否か(検出しているか否か)を判定する(但し、第1投入センサD20sの入力ポートデータ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1702でYesの場合、ステップ1704で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1投入センサD20s及び第2投入センサD30sが、投入された遊技メダルの逆流を検知している(例えば、第1投入センサD20sオフ、且つ、第2投入センサD30sオン→第1投入センサD20sオン、且つ、第2投入センサD30sオンとなった場合に検知するものであり、この検知状態の時系列データ自体は第2RAM領域内で保持されている)か否かを判定する。ステップ1704でYesの場合、ステップ1706で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグをオンにし(例えば、第2RAM領域の投入メダル逆流エラーフラグ領域内をオンに相当する値で更新し)、ステップ1708に移行する。他方、ステップ1704でNoの場合にも、ステップ1708に移行する。
次に、図19は、図17におけるステップ1750のサブルーチンに係る、メダル払出チェック処理のフローチャートである。まず、ステップ1752で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ホッパ駆動フラグがオンであるか否か(検出しているか否か)を判定する(但し、ホッパ駆動フラグ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1752でYesの場合、ステップ1754で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払い出されたメダルの滞留を検出(例えば、第1払出センサH10sオンである状態が所定時間継続した場合、且つ、第2払出センサH20sオンである状態が所定時間継続した場合に検知するものであり、この検知状態のデータ自体は第2RAM領域内で保持されている)しているか否かを判定する。ステップ1754でYesの場合、ステップ1756で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグをオンにし(例えば、第2RAM領域の払出メダル滞留エラーフラグ領域内をオンに相当する値で更新し)、次の処理(ステップ1800の処理)に移行する。尚、ステップ1752又はステップ1754でNoの場合も、次の処理(ステップ1800の処理)に移行する。
次に、図20は、図17におけるステップ1800のサブルーチンに係る、投入・払出エラーチェック処理のフローチャートである。まず、ステップ1802で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ブロッカD100がオフであるか否かを判定する(但し、ブロッカD100の出力ポートデータ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1802でYesの場合、ステップ1804で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入センサの異常検出(第1投入センサD20s又は第2投入センサD30sが遊技メダルの検出をしないはずのタイミングにおける検出)があるか否かを判定する。ステップ1804でYesの場合、ステップ1806で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグをオンにし(例えば、第2RAM領域の異常投入エラーフラグ領域内をオンに相当する値で更新し)、ステップ1808に移行する。尚、ステップ1802又はステップ1804でNoの場合にも、ステップ1808に移行する。
次に、図21は、図17におけるステップ1900のサブルーチンに係る、電源断時処理のフローチャートである。まず、ステップ1902で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタを保存する。次に、ステップ1904で、CPUC100は、第1ROM・RAM領域内のデータに基づき、電源断処理済みフラグをオンにする(例えば、第1RAM領域の電源断処理済みフラグ領域内をオンに相当する値で更新する)。次に、ステップ1906で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のチェックサム算出処理を呼び出し、ステップ1908に移行する。
次に、ステップ1908で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスからチェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)をチェックサム領域にてセットする(チェックサム領域に係るアドレスは同図下段の「RAMに係るメモリマップ」を参照)。次に、ステップ1910で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1912に移行する。
次に、ステップ1912で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM・第2RAMの書き込みを禁止し、ステップ1914に移行する。次に、ステップ1914で、CPUC100は、第1ROM・RAM領域内のデータに基づき、リセットを待機するための無限ループ処理を実行する。
尚、本実施形態においては、エラー表示処理等も不正行為防止用のプログラムとして見做し、第2ROM領域にて配置されているプログラムコードとして実装するための一例を示したが、エラー表示処理等は遊技進行を制御する上でも必要不可欠な処理であるため、不正行為防止用のプログラムではなく遊技性仕様を実装するためのプログラムとして見做した方が、人為的な検証が容易になる可能性がある。そこで、このような事情に鑑み、本実施形態で示した一例をベースとし、遊技性仕様を実装するためのプログラムとして見做した方が好適となり得る処理を、第1ROM領域にて配置されているプログラムコードとして実装するための一例を第2実施形態とし、以下、本実施形態からの変更点について詳述していく。
はじめに、図22は、第2実施形態に係る回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、主制御基板MのCPUC100にて初めて実行される処理の流れを示したフローチャート(1枚目)である。本実施形態との相違点は、ステップ1005‐1(第2)、ステップ1005‐2(第2)、ステップ1009‐1(第2)、ステップ1009‐2(第2)、ステップ1017(第2)、ステップ1019‐1(第2)〜ステップ1019‐3(第2)、ステップ1021‐1(第2)、ステップ1021‐2(第2)、ステップ1027(第2)、ステップ1029(第2)、ステップ1035‐1(第2)及びステップ1035‐2(第2)であり、即ち、ステップ1004で、チップの機能設定を実行した後、ステップ1005‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスから第1チェックサム領域直前アドレスまでのチェックサムを算出する。ここで、同図右(RAMに係るメモリマップ)に示されるように、第2実施形態においては、第1RAM領域のチェックサム領域(第1チェックサム領域)と第2RAM領域のチェックサム領域(第2チェックサム領域)とが別々になっており、後述する第2実施形態における電源断時処理にて、第1RAM領域のチェックサム算出と第2RAM領域のチェックサム算出とが別々に行われ、夫々の算出結果に基づく誤り検出用情報が夫々の領域に格納される。次に、ステップ1005‐2で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAMをチェックし、第1RAM電源断復帰データ(第1RAMに係る電源断復帰データ)を生成し、ステップ1006に移行する。よって、ここでの「第1RAMをチェック」とは、第1RAM領域を対象としたチェックサムと、第1チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックする処理となる。
他方、ステップ1006で電源断復帰処理を呼び出した後、ステップ1009‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域の先頭アドレスから、第2チェックサム領域を除く最終アドレスまでのチェックサムを算出する。次に、ステップ1009‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAMをチェックし、第2RAM電源断復帰データ(第1RAMに係る電源断復帰データ)を生成し、ステップ1012に移行する。即ち、ここでの「第2RAMをチェック」とは、第2RAM領域を対象としたチェックサムと、第2チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックする処理となる。
また、ステップ1016ですべてのスイッチがオンであった場合、ステップ1017(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定変更操作ありフラグをオンにし(例えば、第1RAM領域の設定変更操作ありフラグ領域内をオンに相当する値で更新し)、ステップ1018に移行する。
また、ステップ1018で非設定変更時初期化処理を呼び出した後、ステップ1019‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ1019‐1(第2)でYesの場合、ステップ1019‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の電源断復帰データは正常であるか否か(特に、第1RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1019‐2(第2)でYesの場合、ステップ1019‐3(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断復帰データは正常であるか否か(特に、第2RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1019‐3(第2)でYesの場合、ステップ1028で、第1RAM領域及び第2RAM領域の初期化範囲を未使用RAM範囲に決定してセットし、ステップ1027(第2)で、第2RAM領域内の電源断異常フラグをオフにし、ステップ1036に移行する。他方、ステップ1019‐2(第2)又はステップ1019‐3(第2)でNoの場合、ステップ1029(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグをオンにし、ステップ1036に移行する。
次に、図23は、第2実施形態に係る回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、主制御基板MのCPUC100にて初めて実行される処理の流れを示したフローチャート(2枚目)である。本実施形態との相違点は、ステップ1039‐1(第2)、ステップ1039‐2(第2)、ステップ1026(第2)、ステップ1300(第2)、ステップ1045(第2)、ステップ1046(第2)及びステップ1047(第2)であり、即ち、ステップ1039‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ1039‐1(第2)でYesの場合、ステップ1039‐2(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグがオフであるか否かを判定する。ステップ1039‐2(第2)でYesの場合又はステップ1039‐1(第2)でNoの場合には、ステップ1040に移行し(即ち、設定変更装置を作動させる場合か、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果が正常であることを含め、正常に電断復帰している場合には以降の処理を続行し)、ステップ1039‐2(第2)でNoの場合、ステップ1026(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、バックアップエラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする(即ち、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果が異常であることを含め、正常に電断復帰していない場合には復帰不可能な状態へと移行する)。ここで、本例においては、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果がいずれも正常である場合において以降の処理を続行するよう構成されているが、これには限定されず、例えば、第1RAM領域を対象とした誤り検出結果が正常であれば、第2RAM領域を対象とした誤り検出結果が異常であっても(第2RAM領域の全領域を初期化した上で)以降の処理を続行するよう構成してもよい。
また、ステップ1044で、第1RAM領域内の設定値が正常範囲内であった場合、ステップ1045(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1047(第2)に移行する。他方、ステップ1044でNoの場合、ステップ1046(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1047(第2)に移行する。
次に、ステップ1047(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグがオフであるか否かを判定する。ステップ1047(第2)でYesの場合には、ステップ1050に移行し、Noの場合には、ステップ1048(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(バックアップエラー表示、設定値エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、図24は、第2実施形態におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。本実施形態との相違点は、ステップ1228(第2)、ステップ1700(第2)、ステップ1400(第2)、ステップ1237(第2)、ステップ1750(第2)、ステップ1450(第2)、ステップ1249‐1(第2)、ステップ1800(第2)、ステップ1500(第2)、ステップ1254‐1(第2)〜ステップ1254‐3(第2)、ステップ1256(第2)及びステップ1300(第2)であり、即ち、ステップ1227で遊技メダルの投入を受け付けた後、又は、ステップ1230で第1投入センサD20s及び第2投入センサD30sがオフでなかった場合に、ステップ1228(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル投入チェック処理を呼び出し、ステップ1700(第2)に移行する。
次に、ステップ1700(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル投入チェック処理を実行し、ステップ1229に移行する。尚、この第2ROM領域のメダル投入チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル投入チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
また、ステップ1229で第1ROM領域の呼び出し元に復帰した後、ステップ1400(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行し、ステップ1230に移行する。尚、第2実施形態においては、メダル投入エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、ステップ1750(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ1240に移行する。尚、この第2ROM領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
また、ステップ1240で第1ROM領域の呼び出し元に復帰した後、ステップ1450(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ1247に移行する。尚、第2実施形態においては、メダル払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、ステップ1800(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ1250に移行する。尚、この第2ROM領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
また、ステップ1250で第1ROM領域の呼び出し元に復帰した後、ステップ1500(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行し、ステップ1251に移行する。尚、第2実施形態においては、投入・払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
また、ステップ1253で第1RAM領域内の設定値が正常範囲内であった場合、ステップ1254‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1254‐3(第2)に移行する。他方、ステップ1253で第1RAM領域内の設定値が正常範囲内でなかった場合、ステップ1254‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1254‐3(第2)に移行する。
次に、ステップ1254‐3(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグがオフであるか否かを判定する。ステップ1254‐3(第2)でYesの場合、次の処理(ステップ1257の処理)に移行し、Noの場合には、ステップ1256(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(設定値エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、図25は、第2実施形態における、図24のステップ1400(第2)のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、メダル投入エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM領域内のフラグである、投入メダル逆流エラーフラグ、投入メダル滞留エラーフラグ及び投入枚数エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
次に、図26は、第2実施形態における、図24のステップ1450(第2)のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、メダル払出エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM領域内のフラグである、払出メダル滞留エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
次に、図27は、第2実施形態における、図24のステップ1500(第2)のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、投入・払出エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM内のフラグである、異常投入エラーフラグ及び異常払出エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
次に、図28は、第2実施形態における、遊技進行制御処理(3枚目)のフローチャートである。本実施形態との相違点は、ステップ1269‐1(第2)〜ステップ1269‐4(第2)、ステップ1272(第2)、ステップ1300(第2)、ステップ1800(第2)、ステップ1500(第2)、ステップ1277‐1(第2)、ステップ1750(第2)及びステップ1450(第2)であり、即ち、ステップ1269で、表示された図柄の組み合わせが正常である場合、ステップ1269‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1269‐3(第2)に移行する。他方、ステップ1269で、表示された図柄の組み合わせが正常でない場合、ステップ1269‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1269‐3(第2)に移行する。
次に、ステップ1269‐3(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグがオフであるか否かを判定する。ステップ1269‐3(第2)でYesの場合、ステップ1269‐4(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の投入・払出エラーチェック処理を呼び出し、ステップ1500(第2)に移行する。他方、ステップ1269‐3(第2)でNoの場合には、ステップ1272(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、表示判定エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(表示判定エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、ステップ1800(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ1270に移行する。尚、この第2ROM領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
また、ステップ1270で第1ROM領域の呼び出し元に復帰した後、ステップ1500(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、投入・払出エラー検出処理を実行し、ステップ1274に移行する。尚、第2実施形態においては、投入・払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、ステップ1750(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ1284に移行する。尚、この第2ROM領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
また、ステップ1284で第1ROM領域の呼び出し元に復帰した後、ステップ1450(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ1286に移行する。尚、第2実施形態においては、メダル払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、図29は、第2実施形態における、図23、図24、図28及び図30のステップ1300(第2)のサブルーチンに係る、復帰不可能エラー処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、復帰不可能エラー処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、復帰不可能な(即ち、回胴式遊技機Pを動作不能とする)状態へと移行させるという強制力をもった処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができる。
次に、図30は、第2実施形態におけるステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。本実施形態との相違点は、ステップ1648(第2)、ステップ1650(第2)及びステップ1654(第2)であり、即ち、ステップ1642で、内蔵乱数の更新状態が正常であった場合、ステップ1648(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の内蔵乱数異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1654(第2)に移行する。他方、ステップ1640で、乱数更新用クロックの周波数が正常でなかった、又は、ステップ1642で、内蔵乱数の更新状態が正常でなかった場合に、ステップ1650(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の内蔵乱数異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1654(第2)に移行する。
次に、ステップ1654(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内蔵乱数異常フラグがオフであるか否かを判定する。ステップ1654(第2)でYesの場合には、ステップ1636に移行し、Noの場合には、ステップ1648(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内蔵乱数エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(内蔵乱数エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
次に、図31は、第2実施形態における、図30のステップ1900のサブルーチンに係る、電源断時処理のフローチャートである。本実施形態との相違点は、ステップ1905(第2)及びステップ1909(第2)であり、即ち、ステップ1904で、電源断処理済みフラグをオンにした後、ステップ1905(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスから第1チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)を第1チェックサム領域にてセットする。次に、ステップ1906で、第2ROM領域のチェックサム算出処理を呼び出し、ステップ1909(第2)に移行する。
次に、ステップ1909(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域の先頭アドレスから第2チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)を第2チェックサム領域にてセットし、ステップ1910に移行する。前述したように、第2実施形態においては、チェックサム領域は第1チェックサム領域と第2チェックサム領域とに分かれており、同図下段に示されるように、第1チェックサム領域は第1RAM領域の最終アドレスに、第2チェックサム領域は第2RAM領域の最終アドレスに夫々存在している。また、第1RAM領域のチェックサム算出及びセットは第1ROM領域における処理が実行し、第2RAM領域のチェックサム算出及びセットは第2ROM領域における処理が実行するよう構成されている。
尚、本実施形態においては、エラー表示処理等も不正行為防止用のプログラムとして見做し、第2ROM領域にて配置されているプログラムコードとして実装するための一例を示したが、第2ROM領域にて配置されるべきプログラムは、エラー表示処理以外にも概念できる。特に、出玉試験(遊技者の射幸心を著しく煽るような社会的不適合機でないことを認定するための試験)のみに供される出玉試験用プログラムは、本来市場(量産時)では必要とされないプログラムであるため、第2ROM領域にて配置した方が好適となる場合がある。そこで、本実施形態で示した一例をベースとし、さらなるプログラムを第2ROM領域にて実行するような構成の一例を第3実施形態とし、以下、本実施形態からの相違点について詳述していく。
次に、図40は、第3実施形態における、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。本実施形態との相違点は、ステップ1257‐1(第3)、ステップ1257‐2(第3)、ステップ3100(第3)、ステップ3150(第3)、ステップ3200(第3)、ステップ1291‐1(第3)〜ステップ1291‐3(第3)、ステップ3250(第3)、ステップ3300(第3)及びステップ3350(第3)であり、その目的は、従来の回胴式遊技機においては副制御基板S側で制御していた押し順ナビ機能を、主制御基板M側へ移行させることである。即ち、ステップ1257で内部抽選(条件装置番号の決定処理)を実行した後、ステップ1257‐1(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該実行した内部抽選の結果及び条件装置識別値(ボーナス識別値、小役識別値、等であり、図49の条件装置情報の一例を参照)を第1RAM領域に一時記憶する。尚、本例では、当該実行した内部抽選の結果に関して、当該決定された条件装置番号を、図49の条件装置情報の一例における「D0〜D5ビット」へセットする(小役に関しては小役状態情報としてセットし、ボーナスに関してはボーナス状態情報としてセットする)と共に、当該実行した内部抽選の結果が小役に関するものであるかボーナス(本例では、第一種BB)に関するものであるかを識別するためのビット列を「D6〜D7ビット」へセットする(小役に関しては「D6〜D7ビット」=「10」を小役状態情報としてセットし、ボーナスに関しては「D6〜D7ビット」=「01」ボーナス状態情報としてセットする)よう構成されている。次に、ステップ1257‐2(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタM60(押し順表示装置D270に表示された押し順ナビ表示に従って遊技を進行した場合に保障されることとなるART状態に滞在し得るゲーム数の計測するカウンタ)のカウンタ値が0より大きい値であるか否かを判定する。ステップ1257‐2(第3)でYesの場合、換言すると、ART状態の場合、ステップ3100(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、当選時ゲーム数上乗せ実行処理を実行する。次に、ステップ3150(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、押し順ナビ制御処理を実行し、ステップ3200(第3)に移行する。他方、ステップ1257‐2(第3)でNoの場合にも、ステップ3200(第3)に移行する。次に、ステップ3200(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、リール回転開始準備処理を実行し、ステップ1258に移行する。
また、ステップ1290で、当該ゲームに係る条件装置の入賞に対応した払出が完了した後、ステップ1291‐1(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の遊技状態が通常遊技状態中であるか否かを判定する。ステップ1291‐1(第3)でYesの場合、ステップ3250(第3)で、後述する、ART抽選実行制御処理を実行し、ステップ3350(第3)に移行する。他方、ステップ1291‐1(第3)でNoの場合、ステップ1291‐2(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタM60のカウンタ値が0より大きいか否か、換言すると、現在の遊技状態がART状態であるか否かを判定する。ステップ1291‐2(第3)でYesの場合、ステップ3300(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、入賞時ゲーム数上乗せ実行処理を実行する。次に、ステップ1291‐3(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタM60のカウンタ値を1減算し、ステップ3350(第3)に移行する。他方、ステップ1291‐2(第3)でNoの場合、換言すると、現在の遊技状態が通常遊技状態とART状態以外(例えば、ART準備状態、ボーナス後状態)である場合にもステップ3350(第3)に移行する。次に、ステップ3350(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、遊技状態移行制御処理を実行し、ステップ1292に移行する。
次に、図41は、第3実施形態における、図40におけるステップ3100(第3)のサブルーチンに係る、当選時ゲーム数上乗せ実行処理のフローチャートである。まず、ステップ3102で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、条件装置番号)に基づき、当該ゲームに係る条件装置は当選時上乗せ役(入賞するか否かに拘らず、当選することによってARTゲーム数を上乗せし得る条件装置)であるか否かを判定する。尚、第3実施形態では、スイカ=条件装置番号25を当選時上乗せ役としているが、当選時上乗せ役はこれに限られるものではなく、再遊技役や押し順ベル役、また第3実施形態では図示していない他の小役等でも上乗せ抽選を実行しても問題ない。ステップ3102でYesの場合、ステップ3104で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブル)に基づき、所定確率(1/4)で当選するARTゲーム数上乗せ抽選(ARTカウンタM60のカウンタ値を増加させるか否かの抽選)を実行する。尚、第3実施形態では、スイカのみを当選時上乗せ役としたが、再遊技役や押し順ベル役等も当選時上乗せ役として構成した場合には、当選した当選時上乗せ役の種類によってARTゲーム数上乗せ抽選の当選率(及び/又は、ART上乗せゲーム数の振分)を相違させてもよい。次に、ステップ3106で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該実行したARTゲーム数上乗せ抽選に当選したか否かを判定する(例えば、ラッチした乱数値が当選範囲内に収まっているか否かを判定する)。ステップ3106でYesの場合、ステップ3108で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スイカ時上乗せゲーム数抽選テーブル(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブルであって、スイカの成立によりARTゲーム数が上乗せされる場合に参照されるテーブル)を参照し、ART上乗せゲーム数を決定する(例えば、欄外にて示す抽選テーブルにおいて、ラッチした乱数値がいずれの範囲内に収まっているか否かを判定する)。次に、ステップ3110で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該決定したART上乗せゲーム数をARTカウンタM60のカウンタ値に加算し、当該加算後のARTカウンタ値をARTカウンタにセットし、次の処理{ステップ3150(第3)の処理}に移行する。尚、ステップ3102又はステップ3106でNoの場合にも次の処理{ステップ3150(第3)の処理}に移行する。
次に、図42は、第3実施形態における、図40におけるステップ3150(第3)のサブルーチンに係る、押し順ナビ制御処理のフローチャートである。まず、ステップ3152で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタM60のカウンタ値が0より大きいか否か、換言すると、ART状態であるか否かを判定する。ステップ3152でYesの場合、ステップ3156に移行する。他方、ステップ3152でNoの場合、ステップ3154で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在ART準備状態中であるか否かを判定する。ステップ3154でYesの場合にも、ステップ3156に移行する。次に、ステップ3156で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は押し順あり上乗せ役(ART状態にて押し順に正解することによりARTゲーム数が上乗せされる条件装置であり、本例では、チェリー再遊技=条件装置番号16〜18)であるか否かを判定する。尚、本例における押し順とは、1回のゲームにおいてリールを停止させる順序のことである。ステップ3156でYesの場合、ステップ3158で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブル)に基づき、所定確率(例えば、1/5)にて当選する押し順ナビ実行抽選を実行する。次に、ステップ3160で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該押し順ナビ実行抽選に当選したか否かを判定する(例えば、ラッチした乱数値が当選範囲内に収まっているか否かを判定する)。ステップ3160でYesの場合、ステップ3163に移行する。他方、ステップ3156でNoの場合、ステップ3162で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は押し順あり小役(押し順によって遊技者の利益率が相違する条件装置)であるか否かを判定する。ステップ3162でYesの場合、換言すると、当該ゲームの条件装置が再遊技03、04、06又はベルを含む(例えば、条件装置番号7〜14又は19〜24である)場合にはステップ3163に移行する。
次に、ステップ3163で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置情報に基づき、最高機械割押し順あり操作態様情報(第1〜第3停止操作態様情報)を生成し、第1RAM領域に一時記憶する。ここで、最高機械割押し順あり操作態様情報とは、押し順あり小役(押し順によって遊技者の利益率が相違する条件装置)が成立したゲームにおいて、最も遊技者にとって利益率の高いリール停止順及びリール停止位置に係る情報であり、第3実施形態においては、後述するように、主制御基板M側から回胴式遊技機外に当該情報を送信し得るよう構成されている(従来では、出玉試験機と回胴式遊技機との情報伝達を仲介する第2試験基板に対して、副制御基板S側から当該情報を送信している)。尚、最高機械割操作態様情報(最高機械割押し順あり操作態様情報、最高機械割押し順なし操作態様情報)は、最適操作態様情報、有利操作態様情報、高利益操作態様情報、等と称することもできる。次に、ステップ3164で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報に基づき、当該ゲーム中において押し順表示装置D270にて押し順ナビ表示を実行(例えば、「2」の表示の場合、「左→中→右」の順、「7」の表示の場合、「左→フリー→フリー」の順にリール停止すると利益率が最高になる)する。次に、ステップ3165で、CPUC100は、第1ROM・RAM領域内のデータに基づき、最高機械割押し順あり操作態様情報に係るコマンド(サブ側へのコマンド)をセットし、次の処理{ステップ3200(第3)の処理}に移行する。
他方、ステップ3154でNoの場合、ステップ3166で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部ART当選中フラグ(ART状態への移行が確定的になることでオンとなるフラグである)がオンであるか否かを判定する。ステップ3166でYesの場合、ステップ3168で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は準備状態移行再遊技(通常遊技状態からART準備状態に移行し得る再遊技であり、本例では、再遊技05を含む条件装置であって、例えば、条件装置番号2〜6)であるか否かを判定する。ステップ3168でYesの場合、ステップ3170で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部ART当選中フラグをオフにする。次に、ステップ3171で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置情報に基づき、最高機械割押し順あり操作態様情報(第1〜第3停止操作態様情報)を生成し、第1RAM領域に一時記憶する。次に、ステップ3172で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報に基づき、当該ゲーム中において押し順表示装置D270にて押し順ナビ表示を実行{例えば、条件装置番号が「2」の場合は、「2」の表示(「左→中→右」の順)、条件装置番号が「3」の場合は、「3」の表示(「左→右→中」の順)となり、表示に従ってリールを停止することによりART準備状態に移行することとなる}する。次に、ステップ3174で、CPUC100は、第1ROM・RAM領域内のデータに基づき、最高機械割押し順あり操作態様情報に係るコマンド(サブ側へのコマンド)をセットし、次の処理{ステップ3200(第3)の処理}に移行する。尚、ステップ3160、ステップ3162、ステップ3166又はステップ3168でNoの場合にも、次の処理{ステップ3200(第3)の処理}に移行する。
次に、図43は、第3実施形態における、図40におけるステップ3200(第3)のサブルーチンに係る、リール回転開始準備処理のフローチャートである。まず、ステップ3204で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技間隔最小時間タイマM70(減算タイマ)のタイマ値が0であるか否かを判定する。ここで、遊技間隔最小時間タイマM70は、あるゲーム開始タイミング(リール回転開始タイミング)から次のゲーム開始タイミング(リール回転開始タイミング)までに担保されるべき時間(本例では、4.1秒)を計測するタイマである。ステップ3204でYesの場合、ステップ3206で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技間隔最小時間タイマM70のタイマ値に新たに最小時間(本例では、4.1秒)をセットしてスタートする。次に、ステップ3208で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力時間タイマM80(減算タイマ)に、新たに条件装置情報出力時間(本例では、24割り込み)をセットし、ステップ3210に移行する。ここで、本例においては、詳細は後述することとなるが、ステップ3208にて条件装置情報出力時間をセットした後、出力時間タイマM80のタイマ値に応じて、主制御基板M側から回胴式遊技機外へ送信される情報の出力制御が行われるよう構成されている。尚、ステップ3204でNoの場合には、ステップ3204の処理を再度繰り返す。よって、第3実施形態においては、遊技間隔最小時間(本例では、4.1秒)が経過した後に条件装置出力時間をセットするよう構成されている。
次に、ステップ3210で、CPUC100は、第1ROM・RAM領域内のデータに基づき、終了したゲームに係るリール停止順に係る情報及び押し順に係る情報をクリアする。次に、ステップ3212で、CPUC100は、第1ROM・RAM領域内のデータに基づき、終了したゲームに係るリール停止中に係る情報及び引き込みポイント作成要求をクリアする。次に、ステップ3214で、CPUC100は、第1ROM・RAM領域内のデータに基づき、終了したゲームに係る図柄停止位置データを初期化する。次に、ステップ3218で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係るリール回転開始待機時の出力要求をセットする。次に、ステップ3220で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係るリール制御コマンドをセットする。換言すると、ステップ3218及びステップ3220の処理によって、副制御基板Sにリールが回転開始することを示すためのコマンドが送信可能となる。次に、ステップ3222で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内に記憶されているリール駆動状態をリール停止状態からリール回転開始待機状態に更新し、次の処理(ステップ1258の処理)に移行する。
次に、図44は、第3実施形態における、図40におけるステップ3250(第3)のサブルーチンに係る、ART抽選実行制御処理のフローチャートである。まず、ステップ3252で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部ART当選中フラグがオフであるか否かを判定する。ステップ3252でYesの場合、ステップ3254で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の遊技状態(低確率状態と高確率状態とのいずれの遊技状態であるか)を確認する。次に、ステップ3256で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置はART抽選役{通常遊技状態においてART状態への移行が確定していない(内部ART中フラグがオフである)場合に、ART状態への移行抽選を実行し得る小役であり、本例では、スイカ=条件装置番号25}であるか否かを判定する。尚、ステップ3100(第3)の処理と同様に、ART抽選役は条件装置番号25(スイカ)に限られるものではなく、再遊技役や押し順ベル役、また第3実施形態では図示していない他の小役等をART抽選役としても問題ない。また、そのように構成した際には、当選したART抽選役の種類によって、ART移行抽選の当選率を相違させてもよい。ステップ3256でYesの場合、ステップ3258で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の遊技状態は高確率状態であるか否かを判定する。ステップ3258でYesの場合、ステップ3260で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた高確率状態用抽選テーブル)に基づき、所定確率A(1/3)にて当選するART移行抽選を実行し、ステップ3264に移行する。他方、ステップ3258でNoの場合、換言すると、現在の遊技状態が低確率状態の場合、ステップ3262で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた低確率状態用抽選テーブル)に基づき、所定確率B(1/50)にて当選するART移行抽選を実行し、ステップ3264に移行する。このように、第3実施形態においては、低確率状態よりも高確率状態の方がART移行抽選に当選し難く構成されており、前記所定確率A及び/又は所定確率Bは変更しても問題ないが、「所定確率A>所定確率B」となるよう構成することが望ましい。
次に、ステップ3264で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該実行されたART抽選に当選したか否かを判定する(例えば、ラッチした乱数値が当選範囲内に収まっているか否かを判定する)。ステップ3264でYesの場合、ステップ3266で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部ART当選中フラグをオンにし、次の処理{ステップ3350(第3)の処理}に移行する。尚、ステップ3252、ステップ3256又は、ステップ3264でNoの場合にも、次の処理{ステップ3350(第3)の処理}に移行する。尚、内部ART当選中フラグがオンとなることによって、その後、ART状態に移行することとなる。
次に、図45は、第3実施形態における、図40におけるステップ3300(第3)のサブルーチンに係る、入賞時ゲーム数上乗せ実行処理のフローチャートである。まず、ステップ3302で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は押し順あり上乗せ役(本例では、チェリー再遊技=条件装置番号16〜18)であるか否かを判定する。ステップ3302でYesの場合、ステップ3306で、CPUC100は、第1ROM・RAM領域内のデータに基づき、チェリー再遊技の押し順に正解した(再遊技09、10、11のいずれかが入賞した)か否かを判定する。ステップ3306でYesの場合、ステップ3308で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブル)に基づき、チェリー再遊技時上乗せゲーム数抽選テーブル(チェリー再遊技の入賞によりARTゲーム数が上乗せされた場合に参照されるテーブル)を参照し、ART上乗せゲーム数を決定する(例えば、欄外にて示す抽選テーブルにおいて、ラッチした乱数値がいずれの範囲内に収まっているか否かを判定する)。次に、ステップ3310で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該決定したART上乗せゲーム数をARTカウンタM60のカウンタ値に加算し、当該加算後のARTカウンタ値をARTカウンタM60にセットし、次の処理{ステップ1291‐3(第3)の処理}に移行する。尚、ステップ3302又はステップ3306でNoの場合にも次の処理{ステップ1291‐3(第3)の処理}に移行する。
次に、図46は、第3実施形態における、図40におけるステップ3350(第3)のサブルーチンに係る、遊技状態移行制御処理のフローチャートである。まず、ステップ3352で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームにてRT状態移行可能条件が充足した{ベルの取りこぼし(押し順不正解で9枚の払出が得られなかった場合)、再遊技の入賞にて充足し得る}か否かを判定する。ステップ3352でYesの場合、ステップ3353で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該充足したRT状態移行可能条件及び現在の遊技状態に基づき、遊技状態移行可否(図47の遊技状態移行遷移図にて詳述する)及び次ゲーム以降の遊技状態を決定する。次に、ステップ3354で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ART状態に移行したか否かを判定する。ステップ3354でYesの場合、ステップ3355で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ART初期ゲーム(本例では、50)をARTカウンタM60にセットし、ステップ3376に移行する。他方、ステップ3354でNoの場合にもステップ3376に移行する。
また、ステップ3352でNoの場合、ステップ3356で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の遊技状態は低確率状態であるか否かを判定する。ステップ3356でYesの場合、ステップ3358で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は状態昇格役(当選することによって低確率状態から高確率状態に移行し得る小役であり、本例では、スイカ)であるか否かを判定する。ステップ3358でYesの場合、ステップ3360で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブル)に基づき、所定確率(本例では、1/4)にて当選する高確率状態移行抽選を実行する。ステップ3360でYesの場合、ステップ3362で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該高確率移行抽選に当選したか否かを判定する(例えば、ラッチした乱数値が当選範囲内に収まっているか否かを判定する)。ステップ3362でYesの場合、ステップ3364で、CPUC100は、第1ROM・RAM領域内のデータに基づき、次ゲーム以降の遊技状態を高確率状態に決定し、ステップ3376に移行する。尚、ステップ3358又はステップ3362でNoの場合には、遊技状態は低確率状態のままとなり、ステップ3376に移行する。
また、ステップ3356でNoの場合、ステップ3366で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の遊技状態は高確率状態であるか否かを判定する。ステップ3366でYesの場合、ステップ3368で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は、状態転落役(入賞することによって高確率状態から低確率状態に移行し得る小役であり、本例では、チェリー再遊技と昇格再遊技を除いた再遊技)であるか否かを判定する。ステップ3368でYesの場合、ステップ3370で、CPUC100は、第1ROM・RAM領域内のデータ(例えば、第1ROM領域内の第1データ領域に設けられた抽選テーブル)に基づき、所定確率(本例では、1/7)にて当選する低確率状態移行抽選を実行する。ステップ3370でYesの場合、ステップ3372で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該低確率移行抽選に当選したか否かを判定する(例えば、ラッチした乱数値が当選範囲内に収まっているか否かを判定する)。ステップ3372でYesの場合、ステップ3374で、CPUC100は、第1ROM・RAM領域内のデータに基づき、次ゲーム以降の遊技状態を低確率状態に決定し、ステップ3376に移行する。尚、ステップ3366、ステップ3368又はステップ3372でNoの場合には、次ゲームの遊技状態は低確率状態以外となり、ステップ3376に移行する。
次に、ステップ3376で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の作動状態情報(再遊技役が入賞したか、ボーナス中であるか、ART状態であるか等の情報であり、図49の「作動状態情報の一例」を参照)を第1RAM領域に一時記憶し、次の処理(ステップ1292の処理)に移行する。即ち、今回のゲーム終了時において、再遊技役が入賞した場合には、図49の作動状態情報の一例における「D0ビット」へ「1」をセットする一方で、再遊技役が入賞しなかった場合には、図49の作動状態情報の一例における「D0ビット」へ「0」をセットする。また、今回のゲーム終了時において、第1種BB役が入賞した場合には、図49の作動状態情報の一例における「D1ビット」へ「1」をセットする一方で、第1種BBの終了条件を充足した(第1種BB役が入賞した後、所定枚数を超える払出しが完了した場合)場合には、図49の作動状態情報の一例における「D1ビット」へ「0」をセットする。また、今回のゲーム終了時において、ARTカウンタM60のカウンタ値が0より大きい場合(現在の遊技状態がART状態である場合)には、図49の作動状態情報の一例における「D2ビット」へ「1」をセットする一方で、ARTカウンタM60のカウンタ値が0である場合には、図49の作動状態情報の一例における「D2ビット」へ「0」をセットする。尚、第3実施形態にて示した遊技状態の移行態様はあくまで一例であり、変更しても何ら問題なく、例えば、RT状態移行可能条件を特定の小役の入賞により充足し得るよう構成してもよいし、状態昇格役や状態転落役を変更・追加してもよいし、移行し得る遊技状態の種類を変更・追加してもよい(高確率状態よりもART状態に移行し易い超高確率状態を設ける、等)。
次に、図48は、第3実施形態における、ステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。本実施形態との相違点は、ステップ1656(第3)〜ステップ1660(第3)、ステップ3450(第3)、ステップ3500(第3)及びステップ1662(第3)であり、その目的は、主制御基板M側から回胴式遊技機外へ出玉に関する情報を送信可能とすることにある。即ち、ステップ1612で全リールの回胴駆動制御処理を実行した後、ステップ1656(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタM60のカウンタ値が0より大きいか否かを判定する。ステップ1656(第3)でYesの場合、ステップ1658(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ARTカウンタ値表示装置D280にてART残りゲーム数(ARTカウンタM60のカウンタ値)を表示し、ステップ1614に移行する。他方、ステップ1656(第3)でNoの場合にも、ステップ1614に移行する。尚、第3実施形態においては、ARTカウンタM60のカウンタ値が0より大きい場合にARTカウンタ値表示装置D280にてART残りゲーム数を表示するよう構成したが、ART状態中にのみART残りゲーム数を表示するよう構成してもよい。
また、ステップ1628で外部信号を出力した後(いわゆる外部出力端子板への信号出力であり、詳細後述する出玉試験用プログラムとは別個のものである)、ステップ1660(第3)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の試験信号出力処理を呼び出し、ステップ3450(第3)に移行する。
次に、ステップ3450(第3)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、第1試験信号出力処理を実行する。次に、ステップ3500(第3)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、第2試験信号出力処理を実行する。次に、ステップ1662(第3)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1630に移行する。尚、第3実施形態においては、ステップ1606のタイマ計測を実行した場合に、ステップ3208にてセットされた出力時間タイマM80の条件装置出力時間が1減算されることとなる(即ち、タイマ割り込み間隔=約2msで、出力時間タイマM80のカウント値が1減算される)。
次に、図49は、第3実施形態における、図48のステップ3450(第3)のサブルーチンに係る、第1試験信号出力処理のフローチャートである。はじめに、回胴式遊技機における出玉試験は、出玉試験申請した回胴式遊技機の実機と出玉試験機とを、中継基板(以下、試験基板)を介して相互に接続し、回胴式遊技機の実機での動作内容を出玉試験機にて抽出することで出玉試験が実施されている。また、従来では、内部抽選の結果や遊技状態に関する情報は、主制御基板M→第1試験基板→出玉試験機との伝達経路を採る一方で、押し順ナビに関する情報(特に、停止ボタンD40の操作順序や操作タイミングに係る情報)は、副制御基板S→第2試験基板→出玉試験機との伝達経路を採っている。そして、第3実施形態のように構成した場合には、前述したように、出玉に関する情報が、すべて主制御基板M側で管理されているため、この伝達経路を簡素化したり或いは出玉試験機へ送信する情報をより詳細化することも可能となる。そこで、第3実施形態のように構成した場合における出玉試験機(試験基板)への情報出力制御方法の一例を、以下、第1試験信号出力処理及び第2試験信号出力処理として示すこととする。尚、以下に示す態様においては、第1試験基板及び第2試験基板の双方において、これら基板はマイコン制御されないよう構成されており、即ち、出玉試験機側が認識できる情報出力内容及び情報出力タイミングにて、主制御基板Mから出力されるよう構成されている例示となる(但し、これら基板がマイコン制御される場合には、主制御基板Mから試験基板側に対して、出玉試験機側へ出力すべき情報の生データを一括して出力し、出玉試験機側が認識できる情報出力内容及び情報出力タイミングとなるよう試験基板側で調整して出力するよう構成してもよい)。
次に、ステップ3456で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の出力時間タイマM80のタイマ値(条件装置情報の出力タイミングが終了した時点で0となるよう構成されている)をレジスタ領域(例えば、Aレジスタ)に一時記憶する。次に、ステップ3458で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報の出力タイミングであるか否かを判定する(出力時間タイマM80のタイマ値に基づく判定であり、Noの場合には、Aレジスタにはすべて「0」が入っていることになる)。ステップ3458でYesの場合、ステップ3460で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、ボーナス状態情報アドレス(本例では、2834)をレジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3462で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ボーナス状態情報の出力タイミングであるか否かを判定する[例えば、Aレジスタの出力時間タイマ値情報に係る値から{(23/2)+1})を減算した値が0より大きいか否かを判定する]。ステップ3462でYesの場合、ステップ3466に移行する。他方、ステップ3462でNoの場合、ステップ3464で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、小役状態情報アドレス(本例では、2833)をレジスタ領域(例えば、HLレジスタ)に一時記憶し、ステップ3466に移行する(ボーナス状態情報の下位8ビットを「−1」した値が小役状態情報アドレスとなっている)。次に、ステップ3466で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されているアドレスに対応する条件装置情報を別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、ステップ3468に移行する。尚、ステップ3458でNoの場合にも、ステップ3468に移行する。次に、ステップ3468で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、Aレジスタ)に一時記憶されている条件装置情報を第1試験基板に出力し(例えば、主制御基板Mにおける第1試験基板への出力ポートである第2出力ポートにAレジスタの値をセットし)、次の処理{ステップ3500(第3)の処理}に移行する。ここで、同図右下段は、条件装置情報の一例であり、同図に示されるように、「D0」〜「D5」に関しては、前述した処理によって、当該ゲームにおける抽選結果となる条件装置番号がセットされている。また、小役状態情報の場合には「D6」が「1」、「D7」が「0」とセットされており、ボーナス状態情報の場合には「D7」が「0」、「D6」が「1」とセットされており、ステップ3468で出力される情報が、小役とボーナスとのどちらの条件装置情報であるかを(出玉試験機側が)判別可能に構成されている。尚、不図示であるが、第3実施形態においては、あるゲームにおいて、ボーナスが当該あるゲーム以前に当選している状態(内部中)である場合には、当該当選しているボーナスをボーナス状態情報として第1試験基板に出力するよう構成している。また、第3実施形態においては、ボーナス状態情報を格納しているアドレス(2834)と、小役状態情報を格納しているアドレス(2833)が隣合わせになるように構成されている。このため、第3実施形態では、ボーナス状態情報のアドレスをHLレジスタに記憶した後、小役状態情報を出力する場合には、HLレジスタの値を「−1」するだけで小役状態情報を出力することができる。尚、第3実施形態ではボーナス状態情報をHLレジスタに記憶しているが小役状態情報をHLレジスタに記憶するよう構成しても良いし、ボーナス状態情報のアドレスの次のアドレスに小役状態情報のアドレスとしても良い。このように構成することにより、少ない論理演算により、出力したい情報が格納されているアドレスを指定することができる。
次に、図50は、第3実施形態における、図48のステップ3500(第3)のサブルーチンに係る、第2試験信号出力処理のフローチャートである。まず、ステップ3508で、CPUC100は、第2ROM・RAM領域内のデータに基づき、操作態様情報の出力タイミング(例えば、リールM50の回転開始から2秒間)であるか否かを判定する。ステップ3508でYesの場合、ステップ3510で、CPUC100は、第2ROM・RAM領域内のデータに基づき、押し順表示装置D270に押し順情報が表示されているか否か(押し順表示装置D270に表示するための押し順に係る情報が第1RAM領域に格納されているか否か)を判定する(又は、押し順情報が第1RAM領域内に一時記憶されているのであれば、その押し順情報を参照する)。ステップ3510でYesの場合、ステップ3550(第3)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、押し順ナビあり時信号制御処理を実行し、ステップ3512に移行する。他方、ステップ3510でNoの場合、ステップ3600(第3)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、押し順ナビなし時信号制御処理を実行し、ステップ3512に移行する。尚、ステップ3508でNoの場合にも、ステップ3512に移行する。次に、ステップ3512で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、Aレジスタ)に一時記憶されている操作態様情報(後述する押し順ナビあり時信号制御処理又は押し順ナビなし時信号制御処理でセットされたもの)を第2試験基板に出力し(例えば、主制御基板Mにおける第2試験基板への出力ポートである第3出力ポートにAレジスタの値をセットし)、次の処理{ステップ1662(第3)の処理}に移行する。尚、主制御基板Mと第2試験基板との情報送受信方法(コマンド通信方法)は、パラレル通信であってもシリアル通信であっても問題ない。
次に、図51は、第3実施形態における、図50のステップ3550(第3)のサブルーチンに係る、押し順ナビあり時信号制御処理のフローチャートである。まず、ステップ3552で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止操作態様情報出力タイミングであるか否かを判定する。ステップ3552でYesの場合、ステップ3554で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第1停止操作態様情報(第1停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3556で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第1停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3552でNoの場合、ステップ3558で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止操作態様情報出力タイミングであるか否かを判定する。ステップ3558でYesの場合、ステップ3560で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第2停止操作態様情報(第2停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3562で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第2停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3558でNoの場合、ステップ3564で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止操作態様情報出力タイミングであるか否かを判定する。ステップ3564でYesの場合、ステップ3566で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第3停止操作態様情報(第3停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3568で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第3停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3564でNoの場合にも、次の処理(ステップ3512の処理)に移行する。ここで、第3実施形態においては、押し順ナビあり時における操作態様情報出力タイミングの順序は、「第1停止操作態様情報出力タイミング→第2停止操作態様情報出力タイミング→第3停止操作態様情報出力タイミング」の順となっている。
次に、図52は、第3実施形態における、図50のステップ3600(第3)のサブルーチンに係る、押し順ナビなし時信号制御処理のフローチャートである。まず、ステップ3602で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止操作態様情報出力タイミングであるか否かを判定する。ステップ3602でYesの場合、ステップ3604で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)であるが、遊技者は押し順ナビが表示されていない場合には、成立している条件装置や押し順を判別できない状況にて最適な操作態様を実行することとなる}の第1停止操作態様情報(第1停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3606で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第1停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3602でNoの場合、ステップ3608で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止操作態様情報出力タイミングであるか否かを判定する。ステップ3608でYesの場合、ステップ3610で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)であるが、遊技者は押し順ナビが表示されていない場合には、成立している条件装置や押し順を判別できない状況にて最適な操作態様を実行することとなる}の第2停止操作態様情報(第2停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3612で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第2停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3608でNoの場合、ステップ3614で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止操作態様情報出力タイミングであるか否かを判定する。ステップ3614でYesの場合、ステップ3616で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)であるが、遊技者は押し順ナビが表示されていない場合には、成立している条件装置や押し順を判別できない状況にて最適な操作態様を実行することとなる}の第3停止操作態様情報(第3停止に係る操作態様情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3616で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第3停止操作態様情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3614でNoの場合にも、次の処理(ステップ3512の処理)に移行する。ここで、第3実施形態においては、押し順ナビなし時における操作態様情報出力タイミングの順序は、「第1停止操作態様情報出力タイミング→第2停止操作態様情報出力タイミング→第3停止操作態様情報出力タイミング」の順となっている。尚、第3実施形態においては、第1試験基板に条件装置情報を出力した後のタイミングで、第2試験基板に操作態様情報を出力するよう構成したが、第2試験基板に操作態様情報を出力した後のタイミングで、第1試験基板に条件装置情報を出力するよう構成してもよい。
次に、図53は、第3実施形態における、操作態様情報一覧である。第3実施形態においては、最高機械割押し順あり操作態様情報は、押し順表示装置D270に表示される押し順と同様の順にてフリー打ち(どの位置にて停止ボタンD40を操作するかが決められておらず、停止可能であれば停止ボタンD40を操作する打ち方)を実行するよう構成されている。また、最高機械割押し順なし操作態様情報は、すべて「左→中→右」の押し順となり、ボーナスが成立していない場合には、第1停止は「左19番」(左リールM51の19番が下段のタイミングにて左停止ボタンD41を操作する)となり、スイカが成立している場合には、第2停止は「中5番」(中リールM52の5番が下段のタイミングにて中停止ボタンD42を操作する)、第3停止は「右3番」(右リールM53の3番が下段のタイミングにて右停止ボタンD43を操作する)、となっており、スイカが成立していない場合には、第2停止は中リールM52をフリー打ち、第3停止は右リールM53をフリー打ちとなっている。他方、ボーナスが成立している場合には、成立しているボーナス図柄が上段のタイミングで停止ボタンD40を操作するよう構成されており、このように操作することで、ボーナスが成立した場合には、すぐに当該成立したボーナスを揃える(開始させる)よう構成されている。また、具体的に送信する操作態様情報の内容については、上位3ビットが停止させるリール(押し順)に係る情報であり、下位5ビットが停止させる位置に係る情報である。例えば、左リールは上位3ビットが「001」、「18番」が下段のタイミングで停止ボタンD40を操作する場合には、「10010」、フリー打ちの場合には「11111」となっている。また、1回のゲームに係る操作態様情報の出力例は、例えば、「左→右→中」の押し順ベルを揃える場合(ベルの場合は全リール停止位置に拘らずフリー打ちで入賞可能)には、第1停止用信号(第1停止操作態様情報):「00111111」、第2停止用信号(第2停止操作態様情報):「01111111」、第3停止用信号(第3停止操作態様情報):「01011111」となる。また、左リール第1停止のチェリー再遊技を揃える場合(チェリー再遊技の場合は全リール停止位置に拘らずフリー打ちで入賞可能)には、第1停止用信号(第1停止操作態様情報):「00111111」、第2停止用信号(第2停止操作態様情報):「01011111」、第3停止用信号(第3停止操作態様情報):「01111111」となる。尚、第3実施形態においては、上位3ビットにて停止リールの種別を示していたが、例えば「01」が「左リールM51」、「10」が「中リールM52」、「11」が「右リールM53」のように上位2ビットでも表現することが可能であり、その場合には、下位6ビットにて停止させる位置に係る情報を表現しても良い。
尚、第3実施形態においては、第1試験基板に出力する条件装置情報として、いずれの条件装置情報を出力するタイミングであるかに係る識別値(小役識別値、ボーナス識別値)を第1プログラム領域における処理によって、第1RAM領域に一時記憶し、且つ、第1プログラム領域にて実行された押し順表示装置D270による押し順ナビと対応する形で、第2試験基板への出力信号を制御するよう構成したが、第2プログラム領域にて第1試験基板及び第2試験基板に出力する信号を制御する構成はこれには限定されない。そこで、そのような処理の一例を第3実施形態からの変更例1とし、以下、第3実施形態からの変更点について詳述していく。
はじめに、図54は、第3実施形態からの変更例1における、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。第3実施形からの変更点は、ステップ1294(第3変1)であり、即ち、ステップ3400(第3)で遊技状態移行制御処理を実行した後、ステップ1294(第3変1)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、押し順ナビ{ステップ3176(第3変1)でオンとなるフラグである}当選フラグをオフにし、ステップ1292に移行する。
次に、図55は、第3実施形態からの変更例1における、図54におけるステップ3150(第3)のサブルーチンに係る、押し順ナビ制御処理のフローチャートである。第3実施形からの変更点は、ステップ3176(第3変1)であり、即ち、ステップ3160で押し順ナビ抽選に当選した場合、ステップ3176(第3変1)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、押し順ナビ当選フラグをオンにし、ステップ3163に移行する。このように構成することで、第3実施形態からの変更例1においては、押し順ナビ抽選に当選し、押し順ナビを実行する場合に、押し順表示装置D270を参照せずに第2試験基板に押し順に係る情報を送信することが可能となっている(詳細は後述する)。
次に、図56は、第3実施形態からの変更例1における、図48におけるステップ3450(第3)のサブルーチンに係る、第1試験信号出力処理のフローチャートである。第3実施形からの変更点は、ステップ3464(第3変1)、ステップ3470(第3変1)〜ステップ3476(第3変1)、であり、即ち、ステップ3462でボーナス状態情報の出力タイミングであった場合、ステップ3464(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ボーナス状態情報の条件装置情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3466で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されているボーナス状態情報の条件装置情報アドレスを、別のレジスタ領域(例えば、Aレジスタ)に一時記憶する。次に、ステップ3470(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、Aレジスタの「D6」及び「D7」)をボーナス識別値に書き換えて(「D6」を「0」、「D7」を「1」に書き換え)ステップ3468に移行する。
また、ステップ3462で、ボーナス状態情報の出力タイミングでなかった場合、ステップ3472(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、小役状態情報の条件装置情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3474(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている小役状態情報の条件装置情報アドレスを、別のレジスタ領域(例えば、Aレジスタ)に一時記憶する。次に、ステップ3476(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、Aレジスタの「D6」及び「D7」)を小役識別値に書き換えて(「D6」を「1」、「D7」を「0」に書き換え)ステップ3468に移行する。尚、遊技の進行に係る条件装置情報(内部抽選結果等)の記憶領域と、試験基板に出力するための条件装置情報の記憶領域とは別々に設けてもよいし、条件装置情報の記憶領域を兼用してもよい。このように構成することにより、第1RAM領域の記憶領域を削減することができる。
次に、図57は、第3実施形態からの変更例1における、図48におけるステップ3500(第3)のサブルーチンに係る、第2試験信号出力処理のフローチャートである。第3実施形からの変更点は、ステップ3650(第3変1)であり、即ち、ステップ3508で操作態様情報の出力タイミングであった場合、ステップ3650(第3変1)で、後述する、操作態様情報制御処理を実行し、ステップ3512に移行する。
次に、図58は、第3実施形態からの変更例1における、図57におけるステップ3650(第3)のサブルーチンに係る、操作態様情報制御処理のフローチャートである。まず、ステップ3652で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ARTカウンタM60のカウンタ値が0より大きいか否か、換言すると、ART状態であるか否かを判定する。ステップ3652でYesの場合、ステップ3656に移行する。他方、ステップ3652でNoの場合、ステップ3654で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在ART準備状態中であるか否かを判定する。ステップ3654でYesの場合、ステップ3656で、CPUC100は、第2ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は押し順あり上乗せ役(ART状態にて押し順に正解することによりARTゲーム数が上乗せされる条件装置であり、本例では、チェリー再遊技)であるか否かを判定する。ステップ3656でYesの場合、ステップ3658で、CPUC100は、第2ROM・RAM領域内のデータに基づき、押し順ナビ当選フラグがオンであるか否かを判定する。ステップ3658でYesの場合、ステップ3550(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、押し順ナビあり時信号制御処理を実行し、次の処理(ステップ3512の処理)に移行する。他方、ステップ3656でNoの場合、ステップ3660で、CPUC100は、第2ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は押し順あり小役(押し順によって遊技者の利益率が相違する条件装置)ではないか否かを判定する。ステップ3660でYesの場合、換言すると、当該ゲームの条件装置が再遊技03、04、06又はベルではない場合には、ステップ3600(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、押し順ナビなし時信号制御処理を実行し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3658でNoの場合にもステップ3600(第3変1)に移行する。
また、ステップ3654でNoの場合、ステップ3662で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内部ART当選中フラグ(ステップ3166にてオンとなるフラグであり、ART状態への移行が確定的になることでオンとなるフラグである)がオンであるか否かを判定する。ステップ3662でYesの場合、ステップ3664で、CPUC100は、第2ROM・RAM領域内のデータに基づき、当該ゲームに係る条件装置は準備状態移行再遊技(通常遊技状態からART準備状態に移行し得る再遊技であり、本例では、再遊技05)であるか否かを判定する。ステップ3664でYesの場合、ステップ3550(第3変1)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、押し順ナビあり時信号制御処理を実行し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3660でNoの場合には、ステップ3550(第3変1)に移行する。また、ステップ3662又はステップ3664でNoの場合には、次の処理(ステップ3512の処理)に移行する。
次に、図59は、第3実施形態からの変更例1における、図50のステップ3550(第3変1)のサブルーチンに係る、押し順ナビあり時信号制御処理のフローチャートである。まず、ステップ3570で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止リール情報出力タイミングであるか否かを判定する。ステップ3570でYesの場合、ステップ3572で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第1停止リール情報(第1停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3574で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第1停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3570でNoの場合、ステップ3576で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止ステップ情報出力タイミングであるか否かを判定する。ステップ3576でYesの場合、ステップ3578で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第1停止ステップ情報(第1停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3580で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第1停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3576でNoの場合、ステップ3582で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止リール情報出力タイミングであるか否かを判定する。ステップ3582でYesの場合、ステップ3583で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第2停止リール情報(第2停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3584で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第2停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3582でNoの場合、ステップ3585で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止ステップ情報出力タイミングであるか否かを判定する。ステップ3585でYesの場合、ステップ3586で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第2停止ステップ情報(第2停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3588で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第2停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3585でNoの場合、ステップ3589で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止リール情報出力タイミングであるか否かを判定する。ステップ3589でYesの場合、ステップ3590で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第3停止リール情報(第3停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3592で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第3停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3589でNoの場合、ステップ3594で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止ステップ情報出力タイミングであるか否かを判定する。ステップ3594でYesの場合、ステップ3596で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第3停止ステップ情報(第3停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3598で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報の第3停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3594でNoの場合にも、次の処理(ステップ3512の処理)に移行する。このように、第3実施形態からの変更例1においては、停止リールに関する情報と停止ステップ(停止位置)に関する情報とを別々に送信しており、出力タイミングは「第1停止リール情報→第1停止ステップ情報→第2停止リール情報→第2停止ステップ情報→第3停止リール情報→第3停止ステップ情報」の順となっている。
次に、図60は、第3実施形態からの変更例1における、図50のステップ3600(第3変1)のサブルーチンに係る、押し順ナビなし時信号制御処理のフローチャートである。まず、ステップ3620で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止リール情報出力タイミングであるか否かを判定する。ステップ3570でYesの場合、ステップ3622で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第1停止リール情報(第1停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3624で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第1停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3620でNoの場合、ステップ3626で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第1停止ステップ情報出力タイミングであるか否かを判定する。ステップ3626でYesの場合、ステップ3628で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第1停止ステップ情報(第1停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3630で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第1停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3626でNoの場合、ステップ3632で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止リール情報出力タイミングであるか否かを判定する。ステップ3632でYesの場合、ステップ3634で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第2停止リール情報(第2停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3636で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第2停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3632でNoの場合、ステップ3638で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第2停止ステップ情報出力タイミングであるか否かを判定する。ステップ3638でYesの場合、ステップ3640で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第2停止ステップ情報(第2停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3641で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第2停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3538でNoの場合、ステップ3642で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止リール情報出力タイミングであるか否かを判定する。ステップ3642でYesの場合、ステップ3643で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第3停止リール情報(第3停止に係るリール情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3644で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第3停止リール情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
他方、ステップ3642でNoの場合、ステップ3645で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在第3停止ステップ情報出力タイミングであるか否かを判定する。ステップ3645でYesの場合、ステップ3646で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}の第3停止ステップ情報(第3停止に係るステップ情報)アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3648で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報の第3停止ステップ情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。尚、ステップ3645でNoの場合にも、次の処理(ステップ3512の処理)に移行する。このように、第3実施形態からの変更例1においては、停止リールに関する情報と停止ステップ(停止位置)に関する情報とを別々に送信しており、出力タイミングは「第1停止リール情報→第1停止ステップ情報→第2停止リール情報→第2停止ステップ情報→第3停止リール情報→第3停止ステップ情報」の順となっている。
次に、図61は、第3実施形態からの変更例1における、操作態様情報一覧である。第3実施形態からの変更例1における、具体的に送信する操作態様情報の内容については、停止リール情報は3ビットからなる情報であり、例えば、左リールは「001」となっている。また、停止ステップ情報は9ビットからなる情報であり、例えば、リールM50の基準位置(例えば、0番と19番の境目の位置)が下段の最下部となる状態から65ステップ駆動したタイミングで停止ボタンを操作する場合には「001000001」、フリー打ちの場合には「111111111」となっている。尚、本例における停止ステップ情報についてはあくまで一例であり、当該停止ステップ情報によって、リールM50の停止位置が判別できれば問題なく、リールM50の基準位置(例えば、0番と19番の境目の位置)が下段の最下部となる状態から駆動した分に係るステップ情報には限定されず、リールM50の基準位置(例えば、0番と19番の境目の位置)が中段の最下部となる状態から駆動した分に係るステップ情報や、リールM50の基準位置(例えば、0番と19番の境目の位置)が上段の最下部となる状態から駆動した分に係るステップ情報としても問題ないし、リールM50の基準位置(例えば、0番と19番の境目の位置)が上段の最上部となる状態から駆動した分に係るステップ情報としても問題ない。また、1回のゲームに係る操作態様情報の出力例は、例えば、「右→左→中」の押し順ベルを揃える場合(ベルの場合は全リール停止位置に拘らずフリー打ちで入賞可能)には、押し順ナビありの場合には、第1停止リール情報に停止ステップ情報の最上位ビットを加えた:「01100001」、第1停止ステップ情報:「11111111」、第2停止リール情報に停止ステップ情報の最上位ビットを加えた:「00100001」、第2停止ステップ情報:「11111111」、第3停止リール情報に停止ステップ情報の最上位ビットを加えた:「01000001」、第3停止ステップ情報:「11111111」となり、押し順ナビなしの場合には、第1停止リール情報に停止ステップ情報の最上位ビットを加えた:「00100001」、第1停止ステップ情報:「11111111」、第2停止リール情報に停止ステップ情報の最上位ビットを加えた:「01000001」、第2停止ステップ情報:「11111111」、第3停止リール情報に停止ステップ情報の最上位ビットを加えた:「01100001」、第3停止ステップ情報:「11111111」となっている。このように、第3実施形態からの変更例1においては、「第1信号:上位3ビットを停止リールの種類、下位1ビットを上位のステップ番号」、「第2信号:8ビットが下位のステップ番号」として、1つのリールの停止に係る情報を送信することにより、停止リール及び停止ステップに係る情報を送信可能に構成されている。
尚、3実施形態からの変更例1においては、第2試験基板に出力する操作態様情報として、停止するリールに係る情報と当該リールの停止位置に係る情報をすべての停止(第1停止〜第3停止)について出力するよう構成したが、第2試験基板への操作態様情報の出力態様はこれには限定されない。また、副制御基板Sへ出力する情報と第1試験基板へ出力する情報とを相違させてもよい。そこで、第3実施形態及び/又は第3実施形態からの変更例1とは異なる第2試験基板への操作態様情報の出力態様及び副制御基板Sへの条件装置情報の出力態様である構成を第3実施形態からの変更例2とし、以下、第3実施形態、又は、第3実施形態からの変更例1からの変更点について詳述していく。
はじめに、図62は、第3実施形態からの変更例2における、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。第3実施形態からの変更点は、ステップ1296(第3変2)及びステップ1257‐1(第3変2)であり、即ち、ステップ1257で内部抽選を実行した後、ステップ1296(第3変2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)に係るコマンド(サブ側へのコマンド)を第1RAM領域に一時記憶する。次に、ステップ1257‐1(第3変2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1試験基板への出力用の内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)を第1RAM領域に一時記憶する。ここで、同図右上段はサブ側への出力用の条件装置情報の一例である。同図に示されるように、第3実施形態からの変更例2においては、第1試験基板への出力用の条件装置情報とサブ側への出力用の条件装置情報とは異なるアドレスに格納されている。また、第1試験基板への出力用の条件装置情報と第1試験基板への条件装置識別値(ボーナス識別値、小役識別値、等)とは同じアドレスに格納されている(「D0」〜「D5」に条件装置情報、「D6」〜「D7」に条件装置識別値となっている)ことに対し、サブ側への出力用の条件装置情報とサブ側への出力用の条件装置識別値(ボーナス識別値、小役識別値、等)とは異なるアドレスに格納されている。
次に、図63は、第3実施形態からの変更例2における、ステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。第3実施形態からの変更点は、ステップ1664(第3変2)であり、即ち、ステップ1626で制御コマンド(サブ側へのコマンド)を送信した後、ステップ1664(第3変2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1296(第3変2)にてセットされた内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)に係るコマンド(サブ側へのコマンド)を送信し、ステップ1628に移行する。尚、サブ側への内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)に係るコマンドの送信タイミングは、ステップ1296(第3変2)の処理の実行直後のタイマ割り込み処理である一方、第1試験基板への内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)に係るコマンドの送信タイミングは、ステップ3208の処理の実行直後のタイマ割り込み処理であり、あるゲームに係る内部抽選の抽選結果及び条件装置識別値(ボーナス識別値、小役識別値、等)に係るコマンドの送信タイミングは、サブ側への送信タイミングの方が第1試験基板への送信タイミングよりも早いタイミングとなっている。
次に、図64は、第3実施形態からの変更例2における、図50のステップ3550(第3変1)のサブルーチンに係る、押し順ナビあり時信号制御処理のフローチャートである。第3実施形態からの変更例1からの変更点は、ステップ3599‐1(第3変2)〜ステップ3599‐3(第3変2)であり、その目的は、第2試験基板に停止リール情報を出力せずに、リール停止順情報を出力して、一回の情報の出力により3回すべてのリール停止順を出力することであり、即ち、ステップ3599‐1(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在リール停止順情報出力タイミングであるか否かを判定する。ステップ3599‐1(第3変2)でYesの場合、ステップ3599‐2(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の最高機械割押し順あり操作態様情報{押し順ナビが実行されるゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}のリール停止順情報アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3599‐3(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順あり操作態様情報のリール停止順情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
次に、図65は、第3実施形態からの変更例2における、図50のステップ3600(第3変1)のサブルーチンに係る、押し順ナビなし時信号制御処理のフローチャートである。第3実施形態からの変更例1からの変更点は、ステップ3649‐1(第3変2)〜ステップ3649‐3(第3変2)であり、その目的は、第2試験基板に停止リール情報を出力せずに、リール停止順情報を出力して、一回の情報の出力により3回すべてのリール停止順を出力することであり、即ち、ステップ3649‐1(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在リール停止順情報出力タイミングであるか否かを判定する。ステップ3649‐1(第3変2)でYesの場合、ステップ3649‐2(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の最高機械割押し順なし操作態様情報{押し順ナビが実行されないゲームにおける最も遊技者にとって利益率が高い操作態様(押し順、停止位置、等)}のリール停止順情報アドレスを、レジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3649‐3(第3変2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている、最高機械割押し順なし操作態様情報のリール停止順情報を、別のレジスタ領域(例えば、Aレジスタ)に一時記憶し、次の処理(ステップ3512の処理)に移行する。
次に、図66は、第3実施形態からの変更例2における、操作態様情報一覧である。第3実施形態からの変更例2における、具体的に送信する操作態様情報の内容については、リール停止順情報は8ビットからなる情報であり、例えば、「中→左→右」の押し順の場合には、「00000010」、「左→中→右」の押し順の場合には、「00000000」となっている。また、停止ステップ情報は8ビットからなる情報であり、504ステップを2ステップ毎に区切って、252区切りのステップに係る情報を送信し得るよう構成されている。具体的には、リールM50の基準位置(例えば、0番と19番の境目の位置)が下段の最下部となる状態から2ステップ駆動したタイミングで停止ボタンを操作する場合には「00000001」(10進数で「1」)、リールM50の基準位置(例えば、0番と19番の境目の位置)が下段の最下部となる状態から64ステップ駆動したタイミングで停止ボタンを操作する場合には「00100000」(10進数で「32」)、リールM50の基準位置(例えば、0番と19番の境目の位置)が下段の最下部となる状態から504ステップ駆動したタイミングで停止ボタンを操作する場合には「11111100」(10進数で「252」)、フリー打ちの場合には「11111111」となっている。また、1回のゲームに係る操作態様情報の出力例は、例えば、「中→左→右」の押し順ベルを揃える場合(ベルの場合は全リール停止位置に拘らずフリー打ちで入賞可能)には、押し順ナビありの場合には、リール停止順情報:「00000010」、第1停止ステップ情報:「11111111」、第2停止ステップ情報:「11111111」、第3停止ステップ情報:「11111111」となり、押し順ナビなしの場合も同様に、リール停止順情報:「00000010」、第1停止ステップ情報:「11111111」、第2停止ステップ情報:「11111111」、第3停止ステップ情報:「11111111」となっている。
尚、本実施形態から第3実施形態においては、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域(又は、レジスタ領域)を更新及び参照可能に構成し、エラー検出、エラー表示等の遊技機に対して不正行為がなされる(例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等)ことを防御するための不正行為防止用のプログラムを第2ROM・RAM領域における処理にて実行し得るよう構成したが、実際の回胴式遊技機にてこのような構成を適用する場合には、前述した構成とは異なる構成を適用する場合も考えられる。そこで、そのような構成を第4実施形態とし、以下、第3実施形態との相違点について詳述していく。
はじめに、図67は、第4実施形態における、ステップ1000(第4)のサブルーチンに係る、主制御装置メイン処理のフローチャートである。まず、ステップ1000(第4)で、回胴式遊技機Pの電源を投入した後、ステップ1057で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ割り込みをセットする(ここでは、タイマ割り込みの種類をセットするのみであり、以降の処理において、タイマ割り込みが開始されると定期的に後述するタイマ割り込み時処理に係るフローチャートが実行される)。次に、ステップ1058で、CPUC100は、第1ROM・RAM領域内のデータに基づき、主制御チップCの機能設定を実行する。次に、ステップ1060で、CPUC100は、第1RAM内の先頭アドレスからスタックエリアの最終アドレスまでを加算して(チェックサムを算出して)、電源断復帰データを生成する。次に、ステップ1061で、CPUC100は、第1ROM・RAM領域内のデータに基づき、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のスイッチ状態を確認する。次に、ステップ1076で、CPUC100は、第1ROM・RAM領域内のデータを参照し、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のいずれかがオフであるか否かを判定する。ステップ1076でYesの場合、ステップ3700(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、設定変更なしRAM初期化処理を実行する。次に、ステップ1077で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の設定値チェック処理を呼び出し、ステップ1078に移行する。他方、ステップ1076でNoの場合、ステップ1100で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する設定変更装置制御処理を実行する。
次に、ステップ1078で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の設定値は正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1078でYesの場合、ステップ1079で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1081に移行する。他方、ステップ1078でNoの場合、ステップ1080で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示(例えば、払出数表示装置D190に表示されることとなる)をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラーを実行する。尚、第4実施形態においては、チェックサム領域は、第1RAM領域に存在しており、先頭アドレス以外なら当該チェックサム領域のアドレスを変更しても問題ない。換言すると、図67ではF102H番地にチェックサム領域を配置しているが、図67の第1作業領域内の所定のアドレスに記憶しても良く、また、チェックサム領域として1バイトデータを記憶するだけでなく2バイトデータを記憶するように構成してもよい。
次に、ステップ1081で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入力ポートの読み込みを実行する。次に、ステップ1082で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1057にてセットしたタイマ割り込みを開始する。次に、ステップ1083で、CPUC100は、第1ROM・RAM領域内のフラグエリア内にある電源断処理済みフラグをオフにし、復帰したスタックポインタに従い電源断時の処理に復帰する。
次に、図68は、第4実施形態における、図67のステップ1100のサブルーチンに係る、設定変更装置制御処理のフローチャートである。第3実施形態との相違点は、ステップ3750(第4)であり、即ち、ステップ3750(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する設定変更ありRAM初期化処理を実行し、ステップ1118に移行する。尚、ステップ1102で実行していたスタックポインタのセットは、ステップ3750(第4)のサブルーチン内の処理にて実行している。
次に、図69は、第4実施形態における、図67のステップ3700(第4)のサブルーチンに係る、設定変更なしRAM初期化処理のフローチャートである。まず、ステップ3704で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM内の電断復帰データは正常ではないか否かを判定する。尚、第4実施形態においては、第1RAM領域の先頭アドレスからスタックエリアの最終アドレスまで(全RAM領域の先頭アドレスから最終アドレスまで)を加算した結果が0である場合に、電断復帰データが正常であると判定するよう構成されている。ステップ3704でYesの場合、ステップ3706で、CPUC100は、第1ROM・RAM領域内のデータに基づき、バックアップエラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理を実行する。尚、本処理における復帰不可能エラー処理は図29の処理と同様に、すべて第1ROM・RAM領域における処理となっている。このように、第1ROM・RAM領域内のデータに基づき、エラー(ここでは電源断復帰データの異常)と判断した場合には、第2ROM・RAM領域の処理を呼び出す(CALL、CALL命令、呼び出し命令とも称する)ことなく、エラー処理を行うように構成する。つまり、エラーの場合に複雑な処理を実行しないよう構成することにより、プログラム構成の簡素化(複雑化の防止、プログラムの暴走防止)につながる。
他方、ステップ3704でNoの場合、ステップ3707で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタを復帰する。より詳細に説明すると、スタックポインタは所謂レジスタの一種であり、電源断によりクリアされるCPUに備えられた記憶領域である。そのため、図76のステップ1902により、電源断時に、第1RAM領域における所定アドレスにスタックポインタを記憶することにより、電源断前にスタックエリアに記憶していた、戻り番地や各種レジスタの値を復帰することができる。次に、ステップ3708で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAMの初期化範囲を第1RAM内の未使用RAM範囲に決定してセットする。次に、ステップ3710で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該決定された初期化範囲で第1RAMの初期化を実行する。次に、ステップ3712で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の第2RAM初期化処理を呼び出し、ステップ3713に移行する。
次に、ステップ3713で、CPUC100は、第2ROM・RAM領域内のデータに基づき、PUSH命令により、複数のレジスタ上のデータをスタックエリアに退避させる(退避する順序は、例えば、A、F、B、C、D、E、H、Lの順)。次に、ステップ3714で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAMの初期化範囲を、第2RAM内の未使用RAM範囲に決定してセットし、ステップ3736に移行する。ここで、PUSH命令とは、今までのレジスタをスタックエリアに退避(記憶)する命令をさす。具体的には、「PUSH GPR」という命令により、図69に記載の8個のレジスタを記憶する。このとき、各レジスタをスタックエリアに退避することから、実行前のスタックポインタから1(合計で8)を減算し、次にスタックポインタで指定されたアドレスに実効アドレスやレジスタを格納することとなる。また、POP命令は、スタックエリアに退避していたスタック領域の最上段(スタックポインタの示すアドレス)からデータを取り出し(復帰)する命令を指す。具体的には、「POP GPR」という命令により、図69に記載の8個のレジスタを復帰させ、スタックポインタの値に1(合計で8)を加算することである。
次に、ステップ3736で、CPUC100は、第2ROM・RAM領域内のデータに基づき、決定された初期化範囲で第2RAMの初期化を実行する。次に、ステップ3738で、CPUC100は、第2ROM・RAM領域内のデータに基づき、POP命令により、複数のレジスタ上のデータをスタックエリアから復帰させる(復帰する順序は、例えば、L、H、E、D、C、B、F、Aの順であり、退避させた順序と逆の順序にて復帰する)。次に、ステップ3740で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAMの呼び出し元に復帰し、次の処理(ステップ1077の処理)に移行する。このように、第4実施形態においては、第1RAM領域の初期化範囲の決定及び初期化の実行は第1ROM・RAM領域における処理によって実行し、第2RAM領域の初期化範囲の決定及び初期化の実行は第2ROM・RAM領域における処理によって実行するよう構成されている。尚、第4実施形態においては、電源投入直後の復帰不可能エラー処理は、第1ROM・RAM領域内の処理として実行している一方、他のタイミングにおける復帰不可能エラー処理は第1ROM・RAM領域内の処理として実行しているのだが、これは、電源投入直後に実行する復帰不可能エラー処理においては、第2ROM・RAM領域内の処理として実行する準備ができていないためスタックポインタの初期値をセットしてよいか否かの判断ができていないためである。尚、未使用領域に仮スタックエリアを設けて、電源投入時のチェックサム算出の際にのみ当該仮スタックエリアをスタックエリアとして使用するよう構成してもよい。
次に、図70は、第4実施形態における、図68のステップ3750(第4)のサブルーチンに係る、設定変更ありRAM初期化処理のフローチャートである。まず、ステップ3752で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM内の電源断復帰データは正常であるか否かを判定する(電源断処理済みフラグ状態及び全RAMのチェックサムの状態を参照して判定している)。ステップ3752でYesの場合、ステップ3754で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックエリアをクリアしてスタックポインタの初期値をセットする。次に、ステップ3756で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAMの初期化範囲を、第1RAM内の設定値を除くすべての範囲に決定してセットする。尚、設定値だけでなく、その他の範囲(例えば、ボーナスの持越しに関する持越し情報)を初期化範囲から除いてもよい。次に、ステップ3758で、CPUC100は、第1ROM・RAM領域内のデータに基づき、決定された初期化範囲で第1RAMの初期化を実行する。次に、ステップ3760で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の第2RAM初期化処理を呼び出し、ステップ3762に移行する。尚、初期化の順序は、スタックエリアのクリアの前に第1RAMの初期化範囲の決定及び初期化の実行をしてもよく、初期化の順序は図70の順序に限定されるものではない。
次に、ステップ3762で、CPUC100は、第2ROM・RAM領域内のデータに基づき、PUSH命令により、複数のレジスタ上のデータをスタックエリアに退避させる(退避する順序は、例えば、A、F、B、C、D、E、H、Lの順)。次に、ステップ3764で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAMの初期化範囲を、第2RAM内のすべての範囲に決定してセットし、ステップ3778に移行する。尚、本例においては、設定値に係る情報は第2RAM領域には格納されておらず、第1RAM領域にのみ格納されている。
他方、ステップ3752でNoの場合、ステップ3766で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックエリアをクリアしてスタックポインタの初期値をセットする。次に、ステップ3768で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAMの初期化範囲を第1RAMのすべての範囲に決定してセットする。次に、ステップ3770で、CPUC100は、第1ROM・RAM領域内のデータに基づき、決定された初期化範囲で第1RAMの初期化を実行する。次に、ステップ3772で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の第2RAM初期化処理を呼び出し、ステップ3774に移行する。尚、初期化の順序は、スタックエリアのクリアの前に第1RAMの初期化範囲の決定及び初期化の実行をしてもよく、初期化の順序は図70の順序に限定されるものではない。
次に、ステップ3774で、CPUC100は、第2ROM・RAM領域内のデータに基づき、PUSH命令により、複数のレジスタ上のデータをスタックエリアに退避させる(退避する順序は、例えば、A、F、B、C、D、E、H、Lの順)。次に、ステップ3776で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAMの初期化範囲を、第2RAM内のすべての範囲に決定してセットし、ステップ3778に移行する。
次に、ステップ3778で、CPUC100は、第2ROM・RAM領域内のデータに基づき、決定された初期化範囲で第2RAMの初期化を実行する。次に、ステップ3780で、CPUC100は、第2ROM・RAM領域内のデータに基づき、POP命令により、複数のレジスタ上のデータをスタックエリアから復帰させる(復帰する順序は、例えば、L、H、E、D、C、B、F、Aの順であり、退避させた順序と逆の順序にて復帰する)。次に、ステップ3782で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAMの呼び出し元に復帰し(RETURN、RETURN命令、復帰命令とも称する)、次の処理(ステップ1118の処理)に移行する。
次に、図71は、第4実施形態における、遊技進行制御処理(1枚目)のフローチャートである。第3実施形態との相違点は、ステップ1206(第4)であり、即ち、ステップ1204で、当該ゲームに必要なRAMのデータをセットした後、ステップ1206(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームにおける遊技状態を第1RAM領域に一時記憶し、ステップ1208に移行する。尚、当該処理は、遊技状態に係る情報をサブ側に出力する場合と試験基板側に出力する場合とに用いられることとなる。
次に、図72は、第4実施形態における、遊技進行制御処理(3枚目)のフローチャートである。第3実施形態との相違点は、ステップ1293(第4)、ステップ3500(第4)、ステップ1294(第4)〜ステップ1296(第4)及びステップ1300であり、即ち、ステップ3150(第3)で押し順ナビ制御処理を実行した後、又は、ステップ1257‐2(第3)でARTカウンタ値が0であった場合、ステップ1293(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の第2試験信号出力処理を呼び出し、ステップ3500(第4)に移行する。
次に、ステップ3500(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、第2試験信号出力処理を実行する。次に、ステップ1294(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰する。このように、第4実施形態においては、第2試験信号出力処理は、割り込み処理ではなくメインループの処理(遊技進行制御処理)として実行されるよう構成されている。
また、ステップ1500で投入・払出エラー検出処理を実行した後、ステップ1295(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の設定値は正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1295(第4)でYesの場合にはステップ1270に移行し、Noの場合には、ステップ1296(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示(例えば、払出数表示装置D190に表示されることとなる)をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理を実行する。このように、第4実施形態においては、すべてのリールが停止したタイミングにおいても、設定値異常をチェックするよう構成されている。すべてのリールが停止したタイミングで設定値異常チェックを実行する理由としては、例えば、すべてのリールが停止したときの所定のタイミング(例えば、第3停止操作後)に停止表示された図柄の組み合わせの結果等に応じて、第1ROM・RAM領域内のデータに基づいて、ARTに関する抽選{ARTの当選/非当選、ARTの抽選に用いる抽選テーブル(低確率状態、高確率状態))を、設定値に基づいて実行する場合があるためである。換言すると、このときの設定値が「7」等の異常の設定値が選択されていた場合に意図しない抽選テーブルを用いてARTの抽選を実行してしまう可能性があり、このような事態を防止するために実行している。
次に、図73は、第4実施形態における、図70のステップ3500(第4)のサブルーチンに係る、第2試験基板信号出力処理のフローチャートである。まず、ステップ3518で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内の情報に基づきステップ数指定コマンド(各リールの有するステップ数に係るコマンド)を出力する。次に、ステップ3520で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM領域内のコマ数指定コマンド(各リールの有するコマ数に係るコマンド)を出力する。このように構成することにより、試験機側に試験の対象となる遊技機で使用しているステップ数やコマ数を通知することができ、その他の試験信号とに基づいて当選役等に応じてどの位置で停止すればよいか等を把握することができる。このように、第4実施形態においては、ステップ数指定コマンドとコマ数指定コマンドとを第2試験基板側に出力するよう構成しているが、これには限定されず、例えば、生産する遊技機の種類によってステップ数及びコマ数に相違がない場合には、ステップ数情報とリールコマ数情報とは第2試験基板側に出力しないよう構成しても問題ない。
次に、ステップ3522で、CPUC100は、第2ROM・RAM領域内のデータに基づき、押し順指定コマンドを出力する。次に、ステップ3524で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の左回胴受付位置指定コマンドを出力する。次に、ステップ3526で、CPUC100は、第2ROM・RAM領域内のデータに基づき、中回胴受付位置指定コマンドを出力する。次に、ステップ3528で、CPUC100は、第2ROM・RAM領域内のデータに基づき、右回胴受付位置指定コマンドを出力し、次の処理{ステップ1294(第4)の処理}に移行する。このように、第4実施形態においては、「ステップ数指定コマンド→コマ数指定コマンド→押し順指定コマンド→左回胴受付位置指定コマンド→中回胴受付位置指定コマンド→右回胴受付位置指定コマンド」の順に第2試験基板に出力するよう構成されている。また、押し順指定コマンド、左回胴受付位置指定コマンド、中回胴受付位置指定コマンド及び右回胴受付位置指定コマンドについては、押し順ナビありの場合には、ステップ3150(第3)にて生成された情報に基づいてコマンド内容を決定し、押し順ナビなしの場合には、ステップ3600(第3)にて生成された情報に基づいてコマンド内容を決定する。尚、押し順指定コマンドやコマ数指定コマンドの内容として、前述したような、最高機械割押し順あり情報、最高機械割押し順なし情報や、最も遊技者にとって不利益となる押し順である最低機械割押し順あり情報、最高機械割押し順あり情報等の同様の押し順、停止コマとなるような情報を出力するよう構成してもよい。尚、第4実施形態においては、不図示であるが、第2試験基板に出力された回胴受付位置指定コマンドは、第2試験基板によって停止ステップ数情報に変換(リール停止位置を指示する際の単位をコマ数からステップ数に変換)して出玉試験機に出力されるよう構成されており、第2試験基板によって停止ステップ数指定コマンドに変換しないよう構成する場合には、第2試験信号として停止ステップ数指定コマンドを第2試験基板に出力するよう構成してもよい。
次に、図75は、第4実施形態におけるステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。第3実施形態との相違点はステップ1666(第4)〜ステップ1680(第4)であり、即ち、ステップ1614で出力ポートへ出力データを出力した後、ステップ1666(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、制御コマンド(サブ側のコマンド)を送信する{例えば、ステップ1672(第4)やステップ1674(第4)、ステップ1678(第4)、ステップ1680(第4)でレジスタ領域内にセットされている場合には、そのセットされた制御コマンドを引き継ぐこととなる}。次に、ステップ1667(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、セットされている内部抽選の結果、条件装置識別値及び遊技状態に係るコマンド(サブ側へのコマンド)を送信する。次に、ステップ1668(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技進行に関するタイマ計測(遊技が正常に進行している場合に必要なタイマ計測であり、例えば、遊技間隔最小時間タイマM70等のタイマ計測。第1のタイマ計測とも称す)を実行し、ステップ1616に移行する。
また、ステップ1800で投入・払出エラーチェック処理を実行した後、ステップ1670(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、遊技進行に関係のないエラーフラグ(正常に遊技が進行した場合には発生し得ないエラーに係るフラグであり、例えば、投入メダル逆流エラーフラグ等)がオフであるか否かを判定する。ステップ1670(第4)でYesの場合、ステップ1672(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2エラー未検出コマンド(サブ側のコマンドであり、正常に遊技が進行していない場合に係るエラーが未検出であった場合に係るコマンド)をセットし、ステップ1638に移行する。他方、ステップ1670(第4)でNoの場合には、ステップ1674(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2エラー検出コマンド(サブ側のコマンドであり、正常に遊技が進行していない場合に係るエラーが検出された場合に係るコマンド)をセットし、ステップ1638に移行する。尚、ステップ1672(第4)に基づくコマンドはセットしないよう構成してもよい。また、ステップ1674(第4)に基づくコマンドはエラーを検出したときに1回だけコマンドをセットするように構成してもよい。
また、ステップ1642で内蔵乱数の更新状態が正常であった場合、ステップ1675(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、遊技進行に関係のないタイマ計測{前述した遊技進行に関係のないエラー(例えば、セレクタ内のメダル滞留エラー等)に係るタイマ計測等。第2のタイマ計測とも称す。}を実行し、ステップ3450(第3)に移行する。
また、ステップ1644で第1ROM領域の呼び出し元に復帰した後、ステップ1676(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技進行に関わるエラーフラグ{正常に遊技が進行した場合には発生し得るエラーに係るフラグであり、例えば、扉スイッチフラグ、ホッパエンプティエラー(ホッパH40のメダルが空になったことを示すエラー)フラグ}等がオフであるか否かを判定する。ステップ1676(第4)でYesの場合、ステップ1678(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1エラー未検出コマンド(サブ側のコマンドであり、正常に遊技が進行している場合に係るエラーが未検出であった場合に係るコマンド)をセットし、ステップ1628に移行する。他方、ステップ1676(第4)でNoの場合には、ステップ1680(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1エラー検出コマンド(サブ側のコマンドであり、正常に遊技が進行している場合に係るエラーが検出された場合に係るコマンド)をセットし、ステップ1628に移行する。このように、第4実施形態においては、エラーの発生有無に係るコマンドをセットする場合には、遊技の正常な進行時に発生し得るエラーに係るコマンドは第1ROM・RAM領域に係る処理によって実行する一方、遊技の正常な進行時に発生しないエラーに係るコマンドは第2ROM・RAM領域に係る処理によって実行するよう構成されている。
次に、図76は、第4実施形態における、図75のステップ1900のサブルーチンに係る、電源断時処理のフローチャートである。第3実施形態との相違点はステップ1918(第4)であり、即ち、ステップ1904で電源断処理済みフラグをオンにした後、ステップ1918(第4)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスから第2RAMアドレスの最終アドレスまでを加算した値の補数を算出し、当該補数を第1RAM領域のチェックサム領域に記憶する(当該補数はステップ1060の処理にて使用される)。換言すると、図76ではF102H番地にチェックサム領域を配置しているが、図76の第1作業領域内の所定のアドレスに記憶しても良く、また、チェックサム領域として1バイトデータを記憶するだけでなく2バイトデータを記憶するように構成してもよい。
次に、図77は、第4実施形態におけるステップ3450(第3)のサブルーチンに係る、第1試験信号出力処理のフローチャートである。第3実施形態との相違点はステップ3469(第4)〜ステップ3476(第4)であり、即ち、ステップ3456で第1RAM領域内の出力時間タイマM80のタイマ値情報をレジスタ領域に一時記憶した後、ステップ3469(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1条件装置情報の出力タイミングであるか否かを判定する。ここで、第4実施形態においては、第1試験信号として、「第1ボーナス状態情報→第1小役状態情報→第2ボーナス状態情報→第2小役状態情報」の順に出力するよう構成されている。また、出力タイミングの判定方法としては、Aレジスタの出力時間タイマM80のタイマ値(初期値は48となっている)を12で除算した商が、(1)3の場合には第1ボーナス状態情報の出力タイミング、(2)2の場合には第1小役状態情報の出力タイミング、(3)1の場合には第2ボーナス状態情報の出力タイミング、(4)0且つ余りがある場合には第1小役状態情報の出力タイミングであると判定し、(5)0且つ余りがない場合にはボーナス状態情報及び小役状態情報の出力タイミングではないと判定するよう構成されている。尚、図面上の○で囲まれた数字が、当該記載の(1)〜(5)と対応している。ステップ3469(第4)でYesの場合、ステップ3470(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、第1ボーナス状態情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3471‐1(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ボーナス状態情報の出力タイミングであるか否かを判定する。ステップ3471‐1(第4)でYesの場合にはステップ3466に移行し、Noの場合、即ち、1回目の小役状態情報である第1小役状態情報の出力タイミングである場合、ステップ3471‐2(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、第1小役状態情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶して、ステップ3466に移行する。
また、ステップ3466で条件装置情報を別のレジスタ領域(例えば、Aレジスタ)に一時記憶した後、又は、ステップ3469でNoの場合、ステップ3472(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2条件装置情報の出力タイミングであるか否かを判定する。ステップ3472(第4)でYesの場合、ステップ3473(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、第2ボーナス状態情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶する。次に、ステップ3474(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ボーナス状態情報の出力タイミングであるか否かを判定する。ステップ3474(第4)でYesの場合にはステップ3476(第4)に移行し、Noの場合、即ち、2回目の小役状態情報である第2小役状態情報の出力タイミングである場合、ステップ3475(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、条件装置情報として、第2小役状態情報アドレスをレジスタ領域(例えば、HLレジスタ)に一時記憶して、ステップ3476(第4)に移行する。次に、ステップ3476(第4)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、レジスタ領域(例えば、HLレジスタ)に一時記憶されている条件装置情報を別のレジスタ領域(例えば、Aレジスタ)に一時記憶しステップ3468に移行する。尚、ステップ3472(第4)でNoの場合にもステップ3468に移行する。尚、当該4つの条件装置情報の出力イメージとしては、同図右下段のようにボーナス状態情報と小役状態情報とが交互にオン・オフとなるよう構成されている。また、同図右中段に示されるように、第1小役状態情報の下位6ビット、第2小役情報の上位6ビットを結合して、12ビットの1つの小役状態情報、第1ボーナス状態情報の下位6ビット、第2ボーナス情報の上位6ビットのを結合して、12ビットの1つのボーナス状態情報としており、このように構成することにより、6ビット以上の種類、換言すると0〜63を超える数の種類で構成されるボーナス状態情報及び小役状態情報を出力することが可能となっている。尚、本実施形態では、ボーナスに係る条件装置番号は0〜2、小役に係る情報装置番号は0〜25で構成されているが、遊技機の開発段階によって条件装置の数を変更した(増加した)場合にも対応が可能である。これは、プログラム容量の制限を受けない第2ROM領域に記憶されたプログラムであることからこそ可能なプログラム制御である。さらに、条件装置数が異なる別の遊技機を開発する場合にも条件装置の数に応じて別のプログラムにする必要もなく、どの遊技機においても万能に対応することができることとなる。
尚、本実施形態から第4実施形態においては、遊技の進行に影響を及ぼす処理は第1ROM・RAM領域にて実行し、遊技の進行に影響を及ぼさない処理は第2ROM・RAM領域にて実行するよう構成したが、当該構成をより明確にするよう構成することも可能である。そこで、そのような構成を第5実施形態とし、以下、第3実施形態との相違点について詳述していく。尚、第5実施形態から第11実施形態では、主にスタックポインタについての詳細な説明を行う。その為、第1メイン処理で実行される処理や第2メイン処理で実行される処理、第1割り込み処理や第2割り込み処理で実際に実行される処理の詳細な説明は割愛している。
はじめに、図78は、第5実施形態における、第2ROM領域の処理を呼び出す際の処理の一例である。まず、ステップ4002で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の処理を実行している。次に、ステップ4004で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の処理を呼び出し、ステップ4006に移行する。
次に、ステップ4006で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタのアドレスを第2RAM領域の所定アドレスに一時記憶する。次に、ステップ4008で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域における処理を実行する。次に、ステップ4010で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタのアドレスがステップ4006で所定アドレスに一時記憶したアドレスと一致しているか確認する。次に、ステップ4012で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ステップ4010で確認したスタックポインタのアドレスは一致しているか否かを判定する。ステップ4012でYesの場合、ステップ4014で、CPUC100は、第2ROM・RAM領域内のデータに基づき、正常に第2ROM・RAM領域の処理が実行されたと判断し、第1ROM領域の呼び出し元に復帰し、ステップ4016に移行する。他方、ステップ4012でNoの場合、ステップ4018で、CPUC100は、第2ROM・RAM領域内のデータに基づき、エラー処理を実行する(例えば、音・ランプによりエラー報知及び遊技の中断)。
次に、ステップ4016で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域における処理を実行してゆく。尚、ステップ4004で第2ROM領域の処理を呼び出す直前(第1ROM・RAM領域における処理)にてスタックポインタのアドレスを第1RAM領域の所定アドレスに一時記憶し、ステップ4014で第1ROM領域の呼び出し元に復帰した直後(第1ROM・RAM領域における処理)にてスタックポインタのアドレスが一致しているか確認するよう構成してもよいし、ステップ4004で第2ROM領域の処理を呼び出す直前(第1ROM・RAM領域における処理)にてスタックポインタのアドレスを第1RAM領域の所定アドレスに一時記憶し、ステップ4014で第1ROM領域の呼び出し元に復帰する直前(第2ROM・RAM領域における処理)にてスタックポインタのアドレスが一致しているか確認するよう構成してもよい。また、ステップ4012で、第2ROM・RAM領域における処理の実行開始時(第1ROM領域から呼び出された時)と実行終了時(第1ROM領域の呼び出し元に復帰する時)とでスタックポインタのアドレスが一致していた場合には、スタックエリア内におけるスタックポインタのアドレスより上に積まれている、当該第2ROM・RAM領域における処理の実行開始時から実行終了時までの処理に係るデータをクリアするよう構成してもよいし、スタックエリア内におけるスタックポインタのアドレスより上に積まれている第2ROM・RAM領域に係るすべての処理に係るデータを含むスタックエリア内のデータ{スタックポインタからスタックエリアにデータが最大に積まれたとき(番地としては最小)の番地までのデータ、もしくは、スタックポインタからスタックエリアの最小の番地(図76におけるF2CAH番地)までのデータ}をクリアするよう構成してもよい(例えば、「第1ROM・RAM領域に係る遊技進行制御処理が開始→第2ROM・RAM領域に係る遊技進行制御処理が開始→第1ROM・RAM領域に係る割り込み処理が開始→第2ROM・RAM領域に係る割り込み処理が開始→第2ROM・RAM領域に係る割り込み処理が終了→第1ROM・RAM領域に係る割り込み処理が終了→第2ROM・RAM領域に係る遊技進行制御処理が終了」のように処理が実行されてゆき、第2ROM・RAM領域に係る遊技進行制御処理の終了時と第2ROM・RAM領域に係る遊技進行制御処理の開始時とのアドレスの一致が確認できた場合に、第2ROM・RAM領域に係る遊技進行制御処理及び第2ROM・RAM領域に係る割り込み処理に係るデータをクリアする、等)。換言すると、第2ROM・RAM領域に基づいた処理によってスタックエリアを使用した範囲のデータは少なくともクリアするが、第1ROM・RAM領域に基づいた処理によってスタックエリアを使用した範囲のデータはクリアしないようにすることで、第2ROM・RAM領域に基づいた処理によってスタックエリアに記憶したデータを用いて、第1ROM・RAM領域に基づいた処理による不正行為等が実行されてしまう事態を防止することができると共に、第1ROM・RAM領域に基づいた処理を不具合なく再度実行することができる。
尚、第5実施形態においては、第1ROM領域の処理を実行中に第2ROM領域の処理を呼び出した場合のスタックポインタのアドレスと、第2ROM領域の処理を終了してから第1ROM領域の呼び出し元に復帰する場合のスタックポインタのアドレスとが一致していることによって、第1ROM領域の処理と第2ROM領域の処理とを切り分けるよう構成したが、これには限定されず、スタックエリアを2つ用いることによって第1ROM・RAM領域の処理と第2ROM・RAM領域の処理とを切り分けることが可能である。そのような構成を第6実施形態とし、以下、第5実施形態との相違点について詳述していく。尚、第6実施形態から第11実施形態について、例えば図面に記載されている「第1ROM・RAM領域のメイン処理を実行し、PUSH・CALL・POP・RETURNにより第1スタックエリアのデータの出し入れ」とは、本実施形態〜第4実施形態等に記載されている主制御装置側メイン処理(第1ROM・RAM領域における処理)に記載されている複数のステップ(処理)、又は、何れかのステップ(処理)を指している。同様に「第2ROM・RAM領域のメイン処理を実行し、PUSH・CALL・POP・RETURNにより第2スタックエリアのデータの出し入れ」とは、本実施形態〜第4実施形態等に記載されている主制御装置側メイン処理(第2ROM・RAM領域における処理)に記載されている複数のステップ(処理)、又は、何れかのステップ(処理)を指している。また、例えば「第1ROM・RAM領域の割り込み時の処理を実行し、PUSH・CALL・POP・RETURNにより第1スタックエリアのデータの出し入れ」とは、タイマ割り込み時処理の第1ROM・RAM領域における処理に記載されている複数のステップ(処理)、又は、何れかのステップ(処理)を指している。同様に、例えば「第2ROM・RAM領域の割り込み時の処理を実行し、PUSH・CALL・POP・RETURNにより第1スタックエリアのデータの出し入れ」とは、タイマ割り込み時処理の第2ROM・RAM領域における処理に記載されている複数のステップ(処理)、又は、何れかのステップ(処理)を指している。
まず、図80は、第6実施形態における、ステップ5000(第6)及び5050(第6)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。尚、本図以降のフローチャートにおける右部のスタックエリアの記載は、処理が実行されている場合にスタックポインタがセットされているスタックエリアを示している。まず、ステップ5000(第6)の第1メイン処理について詳述する。まず、ステップ5002で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1スタックエリアにスタックポインタ(アドレスをXとする)をセットする。このアドレスXは、第1スタックエリアの初期アドレス(例えば、F200H)を示す。次に、ステップ5004で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行した後、第2ROM領域の処理を呼び出す。
次に、ステップ5050(第6)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域に係る遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5008で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行してゆく。
次に、ステップ5050(第6)の第2メイン処理について詳述する。まず、ステップ5052で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを第1スタックエリアに退避する。次に、ステップ5054で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)に退避する。次に、ステップ5056で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをYとする)をセットする。次に、ステップ5058で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5060で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレス)から復帰させる。次に、ステップ5062で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1スタックエリアに退避した全レジスタを復帰する。尚、図中下段に示されているように、第6実施形態(以降の実施形態も同様)においては、第1RAM領域に(第1RAM領域に隣接した領域という認識でもよい)第1スタックエリアが存在しており、第2RAM領域に(第2RAM領域に隣接した領域という認識でもよい)第2スタックエリアが存在している。尚、第6実施形態においては、第1スタックエリアをF1CAH番地からF200H番地とし、第2スタックエリアをF3CAH番地からF400H番地としているが、これには限定されず、第1スタックエリアを第1RAM領域の所定アドレスとしてもよいし、第2スタックエリアを第2RAM領域の所定アドレスとしてもよい。また、スタックポインタとは、CPUC100の所定の領域であり、1つのアドレスのみが記憶されるよう構成されている。第6実施形態以降においては、当該1つのスタックポインタのアドレスを第1スタックエリアのアドレスと第2スタックエリアのアドレスとに切り替えていくことによって(RAM領域に退避及びRAM領域から復帰を繰り返すことによって)、第1スタックエリアと第2スタックエリアとの2つのスタックエリアを使用する処理を実行可能に構成している。
次に、図81は、第6実施形態における、ステップ5100(第6)のサブルーチンに係る第1割り込み処理のフローチャートである。まず、ステップ5102で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリアに退避する。次に、ステップ5104で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)に退避する。次に、ステップ5106で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み処理発生時に設定中のスタックエリアは第2スタックエリアであるか否かを判定する。具体的には、第1スタックエリアの最終アドレスがF1**であり、第2スタックエリアの最終アドレスがF3**である場合に、第1RAM領域の所定アドレス(αアドレスとも称する)を参照し、当該アドレスに記憶されたデータがF1△△の場合には割り込み発生時は第1スタックエリアに設定されている場合であると判断し、当該アドレスに記憶されたデータがF3△△の場合には割り込み発生時は第2スタックエリアに設定されている場合であると判断する。さらに具体的には、HLレジスタに第1RAM領域の所定アドレス(αアドレス)に記憶されているデータを書き込む。仮にF1FDが記憶されていた場合、Hレジスタに「F1」、Lレジスタに「FD」を記憶する。このときHレジスタは「11110001」が記憶されていることとなる。一方、F3FDが記憶されていた場合、Hレジスタに「F3」、Lレジスタに「FD」を記憶する。このときHレジスタは「11110011」が記憶されていることとなる。ここでHレジスタのD1ビット目(下位から2番目のビット)を判断することにより、どちらのスタックエリアが設定されていたかを判断することができる(「0」のとき第1スタックエリア、「1」のとき第2スタックエリア)。ステップ5106でYesの場合、ステップ5108で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレス)から復帰し、ステップ5110に移行する。他方、ステップ5106でNoの場合にもステップ5110に移行する。これらの処理により、ステップ5110で使用するスタックエリアを第1スタックエリアに設定する。次に、ステップ5110で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた処理により第1スタックエリアのデータの出し入れを実行した後、第2ROM領域の処理を呼び出す。
次に、ステップ5150(第6)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタック設定中第2割り込み処理を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5114で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5116で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタAを第1RAM領域の所定アドレス(αアドレスとも称する)から復帰させる。次に、ステップ5118で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5102で退避した全レジスタを復帰する。
次に、図82は、第6実施形態における、ステップ5150(第6)のサブルーチンに係る第2割り込み処理のフローチャートである。まず、ステップ5152で、CPUC100は、第2ROM・RAM領域内のデータに基づき、現在設定されているスタックエリアに全レジスタを退避する。次に、ステップ5154で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)に退避する。次に、ステップ5156で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをYとする)をセットする。このアドレスYは、第2スタックエリアの初期アドレス(例えばF400H)を示す。次に、ステップ5158で、割り込み発生時のスタックエリアが第2スタックエリアであるか否かを判定する。具体的には、第1RAM領域の所定アドレス{スタックポインタの値(アドレスA)を記憶したアドレス}を参照し、当該アドレスに記憶されたデータがF1△△の場合には割り込み発生時は第1スタックエリアに設定されている場合であると判断し、当該アドレスに記憶されたデータがF3△△の場合には割り込み発生時は第2スタックエリアに設定されている場合であると判断する。ステップ5158でYesの場合、ステップ5160で、スタックポインタ(アドレスはAとする)を第1RAM領域の所定アドレス(αアドレス)から復帰し、ステップ5162に移行する。これにより、ステップ5156でセットした第2スタックエリアの初期値ではなく、第2スタックエリアで使用していたスタックポインタは破壊されることなく続きのスタックポインタを用いて、レジスタや戻り番地を退避することができる。他方、ステップ5158でNoの場合にもステップ5162に移行する。これらの処理により、ステップ5162で使用するスタックエリアを第2スタックエリアに設定する。ステップ5158でNoの場合は、ステップ5156でセットした第2スタックエリアの初期値を使用することとなる。換言すると、第2スタックエリアは使用していなかったため第2スタックエリアの最初の番地を示しても問題ない。次に、ステップ5162で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5164で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)から復帰する。次に、ステップ5166で、ステップ5152で退避した全レジスタを復帰する。
尚、6実施形態においては、第1ROM・RAM領域による処理を実行中に第2ROM領域の処理を呼び出す場合には、第2ROM・RAM領域の処理によって、全レジスタを退避して第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けるよう構成したが、その他の構成としても、同様に第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けることができる。そこで、そのような構成を第7実施形態とし、以下、詳述していく。
はじめに、図86は、第7実施形態における、ステップ5200(第7)及び5250(第7)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。尚、本図以降のフローチャートにおける右部のスタックエリアの記載は、処理が実行されている場合にスタックポインタがセットされているスタックエリアを示している。まず、ステップ5200(第7)の第1メイン処理について詳述する。まず、ステップ5202で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1スタックエリアにスタックポインタ(アドレスはX)をセットする。次に、ステップ5204で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5206で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを第1スタックエリアに退避させて、第2ROM領域の処理を呼び出す。
次に、ステップ5250(第7)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域に係る遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5210で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5206にて第1スタックエリアに退避させた全レジスタを復帰する。次に、ステップ5212で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行する。
次に、ステップ5250(第7)の第2メイン処理について詳述する。まず、ステップ5252で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)に退避する。このスタックポインタは、第1スタック領域のスタックポインタである。次に、ステップ5254で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはYとする)をセットする。次に、ステップ5256で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等の所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5258で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰させ、第1ROM領域の呼び出し元に復帰する。
次に、図87は、第7実施形態における、ステップ5300(第7)のサブルーチンに係る第1割り込み処理のフローチャートである。まず、ステップ5302で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリアに退避する。次に、ステップ5304で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをAとする)を第1RAM領域に退避する。次に、ステップ5306で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み発生時に割り込み発生時のスタックエリアが第2スタックエリアであるか否かを判定する。ステップ5306でYesの場合、ステップ5308で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰し、ステップ5310に移行する。他方、ステップ5306でNoの場合にもステップ5310に移行する。これらの処理により、ステップ5310で使用するスタックエリアを第1スタックエリアに設定する。次に、ステップ5310で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時の処理を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実する。次に、ステップ5312で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリア(第1スタックエリア)に退避し、第2ROM領域の処理を呼び出す。
次に、ステップ5350(第7)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2割り込み処理を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5316で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5312で退避した全レジスタを復帰する。次に、ステップ5318で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5320で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタAを第1RAM領域の所定アドレス(αアドレスとも称する)から復帰させる。次に、ステップ5322で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5302で退避した全レジスタを復帰する。
次に、図88は、第7実施形態における、ステップ5350(第7)のサブルーチンに係る第2割り込み処理のフローチャートである。まず、ステップ5352で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)に退避する。次に、ステップ5354で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはYとする)をセットする。次に、ステップ5356で、割り込み発生時のスタックエリアが第2スタックエリアであるか否かを判定する。ステップ5356でYesの場合、ステップ5358で、スタックポインタ(アドレスはAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰し、ステップ5360に移行する。他方、ステップ5356でNoの場合にもステップ5360に移行する。これらの処理により、ステップ5360で使用するスタックエリアを第2スタックエリアに設定する。次に、ステップ5360で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5362で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタC(アドレスはCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)から復帰する。
尚、第5実施形態においては、第1ROM・RAM領域による処理を実行中に第2ROM領域の処理を呼び出す場合には、第2ROM・RAM領域の処理によって、全レジスタを退避して第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けるよう構成したが、その他の構成としても、同様に第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けることができる。そこで、そのような構成を第8実施形態とし、以下、詳述していく。
はじめに、図92は、第8実施形態における、ステップ5400(第8)及び5450(第8)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。まず、ステップ5400(第8)の第1メイン処理について詳述する。まず、ステップ5402で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1スタックエリアにスタックポインタX(第1スタックエリアのアドレスを示す)をセットする。次に、ステップ5404で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5406で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み処理を禁止(割り込みを禁止している場合には、割込み許可がなされるまでタイマ割り込み処理が実行できないこととなる)した後、第2ROM領域の処理を呼び出す。
次に、ステップ5450(第8)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域に係る所定の処理であり、遊技進行制御処理)を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5410で、CPUC100は、第1ROM・RAM領域内のデータに基づき、禁止していた割り込み処理を許可する。次に、ステップ5412で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行してゆく。
次に、ステップ5450(第8)の第2メイン処理について詳述する。まず、ステップ5452で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)に退避する。次に、ステップ5454で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはY)をセットする。次に、ステップ5456で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを第2スタックエリアに退避する。次に、ステップ5458で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを許可する。次に、ステップ5460で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5462で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを禁止(割り込みを禁止している場合には、割込み許可がなされるまでタイマ割り込み処理が実行できないこととなる)する。次に、ステップ5464で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを第2スタックエリアから復帰する。次に、ステップ5466で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰させる。尚、第8実施形態においては、スタックポインタを切り替える(例えば、第1スタックエリアのアドレスから第2スタックエリアのアドレスに切り替える)処理が複数のステップ(処理)に跨って実行され得るよう構成されており、当該切り替え処理実行途中に割り込み処理が発生すると、割り込み処理に基づく各種データが第1スタックエリアに記憶される場合と、第2スタックエリアに記憶される場合とのどちらの場合も発生し得ることとなり、そのような事態を発生させないために、スタックポインタの切り換えに要する処理の実行中には、割込み処理が発生しないように構成している。
次に、図93は、第8実施形態における、ステップ5500(第8)のサブルーチンに係る第1割り込み処理のフローチャートである。まず、ステップ5502で、CPUC100は、第1ROM・RAM領域内のデータに基づき、AFレジスタ(Aレジスタ)を裏レジスタに退避する。尚、裏レジスタとは、主に用いるレジスタのコピーを保持する別のレジスタであり、一瞬にしてアクセスするレジスタを当該主に用いるレジスタから裏レジスタに切り替え得るよう構成されている。また、Fレジスタとは、演算命令等が実行された場合に当該演算結果に従って、S、Z、H、P/V、N、Cの各フラグが「1」又は「0」に変化したり、変化しなかったりすることとなるレジスタであり、プログラムによってFレジスタの内容を変化させることができないよう構成されている。また、AFレジスタを退避させているのは、Fレジスタだけ退避できれば問題ないのだがFレジスタだけを退避することができないためAFレジスタを退避させている。このように構成することによって、直前の演算結果によって上書きされていくFレジスタが割り込み処理(例えば、ステップ5508の処理)によって上書きされてしまう(壊れてしまう)ことを回避することができることとなる。次に、ステップ5504で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをAとする)を第1RAM領域に退避する。次に、ステップ5506で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域のメイン処理)を実行中であるか否かを判定する{例えば、(1)当該退避したスタックポインタのアドレス(割り込み処理開始時のアドレスであり、Aとなっている)が第1スタックエリアのアドレスであるか第2スタックエリアのアドレスであるかによって判定する、(2)割り込み処理開始時にスタックエリアに格納されている戻り番地のアドレスが第1ROM・RAM領域のアドレスであるか第2ROM・RAM領域のアドレスであるかによって判定する、等}。ステップ5506でYesの場合、ステップ5508で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰し、ステップ5510に移行する。他方、ステップ5506でNoの場合にもステップ5510に移行する。次に、ステップ5510で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリアに退避する。次に、ステップ5512で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理(遊技進行制御処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行した後、第2ROM領域の処理を呼び出す。
次に、ステップ5550(第8)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2割り込み処理を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5516で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理(遊技進行制御処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5518で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5510で退避した全レジスタを復帰する。次に、ステップ5520で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはA)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰させる。次に、ステップ5524で、CPUC100は、第1ROM・RAM領域内のデータに基づき、裏レジスタに退避したAFレジスタを復帰し、割り込み処理を終了する。
次に、図94は、第8実施形態における、ステップ5550(第8)のサブルーチンに係る第2割り込み処理のフローチャートである。まず、ステップ5552で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)に退避する。次に、ステップ5554で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはY)をセットする。次に、ステップ5556で、割込み発生時に第2メイン処理(第2ROM・RAM領域のメイン処理)が実行中であったか否かを判定する{例えば、(1)当該退避したスタックポインタのアドレス(割り込み処理開始時のアドレスであり、Aとなっている)が第1スタックエリアのアドレスであるか第2スタックエリアのアドレスであるかによって判定する、(2)割り込み処理開始時にスタックエリアに格納されている戻り番地のアドレスが第1ROM・RAM領域のアドレスであるか第2ROM・RAM領域のアドレスであるかによって判定する、等}。ステップ5556でYesの場合、ステップ5558で、スタックポインタ(アドレスはAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰し、ステップ5560に移行する。他方、ステップ5556でNoの場合にもステップ5560に移行する。次に、ステップ5560で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリアに退避する。次に、ステップ5562で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域の割り込み時処理の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5564で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ステップ5560で退避した全レジスタを復帰する。次に、ステップ5566で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)から復帰する。
尚、第8実施形態においては、第1ROM・RAM領域による処理を実行中に第2ROM領域の処理を呼び出す場合には、第2ROM・RAM領域の処理によって、割り込み処理を禁止することによって、第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けるよう構成したが、割り込み禁止の構成を有するその他の構成としても、同様に第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けることができる。そこで、そのような構成を第9実施形態とし、以下、詳述していく。
はじめに、図98は、第9実施形態における、ステップ5600(第9)及び5650(第9)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。尚、本図以降のフローチャートにおける右部のスタックエリアの記載は、処理が実行されている場合にスタックポインタがセットされているスタックエリアを示している。まず、ステップ5600(第9)の第1メイン処理について詳述する。まず、ステップ5602で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1スタックエリアにスタックポインタ(アドレスはX)をセットする。次に、ステップ5604で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5606で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み処理を禁止(割り込みを禁止している場合には、割込み許可がなされるまでタイマ割り込み処理が実行できないこととなる)する。次に、ステップ5608で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを第1スタックエリアに退避し、第2ROM領域の処理を呼び出す。
次に、ステップ5650(第9)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域に係る割り込み処理とは異なる処理であり、遊技進行制御処理)を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5612で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを第1スタックエリアから復帰する。次に、ステップ5614で、CPUC100は、第1ROM・RAM領域内のデータに基づき、禁止していた割り込み処理を許可する。次に、ステップ5616で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行してゆく。
次に、ステップ5650(第9)の第2メイン処理について詳述する。まず、ステップ5652で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)に退避する。次に、ステップ5654で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをYとする)をセットする。次に、ステップ5656で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込み処理を許可する。次に、ステップ5658で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5660で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを禁止する。次に、ステップ5662で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰させる。尚、第9実施形態においては、スタックポインタを切り替える(例えば、第1スタックエリアのアドレスから第2スタックエリアのアドレスに切り替える)処理が複数のステップ(処理)に跨って実行されるよう構成されており、当該切り替え処理実行途中に割り込み処理が発生すると、割り込み処理に基づく各種データが第1スタックエリアに記憶される場合と、第2スタックエリアに記憶される場合とのどちらの場合も発生し得ることとなり、そのような事態を発生させないために、スタックポインタの切り換えに要する処理の実行中には、割込み処理が発生しないように構成している。
次に、図99は、第9実施形態における、ステップ5700(第9)のサブルーチンに係る第1割り込み処理のフローチャートである。まず、ステップ5702で、CPUC100は、第1ROM・RAM領域内のデータに基づき、AFレジスタ(Aレジスタ)を裏レジスタに退避する。次に、ステップ5704で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)に退避する。次に、ステップ5706で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2メイン処理(第2ROM・RAM領域のメイン処理)を実行中であるか否かを判定する{例えば、(1)当該退避したスタックポインタのアドレス(割り込み処理開始時のアドレスであり、Aとなっている)が第1スタックエリアのアドレスであるか第2スタックエリアのアドレスであるかによって判定する、(2)割り込み処理開始時にスタックエリアに格納されている戻り番地のアドレスが第1ROM・RAM領域のアドレスであるか第2ROM・RAM領域のアドレスであるかによって判定する、等}。ステップ5706でYesの場合、ステップ5708で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から復帰し、ステップ5710に移行する。他方、ステップ5706でNoの場合にもステップ5710に移行する。次に、ステップ5710で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリア(第1スタックエリア)に退避する。次に、ステップ5712で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1ROM・RAM領域の割り込み時処理の所定処理(遊技進行制御処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5714で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリア(第1スタックエリア)に退避した後、第2ROM領域の処理を呼び出す。
次に、ステップ5750(第9)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2割り込み処理を実行し、第1ROM領域の呼び出し元に復帰する。
次に、ステップ5718で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5714で退避した全レジスタを復帰する。次に、ステップ5720で、第1ROM・RAM領域の割り込み時処理の所定処理(遊技進行制御処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5722で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5710で退避した全レジスタを復帰する。次に、ステップ5724で、スタックポインタ(アドレスをAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰する。次に、ステップ5726で、CPUC100は、第1ROM・RAM領域内のデータに基づき、裏レジスタに退避したAFレジスタを復帰し、割り込み処理を終了する。
次に、図100は、第9実施形態における、ステップ5750(第9)のサブルーチンに係る第2割り込み処理のフローチャートである。まず、ステップ5752で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスをCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)に退避する。次に、ステップ5754で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはY)をセットする。次に、ステップ5756で、第2メイン処理(第2ROM・RAM領域のメイン処理)を実行中であるか否かを判定する{例えば、(1)当該退避したスタックポインタのアドレス(割り込み処理開始時のアドレスであり、Aとなっている)が第1スタックエリアのアドレスであるか第2スタックエリアのアドレスであるかによって判定する、(2)割り込み処理開始時にスタックエリアに格納されている戻り番地のアドレスが第1ROM・RAM領域のアドレスであるか第2ROM・RAM領域のアドレスであるかによって判定する、等}。ステップ5756でYesの場合、ステップ5758で、スタックポインタ(アドレスはAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰し、ステップ5760に移行する。他方、ステップ5756でNoの場合にもステップ5760に移行する。次に、ステップ5760で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域の割り込み時処理の所定処理(遊技進行制御処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5762で、CPUC100は、第2ROM・RAM領域内のデータに基づき、スタックポインタ(アドレスはCとする)を第2RAM領域の所定アドレス(γアドレスとも称する)から復帰する。
尚、第6実施形態においては、第1ROM・RAM領域による処理を実行中に第2ROM領域の処理を呼び出す場合には、第2ROM・RAM領域の処理によって、全レジスタを退避して第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けるよう構成したが、その他の構成としても、同様に第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けることができる。そこで、そのような構成を第10実施形態とし、第6実施形態との相違点について以下、詳述していく。
はじめに、図104は、第10実施形態における、ステップ5000(第6)及び5050(第6)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。第6実施形態との相違点は、ステップ5057(第10)及びステップ5059(第10)であり、即ち、ステップ5056で、スタックポインタY(第2スタックエリアのアドレスを示す)をセットした後、ステップ5057(第10)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを第2スタックエリアに退避する。次に、ステップ5058で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM・RAM領域のメイン処理(遊技進行制御処理であり、割り込み処理とは異なる処理)を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行する。次に、ステップ5059(第10)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを第2スタックエリアから復帰し、ステップ5060に移行する。
次に、図105は、第10実施形態における、ステップ5100(第10)のサブルーチンに係る第1割り込み処理のフローチャートである。第6実施形態との相違点は、ステップ5109(第10)及びステップ5115(第10)であり、即ち、ステップ5108で、スタックポインタ(アドレスをBとする)を第2RAM領域の所定アドレス(βアドレスとも称する)から退避させた後、又は、ステップ5106で割り込み発生時のスタックエリアが第1スタックエリアであった場合に、ステップ5109(第10)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリアに退避し、ステップ5150(第6)に移行する。
また、ステップ5114でPUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行した後、ステップ5115(第10)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ5109(第10)で退避した全レジスタを復帰し、ステップ5116に移行する。
次に、図106は、第10実施形態における、ステップ5150(第10)のサブルーチンに係る第2割り込み処理のフローチャートである。第6実施形態との相違点は、ステップ5161(第10)及びステップ5163(第10)であり、即ち、ステップ5160で、スタックポインタ(アドレスをAとする)を第1RAM領域の所定アドレス(αアドレスとも称する)から復帰させた後、又は、ステップ5158で割り込み発生時のスタックエリアが第1スタックエリアであった場合に、ステップ5161(第10)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、全レジスタを現在設定されているスタックエリア(第2スタックエリア)に退避する。次に、ステップ5162で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2ROM・RAM領域の割り込み処理時の所定処理を実行し、PUSH・CALL・POP・RETURN等を用いた所定の処理により第2スタックエリアのデータの出し入れを実行する。次に、ステップ5163(第10)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ステップ5161(第10)で退避した全レジスタを復帰し、ステップ5164に移行する。
尚、第6実施形態においては、第1ROM・RAM領域による処理を実行中に第2ROM領域の処理を呼び出す場合には、第2ROM・RAM領域の処理によって、全レジスタを退避して第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けるよう構成したが、その他の構成としても、同様に第1ROM・RAM領域の処理に係るデータと第2ROM・RAM領域の処理とを切り分けることができる。そこで、そのような構成を第11実施形態とし、第6実施形態との相違点について以下、詳述していく。
はじめに、図107は、第11実施形態における、ステップ5000(第6)及び5050(第6)のサブルーチンに係る第1メイン処理及び第2メイン処理のフローチャートである。第6実施形態との相違点は、ステップ5051(第11)、ステップ5064(第11)、ステップ5066(第11)及びステップ5068(第11)であり、即ち、第2メイン処理が呼び出された後、ステップ5051(第11)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを禁止し、ステップ5052に移行する。
また、ステップ5056でスタックポインタ(アドレスをYとする)をセットした後、ステップ5064(第11)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを許可し、ステップ5058に移行する。
また、ステップ5058でPUSH・CALL・POP・RETURN等を用いた所定の処理により第1スタックエリアのデータの出し入れを実行した後、ステップ5066(第11)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを禁止し、ステップ5062に移行する。
また、ステップ5062で全レジスタを第1スタックエリアから復帰した後、ステップ5068(第11)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、割り込みを許可する。尚、第11実施形態においては、スタックポインタを切り替える(例えば、第1スタックエリアのアドレスから第2スタックエリアのアドレスに切り替える)処理が複数のステップ(処理)に跨って実行されるよう構成されており、当該切り替え処理実行途中に割り込み処理が発生すると、割り込み処理に基づく各種データが第1スタックエリアに記憶される場合と、第2スタックエリアに記憶される場合とのどちらの場合も発生し得ることとなり、そのような事態を発生させないために、スタックポインタの切り換えに要する処理の実行中には、割込み処理が発生しないように構成している。
尚、以上の実施例において示した構成に基づき、以下のような概念を抽出(列記)することができる。但し、以下に列記する概念はあくまで一例であり、これら列記した概念の結合や分離(上位概念化)は勿論のこと、以上の実施例において示した更なる構成に基づく概念を、これら概念に付加してもよい。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成されている
ことを特徴とする遊技機である。
前記第二の終点アドレス値よりも大きく且つ前記第三の始点アドレス値よりも小さい一又は複数の前記アドレス値が存在し、当該一又は複数の前記アドレス値に対して、前記プログラム及び前記データのいずれともならない特殊情報が配置されている、本態様(1−1)の遊技機である。
前記特殊情報は、すべてのビットがゼロである、本態様(1−2)の遊技機である。
前記特殊情報は、予め定められたコード化手法により遊技機に関する情報がコード化されたビット列となる、本態様(1−2)の遊技機である。
前記第二制御領域にて配置されている全ての前記プログラムに係る総バイト数は、前記第一制御領域にて配置されている全ての前記プログラムに係る総バイト数よりも少なく、且つ、前記第二データ領域にて配置されている全ての前記データに係る総バイト数は、前記第一データ領域にて配置されている全ての前記データに係る総バイト数よりも少ない、本態様(1−1)の遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際には、前記第一データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第二データ領域にて配置されている前記データは読み出されないように構成されており、
前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際には、前記第二データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第一データ領域にて配置されている前記データは読み出されないよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第二制御領域にて配置されている前記プログラムは、前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合に前記CPUによる処理が実行可能となるよう構成されている、
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報(例えば、CPUC100内のレジスタで保持されている情報)を参照可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報(例えば、CPUC100内のレジスタで保持されている情報)を当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理で更新可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理結果を、当該呼び出し命令から復帰した後で前記第一制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際において参照可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、第1エラー(例えば、ステップ1208に示される、メダル払出装置Hが遊技メダルで満杯となった事象)を検出した場合に第1エラーに伴うエラー処理(例えば、ステップ1210に示される、メダル満杯エラー状態の制御処理)を実行可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、第2エラー(例えば、ステップ1044に示される、設定値に係るデータが正常範囲内でない事象)を検出した場合に第2エラーに伴うエラー処理(例えば、ステップ1048及びステップ1300に示される、復帰不可能エラー処理)を実行可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記RAMは、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出(例えば、チェックサムチェックを行う手法)と前記第二情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出(例えば、チェックサムチェックを行う手法)とを別々に行うよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記RAMは、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データと前記第二情報格納領域に記憶された処理結果データとを通算した誤り検出用情報に基づき誤り検出を行う(例えば、チェックサムチェックを行う手法)よう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、所定のセンサ部(例えば、第1投入センサD20sや第2投入センサD30s)からの入力信号に基づき、所定の事象(例えば、ステップ1227に示される、遊技メダルを1枚受け付けた事象)の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、前記所定のセンサ部からの入力信号に基づき、遊技進行に係る異常な事象(例えば、ステップ1400のサブルーチンに示される、投入メダル逆流エラーや投入メダル滞留エラー等)の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、遊技媒体の払出しを指示する制御信号(例えば、ホッパモータ駆動信号)と所定のセンサ部(例えば、第1払出センサH10sや第2払出センサH20s)の非検出時間とに基づき、遊技進行に係る異常な事象である第一異常事象(例えば、ステップ1279に示される、ホッパ駆動後において遊技メダル1枚の払出動作が行われていない事象)の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、前記所定のセンサ部の検出時間に基づき、遊技進行に係る異常な事象である第二異常事象(例えば、ステップ1450のサブルーチンに示される、払出メダル滞留エラー)の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)と、
所定の最小遊技時間が経過するまでは、前記スタートスイッチ(例えば、スタートレバーD50)が操作されても前記複数のリール(例えば、リールM50)の回転開始を待機させる遊技進行規制手段(例えば、CPUC100が実行するステップ3204の処理)と
を備え、
前記役抽選により決定された当選役に関する情報となる条件装置情報を、所定のRAM領域にて記憶するよう構成されており、
条件装置情報として、所定種類の当選役に関する第一の条件装置情報と、当該所定種類の当選役とは異なる特定種類の当選役に関する第二の条件装置情報とを有し、前記所定のRAM領域における第一の記憶領域にて第一の条件装置情報を記憶し、前記所定のRAM領域における第二の記憶領域にて第二の条件装置情報を記憶するよう構成されており、
第一の条件装置情報を第一の記憶領域にて記憶する際には、第一の記憶領域における第一のビット位置に1をセットして記憶する一方、
第二の条件装置情報を第二の記憶領域にて記憶する際には、第二の記憶領域における第二のビット位置に1をセットして記憶するよう構成されており、
所定の遊技終了後において前記スタートスイッチ(例えば、スタートレバーD50)が操作され前記役抽選が行われた場合、前記所定の最小遊技時間が経過した後に条件装置情報出力タイマ(例えば、出力時間タイマM80)に所定値をセットし、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が所定範囲内である場合には、条件装置情報として第一の記憶領域にて記憶されている第一の条件装置情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が前記所定範囲とは異なる特定範囲内である場合には、条件装置情報として第二の記憶領域にて記憶されている第二の条件装置情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0である場合には、当該値に基づく情報を遊技機外へ出力するよう構成されている
ことを特徴とする遊技機である。
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)と、
所定の最小遊技時間が経過するまでは、前記スタートスイッチ(例えば、スタートレバーD50)が操作されても前記複数のリール(例えば、リールM50)の回転開始を待機させる遊技進行規制手段(例えば、CPUC100が実行するステップ3204の処理)と
を備え、
前記役抽選により決定された当選役に関する情報となる条件装置情報を、所定のRAM領域にて記憶するよう構成されており、
条件装置情報として、所定種類の当選役に関する第一の条件装置情報と、当該所定種類の当選役とは異なる特定種類の当選役に関する第二の条件装置情報とを有し、前記所定のRAM領域における第一の記憶領域にて第一の条件装置情報を記憶し、前記所定のRAM領域における第二の記憶領域にて第二の条件装置情報を記憶するよう構成されており、
所定の遊技終了後において前記スタートスイッチ(例えば、スタートレバーD50)が操作され前記役抽選が行われた場合、前記所定の最小遊技時間が経過した後に条件装置情報出力タイマ(例えば、出力時間タイマM80)に所定値をセットし、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が所定範囲内である場合には、条件装置情報として第一の記憶領域にて記憶されている第一の条件装置情報を読み出し、当該読み出した第一の条件装置情報における第一のビット位置にて1をセットして遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が前記所定範囲とは異なる特定範囲内である場合には、条件装置情報として第二の記憶領域にて記憶されている第二の条件装置情報を読み出し、当該読み出した第二の条件装置情報における第二のビット位置にて1をセットして遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0である場合には、当該値に基づく情報を遊技機外へ出力するよう構成されている
ことを特徴とする遊技機である。
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と、
前記遊技の進行に応じた情報出力を制御する副遊技制御部(例えば、副制御基板S)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)と、
所定の最小遊技時間が経過するまでは、前記スタートスイッチ(例えば、スタートレバーD50)が操作されても前記複数のリール(例えば、リールM50)の回転開始を待機させる遊技進行規制手段(例えば、CPUC100が実行するステップ3204の処理)と、
副遊技制御部(例えば、副制御基板S)側での情報出力に際して必要な遊技情報を送信する遊技情報送信手段(例えば、CPUC100が実行するステップ3165の処理)と
を備え、
前記役抽選により決定された当選役に関する情報となる条件装置情報を、所定のRAM領域にて記憶するよう構成されており、
条件装置情報として、所定種類の当選役に関する第一の条件装置情報と、当該所定種類の当選役とは異なる特定種類の当選役に関する第二の条件装置情報とを有し、前記所定のRAM領域における第一の記憶領域にて第一の条件装置情報を記憶し、前記所定のRAM領域における第二の記憶領域にて第二の条件装置情報を記憶するよう構成されており、
第一の条件装置情報を第一の記憶領域にて記憶する際には、第一の記憶領域における第一のビット位置に1をセットして記憶する一方、
第二の条件装置情報を第二の記憶領域にて記憶する際には、第二の記憶領域における第二のビット位置に1をセットして記憶するよう構成されており、
所定の遊技終了後において前記スタートスイッチ(例えば、スタートレバーD50)が操作され前記役抽選が行われた場合、前記所定の最小遊技時間が経過した後に条件装置情報出力タイマ(例えば、出力時間タイマM80)に所定値をセットし、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が所定範囲内である場合には、条件装置情報として第一の記憶領域にて記憶されている第一の条件装置情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が前記所定範囲とは異なる特定範囲内である場合には、条件装置情報として第二の記憶領域にて記憶されている第二の条件装置情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0である場合には、当該値に基づく情報を遊技機外へ出力するよう構成されており、
前記所定のRAM領域にて一時記憶されている条件装置情報を遊技機外へ出力する以前のタイミングにて、前記所定のRAM領域とは異なる特定のRAM領域にて一時記憶されている、条件装置情報に基づいた前記遊技情報を副遊技制御部(例えば、副制御基板S)側へ送信するよう構成されている
ことを特徴とする遊技機である。
また、本態様に係る遊技機は、以下のように構成してもよく、
本態様(14)に係る遊技機は、
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と、
前記遊技の進行に応じた情報出力を制御する副遊技制御部(例えば、副制御基板S)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)と、
所定の最小遊技時間が経過するまでは、前記スタートスイッチ(例えば、スタートレバーD50)が操作されても前記複数のリール(例えば、リールM50)の回転開始を待機させる遊技進行規制手段(例えば、CPUC100が実行するステップ3204の処理)と、
副遊技制御部(例えば、副制御基板S)側での情報出力に際して必要な遊技情報を送信する遊技情報送信手段(例えば、CPUC100が実行するステップ3165の処理)と
を備え、
前記役抽選により決定された当選役に関する情報となる条件装置情報を、所定のRAM領域にて記憶するよう構成されており、
条件装置情報として、所定種類の当選役に関する第一の条件装置情報と、当該所定種類の当選役とは異なる特定種類の当選役に関する第二の条件装置情報とを有し、前記所定のRAM領域における第一の記憶領域にて第一の条件装置情報を記憶し、前記所定のRAM領域における第二の記憶領域にて第二の条件装置情報を記憶するよう構成されており、
所定の遊技終了後において前記スタートスイッチ(例えば、スタートレバーD50)が操作され前記役抽選が行われた場合、前記所定の最小遊技時間が経過した後に条件装置情報出力タイマ(例えば、出力時間タイマM80)に所定値をセットし、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が所定範囲内である場合には、条件装置情報として第一の記憶領域にて記憶されている第一の条件装置情報を読み出し、第一の条件装置情報における第一のビット位置に1をセットした情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0でなく且つ前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が前記所定範囲とは異なる特定範囲内である場合には、条件装置情報として第二の記憶領域にて記憶されている第二の条件装置情報を読み出し、第二の条件装置情報における第二のビット位置に1をセットした情報を遊技機外へ出力し、
前記条件装置情報出力タイマ(例えば、出力時間タイマM80)の値が0である場合には、当該値に基づく情報を遊技機外へ出力するよう構成されており、
前記第一の条件装置情報における前記第一のビット位置に1をセットした情報を遊技機外へ出力する前の所定のタイミングにて、第一の条件装置情報に基づいた前記遊技情報を副遊技制御部(例えば、副制御基板S)側へ送信するよう構成されており、
前記第二の条件装置情報における前記第二のビット位置に1をセットした情報を遊技機外へ出力する前の所定のタイミングにて、第二の条件装置情報に基づいた前記遊技情報を副遊技制御部(例えば、副制御基板S)側へ送信するよう構成されている
ことを特徴とする遊技機であってもよい。
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)
を備え、
前記役抽選により決定された当選役に関する情報を、所定のRAM領域に記憶するよう構成されており、
前記役抽選により決定された当選役が所定当選役であるときにおいて、第1の操作態様で前記ストップスイッチ(例えば、停止ボタンD40)が操作されたときには第一の図柄組合せが停止表示可能となり、第2の操作態様で前記ストップスイッチ(例えば、停止ボタンD40)が操作されたときには第一の図柄組合せとは異なる第二の図柄組合せが停止表示可能となり、
第一の図柄組合せが停止表示された場合と、第二の図柄組合せが停止表示された場合とでは、遊技者に付される利益が異なるように構成されており、
前記役抽選により決定された当選役が前記所定当選役である場合、前記ストップスイッチ(例えば、停止ボタンD40)の操作態様に関する情報である操作態様データを遊技機外へ出力可能であり、
操作態様データを遊技機外へ出力する場合、所定条件を充足している場合には、第一の操作態様データを出力し、当該所定条件を充足していない場合には、第一の操作態様データとは異なる第二の操作態様データを出力するよう構成されており、
操作態様データは、前記ストップスイッチ(例えば、停止ボタンD40)の種別に関するデータ及び前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させる際の停止タイミングに関するデータで構成されている
ことを特徴とする遊技機である。
複数種類の図柄を表示したリール(例えば、左リールM51、中リールM52、右リールM53)を複数有する複数のリール(例えば、リールM50)と、
前記複数のリール(例えば、リールM50)を回転させるときに遊技者が操作するスタートスイッチ(例えば、スタートレバーD50)と、
前記リール(例えば、左リールM51、中リールM52、右リールM53)と対応して設けられ前記リール(例えば、左リールM51、中リールM52、右リールM53)を停止させるときに遊技者が操作する複数のストップスイッチ(例えば、停止ボタンD40)と、
遊技の進行を制御する主遊技制御部(例えば、主制御基板M)と
を備えた遊技機であって、
主遊技制御部(例えば、主制御基板M)は、
前記スタートスイッチ(例えば、スタートレバーD50)が操作されたことに基づき役抽選を行う役抽選手段(例えば、CPUC100が実行するステップ1257の処理)
を備え、
前記役抽選により決定された当選役に関する情報を、所定のRAM領域にて記憶するよう構成されており、
前記役抽選により決定された当選役が所定当選役であるときにおいて、第1の操作順番で前記ストップスイッチ(例えば、停止ボタンD40)が操作されたときには第一の図柄組合せが停止表示可能となり、第2の操作順番で前記ストップスイッチ(例えば、停止ボタンD40)が操作されたときには第二の図柄組合せが停止表示可能となり、
第一の図柄組合せが停止表示された場合と、第二の図柄組合せが停止表示された場合とでは、遊技者に付される利益が異なるよう構成されており、
前記役抽選により決定された当選役が前記所定当選役である場合、前記ストップスイッチ(例えば、停止ボタンD40)の操作態様に関する情報である操作態様データを遊技機外へ出力可能であり、
操作態様データを遊技機外へ出力する場合、所定条件を充足している場合には、第一の操作態様データを出力し、当該所定条件を充足していない場合には、第一の操作態様データとは異なる第二の操作態様データを出力するよう構成されており、
操作態様データは、所定ビット数を単位データとする複数の単位データの集合体として形成され、当該複数の単位データにおける各単位データは、前記ストップスイッチの操作順番に関するデータが含まれる第1データ、又は、前記リールを停止させる際の停止タイミングに関するデータが含まれる第2データの何れかとなるよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
電源断からの復帰後において前記第一制御領域にて配置されている所定のプログラム処理によって、前記第一情報格納領域に記憶された処理結果データ、前記第二情報格納領域に記憶された処理結果データ、及び前記スタック領域に退避されたデータの誤り検出が行われるよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一情報格納領域には記憶され得る一方で前記第二情報格納領域には記憶されない処理結果データのうちの特定データ(例えば、設定値)は、前記第二制御領域にて配置されている所定のプログラムにより正常であるか否かが判定されるよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一情報格納領域に記憶された処理結果データは、前記第一制御領域にて配置されているプログラムによる処理によって、更新可能とし、
前記第二情報格納領域に記憶された処理結果データは、前記第一制御領域にて配置されているプログラムにより更新されないよう構成されており、
前記第二情報格納領域に記憶された処理結果データは、前記第二制御領域にて配置されているプログラムによる処理によって、更新可能とし、
前記第一情報格納領域に記憶された処理結果データは、前記第二制御領域にて配置されているプログラムにより更新されないよう構成されている
ことを特徴とする遊技機である。
或いは、
本態様に係る遊技機は、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
電源断からの復帰後において、前記第一情報格納領域に記憶された処理結果データは、前記第一制御領域にて配置されているプログラムによる処理によって、初期化可能とし、
電源断からの復帰後において、前記第二情報格納領域に記憶された処理結果データは、前記第一制御領域にて配置されているプログラムにより初期化されないよう構成されており、
電源断からの復帰後において、前記第二情報格納領域に記憶された処理結果データは、前記第二制御領域にて配置されているプログラムによる処理によって、初期化可能とし、
電源断からの復帰後において、前記第一情報格納領域に記憶された処理結果データは、前記第二制御領域にて配置されているプログラムにより初期化されないよう構成されており、
電源断からの復帰後において、前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データが初期化された後で、定期的に発生する割り込み制御を実行可能に設定するよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが記憶されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが記憶されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが記憶されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが記憶されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて記憶されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて記憶されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一制御領域に記憶されているプログラムにおける所定の呼び出し命令があった場合に前記第二制御領域に記憶されている所定のプログラムを呼び出し、
前記所定のプログラムに従い前記CPUが処理を実行する場合には、当該呼び出し命令の前にレジスタに記憶されているデータを、前記スタック領域へ退避するよう構成されている
ことを特徴とする遊技機である。
或いは、
本態様に係る遊技機は、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが記憶されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが記憶されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが記憶されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが記憶されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域に記憶されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域に記憶されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一制御領域に記憶されているプログラムにおける所定の呼び出し命令があった場合に前記第二制御領域に記憶されている所定のプログラムを呼び出し、
前記所定のプログラムに従い前記CPUが処理を実行する場合には、当該呼び出し命令の後にレジスタに記憶されているデータを、前記スタック領域へ退避するよう構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
所定のデータ(例えば、遊技状態情報、抽選役に係る情報)は、前記第一情報格納領域に記憶され、前記第二情報格納領域には記憶されず、
前記第二制御領域にて配置されている所定のプログラムに従う前記CPUによる処理によって、前記所定のデータに基づいて遊技機外へ特定情報を出力可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
所定のデータ(例えば、遊技状態情報、抽選役に係る情報)は、前記第一情報格納領域に記憶され、定期的に発生する割込み制御が行われた場合において、前記第一制御領域にて配置されている第一割込みプログラムから呼び出し命令があった場合に、前記第二制御領域にて配置されている第二割込みプログラム処理を実行し、当該第二割込み処理では前記所定のデータに基づいて特定情報を遊技機外へ出力可能に構成されている
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一制御領域にて配置されているプログラムにおける呼び出し命令があった場合に前記第二制御領域にて配置されている所定のプログラムを呼び出し、
前記所定のプログラムに従い処理を実行する場合には、当該呼び出し命令の前のスタック領域のチェックデータ(例えば、当該呼び出し命令の前のスタックポインタのアドレス値、或いは、当該呼び出し命令の前までにスタック領域へ退避されているデータのチェックサム値)を前記第一情報格納領域の所定アドレスに記憶し、
前記所定のプログラムによる処理を実行した後には、前記チェックデータに基づいて正常か否かを判定し、正常でないと判断した場合にはエラー処理を実行する
ことを特徴とする遊技機である。
或いは、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記第一制御領域にて配置されているプログラムにおける呼び出し命令があった場合に前記第二制御領域にて配置されている所定のプログラムを呼び出し、
前記所定のプログラムに従い処理を実行する場合には、当該呼び出し命令の前におけるスタックポインタのアドレス値を前記第一情報格納領域の所定アドレスに記憶し、
前記所定のプログラムによる処理を実行した後には、当該実行した後におけるスタックポインタのアドレス値と前記所定アドレスに記憶したアドレス値とに基づいて正常か否かを判定し、正常でないと判断した場合にはエラー処理を実行する
ことを特徴とする遊技機である。
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記スタック領域は、第一スタック領域と第二スタック領域とに分かれており、
前記第一制御領域にて配置されているプログラムに従って第一の処理を実行する特定のタイミングで、レジスタにて記憶されているデータを前記第一スタック領域へ退避する一方で、前記第二制御領域にて配置されているプログラムに従って第二の処理を実行する所定のタイミングで、レジスタにて記憶されているデータを前記第二スタック領域へ退避するよう構成されており、
前記第一制御領域にて配置されているプログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されているプログラムに従い前記CPUが処理を実行する際においては、前記スタック領域を管理するスタックポインタのアドレス値について、前記第一スタック領域を指し示すアドレス値から前記第二スタック領域を指し示すアドレス値へと変更するよう構成されている
ことを特徴とする遊技機である。
本態様(25)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例において)、
プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
を有し、
前記RAMは、
前記第一制御領域にて配置されているプログラムによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されているプログラムによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と、
レジスタに記憶されているデータを退避可能なスタック領域(例えば、スタックエリア)と
を有し、
前記スタック領域は、第一スタック領域と第二スタック領域とに分かれており、
前記第一制御領域にて配置されているプログラムに従って第一の処理を実行する特定のタイミングで、レジスタにて記憶されているデータを前記第一スタック領域へ退避する一方で、前記第二制御領域にて配置されているプログラムに従って第二の処理を実行する所定のタイミングで、レジスタにて記憶されているデータを前記第二スタック領域へ退避するよう構成されており、
前記第一制御領域にて配置されているプログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されているプログラムに従い前記CPUが処理を実行する際においては、前記スタック領域を管理するスタックポインタのアドレス値について前記第一スタック領域を指し示すアドレス値から前記第二スタック領域を指し示すアドレス値へと変更するよう構成されており、
前記スタックポインタのアドレス値について前記第一スタック領域を指し示すアドレス値から前記第二スタック領域を指し示すアドレス値へと変更する処理が終了するまでの期間は、定期的に発生する割り込み制御の実行タイミングに到達した場合であっても、当該割り込み制御の実行が禁止されるよう構成されている
ことを特徴とする遊技機である。
D 扉基板、D10s 投入受付センサ
D20s 第1投入センサ、D30s 第2投入センサ
D40 停止ボタン、D41 左停止ボタン
D42 中停止ボタン、D43 右停止ボタン
D50 スタートレバー、D60 精算ボタン
D70 表示パネル、D80 扉スイッチ
D90 コインシュータ、D100 ブロッカ
D130 上パネル、D140 下パネル
D150 装飾ランプユニット、D160 リール窓
D170 メダル投入口、D180 操作状態表示灯
D190 払出数表示装置、D200 クレジット数表示装置
D210 投入数表示灯、D220 ベットボタン
D230 メダル受け皿、D240 放出口
D250 特別遊技状態表示装置、D260 鍵穴
D270 押し順表示装置、D280 ARTカウンタ値表示装置
M 主制御基板、M10 設定扉スイッチ
M20 設定キースイッチ、M30 設定/リセットボタン
C 主制御チップ、M50 リール
M51 左リール、M52 中リール
M53 右リール、M60 ARTカウンタ
M70 遊技間隔最小タイマ、M80 出力時間タイマ
S 副制御基板、S10 LEDランプ
S20 スピーカ、S30 回胴バックライト
S40 演出表示装置、SC 副制御チップ
E 電源基板、E10 電源スイッチ
H メダル払出装置、H10s 第1払出センサ
H20s 第2払出センサ、H40 ホッパ
H50 ディスク、H50a ディスク回転軸
H60 遊技メダル出口、H70 放出付勢手段
H80 ホッパモータ
K 回胴基板、K10 回胴モータ
K20 回胴センサ
IN 中継基板
Claims (1)
- ROMと、RAMと、CPUとを備えた遊技機であって、
前記ROMには、前記CPUに対する命令を司るプログラムと、プログラムに従い読みだされるデータとが記憶され、
前記ROMは、
プログラムが記憶されている第一制御領域と、
データが記憶されている第一データ領域と、
プログラムが記憶されている第二制御領域と、
データが記憶されている第二データ領域と
を有し、
前記RAMは、
前記第一制御領域に記憶されているプログラムによる処理結果データを記憶する第一情報格納領域と、
前記第二制御領域に記憶されているプログラムによる処理結果データを記憶する第二情報格納領域と、
レジスタに記憶されているデータを退避可能なスタック領域と
を有し、
前記スタック領域は、第一スタック領域と第二スタック領域とに分かれており、
前記第一制御領域に記憶されているプログラムに従って第一の処理を実行する特定のタイミングで、レジスタに記憶されているデータを前記第一スタック領域へ退避し、前記第二制御領域に記憶されているプログラムに従って第二の処理を実行する所定のタイミングで、レジスタに記憶されているデータを前記第二スタック領域へ退避するよう構成されており、
前記第一制御領域に記憶されているプログラムにおける呼び出し命令があった場合であって、前記第二制御領域に記憶されているプログラムに従い所定の処理を実行するときには、スタックポインタのアドレス値を、前記第一スタック領域におけるアドレス値から前記第二スタック領域におけるアドレス値へと変更するよう構成されており、
前記スタックポインタのアドレス値を、前記第一スタック領域におけるアドレス値から前記第二スタック領域におけるアドレス値へと変更する処理が終了するまでの期間は、定期的に発生する割り込み制御の実行タイミングに到達した場合であっても、当該割り込み制御の実行が禁止されるよう構成されている
ことを特徴とする遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015092421A JP6376034B2 (ja) | 2015-04-28 | 2015-04-28 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015092421A JP6376034B2 (ja) | 2015-04-28 | 2015-04-28 | 遊技機 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016209043A true JP2016209043A (ja) | 2016-12-15 |
JP2016209043A5 JP2016209043A5 (ja) | 2018-04-05 |
JP6376034B2 JP6376034B2 (ja) | 2018-08-22 |
Family
ID=57550316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015092421A Active JP6376034B2 (ja) | 2015-04-28 | 2015-04-28 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6376034B2 (ja) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017000595A (ja) * | 2015-06-15 | 2017-01-05 | 株式会社三洋物産 | 遊技機 |
JP2017006495A (ja) * | 2015-06-24 | 2017-01-12 | 株式会社大一商会 | 遊技機 |
JP2017006494A (ja) * | 2015-06-24 | 2017-01-12 | 株式会社大一商会 | 遊技機 |
JP2018103000A (ja) * | 2018-04-04 | 2018-07-05 | 株式会社三洋物産 | 遊技機 |
JP2019017940A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2021035631A (ja) * | 2020-12-02 | 2021-03-04 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2021073056A (ja) * | 2021-02-17 | 2021-05-13 | 株式会社三洋物産 | 遊技機 |
JP2021121265A (ja) * | 2020-01-31 | 2021-08-26 | 株式会社三共 | スロットマシン |
JP2021121264A (ja) * | 2020-01-31 | 2021-08-26 | 株式会社三共 | スロットマシン |
JP2021126199A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126201A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126202A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126198A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126200A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126197A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021137620A (ja) * | 2017-06-28 | 2021-09-16 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2022132628A (ja) * | 2021-01-08 | 2022-09-08 | 株式会社三洋物産 | 遊技機 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002000878A (ja) * | 2000-06-21 | 2002-01-08 | Daiman:Kk | 遊技機 |
JP2005237737A (ja) * | 2004-02-27 | 2005-09-08 | Sanyo Product Co Ltd | 遊技機 |
JP2008018078A (ja) * | 2006-07-13 | 2008-01-31 | Samii Kk | 遊技機 |
JP2009136408A (ja) * | 2007-12-05 | 2009-06-25 | Daito Giken:Kk | 遊技台 |
-
2015
- 2015-04-28 JP JP2015092421A patent/JP6376034B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002000878A (ja) * | 2000-06-21 | 2002-01-08 | Daiman:Kk | 遊技機 |
JP2005237737A (ja) * | 2004-02-27 | 2005-09-08 | Sanyo Product Co Ltd | 遊技機 |
JP2008018078A (ja) * | 2006-07-13 | 2008-01-31 | Samii Kk | 遊技機 |
JP2009136408A (ja) * | 2007-12-05 | 2009-06-25 | Daito Giken:Kk | 遊技台 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017000595A (ja) * | 2015-06-15 | 2017-01-05 | 株式会社三洋物産 | 遊技機 |
JP2017006495A (ja) * | 2015-06-24 | 2017-01-12 | 株式会社大一商会 | 遊技機 |
JP2017006494A (ja) * | 2015-06-24 | 2017-01-12 | 株式会社大一商会 | 遊技機 |
JP7341517B2 (ja) | 2017-06-28 | 2023-09-11 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2021137620A (ja) * | 2017-06-28 | 2021-09-16 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2019017940A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2021106974A (ja) * | 2017-07-21 | 2021-07-29 | 株式会社三洋物産 | 遊技機 |
JP7151820B2 (ja) | 2017-07-21 | 2022-10-12 | 株式会社三洋物産 | 遊技機 |
JP2018103000A (ja) * | 2018-04-04 | 2018-07-05 | 株式会社三洋物産 | 遊技機 |
JP7368255B2 (ja) | 2020-01-31 | 2023-10-24 | 株式会社三共 | スロットマシン |
JP2021121264A (ja) * | 2020-01-31 | 2021-08-26 | 株式会社三共 | スロットマシン |
JP2021121265A (ja) * | 2020-01-31 | 2021-08-26 | 株式会社三共 | スロットマシン |
JP7368254B2 (ja) | 2020-01-31 | 2023-10-24 | 株式会社三共 | スロットマシン |
JP2021126200A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP7374803B2 (ja) | 2020-02-12 | 2023-11-07 | 株式会社三共 | スロットマシン |
JP2021126197A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126202A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126198A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP7409894B2 (ja) | 2020-02-12 | 2024-01-09 | 株式会社三共 | スロットマシン |
JP2021126201A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP2021126199A (ja) * | 2020-02-12 | 2021-09-02 | 株式会社三共 | スロットマシン |
JP7366788B2 (ja) | 2020-02-12 | 2023-10-23 | 株式会社三共 | スロットマシン |
JP7374804B2 (ja) | 2020-02-12 | 2023-11-07 | 株式会社三共 | スロットマシン |
JP7374801B2 (ja) | 2020-02-12 | 2023-11-07 | 株式会社三共 | スロットマシン |
JP7374802B2 (ja) | 2020-02-12 | 2023-11-07 | 株式会社三共 | スロットマシン |
JP7015368B2 (ja) | 2020-12-02 | 2022-02-02 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2021035631A (ja) * | 2020-12-02 | 2021-03-04 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP2022132628A (ja) * | 2021-01-08 | 2022-09-08 | 株式会社三洋物産 | 遊技機 |
JP2021073056A (ja) * | 2021-02-17 | 2021-05-13 | 株式会社三洋物産 | 遊技機 |
Also Published As
Publication number | Publication date |
---|---|
JP6376034B2 (ja) | 2018-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6376034B2 (ja) | 遊技機 | |
JP6197826B2 (ja) | 遊技機 | |
JP6432310B2 (ja) | 遊技機 | |
JP6572611B2 (ja) | 遊技機 | |
JP6398775B2 (ja) | 遊技機 | |
JP6547325B2 (ja) | 遊技機 | |
JP6578653B2 (ja) | 遊技機 | |
JP6659939B2 (ja) | 遊技機 | |
JP6387808B2 (ja) | 遊技機 | |
JP6572613B2 (ja) | 遊技機 | |
JP6604027B2 (ja) | 遊技機 | |
JP6398776B2 (ja) | 遊技機 | |
JP6376033B2 (ja) | 遊技機 | |
JP6578652B2 (ja) | 遊技機 | |
JP6592889B2 (ja) | 遊技機 | |
JP6572614B2 (ja) | 遊技機 | |
JP6572612B2 (ja) | 遊技機 | |
JP6604028B2 (ja) | 遊技機 | |
JP6659940B2 (ja) | 遊技機 | |
JP6582399B2 (ja) | 遊技機 | |
JP6592888B2 (ja) | 遊技機 | |
JP6503705B2 (ja) | 遊技機 | |
JP6503706B2 (ja) | 遊技機 | |
JP6507593B2 (ja) | 遊技機 | |
JP6503704B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180223 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180301 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20180302 |
|
TRDD | Decision of grant or rejection written | ||
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20180613 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180622 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180709 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6376034 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |