(57)【特許請求の範囲】
【請求項１】
不揮発性データが記憶されたＲＯＭと、
該ＲＯＭに記憶されたプログラムに基づく演算処理を実行するＣＰＵと、
該ＣＰＵが演算処理を実行する際に必要な作業領域として機能し、揮発性データが記憶されるＲＡＭと、
を備えた遊技機において、
前記プログラムは、メインルーチンを含む遊技制御プログラムと、前記遊技制御プログラムから呼び出される複数のサブルーチンを含む遊技制御に直接関連のない補助プログラムとから構成され、
前記ＲＯＭには、前記遊技制御プログラムを構成するコードデータと当該遊技制御プログラムから参照するデータとを記憶する第１ＲＯＭ領域と、前記補助プログラムを構成するコードデータと当該補助プログラムから参照するデータとを記憶する第２ＲＯＭ領域とが、それぞれ個別に設けられ、
前記ＲＡＭには、前記ＣＰＵによって前記遊技制御プログラムに基づき実行される演算処理に用いるデータを記憶する第１ＲＡＭ領域と、前記ＣＰＵによって前記補助プログラムに基づき実行される演算処理に用いるデータを記憶する第２ＲＡＭ領域とが、それぞれ個別に設けられるとともに、前記第１ＲＡＭ領域及び第２ＲＡＭ領域はそれぞれ、スタック領域を含み、
前記遊技制御プログラムには、前記第２ＲＡＭ領域に記憶されたデータを更新する処理を含まず、且つ、前記補助プログラムには、前記第１ＲＡＭ領域に記憶されたデータを更新する処理を含まず、
前記遊技制御プログラムから呼び出される、前記補助プログラムに含まれるサブルーチンでは、
前記遊技制御プログラムから呼び出された際に、ＬＤ命令によって現在のスタックポインタを第２ＲＡＭ領域内の所定アドレスに退避する第１処理、ＬＤ命令によって第２ＲＡＭ領域内のスタック領域の先頭アドレスをスタックポインタに設定する第２処理、及び前記遊技制御プログラムで使用する全レジスタの値を前記第２ＲＡＭ領域内のスタック領域に退避するレジスタ退避処理をこの順に実行するとともに、
呼び出し元の前記遊技制御プログラムにリターンする際に、前記レジスタ退避処理にて退避した全レジスタの値を前記第２ＲＡＭ領域内のスタック領域から復帰するレジスタ復帰処理の実行後、ＬＤ命令によって前記第２処理にて前記所定アドレスに退避した値をスタックポインタに復帰させる第３処理を実行し、
前記全レジスタには、ＬＤ命令の実行結果がゼロである場合にも１がセットされる特定フラグを含むフラグレジスタを含み、
前記遊技制御プログラムでは前記フラグレジスタに対応する補助レジスタを使用せず、
前記遊技制御プログラムから呼び出される、前記補助プログラムに含まれるサブルーチンでは、
前記第１処理の実行前、及び前記第２処理の実行後にそれぞれ、前記フラグレジスタの値と、該フラグレジスタに対応する補助レジスタの値とを交換するＥＸ命令を実行した後、前記レジスタ退避処理を実行するとともに、
前記レジスタ復帰処理の実行後で且つ前記第３処理の実行前、及び前記第３処理の実行後にそれぞれ、前記フラグレジスタの値と、該フラグレジスタに対応する補助レジスタの値とを交換するＥＸ命令を実行する、
ことを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スロットマシンやパチンコ機などの遊技機に関する。
【背景技術】
【０００２】
遊技機は、検査機関での検査に適合しないと、パチンコホールに設置することができない。
検査機関での検査の効率化のため、遊技機の制御に係る主制御プログラムは、Ｚ８０ベースのアセンブラ言語での記述が義務付けられており、プログラム領域、並びにデータ領域の容量にも一定の制限が課されている。
従来から、遊技機に対する新たなゴト行為が発覚するたびに、主制御プログラムに対策が講じられており(例えば、特許文献１参照)、対策プログラムの容量増大によって、上記一定の容量制限下では、新たなゴト行為に対する対策プログラムの実装が困難となってきている。例えば、特許文献２に記載の如く、データ領域のみならず、プログラム領域の容量削減策も講じられてきたが、容量不足は深刻で、もはや限界に達しつつある。
【０００３】
そこで、上記のゴト対策プログラムや、上記検査機関での検査のための信号出力プログラム等、遊技制御に直接関係のないプログラム(以下、補助プログラムという)に限って、上記一定の制限の領域外に記憶することが検討されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４５４８８５６号公報
【特許文献２】特許第４５３７４６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、単に、一定の制限の領域内に相当する第１の領域に遊技制御を司る遊技制御プログラム、前記第１の領域外である第２の領域に前記補助プログラムを記憶しただけでは、プログラム容量の拡大に他ならず、検査機関での検査負担の増大、並びに検査期間の長期化を招く虞がある。
検査機関での検査の主体は、遊技制御プログラムであるため、補助プログラムの検査にかかる負担及び時間ができるだけ軽微となるように構成するのが望ましい。
そこで、本発明の目的は、一定の容量制限が課された遊技制御プログラムを第１の領域、その他の補助プログラムを第２の領域に配置したとしても、検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る遊技機を提供することである。
【課題を解決するための手段】
【０００６】
本発明の遊技機は、不揮発性データが記憶されたＲＯＭ１０４と、該ＲＯＭ１０４に記憶されたプログラムに基づく演算処理を実行するＣＰＵ１０１と、該ＣＰＵ１０１が演算処理を実行する際に必要な作業領域として機能し、揮発性データが記憶されるＲＡＭ１０５と、を備えている。
前記プログラムは、メインルーチンを含む遊技制御プログラムと、前記遊技制御プログラムから呼び出される複数のサブルーチンを含む遊技制御に直接関連のない補助プログラムとから構成され、前記ＲＯＭ１０４には、前記遊技制御プログラムを構成するコードデータと当該遊技制御プログラムから参照するデータとを記憶する第１ＲＯＭ領域(第１プログラム領域ＰＧ１＿ＡＲＥＡ及び第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡ)と、前記補助プログラムを構成するコードデータと当該補助プログラムから参照するデータとを記憶する第２ＲＯＭ領域(第２プログラム領域ＰＧ２＿ＡＲＥＡ及び第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡ)とが、それぞれ個別に設けられている。
また、前記プログラムは、前記遊技制御プログラムから前記補助プログラムに含まれる１のサブルーチンを呼び出す際に、前記遊技制御プログラムで使用する全レジスタの値を前記ＲＡＭのスタック領域に退避するレジスタ退避処理(図６のＳＴ６０１、図７のＳＴ７０１〜７０５)と、前記１のサブルーチンから呼び出し元の前記遊技制御プログラムにリターンする際に、前記レジスタ退避処理にて退避した全レジスタの値を前記ＲＡＭのスタック領域から復帰するレジスタ復帰処理(図６のＳＴ６０３、図７のＳＴ７０６〜７０９)とを含む、ことを特徴としている。
【０００７】
上記本発明の遊技機によれば、プログラムに、遊技制御プログラムから補助プログラムに含まれる１のサブルーチンを呼び出す際に、遊技制御プログラムで使用する全レジスタの値を前記ＲＡＭのスタック領域に退避するレジスタ退避処理と、前記１のサブルーチンから呼び出し元の遊技制御プログラムにリターンする際に、前記レジスタ退避処理にて退避した全レジスタの値を前記ＲＡＭのスタック領域から復帰するレジスタ復帰処理を含むため、補助プログラム側のサブルーチンの処理によってレジスタの値が変化したとしても、当該サブルーチンからのリターンの際に、当該サブルーチン呼び出し前の値に復帰することになる。このため、サブルーチン側でのレジスタ値の変化を考慮することなく、遊技機制御プログラムの検査が可能となるので、検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【０００８】
具体的構成として、前記補助プログラムに含まれる複数のサブルーチンのうち、前記遊技制御プログラムから呼び出される各サブルーチンに、前記レジスタ退避処理並びに前記レジスタ復帰処理を含む(図７参照)。
【０００９】
該具体的構成によれば、前記レジスタ退避処理並びに前記レジスタ復帰処理を遊技制御プログラム側で実行する構成に比べて、容量制限が課されている遊技制御プログラム側の容量増加を抑制することが出来る。
【００１０】
また、具体的構成として、前記ＲＡＭ１０５には、前記ＣＰＵ１０１によって前記遊技制御プログラムに基づき実行される演算処理に用いるデータを記憶する第１ＲＡＭ領域(第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡ)と、前記ＣＰＵによって前記補助プログラムに基づき実行される演算処理に用いるデータを記憶する第２ＲＡＭ領域(第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ)とが、それぞれ個別に設けられ、前記遊技制御プログラムには、前記第２ＲＡＭ領域(第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ)に記憶されたデータを更新する処理を含まず、且つ、前記補助プログラムには、前記第１ＲＡＭ領域(第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡ)に記憶されたデータを更新する処理を含まない。
【００１１】
該具体的構成によれば、第１ＲＡＭ領域への更新は遊技制御プログラムのみ、第２ＲＡＭ領域への更新は補助プログラムのみに制限されるため、遊技制御プログラム側の検査時には第１ＲＡＭ領域、補助プログラム側の検査時には第２ＲＡＭ領域のみ検査すればよいので、さらに検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【００１２】
さらに具体的構成において、前記第１ＲＡＭ領域及び第２ＲＡＭ領域はそれぞれ、スタック領域(第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡ及び第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡ)を含み、前記レジスタ退避処理には、現在のスタックポインタＳＰを第２ＲＡＭ領域内の所定アドレスに退避する第１処理と、第２ＲＡＭ領域内のスタック領域の先頭アドレスをスタックポインタに設定する第２処理とを含み、前記レジスタ復帰処理には、前記第２処理にて前記所定アドレスに退避した値をスタックポインタに復帰させる第３処理を含む。
【００１３】
該具体的構成によれば、スタック領域についても、遊技制御プログラム及び補助プログラムそれぞれ専用のスタック領域を用いることになる。従って、遊技制御プログラム側の検査時には第１ＲＡＭ領域のスタック領域のみ、補助プログラム側の検査時には第２ＲＡＭ領域のスタック領域のみ検査すればよいので、さらに検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【発明の効果】
【００１４】
本発明の遊技機によれば、一定の容量制限が課された遊技制御プログラムを第１の領域、その他の補助プログラムを第２の領域に配置したとしても、検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る遊技機を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】スロットマシン１の概観を示す斜視図である。
【図２】スロットマシン１の電気的構成を示すブロック図である。
【図３】スロットマシン１のＣＰＵ１０１のレジスタ構成を示す図である。
【図４】スロットマシン１のＲＯＭ１０４のメモリマップを示す図である。
【図５】スロットマシン１のＲＡＭ１０６のメモリマップを示す図である。
【図６】第１実施例における、遊技制御プログラムコードの一例を示す図である。
【図７】第２実施例における、補助プログラムに含まれるサブルーチンコードの一例を示す図である。
【発明を実施するための形態】
【００１６】
以下に、本発明の実施形態をスロットマシンを例に説明する。
【００１７】
＜１．遊技機の外観構成＞
図１は、本発明の実施形態に係るスロットマシン１の概観を示す斜視図である。スロットマシン１は、前面が開口した箱状の本体２と本体２の前面に配置した前面扉３から構成されている。本体２と前面扉３とは片側で蝶番により開閉できるようになっている。前面扉３は、遊技者が遊技を行うためのボタン類を配置した操作部ＯＰ、可変表示装置ＲＬが備える各リールＲ１〜Ｒ３の図柄を視認するリール窓２０、遊技の進行に係る情報を表示するための表示器類を配置したパネル表示部ＤＰ、遊技の進行に係る情報を表示するための液晶表示器類や電飾装置を配置した演出表示部ＴＰ及び受皿部ＢＰから構成されている。
【００１８】
操作部ＯＰには、操作部ＯＰの上面右側にメダル投入口１０を配置し、上面左側にベットボタン１１が配置されている。メダル投入口１０へのメダルの投入、またはベットボタン１１を操作することにより、スロットマシン１に対してベットすることができる。ベットボタン１１の下部位置の前面側には、ゲームの開始を指示するためのスタートレバー１２を配置し、その右側には左リールＲ１の回転動作の停止を指示するための左ストップボタン１３ａ、中リールＲ２の回転動作の停止を指示するための中ストップボタン１３ｂ及び右リールＲ３の回転動作の停止を指示するための右ストップボタン１３ｃを配置し、遊技を進行させるための基本操作順序となる、ベットボタン１１→スタートレバー１２→左ストップボタン１３ａ→中ストップボタン１３ｂ→右ストップボタン１３ｃという、一連の流れの操作を行い易いようになっている。
【００１９】
スタートレバー１２の左側には、クレジットを精算してメダル受皿４０にメダルを払い出す精算ボタン１４を配置する。この精算ボタン１４は遊技をやめる場合に使用し、操作の頻度が低いことや遊技中に誤って操作しないよう、上記一連の操作の流れから外れる位置に配置してある。
【００２０】
さらに操作部ＯＰには、メダル貸機がスロットマシン１に接続されている場合に使用する貸出ボタン１５、メダル貸機に挿入されたプリペイカードや現金を返却する返却ボタン１６及びメダル貸機の貸出可能な度数表示が行われる度数表示器１７が設けてある。なお、このように、スロットマシン１にメダル貸機が接続されている場合には、スロットマシン１のこれらの貸出ボタン１５、返却ボタン１６の操作によるメダル貸機の作動及び度数表示器１７による度数表示は、メダル貸機の制御によって行われる。
【００２１】
パネル表示部ＤＰには、１つのリールにつき３個の連続した図柄が目視でき、３つのリールで９個分の図柄をのぞむ透明アクリル板からなるリール窓２０が設けられている。リール窓２０の左側には、入賞ラインＬ１に対応した入賞ライン表示器２１を設け、メダルを３枚投入すると入賞ラインＬ１に対応した入賞ライン表示器２１が点灯するようになっている。
【００２２】
また、全リールＲ１〜Ｒ３の回転動作を停止させた結果、入賞ラインＬ１上に役に係る図柄組合せが停止表示した場合には役の入賞となり、入賞ラインＬ１に対応した入賞ライン表示器２１が点滅表示して遊技者に知らせるようになっている。また、リール窓２０の右側には、役が入賞した場合に点灯する表示器や、遊技状態に応じて点灯するＬＥＤなどが配置された遊技ガイド表示器２２が設けられている。さらにリール窓２０の下側には、クレジット数を表示するクレジット数表示器２３ａ、特定の遊技状態におけるメダルの獲得枚数を表示する獲得枚数表示器２３ｂ、及び役が入賞した場合に付与されたメダル数を表示する配当数表示器２３ｃから構成される遊技価値情報表示部２３を有している。
【００２３】
演出表示部ＴＰには、遊技の進行状況を画像で表示する液晶表示装置３０、遊技の進行状況に応じて色彩や点灯パターンを変化させて表示させる電飾ＬＥＤ３１及び遊技の進行状況に応じて変化させるＢＧＭやボタン操作に応じた操作音、ガイド音声を出力するスピーカ３２が配置されている。
【００２４】
受皿部ＢＰには、メダル払出装置が駆動されてメダル払出口４０aから排出されたメダルを貯めるメダル受皿４０を設け、メダル受皿４０の左側には灰皿を設けてある。
【００２５】
＜２．スロットマシンの電気的構成＞
図２は、スロットマシン１の電気的構成を示すブロック図である。スロットマシン１は、遊技の主たる制御を行うメイン制御基板１００Ａ、液晶表示装置３０に対して表示制御を行い画像表示する表示制御基板１００Ｂ、パネル表示部ＤＰ又は演出表示部ＴＰのＬＥＤ類や音の演出の制御を行う電飾制御基板１００Ｃを備えている。
【００２６】
（１）メイン制御基板
メイン制御基板１００Ａは、ＣＰＵ（central processing unit）１０１、クロック発生回路ａ１０２、クロック発生回路ｂ１０３、ＲＯＭ（read-only memory）１０４、ＲＡＭ（random-access memory）１０５、データ送出回路１０６、入出力ポート１０７から構成されている。なお、ＣＰＵ１０１としてＲＯＭやＲＡＭを内蔵しているものを採用することができる。その場合には、外付けのＲＯＭ１０４、ＲＡＭ１０５を備えなくてもよい。
【００２７】
ＣＰＵ１０１は、ＲＯＭ１０４に格納されたプログラムを、クロック発生回路ａ１０２で発生したＣＬＫ信号のタイミングに基づいて読み出し、プログラムを逐次実行する。ＣＰＵ１０１は、電源が投入されるとあらかじめ定められたアドレスからメインプログラムを実行し、クロック発生回路ａ１０２の周期とは異なるクロック発生回路ｂ１０３で発生されられたＩＮＴＲ信号のタイミングで、あらかじめ定められたアドレスから始まる割込みプログラムを実行する。ここで、ＩＮＴＲ信号のタイミングは、例えば、２ミリ秒である。
【００２８】
ＣＰＵ１０１は、プログラムの実行に応じて各種フラグや各種カウンタなどの各種の遊技情報をＲＡＭ１０５に保存する。外部から供給される電源が遮断した場合でも、ＲＡＭ１０５は電池により記憶情報が保持されており、その後電源が復帰した場合には、電源断発生の直前の状態から再開する。ＣＰＵ１０１は、入出力ポート１０７を介して各種ボタン、センサの状態を読み取り、各種モータ、ＬＥＤ等を駆動する。
【００２９】
ベット操作指示信号１１１ａ〜１１１ｃ、開始操作指示信号１１２、停止操作指示信号１１３ａ〜１１３ｃ及び精算操作指示信号１１４は、それぞれ操作部ＯＰに設けられたベットボタン１１、スタートレバー１２、ストップボタン１３ａ〜１３ｃ、精算ボタン１４ボタンが遊技者に操作されたことに応じて出力される信号であり、入出力ポート１０７を介してＣＰＵ１０１に入力される。
【００３０】
表示制御信号１２３ａ〜１２３ｃは、それぞれパネル表示部ＤＰに設けられたクレジット数表示器２３ａ、獲得枚数表示器２３ｂ、配当数表示器２３ｃに表示するための表示信号であり、入出力ポート１０７を介してＣＰＵ１０１より駆動される。
【００３１】
リール位置検出信号１５５ａ〜１５５ｃのそれぞれは、可変表示装置ＲＬのそれぞれのリールに対応し、リールが１回転するたびに１回検出する信号であり入出力ポート１０７を介してＣＰＵ１０１に入力される。リール駆動信号１５４ａ〜１５４ｃのそれぞれは、リール可変表示装置ＲＬのそれぞれのリールＲ１〜Ｒ３を駆動するステッピングモータを駆動する信号であり、入出力ポート１０７を介してＣＰＵ１０１より駆動される。
【００３２】
メダル投入信号１６０は、メダル投入口１０から通ずる前面扉３の内部に設けられたメダル検出装置に設けられたメダル投入センサが、投入されたメダルを検出した場合に出力される信号であり、入出力ポート１０７を介してＣＰＵ１０１に入力される。また、メダルブロック信号１６１はメダル検出装置に設けられたソレノイドを駆動する信号であり入出力ポート１０７を介してＣＰＵ１０１より駆動される。メダル払出信号１６２は、メダル払出装置のメダル放出部に設けられたメダル払出センサが、メダル払出装置により払い出されたメダルを検出した場合に出力される信号であり、入出力ポート１０７を介してＣＰＵ１０１に入力される。また、払出駆動信号１６３はメダル払出装置に設けられたモータを駆動する信号であり、入出力ポート１０７を介してＣＰＵ１０１より駆動される。
【００３３】
ＣＰＵ１０１は、データ送出回路１０６を介して表示制御基板１００Ｂ及び電飾制御基板１００Ｃへ各種コマンドを出力する。電飾制御基板１００Ｃは、メイン制御基板１００Ａより各種コマンドを受信し、入賞ライン表示器２１、遊技ガイド表示器２２、電飾ＬＥＤ３１による電飾装置の点灯制御、可変表示装置ＲＬに設けられたバックライト装置５３ａ〜５３ｃの点灯制御及びＢＧＭなどのサウンドをスピーカ３２から出力する。
【００３４】
（２）表示制御基板
表示制御基板１００Ｂは、ＣＰＵ（central processing unit）１９１、クロック発生回路ｃ１９２、クロック発生回路ｄ１９３、ＲＯＭ（read-only memory）１９４、ＲＡＭ（random-access memory）１９５、データ入力回路１９６及びグラフィックＬＳＩとその周辺回路からなる表示回路１９７を備えている。
【００３５】
このＣＰＵ１９１は、ＲＯＭ１９４に格納されたプログラムを、クロック発生回路ｃ１９２で発生したＣＬＫ信号のタイミングに基づいて読み出し、プログラムを逐次実行する。ＣＰＵ１９１は、電源が投入されるとあらかじめ定められたアドレスからメインプログラムを実行し、クロック発生回路ｃ１９２の周期とは異なるクロック発生回路ｂ１９３で発生されられたＩＮＴＲ１信号のタイミングで、あらかじめ定められたアドレスから始まる割込みプログラムを実行する。ここで、ＩＮＴＲ１信号のタイミングは、例えば、２ミリ秒とする。
【００３６】
ＣＰＵ１９１は、プログラムの実行に応じて各種フラグや各種カウンタなどの各種の遊技情報をＲＡＭ１９５に保存する。また、メイン制御基板１００Ａのデータ送出回路からのデータ送出タイミングに同期して送出されるストローブ信号に基づいてＩＮＴＲ２信号を発生させ、このＩＮＴＲ２信号のタイミングで、あらかじめ定められたアドレスから始まる割込みプログラムを実行する。
【００３７】
＜３．メイン制御基板１００ＡのＣＰＵ１０１のレジスタ構成＞
図３は、Ｚ８０準拠のＣＰＵ１０１のレジスタの構成を示しており、図３(ａ)に汎用レジスタの構成、図３(ｂ)に専用レジスタの構成を示している。
図３(ａ)に示す如く、汎用レジスタは、主レジスタセットと、補助レジスタセットとから構成される。主レジスタセットは、命令による直接操作が可能であるが、補助レジスタセットは命令による直接操作が出来ない。ただ、主レジスタセットと、これに対応する補助レジスタセットとのレジスタペア間(例えば、ＡＦレジスタとＡＦ’レジスタ)の内容の交換は、命令により可能となっている。
従い、通常使用するのは主レジスタセットであるため、以下、主レジスタセットの各レジスタの機能について説明する。
【００３８】
Ａ、Ｆ、Ｂ、Ｃ、Ｄ、Ｅ、Ｈ、Ｌの各レジスタは、単独で８ビットのレジスタであり、ＢＣ、ＤＥ、ＨＬを対にして、１６ビットのレジスタペアとして使用することも出来る。
Ａレジスタはアキュムレータで、Ａレジスタには、演算されるデータや演算後の結果等が保持されるとともに、アドレス操作等の各種の操作にもＡレジスタを用いることが多い。従って、Ａレジスタは、汎用レジスタ群の中でも別格であり、最も使用頻度の高い重要なレジスタである。
【００３９】
Ｆレジスタはフラグレジスタで、命令を実行した結果、特定の事象が生じた(例えば、足し算の結果、桁上げが生じたとき等)場合に、生じた事象に応じた特定のビットに１がセットされる(フラグがセットされる)。Ｆレジスタは、不使用の１ビットを除く７ビットがそれぞれ、特定の事象が生じた際に１がセットされるフラグとして機能するため、フラグレジスタと呼ばれている。
【００４０】
Ｆレジスタのビット構成を図３(ｃ)に示す。最下位ビットのビット０は、キャリフラグＣＹ、ビット１は加／減算フラグＮ、ビット２はパリティ／オーバーフローフラグＰ／Ｖ、ビット３は不使用フラグＸ、ビット４はハーフキャリフラグＨ、ビット５は第２ゼロフラグＴＺ、ビット６はゼロフラグＺ、最上位ビットのビット７はサインフラグＳとなっている。
【００４１】
キャリフラグＣＹには、Ａレジスタ等への加算命令で最上位ビットからの桁上がりが発生した場合や、減算命令でボローが発生した場合に、１がセットされる。
ゼロフラグＺ及び第２ゼロフラグＴＺには、命令の実行結果がゼロである場合に、１がセットされる。但し、ゼロフラグＺは、基本的にＬＤ命令で変化することはないが、第２ゼロフラグＴＺは、ゼロフラグＺが変化しないＬＤ命令でも、実行結果がゼロである場合には、１がセットされる。
サインフラグＳには、ある命令を実行した結果、Ａレジスタ等が負であれば１、正であれば０がセットされる。
パリティ／オーバーフローフラグＰ／Ｖは、パリティ、即ち１バイト中の値が１のビットの数を調べる目的と、オーバーフローを調べる目的とに兼用される。
加／減算フラグＮには、加算命令で０、減算命令で１がセットされる。
ハーフキャリフラグＨには、８ビットの算術演算でビット３とビット４の間にキャリまたはボローがあれば１、なければ０がセットされる。
【００４２】
次に、図３(ｂ)に示す専用レジスタ群の各レジスタの機能について説明する。
スタックポインタＳＰは、現在、命令やデータをどこまでスタックに入れたかを保持する１６ビットのレジスタで、スタック領域を指示するのに用いる。
インデックスレジスタＩＸ及びＩＹは、それぞれ１６ビットのレジスタで、インデックスアドレシングで用いられ、この内容で示す値がメモリの基準アドレスとなる。
【００４３】
プログラムカウンタＰＣは、ＣＰＵ１０１が次に実行しようとしている命令が格納されているメモリの番地を常時保持する１６ビットのレジスタである。
ある命令を実行しようとすると、プログラムカウンタＰＣの内容がアドレスバスに送り出され、その内容で示されたメモリ番地から命令が取り出される。取り出された命令の長さに応じて、プログラムカウンタＰＣの内容は自動的に増加する。
なお、プログラムカウンタＰＣは、ジャンプ命令やＣＡＬＬ命令の場合は自動的には増加せず、それらの命令で決まる新しい値が直接プログラムカウンタＰＣにセットされる。
【００４４】
割込みページアドレスレジスタＩは、Ｚ８０の割込みモードの１つである間接コールの割込み処理時に用いる８ビットのレジスタである。更に具体的には、間接アドレスの上位８ビットに割込みページアドレスレジスタＩの内容が使用され、下位８ビットには割込みをかけてきたデバイスからアドレスが使用される。
このようにして合成したアドレスが、割込み処理ルーチンの先頭アドレスの入っている場所のポインタとなるので、間接コールしたことになる。
メモリリフレッシュレジスタＲは、ダイナミックメモリのリフレッシュに用いる７ビットのレジスタである。
なお、遊技機用途のＺ８０準拠のＣＰＵ１０１の種類によっては、専用レジスタ群に、上述した各レジスタに加えてＱレジスタを有するものも知られているが、Ｑレジスタについては説明を省略する。
【００４５】
＜４．メイン制御基板１００ＡのＲＯＭ１０４の構成＞
現行の遊技機関連法規によれば、メイン制御基板１００ＡのＲＯＭ１０４には、以下の制限が課されている。
１）記憶容量が１６キロバイトを超えないこと。
２）制御領域とデータ領域とが区分されているものであること。
３）ぱちんこ遊技機：制御領域の容量が３キロバイトを超えず、かつ、データ領域の容量が３キロバイトを超えないものであること。
４）回胴式遊技機(スロットマシン)：制御領域の容量が４．５キロバイトを超えず、かつ、データ領域の容量が３キロバイトを超えないものであること。
【００４６】
なお、上記のデータ領域とは、プログラム以外の情報のみが記憶される領域、上記の制御領域とは、データ領域以外の記憶領域と規定されているため、制御領域は、プログラム情報が記憶される領域となる。
【００４７】
図４は、メイン制御基板１００ＡのＲＯＭ１０４のメモリマップを示している。
ＲＯＭ１０４の容量は１２キロバイトで、１６進のアドレス表記で、００００Ｈ〜２ＦＦＦＨで示される領域を有している。
先頭番地の００００Ｈから始まる第１プログラム領域ＰＧ１＿ＡＲＥＡには、メインルーチンを含むスロットマシン１の遊技制御に係る遊技制御プログラムが記憶されている。第１プログラム領域ＰＧ１＿ＡＲＥＡは、遊技機関連法規上の制御領域に相当するため、第１プログラム領域ＰＧ１＿ＡＲＥＡの容量は、ぱちんこ遊技機の場合は３キロバイト未満、回胴式遊技機の場合は、４．５キロバイト未満とする必要がある。
【００４８】
第１プログラム領域ＰＧ１＿ＡＲＥＡの後ろには、間に未使用領域挟み、遊技機関連法規上のデータ領域に相当する第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡが設けられている。第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡには、第１プログラム領域ＰＧ１＿ＡＲＥＡに記憶された遊技制御プログラムから参照する固定データが記憶されている。また、第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡの容量は、ぱちんこ遊技機、回胴式遊技機にかかわらず、３キロバイト未満とする必要がある。
第１プログラム領域ＰＧ１＿ＡＲＥＡと第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡとの間の未使用領域は、制御領域とデータ領域とを明確に区分するために設けられ、ＮＵＬＬ(００Ｈ)データで埋められた１６バイト以上の容量を有する。以降の各未使用領域も同様に、各未使用領域の前後の領域を明確に区別するために設けられ、ＮＵＬＬ(００Ｈ)データで埋められた１６バイト以上の容量を有する。
【００４９】
第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡの後ろには、間に未使用領域を挟み、検査情報領域ＴＥＳＴ＿ＤＡＴＡ＿ＡＲＥＡが設けられている。検査情報領域ＴＥＳＴ＿ＤＡＴＡ＿ＡＲＥＡには、検査機関指定の各種情報が記憶される。
【００５０】
検査情報領域ＴＥＳＴ＿ＤＡＴＡ＿ＡＲＥＡの後ろには、間に未使用領域挟み、第２プログラム領域ＰＧ２＿ＡＲＥＡが設けられている。第２プログラム領域ＰＧ２＿ＡＲＥＡには、前記遊技制御プログラムから呼び出される複数のサブルーチンを含む遊技制御に直接関連のない補助プログラムが記憶されている。補助プログラムに含まれる各サブルーチンの機能は、例えば以下の通りである。
１）メダル投入ゴト検知処理
例えば、メダル投入以外の方法でメダル投入センサを誤検知させることにより、クレジットを増加させるクレマンゴトと呼ばれるゴト行為の有無を判別する処理。
２）ホッパーゴト検知処理
ホッパーを誤動作させて不正にメダルを払い出すゴト行為の有無を判別する処理。
３）検査機関試験用信号出力処理
検査機関による試験でのみ用いられる遊技関連信号を出力する処理。
４）補助プログラムで用いるＲＡＭ１０５のワーク領域(後述する第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ)をクリアする処理
【００５１】
第２プログラム領域ＰＧ２＿ＡＲＥＡの後ろには、間に未使用領域挟み、第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡが設けられている。第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡには、第２プログラム領域ＰＧ２＿ＡＲＥＡに記憶された補助プログラムから参照する固定データが記憶されている。
【００５２】
第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡの後ろには、間に未使用領域挟み、管理データ領域ＭＧ＿ＤＡＴＡ＿ＡＲＥＡが設けられている。管理データ領域ＭＧ＿ＤＡＴＡ＿ＡＲＥＡには、機種名やメーカ名等の機種固有情報のほか、第１プログラム領域ＰＧ１＿ＡＲＥＡの終了アドレス、第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡの開始及び終了アドレス、第２プログラム領域ＰＧ２＿ＡＲＥＡの開始及び終了アドレス、第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡの開始及び終了アドレス等が記憶される。
【００５３】
＜５．メイン制御基板１００ＡのＲＡＭ１０５の構成＞
現行の遊技機関連法規によれば、メイン制御基板１００ＡのＲＡＭ１０５には、以下の制限が課されている。
１）記憶容量が１０２４バイトを超えないこと。
２）使用領域の容量が５１２バイトを超えないものであること。
【００５４】
図５は、メイン制御基板１００ＡのＲＡＭ１０５のメモリマップを示している。
ＲＡＭ１０５の容量は１０２４バイトで、１６進のアドレス表記で、Ｆ０００Ｈ〜Ｆ３ＦＦＨで示される領域を有している。
【００５５】
ＲＡＭ１０５の先頭番地Ｆ０００Ｈから始まる領域は、第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡで、第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡには、ＲＯＭ１０４の第１プログラム領域ＰＧ１＿ＡＲＥＡに記憶された遊技制御プログラムに基づき実行される演算処理に用いる各種ワークデータが記憶される。
第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡの後ろには、間に未使用領域挟み、第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡが設けられている。第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡは、ＲＯＭ１０４の第１プログラム領域ＰＧ１＿ＡＲＥＡに記憶された遊技制御プログラムにて用いるスタック領域である。
【００５６】
第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡの後ろには、間に未使用領域挟み、第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡが設けられている。第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡには、ＲＯＭ１０４の第２プログラム領域ＰＧ２＿ＡＲＥＡに記憶された補助プログラムに基づき実行される演算処理に用いる各種ワークデータが記憶される。
第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡの後ろには、間に未使用領域挟み、第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡが設けられている。第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡは、ＲＯＭ１０４の第２プログラム領域ＰＧ２＿ＡＲＥＡに記憶された補助プログラムにて用いるスタック領域である。
【００５７】
また、遊技制御プログラムからの第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡへの参照、及び補助プログラムからの第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡへの参照は可としているが、遊技制御プログラムからの第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡの更新、及び補助プログラムからの第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡの更新は不可としている。
【００５８】
＜６．補助プログラムに含まれるサブルーチンコール時の処理＞
ＲＯＭ１０４の第１プログラム領域ＰＧ１＿ＡＲＥＡに記憶された遊技制御プログラムから、第２プログラム領域ＰＧ２＿ＡＲＥＡに記憶された補助プログラムに含まれるサブルーチンをコールする際には、遊技制御プログラム側で利用している全レジスタを保護する処理を実行する。以下、遊技制御プログラム側で利用している全レジスタを単に「全レジスタ」という。
以下、全レジスタを保護する処理につき、具体的に説明する。
【００５９】
１）第１実施例
第１実施例として、遊技制御プログラム内で全レジスタを保護する処理を実行する場合のプログラム例を図６に示す。
なお、以降のプログラム例に関する説明において、遊技制御プログラム側から呼び出す(コールする)、補助プログラムに含まれるサブルーチン名を「ＥＸＴＰＲＧ」としている。
【００６０】
図６に示す如く、遊技制御プログラム側では、ＳＴ６０２にてサブルーチン「ＥＸＴＰＲＧ」をコールする前に、ＳＴ６０１にて、ＰＵＳＨ命令によって全レジスタをスタック領域に退避するとともに、サブルーチン「ＥＸＴＰＲＧ」からリターンした後のＳＴ６０３にて、ＰＯＰ命令によってスタック領域から全レジスタを復帰させる。
【００６１】
なお、この例では、ＰＵＳＨ命令及びＰＯＰ命令の引数として「ＡＬＬ」を用いたが、遊技制御プログラム側で利用してしないレジスタについては、退避及び復帰処理をしなくてもよい。
【００６２】
さらに、サブルーチン「ＥＸＴＰＲＧ」を含む補助プログラム側では、スタックポインタＳＰの更新を伴う命令、具体的にはＰＯＰ命令及びＰＵＳＨ命令等を使用しないこととしている。
Ｚ８０の仕様上、サブルーチンへジャンプするときに使用するＣＡＬＬ命令には、その時点でのプログラムカウンタＰＣの内容をスタック領域にＰＵＳＨする機能、また、サブルーチンから呼び出し元へリターンするときに使用するＲＥＴ命令には、スタック領域に退避したプログラムカウンタＰＣの内容をＰＯＰする機能が含まれている。このため、補助プログラム側で、スタックポインタＳＰの更新を伴う命令を使用すると、不具合を生じる場合があるためである。
【００６３】
上記の対応により、全レジスタを退避した後、補助プログラム側でのスタックポインタＳＰの更新を回避できるので、補助プログラム側からリターンした後のＰＯＰ命令によって、スタックエリアから全レジスタを復帰させることが可能となる。
また、この場合には、補助プログラム側でスタック領域を使用することがないため、第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡは不要となる。
【００６４】
２）第２実施例
第２実施例として、補助プログラム内で全レジスタを保護する処理を実行する場合のプログラム例を図７に示す。
【００６５】
上記のとおり、Ｚ８０の仕様上、サブルーチンへジャンプするときに使用するＣＡＬＬ命令には、その時点でのプログラムカウンタＰＣの内容をスタック領域にＰＵＳＨする機能、また、サブルーチンから呼び出し元へリターンするときに使用するＲＥＴ命令には、スタック領域に退避したプログラムカウンタＰＣの内容をＰＯＰする機能が含まれているため、補助プログラム側でのスタックポインタＳＰの更新を伴う命令の使用は望ましくない。
このため、第２実施例では、スタック領域として、遊技制御プログラムにて用いる第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡと、補助プログラムにて用いる第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡとを個別に設けた。
また、補助プログラム側のサブルーチンの先頭で、現在のスタックポインタＳＰの値を第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡに退避する処理、並びに、スタックポインタＳＰに第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡの先頭番地をセットする処理を行ったのち、全レジスタを退避する処理を行う。
【００６６】
なお、ＣＰＵ１０１のＦレジスタ内に、上述した第２ゼロフラグＺ２を有する場合には、現在のスタックポインタＳＰの値を第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡに退避する処理、並びに、スタックポインタＳＰに第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡの先頭番地をセットする処理にて用いるＬＤ命令によって、第２ゼロフラグＺ２の値が変化して、Ｆレジスタの値が変化する虞がある。従って、ＬＤ命令を使用する上記２つの処理の前に、Ｆレジスタの値を退避する必要がある。
また、Ｆレジスタ値の退避にあたり、スタックポインタＳＰが変化してしまうＰＵＳＨ命令を使用することは出来ないため、ＡＦレジスタと補助レジスタＡＦ’とを交換するＥＸ命令を用いている(ＳＴ７０１)。
さらに、遊技制御プログラム側では、補助レジスタＡＦ’を使用しないこととしている。
【００６７】
次のＳＴ７０２にて、現在のスタックポインタＳＰの値を第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ内のＳｐｓａｖｅ２番地に退避する処理、また、ＳＴ７０３にて、スタックポインタＳＰに第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡの先頭番地ＥＸＴＳＴＫをセットする処理を実行した後、ＳＴ７０４にて、ＡＦレジスタと補助レジスタＡＦ’とを交換するＥＸ命令により、ＳＴ７０１にて補助レジスタＡＦ’に退避した値をＡＦレジスタに復帰させる。
その後のＳＴ７０５にて、ＰＵＳＨ命令により全レジスタの値を第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡに退避し、全レジスタの退避処理が完了する。
【００６８】
次に、本処理を実行した後、ＲＥＴ命令で遊技機プログラム側にリターンする前に、全レジスタの復帰処理を実行する。
先ず、ＳＴ７０６にて、ＰＯＰ命令により、ＳＴ７０５にて第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡに退避した値を、全レジスタに復帰させる。
次のＳＴ７０７にて、ＥＸ命令により、現在のＡＦレジスタの値を補助レジスタＡＦ’に退避した後、ＳＴ７０８にて第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ内のＳｐｓａｖｅ２番地に退避した値をスタックポインタＳＰに復帰させ、ＳＴ７０９にて、ＥＸ命令により、ＳＴ７０７にて補助レジスタＡＦ’に退避した値をＡＦレジスタに復帰させ、全レジスタの復帰処理が完了する。
その後、ＳＴ７１０のＲＥＴ命令により、呼び出し元の遊技制御プログラムへリターンする。
【００６９】
なお、ＣＰＵ１０１の仕様上、ＬＤ命令によってＦレジスタが変化することがない場合には、ＳＴ７０１、ＳＴ７０４、ＳＴ７０７、及びＳＴ７０９のＡＦレジスタの復帰及び退避処理は不要である。
【００７０】
また、第２実施例の方法を採用した場合、補助プログラム内の処理の実行中に、タイマ割込処理が発生すると、遊技制御プログラム内のタイマ割込処理が実行されることになり、スタック領域として第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡが使用されることになってしまう。これを回避するには、補助プログラム側の処理の実行中の割込を禁止すればよい。
具体的には、遊技制御プログラムから補助プログラムに含まれるサブルーチンをコールする際に割込禁止命令ＤＩ、該サブルーチンから遊技制御プログラムにリターンする際に割込許可命令ＥＩを各実行すればよい。
なお、遊技制御プログラム側で補助プログラムに含まれるサブルーチンをコールする直前に割込禁止命令ＤＩを実行するとともに、補助プログラム側で遊技制御プログラムにリターンする直前に割込許可命令ＥＩを実行するようにすれば、容量制限の課された遊技制御プログラムの容量増大を最小限に抑制することが出来る。
【００７１】
第１実施例に記載の方法によれば、遊技制御プログラム側から補助プログラムに含まれるサブルーチンを呼び出す度に、その前後で、ＰＵＳＨ命令による全レジスタの退避処理、並びにＰＯＰ命令による全レジスタの復帰処理が必要となる。
従って、遊技制御プログラムの容量を出来るだけ小さくしたい場合には、全レジスタの退避及び復帰処理を補助プログラム側で実行する第２実施例の方法を採用したほうがよい。
【００７２】
以上説明した通り、本発明を適用したスロットマシン１は、一定の容量制限が課されている遊技制御プログラムをＲＯＭ１０４の第１プログラム領域ＰＧ１＿ＡＲＥＡ、遊技制御プログラムから参照する固定データをＲＯＭ１０４の第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡに各記憶するとともに、遊技制御に直接関連のない補助プログラムをＲＯＭ１０４の第２プログラム領域ＰＧ２＿ＡＲＥＡ、補助プログラムから参照する固定データをＲＯＭ１０４の第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡに記憶した。
【００７３】
これにより、第１プログラム領域ＰＧ１＿ＡＲＥＡ、第１データ領域ＰＧ１＿ＤＡＴＡ＿ＡＲＥＡ、第２プログラム領域ＰＧ２＿ＡＲＥＡ及び第２データ領域ＰＧ２＿ＤＡＴＡ＿ＡＲＥＡが、ＲＯＭ１０４内で明確に区分されるため、検査の容易化が図れる。
【００７４】
また、上記本発明のスロットマシン１によれば、遊技機プログラムから補助プログラムに含まれる１のサブルーチンを呼び出す際に、遊技制御プログラムで使用する全レジスタの値をＲＡＭ１０５のスタック領域に退避するレジスタ退避処理と、前記１のサブルーチンから呼び出し元の遊技制御プログラムにリターンする際に、前記レジスタ退避処理にて退避した全レジスタの値をＲＡＭ１０５のスタック領域から復帰するレジスタ復帰処理とを実行するため、補助プログラム側のサブルーチンの処理によってレジスタの値が変化したとしても、当該サブルーチンからのリターンの際に、当該サブルーチン呼び出し前の値に復帰することになる。
このため、サブルーチン側でのレジスタ値の変化を考慮することなく、遊技機制御プログラムの検査が可能となるので、検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【００７５】
また、上記本発明のスロットマシン１においては、ＲＡＭ１０５のワーク領域についても、遊技制御プログラム用の第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡと、補助プログラム用の第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡとに明確に区分し、遊技制御プログラムには、第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡに記憶されたデータを更新する処理を含まず、且つ、補助プログラムには、第１ワーク領域ＷＯＲＫ１＿ＡＲＥ)に記憶されたデータを更新する処理を含まないこととした。
【００７６】
これにより、遊技制御プログラム側の検査時には第１ワーク領域ＷＯＲＫ１＿ＡＲＥＡのみ、補助プログラム側の検査時には第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡのみ検査すればよいので、さらに検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【００７７】
また、第２実施例のスロットマシン１ように、前記レジスタ退避処理並びにレジスタ復帰処理を補助プログラム側で実行することにより、容量制限が課されている遊技制御プログラム側の容量増加を抑制することが出来る。
【００７８】
さらに、第２実施例のスロットマシン１においては、ＲＡＭ１０５のスタック領域についても、遊技制御プログラム用の第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡと、補助プログラム用の第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡとに明確に区分し、レジスタ退避処理時には、現在のスタックポインタＳＰを第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ内の所定アドレスに退避する処理と、第２スタック領域ＳＴＡＣＫ２＿ＡＲＥＡの先頭アドレスをスタックポインタＳＰに設定する処理とを実行し、レジスタ復帰処理時には、第２ワーク領域ＷＯＲＫ２＿ＡＲＥＡ内の所定アドレスに退避した値をスタックポインタに復帰させるようにした。
【００７９】
これにより、ＲＡＭ１０５のスタック領域についても、遊技制御プログラム側の検査時には第１スタック領域ＳＴＡＣＫ１＿ＡＲＥＡのみ、補助プログラム側の検査時には第１スタック領域ＳＴＡＣＫ２＿ＡＲＥＡのみ検査すればよいので、さらに検査負担の増大、並びに検査期間の長期化を最小限に抑制することが出来る。
【産業上の利用可能性】
【００８０】
本発明は、スロットマシンやパチンコ遊技機等の遊技機に適用することができる。
【符号の説明】
【００８１】
１……スロットマシン、１２……スタートレバー、１３ａ〜１３ｃ……ストップボタン、
Ｒ１〜Ｒ３……リール、２０……リール窓、Ｌ１……入賞ライン、３０……液晶表示装置
、１００Ａ……メイン制御基板、１０１……ＣＰＵ、１０４……ＲＯＭ、１０５……ＲＡ
Ｍ、１００Ｂ……表示制御基板、１９１……ＣＰＵ、１９４……ＲＯＭ、１９５……ＲＡ
Ｍ
【図１】
0006283834.tif 000002
【図２】
0006283834.tif 000003
【図３】
0006283834.tif 000004
【図４】
0006283834.tif 000005
【図５】
0006283834.tif 000006
【図６】
0006283834.tif 000007
【図７】
0006283834.tif 000008