JP5552244B2 - Slot machine - Google Patents

Slot machine Download PDF

Info

Publication number
JP5552244B2
JP5552244B2 JP2009058624A JP2009058624A JP5552244B2 JP 5552244 B2 JP5552244 B2 JP 5552244B2 JP 2009058624 A JP2009058624 A JP 2009058624A JP 2009058624 A JP2009058624 A JP 2009058624A JP 5552244 B2 JP5552244 B2 JP 5552244B2
Authority
JP
Japan
Prior art keywords
numerical data
random number
value
game
stored
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.)
Expired - Fee Related
Application number
JP2009058624A
Other languages
Japanese (ja)
Other versions
JP2010207478A (en
JP2010207478A5 (en
Inventor
敏男 小倉
有一 渡邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sankyo Co Ltd
Original Assignee
Sankyo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sankyo Co Ltd filed Critical Sankyo Co Ltd
Priority to JP2009058624A priority Critical patent/JP5552244B2/en
Publication of JP2010207478A publication Critical patent/JP2010207478A/en
Publication of JP2010207478A5 publication Critical patent/JP2010207478A5/ja
Application granted granted Critical
Publication of JP5552244B2 publication Critical patent/JP5552244B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、各々が識別可能な複数種類の識別情報を変動表示可能な可変表示装置の表示結果に応じて所定の入賞が発生可能なスロットマシンに関する。   The present invention relates to a slot machine capable of generating a predetermined winning according to a display result of a variable display device capable of variably displaying a plurality of types of identification information each identifiable.

スロットマシンは、一般に、外周部に識別情報としての複数種類の図柄が描かれた複数(通常は3つ)のリールを有する可変表示装置を備えており、まず遊技者のBET操作により賭数を設定し、規定の賭数が設定された状態でスタート操作することによりリールの回転が開始し、各リールに対応して設けられた停止ボタンを操作することにより回転を停止する。そして、全てのリールの回転を停止したときに入賞ライン上に予め定められた入賞図柄の組合せ(例えば、7−7−7、以下図柄の組合せを役とも呼ぶ)が揃ったことによって入賞が発生する。すなわち遊技者の操作によってゲームが進行するようになっている。   A slot machine generally includes a variable display device having a plurality of (usually three) reels on which a plurality of types of symbols as identification information are drawn on the outer periphery, and first, a bet number is determined by a player's BET operation. The reels start to rotate when the start operation is performed with the set number of bets set, and the rotation is stopped by operating a stop button provided corresponding to each reel. When all reels stop rotating, a winning combination occurs when a predetermined winning symbol combination (for example, 7-7-7, hereinafter referred to as a symbol combination) is arranged on the winning line. To do. That is, the game is advanced by the player's operation.

また、この種のスロットマシンにおいては、スタート操作と同時に役の抽選を行い、この抽選に当選したことを条件に当選役の入賞が可能となるものが一般的であり、この役抽選を行う方法としては、一定の範囲で数値を更新するカウンタを設け、スタート操作が検出された際に、カウンタの数値を抽出し、抽出した値を乱数として用いる方法がある(例えば、特許文献1参照)。   Also, in this type of slot machine, it is common to draw a role at the same time as the start operation and to win a winning combination on the condition that the lottery is won. There is a method of providing a counter that updates a numerical value within a certain range, extracting the numerical value of the counter when a start operation is detected, and using the extracted value as a random number (for example, see Patent Document 1).

特開2005−152268号公報JP 2005-152268 A

特許文献1に記載の遊技機のように、スタート操作が検出された際にカウンタの数値を抽出して抽選を行う方法では、スタート操作が検出されてカウンタの数値を抽出した後、静電気などによりスタート操作の信号線にノイズがのることによって再度カウンタから数値が抽出された場合、スタート操作の検出によって抽出された数値とは異なる数値によって抽選が行われてしまうこととなる。   As in the gaming machine described in Patent Document 1, when the start operation is detected, the counter value is extracted and the lottery is performed. After the start operation is detected and the counter value is extracted, When a numerical value is extracted from the counter again due to noise on the signal line of the start operation, a lottery is performed with a numerical value different from the value extracted by detecting the start operation.

このような問題を解決する方法として、カウンタから一度数値を抽出した後、抽出した数値が読み出されるまで保持しておく方法が考えられるが、このような方法を採用した場合、スタート操作がゲームの進行上有効でない期間においてなされた場合でも、カウンタから抽出された数値が保持されたままとなり、本来のスタート操作がなされたタイミングとは異なるタイミングで抽出された数値によって抽選が行われてしまうという新たな問題が生じることとなる。   As a method of solving such a problem, a method of extracting a numerical value from the counter once and holding it until the extracted numerical value is read out can be considered. Even if it is made in a period that is not valid for the progress, the numerical value extracted from the counter remains retained, and a lottery is performed based on the numerical value extracted at a timing different from the timing at which the original start operation was performed Will cause serious problems.

本発明は、このような問題点に着目してなされたものであり、ゲームの開始操作がなされたタイミングで抽出された数値とは異なる数値を用いて抽選が行われてしまうことを防止できるスロットマシンを提供することを目的とする。   The present invention has been made paying attention to such problems, and can prevent a lottery from being performed using a numerical value different from the numerical value extracted at the timing when the game start operation is performed. The purpose is to provide a machine.

上記課題を解決するために、本発明の請求項1に記載のスロットマシンは、
遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の図柄を変動表示可能な可変表示装置(リール2L、2C、2R)に表示結果が導出されたことにより1ゲームが終了し、前記可変表示装置(リール2L、2C、2R)に導出された表示結果に応じて入賞が発生可能とされたスロットマシン(スロットマシン1)であって、
電力供給が停止しても格納されているデータが保持されるバックアップ領域を有するデータ記憶手段と、
ゲームを開始する際に操作される開始操作手段(スタートスイッチ7)と、
数値データを更新する数値更新手段(乱数列変更回路555)と、
ゲームを開始させることが可能な開始可能状態において、前記開始操作手段(スタートスイッチ7)が操作されたことによりゲームを開始させるゲーム開始手段と、
前記開始操作手段(スタートスイッチ7)が操作されたときに、前記開始可能状態であるか否かに関わらず、前記数値更新手段(乱数列変更回路555)によって更新された数値データを乱数値として抽出し、第1の数値データ格納領域(乱数値レジスタR1D)に格納する乱数抽出手段(乱数ラッチセレクタ558A)と、
前記第1の数値データ格納領域(乱数値レジスタR1D)に前記乱数抽出手段(乱数ラッチセレクタ558A)により数値データが格納された後、該格納されている数値データが読み出されるまでは、前記乱数抽出手段(乱数ラッチセレクタ558A)により新たな数値データが格納されることがなく、該第1の数値データ格納領域(乱数値レジスタR1D)に格納されている数値データを保持する数値データ保持手段(新たな数値データのラッチの禁止)と、
一定時間(約2.24ms)毎に、前記第1の数値データ格納領域(乱数値レジスタR1D)に数値データが格納されているか否か(乱数ラッチフラグが設定されているか否か)を判定する数値データ格納判定手段と、
前記数値データ格納判定手段が前記第1の数値データ格納領域(乱数値レジスタR1D)に数値データが格納されている(乱数ラッチフラグが設定されている)と判定したときに、前記第1の数値データ格納領域(乱数値レジスタR1D)に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除するとともに、該読み出した数値データを前記バックアップ領域に設けられた第2の数値データ格納領域(乱数値格納ワーク)に格納する数値データ読出手段と、
前記ゲーム開始手段がゲームを開始させるときに、前記第2の数値データ格納領域(乱数値格納ワーク)に格納されている数値データを用いて入賞の発生を許容するか否かを決定する事前決定手段(内部抽選)と、
を備える
ことを特徴としている。
この特徴によれば、開始操作手段の操作により抽出された数値データが第1の数値データ格納領域に格納された後、該格納された数値データが読み出されて第2の数値データ格納領域に格納されるまでは、第1の数値データ格納領域に格納されている数値データが保持され、新たな数値データによって上書きされてしまうことがないので、静電気などにより開始操作手段の信号線にノイズがのっても数値データが変わってしまうことがない。
また、一定時間毎に、第1の数値データ格納領域に数値データが格納されているか否か判定され、第1の数値データ格納領域に数値データが格納されている場合には、第1の数値データ格納領域に格納されている数値データが読み出され、数値データ保持手段による数値データの保持が解除されるようになっており、開始可能状態となる前に開始操作手段が操作されて数値データ格納領域に数値データが格納され、その数値データが保持されても、その状態が一定時間を超えて継続することがなく、新たな数値データを格納可能な状態となるため、開始可能状態となる前に開始操作手段が操作されて数値データが格納されても、開始可能状態において開始操作手段が操作されたタイミングで抽出した数値データを取得することが可能となる。
また、数値データ格納判定手段が第1の数値データ格納領域に新たな数値データが格納されていると判定し、第1の数値データ格納領域から数値データが読み出される毎に、第2の数値データ格納領域の数値データが第1の数値データ格納領域から読み出された数値データ、すなわち新たに抽出された数値データに更新されるとともに、事前決定手段は、第1の数値データ格納領域に格納されている数値データではなく、第2の数値データ格納領域に格納された数値データを用いるので、第1の数値データ格納領域から数値データが読み出された後に、開始操作手段の信号線にノイズがのって数値データが変わってしまっても事前決定手段が用いる第2の数値データ格納領域の数値データに影響することがなく、このような場合であっても、開始可能状態において開始操作手段が操作されたタイミングで抽出した数値データを用いて入賞の発生を許容するか否かの決定を行うことができる。
In order to solve the above-described problem, a slot machine according to claim 1 of the present invention provides:
The game can be started by setting a predetermined number of bets for one game using the gaming value, and a variable display device (reel 2L, 2C, 2R), the display result is derived, one game is completed, and a slot machine (where a winning can be generated according to the display result derived to the variable display device (reels 2L, 2C, 2R)) Slot machine 1)
Data storage means having a backup area in which stored data is retained even if power supply is stopped;
Start operation means (start switch 7) operated when starting the game,
Numerical value updating means (random number sequence changing circuit 555) for updating numerical data;
Game start means for starting a game when the start operation means (start switch 7) is operated in a startable state in which a game can be started;
When the start operation means (start switch 7) is operated, the numerical data updated by the numerical value update means (random number sequence change circuit 555) is used as a random value regardless of whether the start operation is possible or not. Random number extraction means (random number latch selector 558A) for extracting and storing the first numerical data storage area (random number value register R1D);
After the numerical data is stored in the first numerical data storage area (random value register R1D) by the random number extraction means (random number latch selector 558A), the random number extraction is performed until the stored numerical data is read out. New numerical data is not stored by the means (random number latch selector 558A), and numerical data holding means (new data) that holds the numerical data stored in the first numerical data storage area (random number register R1D) Prohibiting the latching of numerical data)
A numerical value for determining whether or not numerical data is stored in the first numerical data storage area (random number register R1D) at every fixed time (about 2.24 ms) (whether or not the random number latch flag is set). Data storage judging means;
When the numerical data storage determining means determines that numerical data is stored in the first numerical data storage area (random number register R1D) (the random number latch flag is set), the first numerical data By reading the numerical data stored in the storage area (random number value register R1D), the numerical data holding means releases the numerical data, and the read numerical data is stored in the second backup area . Numerical data reading means for storing in a numerical data storage area (random number storage work)
When the game starting means starts a game, it is determined in advance whether or not to allow a winning to be generated using the numerical data stored in the second numerical data storage area (random number storage work) Means (internal lottery),
It is characterized by having.
According to this feature, after the numerical data extracted by the operation of the start operation means is stored in the first numerical data storage area, the stored numerical data is read out and stored in the second numerical data storage area. Until the data is stored, the numerical data stored in the first numerical data storage area is retained and is not overwritten by new numerical data. Therefore, noise is generated in the signal line of the start operation means due to static electricity or the like. The numerical data will not change even if you do.
Further, it is determined whether or not numerical data is stored in the first numerical data storage area at regular time intervals. If numerical data is stored in the first numerical data storage area, the first numerical value is stored. The numerical data stored in the data storage area is read, and the numerical data holding means is released from the numerical data holding means, and the numerical data is operated by operating the start operation means before the startable state is reached. Even if numerical data is stored in the storage area and the numerical data is retained, the state does not continue for a certain period of time, and new numerical data can be stored. Even if the numerical value data is stored by operating the start operation means before, it is possible to acquire the numerical data extracted at the timing when the start operation means is operated in the startable state.
The numerical data storage determining means determines that new numerical data is stored in the first numerical data storage area, and whenever the numerical data is read from the first numerical data storage area, the second numerical data is stored. The numerical data in the storage area is updated to the numerical data read from the first numerical data storage area, that is, the newly extracted numerical data, and the predetermination means is stored in the first numerical data storage area. Since the numerical data stored in the second numerical data storage area is used instead of the numerical data being stored, noise is generated in the signal line of the start operation means after the numerical data is read from the first numerical data storage area. Even if the numerical data changes, the numerical data in the second numerical data storage area used by the predetermining means is not affected. Even in such a case, A determination can be made whether to allow the occurrence of the winning using numerical data extracted at the timing start operation means is operated in the start state.

本発明の請求項2に記載のスロットマシンは、
遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の図柄を変動表示可能な可変表示装置(リール2L、2C、2R)に表示結果が導出されたことにより1ゲームが終了し、前記可変表示装置(リール2L、2C、2R)に導出された表示結果に応じて入賞が発生可能とされたスロットマシン(スロットマシン1)であって、
電力供給が停止しても格納されているデータが保持されるバックアップ領域を有するデータ記憶手段と、
ゲームを開始する際に操作される開始操作手段(スタートスイッチ7)と、
数値データを更新する数値更新手段(乱数列変更回路555)と、
ゲームを開始させることが可能な開始可能状態において、前記開始操作手段(スタートスイッチ7)が操作されたことによりゲームを開始させるゲーム開始手段と、
前記開始操作手段(スタートスイッチ7)が操作されたときに、前記開始可能状態であるか否かに関わらず、前記数値更新手段(乱数列変更回路555)によって更新された数値データを乱数値として抽出し、第1の数値データ格納領域(乱数値レジスタR1D)に格納する乱数抽出手段(乱数ラッチセレクタ558A)と、
前記第1の数値データ格納領域(乱数値レジスタR1D)に前記乱数抽出手段(乱数ラッチセレクタ558A)により数値データが格納された後、該格納されている数値データが読み出されるまでは、前記乱数抽出手段(乱数ラッチセレクタ558A)により新たな数値データが格納されることがなく、該第1の数値データ格納領域(乱数値レジスタR1D)に格納されている数値データを保持する数値データ保持手段(新たな数値データのラッチの禁止)と、
前記数値データ格納領域(乱数値レジスタR1D)に数値データが格納されたときに割込(乱数ラッチ割込)を発生させる割込発生手段と、
前記割込発生手段が前記割込(乱数ラッチ割込)を発生させたことに応じて、前記数値データ格納領域(乱数値レジスタR1D)に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除するとともに、該読み出した数値データを前記バックアップ領域に設けられた第2の数値データ格納領域(乱数値格納ワーク)に格納する数値データ読出手段と、
前記ゲーム開始手段がゲームを開始させるときに、前記第2の数値データ格納領域(乱数値格納ワーク)に格納されている数値データを用いて入賞の発生を許容するか否かを決定する事前決定手段(内部抽選)と、
を備える
ことを特徴としている。
この特徴によれば、開始操作手段の操作により抽出された数値データが第1の数値データ格納領域に格納された後、該格納された数値データが読み出されて第2の数値データ格納領域に格納されるまでは、第1の数値データ格納領域に格納されている数値データが保持され、新たな数値データによって上書きされてしまうことがないので、静電気などにより開始操作手段の信号線にノイズがのっても数値データが変わってしまうことがない。
また、数値データ格納領域に数値データが格納されると割込が発生し、割込に応じて数値データ格納領域に格納されている数値データが読み出され、数値データ保持手段による数値データの保持が解除されるようになっており、開始可能状態となる前に開始操作手段が操作されて数値データ格納領域に数値データが格納されても、割込の発生に応じて直ちに数値データが読み出され、新たな数値データを格納可能な状態となるため、開始可能状態において開始操作手段が操作されたタイミングで抽出した数値データを取得することが可能となる。
また、第1の数値データ格納領域に新たな数値データが格納されて割込が発生し、第1の数値データ格納領域から数値データが読み出される毎に、第2の数値データ格納領域の数値データが第1の数値データ格納領域から読み出された数値データ、すなわち新たに抽出された数値データに更新されるとともに、事前決定手段は、第1の数値データ格納領域に格納されている数値データではなく、第2の数値データ格納領域に格納された数値データを用いるので、第1の数値データ格納領域から数値データが読み出された後に、開始操作手段の信号線にノイズがのって数値データが変わってしまっても事前決定手段が用いる第2の数値データ格納領域の数値データに影響することがなく、このような場合であっても、開始可能状態において開始操作手段が操作されたタイミングで抽出した数値データを用いて入賞の発生を許容するか否かの決定を行うことができる。
A slot machine according to claim 2 of the present invention,
The game can be started by setting a predetermined number of bets for one game using the gaming value, and a variable display device (reel 2L, 2C, 2R), the display result is derived, one game is completed, and a slot machine (where a winning can be generated according to the display result derived to the variable display device (reels 2L, 2C, 2R)) Slot machine 1)
Data storage means having a backup area in which stored data is retained even if power supply is stopped;
Start operation means (start switch 7) operated when starting the game,
Numerical value updating means (random number sequence changing circuit 555) for updating numerical data;
Game start means for starting a game when the start operation means (start switch 7) is operated in a startable state in which a game can be started;
When the start operation means (start switch 7) is operated, the numerical data updated by the numerical value update means (random number sequence change circuit 555) is used as a random value regardless of whether the start operation is possible or not. Random number extraction means (random number latch selector 558A) for extracting and storing the first numerical data storage area (random number value register R1D);
After the numerical data is stored in the first numerical data storage area (random value register R1D) by the random number extraction means (random number latch selector 558A), the random number extraction is performed until the stored numerical data is read out. New numerical data is not stored by the means (random number latch selector 558A), and numerical data holding means (new data) that holds the numerical data stored in the first numerical data storage area (random number register R1D) Prohibiting the latching of numerical data)
Interrupt generating means for generating an interrupt (random number latch interrupt) when numerical data is stored in the numerical data storage area (random number register R1D);
By reading the numerical data stored in the numerical data storage area (random number value register R1D) in response to the interrupt generation means generating the interrupt (random number latch interrupt), the numerical data Numeric data reading means for releasing the numeric data held by the holding means and storing the read numeric data in a second numeric data storage area (random number storage work) provided in the backup area ;
When the game starting means starts a game, it is determined in advance whether or not to allow a winning to be generated using the numerical data stored in the second numerical data storage area (random number storage work) Means (internal lottery),
It is characterized by having.
According to this feature, after the numerical data extracted by the operation of the start operation means is stored in the first numerical data storage area, the stored numerical data is read out and stored in the second numerical data storage area. Until the data is stored, the numerical data stored in the first numerical data storage area is retained and is not overwritten by new numerical data. Therefore, noise is generated in the signal line of the start operation means due to static electricity or the like. The numerical data will not change even if you do.
In addition, when numerical data is stored in the numerical data storage area, an interrupt occurs, and the numerical data stored in the numerical data storage area is read according to the interrupt, and the numerical data holding means holds the numerical data Even if the start operation means is operated and numerical data is stored in the numerical data storage area before it is ready to start, the numerical data is read immediately upon occurrence of an interrupt. Since new numerical data can be stored, the numerical data extracted at the timing when the start operation means is operated in the startable state can be acquired.
Further, every time numerical data is read from the first numerical data storage area when new numerical data is stored in the first numerical data storage area and an interruption occurs, the numerical data in the second numerical data storage area Is updated to the numerical data read from the first numerical data storage area, that is, the newly extracted numerical data, and the pre-determining means is the numerical data stored in the first numerical data storage area. However, since the numerical data stored in the second numerical data storage area is used, the numerical data is read out from the first numerical data storage area, and noise is applied to the signal line of the start operation means. Even if changes, the numerical data in the second numerical data storage area used by the pre-determining means is not affected. A determination can be made whether to allow the occurrence of the winning using numerical data extracted at the timing work unit has been operated.

尚、請求項1、2において所定数の賭数とは、少なくとも1以上の賭数であって、2以上の賭数が設定されることや最大賭数が設定されることでゲームが開始可能となるようにしても良い。また、複数の遊技状態に応じて定められた賭数が設定されることでゲームが開始可能となるようにしても良い。
また、請求項1、2において数値データ保持手段は、前記第1の数値データ格納領域に前記乱数抽出手段により数値データが格納された後、該格納されている数値データが読み出されるまで、前記乱数抽出手段による数値データの新たな抽出を禁止することにより、第1の数値データ格納領域に格納されている数値データを保持するようにしても良いし、前記第1の数値データ格納領域に前記乱数抽出手段により数値データが格納された後、該格納されている数値データが読み出されるまで、前記乱数抽出手段により数値データの抽出が行われても第1の数値データ格納領域への格納を禁止することにより、第1の数値データ格納領域に格納されている数値データを保持するようにしても良い。
In claims 1 and 2 , the predetermined number of bets is at least one bet number, and a game can be started by setting a bet number of two or more or setting a maximum bet number. You may make it become. Further, the game may be started by setting a bet amount determined according to a plurality of game states.
The numerical data holding means according to claim 1 , wherein the random number data is stored in the first numerical data storage area by the random number extracting means until the stored numerical data is read out. The numerical data stored in the first numerical data storage area may be retained by prohibiting new extraction of the numerical data by the extracting means, or the random number may be stored in the first numerical data storage area. After the numerical data is stored by the extracting means, until the stored numerical data is read, even if the random number extracting means extracts the numerical data, storage in the first numerical data storage area is prohibited. Thus, the numerical data stored in the first numerical data storage area may be held.

本発明の請求項に記載のスロットマシンは、請求項1または2に記載のスロットマシンであって、
ゲームを開始させることが不可能な状態から前記開始可能状態となったときに、前記数値データ格納領域(乱数値レジスタR1D)に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除する保持解除手段を備える
ことを特徴としている。
この特徴によれば、開始操作手段を操作してもゲームが開始しない状態から、開始操作手段の操作によりゲームを開始させることが可能な開始可能状態となったときにも、数値データ格納領域に格納されている数値データが読み出され、数値データ保持手段による数値データの保持が解除されるようになっており、開始可能状態となる前に開始操作手段が操作されて数値データ格納領域に数値データが格納され、その状態が保持されたままとなっても、開始可能状態になると同時に数値データ格納領域に新たな数値データを格納可能な状態となる。
A slot machine according to claim 3 of the present invention is the slot machine according to claim 1 or 2 ,
By reading the numerical data stored in the numerical data storage area (random number register R1D) when the game becomes impossible from the state where it is impossible to start the game, the numerical data holding means It is characterized by having a holding release means for releasing the holding of numerical data.
According to this feature, even when the game is not started even if the start operation means is operated, the numerical data storage area is also displayed when the game can be started by the operation of the start operation means. The stored numerical data is read, and the numerical data holding means is released from the numerical data holding means, and the start operation means is operated before the startable state is entered, and the numerical data is stored in the numerical data storage area. Even if the data is stored and the state is maintained, the startable state is entered and new numerical data can be stored in the numerical data storage area.

本発明の請求項に記載のスロットマシンは、請求項1〜3のいずれかに記載のスロットマシンであって、
前記ゲーム開始手段は、前記開始可能状態において、前記開始操作手段(スタートスイッチ7)の操作が所定期間(約2.24ms)継続して検出されたことを条件に、ゲームを開始させる
ことを特徴としている。
この特徴によれば、静電気などのノイズによって開始操作手段が誤って検出されたにも関わらず、ゲームが開始して入賞の発生を許容するか否かの決定が行われてしまうことを防止できる。
A slot machine according to claim 4 of the present invention is the slot machine according to any one of claims 1 to 3 ,
The game starting means starts the game on the condition that, in the startable state, the operation of the start operating means (start switch 7) is continuously detected for a predetermined period (about 2.24 ms). It is said.
According to this feature, it is possible to prevent the game from starting and determining whether or not the winning is allowed even though the start operation means is erroneously detected due to noise such as static electricity. .

本発明の請求項に記載のスロットマシンは、請求項1〜4のいずれかに記載のスロットマシンであって、
前記スロットマシン毎に個別に割り当てられた識別符号(IDナンバー)が記憶される不揮発性メモリ(ROM506)と、
電力供給が開始したときに前記不揮発性メモリ(ROM506)に記憶されている識別符号(IDナンバー)に基づいて初期数値データ(数値データのスタート値)を生成する初期数値データ生成手段(乱数回路設定処理)と、
をさらに備え、
前記数値更新手段(乱数列変更回路555)は、電力供給が開始したときに前記初期数値データ生成手段(乱数回路設定処理)により生成された初期数値データ(数値データのスタート値)から前記数値データの更新を開始する
ことを特徴としている。
この特徴によれば、スロットマシン毎に個別に割り当てられた識別符号に基づいて生成された初期数値データから数値データの更新が開始されるので、スロットマシン毎に初期数値データが異なり、初期数値データを特定することが困難となるため、特定の数値データのタイミングを狙って開始操作手段の操作を検出させる不正を効果的に防止できる。
A slot machine according to claim 5 of the present invention is the slot machine according to any one of claims 1 to 4 ,
A non-volatile memory (ROM 506) in which an identification code (ID number) individually assigned to each slot machine is stored ;
Initial numerical data generation means (random number circuit setting) for generating initial numerical data (start value of numerical data) based on the identification code (ID number) stored in the nonvolatile memory (ROM 506) when power supply is started Processing) and
Further comprising
The numerical value updating means (random number sequence changing circuit 555) is configured to output the numerical data from the initial numerical data (start value of numerical data) generated by the initial numerical data generation means (random number circuit setting process) when power supply is started. It is characterized by starting the update.
According to this feature, updating of the numerical data is started from the initial numerical data generated based on the identification code individually assigned to each slot machine. Therefore, the initial numerical data differs from slot machine to initial numerical data. Therefore, it is possible to effectively prevent fraud in which the operation of the start operation means is detected aiming at the timing of specific numerical data.

本発明の請求項に記載のスロットマシンは、請求項1〜5のいずれかに記載のスロットマシンであって、
前記数値更新手段(乱数列変更回路555)は、ゲームの進行制御を行うゲーム制御手段(CPU505)を動作させるための動作クロック(制御用クロック)とは周期の異なる動作クロック(乱数用クロック)を入力して前記数値データを更新する
ことを特徴としている。
この特徴によれば、ゲーム制御手段の動作と数値データの更新周期とが同期することにより、事前決定手段により用いられる乱数値に偏りが生じてしまうことを防止できるとともに、ゲーム制御手段に不正基板が接続されてもゲーム制御手段の動作から数値データの更新周期を特定することは不可能となるため、特定の数値データのタイミングを狙って開始操作手段の操作を検出させる不正を効果的に防止できる。
A slot machine according to claim 6 of the present invention is the slot machine according to any one of claims 1 to 5 ,
The numerical value updating means (random number sequence changing circuit 555) has an operation clock (random number clock) having a different period from the operation clock (control clock) for operating the game control means (CPU 505) for controlling the progress of the game. The numerical data is inputted and updated.
According to this feature, since the operation of the game control unit and the update cycle of the numerical data are synchronized, it is possible to prevent the random number value used by the predetermining unit from being biased, and the game control unit includes an illegal board. Even if is connected, it is impossible to specify the update interval of numerical data from the operation of the game control means, so it is possible to effectively prevent fraud in which the operation of the start operation means is detected aiming at the timing of specific numerical data it can.

本発明の請求項に記載のスロットマシンは、請求項1〜6のいずれかに記載のスロットマシンであって、
前記数値更新手段(乱数列変更回路555)は、所定周期の動作クロック(乱数用クロック)を入力して前記数値データを更新し、
前記スロットマシンは、前記数値更新手段(乱数列変更回路555)に入力される動作クロック(乱数用クロック)の入力状態に基づき、前記数値更新手段(乱数列変更回路555)の動作状態に異常が発生したか否かを判定する動作クロック異常判定手段(乱数回路異常検査処理)を備える
ことを特徴としている。
この特徴によれば、数値更新手段により数値データが正常に更新されないまま、すなわち数値データが固定されたままの状態で入賞の発生を許容するか否かの決定を行わせる不正を防止できる。
A slot machine according to a seventh aspect of the present invention is the slot machine according to any one of the first to sixth aspects,
The numerical value updating means (random number sequence changing circuit 555) inputs an operation clock (random number clock) with a predetermined period to update the numerical data,
The slot machine is based on the input state of the numeric updating means (random number sequence changing circuit 555) to input the operation clocks (random clock), abnormal operation state of the numerical updating means (random number sequence changing circuit 555) is It is characterized by comprising operation clock abnormality determining means (random circuit abnormality inspection processing) for determining whether or not it has occurred.
According to this feature, it is possible to prevent fraud in which it is possible to determine whether or not to allow the generation of a prize while the numerical data is not normally updated by the numerical value updating means, that is, while the numerical data is fixed.

本発明が適用された実施例のスロットマシンの正面図である。It is a front view of the slot machine of the Example to which this invention was applied. スロットマシンの内部構造図である。It is an internal structure figure of a slot machine. リールの図柄配列を示す図である。It is a figure which shows the symbol arrangement | sequence of a reel. スロットマシンの構成を示すブロック図である。It is a block diagram which shows the structure of a slot machine. メイン制御部の構成を示すブロック図である。It is a block diagram which shows the structure of a main control part. メイン制御部におけるアドレスマップの一例を示す図である。It is a figure which shows an example of the address map in a main control part. プログラム管理エリア及び内蔵レジスタの主要部分を例示する図である。It is a figure which illustrates the main part of a program management area and a built-in register. ヘッダ及び機能設定における設定内容の一例を示す図である。It is a figure which shows an example of the setting content in a header and function setting. 第1乱数初期設定、第2乱数初期設定及び割込み初期設定における設定内容の一例を示す図である。It is a figure which shows an example of the setting content in 1st random number initial setting, 2nd random number initial setting, and interruption initial setting. セキュリティ時間設定における設定内容の一例を示す図である。It is a figure which shows an example of the setting content in security time setting. 内部情報レジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of an internal information register. 乱数回路の構成例を示すブロック図である。It is a block diagram which shows the structural example of a random number circuit. 乱数列変更レジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of a random number sequence change register. 乱数列変更回路による乱数更新規則の変更動作を示す説明図である。It is explanatory drawing which shows the change operation | movement of the random number update rule by a random number sequence change circuit. 乱数列変更回路による乱数更新規則の変更動作を示す説明図である。It is explanatory drawing which shows the change operation | movement of the random number update rule by a random number sequence change circuit. 乱数値取込レジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of a random value acquisition register. 乱数ラッチ選択レジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of a random number latch selection register. 乱数値レジスタの構成例を示す図である。It is a figure which shows the structural example of a random value register. 乱数ラッチフラグレジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of a random number latch flag register. 乱数割込み制御レジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of a random number interrupt control register. 入力ポートレジスタの構成例等を示す図である。It is a figure which shows the structural example etc. of an input port register. 入賞として定められた役の構成及び遊技状態別の内部抽選の対象役を示す図である。It is a figure which shows the object combination of the internal lottery classified according to the structure of the winning combination determined by winning and a gaming state. メイン制御部が起動時に実行する起動処理(メイン)の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the starting process (main) which a main control part performs at the time of starting. メイン制御部が実行するセキュリティチェック処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the security check process which a main control part performs. メイン制御部が実行するセキュリティチェック処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the security check process which a main control part performs. メイン制御部が実行する乱数回路異常検査処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the random circuit abnormality inspection process which a main control part performs. メイン制御部がエラー発生時に実行するエラー処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the error process which a main control part performs when an error generate | occur | produces. メイン制御部が実行する設定変更処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the setting change process which a main control part performs. メイン制御部が設定変更処理後に実行するゲーム処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the game process which a main control part performs after a setting change process. メイン制御部が実行するBET処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the BET process which a main control part performs. メイン制御部が実行するBET処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the BET process which a main control part performs. メイン制御部が実行するBET処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the BET process which a main control part performs. メイン制御部が一定間隔毎に実行するタイマ割込処理(メイン)の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the timer interruption process (main) which a main control part performs for every fixed interval. メイン制御部が一定間隔毎に実行するタイマ割込処理(メイン)の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the timer interruption process (main) which a main control part performs for every fixed interval. メイン制御部がタイマ割込処理(メイン)において実行する乱数値読出処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the random value reading process which a main control part performs in a timer interruption process (main). メイン制御部がタイマ割込処理(メイン)において実行するスイッチ入力判定処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the switch input determination process which a main control part performs in a timer interruption process (main). メイン制御部が、電断検出回路から電圧低下信号の入力されることによって実行する電断割込処理(メイン)の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the interruption interruption process (main) performed when a main control part inputs a voltage drop signal from an interruption detection circuit. 乱数回路における動作を説明するためのタイミングチャートである。It is a timing chart for demonstrating operation | movement in a random number circuit. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register. スタートスイッチの検出状況を示すタイミングチャートである。It is a timing chart which shows the detection condition of a start switch. メイン制御部が、乱数をラッチする毎に実行する乱数値ラッチ割込処理の制御内容を示すフローチャートである。It is a flowchart which shows the control content of the random value latch interruption process performed every time a main control part latches a random number. スタートスイッチの操作と乱数値レジスタの関連を示すタイミングチャートである。It is a timing chart which shows the relationship between operation of a start switch, and a random value register.

本発明の実施例を以下に説明する。   Examples of the present invention will be described below.

本発明が適用されたスロットマシンの実施例1を図面を用いて説明すると、本実施例のスロットマシン1は、前面が開口する筐体1aと、この筐体1aの側端に回動自在に枢支された前面扉1bと、から構成されている。   Embodiment 1 of a slot machine to which the present invention is applied will be described with reference to the drawings. The slot machine 1 according to the present embodiment is rotatable to a housing 1a having an open front surface and a side end of the housing 1a. The front door 1b is pivotally supported.

本実施例のスロットマシン1の筐体1aの内部には、図2に示すように、外周に複数種の図柄が配列されたリール2L、2C、2R(以下、左リール、中リール、右リール)が水平方向に並設されており、図1に示すように、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が前面扉1bに設けられた透視窓3から見えるように配置されている。   Inside the casing 1a of the slot machine 1 of the present embodiment, as shown in FIG. 2, reels 2L, 2C and 2R (hereinafter referred to as a left reel, a middle reel and a right reel) in which a plurality of types of symbols are arranged on the outer periphery. ) Are juxtaposed in the horizontal direction, and as shown in FIG. 1, three consecutive symbols out of the symbols arranged on the reels 2L, 2C, 2R can be seen from the see-through window 3 provided on the front door 1b. Are arranged as follows.

リール2L、2C、2Rの外周部には、図3に示すように、それぞれ「黒7」、「網7(図中網掛け7)」、「白7」、「BAR」、「リプレイ」、「スイカ」、「黒チェリー」、「白チェリー」、「ベル」、「オレンジ」といった互いに識別可能な複数種類の図柄が所定の順序で、それぞれ21個ずつ描かれている。リール2L、2C、2Rの外周部に描かれた図柄は、透視窓3において各々上中下三段に表示される。   As shown in FIG. 3, on the outer periphery of the reels 2L, 2C, and 2R, “black 7”, “net 7 (shaded 7 in the figure)”, “white 7”, “BAR”, “replay”, A plurality of identifiable symbols such as “watermelon”, “black cherry”, “white cherry”, “bell”, and “orange” are drawn in a predetermined order, 21 pieces each. The symbols drawn on the outer peripheries of the reels 2L, 2C, and 2R are displayed in the upper, middle, and lower three stages in the see-through window 3, respectively.

各リール2L、2C、2Rは、各々対応して設けられリールモータ32L、32C、32R(図4参照)によって回転させることで、各リール2L、2C、2Rの図柄が透視窓3に連続的に変化しつつ表示されるとともに、各リール2L、2C、2Rの回転を停止させることで、透視窓3に3つの連続する図柄が表示結果として導出表示されるようになっている。   The reels 2L, 2C, and 2R are provided in correspondence with each other and rotated by reel motors 32L, 32C, and 32R (see FIG. 4), so that the symbols of the reels 2L, 2C, and 2R are continuously provided in the see-through window 3. In addition to being displayed while changing, by stopping the rotation of the reels 2L, 2C, and 2R, three consecutive symbols are derived and displayed on the fluoroscopic window 3 as display results.

リール2L、2C、2Rの内側には、リール2L、2C、2Rそれぞれに対して、基準位置を検出するリールセンサ33L、33C、33Rと、リール2L、2C、2Rを背面から照射するリールLED55と、が設けられている。また、リールLED55は、リール2L、2C、2Rの連続する3つの図柄に対応する12のLEDからなり、各図柄をそれぞれ独立して照射可能とされている。   Inside the reels 2L, 2C, and 2R are reel sensors 33L, 33C, and 33R that detect a reference position for each of the reels 2L, 2C, and 2R, and a reel LED 55 that irradiates the reels 2L, 2C, and 2R from the back side. , Is provided. The reel LED 55 includes 12 LEDs corresponding to three consecutive symbols of the reels 2L, 2C, and 2R, and can irradiate each symbol independently.

前面扉1bの各リール2L、2C、2Rの手前側(遊技者側)の位置には、液晶表示器51(図1参照)の表示領域51aが配置されている。液晶表示器51は、液晶素子に対して電圧が印加されていない状態で、透過性を有するノーマリーホワイトタイプの液晶パネルを有しており、表示領域51aの透視窓3に対応する透過領域51b及び透視窓3を介して遊技者側から各リール2L、2C、2Rが視認できるようになっている。また、表示領域51aの透過領域51bを除く領域の裏面には、背後から表示領域51aを照射するバックライト(図示略)が設けられているとともに、さらにその裏面には、内部を隠蔽する隠蔽部材(図示略)が設けられている。   A display area 51a of a liquid crystal display 51 (see FIG. 1) is disposed at a position on the front side (player side) of each reel 2L, 2C, 2R of the front door 1b. The liquid crystal display 51 has a normally white liquid crystal panel having transparency in a state where no voltage is applied to the liquid crystal element, and a transmissive region 51b corresponding to the see-through window 3 of the display region 51a. The reels 2L, 2C, and 2R can be visually recognized from the player side through the see-through window 3. Further, a backlight (not shown) for irradiating the display area 51a from behind is provided on the back surface of the display area 51a excluding the transmissive area 51b, and the back surface further has a concealing member for concealing the inside. (Not shown) is provided.

前面扉1bには、メダルを投入可能なメダル投入部4、メダルが払い出されるメダル払出口9、クレジット(遊技者所有の遊技用価値として記憶されているメダル数)を用いてメダル1枚分の賭数を設定する際に操作される1枚BETスイッチ5、クレジットを用いて、その範囲内において遊技状態に応じて定められた規定数の賭数のうち最大の賭数(本実施例では遊技状態がRB(BB)の場合には2、通常遊技状態では3)を設定する際に操作されるMAXBETスイッチ6、クレジットとして記憶されているメダル及び賭数の設定に用いたメダルを精算する(クレジット及び賭数の設定に用いた分のメダルを返却させる)際に操作される精算スイッチ10、ゲームを開始する際に操作されるスタートスイッチ7、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8R、が遊技者により操作可能にそれぞれ設けられている。   On the front door 1b, a medal insertion unit 4 into which medals can be inserted, a medal payout opening 9 from which medals are paid out, and credits (the number of medals stored as a game value owned by the player) are used for one medal. A single bet switch 5 that is operated when setting the bet number, and using a credit, the maximum bet number (a game in this embodiment) among a specified number of bets determined in accordance with the game state within the range. When the state is RB (BB), 2 in the normal gaming state, the MAXBET switch 6 that is operated when setting, the medal stored as credits and the medals used for setting the number of bets are settled ( A settlement switch 10 that is operated when the credits and the amount of medals used for setting the bet are returned), a start switch 7 that is operated when starting the game, reels 2L, 2C, 2 Stop switch 8L is operated to each stop of the rotation, 8C, 8R, but are provided operable by the player.

また、前面扉1bには、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器11、後述するBB中のメダルの獲得枚数やエラー発生時にその内容を示すエラーコード等が表示される遊技補助表示器12、入賞の発生により払い出されたメダル枚数が表示されるペイアウト表示器13が設けられている。   The front door 1b also displays a credit indicator 11 that displays the number of medals stored as credits, the number of medals acquired in BB, which will be described later, and an error code that indicates the contents when an error occurs. An auxiliary indicator 12 and a payout indicator 13 for displaying the number of medals paid out due to the occurrence of a prize are provided.

また、前面扉1bには、賭数が1設定されている旨を点灯により報知する1BETLED14、賭数が2設定されている旨を点灯により報知する2BETLED15、賭数が3設定されている旨を点灯により報知する3BETLED16、メダルの投入が可能な状態を点灯により報知する投入要求LED17、スタートスイッチ7の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効LED18、ウェイト(前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態)中である旨を点灯により報知するウェイト中LED19、後述するリプレイゲーム中である旨を点灯により報知するリプレイ中LED20が設けられている。   Further, on the front door 1b, 1BETLED 14 that notifies that the bet number is set to 1 by lighting, 2BETLED 15 that notifies that the bet number is set to 2, and 3 bets are set. 3BET LED 16 to notify when lit, insertion request LED 17 to notify that a medal can be inserted is lit, start valid LED 18 to notify that the game start operation by the operation of the start switch 7 is effective, wait (previous Waiting state LED 19 for informing that it is in the state of waiting for the start of reel rotation since a certain period of time has not elapsed since the start of the game, during replay informing that it is in the replay game described later An LED 20 is provided.

MAXBETスイッチ6の内部には、1枚BETスイッチ5及びMAXBETスイッチ6の操作による賭数の設定操作が有効である旨を点灯により報知するBETスイッチ有効LED21(図4参照)が設けられており、ストップスイッチ8L、8C、8Rの内部には、該当するストップスイッチ8L、8C、8Rによるリールの停止操作が有効である旨を点灯により報知する左、中、右停止有効LED22L、22C、22R(図4参照)がそれぞれ設けられている。   Inside the MAXBET switch 6, there is provided a BET switch valid LED 21 (see FIG. 4) for notifying that the setting operation of the betting number by operating the one-sheet BET switch 5 and the MAXBET switch 6 is effective. Inside the stop switches 8L, 8C, and 8R, left, middle, and right stop effective LEDs 22L, 22C, and 22R for informing that the reel stop operation by the corresponding stop switches 8L, 8C, and 8R is effective by lighting (FIG. 4).

前面扉1bの内側には、所定のキー操作により後述するエラー状態及び後述する打止状態を解除するためのリセット操作を検出するリセットスイッチ23、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器24、メダル投入部4から投入されたメダルの流路を、筐体1a内部に設けられた後述のホッパータンク34a(図2参照)側またはメダル払出口9側のいずれか一方に選択的に切り替えるための流路切替ソレノイド30、メダル投入部4から投入され、ホッパータンク34a側に流下したメダルを検出する投入メダルセンサ31を有するメダルセレクタ(図示略)、前面扉1bの開放状態を検出するドア開放検出スイッチ25(図4参照)が設けられている。   Inside the front door 1b, there is a reset switch 23 for detecting a reset operation for releasing an error state described later and a stop state described later by a predetermined key operation, while changing a set value and confirming a set value described later. A set value display 24 for displaying the set value at that time, and a flow path of medals inserted from the medal insertion unit 4 on the side of a hopper tank 34a (see FIG. 2) described later provided in the housing 1a or A medal selector having a insertion medal sensor 31 for detecting a medal that is inserted from the flow path switching solenoid 30 and the medal insertion unit 4 and selectively flows to the hopper tank 34a side to selectively switch to one of the medal payout exits 9 side. The door opening detection switch 25 (refer FIG. 4) which detects the open state of the front door 1b is provided.

筐体1a内部には、図2に示すように、前述したリール2L、2C、2R、リールモータ32L、32C、32R、各リール2L、2C、2Rのリール基準位置をそれぞれ検出可能なリールセンサ33L、33C、33R(図4参照)からなるリールユニット2、外部出力信号を出力するための外部出力基板1000、メダル投入部4から投入されたメダルを貯留するホッパータンク34a、ホッパータンク34aに貯留されたメダルをメダル払出口9より払い出すためのホッパーモータ34b、ホッパーモータ34bの駆動により払い出されたメダルを検出する払出センサ34cからなるホッパーユニット34、電源ボックス100が設けられている。   As shown in FIG. 2, a reel sensor 33L that can detect the reel reference positions of the reels 2L, 2C, and 2R, the reel motors 32L, 32C, and 32R, and the reels 2L, 2C, and 2R, as shown in FIG. , 33C, 33R (see FIG. 4), an external output board 1000 for outputting an external output signal, a hopper tank 34a for storing medals inserted from the medal insertion section 4, and a hopper tank 34a. A hopper unit 34 including a hopper motor 34b for paying out medals from the medal payout opening 9, a payout sensor 34c for detecting medals paid out by driving the hopper motor 34b, and a power supply box 100 are provided.

ホッパーユニット34の側部には、ホッパータンク34aから溢れたメダルが貯留されるオーバーフロータンク35が設けられている。オーバーフロータンク35の内部には、貯留された所定量のメダルを検出可能な高さに設けられた左右に離間する一対の導電部材からなる満タンセンサ35aが設けられており、導電部材がオーバーフロータンク35内に貯留されたメダルを介して接触することにより導電したときに内部に貯留されたメダル貯留量が所定量以上となったこと、すなわちオーバーフロータンクが満タン状態となったことを検出できるようになっている。   On the side of the hopper unit 34, an overflow tank 35 is provided for storing medals overflowing from the hopper tank 34a. Inside the overflow tank 35, a full sensor 35 a made up of a pair of electrically conductive members spaced apart from each other and provided at a height capable of detecting a predetermined amount of stored medals is provided. It is possible to detect that the medal storage amount stored in the inside when it is conductive by contacting through the medal stored in the inside exceeds a predetermined amount, that is, that the overflow tank is full. It has become.

電源ボックス100の前面には、後述のBB終了時に打止状態(リセット操作がなされるまでゲームの進行が規制される状態)に制御する打止機能の有効/無効を選択するための打止スイッチ36a、後述のBB終了時に自動精算処理(クレジットとして記憶されているメダルを遊技者の操作によらず精算(返却)する処理)に制御する自動精算機能の有効/無効を選択するための自動精算スイッチ36b、設定変更状態または設定確認状態に切り替えるための設定キースイッチ37、通常時においてはエラー状態や打止状態を解除するためのリセットスイッチとして機能し、設定変更状態においては後述する内部抽選の当選確率(出玉率)の設定値を変更するための設定スイッチとして機能するリセット/設定スイッチ38、電源をON/OFFする際に操作される電源スイッチ39が設けられている。   On the front surface of the power supply box 100 is a stop switch for selecting whether to enable / disable a stop function for controlling the stop state at the end of BB, which will be described later (a state in which the progress of the game is restricted until a reset operation is performed). 36a, automatic checkout for selecting whether the automatic checkout function is effective / invalid for controlling automatic checkout processing (processing for adjusting (returning) medals stored as credits regardless of the player's operation) at the end of BB described later A switch 36b, a setting key switch 37 for switching to a setting change state or a setting confirmation state, and functions as a reset switch for canceling an error state or a stop state in a normal state. A reset / setting switch 38 that functions as a setting switch for changing the setting value of the winning probability (race rate). Power switch 39 is operated when FF is provided.

本実施例のスロットマシン1においてゲームを行う場合には、まず、メダルをメダル投入部4から投入するか、或いはクレジットを使用して賭数を設定する。クレジットを使用するには1枚BETスイッチ5またはMAXBETスイッチ6を操作すれば良い。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインL1〜L5(図1参照)が有効となり、スタートスイッチ7の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。本実施例では、規定数の賭数として遊技状態がRB(BB)では2枚、通常遊技状態では3枚が定められている。尚、遊技状態に対応する規定数のうち最大数を超えてメダルが投入された場合には、その分はクレジットに加算される。   When a game is played in the slot machine 1 of the present embodiment, first, medals are inserted from the medal insertion unit 4 or a bet number is set using credits. In order to use credits, the single BET switch 5 or the MAXBET switch 6 may be operated. When a predetermined number of bets determined according to the gaming state are set, the pay lines L1 to L5 (see FIG. 1) become effective, and the operation of the start switch 7 is effective, that is, the game can be started. It becomes a state. In the present embodiment, as the specified number of bets, two are determined in the gaming state RB (BB) and three in the normal gaming state. In addition, when a medal is inserted exceeding the maximum number out of the prescribed number corresponding to the gaming state, the amount is added to the credit.

入賞ラインとは、各リール2L、2C、2Rの透視窓3に表示された図柄の組合せが入賞図柄の組合せであるかを判定するために設定されるラインである。本実施例では、図1に示すように、各リール2L、2C、2Rの中段に並んだ図柄に跨って設定された入賞ラインL1、各リール2L、2C、2Rの上段に並んだ図柄に跨って設定された入賞ラインL2、各リール2L、2C、2Rの下段に並んだ図柄に跨って設定された入賞ラインL3、リール2Lの上段、リール2Cの中段、リール2Rの下段、すなわち右下がりに並んだ図柄に跨って設定された入賞ラインL4、リール2Lの下段、リール2Cの中段、リール2Rの上段、すなわち右上がりに並んだ図柄に跨って設定された入賞ラインL5の5種類が入賞ラインとして定められている。   The winning line is a line that is set to determine whether a combination of symbols displayed on the perspective windows 3 of the reels 2L, 2C, and 2R is a winning symbol combination. In this embodiment, as shown in FIG. 1, the winning line L1 set across the symbols arranged in the middle of each reel 2L, 2C, 2R and the symbols arranged in the upper row of each reel 2L, 2C, 2R are straddled. The winning line L2, the winning line L3, the upper stage of the reel 2L, the middle stage of the reel 2C, the lower stage of the reel 2R, that is, the lower side of the reel 2R. There are five types of winning lines L4 set across the symbols arranged side by side, the winning line L4 set across the symbols, the lower row of the reel 2L, the middle row of the reel 2C, the upper row of the reel 2R, that is, the winning line L5 set across the symbols lined up to the right. It is defined as.

ゲームが開始可能な状態でスタートスイッチ7を操作すると、各リール2L、2C、2Rが回転し、各リール2L、2C、2Rの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8L、8C、8Rを操作すると、対応するリール2L、2C、2Rの回転が停止し、透視窓3に表示結果が導出表示される。   When the start switch 7 is operated in a state where the game can be started, the reels 2L, 2C, and 2R rotate, and the symbols of the reels 2L, 2C, and 2R continuously vary. When any one of the stop switches 8L, 8C, 8R is operated in this state, the rotation of the corresponding reels 2L, 2C, 2R is stopped, and the display result is derived and displayed on the fluoroscopic window 3.

そして全てのリール2L、2C、2Rが停止されることで1ゲームが終了し、有効化されたいずれかの入賞ラインL1〜L5上に予め定められた図柄の組合せ(以下、役とも呼ぶ)が各リール2L、2C、2Rの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた枚数のメダルが遊技者に対して付与され、クレジットに加算される。また、クレジットが上限数(本実施例では50)に達した場合には、メダルが直接メダル払出口9(図1参照)から払い出されるようになっている。尚、有効化された複数の入賞ライン上にメダルの払出を伴う図柄の組合せが揃った場合には、有効化された入賞ラインに揃った図柄の組合せそれぞれに対して定められた払出枚数を合計し、合計した枚数のメダルが遊技者に対して付与されることとなる。ただし、1ゲームで付与されるメダルの払出枚数には、上限(本実施例では15枚)が定められており、合計した払出枚数が上限を超える場合には、上限枚数のメダルが付与されることとなる。また、有効化されたいずれかの入賞ラインL1〜L5上に、遊技状態の移行を伴う図柄の組合せが各リール2L、2C、2Rの表示結果として停止した場合には図柄の組合せに応じた遊技状態に移行するようになっている。   When one of the reels 2L, 2C, 2R is stopped, one game is completed, and a predetermined symbol combination (hereinafter also referred to as a role) is set on any of the activated pay lines L1 to L5. When the reels 2L, 2C, and 2R are stopped as a display result, a winning occurs, and a predetermined number of medals are given to the player and added to the credit. When the credit reaches the upper limit (50 in this embodiment), medals are paid out directly from the medal payout opening 9 (see FIG. 1). If a combination of symbols with a medal payout is arranged on a plurality of activated pay lines, the total number of payouts determined for each of the symbol combinations arranged on the activated pay line is totaled. The total number of medals is awarded to the player. However, an upper limit (15 in this embodiment) is set for the number of medals to be awarded in one game, and when the total number of medals exceeds the upper limit, the upper limit number of medals is awarded. It will be. In addition, when a combination of symbols accompanying the transition of the gaming state is stopped as a display result of each reel 2L, 2C, 2R on any of the activated pay lines L1 to L5, a game corresponding to the combination of symbols Transition to the state.

図4は、スロットマシン1の構成を示すブロック図である。スロットマシン1には、図4に示すように、遊技制御基板40、演出制御基板90、電源基板101が設けられており、遊技制御基板40によって遊技状態が制御され、演出制御基板90によって遊技状態に応じた演出が制御され、電源基板101によってスロットマシン1を構成する電気部品の駆動電源が生成され、各部に供給される。   FIG. 4 is a block diagram showing a configuration of the slot machine 1. As shown in FIG. 4, the slot machine 1 is provided with a game control board 40, an effect control board 90, and a power supply board 101. The game state is controlled by the game control board 40, and the game state is controlled by the effect control board 90. The production according to the control is controlled, and the power supply board 101 generates the drive power for the electrical components constituting the slot machine 1 and supplies them to each part.

電源基板101には、外部からAC100Vの電源が供給されるとともに、このAC100Vの電源からスロットマシン1を構成する電気部品の駆動に必要な直流電圧が生成され、遊技制御基板40及び遊技制御基板40を介して接続された演出制御基板90に供給されるようになっている。   The power supply board 101 is supplied with AC100V power from the outside, and from this AC100V power supply, a DC voltage necessary for driving electrical components constituting the slot machine 1 is generated, and the game control board 40 and the game control board 40 are generated. It is supplied to the production control board 90 connected through the.

また、電源基板101には、前述したホッパーモータ34b、払出センサ34c、満タンセンサ35a、打止スイッチ36a、自動精算スイッチ36b、設定キースイッチ37、リセット/設定スイッチ38、電源スイッチ39が接続されている。   Further, the above-described hopper motor 34b, payout sensor 34c, full sensor 35a, stop switch 36a, automatic checkout switch 36b, setting key switch 37, reset / setting switch 38, and power switch 39 are connected to the power supply board 101. Yes.

遊技制御基板40には、前述した1枚BETスイッチ5、MAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R、精算スイッチ10、リセットスイッチ23、投入メダルセンサ31、ドア開放検出スイッチ25、リールセンサ33L、33C、33Rが接続されているとともに、電源基板101を介して前述した払出センサ34c、満タンセンサ35a、打止スイッチ36a、自動精算スイッチ36b、設定キースイッチ37、リセット/設定スイッチ38が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。   On the game control board 40, the one-sheet BET switch 5, the MAXBET switch 6, the start switch 7, the stop switches 8L, 8C, 8R, the settlement switch 10, the reset switch 23, the insertion medal sensor 31, the door opening detection switch 25, The reel sensors 33L, 33C, and 33R are connected, and the above-described payout sensor 34c, full sensor 35a, stop switch 36a, automatic settlement switch 36b, setting key switch 37, reset / setting switch 38 are connected via the power supply board 101. Are connected, and the detection signals of these connected switches are inputted.

また、遊技制御基板40には、前述したクレジット表示器11、遊技補助表示器12、ペイアウト表示器13、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED20、BETスイッチ有効LED21、左、中、右停止有効LED22L、22C、22R、設定値表示器24、流路切替ソレノイド30、リールモータ32L、32C、32Rが接続されているとともに、電源基板101を介して前述したホッパーモータ34bが接続されており、これら電気部品は、遊技制御基板40に搭載された後述のメイン制御部41の制御に基づいて駆動されるようになっている。   Further, the game control board 40 includes the credit display 11, the game auxiliary display 12, the payout display 13, 1 to 3 BET LEDs 14 to 16, the insertion request LED 17, the start valid LED 18, the waiting LED 19, the replaying LED 20, and the BET. The switch effective LED 21, left, middle, and right stop effective LEDs 22L, 22C, and 22R, the set value display 24, the flow path switching solenoid 30, and the reel motors 32L, 32C, and 32R are connected to each other, and are described above via the power supply board 101. The hopper motor 34b is connected, and these electric components are driven based on control of a main control unit 41 (described later) mounted on the game control board 40.

遊技制御基板40には、メイン制御部41、制御用クロック生成回路42、乱数用クロック生成回路43、スイッチ検出回路44、モータ駆動回路45、ソレノイド駆動回路46、LED駆動回路47、電断検出回路48、リセット回路49が搭載されている。 The game control board 40 includes a main control unit 41, a control clock generation circuit 42, a random number clock generation circuit 43, a switch detection circuit 44, a motor drive circuit 45, a solenoid drive circuit 46, an LED drive circuit 47, and a power interruption detection circuit. 48 and a reset circuit 49 are mounted.

メイン制御部41は、1チップマイクロコンピュータにて構成され、後述するROM506に記憶された制御プログラムを実行して、遊技の進行に関する処理を行うととともに、遊技制御基板40に搭載された制御回路の各部を直接的または間接的に制御する。   The main control unit 41 is configured by a one-chip microcomputer, executes a control program stored in a ROM 506, which will be described later, and performs processing related to the progress of the game, and also includes a control circuit mounted on the game control board 40. Control each part directly or indirectly.

制御用クロック生成回路42は、メイン制御部41の外部にて、所定周波数の発振信号となる制御用クロックCCLKを生成する。制御用クロック生成回路42により生成された制御用クロックCCLKは、例えば図5に示すようなメイン制御部41の制御用外部クロック端子EXCを介してクロック回路502に供給される。乱数用クロック生成回路43は、メイン制御部41の外部にて、制御用クロックCCLKの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックRCLKを生成する。乱数用クロック生成回路43により生成された乱数用クロックRCLKは、例えば図5に示すようなメイン制御部41の乱数用外部クロック端子ERCを介して乱数回路509に供給される。一例として、乱数用クロック生成回路43により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路42により生成される制御用クロックCCLKの発振周波数以下となるようにすれば良い。   The control clock generation circuit 42 generates a control clock CCLK serving as an oscillation signal having a predetermined frequency outside the main control unit 41. The control clock CCLK generated by the control clock generation circuit 42 is supplied to the clock circuit 502 via, for example, a control external clock terminal EXC of the main control unit 41 as shown in FIG. The random number clock generation circuit 43 generates a random number clock RCLK that is an oscillation signal having a predetermined frequency different from the oscillation frequency of the control clock CCLK, outside the main control unit 41. The random number clock RCLK generated by the random number clock generation circuit 43 is supplied to the random number circuit 509 via the random number external clock terminal ERC of the main control unit 41 as shown in FIG. 5, for example. As an example, the oscillation frequency of the random number clock RCLK generated by the random number clock generation circuit 43 may be set to be equal to or lower than the oscillation frequency of the control clock CCLK generated by the control clock generation circuit 42.

スイッチ検出回路44は、遊技制御基板40に直接または電源基板101を介して接続されたスイッチ類から入力された検出信号を取り込んでメイン制御部41に伝送する。モータ駆動回路45は、メイン制御部41から出力されたモータ駆動信号をリールモータ32L、32C、32Rに伝送する。ソレノイド駆動回路46は、メイン制御部41から出力されたソレノイド駆動信号を流路切替ソレノイド30に伝送する。LED駆動回路は、メイン制御部41から出力されたLED駆動信号を遊技制御基板40に接続された各種表示器やLEDに伝送する。電断検出回路48は、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をメイン制御部41に対して出力する。リセット回路49は、電源投入時または電源遮断時などの電源が不安定な状態においてメイン制御部41にリセット信号を与える。   The switch detection circuit 44 takes in detection signals input from switches connected directly to the game control board 40 or via the power supply board 101 and transmits them to the main control unit 41. The motor drive circuit 45 transmits the motor drive signal output from the main control unit 41 to the reel motors 32L, 32C, and 32R. The solenoid drive circuit 46 transmits the solenoid drive signal output from the main control unit 41 to the flow path switching solenoid 30. The LED drive circuit transmits the LED drive signal output from the main control unit 41 to various displays and LEDs connected to the game control board 40. The power interruption detection circuit 48 monitors the power supply voltage supplied to the slot machine 1 and outputs a voltage drop signal indicating that to the main control unit 41 when a voltage drop is detected. The reset circuit 49 gives a reset signal to the main control unit 41 in a state where the power supply is unstable, such as when the power is turned on or when the power is turned off.

図5は、遊技制御基板40に搭載されたメイン制御部41の構成例を示している。図5に示すメイン制御部41は、1チップマイクロコンピュータであり、外部バスインタフェース501と、クロック回路502と、固有情報記憶回路503と、リセット/割込コントローラ504と、CPU505と、ROM506と、RAM507と、CTC(カウンタ/タイマサーキット)508と、乱数回路509と、PIP(パラレルインプットポート)510と、シリアル通信回路511と、アドレスデコード回路512とを備えて構成される。   FIG. 5 shows a configuration example of the main control unit 41 mounted on the game control board 40. The main control unit 41 shown in FIG. 5 is a one-chip microcomputer, and includes an external bus interface 501, a clock circuit 502, a specific information storage circuit 503, a reset / interrupt controller 504, a CPU 505, a ROM 506, and a RAM 507. A CTC (counter / timer circuit) 508, a random number circuit 509, a PIP (parallel input port) 510, a serial communication circuit 511, and an address decoding circuit 512.

図6は、メイン制御部41におけるアドレスマップの一例を示している。図6に示すように、アドレス0000H〜アドレス1FFFHの領域は、ROM506に割り当てられ、ユーザプログラムエリアとプログラム管理エリアとを含んでいる。図7(A)は、ROM506におけるプログラム管理エリアの主要部分について、用途や内容の一例を示している。アドレス2000H〜アドレス20FFHの領域は、メイン制御部41の内蔵レジスタに割り当てられる内蔵レジスタエリアである。図7(B)は、内蔵レジスタエリアの主要部分について、用途や内容の一例を示している。アドレス7E00H〜アドレス7FFFHの領域は、RAM507に割り当てられたワークエリアであり、I/Oマップやメモリマップに割り付けることができる。アドレスFDD0H〜アドレスFDFBHの領域は、アドレスデコード回路512に割り当てられるXCSデコードエリアである。   FIG. 6 shows an example of an address map in the main control unit 41. As shown in FIG. 6, the area from address 0000H to address 1FFFH is allocated to the ROM 506 and includes a user program area and a program management area. FIG. 7A shows an example of the usage and contents of the main part of the program management area in the ROM 506. The area from address 2000H to address 20FFH is a built-in register area assigned to the built-in register of the main control unit 41. FIG. 7B shows an example of the usage and contents of the main part of the built-in register area. An area from address 7E00H to address 7FFFH is a work area assigned to the RAM 507, and can be assigned to an I / O map or a memory map. An area from address FDD0H to address FDFBH is an XCS decode area allocated to the address decode circuit 512.

プログラム管理エリアは、CPU505がユーザプログラムを実行するために必要な情報を格納する記憶領域である。図7(A)に示すように、プログラム管理エリアには、ヘッダKHDR、機能設定KFCS、第1乱数初期設定KRS1、第2乱数初期設定KRS2、割込初期設定KIIS、セキュリティ時間設定KSESなどが、含まれている。   The program management area is a storage area for storing information necessary for the CPU 505 to execute the user program. As shown in FIG. 7A, the program management area includes a header KHDR, a function setting KFCS, a first random number initial setting KRS1, a second random number initial setting KRS2, an interrupt initial setting KIIS, a security time setting KSES, include.

プログラム管理エリアに記憶されるヘッダKHDRは、メイン制御部41における内部データの読出設定を示す。図8(A)は、ヘッダKHDRにおける設定データと動作との対応関係を例示している。ここで、メイン制御部41では、ROM読出防止機能と、バス出力マスク機能とを設定可能である。ROM読出防止機能は、メイン制御部41が備えるROM506の記憶データについて、読出動作を許可又は禁止する機能であり、読出禁止に設定された状態では、ROM506の記憶データを読み出すことができない。バス出力マスク機能は、外部バスインタフェース501に接続された外部装置からメイン制御部41の内部データに対する読出要求があった場合に、外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることにより、外部装置から内部データの読み出しを不能にする機能である。図8(A)に示すように、ヘッダKHDRの設定データに対応して、ROM読出防止機能やバス出力マスク機能の動作組合せが異なるように設定される。図8(A)に示す設定データのうち、ROM読出が許可されるとともに、バス出力マスクが有効となる設定データは、バス出力マスク有効データともいう。また、ROM読出が禁止されるとともに、バス出力マスクが有効となる設定データ(全て「00H」)は、ROM読出禁止データともいう。ROM読出が許可されるとともに、バス出力マスクが無効となる設定データは、バス出力マスク無効データともいう。   A header KHDR stored in the program management area indicates reading setting of internal data in the main control unit 41. FIG. 8A illustrates the correspondence between setting data and operation in the header KHDR. Here, the main control unit 41 can set a ROM read prevention function and a bus output mask function. The ROM read prevention function is a function for permitting or prohibiting the read operation for the data stored in the ROM 506 provided in the main control unit 41. When the read prohibition is set, the data stored in the ROM 506 cannot be read. The bus output mask function is used for address bus output, data bus output, and control signal output in the external bus interface 501 when an external device connected to the external bus interface 501 makes a read request for internal data of the main control unit 41. This function disables reading of internal data from an external device by applying a mask. As shown in FIG. 8A, the operation combination of the ROM read prevention function and the bus output mask function is set differently in accordance with the setting data of the header KHDR. Of the setting data shown in FIG. 8A, the setting data for which ROM reading is permitted and the bus output mask is valid is also referred to as bus output mask valid data. Further, the setting data (all “00H”) in which ROM reading is prohibited and the bus output mask is valid is also referred to as ROM reading prohibiting data. The setting data for which ROM reading is permitted and the bus output mask becomes invalid is also referred to as bus output mask invalid data.

プログラム管理エリアに記憶される機能設定KFCSは、メイン制御部41におけるウォッチドッグタイマの動作設定や、各種機能兼用端子の使用設定を示す。図8(B)は、機能設定KFCSにおける設定内容の一例を示している。   The function setting KFCS stored in the program management area indicates the operation setting of the watchdog timer in the main control unit 41 and the use setting of various function shared terminals. FIG. 8B shows an example of setting contents in the function setting KFCS.

機能設定KFCSのビット番号[7−5]は、例えばリセット/割込コントローラ504における割込要因として設定可能なウォッチドッグタイマの動作許可/禁止や、許可した場合の周期を示している。機能設定KFCSのビット番号[4]は、メイン制御部41における所定の機能兼用端子(第1兼用端子)を、シリアル通信回路511が使用する第2チャネル送信端子TXBとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS13とするかを指定するTXB端子設定である。図8(B)に示す例において、機能設定KFCSのビット番号[4]におけるビット値が“0”であれば、第1兼用端子がシリアル通信回路511での第2チャネル送信に使用される第2チャネル送信端子TXBの設定となる。これに対して、そのビット値が“1”であれば、第1兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS13の設定となる。本実施例では、機能設定KFCSのビット番号[4]を“0”として、第1兼用端子を第2チャネル送信端子TXBに設定することにより、演出制御基板90との間でのシリアル通信を可能にする。   The bit number [7-5] of the function setting KFCS indicates, for example, permission / prohibition of the operation of the watchdog timer that can be set as an interrupt factor in the reset / interrupt controller 504, and the cycle when it is permitted. The bit number [4] of the function setting KFCS indicates that the predetermined function shared terminal (first shared terminal) in the main control unit 41 is the second channel transmission terminal TXB used by the serial communication circuit 511 or the address decoding circuit 512. Is a TXB terminal setting that designates whether to use the chip select output terminal XCS13. In the example shown in FIG. 8B, if the bit value in the bit number [4] of the function setting KFCS is “0”, the first shared terminal is used for the second channel transmission in the serial communication circuit 511. The setting is for the 2-channel transmission terminal TXB. On the other hand, if the bit value is “1”, the first dual-purpose terminal is set to the chip select output terminal XCS13 used in the address decode circuit 512. In this embodiment, the bit number [4] of the function setting KFCS is set to “0” and the first shared terminal is set to the second channel transmission terminal TXB, so that serial communication with the effect control board 90 is possible. To.

機能設定KFCSのビット番号[3]は、メイン制御部41における所定の機能兼用端子(第2兼用端子)を、シリアル通信回路511が使用する第1チャネル送信端子TXAとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS12とするかを示すTXA端子設定である。図8(B)に示す例において、機能設定KFCSのビット番号[3]におけるビット値が“0”であれば、第2兼用端子がシリアル通信回路511での第1チャネル送信に使用される第1チャネル送信端子TXAの設定となる。これに対して、そのビット値が“1”であれば、第2兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS12の設定となる。本実施例では、機能設定KFCSのビット番号[3]を“0”として、第2兼用端子を第1チャネル送信端子TXAに設定しているが、第1チャンネル受信は未使用とされている。   The bit number [3] of the function setting KFCS indicates that the predetermined function shared terminal (second shared terminal) in the main control unit 41 is the first channel transmission terminal TXA used by the serial communication circuit 511 or the address decoding circuit 512. Is a TXA terminal setting indicating whether the chip select output terminal XCS12 is used. In the example shown in FIG. 8B, if the bit value in the bit number [3] of the function setting KFCS is “0”, the second shared terminal is used for the first channel transmission in the serial communication circuit 511. 1 channel transmission terminal TXA is set. On the other hand, if the bit value is “1”, the second dual-purpose terminal is set to the chip select output terminal XCS12 used in the address decode circuit 512. In this embodiment, the bit number [3] of the function setting KFCS is set to “0” and the second shared terminal is set to the first channel transmission terminal TXA, but the first channel reception is not used.

機能設定KFCSのビット番号[2]は、メイン制御部41における所定の機能兼用端子(第3兼用端子)を、シリアル通信回路511が使用する第1チャネル受信端子RXAとするか、PIP510が使用する入力ポートP5とするかを示すRXA端子設定である。図8(B)に示す例において、機能設定KFCSのビット番号[2]におけるビット値が“0”であれば、第3兼用端子がシリアル通信回路511での第1チャネル受信に使用される第1チャネル受信端子RXAの設定となる。これに対して、そのビット値が“1”であれば、第3兼用端子がPIP510で使用される入力ポートP5の設定となる。本実施例では、機能設定KFCSのビット番号[2]を“0”として、第3兼用端子を第1チャネル受信端子RXAに設定しているが、第1チャンネル受信は未使用とされている。   For the bit number [2] of the function setting KFCS, a predetermined function shared terminal (third shared terminal) in the main control unit 41 is used as the first channel reception terminal RXA used by the serial communication circuit 511, or is used by the PIP 510. This is an RXA terminal setting indicating whether the input port is P5. In the example shown in FIG. 8B, if the bit value in the bit number [2] of the function setting KFCS is “0”, the third shared terminal is used for the first channel reception in the serial communication circuit 511. 1 channel receiving terminal RXA is set. On the other hand, if the bit value is “1”, the third shared terminal is set to the input port P5 used in the PIP 510. In this embodiment, the bit number [2] of the function setting KFCS is set to “0” and the third shared terminal is set to the first channel reception terminal RXA, but the first channel reception is not used.

機能設定KFCSのビット番号[1]は、メイン制御部41における所定の機能兼用端子(第4兼用端子)を、CPU505等に接続される外部ノンマスカブル割込端子XNMIとするか、PIP510が使用する入力ポートP4とするかを示すNMI接続設定である。図8(B)に示す例において、機能設定KFCSのビット番号[1]におけるビット値が“0”であれば、第4兼用端子がCPU505等に接続される外部ノンマスカブル割込端子XNMIの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第4兼用端子がPIP510で使用される入力ポートP4の設定となる(CPU非接続)。本実施例では、機能設定KFCSのビット番号[1]を“1”として、第4兼用端子をPIP510で使用される入力ポートP4に設定しているが、入力ポートP4は未使用とされている。   The bit number [1] of the function setting KFCS is an input used by the PIP 510, or a predetermined function shared terminal (fourth shared terminal) in the main control unit 41 is an external non-maskable interrupt terminal XNMI connected to the CPU 505 or the like. This is an NMI connection setting indicating whether to set the port P4. In the example shown in FIG. 8B, if the bit value [1] in the bit number [1] of the function setting KFCS is “0”, the setting of the external non-maskable interrupt terminal XNMI whose fourth shared terminal is connected to the CPU 505 and the like (CPU connection). On the other hand, if the bit value is “1”, the fourth shared terminal is set for the input port P4 used in the PIP 510 (CPU disconnected). In this embodiment, the bit number [1] of the function setting KFCS is set to “1” and the fourth shared terminal is set to the input port P4 used in the PIP 510, but the input port P4 is unused. .

機能設定KFCSのビット番号[0]は、メイン制御部41における所定の機能兼用端子(第5兼用端子)を、CPU505等に接続される外部マスカブル割込端子XINTとするか、PIP510が使用する入力ポートP3とするかを示すXINT接続設定である。図8(B)に示す例において、機能設定KFCSのビット番号[0]におけるビット値が“0”であれば、第5兼用端子がCPU505等に接続される外部マスカブル割込端子XINTの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第5兼用端子がPIP510で使用される入力ポートP3の設定となる(CPU非接続)。本実施例では、機能設定KFCSのビット番号[0]を“0”として、第4兼用端子をCPU505等に接続される外部マスカブル割込端子XINTに設定することにより、電断検出回路48からの電圧低下信号が入力される。   The bit number [0] of the function setting KFCS is an input used by the PIP 510, or the predetermined function shared terminal (fifth shared terminal) in the main control unit 41 is set to the external maskable interrupt terminal XINT connected to the CPU 505 or the like. This is an XINT connection setting indicating whether the port is P3. In the example shown in FIG. 8B, if the bit value in the bit number [0] of the function setting KFCS is “0”, the setting of the external maskable interrupt terminal XINT in which the fifth shared terminal is connected to the CPU 505 and the like (CPU connection). On the other hand, if the bit value is “1”, the fifth shared terminal is set for the input port P3 used in the PIP 510 (CPU disconnected). In this embodiment, the bit number [0] of the function setting KFCS is set to “0”, and the fourth shared terminal is set to the external maskable interrupt terminal XINT connected to the CPU 505 or the like, so that the power interruption detection circuit 48 A voltage drop signal is input.

プログラム管理エリアに記憶される第1乱数初期設定KRS1及び第2乱数初期設定KRS2は、乱数回路509の初期設定を示す。図9(A)は、第1乱数初期設定KRS1における設定内容の一例を示している。図9(B)は、第2乱数初期設定KRS2における設定内容の一例を示している。   The first random number initial setting KRS1 and the second random number initial setting KRS2 stored in the program management area indicate the initial setting of the random number circuit 509. FIG. 9A shows an example of the setting contents in the first random number initial setting KRS1. FIG. 9B shows an example of setting contents in the second random number initial setting KRS2.

第1乱数初期設定KRS1のビット番号[3]は、乱数回路509を使用するか否かを示す乱数回路使用設定である。図9(A)に示す例において、第1乱数初期設定KRS1のビット番号[3]におけるビット値が“0”であれば、乱数回路509を使用しない設定となる一方(未使用)、“1”であれば、乱数回路509を使用する設定となる(使用)。本実施例では、第1乱数初期設定KRS1のビット番号[3]を“1”として、乱数回路509を使用可能に設定する。   The bit number [3] of the first random number initial setting KRS1 is a random number circuit use setting indicating whether to use the random number circuit 509 or not. In the example shown in FIG. 9A, if the bit value in the bit number [3] of the first random number initial setting KRS1 is “0”, the random number circuit 509 is not used (unused), but “1”. "Is set to use the random number circuit 509 (use). In this embodiment, the random number circuit 509 is set to be usable by setting the bit number [3] of the first random number initial setting KRS1 to “1”.

第1乱数初期設定KRS1のビット番号[2]は、乱数回路509における乱数値となる数値データの更新に用いられる乱数更新クロックRGK(図12参照)を、内部システムクロックSCLKとするか、乱数用クロックRCLKの2分周とするかを示す乱数更新クロック設定である。図9(A)に示す例において、第1乱数初期設定KRS1のビット番号[2]におけるビット値が“0”であれば、内部システムクロックSCLKを乱数更新クロックRGKに用いる設定となる一方、“1”であれば、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定となる。本実施例では、第1乱数初期設定KRS1のビット番号[2]を“1”として、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定とする。   The bit number [2] of the first random number initial setting KRS1 uses the random number update clock RGK (see FIG. 12) used for updating the numerical data as the random number value in the random number circuit 509 as the internal system clock SCLK or for the random number This is a random number update clock setting indicating whether the clock RCLK is divided by two. In the example shown in FIG. 9A, if the bit value in the bit number [2] of the first random number initial setting KRS1 is “0”, the internal system clock SCLK is set to be used as the random number update clock RGK. If it is 1 ″, the random number clock RCLK is divided by two and used as the random number update clock RGK. In the present embodiment, the bit number [2] of the first random number initial setting KRS1 is set to “1”, and the random number clock RCLK is divided by two to be used as the random number update clock RGK.

第1乱数初期設定KRS1のビット番号[1−0]は、乱数回路509における乱数更新規則を変更するか否かや、変更する場合における変更方式を示す乱数更新規則設定である。図9(A)に示す例において、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が“00”であれば、乱数更新規則を変更しない設定となり、“01”であれば、2周目以降にて乱数更新規則をソフトウェアにより変更する設定となり、“10”であれば、2周目以降にて乱数更新規則を自動で変更する設定となる。   The bit number [1-0] of the first random number initial setting KRS1 is a random number update rule setting indicating whether or not to change the random number update rule in the random number circuit 509 and the change method in the case of the change. In the example shown in FIG. 9A, if the bit value in the bit number [1-0] of the first random number initial setting KRS1 is “00”, the random number update rule is not changed, and if it is “01”. The setting for changing the random number update rule by software is made after the second round, and if it is “10”, the random number update rule is automatically changed after the second round.

第2乱数初期設定KRS2のビット番号[3−2]は、固定のビット値“00”が設定される。尚、図9(B)における「00B」の“B”は2進数表示であることを示す。第2乱数初期設定KRS2のビット番号[1−0]は、乱数回路509における乱数値となる数値データでのスタート値に関する設定を示す。図9(B)に示す例において、第2乱数初期設定KRS2のビット番号[1]におけるビット値が“0”であれば、スタート値が所定のデフォルト値0001Hに設定される一方、“1”であるときには、メイン制御部41毎に付与された固有の識別情報であるIDナンバーに基づく値がスタート値に設定される。また、図9(B)に示す例では、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“0”であれば、システムリセット毎にスタート値を変更しない設定となる一方、“1”であるときには、システムリセット毎にスタート値を変更する設定となる。尚、スタート値をIDナンバーに基づく値に設定する場合には、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値をスタート値に用いるようにすれば良い。また、スタート値をシステムリセット毎に変更する場合には、例えばメイン制御部41に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時にメイン制御部41が備える所定の内蔵レジスタ(乱数スタート値用レジスタ)に格納する。そして、初期設定時に乱数スタート値用レジスタの格納値をそのまま用いること、或いは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、スタート値がランダムに決定されれば良い。フリーランカウンタは、遊技制御基板40におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであれば良い。或いは、フリーランカウンタは、RAM507におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされても良い。こうして、フリーランカウンタがパックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間はフリーランカウンタにおけるカウント値が保存されることになる。   The bit number [3-2] of the second random number initial setting KRS2 is set to a fixed bit value “00”. Note that “B” of “00B” in FIG. 9B indicates binary display. The bit number [1-0] of the second random number initial setting KRS2 indicates a setting relating to the start value in the numerical data serving as a random value in the random number circuit 509. In the example shown in FIG. 9B, if the bit value in the bit number [1] of the second random number initial setting KRS2 is “0”, the start value is set to a predetermined default value 0001H, while “1”. Is set to a value based on an ID number, which is unique identification information given to each main control unit 41. In the example shown in FIG. 9B, if the bit value in the bit number [0] of the second random number initial setting KRS2 is “0”, the start value is not changed every time the system is reset. When it is 1 ″, the start value is changed every time the system is reset. When the start value is set to a value based on the ID number, a part or all of the calculation for performing a predetermined scramble process on the ID number and the calculation such as addition, subtraction, multiplication, and division using the ID number are performed. It is only necessary to execute and use the calculated value as the start value. When the start value is changed at each system reset, for example, the count value of the free run counter built in the main control unit 41 is set to a predetermined internal register (random number start) provided in the main control unit 41 when the system reset occurs. Value register). Then, by using the stored value of the random number start value register as it is at the time of initial setting or by using the value obtained by substituting the stored value into a predetermined arithmetic function (for example, a hash function), the start value is It may be determined at random. The free-run counter only needs to be backed up using a backup power source common to the backup location on the game control board 40. Alternatively, the free-run counter may be backed up by a power source provided separately from a backup power source used for a backup area in the RAM 507 or the like. In this way, the free-run counter is backed up by the backup power supply, so that the count value in the free-run counter is stored for a predetermined period even when the power supply is stopped.

尚、乱数回路509にて乱数値となる数値データを生成するための回路が2系統(第1及び第2チャネル対応)設けられる場合には、図9(A)及び(B)に示す第1乱数初期設定KRS1のビット番号[3−0]と第2乱数初期設定KRS2のビット番号[3−0]とを、第1チャネルにおける初期設定を示すものとして使用する。その一方で、第1乱数初期設定KRS1のビット番号[7−4]や第2乱数初期設定KRS2のビット番号[7−4]を(図9(A)及び(B)では省略)、第2チャネルにおける初期設定を示すものとして使用すれば良い。   When two circuits (corresponding to the first and second channels) for generating numerical data to be random values in the random number circuit 509 are provided, the first shown in FIGS. 9A and 9B. The bit number [3-0] of the random number initial setting KRS1 and the bit number [3-0] of the second random number initial setting KRS2 are used to indicate the initial setting in the first channel. On the other hand, the bit number [7-4] of the first random number initial setting KRS1 and the bit number [7-4] of the second random number initial setting KRS2 (omitted in FIGS. 9A and 9B), the second What is necessary is just to use as a thing which shows the initial setting in a channel.

プログラム管理エリアに記憶される割込初期設定KIISは、メイン制御部41にて発生するマスカブル割込の取扱いに関する初期設定を示す。図9(C)は、割込初期設定KIISにおける設定内容の一例を示している。   The interrupt initial setting KIIS stored in the program management area indicates an initial setting related to handling of maskable interrupts generated in the main control unit 41. FIG. 9C shows an example of setting contents in the interrupt initial setting KIIS.

割込初期設定KIISのビット番号[7−4]では、割込ベクタの上位4ビットを設定する。割込初期設定KIISのビット番号[3−0]では、マスカブル割込要因の優先度の組合せを設定する。図9(C)に示す例において、割込初期設定KIISのビット番号[3−0]により「00H」〜「02H」及び「06H」のいずれかが指定されれば、CTC508からのマスカブル割込要因を最優先とする優先度の組合せが設定される。これに対して、「03H」及び「07H」のいずれかが指定されれば、乱数回路509からのマスカブル割込要因を最優先とする優先度の組合せが設定される。また、「04H」及び「05H」のいずれかが指定されれば、シリアル通信回路511からのマスカブル割込要因を最優先とする優先度の組合せが設定される。尚、同一回路からのマスカブル割込要因を最優先とする優先度の組合せでも、指定値が異なる場合には、最優先となるマスカブル割込要因の種類や第2順位以下における優先度の組合せなどが異なっている。   In the bit number [7-4] of the interrupt initial setting KIIS, the upper 4 bits of the interrupt vector are set. In the bit number [3-0] of the interrupt initial setting KIIS, a combination of priority levels of maskable interrupt factors is set. In the example shown in FIG. 9C, if any of “00H” to “02H” and “06H” is specified by the bit number [3-0] of the interrupt initial setting KIIS, the maskable interrupt from the CTC 508 A combination of priorities with the factor as the highest priority is set. On the other hand, if any one of “03H” and “07H” is designated, a combination of priorities that gives the highest priority to the maskable interrupt factor from the random number circuit 509 is set. If either “04H” or “05H” is designated, a combination of priorities with the highest priority given to the maskable interrupt factor from the serial communication circuit 511 is set. If the specified value is different even if the priority is a combination of priority with the maskable interrupt factor from the same circuit as the highest priority, the type of maskable interrupt factor with the highest priority and the priority combination in the second or lower order, etc. Is different.

プログラム管理エリアに記憶されるセキュリティ時間設定KSESは、乱数用クロックRCLKの周波数を監視する場合に異常を検知する周波数や、メイン制御部41の動作開始時などに移行するセキュリティモードの時間(セキュリティ時間)に関する設定を示す。ここで、メイン制御部41の動作モードがセキュリティモードであるときには、所定のセキュリティチェック処理が実行されて、ROM506の記憶内容が変更されたか否かが検査される。図10(A)は、セキュリティ時間設定KSESにおける設定内容の一例を示している。   The security time setting KSES stored in the program management area is the frequency at which an abnormality is detected when monitoring the frequency of the random number clock RCLK, the time of the security mode in which the main control unit 41 starts operation (security time). ). Here, when the operation mode of the main control unit 41 is the security mode, a predetermined security check process is executed to check whether or not the contents stored in the ROM 506 have been changed. FIG. 10A shows an example of setting contents in the security time setting KSES.

セキュリティ時間設定KSESのビット番号[7−6]は、乱数用クロックRCLKの周波数を監視する場合に異常が検出される周波数を示す乱数用クロック異常検出設定である。図10(B)は、セキュリティ時間設定KSESのビット番号[7−6]における設定内容の一例を示している。セキュリティ時間設定KSESのビット番号[7−6]は、内部システムクロックSCLKの周波数に基づき、乱数用クロックRCLKの周波数が異常と検知される基準値(判定値)を指定する。セキュリティ時間設定KSESのビット番号「5」は、固定のビット値“0”が設定される。   Bit number [7-6] of security time setting KSES is a random number clock abnormality detection setting indicating a frequency at which an abnormality is detected when the frequency of random number clock RCLK is monitored. FIG. 10B shows an example of setting contents in the bit number [7-6] of the security time setting KSES. The bit number [7-6] of the security time setting KSES specifies a reference value (determination value) at which the frequency of the random number clock RCLK is detected as abnormal based on the frequency of the internal system clock SCLK. The bit number “5” of the security time setting KSES is set to a fixed bit value “0”.

セキュリティ時間設定KSESのビット番号[4−3]は、セキュリティ時間をシステムリセット毎にランダムな時間分延長する場合の時間設定を示す。図10(C)は、セキュリティ時間設定KSESのビット番号[4−3]における設定内容の一例を示している。図10(C)に示す例において、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”であれば、ランダムな時間延長を行わない設定となる。これに対して、そのビット値が“01”であればショートモードの設定となり、“10”であればロングモードの設定となる。ここで、ショートモードやロングモードが指定された場合には、例えばメイン制御部41に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時にメイン制御部41が備える所定の内蔵レジスタ(可変セキュリティ時間用レジスタ)に格納する。そして、初期設定時に可変セキュリティ時間用レジスタの格納値をそのまま用いること、或いは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、セキュリティ時間を延長する際の延長時間がランダムに決定されれば良い。一例として、内部システムクロックSCLKの周波数が6.0MHzである場合には、ショートモードにおいて0〜680μs(マイクロ秒)の範囲で延長時間がランダムに決定され、ロングモードにおいて0〜348,160μsの範囲で延長時間がランダムに決定される。また、他の一例として、内部システムクロックSCLKの周波数が10.0MHzである場合には、ショートモードにおいて0〜408μsの範囲で延長時間がランダムに決定され、ロングモードにおいて0〜208,896μsの範囲で延長時間がランダムに決定される。尚、セキュリティ時間を延長する際の延長時間をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタは、乱数回路509にて生成される乱数のスタート値をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタと、同一のカウンタであっても良いし、別個に設けられたカウンタであっても良い。   The bit number [4-3] of the security time setting KSES indicates a time setting when the security time is extended by a random time every system reset. FIG. 10C shows an example of setting contents in the bit number [4-3] of the security time setting KSES. In the example shown in FIG. 10C, if the bit value in the bit number [4-3] of the security time setting KSES is “00”, the setting is not performed at random time extension. On the other hand, if the bit value is “01”, the short mode is set, and if the bit value is “10”, the long mode is set. Here, when the short mode or the long mode is designated, for example, the count value of the free run counter built in the main control unit 41 is changed to a predetermined built-in register (variable) included in the main control unit 41 when a system reset occurs. Store in the security time register. Then, the security time can be reduced by using the stored value of the variable security time register as it is at the initial setting or by using the value obtained by substituting the stored value into a predetermined arithmetic function (for example, a hash function). What is necessary is just to determine the extension time at the time of extending at random. As an example, when the frequency of the internal system clock SCLK is 6.0 MHz, the extension time is randomly determined in the range of 0 to 680 μs (microseconds) in the short mode, and in the range of 0 to 348, 160 μs in the long mode. The extension time is determined at random. As another example, when the frequency of the internal system clock SCLK is 10.0 MHz, the extension time is randomly determined in the range of 0 to 408 μs in the short mode, and in the range of 0 to 208,896 μs in the long mode. The extension time is determined at random. The free-run counter used for randomly determining the extension time for extending the security time for each system reset randomly determines the start value of the random number generated by the random number circuit 509 for each system reset. Therefore, the counter may be the same as the free-run counter used for this purpose, or may be a counter provided separately.

セキュリティ時間設定KSESのビット番号[2−0]は、セキュリティ時間を固定時間に加えて予め選択可能な複数の延長時間のいずれかとする場合の時間設定を示す。図10(D)は、セキュリティ時間設定KSESのビット番号[2−0]における設定内容の一例を示している。図10(D)に示す例において、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”であれば、固定時間に加える延長時間がなく延長しない設定となる。これに対して、そのビット値が“000”以外の値であれば、内部システムクロックSCLKの周期TSCLKを用いて定められる複数の延長時間のいずれかに設定される。この場合には、指定されたビット値に応じて、異なる延長時間の設定となる。一例として、内部システムクロックSCLKの周波数が6.0MHzである場合に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“001”であれば、固定時間に加えて約699.1ms(ミリ秒)の延長時間が設定される。また、他の一例として、内部システムクロックSCLKの周波数が10.0MHzである場合に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“001”であれば、固定時間に加えて約419.4msの延長時間が設定される。 Bit number [2-0] of security time setting KSES indicates time setting when the security time is set to one of a plurality of pre-selectable extended times in addition to the fixed time. FIG. 10D shows an example of setting contents in the bit number [2-0] of the security time setting KSES. In the example shown in FIG. 10D, if the bit value in the bit number [2-0] of the security time setting KSES is “000”, there is no extension time added to the fixed time, and no setting is made. On the other hand, if the bit value is a value other than “000”, it is set to one of a plurality of extension times determined using the cycle T SCLK of the internal system clock SCLK. In this case, a different extension time is set according to the designated bit value. As an example, if the bit value [2-0] of the security time setting KSES is “001” when the frequency of the internal system clock SCLK is 6.0 MHz, about 699.1 ms in addition to the fixed time. (Milliseconds) extension time is set. As another example, when the frequency of the internal system clock SCLK is 10.0 MHz and the bit value in the bit number [2-0] of the security time setting KSES is “001”, in addition to the fixed time An extension time of about 419.4 ms is set.

また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値によりショートモード又はロングモードを設定するとともに、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外とすることにより固定時間に加える延長時間を設定することもできる。この場合には、ビット番号[2−0]におけるビット値に対応した延長時間と、ビット番号[4−3]におけるビット値に基づいてランダムに決定された延長時間との双方が、固定時間に加算されて、メイン制御部41がセキュリティモードとなるセキュリティ時間が決定されることになる。   Further, the short mode or the long mode is set by the bit value [4-3] of the security time setting KSES, and the bit value in the bit number [2-0] of the security time setting KSES is set to other than “000”. Thus, it is possible to set an extension time to be added to the fixed time. In this case, both the extension time corresponding to the bit value in the bit number [2-0] and the extension time randomly determined based on the bit value in the bit number [4-3] are fixed times. By adding, the security time for the main control unit 41 to be in the security mode is determined.

図5に示すメイン制御部41が備える外部バスインタフェース501は、メイン制御部41を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインタフェースである。例えば、外部バスインタフェース501は、メイン制御部41に外付けされた外部メモリや外部入出力装置などに接続され、これらの外部装置との間でアドレス信号やデータ信号、各種の制御信号などを送受信するものであれば良い。この実施の形態において、外部バスインタフェース501には、内部リソースアクセス制御回路501Aが含まれている。   The external bus interface 501 provided in the main control unit 41 shown in FIG. 5 is an interface function between the external bus and the internal bus of the chip constituting the main control unit 41, a direction control function of the address bus, the data bus, and each control signal, etc. Is a bus interface. For example, the external bus interface 501 is connected to an external memory or an external input / output device externally attached to the main control unit 41, and transmits / receives address signals, data signals, various control signals, and the like to / from these external devices. Anything to do. In this embodiment, the external bus interface 501 includes an internal resource access control circuit 501A.

内部リソースアクセス制御回路501Aは、外部バスインタフェース501を介した外部装置からメイン制御部41の内部データに対するアクセスを制御して、例えばROM506に記憶されたゲーム制御用プログラムや固定データといった、内部データの不適切な外部読出を制限するための回路である。ここで、外部バスインタフェース501には、例えばインサーキットエミュレータ(ICE)といった回路解析装置が、外部装置として接続されることがある。   The internal resource access control circuit 501A controls access to internal data of the main control unit 41 from an external device via the external bus interface 501, and stores internal data such as a game control program and fixed data stored in the ROM 506, for example. This is a circuit for limiting inappropriate external reading. Here, a circuit analysis device such as an in-circuit emulator (ICE) may be connected to the external bus interface 501 as an external device.

一例として、ROM506のプログラム管理エリアに記憶されたヘッダKHDRの内容に応じて、ROM506における記憶データの読み出しを禁止するか許可するかを切り替えられるようにする。例えば、ヘッダKHDRがバス出力マスク無効データとなっている場合には、外部装置によるROM506の読み出しを可能にして、内部データの外部読出を許可する。これに対して、ヘッダKHDRがバス出力マスク有効データとなっている場合には、例えば外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることなどにより、外部装置からROM506の読み出しを不能にして、内部データの外部読出を禁止する。この場合、外部バスインタフェース501に接続された外部装置から内部データの読み出しが要求されたときには、予め定められた固定値を出力することで、外部装置からは内部データを読み出すことができないようにする。また、ヘッダKHDRがROM読出禁止データとなっている場合には、ROM506自体を読出不能として、ROM506における記憶データの読み出しを防止しても良い。そして、例えば製造段階のROMでは、ヘッダKHDRをROM読出禁止データとすることで、ROM自体を読出不能としておき、開発用ROMとするのであればバス出力マスク無効データをヘッダKHDRに書き込むことで、外部装置による内部データの検証を可能にする。これに対して、量産用ROMとするのであればバス出力マスク有効データをヘッダKHDRに書き込むことで、CPU505などによるメイン制御部41の内部におけるROM506の読み出しは可能とする一方で、外部装置によるROM506の読み出しはできないようにすれば良い。   As an example, according to the contents of the header KHDR stored in the program management area of the ROM 506, it is possible to switch between prohibiting or permitting reading of stored data in the ROM 506. For example, when the header KHDR is bus output mask invalid data, the ROM 506 can be read by an external device, and external reading of internal data is permitted. On the other hand, if the header KHDR is the bus output mask valid data, the ROM 506 can be read from the external device by masking the address bus output, data bus output and control signal output in the external bus interface 501, for example. Is disabled, and external reading of internal data is prohibited. In this case, when reading of internal data is requested from an external device connected to the external bus interface 501, a predetermined fixed value is output so that internal data cannot be read from the external device. . Further, when the header KHDR is ROM read prohibition data, the ROM 506 itself may not be read, and reading of stored data in the ROM 506 may be prevented. For example, in a ROM at the manufacturing stage, by making the header KHDR ROM read prohibition data, the ROM itself is made unreadable, and if it is a development ROM, bus output mask invalid data is written in the header KHDR, Allows verification of internal data by an external device. On the other hand, in the case of a mass production ROM, the bus output mask valid data is written in the header KHDR so that the CPU 505 and the like can read out the ROM 506 inside the main control unit 41 while the ROM 506 by an external device. It is only necessary to prevent reading of.

他の一例として、内部リソースアクセス制御回路501Aは、ROM506における記憶データの全部又は一部といった、メイン制御部41の内部データの読み出しが、外部バスインタフェース501に接続された外部装置から要求されたことを検出する。この読出要求を検出したときに、内部リソースアクセス制御回路501Aは、メイン制御部41の内部データの読み出しを許可するか否かの判定を行う。例えば、ROM506における記憶データの全部又は一部に暗号化処理が施されているものとする。この場合、内部リソースアクセス制御回路501Aは、外部装置からの読出要求がROM506に記憶された暗号化処理プログラムや鍵データ等に対する読出要求であれば、この読出要求を拒否して、メイン制御部41の内部データの読み出しを禁止する。外部バスインタフェース501では、ROM506の記憶データが出力される出力ポートと、内部バスとの間にスイッチ素子を設け、内部リソースアクセス制御回路501Aが内部データの読み出しを禁止した場合には、このスイッチ素子をオフ状態とするように制御すれば良い。このように、内部リソースアクセス制御回路501Aは、外部装置からの読出要求が所定の内部データ(例えばROM506の所定領域)の読み出しを要求するものであるか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしても良い。   As another example, the internal resource access control circuit 501A has requested that the internal data of the main control unit 41, such as all or part of the stored data in the ROM 506, be read from an external device connected to the external bus interface 501. Is detected. When detecting this read request, the internal resource access control circuit 501A determines whether or not to allow the main control unit 41 to read internal data. For example, it is assumed that all or part of the stored data in the ROM 506 has been encrypted. In this case, if the read request from the external device is a read request for an encryption processing program or key data stored in the ROM 506, the internal resource access control circuit 501A rejects the read request and sets the main control unit 41. Reading of internal data is prohibited. In the external bus interface 501, a switch element is provided between the output port from which data stored in the ROM 506 is output and the internal bus. When the internal resource access control circuit 501 A prohibits reading of the internal data, the switch element May be controlled to be in an off state. As described above, the internal resource access control circuit 501A reads the internal data depending on whether or not the read request from the external device requests reading of predetermined internal data (for example, a predetermined area of the ROM 506). You may make it determine whether it prohibits or permits.

或いは、内部リソースアクセス制御回路501Aは、内部データの読出要求を検出したときに、所定の認証コードが外部装置から入力されたか否かを判定しても良い。この場合には、例えば内部リソースアクセス制御回路501Aの内部或いはROM506の所定領域に、認証コードとなる所定のコードパターンが予め記憶されていれば良い。そして、外部装置から認証コードが入力されたときには、この認証コードを内部記憶された認証コードと比較して、一致すれば読出要求を受容して、メイン制御部41の内部データの読み出しを許可する。これに対して、外部装置から入力された認証コードが内部記憶された認証コードと一致しない場合には、読出要求を拒否して、メイン制御部41の内部データの読み出しを禁止する。このように、内部リソースアクセス制御回路501Aは、外部装置から入力された認証コードが内部記憶された認証コードと一致するか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしても良い。これにより、検査機関などが予め知得した正しい認証コードを用いて、メイン制御部41の内部データを損なうことなく読み出すことができ、内部データの正当性を適切に検査することなどが可能になる。   Alternatively, the internal resource access control circuit 501A may determine whether or not a predetermined authentication code has been input from an external device when detecting a read request for internal data. In this case, for example, a predetermined code pattern serving as an authentication code may be stored in advance in the internal resource access control circuit 501A or in a predetermined area of the ROM 506. When an authentication code is input from the external device, this authentication code is compared with the internally stored authentication code. If they match, a read request is accepted and the main control unit 41 is allowed to read internal data. . On the other hand, if the authentication code input from the external device does not match the authentication code stored internally, the read request is rejected and the internal control unit 41 is prohibited from reading the internal data. As described above, the internal resource access control circuit 501A determines whether to prohibit or permit reading of the internal data depending on whether or not the authentication code input from the external device matches the authentication code stored internally. You may make it do. As a result, it is possible to read out the internal data of the main control unit 41 using a correct authentication code obtained in advance by an inspection organization or the like, and to check the validity of the internal data appropriately. .

さらに他の一例として、内部リソースアクセス制御回路501Aに読出禁止フラグを設け、読出禁止フラグがオン状態であれば外部装置によるROM506の読み出しを禁止する。その一方で、読出禁止フラグがオフ状態であるときには、外部装置によるROM506の読み出しが許可される。ここで、読出禁止フラグは、初期状態ではオフ状態であるが、読出禁止フラグを一旦オン状態とした後には、読出禁止フラグをクリアしてオフ状態に復帰させることができないように構成されていれば良い。すなわち、読出禁止フラグはオフ状態からオン状態に不可逆的に変更することが可能とされている。例えば、内部リソースアクセス制御回路501Aには、読出禁止フラグをクリアしてオフ状態とする機能が設けられておらず、どのような命令によっても読出禁止フラグをクリアすることができないように設定されていれば良い。そして、内部リソースアクセス制御回路501Aは、外部装置からROM506における記憶データといったメイン制御部41の内部データの読み出しが要求されたときに、読出禁止フラグがオンであるか否かを判定する。このとき、読出禁止フラグがオンであれば、外部装置からの読出要求を拒否して、メイン制御部41の内部データの読み出しを禁止する。他方、読出禁止フラグがオフであれば、外部装置からの読出要求を受容して、メイン制御部41の内部データの読み出しを許可にする。このような構成であれば、ゲーム制御用のプログラムを作成してROM506に格納する提供者においては、読出禁止フラグがオフとなっている状態でデバッグの終了したプログラムをROM506から外部装置に読み込むことができる。そして、デバッグの作業が終了した後に出荷する際には、読出禁止フラグをオン状態にセットすることにより、それ以後はROM506の外部読出を制限することができ、スロットマシン1の使用者などによるROM506の読出を防止することができる。このように、内部リソースアクセス制御回路501Aは、読出禁止フラグといった内部フラグがオフであるかオンであるかに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしても良い。   As yet another example, a read prohibition flag is provided in the internal resource access control circuit 501A, and reading of the ROM 506 by an external device is prohibited if the read prohibition flag is on. On the other hand, when the reading prohibition flag is in the off state, reading of the ROM 506 by the external device is permitted. Here, the read prohibition flag is off in the initial state, but once the read prohibition flag is turned on, the read prohibition flag cannot be cleared and returned to the off state. It ’s fine. That is, the read prohibition flag can be irreversibly changed from the off state to the on state. For example, the internal resource access control circuit 501A does not have a function of clearing the read prohibition flag to turn it off, and is set so that the read prohibition flag cannot be cleared by any instruction. Just do it. Then, the internal resource access control circuit 501A determines whether or not the read prohibition flag is on when the external device requests to read the internal data of the main control unit 41 such as the data stored in the ROM 506. At this time, if the read prohibition flag is on, the read request from the external device is rejected and the main controller 41 is prohibited from reading the internal data. On the other hand, if the read prohibition flag is off, the read request from the external device is accepted and the main controller 41 is allowed to read the internal data. With such a configuration, a provider who creates a game control program and stores it in the ROM 506 reads the program that has been debugged from the ROM 506 into an external device while the read prohibition flag is off. Can do. Then, when shipping after the debugging work is completed, by setting the read prohibition flag to the ON state, external reading of the ROM 506 can be restricted thereafter, and the ROM 506 by the user of the slot machine 1 or the like can be restricted. Can be prevented from being read. As described above, the internal resource access control circuit 501A may determine whether to prohibit or permit reading of internal data depending on whether an internal flag such as a read prohibition flag is off or on. .

尚、読出禁止フラグを不可逆に設定するのではなく、オン状態からオフ状態に変更することも可能とする一方で、読出禁止フラグをオン状態からオフ状態に変更して内部データの読み出しが許可されるときには、ROM506の記憶データを消去(例えばフラッシュ消去など)することにより、ROM506の外部読出を制限するようにしても良い。   Note that the read prohibition flag is not set irreversibly but can be changed from the on state to the off state, while the read prohibition flag is changed from the on state to the off state to permit reading of internal data. In this case, the external reading of the ROM 506 may be restricted by erasing the data stored in the ROM 506 (for example, flash erasure).

メイン制御部41が備えるクロック回路502は、例えば制御用外部クロック端子EXCに入力される発振信号を2分周することなどにより、内部システムクロックSCLKを生成する回路である。本実施例では、制御用外部クロック端子EXCに制御用クロック生成回路42が生成した制御用クロックCCLKが入力される。クロック回路502により生成された内部システムクロックSCLKは、例えばCPU505といった、メイン制御部41において遊技の進行を制御する各種回路に供給される。また、内部システムクロックSCLKは、乱数回路509にも供給され、乱数用クロック生成回路43から供給される乱数用クロックRCLKの周波数を監視するために用いられる。さらに、内部システムクロックSCLKは、クロック回路502に接続されたシステムクロック出力端子CLKOから、メイン制御部41の外部へと出力されても良い。尚、内部システムクロックSCLKは、メイン制御部41の外部へは出力されないことが望ましい。このように、内部システムクロックSCLKの外部出力を制限することにより、メイン制御部41の内部回路(CPU505など)の動作周期を外部から特定することが困難になり、乱数値となる数値データをソフトウェアにより更新する場合に、乱数値の更新周期が外部から特定されてしまうことを防止できる。   The clock circuit 502 provided in the main control unit 41 is a circuit that generates the internal system clock SCLK by, for example, dividing the oscillation signal input to the control external clock terminal EXC by two. In this embodiment, the control clock CCLK generated by the control clock generation circuit 42 is input to the control external clock terminal EXC. The internal system clock SCLK generated by the clock circuit 502 is supplied to various circuits such as the CPU 505 that control the progress of the game in the main control unit 41. The internal system clock SCLK is also supplied to the random number circuit 509 and used to monitor the frequency of the random number clock RCLK supplied from the random number clock generation circuit 43. Further, the internal system clock SCLK may be output from the system clock output terminal CLKO connected to the clock circuit 502 to the outside of the main control unit 41. It is desirable that the internal system clock SCLK is not output to the outside of the main control unit 41. As described above, by limiting the external output of the internal system clock SCLK, it becomes difficult to specify the operation cycle of the internal circuit (such as the CPU 505) of the main control unit 41 from the outside. In the case of updating by this, it is possible to prevent the random number update cycle from being specified externally.

メイン制御部41が備える固有情報記憶回路503は、例えばメイン制御部41の内部情報となる複数種類の固有情報を記憶する回路である。一例として、固有情報記憶回路503は、ROMコード、チップ個別ナンバー、IDナンバーといった3種類の固有情報を記憶する。ROM506コードは、ROM506の所定領域における記憶データから生成される4バイトの数値であり、生成方法の異なる4つの数値が準備されれば良い。チップ個別ナンバーは、メイン制御部41の製造時に付与される4バイトの番号であり、メイン制御部41を構成するチップ毎に異なる数値を示している。IDナンバーは、メイン制御部41の製造時に付与される8バイトの番号であり、メイン制御部41を構成するチップ毎に異なる数値を示している。ここで、チップ個別ナンバーはユーザプログラムから読み取ることができる一方、IDナンバーはユーザプログラムから読み取ることができないように設定されていれば良い。尚、固有情報記憶回路503は、例えばROM506の所定領域を用いることなどにより、ROM506に含まれるようにしても良い。或いは、固有情報記憶回路503は、例えばCPU505の内蔵レジスタを用いることなどにより、CPU505に含まれるようにしても良い。   The unique information storage circuit 503 included in the main control unit 41 is a circuit that stores a plurality of types of unique information serving as internal information of the main control unit 41, for example. As an example, the unique information storage circuit 503 stores three types of unique information such as a ROM code, a chip individual number, and an ID number. The ROM 506 code is a 4-byte numerical value generated from stored data in a predetermined area of the ROM 506, and four numerical values with different generation methods may be prepared. The chip individual number is a 4-byte number assigned when the main control unit 41 is manufactured, and indicates a different numerical value for each chip constituting the main control unit 41. The ID number is an 8-byte number assigned when the main control unit 41 is manufactured, and indicates a different numerical value for each chip constituting the main control unit 41. Here, it is sufficient that the chip individual number can be read from the user program while the ID number cannot be read from the user program. The unique information storage circuit 503 may be included in the ROM 506 by using a predetermined area of the ROM 506, for example. Alternatively, the unique information storage circuit 503 may be included in the CPU 505 by using a built-in register of the CPU 505, for example.

メイン制御部41が備えるリセット/割込コントローラ504は、メイン制御部41の内部や外部にて発生する各種リセット、割込要求を制御するためのものである。リセット/割込コントローラ504が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子XSRSTに一定の期間にわたりローレベル信号が入力されたときに発生するリセットである。ユーザリセットは、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことや、指定エリア外走行禁止(IAT)が発生したことなど、所定の要因により発生するリセットである。   The reset / interrupt controller 504 provided in the main control unit 41 is for controlling various resets and interrupt requests generated inside or outside the main control unit 41. The reset controlled by the reset / interrupt controller 504 includes a system reset and a user reset. The system reset is a reset that occurs when a low level signal is input to the external system reset terminal XSRST for a certain period. The user reset is a reset that occurs due to a predetermined factor, such as a watchdog timer (WDT) time-out signal or a non-designated area travel prohibition (IAT).

リセット/割込コントローラ504が制御する割込には、ノンマスカブル割込NMIとマスカブル割込INTが含まれている。ノンマスカブル割込NMIは、CPU505の割込禁止状態でも無条件に受け付けられる割込であり、外部ノンマスカブル割込端子XNMI(入力ポートP4と兼用)に一定の期間にわたりローレベル信号が入力されたときに発生する割込である。マスカブル割込INTは、CPU505の設定命令により、割込要求の受け付けを許可/禁止できる割込であり、優先順位設定による多重割込の実行が可能である。マスカブル割込INTの要因としては、外部マスカブル割込端子XINT(入力ポートP3と兼用)に一定の期間にわたりローレベル信号が入力が入力されたこと、CTC508に含まれるタイマ回路にてタイムアウトが発生したこと、シリアル通信回路511にてデータ送信による割込要因が発生したこと、乱数回路509にて乱数値となる数値データの取込による割込要因が発生したことなど、複数種類の割込要因が予め定められていれば良い。   Interrupts controlled by the reset / interrupt controller 504 include a non-maskable interrupt NMI and a maskable interrupt INT. The non-maskable interrupt NMI is an interrupt that is unconditionally accepted even when the CPU 505 is in an interrupt-disabled state. When a low level signal is input to the external non-maskable interrupt terminal XNMI (also used as the input port P4) for a certain period of time. An interrupt that occurs. The maskable interrupt INT is an interrupt that can permit / prohibit acceptance of an interrupt request by a setting instruction of the CPU 505, and multiple interrupts can be executed by setting priority. The cause of maskable interrupt INT is that a low level signal is input to external maskable interrupt terminal XINT (also used as input port P3) for a certain period of time, and a timeout occurs in the timer circuit included in CTC 508. There are multiple types of interrupt factors, such as the occurrence of an interrupt factor due to data transmission in the serial communication circuit 511, and the occurrence of an interrupt factor due to the acquisition of numerical data as a random value in the random number circuit 509. What is necessary is just to be predetermined.

リセット/割込コントローラ504は、図7(B)に示すようなメイン制御部41が備える内蔵レジスタのうち、割込マスクレジスタIMR(アドレス2028H)、割込待ちモニタレジスタIRR(アドレス2029H)、割込中モニタレジスタISR(アドレス202AH)、内部情報レジスタCIF(アドレス208CH)などを用いて、割込の制御やリセットの管理を行う。割込マスクレジスタIMRは、互いに異なる複数の要因によるマスカブル割込INTのうち、使用するものと使用しないものとを設定するレジスタである。割込待ちモニタレジスタIRRは、割込初期設定KIISにより設定されたマスカブル割込要因のそれぞれについて、マスカブル割込要求信号の発生状態を確認するレジスタである。割込中モニタレジスタISRは、割込初期設定KIISにより設定されたマスカブル割込要因のそれぞれについて、マスカブル割込要求信号の処理状態を確認するレジスタである。内部情報レジスタCIFは、直前に発生したリセット要因を管理したり、乱数用クロックRCLKの周波数異常を記録したりするためのレジスタである。   The reset / interrupt controller 504 includes an interrupt mask register IMR (address 2028H), an interrupt wait monitor register IRR (address 2029H), among the built-in registers provided in the main control unit 41 as shown in FIG. Interrupt control and reset management are performed using the monitor monitor register ISR (address 202AH) and the internal information register CIF (address 208CH). The interrupt mask register IMR is a register that sets what is used and what is not used among maskable interrupts INT caused by a plurality of different factors. The interrupt wait monitor register IRR is a register for confirming the generation state of a maskable interrupt request signal for each maskable interrupt factor set by the interrupt initial setting KIIS. The interrupt monitor register ISR is a register for confirming the processing state of the maskable interrupt request signal for each maskable interrupt factor set by the interrupt initial setting KIIS. The internal information register CIF is a register for managing the reset factor generated immediately before and recording the frequency abnormality of the random number clock RCLK.

図11(A)は、内部情報レジスタCIFの構成例を示している。図11(B)は、内部情報レジスタCIFに格納される内部情報データの各ビットにおける設定内容の一例を示している。内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4は、乱数用クロックRCLKにおける周波数異常の有無を示す乱数用クロック異常指示である。図11(B)に示す例では、乱数用クロックRCLKの周波数異常が検知されないときに、内部情報データCIF4のビット値が“0”となる一方、周波数異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[2]に格納される内部情報データCIF2は、直前に発生したリセット要因がシステムリセットであるか否かを示すシステムリセット指示である。図11(B)に示す例では、直前のリセット要因がシステムリセットではないときに(システムリセット未発生)、内部情報データCIF2のビット値が“0”となる一方、システムリセットであるときには(システムリセット発生)、そのビット値が“1”となる。   FIG. 11A shows a configuration example of the internal information register CIF. FIG. 11B shows an example of setting contents in each bit of the internal information data stored in the internal information register CIF. The internal information data CIF4 stored in the bit number [4] of the internal information register CIF is a random number clock abnormality instruction indicating the presence or absence of a frequency abnormality in the random number clock RCLK. In the example shown in FIG. 11B, when the frequency abnormality of the random number clock RCLK is not detected, the bit value of the internal information data CIF4 is “0”, whereas when the frequency abnormality is detected, the bit value is “1”. The internal information data CIF2 stored in the bit number [2] of the internal information register CIF is a system reset instruction indicating whether or not the reset factor generated immediately before is a system reset. In the example shown in FIG. 11B, when the immediately preceding reset factor is not a system reset (system reset has not occurred), the bit value of the internal information data CIF2 is “0”, whereas when the system reset is a system reset (system reset) When the reset occurs), the bit value becomes “1”.

内部情報レジスタCIFのビット番号[1]に格納される内部情報データCIF1は、直前に発生したリセット要因がウォッチドッグタイマ(WDT)のタイムアウトによるユーザリセットであるか否かを示すWDTタイムアウト指示である。図11(B)に示す例では、直前のリセット要因がウォッチドッグタイマのタイムアウトによるユーザリセットではないときに(タイムアウト未発生)、内部情報データCIF1のビット値が“0”となる一方、ウォッチドッグタイマのタイムアウトによるユーザリセットであるときに(タイムアウト発生)、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[0]に格納される内部情報データCIF0は、直前に発生したリセット要因が指定エリア外走行禁止(IAT)によるユーザリセットであるか否かを示すIAT発生指示である。図11(B)に示す例では、直前のリセット要因が指定エリア外走行の発生によるユーザリセットではないときに(IAT発生なし)、内部情報データCIF0のビット値が“0”となる一方、指定エリア外走行の発生によるユーザリセットであるときに(IAT発生あり)、そのビット値が“1”となる。   The internal information data CIF1 stored in the bit number [1] of the internal information register CIF is a WDT timeout instruction indicating whether or not the reset factor generated immediately before is a user reset due to a watchdog timer (WDT) timeout. . In the example shown in FIG. 11B, when the immediately preceding reset factor is not a user reset due to a watchdog timer timeout (timeout has not occurred), the bit value of the internal information data CIF1 becomes “0”, while the watchdog When a user reset is caused by a timer timeout (timeout occurs), the bit value becomes “1”. The internal information data CIF0 stored in the bit number [0] of the internal information register CIF is an IAT generation instruction indicating whether or not the reset factor generated immediately before is a user reset due to prohibition of travel outside the designated area (IAT). . In the example shown in FIG. 11B, when the reset factor immediately before is not a user reset due to the occurrence of traveling outside the designated area (no IAT occurrence), the bit value of the internal information data CIF0 becomes “0”, while When the user reset is caused by the occurrence of out-of-area travel (the occurrence of IAT), the bit value becomes “1”.

メイン制御部41が備えるCPU505は、ROM506から読み出したプログラムを実行することにより、スロットマシン1におけるゲームの進行を制御するための処理などを実行する。このときには、CPU505がROM506から固定データを読み出す固定データ読出動作や、CPU505がRAM507に各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPU505がRAM507に一時記憶されている各種の変動データを読み出す変動データ読出動作、CPU505が外部バスインタフェース501やPIP510などを介してメイン制御部41の外部から各種信号の入力を受け付ける受信動作、CPU505が外部バスインタフェース501やシリアル通信回路511などを介してメイン制御部41の外部へと各種信号を出力する送信動作等も行われる。   The CPU 505 provided in the main control unit 41 executes processing for controlling the progress of the game in the slot machine 1 by executing the program read from the ROM 506. At this time, the CPU 505 reads out fixed data from the ROM 506, the CPU 505 writes various data to the RAM 507 and temporarily stores the data, and the CPU 505 stores various data temporarily stored in the RAM 507. The CPU 505 receives the input of various signals from the outside of the main control unit 41 via the external bus interface 501 or the PIP 510, and the CPU 505 receives the input of various signals via the external bus interface 501 or the serial communication circuit 511. A transmission operation for outputting various signals to the outside of the main control unit 41 is also performed.

このように、メイン制御部41では、CPU505がROM506に格納されているプログラムに従って制御を実行するので、以下、メイン制御部41(又はCPU505)が実行する(又は処理を行う)ということは、具体的には、CPU505がプログラムに従って制御を実行することである。このことは、遊技制御基板40以外の他の基板に搭載されているマイクロコンピュータについても同様である。   As described above, in the main control unit 41, the CPU 505 executes control according to the program stored in the ROM 506. Therefore, the main control unit 41 (or CPU 505) executes (or performs processing) below. Specifically, the CPU 505 executes control according to a program. The same applies to microcomputers mounted on boards other than the game control board 40.

メイン制御部41が備えるROM506には、ゲーム制御用のユーザプログラムや固定データ等が記憶されている。また、ROM506には、セキュリティチェックプログラム506Aが記憶されている。CPU505は、スロットマシン1の電源投入やシステムリセットの発生に応じてメイン制御部41がセキュリティモードに移行したときに、ROM506に記憶されたセキュリティチェックプログラム506Aを読み出し、ROM506の記憶内容が変更されたか否かを検査するセキュリティチェック処理を実行する。尚、セキュリティチェックプログラム506Aは、ROM506とは異なる内蔵メモリに記憶されても良い。また、セキュリティチェックプログラム506Aは、例えば外部バスインタフェース501を介してメイン制御部41に外付けされた外部メモリの記憶内容を検査するセキュリティチェック処理に対応したものであっても良い。   A ROM 506 provided in the main control unit 41 stores a user program for game control, fixed data, and the like. The ROM 506 stores a security check program 506A. The CPU 505 reads the security check program 506A stored in the ROM 506 when the main control unit 41 shifts to the security mode in response to the power-on of the slot machine 1 or the occurrence of a system reset, and whether the storage content of the ROM 506 has been changed. Execute security check processing to check whether or not. The security check program 506A may be stored in a built-in memory different from the ROM 506. Further, the security check program 506A may correspond to a security check process for inspecting the storage content of the external memory externally attached to the main control unit 41 via the external bus interface 501, for example.

メイン制御部41が備えるRAM507は、ゲーム制御用のワークエリアを提供する。ここで、RAM507の少なくとも一部は、バックアップ電源によってバックアップされているバックアップRAMであれば良い。すなわち、スロットマシンへの電力供給が停止しても、所定期間はRAM507の少なくとも一部の内容が保存される。尚、本実施例では、RAM507の全ての領域がバックアップRAMとされており、スロットマシンへの電力供給が停止しても、所定期間はRAM507の全ての内容が保存される。   A RAM 507 provided in the main control unit 41 provides a work area for game control. Here, at least a part of the RAM 507 may be a backup RAM backed up by a backup power source. That is, even if the power supply to the slot machine is stopped, at least part of the contents of the RAM 507 is stored for a predetermined period. In this embodiment, all areas of the RAM 507 are backup RAMs, and all contents of the RAM 507 are saved for a predetermined period even when power supply to the slot machine is stopped.

メイン制御部41が備えるCTC508は、例えば8ビットのプログラマブルタイマを3チャネル(PTC0−PTC2)内蔵して構成され、リアルタイム割込の発生や時間計測を可能とするタイマ回路を含んでいる。各プログラマブルタイマPTC0−PTC2は、内部システムクロックSCLKに基づいて生成されたカウントクロックの信号変化(例えばハイレベルからローレベルへと変化する立ち下がりタイミング)などに応じて、タイマ値が更新されるものであれば良い。また、CTC508は、例えば8ビットのプログラマブルカウンタを4チャネル(PCC0−PCC3)内蔵しても良い。各プログラマブルカウンタPCC0−PCC3は、内部システムクロックSCLKの信号変化、或いは、プログラマブルカウンタPCC0−PCC3のいずれかにおけるタイムアウトの発生などに応じて、カウント値が更新されるものであれば良い。CTC508は、セキュリティ時間を延長する際の延長時間(可変設定時間)をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタや、乱数回路509にて生成される乱数のスタート値をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタなどを、含んでも良い。或いは、これらのフリーランカウンタは、例えばRAM507のバックアップ領域といった、CTC508とは異なるメイン制御部41の内部回路に含まれても良い。   The CTC 508 provided in the main control unit 41 includes, for example, an 8-bit programmable timer built in 3 channels (PTC0 to PTC2), and includes a timer circuit capable of generating a real-time interrupt and measuring time. Each programmable timer PTC0-PTC2 has a timer value that is updated in response to a change in the count clock signal generated based on the internal system clock SCLK (for example, a falling timing that changes from a high level to a low level). If it is good. In addition, the CTC 508 may incorporate, for example, an 8-bit programmable counter with 4 channels (PCC0 to PCC3). Each of the programmable counters PCC0 to PCC3 is only required to have its count value updated in response to a signal change of the internal system clock SCLK or occurrence of a timeout in any of the programmable counters PCC0 to PCC3. The CTC 508 resets the start time of the random number generated by the free run counter used for randomly determining the extension time (variable setting time) for extending the security time for each system reset or the random number circuit 509. A free-run counter or the like that is used to randomly determine each time may be included. Alternatively, these free-run counters may be included in an internal circuit of the main control unit 41 different from the CTC 508 such as a backup area of the RAM 507, for example.

メイン制御部41が備える乱数回路509は、例えば16ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。本実施例では、遊技制御基板40の側において、後述する内部抽選用の乱数値を示す数値データがカウント可能に制御される。尚、遊技効果を高めるために、これら以外の乱数値が用いられても良い。CPU505は、乱数回路509から抽出した数値データに基づき、乱数回路509とは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工或いは更新することで、内部抽選用の乱数値を示す数値データをカウントするようにしても良い。以下では、内部抽選用の乱数値を示す数値データが、ハードウェアとなる乱数回路509からCPU505により抽出された数値データをソフトウェアにより加工しないものとする。尚、乱数回路509は、メイン制御部41に内蔵されるものであっても良いし、メイン制御部41とは異なる乱数回路チップとして、メイン制御部41に外付けされるものであっても良い。   A random number circuit 509 included in the main control unit 41 is a circuit that generates numerical data that is a random value having a predetermined update range, such as a 16-bit random number. In the present embodiment, on the game control board 40 side, numerical data indicating a random value for internal lottery to be described later is controlled to be countable. In addition, in order to improve a game effect, random numbers other than these may be used. The CPU 505 uses a random counter different from the random number circuit 509 based on the numerical data extracted from the random number circuit 509 to process or update various numerical data by software, thereby indicating numerical data indicating a random value for internal lottery. May be counted. In the following, it is assumed that numerical data indicating random numbers for internal lottery is not processed by software from numerical data extracted by the CPU 505 from the random number circuit 509 serving as hardware. The random number circuit 509 may be incorporated in the main control unit 41 or may be externally attached to the main control unit 41 as a random number circuit chip different from the main control unit 41. .

内部抽選用の乱数値は、複数種類の入賞について発生を許容するか否かを判定するために用いられる値であり、本実施例では、「0」〜「65535」の範囲の値をとる。   The random number for internal lottery is a value used to determine whether or not to allow a plurality of types of winnings, and takes a value in the range of “0” to “65535” in this embodiment.

図12は、乱数回路509の一構成例を示すブロック図である。乱数回路509は、図12に示すように、周波数監視回路551、クロック用フリップフロップ552、乱数生成回路553、スタート値設定回路554、乱数列変更回路555、乱数列変更設定回路556、ラッチ用フリップフロップ557A、557B、乱数ラッチセレクタ558A、558B、乱数値レジスタ559A、559Bを備えて構成される。尚、乱数値レジスタ559Aと乱数値レジスタ559Bはそれぞれ、図7(B)に示すようなメイン制御部41の内蔵レジスタに含まれる乱数値レジスタR1D(アドレス2038H−2039H)と乱数値レジスタR2D(アドレス203AH−203BH)に対応している。尚、本実施例では、取得する乱数が内部抽選用の乱数値のみであり、ラッチ用フリップフロップ557A、557B、乱数ラッチセレクタ558A、558B、乱数値レジスタ559A、559Bのうちラッチ用フリップフロップ557B、乱数ラッチセレクタ558B、乱数値レジスタ559Bは未使用とされている。   FIG. 12 is a block diagram illustrating a configuration example of the random number circuit 509. As shown in FIG. 12, the random number circuit 509 includes a frequency monitoring circuit 551, a clock flip-flop 552, a random number generation circuit 553, a start value setting circuit 554, a random number sequence change circuit 555, a random number sequence change setting circuit 556, and a latch flip-flop. 557A, 557B, random number latch selectors 558A, 558B, and random number value registers 559A, 559B. Note that the random value register 559A and the random value register 559B are respectively a random value register R1D (address 2038H-2039H) and a random value register R2D (address) included in the built-in register of the main control unit 41 as shown in FIG. 203AH-203BH). In this embodiment, the random numbers to be acquired are only random numbers for internal lottery, and among the latch flip-flops 557A, 557B, the random number latch selectors 558A, 558B, and the random number registers 559A, 559B, the latch flip-flop 557B, The random number latch selector 558B and the random number value register 559B are unused.

周波数監視回路551は、乱数用クロック生成回路43により生成された乱数用クロックRCLKの周波数を監視して、その異常発生を検知するための回路である。周波数監視回路551は、例えば乱数用外部クロック端子ERCに入力される発振信号を監視して、内部システムクロックSCLKに基づきセキュリティ時間設定KSESのビット番号[7−6]における設定内容(図10(B)参照)に応じた周波数異常を検知したときに、内部情報レジスタCIFのビット番号[4]を“1”にセットする。本実施例では、乱数用外部クロック端子ERCに乱数用クロック生成回路43が生成した乱数用クロックRCLKが入力される。   The frequency monitoring circuit 551 is a circuit for monitoring the frequency of the random number clock RCLK generated by the random number clock generating circuit 43 and detecting the occurrence of an abnormality. For example, the frequency monitoring circuit 551 monitors an oscillation signal input to the random number external clock terminal ERC, and sets the contents of the bit number [7-6] of the security time setting KSES based on the internal system clock SCLK (FIG. 10B When the frequency abnormality according to the reference) is detected, the bit number [4] of the internal information register CIF is set to “1”. In this embodiment, the random number clock RCLK generated by the random number clock generation circuit 43 is input to the random number external clock terminal ERC.

クロック用フリップフロップ552は、例えばD型フリップフロップなどを用いて構成され、乱数用外部クロック端子ERCからの乱数用クロックRCLKがクロック端子CKに入力される。また、クロック用フリップフロップ552では、逆相出力端子(反転出力端子)QバーがD入力端子に接続されている。そして、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKを出力する一方で、逆相出力端子(反転出力端子)Qバーからラッチ用クロックRC0を出力する。この場合、クロック用フリップフロップ552は、クロック端子CKに入力される乱数用クロックRCLKにおける信号状態が所定の変化をしたときに、正相出力端子(非反転出力端子)Q及び逆相出力端子(反転出力端子)Qバーからの出力信号における信号状態を変化させる。例えば、クロック用フリップフロップ552は、乱数用クロックRCLKの信号状態がローレベルからハイレベルへと変化する立ち上がりのタイミング、或いは、乱数用クロックRCLKの信号状態がハイレベルからローレベルへと変化する立ち下がりのタイミングのうち、いずれか一方のタイミングにて、D入力端子における入力信号を取り込む。このとき、正相出力端子(非反転出力端子)Qからは、D入力端子にて取り込まれた入力信号が反転されることなく出力される一方で、逆相出力端子(反転出力端子)Qバーからは、D入力端子にて取り込まれた入力信号が反転されて出力される。こうして、クロック用フリップフロップ552の正相出力端子(非反転出力端子)Qからは乱数用クロックRCLKにおける発振周波数(例えば20MHz)の1/2となる発振周波数(例えば10MHz)を有する乱数更新クロックRGKが出力される一方、逆相出力端子(反転出力端子)Qバーからは乱数更新クロックRGKの逆相信号(反転信号)、すなわち乱数更新クロックRGKと同一周波数で乱数更新クロックRGKとは位相がπ(=180°)だけ異なるラッチ用クロックRC0が出力される。   The clock flip-flop 552 is configured using, for example, a D-type flip-flop, and the random number clock RCLK from the random number external clock terminal ERC is input to the clock terminal CK. Further, in the clock flip-flop 552, the negative phase output terminal (inverted output terminal) Q bar is connected to the D input terminal. The random number update clock RGK is output from the positive phase output terminal (non-inverted output terminal) Q, while the latch clock RC0 is output from the negative phase output terminal (inverted output terminal) Q bar. In this case, when the signal state of the random number clock RCLK input to the clock terminal CK changes a predetermined state, the clock flip-flop 552 has a positive phase output terminal (non-inverted output terminal) Q and a negative phase output terminal ( Inverted output terminal) Changes the signal state in the output signal from the Q bar. For example, the clock flip-flop 552 rises when the signal state of the random number clock RCLK changes from a low level to a high level, or rises when the signal state of the random number clock RCLK changes from a high level to a low level. The input signal at the D input terminal is captured at any one of the falling timings. At this time, from the positive phase output terminal (non-inverted output terminal) Q, the input signal captured at the D input terminal is output without being inverted, while the negative phase output terminal (inverted output terminal) Q bar is output. From the input signal captured by the D input terminal is inverted and output. Thus, the random number update clock RGK having an oscillation frequency (for example, 10 MHz) that is ½ of the oscillation frequency (for example, 20 MHz) of the random number clock RCLK from the positive phase output terminal (non-inverted output terminal) Q of the clock flip-flop 552. Is output from the negative phase output terminal (inverted output terminal) Q bar, that is, the reverse phase signal (inverted signal) of the random number update clock RGK, that is, the same frequency as the random number update clock RGK and the phase of the random number update clock RGK is π. A different latch clock RC0 is output by (= 180 °).

クロック用フリップフロップ552から出力された乱数更新クロックRGKは、乱数生成回路553のクロック端子に入力されて、乱数生成回路553におけるカウント値の歩進に用いられる。また、クロック用フリップフロップ552から出力されたラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、ラッチ用クロックRC1とラッチ用クロックRC2とは、互いに同一の発振周波数を有し、互いに共通の周期で信号状態が変化することになる。ここで、ラッチ用クロックRC1やラッチ用クロックRC2における信号状態の変化としては、例えばローレベルからハイレベルへと変化する立ち上がりや、ハイレベルからローレベルへと変化する立ち下がりなどがある。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力されて、ゲーム開始時ラッチ信号SL1の生成に用いられる乱数取得用クロックとなる。   The random number update clock RGK output from the clock flip-flop 552 is input to the clock terminal of the random number generation circuit 553 and used for incrementing the count value in the random number generation circuit 553. The latch clock RC0 output from the clock flip-flop 552 is branched into the latch clock RC1 and the latch clock RC2 at the branch point BR1. Therefore, the latch clock RC1 and the latch clock RC2 have the same oscillation frequency, and the signal state changes with a common cycle. Here, examples of changes in the signal state in the latch clock RC1 and the latch clock RC2 include a rising edge that changes from a low level to a high level and a falling edge that changes from a high level to a low level. The latch clock RC1 is input to the clock terminal CK of the latch flip-flop 557A and becomes a random number acquisition clock used to generate the latch signal SL1 at the start of the game.

乱数用クロックRCLKの発振周波数と、制御用クロック生成回路42によって生成される制御用クロックCCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。一例として、制御用クロックCCLKの発振周波数が11.0MHzである一方で、乱数用クロックRCLKの発振周波数は9.7MHzであれば良い。そのため、乱数更新クロックRGKやラッチ用クロックRC1、RC2はいずれも、CPU505に供給される制御用クロックCCLKとは異なる周期で信号状態が変化する発振信号となる。すなわち、クロック用フリップフロップ552は、乱数用クロック生成回路43によって生成された乱数用クロックRCLKに基づき、カウント値を更新するための乱数更新クロックRGKや、複数の乱数取得用クロックとなるラッチ用クロックRC1、RC2として、制御用クロックCCLKや内部システムクロックSCLK(制御用クロックCCLKを2分周したもの)とは異なる周期で信号状態が変化する発振信号を生成する。   The oscillation frequency of the random number clock RCLK and the oscillation frequency of the control clock CCLK generated by the control clock generation circuit 42 are different from each other, and one of the oscillation frequencies is the other oscillation frequency. It is never an integer multiple of. As an example, while the oscillation frequency of the control clock CCLK is 11.0 MHz, the oscillation frequency of the random number clock RCLK may be 9.7 MHz. Therefore, both the random number update clock RGK and the latch clocks RC1 and RC2 are oscillation signals whose signal states change at a different period from the control clock CCLK supplied to the CPU 505. That is, the clock flip-flop 552 is based on the random number clock RCLK generated by the random number clock generation circuit 43, and the random number update clock RGK for updating the count value, or the latch clock that is used as a plurality of random number acquisition clocks. As RC1 and RC2, oscillation signals whose signal states change with a period different from the control clock CCLK and the internal system clock SCLK (the control clock CCLK divided by two) are generated.

乱数生成回路553は、例えば16ビットのカウンタなどから構成され、クロック用フリップフロップ552から出力される乱数更新クロックRGKなどの入力に基づき、数値データを更新可能な所定の範囲において所定の初期値から所定の最終値まで循環的に更新する回路である。例えば乱数生成回路553は、所定のクロック端子への入力信号である乱数更新クロックRGKにおける立ち上がりエッジに応答して、「0」から「65535」までの範囲内で設定された初期値から「65535」まで1ずつ加算するように数値データをカウントアップして行く。そして、「65535」までカウントアップした後には、「0」から初期値よりも1小さい最終値となる数値まで1ずつ加算するようにカウントアップすることで、数値データを循環的に更新する。   The random number generation circuit 553 is composed of, for example, a 16-bit counter and the like, and based on an input such as a random number update clock RGK output from the clock flip-flop 552, a predetermined initial value within a predetermined range in which numerical data can be updated. It is a circuit that cyclically updates to a predetermined final value. For example, the random number generation circuit 553 responds to the rising edge in the random number update clock RGK that is an input signal to a predetermined clock terminal, and “65535” from the initial value set in the range from “0” to “65535”. The numerical data is counted up so that one is added at a time. Then, after counting up to “65535”, the numerical data is updated cyclically by counting up from “0” to a numerical value that becomes a final value that is 1 smaller than the initial value.

スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]におけるビット値(図9(B)参照)に応じて、乱数生成回路553により生成されるカウント値におけるスタート値を設定する。例えば、スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]が“00”であればスタート値をデフォルト値である「0000H」に設定し、“10”であればIDナンバーに基づく値に設定し、“01”であればシステムリセット毎に変更される値に設定する。本実施例では、第2乱数初期設定KRS2のビット番号[1−0]が“10”に設定されており、乱数生成回路553により生成されるカウント値におけるスタート値としてIDナンバーに基づく値が設定される。   The start value setting circuit 554 sets the start value in the count value generated by the random number generation circuit 553 in accordance with the bit value (see FIG. 9B) in the bit number [1-0] of the second random number initial setting KRS2. Set. For example, the start value setting circuit 554 sets the start value to the default value “0000H” if the bit number [1-0] of the second random number initial setting KRS2 is “00”, and if it is “10”. The value is set based on the ID number. If “01”, the value is changed every time the system is reset. In this embodiment, the bit number [1-0] of the second random number initial setting KRS2 is set to “10”, and a value based on the ID number is set as the start value in the count value generated by the random number generation circuit 553. Is done.

乱数列変更回路555は、乱数生成回路553により生成された数値データが一巡したときに、数値データの更新順である順列を所定の乱数更新規則に従った順列に変更可能とする回路である。例えば、乱数列変更回路555は、乱数生成回路553から出力される数値データにおけるビットの入れ替えや転置などのビットスクランブル処理を実行する。また、乱数列変更回路555は、例えばビットスクランブル処理に用いるビットスクランブル用キーやビットスクランブルテーブルを変更することなどにより、数値データの更新順である順列の変更を行うことができる。   The random number sequence change circuit 555 is a circuit that allows the permutation, which is the update order of the numerical data, to be changed to a permutation that conforms to a predetermined random number update rule when the numerical data generated by the random number generation circuit 553 makes a round. For example, the random number sequence change circuit 555 executes bit scramble processing such as bit replacement or transposition in numerical data output from the random number generation circuit 553. The random number sequence change circuit 555 can change the permutation, which is the update order of the numerical data, by changing the bit scramble key or the bit scramble table used for the bit scramble process, for example.

乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値(図9(A)参照)などに応じて、乱数列変更回路555における数値データの更新順を変更する設定を行うための回路である。例えば、乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“00”であれば2周目以降も乱数更新規則を変更しない設定とする一方、“01”であれば2周目以降はソフトウェアでの変更要求に応じて乱数更新規則を変更し、“10”であれば自動で乱数更新規則を変更する。本実施例では、第1乱数初期設定KRS1のビット番号[1−0]が“10”に設定されており、自動で乱数更新規則が変更される。   The random number sequence change setting circuit 556 determines the update order of numerical data in the random number sequence change circuit 555 according to the bit value (see FIG. 9A) in the bit number [1-0] of the first random number initial setting KRS1. It is a circuit for performing the setting to change. For example, if the bit number [1-0] of the first random number initial setting KRS1 is “00”, the random number sequence change setting circuit 556 sets the random number update rule not to change after the second round, while “01” If so, the random number update rule is changed in response to a change request by software in the second and subsequent rounds, and if “10”, the random number update rule is automatically changed. In the present embodiment, the bit number [1-0] of the first random number initial setting KRS1 is set to “10”, and the random number update rule is automatically changed.

乱数列変更回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応してソフトウェアによる乱数更新規則の変更を行う場合に、図7(B)に示すようなメイン制御部41が備える内蔵レジスタのうち、乱数列変更レジスタRDSC(アドレス2034H)を用いて、乱数更新規則の変更を制御する。図13(A)は、乱数列変更レジスタRDSCの構成例を示している。図13(B)は、乱数列変更レジスタRDSCに格納される乱数列変更要求データの各ビットにおける設定内容の一例を示している。乱数列変更レジスタRDSCのビット番号[0]に格納される乱数列変更要求データRDSC0は、乱数更新規則をソフトウェアにより変更する場合に、乱数列の変更要求の有無を示している。図13(B)に示す例では、ソフトウェアにより乱数列の変更要求がないときに、乱数列変更要求データRDSC0のビット値が“0”となる一方、乱数列の変更要求があったときには、そのビット値が“1”となる。   When the random number update circuit 556 changes the random number update rule by software in response to the bit number [1-0] of the first random number initial setting KRS1 being “01”, FIG. Of the built-in registers included in the main control unit 41 as shown, the random number update rule RDSC (address 2034H) is used to control the change of the random number update rule. FIG. 13A shows a configuration example of the random number sequence change register RDSC. FIG. 13B shows an example of setting contents in each bit of random number sequence change request data stored in the random number sequence change register RDSC. The random number sequence change request data RDSC0 stored in the bit number [0] of the random number sequence change register RDSC indicates the presence / absence of a random number sequence change request when the random number update rule is changed by software. In the example shown in FIG. 13B, when the random number sequence change request is not made by software, the bit value of the random number sequence change request data RDSC0 is “0”. The bit value is “1”.

図14は、乱数更新規則をソフトウェアにより変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたときに、乱数列変更要求データRDSC0が“1”であることに応答して、乱数更新規則を変更する。図14に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。この後、CPU505がROM506に格納されたユーザプログラムを実行することによって、所定のタイミングで乱数列変更レジスタRDSCのビット番号[0]に“1”が書き込まれたものとする。   FIG. 14 shows an operation example when the random number update rule is changed by software. In this case, when the count value permutation RCN output from the random number generation circuit 553 is cyclically updated from a predetermined initial value to a predetermined final value, the response is that the random number sequence change request data RDSC0 is “1”. Then, change the random number update rule. In the operation example shown in FIG. 14, the random number sequence RSN output from the random number sequence change circuit 555 is “0 → 1 →... → 65535”. Thereafter, it is assumed that “1” is written to the bit number [0] of the random number sequence change register RDSC at a predetermined timing by the CPU 505 executing the user program stored in the ROM 506.

そして、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応して、乱数列変更設定回路556が乱数列変更要求データRDSC0を読み出し、そのビット値が“1”であることに応答して、乱数更新規則を変更するための設定を行う。このとき、乱数列変更設定回路556は、乱数生成回路553から出力されたカウント値順列RCNが所定の最終値に達したことに応じて、例えば予め用意された複数種類の乱数更新規則のいずれかを選択することなどにより、乱数更新規則を変更する。図14に示す動作例では、乱数列変更回路555が乱数生成回路553から出力されたカウント値順列RCNにおける最終値に対応する数値データ「65535」を出力した後、乱数列変更要求データRDSC0に応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「65535→65534→…→0」を出力する。乱数列変更レジスタRDSCは、乱数列変更設定回路556により乱数列変更要求データRDSC0が読み出されたときに初期化される。そのため、再び乱数列変更レジスタRDSCのビット番号[0]にビット値“1”が書き込まれるまでは、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。   In response to the bit number [1-0] of the first random number initial setting KRS1 being “01”, the random number sequence change setting circuit 556 reads the random number sequence change request data RDSC0 and the bit value is “1”. In response to "," a setting for changing the random number update rule is made. At this time, the random number sequence change setting circuit 556, according to the count value permutation RCN output from the random number generation circuit 553 reaching a predetermined final value, for example, any one of a plurality of types of random number update rules prepared in advance. The random number update rule is changed, for example, by selecting. In the operation example shown in FIG. 14, the random number sequence change circuit 555 outputs numerical data “65535” corresponding to the final value in the count value permutation RCN output from the random number generation circuit 553, and then responds to the random number sequence change request data RDSC0. Change the random number update rule. Thereafter, the random number sequence change circuit 555 outputs “65535 → 65534 →... → 0” as the random number sequence RSN according to the changed random number update rule. The random number sequence change register RDSC is initialized when the random number sequence change setting circuit 556 reads the random number sequence change request data RDSC0. Therefore, until the bit value “1” is written to the bit number [0] of the random number sequence change register RDSC again, the random number sequence RSN output from the random number sequence change circuit 555 is “65535 → 65534 →... → 0”. Become.

CPU505がROM506に格納されたユーザプログラムを実行することによって、乱数列変更レジスタRDSCのビット番号[0]に再びビット値“1”が書き込まれると、乱数更新規則が再度変更される。図14に示す動作例では、乱数列変更回路555が乱数列RSNにおける最終値に対応する数値データ「0」を出力したときに、乱数列変更要求データRDSC0としてビット値“1”が書き込まれたことに応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「0→2→…→65534→1→…→65535」を出力する。   When the CPU 505 executes the user program stored in the ROM 506 and the bit value “1” is written again to the bit number [0] of the random number sequence change register RDSC, the random number update rule is changed again. In the operation example shown in FIG. 14, when the random number sequence change circuit 555 outputs the numerical data “0” corresponding to the final value in the random number sequence RSN, the bit value “1” is written as the random number sequence change request data RDSC0. Change the random number update rule accordingly. Thereafter, the random number sequence changing circuit 555 outputs “0 → 2 →... → 65534 → 1 →... → 65535” as the random number sequence RSN according to the changed random number update rule.

図15は、乱数更新規則を自動で変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたことに応じて、乱数列変更設定回路556が自動的に乱数更新規則を変更する。図15に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。   FIG. 15 shows an operation example when the random number update rule is automatically changed. In this case, in response to the count value permutation RCN output from the random number generation circuit 553 being cyclically updated from a predetermined initial value to a predetermined final value, the random number sequence change setting circuit 556 automatically changes the random number update rule. To change. In the operation example shown in FIG. 15, the random number sequence RSN output from the random number sequence change circuit 555 first is “0 → 1 →... → 65535”.

そして、乱数変更回路555から出力された乱数列RSNが所定の最終値に達したときに、乱数列変更設定回路556は、予め用意された複数種類の更新規則のうちから予め定められた順序に従って更新規則を選択することにより、更新規則を変更するようにしても良い。或いは、乱数列変更設定回路556は、複数種類の更新規則のうちから任意の更新規則を選択することにより、更新規則を変更するようにしても良い。図15に示す動作例では、1回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。その後、2回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「0→2→…→65534→1→…→65535」となる。図15に示す動作例では、3回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「65534→0→…→32768」となる。4回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「16383→49151→…→49150」となる。5回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「4→3→…→465531」となる。   When the random number sequence RSN output from the random number change circuit 555 reaches a predetermined final value, the random number sequence change setting circuit 556 follows a predetermined order from among a plurality of types of update rules prepared in advance. The update rule may be changed by selecting the update rule. Alternatively, the random number sequence change setting circuit 556 may change the update rule by selecting an arbitrary update rule from among a plurality of types of update rules. In the operation example shown in FIG. 15, the random number sequence RSN output from the random number sequence change circuit 555 becomes “65535 → 65534 →. Thereafter, due to the second change in the random number update rule, the random number sequence RSN output from the random number sequence change circuit 555 becomes “0 → 2 →... → 65534 → 1 →. In the operation example illustrated in FIG. 15, the random number sequence RSN output from the random number sequence change circuit 555 is “65534 → 0 →... → 32768” due to the third change in the random number update rule. When the fourth random number update rule change is performed, the random number sequence RSN output from the random number sequence change circuit 555 becomes “16383 → 49151 →... → 49150”. When the fifth random number update rule change is performed, the random number sequence RSN output from the random number sequence change circuit 555 becomes “4 → 3 →... → 465553”.

ラッチ用フリップフロップ557Aは、例えばD型フリップフロップなどを用いて構成される。ラッチ用フリップフロップ557Aでは、D入力端子にPIP510が備える入力ポートP0からの配線が接続され、クロック端子CKにラッチ用クロックRC1を伝送する配線が接続されている。本実施例では、入力ポートP0にスタートスイッチ7からのゲーム開始信号SS1が入力される。ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち上がりエッジなどに応答して、ゲーム開始信号SS1を取り込み、ゲーム開始時ラッチ信号SL1として出力する。これにより、ラッチ用フリップフロップ557Aでは、ラッチ用クロックRC1の立ち上がりエッジに同期して、ゲーム開始信号SS1がゲーム開始時ラッチ信号SL1として出力される。   The latch flip-flop 557A is configured using, for example, a D-type flip-flop. In the latch flip-flop 557A, a wiring from the input port P0 included in the PIP 510 is connected to the D input terminal, and a wiring for transmitting the latch clock RC1 is connected to the clock terminal CK. In this embodiment, the game start signal SS1 from the start switch 7 is input to the input port P0. The latch flip-flop 557A captures the game start signal SS1 in response to the rising edge of the latch clock RC1, and outputs it as the game start latch signal SL1. Thus, in the latch flip-flop 557A, the game start signal SS1 is output as the game start latch signal SL1 in synchronization with the rising edge of the latch clock RC1.

尚、ゲーム開始信号SS1は、スタートスイッチ7から直接伝送されるものに限定されない。一例として、スタートスイッチ7からの出力信号からの出力信号がオン状態となっている時間を計測し、計測した時間が所定の時間(例えば3ms)になったときに、ゲーム開始信号SS1を出力するタイマ回路を設けても良い。   The game start signal SS1 is not limited to that transmitted directly from the start switch 7. As an example, the time when the output signal from the output signal from the start switch 7 is on is measured, and when the measured time reaches a predetermined time (for example, 3 ms), the game start signal SS1 is output. A timer circuit may be provided.

乱数ラッチセレクタ558Aは、ラッチ用フリップフロップ557Aから伝送されるゲーム開始時ラッチ信号SL1と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号LL1として選択的に出力する回路である。乱数ラッチセレクタ558Aは、図7(B)に示すようなメイン制御部41が備える内蔵レジスタのうち、乱数値取込レジスタRDLT(アドレス2032H)を用いて、乱数ラッチ信号LL1の出力を制御する。乱数値取込レジスタRDLTは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、ソフトウェアにより乱数値レジスタ559Aに取り込むために用いられるレジスタである。乱数ラッチ選択レジスタRDLSは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、乱数値レジスタ559Aに、ソフトウェアにより取り込むか、入力ポートP0への信号入力により取り込むかの取込方法を示すレジスタである。   The random number latch selector 558A is a circuit that takes in the game start latch signal SL1 transmitted from the latch flip-flop 557A and the software random number latch request signal, and selectively outputs either one as the random number latch signal LL1. The random number latch selector 558A controls the output of the random number latch signal LL1 by using a random value fetch register RDLT (address 2032H) among the built-in registers provided in the main control unit 41 as shown in FIG. 7B. The random value acquisition register RDLT is a register used to acquire numerical data in the random number sequence RSN output from the random number sequence change circuit 555 into the random value register 559A by software. The random number latch selection register RDLS has a method of taking in the numerical data in the random number sequence RSN output from the random number sequence changing circuit 555 into the random value register 559A by software or by inputting a signal to the input port P0. It is a register to show.

図16(A)は、乱数値取込レジスタRDLTの構成例を示している。図16(B)は、乱数値取込レジスタRDLTに格納される乱数値取込指定データの各ビットにおける設定内容の一例を示している。乱数値取込レジスタRDLTのビット番号[0]に格納される乱数値取込指定データRDLT0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに対する乱数値取込指定の有無を示している。図16(B)に示す例では、ソフトウェアにより乱数値レジスタR1Dに対する乱数値の取込指定がないときに、乱数値取込指定データRDLT0のビット値が“0”となる一方、乱数値の取込指定があったときには、そのビット値が“1”となる。   FIG. 16A shows a configuration example of the random value fetch register RDLT. FIG. 16B shows an example of the setting contents in each bit of the random number acquisition specification data stored in the random value acquisition register RDLT. The random value acquisition specification data RDLT0 stored in the bit number [0] of the random value acquisition register RDLT indicates whether or not a random value acquisition specification is given to the random value register 559A serving as the random value register R1D. In the example shown in FIG. 16B, when there is no specification of random number acquisition to the random number register R1D by software, the bit value of the random value acquisition specification data RDLT0 is “0”, while the random value acquisition is not performed. The bit value is “1” when an instruction is included.

図17(A)は、乱数ラッチ選択レジスタRDLSの構成例を示している。図17(B)は、乱数ラッチ選択レジスタRDLSに格納される乱数ラッチ選択データの各ビットにおける設定内容の一例を示している。乱数ラッチ選択レジスタRDLSのビット番号[0]に格納される乱数ラッチ選択データRDLS0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aへの取込方法を示している。図17(B)に示す例では、ソフトウェアによる乱数値取込指定データRDLT0の書き込みに応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合に、乱数ラッチ選択データRDLS0のビット値を“0”とする。これに対して、入力ポートP0への信号入力に応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合には、乱数ラッチ選択データRDLS0のビット値を“1”とする。本実施例では、乱数ラッチ選択データRDLS0のビット値が“1”とされており、入力ポートP0への信号入力に応じて乱数値となる数値データが乱数値レジスタR1Dに取り込まれる。   FIG. 17A shows a configuration example of the random number latch selection register RDLS. FIG. 17B shows an example of setting contents in each bit of random number latch selection data stored in the random number latch selection register RDLS. The random number latch selection data RDLS0 stored in the bit number [0] of the random number latch selection register RDLS indicates a method of taking in the random number value register 559A serving as the random number value register R1D. In the example shown in FIG. 17B, the bit value of the random number latch selection data RDLS0 is “ 0 ”. On the other hand, when the numerical value data to be a random number value is taken into the random value register R1D in response to the signal input to the input port P0, the bit value of the random number latch selection data RDLS0 is set to “1”. In this embodiment, the bit value of the random number latch selection data RDLS0 is “1”, and numerical data that becomes a random number value is taken into the random value register R1D in response to a signal input to the input port P0.

乱数値レジスタ559Aは、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として格納するレジスタである。図18(A)及び(B)は、乱数値レジスタR1Dとなる乱数値レジスタ559Aの構成例を示している。尚、図18(A)は、乱数値レジスタR1Dの下位バイトR1D(L)を示し、図18(B)は、乱数値レジスタR1Dの上位バイトR1D(H)を示している。乱数値レジスタ559Aは16ビット(2バイト)のレジスタであり、16ビットの乱数値を格納することができる。   The random value register 559A is a register that stores numerical data in the random number sequence RSN output from the random number sequence change circuit 555 as a random value. 18A and 18B show a configuration example of a random value register 559A serving as the random value register R1D. 18A shows the lower byte R1D (L) of the random value register R1D, and FIG. 18B shows the upper byte R1D (H) of the random value register R1D. The random value register 559A is a 16-bit (2-byte) register, and can store a 16-bit random value.

乱数値レジスタ559Aは、乱数ラッチセレクタ558Aから供給される乱数ラッチ信号LL1がオン状態となったことに応答して、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ559Aは、CPU505から供給されるレジスタリード信号RRS1がオン状態となったときに、読出可能(イネーブル)状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号RRS1がオフ状態であるときには、常に同じ値(例えば「65535H」など)を出力して、読出不能(ディセーブル)状態となれば良い。また、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態である場合に、レジスタリード信号RRS1を受信不可能な状態となるようにしても良い。さらに、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態となるより前にレジスタリード信号RRS1がオン状態となっている場合に、乱数ラッチ信号LL1を受信不可能な状態となるようにしても良い。   The random value register 559A takes in the numerical data in the random number sequence RSN output from the random number sequence change circuit 555 as a random value in response to the random number latch signal LL1 supplied from the random number latch selector 558A being turned on. Store with. When the register read signal RRS1 supplied from the CPU 505 is turned on, the random value register 559A enters a readable (enable) state and outputs stored numerical data to an internal bus or the like. On the other hand, when the register read signal RRS1 is in the OFF state, the same value (for example, “65535H” or the like) is always output, and the reading is disabled (disabled). Further, the random value register 559A may be in a state in which the register read signal RRS1 cannot be received when the random number latch signal LL1 is in the ON state. Further, the random value register 559A may be in a state in which the random number latch signal LL1 cannot be received when the register read signal RRS1 is in the on state before the random number latch signal LL1 is in the on state. good.

乱数値レジスタ559Aは、図7(B)に示すようなメイン制御部41が備える内蔵レジスタのうち、乱数ラッチフラグレジスタRDFM(アドレス2033H)と、乱数割込制御レジスタRDIC(アドレス2031H)とを用いて、乱数ラッチ時の動作管理や割込制御を可能にする。乱数ラッチフラグレジスタRDFMは、乱数値レジスタ559Aに対応して、乱数値となる数値データがラッチされたか否かを示す乱数ラッチフラグを格納するレジスタである。乱数割込制御レジスタRDICは、乱数値レジスタ559Aに乱数値となる数値データがラッチされたときに発生する割込の許可/禁止を設定するレジスタである。   The random value register 559A uses a random number latch flag register RDFM (address 2033H) and a random number interrupt control register RDIC (address 2031H) among the built-in registers provided in the main control unit 41 as shown in FIG. 7B. This enables operation management and interrupt control when latching random numbers. The random number latch flag register RDFM is a register that stores a random number latch flag indicating whether or not numerical data serving as a random number value is latched corresponding to the random value register 559A. The random number interrupt control register RDIC is a register that sets permission / prohibition of an interrupt that occurs when numerical data that becomes a random number value is latched in the random number value register 559A.

図19(A)は、乱数ラッチフラグレジスタRDFMの構成例を示している。図19(B)は、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータの各ビットにおける設定内容の一例を示している。乱数ラッチフラグレジスタRDFMのビット番号[0]に格納される乱数ラッチフラグデータRDFM0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図19(B)に示す例では、乱数値レジスタR1Dに数値データが取り込まれていないときに(乱数値取込なし)、乱数ラッチフラグデータRDFM0のビット値が“0”となる一方、数値データが取り込まれたときには(乱数値取込あり)、そのビット値が“1”となる。乱数ラッチフラグデータRDFM0が“1”の状態、すなわち乱数値レジスタR1Dに数値データが取り込まれている状態では、新たな乱数値の取込要求が発生した場合でも、新たな数値データを乱数値レジスタR1Dに取り込まないようになっており、このような状態では、乱数値レジスタR1Dの数値データが読み出されて、乱数ラッチフラグデータRDFM0がクリアされるまで新たな数値データを乱数値レジスタR1Dに取り込むことが不可能となる。   FIG. 19A shows a configuration example of the random number latch flag register RDFM. FIG. 19B shows an example of setting contents in each bit of the random number latch flag data stored in the random number latch flag register RDFM. The random number latch flag data RDFM0 stored in the bit number [0] of the random number latch flag register RDFM is a random number latch flag indicating whether or not numerical data has been taken into the random number value register 559A serving as the random number value register R1D. In the example shown in FIG. 19B, when the numerical value data is not taken into the random value register R1D (no random value is taken), the bit value of the random number latch flag data RDFM0 becomes “0”, while the numerical data Is taken (with random number fetching), the bit value becomes “1”. In the state where the random number latch flag data RDFM0 is “1”, that is, in the state where the numerical data is captured in the random value register R1D, the new numerical data is stored in the random value register even when a new random number capturing request is generated. In such a state, the numerical data in the random value register R1D is read and new numerical data is captured in the random value register R1D until the random number latch flag data RDFM0 is cleared. It becomes impossible.

図20(A)は、乱数割込制御レジスタRDICの構成例を示している。図20(B)は、乱数割込制御レジスタRDICに格納される乱数割込制御データの各ビットにおける設定内容の一例を示している。乱数割込制御レジスタRDICのビット番号[0]に格納される乱数割込制御データRDIC0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたときに発生する割込を、許可するか禁止するかの割込制御設定を示している。図20(B)に示す例では、乱数値レジスタR1Dへの取込時における割込を禁止する場合に(割込禁止)、乱数割込制御データRDIC0のビット値を“0”とする一方、この割込を許可する場合には(割込許可)、そのビット値を“1”とする。本実施例では、乱数割込制御データRDIC0のビット値が“0”に設定されており、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれても割込は発生しない。   FIG. 20A shows a configuration example of the random number interrupt control register RDIC. FIG. 20B shows an example of setting contents in each bit of random number interrupt control data stored in the random number interrupt control register RDIC. The random number interrupt control data RDIC0 stored in the bit number [0] of the random number interrupt control register RDIC allows an interrupt to be generated when numerical data is fetched into the random value register 559A serving as the random value register R1D. This shows the interrupt control setting to enable or disable. In the example shown in FIG. 20B, when interrupting at the time of fetching into the random value register R1D is prohibited (interrupt prohibited), the bit value of the random number interrupt control data RDIC0 is set to “0”, When this interrupt is permitted (interrupt permitted), the bit value is set to “1”. In the present embodiment, the bit value of the random number interrupt control data RDIC0 is set to “0”, and no interrupt is generated even if numerical data is fetched into the random value register 559A serving as the random value register R1D.

メイン制御部41が備えるPIP510は、例えば6ビット幅の入力専用ポートであり、専用端子となる入力ポートP0〜入力ポートP2と、機能兼用端子となる入力ポートP3〜入力ポートP5とを含んでいる。入力ポートP3は、CPU505等に接続される外部マスカブル割込端子XINTと兼用される。入力ポートP4は、CPU505等に接続される外部ノンマスカブル割込端子XNMIと兼用される。入力ポートP5は、シリアル通信回路511が使用する第1チャネル受信端子RXAと兼用される。入力ポートP3〜入力ポートP5の使用設定は、プログラム管理エリアに記憶される機能設定KFCSにより指示される。   The PIP 510 included in the main control unit 41 is, for example, a 6-bit input dedicated port, and includes an input port P0 to an input port P2 serving as a dedicated terminal and an input port P3 serving as a function shared terminal and an input port P5. . The input port P3 is also used as an external maskable interrupt terminal XINT connected to the CPU 505 or the like. The input port P4 is also used as an external non-maskable interrupt terminal XNMI connected to the CPU 505 or the like. The input port P5 is also used as the first channel reception terminal RXA used by the serial communication circuit 511. The use setting of the input port P3 to the input port P5 is instructed by the function setting KFCS stored in the program management area.

PIP510は、図7(B)に示すようなメイン制御部41が備える内蔵レジスタのうち、入力ポートレジスタPI(アドレス2090H)などを用いて、入力ポートP0〜入力ポートP5の状態管理等を行う。入力ポートレジスタPIは、入力ポートP0〜入力ポートP5のそれぞれに対応して、外部信号の入力状態を示すビット値が格納されるレジスタである。   The PIP 510 manages the state of the input port P0 to the input port P5 using the input port register PI (address 2090H) among the built-in registers included in the main control unit 41 as shown in FIG. 7B. The input port register PI is a register that stores a bit value indicating the input state of the external signal corresponding to each of the input port P0 to the input port P5.

図21(A)は、入力ポートレジスタPIの構成例を示している。図21(B)は、入力ポートレジスタPIに格納される入力ポートデータの各ビットにおける設定内容の一例を示している。入力ポートレジスタPIのビット番号[5]に格納される入力ポートデータPI5は、第1チャネル受信端子RXAと兼用される入力ポートP5における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[4]に格納される入力ポートデータPI4は、外部ノンマスカブル割込端子XNMIと兼用される入力ポートP4における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[3]に格納される入力ポートデータPI3は、外部マスカブル割込端子XINTと兼用される入力ポートP3における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[2]に格納される入力ポートデータPI2は、入力ポートP2における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[1]に格納される入力ポートデータPI1は、入力ポートP1における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[0]に格納される入力ポートデータPI0は、入力ポートP0における端子状態(オン/オフ)を示している。   FIG. 21A shows a configuration example of the input port register PI. FIG. 21B shows an example of setting contents in each bit of the input port data stored in the input port register PI. The input port data PI5 stored in the bit number [5] of the input port register PI indicates the terminal state (ON / OFF) at the input port P5 that is also used as the first channel receiving terminal RXA. The input port data PI4 stored in the bit number [4] of the input port register PI indicates the terminal state (ON / OFF) at the input port P4 that is also used as the external non-maskable interrupt terminal XNMI. The input port data PI3 stored in the bit number [3] of the input port register PI indicates the terminal state (ON / OFF) at the input port P3 that is also used as the external maskable interrupt terminal XINT. The input port data PI2 stored in the bit number [2] of the input port register PI indicates the terminal state (ON / OFF) at the input port P2. The input port data PI1 stored in the bit number [1] of the input port register PI indicates the terminal state (ON / OFF) at the input port P1. The input port data PI0 stored in the bit number [0] of the input port register PI indicates the terminal state (ON / OFF) at the input port P0.

図5に示すメイン制御部41が備えるアドレスデコード回路512は、メイン制御部41の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、メイン制御部41の内部回路、或いは、周辺デバイスとなる外部装置を、選択的に有効動作させて、CPU505からのアクセスが可能となる。   An address decoding circuit 512 provided in the main control unit 41 shown in FIG. 5 is a circuit for decoding each functional block in the main control unit 41 and a chip select signal that is a decoding signal for an external device. . By the chip select signal, an internal circuit of the main control unit 41 or an external device as a peripheral device is selectively operated effectively and can be accessed from the CPU 505.

メイン制御部41が備えるROM506には、ゲーム制御用のユーザプログラムやセキュリティチェックプログラム506Aの他に、ゲームの進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ROM506には、CPU505が各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ROM506には、CPU505が遊技制御基板40から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータなどが記憶されている。   The ROM 506 provided in the main control unit 41 stores various selection data and table data used for controlling the progress of the game, in addition to the game control user program and the security check program 506A. For example, the ROM 506 stores data constituting a plurality of determination tables, determination tables, setting tables, and the like prepared for the CPU 505 to perform various determinations, determinations, and settings. The ROM 506 stores table data constituting a plurality of command tables used for the CPU 505 to transmit control signals serving as various control commands from the game control board 40.

メイン制御部41が備えるRAM507には、スロットマシン1におけるゲームの進行などを制御するために用いられる各種のデータを保持する領域として、遊技制御用データ保持エリア590が設けられている。RAM507としては、例えばDRAMが使用されており、記憶しているデータ内容を維持するためのリフレッシュ動作が必要になる。CPU505には、このリフレッシュ動作を行うためのリフレッシュレジスタが内蔵されている。例えば、リフレッシュレジスタは8ビットからなり、そのうち下位7ビットはCPU505がROM506から命令フェッチするごとに自動的にインクリメントされる。したがって、リフレッシュレジスタにおける格納値の更新は、CPU505における1命令の実行時間ごとに行われることになる。   The RAM 507 provided in the main control unit 41 is provided with a game control data holding area 590 as an area for holding various data used for controlling the progress of the game in the slot machine 1. For example, a DRAM is used as the RAM 507, and a refresh operation is required to maintain the stored data contents. The CPU 505 has a built-in refresh register for performing this refresh operation. For example, the refresh register consists of 8 bits, and the lower 7 bits are automatically incremented each time the CPU 505 fetches an instruction from the ROM 506. Accordingly, the stored value in the refresh register is updated every execution time of one instruction in the CPU 505.

メイン制御部41は、遊技制御基板40に接続された各種スイッチ類の検出状態が入力ポートから入力される。そしてメイン制御部41は、これら入力ポートから入力される各種スイッチ類の検出状態に応じて段階的に移行する基本処理を実行する。   The main control unit 41 receives the detection state of various switches connected to the game control board 40 from the input port. Then, the main control unit 41 executes basic processing that shifts in stages according to the detection states of various switches input from these input ports.

また、メイン制御部41は、割込の発生により基本処理に割り込んで割込処理を実行できるようになっている。本実施例では、外部マスカブル割込端子XINTが、前述した電断検出回路48と接続されており、メイン制御部41は電断検出回路48から出力された電圧低下信号の入力に応じて後述する電断割込処理(メイン)を実行する。また、メイン制御部41は、CTC508に含まれるタイマ回路にてタイムアウトが発生したこと、すなわち一定時間間隔(本実施例では、約0.56ms)毎に後述するタイマ割込処理(メイン)を実行する。   Further, the main control unit 41 can execute an interrupt process by interrupting the basic process when an interrupt occurs. In the present embodiment, the external maskable interrupt terminal XINT is connected to the power interruption detection circuit 48 described above, and the main control unit 41 will be described later according to the input of the voltage drop signal output from the power interruption detection circuit 48. Executes power interruption processing (main). Further, the main control unit 41 executes a timer interrupt process (main), which will be described later, every time a certain time interval (about 0.56 ms in this embodiment) occurs in the timer circuit included in the CTC 508. To do.

また、メイン制御部41は、割込処理の実行中に他の割込を禁止するように設定されているとともに、複数の割込が同時に発生した場合には、予め定められた順位によって優先して実行する割込が設定されている。本実施例では、タイマ割込処理(メイン)よりも電断割込処理(メイン)の方が優先順位が高く、これらの割込が同時に発生した場合には電断割込処理(メイン)が優先して実行される。尚、割込処理の実行中に他の割込要因が発生し、割込処理が終了してもその割込要因が継続している状態であれば、その時点で新たな割込が発生することとなる。例えば、タイマ割込処理(メイン)の実行中に電圧低下信号が入力された場合に、その時点で電断割込処理(メイン)が実行されることはないが、実行中のタイマ割込処理(メイン)が終了した時点で、電圧低下信号の入力が継続している場合には、その時点で電断割込処理(メイン)が実行されることとなる。   The main control unit 41 is set to prohibit other interrupts during the execution of the interrupt process, and when a plurality of interrupts occur at the same time, the main control unit 41 prioritizes according to a predetermined order. An interrupt to be executed is set. In this embodiment, the interruption interrupt process (main) has a higher priority than the timer interruption process (main), and when these interruptions occur simultaneously, the interruption interrupt process (main) Prioritized execution. If another interrupt factor occurs during the execution of the interrupt process and the interrupt factor continues even after the interrupt process is completed, a new interrupt will occur at that point. It will be. For example, if a voltage drop signal is input during execution of the timer interrupt process (main), the power interruption interrupt process (main) is not executed at that time, but the timer interrupt process being executed When the input of the voltage drop signal is continued when (main) is completed, the power interruption interrupt process (main) is executed at that time.

メイン制御部41は、基本処理として遊技制御基板40に接続された各種スイッチ類の検出状態が変化するまでは制御状態に応じた処理を繰り返しループし、各種スイッチ類の検出状態の変化に応じて段階的に移行する処理を実行する。また、メイン制御部41は、電断検出回路48から出力された電圧低下信号の入力に応じて電断割込処理(メイン)を実行し、一定時間間隔(本実施例では、約0.56ms)毎にタイマ割込処理(メイン)を実行する。尚、タイマ割込処理(メイン)の実行間隔は、基本処理において制御状態に応じて繰り返す処理が一巡する時間とタイマ割込処理(メイン)の実行時間とを合わせた時間よりも長い時間に設定されており、今回と次回のタイマ割込処理(メイン)との間で必ず制御状態に応じて繰り返す処理が最低でも一巡することとなる。   The main control unit 41 repeatedly loops the process according to the control state until the detection state of the various switches connected to the game control board 40 changes as a basic process, and changes the detection state of the various switches. Execute a process that moves in stages. Further, the main control unit 41 executes a power interruption interrupt process (main) in response to the input of the voltage drop signal output from the power interruption detection circuit 48, and at a certain time interval (about 0.56 ms in this embodiment). ) Timer interrupt processing (main) is executed every time. In addition, the execution interval of the timer interrupt process (main) is set to a time longer than the sum of the time required to complete the repeated process according to the control state in the basic process and the execution time of the timer interrupt process (main) Therefore, the process that is repeated according to the control state between the current and next timer interrupt processes (main) is completed at least once.

メイン制御部41は、演出制御基板90に各種のコマンドを送信する。遊技制御基板40から演出制御基板90へ送信されるコマンドは一方向のみで送られ、演出制御基板90から遊技制御基板40へ向けてコマンドが送られることはない。   The main control unit 41 transmits various commands to the effect control board 90. A command transmitted from the game control board 40 to the effect control board 90 is sent in only one direction, and no command is sent from the effect control board 90 to the game control board 40.

演出制御基板90には、スロットマシン1の前面扉1bに配置された液晶表示器51(図1参照)、演出効果LED52、スピーカ53、54、前述したリールLED55等の演出装置が接続されており、これら演出装置は、演出制御基板90に搭載された後述のサブ制御部91による制御に基づいて駆動されるようになっている。   The effect control board 90 is connected to effect devices such as a liquid crystal display 51 (see FIG. 1), an effect LED 52, speakers 53 and 54, and the reel LED 55 described above, which are arranged on the front door 1b of the slot machine 1. These effect devices are driven based on control by a later-described sub-control unit 91 mounted on the effect control board 90.

尚、本実施例では、演出制御基板90に搭載されたサブ制御部91により、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55等の演出装置の出力制御が行われる構成であるが、サブ制御部91とは別に演出装置の出力制御を直接的に行う出力制御部を演出制御基板90または他の基板に搭載し、サブ制御部91がメイン制御部41からのコマンドに基づいて演出装置の出力パターンを決定し、サブ制御部91が決定した出力パターンに基づいて出力制御部が演出装置の出力制御を行う構成としても良く、このような構成では、サブ制御部91及び出力制御部の双方によって演出装置の出力制御が行われることとなる。   In this embodiment, the sub-control unit 91 mounted on the effect control board 90 controls the output of the effect devices such as the liquid crystal display 51, effect effect LED 52, speakers 53 and 54, and reel LED 55. However, in addition to the sub-control unit 91, an output control unit that directly controls the output of the effect device is mounted on the effect control board 90 or another board, and the sub-control unit 91 is based on a command from the main control unit 41. The output control unit may determine the output pattern of the effect device, and the output control unit may control the output of the effect device based on the output pattern determined by the sub control unit 91. In such a configuration, the sub control unit 91 and the output control may be performed. The output control of the rendering device is performed by both of the units.

また、本実施例では、演出装置として液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55を例示しているが、演出装置は、これらに限られず、例えば、機械的に駆動する表示装置や機械的に駆動する役モノなどを演出装置として適用しても良い。   Further, in the present embodiment, the liquid crystal display 51, the effect effect LED 52, the speakers 53 and 54, and the reel LED 55 are exemplified as the effect device, but the effect device is not limited to these, for example, a mechanically driven display. A device or a mechanically driven item may be applied as the effect device.

演出制御基板90には、サブCPU91a、ROM91b、RAM91c、I/Oポート91dなどを備えたマイクロコンピュータにて構成され、演出の制御を行うサブ制御部91、演出制御基板90に接続された液晶表示器51の表示制御を行う表示制御回路92、演出効果LED52、リールLED55の駆動制御を行うLED駆動回路93、スピーカ53、54からの音声出力制御を行う音声出力回路94、電源投入時または電源遮断時にサブCPU91aにリセット信号を与えるリセット回路95、日付情報及び時刻情報を含む時間情報を出力する時計装置97、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をサブ制御部91に対して出力する電断検出回路98が搭載されており、サブ制御部91は、メイン制御部から送信されるコマンドを受けて、演出を行うための各種の制御を行うとともに、演出制御基板90に搭載された制御回路の各部を直接的または間接的に制御する。   The effect control board 90 is composed of a microcomputer including a sub CPU 91a, ROM 91b, RAM 91c, I / O port 91d, etc., and a liquid crystal display connected to the sub control unit 91 for effect control and the effect control board 90. Display control circuit 92 for performing display control of the device 51, LED drive circuit 93 for performing drive control of the effect LED 52 and reel LED 55, an audio output circuit 94 for controlling audio output from the speakers 53 and 54, at power-on or power-off A reset circuit 95 that sometimes gives a reset signal to the sub CPU 91a, a clock device 97 that outputs time information including date information and time information, and a power supply voltage supplied to the slot machine 1 are monitored, and when a voltage drop is detected, A power interruption detection circuit 98 that outputs a voltage drop signal indicating that to the sub-control unit 91 is mounted. In response to the command transmitted from the main control unit, the sub-control unit 91 performs various controls for performing an effect, and directly or indirectly controls each part of the control circuit mounted on the effect control board 90. Control.

サブ制御部91は、メイン制御部41と同様に、割込機能を備えており、メイン制御部41からのコマンド受信時に割込を発生させて、メイン制御部41から送信されたコマンドを取得し、バッファに格納するコマンド受信割込処理を実行する。また、サブ制御部91は、システムクロックの入力数が一定数に到達する毎、すなわち一定間隔毎に割込を発生させて後述するタイマ割込処理(サブ)を実行する。また、サブ制御部91の割込端子の1つは、電断検出回路98と接続されており、サブ制御部91は、電断検出回路98から出力された電圧低下信号の入力に応じて電断割込処理(サブ)を実行する。   Similar to the main control unit 41, the sub control unit 91 has an interrupt function, generates an interrupt when receiving a command from the main control unit 41, and acquires a command transmitted from the main control unit 41. Execute command reception interrupt processing to be stored in the buffer. Further, the sub control unit 91 executes an interrupt process (sub), which will be described later, by generating an interrupt every time the number of input system clocks reaches a certain number, that is, every certain interval. Also, one of the interrupt terminals of the sub control unit 91 is connected to the power interruption detection circuit 98, and the sub control unit 91 is turned on in response to the input of the voltage drop signal output from the power interruption detection circuit 98. Execute interrupt processing (sub).

また、サブ制御部91は、メイン制御部41とは異なり、コマンドの受信に基づいて割込が発生した場合には、タイマ割込処理(サブ)の実行中であっても、当該処理に割り込んでコマンド受信割込処理を実行し、タイマ割込処理(サブ)の契機となる割込が同時に発生してもコマンド受信割込処理を最優先で実行するようになっている。尚、電断割込処理(サブ)の実行中には、コマンド受信割込処理も禁止されるが、電断割込処理(サブ)の契機となる割込が同時に発生した場合にはコマンド受信割込処理を優先して実行する   Also, unlike the main control unit 41, the sub control unit 91 interrupts the process even when the timer interrupt process (sub) is being executed when an interrupt is generated based on the reception of the command. The command reception interrupt process is executed at the same time, and the command reception interrupt process is executed with the highest priority even if interrupts that trigger the timer interrupt process (sub) occur at the same time. Note that command reception interrupt processing is also prohibited during the execution of power interruption interrupt processing (sub), but if an interrupt that triggers power interruption interrupt processing (sub) occurs at the same time, command reception Prioritize interrupt processing

また、サブ制御部91にも、停電時においてバックアップ電源が供給されており、バックアップ電源が供給されている間は、RAM91cに記憶されているデータが保持されるようになっている。   The sub-control unit 91 is also supplied with backup power at the time of a power failure, and the data stored in the RAM 91c is held while the backup power is supplied.

本実施例のスロットマシン1は、設定値に応じてメダルの払出率が変わるものである。詳しくは、後述する内部抽選において設定値に応じた当選確率を用いることにより、メダルの払出率が変わるようになっている。設定値は1〜6の6段階からなり、6が最も払出率が高く、5、4、3、2、1の順に値が小さくなるほど払出率が低くなる。すなわち設定値として6が設定されている場合には、遊技者にとって最も有利度が高く、5、4、3、2、1の順に値が小さくなるほど有利度が段階的に低くなる。   In the slot machine 1 of this embodiment, the medal payout rate changes according to the set value. Specifically, the medal payout rate is changed by using a winning probability corresponding to a set value in an internal lottery described later. The set value is composed of 6 levels of 1 to 6, with 6 being the highest payout rate and the payout rate being lower as the value is decreased in the order of 5, 4, 3, 2, 1. That is, when 6 is set as the set value, the advantage is highest for the player, and as the value decreases in order of 5, 4, 3, 2, 1, the advantage decreases stepwise.

設定値を変更するためには、設定キースイッチ37をON状態としてからスロットマシン1の電源をONする必要がある。設定キースイッチ37をON状態として電源をONすると、設定値表示器24にRAM507から読み出された設定値が表示値として表示され、リセット/設定スイッチ38の操作による設定値の変更操作が可能な設定変更状態に移行する。設定変更状態において、リセット/設定スイッチ38が操作されると、設定値表示器24に表示された表示値が1ずつ更新されていく(設定6からさらに操作されたときは、設定1に戻る)。そして、スタートスイッチ7が操作されると表示値を設定値として確定する。そして、設定キースイッチ37がOFFされると、確定した表示値(設定値)がメイン制御部41のRAM507に格納され、遊技の進行が可能な状態に移行する。   In order to change the setting value, it is necessary to turn on the power of the slot machine 1 after the setting key switch 37 is turned on. When the setting key switch 37 is turned on and the power is turned on, the setting value read from the RAM 507 is displayed on the setting value display 24 as a display value, and the setting value can be changed by operating the reset / setting switch 38. Transition to the setting change state. When the reset / setting switch 38 is operated in the setting change state, the display value displayed on the setting value display 24 is updated one by one (when further operation is performed from the setting 6, the display returns to the setting 1). . When the start switch 7 is operated, the display value is determined as the set value. Then, when the setting key switch 37 is turned off, the determined display value (setting value) is stored in the RAM 507 of the main control unit 41, and the state shifts to a state in which the game can proceed.

また、設定値を確認するためには、ゲーム終了後、賭数が設定されていない状態で設定キースイッチ37をON状態とすれば良い。このような状況で設定キースイッチ37をON状態とすると、設定値表示器24にRAM507から読み出された設定値が表示されることで設定値を確認可能な設定確認状態に移行する。設定確認状態においては、ゲームの進行が不能であり、設定キースイッチ37をOFF状態とすることで、設定確認状態が終了し、ゲームの進行が可能な状態に復帰することとなる。   In order to confirm the set value, after the game is over, the setting key switch 37 may be turned on with no bet amount set. When the setting key switch 37 is turned on in such a situation, the setting value read out from the RAM 507 is displayed on the setting value display 24, thereby shifting to a setting confirmation state in which the setting value can be confirmed. In the setting confirmation state, the game cannot be progressed, and by turning the setting key switch 37 to the OFF state, the setting confirmation state is ended and the state in which the game can proceed is returned.

本実施例のスロットマシン1においては、メイン制御部41が電断検出回路48からの電圧低下信号を検出した際に、電断割込処理(メイン)を実行する。電断割込処理(メイン)では、レジスタを後述するRAM507のスタックに退避し、RAM507にいずれかのビットが1となる破壊診断用データ(本実施例では、5AH)、すなわち0以外の特定のデータを格納するとともに、RAM507の全ての領域に格納されたデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、RAM507に格納する処理を行うようになっている。尚、RAMパリティとはRAM507の該当する領域(本実施例では、全ての領域)の各ビットに格納されている値の排他的論理和として算出される値である。このため、RAM507の全ての領域に格納されたデータに基づくRAMパリティが0であれば、RAMパリティ調整用データは0となり、RAM507の全ての領域に格納されたデータに基づくRAMパリティが1であれば、RAMパリティ調整用データは1となる。   In the slot machine 1 of this embodiment, when the main control unit 41 detects a voltage drop signal from the power interruption detection circuit 48, a power interruption interrupt process (main) is executed. In the power interruption interrupt processing (main), a register is saved in a stack of a RAM 507, which will be described later, and data for destructive diagnosis in which any bit becomes 1 (5AH in this embodiment), that is, a specific value other than 0 In addition to storing data, the RAM parity adjustment data is calculated so that the RAM parity based on the data stored in all areas of the RAM 507 becomes 0, and the process of storing in the RAM 507 is performed. The RAM parity is a value calculated as an exclusive OR of the values stored in each bit of the corresponding area (all areas in this embodiment) of the RAM 507. For this reason, if the RAM parity based on the data stored in all areas of the RAM 507 is 0, the RAM parity adjustment data is 0, and the RAM parity based on the data stored in all areas of the RAM 507 is 1. In this case, the RAM parity adjustment data is 1.

そして、メイン制御部41は、その起動時においてRAM507の全ての領域に格納されたデータに基づいてRAMパリティを計算するとともに、破壊診断用データの値を確認し、RAMパリティが0であり、かつ破壊診断用データの値も正しいことを条件に、RAM507に記憶されているデータに基づいてメイン制御部41の処理状態を電断前の状態に復帰させるが、RAMパリティが0でない場合(1の場合)や破壊診断用データの値が正しくない場合には、RAM異常と判定し、RAM異常エラーコードをレジスタにセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、RAM異常エラー状態は、通常のエラー状態と異なり、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更状態において新たな設定値が設定されるまで解除されることがない。   The main control unit 41 calculates the RAM parity based on the data stored in all areas of the RAM 507 at the time of activation, confirms the value of the destructive diagnosis data, the RAM parity is 0, and On the condition that the value of the destructive diagnosis data is also correct, the processing state of the main control unit 41 is restored to the state before the power interruption based on the data stored in the RAM 507, but when the RAM parity is not 0 (1 If the value of the data for destructive diagnosis is not correct, it is determined that the RAM is abnormal, the RAM abnormal error code is set in the register, and the RAM abnormal error state is controlled to disable the progress of the game. ing. Unlike the normal error state, the RAM abnormal error state is not canceled even if the reset switch 23 or the reset / setting switch 38 is operated, and a new set value is set in the above-described setting change state. It will not be released until

尚、本実施例では、RAM507に格納されている全てのデータが停電時においてもバックアップ電源により保持されるとともに、メイン制御部41は、電源投入時においてRAM507のデータが正常であると判定した場合に、RAM507の格納データに基づいて電断前の制御状態に復帰する構成であるが、RAM507に格納されているデータのうち停電時において制御状態の復帰に必要なデータのみをバックアップし、電源投入時においてバックアップされているデータに基づいて電断前の制御状態に復帰する構成としても良い。   In this embodiment, all data stored in the RAM 507 is held by the backup power source even in the event of a power failure, and the main control unit 41 determines that the data in the RAM 507 is normal when the power is turned on. In addition, the configuration is such that the control state before power interruption is restored based on the data stored in the RAM 507. However, only the data stored in the RAM 507 that is necessary for returning to the control state in the event of a power failure is backed up and turned on. It may be configured to return to the control state before power interruption based on the data backed up at the time.

また、電源投入時において電断前の制御状態に復帰させる際に、全ての制御状態を電断前の制御状態に復帰させる必要はなく、遊技者に対して不利益とならない最低限の制御状態を復帰させる構成であれば良く、例えば、入力ポートの状態などを全て電断前の状態に復帰させる必要はない。   In addition, when returning to the control state before the power interruption when the power is turned on, it is not necessary to return all the control states to the control state before the power interruption, and the minimum control state that does not disadvantage the player For example, it is not necessary to restore the state of all input ports to the state before power interruption.

また、サブ制御部91も電断検出回路98からの電圧低下信号を検出した際に、電断割込処理(サブ)を実行する。電断割込処理(サブ)では、レジスタを後述するRAM91cのスタックに退避し、RAM91cにいずれかのビットが1となる破壊診断用データを格納するとともに、RAM91cの全ての領域に格納されたデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、RAM91cに格納する処理を行うようになっている。   Further, when the sub control unit 91 detects the voltage drop signal from the power interruption detection circuit 98, the sub control unit 91 executes a power interruption interrupt process (sub). In the power interruption interrupt processing (sub), the register is saved in a stack of a RAM 91c described later, and destructive diagnosis data in which any bit is 1 is stored in the RAM 91c, and data stored in all areas of the RAM 91c. The RAM parity adjustment data is calculated so that the RAM parity based on 0 becomes 0 and stored in the RAM 91c.

そして、サブ制御部91は、その起動時においてRAM91cの全ての領域に格納されたデータに基づいてRAMパリティを計算し、RAMパリティが0であることを条件に、RAM91cに記憶されているデータに基づいてサブ制御部91の処理状態を電断前の状態に復帰させるが、RAMパリティが0でない場合(1の場合)には、RAM異常と判定し、RAM91cを初期化するようになっている。この場合、メイン制御部41と異なり、RAM91cが初期化されるのみで演出の実行が不能化されることはない。   Then, the sub-control unit 91 calculates the RAM parity based on the data stored in all the areas of the RAM 91c at the time of activation, and sets the data stored in the RAM 91c on the condition that the RAM parity is 0. Based on this, the processing state of the sub-control unit 91 is restored to the state before the power interruption, but when the RAM parity is not 0 (in the case of 1), it is determined that the RAM is abnormal and the RAM 91c is initialized. . In this case, unlike the main control unit 41, only the RAM 91c is initialized, and the performance is not disabled.

尚、本実施例では、RAM91cに格納されている全てのデータが停電時においてもバックアップ電源により保持されるとともに、サブ制御部91は、電源投入時においてRAM91cのデータが正常であると判定した場合に、RAM91cの格納データに基づいて電断前の制御状態に復帰する構成であるが、RAM91cに格納されているデータのうち停電時において制御状態の復帰に必要なデータのみをバックアップし、電源投入時においてバックアップされているデータに基づいて電断前の制御状態に復帰する構成としても良い。   In this embodiment, all data stored in the RAM 91c is held by the backup power supply even in the event of a power failure, and the sub-control unit 91 determines that the data in the RAM 91c is normal when the power is turned on. In addition, the configuration is such that the control state before power interruption is restored based on the data stored in the RAM 91c, but only the data required to return to the control state during a power failure is backed up among the data stored in the RAM 91c and the power is turned on. It may be configured to return to the control state before power interruption based on the data backed up at the time.

また、電源投入時において電断前の制御状態に復帰させる際に、全ての制御状態を電断前の制御状態に復帰させる必要はなく、遊技者に対して不利益とならない最低限の制御状態を復帰させる構成であれば良く、入力ポートの状態や、演出が途中で中断された場合の途中経過などを全て電断前の状態に復帰させる必要はない。   In addition, when returning to the control state before the power interruption when the power is turned on, it is not necessary to return all the control states to the control state before the power interruption, and the minimum control state that does not disadvantage the player It is not necessary to restore the state of the input port or the progress in the middle of the production when it is interrupted.

次に、メイン制御部41のRAM507の初期化について説明する。メイン制御部41のRAM507の格納領域は、重要ワーク、一般ワーク、特別ワーク、設定値ワーク、非保存ワーク、未使用領域、スタック領域に区分されている。   Next, initialization of the RAM 507 of the main control unit 41 will be described. The storage area of the RAM 507 of the main control unit 41 is divided into an important work, a general work, a special work, a set value work, a non-saved work, an unused area, and a stack area.

重要ワークは、各種表示器やLEDの表示用データ、I/Oの入出力データ、遊技時間の計時カウンタ等、BB終了時に初期化すると不都合があるデータが格納されるワークである。一般ワークは、停止制御テーブル、停止図柄、メダルの払出枚数、BB中のメダル払出総数等、BB終了時に初期化可能なデータが格納されるワークである。特別ワークは、演出制御基板90へコマンドを送信するためのデータ、各種ソフトウェア乱数等、設定開始前にのみ初期化されるデータが格納されるワークである。設定値ワークは、内部抽選処理で抽選を行う際に用いる設定値が格納されるワークである。非保存ワークは、各種スイッチ類の状態を保持するワークであり、起動時にRAM507のデータが破壊されているか否かに関わらず必ず値が設定されることとなる。未使用領域は、RAM507の格納領域のうち使用していない領域であり、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなる。スタック領域は、メイン制御部41のレジスタから退避したデータが格納される領域であり、このうちの未使用スタック領域は、未使用領域と同様に、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなるが、使用中スタック領域は、プログラムの続行のため、初期化されることはない。   The important work is a work in which data which is inconvenient if it is initialized at the end of the BB, such as various display devices, LED display data, I / O input / output data, and game time counter. The general work is a work that stores data that can be initialized at the end of the BB, such as a stop control table, a stop symbol, the number of medals paid out, and the total number of medals paid out in the BB. The special work is a work that stores data to be initialized only before the start of setting, such as data for transmitting a command to the effect control board 90 and various software random numbers. The set value work is a work that stores a set value used when a lottery is performed in the internal lottery process. The unsaved work is a work that holds the state of various switches, and a value is always set regardless of whether or not the data in the RAM 507 is destroyed at the time of activation. The unused area is an unused area in the storage area of the RAM 507, and is initialized if any one of a plurality of initialization conditions described later is satisfied. The stack area is an area in which data saved from the register of the main control unit 41 is stored, and the unused stack area is one of a plurality of initialization conditions to be described later, like the unused area. However, if it is established, it will be initialized, but the in-use stack area is not initialized because the program continues.

本実施例においてメイン制御部41は、設定キースイッチ37がONの状態での起動時、RAM異常エラー発生時、BB終了時、設定キースイッチ37がOFFの状態での起動時においてRAM507のデータが破壊されていないとき、1ゲーム終了時の5つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる4種類の初期化を行う。   In this embodiment, the main control unit 41 stores the data in the RAM 507 at the time of start-up with the setting key switch 37 turned on, when a RAM error occurs, at the end of BB, and at the time of start-up with the setting key switch 37 turned off. When not being destroyed, when five initialization conditions at the end of one game are satisfied, four types of initializations that are initialized in accordance with each initialization condition are performed.

初期化1は、起動時において設定キースイッチ37がONの状態であり、設定変更状態へ移行する場合において、その前に行う初期化、またはRAM異常エラー発生時に行う初期化であり、初期化1では、RAM507の格納領域のうち、使用中スタック領域を除く全ての領域(未使用領域及び未使用スタック領域を含む)が初期化される。初期化2は、BB終了時に行う初期化であり、初期化2では、RAM507の格納領域のうち、一般ワーク、未使用領域及び未使用スタック領域が初期化される。初期化3は、起動時において設定キースイッチ37がOFFの状態であり、かつRAM507のデータが破壊されていない場合において行う初期化であり、初期化3では、非保存ワーク、未使用領域及び未使用スタック領域が初期化される。初期化4は、1ゲーム終了時に行う初期化であり、初期化4では、RAM507の格納領域のうち、未使用領域及び未使用スタック領域が初期化される。   Initialization 1 is an initialization performed when the setting key switch 37 is in an ON state at the time of startup and shifts to a setting change state, or initialization performed when a RAM abnormality error occurs. In the storage area of the RAM 507, all areas (including the unused area and the unused stack area) other than the used stack area are initialized. Initialization 2 is initialization performed at the end of the BB. In initialization 2, a general work, an unused area, and an unused stack area are initialized in the storage area of the RAM 507. Initialization 3 is initialization that is performed when the setting key switch 37 is in an OFF state at the time of startup and the data in the RAM 507 is not destroyed. In the initialization 3, non-saved work, unused area, and unused The used stack area is initialized. Initialization 4 is initialization performed at the end of one game. In initialization 4, an unused area and an unused stack area in the storage area of the RAM 507 are initialized.

尚、本実施例では、初期化1を設定変更状態の移行前に行っているが、設定変更状態の終了時に行ったり、設定変更状態移行前、設定変更状態終了時の双方で行うようにしても良い。この場合、設定値ワークを初期化してしまうと確定した設定値が失われてしまうこととなるので、設定変更状態終了時の初期化では、設定値ワークの初期化は行われない。   In this embodiment, initialization 1 is performed before the change of the setting change state. However, the initialization 1 is performed at the end of the setting change state, or both before the change of the setting change state and at the end of the setting change state. Also good. In this case, if the set value work is initialized, the determined set value is lost. Therefore, the initialization of the set value work is not performed in the initialization at the end of the setting change state.

本実施例のスロットマシン1は、前述のように遊技状態に応じて設定可能な賭数の規定数が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。本実施例では、後に説明するが、遊技状態として、レギュラーボーナス(以下ではRBと称す)(ビッグボーナス(以下ではBBと称す))、通常遊技状態があり、このうちRB(BB)では賭数の規定数として2が定められており、通常遊技状態では賭数の規定数として3が定められている。このため、遊技状態がRB(BB)であれば、賭数として2が設定されるとゲームを開始させることが可能となり、通常遊技状態であれば、賭数として3が設定されるとゲームを開始させることが可能となる。尚、本実施例では、遊技状態に応じた規定数の賭数が設定された時点で、全ての入賞ラインL1〜L5が有効化されるようになっており、RB(BB)では賭数として2が定められた時点で全ての入賞ラインL1〜L5が有効化されることなり、通常遊技状態では賭数として3が設定された時点で全ての入賞ラインL1〜L5が有効化されることとなる。   In the slot machine 1 according to the present embodiment, as described above, the specified number of bets that can be set according to the gaming state is determined, and the specified number of bets determined according to the gaming state is set. It becomes possible to start the game on the condition. In this embodiment, as will be described later, there are a regular bonus (hereinafter referred to as RB) (big bonus (hereinafter referred to as BB)) and a normal gaming state as a gaming state. 2 is defined as the prescribed number of 3 and 3 is defined as the prescribed number of bets in the normal gaming state. For this reason, if the gaming state is RB (BB), the game can be started when the bet number is set to 2, and if the bet number is set to 3 in the normal gaming state, the game is started. It is possible to start. In the present embodiment, all the pay lines L1 to L5 are activated when a specified number of bets corresponding to the gaming state are set, and as RB (BB) All winning lines L1 to L5 are activated when 2 is determined, and all winning lines L1 to L5 are activated when 3 is set as the number of bets in the normal gaming state. Become.

本実施例のスロットマシン1は、全てのリール2L、2C、2Rが停止した際に、有効化された入賞ライン(本実施例の場合、常に全ての入賞ラインが有効化されるため、以下では、有効化された入賞ラインを単に入賞ラインと呼ぶ)上に役と呼ばれる図柄の組合せが揃うと入賞となる。役は、同一図柄の組合せであっても良いし、異なる図柄を含む組合せであっても良い。入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役と、遊技状態の移行を伴う特別役と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、後述する内部抽選に当選して、当該役の当選フラグがRAM507に設定されている必要がある。   In the slot machine 1 of this embodiment, when all the reels 2L, 2C, 2R are stopped, the activated pay line (in the present embodiment, all the pay lines are always enabled. The activated winning line is simply referred to as a winning line). When a combination of symbols called a combination is arranged on the winning line, a winning is achieved. The combination may be a combination of the same symbols or a combination including different symbols. The type of winning combination is determined according to the game state, but it can be roughly divided into a small role with payout of medals and a replay that can start the next game without the need to set the number of bets. There are a game combination and a special combination with a transition of the game state. Below, a small role and a re-playing role are collectively called a general role. In order to win each winning combination determined according to the game state, it is necessary to win an internal lottery described later and set a winning flag for the winning combination in the RAM 507.

尚、これら各役の当選フラグのうち、小役及び再遊技役の当選フラグは、当該フラグが設定されたゲームにおいてのみ有効とされ、次のゲームでは無効となるが、特別役の当選フラグは、当該フラグにより許容された役の組合せが揃うまで有効とされ、許容された役の組合せが揃ったゲームにおいて無効となる。すなわち特別役の当選フラグが一度当選すると、例え、当該フラグにより許容された役の組合せを揃えることができなかった場合にも、その当選フラグは無効とされずに、次のゲームへ持ち越されることとなる。   Of the winning flags for each of these combinations, the winning flag for the small role and the re-playing role is valid only in the game in which the flag is set, and is invalid in the next game. It is valid until a combination of combinations permitted by the flag is completed, and is invalid in a game having a combination of combinations permitted. In other words, once the special combination winning flag is won, even if the combination of the combinations permitted by the flag cannot be made, the winning flag is not invalidated and is carried over to the next game. It becomes.

このスロットマシン1における役としては、図22に示すように、特別役としてビッグボーナス(以下ではビッグボーナスをBBとする)、レギュラーボーナス(以下ではレギュラーボーナスをRBとする)が、小役として1枚、スイカ、チェリー、ベルが、再遊技役としてリプレイが定められている。   As the role in the slot machine 1, as shown in FIG. 22, a special bonus is a big bonus (hereinafter referred to as a big bonus BB), a regular bonus (hereinafter, a regular bonus is referred to as RB), and a small bonus is 1 Sheets, watermelons, cherries, and bells are replayed as replay players.

チェリーは、いずれの遊技状態においても右リールについて入賞ラインのいずれかに「白チェリー」の図柄が導出されたときに入賞となり、いずれの遊技状態においても1枚のメダルが払い出される。尚、「白チェリー」の図柄が右リールの上段または下段に停止した場合には、入賞ラインL2、L5または入賞ラインL3、L4の2本の入賞ラインにチェリーの組合せが揃うこととなり、2本の入賞ライン上でチェリーに入賞したこととなるので、2枚のメダルが払い出されることとなる。   Cherry is awarded when the symbol “white cherry” is derived on any of the winning lines for the right reel in any gaming state, and one medal is paid out in any gaming state. In addition, when the symbol of “white cherry” stops at the upper or lower stage of the right reel, the combination of cherries is aligned on the two winning lines of the winning lines L2, L5 or the winning lines L3, L4. Since winning a cherry on the winning line, two medals will be paid out.

スイカは、いずれの遊技状態においても入賞ラインのいずれかに「スイカ−スイカ−スイカ」の組合せまたは「スイカ−スイカ−BAR」の組合せが揃ったときに入賞となり、RB(BB)では15枚のメダルが払い出され、通常遊技状態では12枚のメダルが払い出される。ベルは、いずれの遊技状態においても入賞ラインのいずれかに「ベル−ベル−ベル」の組合せが揃ったときに入賞となり、RB(BB)では15枚のメダルが払い出され、通常遊技状態では10枚のメダルが払い出される。   A watermelon is awarded when a combination of “watermelon-watermelon-watermelon” or “watermelon-watermelon-BAR” is available on any of the winning lines in any gaming state, and 15 RBs (BB). Medals are paid out, and in the normal gaming state, 12 medals are paid out. Bell is awarded when the combination of “Bell-Bell-Bell” is aligned on any of the winning lines in any gaming state, and 15 medals are paid out in RB (BB). Ten medals are paid out.

リプレイは、通常遊技状態において入賞ラインのいずれかに「リプレイ−リプレイ−リプレイ」の組合せ、「BAR−リプレイ−リプレイ」の組合せ、または「黒7−リプレイ−リプレイ」の組合せのうちいずれかの組合せが揃ったときに入賞となる。リプレイが入賞したときには、メダルの払い出しはないが次のゲームを改めて賭数を設定することなく開始できるので、次のゲームで設定不要となった賭数に対応した3枚のメダルが払い出されるのと実質的には同じこととなる。   Replay is a combination of “Replay-Replay-Replay”, “BAR-Replay-Replay”, or “Black 7-Replay-Replay” in any of the winning lines in the normal gaming state. Wins when you have the right. When the replay wins, no medals are paid out, but the next game can be started without setting the number of wagers again, so that three medals corresponding to the number of wagers that are not required to be set in the next game are paid out. Is essentially the same.

RBは、通常遊技状態において入賞ラインのいずれかに「網7−網7−黒7」の組合せが揃ったときに入賞となり、遊技状態がRBに移行する。RBは、小役、特にベルの当選確率が高まることによって他の遊技状態よりも遊技者にとって有利となる遊技状態であり、RBが開始した後、12ゲームを消化したとき、または8ゲーム入賞(役の種類は、いずれでも可)したとき、のいずれか早いほうで終了する。   RB is won when the combination of “net 7-net 7-black 7” is aligned on any of the winning lines in the normal gaming state, and the gaming state shifts to RB. The RB is a gaming state that is advantageous to the player over other gaming states by increasing the winning probability of the small role, particularly the bell, and when the 12 games are digested after the RB starts, or when an 8-game winning ( When the type of a combination is allowed), it ends either whichever comes first.

BBは、通常遊技状態において入賞ラインのいずれかに「黒7−黒7−黒7」の組合せ、「網7−網7−網7」の組合せまたは「白7−白7−白7」の組合せが揃ったときに入賞となる。   BB is a combination of “black 7-black 7-black 7”, “net 7-net 7-net 7” or “white 7-white 7-white 7” in any of the winning lines in the normal gaming state. When the combination is complete, a prize is awarded.

BBが入賞すると、遊技状態がBBに移行するとともに同時にRBに移行し、RBが終了した際に、BBが終了していなければ、再度RBに移行し、BBが終了するまで繰り返しRBに制御される。すなわちBB中は、常にRBに制御されることとなる。そして、BBは、当該BB中において遊技者に払い出したメダルの総数が465枚を超えたときに終了する。BBの終了時には、RBの終了条件が成立しているか否かに関わらずRBも終了する。   When BB wins, the gaming state shifts to BB and shifts to RB at the same time. When RB ends, if BB has not ended, it shifts to RB again and is controlled repeatedly until BB ends. The That is, during BB, it is always controlled to RB. The BB ends when the total number of medals paid out to the player in the BB exceeds 465. At the end of the BB, the RB is also ended regardless of whether or not the RB end condition is satisfied.

以下、本実施例の内部抽選について説明する。内部抽選は、上記した各役への入賞を許容するか否かを、全てのリール2L、2C、2Rの表示結果が導出表示される以前に(実際には、スタートスイッチ7の検出時)決定するものである。内部抽選では、まず、スタートスイッチ7の検出時に内部抽選用の乱数値(0〜65535の整数)を取得する。詳しくは、RAM507に割り当てられた乱数値格納ワークの値を同じくRAM507に割り当てられた抽選用ワークに設定する。そして、遊技状態及び特別役の持ち越しの有無に応じて定められた各役について、抽選用ワークに格納された数値データと、遊技状態、賭数及び設定値に応じて定められた各役の判定値数に応じて行われる。   Hereinafter, the internal lottery of the present embodiment will be described. In the internal lottery, it is determined whether or not the above winning combination is permitted before the display results of all the reels 2L, 2C, and 2R are derived and displayed (actually, when the start switch 7 is detected). To do. In the internal lottery, first, a random value for internal lottery (an integer from 0 to 65535) is acquired when the start switch 7 is detected. Specifically, the value of the random number storage work assigned to the RAM 507 is set to the lottery work assigned to the RAM 507. Then, for each combination determined according to the gaming state and whether or not the special combination is carried over, numerical data stored in the lottery work, and determination of each combination determined according to the gaming state, the number of bets and the set value This is done according to the number of values.

乱数値格納ワークは、スタートスイッチ7の操作と同時に乱数値レジスタR1Dにラッチされた数値データが格納される記憶領域であり、乱数値レジスタR1Dに新たな数値データがラッチされる毎に、ラッチされた数値データがその後のタイマ割込処理(メイン)において読み出され、乱数値格納ワークに格納された数値データが新たにラッチされた最新の数値データに更新されるようになっている。   The random value storage work is a storage area for storing numerical data latched in the random value register R1D simultaneously with the operation of the start switch 7, and is latched every time new numerical data is latched in the random value register R1D. The numerical data is read in the subsequent timer interrupt process (main), and the numerical data stored in the random value storage work is updated to the latest latched numerical data.

本実施例では、図22に示すように、遊技状態が、通常遊技状態であるか、RB(BB)であるか、によって内部抽選の対象となる役が異なる。さらに遊技状態が通常遊技状態においては、特別役の持越中であるか否かによっても内部抽選の対象となる役が異なる。   In the present embodiment, as shown in FIG. 22, the combination that is the subject of the internal lottery differs depending on whether the gaming state is the normal gaming state or RB (BB). Further, when the gaming state is the normal gaming state, the role to be subject to the internal lottery varies depending on whether or not the special role is being carried over.

遊技状態が通常遊技状態であり、いずれの特別役も持ち越されていない状態では、BB、RB、リプレイ、スイカ、チェリー、ベルが内部抽選の対象役として順に読み出される。   When the gaming state is the normal gaming state and any special combination is not carried over, BB, RB, replay, watermelon, cherry, and bell are sequentially read out as the target combination of the internal lottery.

遊技状態が通常遊技状態であり、いずれかの特別役が持ち越されている状態では、リプレイ、スイカ、チェリー、ベルが内部抽選の対象役として順に読み出される。   When the gaming state is the normal gaming state and any special combination is carried over, replay, watermelon, cherry, and bell are sequentially read out as the target combinations for the internal lottery.

遊技状態がRBでは、スイカ、チェリー、ベルが内部抽選の対象役として順に読み出される。   When the gaming state is RB, watermelon, cherry, and bell are sequentially read out as the subject combination of the internal lottery.

内部抽選では、内部抽選の対象となる役、現在の遊技状態及び設定値に対応して定められた判定値数を、内部抽選用の乱数値(抽選用ワークの値)に順次加算し、加算の結果がオーバーフローしたときに、当該役に当選したものと判定される。このため、判定値数の大小に応じた確率(判定値数/65536)で役が当選することとなる。   In the internal lottery, the number of judgment values determined in accordance with the internal lottery target, the current game state, and the set value are sequentially added to the internal lottery value (the value of the lottery work) and added. When the result of overflows, it is determined that the winning combination is won. For this reason, a winning combination will be won with a probability (number of determination values / 65536) according to the number of determination values.

そして、いずれかの役の当選が判定された場合には、当選が判定された役に対応する当選フラグをRAM507に割り当てられた内部当選フラグ格納ワークに設定する。内部当選フラグ格納ワークは、2バイトの格納領域にて構成されており、そのうちの上位バイトが、特別役の当選フラグが設定される特別役格納ワークとして割り当てられ、下位バイトが、一般役の当選フラグが設定される一般役格納ワークとして割り当てられている。詳しくは、特別役が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、一般役格納ワークに設定されている当選フラグをクリアする。また、一般役が当選した場合には、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。尚、いずれの役及び役の組合せにも当選しなかった場合には、一般役格納ワークのみクリアする。   If a winning combination of any combination is determined, a winning flag corresponding to the winning combination is set in the internal winning flag storage work assigned to the RAM 507. The internal winning flag storage work consists of a 2-byte storage area, of which the upper byte is assigned as the special role storing work in which the winning flag for the special role is set, and the lower byte is the winning of the general role It is assigned as a general role storage work for which a flag is set. Specifically, when a special combination is won, a special combination winning flag indicating that the special combination is won is set in the special combination storing work, and the winning flag set in the general combination storing work is cleared. When a general combination is won, a winning flag for the general combination indicating that the general combination is won is set in the general combination storing work. If no winning combination is selected, only the general winning combination work is cleared.

次に、リール2L、2C、2Rの停止制御について説明する。   Next, stop control of the reels 2L, 2C, 2R will be described.

メイン制御部41は、リールの回転が開始したとき、及びリールが停止し、かつ未だ回転中のリールが残っているときに、ROM506Aに格納されているテーブルインデックス及びテーブル作成用データを参照して、回転中のリール別に停止制御テーブルを作成する。そして、ストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、該当するリールの停止制御テーブルを参照し、参照した停止制御テーブルの滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。   The main control unit 41 refers to the table index and table creation data stored in the ROM 506A when the reel starts rotating and when the reel stops and the reel that is still rotating still remains. A stop control table is created for each reel that is rotating. When any of the stop switches 8L, 8C, and 8R corresponding to the rotating reel is effectively detected, the stop control table of the corresponding reel is referred to and the slip of the referred stop control table is referred to. Based on the number of frames, control is performed to stop the rotation of the reels 2L, 2C, 2R corresponding to the operated stop switches 8L, 8C, 8R.

テーブルインデックスには、内部抽選による当選フラグの設定状態(以下、内部当選状態と呼ぶ)別に、テーブルインデックスを参照する際の基準アドレスから、テーブル作成用データが格納された領域の先頭アドレスを示すインデックスデータが格納されているアドレスまでの差分が登録されている。これにより内部当選状態に応じた差分を取得し、基準アドレスに対してその差分を加算することで該当するインデックスデータを取得することが可能となる。尚、役の当選状況が異なる場合でも、同一の制御が適用される場合においては、インデックスデータとして同一のアドレスが格納されており、このような場合には、同一のテーブル作成用データを参照して、停止制御テーブルが作成されることとなる。   In the table index, an index that indicates the start address of the area in which the data for table creation is stored, from the reference address when referring to the table index, according to the setting state of the winning flag by internal lottery (hereinafter referred to as the internal winning state) Differences up to the address where the data is stored are registered. As a result, a difference corresponding to the internal winning state is acquired, and the corresponding index data can be acquired by adding the difference to the reference address. Even when the winning combinations are different, when the same control is applied, the same address is stored as the index data. In such a case, the same table creation data is referred to. Thus, a stop control table is created.

テーブル作成用データは、停止操作位置に応じた滑りコマ数を示す停止制御テーブルと、リールの停止状況に応じて参照すべき停止制御テーブルのアドレスと、からなる。   The table creation data includes a stop control table indicating the number of sliding frames according to the stop operation position, and an address of the stop control table to be referred to according to the reel stop status.

リールの停止状況に応じて参照される停止制御テーブルは、全てのリールが回転しているか、左リールのみ停止しているか、中リールのみ停止しているか、右リールのみ停止しているか、左、中リールが停止しているか、左、右リールが停止しているか、中、右リールが停止しているか、によって異なる場合があり、更に、いずれかのリールが停止している状況においては、停止済みのリールの停止位置によっても異なる場合があるので、それぞれの状況について、参照すべき停止制御テーブルのアドレスが回転中のリール別に登録されており、テーブル作成用データの先頭アドレスに基づいて、それぞれの状況に応じて参照すべき停止制御テーブルのアドレスが特定可能とされ、この特定されたアドレスから、それぞれの状況に応じて必要な停止制御テーブルを特定できるようになっている。尚、リールの停止状況や停止済みのリールの停止位置が異なる場合でも、同一の停止制御テーブルが適用される場合においては、停止制御テーブルのアドレスとして同一のアドレスが登録されているものもあり、このような場合には、同一の停止制御テーブルが参照されることとなる。   The stop control table referred to according to the reel stop status is whether all reels are rotating, only the left reel is stopped, only the middle reel is stopped, only the right reel is stopped, It may vary depending on whether the middle reel is stopped, the left and right reels are stopped, the middle and right reels are stopped, and if any reel is stopped, stop Since there may be differences depending on the stop position of the reels already completed, the address of the stop control table to be referenced for each situation is registered for each rotating reel, and based on the top address of the table creation data, It is possible to specify the address of the stop control table that should be referred to according to the status of each, and it is necessary according to each status from this specified address. And to be able to identify the stop control table. Even when the reel stop status and the stopped position of the stopped reel are different, when the same stop control table is applied, the same address may be registered as the address of the stop control table. In such a case, the same stop control table is referred to.

停止制御テーブルは、停止操作が行われたタイミング別の滑りコマ数を特定可能なデータである。本実施例では、リールモータ32L、32C、32Rに、168ステップ(0〜167)の周期で1周するステッピングモータを用いている。すなわちリールモータ32L、32C、32Rを168ステップ駆動させることでリール2L、2C、2Rが1周することとなる。そして、リール1周に対して16ステップ(1図柄が移動するステップ数)毎に分割した21の領域(コマ)が定められており、これらの領域には、リール基準位置から0〜20の領域番号が割り当てられている。一方、1リールに配列された図柄数も21であり、各リールの図柄に対して、リール基準位置から0〜20の図柄番号が割り当てられているので、0番図柄から20番図柄に対して、それぞれ0〜20の領域番号が順に割り当てられていることとなる。そして、停止制御テーブルには、領域番号別の滑りコマ数が所定のルールで圧縮して格納されており、停止制御テーブルを展開することによって領域番号別の滑りコマ数を取得できるようになっている。   The stop control table is data that can specify the number of sliding frames for each timing when the stop operation is performed. In this embodiment, stepping motors that make one turn at a cycle of 168 steps (0 to 167) are used for the reel motors 32L, 32C, and 32R. That is, when the reel motors 32L, 32C, and 32R are driven for 168 steps, the reels 2L, 2C, and 2R make one round. Then, 21 areas (frames) divided every 16 steps (the number of steps that one symbol moves) are defined for one reel, and these areas are areas 0 to 20 from the reel reference position. A number is assigned. On the other hand, the number of symbols arranged on one reel is 21, and symbol numbers 0 to 20 from the reel reference position are assigned to symbols on each reel, so symbols 0 to 20 are assigned to each reel. , Area numbers 0 to 20 are assigned in order. In the stop control table, the number of sliding symbols for each area number is compressed and stored according to a predetermined rule, and the number of sliding symbols for each area number can be acquired by expanding the stop control table. Yes.

前述のようにテーブルインデックス及びテーブル作成用データを参照して作成される停止制御テーブルは、領域番号に対応して、各領域番号に対応する領域が停止基準位置(本実施例では、透視窓3の下段図柄の領域)に位置するタイミング(リール基準位置からのステップ数が各領域番号のステップ数の範囲に含まれるタイミング)でストップスイッチ8L、8C、8Rの操作が検出された場合の滑りコマ数がそれぞれ設定されたテーブルである。   As described above, the stop control table created by referring to the table index and the table creation data corresponds to the area number, and the area corresponding to each area number is the stop reference position (in this embodiment, the perspective window 3). Sliding frame when an operation of the stop switches 8L, 8C, 8R is detected at a timing (a timing in which the number of steps from the reel reference position is included in the range of the number of steps of each region number). It is a table with each number set.

次に、停止制御テーブルの作成手順について説明すると、まず、リール回転開始時においては、そのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスを取得する。具体的には、まずテーブルインデックスを参照し、内部当選状態に対応するインデックスデータを取得し、そして取得したインデックスデータに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから全てのリールが回転中の状態に対応する各リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して全てのリールについて停止制御テーブルを作成する。   Next, the procedure for creating the stop control table will be described. First, at the start of reel rotation, the top address of the table creation data corresponding to the internal winning state of the game is acquired. Specifically, the table index is first referred to, index data corresponding to the internal winning state is obtained, table creation data is identified based on the obtained index data, and all reels are identified from the identified table creation data. The address of the stop control table for each reel corresponding to the state of rotation is acquired, and the stop control table for each reel stored at the acquired address is expanded to generate a stop control table for all reels.

また、いずれか1つのリールが停止したとき、またはいずれか2つのリールが停止したときには、リール回転開始時に取得したインデックスデータ、すなわちそのゲームの内部当選状態に応じたテーブル作成用データの先頭アドレスに基づいてテーブル作成用データを特定し、特定したテーブル作成用データから停止済みのリール及び当該リールの停止位置の領域番号に対応する未停止リールの停止制御テーブルのアドレスを取得し、取得したアドレスに格納されている各リールの停止制御テーブルを展開して未停止のリールについて停止制御テーブルを作成する。   Further, when any one reel stops or any two reels stop, the index data acquired at the start of reel rotation, that is, the top address of the table creation data corresponding to the internal winning state of the game The table creation data is identified based on the table creation data, and the stop control table address of the unreacted reel corresponding to the stopped reel and the area number of the stop position of the reel is obtained from the identified table creation data. The stop control table for each stored reel is expanded to create a stop control table for the unstopped reels.

次に、メイン制御部41がストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作を有効に検出したときに、該当するリールに表示結果を導出させる際の制御について説明すると、ストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作を有効に検出すると、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの停止制御テーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして、取得した滑りコマ数分リールを回転させて停止させる制御を行う。具体的には、停止操作を検出した時点のリール基準位置からのステップ数から、取得した滑りコマ数引き込んで停止させるまでのステップ数を算出し、算出したステップ数分リールを回転させて停止させる制御を行う。これにより、停止操作が検出された停止操作位置の領域番号に対応する領域から滑りコマ数分先の停止位置となる領域番号に対応する領域が停止基準位置(本実施例では、透視窓3の下段図柄の領域)に停止することとなる。   Next, when the main control unit 41 effectively detects any one of the stop switches 8L, 8C, and 8R corresponding to the rotating reel, the control when the display result is derived to the corresponding reel is described. To explain, when any operation corresponding to the rotating reel is detected effectively among the stop switches 8L, 8C, 8R, the stop operation position is based on the number of steps from the reel reference position when the stop operation is detected. The number of sliding symbols corresponding to the area number of the specified stop operation position is acquired by referring to the stop control table of the reel where the stop operation is detected. Then, control is performed to rotate and stop the reel by the number of acquired sliding frames. Specifically, from the number of steps from the reel reference position at the time when the stop operation is detected, the number of steps from the acquired number of sliding frames to the stop is calculated, and the reel is rotated and stopped by the calculated number of steps. Take control. As a result, the area corresponding to the area number that is the stop position ahead of the number of sliding frames from the area corresponding to the area number of the stop operation position where the stop operation is detected is the stop reference position (in this embodiment, the perspective window 3 It will stop in the lower symbol area).

本実施例のテーブルインデックスには、一の遊技状態における一の内部当選状態に対応するインデックスデータとして1つのアドレスのみが格納されており、更に、一のテーブル作成用データには、一のリールの停止状況(及び停止済みのリールの停止位置)に対応する停止制御テーブルの格納領域のアドレスとして1つのアドレスのみが格納されている。すなわち一の遊技状態における一の内部当選状態に対応するテーブル作成用データ、及びリールの停止状況(及び停止済みのリールの停止位置)に対応する停止制御テーブルが一意的に定められており、これらを参照して作成される停止制御テーブルも、一の遊技状態における一の内部当選状態、及びリールの停止状況(及び停止済みのリールの停止位置)に対して一意となる。このため、遊技状態、内部当選状態、リールの停止状況(及び停止済みのリールの停止位置)の全てが同一条件となった際に、同一の停止制御テーブル、すなわち同一の制御パターンに基づいてリールの停止制御が行われることとなる。   In the table index of this embodiment, only one address is stored as index data corresponding to one internal winning state in one gaming state, and further, one table creation data includes one reel. Only one address is stored as the address of the storage area of the stop control table corresponding to the stop status (and the stop position of the stopped reel). In other words, table creation data corresponding to one internal winning state in one gaming state and stop control tables corresponding to reel stop states (and stopped positions of stopped reels) are uniquely determined. The stop control table created with reference to is unique for one internal winning state in one gaming state and the reel stop status (and the stop position of the stopped reel). Therefore, when all of the gaming state, the internal winning state, and the reel stop status (and the stop position of the stopped reel) are the same, the reel is based on the same stop control table, that is, the same control pattern. The stop control is performed.

また、本実施例では、滑りコマ数として0〜4の値が定められており、停止操作を検出してから最大4コマ図柄を引き込んでリールを停止させることが可能である。すなわち停止操作を検出した停止操作位置を含め、最大5コマの範囲から図柄の停止位置を指定できるようになっている。また、1図柄分リールを移動させるのに1コマの移動が必要であるので、停止操作を検出してから最大4図柄を引き込んでリールを停止させることが可能であり、停止操作を検出した停止操作位置を含め、最大5図柄の範囲から図柄の停止位置を指定できることとなる。   Further, in this embodiment, a value of 0 to 4 is determined as the number of sliding frames, and the reel can be stopped by drawing a maximum of 4 symbols after detecting the stop operation. In other words, the stop position of the symbol can be designated from a range of a maximum of 5 frames including the stop operation position where the stop operation is detected. In addition, since it is necessary to move one frame to move the reel for one symbol, it is possible to stop the reel by pulling in a maximum of four symbols after detecting the stop operation. The symbol stop position can be designated from a range of up to five symbols including the operation position.

本実施例では、いずれかの役に当選している場合には、当選役を入賞ライン上に4コマの範囲で最大限引き込み、当選していない役が入賞ライン上に揃わないように引き込む滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う一方、いずれの役にも当選していない場合には、いずれの役も揃わない滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選している役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、最大4コマの引込範囲でハズシて停止させる制御が行われることとなる。   In this embodiment, when any of the winning combinations is won, the winning combination is drawn to the maximum in the range of 4 frames on the winning line, and the non-winning winning combination is drawn so that it is not aligned on the winning line. A stop control table with a defined number of frames is created and reel stop control is performed. If no winning combination is selected, a stop control table with a determined number of sliding symbols that do not have any combination And stop control of the reel. As a result, when a stop operation is performed, if the winning combination can be stopped on the winning line in the drawing range of up to 4 frames, the control is performed so that the winning combination is stopped. The combination that has not been performed will be controlled to be stopped in a drawing range of a maximum of 4 frames.

特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合など、特別役と小役が同時に当選している場合には、当選した小役を入賞ラインに4コマの範囲で最大限に引き込むように滑りコマ数が定められているとともに、当選した小役を入賞ラインに最大4コマの範囲で引き込めない停止操作位置については、当選した特別役を入賞ラインに4コマの範囲で最大限に引き込むように滑りコマ数が定められた停止制御テーブルを作成し、リールの停止制御を行う。これにより、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選している小役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、入賞ライン上に最大4コマの引込範囲で当選している小役を引き込めない場合には、入賞ライン上に最大4コマの引込範囲で当選している特別役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役は、4コマの引込範囲でハズシて停止させる制御が行われることとなる。すなわちこのような場合には、特別役よりも小役を入賞ライン上に揃える制御が優先され、小役を引き込めない場合にのみ、特別役を入賞させることが可能となる。尚、特別役と小役を同時に引き込める場合には、小役のみを引き込み、特別役と同時に小役が入賞ライン上に揃わないようになっている。   When a special role and a small role are elected at the same time, such as when a special role is elected while the special role has been carried over from before the previous game, the winning small role is the maximum in the range of 4 frames on the winning line. The number of sliding frames is fixed so that it can be drawn to the limit, and for the stop operation position where the selected small role cannot be drawn in the range of up to 4 frames in the winning line, the winning special role is in the range of 4 frames in the winning line Then, a stop control table in which the number of sliding frames is determined so as to be pulled in as much as possible is created, and reel stop control is performed. As a result, when a stop operation is performed, if it is possible to stop all the small roles that have been selected in the drawing range of up to 4 frames on the winning line and stop them, control is performed so that the winning combination is stopped. If you can't draw a small role that has been won in the drawing range of up to 4 frames on the line, if you can stop with a special role that has been won in the drawing range of up to 4 frames on the winning line, A control is performed to stop them in a uniform manner, and a winning combination that has not been won will be controlled to be stopped within a 4-frame pull-in range. That is, in such a case, priority is given to the control for aligning the small combination on the winning line over the special combination, and the special combination can be won only when the small combination cannot be drawn. When a special combination and a small combination can be withdrawn at the same time, only the small combination is drawn in, and the small combination is not aligned on the winning line at the same time as the special combination.

尚、本実施例では、特別役が前ゲーム以前から持ち越されている状態で小役が当選した場合や新たに特別役と小役が同時に当選した場合など、特別役と小役が同時に当選している場合には、当選した特別役よりも当選した小役が優先され、小役が引き込めない場合のみ、特別役を入賞ライン上に揃える制御を行っているが、特別役と小役が同時に当選している場合に、小役よりも特別役を入賞ライン上に揃える制御が優先され、特別役を引き込めない場合にのみ、小役を入賞ライン上に揃える制御を行っても良い。   In this example, when a special role is elected while the special role has been carried over from before the previous game, or when a special role and a small role are simultaneously elected, the special role and the small role are won simultaneously. If the selected special role is given priority over the selected special role, the special role is controlled on the winning line only when the small role cannot be withdrawn. When winning simultaneously, priority is given to the control for aligning the special role on the winning line over the small role, and the control for aligning the small role on the winning line may be performed only when the special role cannot be drawn.

特別役が前ゲーム以前から持ち越されている状態で再遊技役が当選した場合など、特別役と再遊技役が同時に当選している場合には、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で再遊技役の図柄を揃えて停止させる制御が行われる。尚、この場合、再遊技役を構成する図柄または同時当選する再遊技役を構成する図柄は、リール2L、2C、2Rのいずれについても5図柄以内、すなわち4コマ以内の間隔で配置されており、4コマの引込範囲で必ず任意の位置に停止させることができるので、特別役と再遊技役が同時に当選している場合には、遊技者によるストップスイッチ8L、8C、8Rの操作タイミングに関わらずに、必ず再遊技役が揃って入賞することとなる。すなわちこのような場合には、特別役よりも再遊技役を入賞ライン上に揃える制御が優先され、必ず再遊技役が入賞することとなる。尚、特別役と再遊技役を同時に引き込める場合には、再遊技役のみを引き込み、再遊技役と同時に特別役が入賞ライン上に揃わないようになっている。   If a special player and a replaying player are elected at the same time, such as when a replaying player is elected while the special role has been carried over from before the previous game, when the stop operation is performed, In addition, a control is performed in which the symbols of the re-gamer are aligned and stopped within a drawing range of up to 4 frames. In this case, the symbols constituting the re-gamer or the symbols constituting the re-gamer to be simultaneously elected are arranged at intervals of 5 symbols or less, that is, within 4 frames, for any of the reels 2L, 2C, and 2R. Since it can always be stopped at any position within the 4-frame pull-in range, if the special combination and the re-playing combination are elected at the same time, the timing of the operation of the stop switches 8L, 8C, 8R by the player Without fail, the re-playing role will always be won. That is, in such a case, the control for aligning the re-games on the winning line has priority over the special game, and the re-games will always win. In the case where the special combination and the re-playing combination can be withdrawn at the same time, only the re-playing combination is drawn in and the special combination is not arranged on the winning line simultaneously with the re-playing combination.

本実施例においてメイン制御部41は、リール2L、2C、2Rの回転が開始した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。尚、リール回転エラーの発生により、一時的にリールの回転が停止した場合でも、その後リール回転が再開した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。   In this embodiment, after the rotation of the reels 2L, 2C, and 2R is started, the main control unit 41 rotates the reels for which the stop operation has not been detected yet until the operation of the stop switches 8L, 8C, and 8R is detected. Continuously, on the condition that the operation of the stop switches 8L, 8C, and 8R is detected, control is performed to stop the display result on the corresponding reel. Even if the reel rotation temporarily stops due to the occurrence of a reel rotation error, the stop operation is still detected until the operation of the stop switches 8L, 8C, and 8R is detected after the reel rotation is restarted. Control is performed to stop the display result of the corresponding reels on the condition that the rotation of the reels that have not been continued is continued and the operation of the stop switches 8L, 8C, and 8R is detected.

尚、本実施例では、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっているが、リールの回転が開始してから、予め定められた自動停止時間が経過した場合に、リールの停止操作がなされない場合でも、停止操作がなされたものとみなして自動的に各リールを停止させる自動停止制御を行うようにしても良い。この場合には、遊技者の操作を介さずにリールが停止することとなるため、例え、いずれかの役が当選している場合でもいずれの役も構成しない表示結果を導出させることが好ましい。   In this embodiment, control is performed to stop the display result on the corresponding reel on condition that the operation of the stop switches 8L, 8C, and 8R is detected. However, the rotation of the reel is started. When a predetermined automatic stop time has elapsed, even if the reel stop operation is not performed, it is assumed that the stop operation has been performed, and automatic stop control is performed to automatically stop each reel. May be. In this case, since the reels are stopped without the player's operation, it is preferable to derive a display result that does not constitute any combination even if any combination is won.

次に、メイン制御部41が演出制御基板90に対して送信するコマンドについて説明する。   Next, a command that the main control unit 41 transmits to the effect control board 90 will be described.

本実施例では、メイン制御部41が演出制御基板90に対して、BETコマンド、クレジットコマンド、内部当選コマンド、リール回転開始コマンド、リール停止コマンド、入賞判定コマンド、払出開始コマンド、払出終了コマンド、遊技状態コマンド、待機コマンド、打止コマンド、エラーコマンド、復帰コマンド、設定開始コマンド、確認開始コマンド、確認終了コマンド、操作検出コマンドを含む複数種類のコマンドを送信する。   In the present embodiment, the main control unit 41 performs a BET command, a credit command, an internal winning command, a reel rotation start command, a reel stop command, a winning determination command, a payout start command, a payout end command, a game with respect to the effect control board 90. A plurality of types of commands including a status command, standby command, abort command, error command, return command, setting start command, confirmation start command, confirmation end command, and operation detection command are transmitted.

これらコマンドは、コマンドの種類を示す1バイトの種類データとコマンドの内容を示す1バイトの拡張データとからなり、サブ制御部91は、種類データからコマンドの種類を判別できるようになっている。   These commands consist of 1-byte type data indicating the command type and 1-byte extension data indicating the command content, and the sub-control unit 91 can determine the command type from the type data.

BETコマンドは、メダルの投入枚数、すなわち賭数の設定に使用されたメダル枚数を特定可能なコマンドであり、ゲーム終了後(設定変更後)からゲーム開始までの状態であり、規定数の賭数が設定されていない状態において、メダルが投入されるか、1枚BETスイッチ5またはMAXBETスイッチ6が操作されて賭数が設定されたときに送信される。また、BETコマンドは、賭数の設定操作がなされたときに送信されるので、BETコマンドを受信することで賭数の設定操作がなされたことを特定可能である。   The BET command is a command that can specify the number of inserted medals, that is, the number of medals used to set the bet number, and is a state from the end of the game (after setting change) to the start of the game. Sent when a medal is inserted or the bet number is set by operating the single BET switch 5 or the MAXBET switch 6 in a state where is not set. Further, since the BET command is transmitted when the betting number setting operation is performed, it is possible to specify that the betting number setting operation has been performed by receiving the BET command.

クレジットコマンドは、クレジットとして記憶されているメダル枚数を特定可能なコマンドであり、ゲーム終了後(設定変更後)からゲーム開始までの状態であり、規定数の賭数が設定されている状態において、メダルが投入されてクレジットが加算されたときに送信される。   The credit command is a command that can specify the number of medals stored as credits, and is a state from the end of the game (after setting change) to the start of the game, and in a state where a predetermined number of bets is set, Sent when a medal is inserted and credits are added.

内部当選コマンドは、内部当選フラグの当選状況、並びに成立した内部当選フラグの種類を特定可能なコマンドであり、スタートスイッチ7が操作されてゲームが開始したときに送信される。また、内部当選コマンドは、スタートスイッチ7が操作されたときに送信されるので、内部当選コマンドを受信することでスタートスイッチ7が操作されたことを特定可能である。   The internal winning command is a command that can specify the winning status of the internal winning flag and the type of the internal winning flag that has been established, and is transmitted when the start switch 7 is operated to start the game. Further, since the internal winning command is transmitted when the start switch 7 is operated, it is possible to specify that the start switch 7 has been operated by receiving the internal winning command.

リール回転開始コマンドは、リールの回転の開始を通知するコマンドであり、リール2L、2C、2Rの回転が開始されたときに送信される。   The reel rotation start command is a command for notifying the start of reel rotation, and is transmitted when rotation of the reels 2L, 2C, and 2R is started.

リール停止コマンドは、停止するリールが左リール、中リール、右リールのいずれかであるか、該当するリールの停止操作位置の領域番号、該当するリールの停止位置の領域番号、を特定可能なコマンドであり、各リールの停止操作に伴う停止制御が行われる毎に送信される。また、リール停止コマンドは、ストップスイッチ8L、8C、8Rが操作されたときに送信されるので、リール停止コマンドを受信することでストップスイッチ8L、8C、8Rが操作されたことを特定可能である。   The reel stop command is a command that can specify whether the reel to be stopped is the left reel, the middle reel, or the right reel, the area number of the corresponding reel stop operation position, and the area number of the corresponding reel stop position. And is transmitted each time stop control is performed in accordance with the stop operation of each reel. Since the reel stop command is transmitted when the stop switches 8L, 8C, and 8R are operated, it is possible to specify that the stop switches 8L, 8C, and 8R are operated by receiving the reel stop command. .

入賞判定コマンドは、入賞の有無、並びに入賞の種類、入賞時のメダルの払出枚数を特定可能なコマンドであり、全リールが停止して入賞判定が行われた後に送信される。   The winning determination command is a command that can specify the presence / absence of winning, the type of winning, and the number of medals to be paid out at the time of winning, and is transmitted after all the reels are stopped and the winning determination is performed.

払出開始コマンドは、メダルの払出開始を通知するコマンドであり、入賞やクレジット(賭数の設定に用いられたメダルを含む)の精算によるメダルの払出が開始されたときに送信される。また、払出終了コマンドは、メダルの払出終了を通知するコマンドであり、入賞及びクレジットの精算によるメダルの払出が終了したときに送信される。   The payout start command is a command for notifying the start of payout of medals, and is transmitted when the payout of medals is started by paying out a prize or credit (including medals used for setting the number of bets). The payout end command is a command for notifying the end of payout of medals, and is transmitted when the payout of medals by winning and winning a credit is completed.

遊技状態コマンドは、次ゲームの遊技状態を特定可能なコマンドであり、設定変更状態の終了時及びゲームの終了時に送信される。   The game state command is a command that can specify the game state of the next game, and is transmitted when the setting change state ends and when the game ends.

待機コマンドは、待機状態へ移行する旨を示すコマンドであり、1ゲーム終了後、賭数が設定されずに一定時間経過して待機状態に移行するとき、クレジット(賭数の設定に用いられたメダルを含む)の精算によるメダルの払出が終了し、払出終了コマンドが送信された後に送信される。   The standby command is a command indicating a transition to the standby state, and after one game is over, a credit (which was used for setting the bet number) is set when the transition to the standby state is made after a predetermined time without setting the bet number. (Including medals) is sent out after the medal payout is completed and the payout end command is sent.

打止コマンドは、打止状態の発生または解除を示すコマンドであり、BB終了後、エンディング演出待ち時間が経過した時点で打止状態の発生を示す打止コマンドが送信され、リセット操作がなされて打止状態が解除された時点で、打止状態の解除を示す打止コマンドが送信される。   The stop command is a command indicating the occurrence or release of the stop state, and after the end of the BB, the stop command indicating the occurrence of the stop state is transmitted when the ending effect waiting time has elapsed, and the reset operation is performed. When the stop state is released, a stop command indicating the release of the stop state is transmitted.

エラーコマンドは、エラー状態の発生または解除、エラー状態の種類を示すコマンドであり、エラーが判定され、エラー状態に制御された時点でエラー状態の発生及びその種類を示すエラーコマンドが送信され、リセット操作がなされてエラー状態が解除された時点で、エラー状態の解除を示すエラーコマンドが送信される。   An error command is a command that indicates the occurrence or cancellation of an error condition and the type of error condition. When an error is determined and controlled to an error condition, an error command indicating the occurrence and type of the error condition is sent and reset. When the error state is canceled after the operation is performed, an error command indicating the cancellation of the error state is transmitted.

復帰コマンドは、メイン制御部41が電断前の制御状態に復帰した旨を示すコマンドであり、メイン制御部41の起動時において電断前の制御状態に復帰した際に送信される。   The return command is a command indicating that the main control unit 41 has returned to the control state before the power interruption, and is transmitted when the main control unit 41 returns to the control state before the power interruption.

設定開始コマンドは、設定変更状態の開始を示すコマンドであり、設定変更状態に移行する際に送信される。また、設定変更状態への移行に伴ってメイン制御部41の制御状態が初期化されるため、設定開始コマンドによりメイン制御部41の制御状態が初期化されたことを特定可能である。   The setting start command is a command indicating the start of the setting change state, and is transmitted when shifting to the setting change state. Further, since the control state of the main control unit 41 is initialized with the transition to the setting change state, it can be specified that the control state of the main control unit 41 is initialized by the setting start command.

確認開始コマンドは、設定確認状態の開始を示すコマンドであり、設定確認状態に移行する際に送信される。確認終了コマンドは、設定確認状態の終了を示すコマンドであり、設定確認状態の終了時に送信される。   The confirmation start command is a command indicating the start of the setting confirmation state, and is transmitted when shifting to the setting confirmation state. The confirmation end command is a command indicating the end of the setting confirmation state, and is transmitted when the setting confirmation state ends.

操作検出コマンドは、操作スイッチ類(1枚BETスイッチ5、MAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R)の検出状態(ON/OFF)を示すコマンドであり、一定間隔毎に送信される。   The operation detection command is a command indicating the detection state (ON / OFF) of the operation switches (one-sheet BET switch 5, MAXBET switch 6, start switch 7, stop switches 8L, 8C, 8R), and is transmitted at regular intervals. Is done.

これらコマンドのうち設定開始コマンド、RAM異常または乱数回路異常を示すエラーコマンド、復帰コマンドは、起動処理において割込が許可される前の段階で生成され、RAM507の特別ワークに割り当てられた特定コマンド送信用バッファに格納され、直ちに送信される。   Among these commands, a setting start command, an error command indicating a RAM error or a random number circuit error, and a return command are generated at a stage before the interrupt is permitted in the startup process, and the specific command assigned to the special work in the RAM 507 is transmitted. Stored in the trust buffer and sent immediately.

設定開始コマンド、RAM異常または乱数回路異常を示すエラーコマンド、復帰コマンド、操作検出コマンド以外のコマンドは、ゲーム処理においてゲームの進行状況に応じて生成され、RAM507の特別ワークに設けられた通常コマンド送信用バッファに一時格納され、タイマ割込処理(メイン)において実行するコマンド送信処理において送信される。   Commands other than the setting start command, the error command indicating the RAM abnormality or the random number circuit abnormality, the return command, and the operation detection command are generated according to the progress of the game in the game process, and are sent to the normal command provided in the special work in the RAM 507. Temporarily stored in the trust buffer and transmitted in the command transmission process executed in the timer interrupt process (main).

操作検出コマンドは、コマンド送信処理が5回実行される毎に生成され、前述の特定コマンド送信用バッファに格納され、直ちに送信される。また、通常コマンド送信用バッファに未送信のコマンドが格納されている状態で操作検出コマンドの送信時期に到達した場合には、操作検出コマンドの送信を優先し、通常コマンド送信用バッファに格納されている未送信のコマンドは、次回のコマンド送信処理において送信されるようになっており、1度のコマンド送信処理において複数のコマンドが送信されることがないようになっている。   The operation detection command is generated every time the command transmission process is executed five times, stored in the aforementioned specific command transmission buffer, and immediately transmitted. In addition, when the operation detection command transmission time is reached with the unsent command stored in the normal command transmission buffer, priority is given to the transmission of the operation detection command and the normal command transmission buffer stores it. The untransmitted command is transmitted in the next command transmission process, and a plurality of commands are not transmitted in one command transmission process.

次に、メイン制御部41が演出制御基板90に対して送信するコマンドに基づいてサブ制御部91が実行する演出の制御について説明する。   Next, the control of the effect performed by the sub control unit 91 based on the command transmitted from the main control unit 41 to the effect control board 90 will be described.

サブ制御部91は、メイン制御部41からのコマンドを受信した際に、コマンド受信割込処理を実行する。コマンド受信割込処理では、RAM91cに設けられた受信用バッファに、コマンド伝送ラインから取得したコマンドを格納する。   When the sub control unit 91 receives a command from the main control unit 41, the sub control unit 91 executes a command reception interrupt process. In the command reception interrupt process, the command acquired from the command transmission line is stored in the reception buffer provided in the RAM 91c.

サブ制御部91は、タイマ割込処理(サブ)において、受信用バッファに未処理のコマンドが格納されているか否かを判定し、未処理のコマンドが格納されている場合には、そのうち最も早い段階で受信したコマンドに基づいてROM91bに格納された制御パターンテーブルを参照し、制御パターンテーブルに登録された制御内容に基づいて液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55等の各種演出装置の出力制御を行う。   In the timer interrupt process (sub), the sub-control unit 91 determines whether or not an unprocessed command is stored in the reception buffer. If an unprocessed command is stored, the sub-control unit 91 is the earliest. The control pattern table stored in the ROM 91b is referred to based on the command received in the stage, and the liquid crystal display 51, effect effect LED 52, speakers 53, 54, reel LED 55, etc. are controlled based on the control contents registered in the control pattern table. Performs output control of various rendering devices.

制御パターンテーブルには、複数種類の演出パターン毎に、コマンドの種類に対応する液晶表示器51の表示パターン、演出効果LED52の点灯態様、スピーカ53、54の出力態様、リールLEDの点灯態様等、これら演出装置の制御パターンが登録されており、サブ制御部91は、コマンドを受信した際に、制御パターンテーブルの当該ゲームにおいてRAM91cに設定されている演出パターンに対応して登録された制御パターンのうち、受信したコマンドの種類に対応する制御パターンを参照し、当該制御パターンに基づいて演出装置の出力制御を行う。これにより演出パターン及び遊技の進行状況に応じた演出が実行されることとなる。   In the control pattern table, the display pattern of the liquid crystal display 51 corresponding to the type of command, the lighting mode of the lighting effect LED 52, the output mode of the speakers 53 and 54, the lighting mode of the reel LED, etc. Control patterns of these effect devices are registered, and when the sub-control unit 91 receives a command, the sub-control unit 91 stores the control patterns registered corresponding to the effect patterns set in the RAM 91c in the game of the control pattern table. Among these, the control pattern corresponding to the type of the received command is referred to, and the output control of the rendering device is performed based on the control pattern. Thereby, the production according to the production pattern and the progress of the game is executed.

尚、サブ制御部91は、あるコマンドの受信を契機とする演出の実行中に、新たにコマンドを受信した場合には、実行中の制御パターンに基づく演出を中止し、新たに受信したコマンドに対応する制御パターンに基づく演出を実行するようになっている。すなわち演出が最後まで終了していない状態でも、新たにコマンドを受信すると、受信した新たなコマンドが新たな演出の契機となるコマンドではない場合を除いて実行していた演出はキャンセルされて新たなコマンドに基づく演出が実行されることとなる。   If the sub-control unit 91 receives a new command during the execution of an effect triggered by the reception of a certain command, the sub-control unit 91 stops the effect based on the control pattern being executed, and changes to the newly received command. An effect based on the corresponding control pattern is executed. In other words, even if the production is not finished to the end, when a new command is received, the production that was being executed is canceled and a new command is received unless the received new command is not a command that triggers a new production. An effect based on the command is executed.

特に、本実施例では、演出の実行中に賭数の設定操作がなされたとき、すなわちサブ制御部91が、賭数が設定された旨を示すBETコマンドを受信したときに、実行中の演出を中止するようになっている。このため、遊技者が、演出を最後まで見るよりも次のゲームを進めたい場合には、演出がキャンセルされ、次のゲームを開始できるので、このような遊技者に対して煩わしい思いをさせることがない。また、演出の実行中にクレジットまたは賭数の精算操作がなされたとき、すなわちサブ制御部91が、ゲームの終了を示す遊技状態コマンドを受信した後、ゲームの開始を示す内部当選コマンドを受信する前に、払出開始コマンドを受信した場合には、実行中の演出を中止するようになっている。クレジットや賭数の精算を行うのは、遊技を終了する場合であり、このような場合に実行中の演出を終了させることで、遊技を終了する意志があるのに、不要に演出が継続してしまわないようになっている。   In particular, in this embodiment, when the betting number setting operation is performed during the execution of the effect, that is, when the sub-control unit 91 receives a BET command indicating that the bet number has been set, Is to be canceled. For this reason, if the player wants to proceed to the next game rather than seeing the production to the end, the production is canceled and the next game can be started. There is no. Further, when a credit or betting amount adjustment operation is performed during the performance, that is, after the sub-control unit 91 receives a game state command indicating the end of the game, it receives an internal winning command indicating the start of the game. When the payout start command is received before, the effect being executed is stopped. Credits and bets are settled when the game is terminated. In such a case, by terminating the performance that is being executed, there is an intention to end the game, but the performance continues unnecessarily. It is designed not to be overwhelmed.

演出パターンは、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じた選択率にて選択され、RAM91cに設定される。演出パターンの選択率は、ROM91bに格納された演出テーブルに登録されており、サブ制御部91は、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じて演出テーブルに登録されている選択率を参照し、その選択率に応じて複数種類の演出パターンからいずれかの演出パターンを選択し、選択した演出パターンを当該ゲームの演出パターンとしてRAM91cに設定するようになっており、同じコマンドを受信しても内部当選コマンドの受信時に選択された演出パターンによって異なる制御パターンが選択されるため、結果として演出パターンによって異なる演出が行われることがある。   When the internal winning command is received, the effect pattern is selected at a selection rate corresponding to the result of the internal lottery indicated by the internal winning command, and is set in the RAM 91c. The selection rate of the effect pattern is registered in the effect table stored in the ROM 91b, and when the sub control unit 91 receives the internal winning command, the sub control unit 91 stores the effect pattern in the effect table according to the result of the internal lottery indicated by the internal winning command. With reference to the registered selection rate, one of the effect patterns is selected from a plurality of types of effect patterns according to the selection rate, and the selected effect pattern is set in the RAM 91c as the effect pattern of the game. Even if the same command is received, a different control pattern is selected depending on the effect pattern selected when the internal winning command is received. As a result, different effects may be performed depending on the effect pattern.

次に、本実施例におけるメイン制御部41が実行する各種制御内容を、図23〜図37に基づいて以下に説明する。   Next, various control contents executed by the main control unit 41 in the present embodiment will be described below with reference to FIGS.

メイン制御部41は、リセット要因が発生すると、図23のフローチャートに示す起動処理(メイン)を行う。尚、リセット要因としては、電源投入時において外部システムリセット端子XSRSTに一定の期間にわたりローレベル信号が入力されたときに発生するシステムリセットや、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことや、指定エリア外走行禁止(IAT)が発生したことなどのユーザリセットがある。このため、起動処理(メイン)は、電源投入に伴うメイン制御部41の起動時及びメイン制御部41の不具合に伴う再起動時に行われる処理である。   When a reset factor occurs, the main control unit 41 performs a startup process (main) shown in the flowchart of FIG. As a reset factor, a system reset that occurs when a low level signal is input to the external system reset terminal XSRST for a certain period at power-on, a time-out signal of a watchdog timer (WDT), etc. There is a user reset such as the occurrence of prohibition of travel outside designated area (IAT). For this reason, the activation process (main) is a process that is performed when the main control unit 41 is activated when the power is turned on and when the main control unit 41 is activated due to a malfunction.

起動処理(メイン)では、まず、CPU505がROM506から読み出したセキュリティチェックプログラム506Aに基づき、図24に示すセキュリティチェック処理を実行する(Sa1)。このとき、メイン制御部41は、セキュリティモードとなり、ROM506に記憶されているゲーム制御用のユーザプログラムは未だ実行されない状態となる。   In the startup process (main), first, the CPU 505 executes the security check process shown in FIG. 24 based on the security check program 506A read from the ROM 506 (Sa1). At this time, the main control unit 41 enters the security mode, and the game control user program stored in the ROM 506 is not yet executed.

セキュリティチェック処理では、図24に示すように、まず、セキュリティモードに制御する時間(セキュリティ時間)を決定するための処理を実行する。このとき、CPU505は、ROM506のプログラム管理エリアに記憶されるセキュリティ時間設定KSESのビット番号[2−0]におけるビット値を読み出す(Sa101)。そして、この読出値が“000”であるか否かを判定する(Sa102)。   In the security check process, as shown in FIG. 24, first, a process for determining a time (security time) for controlling to the security mode is executed. At this time, the CPU 505 reads the bit value in the bit number [2-0] of the security time setting KSES stored in the program management area of the ROM 506 (Sa101). Then, it is determined whether or not the read value is “000” (Sa102).

Sa102にて読出値が“000”と判定された場合には、定常設定時間を既定の固定時間に設定する(Sa103)。ここで、定常設定時間は、セキュリティ時間のうち、システムリセットの発生等に基づくセキュリティチェック処理の実行回数(メイン制御部41がセキュリティーモードとなる回数)に関わりなく、一定となる時間成分である。また、固定時間は、セキュリティ時間のうち、メイン制御部41の仕様などに基づいて予め定められた不変時間成分であり、例えばセキュリティ時間として設定可能な最小値となるものであれば良い。   If the read value is determined to be “000” in Sa102, the steady set time is set to a predetermined fixed time (Sa103). Here, the steady setting time is a constant time component of the security time regardless of the number of executions of the security check process based on the occurrence of a system reset or the like (the number of times the main control unit 41 enters the security mode). The fixed time is an invariant time component determined in advance based on the specification of the main control unit 41 in the security time, and may be a minimum value that can be set as the security time, for example.

Sa102にて読出値が“000”以外と判定された場合には、その読出値に対応して、固定時間に加えて図10(D)に示す設定内容により選択される延長時間を、定常設定時間に設定する(Sa104)。こうして、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、固定時間に加えて予め選択可能な複数の延長時間のいずれかに設定することができる。   If it is determined in Sa102 that the read value is other than “000”, the extension time selected according to the setting contents shown in FIG. The time is set (Sa104). In this way, when the bit value in the bit number [2-0] of the security time setting KSES is a value other than “000”, the security time as the execution time of the security check process can be selected in advance in addition to the fixed time. It can be set to any one of a plurality of extension times.

Sa103、Sa104の処理のいずれかを実行した後には、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を読み出す(Sa105)。そして、この読出値が“00”であるか否かを判定する(Sa106)。   After executing one of the processes of Sa103 and Sa104, the bit value in the bit number [4-3] of the security time setting KSES is read (Sa105). Then, it is determined whether or not the read value is “00” (Sa106).

Sa106にて読出値が“00”と判定された場合には、定常設定時間をセキュリティ時間に設定する(Sa107)。これに対して、読出値が“00”以外と判定された場合には、その読出値に対応して決定される可変設定時間を、定常設定時間に加算してセキュリティ時間に設定する(Sa108)。ここで、可変設定時間は、セキュリティ時間のうち、セキュリティチェック処理が実行されるごとに変化する時間成分であり、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“01”(ショートモード)であるか“10”(ロングモード)であるかに応じて異なる所定の時間範囲で変化する。例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値がメイン制御部41に内蔵された可変セキュリティ時間用レジスタに格納される場合には、Sa108の処理において、可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、可変設定時間がシステムリセット毎に所定の時間範囲でランダムに変化するように決定されれば良い。こうして、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、システムリセットの発生等に基づくセキュリティチェック処理が実行されるごとに所定の時間範囲で変化させることができる。   If the read value is determined to be “00” in Sa106, the steady setting time is set as the security time (Sa107). On the other hand, if it is determined that the read value is other than “00”, the variable set time determined corresponding to the read value is added to the steady set time and set as the security time (Sa108). . Here, the variable setting time is a time component that changes every time the security check process is executed, and the bit value in the bit number [4-3] of the security time setting KSES is “01” (short). Mode) or “10” (long mode), and changes in different predetermined time ranges. For example, when the count value in a predetermined free-run counter is stored in the variable security time register built in the main control unit 41 when the system reset occurs, the variable security time register is stored in the processing of Sa108. By using the value as it is, or by using the value obtained by substituting the stored value for a predetermined arithmetic function (for example, a hash function), the variable set time is random within a predetermined time range at each system reset. What is necessary is just to be determined so that it may change. Thus, when the bit value in the bit number [4-3] of the security time setting KSES is a value other than “00”, the security time that is the execution time of the security check process is set as the security based on the occurrence of the system reset or the like. Each time the check process is executed, it can be changed within a predetermined time range.

ここで、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であり、かつ、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、ステップS4にて設定される延長時間と、ステップS8にて設定される可変設定時間との双方が、固定時間に加算されて、セキュリティ時間が決定されることになる。   Here, the bit value in the bit number [2-0] of the security time setting KSES is a value other than “000”, and the bit value in the bit number [4-3] of the security time setting KSES is other than “00”. In this case, both the extension time set in step S4 and the variable setting time set in step S8 are added to the fixed time, and the security time is determined. .

Sa107、Sa108の処理のいずれかを実行した後には、ROM506の所定領域に記憶されたセキュリティコードを読み出す(Sa109)。ここで、ROM506の所定領域には、記憶内容のデータを所定の演算式によって演算した演算結果のセキュリティコードが予め記憶されている。セキュリティコードの生成方法としては、例えばハッシュ関数を用いてハッシュ値を生成するもの、エラー検出コード(CRCコード)を用いるもの、エラー訂正コード(ECCコード)を用いるもののいずれかといった、予め定められた生成方法を使用すれば良い。また、ROM506のセキュリティコード記憶領域とは異なる所定領域には、セキュリティコードを演算により特定するための演算式が、暗号化して予め記憶されている。   After executing one of the processes of Sa107 and Sa108, the security code stored in the predetermined area of the ROM 506 is read (Sa109). Here, in a predetermined area of the ROM 506, a security code of a calculation result obtained by calculating the data of the stored content by a predetermined calculation formula is stored in advance. As a security code generation method, for example, a hash value is generated using a hash function, an error detection code (CRC code) is used, or an error correction code (ECC code) is used. A generation method may be used. In a predetermined area different from the security code storage area of the ROM 506, an arithmetic expression for specifying the security code by calculation is encrypted and stored in advance.

ステップS9の処理に続いて、暗号化された演算式を復号化して元に戻す(Sa1010)。その後、Sa110で復号化した演算式により、ROM506の所定領域における記憶データを演算してセキュリティコードを特定する(Sa111)。このときセキュリティコードを特定するための演算に用いる記憶データは、例えばROM506の記憶データのうち、セキュリティチェックプログラム506Aとは異なるユーザプログラムの全部又は一部に相当するプログラムデータ、あるいは、所定のテーブルデータを構成する固定データの全部又は一部であれば良い。そして、Sa109にて読み出したセキュリティコードと、Sa111にて特定されたセキュリティコードとを比較する(Sa112)。このときには、比較結果においてセキュリティコードが一致したか否かを判定する(Sa113)。   Following the processing in step S9, the encrypted arithmetic expression is decrypted and restored (Sa1010). Thereafter, the storage code in the predetermined area of the ROM 506 is calculated by the arithmetic expression decrypted in Sa110 to specify the security code (Sa111). At this time, the storage data used for the calculation for specifying the security code is, for example, program data corresponding to all or part of the user program different from the security check program 506A among the storage data of the ROM 506, or predetermined table data May be all or a part of the fixed data constituting the. Then, the security code read in Sa109 is compared with the security code specified in Sa111 (Sa112). At this time, it is determined whether or not the security codes match in the comparison result (Sa113).

Sa113にてセキュリティコードが一致しない場合には、ROM506に不正な変更が加えられたと判断して、CPU505の動作を停止状態(HALT)へ移行させる。これに対して、Sa113にてセキュリティコードが一致した場合には、Sa107やSa108の処理で設定されたセキュリティ時間が経過したか否かを判定する(Sa114)。このとき、セキュリティ時間が経過していなければ、Sa114の処理を繰り返し実行して、セキュリティ時間が経過するまで待機する。そして、Sa114にてセキュリティ時間が経過したと判定された場合には、セキュリティチェック処理を終了し、CPU505に内蔵されたプログラムカウンタの値をROM506におけるユーザプログラムの先頭アドレス(アドレス0000H)に設定することなどにより、メイン制御部41の動作状態がセキュリティモードからユーザモードへと移行し、ROM506に記憶されたユーザプログラムの実行が開始されることになる。   If the security codes do not match at Sa113, it is determined that an unauthorized change has been made to the ROM 506, and the operation of the CPU 505 is shifted to the halt state (HALT). On the other hand, if the security codes match in Sa113, it is determined whether or not the security time set in the processing of Sa107 or Sa108 has passed (Sa114). At this time, if the security time has not elapsed, the process of Sa114 is repeatedly executed and waits until the security time elapses. If it is determined in Sa114 that the security time has elapsed, the security check process is terminated, and the value of the program counter built in the CPU 505 is set to the start address (address 0000H) of the user program in the ROM 506. As a result, the operation state of the main control unit 41 shifts from the security mode to the user mode, and execution of the user program stored in the ROM 506 is started.

メイン制御部41は、Sa1のセキュリティチェック処理の終了後、内蔵デバイスや周辺IC、割込モード、スタックポインタ等を初期化した後(Sa2)、入力ポートから電圧低下信号の検出データを取得し、電圧低下信号が入力されているか否か、すなわち電圧が安定しているか否かを判定し(Sa3)、電圧低下信号が入力されている場合には、電圧低下信号が入力されているか否かの判定以外は、いずれの処理も行わないループ処理に移行する。   After the security check process of Sa1 is completed, the main control unit 41 initializes the built-in device, peripheral IC, interrupt mode, stack pointer, and the like (Sa2), then acquires detection data of the voltage drop signal from the input port, It is determined whether or not the voltage drop signal is input, that is, whether or not the voltage is stable (Sa3). If the voltage drop signal is input, whether or not the voltage drop signal is input is determined. Except for the determination, the process proceeds to a loop process in which no process is performed.

Sa3のステップにおいて電圧低下信号が入力されていないと判定した場合には、Iレジスタ及びIYレジスタの値を初期化する(Sa4)。Iレジスタ及びIYレジスタの初期化により、Iレジスタには、割込発生時に参照する割込テーブルのアドレスが設定され、IYレジスタには、RAM507の格納領域を参照する際の基準アドレスが設定される。これらの値は、固定値であり、起動時には常に初期化されることとなる。   If it is determined in step Sa3 that the voltage drop signal has not been input, the values of the I register and IY register are initialized (Sa4). By initialization of the I register and the IY register, an interrupt table address to be referred to when an interrupt occurs is set in the I register, and a reference address for referring to the storage area of the RAM 507 is set in the IY register. . These values are fixed values and are always initialized at startup.

次いで、RAM507へのアクセスを許可し(Sa5)、RAM507の全ての格納領域(未使用領域及び未使用スタック領域を含む)のRAMパリティを計算し(Sa6)、打止スイッチ36、自動精算スイッチ29の状態を取得し、メイン制御部41の特定のレジスタに打止機能、自動精算機能の有効/無効を設定する(Sa7)。   Next, access to the RAM 507 is permitted (Sa5), the RAM parity of all storage areas (including the unused area and the unused stack area) of the RAM 507 is calculated (Sa6), the abort switch 36, the automatic settlement switch 29 And the valid / invalid of the stop function and the automatic settlement function are set in a specific register of the main control unit 41 (Sa7).

次いで、Sa6のステップにおいて計算したRAMパリティが0か否かを判定する(Sa8)。正常に電断割込処理(メイン)が行われていれば、RAMパリティが0になるはずであり、Sa8のステップにおいてRAMパリティが0でなければ、RAM507に格納されているデータが正常ではなく、この場合には、RAM507の格納領域のうち、使用中スタック領域を除く全ての格納領域を初期化する初期化1を実行した後(Sa31)、設定キースイッチ37がONか否かを判定し(Sa32)、設定キースイッチ37がONであれば、プログラム管理エリアに記憶されている第1乱数初期設定KRS1や第2乱数初期設定KRS2を読み出して、図25に示す乱数回路設定処理を実行した後(Sa26)、乱数回路509における動作異常の有無を検査するために図26に示す乱数回路異常検査処理を実行する(Sa27)。   Next, it is determined whether or not the RAM parity calculated in the step of Sa6 is 0 (Sa8). If the power interruption interrupt process (main) is normally performed, the RAM parity should be 0. If the RAM parity is not 0 in the step of Sa8, the data stored in the RAM 507 is not normal. In this case, after executing the initialization 1 for initializing all the storage areas except the used stack area in the storage area of the RAM 507 (Sa31), it is determined whether or not the setting key switch 37 is ON. (Sa32) If the setting key switch 37 is ON, the first random number initial setting KRS1 and the second random number initial setting KRS2 stored in the program management area are read, and the random number circuit setting process shown in FIG. 25 is executed. Thereafter (Sa26), the random number circuit abnormality inspection process shown in FIG. 26 is executed in order to inspect whether there is an operation abnormality in the random number circuit 509 (Sa27).

図25に示す乱数回路設定処理では、まず、第1乱数初期設定KRS1のビット番号[3]におけるビット値に基づき、乱数回路509を使用するための設定を行う(Sa201)。本実施例では、第1乱数初期設定KRS1のビット番号[3]におけるビット値が予め“1”とされており、このビット値に対応して乱数回路509を使用する設定が行われる。続いて、第1乱数初期設定KRS1のビット番号[2]におけるビット値に基づき、乱数回路509における乱数更新クロックRGKの設定を行う(Sa202)。本実施例では、第1乱数初期設定KRS1のビット番号[2]におけるビット値が予め“1”とされていることに対応して、乱数用クロック生成回路43で生成された乱数用クロックRCLKを2分周して乱数更新クロックRGKとする設定が行われる。   In the random number circuit setting process shown in FIG. 25, first, setting for using the random number circuit 509 is performed based on the bit value in the bit number [3] of the first random number initial setting KRS1 (Sa201). In the present embodiment, the bit value in the bit number [3] of the first random number initial setting KRS1 is set to “1” in advance, and setting to use the random number circuit 509 is performed corresponding to this bit value. Subsequently, the random number update clock RGK in the random number circuit 509 is set based on the bit value in the bit number [2] of the first random number initial setting KRS1 (Sa202). In the present embodiment, the random number clock RCLK generated by the random number clock generation circuit 43 is determined in response to the bit value [2] of the first random number initial setting KRS1 being “1” in advance. Setting is performed by dividing the frequency by two to be the random number update clock RGK.

Sa202での設定を行った後には、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値に基づき、乱数回路509における乱数更新規則の設定を行う(Sa203)。本実施例では、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値として予め“10”が設定されており、乱数列RSNにおける乱数更新規則を2周目以降は自動で変更する設定がなされる。   After the setting in Sa202, the random number update rule is set in the random number circuit 509 based on the bit value [1-0] of the first random number initial setting KRS1 (Sa203). In this embodiment, “10” is set in advance as the bit value in the bit number [1-0] of the first random number initial setting KRS1, and the random number update rule in the random number sequence RSN is automatically changed after the second round. Settings are made.

続いて、第2乱数初期設定KRS2のビット番号[1]におけるビット値に基づき、乱数値となる数値データにおける起動時スタート値を決定する(Sa204)。本実施例では、第2乱数初期設定KRS2のビット番号[1]におけるビット値として予め“1”が設定されており、乱数のスタート値をIDナンバーに基づく値とする設定がなされる。   Subsequently, based on the bit value in the bit number [1] of the second random number initial setting KRS2, a start value at start-up in numerical data to be a random value is determined (Sa204). In this embodiment, “1” is set in advance as the bit value in the bit number [1] of the second random number initial setting KRS2, and the start value of the random number is set to a value based on the ID number.

さらに、第2乱数初期設定KRS2のビット番号[0]におけるビット値に基づき、乱数値となる数値データのスタート値をシステムリセット毎に変更するか否かの設定を行う(Sa205)。本実施例では、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“0”とされており、Sa204にて設定した起動時スタート値をそのまま用いて、乱数回路509におけるスタート値としている。Sa205の処理による設定が完了すると、乱数回路509では乱数値の生成動作が開始されることとなる。尚、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“1”とされている場合には、乱数のスタート値をシステムリセット毎に変更する設定がなされる。この場合には、例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値がメイン制御部41に内蔵された乱数スタート値用レジスタに格納される場合には、Sa205の処理において、乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、乱数のスタート値がシステムリセット毎に所定の数値範囲(例えば乱数生成回路553にて生成されるカウント値順列RCNに含まれる数値データの全部又は一部を含む範囲)でランダムに変化するように決定されれば良い。   Further, based on the bit value in the bit number [0] of the second random number initial setting KRS2, it is set whether or not to change the start value of the numerical data to be a random value at every system reset (Sa205). In this embodiment, the bit value at the bit number [0] of the second random number initial setting KRS2 is set to “0” in advance, and the start value at start-up set in Sa204 is used as it is, and the start value in the random number circuit 509 is used. It is said. When the setting by the processing of Sa205 is completed, the random number circuit 509 starts a random value generation operation. When the bit value [0] of the second random number initial setting KRS2 is set to “1” in advance, the random number start value is changed every time the system is reset. In this case, for example, when the count value in a predetermined free-run counter is stored in the random number start value register built in the main control unit 41 when the system reset occurs, the random number start is performed in the processing of Sa205. By using the stored value of the value register as it is, or by using the value obtained by substituting the stored value into a predetermined arithmetic function (for example, a hash function), the random number start value is predetermined at each system reset. (For example, a range including all or part of the numerical data included in the count value permutation RCN generated by the random number generation circuit 553) may be determined at random.

尚、乱数回路設定処理による設定は、CPU505の処理が介在することなく、乱数回路509がプログラム管理エリアの記憶データに基づき自律的に行うようにしても良い。この場合、乱数回路509は、メイン制御部41がセキュリティモードとなっているときには初期設定を行わず、乱数値の生成動作が行われないようにしても良い。そして、メイン制御部41にてCPU505がROM506に記憶されたユーザプログラムを読み出してユーザモードが開始されたときに、例えばCPU505から乱数回路509に対して初期設定を指示する制御信号が伝送されたことなどに応答して、乱数回路509が初期設定を行ってから乱数値の生成動作を開始するようにしても良い。また、特に乱数回路509がメイン制御部41に外付けされる場合などには、メイン制御部41がセキュリティモードとなっているときでも、乱数回路509がCPU505における処理とは独立して、プログラム管理エリアの記憶データに基づく初期設定を行ってから、乱数値の生成動作を開始するようにしても良い。   Note that the setting by the random number circuit setting process may be performed autonomously by the random number circuit 509 based on the stored data in the program management area without the processing of the CPU 505 being involved. In this case, the random number circuit 509 may be configured not to perform initialization and not to generate a random value when the main control unit 41 is in the security mode. Then, when the CPU 505 reads the user program stored in the ROM 506 in the main control unit 41 and the user mode is started, for example, a control signal for instructing the initial setting to the random number circuit 509 is transmitted from the CPU 505. In response to the above, the random number generation operation may be started after the random number circuit 509 performs the initial setting. In particular, when the random number circuit 509 is externally attached to the main control unit 41, even when the main control unit 41 is in the security mode, the random number circuit 509 performs program management independently of the processing in the CPU 505. The random number generation operation may be started after initial setting based on the storage data of the area.

図26に示す乱数回路異常検査処理では、まず乱数用クロック異常判定カウンタをクリアして、そのカウント値である乱数用クロック異常判定カウント値を「0」に初期化する(Sa301)。続いて、内部情報レジスタCIFのビット番号[4]に格納されている内部情報データCIF4を読み出す(Sa302)。そして、Sa302での読出値が“1”であるか否かを判定する。このとき、乱数回路509が備える周波数監視回路551によって、乱数用外部クロック端子ERCからの乱数用クロックRCLKに周波数異常が検知された場合には、内部情報データCIF4としてビット値“1”が書き込まれる。   In the random number circuit abnormality inspection process shown in FIG. 26, first, the random number clock abnormality determination counter is cleared, and the random number clock abnormality determination count value, which is the count value, is initialized to “0” (Sa301). Subsequently, the internal information data CIF4 stored in the bit number [4] of the internal information register CIF is read (Sa302). Then, it is determined whether or not the read value at Sa302 is “1”. At this time, if the frequency monitoring circuit 551 provided in the random number circuit 509 detects a frequency abnormality in the random number clock RCLK from the random number external clock terminal ERC, the bit value “1” is written as the internal information data CIF4. .

そこで、Sa303にて読出値が“1”と判定された場合には、乱数用クロック異常判定カウント値を1加算するように更新する(Sa304)。このときには、Sa304での更新後におけるカウント値が所定のクロック異常判定値に達したか否かを判定する(Sa305)。ここで、クロック異常判定値は、周波数監視回路551により乱数用クロックRCLKの周波数異常が連続して検知された場合にクロック異常と判定するために予め定められた数値であれば良い。Sa305にてクロック異常判定値に達していなければ、Sa302の処理に戻り、再び内部情報データCIF4のビット値に基づく判定を行う。   Therefore, when the read value is determined to be “1” in Sa303, the random number clock abnormality determination count value is updated to be incremented by 1 (Sa304). At this time, it is determined whether or not the count value after the update in Sa304 has reached a predetermined clock abnormality determination value (Sa305). Here, the clock abnormality determination value may be a numerical value determined in advance in order to determine that the clock abnormality is detected when the frequency monitoring circuit 551 continuously detects the frequency abnormality of the random number clock RCLK. If the clock abnormality determination value has not been reached in Sa305, the processing returns to Sa302, and determination based on the bit value of the internal information data CIF4 is performed again.

Sa305にてクロック異常判定値に達した場合には、乱数回路異常を示すエラーコードをレジスタに設定し(Sa306)、乱数回路異常検査処理を終了する。   When the clock abnormality determination value is reached in Sa305, an error code indicating a random circuit abnormality is set in the register (Sa306), and the random circuit abnormality inspection process is terminated.

Sa303にて読出値が“0”と判定された場合には、乱数値異常判定カウンタをクリアして、そのカウント値である乱数値異常判定カウント値を「0」に初期化する(Sa307)。尚、Sa303の処理では、Sa302にて読み出した内部情報データCIF4のビット値が複数回(例えば2回など)連続して“0”となったときに、読出値が“0”であると判定しても良い。   If the read value is determined to be “0” in Sa303, the random value abnormality determination counter is cleared, and the random value abnormality determination count value that is the count value is initialized to “0” (Sa307). In the process of Sa303, it is determined that the read value is “0” when the bit value of the internal information data CIF4 read in Sa302 becomes “0” continuously for a plurality of times (for example, twice). You may do it.

Sa307の処理に続いて、乱数値における異常の有無をチェックするために用いるチェック値を、初期値「0000H」に設定する(Sa308)。そして、乱数回路509が備える乱数値レジスタR1Dとなる乱数値レジスタ559Aから、格納されている乱数値となる数値データを読み出す(Sa309)。例えば、Sa309の処理では、乱数ラッチ選択レジスタRDLSのビット番号[0]に格納される乱数ラッチ選択データRDLS0のビット値を“0”として、ソフトウェアによる乱数値の取り込みを指定する。続いて、乱数値取込指定レジスタRDLTのビット番号[0]に格納される乱数値取込指定データRDLT0のビット値を“1”として、乱数値レジスタR1Dへの取り込みを指定する。なお、乱数値取込指定レジスタRDLTのビット番号[0]におけるビット値を“1”とすることは、CPU505から乱数回路509に対して数値データの取り込み(ラッチ)を指示するラッチ信号を出力することに相当する。その後、乱数値レジスタR1Dに供給するレジスタリード信号RRS1をオン状態とすることにより、格納されている乱数値となる数値データを読み出すようにすれば良い。   Subsequent to the processing of Sa307, a check value used for checking whether there is an abnormality in the random number value is set to an initial value “0000H” (Sa308). Then, the stored numerical data as the random value is read from the random value register 559A as the random value register R1D included in the random number circuit 509 (Sa309). For example, in the processing of Sa309, the bit value of the random number latch selection data RDLS0 stored in the bit number [0] of the random number latch selection register RDLS is set to “0”, and the random number value fetching by software is designated. Subsequently, the bit value of the random value fetch specification data RDLT0 stored in the bit number [0] of the random value fetch specification register RDLT is set to “1”, and fetching to the random value register R1D is designated. Note that setting the bit value in the bit number [0] of the random value fetch specification register RDLT to “1” outputs a latch signal instructing the random number circuit 509 to fetch (latch) numerical data from the CPU 505. It corresponds to that. Thereafter, the numerical value data to be stored as the random number value may be read by turning on the register read signal RRS1 supplied to the random number value register R1D.

Sa309にて数値データを読み出した後には、その読出値を乱数検査基準値に設定する(Sa310)。続けて、さらに乱数値レジスタ559Aから乱数値となる数値データを読み出す(Sa311)。尚、Sa311での読出動作は、Sa309での読出動作と同様の手順で行われれば良い。また、Sa309での読出動作と、Sa311での読出動作との間には、乱数回路509で生成される乱数列RSNにおける数値データが変化するために十分な遅延時間を設けると良い。Sa311にて数値データを読み出した後には、乱数検査基準値と、Sa311での読出値との排他的論理和演算を実行する(Sa312)。また、Sa312での演算結果と、チェック値との論理和演算を実行し、演算結果を新たなチェック値とするように更新させる(Sa313)。例えば、チェック値はRAM507の所定領域に記憶しておき、Sa313の処理が実行される毎に、その処理で得られた演算結果を新たなチェック値として保存すれば良い。これにより、乱数値レジスタ559Aから読み出した数値データにおける全ビットの変化が記録され、複数回の読出中に少なくとも1回は値が変化したビットであれば、チェック値において対応するビット値が“1”となる。   After reading the numerical data in Sa309, the read value is set as the random number inspection reference value (Sa310). Subsequently, the numerical value data to be a random number value is further read from the random value register 559A (Sa311). Note that the reading operation at Sa311 may be performed in the same procedure as the reading operation at Sa309. Further, it is preferable to provide a sufficient delay time between the reading operation at Sa309 and the reading operation at Sa311 because the numerical data in the random number sequence RSN generated by the random number circuit 509 changes. After the numerical data is read in Sa311, an exclusive OR operation between the random number inspection reference value and the read value in Sa311 is executed (Sa312). Further, a logical sum operation between the calculation result at Sa312 and the check value is executed, and the calculation result is updated to be a new check value (Sa313). For example, the check value may be stored in a predetermined area of the RAM 507, and each time the process of Sa313 is executed, the calculation result obtained by the process may be saved as a new check value. As a result, changes in all the bits in the numerical data read from the random value register 559A are recorded. If the bit has changed at least once during a plurality of readings, the corresponding bit value in the check value is “1”. "

そこで、チェック値が「FFFFH」となったか否かを判定し(Sa314)、なっていれば、全ビットについてビット値の変化が認められることから、乱数値が正常に更新されていると判断して、乱数回路異常検査処理を終了する。尚、乱数値が正常に更新されていることを確認できた場合には、乱数ラッチ選択レジスタRDLSのビット番号[0]に格納される乱数ラッチ選択データRDLS0のビット値を“1”として、入力ポートP0への信号入力に応じた乱数値レジスタR1Dへの乱数値取込を、指示するよう設定される。本実施例では、入力ポートP0にスタートスイッチ7からのゲーム開始信号SS1を伝送する配線が接続される。これにより、ゲーム開始信号SS1がオン状態となったときに乱数値レジスタR1Dへの乱数値取込を行うことができる。   Therefore, it is determined whether or not the check value is “FFFFH” (Sa 314), and if it is, since a change in the bit value is recognized for all bits, it is determined that the random value has been updated normally. Then, the random number circuit abnormality inspection process ends. If it is confirmed that the random number value has been updated normally, the bit value of the random number latch selection data RDLS0 stored in the bit number [0] of the random number latch selection register RDLS is set to “1”. It is set to instruct the random value fetching to the random value register R1D according to the signal input to the port P0. In this embodiment, a wiring for transmitting the game start signal SS1 from the start switch 7 is connected to the input port P0. Thereby, when the game start signal SS1 is turned on, the random number value can be taken into the random value register R1D.

Sa314にてチェック値が「FFFFH」以外と判定された場合には、乱数値異常判定カウント値を1加算するように更新する(Sa315)。このときには、Sa315での更新後におけるカウント値が所定の乱数値異常判定値に達したか否かを判定する(Sa316)。ここで、乱数値異常判定値は、乱数回路509が正常動作していれば、乱数値レジスタ559Aから読み出される数値データの全ビットが少なくとも1回は変化するのに十分な判定回数となるように、予め定められた数値であれば良い。Sa316にて乱数値異常判定値に達していなければ、Sa311の処理に戻り、再び乱数回路509から乱数値となる数値データを読み出して異常の有無をチェックするための判定などを行う。   If the check value is determined to be other than “FFFFH” in Sa314, the random number abnormality determination count value is updated to be incremented by 1 (Sa315). At this time, it is determined whether or not the count value after the update in Sa315 has reached a predetermined random value abnormality determination value (Sa316). Here, if the random number circuit 509 is operating normally, the random value abnormality determination value is determined so that all the bits of the numerical data read from the random value register 559A are changed at least once. Any predetermined numerical value may be used. If the random value abnormality determination value has not been reached in Sa316, the process returns to Sa311 to perform determination for reading numerical data as a random value from the random number circuit 509 and checking for abnormality.

Sa316にて乱数値異常判定値に達した場合には、乱数回路異常を示すエラーコードをレジスタに設定し(Sa317)、乱数回路異常検査処理を終了する。   If the random value abnormality determination value is reached in Sa316, an error code indicating a random circuit abnormality is set in the register (Sa317), and the random circuit abnormality inspection process is terminated.

尚、Sa314の乱数回路異常検査処理は、CPU505が実行するものに限定されず、CPU505以外のメイン制御部41における内蔵回路により乱数回路異常検査処理が実行されても良い。一例として、乱数回路509が乱数回路異常検査処理を実行する機能を有し、乱数用クロックRCLKの周波数異常が検知されたときや、乱数値の異常が検知されたときに、エラーの発生をCPU505に通知するようにしても良い。また、乱数回路異常検査処理は、Sa314のみにて実行されるものに限定されず、例えばメイン制御部41にてタイマ割込みが発生する毎に、乱数回路異常検査処理の一部又は全部が実行されるようにしても良い。   The random circuit abnormality inspection process of Sa314 is not limited to that executed by the CPU 505, and the random circuit abnormality inspection process may be executed by a built-in circuit in the main control unit 41 other than the CPU 505. As an example, the random number circuit 509 has a function of executing a random number circuit abnormality inspection process. When a frequency abnormality of the random number clock RCLK is detected or when an abnormality of the random number value is detected, the CPU 505 May be notified. In addition, the random number circuit abnormality inspection process is not limited to the one executed only by Sa 314. For example, every time a timer interrupt occurs in the main control unit 41, a part or all of the random number circuit abnormality inspection process is executed. You may make it.

Sa26のステップにおける乱数回路異常検査処理の後、乱数回路異常か否かを判定する(Sa27)。乱数回路異常か否かは、乱数回路異常を示すエラーコードが設定されているか否かによって判定する。Sa27のステップにおいて乱数異常と判定された場合には、乱数回路異常を示すエラーコマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信し(Sa22)、割込を許可して(Sa23)、エラー処理、すなわちRAM異常エラー状態に移行する。   After the random number circuit abnormality inspection process in the step of Sa26, it is determined whether or not the random number circuit is abnormal (Sa27). Whether or not the random number circuit is abnormal is determined by whether or not an error code indicating a random number circuit abnormality is set. If it is determined in step Sa27 that the random number is abnormal, an error command indicating a random circuit error is set in the specific command transmission buffer and transmitted to the sub-control unit 91 (Sa22). (Sa23), the process proceeds to error processing, that is, a RAM abnormal error state.

Sa27のステップにおいて乱数異常ではないと判定された場合には、設定開始コマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信する(Sa28)。次いで、割込を許可して(Sa29)、設定変更処理、すなわち設定変更状態に移行する。   If it is determined in step Sa27 that the random number is not abnormal, a setting start command is set in the specific command transmission buffer and transmitted to the sub-control unit 91 (Sa28). Next, the interruption is permitted (Sa29), and the setting change processing, that is, the setting change state is entered.

Sa31のステップにおいて設定キースイッチ37がOFFであれば、RAM異常を示すエラーコードをレジスタに設定し(Sa32)、RAM異常を示すエラーコマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信し(Sa33)、割込を許可して(Sa34)、エラー処理、すなわちRAM異常エラー状態に移行する。   If the setting key switch 37 is OFF in the step of Sa31, an error code indicating RAM abnormality is set in the register (Sa32), an error command indicating RAM abnormality is set in the specific command transmission buffer, and the sub-control unit 91 is set. In response to the transmission (Sa33), the interrupt is permitted (Sa34), and the process proceeds to error processing, that is, a RAM abnormal error state.

Sa7のステップにおいて、RAMパリティが0であれば、更に破壊診断用データが正常か否かを判定する(Sa8)。正常に電断割込処理(メイン)が行われていれば、破壊診断用データが設定されているはずであり、Sa8のステップにおいて破壊診断用データが正常でない場合(破壊診断用データが電断時に格納される5A(H)以外の場合)にも、RAM507のデータが正常ではないので、Sa24のステップに移行して初期化1を実行し、その後、Sa31のステップにおいて設定キースイッチ37がONであれば、乱数回路設定処理(Sa25)、乱数回路異常検査処理(Sa26)を順次行い、乱数回路異常であれば、乱数回路異常を示すエラーコマンドの送信(Sa22)の後、割込を許可して(Sa23)、エラー処理に移行する。一方、乱数回路異常でなければ、設定開始コマンドの送信(Sa28)の後、割込を許可して(Sa29)、設定変更処理に移行する。また、Sa31のステップにおいて設定キースイッチ37がOFFであれば、RAM異常を示すエラーコードの設定(Sa32)、RAM異常を示すエラーコマンドの送信(S323)の後、割込を許可して(Sa34)、エラー処理に移行する。   If the RAM parity is 0 in step Sa7, it is further determined whether or not the destructive diagnosis data is normal (Sa8). If power interruption interrupt processing (main) is performed normally, the data for destruction diagnosis should be set. If the data for destruction diagnosis is not normal in step Sa8 (data for destruction diagnosis is power interruption) Since the data in the RAM 507 is not normal also in cases other than 5A (H) stored at the time, the process proceeds to step Sa24 to execute initialization 1, and then the setting key switch 37 is turned on in step Sa31. If so, the random number circuit setting process (Sa25) and the random number circuit abnormality inspection process (Sa26) are sequentially performed. If the random number circuit is abnormal, the interrupt is permitted after the transmission of the error command indicating the random number circuit abnormality (Sa22). (Sa23), and the process proceeds to error processing. On the other hand, if the random circuit is not abnormal, after transmission of the setting start command (Sa28), the interrupt is permitted (Sa29), and the process proceeds to the setting change process. If the setting key switch 37 is OFF in step Sa31, an interrupt is permitted after setting an error code indicating a RAM abnormality (Sa32) and sending an error command indicating a RAM abnormality (S323) (Sa34). ), Go to error handling.

Sa8のステップにおいて破壊診断用データが正常であると判定した場合には、RAM507のデータは正常であるので、破壊診断用データをクリアし(Sa9)、RAM507の非保存ワーク、未使用領域及び未使用スタック領域を初期化する初期化3を行った後(Sa10)、設定キースイッチ37がONか否かを判定し(Sa11)、設定キースイッチ37がONであれば、Sa24のステップに移行して初期化1を実行し、乱数回路設定処理(Sa25)、乱数回路異常検査処理(Sa26)を順次行い、乱数回路異常であれば、乱数回路異常を示すエラーコマンドの送信(Sa22)の後、割込を許可して(Sa23)、エラー処理に移行する。一方、乱数回路異常でなければ、設定開始コマンドの送信(Sa28)の後、割込を許可して(Sa29)、設定変更処理に移行する。   If it is determined in step Sa8 that the destructive diagnosis data is normal, the data in the RAM 507 is normal, so the destructive diagnosis data is cleared (Sa9). After performing initialization 3 for initializing the used stack area (Sa10), it is determined whether the setting key switch 37 is ON (Sa11). If the setting key switch 37 is ON, the process proceeds to step Sa24. Initialization 1 is executed, the random number circuit setting process (Sa25), the random number circuit abnormality inspection process (Sa26) are sequentially performed. If the random number circuit is abnormal, after transmission of an error command indicating the random number circuit abnormality (Sa22), The interrupt is permitted (Sa23), and the process proceeds to error processing. On the other hand, if the random circuit is not abnormal, after transmission of the setting start command (Sa28), the interrupt is permitted (Sa29), and the process proceeds to the setting change process.

Sa11のステップにおいて設定キースイッチ37がOFFであれば、Sa25のステップと同じ乱数回路設定処理(Sa13)、Sa26のステップと同じ乱数回路異常検査処理(Sa14)を実行し、乱数回路異常か否かを判定する(Sa15)。   If the setting key switch 37 is OFF in the step of Sa11, the same random number circuit setting process (Sa13) as the step of Sa25 and the same random number circuit abnormality inspection process (Sa14) as the step of Sa26 are executed, and whether or not the random number circuit is abnormal. Is determined (Sa15).

Sa15のステップにおいて乱数回路異常であると判定された場合には、乱数回路異常を示すエラーコマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信し(Sa22)、割込を許可して(Sa23)、エラー処理、すなわちRAM異常エラー状態に移行する。   If it is determined in step Sa15 that the random number circuit is abnormal, an error command indicating the random number circuit abnormality is set in the specific command transmission buffer, and transmitted to the sub-control unit 91 (Sa22). Permitted (Sa23), the process proceeds to error processing, that is, a RAM abnormal error state.

Sa15のステップにおいて乱数回路異常ではないと判定された場合には、各レジスタを電断前の状態、すなわちスタックに保存されている状態に復帰し(Sa16)、復帰コマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信する(Sa17)。そして、乱数ラッチフラグレジスタの値に基づいて乱数値がラッチされているか否か、すなわち乱数値レジスタ559Aに数値データが取り込まれているか否かを判定し(Sa18)、乱数値がラッチされていなければSa20のステップに進み、乱数値がラッチされていれば、乱数値レジスタ559Aから格納されている数値データを読み出し(Sa19)、Sa20のステップに進む。尚、Sa19のステップにおいて乱数値レジスタ559から数値データが読み出されると乱数ラッチフラグレジスタがクリアされ、新たな数値データの取込が許可されることとなる。また、Sa19のステップにおいては、数値データを読み出すものの、読み出した数値データを用いる訳ではなく、スタートスイッチ7の操作に応じて新たな数値データの取込を可能とするためにダミーとして読み出すものである。   If it is determined in step Sa15 that there is no abnormality in the random number circuit, each register is restored to the state before power interruption, that is, the state stored in the stack (Sa16), and the return command is stored in the specific command transmission buffer. It is set and transmitted to the sub-control unit 91 (Sa17). Then, it is determined whether or not the random number value is latched based on the value of the random number latch flag register, that is, whether or not the numerical value data is taken into the random number value register 559A (Sa18), and the random number value must be latched. If the random value is latched, the numerical data stored in the random value register 559A is read (Sa19), and the process proceeds to Sa20. When numerical data is read from the random value register 559 in the step Sa19, the random number latch flag register is cleared, and new numerical data is accepted. In the step of Sa19, although the numerical data is read, the read numerical data is not used, but is read as a dummy so that new numerical data can be taken in according to the operation of the start switch 7. is there.

Sa20のステップでは、復帰コマンドを特定コマンド送信用バッファに設定し、サブ制御部91に対して送信し、その後、割込を許可して(Sa21)、電断前の最後に実行していた処理に戻る。   In step Sa20, the return command is set in the specific command transmission buffer, transmitted to the sub-control unit 91, and then interrupts are permitted (Sa21). Return to.

図27は、メイン制御部41が実行するエラー処理の制御内容を示すフローチャートである。   FIG. 27 is a flowchart showing the control content of error processing executed by the main control unit 41.

エラー処理では、まず、現在の遊技補助表示器12の表示状態をスタックに退避し(Sb1)、レジスタに格納されているエラーコードを遊技補助表示器12に表示し(Sb2)、エラーコードがRAM異常エラーまたは乱数回路異常を示すエラーコードであるか否かを判定し(Sb3)、RAM異常エラーまたは乱数回路異常を示すエラーコードである場合には、いずれの処理も行わないループ処理に移行する。   In the error processing, first, the current display state of the game auxiliary display 12 is saved in the stack (Sb1), the error code stored in the register is displayed on the game auxiliary display 12 (Sb2), and the error code is stored in the RAM. It is determined whether or not the error code indicates an abnormal error or a random circuit error (Sb3). If the error code indicates a RAM abnormal error or a random circuit error, the process proceeds to a loop process that does not perform any process. .

Sb3のステップにおいてRAM異常エラーを示すエラーコードでも乱数回路異常を示すエラーコードでもないと判定された場合には、エラー状態の発生及びその種類を示すエラーコマンドを通常コマンド送信用バッファに設定する(Sb4)。Sb4のステップで設定されたエラーコマンドは、その後のタイマ割込処理(メイン)にてサブ制御部91に対して送信される。   If it is determined in step Sb3 that the error code indicates neither a RAM error error nor a random circuit error, an error command indicating an error state and its type is set in the normal command transmission buffer ( Sb4). The error command set in step Sb4 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

次いで、リセット/設定スイッチ38の操作が検出されているか否かを判定し(Sb5)、リセット/設定スイッチ38の操作が検出されていなければ、更にリセットスイッチ23の操作が検出されているか否かを判定し(Sb6)、リセットスイッチ23の操作も検出されていなければ、Sb5のステップに戻る。すなわちリセット/設定スイッチ38またはリセットスイッチ23の操作が検出されるまで、遊技の進行が不能な状態で待機する。   Next, it is determined whether or not the operation of the reset / setting switch 38 is detected (Sb5). If the operation of the reset / setting switch 38 is not detected, whether or not the operation of the reset switch 23 is further detected. (Sb6), and if the operation of the reset switch 23 is not detected, the process returns to the step Sb5. That is, the game waits in a state where the progress of the game is impossible until the operation of the reset / setting switch 38 or the reset switch 23 is detected.

そして、Sb5のステップにおいてリセット/設定スイッチ38の操作が検出された場合、またはSb6のステップにおいてリセットスイッチ23の操作が検出された場合には、レジスタに格納されているエラーコードをクリアし(Sb7)、遊技補助表示器12の表示状態をSb1のステップにおいてスタックに退避した表示状態に復帰させ(Sb8)、エラー状態が解除された旨を示すエラーコマンドを通常コマンド用送信バッファに設定して(Sb9)、もとの処理に戻る。Sb9で設定されたエラーコマンドは、その後のタイマ割込処理(メイン)にてサブ制御部91に対して送信される。   When the operation of the reset / setting switch 38 is detected in the step Sb5 or when the operation of the reset switch 23 is detected in the step Sb6, the error code stored in the register is cleared (Sb7 ), The display state of the game auxiliary display 12 is restored to the display state saved in the stack in the step Sb1 (Sb8), and an error command indicating that the error state is released is set in the normal command transmission buffer ( Sb9), the process returns to the original process. The error command set in Sb9 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

このようにエラー処理においては、RAM異常、乱数回路異常以外によるエラー処理であれば、リセット/設定スイッチ38またはリセットスイッチ23が操作されることで、エラー状態を解除してもとの処理に復帰するが、RAM異常や乱数回路異常によるエラー処理であれば、リセット/設定スイッチ38またはリセットスイッチ23が操作されてもエラー状態が解除され、元の状態に復帰することはない。   As described above, in the error processing, if the error processing is not due to the RAM abnormality or the random number circuit abnormality, the reset / setting switch 38 or the reset switch 23 is operated to return to the original processing even when the error state is canceled. However, in the case of error processing due to RAM abnormality or random number circuit abnormality, even if the reset / setting switch 38 or the reset switch 23 is operated, the error state is canceled and the original state is not restored.

図28は、メイン制御部41が実行する設定変更処理の制御内容を示すフローチャートである。   FIG. 28 is a flowchart showing the control content of the setting change process executed by the main control unit 41.

設定変更処理では、まず、RAM507の設定値ワークに格納されている設定値を読み出して、読み出した値を表示値とし(Sc1)、表示値が設定可能な範囲(1〜6)外か否かを判定し(Sc2)、表示値が設定可能な範囲内であればSc4のステップに進み、表示値が設定可能な範囲外であれば、表示値を1に補正し、Sc5のステップに進む。   In the setting change process, first, the setting value stored in the setting value work of the RAM 507 is read out, and the read value is set as a display value (Sc1), and whether or not the display value is out of a settable range (1 to 6). (Sc2), if the display value is within the settable range, the process proceeds to step Sc4. If the display value is outside the settable range, the display value is corrected to 1, and the process proceeds to step Sc5.

Sc5のステップでは、設定値表示器24に表示値を表示させた後、リセット/設定スイッチ38とスタートスイッチ7の操作の検出待ちの状態となり(Sc5、Sc6)、Sc5のステップにおいてリセット/設定スイッチ38のonが検出されると、操作スイッチの立上りを示す立上りエッジをクリアし(Sc7)、表示値を1加算し(Sc8)、Sc2のステップに戻る。   In the step of Sc5, after the display value is displayed on the set value display 24, the operation waits for detection of the operation of the reset / setting switch 38 and the start switch 7 (Sc5, Sc6). In the step of Sc5, the reset / setting switch When 38 on is detected, the rising edge indicating the rising of the operation switch is cleared (Sc7), the display value is incremented by 1 (Sc8), and the process returns to the step Sc2.

また、Sc6のステップにおいてスタートスイッチ7のonが検出された場合には、立上りエッジをクリアし(Sc9)、設定値表示器24に表示されている値を0に更新し(Sc10)、設定キースイッチ37がOFFの状態となるまで待機する(Sc11)。   When the start switch 7 is detected to be on in the step of Sc6, the rising edge is cleared (Sc9), the value displayed on the set value display 24 is updated to 0 (Sc10), and the setting key Wait until the switch 37 is turned off (Sc11).

Sc11のステップにおいて設定キースイッチ37のOFFが判定されると、表示値を設定値ワークに格納して(Sc12)、遊技状態コマンドを生成し、コマンド送信用バッファに設定し(Sc13)、ゲーム処理に移行する。Sc13のステップにおいて設定された遊技状態コマンドは、その後のタイマ割込処理(メイン)にてサブ制御部91に対して送信される。   When it is determined in step Sc11 that the setting key switch 37 is OFF, the display value is stored in the setting value work (Sc12), a game state command is generated, set in the command transmission buffer (Sc13), and game processing Migrate to The gaming state command set in the step of Sc13 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

図29は、メイン制御部41が実行するゲーム処理の制御内容を示すフローチャートである。   FIG. 29 is a flowchart showing the control contents of the game process executed by the main control unit 41.

ゲーム処理では、BET処理(Sd1)、内部抽選処理(Sd2)、リール回転処理(Sd3)、入賞判定処理(Sd4)、払出処理(Sd5)、ゲーム終了時処理(Sd6)を順に実行し、ゲーム終了時処理が終了すると、再びBET処理に戻る。   In the game process, a BET process (Sd1), an internal lottery process (Sd2), a reel rotation process (Sd3), a winning determination process (Sd4), a payout process (Sd5), and a game end process (Sd6) are sequentially executed. When the end-time process ends, the process returns to the BET process again.

Sd1のステップにおけるBET処理では、賭数を設定可能な状態で待機し、遊技状態に応じた規定数の賭数が設定され、スタートスイッチ7が操作された時点でゲームを開始させる処理を実行する。   In the BET process in the step of Sd1, the process waits in a state where a bet number can be set, and a process for starting a game when a specified number of bets is set according to the gaming state and the start switch 7 is operated is executed. .

Sd2のステップにおける内部抽選処理では、Sd1のステップにおけるスタートスイッチ7の検出によるゲーム開始と同時にラッチされた数値データに基づいて上記した各役への入賞を許容するかどうかを決定する処理を行う。この内部抽選処理では、それぞれの抽選結果に基づいて、RAM507に当選フラグが設定される。   In the internal lottery process in step Sd2, a process is performed for determining whether or not to allow winning in each of the above-mentioned winning combinations based on the numerical data latched simultaneously with the start of the game by the detection of the start switch 7 in step Sd1. In this internal lottery process, a winning flag is set in the RAM 507 based on each lottery result.

Sd3のステップにおけるリール回転処理では、各リール2L、2C、2Rを回転させる処理、遊技者によるストップスイッチ8L、8C、8Rの操作が検出されたことに応じて対応するリール2L、2C、2Rの回転を停止させる処理を実行する。   In the reel rotation process in the step of Sd3, the process of rotating each reel 2L, 2C, 2R and the operation of the corresponding reel 2L, 2C, 2R in response to the operation of the stop switch 8L, 8C, 8R detected by the player are detected. A process for stopping the rotation is executed.

Sd4のステップにおける入賞判定処理では、Sd3のステップにおいて全てのリール2L、2C、2Rの回転が停止したと判定した時点で、各リール2L、2C、2Rに導出された表示結果に応じて入賞が発生したか否かを判定する処理を実行する。   In the winning determination process in the step Sd4, when it is determined in the step Sd3 that the rotation of all the reels 2L, 2C, and 2R is stopped, the winning is determined according to the display result derived for each reel 2L, 2C, and 2R. A process of determining whether or not it has occurred is executed.

Sd5のステップにおける払出処理では、Sd4のステップにおいて入賞の発生が判定された場合に、その入賞に応じた払出枚数に基づきクレジットの加算並びにメダルの払出等の処理を行う。   In the payout process in step Sd5, when it is determined that a prize is generated in step Sd4, processing such as addition of credits and payout of medals is performed based on the number of payouts according to the win.

Sd6のステップにおけるゲーム終了時処理では、次のゲームに備えて遊技状態を設定する処理を実行する。   In the game end process in the step of Sd6, a process of setting a gaming state in preparation for the next game is executed.

また、ゲーム処理では、ゲームの進行制御に応じてコマンドを生成し、通常コマンド送信用バッファに設定することで、その後のタイマ割込処理(メイン)においてサブ制御部91に対して設定されたコマンドが送信されるようになっている。   In the game process, a command is generated according to the progress control of the game and set in the normal command transmission buffer, so that the command set for the sub-control unit 91 in the subsequent timer interrupt process (main) Is to be sent.

図30〜図32は、メイン制御部41がSd1のステップにおいて実行するBET処理の制御内容を示すフローチャートである。   30 to 32 are flowcharts showing the control contents of the BET process executed by the main control unit 41 in step Sd1.

BET処理では、まず、RAM507において賭数の値が格納されるBETカウンタの値をクリアし(Se1)、遊技状態に応じた規定数(本実施例では遊技状態に関わらず3)をRAM507に設定し(Se2)、RAM507にリプレイゲームである旨を示すリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定する(Se3)。   In the BET process, first, the value of the BET counter in which the value of the bet amount is stored in the RAM 507 is cleared (Se1), and a specified number (3 regardless of the game state in this embodiment) is set in the RAM 507. Then, based on whether or not the replay game flag indicating that it is a replay game is set in the RAM 507, it is determined whether or not the game is a replay game (Se3).

Se3のステップにおいて当該ゲームがリプレイゲームであると判定された場合には、賭数が3加算された旨を示すBETコマンドを通常コマンド用送信バッファに設定し(Se4)、BETカウンタの値を1加算し(Se5)、RAM507に設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されているか否かを判定し(Se6)、BETカウンタの値が規定数でなければSe5のステップに戻り、BETカウンタの値が規定数であれば、メダルの投入不可を示す投入不可フラグをRAM507に設定し(Se7)、Se12のステップに進む。Se4のステップで設定されたBETコマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。   If it is determined in step Se3 that the game is a replay game, a BET command indicating that 3 bets have been added is set in the normal command transmission buffer (Se4), and the value of the BET counter is set to 1. Add (Se5) and refer to the prescribed number of bets set in the RAM 507 to determine whether or not the value of the BET counter is the prescribed number, that is, whether or not the bet number as a game start condition is set. If the value of the BET counter is not the specified number, the process returns to the step of Se5. If the value of the BET counter is the specified number, the insertion prohibition flag indicating that the medal cannot be inserted is set in the RAM 507 (Se7). , Go to the step of Se12. The BET command set in step Se4 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

Se3のステップにおいて当該ゲームがリプレイゲームでないと判定されれば、投入待ち前の設定を行い(Se8)、Se9のステップに進む。投入待ち前の設定では、RAM507に設定されている投入不可フラグをクリアし、メダルの投入が可能な状態とする。   If it is determined in step Se3 that the game is not a replay game, settings before waiting to be made are performed (Se8), and the process proceeds to step Se9. In the setting before waiting for insertion, the insertion disable flag set in the RAM 507 is cleared, and a medal can be inserted.

Se9のステップでは、BETカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されているか否かを判定し、BETカウンタの値が規定数でなければSe14のステップに進み、BETカウンタの値が規定数であれば、さらにいずれかのスイッチがOFFに変化したか否かを判定する(Se10)。Se10のステップでは、いずれかのスイッチの立下りを示す立下りエッジが設定されているか否かに基づいていずれかのスイッチがOFFに変化したか否かが判定される。さらに立下りエッジは、いずれかのスイッチがOFFに変化し、かつ全てのスイッチがOFFである場合にのみ設定されるので、Se10のステップでは、いずれかのスイッチがOFFに変化したか否かに加えて他のスイッチがOFFであるかどうかについても判定されることとなる。   In the step of Se9, it is determined whether or not the value of the BET counter is a specified number, that is, whether or not the number of bets serving as a game start condition is set. Proceeding to the step, if the value of the BET counter is a specified number, it is further determined whether or not any of the switches has been turned OFF (Se10). In the step of Se10, it is determined whether or not any of the switches has been turned off based on whether or not a falling edge indicating the falling of any of the switches is set. Further, since the falling edge is set only when any switch is turned off and all the switches are turned off, in the step of Se10, it is determined whether any switch is turned off or not. In addition, it is also determined whether or not other switches are OFF.

Se10のステップにおいていずれのスイッチもOFFに変化していないと判定された場合、またはいずれかのスイッチがOFFに変化したものの未だONが継続しているスイッチがある場合には、Se14のステップに進み、いずれかのスイッチがOFFに変化し、かつ全てのスイッチがOFFであると判定された場合には、立下りエッジをクリアし(Se11)、Se12のステップに進む。   If it is determined in step Se10 that none of the switches have changed to OFF, or if any switch has changed to OFF but is still ON, the process proceeds to step Se14. If any of the switches changes to OFF and it is determined that all the switches are OFF, the falling edge is cleared (Se11) and the process proceeds to Se12.

Se12のステップでは、乱数ラッチフラグレジスタの値に基づいて数値データがラッチされているか否か、すなわち乱数値レジスタ559Aに数値データが取り込まれているか否かを判定し、数値データがラッチされていなければSe14のステップに進み、数値データがラッチされていれば乱数値レジスタ559Aから数値データを読み出し(Se13)、Se14のステップに進む。尚、Se13のステップにおいて乱数値レジスタ559から数値データが読み出されると乱数ラッチフラグレジスタがクリアされ、新たな数値データの取込が許可されることとなる。また、Se13のステップにおいては、数値データを読み出すものの、読み出した数値データを用いる訳ではなく、スタートスイッチ7の操作に応じて新たな数値データの取込を可能とするためにダミーとして読み出すものである。このため、ゲームの開始条件となる賭数が設定されている状態であるが、スタートスイッチ7以外のスイッチが操作されており、スタートスイッチ7の操作が無効化されている状態でスタートスイッチ7が操作されたために数値データがラッチされ、新たな数値データの取込が禁止されている状態であっても、全てのスイッチがOFFの状態となり、スタートスイッチ7の操作が有効化された時点でラッチされている数値データがダミーとして読み出され、その後のスタートスイッチ7が操作されたタイミングで新たに数値データをラッチすることが可能となる。   In step Se12, it is determined whether or not numerical data is latched based on the value of the random number latch flag register, that is, whether or not numerical data is captured in the random value register 559A, and the numerical data must be latched. If the numerical data is latched, the numerical data is read from the random value register 559A (Se13), and the process proceeds to Se14. Note that when the numerical data is read from the random value register 559 in the step of Se13, the random number latch flag register is cleared, and the acquisition of new numerical data is permitted. In the step of Se13, although the numerical data is read, the read numerical data is not used, but is read as a dummy so that new numerical data can be taken in according to the operation of the start switch 7. is there. For this reason, although the number of bets serving as a game start condition is set, the switches other than the start switch 7 are operated, and the start switch 7 is in the state where the operation of the start switch 7 is invalidated. Even if numerical data is latched because it has been operated and new numerical data is not imported, all switches are turned off and latched when the start switch 7 is activated. The numerical data that has been read is read as a dummy, and the numerical data can be newly latched at the timing when the start switch 7 is operated thereafter.

Se14のステップでは、レジスタにエラーコードが設定されているか否か、すなわちエラーが検知されたか否かを判定し、エラーコードが設定されていれば、図27に示すエラー処理に移行する。   In step Se14, it is determined whether or not an error code is set in the register, that is, whether or not an error is detected. If an error code is set, the process proceeds to error processing shown in FIG.

Se14のステップにおいてエラーコードが設定されていなければ、RAM507に投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定する(Se15)。Se15のステップにおいてメダルの投入が可能な状態であると判定された場合には、流路切替ソレノイド30をonの状態とし、メダルの流路をホッパータンク側の経路としてメダルの投入が可能な状態とし(Se16)、Se18のステップに進み、メダルの投入が可能な状態でないと判定された場合には、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路として新たなメダルの投入を禁止し(Se17)、Se18のステップに進む。   If an error code is not set in the step of Se14, it is determined whether or not a medal can be inserted based on whether or not the insertion disable flag is set in the RAM 507 (Se15). When it is determined in step Se15 that the medal can be inserted, the flow path switching solenoid 30 is turned on, and the medal can be inserted using the medal flow path as a path on the hopper tank side. (Se16), the process proceeds to step Se18, and if it is determined that the medal cannot be inserted, the flow path switching solenoid 30 is set to the off state, and the medal flow path is the path on the medal payout exit 9 side. As a result, the insertion of a new medal is prohibited (Se17), and the process proceeds to Step Se18.

Se18のステップにおいては、設定キースイッチ37がonの状態か否かを判定し、設定キースイッチ37がonであれば、BETカウンタの値が0か否かを判定する(Se19)。そして、Se19のステップにおいてBETカウンタの値が0であれば、確認開始コマンドを通常コマンド送信用バッファに設定し(Se20)、設定確認処理(Se21)、すなわち設定確認状態に移行する。Se20のステップで設定された確認開始コマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。また、Se21のステップにおける設定確認処理が終了した後は、Se9のステップに戻る。   In step Se18, it is determined whether or not the setting key switch 37 is on. If the setting key switch 37 is on, it is determined whether or not the value of the BET counter is 0 (Se19). If the value of the BET counter is 0 in the step Se19, the confirmation start command is set in the normal command transmission buffer (Se20), and the setting confirmation process (Se21), that is, the setting confirmation state is entered. The confirmation start command set in step Se20 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main). Moreover, after the setting confirmation process in the step of Se21 is completed, the process returns to the step of Se9.

Se18のステップにおいて設定キースイッチ37がonではない場合またはSe19のステップにおいてBETカウンタの値が0ではない場合には、Se22のステップに進み、投入メダルセンサ31により投入メダルの通過が検出されたか否か、すなわち投入メダルの通過が検出された旨を示す投入メダルフラグの有無を判定する。Se22のステップにおいて投入メダルの通過が検出されていなければ、Se33のステップに進み、投入メダルの通過が検出されていれば、投入メダルフラグをクリアし(Se23)、RAM507に投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定し(Se24)、メダルの投入が可能な状態でなければSe33のステップに進む。   If the setting key switch 37 is not on in step Se18, or if the value of the BET counter is not 0 in step Se19, the process proceeds to step Se22, and whether or not the inserted medal sensor 31 has detected passage of the inserted medal. That is, it is determined whether or not there is a inserted medal flag indicating that the passage of the inserted medal is detected. If the passage of the inserted medal is not detected in the step of Se22, the process proceeds to the step of Se33, and if the passage of the inserted medal is detected, the inserted medal flag is cleared (Se23), and the non-insertable flag is set in the RAM 507. Whether or not a medal can be inserted is determined based on whether or not a medal can be inserted (Se24). If the medal cannot be inserted, the process proceeds to Step Se33.

Se24のステップにおいてメダルの投入が可能な状態であれば、RAM507に設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否を判定し(Se20)、BETカウンタの値が規定数でなければ、賭数が1加算された旨を示すBETコマンドを通常コマンド送信用バッファに設定し(Se26)、BETカウンタの値を1加算し(Se27)、BETカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されたか否かを判定し(Se28)、BETカウンタの値が規定数でなければSe9のステップに戻る。Se26のステップで設定されたBETコマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。   If the medal can be inserted in the step of Se24, the prescribed number of bets set in the RAM 507 is referred to and it is determined whether or not the value of the BET counter is the prescribed number (Se20). If the value is not the prescribed number, a BET command indicating that the bet number is incremented by 1 is set in the normal command transmission buffer (Se26), the BET counter value is incremented by 1 (Se27), and the BET counter value is It is determined whether or not the number is a specified number, that is, whether or not the number of bets serving as a game start condition has been set (Se28). If the value of the BET counter is not the specified number, the process returns to Step Se9. The BET command set in step Se <b> 26 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

また、Se28のステップにおいてBETカウンタの値が規定数であれば、すなわちゲームの開始条件となる賭数が設定された場合には、Se12のステップに戻り、ゲームの開始条件となる賭数が設定される前に数値データがラッチされていれば、Sa13のステップにて数値データが読み出され、新たな数値データの取込が可能となる。このため、ゲームの開始条件となる賭数が設定されておらず、スタートスイッチ7の操作が無効化されている状態でスタートスイッチ7が操作されたために数値データがラッチされ、新たな数値データの取込が禁止されている状態であっても、ゲームの開始条件となる既定数の賭数が設定され、スタートスイッチ7の操作が有効化された時点でラッチされている数値データがダミーとして読み出され、その後のスタートスイッチ7が操作されたタイミングで新たに数値データをラッチすることが可能となる。   Further, if the value of the BET counter is the specified number in the step of Se28, that is, if the betting number as the game start condition is set, the process returns to the step of Se12 and the betting number as the game start condition is set. If the numerical data is latched before being performed, the numerical data is read in step Sa13, and new numerical data can be taken in. For this reason, since the number of bets serving as a game start condition is not set and the start switch 7 is operated in a state where the operation of the start switch 7 is invalidated, the numerical data is latched, and the new numerical data Even when the take-in is prohibited, a predetermined number of bets are set as a game start condition, and the numerical data latched when the operation of the start switch 7 is validated is read as a dummy. The numerical data can be newly latched at the timing when the start switch 7 is operated thereafter.

Se25のステップにおいてBETカウンタの値が規定数であれば、現在のクレジットカウンタの値を示すクレジットコマンドを通常コマンド送信用バッファに設定し(Se29)、RAM507においてクレジットの値が格納されるクレジットカウンタの値を1加算し(Se30)、クレジットカウンタの値が上限値である50であるか否かを判定し(Se31)、クレジットカウンタの値が50でなければ、Se9のステップに戻り、クレジットカウンタの値が50であれば投入不可フラグをRAM507に設定し(Se32)、Se9のステップに戻る。Se29のステップで設定されたクレジットコマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。   If the value of the BET counter is a prescribed number in the step of Se25, a credit command indicating the current credit counter value is set in the normal command transmission buffer (Se29), and the credit counter in which the credit value is stored in the RAM 507 is stored. The value is incremented by 1 (Se30), and it is determined whether the value of the credit counter is 50 which is the upper limit value (Se31). If the value of the credit counter is not 50, the process returns to the step of Se9, If the value is 50, the input impossible flag is set in the RAM 507 (Se32), and the process returns to the Se9 step. The credit command set in the step of Se29 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

Se33のステップでは、スタートスイッチ7の操作が検出されているか否か、すなわちスタートスイッチ7の立上りを示す立上りエッジが設定されているか否かを判定する。さらに立上りエッジは、いずれかのスイッチがONに変化し、かつ全てのスイッチがOFFである場合にのみ設定されるので、Se33のステップでは、いずれかのスイッチがONに変化したか否かに加えて他のスイッチがOFFであるかどうかについても判定されることとなる。   In step Se33, it is determined whether or not an operation of the start switch 7 is detected, that is, whether or not a rising edge indicating a rising edge of the start switch 7 is set. Further, the rising edge is set only when any switch is turned on and all the switches are turned off. Therefore, in the step of Se33, in addition to whether any switch is turned on. Whether or not the other switch is OFF is also determined.

Se33のステップにおいてスタートスイッチ7の操作が検出されていないと判定された場合、またはスタートスイッチ7が操作されたものの他のスイッチも操作されている場合には、Se39のステップに進み、スタートスイッチ7の操作が有効に検出されていれば、立上りエッジをクリアし(Se34)、RAM507に設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか、すなわちゲームの開始条件となる賭数が設定されているか否かを判定する(Se35)。   If it is determined that the operation of the start switch 7 is not detected in the step of Se33, or if another switch for which the start switch 7 is operated is also operated, the process proceeds to the step of Se39, where the start switch 7 If the operation is effectively detected, the rising edge is cleared (Se34), the specified number of bets set in the RAM 507 is referred to, and whether the value of the BET counter is the specified number, that is, the game start condition It is determined whether or not the bet number is set (Se35).

Se35のステップにおいてBETカウンタの値が規定数でなければ、Se9のステップに戻り、BETカウンタの値が規定数であれば、乱数値格納ワークの値を内部抽選用の乱数値として抽選用ワークに設定し(Se36)、投入不可フラグをRAM507に設定するとともに、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路として新たなメダルの投入を禁止し(Se37)、ゲーム開始時の設定を行う(Se38)。そして、Se38のステップの後、BET処理を終了して図29のフローチャートに復帰する。   If the value of the BET counter is not a specified number in the step of Se35, the process returns to the step of Se9. If the value of the BET counter is a specified number, the value of the random number storage work is set as a random value for internal lottery to the lottery work. Is set (Se36), the insertion impossible flag is set in the RAM 507, the flow path switching solenoid 30 is turned off, and the insertion of a new medal is prohibited using the medal flow path as a path on the medal payout exit 9 side (Se37). ), The setting at the start of the game is performed (Se38). Then, after the step of Se38, the BET process is terminated and the process returns to the flowchart of FIG.

Se39のステップにおいては、1枚BETスイッチ5の操作が検出されているか否か、すなわち1枚BETスイッチ5の立上りを示す立上りエッジが設定されているか否かを判定する。Se39のステップにおいて1枚BETスイッチ5の操作が検出されていなければ、Se47のステップに進み、1枚BETスイッチ5の操作が検出されていれば立上りエッジをクリアし(Se40)、RAM507に設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否かを判定する(Se41)。Se41のステップにおいてBETカウンタの値が規定数であればSe9のステップに戻り、BETカウンタの値が規定数でなければ、クレジットカウンタの値が0であるか否かを判定し(Se42)、クレジットカウンタの値が0であればSe9のステップに戻る。Se42のステップにおいてクレジットカウンタの値が0でなければ、賭数が1加算された旨を示すBETコマンドを通常コマンド送信用バッファに設定し(Se43)、クレジットカウンタの値を1減算し(Se44)、BETカウンタの値を1加算して(Se45)、BETカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されたか否かを判定し(Se46)、BETカウンタの値が規定数でなければSe9のステップに戻る。Se43のステップで設定されたBETコマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。   In the step of Se39, it is determined whether or not the operation of the single BET switch 5 is detected, that is, whether or not the rising edge indicating the rising of the single BET switch 5 is set. If the operation of the single BET switch 5 is not detected in the step of Se39, the process proceeds to the step of Se47, and if the operation of the single BET switch 5 is detected, the rising edge is cleared (Se40) and set in the RAM 507. With reference to the prescribed number of bets, it is determined whether or not the value of the BET counter is the prescribed number (Se41). If the value of the BET counter is a specified number in the step of Se41, the process returns to the step of Se9. If the value of the BET counter is not the specified number, it is determined whether or not the value of the credit counter is 0 (Se42). If the counter value is 0, the process returns to step Se9. If the value of the credit counter is not 0 in the step of Se42, a BET command indicating that 1 is added to the bet number is set in the normal command transmission buffer (Se43), and 1 is subtracted from the value of the credit counter (Se44). Then, the value of the BET counter is incremented by 1 (Se45), and it is determined whether or not the value of the BET counter is a specified number, that is, whether or not the number of bets serving as a game start condition is set (Se46). If the value of the counter is not a specified number, the process returns to step Se9. The BET command set in the step of Se43 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

また、Se46のステップにおいてBETカウンタの値が規定数であれば、すなわちゲームの開始条件となる賭数が設定された場合には、Se12のステップに戻り、ゲームの開始条件となる賭数が設定される前に数値データがラッチされていれば、Sa13のステップにて数値データが読み出され、新たな数値データの取込が可能となる。このため、ゲームの開始条件となる賭数が設定されておらず、スタートスイッチ7の操作が無効化されている状態でスタートスイッチ7が操作されたために数値データがラッチされ、新たな数値データの取込が禁止されている状態であっても、ゲームの開始条件となる既定数の賭数が設定され、スタートスイッチ7の操作が有効化された時点でラッチされている数値データがダミーとして読み出され、その後のスタートスイッチ7が操作されたタイミングで新たに数値データをラッチすることが可能となる。   Further, if the value of the BET counter is the prescribed number in the step of Se46, that is, if the betting number that is the game start condition is set, the process returns to the step of Se12 and the betting number that is the game start condition is set. If the numerical data is latched before being performed, the numerical data is read in step Sa13, and new numerical data can be taken in. For this reason, since the number of bets serving as a game start condition is not set and the start switch 7 is operated in a state where the operation of the start switch 7 is invalidated, the numerical data is latched, and the new numerical data Even when the take-in is prohibited, a predetermined number of bets are set as a game start condition, and the numerical data latched when the operation of the start switch 7 is validated is read as a dummy. The numerical data can be newly latched at the timing when the start switch 7 is operated thereafter.

Se47のステップにおいては、MAXBETスイッチ6の操作が検出されているか否か、すなわちMAXBETスイッチ6の立上り示す立上りエッジが設定されているか否かを判定する。Se47のステップにおいてMAXBETスイッチ6の操作が検出されていなければ、Se61のステップに進み、MAXBETスイッチ6の操作が検出されていれば、立上りエッジをクリアし(Se48)、RAM507に設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否かを判定する(Se49)。Se49のステップにおいてBETカウンタの値が規定数であれば、Se53のステップに進み、BETカウンタの値が規定数でなければ、クレジットカウンタの値が0であるか否かを判定し(Se50)、クレジットカウンタの値が0であれば、Se53のステップに進む。Se50のステップにおいてクレジットカウンタの値が0でなければ、クレジットカウンタの値を1減算し(Se51)、BETカウンタの値を1加算して(Se52)、Se49のステップに戻る。Se53のステップでは、BETカウンタが加算されたか否かを判定し、BETカウンタが加算されていなければ、Se9のステップに戻り、BETカウンタが加算されていれば、加算された数分賭数が加算された旨を示すBETコマンドを通常コマンド送信用バッファに設定し(Se54)、Se55のステップに進む。Se54のステップで設定されたBETコマンドは、その後のタイマ割込処理(メイン)でサブ制御部91に対して送信される。   In the step of Se47, it is determined whether or not the operation of the MAXBET switch 6 is detected, that is, whether or not the rising edge indicating the rising of the MAXBET switch 6 is set. If the operation of the MAXBET switch 6 is not detected in the step of Se47, the process proceeds to the step of Se61. If the operation of the MAXBET switch 6 is detected, the rising edge is cleared (Se48), and the number of bets set in the RAM 507 , It is determined whether or not the value of the BET counter is the specified number (Se49). If the value of the BET counter is the specified number in the step of Se49, the process proceeds to the step of Se53, and if the value of the BET counter is not the specified number, it is determined whether or not the value of the credit counter is 0 (Se50), If the value of the credit counter is 0, the process proceeds to step Se53. If the value of the credit counter is not 0 in the step of Se50, 1 is subtracted from the value of the credit counter (Se51), 1 is added to the value of the BET counter (Se52), and the process returns to the step of Se49. In the step of Se53, it is determined whether or not the BET counter has been added. If the BET counter has not been added, the process returns to the step of Se9, and if the BET counter has been added, the bet number is added by the added number. The BET command indicating that it has been set is set in the normal command transmission buffer (Se54), and the process proceeds to Se55. The BET command set in step Se54 is transmitted to the sub-control unit 91 in the subsequent timer interrupt process (main).

Se55のステップでは、BETカウンタの値が規定数であるか否か、すなわちゲームの開始条件となる賭数が設定されたか否かを判定し、BETカウンタの値が規定数でなければSe9のステップに戻る。また、Se55のステップにおいてBETカウンタの値が規定数であれば、すなわちゲームの開始条件となる賭数が設定された場合には、Se12のステップに戻り、ゲームの開始条件となる賭数が設定される前に数値データがラッチされていれば、Sa13のステップにて数値データが読み出され、新たな数値データの取込が可能となる。このため、ゲームの開始条件となる賭数が設定されておらず、スタートスイッチ7の操作が無効化されている状態でスタートスイッチ7が操作されたために数値データがラッチされ、新たな数値データの取込が禁止されている状態であっても、ゲームの開始条件となる既定数の賭数が設定され、スタートスイッチ7の操作が有効化された時点でラッチされている数値データがダミーとして読み出され、その後のスタートスイッチ7が操作されたタイミングで新たに数値データをラッチすることが可能となる。   In the step of Se55, it is determined whether or not the value of the BET counter is a specified number, that is, whether or not the bet number as a game start condition is set. If the value of the BET counter is not the specified number, the step of Se9 Return to. Further, if the value of the BET counter is the prescribed number in the step of Se55, that is, if the betting number as the game start condition is set, the process returns to the step of Se12 and the betting number as the game start condition is set. If the numerical data is latched before being performed, the numerical data is read in step Sa13, and new numerical data can be taken in. For this reason, since the number of bets serving as a game start condition is not set and the start switch 7 is operated in a state where the operation of the start switch 7 is invalidated, the numerical data is latched, and the new numerical data Even when the take-in is prohibited, a predetermined number of bets are set as a game start condition, and the numerical data latched when the operation of the start switch 7 is validated is read as a dummy. The numerical data can be newly latched at the timing when the start switch 7 is operated thereafter.

Se56のステップにおいては、精算スイッチ10の操作が検出されているか否か、すなわち精算スイッチ10の立上りを示す立上りエッジが設定されているか否かを判定する。Se56のステップにおいて精算スイッチ10の操作が検出されていなければ、Se9のステップに戻り、精算スイッチ10の操作が検出されていれば、立上りエッジをクリアし(Se57)、RAM507にリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定し(Se58)、当該ゲームがリプレイゲームであればSe9のステップに戻る。Se58のステップにおいて当該ゲームがリプレイゲームでなければ、BETカウンタの値が0か否かを判定し(Se59)、BETカウンタの値が0であればSe61のステップに進み、BETカウンタの値が0でなければ、既に設定済み賭数の精算を行う旨を示す賭数精算フラグをRAM507に設定し(Se60)、Se61のステップに進む。Se61のステップにおいては、ホッパーモータ34を駆動してクレジットカウンタまたはBETカウンタに格納された値分のメダルを払い出す制御、すなわちクレジットとして記憶されているメダルまたは賭数の設定に用いられたメダルを返却する制御が行われる精算処理を行う。そして、Se61のステップにおける精算処理の後、RAM507に設定されている投入不可フラグをクリアして(Se62)、Se9のステップに戻る。   In the step of Se56, it is determined whether or not the operation of the settlement switch 10 has been detected, that is, whether or not a rising edge indicating the rising of the settlement switch 10 has been set. If the operation of the settlement switch 10 is not detected in the step of Se56, the process returns to the step of Se9. If the operation of the settlement switch 10 is detected, the rising edge is cleared (Se57), and the replay game flag is set in the RAM 507. Whether or not the game is a replay game is determined based on whether or not it is played (Se58), and if the game is a replay game, the process returns to step Se9. If the game is not a replay game in the step of Se58, it is determined whether or not the value of the BET counter is 0 (Se59). If the value of the BET counter is 0, the process proceeds to the step of Se61 and the value of the BET counter is 0. Otherwise, a bet amount settlement flag indicating that the already set bet amount is to be settled is set in the RAM 507 (Se60), and the process proceeds to Step Se61. In step Se61, the hopper motor 34 is driven to pay out medals corresponding to the value stored in the credit counter or BET counter, that is, medals stored as credits or medals used for setting the number of bets. Checkout process is performed to control the return. Then, after the settlement process in the step of Se61, the input impossible flag set in the RAM 507 is cleared (Se62), and the process returns to the step of Se9.

図33及び図34は、メイン制御部41が一定間隔(0.56msの間隔)で起動処理やゲーム処理に割り込んで実行するタイマ割込処理(メイン)の制御内容を示すフローチャートである。尚、タイマ割込処理(メイン)の実行期間中は自動的に他の割込が禁止される。   FIGS. 33 and 34 are flowcharts showing the control contents of the timer interrupt process (main) executed by the main control unit 41 by interrupting and executing the activation process and the game process at regular intervals (0.56 ms interval). Note that other interrupts are automatically prohibited during the execution period of the timer interrupt process (main).

タイマ割込処理(メイン)においては、まず、使用中のレジスタをスタック領域に退避した後(Sk1)、入力ポートから各種スイッチ類の検出データを入力するポート入力処理を行う(Sk2)。   In the timer interrupt process (main), first, after saving the register in use to the stack area (Sk1), a port input process for inputting detection data of various switches from the input port is performed (Sk2).

次いで、4種類のタイマ割込1〜4から当該タイマ割込処理(メイン)において実行すべきタイマ割込を識別するための分岐用カウンタを1進める(Sk3)。Sk3のステップでは、分岐用カウンタ値が0〜2の場合に1が加算され、カウンタ値が3の場合に0に更新される。すなわち分岐用カウンタ値は、タイマ割込処理(メイン)が実行される毎に、0→1→2→3→0・・・の順番でループする。   Next, the branch counter for identifying the timer interrupt to be executed in the timer interrupt process (main) is advanced by 1 from the four types of timer interrupts 1 to 4 (Sk3). In the step of Sk3, 1 is added when the branch counter value is 0 to 2, and is updated to 0 when the counter value is 3. That is, the branch counter value loops in the order of 0 → 1 → 2 → 3 → 0... Each time the timer interrupt process (main) is executed.

次いで、分岐用カウンタ値を参照して2または3か、すなわちタイマ割込3またはタイマ割込4かを判定し(Sk4)、タイマ割込3またはタイマ割込4ではない場合、すなわちタイマ割込1またはタイマ割込2の場合には、リールモータ32L、32C、32Rの始動時または定速回転中か否かを確認し、リールモータ32L、32C、32Rの始動時または定速回転中であれば、後述するSk8のモータステップ処理において変更した位相信号データや後述するSk21の最終停止処理において変更した位相信号データを出力するモータ位相信号出力処理を実行する(Sk5)。   Next, referring to the counter value for branching, it is determined whether it is 2 or 3, that is, timer interrupt 3 or timer interrupt 4 (Sk4), and if it is not timer interrupt 3 or timer interrupt 4, that is, timer interrupt In the case of 1 or timer interrupt 2, it is checked whether the reel motors 32L, 32C, 32R are started or whether they are rotating at a constant speed, and whether the reel motors 32L, 32C, 32R are started or are rotating at a constant speed. For example, the motor phase signal output process for outputting the phase signal data changed in the motor step process of Sk8 described later and the phase signal data changed in the final stop process of Sk21 described later is executed (Sk5).

次いで、分岐用カウンタ値を参照して1か否か、すなわちタイマ割込2か否かを判定し(Sk7)、タイマ割込2ではない場合、すなわちタイマ割込1の場合には、リールモータ32L、32C、32Rの始動時のステップ時間間隔の制御を行うリール始動処理(Sk8)、リールモータ32L、32C、32Rの位相信号データの変更を行うモータステップ処理(Sk8)、リールモータ32L、32C、32Rの停止後、一定時間経過後に位相信号を1相励磁に変更するモータ位相信号スタンバイ処理(Sk9)を順次実行した後、Sk1においてスタック領域に退避したレジスタを復帰し(Sk19)、割込前の処理に戻る。   Next, referring to the branch counter value, it is determined whether or not it is 1, that is, timer interrupt 2 (Sk7). If it is not timer interrupt 2, that is, timer interrupt 1, reel motor Reel start processing (Sk8) for controlling the step time interval when starting 32L, 32C, 32R, motor step processing (Sk8) for changing phase signal data of the reel motors 32L, 32C, 32R, reel motors 32L, 32C After the stop of 32R, the motor phase signal standby process (Sk9) for changing the phase signal to one-phase excitation after a certain time has been sequentially executed, and then the register saved in the stack area at Sk1 is restored (Sk19), Return to the previous process.

また、Sk6のステップにおいてタイマ割込2の場合には、各種表示器をダイナミック点灯させるLEDダイナミック表示処理(Sk10)、各種LED等の点灯信号等のデータを出力ポートへ出力する制御信号等出力処理(Sk11)、各種時間カウンタを更新する時間カウンタ更新処理(Sk12)、通常コマンド送信用バッファに格納されているコマンドまたは操作検出コマンドをサブ制御部91に対して送信するコマンド送信処理(Sk13)、外部出力信号を更新する外部出力信号更新処理(Sk14)を順次実行した後、Sk1においてスタック領域に退避したレジスタを復帰し(Sk19)、割込前の処理に戻る。   In the case of timer interrupt 2 in the step of Sk6, LED dynamic display processing for dynamically lighting various indicators (Sk10), control signal output processing for outputting data such as lighting signals of various LEDs to the output port, etc. (Sk11), a time counter update process (Sk12) for updating various time counters, a command transmission process (Sk13) for transmitting a command or an operation detection command stored in the normal command transmission buffer to the sub-control unit 91, After sequentially executing the external output signal update process (Sk14) for updating the external output signal, the register saved in the stack area at Sk1 is restored (Sk19), and the process returns to the process before the interrupt.

また、Sk4のステップにおいてタイマ割込3またはタイマ割込4であれば、更に、分岐用カウンタ値を参照して3か否か、すなわちタイマ割込4か否かを判定し(Sk15)、タイマ割込4でなければ、すなわちタイマ割込3であれば、回転中のリール2L、2C、2Rの原点通過(リール基準位置の通過)をチェックし、リール回転エラーの発生を検知するとともに、停止準備が完了しているか(停止準備完了コードが設定されているか)を確認し、停止準備が完了しており、かつ定速回転中であれば、回転中のリールに対応するストップスイッチの操作を有効化する原点通過時処理(Sk16)、スイッチ類の検出状態に変化があったか否かを判定するスイッチ入力判定処理(Sk17)、乱数値レジスタR1Dから数値データを読み出して乱数値格納ワークに格納する乱数値読出処理(Sk18)を順次実行した後、Sk1においてスタック領域に退避したレジスタを復帰し(Sk19)、割込前の処理に戻る。   If it is timer interrupt 3 or timer interrupt 4 in the step of Sk4, it is further determined by referring to the branch counter value whether it is 3 or not, that is, timer interrupt 4 (Sk15). If it is not interrupt 4, that is, if it is timer interrupt 3, the passing of the origin of the rotating reels 2L, 2C, 2R (pass of the reel reference position) is checked, and the occurrence of a reel rotation error is detected and stopped. Check if the preparation is complete (whether the stop preparation completion code is set). If the stop preparation is complete and the motor is rotating at a constant speed, operate the stop switch corresponding to the rotating reel. The origin passing process to be validated (Sk16), the switch input judgment process (Sk17) to judge whether or not the detection state of the switches has changed, and the numerical data is read from the random value register R1D After executing random number reading process to be stored in the random number storing work the (SK18) sequentially, and restores the registers saved in the stack area in Sk1 (Sk19), return to the process before the interrupt process.

また、Sk15のステップにおいてタイマ割込4であれば、ストップスイッチ8L、8C、8Rの検出に伴って停止リールのワークに停止操作位置が格納されたときに、停止リールのワークに格納された停止操作位置から停止位置を決定し、何ステップ後に停止すれば良いかを算出する停止スイッチ処理(Sk20)、停止スイッチ処理で算出された停止までのステップ数をカウントして、停止する時期になったら2相励磁によるブレーキを開始する停止処理(Sk21)、停止処理においてブレーキを開始してから一定時間後に3相励磁とする最終停止処理(Sk22)を順次実行した後、Sk1においてスタック領域に退避したレジスタを復帰し(Sk19)、割込前の処理に戻る。   If the timer interrupt is 4 in the step of Sk15, the stop stored in the work on the stop reel is stored when the stop operation position is stored in the work on the stop reel with the detection of the stop switches 8L, 8C, 8R. The stop position is determined from the operation position, the stop switch process (Sk20) for calculating how many steps should be stopped, the number of steps until the stop calculated in the stop switch process is counted, and when it is time to stop A stop process (Sk21) for starting braking by two-phase excitation and a final stop process (Sk22) for three-phase excitation after a certain time from the start of braking in the stop process are sequentially executed, and then saved in the stack area at Sk1. The register is restored (Sk19), and the process returns to the state before the interrupt.

図35は、メイン制御部41が前述したタイマ割込処理(メイン)のタイマ割込3内において実行する乱数値読出処理の制御内容を示すフローチャートである。   FIG. 35 is a flowchart showing the control content of the random number read process executed by the main control unit 41 in the timer interrupt 3 of the timer interrupt process (main) described above.

乱数値読出処理では、乱数ラッチフラグレジスタの値に基づいて数値データがラッチされているか否か、すなわち乱数値レジスタ559Aに数値データが取り込まれているか否かを判定し(Sk101)、数値データがラッチされていなければ、乱数値読出処理を終了して図34に示すフローチャートに復帰する。   In the random value reading process, it is determined whether or not the numerical data is latched based on the value of the random number latch flag register, that is, whether or not the numerical data is taken into the random value register 559A (Sk101). If not latched, the random number reading process is terminated and the process returns to the flowchart shown in FIG.

Sk101のステップにおいて数値データがラッチされていれば乱数値レジスタ559Aから数値データを読み出し(Sk102)、乱数値格納ワークに格納されている値を、Sk102において読み出した数値データに更新し(Sk103)、乱数値読出処理を終了して図34に示すフローチャートに復帰する。   If the numerical data is latched in the step of Sk101, the numerical data is read from the random value register 559A (Sk102), and the value stored in the random value storage work is updated to the numerical data read in Sk102 (Sk103). The random number reading process is terminated and the process returns to the flowchart shown in FIG.

尚、Sk102のステップにおいて乱数値レジスタ559から数値データが読み出されると乱数ラッチフラグレジスタがクリアされ、乱数値レジスタ559への新たな数値データの取込が許可されることとなる。   When the numerical data is read from the random value register 559 in the step of Sk102, the random number latch flag register is cleared, and the new numerical data is accepted into the random value register 559.

図36は、メイン制御部41が前述したタイマ割込処理(メイン)のタイマ割込3内において実行するスイッチ入力判定処理の制御内容を示すフローチャートである。   FIG. 36 is a flowchart showing the control contents of the switch input determination process executed by the main control unit 41 in the timer interrupt 3 of the timer interrupt process (main) described above.

スイッチ入力判定処理では、ポート入力処理において取得した各スイッチの入力データを更新し(Sk201)、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じであるか否かを判定し(Sk202)、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じでなければ、図34のフローチャートに復帰する。   In the switch input determination process, the input data of each switch acquired in the port input process is updated (Sk201), and it is determined whether or not the detection state indicated by the previous input data is the same as the detection state indicated by the current input data. If the determination is made (Sk202) and the detection state indicated by the previous input data is not the same as the detection state indicated by the current input data, the flow returns to the flowchart of FIG.

Sk202のステップにおいて、前回の入力データが示す検出状態と今回の入力データが示す検出状態とが同じ場合、すなわち2.24msの間同じ検出状態を示している場合には、該当するスイッチの確定データを更新し(Sk203)、Sk204のステップに進む。Sk203のステップでは、今回の確定データを前回の確定データに移動し、前回と今回が同じと判定された入力データが示す検出状態を今回の確定データとして設定する。   In the step of Sk202, when the detection state indicated by the previous input data is the same as the detection state indicated by the current input data, that is, when the same detection state is indicated for 2.24 ms, the determined data of the corresponding switch. Is updated (Sk203), and the process proceeds to Step S204. In step S203, the current confirmed data is moved to the previous confirmed data, and the detection state indicated by the input data determined to be the same as the previous time is set as the current confirmed data.

Sk204のステップでは、更新後の前回の確定データと今回の確定データとが同じか否かを判定し、前回の確定データと今回の確定データとが同じであれば、図34のフローチャートに復帰する。   In the step of Step 204, it is determined whether or not the previous confirmed data after updating and the current confirmed data are the same. If the previous confirmed data and the current confirmed data are the same, the process returns to the flowchart of FIG. .

Sk204のステップにおいて前回の確定データと今回の確定データとが同じでなければ、前回の確定データと今回の確定データとが異なるスイッチがOFFからONに変化したかを判定し(Sk205)、OFFからONに変化した場合には、さらに他のスイッチがONか否かを判定し(Sk206)、他のスイッチがONであればSk208のステップに進み、他のスイッチがONでなければ、該当するスイッチがOFFからONに変化した旨を示す立上りエッジを設定し(Sk207)、Sk208のステップに進む。   If the previous confirmed data and the current confirmed data are not the same in the step of Sk204, it is determined whether a switch in which the previous confirmed data and the current confirmed data are different has changed from OFF to ON (Sk205). If it has changed to ON, it is further determined whether or not another switch is ON (Sk206). If the other switch is ON, the process proceeds to step Sk208. If the other switch is not ON, the corresponding switch is determined. Is set to the rising edge indicating that the value has changed from OFF to ON (Sk207), and the process proceeds to Step S208.

Sk208のステップでは、前回の確定データと今回の確定データとが異なるスイッチがONからOFFに変化したかを判定し、ONからOFFに変化した場合には、他のスイッチがONか否かを判定し(Sk209)、他のスイッチがONであれば図34のフローチャートに復帰し、他のスイッチがONでなければ、該当するスイッチがONからOFFに変化した旨を示す立下りエッジを設定し(Sk210)、図34のフローチャートに復帰する。   In step Sk208, it is determined whether a switch in which the final determined data is different from the final determined data has changed from ON to OFF. If the switch has changed from ON to OFF, it is determined whether other switches are ON. If the other switch is ON, the process returns to the flowchart of FIG. 34. If the other switch is not ON, a falling edge indicating that the corresponding switch has changed from ON to OFF is set ( Sk210), the process returns to the flowchart of FIG.

図37は、電断検出回路48からの電圧低下信号が入力されたときにメイン制御部41が起動処理やゲーム処理に割り込んで実行する電断割込処理(メイン)の制御内容を示すフローチャートである。尚、電断割込処理(メイン)の開始後、自動的に他の割込が禁止され、元の処理に復帰する場合以外は割込が許可されることはない。   FIG. 37 is a flowchart showing the contents of control of power interruption interrupt processing (main) executed by the main control unit 41 by interrupting the activation processing and game processing when the voltage drop signal from the power interruption detection circuit 48 is input. is there. It should be noted that after the interruption interrupt process (main) is started, other interrupts are automatically prohibited, and interrupts are not permitted except when returning to the original process.

電断割込処理(メイン)においては、まず、使用している可能性がある全てのレジスタをスタック領域に退避する(Sm1)。尚、前述したIレジスタ及びIYレジスタの値は使用されているが、起動時の初期化に伴って常に同一の固定値が設定されるため、ここでは保存されない。   In the power interruption interrupt process (main), first, all registers that may be in use are saved in the stack area (Sm1). Note that the values of the I register and IY register described above are used, but are not saved here because the same fixed value is always set with the initialization at the time of startup.

次いで、入力ポートから電圧低下信号の検出データを取得し、電圧低下信号が入力されているか否かを判定する(Sm2)。この際、電圧低下信号が入力されていなければ、Sm1においてスタック領域に退避したレジスタを復帰し(Sm3)、割込前の処理に戻る。この際、自動的に割込が許可される。   Next, the detection data of the voltage drop signal is acquired from the input port, and it is determined whether or not the voltage drop signal is input (Sm2). At this time, if the voltage drop signal is not inputted, the register saved in the stack area in Sm1 is restored (Sm3), and the process before the interruption is returned. At this time, interruption is automatically permitted.

また、Sm2のステップにおいて電圧低下信号が入力されていれば、破壊診断用データ(本実施例では、5A(H))をセットして(Sm4)、全ての出力ポートを初期化する(Sm5)。次いでRAM507の全ての格納領域(未使用領域及び未使用スタック領域を含む)の排他的論理和が0になるようにRAMパリティ調整用データを計算してセットし(Sm6)、RAM507へのアクセスを禁止する(Sm7)。   If a voltage drop signal is input in step Sm2, destruction diagnosis data (5A (H) in this embodiment) is set (Sm4), and all output ports are initialized (Sm5). . Next, RAM parity adjustment data is calculated and set so that the exclusive OR of all storage areas (including unused areas and unused stack areas) of the RAM 507 becomes 0 (Sm6), and access to the RAM 507 is performed. Prohibited (Sm7).

そして、電圧低下信号が入力されているか否かの判定(Sm8、尚、Sm8は、Sm2と同様の処理である)を除いて、何らの処理も行わないループ処理に入る。すなわち、そのまま電圧が低下すると内部的に動作停止状態になる。よって、電断時に確実にメイン制御部41は動作停止する。また、このループ処理において、電圧が回復し、電圧低下信号が入力されない状態となると、前述した起動処理(メイン)が実行され、RAMパリティが0となり、かつ破壊診断用データが正常であれば、元の処理に復帰することとなる。   Then, except for the determination of whether or not the voltage drop signal is input (Sm8, where Sm8 is the same process as Sm2), a loop process in which no process is performed is entered. That is, when the voltage decreases as it is, the operation is stopped internally. Therefore, the main control unit 41 reliably stops operation when power is interrupted. Further, in this loop process, when the voltage recovers and the voltage drop signal is not input, the above-described startup process (main) is executed, if the RAM parity is 0 and the destructive diagnosis data is normal, It will return to the original process.

尚、本実施例では、RAM507へのアクセスを禁止した後、電圧低下信号の出力状況を監視して、電圧低下信号が入力されなくなった場合に電圧の回復を判定し、起動処理(メイン)へ移行するようになっているが、ループ処理において何らの処理も行わず、ループ処理が行われている間に、電圧が回復してリセット回路49からリセット信号が入力されたことや、電圧が低下しないままウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことに基づいて、起動処理(メイン)へ移行するようにしても良い。   In this embodiment, after prohibiting access to the RAM 507, the output state of the voltage drop signal is monitored, and when the voltage drop signal is not input, it is determined whether the voltage is restored, and the process goes to the start-up process (main). However, no processing is performed in the loop processing. While the loop processing is being performed, the voltage is recovered and the reset signal is input from the reset circuit 49, or the voltage is lowered. If the watchdog timer (WDT) time-out signal is generated, the process may be shifted to the activation process (main).

本実施例のスロットマシン1におけるメイン制御部41は、電源投入時や、システムリセットの発生後における再起動時などに、CPU505がROM506などに記憶されているセキュリティチェックプログラム506Aを読み出して実行することにより、セキュリティモードとなる。   The main control unit 41 in the slot machine 1 according to the present embodiment reads and executes the security check program 506A stored in the ROM 506 or the like when the power is turned on or the system is restarted after the system reset occurs. Thus, the security mode is set.

このときには、セキュリティチェックプログラム506Aに対応した処理としてセキュリティチェック処理が実行される。ここで、メイン制御部41がセキュリティモードとなるセキュリティ時間は、ROM506のプログラム管理エリアに記憶されているセキュリティ時間設定KSESのビット番号[2−0]やビット番号[4−3]に予め格納されたビット値に応じて、一定の固定時間とは異なる時間成分を含むことができる。   At this time, a security check process is executed as a process corresponding to the security check program 506A. Here, the security time when the main control unit 41 enters the security mode is stored in advance in the bit number [2-0] or the bit number [4-3] of the security time setting KSES stored in the program management area of the ROM 506. Depending on the bit value, a time component different from the fixed time can be included.

例えば、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であれば、図10(D)に示す設定内容に対応して、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値であれば、図10(C)に示すショートモード又はロングモードに対応して、システムリセットや電源投入がなされるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる。   For example, if the bit value in the bit number [2-0] of the security time setting KSES is a value other than “000”, it can be selected in advance in addition to the fixed time corresponding to the setting contents shown in FIG. Any one of a plurality of extended times can be set as a time component included in the security time. If the bit value in the bit number [4-3] of the security time setting KSES is a value other than “00”, the system reset or power-on is performed corresponding to the short mode or the long mode shown in FIG. A variable setting time that changes in a predetermined time range each time is performed can be set as a time component included in the security time.

こうして設定されたセキュリティ時間が経過するまでは、ROM506に記憶されているユーザプログラムの実行が開始されない。そして、乱数回路509による乱数値となる数値データの生成動作も、メイン制御部41がセキュリティモード中である期間では、開始されないようにすれば良い。これにより、電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別役を当選させるなどの行為を、確実に防止することができる。   Until the security time set in this way elapses, the execution of the user program stored in the ROM 506 is not started. Then, the operation of generating numerical data to be a random number value by the random number circuit 509 should not be started during the period in which the main control unit 41 is in the security mode. This makes it difficult to specify the operation start timing of the random number circuit 509 and the numerical data to be updated from the operation start timing due to power-on, system reset, and so on. By connecting the “board” and inputting an illegal signal at a predetermined timing, it is possible to reliably prevent acts such as illegally winning a special role.

一例として、スロットマシン1の機種毎に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を異なる値に設定する。この場合には、セキュリティモードの延長時間を、スロットマシン1の機種毎に異ならせることができ、スロットマシン1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することが困難になる。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“01”又は“10”に設定することにより、可変設定時間を、システムリセット毎に異ならせることができる。これにより、スロットマシン1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することは著しく困難になる。   As an example, the bit value in the bit number [2-0] of the security time setting KSES is set to a different value for each model of the slot machine 1. In this case, the extension time of the security mode can be made different for each model of the slot machine 1, and it becomes difficult to specify the operation start timing of the random number circuit 509 from the operation start timing of the slot machine 1. Further, by setting the bit value in the bit number [4-3] of the security time setting KSES to “01” or “10”, the variable setting time can be varied for each system reset. This makes it extremely difficult to specify the operation start timing of the random number circuit 509 from the operation start timing of the slot machine 1.

図38は、メイン制御部41に内蔵された乱数回路509の動作を説明するためのタイミングチャートである。また、図38(A)では、遊技制御基板40に搭載された制御用クロック生成回路42により生成される制御用クロックCCLKを示している。図38(B)では、乱数用クロック生成回路43により生成される乱数用クロックRCLKを示している。図38(A)及び(B)に示すように、制御用クロックCCLKの発振周波数と、乱数用クロックRCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。   FIG. 38 is a timing chart for explaining the operation of the random number circuit 509 built in the main control unit 41. FIG. 38A shows a control clock CCLK generated by the control clock generation circuit 42 mounted on the game control board 40. FIG. 38B shows the random number clock RCLK generated by the random number clock generation circuit 43. As shown in FIGS. 38A and 38B, the oscillation frequency of the control clock CCLK and the oscillation frequency of the random number clock RCLK are different from each other. It does not become an integral multiple of the other oscillation frequency.

図38(B)に示すように、乱数用クロックRCLKは、タイミングT10,T11,T12,…においてローレベルからハイレベルに立ち上がる。そして、乱数用クロックRCLKは、メイン制御部41の乱数用外部クロック端子ERCに供給され、図12に示す乱数回路509が備えるクロック用フリップフロップ552におけるクロック端子CKに入力される。クロック用フリップフロップ552は、逆相出力端子(反転出力端子)QバーからD入力端子へとフィードバックされるラッチ用クロックRC0を、クロック端子CKに入力される乱数用クロックRCLKの立ち上がりエッジに応答して取り込み(ラッチして)、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKとして出力する。これにより、乱数更新クロックRGKは、図38(C)に示すように、タイミングT10,T12,T14,…において、ローレベルからハイレベルへと立ち上がり、乱数用クロックRCLKの発振周波数の1/2の発振周波数を有する信号となる。例えば、乱数用クロックRCLKの発振周波数が20MHzであれば、乱数更新クロックRGKの発振周波数は10MHzとなる。そして、乱数用クロックRCLKの発信周波数は制御用クロックCCLKの発振周波数の整数倍にも整数分の1にもならないことから、乱数更新クロックRGKの発振周波数は、制御用クロックCCLKの発振周波数とは異なる周波数となる。乱数生成回路553は、例えば乱数更新クロックRGKの立ち上がりエッジに応答して、カウント値順列RCNにおける数値データを更新する。乱数列変更回路555は、乱数列変更設定回路556による乱数更新規則の設定に基づき、乱数生成回路553から出力されたカウント値順列RCNにおける数値データの更新順を変更したものを、乱数列RSNとして出力する。こうして、乱数列RSNにおける数値データは、例えば図38(D)に示すように、乱数更新クロックRGKの立ち上がりエッジなどに応答して更新される。   As shown in FIG. 38B, the random number clock RCLK rises from a low level to a high level at timings T10, T11, T12,. The random number clock RCLK is supplied to the random number external clock terminal ERC of the main control unit 41 and is input to the clock terminal CK in the clock flip-flop 552 provided in the random number circuit 509 shown in FIG. The clock flip-flop 552 responds to the rising edge of the random number clock RCLK input to the clock terminal CK with the latch clock RC0 fed back from the negative phase output terminal (inverted output terminal) Q bar to the D input terminal. Are taken in (latched) and output as a random number update clock RGK from the positive phase output terminal (non-inverted output terminal) Q. Accordingly, as shown in FIG. 38C, the random number update clock RGK rises from the low level to the high level at the timings T10, T12, T14,..., And is half the oscillation frequency of the random number clock RCLK. The signal has an oscillation frequency. For example, if the oscillation frequency of the random number clock RCLK is 20 MHz, the oscillation frequency of the random number update clock RGK is 10 MHz. Since the oscillation frequency of the random number clock RCLK is neither an integer multiple nor a fraction of the oscillation frequency of the control clock CCLK, the oscillation frequency of the random number update clock RGK is the oscillation frequency of the control clock CCLK. Different frequency. The random number generation circuit 553 updates the numerical data in the count value permutation RCN in response to, for example, the rising edge of the random number update clock RGK. The random number sequence change circuit 555 changes the numerical data update order in the count value permutation RCN output from the random number generation circuit 553 based on the setting of the random number update rule by the random number sequence change setting circuit 556 as a random number sequence RSN. Output. Thus, the numerical data in the random number sequence RSN is updated in response to the rising edge of the random number update clock RGK, for example, as shown in FIG.

クロック用フリップフロップ552から出力されるラッチ用クロックRC0は、乱数更新クロックRGKの反転信号となり、その発振周波数は乱数更新クロックRGKの発振周波数と同一で、その位相は乱数更新クロックRGKの位相とπ(=180°)だけ異なる。ラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、例えば図38(E)に示すように、各ラッチ用クロックRC0、RC1、RC2はいずれも、共通の周期で信号状態が変化する発振信号となる。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力される。ラッチ用クロックRC2は、ラッチ用フリップフロップ557Bのクロック端子CKに入力される。   The latch clock RC0 output from the clock flip-flop 552 is an inverted signal of the random number update clock RGK, the oscillation frequency is the same as the oscillation frequency of the random number update clock RGK, and its phase is the same as the phase of the random number update clock RGK and π It differs by (= 180 °). The latch clock RC0 is branched into a latch clock RC1 and a latch clock RC2 at a branch point BR1. Therefore, for example, as shown in FIG. 38E, each of the latch clocks RC0, RC1, and RC2 becomes an oscillation signal whose signal state changes in a common cycle. The latch clock RC1 is input to the clock terminal CK of the latch flip-flop 557A. The latch clock RC2 is input to the clock terminal CK of the latch flip-flop 557B.

ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち上がりエッジに応答して、スタートスイッチ7から伝送されて入力ポートP0に供給されたゲーム開始信号SS1を取り込み(ラッチして)、ゲーム開始時ラッチ信号SL1として出力端子Qから出力する。そして、乱数ラッチセレクタ558Aにおける取込方法が入力ポートP0への信号入力に指定されていれば、ゲーム開始時ラッチ信号SL1が乱数ラッチ信号LL1として出力される。これにより、例えば図38(F)に示すようなタイミングでオフ状態(ローレベル)とオン状態(ハイレベル)とで信号状態が変化するゲーム開始信号SS1は、ラッチ用クロックRC1が立ち上がるタイミングT11、T13、T15、…にてラッチ用フリップフロップ557Aに取り込まれた後、図38(G)に示すようなタイミングT11、T13で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号LL1となって、乱数ラッチセレクタ558Aから出力される。   In response to the rising edge of the latch clock RC1, the latch flip-flop 557A takes in (latches) the game start signal SS1 transmitted from the start switch 7 and supplied to the input port P0, and latches the game start signal. Output from the output terminal Q as SL1. If the fetching method in random number latch selector 558A is designated as signal input to input port P0, game start latch signal SL1 is output as random number latch signal LL1. Thereby, for example, the game start signal SS1 whose signal state changes between an off state (low level) and an on state (high level) at the timing shown in FIG. 38F is a timing T11 at which the latch clock RC1 rises. After being fetched into the latching flip-flop 557A at T13, T15,..., The random number latch signal LL1 whose signal state changes between the off state and the on state at timings T11 and T13 as shown in FIG. And output from the random number latch selector 558A.

乱数値レジスタR1Dとなる乱数値レジスタ559Aは、乱数列変更回路555から出力される乱数列RSNにおける数値データを、乱数ラッチセレクタ558Aからクロック端子へと入力される乱数ラッチ信号LL1の立ち上がりエッジに応答して取り込み(ラッチして)、記憶データとなる数値データを更新する。   The random value register 559A serving as the random value register R1D responds to the numerical data in the random number sequence RSN output from the random number sequence change circuit 555 in response to the rising edge of the random number latch signal LL1 input from the random number latch selector 558A to the clock terminal. Then, the numerical data serving as stored data is updated (latched).

例えば図38(G)に示すように、タイミングT11にて乱数ラッチ信号LL1がオフ状態からオン状態に変化する立ち上がりエッジが生じた場合には、このタイミングT11にて乱数列変更回路555から出力されている乱数列RSNにおける数値データが、図38(H)に示すように、乱数値レジスタR1Dに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタR1Dとなる乱数値レジスタ559Aでは、スタートスイッチ7の操作が検出されたことに基づき、乱数値として用いられる数値データを取得して記憶することができる。   For example, as shown in FIG. 38 (G), when a rising edge is generated at which the random number latch signal LL1 changes from the off state to the on state at timing T11, the random number sequence changing circuit 555 outputs the timing at this timing T11. As shown in FIG. 38 (H), the numerical data in the random number sequence RSN is taken into the random value register R1D and acquired as numerical data that becomes a random value. Accordingly, the random value register 559A serving as the random value register R1D can acquire and store numerical data used as a random number value based on the detection of the operation of the start switch 7.

また、図9(B)に示すような第2乱数初期設定KRS2のビット番号[0]におけるビット値を“1”とすれば、例えば乱数回路509にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタ559Aから読み出される数値データを特定することは困難になり、プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別役を当選させるなどの行為を、確実に防止することができる。   Further, if the bit value in the bit number [0] of the second random number initial setting KRS2 as shown in FIG. 9B is “1”, for example, numerical data that becomes a random value generated by the random number circuit 509 is displayed. The start value can be changed at every system reset. Thereby, even if the operation start timing of the random number circuit 509 can be specified, it becomes difficult to specify the numerical data read from the random value register 559A included in the random number circuit 509, which is based on the analysis result of the program. By connecting a so-called “hanging board” and inputting a fraud signal at a predetermined timing, it is possible to reliably prevent an act such as illegally winning a special role.

このように本実施例では、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“00”以外の値とすることにより、システムリセットや電源投入ごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる。これにより、電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別役を当選させるなどの行為を、確実に防止することができる。   As described above, in this embodiment, by setting the bit value in the bit number [4-3] of the security time setting KSES to a value other than “00”, a variable that changes in a predetermined time range every time the system is reset or the power is turned on. The set time can be set as a time component included in the security time. This makes it difficult to specify the operation start timing of the random number circuit 509 and the numerical data to be updated from the operation start timing due to power-on, system reset, and so on. By connecting the “board” and inputting an illegal signal at a predetermined timing, it is possible to reliably prevent acts such as illegally winning a special role.

また、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外の値とすることにより、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる。これにより、電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別役を当選させるなどの行為を、確実に防止することができる。   Also, by setting the bit value in the bit number [2-0] of the security time setting KSES to a value other than “000”, any one of a plurality of extension times that can be selected in advance in addition to the fixed time is set as the security time. It can be set as an included time component. This makes it difficult to specify the operation start timing of the random number circuit 509 and the numerical data to be updated from the operation start timing due to power-on, system reset, and so on. By connecting the “board” and inputting an illegal signal at a predetermined timing, it is possible to reliably prevent acts such as illegally winning a special role.

また、乱数用クロック生成回路43により生成される乱数用クロックRCLKの発振周波数と、制御用クロック生成回路42により生成される制御用クロックCCLKの発振周波数とは、互いに異なっており、また、一方の発振周波数が他方の発振周波数の整数倍となることもない。そのため、乱数回路509のクロック用フリップフロップ552により生成される乱数更新クロックRGKやラッチ用クロックRC0の発振周波数は、乱数用クロックRCLKの発振周波数の1/2となるが、制御用クロックCCLKの発振周波数や、制御用クロックCCLKの発振周波数の1/2となる内部システムクロックSCLKの発振周波数とは、異なるものとなる。こうして、制御用クロックCCLKや内部システムクロックSCLKと、乱数更新クロックRGKとに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数生成回路553や乱数列変更回路555により生成される乱数列RSNにおける数値データの更新タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの更新動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。また、ラッチ用クロックRC0を分岐することにより生成されるラッチ用クロックRC1、RC2の発振周波数も、制御用クロックCCLKや内部システムクロックSCLKの発振周波数とは、異なるものとなる。こうして、制御用クロックCCLKや内部システムクロックSCLKと、ラッチ用クロックRC1、RC2とに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数値となる数値データが取り込まれる動作タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの取込動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。   Further, the oscillation frequency of the random number clock RCLK generated by the random number clock generation circuit 43 and the oscillation frequency of the control clock CCLK generated by the control clock generation circuit 42 are different from each other. The oscillation frequency does not become an integral multiple of the other oscillation frequency. Therefore, the oscillation frequency of the random number update clock RGK and the latch clock RC0 generated by the clock flip-flop 552 of the random number circuit 509 is ½ of the oscillation frequency of the random number clock RCLK, but the oscillation of the control clock CCLK. The frequency and the oscillation frequency of the internal system clock SCLK that is ½ of the oscillation frequency of the control clock CCLK are different. Thus, synchronization between the control clock CCLK, the internal system clock SCLK, and the random number update clock RGK is prevented, and the random number circuit 509 generates the random number circuit 553 and the random number sequence change circuit 555 from the operation timing of the CPU 505. It becomes difficult to specify the update timing of the numerical data in the random number sequence RSN to be performed. As a result, it is possible to reliably prevent aiming and the like based on the result of analyzing the update operation of the numerical data serving as the random number value in the random number circuit 509 from the operation timing of the CPU 505. Also, the oscillation frequencies of the latch clocks RC1 and RC2 generated by branching the latch clock RC0 are different from the oscillation frequencies of the control clock CCLK and the internal system clock SCLK. In this way, synchronization between the control clock CCLK and the internal system clock SCLK and the latch clocks RC1 and RC2 is prevented, and the random number circuit 509 takes in numeric data as a random value from the operation timing of the CPU 505. It becomes difficult to specify the timing. As a result, it is possible to reliably prevent aiming and the like based on the result of analyzing the operation of fetching numerical data as a random value in the random number circuit 509 from the operation timing of the CPU 505.

メイン制御部41に内蔵又は外付けされた乱数回路509では、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”とされたことに対応して、乱数生成回路553から出力されるカウント値順列RCNや乱数列変更回路555から出力される乱数列RSNにおける数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタ559Aから読み出される数値データを特定することは困難になり、プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。   The random number circuit 509 built in or externally attached to the main control unit 41 outputs from the random number generation circuit 553 in response to the bit value [0] of the second random number initial setting KRS2 being “1”. The start value of the numerical data in the count value permutation RCN and the random number sequence RSN output from the random number sequence change circuit 555 can be changed every time the system is reset. Thereby, even if the operation start timing of the random number circuit 509 can be specified, it becomes difficult to specify the numerical data read from the random value register 559A included in the random number circuit 509, which is based on the analysis result of the program. It is possible to surely prevent an aiming signal or an illegal signal from being input by connecting a so-called “hanging board”.

メイン制御部41が備える外部バスインタフェース501では、内部リソースアクセス制御回路501Aにより、例えばROM506の記憶データといった、メイン制御部41の内部データにつき、CPU505等の内部回路以外による外部読出が制限される。これにより、例えばROM506に記憶されているユーザプログラムといった、ゲームを制御するプログラムがメイン制御部41の外部から読み出されて解析などに提供されることを防止できる。そして、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。   In the external bus interface 501 provided in the main control unit 41, the internal resource access control circuit 501A restricts external reading by internal components other than the internal circuit such as the CPU 505 with respect to internal data of the main control unit 41 such as data stored in the ROM 506, for example. Thereby, for example, a program for controlling a game, such as a user program stored in the ROM 506, can be prevented from being read from the outside of the main control unit 41 and provided for analysis or the like. Further, it is possible to reliably prevent aiming based on the analysis result of the game control processing program and input of an illegal signal due to connection of a so-called “hanging board”.

メイン制御部41に内蔵又は外付けされた乱数回路509では、周波数監視回路551により乱数用クロックRCLKにおける周波数異常が検知されたときに、内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4のビット値が“1”に設定される。そして、CPU505では、内部情報データCIF4の読出値が“1”であると連続して判定された回数が、ステップS65にてクロック異常判定値に達したと判定されたときに、乱数回路509の動作状態に異常が発生したと判定する。そして乱数回路509の動作状態に異常が発生したと判定された場合には、エラー状態に制御され、ゲームの進行が不能化されることとなる。これにより、乱数用クロックRCLKとして不正信号を入力することによる不正行為を確実に防止することができる。   In the random number circuit 509 built in or externally attached to the main control unit 41, when the frequency monitoring circuit 551 detects a frequency abnormality in the random number clock RCLK, the random number circuit 509 is stored in the bit number [4] of the internal information register CIF. The bit value of the information data CIF4 is set to “1”. When the CPU 505 determines that the number of times that the read value of the internal information data CIF4 is continuously determined to be “1” has reached the clock abnormality determination value in step S65, the random number circuit 509 It is determined that an abnormality has occurred in the operating state. If it is determined that an abnormality has occurred in the operation state of the random number circuit 509, the game is controlled to be in an error state and the progress of the game is disabled. Thereby, it is possible to reliably prevent an illegal act by inputting an illegal signal as the random number clock RCLK.

メイン制御部41に内蔵されたCPU505は、乱数回路509に対するラッチ信号の出力に相当する乱数値取込指定レジスタRDLTへのビット値“1”の書き込みを行い、乱数値レジスタ559Aを複数回読み出す。そして、読み出した数値データの全ビットを監視して、変化しないビットデータの有無に基づき、乱数回路509の動作状態に異常が発生したと判定する。そして乱数回路509の動作状態に異常が発生したと判定された場合には、エラー状態に制御され、ゲームの進行が不能化されることとなる。これにより、乱数回路509の動作状態に異常が発生していることを確実かつ容易に検知して、不正行為を防止することができる。特に、乱数回路509により数値データが正常に更新されないまま、すなわち数値データが固定されたままの状態で内部抽選を行わせることで、常に特別役を当選させるなどの不正を防止できる。   The CPU 505 built in the main control unit 41 writes the bit value “1” to the random value fetch specification register RDLT corresponding to the output of the latch signal to the random number circuit 509, and reads the random value register 559A a plurality of times. Then, all the bits of the read numerical data are monitored, and it is determined that an abnormality has occurred in the operation state of the random number circuit 509 based on the presence / absence of bit data that does not change. If it is determined that an abnormality has occurred in the operation state of the random number circuit 509, the game is controlled to be in an error state and the progress of the game is disabled. As a result, it is possible to reliably and easily detect that an abnormality has occurred in the operating state of the random number circuit 509 and prevent fraud. In particular, by performing the internal lottery while the numerical data is not normally updated by the random number circuit 509, that is, while the numerical data is fixed, it is possible to prevent fraud such as always winning a special combination.

メイン制御部41に内蔵又は外付けされた乱数回路509は、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”である場合に、システムリセット毎に乱数値となる数値データのスタート値を変更する。このときには、例えばメイン制御部41に内蔵されたフリーランカウンタのカウント値などを用いて、システムリセット毎に変更されるスタート値を決定すれば良い。これにより、システムリセット等のタイミングにより異なる初期値決定用データを用いて初期値を決定することができ、狙い撃ちなどによる不正行為を防止することができる。   The random number circuit 509 built in or externally attached to the main control unit 41 is a numerical data that becomes a random value every time the system is reset when the bit value [0] of the second random number initial setting KRS2 is “1”. Change the start value of. At this time, for example, a start value that is changed at each system reset may be determined using a count value of a free-run counter built in the main control unit 41, for example. As a result, the initial value can be determined by using different initial value determination data depending on the timing of system reset or the like, and illegal acts due to shooting or the like can be prevented.

尚、本実施例では、セキュリティモードの延長時間が、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値に対応して、予め選択可能な複数の延長時間のいずれかとなり、この延長時間はシステムリセット毎に変更されないものであったが、例えばROM506に記憶されたユーザプログラムにおける設定などにより、固定時間に加算される延長時間を、システムリセット毎に複数の延長時間のいずれかに決定するようにしても良い。この場合には、延長時間がいずれも、最長の可変設定時間に比べて、長くなるように定義しておく。そして、大まかな延長時間を決定した後、詳細な延長時間を決定すれば良い。これにより、電源投入時やシステムリセット時にセキュリティモードとなるセキュリティ時間を、システムリセット毎に大きく変化させることが可能になり、スロットマシン1の動作開始タイミングから乱数回路509の動作開始タイミングや更新される数値データなどを特定することが、より困難になる。   In this embodiment, the extension time of the security mode is one of a plurality of extension times that can be selected in advance, corresponding to the bit value [2-0] of the security time setting KSES. Was not changed at each system reset, but the extension time added to the fixed time is determined as one of a plurality of extension times at each system reset, for example, by setting in the user program stored in the ROM 506 You may do it. In this case, the extension time is defined to be longer than the longest variable setting time. Then, after determining a rough extension time, a detailed extension time may be determined. As a result, the security time for entering the security mode at the time of power-on or system reset can be greatly changed for each system reset, and the operation start timing of the random number circuit 509 is updated or updated from the operation start timing of the slot machine 1. It becomes more difficult to specify numerical data.

また、セキュリティモードの延長時間などは、メイン制御部41を構成するチップ毎に付与されるIDナンバーを用いて決定されるようにしても良い。一例として、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値に対応して延長時間を設定しても良い。この場合には、例えばシステムリセット毎に延長時間を決定するために用いる演算式を変更することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしても良い。さらに、例えばIDナンバーを用いて延長時間を決定するための演算式をシステムリセット時に格納したフリーランカウンタのカウント値に対応して決定するといったように、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしても良い。また、乱数回路509にて生成される乱数のスタート値をシステムリセット毎に変更する場合にも、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、乱数のスタート値を決定しても良い。   Further, the extension time of the security mode may be determined using an ID number assigned to each chip constituting the main control unit 41. As an example, an extension time corresponding to the calculated value is executed by executing a part or all of an operation for performing a predetermined scramble process on the ID number and an operation such as addition / subtraction / multiplication / division using the ID number. May be set. In this case, the extension time may be randomly determined for each system reset, for example, by changing an arithmetic expression used for determining the extension time for each system reset. Furthermore, the count value of the free run counter, the ID number, and the like, for example, the arithmetic expression for determining the extension time using the ID number is determined corresponding to the count value of the free run counter stored at the time of system reset. The extended time may be determined randomly at each system reset by using a combination of the above. In addition, when changing the start value of the random number generated by the random number circuit 509 at each system reset, the start value of the random number can be changed by using a combination of the count value of the free-run counter and the ID number. You may decide.

本実施例では、メイン制御部41の外部に設けられた乱数用クロック生成回路43により、制御用クロック生成回路42で生成される制御用クロックCCLKの発振周波数とは異なる発振周波数を有する乱数用クロックRCLKを生成して、乱数回路509に供給するものであったが、メイン制御部41のCPU505に供給されるクロック信号と、乱数回路509に供給されるクロック信号とが、共通のクロック生成回路に含まれる1つの発振器により生成された発振信号を用いて、生成されるようにしても良い。この場合には、例えば乱数用クロックRCLKと制御用クロックCCLKをそれぞれ生成するための分周器などを設け、ラッチ用クロックRC0、RC1、RC2と制御用クロックCCLKあるいは内部システムクロックSCLKとの同期が生じにくくなるように、各分周器における分周比などを設定すれば良い。制御用クロック生成回路42と乱数用クロック生成回路43とは、その全部又は一部が、メイン制御部41の内部に設けられても良いし、メイン制御部41の外部に設けられても良い。   In this embodiment, a random number clock having an oscillation frequency different from the oscillation frequency of the control clock CCLK generated by the control clock generation circuit 42 by the random number clock generation circuit 43 provided outside the main control unit 41. Although RCLK is generated and supplied to the random number circuit 509, the clock signal supplied to the CPU 505 of the main control unit 41 and the clock signal supplied to the random number circuit 509 are shared by the common clock generation circuit. You may make it produce | generate using the oscillation signal produced | generated by one included oscillator. In this case, for example, a frequency divider for generating the random number clock RCLK and the control clock CCLK is provided, and the latch clocks RC0, RC1, RC2 are synchronized with the control clock CCLK or the internal system clock SCLK. What is necessary is just to set the frequency division ratio etc. in each frequency divider so that it may become difficult to produce. The control clock generation circuit 42 and the random number clock generation circuit 43 may be provided in whole or in part inside the main control unit 41 or outside the main control unit 41.

本実施例では、乱数回路509が乱数用クロック生成回路43により生成された乱数用クロックRCLKの供給を受け、クロック用フリップフロップ552により、乱数更新クロックRGKとラッチ用クロックRC0とを生成するものであったが、例えば乱数用クロック生成回路43といった、乱数回路509の外部において、乱数更新クロックRGKやラッチ用クロックRC0となる発振信号が生成されるようにしても良い。あるいは、乱数回路509の内部にて、乱数更新クロックRGKを生成するための回路と、ラッチ用クロックRC0を生成するための回路とを、別個に設けるようにしても良い。一例として、クロック用フリップフロップ552と同様のフリップフロップにより乱数更新クロックRGKを生成する一方で、乱数更新クロックRGKの信号状態を反転させる反転回路を設け、その反転回路から出力される信号を、ラッチ用クロックRC0として用いるようにしても良い。   In this embodiment, the random number circuit 509 is supplied with the random number clock RCLK generated by the random number clock generation circuit 43, and the random number update clock RGK and the latch clock RC0 are generated by the clock flip-flop 552. However, an oscillation signal serving as the random number update clock RGK or the latch clock RC0 may be generated outside the random number circuit 509, such as the random number clock generation circuit 43, for example. Alternatively, a circuit for generating the random number update clock RGK and a circuit for generating the latch clock RC0 may be separately provided in the random number circuit 509. As an example, while generating a random number update clock RGK by a flip-flop similar to the clock flip-flop 552, an inversion circuit for inverting the signal state of the random number update clock RGK is provided, and a signal output from the inversion circuit is latched. It may be used as the clock RC0.

本実施例に適用した乱数回路509では、乱数ラッチフラグデータRDFM0が“1”の状態、すなわち乱数値レジスタR1Dに数値データが取り込まれている状態では、新たな数値データの取込要求が発生した場合でも、新たな数値データを乱数値レジスタR1Dに取り込まないようになっており、このような状態では、乱数値レジスタR1Dの数値データが読み出されて、乱数ラッチフラグデータRDFM0がクリアされるまで新たな数値データを乱数値レジスタR1Dに取り込むことが不可能となる。   In the random number circuit 509 applied to the present embodiment, when the random number latch flag data RDFM0 is “1”, that is, when numerical data is captured in the random value register R1D, a new numerical data capture request is generated. Even in this case, new numerical data is not taken into the random value register R1D. In such a state, the numerical data in the random value register R1D is read and the random number latch flag data RDFM0 is cleared. It becomes impossible to load new numerical data into the random value register R1D.

このため、図39に示すように、スタートスイッチ7の操作によりゲーム開始信号SS1が入力されて数値データがラッチされ、乱数値レジスタR1Dに格納された後、この格納された数値データが読み出されて乱数値格納ワークの数値データが更新されるまでは、乱数ラッチフラグデータRDFM0が“1”の状態となることで、格納されている数値データが保持され、その間にゲーム開始信号SS1が入力されても新たな数値データに上書きされてしまうことがないので、静電気などによりゲーム開始信号SS1の信号線にノイズがのっても数値データが変わってしまうことがない。   For this reason, as shown in FIG. 39, the game start signal SS1 is input by the operation of the start switch 7, the numerical data is latched and stored in the random value register R1D, and then the stored numerical data is read out. Until the numerical data of the random value storage work is updated, the random number latch flag data RDFM0 is in a state of “1”, so that the stored numerical data is held, and the game start signal SS1 is input during that time. However, since the new numerical data is not overwritten, the numerical data does not change even if noise is applied to the signal line of the game start signal SS1 due to static electricity or the like.

尚、乱数値レジスタR1Dに数値データが取り込まれている状態において新たな数値データを乱数値レジスタR1Dに取り込まないようにする構成としては、新たな数値データのラッチを禁止する構成であっても良いし、新たな数値データをラッチするものの、乱数値レジスタR1Dへの書込を禁止する構成であっても良い。   Note that the configuration in which new numerical data is not captured in the random value register R1D while the numerical data is captured in the random value register R1D may be configured to prohibit latching of the new numerical data. In addition, although new numerical data is latched, the writing to the random value register R1D may be prohibited.

上記のように、本実施例では、乱数値レジスタR1Dに数値データが取り込まれている状態では、この格納された数値データが読み出されるまで、格納されている数値データを保持する構成を採用しているが、この場合には、スタートスイッチ7の操作がゲームの進行上有効でない期間においてなされた場合でも、ラッチされて乱数値レジスタR1Dに数値データが保持されたままとなり、その後、スタートスイッチ7の操作が有効となってスタートスイッチ7が操作された場合、本来、ゲームを開始させるためにスタートスイッチ7が操作されたタイミングとは異なるタイミングでラッチされた数値データによって内部抽選が行われてしまうという新たな問題が生じることとなる。   As described above, in the present embodiment, in a state where the numerical data is taken into the random value register R1D, a configuration is adopted in which the stored numerical data is held until the stored numerical data is read out. However, in this case, even if the operation of the start switch 7 is performed during a period in which the game is not effective, the data is latched and numerical data is held in the random value register R1D. When the operation is enabled and the start switch 7 is operated, an internal lottery is performed based on numerical data latched at a timing different from the timing at which the start switch 7 was originally operated to start the game. New problems will arise.

これに対して本実施例では、約0.56ms毎に基本処理に割り込んで実行するタイマ割込処理4回に1回(約2.24ms)毎に実行される乱数値読出処理において乱数値レジスタR1Dに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタR1Dに数値データがラッチされている場合には、乱数値レジスタR1Dの数値データを読み出すようになっている。これにより、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。すなわち一定時間間隔(約2.24ms)毎に、乱数値レジスタR1Dに数値データがラッチされているか否かを確認し、ラッチされていれば乱数値レジスタR1Dの数値データを読み出すことで、乱数値レジスタR1Dに数値データが保持されている状態を解除し、乱数値レジスタR1Dに新たな数値データの取込が可能な状態となる。   On the other hand, in the present embodiment, the random number value register in the random value reading process executed once every four times (about 2.24 ms) of the timer interrupt process which is executed by interrupting the basic process every about 0.56 ms. It is confirmed whether or not the numerical data is latched in R1D, that is, whether or not the random number latch flag is set. If the numerical data is latched in the random value register R1D, the numerical data in the random value register R1D is stored. It is designed to read. As a result, the random number latch flag is cleared, and new numerical data can be taken in. That is, at predetermined time intervals (about 2.24 ms), it is confirmed whether or not numerical data is latched in the random value register R1D, and if it is latched, the numerical data in the random value register R1D is read out, The state where the numerical data is held in the register R1D is released, and a new numerical data can be taken into the random value register R1D.

このため、図40に示すように、ゲームの開始が許可されていない状態でスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されていても、一定時間(乱数値読出処理の実行間隔である約2.24ms)以内に乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となるので、ゲームの開始が許可される前のスタートスイッチ7の操作によりラッチされた数値データが乱数値レジスタR1Dに保持されても、ゲームの開始が許可された後にスタートスイッチ7が操作されたタイミングで新たにラッチした数値データを取得することが可能となる。   Therefore, as shown in FIG. 40, even if the start switch 7 is operated in a state where the start of the game is not permitted and numerical data is stored in the random value register R1D, Since the numerical data newly latched in the random value register R1D can be stored within about 2.24 ms, which is the execution interval of the random value reading process, the start switch 7 before the start of the game is permitted. Even if the numerical data latched by the operation is held in the random value register R1D, the numerical data newly latched can be obtained at the timing when the start switch 7 is operated after the start of the game is permitted.

また、乱数値読出処理では、乱数値レジスタR1Dに数値データがラッチされている場合に、数値データを読み出すだけではなく、RAM507の乱数値格納ワークの値を読み出した数値データに更新することにより、乱数値レジスタR1Dに新たな数値データがラッチされる毎に、ラッチされた数値データがその後の乱数値読出処理において読み出され、乱数値格納ワークに格納された数値データが新たにラッチされた最新の数値データに更新されるようになっている。   Further, in the random value reading process, when numerical data is latched in the random value register R1D, not only the numerical data is read, but also the value of the random value storage work in the RAM 507 is updated to the read numerical data. Each time new numerical data is latched in the random value register R1D, the latched numerical data is read in the subsequent random value reading process, and the numerical data stored in the random value storage work is newly latched. It is designed to be updated to numerical data.

そして、ゲームの開始時に、乱数値レジスタR1Dに格納されている数値データではなく、RAM507の乱数値格納ワークに格納されている数値データを取得して内部抽選を行うので、乱数値レジスタR1Dから数値データが読み出された後に、スタートスイッチの信号線にノイズがのって数値データが変わってしまっても内部抽選に用いる乱数値格納ワークの数値データに影響することがなく、このような場合であってもスタートスイッチ7が操作されたタイミングでラッチした数値データを用いて内部抽選を行うことができる。   At the start of the game, instead of the numerical data stored in the random value register R1D, the numerical data stored in the random value storage work of the RAM 507 is acquired and the internal lottery is performed. After the data is read, even if the numerical data changes due to noise on the signal line of the start switch, it will not affect the numerical data of the random number storage work used for internal lottery. Even in such a case, the internal lottery can be performed using the numerical data latched at the timing when the start switch 7 is operated.

また、本実施例では、電断した際に乱数値レジスタR1Dの値は保持されないが、乱数値格納ワークが割り当てられたRAM507は、電断しても格納データが保持されるようになっているため、スタートスイッチ7の操作が検出された後、内部抽選を開始する前の段階で瞬停などにより乱数値レジスタR1Dの値が消失しても乱数値格納ワークの数値データは維持されるため、スタートスイッチ7が操作されたタイミングでラッチされた数値データを内部抽選に用いることができる。   In this embodiment, the value of the random value register R1D is not retained when the power is interrupted, but the RAM 507 to which the random value storage work is assigned retains the stored data even when the power is interrupted. Therefore, even after the operation of the start switch 7 is detected and before the internal lottery starts, even if the value of the random value register R1D disappears due to a momentary power interruption or the like, the numerical data of the random value storage work is maintained. Numerical data latched at the timing when the start switch 7 is operated can be used for the internal lottery.

また、本実施例では、スタートスイッチ7の操作が検出された時点で、RAM507の乱数値格納ワークに格納されている数値データを同じくRAM507に割り当てられた抽選用ワークに設定し、その後の内部抽選において抽選用ワークに設定された数値データに対して演算を行うことにより役に当選したか否かの判定を行うようになっており、スタートスイッチ7の操作が検出された時点から内部抽選が終了するまでに乱数値格納ワークに格納されている数値データが更新されても、スタートスイッチ7の操作が検出された時点で取得した数値データが内部抽選が終了するまでに変更されてしまうことがないが、スタートスイッチ7の操作が検出された時点でRAM507の乱数値格納ワークに格納されている数値データをCPU505のワークレジスタに設定し、その後の内部抽選においてワークレジスタに設定された数値データに対して演算を行うことにより役に当選したか否かの判定を行うようにしても良い。   In this embodiment, when the operation of the start switch 7 is detected, the numerical data stored in the random value storage work of the RAM 507 is set in the lottery work assigned to the RAM 507, and the internal lottery thereafter. In this case, it is determined whether or not the winning combination has been won by performing an operation on the numerical data set in the lottery work, and the internal lottery ends when the operation of the start switch 7 is detected. Even if the numerical data stored in the random number storage work is updated by the time, the numerical data acquired at the time when the operation of the start switch 7 is detected is not changed until the internal lottery ends. However, when the operation of the start switch 7 is detected, the numerical data stored in the random value storage work of the RAM 507 is transferred to the CPU 505. Set the work register, it may be to determine whether or not the player wins the role by performing an operation on numerical values set in the work register data in the subsequent internal lottery.

また、乱数値格納ワークに格納されている数値データに対して演算を行うことにより役に当選したか否かの判定を行うようにしても良いが、この場合には、スタートスイッチ7の操作が検出された時点から内部抽選が終了するまでの期間において、タイマ割込処理(メイン)を禁止することなどにより、乱数値格納ワークに格納されている数値データが新たにラッチされた数値データによって更新されてしまうことがないようにすることで、スタートスイッチ7の操作が検出された時点で取得した数値データが内部抽選が終了するまでに変更されてしまうことを防止できる。   Further, it may be determined whether or not the winning combination is obtained by performing an operation on the numerical data stored in the random value storage work. In this case, the operation of the start switch 7 is performed. The numerical data stored in the random number storage work is updated with the newly latched numerical data, for example, by prohibiting timer interrupt processing (main) during the period from the time of detection until the end of the internal lottery By preventing this from happening, it is possible to prevent the numerical data acquired when the operation of the start switch 7 is detected from being changed before the internal lottery is completed.

また、本実施例では、タイマ割込処理(メイン)4回に1回の割合でスイッチ類の検出信号を入力し、2回連続して検出信号の状態が一致した場合、すなわち約2.24msの期間検出信号の状態が同じ場合に、該当するスイッチ類の検出状態を確定させる。このため、スタートスイッチ7の操作(OFFからONへの変化)を検知するのに約2.24msかかることとなるが、乱数値読出処理がこの時間よりも短いと、スタートスイッチがOFFからONに変化した時点から検知されるまでの間に乱数値格納ワークの数値データが、ノイズなどによって新たにラッチされた数値データに更新されてしまう可能性がある。一方、乱数値読出処理がこの時間よりも長いとスタートスイッチ7の操作のタイミングでラッチした数値データが乱数値格納ワークの数値データに反映されない可能性がある。   In this embodiment, when the detection signals of the switches are input at a rate of once every four times of the timer interrupt processing (main) and the states of the detection signals coincide with each other twice, that is, about 2.24 ms. When the state of the period detection signal is the same, the detection state of the corresponding switch is determined. For this reason, it takes about 2.24 ms to detect the operation of the start switch 7 (change from OFF to ON). However, if the random number reading process is shorter than this time, the start switch changes from OFF to ON. There is a possibility that the numerical data of the random number storage work is updated to the newly latched numerical data due to noise or the like between the time of the change and the detection. On the other hand, if the random number reading process is longer than this time, the numerical data latched at the timing of operating the start switch 7 may not be reflected in the numerical data of the random number storage work.

これに対して乱数値読出処理もタイマ割込処理(メイン)4回に1回の割合で実行され、乱数値格納ワークの数値データが更新されるのに要する最小時間も同じ約2.24msであり、スタートスイッチ7がOFFからONに変化した時点から検知されるまでに乱数値格納ワークの数値データが新たにラッチされた数値データに更新されてしまうことがなく、かつ、スタートスイッチ7の操作のタイミングでラッチした数値データを乱数値格納ワークの数値データに反映させることができる。   On the other hand, the random number value reading process is also executed at a rate of once every four times of the timer interrupt process (main), and the minimum time required for updating the numerical data of the random number value storing work is about 2.24 ms. Yes, the numerical data of the random number storage work is not updated to the newly latched numerical data from when the start switch 7 is changed from OFF to ON, and the start switch 7 is operated. The numerical data latched at this timing can be reflected in the numerical data of the random value storage work.

また、本実施例では、図41に示すように、規定数の賭数が設定されていない状態において規定数の賭数が設定され、ゲームの開始条件を満たした時点で、乱数値レジスタR1Dに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタR1Dに数値データがラッチされている場合には、ダミーで乱数値レジスタR1Dの数値データを読み出すようになっている。これにより、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。   Further, in this embodiment, as shown in FIG. 41, when a specified number of bets is set in a state where the specified number of bets is not set and the game start condition is satisfied, the random number value register R1D is stored. It is confirmed whether or not the numerical data is latched, that is, whether or not the random number latch flag is set. When the numerical data is latched in the random number value register R1D, the numerical value data in the random number value register R1D is used as a dummy. It is designed to read. As a result, the random number latch flag is cleared, and new numerical data can be taken in.

このため、規定数の賭数が設定される前にスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納されており、その状態が保持されていても、規定数の賭数が設定され、ゲームの開始条件を満たすと同時に、乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となる。   For this reason, the start switch 7 is operated before the specified number of bets is set, and the numerical data is stored in the random value register R1D. Even if this state is maintained, the specified number of bets is set. As soon as the game start condition is satisfied, the newly latched numerical data can be stored in the random value register R1D.

尚、本実施例では、規定数の賭数が設定され、ゲームの開始条件を満たした時点で乱数ラッチフラグが設定されているか否か、すなわち規定数の賭数が設定される前にラッチされた数値データが乱数値レジスタR1Dに格納されているか否かを確認し、乱数ラッチフラグが設定されている場合にのみ、乱数値レジスタR1Dに格納されている数値データを読み出すようになっているが、規定数の賭数が設定され、ゲームの開始条件を満たした時点で一律に乱数値レジスタR1Dに格納されている数値データを読み出すようにしても良い。   In the present embodiment, a predetermined number of bets are set, and whether or not the random number latch flag is set when the game start condition is satisfied, that is, latched before the predetermined number of bets is set. Whether or not numerical data is stored in the random value register R1D is checked, and the numerical data stored in the random value register R1D is read only when the random number latch flag is set. The numerical data stored in the random number register R1D may be read out uniformly when the number of bets is set and the game start condition is satisfied.

また、本実施例では、図42に示すように、ゲームの開始条件を満たす規定数の賭数が設定されている状態においてスタートスイッチ7が操作されても、スタートスイッチ7以外のスイッチが操作されている状態では、ゲームの開始が禁止されるようになっているが、規定数の賭数が設定されている状態であるもののスタートスイッチ7以外のスイッチが操作されており、ゲームの開始が禁止されている状態では、全てのスイッチがOFFとなり、ゲームの開始が許可された時点で、乱数値レジスタR1Dに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタR1Dに数値データがラッチされている場合には、ダミーで乱数値レジスタR1Dの数値データを読み出すようになっている。これにより、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。   Further, in this embodiment, as shown in FIG. 42, even if the start switch 7 is operated in a state where a prescribed number of bets satisfying the game start condition are set, switches other than the start switch 7 are operated. In this state, the start of the game is prohibited. However, although the specified number of bets is set, a switch other than the start switch 7 is operated and the start of the game is prohibited. In this state, when all the switches are turned off and the start of the game is permitted, it is confirmed whether the numerical data is latched in the random value register R1D, that is, whether the random number latch flag is set. When the numerical data is latched in the random value register R1D, the numerical data in the random value register R1D is read out as a dummy. To have. As a result, the random number latch flag is cleared, and new numerical data can be taken in.

このため、ゲームの開始条件を満たす規定数の賭数が設定されている状態であるもののスタートスイッチ7以外のスイッチが操作されており、ゲームの開始が禁止されている状態においてスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されていても、全てのスイッチがOFFとなりゲームの開始が許可されると同時に、乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となる。   For this reason, although a prescribed number of bets satisfying the game start condition are set, switches other than the start switch 7 are operated, and the start switch 7 is operated in a state where the game start is prohibited. Even if the numerical data is stored in the random value register R1D and the state is maintained, all the switches are turned off and the start of the game is permitted, and at the same time, the numerical data newly latched in the random value register R1D Can be stored.

尚、本実施例では、ゲームの開始条件を満たす規定数の賭数が設定されている状態であるもののスタートスイッチ7以外のスイッチが操作されており、ゲームの開始が禁止されている状態においては、全てのスイッチがOFFとなりゲームの開始が許可された時点で乱数ラッチフラグが設定されているか否か、すなわちゲームの開始が許可される前にラッチされた数値データが乱数値レジスタR1Dに格納されているか否かを確認し、乱数ラッチフラグが設定されている場合にのみ、乱数値レジスタR1Dに格納されている数値データを読み出すようになっているが、ゲームの開始が許可された時点で一律に乱数値レジスタR1Dに格納されている数値データを読み出すようにしても良い。   In this embodiment, although a specified number of bets satisfying the game start condition are set, a switch other than the start switch 7 is operated and the game start is prohibited. Whether or not the random number latch flag is set when all the switches are turned off and the start of the game is permitted, that is, the numerical data latched before the start of the game is permitted is stored in the random number value register R1D. The numerical data stored in the random number register R1D is read only when the random number latch flag is set. However, when the start of the game is permitted, the data is uniformly disturbed. The numerical data stored in the numerical register R1D may be read.

また、本実施例では、電源投入時においてメイン制御部41の制御状態を電断前の制御状態に復帰させることが可能とされており、ゲームの開始条件を満たす規定数の賭数が設定されている状態に復帰することもあるが、本実施例では、図43に示すように、電源投入時に電断前の制御状態に復帰する場合には、復帰した時点、すなわちゲームの開始が許可された時点で、乱数値レジスタR1Dに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタR1Dに数値データがラッチされている場合には、ダミーで乱数値レジスタR1Dの数値データを読み出すようになっている。これにより、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。   In this embodiment, when the power is turned on, the control state of the main control unit 41 can be returned to the control state before the power interruption, and a prescribed number of bets satisfying the game start condition are set. In this embodiment, as shown in FIG. 43, when returning to the control state before the power interruption when the power is turned on, the start of the game, ie, the start of the game is permitted. When the numerical data is latched in the random value register R1D, it is checked whether the random number latch flag is set. Thus, the numerical data of the random value register R1D is read out. As a result, the random number latch flag is cleared, and new numerical data can be taken in.

このため、図43に示すように、電源投入後、リセット信号がOFFとなってメイン制御部41が動作を開始した後、電断前の制御状態に復帰する前の段階でスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されていても、制御状態が復帰してゲームの開始が許可されるのと同時に、乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となる。   Therefore, as shown in FIG. 43, after the power is turned on, after the reset signal is turned OFF and the main control unit 41 starts operating, the start switch 7 is operated at a stage before returning to the control state before power interruption. Even if the numerical data is stored in the random value register R1D and the state is maintained, the numerical value newly latched in the random value register R1D at the same time that the control state is restored and the start of the game is permitted. Data can be stored.

また、電源投入時だけではなく、メイン制御部41がリセット要因の発生によりリセットされ、再起動した場合にも、起動処理の先頭から処理が開始することとなるが、この場合も同様で、メイン制御部41が再起動した際に、リセット前の制御状態に復帰する場合には、復帰した時点、すなわちゲームの開始が許可された時点で、乱数値レジスタR1Dに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタR1Dに数値データがラッチされている場合には、ダミーで乱数値レジスタR1Dの数値データを読み出すことで、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。   Further, not only when the power is turned on, but also when the main control unit 41 is reset due to the occurrence of a reset factor and restarts, the process starts from the beginning of the startup process. When returning to the control state before resetting when the control unit 41 is restarted, whether or not numerical data is latched in the random value register R1D at the time of return, that is, when the start of the game is permitted. That is, whether or not the random number latch flag is set, and if the numerical data is latched in the random value register R1D, the random number latch flag is cleared by reading the numerical data in the random value register R1D as a dummy. Thus, new numerical data can be taken in.

このため、リセット要因の発生によりメイン制御部41が再起動した後、リセット前の制御状態に復帰する前の段階でスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されていても、制御状態が復帰してゲームの開始が許可されるのと同時に、乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となる。   Therefore, after the main control unit 41 is restarted due to the occurrence of a reset factor, the start switch 7 is operated at a stage before returning to the control state before the reset, and the numerical data is stored in the random value register R1D. Even if is held, the control state is restored and the start of the game is permitted, and at the same time, the newly latched numerical data can be stored in the random value register R1D.

特に、スタートスイッチ7からの検出信号の入力を負論理で行っている場合には、瞬停時など電圧供給が不安定な状態では、復帰前にスタートスイッチ7のON(電圧LOW)の信号が入力されて乱数値レジスタR1Dに数値データが格納されてしまう可能性が高くなるが、このような場合でも制御状態が復帰してゲームの開始が許可されるのと同時に、乱数値レジスタR1Dに新たにラッチされた数値データを格納可能な状態となり、復帰前に格納された乱数値レジスタR1Dの数値データが保持されたままとなってしまうことを確実に防止できる。   In particular, when the detection signal from the start switch 7 is input with negative logic, when the voltage supply is unstable, such as during a momentary power failure, an ON (voltage LOW) signal of the start switch 7 is returned before recovery. Although it is highly likely that numerical data will be stored in the random number value register R1D, even in such a case, the control state is restored and the start of the game is permitted, and at the same time, a new value is stored in the random number value register R1D. Thus, it is possible to reliably prevent the numerical data stored in the random number register R1D stored before the return from being held.

尚、本実施例では、電源投入後またはリセット後、電断前またはリセット前の制御状態に復帰する場合には、復帰する制御状態がゲームを開始可能な状態か否かに関わらず一律に乱数値レジスタR1Dに格納されている数値データを読み出すようになっているが、復帰する制御状態がゲームを開始可能な状態であるか否かを確認し、復帰する制御状態がゲームを開始可能な状態である場合にのみ乱数値レジスタR1Dに格納されている数値データを読み出すようにしても良い。   In this embodiment, when returning to the control state before power interruption or after reset after power-on or reset, the control state to be restored is uniformly disordered regardless of whether or not the game can be started. The numerical data stored in the numerical register R1D is read out, but it is confirmed whether or not the return control state is a state where the game can be started, and the return control state is the state where the game can be started. The numerical data stored in the random value register R1D may be read only when

また、電源投入後またはリセット後、電断前またはリセット前の制御状態に復帰した時点で乱数ラッチフラグが設定されているか否か、すなわちゲームの開始が許可される前にラッチされた数値データが乱数値レジスタR1Dに格納されているか否かを確認し、乱数ラッチフラグが設定されている場合にのみ、乱数値レジスタR1Dに格納されている数値データを読み出すようになっているが、電源投入後またはリセット後、電断前またはリセット前の制御状態に復帰した時点で一律に乱数値レジスタR1Dに格納されている数値データを読み出すようにしても良い。さらには、電源投入後またはリセット後、電断前またはリセット前の制御状態に復帰するか否かに関わらず、一律に乱数値レジスタR1Dに格納されている数値データを読み出すようにしても良い。   Also, whether or not the random number latch flag is set when the power is turned on or reset, and the control state before power interruption or reset is restored, that is, the numerical data latched before the start of the game is permitted is disturbed. Whether or not the data is stored in the numerical value register R1D is checked, and the numerical value data stored in the random number value register R1D is read only when the random number latch flag is set. Thereafter, the numerical data stored in the random number register R1D may be read out uniformly when the control state before power interruption or reset is restored. Furthermore, the numerical data stored in the random value register R1D may be read out uniformly regardless of whether the control state before power interruption or before reset is restored after power-on or reset.

メイン制御部41は、ゲームを開始可能な状態でスタートスイッチ7が操作されたか否かをスタートスイッチ7の立上りを示す立上りエッジが設定されちるか否かに基づいて判定する。   The main control unit 41 determines whether or not the start switch 7 is operated in a state where the game can be started, based on whether or not a rising edge indicating the rising of the start switch 7 is set.

スタートスイッチ7の立上りエッジは、一定間隔毎に割り込んで実行するタイマ割込処理(メイン)4回に1回毎(約2.24ms毎)に実行するスイッチ入力判定処理において、スタートスイッチ7の検出状態に基づく確定データがOFFからONに変化したことを条件に設定される。確定データは、スイッチ入力判定処理毎に前回の検出状態と今回の状態が一致する場合にのみ更新されるデータであることから、スタートスイッチ7の立上りエッジは、スタートスイッチ7の検出状態がOFFの状態である場合に、スイッチ入力判定処理において2回連続してスタートスイッチ7のONが検知されることで設定されることとなる。   The rising edge of the start switch 7 is detected by the start switch 7 in the switch input determination process that is executed once every four times (about 2.24 ms). It is set on condition that the confirmed data based on the state has changed from OFF to ON. Since the deterministic data is data that is updated only when the previous detection state and the current state match each time the switch input determination process is performed, the rising edge of the start switch 7 indicates that the detection state of the start switch 7 is OFF. When the switch is in the state, it is set by detecting the ON of the start switch 7 twice in succession in the switch input determination process.

一方、スイッチ入力判定処理の実行間隔は約2.24msであることから、スタートスイッチ7がONとなってから最低でも約2.24ms以上ONが継続して検知されることを条件にスタートスイッチ7の立上りエッジが設定され、スタートスイッチ7の操作が検出されることとなる。   On the other hand, since the execution interval of the switch input determination process is about 2.24 ms, the start switch 7 is provided on condition that the ON is continuously detected for at least about 2.24 ms after the start switch 7 is turned on. Rising edge is set, and the operation of the start switch 7 is detected.

このように本実施例では、図44に示すように、ゲームを開始可能な状態においてスタートスイッチ7のONが一定期間(最低でも約2.24ms)以上継続して検知されたことを条件に、スタートスイッチ7の操作が検出され、ゲームが開始されるようになっており、静電気などのノイズによってスタートスイッチ7のONが誤って検出されたにも関わらず、ゲームが開始してしまうことを防止できる。   Thus, in this embodiment, as shown in FIG. 44, on condition that the start switch 7 is continuously detected for a certain period (at least about 2.24 ms) in a state where the game can be started, The operation of the start switch 7 is detected and the game is started, and the game is prevented from starting even if the start switch 7 is erroneously detected due to noise such as static electricity. it can.

尚、本実施例では、ゲームを開始可能な状態においてスタートスイッチ7のONが一定期間(最低でも約2.24ms)以上継続して検知されたことを条件に、スタートスイッチ7の操作が検出され、ゲームが開始されるようになっているが、例えば、1回のスイッチ入力判定処理においてスタートスイッチ7の検出状態を複数回確認し、全てにおいてONが判定されたことを条件に、スタートスイッチの操作が検出され、ゲームが開始されるようにしても良く、このような構成であっても静電気などのノイズによってスタートスイッチ7のONが誤って検出されたにも関わらず、ゲームが開始してしまうことを防止できる。   In this embodiment, the operation of the start switch 7 is detected on condition that the start switch 7 is continuously turned on for a certain period (at least about 2.24 ms) in a state where the game can be started. The game is started. For example, the detection state of the start switch 7 is confirmed a plurality of times in one switch input determination process, and on the condition that all are determined to be ON, The operation may be detected and the game may be started. Even in such a configuration, the game starts even though the start switch 7 is erroneously detected due to noise such as static electricity. Can be prevented.

以上、本発明の実施例1を図面により説明してきたが、本発明はこの実施例1に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。   As described above, the first embodiment of the present invention has been described with reference to the drawings. However, the present invention is not limited to the first embodiment, and the present invention can be modified or added without departing from the gist of the present invention. Needless to say, it is included.

例えば、前記実施例では、メダル並びにクレジットを用いて賭数を設定するスロットマシンを用いているが、本発明はこれに限定されるものではなく、遊技球を用いて賭数を設定するスロットマシンや、クレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンであっても良い。   For example, in the above embodiment, a slot machine for setting bets using medals and credits is used. However, the present invention is not limited to this, and a slot machine for setting bets using game balls. Alternatively, it may be a complete credit type slot machine that uses only credits to set the number of bets.

更に、流路切替ソレノイド30や投入メダルセンサ31など、メダルの投入機構に加えて、遊技球の取込を行う球取込装置、球取込装置により取り込まれた遊技球を検出する取込球検出スイッチを設けるとともに、ホッパーモータ34bや払出センサ34cなど、メダルの払出機構に加えて、遊技球の払出を行う球払出装置、球払出装置により払い出された遊技球を検出する払出球検出スイッチを設け、メダル及び遊技球の双方を用いて賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球が払い出されるスロットマシンに適用しても良い。   Further, in addition to the medal insertion mechanism such as the flow path switching solenoid 30 and the insertion medal sensor 31, a ball take-in device that takes in a game ball, and a take-in ball that detects a game ball taken in by the ball take-in device In addition to a medal payout mechanism, such as a hopper motor 34b and a payout sensor 34c, a ball payout device for paying out game balls and a payout ball detection switch for detecting game balls payed out by the ball payout device It is possible to set a bet number using both medals and game balls and play a game, and the present invention may be applied to a slot machine in which medals and game balls are paid out by winning.

次に、本発明が適用されたスロットマシンの実施例2について説明する。尚、本実施例の構成は、前述の実施例1と同一の構成を含むため、ここでは実施例1と相違する点について説明する。   Next, a second embodiment of the slot machine to which the present invention is applied will be described. Since the configuration of the present embodiment includes the same configuration as that of the first embodiment, differences from the first embodiment will be described here.

実施例1では、乱数割込制御データRDIC0のビット値が“0”に設定されており、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれても割込は発生しない構成であったが、本実施例では、乱数割込制御データRDIC0のビット値が“1”に設定されており、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれることで、乱数割込が発生するようになっている。   In the first embodiment, the bit value of the random number interrupt control data RDIC0 is set to “0”, and no interrupt is generated even if numerical data is captured in the random value register 559A serving as the random value register R1D. However, in this embodiment, the bit value of the random number interrupt control data RDIC0 is set to “1”, and the numerical value data is taken into the random number value register 559A serving as the random number value register R1D. It is supposed to occur.

そして、メイン制御部41は、乱数割込が発生した際に、基本処理に割り込んで乱数値ラッチ割込処理を実行する。尚、乱数割込が発生した際に、他の割込処理の実行中であれば、実行中の割込処理の終了を待って乱数値ラッチ割込処理を実行する。   Then, when a random number interrupt occurs, the main control unit 41 interrupts the basic process and executes a random value latch interrupt process. If another interrupt process is being executed when a random interrupt occurs, the random value latch interrupt process is executed after waiting for the end of the interrupt process being executed.

図45は、メイン制御部41が乱数割込の発生に伴い実行する乱数値ラッチ割込処理の制御内容を示すフローチャートである。尚、乱数値ラッチ割込処理の実行期間中は自動的に他の割込が禁止される。   FIG. 45 is a flowchart showing the control contents of the random value latch interrupt process executed by the main control unit 41 when the random number interrupt is generated. Note that other interrupts are automatically prohibited during the execution period of the random value latch interrupt process.

乱数値ラッチ割込処理では、まず、使用中のレジスタをスタック領域に退避した後(Sk1001)、乱数値レジスタ559Aから数値データを読み出し(Sk1002)、乱数値格納ワークに格納されている値を、Sk1002において読み出した数値データに更新し(Sk1003)、Sk1001においてスタック領域に退避したレジスタを復帰し(Sk1004)、割込前の処理に戻る。   In the random value latch interrupt process, first, after saving the register in use to the stack area (Sk1001), the numerical data is read from the random value register 559A (Sk1002), and the value stored in the random number value storage work is The numerical data read in Sk1002 is updated (Sk1003), the register saved in the stack area is restored in Sk1001 (Sk1004), and the process before the interrupt is returned.

このように本実施例では、乱数値レジスタR1Dに数値データが取り込まれることで、乱数割込が発生し、これに伴いメイン制御部41は、基本処理に割り込んで乱数値ラッチ割込処理を実行し、乱数値レジスタR1Dの数値データを読み出すようになっている。これにより、乱数ラッチフラグがクリアされ、新たな数値データの取込が可能な状態となる。すなわち乱数値レジスタR1Dに数値データが取り込まれる毎に、乱数値ラッチ割込処理を実行して乱数値レジスタR1Dの数値データを読み出すことで、乱数値レジスタR1Dに数値データが保持されている状態を解除し、乱数値レジスタR1Dに新たな数値データの取込が可能な状態となる。   As described above, in this embodiment, when the numerical data is taken into the random value register R1D, a random number interrupt is generated, and the main control unit 41 interrupts the basic process and executes the random value latch interrupt process. The numerical value data in the random value register R1D is read out. As a result, the random number latch flag is cleared, and new numerical data can be taken in. That is, every time numerical data is fetched into the random value register R1D, the random value latch interrupt processing is executed to read the numerical data in the random value register R1D, so that the numerical data is held in the random value register R1D. The state is released, and new numerical data can be taken into the random value register R1D.

このため、図46に示すように、ゲームの開始が許可されていない状態でスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されても、数値データがラッチされたことに伴う割込の発生により乱数値レジスタR1Dの数値データが読み出され、新たにラッチされた数値データを格納可能な状態となるので、ゲームの開始が許可される前のスタートスイッチ7の操作によりラッチされた数値データが乱数値レジスタR1Dに保持されても、ゲームの開始が許可された後にスタートスイッチ7が操作されたタイミングで新たにラッチした数値データを取得することが可能となる。   For this reason, as shown in FIG. 46, the start switch 7 is operated in a state where the start of the game is not permitted, and numerical data is stored in the random value register R1D. Even if this state is maintained, the numerical data is latched. Since the numerical data of the random number register R1D is read out by the occurrence of an interrupt due to the occurrence of the interruption, it becomes possible to store the newly latched numerical data, so the start switch 7 before the start of the game is permitted Even if the numerical data latched by the above operation is held in the random value register R1D, it is possible to acquire the newly latched numerical data at the timing when the start switch 7 is operated after the start of the game is permitted. .

また、乱数値ラッチ割込処理では、乱数値レジスタR1Dにラッチされた数値データを読み出すだけではなく、RAM507の乱数値格納ワークの値を読み出した数値データに更新することにより、乱数値レジスタR1Dに新たな数値データがラッチされる毎に、乱数値格納ワークに格納された数値データが新たにラッチされた最新の数値データに更新されるようになっている。   Further, in the random value latch interrupt processing, not only the numerical data latched in the random value register R1D but also the random value storage work value in the RAM 507 is updated to the read numerical data, so that the random value register R1D Each time new numerical data is latched, the numerical data stored in the random value storage work is updated to the latest latched numerical data.

そして、ゲームの開始時に、乱数値レジスタR1Dに格納されている数値データではなく、RAM507の乱数値格納ワークに格納されている数値データを取得して内部抽選を行うので、乱数値レジスタR1Dから数値データが読み出された後に、スタートスイッチの信号線にノイズがのって数値データが変わってしまっても内部抽選に用いる乱数値格納ワークの数値データに影響することがなく、このような場合であってもスタートスイッチ7が操作されたタイミングでラッチした数値データを用いて内部抽選を行うことができる。   At the start of the game, instead of the numerical data stored in the random value register R1D, the numerical data stored in the random value storage work of the RAM 507 is acquired and the internal lottery is performed. After the data is read, even if the numerical data changes due to noise on the signal line of the start switch, it will not affect the numerical data of the random number storage work used for internal lottery. Even in such a case, the internal lottery can be performed using the numerical data latched at the timing when the start switch 7 is operated.

また、本実施例では、スタートスイッチ7の操作が検出された時点で、RAM507の乱数値格納ワークに格納されている数値データを同じくRAM507に割り当てられた抽選用ワークに設定し、その後の内部抽選において抽選用ワークに設定された数値データに対して演算を行うことにより役に当選したか否かの判定を行うようになっており、スタートスイッチ7の操作が検出された時点から内部抽選が終了するまでに乱数値格納ワークに格納されている数値データが更新されても、スタートスイッチ7の操作が検出された時点で取得した数値データが内部抽選が終了するまでに変更されてしまうことがないが、スタートスイッチ7の操作が検出された時点でRAM507の乱数値格納ワークに格納されている数値データをCPU505のワークレジスタに設定し、その後の内部抽選においてワークレジスタに設定された数値データに対して演算を行うことにより役に当選したか否かの判定を行うようにしても良い。   In this embodiment, when the operation of the start switch 7 is detected, the numerical data stored in the random value storage work of the RAM 507 is set in the lottery work assigned to the RAM 507, and the internal lottery thereafter. In this case, it is determined whether or not the winning combination has been won by performing an operation on the numerical data set in the lottery work, and the internal lottery ends when the operation of the start switch 7 is detected. Even if the numerical data stored in the random number storage work is updated by the time, the numerical data acquired at the time when the operation of the start switch 7 is detected is not changed until the internal lottery ends. However, when the operation of the start switch 7 is detected, the numerical data stored in the random value storage work of the RAM 507 is transferred to the CPU 505. Set the work register, it may be to determine whether or not the player wins the role by performing an operation on numerical values set in the work register data in the subsequent internal lottery.

また、乱数値格納ワークに格納されている数値データに対して演算を行うことにより役に当選したか否かの判定を行うようにしても良いが、この場合には、スタートスイッチ7の操作が検出された時点から内部抽選が終了するまでの期間において、乱数割込の発生に伴う乱数値割込処理を禁止することなどにより、乱数値格納ワークに格納されている数値データが新たにラッチされた数値データによって更新されてしまうことがないようにすることで、スタートスイッチ7の操作が検出された時点で取得した数値データが内部抽選が終了するまでに変更されてしまうことを防止できる。   Further, it may be determined whether or not the winning combination is obtained by performing an operation on the numerical data stored in the random value storage work. In this case, the operation of the start switch 7 is performed. The numerical data stored in the random value storage work is newly latched, for example, by prohibiting random value interrupt processing that accompanies the generation of random number interrupts during the period from the time of detection until the end of the internal lottery. By preventing the numerical data from being updated, it is possible to prevent the numerical data acquired when the operation of the start switch 7 is detected from being changed before the internal lottery is completed.

尚、本実施例では、乱数値ラッチ割込処理において、乱数値レジスタR1Dの数値データを読み出すようになっているが、乱数値ラッチ割込処理では、乱数値レジスタR1Dに数値データがラッチされた旨を示すラッチフラグをRAM507に設定し、BET処理などの基本処理やタイマ割込処理(メイン)などにおいてラッチフラグがRAM507に設定されているか否かを判定し、RAM507にラッチフラグが設定されていると判定した場合に、乱数値レジスタR1Dの数値データを読み出す構成としても良く、このような構成とした場合でも、ゲームの開始が許可されていない状態でスタートスイッチ7が操作されて乱数値レジスタR1Dに数値データが格納され、その状態が保持されたままとなってしまうことがなく、ゲームの開始が許可された後にスタートスイッチ7が操作されたタイミングで新たにラッチした数値データを取得することが可能となる。   In this embodiment, the numerical value data in the random value register R1D is read in the random value latch interrupt process. However, in the random value latch interrupt process, the numerical data is latched in the random value register R1D. Is set in the RAM 507 to determine whether the latch flag is set in the RAM 507 in basic processing such as BET processing or timer interrupt processing (main), and it is determined that the latch flag is set in the RAM 507. In such a case, the numerical data in the random value register R1D may be read out. Even in such a configuration, the start switch 7 is operated in a state where the start of the game is not permitted, and the numerical value is stored in the random value register R1D. The data is stored and the state is not retained and the game is opened. There it is possible to obtain a new numerical data latched at the timing of the start switch 7 has been operated after being allowed.

以上、本発明の実施例2を説明してきたが、本発明はこの実施例2に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。また、実施例1と同一もしくは類似する構成については、実施例1で説明したものと同様の効果を有するものである。また、実施例1について例示した変形例についても実施例2に適用可能である。   As described above, the second embodiment of the present invention has been described. However, the present invention is not limited to the second embodiment, and changes and additions within the scope of the present invention are included in the present invention. Needless to say. Further, the same or similar configuration as the first embodiment has the same effect as that described in the first embodiment. Further, the modified example illustrated for the first embodiment is also applicable to the second embodiment.

1 スロットマシン
2L、2C、2R リール
6 MAXBETスイッチ
7 スタートスイッチ
8L、8C、8R ストップスイッチ
41 メイン制御部
91 サブ制御部
505 CPU
506 ROM
507 RAM
509 乱数回路
559A 乱数値レジスタ
1 slot machine 2L, 2C, 2R reel 6 MAXBET switch 7 start switch 8L, 8C, 8R stop switch 41 main control unit 91 sub control unit 505 CPU
506 ROM
507 RAM
509 Random number circuit 559A Random value register

Claims (7)

遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の図柄を変動表示可能な可変表示装置に表示結果が導出されたことにより1ゲームが終了し、前記可変表示装置に導出された表示結果に応じて入賞が発生可能とされたスロットマシンであって、
電力供給が停止しても格納されているデータが保持されるバックアップ領域を有するデータ記憶手段と、
ゲームを開始する際に操作される開始操作手段と、
数値データを更新する数値更新手段と、
ゲームを開始させることが可能な開始可能状態において、前記開始操作手段が操作されたことによりゲームを開始させるゲーム開始手段と、
前記開始操作手段が操作されたときに、前記開始可能状態であるか否かに関わらず、前記数値更新手段によって更新された数値データを乱数値として抽出し、第1の数値データ格納領域に格納する乱数抽出手段と、
前記第1の数値データ格納領域に前記乱数抽出手段により数値データが格納された後、該格納されている数値データが読み出されるまでは、前記乱数抽出手段により新たな数値データが格納されることがなく、該第1の数値データ格納領域に格納されている数値データを保持する数値データ保持手段と、
一定時間毎に、前記第1の数値データ格納領域に数値データが格納されているか否かを判定する数値データ格納判定手段と、
前記第1の数値データ格納判定手段が前記数値データ格納領域に数値データが格納されていると判定したときに、前記第1の数値データ格納領域に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除するとともに、該読み出した数値データを前記バックアップ領域に設けられた第2の数値データ格納領域に格納する数値データ読出手段と、
前記ゲーム開始手段がゲームを開始させるときに、前記第2の数値データ格納領域に格納されている数値データを用いて入賞の発生を許容するか否かを決定する事前決定手段と、
を備える
ことを特徴とするスロットマシン。
The game can be started by setting a predetermined number of bets for one game using the gaming value, and the display result is displayed on a variable display device capable of variably displaying a plurality of types of symbols each identifiable. A slot machine in which one game is ended by being derived, and a winning can be generated according to the display result derived to the variable display device,
Data storage means having a backup area in which stored data is retained even if power supply is stopped;
Start operation means operated when starting the game,
Numerical value updating means for updating numerical data;
Game start means for starting the game by operating the start operation means in a startable state where the game can be started;
When the start operation means is operated, the numerical data updated by the numerical value update means is extracted as a random number value regardless of whether or not it is in the startable state, and is stored in the first numerical data storage area Random number extraction means to
After the numerical data is stored in the first numerical data storage area by the random number extraction unit, new numerical data is stored by the random number extraction unit until the stored numerical data is read. And numerical data holding means for holding numerical data stored in the first numerical data storage area,
Numerical data storage determining means for determining whether numerical data is stored in the first numerical data storage area at regular intervals;
When the first numerical data storage determining means determines that numerical data is stored in the numerical data storage area, the numerical data stored in the first numerical data storage area is read, Numeric data reading means for releasing the numeric data held by the numeric data holding means and storing the read numeric data in a second numeric data storage area provided in the backup area ;
Pre-determining means for determining whether or not to allow the generation of a prize using the numerical data stored in the second numerical data storage area when the game starting means starts the game;
A slot machine characterized by comprising:
遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の図柄を変動表示可能な可変表示装置に表示結果が導出されたことにより1ゲームが終了し、前記可変表示装置に導出された表示結果に応じて入賞が発生可能とされたスロットマシンであって、
電力供給が停止しても格納されているデータが保持されるバックアップ領域を有するデータ記憶手段と、
ゲームを開始する際に操作される開始操作手段と、
数値データを更新する数値更新手段と、
ゲームを開始させることが可能な開始可能状態において、前記開始操作手段が操作されたことによりゲームを開始させるゲーム開始手段と、
前記開始操作手段が操作されたときに、前記開始可能状態であるか否かに関わらず、前記数値更新手段によって更新された数値データを乱数値として抽出し、第1の数値データ格納領域に格納する乱数抽出手段と、
前記第1の数値データ格納領域に前記乱数抽出手段により数値データが格納された後、該格納されている数値データが読み出されるまでは、前記乱数抽出手段により新たな数値データが格納されることがなく、該第1の数値データ格納領域に格納されている数値データを保持する数値データ保持手段と、
前記第1の数値データ格納領域に数値データが格納されたときに割込を発生させる割込発生手段と、
前記割込発生手段が前記割込を発生させたことに応じて、前記第1の数値データ格納領域に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除するとともに、該読み出した数値データを前記バックアップ領域に設けられた第2の数値データ格納領域に格納する数値データ読出手段と、
前記ゲーム開始手段がゲームを開始させるときに、前記第2の数値データ格納領域に格納されている数値データを用いて入賞の発生を許容するか否かを決定する事前決定手段と、
を備える
ことを特徴とするスロットマシン。
The game can be started by setting a predetermined number of bets for one game using the gaming value, and the display result is displayed on a variable display device capable of variably displaying a plurality of types of symbols each identifiable. A slot machine in which one game is ended by being derived, and a winning can be generated according to the display result derived to the variable display device,
Data storage means having a backup area in which stored data is retained even if power supply is stopped;
Start operation means operated when starting the game,
Numerical value updating means for updating numerical data;
Game start means for starting the game by operating the start operation means in a startable state where the game can be started;
When the start operation means is operated, the numerical data updated by the numerical value update means is extracted as a random number value regardless of whether or not it is in the startable state, and is stored in the first numerical data storage area Random number extraction means to
After the numerical data is stored in the first numerical data storage area by the random number extraction unit, new numerical data is stored by the random number extraction unit until the stored numerical data is read. And numerical data holding means for holding numerical data stored in the first numerical data storage area,
Interrupt generating means for generating an interrupt when numerical data is stored in the first numerical data storage area;
In response to the occurrence of the interrupt by the interrupt generation means, reading of the numerical data stored in the first numerical data storage area releases the numerical data holding by the numerical data holding means. And numerical data reading means for storing the read numerical data in a second numerical data storage area provided in the backup area ,
Pre-determining means for determining whether or not to allow the generation of a prize using the numerical data stored in the second numerical data storage area when the game starting means starts the game;
A slot machine characterized by comprising:
ゲームを開始させることが不可能な状態から前記開始可能状態となったときに、前記第1の数値データ格納領域に格納されている数値データを読み出すことにより、前記数値データ保持手段による数値データの保持を解除する保持解除手段を備える
ことを特徴とする請求項1または2に記載のスロットマシン。
The numerical data stored in the first numerical data storage area is read out when the numerical value stored in the first numerical data storage area is read out from the state in which the game cannot be started. the slot machine as claimed in claim 1 or 2, characterized in that it comprises a holding release means for releasing the retention.
前記ゲーム開始手段は、ゲームを開始させることが可能な開始可能状態において、前記開始操作手段の操作が所定期間継続して検出されたことを条件に、ゲームを開始させる
ことを特徴とする請求項1〜3のいずれかに記載のスロットマシン。
The game start means starts a game on condition that an operation of the start operation means is continuously detected for a predetermined period in a startable state where the game can be started. The slot machine in any one of 1-3 .
前記スロットマシン毎に個別に割り当てられた識別符号が記憶される不揮発性メモリと、
電力供給が開始したときに前記不揮発性メモリに記憶されている識別符号に基づいて初期数値データを生成する初期数値データ生成手段と、
をさらに備え、
前記数値更新手段は、電力供給が開始したときに前記初期数値データ生成手段により生成された初期数値データから前記数値データの更新を開始する
ことを特徴とする請求項1〜4のいずれかに記載のスロットマシン。
A non-volatile memory in which an identification code individually assigned to each slot machine is stored ;
Initial numerical data generating means for generating initial numerical data based on an identification code stored in the nonvolatile memory when power supply is started ;
Further comprising
The numerical updating unit according to any one of claims 1 to 4, characterized in the initial numerical initiating the updating of the numeric data from the generated initial numerical data by the data generating means when the power supply has started Slot machine.
前記数値更新手段は、ゲームの進行制御を行うゲーム制御手段を動作させるための動作クロックとは周期の異なる動作クロックを入力して前記数値データを更新する
ことを特徴とする請求項1〜5のいずれかに記載のスロットマシン。
The numerical updating means and the operation clock for operating the game control means controls the progress of the game by entering a different operation clock periodicity of claim 1, wherein updating the numerical data A slot machine according to any one of the above.
前記数値更新手段は、所定周期の動作クロックを入力して前記数値データを更新し、
前記スロットマシンは、前記数値更新手段に入力される動作クロックの入力状態に基づき、前記数値更新手段の動作状態に異常が発生したか否かを判定する動作クロック異常判定手段を備える
ことを特徴とする請求項1〜6のいずれかに記載のスロットマシン。
The numerical value updating means inputs an operation clock having a predetermined period to update the numerical data,
The slot machine has a feature in that it comprises the numerical input to the updating means based on the input state of the operation clock, the operation clock abnormality determining means determines whether an abnormality in the operation state of the numerical updating means has occurred The slot machine according to any one of claims 1 to 6 .
JP2009058624A 2009-03-11 2009-03-11 Slot machine Expired - Fee Related JP5552244B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009058624A JP5552244B2 (en) 2009-03-11 2009-03-11 Slot machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009058624A JP5552244B2 (en) 2009-03-11 2009-03-11 Slot machine

Publications (3)

Publication Number Publication Date
JP2010207478A JP2010207478A (en) 2010-09-24
JP2010207478A5 JP2010207478A5 (en) 2013-06-06
JP5552244B2 true JP5552244B2 (en) 2014-07-16

Family

ID=42968319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009058624A Expired - Fee Related JP5552244B2 (en) 2009-03-11 2009-03-11 Slot machine

Country Status (1)

Country Link
JP (1) JP5552244B2 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014208096A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208098A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208099A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208100A (en) * 2014-05-08 2014-11-06 株式会社三共 Game machine
JP2014208097A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014223303A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014223304A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014223305A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014239879A (en) * 2014-05-08 2014-12-25 株式会社三共 Game machine
JP2014239880A (en) * 2014-05-08 2014-12-25 株式会社三共 Game machine
JP2016137351A (en) * 2016-05-11 2016-08-04 株式会社三共 Game machine
JP2016137352A (en) * 2016-05-11 2016-08-04 株式会社三共 Game machine
JP2016163746A (en) * 2016-05-11 2016-09-08 株式会社三共 Game machine

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5540261B2 (en) * 2009-05-20 2014-07-02 株式会社ソフイア Game machine
JP5540260B2 (en) * 2009-05-20 2014-07-02 株式会社ソフイア Game machine
JP5543230B2 (en) * 2010-01-22 2014-07-09 株式会社三共 Game machine
JP5543242B2 (en) * 2010-03-12 2014-07-09 株式会社三共 Slot machine
JP5543249B2 (en) * 2010-03-12 2014-07-09 株式会社三共 Game machine
JP5277386B2 (en) * 2011-04-14 2013-08-28 株式会社ソフイア Game machine
JP6394635B2 (en) * 2016-04-28 2018-09-26 株式会社三洋物産 Game machine
JP2018121671A (en) * 2017-01-30 2018-08-09 株式会社三洋物産 Game machine
JP2018121672A (en) * 2017-01-30 2018-08-09 株式会社三洋物産 Game machine
JP2018121669A (en) * 2017-01-30 2018-08-09 株式会社三洋物産 Game machine
JP2018121670A (en) * 2017-01-30 2018-08-09 株式会社三洋物産 Game machine
JP2018121673A (en) * 2017-01-30 2018-08-09 株式会社三洋物産 Game machine
JP2022016552A (en) * 2017-03-17 2022-01-21 株式会社三洋物産 Game machine
JP2022016551A (en) * 2017-03-17 2022-01-21 株式会社三洋物産 Game machine
JP2018153521A (en) * 2017-03-21 2018-10-04 株式会社三洋物産 Game machine
JP2018153519A (en) * 2017-03-21 2018-10-04 株式会社三洋物産 Game machine
JP2018153520A (en) * 2017-03-21 2018-10-04 株式会社三洋物産 Game machine
JP6791217B2 (en) * 2018-08-29 2020-11-25 株式会社三洋物産 Game machine
JP2019209157A (en) 2019-07-24 2019-12-12 株式会社三洋物産 Game machine
JP2021020118A (en) * 2020-11-04 2021-02-18 株式会社三洋物産 Game machine
JP7031722B2 (en) * 2020-11-27 2022-03-08 株式会社三洋物産 Pachinko machine
JP2021090869A (en) 2021-03-19 2021-06-17 株式会社三洋物産 Game machine

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4335846B2 (en) * 2005-05-31 2009-09-30 株式会社ニューギン Game machine
JP2009089966A (en) * 2007-10-10 2009-04-30 Le Tekku:Kk Microcomputer for controlling game machine
JP4684328B2 (en) * 2008-11-12 2011-05-18 株式会社大都技研 Amusement stand
JP4415057B1 (en) * 2008-11-12 2010-02-17 株式会社大都技研 Amusement stand
JP4498454B2 (en) * 2008-11-12 2010-07-07 株式会社大都技研 Amusement stand
JP4964260B2 (en) * 2009-02-24 2012-06-27 株式会社三共 Slot machine
JP4790824B2 (en) * 2009-02-24 2011-10-12 株式会社三共 Slot machine
JP4964261B2 (en) * 2009-02-24 2012-06-27 株式会社三共 Slot machine

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014208096A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208098A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208099A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014208100A (en) * 2014-05-08 2014-11-06 株式会社三共 Game machine
JP2014208097A (en) * 2014-05-08 2014-11-06 株式会社三共 Slot machine
JP2014223303A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014223304A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014223305A (en) * 2014-05-08 2014-12-04 株式会社三共 Game machine
JP2014239879A (en) * 2014-05-08 2014-12-25 株式会社三共 Game machine
JP2014239880A (en) * 2014-05-08 2014-12-25 株式会社三共 Game machine
JP2016137351A (en) * 2016-05-11 2016-08-04 株式会社三共 Game machine
JP2016137352A (en) * 2016-05-11 2016-08-04 株式会社三共 Game machine
JP2016163746A (en) * 2016-05-11 2016-09-08 株式会社三共 Game machine

Also Published As

Publication number Publication date
JP2010207478A (en) 2010-09-24

Similar Documents

Publication Publication Date Title
JP5552244B2 (en) Slot machine
JP5566122B2 (en) Game machine
JP4964260B2 (en) Slot machine
JP5543229B2 (en) Game machine
JP5937639B2 (en) Game machine
JP5937638B2 (en) Game machine
JP2011188931A (en) Game machine
JP4790824B2 (en) Slot machine
JP2016137351A (en) Game machine
JP4964261B2 (en) Slot machine
JP5937640B2 (en) Game machine
JP5552241B2 (en) Slot machine
JP5543230B2 (en) Game machine
JP5553573B2 (en) Slot machine
JP6240651B2 (en) Game machine
JP6212597B2 (en) Game machine
JP6334600B2 (en) Game machine
JP5543247B2 (en) Slot machine
JP5706628B2 (en) Game machine
JP5543249B2 (en) Game machine
JP5543243B2 (en) Game machine
JP5552240B2 (en) Slot machine
JP5552239B2 (en) Slot machine
JP5850987B2 (en) Game machine
JP5543246B2 (en) Slot machine

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130611

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140513

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140526

R150 Certificate of patent or registration of utility model

Ref document number: 5552244

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

LAPS Cancellation because of no payment of annual fees