JP2016101278A - Game machine - Google Patents

Game machine Download PDF

Info

Publication number
JP2016101278A
JP2016101278A JP2014240656A JP2014240656A JP2016101278A JP 2016101278 A JP2016101278 A JP 2016101278A JP 2014240656 A JP2014240656 A JP 2014240656A JP 2014240656 A JP2014240656 A JP 2014240656A JP 2016101278 A JP2016101278 A JP 2016101278A
Authority
JP
Japan
Prior art keywords
area
rom
program
data
ram area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014240656A
Other languages
Japanese (ja)
Other versions
JP6592889B2 (en
Inventor
吉野 純一
Junichi Yoshino
純一 吉野
賢佑 近藤
Kensuke Kondo
賢佑 近藤
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.)
Sammy Corp
Original Assignee
Sammy Corp
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 Sammy Corp filed Critical Sammy Corp
Priority to JP2014240656A priority Critical patent/JP6592889B2/en
Publication of JP2016101278A publication Critical patent/JP2016101278A/en
Application granted granted Critical
Publication of JP6592889B2 publication Critical patent/JP6592889B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a game machine facilitating verification of validity of programs since a program for mounting amusement specifications and a program for preventing a fraudulent act are often mixedly disposed on a ROM.SOLUTION: When a program existing inside a first control area and accessed by a CPU, namely, a program implemented with amusement specifications, is disposed as a program existing inside a second control area and accessed by the CPU, namely, a program for preventing a fraudulent act, it is guaranteed that a processing result processed by the program implemented with amusement specifications and a processing result processed by the program for preventing a fraudulent act are not stored mixedly, and destruction of one of the processing results can be known easily even if the stored processing result is destroyed.SELECTED DRAWING: Figure 7

Description

遊技機に関する。   It relates to gaming machines.

回胴式遊技機(スロットマシン)は、所定数の遊技メダルを投入後に遊技開始指示装置(スタートレバー)が操作されたことを契機として、複数の図柄が外周上に配置された複数列の回胴(リール)が回転動作し、当該回転動作を停止させるための回胴停止装置(ストップボタン)を駆使して回胴を停止させた結果、有効ライン上に所定の図柄の組合せ(例えば「777」)が並んだ場合には、通常遊技状態よりも遊技者にとって利益状態の高い特別遊技状態{通常時よりも当選役の抽選確率が上昇する遊技状態}に移行するタイプのものが一般的である。ここで、スロットマシンにおいては、遊技の興趣性を高めるための演出用の画像等が、リールの回転動作及び停止動作とシンクロした形で、液晶等のディスプレイ上にて表示される場合があり、ストップボタン等を操作した際に、リール上に表示された図柄とディスプレイ上に表示された演出用の画像等とを見比べながら、遊技の結果を予測して楽しむよう構成されているものが多い。   A spinning machine (slot machine) is a multi-row game machine in which a plurality of symbols are arranged on the outer periphery when a game start instruction device (start lever) is operated after a predetermined number of game medals have been inserted. The cylinder (reel) rotates, and as a result of stopping the rotation using a rotation stop device (stop button) for stopping the rotation, a combination of predetermined symbols (for example, “777” on the effective line) )), The game type is generally shifted to a special gaming state that is more profitable for the player than the normal gaming state {the gaming state in which the lottery probability of the winning combination is higher than in the normal state}. is there. Here, in the slot machine, there may be a case where an image for production for enhancing the fun of the game is displayed on a display such as a liquid crystal in a form synchronized with the rotation operation and the stop operation of the reel. In many cases, when a stop button or the like is operated, a game result is predicted and enjoyed while comparing a design displayed on the reel with an image for performance displayed on the display.

また、ぱちんこ遊技機は、始動口(スタートチャッカー)に遊技球が入球したことを契機として、7セグ等の表示部上で「特別図柄」と称される図柄が変動表示され、当該特別図柄が特定態様(例えば「7」)となった場合、通常遊技状態よりも遊技者にとって利益状態の高い特別遊技状態{通常時は閉状態にある大入賞口(アタッカー)が所定条件で開放する内容の遊技}に移行するタイプの、いわゆる「デジパチ」と呼ばれている機種(従来の「第一種遊技機」)が一般的である。ここで、遊技者の利益に直結する特別図柄の表示制御の負担を軽減するために、前記の「特別図柄」とは別に、遊技の興趣性を高めるための演出用の「装飾図柄」と称される図柄が、前記特別図柄の変動とシンクロした形で、前記表示部よりもサイズが大きい液晶等のディスプレイ上で変動表示される場合がある。そして、特別図柄の変動が開始されると装飾図柄もこれに合わせて変動を開始し、特別図柄が特定態様(例えば「7」)で停止した場合、装飾図柄もこれに合わせて所定態様(例えば「777」)で停止することとなる。そして、装飾図柄が所定態様で停止したことにより、特別遊技へ移行が確定したことを遊技者が明確に認識できるよう構成されているものが多い。   In addition, the pachinko game machine has a symbol called “special symbol” variably displayed on the display section such as 7-segment when the game ball enters the start opening (start chucker). Is in a specific mode (for example, “7”), a special game state that is more profitable for the player than the normal game state {contents that a special winning opening (attacker) that is normally closed is opened under predetermined conditions] Is a type that shifts to the so-called “digipachi” (conventional “first-class gaming machine”). Here, in order to reduce the burden of display control of special symbols that are directly linked to the interests of the player, in addition to the aforementioned “special symbols”, it is referred to as “decorative symbols” for the purpose of enhancing the fun of the game. The symbol to be displayed may be variably displayed on a display such as a liquid crystal having a size larger than that of the display unit in a form synchronized with the variation of the special symbol. And when the change of the special symbol is started, the decorative symbol also starts to change accordingly. “777”). And many things are comprised so that a player can recognize clearly that transfer to a special game was decided because the decoration design stopped in the predetermined mode.

このような仕組みはこの種の多くの遊技機で共通するのであるが、遊技機の動作制御等を司るプログラム容量は、不正プログラムの混入防止(遊技機メーカーが提供するプログラムの正当性保障)の観点からその容量上限が厳しく規制されていると共に、遊技性仕様を実装するためのプログラムの他にも、遊技機に対して不正行為がなされる(例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等)ことを防御するための不正行為防止用のプログラムも数多く実装されている。   Such a mechanism is common to many game machines of this type, but the program capacity for controlling the operation of the game machine is to prevent mixing of illegal programs (guaranteeing the validity of the program provided by the machine manufacturer). The upper limit of the capacity is strictly regulated from the viewpoint, and in addition to the program for implementing the gaming specification, the gaming machine is cheated (for example, for the slot of the game medium and the outlet) Many programs for preventing illegal acts are also implemented to protect against unauthorized access to obtain game media by unauthorized means.

特開2011−147675JP2011-147675A

しかしながら、現状では、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとが混在してROM上に配置されていることが多く、その結果これらプログラムの正当性を検証することが困難となっているという課題が存在する。   However, at present, a program for implementing the game playability specification and a program for preventing fraud are often mixed on the ROM, and as a result, it is difficult to verify the legitimacy of these programs. There is a problem of becoming.

本態様に係る遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報(例えば、CPUC100内のレジスタで保持されている情報)を参照可能に構成されている
ことを特徴とする遊技機である。
The gaming machine according to this aspect is
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When there is a call instruction in the program arranged in the first control area, and when the CPU executes processing according to the program arranged in the second control area, The gaming machine is configured to be able to refer to information (for example, information held in a register in the CPUC 100) stored at the time when a call instruction is issued.

本態様に係る遊技機によれば、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの正当性を検証することが容易となるという効果を奏する。   According to the gaming machine according to the present aspect, there is an effect that it becomes easy to verify the validity of the program for implementing the gameability specification and the program for preventing fraud.

図1は、本実施形態に係る回胴式遊技機の斜視図である。FIG. 1 is a perspective view of a rotating type gaming machine according to the present embodiment. 図2は、本実施形態に係る回胴式遊技機の扉を開いた状態の斜視図である。FIG. 2 is a perspective view of a state in which the door of the spinning cylinder type gaming machine according to the present embodiment is opened. 図3は、本実施形態に係る回胴式遊技機における、メダル投入口内部の斜視図である。FIG. 3 is a perspective view of the inside of the medal slot in the spinning cylinder game machine according to the present embodiment. 図4は、本実施形態に係る回胴式遊技機における、メダル払出装置の正面図及び上面図である。FIG. 4 is a front view and a top view of the medal payout device in the spinning cylinder type gaming machine according to the present embodiment. 図5は、本実施形態に係る回胴式遊技機の電気的全体構成図である。FIG. 5 is an overall electrical configuration diagram of the swivel type gaming machine according to the present embodiment. 図6は、本実施形態に係る回胴式遊技機の主制御チップに係る電気的構成図である。FIG. 6 is an electrical configuration diagram relating to the main control chip of the spinning cylinder gaming machine according to the present embodiment. 図7は、本実施形態に係る回胴式遊技機における、主制御チップのメモリマップ構成図である。FIG. 7 is a memory map configuration diagram of the main control chip in the rotating game machine according to the present embodiment. 図8は、本実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャートである。FIG. 8 is a main flowchart on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図9は、本実施形態に係る回胴式遊技機における、主制御基板側での設定変更装置制御処理のフローチャートである。FIG. 9 is a flowchart of the setting change device control process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図10は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理(1枚目)のフローチャートである。FIG. 10 is a flowchart of the game progress control process (first sheet) on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図11は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理(2枚目)のフローチャートである。FIG. 11 is a flowchart of the game progress control process (second sheet) on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図12は、本実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理(3枚目)のフローチャートである。FIG. 12 is a flowchart of the game progress control process (third sheet) on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図13は、本実施形態に係る回胴式遊技機における、主制御基板側での復帰不可能エラー処理のフローチャートである。FIG. 13 is a flowchart of the non-recoverable error process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図14は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入エラー検出処理のフローチャートである。FIG. 14 is a flowchart of a medal insertion error detection process on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図15は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出エラー検出処理のフローチャートである。FIG. 15 is a flowchart of the medal payout error detection process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図16は、本実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラー検出処理のフローチャートである。FIG. 16 is a flowchart of the insertion / withdrawal error detection process on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図17は、本実施形態に係る回胴式遊技機における、主制御基板側でのタイマ割り込み時処理のフローチャートである。FIG. 17 is a flowchart of the timer interruption process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図18は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入チェック処理のフローチャートである。FIG. 18 is a flowchart of the medal insertion check process on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図19は、本実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出チェック処理のフローチャートである。FIG. 19 is a flowchart of a medal payout check process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図20は、本実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラーチェック処理のフローチャートである。FIG. 20 is a flowchart of the input / withdrawal error check processing on the main control board side in the spinning cylinder type gaming machine according to the present embodiment. 図21は、本実施形態に係る回胴式遊技機における、主制御基板側での電源断時処理のフローチャートである。FIG. 21 is a flowchart of the power-off process on the main control board side in the spinning cylinder game machine according to the present embodiment. 図22は、第2実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャート(1枚目)である。FIG. 22 is a main flowchart (first sheet) on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図23は、第2実施形態に係る回胴式遊技機における、主制御基板側でのメインフローチャート(2枚目)である。FIG. 23 is a main flowchart (second sheet) on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図24は、第2実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理(2枚目)のフローチャートである。FIG. 24 is a flowchart of the game progress control process (second sheet) on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図25は、第2実施形態に係る回胴式遊技機における、主制御基板側でのメダル投入エラー検出処理のフローチャートである。FIG. 25 is a flowchart of a medal insertion error detection process on the main control board side in the spinning-reel game machine according to the second embodiment. 図26は、第2実施形態に係る回胴式遊技機における、主制御基板側でのメダル払出エラー検出処理のフローチャートである。FIG. 26 is a flowchart of a medal payout error detection process on the main control board side in the spinning cylinder game machine according to the second embodiment. 図27は、第2実施形態に係る回胴式遊技機における、主制御基板側での投入・払出エラー検出処理のフローチャートである。FIG. 27 is a flowchart of the insertion / withdrawal error detection process on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図28は、第2実施形態に係る回胴式遊技機における、主制御基板側での遊技進行制御処理(3枚目)のフローチャートである。FIG. 28 is a flowchart of the game progress control process (third sheet) on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図29は、第2実施形態に係る回胴式遊技機における、主制御基板側での復帰不可能エラー処理のフローチャートである。FIG. 29 is a flowchart of non-recoverable error processing on the main control board side in the spinning cylinder type gaming machine according to the second embodiment. 図30は、第2実施形態に係る回胴式遊技機における、主制御基板側でのタイマ割り込み時処理のフローチャートである。FIG. 30 is a flowchart of timer interruption processing on the main control board side in the spinning-reel game machine according to the second embodiment. 図31は、第2実施形態に係る回胴式遊技機における、主制御基板側での電源断時処理のフローチャートである。FIG. 31 is a flowchart of a power-off process on the main control board side in the spinning cylinder game machine according to the second embodiment.

はじめに、本明細書における各用語の意義について説明する。「乱数」とは、回胴式遊技機において何らかの遊技内容を決定するための抽選(電子計算機によるくじ)に使用される乱数であり、狭義の乱数の他に擬似乱数も含む(例えば、乱数としてはハード乱数、擬似乱数としてはソフト乱数)。例えば、遊技の結果に影響を与えるいわゆる「基本乱数」、具体的には、特別遊技の移行や入賞役と関連した「当選乱数」、等を挙げることができる。「CPU」とは、当業界において周知であるものと同義であり、使用されているアーキテクチャ(CISC、RISC、ビット数等)や処理性能等には何ら限定されない。「電断(電源断)」とは、遊技機に設けられた電源スイッチの操作実行有無に係らず、遊技機に供給される電源電圧が一定レベル以下となったことを指し、例えば、電源供給ユニットの破損や停電等による不測の事態による電源供給の遮断をも包含する。「ROM」とは、当業界において周知であるものと同義であり、情報を物理的に保持する(例えば、データ読み出し用の電流を与えた場合、導通する素子構成であれば「1」、導通しない素子構成であれば「0」となる)。RAMとは、当業界において周知であるものと同義であり、情報を電気的に保持する(例えば、データ読み出し用の電流を与えた場合、蓄電されていれば「1」、蓄電されていなければ「0」となる。尚、RAM内で保持されているデータの一部又はすべてに対して、電断時にはバックアップ電源が供給されるよう構成されていることが一般的である)。「遊技状態」とは、例えば、遊技メダルが獲得容易であり遊技者にとって有利な特別遊技状態(いわゆる大当り遊技であり、ボーナス遊技や第1種BB・第2種BB等と呼ばれるものが該当する)、再遊技の当選率があらかじめ定められた値である通常遊技状態よりも再遊技当選率が高い(又は低い)状態である再遊技確率変動遊技状態(RT状態)、当選した役を入賞させるためのリールの停止順を報知し得るAT(アシストタイム)状態、前記RT状態とAT状態とが複合したART(アシストリプレイタイム)状態、等が挙げられる。また、前記通常遊技状態においても、前記RT状態、AT状態、ART状態への移行抽選確率が異なる、高確率通常遊技状態、低確率通常遊技状態、等が挙げられる。また、前記遊技状態は複合しても問題ない{更に、これらの遊技状態や機能(例えば、AT状態への移行抽選や、リールの停止順に係る報知指示の出力等)は、遊技進行を制御する主制御基板側ですべて実装してしまっても問題ない}。   First, the meaning of each term in this specification will be described. “Random number” is a random number used in a lottery (lottery by an electronic computer) to determine some game content in a spinning-type game machine, and includes a pseudo-random number in addition to a random number in a narrow sense (for example, as a random number) Is a hard random number, and a soft random number as a pseudo-random number). For example, a so-called “basic random number” that affects the outcome of the game, specifically, a “winning random number” associated with the transition of a special game or a winning combination can be cited. “CPU” is synonymous with what is well known in the art, and is not limited to the architecture (CISC, RISC, number of bits, etc.) used, processing performance, or the like. “Power interruption (power interruption)” means that the power supply voltage supplied to the gaming machine falls below a certain level regardless of whether the power switch provided on the gaming machine is operated or not. This also includes shutting down the power supply due to unforeseen circumstances such as unit damage or power outages. “ROM” is synonymous with what is well known in the art, and physically retains information (for example, “1” for a device configuration that conducts when a current for reading data is applied, It will be “0” if the device configuration is not.) RAM is synonymous with what is well known in the art, and electrically holds information (for example, when a current for reading data is applied, “1” is stored if it is stored, and it is not stored. It is generally “0.” In general, backup power is supplied to some or all of the data stored in the RAM when the power is interrupted). The “game state” is, for example, a special game state in which a game medal can be easily acquired and advantageous to the player (so-called jackpot game, such as a bonus game, a type 1 BB, a type 2 BB, or the like) ), The re-game probability variation game state (RT state) in which the re-game win rate is higher (or lower) than the normal game state in which the re-game win rate is a predetermined value, and the winning combination is awarded For example, an AT (assist time) state in which the stop order of the reels can be notified, an ART (assist replay time) state in which the RT state and the AT state are combined, and the like. Further, even in the normal game state, there are a high-probability normal game state, a low-probability normal game state, and the like that have different lottery probabilities for transition to the RT state, AT state, and ART state. In addition, there is no problem even if the game states are combined {in addition, these game states and functions (for example, a lottery to shift to the AT state, an output of a notification instruction related to the stop order of reels, etc.) control the game progress. There is no problem even if all are mounted on the main control board side}.

以下の実施形態は、回胴式遊技機(いわゆるスロットマシン)を前提としたものとなっているが、これには何ら限定されず、他の遊技機(例えば、ぱちんこ遊技機、雀球、アレンジボール等)に応用された場合も範囲内であり、即ち、遊技進行を制御するマイコンチップ(CPU、ROM、RAMを搭載したチップ)を備え、当該マイコンチップにてプログラムを動作させるものに対して応用することができる技術である。尚、本実施形態は、あくまで一例であり、各手段が存在する場所や機能等、各種処理に関しての各ステップの順序、フラグのオン・オフのタイミング、各ステップの処理を担う手段名等に関し、以下の態様に限定されるものではない。また、上記した実施形態や変更例は、特定のものに対して適用されると限定的に解すべきでなく、どのような組み合わせであってもよい。例えば、ある実施形態についての変更例は、別の実施形態の変更例であると理解すべきであり、また、ある変更例と別の変更例が独立して記載されていたとしても、当該ある変更例と当該別の変更例を組み合わせたものも記載されていると理解すべきである。   The following embodiment is based on the assumption of a revolving game machine (so-called slot machine), but is not limited to this, and other game machines (for example, pachinko game machines, sparrow balls, arrangements) It is also within the range when applied to a ball, etc., that is, with a microcomputer chip (chip equipped with a CPU, ROM, RAM) for controlling the progress of the game, and for operating a program on the microcomputer chip It is a technology that can be applied. Note that this embodiment is merely an example, the location and function of each means, the order of each step regarding various processes, the timing of flag on / off, the name of the means responsible for each step, etc. It is not limited to the following aspects. In addition, the above-described embodiments and modified examples should not be understood as being limited to being applied to specific items, and may be in any combination. For example, it should be understood that a modification example of an embodiment is a modification example of another embodiment, and even if one modification example and another modification example are described independently, there is the modification example. It should be understood that a combination of the modified example and another modified example is also described.

ここで本発明の詳細な説明に先立ち、本発明に係る簡潔な構成を説明する。   Prior to the detailed description of the present invention, a simple configuration according to the present invention will be described.

本発明に係る回胴式遊技機のうち、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域(又は、レジスタ領域)を更新及び参照し得る構成を(本実施形態)にて詳細に説明する。   Among the swivel type gaming machines according to the present invention, a configuration in which the first RAM area (or register area) can be updated and referred to by the processing of the CPUC 100 based on the program code arranged in the second ROM area (this book) Embodiment) will be described in detail.

本発明に係る回胴式遊技機のうち、第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第2RAM領域を参照可能に構成し、且つ、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域を参照し得る構成を(第2実施形態)にて詳細に説明する。   Among the swivel type gaming machines according to the present invention, the second RAM area can be referred to by the processing of the CPUC 100 based on the program code arranged in the first ROM area, and is arranged in the second ROM area. A configuration in which the first RAM area can be referred to in the processing of the CPUC 100 based on the program code is described in detail in the second embodiment.

(本実施形態)
ここで、各構成要素について説明する前に、本実施形態に係る回胴式遊技機Pの特徴(概略)を説明する。以下、図面を参照しながら、各要素について詳述する。
(This embodiment)
Here, before describing each component, the feature (outline) of the spinning-rotor type gaming machine P according to the present embodiment will be described. Hereinafter, each element will be described in detail with reference to the drawings.

まず、図1(一部の構成については図2)を参照しながら、本実施形態に係る回胴式遊技機の前面側の基本構造を説明する。まず、回胴式遊技機Pは、主に前扉(フロントドアとも称す)と、裏箱(キャビネット、基体とも称す)と裏箱内に設置されたリールユニット、ホッパ装置、電源ユニット、主制御基板M(主制御チップCが搭載されている基板)で構成される。以下、これらを順に説明する。   First, with reference to FIG. 1 (FIG. 2 for a part of the configuration), the basic structure on the front side of the rotary type gaming machine according to the present embodiment will be described. First of all, the swing type gaming machine P mainly includes a front door (also referred to as a front door), a back box (also referred to as a cabinet and a base body), a reel unit installed in the back box, a hopper device, a power supply unit, a main control. It is composed of a substrate M (a substrate on which the main control chip C is mounted). Hereinafter, these will be described in order.

次に、回胴式遊技機Pの前扉DUは、装飾ランプユニットD150、メダル受け皿D230、を含む。まず、装飾ランプユニットD150は、回胴式遊技機Pの遊技の進行に応じて発光する発光源を有したものである。また、前扉DUの開閉状態を検出可能な扉スイッチD80が設けられている。また、前扉DUには鍵穴D260が設けられており、鍵穴D260の形状と整合するキー(ドアキー)を鍵穴D260に差し込む{加えて、所定の方向(例えば、時計回り)に捻る}ことで、前扉DUを開放し得るよう構成されている。更に、本実施形態においては、ドアキーを鍵穴D260に差し込む{加えて、所定の方向(例えば、反時計回り)に捻る}ことで、エラー状態(後述する、ドア開放エラー等)を解除し得るよう構成されている。次に、メダル受け皿D230は、放出口D240から放出された遊技メダル(或いは単にメダルと呼ぶことがある)の受け皿である。   Next, the front door DU of the swing type gaming machine P includes a decorative lamp unit D150 and a medal tray D230. First, the decorative lamp unit D150 has a light-emitting source that emits light in accordance with the progress of the game of the rotary game machine P. Further, a door switch D80 capable of detecting the open / closed state of the front door DU is provided. Further, the front door DU is provided with a key hole D260, and a key (door key) that matches the shape of the key hole D260 is inserted into the key hole D260 {in addition, twisted in a predetermined direction (for example, clockwise)} The front door DU can be opened. Further, in the present embodiment, an error state (a door opening error, which will be described later) can be canceled by inserting the door key into the keyhole D260 {plus twisting in a predetermined direction (for example, counterclockwise)}. It is configured. Next, the medal tray D230 is a tray for game medals (or simply called medals) released from the discharge port D240.

次に、前扉DUは、遊技状態を視認可能にするための機構、遊技媒体の入力を可能にするための機構、リールユニットを操作するための機構、等を含む。具体的には、遊技状態を視認可能にするための機構として、リール窓D160、投入数表示灯D210、操作状態表示灯D180、特別遊技状態表示装置D250、払出数表示装置D190、クレジット数表示装置D200等が取り付けられている。また、遊技媒体の投入や賭け数(ベット数)の入力を可能にするための機構として、メダル投入口D170、ベットボタンD220、投入された遊技媒体の払い出しを可能にするための機構として、精算ボタンD60が取り付けられている。そして、リールユニットを操作するための機構として、スタートレバーD50、停止ボタンD40が取り付けられている。以下、各要素について詳述する。   Next, the front door DU includes a mechanism for enabling visual recognition of the game state, a mechanism for enabling input of game media, a mechanism for operating the reel unit, and the like. Specifically, the reel window D160, the insertion number display lamp D210, the operation state display lamp D180, the special game state display apparatus D250, the payout number display apparatus D190, and the credit number display apparatus are provided as mechanisms for making the gaming state visible. D200 etc. are attached. Further, as a mechanism for enabling the insertion of game media and inputting the number of bets (the number of bets), a medal insertion slot D170, a bet button D220, and a mechanism for enabling the payout of the inserted game media are settled. Button D60 is attached. As a mechanism for operating the reel unit, a start lever D50 and a stop button D40 are attached. Hereinafter, each element will be described in detail.

<遊技状態を視認可能にするための機構>
次に、リール窓D160は、前扉DUの一部を構成する合成樹脂等によって形成された透明な部材であり、リール窓D160を通して遊技機枠内に設置されたリールユニットを視認可能に構成されている。また、投入数表示灯D210は、LEDによって構成されており、現在ベット(一の遊技を開始するために必要な遊技メダルを投入すること)されているメダル数と同数のLEDが点灯するよう構成されている。また、操作状態表示灯D180は、LEDによって構成されており、現在の操作状態(メダル受付可否状態、再遊技入賞状態、遊技開始ウェイト状態等)に応じて点灯・消灯するよう構成されている。また、特別遊技状態表示装置D250は、7セグメントディスプレイによって構成されており、特別遊技中に払い出された払出数の総数が表示されるよう構成されている。尚、特別遊技状態表示装置D250を設けない構成としてもよく、そのように構成した場合には、演出表示装置S40にて当該払出数の総数を表示するよう構成することで遊技者は特別遊技中に払い出された払出数の総数を認識することができユーザーフレンドリーな遊技機とすることができる。また、払出数表示装置D190は、7セグメントディスプレイによって構成されており、現在払出されている遊技メダル数が表示されるよう構成されている。また、クレジット数表示装置D200は、7セグメントディスプレイによって構成されており、遊技者の持ちメダルとして遊技機内に貯留されているメダル数の総数(クレジット数)が表示されるよう構成されている。
<Mechanism to make game state visible>
Next, the reel window D160 is a transparent member formed of a synthetic resin or the like that constitutes a part of the front door DU, and is configured so that the reel unit installed in the gaming machine frame can be seen through the reel window D160. ing. In addition, the insertion number indicator lamp D210 is constituted by an LED, and is configured so that the same number of LEDs as the number of medals currently bet (to insert a game medal necessary for starting one game) are lit. Has been. Further, the operation state indicator lamp D180 is constituted by an LED, and is configured to be turned on / off according to the current operation state (medal acceptance / non-acceptance state, re-game winning state, game start wait state, etc.). The special game state display device D250 is configured by a 7-segment display, and is configured to display the total number of payouts paid out during the special game. In addition, it is good also as a structure which does not provide the special game state display apparatus D250, and when it is comprised in that way, it is comprised so that a player may be in special game by displaying so that the total of the said number of payouts may be displayed in production | presentation display apparatus S40. The total number of payouts paid out can be recognized, and a user-friendly gaming machine can be obtained. Further, the payout amount display device D190 is configured by a 7-segment display, and is configured to display the number of game medals currently being paid out. The credit amount display device D200 is configured by a 7-segment display, and is configured to display the total number of medals (credit number) stored in the gaming machine as medals held by the player.

<遊技媒体の入力を可能にするための機構>
次に、メダル投入口D170は、遊技メダルの投入口であり、メダル受付可能状態である状況下において当該投入口に投入された遊技メダルは遊技機枠内部へと誘導される。また、遊技機枠内部にはメダルの投入を検出するセンサとして、投入受付センサD10sと、第1投入センサD20sと、第2投入センサD30sと、が設けられており、当該遊技機枠内部へと誘導された遊技メダルが正常に投入されたと判断した場合に、当該投入されたメダルをベットされたメダルとして検出し得るよう構成されている。また、ベットボタンD220は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル(クレジットのメダル)をベットすることができるよう構成されている。また、精算ボタンD60は、遊技者によって操作可能に構成されており、当該操作によって、貯留されているメダル(クレジットのメダル)及び/又はベットされているメダルを遊技者に払い戻すことが可能となっている。尚、精算ボタンD60の操作によって払い戻された遊技メダルは、放出口D240に払い出されるよう構成されている。
<Mechanism to enable input of game media>
Next, the medal slot D170 is a slot for game medals, and the game medal inserted into the slot is guided to the inside of the gaming machine frame in a situation where medals can be received. In addition, an insertion acceptance sensor D10s, a first insertion sensor D20s, and a second insertion sensor D30s are provided in the gaming machine frame as sensors for detecting the insertion of medals. When it is determined that the guided game medal is normally inserted, the inserted medal is detected as a bet. Further, the bet button D220 is configured to be operable by the player, and configured to bet a stored medal (credit medal). Further, the settlement button D60 is configured to be operable by the player, and by this operation, the stored medal (credit medal) and / or the bet medal can be paid back to the player. ing. Note that the game medals paid out by operating the settlement button D60 are configured to be paid out to the discharge port D240.

<リールユニットを操作するための機構>
次に、スタートレバーD50は、遊技者によって操作可能に構成されており、当該操作によってリールユニットの動作を開始可能に構成されている。また、停止ボタンD40は、遊技者によって操作可能な左停止ボタンD41、中停止ボタンD42、右停止ボタンD43を備えており、夫々の停止ボタンを操作することによってリールユニットの動作を順次停止可能に構成されている。
<Mechanism for operating reel unit>
Next, the start lever D50 is configured to be operable by the player, and is configured to be able to start the operation of the reel unit by the operation. The stop button D40 includes a left stop button D41, a middle stop button D42, and a right stop button D43 that can be operated by the player. By operating the respective stop buttons, the operation of the reel unit can be stopped sequentially. It is configured.

次に、回胴式遊技機Pのリールユニットは、リールM50とリールM50の駆動源(ステッピングモータ等)とを備えている。また、リールM50は、左リールM51、中リールM52、右リールM53を備えている。ここで、夫々のリール部は合成樹脂等により形成され、当該リール部の外周上(リール帯上)には複数の図柄が描かれている。そして、スタートレバーD50及び停止ボタンD40における各停止ボタンの操作に基づき、夫々のリール部の回転動作及び停止動作を可能とするよう構成されている。また、図示しないが、左リールM51、中リールM52及び右リールM53の内部にはLED(以下、リールバックライトと呼ぶことがある)が設けられており、当該LEDが点灯した際にはリール部外周を透過した光によって、リール部外周が点灯したように視認できるよう構成されている。   Next, the reel unit of the rotating type gaming machine P includes a reel M50 and a drive source (stepping motor or the like) of the reel M50. The reel M50 includes a left reel M51, a middle reel M52, and a right reel M53. Here, each reel part is formed of a synthetic resin or the like, and a plurality of symbols are drawn on the outer periphery (on the reel band) of the reel part. And based on operation of each stop button in the start lever D50 and the stop button D40, it is comprised so that rotation operation and stop operation | movement of each reel part are enabled. Although not shown, an LED (hereinafter also referred to as a reel backlight) is provided inside the left reel M51, the middle reel M52, and the right reel M53, and when the LED is lit, the reel portion It is configured so that the light transmitted through the outer periphery can be visually recognized as if the outer periphery of the reel portion is lit.

<その他の機構>
また、回胴式遊技機Pの遊技機枠の内外には、遊技の興趣性を高めるための機構として、予告演出や背景演出等の演出を表示するための演出表示装置S40、様々な点灯態様にて点灯し得るLEDランプS10、サウンドを出力し得るスピーカS20、合成樹脂等によって形成された部材である、上パネルD130及び下パネルD140、等が設けられている。
<Other mechanisms>
In addition, inside and outside the gaming machine frame of the swing type gaming machine P, as a mechanism for enhancing the interest of the game, an effect display device S40 for displaying effects such as a notice effect and a background effect, various lighting modes Are provided with an LED lamp S10 that can be turned on, a speaker S20 that can output sound, and an upper panel D130 and a lower panel D140 that are members formed of synthetic resin or the like.

次に、図2は、前扉DUを開いて回胴式遊技機Pの内部の構成を示した斜視図である。前扉DUの裏面側上部には、演出表示装置S40が取り付けられている。前扉DUのほぼ中央にはリール窓D160が設けられており、その下方には、後述する扉基板Dが設けられている。また、扉基板Dには、前述した停止ボタンD40や、スタートレバーD50、精算ボタンD60等の入力信号が入力される。また、扉基板Dの下方には、スピーカS20が設けられている。   Next, FIG. 2 is a perspective view showing an internal configuration of the rotating game machine P with the front door DU opened. An effect display device S40 is attached to the upper part on the back side of the front door DU. A reel window D160 is provided substantially at the center of the front door DU, and a door substrate D described later is provided below the reel window D160. In addition, the door board D receives input signals such as the stop button D40, the start lever D50, and the settlement button D60 described above. A speaker S20 is provided below the door substrate D.

また、詳細は後述するが、扉基板Dの付近には、メダル投入口D170から投入された遊技メダルの通路となる投入受付センサD10sが設けられており、当該投入受付センサD10sの下方には、遊技メダルを放出口D240に導くためのコインシュータD90などが設けられている。投入受付センサD10sは、メダル投入口D170から投入された遊技メダルを主に寸法に基づいて選別し、規格寸法に適合した遊技メダルだけを受け入れる機能を有しており、当該機能により適合しないと判断されたメダル(又は、その他の異物)は、ブロッカD100により放出口D240に払い戻されるよう構成されている。遊技者がスタートレバーD50を操作する前に(遊技メダルの投入が有効である状態にて)遊技メダルを投入すると、遊技メダルは投入受付センサD10sによって選別され、規格を満足しているものだけがホッパH40内に投入され、規格を満たしていないメダルは、コインシュータD90を通って、放出口D240に返却されるようになっている。これに対して、スタートレバーD50が操作された後に(遊技メダルの投入が有効でない状態にて)遊技メダルが投入された場合は、投入された遊技メダルはコインシュータD90を通って、放出口D240に返却される。また、投入受付センサD10sの内部(流路の奥)には、詳細後述するメダル投入に係るセンサが設けられており、寸法規格を満たして受け入れられた遊技メダルが通過すると、第1投入センサD20s及び第2投入センサD30sによって検出されて、その信号が後述する主制御基板Mに供給されるようになっている。   Although details will be described later, an insertion acceptance sensor D10s serving as a path for game medals inserted from the medal insertion slot D170 is provided in the vicinity of the door substrate D, and below the insertion reception sensor D10s, A coin shooter D90 and the like for guiding a game medal to the discharge port D240 are provided. The insertion acceptance sensor D10s has a function of selecting game medals inserted from the medal insertion slot D170 mainly on the basis of dimensions, and accepting only game medals conforming to the standard dimensions. The selected medal (or other foreign matter) is returned to the discharge port D240 by the blocker D100. If the player inserts a game medal before operating the start lever D50 (in a state where the insertion of the game medal is valid), the game medal is selected by the insertion acceptance sensor D10s, and only those satisfying the standard are selected. A medal that does not satisfy the standard and is inserted into the hopper H40 is returned to the discharge port D240 through the coin shooter D90. On the other hand, when a game medal is inserted after the start lever D50 is operated (in a state where the insertion of the game medal is not valid), the inserted game medal passes through the coin shooter D90, and the discharge port D240. Returned to. In addition, a sensor for medal insertion, which will be described in detail later, is provided inside the insertion acceptance sensor D10s (the back of the flow path), and when a game medal that has been received satisfying the dimensional standard passes, the first insertion sensor D20s. The signal is detected by the second input sensor D30s and the signal is supplied to the main control board M to be described later.

リールM50の上方には、遊技全体の制御を司る後述する主制御基板Mが格納されており、リールM50の背後には、各リール(左リールM51、中リールM52、右リールM53)を駆動するための後述する回胴基板Kが格納されている。また、リールM50の左方には、図1に示した演出表示装置S40や、LEDランプS10、スピーカS20等を用いて行われる各種演出の制御を司る後述する副制御基板Sが格納されている。また、主制御基板Mには、後述する設定変更装置制御処理を実行するため(設定変更を行うため)に使用する設定キースイッチM20、設定値の変更やエラー解除等を実行し得る設定/リセットボタンM30、設定キースイッチM20や設定/リセットボタンM30等を保護するための設定扉(不図示)の開閉を判定する設定扉スイッチM10が接続されている。尚、設定キースイッチM20、設定/リセットボタンM30、設定扉スイッチM10については何れも不図示としているが、主制御基板Mの基板上等の適宜位置に設けられていればよい(即ち、前扉DUを開かなければ人為的なアクセスが困難な位置に設けられていればよい)。   A main control board M, which will be described later, that controls the entire game is stored above the reel M50, and behind the reel M50, each reel (left reel M51, middle reel M52, right reel M53) is driven. For this purpose, a later-described rotor substrate K is stored. Further, on the left side of the reel M50, a sub-control board S (to be described later) that controls various effects performed using the effect display device S40 shown in FIG. 1, the LED lamp S10, the speaker S20, and the like is stored. . In addition, the main control board M has a setting key switch M20 used for executing a setting change device control process (to change settings), which will be described later, and a setting / reset that can execute setting value change, error cancellation, and the like. A setting door switch M10 for determining opening / closing of a setting door (not shown) for protecting the button M30, the setting key switch M20, the setting / reset button M30, and the like is connected. The setting key switch M20, the setting / reset button M30, and the setting door switch M10 are not shown, but they may be provided at appropriate positions on the main control board M (ie, the front door). If the DU is not opened, it may be in a position where it is difficult to access artificially).

リールM50の下方には、投入された遊技メダルが集められるホッパH40や、遊技メダルを払い出すメダル払出装置Hが設けられており、回胴式遊技機P全体に電源を供給するための電源基板Eが格納されている。メダル払出装置Hから払い出された遊技メダルは、コインシュータD90を通って、放出口D240から払い出されるようになっている。また、電源基板Eの前面には、回胴式遊技機Pの電源を投入するための電源スイッチE10も設けられている。   Below the reel M50, there are provided a hopper H40 for collecting inserted game medals and a medal payout device H for paying out game medals, and a power supply board for supplying power to the entire revolving game machine P E is stored. The game medals paid out from the medal payout device H pass through the coin shooter D90 and are paid out from the discharge port D240. Further, on the front surface of the power supply board E, there is also provided a power switch E10 for turning on the power of the swivel type gaming machine P.

次に、図3は、回胴式遊技機内部における、メダル投入口D170に投入された遊技メダルの経路(セレクタ)を示した斜視図である。メダル投入口D170に投入された遊技メダルは、まず投入受付センサD10sを通過する。当該投入受付センサD10sは機械式のダブルセンサになっており、遊技メダルが通過することによって、2つの突起した機構が押下されることによりオンとなり遊技メダルが正常に通路を通過することができることとなる。また、このような構成により、遊技メダルではない異物(例えば、遊技メダルよりも径が小さいもの)が投入された場合には、前記2つの突起した機構が押下されない。このようなメダルは、起立した状態をメダルが維持できないため、通路を通過できず(メダルが倒れこむ)放出口D240に払い戻されることとなる。そのほかにも、投入受付センサD10sは、オンとなっている時間が所定時間以上連続した場合等にも、エラーであると判定し得る(その結果、ブロッカD100がオフとなり得る)よう構成されている。   Next, FIG. 3 is a perspective view showing a path (selector) of game medals inserted into the medal insertion slot D170 inside the spinning cylinder type game machine. A game medal inserted into the medal slot D170 first passes through the slot acceptance sensor D10s. The insertion acceptance sensor D10s is a mechanical double sensor, and when the game medal passes, it turns on when the two protruding mechanisms are pressed, and the game medal can normally pass through the passage. Become. Also, with such a configuration, when a foreign object that is not a game medal (for example, one having a smaller diameter than the game medal) is inserted, the two protruding mechanisms are not pressed. Such medals cannot be maintained in the standing state, and therefore cannot pass through the passage (the medals fall down) and are paid back to the discharge port D240. In addition, the insertion acceptance sensor D10s is configured to be able to determine that there is an error even when the on-time continues for a predetermined time or longer (as a result, the blocker D100 can be turned off). .

遊技メダルがブロッカD100を正常に通過した場合に、当該通過直後に第1投入センサD20s及び第2投入センサD30sを通過することとなる。この投入センサ(第1投入センサD20s及び第2投入センサD30s)は2つのセンサで構成されており(遊技メダルの規格上の直径よりも小さい間隔で隣接配置されており)、夫々のセンサのオン・オフ状況(第1投入センサD20s及び第2投入センサD30sのオン・オフの組み合わせの遷移していく順序、等)及びオン・オフとなっている時間を監視することにより様々なエラー(後述する、投入メダル滞留エラー、投入メダル逆流エラー、等)を検出可能に構成されている。   When a game medal normally passes through the blocker D100, it passes through the first insertion sensor D20s and the second insertion sensor D30s immediately after the passage. The throwing sensors (first throwing sensor D20s and second throwing sensor D30s) are composed of two sensors (adjacently arranged at an interval smaller than the standard diameter of the game medal), and each sensor is turned on. -Various errors (to be described later) are monitored by monitoring the OFF state (the order in which the combination of ON / OFF of the first input sensor D20s and the second input sensor D30s transitions) and the ON / OFF time. , Inserted medal retention error, inserted medal backflow error, etc.).

次に、図4は、回胴式遊技機における、メダル払出装置Hの正面図及び斜視図である。メダル払出装置Hは、クレジット(遊技機内部に電子的に貯留されている遊技メダル)又はベットされているメダル(遊技を開始するために投入されたメダル)が存在する状態で、精算ボタンが操作された、又は、入賞により遊技メダルが払い出される場合に作動することとなる。作動する場合には、まず、ホッパモータH80が駆動することにより、ディスク回転軸H50aを中心にディスクH50が回転する。当該回転によりメダル払出装置H内の遊技メダルは放出付勢手段H70を変位させて遊技メダル出口H60から放出口D240に向かって流下していくこととなる。尚、払出センサ(第1払出センサH10s及び第2払出センサH20s)は2つのセンサで構成されており、夫々のセンサのオン・オフ状況(第1払出センサH10s及び第2払出センサH20sのオン・オフの組み合わせの遷移していく順序、等)及びオン・オフとなっている時間を監視することにより様々なエラー(後述する、払出メダル滞留エラー、等)を検出可能に構成されている。より具体的には、例えば、遊技メダル出口H60を正常に通過する際には、放出付勢手段H70の変位により、第1払出センサH10s=オフ・第2払出センサH20s=オフの状態から、第1払出センサH10s=オフ・第2払出センサH20s=オフ→第1払出センサH10s=オン・第2払出センサH20s=オフ→第1払出センサH10s=オン・第2払出センサH20s=オン→第1払出センサH10s=オン・第2払出センサH20s=オフ→第1払出センサH10s=オフ・第2払出センサH20s=オフ、というセンサ状態遷移となるため、このセンサ状態遷移と反する動きを検出した場合には、エラーとするよう構成することを例示することができる。   Next, FIG. 4 is a front view and a perspective view of the medal payout device H in the spinning cylinder type gaming machine. The medal payout device H is operated with the checkout button in the state where credits (game medals stored electronically inside the gaming machine) or bets (medals inserted to start the game) exist. It is activated when a game medal is paid out by winning or winning. In operation, first, the hopper motor H80 is driven to rotate the disk H50 about the disk rotation axis H50a. The game medal in the medal payout device H flows down from the game medal outlet H60 toward the discharge port D240 by displacing the discharge urging means H70 by the rotation. The payout sensors (the first payout sensor H10s and the second payout sensor H20s) are composed of two sensors, and the ON / OFF status of each sensor (the ON / OFF state of the first payout sensor H10s and the second payout sensor H20s). The order of transition of the combination of off, etc.) and the on / off time are monitored to detect various errors (payout medal retention error, etc., which will be described later). More specifically, for example, when the game medal outlet H60 normally passes, the first payout sensor H10s = off and the second payout sensor H20s = off due to the displacement of the discharge biasing means H70. 1 payout sensor H10s = off / second payout sensor H20s = off → first payout sensor H10s = on / second payout sensor H20s = off → first payout sensor H10s = on / second payout sensor H20s = on → first payout Sensor H10s = on / second payout sensor H20s = off → first payout sensor H10s = off / second payout sensor H20s = off, so that when a movement contrary to this sensor state transition is detected It is possible to exemplify the configuration of an error.

次に、図5のブロック図を参照しながら、本実施形態に係る回胴式遊技機Pの電気的な概略構成を説明する。はじめに、本実施形態に係る回胴式遊技機は、遊技の進行を制御する主制御基板Mを中心として、副制御基板S、扉基板D、回胴基板K、電源基板E、中継基板IN、設定扉スイッチM10、設定キースイッチM20、設定/リセットボタンM30等がデータをやり取り可能に接続されて構成されている。尚、図中の実線部がデータのやり取りに関する動きを示したものであり、図中の破線部が電源供給ルートを示したものである。尚、電源供給ルートはこれに限られたものではなく、例えば電源基板Eから主制御基板を介さずに中継基板INや扉基板Dに電源を供給しても良い。   Next, referring to the block diagram of FIG. 5, an electrical schematic configuration of the rotating game machine P according to the present embodiment will be described. First, in the spinning-type game machine according to the present embodiment, a sub-control board S, a door board D, a spinning board K, a power board E, a relay board IN, centering on a main control board M that controls the progress of the game, A setting door switch M10, a setting key switch M20, a setting / reset button M30, and the like are connected to be able to exchange data. The solid line portion in the figure shows the movement related to the exchange of data, and the broken line portion in the figure shows the power supply route. The power supply route is not limited to this, and for example, power may be supplied from the power supply board E to the relay board IN and the door board D without going through the main control board.

主制御基板Mは、回胴式遊技機Pで行われる遊技全体の進行を司る基板である。当該主制御基板Mには、主制御チップCが搭載されており、主制御チップCには、CPUC100、内蔵ROMC110、内蔵RAMC120等がバスによって互いにデータをやり取り可能に接続されて搭載されている(図示及び詳細については後述する)。そして、主制御基板Mは、前扉DUに搭載された扉基板Dから、スタートレバーD50等が操作されたことを示す信号等を受け取って、副制御基板Sや、扉基板D、回胴基板K等に向かって制御コマンド(あるいは制御信号)を出力することにより、これら各種基板の動作を制御している。   The main control board M is a board that governs the progress of the entire game performed in the rotating game machine P. A main control chip C is mounted on the main control board M, and a CPU C 100, a built-in ROM C 110, a built-in RAM C 120, and the like are mounted on the main control chip C so as to be able to exchange data with each other via a bus ( The illustration and details will be described later). The main control board M receives a signal indicating that the start lever D50 or the like has been operated from the door board D mounted on the front door DU, and receives the sub-control board S, the door board D, and the rotating board. By outputting a control command (or control signal) toward K or the like, the operation of these various substrates is controlled.

また、副制御基板Sにも、前述した主制御基板Mと同様に、副制御チップSCが搭載されており、副制御チップSCには、CPUや、ROM、RAM等が設けられていて、バスによって互いにデータをやり取り可能に接続されて構成されている。また、副制御基板Sには、各種LEDランプS10、スピーカS20、演出表示装置S40、回胴バックライトS30等が接続されている。ここで回胴バックライトS30とは、左リールM51、中リールM52、右リールM53夫々の内部に設けられ、当該リールの表面に描かれた図柄を裏側から照らすライトである。副制御基板Sは、主制御基板Mから受け取った制御コマンドを解析して、各種LEDランプS10、スピーカS20、演出表示装置S40、回胴バックライトS30等にそれぞれ駆動信号を出力することにより、各種の演出を行っている。   Similarly to the main control board M described above, the sub control board SC is also mounted on the sub control board S. The sub control chip SC is provided with a CPU, ROM, RAM, etc. Are connected so as to be able to exchange data with each other. In addition, various LED lamps S10, a speaker S20, an effect display device S40, a rotating backlight S30, and the like are connected to the sub-control board S. Here, the spinning backlight S30 is a light that is provided inside each of the left reel M51, the middle reel M52, and the right reel M53, and illuminates the pattern drawn on the surface of the reel from the back side. The sub-control board S analyzes the control command received from the main control board M, and outputs various drive signals to the various LED lamps S10, the speaker S20, the effect display device S40, the rotary backlight S30, etc. The production of.

扉基板Dには、前述した投入受付センサD10s、第1投入センサD20s、第2投入センサD30s、回転しているリールM50を停止するための停止ボタンD40、リールM50の回転を開始するためのスタートレバーD50、貯留されている遊技メダル(クレジット)や投入された遊技メダルを払い出して遊技を終了するための精算ボタンD60、遊技の状態を表示する各種の表示パネルD70(前述した、投入数表示灯D210、操作状態表示灯D180、特別遊技状態表示装置D250、払出数表示装置D190は、クレジット数表示装置D200、等の表示装置の集合体)、扉の開閉の判定やエラーの解除や設定値の変更を実行するための扉スイッチD80、投入された後に適合しないと判断された遊技メダル(又は、その他の異物)を放出口D240に払い戻すためのブロッカD100等が接続されている。また、この扉基板Dは、前述した主制御基板Mとデータをやり取り可能に接続されている。このため、前扉DUに設けられたスタートレバーD50や、停止ボタンD40、精算ボタンD60等を操作すると、扉基板Dを介して、当該操作に係る信号が主制御基板Mに供給されるようになっている。また、投入受付センサD10sが遊技メダルの通過を検出した信号も、扉基板Dを介して主制御基板Mに供給される。   On the door substrate D, the above-described insertion acceptance sensor D10s, first insertion sensor D20s, second insertion sensor D30s, stop button D40 for stopping the rotating reel M50, start for starting the rotation of the reel M50. A lever D50, a stored game medal (credit) and a game button D60 for paying out the inserted game medal and ending the game, various display panels D70 for displaying the game state (the above-mentioned input number display lamps) D210, operation state display lamp D180, special game state display device D250, payout number display device D190 is a collection of display devices such as credit number display device D200), door open / close determination, error cancellation, and setting value Door switch D80 for executing the change, game medals determined to be incompatible after being inserted (or other Blocker D100 or the like for refund things) the outlet D240 is connected. The door substrate D is connected to the main control substrate M described above so as to exchange data. For this reason, when a start lever D50, a stop button D40, a settlement button D60, etc. provided on the front door DU are operated, a signal related to the operation is supplied to the main control board M via the door board D. It has become. Further, a signal that the insertion acceptance sensor D10s detects the passage of the game medal is also supplied to the main control board M through the door board D.

また、回胴基板Kには、リールM50を回転させるための回胴モータK10と、リールM50の回転位置を検出するための回胴センサK20等が接続されている。回胴基板Kは、当該回胴センサK20によって、リールM50の回転位置を検出しながら回胴モータK10を駆動することにより、リールM50を、決定された停止位置で停止させることが可能となっている。また、本実施形態の回胴式遊技機においては、回胴モータK10には、所謂ステップモータ(ステッピングモータ)が使用されている。尚、ステップモータは、リールM50が1回転するステップ数として、504ステップが設定されている。また、各リール(左リールM51、中リールM52、右リールM53)には略均一の大きさで所定数(例えば、21個)の図柄が設定されており、1図柄分に相当するステップ数としては、24ステップ(=21/504)が設定されている。尚、ステップ数、リール1周あたりの図柄の数は変更しても何ら問題ない。   In addition, a rotating motor K10 for rotating the reel M50, a rotating sensor K20 for detecting the rotational position of the reel M50, and the like are connected to the rotating substrate K. The spinning board K can stop the reel M50 at the determined stop position by driving the spinning motor K10 while detecting the rotational position of the reel M50 by the spinning sensor K20. Yes. Further, in the spinning cylinder type gaming machine of the present embodiment, a so-called step motor (stepping motor) is used as the spinning cylinder motor K10. In the step motor, 504 steps are set as the number of steps for one rotation of the reel M50. Each reel (left reel M51, middle reel M52, right reel M53) has a predetermined number of symbols (for example, 21 symbols) with a substantially uniform size, and the number of steps corresponding to one symbol is set. 24 steps (= 21/504) are set. There is no problem even if the number of steps and the number of symbols per reel are changed.

また、メダル払出装置Hは、中継基板INを介して、主制御基板Mに接続されており、主制御基板Mからの制御信号に基づいて、所定枚数(例えば、10枚)の遊技メダルを払い出す動作を行う。尚、メダル払出装置Hにはメダルが正常に払い出されたか否かの判定や払い出された遊技メダルの数の計測を実行する第1払出センサH10s及び第2払出センサH20sと、ディスクH50を回転させるためのホッパモータH80と、が接続されている。   The medal payout device H is connected to the main control board M via the relay board IN, and pays out a predetermined number (for example, 10) of game medals based on a control signal from the main control board M. Perform the action The medal payout device H includes a first payout sensor H10s and a second payout sensor H20s for determining whether or not a medal has been paid out normally and measuring the number of game medals paid out, and a disk H50. A hopper motor H80 for rotation is connected.

これら各種制御基板、及び基板で消費される電力は、電源基板E(電源スイッチE10により電源供給の有無を制御する基板)から供給されている。図5では、電源基板Eから電力が供給される様子を破線の矢印で表している。図示されているように、主制御基板Mおよび副制御基板Sには、電源基板Eから電力が直接供給されており、各種基板(扉基板D、回胴基板K、中継基板IN)には、主制御基板Mを介して電力が供給されている。電源基板Eには所定量(例えば、100V)の交流電圧が供給されており、この電力を規定電圧の直流電圧に変換した後、夫々の制御基板及び基板に供給している。   These various control boards and the power consumed by the boards are supplied from a power supply board E (a board for controlling the presence or absence of power supply by the power switch E10). In FIG. 5, the state in which electric power is supplied from the power supply board E is indicated by a dashed arrow. As shown in the figure, power is directly supplied from the power supply board E to the main control board M and the sub-control board S, and various boards (door board D, rotor board K, relay board IN) Electric power is supplied via the main control board M. A predetermined amount (for example, 100 V) of AC voltage is supplied to the power supply board E, and this electric power is converted into a DC voltage of a specified voltage and then supplied to each control board and board.

また、主制御基板Mには、後述する設定変更装置制御処理を実行するため(設定変更を行うため)に使用する設定キースイッチM20、設定値の変更やエラー解除等を実行し得る設定/リセットボタンM30、設定キースイッチM20や設定/リセットボタンM30等を保護するための設定扉(不図示)の開閉を判定する設定扉スイッチM10が接続されている。   In addition, the main control board M has a setting key switch M20 used for executing a setting change device control process (to change settings), which will be described later, and a setting / reset that can execute setting value change, error cancellation, and the like. A setting door switch M10 for determining opening / closing of a setting door (not shown) for protecting the button M30, the setting key switch M20, the setting / reset button M30, and the like is connected.

<主制御部の基本回路の構成例>
次に、図6を用いて、主制御基板Mの主制御チップCの構成例について説明する。
<Example of basic circuit configuration of main controller>
Next, a configuration example of the main control chip C of the main control board M will be described with reference to FIG.

まず、図6に示す主制御チップCには、CPUC100、内蔵ROMC110(第1ROM領域C111、第2ROM領域C112)、内蔵RAMC120(第1RAM領域C121、第2RAM領域C122)、外部バス制御回路C190、パラレル入力ポートC130、アドレスデコード回路C150、タイマ回路C170、カウンタ回路C180、リセット制御回路C220に加え、割込み制御回路C160、クロック回路C210、乱数生成回路C140、照合用ブロックC230、固有情報C240、演算回路C250が備えられており、これら全てが内部バスC200を介して互いに接続されている。   First, the main control chip C shown in FIG. 6 includes a CPU C100, built-in ROMC110 (first ROM area C111, second ROM area C112), built-in RAMC120 (first RAM area C121, second RAM area C122), external bus control circuit C190, parallel. In addition to the input port C130, address decoding circuit C150, timer circuit C170, counter circuit C180, reset control circuit C220, interrupt control circuit C160, clock circuit C210, random number generation circuit C140, verification block C230, specific information C240, arithmetic circuit C250 These are all connected to each other via an internal bus C200.

以下、上記説明した各部の詳細について説明する。   Hereinafter, details of each of the above-described units will be described.

まず、CPUC100は、内蔵ROMC110や内蔵RAMC120のプログラムやデータによって様々な数値計算や情報処理、制御処理などを実行する。内蔵ROMC110は、制御プログラムや各種データを記憶する。内蔵RAMC120は、一時的にデータを記憶する。また、内蔵ROMC110及び内蔵RAMC120はアドレスとデータとをセットとして保持しており、アドレス範囲で用途が区切られている。尚、当該用途として主なものは、プログラム領域とデータ領域であるが、この点の詳細については、後述するメモリマップの説明に譲る。   First, the CPUC 100 executes various numerical calculations, information processing, control processing, and the like according to programs and data in the built-in ROMC 110 and the built-in RAMC 120. The built-in ROMC 110 stores control programs and various data. The built-in RAMC 120 temporarily stores data. Further, the built-in ROMC 110 and the built-in RAMC 120 hold addresses and data as a set, and uses are divided by address ranges. The main applications are a program area and a data area. Details of this point will be described later in the description of a memory map.

外部バス制御回路C190は、IOリクエスト端子(XIORQ端子)、メモリリクエスト端子(XMREQ端子)、リード信号端子(XRD端子)、ライト信号端子(XWR端子)、16ビット幅のアドレス出力端子(A0端子〜A15端子)、および8ビット幅の入出力端子であるデータ入出力端子(D0端子〜D7端子)を有する。本実施形態では、このうちデータ入出力端子(D0端子〜D7端子)は、各駆動回路(例えば、中継基板INを介しての回胴基板K)へのデータ出力と、各周辺制御回路(例えば、扉基板Dを介しての各種センサや各種操作部材)からのデータ入力に用いられている。このデータ入出力端子(D0端子〜D7端子)によるデータの入出力先は、アドレス出力端子(A0端子〜A15端子)から出力されるアドレス信号、およびアドレスデコード回路C150から出力されるチップセレクト信号を用いて切り替えられる。   The external bus control circuit C190 includes an IO request terminal (XIORQ terminal), a memory request terminal (XMREQ terminal), a read signal terminal (XRD terminal), a write signal terminal (XWR terminal), and a 16-bit width address output terminal (A0 terminal to A15 terminal) and data input / output terminals (D0 terminal to D7 terminal) which are input / output terminals having an 8-bit width. In the present embodiment, among these, the data input / output terminals (D0 terminal to D7 terminal) are used for data output to each drive circuit (for example, the rotating board K via the relay board IN) and each peripheral control circuit (for example, the terminal board). , Used for data input from various sensors and various operation members via the door substrate D). The data input / output destinations of the data input / output terminals (D0 terminal to D7 terminal) are the address signal output from the address output terminals (A0 terminal to A15 terminal) and the chip select signal output from the address decode circuit C150. Use to switch.

パラレル入力ポートC130は、4つの入力端子(P0端子〜P3端子)を有する。これらの入力端子(P0端子〜P3端子)は、例えば、その入力端子のいずれかがスタートレバーD50に接続されており、乱数生成回路C140が生成する乱数をCPUC100に取得させるためのラッチ信号として、乱数生成回路C140に出力する。   The parallel input port C130 has four input terminals (P0 terminal to P3 terminal). As for these input terminals (P0 terminal to P3 terminal), for example, any one of the input terminals is connected to the start lever D50. It outputs to the random number generation circuit C140.

アドレスデコード回路C150は、所定数(例えば、14)の出力端子(XCS0端子〜XCS13端子)を有する。当該出力端子(XCS0端子〜XCS13端子)は、主制御チップCの外部にある周辺制御回路に接続されており、外部バス制御回路C190のデータ入出力端子(D0端子〜D7端子)から出力されるデータの送信先を切り替えるためのチップセレクト信号等の出力に用いられている。   The address decoding circuit C150 has a predetermined number (for example, 14) of output terminals (XCS0 terminal to XCS13 terminal). The output terminals (XCS0 terminal to XCS13 terminal) are connected to the peripheral control circuit outside the main control chip C, and are output from the data input / output terminals (D0 terminal to D7 terminal) of the external bus control circuit C190. It is used to output a chip select signal or the like for switching the data transmission destination.

タイマ回路C170は、時間の計測に用いられる。尚、タイマ回路C170は設定された計測時間を過ぎると、タイムアウト信号をカウンタ回路C180に出力する。一方、カウンタ回路C180は、各種信号の立ち上がり(あるいは立ち下がり)の回数の計測に用いられる。当該カウンタ回路で計測される信号には、主制御チップCのシステムクロックの他、前記タイマ回路からのタイムアウト信号、メモリの読み書き信号、メモリリクエスト信号、外部入出力の信号、割込みに対する応答信号等も計測することができる。   The timer circuit C170 is used for time measurement. The timer circuit C170 outputs a time-out signal to the counter circuit C180 when the set measurement time has passed. On the other hand, the counter circuit C180 is used for measuring the number of times of rising (or falling) of various signals. Signals measured by the counter circuit include a system clock of the main control chip C, a timeout signal from the timer circuit, a memory read / write signal, a memory request signal, an external input / output signal, an interrupt response signal, and the like. It can be measured.

リセット制御回路C220は、システムリセット入力端子(XSRST端子)と、リセット出力端子(XRSTO端子)の2つの端子を有する。このシステムリセット入力端子(XSRST端子)は電圧監視回路(電圧を監視するための回路であり、不図示となっている)に接続されている。当該システムリセット入力端子(XSRST端子)からシステムリセット信号(例えば一定時間Lレベルの信号)が入力されると、リセット制御回路C220は、主制御チップCの内部の回路に対してこのシステムリセット信号を出力するとともに、主制御チップCの外部にある周辺制御回路に対してリセット出力端子(XRSTO端子)からリセット信号(例えば、LレベルからHレベルへの立ち上がり信号)が出力される。この場合、主制御チップCでは、システムリセットと称する処理が実行され、各回路が初期化される。当該システムリセットが実行される一例として、電源投入時が挙げられる。   The reset control circuit C220 has two terminals, a system reset input terminal (XSRST terminal) and a reset output terminal (XRSTO terminal). This system reset input terminal (XSRST terminal) is connected to a voltage monitoring circuit (a circuit for monitoring voltage, not shown). When a system reset signal (for example, a signal at an L level for a predetermined time) is input from the system reset input terminal (XSRST terminal), the reset control circuit C220 sends this system reset signal to the internal circuit of the main control chip C. In addition to outputting, a reset signal (for example, a rising signal from L level to H level) is output from the reset output terminal (XRSTO terminal) to the peripheral control circuit outside the main control chip C. In this case, the main control chip C executes a process called system reset and initializes each circuit. An example of executing the system reset is when the power is turned on.

また、リセット制御回路C220は、ウォッチドッグタイマC222と、指定エリア外走行禁止回路C221とを備えている。ウォッチドッグタイマC222がタイムアウトになった場合や、CPUC100が所定の範囲以外のアドレスを参照(指定エリア外走行)した場合には、リセット制御回路C220は、主制御チップCの内部の回路に対してシステムリセット信号およびユーザリセット信号のいずれかを出力する。尚、システムリセット信号およびユーザリセット信号のどちらを出力するかは、内蔵ROMC110内のプログラム領域(詳細は後述する)の設定に従う。また、主制御チップCの外部にある周辺制御回路に対しては、リセット出力端子(XRSTO端子)からリセット信号が出力される。   In addition, the reset control circuit C220 includes a watchdog timer C222 and an out-of-designated area travel prohibition circuit C221. When the watchdog timer C222 times out, or when the CPU C100 refers to an address outside the predetermined range (runs outside the designated area), the reset control circuit C220 is connected to the circuit inside the main control chip C. Either system reset signal or user reset signal is output. Whether to output a system reset signal or a user reset signal depends on the setting of a program area (details will be described later) in the built-in ROMC 110. Further, a reset signal is output from the reset output terminal (XRSTO terminal) to the peripheral control circuit outside the main control chip C.

主制御チップCでは、設定によって上記のシステムリセットか、或いはユーザリセットと称する処理のいずれかを実行させることができる。   The main control chip C can execute either the above-described system reset or a process called user reset depending on the setting.

上記指定エリア外走行は、プログラムが想定外の動作をしていることを意味する。この場合、CPUC100が本来プログラムとして扱われるはずのないコードにより動作することになる。このような状況は、プログラムミスによる所謂暴走した状態の他に、何らかの不正によって生じている可能性がある。この場合、上記のシステムリセットおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるようになっている。また、ウォッチドッグタイマC222がタイムアウトになった場合としては、プログラムミスによる暴走した状態や、電圧降下によりCPUC100が本来設計した動作を行うことができなくなった場合等がある。この場合にも、上記のシステムおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるように構成されている。   The traveling outside the designated area means that the program is operating unexpectedly. In this case, the CPUC 100 operates with a code that should not be handled as a program. Such a situation may be caused by some sort of fraud other than a so-called runaway state due to a program mistake. In this case, normal operation can be restored by any one of the system reset and user reset processes described above. Further, when the watchdog timer C222 times out, there are a case where the CPUC100 cannot perform the originally designed operation due to a runaway due to a program mistake or a voltage drop. Also in this case, it is configured to be able to return to normal operation by any one of the above system and user reset processes.

割込み制御回路C160は、外部入力や内部状態の変化に応じて適宜処理を実行させるために割込みを発生させる。この割込み処理には、例えば外部からの入力(センサによる信号)を受け付けた場合に実行する処理がある。本実施形態では、タイマ回路からの割込み要求により実行されるタイマ割込み処理を実行するようにしている。尚、割込み制御回路C160は、内部情報レジスタC161を備えており、当該内部情報レジスタC161には、乱数生成回路C140で乱数更新周期を決める外部クロック(カウントクロック)の周期の異常、および乱数の更新に関する異常、さらに、直前に発生したユーザリセットのリセット要因の情報等が格納される。   The interrupt control circuit C160 generates an interrupt in order to appropriately execute a process according to a change in external input or internal state. This interrupt process includes, for example, a process executed when an external input (signal from a sensor) is received. In the present embodiment, timer interrupt processing executed in response to an interrupt request from the timer circuit is executed. The interrupt control circuit C160 includes an internal information register C161. The internal information register C161 includes an abnormality in the cycle of the external clock (count clock) that determines the random number update cycle in the random number generation circuit C140, and the update of the random number. In addition, information on the reset factor of the user reset that occurred immediately before is stored.

クロック回路C210は、水晶発振器(不図示)から外部クロック入力端子(EX端子)を介して入力される外部クロック(この例では、24MHzのクロック)を所定の分周比(例えば、1/2)で分周し、分周後のシステムクロック(この例では、12MHzのクロック)をこの主制御チップC内部の各回路に供給する。また、このシステムクロックをシステムクロック出力端子(CLKO端子)を介して主制御チップC外部の周辺制御回路に出力する。   The clock circuit C210 receives an external clock (24 MHz clock in this example) input from a crystal oscillator (not shown) via an external clock input terminal (EX terminal) with a predetermined frequency division ratio (for example, 1/2). The divided system clock (12 MHz clock in this example) is supplied to each circuit in the main control chip C. The system clock is output to a peripheral control circuit outside the main control chip C via a system clock output terminal (CLKO terminal).

乱数生成回路C140は、乱数を更新するためのクロック信号(カウントクロック)を用いて、乱数のラッチ信号を受信したときにこの更新された乱数を乱数レジスタ内に保持するものである。本実施形態では、水晶発振器から外部クロック入力端子(RCK端子)を介して入力される外部クロック信号を所定の分周比(例えば、1/2)で分周してこのカウントクロックに用いているが、主制御チップC内部のクロック信号を用いることもでき、この場合は水晶発振器は不要となる。乱数レジスタに保持された値は、乱数として読み出して使用することができる。尚、乱数レジスタから乱数を読み出すと、乱数レジスタが次の乱数をラッチすることを許容する許容状態とすることができる。   The random number generation circuit C140 uses the clock signal (count clock) for updating the random number, and holds the updated random number in the random number register when the random number latch signal is received. In this embodiment, an external clock signal input from a crystal oscillator via an external clock input terminal (RCK terminal) is divided by a predetermined frequency division ratio (for example, 1/2) and used as this count clock. However, the clock signal in the main control chip C can also be used, and in this case, a crystal oscillator is not necessary. The value held in the random number register can be read and used as a random number. Note that when a random number is read from the random number register, an allowable state in which the random number register is allowed to latch the next random number can be set.

照合用ブロックC230は、主制御チップCが型式認定で合格した正規のものかどうかの真贋検査であるセキュリティチェックを実行するものであり、SC端子及びBRC端子を介して当該セキュリティチェックに係る信号を外部端子板に送信又は外部端子板から受信し得るよう構成されている。   The verification block C230 executes a security check that is an authenticity check as to whether or not the main control chip C is a legitimate product that has passed the type approval. A signal related to the security check is transmitted via the SC terminal and the BRC terminal. It is configured to be able to transmit to or receive from the external terminal plate.

固有情報C240には、主制御チップCの製造時に書き込まれた固有の識別番号が格納されており、当該識別番号は書き換えができないよう構成されている。また、演算回路C250は、四則演算や論理演算を実行する回路である。   The unique information C240 stores a unique identification number written when the main control chip C is manufactured, and the identification number cannot be rewritten. The arithmetic circuit C250 is a circuit that executes four arithmetic operations and logical operations.

<メモリマップ>
次に、図7を用いて、図6に示す主制御チップCのメモリマップの一例について説明する。当該メモリマップには、「0000H」から「FFFFH」までのアドレス空間が示されている。このうち、「0000H」から「27FFH」までの空間には内蔵ROMC110が割り当てられ、「2800H」から「28FFH」までの空間には主制御チップC内の各回路に内蔵されているレジスタ領域が割り当てられ、「F000H」から「F2FFH」までの空間には内蔵RAMC120が割り当てられ、「FDD0H」から「FDFBH」までの空間にはXCSデコードエリア(与えられた機械語を内部表現として解釈することであるデコードを実行する領域)が割り当てられている。CPUC100に、これらの番地に対してアクセスする命令を実行させることにより、対応するハードウェアに対するアクセスを実行させることができる。
<Memory map>
Next, an example of the memory map of the main control chip C shown in FIG. 6 will be described using FIG. The memory map shows an address space from “0000H” to “FFFFH”. Among these, the built-in ROMC 110 is assigned to the space from “0000H” to “27FFH”, and the register area built in each circuit in the main control chip C is assigned to the space from “2800H” to “28FFH”. The internal RAMC 120 is allocated to the space from “F000H” to “F2FFH”, and the XCS decode area (the given machine language is interpreted as an internal representation) in the space from “FDD0H” to “FDFBH”. (Decoding area) is allocated. By causing the CPUC 100 to execute an instruction to access these addresses, it is possible to execute access to the corresponding hardware.

尚、内蔵ROMC110は、主として遊技の進行を制御する領域である第1ROM領域と、主としてエラー関連等の遊技の正常な進行とは異なる処理を制御する領域である第2ROM領域と、を有しており、「0000H」から「1FFFH」までの空間には第1ROM領域が割り当てられ、「2000H」から「27FFH」までの空間には第2ROM領域が割り当てられている。尚、第1ROM領域は、第2ROM領域よりも容量が大きくなるよう構成されている(換言すれば、第1ROM領域内に存在しCPUC100からアクセスされるデータ容量は、第2ROM領域内に存在しCPUC100からアクセスされるデータ容量よりも大きくなるよう構成されている)。   The built-in ROMC 110 has a first ROM area that is an area that mainly controls the progress of the game, and a second ROM area that is an area that mainly controls processing different from the normal progress of the game such as errors. The first ROM area is assigned to the space from “0000H” to “1FFFH”, and the second ROM area is assigned to the space from “2000H” to “27FFH”. Note that the first ROM area is configured to have a larger capacity than the second ROM area (in other words, the data capacity that exists in the first ROM area and is accessed by the CPUC 100 exists in the second ROM area, and the CPUC100 Configured to be larger than the data capacity accessed from

また、第1ROM領域は、プログラムコード(CPUC100に対する命令コードセット)が格納されている第1制御領域と、プログラムが使用する(このプログラムコードに基づくCPUC100の処理によって読みだされる)プログラムデータが格納されている第1データ領域と、各種識別情報(会社名、製造日、型式名等)が格納される領域と、主制御チップCを動作させる際に用いられる各種設定(乱数生成回路C140の動作設定、ウォッチドッグタイマC222の動作設定等)が格納されているプログラム管理エリアとを有している。尚、同図にて、第1ROM領域におけるメモリマップイメージを図示しておくが、各領域のバイト数や未使用領域の有無はあくまでも一例である。   The first ROM area stores a first control area in which program code (instruction code set for the CPUC 100) is stored, and program data used by the program (read by processing of the CPUC 100 based on the program code). First data area, an area for storing various identification information (company name, date of manufacture, model name, etc.), and various settings used when operating the main control chip C (operation of the random number generation circuit C140) A program management area in which settings, operation settings of the watchdog timer C222, etc.) are stored. In the figure, the memory map image in the first ROM area is illustrated, but the number of bytes in each area and the presence / absence of an unused area are merely examples.

また、第2ROM領域は、プログラムコード(CPUC100に対する命令コードセット)が格納されている第2制御領域と、プログラムが使用する(このプログラムコードに基づくCPUC100の処理によって読みだされる)プログラムデータが格納されている第2データ領域と、を有しており、第2制御領域は、第1制御領域よりも容量が小さくなるよう構成されており(換言すれば、第2制御領域内に存在しCPUC100からアクセスされるプログラムコード容量は、第1制御領域内に存在しCPUC100からアクセスされるプログラムコード容量よりも小さくなり)、第2データ領域は、第1データ領域よりも容量が小さくなるよう構成されている(換言すれば、第2データ領域内に存在しCPUC100からアクセスされるプログラムデータ容量は、第1データ領域内に存在しCPUC100からアクセスされるプログラムデータ容量よりも小さくなる)。   The second ROM area stores a second control area in which program codes (instruction code sets for the CPUC 100) are stored, and program data used by the program (read by processing of the CPUC 100 based on the program codes). The second control area is configured to have a capacity smaller than that of the first control area (in other words, the CPUC100 exists in the second control area. The program code capacity accessed from the first control area is smaller than the program code capacity accessed from the CPUC 100), and the second data area is configured to have a smaller capacity than the first data area. (In other words, it exists in the second data area and is accessed from the CPUC 100. Program data capacity is smaller than the program data capacity to be accessed from there to the first data area CPUC100).

他方、内蔵RAMC120は、主として遊技の進行に基づく情報を格納する領域である第1RAM領域と、主としてエラー関連等の遊技の正常な進行とは異なる処理に基づく情報を格納する領域である第2RAM領域と、プログラムが内部的にデータを保存しておく必要がある場合使用されるスタックエリアと、を有しており、「F000H」から「F1FFH」までの空間には第1RAM領域が割り当てられ、「F200H」から「F2C9H」までの空間には第2RAM領域が割り当てられ、「F2CAH」から「F2FFH」までの空間にはスタックエリアが割り当てられている(但し、各領域のバイト数はあくまでも一例である)。   On the other hand, the built-in RAMC 120 is a first RAM area which is an area mainly storing information based on the progress of the game, and a second RAM area which is an area storing information mainly based on processing different from normal progress of the game such as an error related. And a stack area that is used when the program needs to store data internally, and a first RAM area is allocated to the space from “F000H” to “F1FFH”. The second RAM area is allocated to the space from “F200H” to “F2C9H”, and the stack area is allocated to the space from “F2CAH” to “F2FFH” (however, the number of bytes in each area is merely an example) ).

また、第1RAM領域は、主として遊技の進行に係る情報を一時記憶するための作業領域である第1作業領域を有しており、第2RAM領域は、主としてエラー関連等に係る情報を一時記憶するための作業領域である第2作業領域と、第1RAM領域及び第2RAM領域に一時記憶された情報の誤り検出を行うための作業領域であるチェックサム領域を有している。尚、第1RAM領域は、第2RAM領域よりも容量が大きくなるよう構成されている。また、本実施形態においては、チェックサム領域は第2RAM領域のみが有しており(第1RAM領域は有しておらず)、当該チェックサム領域が第1RAM領域と第2RAM領域との双方の(双方に一時記憶された情報を通算した)チェックサムを管理するよう構成されている。また、本実施形態においては、後述するように、チェックサムを算出する際、未使用領域をも含めて算出しているが、これには限定されず、未使用領域を除いた領域(第1作業領域及び第2作業領域)についてチェックサムを算出するよう構成してもよい。また、誤り検出を行う手法は、チェックサムチェックを行う手法に限らず、その他の手法(例えば、パリティチェック等)を行う手法を用いてもよく、その場合には、当該チェックサム領域が、これら手法を用いる際に必要となる誤り検出用の情報(例えば、パリティビット等)を格納する領域となる。   The first RAM area has a first work area that is a work area for temporarily storing information related to the progress of the game, and the second RAM area temporarily stores information related to errors and the like. And a checksum area that is a work area for performing error detection of information temporarily stored in the first RAM area and the second RAM area. The first RAM area is configured to have a larger capacity than the second RAM area. In this embodiment, only the second RAM area is included in the checksum area (the first RAM area is not included), and the checksum area includes both the first RAM area and the second RAM area ( It is configured to manage a checksum (total of information temporarily stored in both sides). In this embodiment, as will be described later, when calculating the checksum, including the unused area, the calculation is not limited to this. The checksum may be calculated for the work area and the second work area. In addition, the method of performing error detection is not limited to the method of performing checksum check, and a method of performing other methods (for example, parity check) may be used. This is an area for storing information for error detection (for example, parity bits, etc.) required when using the technique.

尚、各種識別情報(会社名、製造日、型式名等)が格納される領域のアドレスは、内蔵RAMのアドレス以降としても何ら問題ない。また、未使用領域となっているアドレスも変更しても問題ないが、第1データ領域と第2制御領域との間(間のアドレス)には未使用領域を設けることが好適である。即ち、図7に示すようなメモリマップ構成である場合、第1制御領域内に存在しCPUC100からアクセスされるプログラムコードと、第2制御領域内に存在しCPUC100からアクセスされるプログラムコードとは、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されており、未使用領域を間に挟んでいるため、プログラムソースコード上又はダンプリスト上において、双方のプログラムコードの配置位置を視覚上明確に切り分けることができる(その他、未使用領域を間に挟んでいる場合には、同様のことがいえる)。   It should be noted that there is no problem even if the address of the area in which various kinds of identification information (company name, manufacturing date, model name, etc.) are stored is after the address of the built-in RAM. In addition, although there is no problem if the address that is an unused area is changed, it is preferable to provide an unused area between the first data area and the second control area. That is, in the case of the memory map configuration as shown in FIG. 7, the program code that exists in the first control area and is accessed from the CPUC 100, and the program code that exists in the second control area and is accessed from the CPUC 100 are: Since they are arranged apart from each other on the memory map (with discontinuous addresses) and an unused area is sandwiched between them, the location of both program codes on the program source code or dump list can be viewed visually. It can be clearly separated (the same can be said when an unused area is sandwiched between them).

ここで、主制御基板Mが搭載するROMに関しては、不正行為によって改造されたプログラム等を書き込まれることを防止するため、未使用の領域(充填されていない領域)を設けないよう構成することが好適である(例えば、未使用領域を全て0によって充填、使用している領域を若い番地に詰めて書き込む、等)。また、第1制御領域及び第1データ領域には、ノイズや不正行為によって、通常時には参照しないデータを参照してしまうことを防止するため、未使用のデータ(例えば、スペック違いの遊技機において参照するデータや、開発段階でのテストにのみ使用するデータ等)を設けないよう構成することが好適である。また、第1制御領域、第1データ領域、第2制御領域、第2データ領域、第1作業領域及び第2作業領域は、若い番地に詰めて領域を使用し、当該領域内(当該領域内のアドレス)に未使用の領域を設けない(例えば、「0000H」〜「0FA7H」の範囲となっている第1制御領域内の、「0010H」〜「0050H」を未使用領域としない)よう構成することが好適である。尚、本例における、未使用領域は、すべてのビットが「0」となっており、当該未使用領域以外の領域は、いずれかのビットが「1」となっている(「0」ではなくなっている)。   Here, the ROM mounted on the main control board M may be configured not to provide an unused area (an unfilled area) in order to prevent a program or the like modified by an illegal act from being written. It is preferable (for example, all unused areas are filled with zeros, and used areas are filled in young addresses and written). In addition, in order to prevent the first control area and the first data area from referring to data that is not normally referred to due to noise or fraudulent behavior, unused data (for example, in a gaming machine with different specifications) It is preferable not to provide data to be used or data used only for testing at the development stage. In addition, the first control area, the first data area, the second control area, the second data area, the first work area, and the second work area are arranged in a young address and used in the area (in the area). (For example, “0010H” to “0050H” in the first control area in the range of “0000H” to “0FA7H” are not used as unused areas). It is preferable to do. In this example, all the bits in the unused area are “0”, and any bit other than the unused area is “1” (not “0”). ing).

次に、図8〜34は、本実施形態における、主制御基板Mが行う一般的な処理の流れを示したフローチャートである。はじめに、これら処理の流れを示したフローチャートにおいては、第1ROM領域にて配置されているプログラムコード及びプログラムデータに基づき、CPUC100が処理を実行する場合、もしくは、その処理結果をCPUC100内のレジスタ(レジスタ領域)や第1RAM領域へ格納(更新)したり、第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にてその処理結果を参照する場合を、「第1ROM・RAM領域における処理」として点線で囲んで図示し、「第1ROM・RAM領域内のデータに基づき」CPUC100が処理を実行する旨を記載している。また、これら処理の流れを示したフローチャートにおいては、第2ROM領域にて配置されているプログラムコード及びプログラムデータに基づき、CPUC100が処理を実行する場合、もしくは、その処理結果をCPUC100内のレジスタ(レジスタ領域)や第2RAM領域へ格納(更新)したり、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にてその処理結果を参照する場合を、「第2ROM・RAM領域における処理」として点線で囲んで図示し、「第2ROM・RAM領域内のデータに基づき」CPUC100が処理を実行する旨を記載している。   Next, FIGS. 8 to 34 are flowcharts showing a flow of general processing performed by the main control board M in the present embodiment. First, in the flowchart showing the flow of these processes, when the CPUC 100 executes a process based on the program code and program data arranged in the first ROM area, or the processing result is stored in a register (register register) in the CPUC100. (Processing in the first ROM / RAM area) when the processing result is stored (updated) in the area) or the first RAM area, or the processing result is referred to in the processing of the CPUC 100 based on the program code arranged in the first ROM area. As indicated by a dotted line, it is described that the CPU C 100 executes the process “based on data in the first ROM / RAM area”. Further, in the flowchart showing the flow of these processes, when the CPUC 100 executes a process based on the program code and program data arranged in the second ROM area, or the process result is stored in a register (register register) in the CPUC100. (Processing in the second ROM / RAM area) when the processing result is stored (updated) in the area) or the second RAM area, or the processing result is referred to in the processing of the CPUC 100 based on the program code arranged in the second ROM area. As indicated by a dotted line, it is described that the CPU C 100 executes the process “based on data in the second ROM / RAM area”.

また、フローチャートは主に、処理ステップ(長方形にて図示)、判断(ひし形にて図示)、流れ線(矢印)、開始・終了・復帰等を示す端子(角丸長方形にて図示)によって構成されている。また、処理ステップの内、別のフローチャートにて詳細を図示している場合、当該別のフローチャートを参照するものをサブルーチン(左右の線が二重線である長方形にて図示)として図示している。ここで、遊技機の開発段階においては、スペック違いの遊技機を同時に開発することも行われているが、本例においては、メイン側の処理内に、スペック違いの遊技機で実行するサブルーチン(通常は使用しないサブルーチン)を残さないよう構成しており、ノイズや不正行為によって、通常時には実行されない未使用サブルーチンに係る処理が実行されることを防止している。   The flowchart is mainly composed of processing steps (illustrated by rectangles), judgments (illustrated by diamonds), flow lines (arrows), terminals indicating start / end / return, etc. (illustrated by rounded rectangles). ing. Moreover, when the details are illustrated in another flowchart among the processing steps, those referring to the other flowchart are illustrated as a subroutine (illustrated by a rectangle in which the left and right lines are double lines). . Here, in the development stage of gaming machines, gaming machines with different specifications are also developed at the same time, but in this example, a subroutine ( (Subroutines that are not normally used) are not left behind, and processing related to unused subroutines that are not normally executed due to noise or fraudulent actions is prevented from being executed.

そして、これらの動きに沿わない場合であり、例えば、第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第2RAM領域を更新又は参照する場合や、逆に、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域を更新又は参照する場合には、その更新・参照先がいずれのものであるかを特記している(又は、これらの動きに沿う場合であっても、明確化のため必要に応じて特記している場合がある)。尚、以下に示す実施形態における処理の動きを概念的に纏めておくと、次のようなケースに分かれる。   And it is a case not following these movements. For example, when the second RAM area is updated or referred to by the processing of the CPUC 100 based on the program code arranged in the first ROM area, or conversely, the second ROM area When the first RAM area is updated or referred to in the processing of the CPUC 100 based on the program code arranged in (1), the update / reference destination is specified (or these) Even if it follows the movement, it may be noted as necessary for clarity). It should be noted that, when the processing movements in the embodiment described below are conceptually summarized, the following cases are obtained.

<動作1>第1ROM領域(特に、第1制御領域)にて配置されているプログラムコードに基づくCPUC100の処理によって、第1ROM領域(特に、第1データ領域)にて配置されているプログラムデータが読みだされる、又は、第2ROM領域(特に、第2制御領域)にて配置されているプログラムコードに基づくCPUC100の処理によって、第2ROM領域(特に、第2データ領域)にて配置されているプログラムデータが読みだされる。但し、第1ROM領域(特に、第1制御領域)にて配置されているプログラムコードに基づくCPUC100の処理によっては、第2ROM領域(特に、第2データ領域)にて配置されているプログラムデータが読みだされない、及び、第2ROM領域(特に、第2制御領域)にて配置されているプログラムコードに基づくCPUC100の処理によっては、第1ROM領域(特に、第1データ領域)にて配置されているプログラムデータが読みだされない。   <Operation 1> The program data arranged in the first ROM area (particularly the first data area) is processed by the CPUC 100 based on the program code arranged in the first ROM area (particularly the first control area). It is read or arranged in the second ROM area (particularly the second data area) by the processing of the CPUC 100 based on the program code arranged in the second ROM area (particularly the second control area). Program data is read out. However, depending on the processing of the CPUC 100 based on the program code arranged in the first ROM area (particularly, the first control area), the program data arranged in the second ROM area (particularly the second data area) is read. Depending on the processing of the CPUC 100 based on the program code arranged in the second ROM area (particularly the second control area), the program arranged in the first ROM area (particularly the first data area) Data is not read out.

<動作2>第1ROM領域にて配置されているプログラムコード及びプログラムデータに基づくCPUC100の処理にて、第1RAM領域を更新及び参照する。また、第2ROM領域にて配置されているプログラムコード及びプログラムデータに基づくCPUC100の処理にて、第2RAM領域を更新及び参照する。   <Operation 2> The first RAM area is updated and referred to by the processing of the CPUC 100 based on the program code and program data arranged in the first ROM area. Further, the second RAM area is updated and referred to by the processing of the CPUC 100 based on the program code and program data arranged in the second ROM area.

<動作3>第1ROM領域にて配置されているプログラムコードにおける呼び出し命令(例えば、ニーモニックでいうCALL命令)によって、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理が実行され得るが、第2ROM領域にて配置されているプログラムコードにおける呼び出し命令(例えば、ニーモニックでいうCALL命令)によって、第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理が実行され得ない。即ち、第1ROM領域にて配置されているプログラムコードと第2ROM領域にて配置されているプログラムコードとは、主従関係にあり、主となる第1ROM領域にて配置されているプログラムコードにおける呼び出し命令があってはじめて、従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理が実行され得る状態となる。   <Operation 3> The processing of the CPUC 100 based on the program code arranged in the second ROM area can be executed by a calling instruction (for example, a CALL instruction called mnemonic) in the program code arranged in the first ROM area. The CPUC 100 based on the program code arranged in the first ROM area cannot be executed by a calling instruction (for example, a CALL instruction called mnemonic) in the program code arranged in the second ROM area. That is, the program code arranged in the first ROM area and the program code arranged in the second ROM area are in a master-slave relationship, and a call instruction in the program code arranged in the main first ROM area. Only when there is, the CPU C 100 can be executed based on the program code arranged in the secondary second ROM area.

<動作4>主となる第1ROM領域にて配置されているプログラムコードにおける呼び出し命令があって、従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理が実行される場合、当該従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の実行時には、当該呼び出し命令があった時点で記憶されている情報(例えば、レジスタ領域内の情報)を参照する。或いは、当該従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理が実行された後、当該主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理に復帰する場合、当該主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の実行時には、当該復帰した時点で記憶されている情報(例えば、レジスタ領域内の情報)を参照する。   <Operation 4> When there is a call instruction in the program code arranged in the main first ROM area and the processing of the CPUC 100 based on the program code arranged in the subordinate second ROM area is executed, When the CPUC 100 executes the process based on the program code arranged in the slave second ROM area, information stored at the time when the call instruction is issued (for example, information in the register area) is referred to. Alternatively, after the processing of the CPUC 100 based on the program code arranged in the subordinate second ROM area is executed, the processing returns to the processing of the CPUC100 based on the program code arranged in the main first ROM area. When executing the processing of the CPUC 100 based on the program code arranged in the main first ROM area, information stored at the time of return (for example, information in the register area) is referred to.

<動作5>前述の<動作4>において、レジスタ領域内の情報を参照しない場合には、<動作5−1>主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理結果を、第1RAM領域に格納しておき、従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の実行時には、当該第1RAM領域に格納された処理結果を参照及び更新可能としておく(当該主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の復帰時には、当該更新された第1RAM領域を参照する)、<動作5−2>主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理結果を、第1RAM領域に格納しておき、従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の実行時には、当該第1RAM領域に格納された処理結果を参照可能としておく、且つ、従となる第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理結果を、第2RAM領域に格納しておき、当該主となる第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理の復帰時には、当該第2RAM領域に格納された処理結果を参照可能としておく、のいずれかで動作する。   <Operation 5> In the above <Operation 4>, when the information in the register area is not referred to, <Operation 5-1> Processing result of the CPUC 100 based on the program code arranged in the main first ROM area Is stored in the first RAM area, and the processing result stored in the first RAM area can be referred to and updated when the CPUC 100 executes the process based on the program code arranged in the secondary ROM area. (Refer to the updated first RAM area when the process of the CPUC 100 is restored based on the program code arranged in the main first ROM area) <Operation 5-2> Main first ROM area The processing result of the CPUC 100 based on the program code arranged in is stored in the first RAM area, and the slave When executing the processing of the CPUC 100 based on the program code arranged in the second ROM area, the processing result stored in the first RAM area can be referred to and is arranged in the subordinate second ROM area. The processing result of the CPUC 100 based on the program code is stored in the second RAM area, and is stored in the second RAM area when the processing of the CPUC 100 based on the program code arranged in the main first ROM area is restored. It is possible to refer to the processing result that has been made available.

以上のような前提(説明を行う上での前提)に基づき、主制御基板Mが行う一般的な処理の流れについて説明を行っていくこととするが、上記した<動作1>乃至<動作3>は必須となる前提となる一方で、<動作4>と<動作5>とは、CPUC100での処理結果を主従関係にあるプログラムコード間で、如何にして引き継いでいくかの実装方法によって取捨選択できる前提であるため、以下の処理の流れにおいて、<動作4>及び<動作5>のいずれか一方のみで例示されていた場合であっても、他方で代替することが可能であることを予め補足しておく。   Based on the above assumption (premise for explanation), a general flow of processing performed by the main control board M will be explained. <Operation 1> to <Operation 3> described above > Is an indispensable premise, while <Action 4> and <Action 5> are sorted by the implementation method of how the processing results in the CPUC 100 are inherited between program codes in a master-slave relationship. Since it is a premise that can be selected, even if only one of <Operation 4> and <Operation 5> is exemplified in the following processing flow, it can be replaced with the other. It supplements beforehand.

まず、図8は、回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、主制御基板MのCPUC100にて初めて実行される処理の流れを示したフローチャートである。この場合、一般的には、内蔵ROMC110の0000Hとなるアドレス(即ち、第1制御領域)に配置されているプログラムコードから順番に実行されていくこととなる。尚、主制御基板Mにおける主制御チップCの構成によっては、回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、前述したセキュリティチェックを実行するよう構成される場合があり、当該セキュリティチェックを実行するためのプログラムコードが先に実行されるよう構成される場合も想定できるが、そのような構成であっても、本実施形態において示す第1制御領域に配置されているプログラムコードから順番に実行されていくことには変わりない(加えて、内蔵ROMC110の初期アドレスが、0000Hではない場合であっても、前述したメモリマップの全体構成に変わりない=各アドレスが適宜ずれるのみ)。また、本実施形態においては、内蔵RAMC120に格納されているデータが電源断時においても保持されるよう、内蔵RAMC120に対してバックアップ電源が供給されるよう構成されているものとしている。   First, FIG. 8 is a flowchart showing a flow of processing executed for the first time by the CPUC 100 of the main control board M after turning on the power of the rotating game machine P (or at the time of system reset or user reset). . In this case, generally, the program code is executed in order from the program code arranged at the address (that is, the first control area) of 0000H in the built-in ROMC 110. Note that, depending on the configuration of the main control chip C on the main control board M, the above-described security check is executed after turning on the power of the spinning machine P (or at the time of system reset or user reset). In some cases, it can be assumed that the program code for executing the security check is configured to be executed first, but even in such a configuration, the program code is arranged in the first control area shown in the present embodiment. (In addition, even if the initial address of the built-in ROMC 110 is not 0000H, it does not change to the overall configuration of the above-described memory map = each address.) Only deviate as appropriate). In the present embodiment, backup power is supplied to the built-in RAMC 120 so that data stored in the built-in RAMC 120 is retained even when the power is turned off.

<第1ROM・RAM領域における処理>
まず、ステップ1000で、回胴式遊技機Pの電源を投入した後、ステップ1002で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ割り込みをセットする(ここでは、タイマ割り込みの種類をセットするのみであり、以降の処理において、タイマ割り込みが開始されると定期的に後述するタイマ割り込み時処理に係るフローチャートが実行される)。次に、ステップ1004で、CPUC100は、第1ROM・RAM領域内のデータに基づき、主制御チップCの機能設定を実行する。次に、ステップ1006で、CPUC100は、第2ROM領域の電源断復帰処理を呼び出す。
<Processing in the first ROM / RAM area>
First, after turning on the power of the revolving game machine P in step 1000, the CPUC 100 sets a timer interrupt based on the data in the first ROM / RAM area in step 1002 (here, the type of timer interrupt) In the subsequent processing, when a timer interrupt is started, a flowchart related to timer interrupt processing described later is periodically executed). Next, in step 1004, the CPUC 100 executes the function setting of the main control chip C based on the data in the first ROM / RAM area. Next, in step 1006, the CPUC 100 calls a power-off recovery process for the second ROM area.

<第2ROM・RAM領域における処理>
次に、ステップ1008で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスからチェックサム領域直前のアドレスまでのチェックサムを算出する。次に、ステップ1010で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMをチェックし(例えば、当該算出したチェックサムとチェックサム領域に保持されているチェックサムデータとに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックし)、電源断復帰データを生成する(当該チェック結果やステップ1800の電源断時処理にて実行した処理に基づいて生成し、第2RAM領域内で保持する)。次に、ステップ1012で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1014に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1008, the CPUC 100 calculates a checksum from the start address of the first RAM area to the address immediately before the checksum area based on the data in the first ROM / RAM area. Next, in step 1010, the CPUC 100 checks the first RAM and the second RAM based on the data in the first ROM / RAM area (for example, the calculated checksum and the checksum data held in the checksum area). Based on the above, it is checked whether or not the data stored in the built-in RAMC 120 is correctly held by the power-off / power-off recovery), and the power-off recovery data is generated (the result of the check and the process at the time of power-off in step 1800) And is stored in the second RAM area). Next, in Step 1012, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to Step 1014.

<第1ROM・RAM領域における処理>
次に、ステップ1014で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のスイッチ状態を確認する。次に、ステップ1016で、CPUC100は、第1ROM・RAM領域内のデータを参照し、扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のいずれかがオフであるか否かを判定する。ステップ1016でYesの場合、ステップ1018で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の非設定変更時初期化処理を呼び出し、ステップ1022に移行する。他方、ステップ1016でNoの場合には、ステップ1020で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の設定変更時初期化処理を呼び出し、ステップ1030に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1014, the CPUC 100 confirms the switch states of the front door switch D80, the setting door switch M10, and the setting key switch M20 based on the data in the first ROM / RAM area. Next, in step 1016, the CPUC 100 refers to the data in the first ROM / RAM area and determines whether any of the door switch D80, the setting door switch M10, and the setting key switch M20 is OFF. In the case of Yes in Step 1016, in Step 1018, the CPUC 100 calls the non-setting change initialization process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to Step 1022. On the other hand, in the case of No in step 1016, in step 1020, the CPUC 100 calls the setting change initialization process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1030.

<第2ROM・RAM領域における処理>
次に、ステップ1022で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の電源断処理済みフラグのオン・オフ(ステップ1904でオンとなる)及び全RAMのチェックサム状態(ステップ1010でのチェック結果)を参照し、第2RAM内の電源断復帰データは正常ではないか否かを判定する。ステップ1022でYesの場合、ステップ1026で、CPUC100は、第2ROM・RAM領域内のデータに基づき、バックアップエラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。他方、ステップ1022でNoの場合、ステップ1028で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMの初期化範囲を未使用RAM範囲(図中欄外にて示す、第1RAM領域における未使用領域と第2RAM領域における未使用領域)に決定してセットし(例えば、レジスタ領域内にセットし)、ステップ1036に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1022, the CPUC 100 turns on / off the power-off processing completion flag in the first RAM (turned on in step 1904) and the checksum state of all RAMs (based on the data in the second ROM / RAM area). With reference to the check result in step 1010), it is determined whether or not the power-off recovery data in the second RAM is normal. In the case of Yes in step 1022, in step 1026, the CPUC 100 sets a backup error display based on the data in the second ROM / RAM area (for example, sets an error number in the register area). Next, in step 1300, the CPUC 100 executes non-recoverable error processing, which will be described later, based on the data in the second ROM / RAM area. On the other hand, in the case of No in step 1022, in step 1028, based on the data in the second ROM / RAM area, the CPUC 100 sets the initialization range of the first RAM and the second RAM to the unused RAM range (shown in the box outside the figure). The unused area in the 1RAM area and the unused area in the second RAM area are determined and set (for example, set in the register area), and the process proceeds to step 1036.

他方、ステップ1020の処理の後、ステップ1030で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の電源断処理済みフラグのオン・オフ(ステップ1904でオンとなる)及び全RAMのチェックサム状態(ステップ1010でのチェック結果)を参照し、第2RAM内の電源断復帰データは正常であるか否かを判定する。ステップ1030でYesの場合、ステップ1032で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMの初期化範囲をRAM内における設定値を除くすべての範囲に決定してセットし(例えば、レジスタ領域内にセットし)、ステップ1036に移行する。尚、設定値は第1RAM領域の先頭アドレスに格納されている。他方、ステップ1030でNoの場合、ステップ1034で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM及び第2RAMの初期化範囲をRAMのすべての範囲に決定してセットし(例えば、レジスタ領域内にセットし)、ステップ1036に移行する。   On the other hand, after the processing in step 1020, in step 1030, based on the data in the second ROM / RAM area, the CPUC 100 turns on / off the power-off processing completion flag in the first RAM (turned on in step 1904) and all of them. With reference to the checksum state of the RAM (check result in step 1010), it is determined whether or not the power-off recovery data in the second RAM is normal. In the case of Yes in step 1030, in step 1032 the CPUC 100 determines and sets the initialization range of the first RAM and the second RAM to all ranges except the set value in the RAM based on the data in the second ROM / RAM area. (For example, set in the register area), the process proceeds to step 1036. The set value is stored at the top address of the first RAM area. On the other hand, in the case of No in step 1030, in step 1034, based on the data in the second ROM / RAM area, the CPUC 100 determines and sets the initialization range of the first RAM and the second RAM to all the ranges of the RAM (for example, , Set in the register area), and go to Step 1036.

次に、ステップ1036で、CPUC100は、第2ROM・RAM領域内のデータに基づき、決定された初期化範囲で第2RAM領域のみの初期化を実行する。次に、ステップ1038で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1040に移行する。   Next, in step 1036, the CPUC 100 executes initialization of only the second RAM area within the determined initialization range based on the data in the second ROM / RAM area. Next, in step 1038, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1040.

<第1ROM・RAM領域における処理>
次に、ステップ1040で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1028、ステップ1032又はステップ1034にて決定された初期化範囲で、第1RAM領域のみの初期化を実行する。次に、ステップ1041で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前扉スイッチD80、設定扉スイッチM10及び設定キースイッチM20のいずれかがオフであるか否かを判定する。ステップ1041でYesの場合、ステップ1042で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内の設定値チェック処理を呼び出し、ステップ1044に移行する。他方、ステップ1041でNoの場合には、ステップ1100で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、設定変更装置制御処理(設定変更処理とも称す)を実行する。
<Processing in the first ROM / RAM area>
Next, in Step 1040, the CPUC 100 executes initialization of only the first RAM area within the initialization range determined in Step 1028, Step 1032 or Step 1034 based on the data in the first ROM / RAM area. Next, in step 1041, the CPUC 100 determines whether any of the front door switch D80, the setting door switch M10, and the setting key switch M20 is OFF based on the data in the first ROM / RAM area. In the case of Yes in Step 1041, in Step 1042, the CPUC 100 calls the setting value check process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to Step 1044. On the other hand, in the case of No in step 1041, in step 1100, the CPUC 100 executes a setting change device control process (also referred to as a setting change process), which will be described later, based on the data in the first ROM / RAM area.

<第2ROM・RAM領域における処理>
次に、ステップ1044で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内を参照し、第1RAM領域内の設定値に係るデータは正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1044でYesの場合、ステップ1046で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1050に移行する。他方、ステップ1044でNoの場合、ステップ1048で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示(例えば、払出数表示装置D190に表示されることとなる)をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する復帰不可能エラー処理を実行する。
<Processing in the second ROM / RAM area>
Next, in step 1044, the CPUC 100 refers to the first RAM area based on the data in the second ROM / RAM area, and the data related to the set value in the first RAM area is within the normal range (in this example, 1 to 1). 6) It is determined whether or not. In the case of Yes in Step 1044, in Step 1046, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to Step 1050. On the other hand, in the case of No in step 1044, in step 1048, the CPUC 100 sets a setting value error display (for example, displayed on the payout number display device D190) based on the data in the second ROM / RAM area. (For example, set in the register area). Next, in step 1300, the CPUC 100 executes non-recoverable error processing, which will be described later, based on the data in the second ROM / RAM area.

<第1ROM・RAM領域における処理>
次に、ステップ1050で、CPUC100は、第1ROM・RAM領域内のデータに基づき、電源断時の処理(ステップ1902)にて保存したスタックポインタに係るデータに基づき、スタックポインタを復帰する。次に、ステップ1052で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入力ポートの読み込みを実行する。次に、ステップ1054で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ステップ1002にてセットしたタイマ割り込みを開始する。次に、ステップ1056で、CPUC100は、第1ROM・RAM領域内のフラグエリア内にある電源断処理済みフラグをオフにし、復帰したスタックポインタに従い電源断時の処理に復帰する。
<Processing in the first ROM / RAM area>
Next, in step 1050, the CPUC 100 restores the stack pointer based on the data related to the stack pointer saved in the power-off process (step 1902) based on the data in the first ROM / RAM area. Next, in step 1052, the CPUC 100 reads the input port based on the data in the first ROM / RAM area. Next, in step 1054, the CPUC 100 starts the timer interrupt set in step 1002 based on the data in the first ROM / RAM area. Next, in step 1056, the CPUC 100 turns off the power-off processing completion flag in the flag area in the first ROM / RAM area, and returns to the processing at the time of power-off according to the returned stack pointer.

尚、不図示ではあるが、主制御基板Mが搭載する一時記憶領域(RAM領域等)の初期値(処理開始時の値)は、特別遊技が実行される値とならないよう構成することが好適である(プログラムの処理開始直後に、ノイズや不正行為により、特別遊技の実行判定を行う処理を実行してしまった場合に特別遊技が誤って実行されることを防止するため)。また、不図示ではあるが、主制御基板MのRAM領域内に当選乱数等の乱数を記憶する場合には、専用の記憶領域を確保し、乱数に係る情報を記憶しているバイト内には当該乱数に係る情報のみを記憶する(各種タイマ値等、その他の情報を記憶しない)よう構成することが好適である(同じ1バイト内に記憶した別のデータを操作する際に、ノイズ等によって乱数に係る情報が書き換わってしまうことを防止するため)。   Although not shown, it is preferable that the initial value (value at the start of processing) of the temporary storage area (RAM area or the like) mounted on the main control board M is not a value at which a special game is executed. (In order to prevent a special game from being erroneously executed when a process for determining whether or not to execute a special game is executed due to noise or fraud immediately after the program processing is started). Although not shown, when a random number such as a winning random number is stored in the RAM area of the main control board M, a dedicated storage area is secured and the byte storing information on the random number is stored in the byte. It is preferable to configure to store only the information related to the random number (not to store other information such as various timer values) (when operating other data stored in the same 1 byte, due to noise etc. (To prevent the information related to random numbers from being rewritten).

<第1ROM・RAM領域における処理>
次に、図9は、図8におけるステップ1100のサブルーチンに係る、設定変更装置制御処理のフローチャートである。まず、ステップ1102で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタをセットする(当該処理の先頭アドレスで初期化する)。次に、ステップ1118で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ割り込みを開始する。次に、ステップ1120で、CPUC100は、第1ROM・RAM領域内のデータを参照し、第1RAM領域内の設定値は正常範囲内(本例では、1〜6)ではないか否かを判定する。ステップ1120でYesの場合、ステップ1122で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値に所定値(例えば、1=遊技者にとって最も不利となる値)をセットし、ステップ1124に移行する。他方、ステップ1120でNoの場合にもステップ1124に移行する。次に、ステップ1124で、CPUC100は、第1ROM・RAM領域内のデータに基づき、エラー表示LED(不図示)に設定変更装置作動中である旨を表示し、設定表示LED(不図示)に設定値を表示し、ステップ1126に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 9 is a flowchart of the setting change device control process according to the subroutine of step 1100 in FIG. First, in step 1102, the CPUC 100 sets a stack pointer based on the data in the first ROM / RAM area (initialized with the start address of the process). Next, in step 1118, the CPUC 100 starts a timer interrupt based on the data in the first ROM / RAM area. Next, in step 1120, the CPUC 100 refers to the data in the first ROM / RAM area, and determines whether or not the set value in the first RAM area is within the normal range (1 to 6 in this example). . In the case of Yes in Step 1120, in Step 1122, the CPUC 100 sets a predetermined value (for example, 1 = value that is most disadvantageous for the player) as a setting value based on the data in the first ROM / RAM area, and Step 1124. Migrate to On the other hand, also in the case of No in step 1120, the process proceeds to step 1124. Next, in step 1124, based on the data in the first ROM / RAM area, the CPUC 100 displays on the error display LED (not shown) that the setting changing device is operating, and sets the setting display LED (not shown). The value is displayed and the process proceeds to step 1126.

次に、ステップ1126で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定/リセットボタンM30がオフからオンに切り替わったか否かを判定する。ステップ1126でYesの場合、ステップ1128で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在の設定値に1を加算し(加算した結果設定値が6を超過した場合には、設定値は1となる)、ステップ1130に移行する。尚、ステップ1126でNoの場合にも、ステップ1130に移行する。次に、ステップ1130で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタートレバーD50がオフからオンに切り替わったか否かを判定する。ステップ1130でYesの場合、ステップ1132で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定キースイッチM20がオンからオフに切り替わったか否かを判定する。ステップ1132でNoの場合には、ステップ1132の処理をループする。他方、ステップ1132でYesの場合、ステップ1134で、CPUC100は、第1ROM・RAM領域内のデータに基づき、エラー表示LED(不図示)に設定変更装置の作動が終了した旨を表示し、設定表示LED(不図示)の設定値の表示を消去し、ステップ1200の遊技進行制御処理に移行する。尚、ステップ1130でNoの場合には、ステップ1126に移行する。   Next, in step 1126, the CPUC 100 determines whether or not the setting / reset button M30 has been switched from OFF to ON based on the data in the first ROM / RAM area. In the case of Yes in step 1126, in step 1128, the CPUC 100 adds 1 to the current set value based on the data in the first ROM / RAM area (if the added set value exceeds 6, the setting is made. The value becomes 1), and the process proceeds to Step 1130. In the case of No in step 1126, the process proceeds to step 1130. Next, in step 1130, the CPUC 100 determines whether or not the start lever D50 has been switched from OFF to ON based on the data in the first ROM / RAM area. In the case of Yes in step 1130, in step 1132, the CPUC 100 determines whether or not the setting key switch M20 has been switched from on to off based on the data in the first ROM / RAM area. If No in step 1132, the process in step 1132 is looped. On the other hand, in the case of Yes in step 1132, in step 1134, based on the data in the first ROM / RAM area, the CPUC 100 displays on the error display LED (not shown) that the operation of the setting change device has ended, and displays the setting display. The display of the set value of the LED (not shown) is erased, and the process proceeds to a game progress control process in step 1200. In the case of No in step 1130, the process proceeds to step 1126.

<第1ROM・RAM領域における処理>
次に、図10は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(1枚目)のフローチャートである。まず、ステップ1202で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタをセットする(当該処理の先頭アドレスで初期化する)。次に、ステップ1204で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームに必要な第1RAM領域内のデータ(例えば、ベット上限数、入賞の有効ライン、等)をセットする。次に、ステップ1206で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該ゲームにおける遊技状態(例えば、通常遊技中、大当り遊技中、再遊技確率変動遊技中、AT遊技中等)をセットする。次に、ステップ1208で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル払出装置Hが遊技メダルで満杯ではないか否かを判定する。具体的には、メダル払出装置Hから溢れ出たメダルを格納するサブタンク(不図示)を備え、サブタンクに設けられた複数の満杯検知センサによる電流の導通/非導通にて判定する(メダルを介して電流が導通した場合には、満杯と判定する)。ステップ1208でYesの場合、ステップ1218に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 10 is a flowchart of the game progress control process (first sheet) according to the subroutine of step 1200 in FIG. First, in step 1202, the CPUC 100 sets a stack pointer based on the data in the first ROM / RAM area (initialized with the start address of the process). Next, in step 1204, the CPUC 100 sets data in the first RAM area necessary for the game (for example, an upper limit number of bets, an effective line for winning, etc.) based on the data in the first ROM / RAM area. Next, in step 1206, the CPUC 100 sets a gaming state in the game (for example, during a normal game, during a big hit game, during a replay probability variation game, during an AT game, etc.) based on the data in the first ROM / RAM area. To do. Next, in step 1208, the CPUC 100 determines whether or not the medal payout device H is full of game medals based on the data in the first ROM / RAM area. Specifically, a subtank (not shown) for storing medals overflowing from the medal payout device H is provided, and a determination is made based on current conduction / non-conduction by a plurality of full detection sensors provided in the subtank (via the medal). If the current is conducted, it is determined to be full). If Yes in step 1208, the process proceeds to step 1218.

他方、ステップ1208でNoの場合、ステップ1210で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル満杯エラーフラグをオンにする(例えば、第1RAM領域のメダル満杯エラーフラグ領域内をオンに相当する値で更新する)。次に、ステップ1212で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル満杯エラーに対応したエラー番号の表示を7セグLED(例えば、貯留表示LED又は獲得枚数LED)で実行する。次に、ステップ1214で、CPUC100は、第1ROM・RAM領域内のデータを参照して、メダル満杯エラーが解除されたか否か(例えば、サブタンクによる電流が非導通、且つ、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1214でYesの場合、ステップ1216で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル満杯エラーフラグをオフにし(例えば、第1RAM領域のメダル満杯エラーフラグ領域内をオフに相当する値で更新し)、ステップ1218に移行する。他方、ステップ1214でNoの場合には、ステップ1212に移行する。次に、ステップ1218で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル投入受付を許可し(再遊技の次ゲームにおいては自動にて投入動作が実行されることとなる)、次の処理(ステップ1220の処理)に移行する。ここで、ステップ1218では、ブロッカD100のオン処理(メダル流路が形成する処理)を行う。具体的には、前回遊技で再遊技役が成立した場合には、現在の貯留数(クレジット)が所定値(本例では、50枚)未満であることを条件として、ブロッカD100のオン処理を実行する。換言すると、現在の貯留数(クレジット)が所定値である場合には、ブロッカD100のオン処理を実行しない。一方、前回遊技で再遊技役が成立しなかった場合には、一律にブロッカD100のオン処理を実行するようにしている。このように構成することにより、再遊技が成立した場合であっても貯留数(クレジット)が所定値に達していない場合には、遊技メダルが投入できるように構成され、通常遊技状態よりも再遊技確率の高いRT状態に滞在しているときや、見た目では再遊技とは分かり辛い再遊技(小役に見せかけた再遊技:無効ライン上にベル−ベル−ベルや、左リールにチェリーが停止した図柄組合せ)が停止した場合であっても、遊技者はリズム良く(違和感なく)遊技を行うことができる。   On the other hand, in the case of No in step 1208, in step 1210, the CPUC 100 turns on the medal full error flag based on the data in the first ROM / RAM area (for example, turns on the medal full error flag area in the first RAM area). Update with a value equivalent to Next, in step 1212, the CPUC 100 displays an error number corresponding to the medal full error with a 7-segment LED (for example, a storage display LED or an acquired number LED) based on the data in the first ROM / RAM area. Next, in step 1214, the CPUC 100 refers to the data in the first ROM / RAM area to determine whether or not the medal full error has been canceled (for example, the current through the sub tank is non-conductive and the setting / reset button M30 is Whether or not it has been pressed). In the case of Yes in step 1214, in step 1216, the CPUC 100 turns off the medal full error flag based on the data in the first ROM / RAM area (for example, this corresponds to turning off the medal full error flag area in the first RAM area). Update with the value), and go to Step 1218. On the other hand, in the case of No in step 1214, the process proceeds to step 1212. Next, in step 1218, the CPUC 100 permits the medal insertion acceptance based on the data in the first ROM / RAM area (the insertion operation is automatically executed in the next game of the replay). The process proceeds to (the process of step 1220). Here, in Step 1218, the blocker D100 is turned on (process formed by the medal flow path). Specifically, when a re-game player is established in the previous game, the blocker D100 is turned on on the condition that the current storage number (credit) is less than a predetermined value (50 in this example). Run. In other words, when the current storage number (credit) is a predetermined value, the ON process of the blocker D100 is not executed. On the other hand, when the re-game combination is not established in the previous game, the blocker D100 is turned on uniformly. With this configuration, even when a re-game is established, if the number of stored credits (credits) has not reached a predetermined value, a game medal can be inserted. Replays that are difficult to understand as replays when you are staying in an RT state with a high game probability (replays that appear to be small roles: bell-bell-bell on the invalid line, or cherry on the left reel stops The player can play the game with a good rhythm (without a sense of incongruity) even when the symbol combination) is stopped.

<第1ROM・RAM領域における処理>
次に、図11は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。まず、ステップ1220で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルがベットされていない、且つ、クレジットが存在していないか否かを判定する。ステップ1220でYesの場合、ステップ1221で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定表示条件を充足している(例えば、扉スイッチD80、設定扉スイッチM10、設定キースイッチM20がすべてオンとなると当該条件を充足する)か否かを判定する。ステップ1221でYesの場合、ステップ1222で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定表示LED(不図示だが、払出数表示装置D190、クレジット数表示装置D200、投入数表示灯D210としてもよい)に設定値を表示し、ステップ1221に移行する。ステップ1220又はステップ1221でNoの場合、ステップ1224で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルの投入及び精算に係る管理を実行する。次に、ステップ1225で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルの受付可能枚数を確認する。次に、ステップ1226で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ブロッカD100がオンか否かを判定する。ステップ1226でYesの場合、ステップ1227で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1投入センサD20s又は第2投入センサD30sがオンであるか否かを判定する(第1投入センサD20s又は第2投入センサD30sがオンとなると、遊技メダルを1枚受け付けたと判定する)。ステップ1227でYesの場合、ステップ1228で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル投入エラー検出処理を呼び出し、ステップ1400に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 11 is a flowchart of the game progress control process (second sheet) according to the subroutine of step 1200 in FIG. First, in step 1220, the CPUC 100 determines whether or not a game medal is bet and no credit exists based on the data in the first ROM / RAM area. In the case of Yes in step 1220, in step 1221 the CPUC 100 satisfies the setting display conditions based on the data in the first ROM / RAM area (for example, the door switch D80, the setting door switch M10, and the setting key switch M20 are It is determined whether or not the condition is satisfied if all are turned on. In the case of Yes in step 1221, in step 1222, the CPUC 100 sets the setting display LED (not shown, but the payout number display device D190, the credit number display device D200, the insertion number display light D210 based on the data in the first ROM / RAM area. The setting value may be displayed on the screen, and the process proceeds to step 1221. In the case of No in Step 1220 or Step 1221, in Step 1224, the CPUC 100 executes management related to game medal insertion and settlement based on the data in the first ROM / RAM area. Next, in step 1225, the CPUC 100 confirms the number of game medals that can be accepted based on the data in the first ROM / RAM area. Next, in step 1226, the CPUC 100 determines whether or not the blocker D100 is on based on the data in the first ROM / RAM area. In the case of Yes in step 1226, in step 1227, the CPUC 100 determines whether or not the first input sensor D20s or the second input sensor D30s is on based on the data in the first ROM / RAM area (first input). When the sensor D20s or the second insertion sensor D30s is turned on, it is determined that one game medal has been received). In the case of Yes in step 1227, in step 1228, the CPUC 100 calls the medal insertion error detection process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1400.

<第2ROM・RAM領域における処理>
次に、ステップ1400で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行する。次に、ステップ1229で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1230に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1400, the CPUC 100 executes medal insertion error detection processing, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1229, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1230.

<第1ROM・RAM領域における処理>
次に、ステップ1230で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1投入センサD20s及び第2投入センサD30sがオフであるか否かを判定する(第1投入センサD20s又は第2投入センサD30sがオンとなった後、第1投入センサD20s及び第2投入センサD30sがオフとなると、受け付けた1枚の遊技メダルが第1投入センサD20s及び第2投入センサD30sを通過したと判定する)。ステップ1230でYesの場合、ステップ1231で、CPUC100は、第1ROM・RAM領域内のデータに基づき、1枚の正常な遊技メダルの投入を受け付けたと判定する。不図示であるが、ステップ1231の後、CPUC100は、第1ROM・RAM領域内のデータに基づき、クレジットが上限数(本例では、50)、且つ、ベット数が最大数(本例では、3)ではないか否かを判定し、Yesと判定した場合にはブロッカD100をオフ(メダル流路を形成しない状態)に制御する。尚、ステップ1230でNoの場合には、ステップ1228に移行し、ステップ1226またはステップ1227でNoの場合には、ステップ1232に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1230, the CPUC 100 determines whether or not the first input sensor D20s and the second input sensor D30s are off based on the data in the first ROM / RAM area (the first input sensor D20s or the first input sensor D20s). When the first insertion sensor D20s and the second insertion sensor D30s are turned off after the second insertion sensor D30s is turned on, the received one game medal passes through the first insertion sensor D20s and the second insertion sensor D30s. judge). In the case of Yes in step 1230, in step 1231, the CPUC 100 determines that one normal game medal has been inserted based on the data in the first ROM / RAM area. Although not shown, after step 1231, the CPUC 100 determines that the credit is the upper limit (50 in this example) and the maximum bet (3 in this example) based on the data in the first ROM / RAM area. ) Is determined, and if the determination is Yes, the blocker D100 is controlled to be off (a state where no medal flow path is formed). In the case of No in step 1230, the process proceeds to step 1228, and in the case of No in step 1226 or step 1227, the process proceeds to step 1232.

次に、ステップ1232で、CPUC100は、第1ROM・RAM領域内のデータに基づき、精算ボタンD60の操作があったか否かを判定する。ステップ1232でYesの場合、ステップ1233で、CPUC100は、第1ROM・RAM領域内のデータに基づき、クレジットの残り枚数又はベットされている遊技メダルが存在するか否かを判定する。ステップ1233でYesの場合、ステップ1234で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグ(第1RAM領域内のフラグであり、ホッパモータH80を駆動している際にオンとするフラグ)をオンにし、遊技メダル1枚の払出を実行する。次に、ステップ1236で、CPUC100は、第1ROM・RAM領域内のデータを参照し、第1払出センサH10s又は第2払出センサH20sがオンであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなると、遊技メダル1枚の払出動作が行われていると判定する)。ステップ1236でYesの場合、ステップ1238で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内のメダル払出エラー検出処理を呼び出し、ステップ1450に移行する。ここで、フローチャート上には明記してはいないが、前回遊技が再遊技役であった場合にはクレジットの残り枚数のみが精算の対象となる。   Next, in Step 1232, the CPUC 100 determines whether or not the settlement button D60 has been operated based on the data in the first ROM / RAM area. In the case of Yes in Step 1232, in Step 1233, the CPUC 100 determines whether or not there is a remaining number of credits or a betting game medal based on the data in the first ROM / RAM area. In the case of Yes in step 1233, in step 1234, the CPUC 100 turns on when a hopper drive flag (a flag in the first RAM area and the hopper motor H80 is driven) based on the data in the first ROM / RAM area. (Flag) is turned on, and one game medal is paid out. Next, in step 1236, the CPUC 100 refers to the data in the first ROM / RAM area and determines whether or not the first payout sensor H10s or the second payout sensor H20s is ON (the first payout sensor H10s or When the second payout sensor H20s is turned on, it is determined that a payout operation for one game medal is being performed). In the case of Yes in step 1236, in step 1238, the CPUC 100 calls a medal payout error detection process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1450. Here, although not explicitly shown in the flowchart, only the remaining number of credits is to be settled when the previous game was a re-game player.

<第2ROM・RAM領域における処理>
次に、ステップ1450で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ1240で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域内の呼び出し元に復帰し、ステップ1247に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1450, the CPUC 100 executes medal payout error detection processing, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1240, the CPUC 100 returns to the caller in the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1247.

<第1ROM・RAM領域における処理>
他方、ステップ1236でNoの場合、ステップ1241で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動後(ステップ1234の処理のタイミング後)から所定時間(例えば、5秒)経過したか否かを判定する。具体的には、ホッパ駆動信号をホッパモータH80に送信している(ホッパモータH80が回転している)のにもかかわらず、メダルが払い出されていないと判定している状況が所定時間継続したか否かを判定する。ステップ1241でYesの場合、ステップ1242で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオンにする(例えば、第1RAM領域のメダル空エラーフラグ領域内をオンに相当する値で更新する)。次に、ステップ1244で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラー表示を実行する。次に、ステップ1245で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1245でYesの場合、ステップ1246で、CPUC100は、第1ROM・RAM領域内のフラグエリア内にある、メダル空エラーフラグをオフにし(例えば、第1RAM領域のメダル空エラーフラグ領域内をオフに相当する値で更新し)、ステップ1247に移行する。他方、ステップ1245でNoの場合、ステップ1244に移行する。
<Processing in the first ROM / RAM area>
On the other hand, in the case of No in step 1236, in step 1241, the CPUC 100 has passed a predetermined time (for example, 5 seconds) after driving the hopper (after the processing timing in step 1234) based on the data in the first ROM / RAM area. It is determined whether or not. Specifically, whether or not a situation in which it is determined that a medal has not been paid out has continued for a predetermined period of time despite transmission of a hopper drive signal to the hopper motor H80 (the hopper motor H80 is rotating). Determine whether or not. In the case of Yes in step 1241, in step 1242, the CPUC 100 turns on the medal empty error flag based on the data in the first ROM / RAM area (for example, equivalent to turning on the medal empty error flag area in the first RAM area). Update with the value you want). Next, in step 1244, the CPUC 100 executes a medal empty error display based on the data in the first ROM / RAM area. Next, in step 1245, the CPUC 100 determines whether or not the medal empty error has been canceled based on the data in the first ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). If YES in step 1245, in step 1246, the CPUC 100 turns off the medal empty error flag in the flag area in the first ROM / RAM area (for example, turns off the medal empty error flag area in the first RAM area). Update to the corresponding value), and the process proceeds to step 1247. On the other hand, if No at step 1245, the process proceeds to step 1244.

<第1ROM・RAM領域における処理>
次に、ステップ1247で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s及び第2払出センサH20sがオフであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなった後、第1払出センサH10s及び第2払出センサH20sがオフとなると、払出動作が行われていた1枚の遊技メダルの払出動作が完了したと判定する)。ステップ1247でYesの場合、ステップ1248で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ1233に移行する。尚、ステップ1241又はステップ1247でNoの場合には、ステップ1236に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1247, the CPUC 100 determines whether or not the first payout sensor H10s and the second payout sensor H20s are off based on the data in the first ROM / RAM area (the first payout sensor H10s or the first payout sensor H10s). When the first payout sensor H10s and the second payout sensor H20s are turned off after the two payout sensors H20s are turned on, it is determined that the payout operation of one game medal on which the payout operation has been performed is completed. In the case of Yes in step 1247, in step 1248, the CPUC 100 turns off the hopper driving flag based on the data in the first ROM / RAM area, and proceeds to step 1233. If step 1241 or step 1247 is No, the process proceeds to step 1236.

他方、ステップ1232又はステップ1233でNoの場合、ステップ1249で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の投入・払出エラー検出処理を呼び出し、ステップ1500に移行する。   On the other hand, in the case of No in step 1232 or step 1233, in step 1249, the CPUC 100 calls the second ROM area loading / dispensing error detection processing based on the data in the first ROM / RAM area, and proceeds to step 1500.

<第2ROM・RAM領域における処理>
次に、ステップ1500で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ1250で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1251に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1500, the CPUC 100 executes a loading / dispensing error detection process, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1250, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1251.

<第1ROM・RAM領域における処理>
次に、ステップ1251で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタートレバーD50が有効であり(例えば、ゲームを開始するための規定枚数の遊技メダルが投入された等)、且つ、当該スタートレバーD50の操作があったか否かを判定する。ステップ1251でYesの場合、ステップ1252で、CPUC100は、第1ROM・RAM領域内のデータに基づき、乱数の取得、ブロッカD100をオフにする処理を実行した後に、第2ROM領域の設定値チェック処理を呼び出し、ステップ1253に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1251, the CPUC 100 determines that the start lever D50 is valid based on the data in the first ROM / RAM area (for example, a prescribed number of game medals for starting the game are inserted), and Then, it is determined whether or not the start lever D50 has been operated. In the case of Yes in step 1251, in step 1252, the CPUC 100 executes a process of obtaining a random number and turning off the blocker D100 based on data in the first ROM / RAM area, and then performing a setting value check process for the second ROM area. Call and go to step 1253.

<第2ROM・RAM領域における処理>
次に、ステップ1253で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の設定値は正常範囲内(本例では、1〜6)であるか否かを判定する。ステップ1253でYesの場合、ステップ1254で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、次の処理(ステップ1257の処理)に移行する。他方、ステップ1253でNoの場合、ステップ1256で、CPUC100は、第2ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
<Processing in the second ROM / RAM area>
Next, in step 1253, the CPUC 100 determines whether or not the set value in the first RAM area is within the normal range (1 to 6 in this example) based on the data in the second ROM / RAM area. In the case of Yes in step 1253, in step 1254, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to the next process (process in step 1257). On the other hand, in the case of No in step 1253, in step 1256, the CPUC 100 sets a setting value error display based on the data in the second ROM / RAM area (for example, sets an error number in the register area). Next, in step 1300, the CPUC 100 executes non-recoverable error processing, which will be described later, based on the data in the second ROM / RAM area.

<第1ROM・RAM領域における処理>
次に、図12は、図9におけるステップ1200のサブルーチンに係る、遊技進行制御処理(3枚目)のフローチャートである。まず、ステップ1257で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内部抽選(当該ゲームにおいて入賞可能となる役を決定するための抽選)を開始する。次に、ステップ1258で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全リール(リールM50)の回転を開始し、ステップ1260に移行する。次に、ステップ1260で、CPUC100は、第1ROM・RAM領域内のデータに基づき、引き込みポイント作成要求(回転している左リールM51、中リールM52、右リールM53の停止位置を決定するために要求され、停止順番や他のリールの停止位置に応じて適宜要求される)があったか否かを判定する。ステップ1260でYesの場合、ステップ1261で、CPUC100は、第1ROM・RAM領域内のデータに基づき、引き込みポイントを作成し、ステップ1262に移行する。他方、ステップ1260でNoの場合にも、ステップ1262に移行する。次に、ステップ1262で、CPUC100は、第1ROM・RAM領域内のデータに基づき、リール停止受付可否チェックを実行する。次に、ステップ1263で、CPUC100は、第1ROM・RAM領域内のデータに基づき、いずれかの停止ボタン(左停止ボタンD41、中停止ボタンD42、右停止ボタンD43)の操作があったか否かを判定する。ステップ1263でYesの場合、ステップ1264で、CPUC100は、第1ROM・RAM領域内のデータに基づき、操作があった停止ボタンに対応したリール(例えば、左停止ボタンD41には左リールM51が対応)の停止位置を決定し、ステップ1265に移行する。他方、ステップ1263でNoの場合にも、ステップ1265に移行する。次に、ステップ1265で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全リール停止チェック処理を実行する。次に、ステップ1266で、CPUC100は、第1ROM・RAM領域内のデータに基づき、すべてのリール(左リールM51、中リールM52、右リールM53)が停止したか否かを判定する。ステップ1266でYesの場合、ステップ1267で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の表示判定チェック処理を呼び出し、ステップ1268に移行する。尚、ステップ1266でNoの場合、ステップ1260に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 12 is a flowchart of the game progress control process (third sheet) according to the subroutine of step 1200 in FIG. First, in step 1257, the CPUC 100 starts an internal lottery (lottery for determining a winning combination in the game) based on the data in the first ROM / RAM area. Next, in step 1258, the CPUC 100 starts rotation of all reels (reel M50) based on the data in the first ROM / RAM area, and proceeds to step 1260. Next, in step 1260, the CPUC 100 makes a pull-in point creation request (request to determine the stop positions of the rotating left reel M51, middle reel M52, and right reel M53 based on the data in the first ROM / RAM area. It is determined whether or not there has been a request as appropriate depending on the stop order and the stop position of the other reels. In the case of Yes in Step 1260, in Step 1261, the CPUC 100 creates a pull-in point based on the data in the first ROM / RAM area, and proceeds to Step 1262. On the other hand, also in the case of No in step 1260, the process proceeds to step 1262. Next, in step 1262, the CPUC 100 executes a reel stop acceptability check based on the data in the first ROM / RAM area. Next, in step 1263, the CPUC 100 determines whether or not any stop button (left stop button D41, middle stop button D42, right stop button D43) has been operated based on the data in the first ROM / RAM area. To do. In the case of Yes in step 1263, in step 1264, the CPUC 100, based on the data in the first ROM / RAM area, corresponds to the operated stop button (for example, the left stop button D41 corresponds to the left reel M51). Is determined, and the process proceeds to step 1265. On the other hand, also in the case of No in step 1263, the process proceeds to step 1265. Next, in step 1265, the CPUC 100 executes an all reel stop check process based on the data in the first ROM / RAM area. Next, in step 1266, the CPUC 100 determines whether or not all the reels (the left reel M51, the middle reel M52, and the right reel M53) are stopped based on the data in the first ROM / RAM area. In the case of Yes in step 1266, in step 1267, the CPUC 100 calls the display determination check process for the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1268. If No in step 1266, the process proceeds to step 1260.

<第2ROM・RAM領域における処理>
次に、ステップ1268で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM内の図柄停止位置データと、内部成立役停止可能位置データとを比較する。次に、ステップ1269で、CPUC100は、第2ROM・RAM領域内のデータを参照し、表示された図柄の組み合わせが正常であるか否かを判定する(内部抽選によって決定された入賞可能となる役と一致していなければ異常であると判定される)。ステップ1269でYesの場合、ステップ1500で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行する。次に、ステップ1270で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1274に移行する。他方、ステップ1269でNoの場合、ステップ1272で、CPUC100は、第2ROM・RAM領域内のデータに基づき、表示判定エラー表示をセットする(例えば、レジスタ領域内にセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理を実行する。
<Processing in the second ROM / RAM area>
Next, in step 1268, the CPUC 100 compares the symbol stop position data in the first RAM with the internal established combination stop position data based on the data in the second ROM / RAM area. Next, in step 1269, the CPUC 100 refers to the data in the second ROM / RAM area and determines whether or not the displayed symbol combination is normal (the winning combination determined by the internal lottery is determined). Is determined to be abnormal). In the case of Yes in step 1269, in step 1500, the CPUC 100 executes a loading / dispensing error detection process, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1270, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1274. On the other hand, in the case of No in step 1269, in step 1272, the CPUC 100 sets a display determination error display based on the data in the second ROM / RAM area (for example, in the register area). Next, in step 1300, the CPUC 100 executes non-recoverable error processing, which will be described later, based on the data in the second ROM / RAM area.

<第1ROM・RAM領域における処理>
次に、ステップ1274で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入賞による遊技メダルの払出処理を実行する。次に、ステップ1275で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技メダルを払い出す入賞があったか否かを判定する{入賞によって獲得した遊技メダルが、クレジットの最大数(本例では、50)を超過した場合に、遊技メダルの払出が実行される}。ステップ1275でYesの場合、ステップ1276で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグ(第1RAM領域内のフラグであり、ホッパモータH80を駆動している際にオンとするフラグ)をオンにし、遊技メダル1枚の払出を実行する。次に、ステップ1277で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s又は第2払出センサH20sがオンであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなると、遊技メダル1枚の払出動作が行われていると判定する)。ステップ1277でYesの場合、ステップ1278で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域内のメダル払出エラー検出処理を呼び出し、ステップ1450に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1274, the CPUC 100 executes a game medal payout process by winning based on the data in the first ROM / RAM area. Next, in step 1275, the CPUC 100 determines whether or not there has been a prize for paying out a game medal based on the data in the first ROM / RAM area {the game medal acquired by winning the prize is the maximum number of credits (this example) Then, when 50) is exceeded, game medals are paid out}. In the case of Yes in step 1275, in step 1276, based on the data in the first ROM / RAM area, the CPUC 100 turns on when the hopper driving flag (the flag in the first RAM area and the hopper motor H80 is being driven). (Flag) is turned on, and one game medal is paid out. Next, in step 1277, the CPUC 100 determines whether or not the first payout sensor H10s or the second payout sensor H20s is on based on the data in the first ROM / RAM area (the first payout sensor H10s or the first payout sensor H10s). When the two payout sensor H20s is turned on, it is determined that a payout operation for one game medal is being performed). In the case of Yes in step 1277, in step 1278, the CPUC 100 calls a medal payout error detection process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1450.

<第2ROM・RAM領域における処理>
次に、ステップ1450で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行する。次に、ステップ1284で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域内に呼び出し元に復帰し、ステップ1286に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1450, the CPUC 100 executes medal payout error detection processing, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1284, the CPUC 100 returns to the caller in the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1286.

<第1ROM・RAM領域における処理>
他方、ステップ1277でNoの場合、ステップ1279で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動後(ステップ1276の処理のタイミング後)から所定時間(例えば、5秒)経過したか否かを判定する。ステップ1279でYesの場合、ステップ1280で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオンにする(例えば、第1RAM領域のメダル空エラーフラグ領域内をオンに相当する値で更新する)。次に、ステップ1281で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラー表示を7セグLEDで実行する。次に、ステップ1282で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1282でYesの場合、ステップ1283で、CPUC100は、第1ROM・RAM領域内のデータに基づき、メダル空エラーフラグをオフにし(例えば、第1RAM領域のメダル空エラーフラグ領域内をオフに相当する値で更新し)、ステップ1286に移行する。他方、ステップ1282でNoの場合、ステップ1281に移行する。
<Processing in the first ROM / RAM area>
On the other hand, in the case of No in step 1277, in step 1279, based on the data in the first ROM / RAM area, the CPUC 100 has passed a predetermined time (for example, 5 seconds) after driving the hopper (after the processing timing of step 1276). It is determined whether or not. In the case of Yes in step 1279, in step 1280, the CPUC 100 turns on the medal empty error flag based on the data in the first ROM / RAM area (for example, equivalent to turning on the medal empty error flag area in the first RAM area). Update with the value you want). Next, in step 1281, the CPUC 100 executes a medal empty error display with a 7-segment LED based on the data in the first ROM / RAM area. Next, in step 1282, the CPUC 100 determines whether or not the medal empty error has been canceled based on the data in the first ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1282, in step 1283, the CPUC 100 turns off the medal empty error flag based on the data in the first ROM / RAM area (for example, this corresponds to turning off the medal empty error flag area in the first RAM area). Update with the value) and go to Step 1286. On the other hand, if No in step 1282, the process proceeds to step 1281.

<第1ROM・RAM領域における処理>
次に、ステップ1286で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1払出センサH10s及び第2払出センサH20sがオフであるか否かを判定する(第1払出センサH10s又は第2払出センサH20sがオンとなった後、第1払出センサH10s及び第2払出センサH20sがオフとなると、払出動作が行われていた1枚の遊技メダルの払出動作が完了したと判定する)。ステップ1286でYesの場合、ステップ1288で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ホッパ駆動フラグをオフにし、ステップ1290に移行する。尚、ステップ1279又はステップ1286でNoの場合には、ステップ1277に移行する。次に、ステップ1290で、CPUC100は、第1ROM・RAM領域内のデータに基づき、当該入賞(ステップ1275でYesとなった入賞)に対応した払出が完了したか否かを判定する。ステップ1290でYesの場合、ステップ1292で、CPUC100は、第1ROM・RAM領域内のデータに基づき、遊技終了処理(例えば、ベット数のクリア、遊技状態の移行処理等)を実行し、次の処理(ステップ1202の処理)に移行する。尚、ステップ1286でNoの場合には、ステップ1277に移行し、ステップ1275でNoの場合には、ステップ1292に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1286, the CPUC 100 determines whether or not the first payout sensor H10s and the second payout sensor H20s are off based on the data in the first ROM / RAM area (the first payout sensor H10s or the first payout sensor H10s). When the first payout sensor H10s and the second payout sensor H20s are turned off after the two payout sensors H20s are turned on, it is determined that the payout operation of one game medal on which the payout operation has been performed is completed. In the case of Yes in Step 1286, in Step 1288, the CPUC 100 turns off the hopper driving flag based on the data in the first ROM / RAM area, and proceeds to Step 1290. If No in step 1279 or step 1286, the process proceeds to step 1277. Next, in step 1290, the CPUC 100 determines whether or not the payout corresponding to the winning (the winning that becomes Yes in step 1275) is completed based on the data in the first ROM / RAM area. In the case of Yes in step 1290, in step 1292, the CPUC 100 executes game end processing (for example, clearing the number of bets, game state transition processing, etc.) based on the data in the first ROM / RAM area, and the next processing The process proceeds to (Step 1202). If No in step 1286, the process proceeds to step 1277. If No in step 1275, the process proceeds to step 1292.

<第1ROM・RAM領域における処理>
次に、図13は、図8におけるステップ1300の(及び他のフローチャートにおいて呼び出された)サブルーチンに係る、復帰不可能エラー処理のフローチャートである。まず、ステップ1302で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込みを禁止する(以降は、後述するタイマ割り込み時処理に係るフローチャートが実行されない)。次に、ステップ1304で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力ポートアドレス及び出力ポート数をセットする。次に、ステップ1306で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力ポート(本例では、0〜6であり、各種LEDへの表示出力や各種モータへの駆動出力)をオフにする。次に、ステップ1308で、CPUC100は、第1ROM・RAM領域内のデータに基づき、次のポート出力アドレスをセットする(この繰り返しにより、各種LEDへの表示出力や各種モータへの駆動出力が順次停止される)。次に、ステップ1310で、CPUC100は、第1ROM・RAM領域内のデータに基づき、各出力ポートへの出力が終了したか否かを判定する。ステップ1310でYesの場合には、ステップ1312で、CPUC100は、第1ROM・RAM領域内のデータに基づき、セットされているエラー表示を実行し(本処理を実行する際には何らかのエラーが発生している)、当該処理の実行を繰り返し、電源電圧が低下することでリセット信号が入力されて終了する。(即ち、無限ループに突入するので、復帰を促す一切の操作を受け付けない)。尚、ステップ1310でNoの場合には、ステップ1306に移行する。尚、ステップ1306〜ステップ1310の処理は、LED・モータへの出力をクリアする処理である(但し、外部出力信号はクリアしないので、エラーに関する情報やエラー発生時における遊技進行状況等をホールコンピュータ側へ出力することは可能である)。
<Processing in the first ROM / RAM area>
Next, FIG. 13 is a flowchart of non-recoverable error processing relating to the subroutine of step 1300 in FIG. 8 (and called in other flowcharts). First, in step 1302, the CPUC 100 prohibits an interrupt based on the data in the first ROM / RAM area (hereinafter, a flowchart relating to a timer interrupt process described later is not executed). Next, in step 1304, the CPUC 100 sets the output port address and the number of output ports based on the data in the first ROM / RAM area. Next, in step 1306, the CPUC 100 turns off the output port (0 to 6 in this example, display output to various LEDs and drive output to various motors) based on the data in the first ROM / RAM area. To. Next, in step 1308, the CPUC 100 sets the next port output address based on the data in the first ROM / RAM area (by repeating this, the display output to various LEDs and the drive output to various motors are sequentially stopped. ) Next, in step 1310, the CPUC 100 determines whether or not the output to each output port is completed based on the data in the first ROM / RAM area. In the case of Yes in step 1310, in step 1312, the CPUC 100 executes the set error display based on the data in the first ROM / RAM area (some error occurs when executing this process). If the power supply voltage is lowered, the reset signal is input and the process ends. (That is, since an infinite loop is entered, any operation that prompts a return is not accepted). In the case of No in step 1310, the process proceeds to step 1306. The processing from step 1306 to step 1310 is processing for clearing the output to the LED / motor (however, since the external output signal is not cleared, information about the error, game progress status at the time of the error, etc. are displayed on the hall computer side. It is possible to output to

<第2ROM・RAM領域における処理>
次に、図14は、図11におけるステップ1400のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。まず、ステップ1402で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグ(ステップ1706でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1402でYesの場合、ステップ1404で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラー(投入された遊技メダルが逆流したことによるエラーであり、例えば、第1投入センサD20sオフ且つ第2投入センサD30sオン→第1投入センサD20sオン且つ第2投入センサD30sオンとなった場合にエラーとなる)表示を実行する。次に、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダルエラー逆流エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1406でYesの場合、ステップ1408で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグをオフにし、次の処理(ステップ1229の処理)に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 14 is a flowchart of medal insertion error detection processing according to the subroutine of step 1400 in FIG. First, in step 1402, the CPUC 100 sets the inserted medal backflow error flag (a flag turned on in step 1706, in the present embodiment, a flag in the second RAM area) based on the data in the second ROM / RAM area. Determine whether it is on. In the case of Yes in step 1402, in step 1404, the CPUC 100 determines that the inserted medal backflow error (an error caused by the backflow of the inserted game medal is based on the data in the second ROM / RAM area. D20s off and the second throwing sensor D30s on → an error occurs when the first throwing sensor D20s is on and the second throwing sensor D30s is on). Next, the CPUC 100 determines whether or not the inserted medal error backflow error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1406, in step 1408, the CPUC 100 turns off the inserted medal backflow error flag based on the data in the second ROM / RAM area, and proceeds to the next processing (processing in step 1229).

他方、ステップ1402でNoの場合、ステップ1410で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル滞留エラーフラグ(ステップ1710でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1410でYesの場合、ステップ1412で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル滞留エラー(投入された遊技メダルが滞留したことによるエラーであり、例えば、第1投入センサD20sオン且つ第2投入センサD30sオンである状態が所定時間継続した場合にエラーとなる)表示を実行する。次に、ステップ1414で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル滞留エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1414でYesの場合、ステップ1416で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル滞留エラーフラグをオフにし、次の処理(ステップ1229の処理)に移行する。   On the other hand, in the case of No in step 1402, in step 1410, based on the data in the second ROM / RAM area, the CPUC 100 is an inserted medal retention error flag (turned on in step 1710. In this embodiment, It is determined whether the flag in the 2RAM area is ON. In the case of Yes in step 1410, in step 1412, the CPUC 100 determines that the inserted medal retention error (the error caused by the inserted game medal remaining) based on the data in the second ROM / RAM area, for example, the first insertion sensor D20s on and the second input sensor D30s on is an error when the state continues for a predetermined time). Next, in step 1414, the CPUC 100 determines whether or not the inserted medal staying error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1414, in step 1416, the CPUC 100 turns off the inserted medal staying error flag based on the data in the second ROM / RAM area, and proceeds to the next processing (processing in step 1229).

他方、ステップ1410でNoの場合、ステップ1418で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入枚数エラーフラグ(ステップ1716でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1418でYesの場合、ステップ1420で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入枚数エラー(投入された遊技メダルの枚数と正常通過した遊技メダルの枚数とが一致しないことによるエラーであり、例えば、投入受付センサD10sが検知した遊技メダルの枚数と第2投入センサD30sが検知した遊技メダルの枚数とが一致しない場合又は所定の許容範囲外となった場合にエラーとなる)表示を実行する。次に、ステップ1422で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入枚数エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1422でYesの場合、ステップ1424で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入枚数エラーフラグをオフにし、次の処理(ステップ1229の処理)に移行する。   On the other hand, in the case of No in step 1410, in step 1418, the CPUC 100 is based on the data in the second ROM / RAM area, and is an insertion number error flag (a flag that is turned on in step 1716. In this embodiment, the second RAM It is determined whether or not the flag in the area is on. In the case of Yes in step 1418, in step 1420, the CPUC 100, based on the data in the second ROM / RAM area, causes an inserted number error (because the number of inserted game medals and the number of game medals successfully passed do not match). (For example, an error occurs when the number of game medals detected by the insertion acceptance sensor D10s and the number of game medals detected by the second insertion sensor D30s do not match or are outside a predetermined allowable range.) Execute the display. Next, in step 1422, the CPUC 100 determines whether or not the insertion number error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1422, in step 1424, the CPUC 100 turns off the insertion number error flag based on the data in the second ROM / RAM area, and proceeds to the next processing (processing in step 1229).

<第2ROM・RAM領域における処理>
次に、図15は、図11及び図12におけるステップ1450のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。まず、ステップ1452で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグ(ステップ1756でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1452でYesの場合、ステップ1456で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラー(払い出された遊技メダルが滞留したことによるエラーであり、例えば、第1払出センサH10sオン且つ第2払出センサH20sオンである状態が所定時間継続した場合にエラーとなる)表示を実行する。次に、ステップ1458で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1458でYesの場合、ステップ1460で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグをオフにし、次の処理(ステップ1240又はステップ1284の処理)に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 15 is a flowchart of medal payout error detection processing according to the subroutine of step 1450 in FIGS. 11 and 12. First, in step 1452, the CPUC 100 sets a payout medal retention error flag (a flag turned on in step 1756, in the present embodiment, a flag in the second RAM area) based on the data in the second ROM / RAM area. Determine whether it is on. In the case of Yes in step 1452, in step 1456, the CPUC 100 is based on the data in the second ROM / RAM area, and is a payout medal retention error (an error caused by the payout game medal remaining, for example, the first payout Display is performed when the sensor H10s is on and the second payout sensor H20s is on for a predetermined time. Next, in step 1458, the CPUC 100 determines whether or not the payout medal retention error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1458, in step 1460, the CPUC 100 turns off the payout medal retention error flag based on the data in the second ROM / RAM area, and proceeds to the next process (the process of step 1240 or step 1284).

<第2ROM・RAM領域における処理>
次に、図16は、図11及び図12におけるステップ1500のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。まず、ステップ1502で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグ(ステップ1806でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1502でYesの場合、ステップ1504で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラー(遊技メダルが投入されないはずのタイミングにて遊技メダルの投入を検出したことによるエラー)表示を実行する。次に、ステップ1506で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1506でYesの場合、ステップ1508で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグをオフにし、ステップ1510に移行する。尚、ステップ1502でNoの場合にも、ステップ1510に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 16 is a flowchart of the input / withdrawal error detection process according to the subroutine of step 1500 in FIGS. 11 and 12. First, in step 1502, the CPUC 100 turns on an abnormal insertion error flag (a flag that is turned on in step 1806, in the present embodiment, a flag in the second RAM area) based on the data in the second ROM / RAM area. It is determined whether or not. In the case of Yes in step 1502, in step 1504, the CPUC 100 detects an abnormal insertion error (error due to detection of insertion of a game medal at a timing when a game medal should not be inserted) based on the data in the second ROM / RAM area. Execute the display. Next, in step 1506, the CPUC 100 determines whether or not the abnormal insertion error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1506, in step 1508, the CPUC 100 turns off the abnormal insertion error flag based on the data in the second ROM / RAM area, and proceeds to step 1510. In the case of No in step 1502, the process proceeds to step 1510.

次に、ステップ1510で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常払出エラーフラグ(ステップ1816でオンとなるフラグであり、本実施形態においては、第2RAM領域内のフラグ)がオンであるか否かを判定する。ステップ1510でYesの場合、ステップ1514で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常払出エラー(遊技メダルが払い出されないはずのタイミングにて遊技メダルの払出を検出したことによるエラー)表示を実行する。次に、ステップ1516で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常払出エラーが解除されたか否か(例えば、設定/リセットボタンM30が押下されたか否か)を判定する。ステップ1516でYesの場合、ステップ1518で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常払出エラーフラグをオフにし、次の処理(ステップ1250又はステップ1270の処理)に移行する。尚、ステップ1510でNoの場合にも、次の処理(ステップ1250又はステップ1270の処理)に移行する。   Next, in step 1510, the CPUC 100 sets an abnormal payout error flag (a flag that is turned on in step 1816, in the present embodiment, a flag in the second RAM area) based on the data in the second ROM / RAM area. Determine whether it is on. In the case of Yes in step 1510, in step 1514, the CPUC 100 detects an abnormal payout error (error due to detection of a game medal payout at a timing at which a game medal should not be paid out) based on the data in the second ROM / RAM area. ) Execute the display. Next, in step 1516, the CPUC 100 determines whether or not the abnormal payout error has been canceled based on the data in the second ROM / RAM area (for example, whether or not the set / reset button M30 has been pressed). In the case of Yes in step 1516, in step 1518, the CPUC 100 turns off the abnormal payout error flag based on the data in the second ROM / RAM area, and proceeds to the next process (the process of step 1250 or step 1270). Even in the case of No in step 1510, the process proceeds to the next process (the process in step 1250 or step 1270).

次に、図17は、本実施形態におけるステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。当該サブルーチンの処理は、ステップ1054又はステップ1118の処理にて、タイマ割り込みが開始された場合に実行開始され、以降、所定時間(本例では、Tとしているが、例えば、2ms程度の時間が設定される)を周期として定期的に実行されるよう構成されている。   Next, FIG. 17 is a flowchart of processing at the time of timer interruption according to the subroutine of step 1600 in the present embodiment. The processing of the subroutine is started when a timer interrupt is started in the processing of step 1054 or step 1118, and thereafter, a predetermined time (in this example, T is set, but a time of about 2 ms is set, for example) To be periodically executed.

<第1ROM・RAM領域における処理>
まず、ステップ1602で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み開始時の処理(例えば、CPUC100内のレジスタで保持されているデータの退避、電源断検知信号の入力ポートチェック等)を実行する。次に、ステップ1604で、CPUC100は、第1ROM・RAM領域内のデータに基づき、現在(今回の割り込み処理にて)電源断を検知していないか否かを判定する。ステップ1604でNoの場合、ステップ1900で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、電源断時処理を実行する。他方、ステップ1604でYesの場合、ステップ1606で、CPUC100は、第1ROM・RAM領域内のデータに基づき、タイマ計測(ソフトウエアで管理する各種タイマの更新処理)を開始する。次に、ステップ1608で、CPUC100は、第1ROM・RAM領域内のデータに基づき、入力ポートデータを生成して、当該データを記憶する(第1RAM領域内の各入力ポートデータの格納領域を更新する)。ここで、入力ポートデータとは、精算ボタンD60、スタートレバーD50、停止ボタンD40、前扉スイッチD80、設定扉スイッチM10、設定キースイッチM20、設定/リセットボタンM30、電源断検知信号、投入受付センサD10s、第1投入センサD20s、第2投入センサD30s、第1払出センサH10s、第2払出センサH20s、等の検出に係る情報である(即ち、これらの操作部材での操作有無やセンサ検知状態が、割り込み間隔Tでサンプリングされる)。
<Processing in the first ROM / RAM area>
First, in step 1602, the CPUC 100 performs processing at the start of an interrupt (for example, saving of data held in a register in the CPUC100, input port check of a power-off detection signal, etc.) based on data in the first ROM / RAM area. ). Next, in step 1604, the CPUC 100 determines whether or not a power-off is currently detected (in the current interrupt process) based on the data in the first ROM / RAM area. In the case of No in step 1604, in step 1900, the CPUC 100 executes a power-off process, which will be described later, based on the data in the first ROM / RAM area. On the other hand, in the case of Yes in step 1604, in step 1606, the CPUC 100 starts timer measurement (update processing of various timers managed by software) based on the data in the first ROM / RAM area. Next, in step 1608, the CPUC 100 generates input port data based on the data in the first ROM / RAM area, and stores the data (updates the storage area of each input port data in the first RAM area). ). Here, the input port data includes the settlement button D60, the start lever D50, the stop button D40, the front door switch D80, the setting door switch M10, the setting key switch M20, the setting / reset button M30, the power-off detection signal, and the input acceptance sensor. D10s, the first input sensor D20s, the second input sensor D30s, the first payout sensor H10s, the second payout sensor H20s, and the like (that is, whether or not there is an operation on these operation members and the sensor detection state is information). , Sampled at interrupt interval T).

次に、ステップ1610で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内の入力ポートデータを参照し、各入力ポートデータのサンプリング結果に応じて、前扉スイッチフラグ、設定扉スイッチフラグ、設定キースイッチフラグのオン・オフを切り替える(例えば、前扉スイッチD80のスイッチ状態が複数回のサンプリングに亘って連続してオンである場合に、前扉スイッチフラグをオンとすることで、ノイズの影響を受けることなく前扉DUが開状態であることを検出することもできる)。次に、ステップ1612で、CPUC100は、第1ROM・RAM領域内のデータに基づき、全リール(左リールM51、中リールM52、右リールM53)の回胴駆動制御処理(リールM50の駆動の制御に係る処理)を実行する。次に、ステップ1614で、CPUC100は、第1ROM・RAM領域内のデータに基づき、出力データを出力ポートに出力する。ここで、出力データとは、リールM50、ブロッカD100、等を駆動するためのデータである。ステップ1616で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のエラーチェック処理を呼び出し、ステップ1700に移行する。   Next, in step 1610, the CPUC 100 refers to the input port data in the first RAM area based on the data in the first ROM / RAM area, and sets the front door switch flag and the setting according to the sampling result of each input port data. Switch on / off of door switch flag and setting key switch flag (for example, turn on the front door switch flag when the switch state of the front door switch D80 is continuously on over a plurality of samplings) Thus, it can be detected that the front door DU is open without being affected by noise). Next, in step 1612, the CPUC 100 performs rotation drive control processing (reel M50 drive control) for all reels (left reel M51, middle reel M52, right reel M53) based on data in the first ROM / RAM area. This processing is executed. Next, in step 1614, the CPUC 100 outputs the output data to the output port based on the data in the first ROM / RAM area. Here, the output data is data for driving the reel M50, the blocker D100, and the like. In step 1616, the CPUC 100 calls an error check process for the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1700.

<第2ROM・RAM領域における処理>
次に、ステップ1700で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル投入チェック処理を実行する。次に、ステップ1750で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、メダル払出チェックを実行する。次に、ステップ1800で、CPUC100は、第2ROM・RAM領域内のデータに基づき、後述する、投入・払出エラーチェック処理を実行する。次に、ステップ1618で、CPUC100は、第2ROM・RAM領域内のデータに基づき、すべてのエラーフラグがオフ(投入メダル逆流フラグ、投入枚数エラーフラグ、メダル滞留エラーフラグ、投入異常エラーフラグ、払出異常エラーフラグ、払出メダル滞留エラーフラグ、扉スイッチフラグ、等のエラーに係るフラグが全てオフ)であるか否かを判定する(但し、本実施形態では、扉スイッチフラグに関しては、第1RAM領域内で格納されているため、第1RAM領域を参照して判定する)。ステップ1618でYesの場合、ステップ1620で、CPUC100は、第2ROM・RAM領域内のデータに基づき、エラー未検出コマンド(サブ側へのコマンドであり、エラーが検出されていない旨に係るコマンド)をセットし(例えば、レジスタ領域内にセットし)、ステップ1624に移行する。他方、ステップ1618でNoの場合、ステップ1622で、CPUC100は、第2ROM・RAM領域内のデータに基づき、エラー検出コマンド(サブ側へのコマンドであり、エラーが検出されている旨に係るコマンド)をセットし(例えば、レジスタ領域内にセットし)、ステップ1624に移行する。尚、ステップ1622においては、オンとなっているエラーフラグに対応したエラー(現在発生しているエラー)に係る情報がサブ側に送信されるよう構成されている。また、エラー未検出コマンドはエラーが発生していた状態からエラーが解除された場合にのみ(フラグがオフになったと判定された場合にのみ)セットしても良いし、エラー未検出のときには当該情報のセット処理を実行しなくても良い(S1620が無くても良い)。更に、エラー検出コマンドはエラーが発生していない状態からエラーが発生した場合にのみセット処理を実行しても良いし、第1のエラー(例えば、投入メダル滞留エラー)が発生している状態から第2のエラー(例えば、払出メダル滞留エラー)のようにエラーの種類が変わった場合にセット処理を実行しても良い。次に、ステップ1624で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1626に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1700, the CPUC 100 executes a medal insertion check process, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1750, the CPUC 100 executes a medal payout check, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1800, the CPUC 100 executes an input / withdrawal error check process, which will be described later, based on the data in the second ROM / RAM area. Next, in step 1618, the CPUC 100 turns off all error flags based on the data in the second ROM / RAM area (inserted medal backflow flag, inserted number error flag, medal retention error flag, inserted abnormal error flag, payout error). It is determined whether the error flag, the payout medal retention error flag, the door switch flag, and the like are all off (however, in the present embodiment, the door switch flag is within the first RAM area). Since it is stored, it is determined with reference to the first RAM area). In the case of Yes in step 1618, in step 1620, based on the data in the second ROM / RAM area, the CPUC 100 issues an error non-detection command (a command to the sub-side indicating that no error has been detected). Set (for example, set in the register area), and go to Step 1624. On the other hand, in the case of No in step 1618, in step 1622, the CPUC 100 determines an error detection command (a command to the sub side and an error is detected) based on the data in the second ROM / RAM area. Is set (for example, in the register area), and the process proceeds to Step 1624. In step 1622, information related to an error (currently occurring error) corresponding to the error flag that is turned on is transmitted to the sub-side. The error not detected command may be set only when the error is released from the state where the error has occurred (only when it is determined that the flag is turned off). The information setting process may not be executed (S1620 may not be provided). Further, the error detection command may execute the set process only when an error occurs from a state where no error has occurred, or from the state where a first error (for example, a inserted medal retention error) has occurred. The set process may be executed when the type of error has changed, such as a second error (for example, a payout medal retention error). Next, in step 1624, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1626.

<第1ROM・RAM領域における処理>
次に、ステップ1626で、CPUC100は、第1ROM・RAM領域内のデータに基づき、制御コマンド(サブ側のコマンド)を送信する(例えば、ステップ1620やステップ1622でレジスタ領域内にセットされている場合には、そのセットされた制御コマンドを引き継ぐこととなる)。次に、ステップ1628で、CPUC100は、第1ROM・RAM領域内のデータに基づき、外部信号(回胴式遊技機Pから外部のホールコンピュータ等へ情報伝達するための信号)を出力する。尚、当該外部信号にて出力されるエラーに係る情報としては、ドア開放エラー、投入異常エラー、払出異常エラー、設定扉開放エラー(不図示)、投入受付センサ滞留エラー(不図示)、等が出力される。尚、ドア開放エラーは、前扉DUが開放されドアスイッチフラグがオンとなった場合にエラーとなるよう構成されており、設定扉開放エラーは設定扉が開放され設定扉スイッチフラグがオンとなった場合にエラーとなるよう構成されており、投入受付センサ滞留エラーは投入受付センサが遊技メダルの滞留を検出した場合にエラーとなるよう構成されている。次に、ステップ1630で、CPUC100は、第1ROM・RAM領域内のデータに基づき、LED(7セグLEDランプ、等)の出力データ(例えば、複数の7セグLEDユニットのうち、所定の7セグLEDユニットを点灯させ、7セグの所定のセグメントを点灯させる)を出力する(所謂、ダイナミック点灯)。次に、ステップ1632で、CPUC100は、第1ROM・RAM領域内のデータに基づき、LEDの点灯態様(例えば、LEDの点灯色を変更)を実行する。尚、ステップ1632は実行されなくても良い。次に、ステップ1634で、CPUC100は、第1ROM・RAM領域内のデータに基づき、ソフト乱数管理処理(ソフトウエアで管理する乱数値の更新処理等)を実行する。次に、ステップ1636で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の乱数チェック処理を呼び出し、ステップ1638に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1626, the CPUC 100 transmits a control command (sub-side command) based on the data in the first ROM / RAM area (for example, when it is set in the register area in step 1620 or step 1622). Will take over the set control command). Next, in step 1628, the CPUC 100 outputs an external signal (a signal for transmitting information from the spinning machine P to an external hall computer or the like) based on the data in the first ROM / RAM area. The information related to the error output by the external signal includes a door opening error, a closing abnormality error, a dispensing abnormality error, a setting door opening error (not shown), a closing reception sensor retention error (not shown), etc. Is output. The door opening error is configured to be an error when the front door DU is opened and the door switch flag is turned on, and the setting door opening error is set and the setting door switch flag is turned on. If the insertion acceptance sensor detects that a game medal has accumulated, an error will be generated. Next, in step 1630, the CPUC 100 outputs LED (7-segment LED lamp, etc.) output data (for example, a predetermined 7-segment LED among a plurality of 7-segment LED units) based on the data in the first ROM / RAM area. The unit is turned on and a predetermined segment of 7 segments is turned on) (so-called dynamic lighting). Next, in Step 1632, the CPUC 100 executes the LED lighting mode (for example, changing the LED lighting color) based on the data in the first ROM / RAM area. Note that step 1632 need not be executed. Next, in step 1634, the CPUC 100 executes a soft random number management process (such as an update process for random values managed by software) based on the data in the first ROM / RAM area. Next, in step 1636, the CPUC 100 calls a random number check process in the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1638.

<第2ROM・RAM領域における処理>
次に、ステップ1638で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内部情報レジスタデータを取得する(内部情報レジスタには、乱数発生回路に異常が出ると異常フラグ用ビットが立つ領域が存在している)。次に、ステップ1640で、CPUC100は、第2ROM・RAM領域内のデータに基づき、乱数更新用クロックの周波数は正常であるか否か(当該周波数異常を示す異常フラグ用ビットが立っていないか否か)を判定する。具体的には、乱数更新用クロックの周波数が所定値を下回った場合に異常用フラグビットが立つ。ステップ1640でYesの場合、ステップ1642で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内蔵乱数の更新状態は正常であるか否か(当該更新状態異常を示す異常フラグ用ビットが立っていないか否か)を判定する。ステップ1642でYesの場合、ステップ1644で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰する。他方、ステップ1640又はステップ1642でNoの場合には、ステップ1646で、CPUC100は、第2ROM・RAM領域内のデータに基づき、内蔵乱数エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300で、CPUC100は、第2ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理を実行する。
<Processing in the second ROM / RAM area>
Next, in step 1638, the CPUC 100 obtains internal information register data based on the data in the second ROM / RAM area (in the internal information register, an area where an abnormality flag bit is set when an abnormality occurs in the random number generation circuit. Exist). Next, in step 1640, the CPUC 100 determines whether the frequency of the random number update clock is normal based on the data in the second ROM / RAM area (whether the abnormal flag bit indicating the frequency abnormality is not set). )). More specifically, the abnormality flag bit is set when the frequency of the random number update clock falls below a predetermined value. In the case of Yes in step 1640, in step 1642, the CPUC 100 determines whether the update state of the internal random number is normal based on the data in the second ROM / RAM area (the abnormal flag bit indicating the update state abnormality is set). Whether or not). In the case of Yes in step 1642, in step 1644, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area. On the other hand, in the case of No in step 1640 or step 1642, in step 1646, the CPUC 100 sets a built-in random number error display based on the data in the second ROM / RAM area (for example, sets an error number in the register area). To do). Next, in step 1300, the CPUC 100 executes the above-described non-recoverable error processing based on the data in the second ROM / RAM area.

<第1ROM・RAM領域における処理>
次に、ステップ1648で、CPUC100は、第1ROM・RAM領域内のデータに基づき、割り込み終了処理を実行し、次の処理(ステップ1602の処理)に移行する。
<Processing in the first ROM / RAM area>
Next, in step 1648, the CPUC 100 executes interrupt termination processing based on the data in the first ROM / RAM area, and proceeds to the next processing (processing in step 1602).

<第2ROM・RAM領域における処理>
次に、図18は、図17におけるステップ1700のサブルーチンに係る、メダル投入チェック処理のフローチャートである。まず、ステップ1702で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1投入センサD20sがオンであるか否か(検出しているか否か)を判定する(但し、第1投入センサD20sの入力ポートデータ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1702でYesの場合、ステップ1704で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1投入センサD20s及び第2投入センサD30sが、投入された遊技メダルの逆流を検知している(例えば、第1投入センサD20sオフ、且つ、第2投入センサD30sオン→第1投入センサD20sオン、且つ、第2投入センサD30sオンとなった場合に検知するものであり、この検知状態の時系列データ自体は第2RAM領域内で保持されている)か否かを判定する。ステップ1704でYesの場合、ステップ1706で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル逆流エラーフラグをオンにし(例えば、第2RAM領域の投入メダル逆流エラーフラグ領域内をオンに相当する値で更新し)、ステップ1708に移行する。他方、ステップ1704でNoの場合にも、ステップ1708に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 18 is a flowchart of medal insertion check processing according to the subroutine of step 1700 in FIG. First, in step 1702, the CPUC 100 determines whether or not the first input sensor D20s is on (detected) based on the data in the second ROM / RAM area (however, the first input sensor). If the input port data itself of D20s is stored in the first RAM area, the determination is made with reference to the first RAM area). In the case of Yes in step 1702, in step 1704, the CPUC 100 detects the backflow of the inserted game medal by the first insertion sensor D20s and the second insertion sensor D30s based on the data in the second ROM / RAM area. (For example, the detection is made when the first input sensor D20s is turned off, the second input sensor D30s is turned on, the first input sensor D20s is turned on, and the second input sensor D30s is turned on. It is determined whether the series data itself is held in the second RAM area). In the case of Yes in step 1704, in step 1706, the CPUC 100 turns on the inserted medal backflow error flag based on the data in the second ROM / RAM area (for example, turns on the inserted medal backflow error flag area in the second RAM area). Update to the corresponding value), and the process proceeds to step 1708. On the other hand, also in the case of No in step 1704, the process proceeds to step 1708.

次に、ステップ1708で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1投入センサD20s及び第2投入センサD30sが、投入されたメダルの滞留を検出している(例えば、第1投入センサD20sオンである状態が所定時間継続した場合、又は第2投入センサD30sオンである状態が所定時間継続した場合に検知するものであり、この検知状態のデータ自体は第2RAM領域内で保持されている)か否かを判定する。ステップ1708でYesの場合、ステップ1710で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入メダル滞留エラーフラグをオンにし(例えば、第2RAM領域の投入メダル滞留エラーフラグ領域内をオンに相当する値で更新し)、ステップ1712に移行する。他方、ステップ1708でNoの場合にも、ステップ1712に移行する。次に、ステップ1712で、CPUC100は、第2ROM・RAM領域内のデータに基づき、受付メダル枚数(遊技メダルの投入を受け付けた枚数)から正常通過枚数(正常に投入されたとみなされた遊技メダルの枚数)を減算した値が所定範囲内(例えば、0〜2枚)でないか否かを判定する。ステップ1712でYesの場合、ステップ1716で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入枚数エラーフラグをオンにし(例えば、第2RAM領域の投入枚数エラーフラグ領域内をオンに相当する値で更新し)、次の処理(ステップ1750の処理)に移行する。尚、ステップ1712でNoの場合にも、次の処理(ステップ1750の処理)に移行する。尚、所定時間(例えば、5秒)の投入枚数エラー監視期間を設けて、当該監視期間中に、受付メダル枚数から正常通過枚数を減算した値が所定範囲内(例えば、0〜2枚)ではなくなった場合に投入枚数エラーとなるよう構成してもよい。   Next, in step 1708, the CPUC 100 detects the stay of the inserted medal by the first insertion sensor D20s and the second insertion sensor D30s based on the data in the second ROM / RAM area (for example, the first insertion sensor D20s and the second insertion sensor D30s). It is detected when the input sensor D20s is on for a predetermined time or when the second input sensor D30s is on for a predetermined time, and the detection state data itself is held in the second RAM area. Is determined). If YES in step 1708, in step 1710, the CPUC 100 turns on the inserted medal staying error flag based on the data in the second ROM / RAM area (for example, turns on the inserted medal staying error flag area in the second RAM area). Update to the corresponding value), and the process proceeds to step 1712. On the other hand, also in the case of No in step 1708, the process proceeds to step 1712. Next, in step 1712, the CPUC 100 determines from the number of accepted medals (the number of accepted game medals received) to the number of normally passed games (the number of game medals considered to have been inserted normally) based on the data in the second ROM / RAM area. It is determined whether the value obtained by subtracting the number of sheets is not within a predetermined range (for example, 0 to 2 sheets). In the case of Yes in step 1712, in step 1716, the CPUC 100 turns on the insertion number error flag based on the data in the second ROM / RAM area (for example, corresponds to turning on the insertion number error flag area in the second RAM area). Update with the value) and proceed to the next process (the process of step 1750). Even in the case of No in step 1712, the processing shifts to the next processing (processing in step 1750). It is to be noted that an insertion number error monitoring period of a predetermined time (for example, 5 seconds) is provided, and the value obtained by subtracting the normal passing number from the received medal number during the monitoring period is within a predetermined range (for example, 0 to 2). It may be configured such that an error in the number of inserted sheets occurs when there is no more.

<第2ROM・RAM領域における処理>
次に、図19は、図17におけるステップ1750のサブルーチンに係る、メダル払出チェック処理のフローチャートである。まず、ステップ1752で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ホッパ駆動フラグがオンであるか否か(検出しているか否か)を判定する(但し、ホッパ駆動フラグ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1752でYesの場合、ステップ1754で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払い出されたメダルの滞留を検出(例えば、第1払出センサH10sオンである状態が所定時間継続した場合、且つ、第2払出センサH20sオンである状態が所定時間継続した場合に検知するものであり、この検知状態のデータ自体は第2RAM領域内で保持されている)しているか否かを判定する。ステップ1754でYesの場合、ステップ1756で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出メダル滞留エラーフラグをオンにし(例えば、第2RAM領域の払出メダル滞留エラーフラグ領域内をオンに相当する値で更新し)、次の処理(ステップ1800の処理)に移行する。尚、ステップ1752又はステップ1754でNoの場合も、次の処理(ステップ1800の処理)に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 19 is a flowchart of medal payout check processing according to the subroutine of step 1750 in FIG. First, in step 1752, the CPUC 100 determines whether or not the hopper drive flag is on (detected or not) based on the data in the second ROM / RAM area (however, the hopper drive flag itself is If it is stored in the first RAM area, it is determined by referring to the first RAM area). In the case of Yes in step 1752, in step 1754, the CPUC 100 detects the stay of the paid-out medals based on the data in the second ROM / RAM area (for example, the state where the first payout sensor H10s is on continues for a predetermined time). And when the second payout sensor H20s is on for a predetermined period of time, the detection state data itself is held in the second RAM area). judge. In the case of Yes in step 1754, in step 1756, the CPUC 100 turns on the payout medal staying error flag based on the data in the second ROM / RAM area (for example, turns on the payout medal staying error flag area in the second RAM area). Update with the corresponding value), and shift to the next processing (processing in step 1800). In addition, also when it is No in step 1752 or step 1754, it transfers to the next process (process of step 1800).

<第2ROM・RAM領域における処理>
次に、図20は、図17におけるステップ1800のサブルーチンに係る、投入・払出エラーチェック処理のフローチャートである。まず、ステップ1802で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ブロッカD100がオフであるか否かを判定する(但し、ブロッカD100の出力ポートデータ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1802でYesの場合、ステップ1804で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入センサの異常検出(第1投入センサD20s又は第2投入センサD30sが遊技メダルの検出をしないはずのタイミングにおける検出)があるか否かを判定する。ステップ1804でYesの場合、ステップ1806で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常投入エラーフラグをオンにし(例えば、第2RAM領域の異常投入エラーフラグ領域内をオンに相当する値で更新し)、ステップ1808に移行する。尚、ステップ1802又はステップ1804でNoの場合にも、ステップ1808に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 20 is a flowchart of the input / withdrawal error check process according to the subroutine of step 1800 in FIG. First, in step 1802, the CPUC 100 determines whether or not the blocker D100 is off based on the data in the second ROM / RAM area (however, the output port data of the blocker D100 itself is stored in the first RAM area). If it is determined, the determination is made with reference to the first RAM area). In the case of Yes in step 1802, in step 1804, the CPUC 100 detects the abnormality of the insertion sensor based on the data in the second ROM / RAM area (the first insertion sensor D20s or the second insertion sensor D30s should not detect the game medal). It is determined whether or not there is detection at the timing. In the case of Yes in step 1804, in step 1806, the CPUC 100 turns on the abnormal injection error flag based on the data in the second ROM / RAM area (for example, it corresponds to turning on the abnormal injection error flag area in the second RAM area). Update with the value) and go to Step 1808. Note that if the answer is No in Step 1802 or Step 1804, the process proceeds to Step 1808.

次に、ステップ1808で、CPUC100は、第2ROM・RAM領域内のデータに基づき、ホッパ駆動フラグがオフであるか否かを判定する(但し、ホッパ駆動フラグ自体が、第1RAM領域内で格納されている場合には、第1RAM領域を参照して判定する)。ステップ1808でYesの場合、ステップ1810で、CPUC100は、第2ROM・RAM領域内のデータに基づき、払出センサの異常検出(第1払出センサH10s又は第2払出センサH20sが遊技メダルの検出をしないはずのタイミングにおける検出)があるか否かを判定する。ステップ1810でYesの場合、ステップ1812で、CPUC100は、第2ROM・RAM領域内のデータに基づき、異常払出エラーフラグをオンにし(例えば、第2RAM領域の異常払出エラーフラグ領域内をオンに相当する値で更新し)、次の処理(ステップ1618の処理)に移行する。尚、ステップ1808又はステップ181でNoの場合にも、次の処理(ステップ1618の処理)に移行する。   Next, in step 1808, the CPUC 100 determines whether or not the hopper drive flag is off based on the data in the second ROM / RAM area (however, the hopper drive flag itself is stored in the first RAM area). If so, the determination is made with reference to the first RAM area). In the case of Yes in step 1808, in step 1810, the CPUC 100 detects abnormality of the payout sensor based on the data in the second ROM / RAM area (the first payout sensor H10s or the second payout sensor H20s should not detect the game medal). It is determined whether or not there is detection at the timing. In the case of Yes in step 1810, in step 1812, the CPUC 100 turns on the abnormal payout error flag based on the data in the second ROM / RAM area (for example, it corresponds to turning on the abnormal payout error flag area in the second RAM area). Update with the value) and proceed to the next process (the process of step 1618). Note that if the answer is No in step 1808 or step 181, the process proceeds to the next process (process in step 1618).

<第1ROM・RAM領域における処理>
次に、図21は、図17におけるステップ1900のサブルーチンに係る、電源断時処理のフローチャートである。まず、ステップ1902で、CPUC100は、第1ROM・RAM領域内のデータに基づき、スタックポインタを保存する。次に、ステップ1904で、CPUC100は、第1ROM・RAM領域内のデータに基づき、電源断処理済みフラグをオンにする(例えば、第1RAM領域の電源断処理済みフラグ領域内をオンに相当する値で更新する)。次に、ステップ1906で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のチェックサム算出処理を呼び出し、ステップ1908に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 21 is a flowchart of the power-off processing according to the subroutine of step 1900 in FIG. First, in step 1902, the CPUC 100 saves the stack pointer based on the data in the first ROM / RAM area. Next, in step 1904, the CPUC 100 turns on the power-off process completed flag based on the data in the first ROM / RAM area (for example, a value corresponding to ON in the power-off process completed flag area of the first RAM area). Update with). Next, in step 1906, the CPUC 100 calls a checksum calculation process for the second ROM area based on the data in the first ROM / RAM area, and proceeds to step 1908.

<第2ROM・RAM領域における処理>
次に、ステップ1908で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスからチェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)をチェックサム領域にてセットする(チェックサム領域に係るアドレスは同図下段の「RAMに係るメモリマップ」を参照)。次に、ステップ1910で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1ROM領域の呼び出し元に復帰し、ステップ1912に移行する。
<Processing in the second ROM / RAM area>
Next, in step 1908, the CPUC 100 calculates a checksum from the start address of the first RAM area to the address immediately before the checksum area based on the data in the second ROM / RAM area, and detects an error based on the calculated checksum. Information (for example, the lower 1 byte in the calculated checksum or its complement) is set in the checksum area (the address relating to the checksum area is the “memory map relating to RAM” in the lower part of the figure) See). Next, in step 1910, the CPUC 100 returns to the caller of the first ROM area based on the data in the second ROM / RAM area, and proceeds to step 1912.

<第1ROM・RAM領域における処理>
次に、ステップ1912で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM・第2RAMの書き込みを禁止し、ステップ1914に移行する。次に、ステップ1914で、CPUC100は、第1ROM・RAM領域内のデータに基づき、リセットを待機するための無限ループ処理を実行する。
<Processing in the first ROM / RAM area>
Next, in step 1912, the CPUC 100 prohibits writing to the first RAM / second RAM based on the data in the first ROM / RAM area, and proceeds to step 1914. Next, in step 1914, the CPUC 100 executes an infinite loop process for waiting for reset based on the data in the first ROM / RAM area.

以上のように構成することで、本実施形態に係る回胴式遊技機によれば、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域(又は、レジスタ領域)を更新及び参照可能に構成し、エラー検出、エラー表示等の遊技機に対して不正行為がなされる(例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等)ことを防御するための不正行為防止用のプログラムを第2ROM・RAM領域における処理にて実行し得るよう構成することで、遊技の進行に係る処理と領域を明確に分けることができ、当該不正行為防止用のプログラムの正当性を検証することが容易となる。   With the configuration as described above, according to the swivel type gaming machine according to the present embodiment, the first RAM area (or the register area) is processed by the CPUC 100 based on the program code arranged in the second ROM area. ) Is configured so that it can be updated and referenced, and fraudulent acts are performed on gaming machines such as error detection and error display (for example, unauthorized access to gaming media slot and payout port for illegal gaming media By configuring the program for preventing fraud to protect against this in the process of the second ROM / RAM area, the process and area relating to the progress of the game are clearly separated. This makes it easy to verify the validity of the program for preventing fraud.

(第2実施形態)
尚、本実施形態においては、エラー表示処理等も不正行為防止用のプログラムとして見做し、第2ROM領域にて配置されているプログラムコードとして実装するための一例を示したが、エラー表示処理等は遊技進行を制御する上でも必要不可欠な処理であるため、不正行為防止用のプログラムではなく遊技性仕様を実装するためのプログラムとして見做した方が、人為的な検証が容易になる可能性がある。そこで、このような事情に鑑み、本実施形態で示した一例をベースとし、遊技性仕様を実装するためのプログラムとして見做した方が好適となり得る処理を、第1ROM領域にて配置されているプログラムコードとして実装するための一例を第2実施形態とし、以下、本実施形態からの変更点について詳述していく。
(Second Embodiment)
In the present embodiment, error display processing or the like is also regarded as a program for preventing fraud, and an example is shown for implementation as program code arranged in the second ROM area. Is an indispensable process for controlling the progress of the game, so it may be easier to perform human verification if it is viewed as a program for implementing gameplay specifications rather than a program for preventing fraud There is. Therefore, in view of such circumstances, processing that may be more suitable as a program for implementing the gaming specifications is arranged in the first ROM area based on the example shown in the present embodiment. An example to be implemented as program code is a second embodiment, and changes from the present embodiment will be described in detail below.

<第1ROM・RAM領域における処理>
はじめに、図22は、第2実施形態に係る回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、主制御基板MのCPUC100にて初めて実行される処理の流れを示したフローチャート(1枚目)である。本実施形態との相違点は、ステップ1005‐1(第2)、ステップ1005‐2(第2)、ステップ1009‐1(第2)、ステップ1009‐2(第2)、ステップ1017(第2)、ステップ1019‐1(第2)〜ステップ1019‐3(第2)、ステップ1021‐1(第2)、ステップ1021‐2(第2)、ステップ1027(第2)、ステップ1029(第2)、ステップ1035‐1(第2)及びステップ1035‐2(第2)であり、即ち、ステップ1004で、チップの機能設定を実行した後、ステップ1005‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスから第1チェックサム領域直前アドレスまでのチェックサムを算出する。ここで、同図右(RAMに係るメモリマップ)に示されるように、第2実施形態においては、第1RAM領域のチェックサム領域(第1チェックサム領域)と第2RAM領域のチェックサム領域(第2チェックサム領域)とが別々になっており、後述する第2実施形態における電源断時処理にて、第1RAM領域のチェックサム算出と第2RAM領域のチェックサム算出とが別々に行われ、夫々の算出結果に基づく誤り検出用情報が夫々の領域に格納される。次に、ステップ1005‐2で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAMをチェックし、第1RAM電源断復帰データ(第1RAMに係る電源断復帰データ)を生成し、ステップ1006に移行する。よって、ここでの「第1RAMをチェック」とは、第1RAM領域を対象としたチェックサムと、第1チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックする処理となる。
<Processing in the first ROM / RAM area>
First, FIG. 22 shows a flow of processing executed for the first time by the CPUC 100 of the main control board M after turning on the power of the spinning-reel type gaming machine P according to the second embodiment (or at the time of system reset or user reset). It is the flowchart (1st sheet) which showed. The difference from the present embodiment is that step 1005-1 (second), step 1005-2 (second), step 1009-1 (second), step 1009-2 (second), step 1017 (second) ), Step 1019-1 (second) to step 1019-3 (second), step 1021-1 (second), step 1021-2 (second), step 1027 (second), step 1029 (second) ), Step 1035-1 (second) and step 1035-2 (second), that is, after executing the function setting of the chip in step 1004, in step 1005-1 (second), the CPUC 100 Based on the data in the first ROM / RAM area, a checksum from the head address of the first RAM area to the address immediately before the first checksum area is calculated. Here, as shown on the right side of the drawing (memory map related to the RAM), in the second embodiment, the checksum area (first checksum area) of the first RAM area and the checksum area (first area) of the second RAM area are shown. 2 checksum areas) and the checksum calculation of the first RAM area and the checksum calculation of the second RAM area are performed separately in the power-off process in the second embodiment to be described later. The error detection information based on the calculation result is stored in each area. Next, in step 1005-2, the CPUC 100 checks the first RAM based on the data in the first ROM / RAM area, and generates first RAM power-off recovery data (power-off recovery data related to the first RAM). 1006 is entered. Therefore, the “check first RAM” here is based on the checksum for the first RAM area and the error detection information held in the first checksum area, by power-off / power-off recovery. This is a process for checking whether or not the data stored in the built-in RAMC 120 is correctly held.

<第2ROM・RAM領域における処理>
他方、ステップ1006で電源断復帰処理を呼び出した後、ステップ1009‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域の先頭アドレスから、第2チェックサム領域を除く最終アドレスまでのチェックサムを算出する。次に、ステップ1009‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAMをチェックし、第2RAM電源断復帰データ(第1RAMに係る電源断復帰データ)を生成し、ステップ1012に移行する。即ち、ここでの「第2RAMをチェック」とは、第2RAM領域を対象としたチェックサムと、第2チェックサム領域に保持されている誤り検出用情報とに基づき、電源断・電源断復帰により内蔵RAMC120に格納されているデータが正しく保持されているか否かをチェックする処理となる。
<Processing in the second ROM / RAM area>
On the other hand, after the power-off recovery process is called in step 1006, in step 1009-1 (second), the CPUC 100 determines the second checksum from the start address of the second RAM area based on the data in the second ROM / RAM area. Calculate the checksum up to the last address excluding the area. Next, in step 1009-2 (second), the CPUC 100 checks the second RAM based on the data in the second ROM / RAM area, and obtains the second RAM power-off recovery data (power-off recovery data related to the first RAM). Generate and move to step 1012. In other words, the “check the second RAM” here is based on the checksum for the second RAM area and the error detection information held in the second checksum area, by power-off / power-off recovery. This is a process for checking whether or not the data stored in the built-in RAMC 120 is correctly held.

<第1ROM・RAM領域における処理>
また、ステップ1016ですべてのスイッチがオンであった場合、ステップ1017(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定変更操作ありフラグをオンにし(例えば、第1RAM領域の設定変更操作ありフラグ領域内をオンに相当する値で更新し)、ステップ1018に移行する。
<Processing in the first ROM / RAM area>
If all the switches are turned on in step 1016, in step 1017 (second), the CPUC 100 turns on the setting change operation flag based on the data in the first ROM / RAM area (for example, the first RAM The flag area with the region setting change operation is updated with a value corresponding to ON), and the process proceeds to Step 1018.

<第2ROM・RAM領域における処理>
また、ステップ1018で非設定変更時初期化処理を呼び出した後、ステップ1019‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ1019‐1(第2)でYesの場合、ステップ1019‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の電源断復帰データは正常であるか否か(特に、第1RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1019‐2(第2)でYesの場合、ステップ1019‐3(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断復帰データは正常であるか否か(特に、第2RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1019‐3(第2)でYesの場合、ステップ1028で、第1RAM領域及び第2RAM領域の初期化範囲を未使用RAM範囲に決定してセットし、ステップ1027(第2)で、第2RAM領域内の電源断異常フラグをオフにし、ステップ1036に移行する。他方、ステップ1019‐2(第2)又はステップ1019‐3(第2)でNoの場合、ステップ1029(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグをオンにし、ステップ1036に移行する。
<Processing in the second ROM / RAM area>
After calling the initialization process at the time of non-setting change in step 1018, in step 1019-1 (second), the CPUC 100 sets a flag indicating that there is a setting operation in the first RAM area based on the data in the second ROM / RAM area. It is determined whether or not is off. If YES in step 1019-1 (second), in step 1019-2 (second), the CPUC 100 has normal power-off recovery data in the first RAM area based on the data in the second ROM / RAM area. (In particular, whether or not the error detection result for the first RAM area is normal). In the case of Yes in step 1019-2 (second), in step 1019-3 (second), the CPUC 100 has normal power-off recovery data in the second RAM area based on the data in the second ROM / RAM area. (In particular, whether or not the error detection result for the second RAM area is normal). If YES in step 1019-3 (second), the initialization range of the first RAM area and the second RAM area is determined and set as an unused RAM range in step 1028, and the second RAM is set in step 1027 (second). The power-off abnormality flag in the area is turned off, and the process proceeds to step 1036. On the other hand, if step 1019-2 (second) or step 1019-3 (second) is No, in step 1029 (second), the CPUC 100 determines whether the second RAM area is based on the data in the second ROM / RAM area. Is turned on, and the process proceeds to Step 1036.

他方、ステップ1019‐1(第2)でNoの場合、ステップ1021‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域内の電源断復帰データは正常であるか否か(特に、第1RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1021‐1(第2)でYesの場合、ステップ1021‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断復帰データは正常であるか否か(特に、第2RAM領域を対象とした誤り検出結果が正常であるか否か)を判定する。ステップ1021‐2(第2)でYesの場合、ステップ1032で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域及び第2RAM領域の初期化範囲を第1RAM領域内の設定値を除くすべての範囲に決定してセットし、ステップ1035‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグをオフにし、ステップ1036に移行する。他方、ステップ1021‐1(第2)又はステップ1021‐2(第2)でNoの場合、ステップ1034で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第1RAM領域及び第2RAM領域の初期化範囲をすべての範囲に決定してセットし、ステップ1035‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグをオンにし、ステップ1036に移行する。   On the other hand, if NO in step 1019-1 (second), in step 1021-1 (second), CPUC 100 determines that the power-off recovery data in the first RAM area is normal based on the data in the second ROM / RAM area. (Particularly, whether or not the error detection result for the first RAM area is normal). In the case of Yes in step 1021-1 (second), in step 1021-2 (second), the CPUC 100 has normal power-off recovery data in the second RAM area based on the data in the second ROM / RAM area. (In particular, whether or not the error detection result for the second RAM area is normal). If YES in step 1021-2 (second), in step 1032 the CPUC 100 sets the initialization range of the first RAM area and the second RAM area to the set value in the first RAM area based on the data in the second ROM / RAM area. In step 1035-1 (second), the CPUC 100 turns off the power failure abnormality flag in the second RAM area based on the data in the second ROM / RAM area in step 1035-1 (second). 1036. On the other hand, if step 1021-1 (second) or step 1021-2 (second) is No, in step 1034, the CPUC 100 determines whether the first RAM area and the second RAM area are based on the data in the second ROM / RAM area. In step 1035-2 (second), the CPUC 100 turns on the power failure abnormality flag in the second RAM area based on the data in the second ROM / RAM area. Then, the process proceeds to step 1036.

<第1ROM・RAM領域における処理>
次に、図23は、第2実施形態に係る回胴式遊技機Pの電源を投入した後(或いはシステムリセットやユーザリセット時において)、主制御基板MのCPUC100にて初めて実行される処理の流れを示したフローチャート(2枚目)である。本実施形態との相違点は、ステップ1039‐1(第2)、ステップ1039‐2(第2)、ステップ1026(第2)、ステップ1300(第2)、ステップ1045(第2)、ステップ1046(第2)及びステップ1047(第2)であり、即ち、ステップ1039‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域内の設定操作ありフラグがオフであるか否かを判定する。ステップ1039‐1(第2)でYesの場合、ステップ1039‐2(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の電源断異常フラグがオフであるか否かを判定する。ステップ1039‐2(第2)でYesの場合又はステップ1039‐1(第2)でNoの場合には、ステップ1040に移行し(即ち、設定変更装置を作動させる場合か、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果が正常であることを含め、正常に電断復帰している場合には以降の処理を続行し)、ステップ1039‐2(第2)でNoの場合、ステップ1026(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、バックアップエラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする(即ち、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果が異常であることを含め、正常に電断復帰していない場合には復帰不可能な状態へと移行する)。ここで、本例においては、設定変更装置を作動させない場合において第1RAM領域及び第2RAM領域を対象とした別個の誤り検出結果がいずれも正常である場合において以降の処理を続行するよう構成されているが、これには限定されず、例えば、第1RAM領域を対象とした誤り検出結果が正常であれば、第2RAM領域を対象とした誤り検出結果が異常であっても(第2RAM領域の全領域を初期化した上で)以降の処理を続行するよう構成してもよい。
<Processing in the first ROM / RAM area>
Next, FIG. 23 shows a process executed for the first time by the CPUC 100 of the main control board M after turning on the power of the rotary gaming machine P according to the second embodiment (or at the time of system reset or user reset). It is the flowchart (2nd sheet) which showed the flow. The difference from this embodiment is that step 1039-1 (second), step 1039-1 (second), step 1026 (second), step 1300 (second), step 1045 (second), step 1046. (Second) and step 1047 (second), that is, in step 1039-1 (second), the CPUC 100 sets the flag indicating that there is a setting operation in the first RAM area based on the data in the first ROM / RAM area. It is determined whether or not it is off. In the case of Yes in step 1039-1 (second), in step 1039-1 (second), the CPUC 100 has the power failure abnormality flag in the second RAM area turned off based on the data in the first ROM / RAM area. It is determined whether or not. If step 1039-1 (second) is Yes or step 1039-1 (second) is No, the process proceeds to step 1040 (that is, the setting change device is operated or the setting change device is operated). If not, including the fact that the separate error detection results for the first RAM area and the second RAM area are normal, the subsequent processing is continued when the power failure is restored normally), and step 1039-2 In the case of No in (second), in step 1026 (second), the CPUC 100 sets a backup error display based on the data in the first ROM / RAM area (for example, sets an error number in the register area). . Next, in step 1300 (second), the CPUC 100 sets non-recoverable error processing, which will be described later, based on the data in the first ROM / RAM area (that is, the first RAM area when the setting change device is not operated). In addition, if the result of the separate error detection for the second RAM area is abnormal, the state shifts to a state where it cannot be restored if the power interruption is not normally restored). Here, in this example, when the setting change device is not operated, when the separate error detection results for the first RAM area and the second RAM area are both normal, the subsequent processing is continued. However, the present invention is not limited to this. For example, if the error detection result for the first RAM area is normal, even if the error detection result for the second RAM area is abnormal (all of the second RAM area). It may be configured to continue the subsequent processing (after initializing the area).

<第2ROM・RAM領域における処理>
また、ステップ1044で、第1RAM領域内の設定値が正常範囲内であった場合、ステップ1045(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1047(第2)に移行する。他方、ステップ1044でNoの場合、ステップ1046(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1047(第2)に移行する。
<Processing in the second ROM / RAM area>
If the setting value in the first RAM area is within the normal range in step 1044, the CPUC 100 sets the setting in the second RAM area based on the data in the second ROM / RAM area in step 1045 (second). The value abnormality flag is turned off, the process returns to the caller of the first ROM area, and the process proceeds to step 1047 (second). On the other hand, in the case of No in Step 1044, in Step 1046 (second), the CPUC 100 turns on the set value abnormality flag in the second RAM area based on the data in the second ROM / RAM area, and calls the first ROM area. The process returns to step 1047 (second).

<第1ROM・RAM領域における処理>
次に、ステップ1047(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグがオフであるか否かを判定する。ステップ1047(第2)でYesの場合には、ステップ1050に移行し、Noの場合には、ステップ1048(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(バックアップエラー表示、設定値エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
Next, in step 1047 (second), the CPUC 100 determines whether or not the set value abnormality flag in the second RAM area is OFF based on the data in the first ROM / RAM area. If YES in step 1047 (second), the process proceeds to step 1050. If NO, in step 1048 (second), the CPUC 100 determines that a set value error has occurred based on the data in the first ROM / RAM area. Set the display (for example, set the error number in the register area). Next, in step 1300 (second), the CPUC 100 sets non-recoverable error processing, which will be described later, based on the data in the first ROM / RAM area. As described above, in the second embodiment, the non-recoverable error processing and the set processing of the generated non-recoverable error display (backup error display, setting value error display) are executed in the first ROM / RAM area. It is configured as follows.

<第1ROM・RAM領域における処理>
次に、図24は、第2実施形態におけるステップ1200のサブルーチンに係る、遊技進行制御処理(2枚目)のフローチャートである。本実施形態との相違点は、ステップ1228(第2)、ステップ1700(第2)、ステップ1400(第2)、ステップ1237(第2)、ステップ1750(第2)、ステップ1450(第2)、ステップ1249‐1(第2)、ステップ1800(第2)、ステップ1500(第2)、ステップ1254‐1(第2)〜ステップ1254‐3(第2)、ステップ1256(第2)及びステップ1300(第2)であり、即ち、ステップ1227で遊技メダルの投入を受け付けた後、又は、ステップ1230で第1投入センサD20s及び第2投入センサD30sがオフでなかった場合に、ステップ1228(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル投入チェック処理を呼び出し、ステップ1700(第2)に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 24 is a flowchart of the game progress control process (second sheet) according to the subroutine of step 1200 in the second embodiment. The difference from this embodiment is that step 1228 (second), step 1700 (second), step 1400 (second), step 1237 (second), step 1750 (second), step 1450 (second) , Step 1249-1 (second), Step 1800 (second), Step 1500 (second), Step 1254-1 (second) to Step 1254-3 (second), Step 1256 (second) and step 1300 (second), that is, after accepting the insertion of a game medal in step 1227, or when the first insertion sensor D20s and the second insertion sensor D30s are not OFF in step 1230, step 1228 (second) In 2), the CPUC 100 calls the medal insertion check process in the second ROM area based on the data in the first ROM / RAM area. And, the process proceeds to step 1700 (second).

<第2ROM・RAM領域における処理>
次に、ステップ1700(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル投入チェック処理を実行し、ステップ1229に移行する。尚、この第2ROM領域のメダル投入チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル投入チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
<Processing in the second ROM / RAM area>
Next, in step 1700 (second), the CPUC 100 executes medal insertion check processing based on the data in the second ROM / RAM area, and proceeds to step 1229. The purpose of the medal insertion check process in the second ROM area is the medal insertion check implemented separately in the game progress control process (loop process) and the timer interruption process (non-loop process) in this embodiment. This is to show an example of a method for implementing related processes collectively in a game progress control process (loop process).

<第1ROM・RAM領域における処理>
また、ステップ1229で第1ROM領域の呼び出し元に復帰した後、ステップ1400(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル投入エラー検出処理を実行し、ステップ1230に移行する。尚、第2実施形態においては、メダル投入エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
After returning to the calling source of the first ROM area in step 1229, in step 1400 (second), the CPUC 100 executes medal insertion error detection processing, which will be described later, based on the data in the first ROM / RAM area. Control goes to step 1230. In the second embodiment, the medal insertion error detection process is executed in the first ROM / RAM area.

また、ステップ1236で第1払出センサH10s又は第2払出センサH20sがオンであった場合、ステップ1241でホッパ駆動後所定時間が経過していない場合、又は、ステップ1247で第1払出センサH10s及び第2払出センサH20sがオフでなかった場合に、ステップ1237(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル払出チェック処理を呼び出し、ステップ1750(第2)に移行する。   Further, when the first payout sensor H10s or the second payout sensor H20s is turned on at step 1236, when the predetermined time has not elapsed after the hopper is driven at step 1241, or at step 1247, the first payout sensor H10s and the second payout sensor H10s. If the 2 payout sensor H20s is not OFF, in step 1237 (second), the CPUC 100 calls the medal payout check process in the second ROM area based on the data in the first ROM / RAM area, and step 1750 (second). ).

<第2ROM・RAM領域における処理>
次に、ステップ1750(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ1240に移行する。尚、この第2ROM領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
<Processing in the second ROM / RAM area>
Next, in step 1750 (second), the CPUC 100 executes medal payout check processing based on the data in the second ROM / RAM area, and proceeds to step 1240. The purpose of the medal payout check process in the second ROM area is the medal payout check implemented separately in the game progress control process (loop process) and the timer interrupt process (non-loop process) in this embodiment. This is to show an example of a method for implementing related processes collectively in a game progress control process (loop process).

<第1ROM・RAM領域における処理>
また、ステップ1240で第1ROM領域の呼び出し元に復帰した後、ステップ1450(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ1247に移行する。尚、第2実施形態においては、メダル払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
After returning to the caller of the first ROM area in step 1240, in step 1450 (second), the CPUC 100 executes medal payout error detection processing, which will be described later, based on the data in the first ROM / RAM area. Control goes to step 1247. In the second embodiment, the medal payout error detection process is executed in the first ROM / RAM area.

また、ステップ1232で精算ボタンD60の操作がなかった場合、又は、ステップ1233で残りクレジット及びベットメダルがなかった場合に、ステップ1249‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の投入・払出エラーチェック処理を呼び出し、ステップ1800(第2)に移行する。   If there is no operation of the settlement button D60 in step 1232, or if there are no remaining credits and bet medals in step 1233, in step 1249-1 (second), the CPUC 100 determines that the first ROM / RAM area On the basis of the data, the input / output error check process for the second ROM area is called, and the process proceeds to Step 1800 (second).

<第2ROM・RAM領域における処理>
次に、ステップ1800(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ1250に移行する。尚、この第2ROM領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
<Processing in the second ROM / RAM area>
Next, in step 1800 (second), the CPUC 100 executes input / withdrawal error check processing based on the data in the second ROM / RAM area, and proceeds to step 1250. The purpose of the second ROM area input / withdrawal error check process is that the game progress control process (loop process) and the timer interruption process (non-loop process) are separately implemented in this embodiment. -An example of a method for collectively implementing payout error check related processing in game progress control processing (loop processing).

<第1ROM・RAM領域における処理>
また、ステップ1250で第1ROM領域の呼び出し元に復帰した後、ステップ1500(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、投入・払出エラー検出処理を実行し、ステップ1251に移行する。尚、第2実施形態においては、投入・払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
After returning to the calling source of the first ROM area in step 1250, in step 1500 (second), the CPUC 100 executes input / dispensing error detection processing, which will be described later, based on the data in the first ROM / RAM area. , The process proceeds to step 1251. In the second embodiment, the input / output error detection process is executed in the first ROM / RAM area.

<第2ROM・RAM領域における処理>
また、ステップ1253で第1RAM領域内の設定値が正常範囲内であった場合、ステップ1254‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1254‐3(第2)に移行する。他方、ステップ1253で第1RAM領域内の設定値が正常範囲内でなかった場合、ステップ1254‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1254‐3(第2)に移行する。
<Processing in the second ROM / RAM area>
If the set value in the first RAM area is within the normal range in step 1253, in step 1254-2 (second), the CPUC 100 determines whether the setting value in the second RAM area is based on the data in the second ROM / RAM area. The set value abnormality flag is turned off, the process returns to the caller of the first ROM area, and the flow proceeds to step 1254-3 (second). On the other hand, if the set value in the first RAM area is not within the normal range in step 1253, in step 1254-1 (second), the CPUC 100 determines whether the set value in the second RAM area The set value abnormality flag is turned on, the process returns to the caller of the first ROM area, and the flow proceeds to step 1254-3 (second).

<第1ROM・RAM領域における処理>
次に、ステップ1254‐3(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の設定値異常フラグがオフであるか否かを判定する。ステップ1254‐3(第2)でYesの場合、次の処理(ステップ1257の処理)に移行し、Noの場合には、ステップ1256(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、設定値エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(設定値エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
Next, in step 1254-3 (second), the CPUC 100 determines whether or not the set value abnormality flag in the second RAM area is OFF based on the data in the second ROM / RAM area. If YES in step 1254-3 (second), the process proceeds to the next process (process in step 1257). If NO, in step 1256 (second), the CPUC 100 determines that the first ROM / RAM area is in the first ROM / RAM area. A set value error display is set based on the data (for example, an error number is set in the register area). Next, in step 1300 (second), the CPUC 100 sets non-recoverable error processing, which will be described later, based on the data in the first ROM / RAM area. As described above, in the second embodiment, the non-recoverable error processing and the set processing of the generated non-recoverable error display (setting value error display) are executed in the first ROM / RAM area. Yes.

<第1ROM・RAM領域における処理>
次に、図25は、第2実施形態における、図24のステップ1400(第2)のサブルーチンに係る、メダル投入エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、メダル投入エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM領域内のフラグである、投入メダル逆流エラーフラグ、投入メダル滞留エラーフラグ及び投入枚数エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
<Processing in the first ROM / RAM area>
Next, FIG. 25 is a flowchart of medal insertion error detection processing according to the subroutine of step 1400 (second) in FIG. 24 in the second embodiment. The difference from this embodiment is that the processing of this subroutine is processing in the first ROM / RAM area. That is, in the present embodiment, when executing an error display process related to a medal insertion error, the process implemented in the second ROM area is called. In the second embodiment, the process is performed by the first ROM. If an error is detected in various error detection processes in the second ROM / RAM area, information indicating that an error has been detected is transferred to the process implemented in the first ROM area and executed. It is doing. When configured in this way, an error display process, which is an indispensable process for controlling game progress, can be implemented as a program (program for controlling game progress) for implementing game play specifications. In other words, it is possible to use an error display processing program that has been conventionally implemented. It should be noted that the inserted medal backflow error flag, the inserted medal retention error flag, and the inserted number error are flags in the second RAM area for handing over information indicating that an error has been detected to the error display process implemented in the first ROM area. When the error is canceled, the flag may be directly turned off from the error display process implemented in the first ROM area as in this example, or the process for turning off the flag in the second ROM area. You may comprise so that a process may be called and turned off.

<第1ROM・RAM領域における処理>
次に、図26は、第2実施形態における、図24のステップ1450(第2)のサブルーチンに係る、メダル払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、メダル払出エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM領域内のフラグである、払出メダル滞留エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
<Processing in the first ROM / RAM area>
Next, FIG. 26 is a flowchart of medal payout error detection processing according to the subroutine of step 1450 (second) in FIG. 24 in the second embodiment. The difference from this embodiment is that the processing of this subroutine is processing in the first ROM / RAM area. That is, in the present embodiment, when executing an error display process related to a medal payout error, the process implemented in the second ROM area is called, but in the second embodiment, the process is called the first ROM. If an error is detected in various error detection processes in the second ROM / RAM area, information indicating that an error has been detected is transferred to the process implemented in the first ROM area and executed. It is doing. When configured in this way, an error display process, which is an indispensable process for controlling game progress, can be implemented as a program (program for controlling game progress) for implementing game play specifications. In other words, it is possible to use an error display processing program that has been conventionally implemented. The payout medal retention error flag, which is a flag in the second RAM area for transferring information indicating that an error has been detected to the error display process implemented in the first ROM area, is displayed when the error is released. The error display process implemented in the first ROM area may be turned off directly as in this example, or the process for turning off the flag, which is the process of the second ROM area, is configured to be turned off. Also good.

<第1ROM・RAM領域における処理>
次に、図27は、第2実施形態における、図24のステップ1500(第2)のサブルーチンに係る、投入・払出エラー検出処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、投入・払出エラー関連のエラー表示処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、遊技進行を制御する上でも必要不可欠な処理であるエラー表示処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができ、換言すれば、従来から実装されているエラー表示処理プログラムを流用することが可能となる。尚、エラーが検出された旨の情報を第1ROM領域において実装されたエラー表示処理へと引き渡すための第2RAM内のフラグである、異常投入エラーフラグ及び異常払出エラーフラグは、エラーが解除された場合には、本例のように第1ROM領域において実装されたエラー表示処理から直接オフとしてもよいし、第2ROM領域の処理であり当該フラグをオフとするための処理を呼び出してオフにするよう構成してもよい。
<Processing in the first ROM / RAM area>
Next, FIG. 27 is a flowchart of input / withdrawal error detection processing according to the subroutine of Step 1500 (second) in FIG. 24 in the second embodiment. The difference from this embodiment is that the processing of this subroutine is processing in the first ROM / RAM area. That is, in the present embodiment, when executing the error display process related to the input / withdrawal error, the process implemented in the second ROM area is called. In the second embodiment, the process is When an error is detected in various error detection processes in the second ROM / RAM area, information indicating that an error has been detected is transferred to the process implemented in the first ROM area. It is running. When configured in this way, an error display process, which is an indispensable process for controlling game progress, can be implemented as a program (program for controlling game progress) for implementing game play specifications. In other words, it is possible to use an error display processing program that has been conventionally implemented. It should be noted that the error input error flag and the abnormal payout error flag, which are flags in the second RAM for transferring information indicating that an error has been detected, to the error display processing implemented in the first ROM area, have been canceled. In this case, the error display process implemented in the first ROM area may be turned off directly as in this example, or the process for turning off the flag, which is a process in the second ROM area, is called off. It may be configured.

<第2ROM・RAM領域における処理>
次に、図28は、第2実施形態における、遊技進行制御処理(3枚目)のフローチャートである。本実施形態との相違点は、ステップ1269‐1(第2)〜ステップ1269‐4(第2)、ステップ1272(第2)、ステップ1300(第2)、ステップ1800(第2)、ステップ1500(第2)、ステップ1277‐1(第2)、ステップ1750(第2)及びステップ1450(第2)であり、即ち、ステップ1269で、表示された図柄の組み合わせが正常である場合、ステップ1269‐1(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1269‐3(第2)に移行する。他方、ステップ1269で、表示された図柄の組み合わせが正常でない場合、ステップ1269‐2(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1269‐3(第2)に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 28 is a flowchart of the game progress control process (third sheet) in the second embodiment. The difference from the present embodiment is that step 1269-1 (second) to step 1269-4 (second), step 1272 (second), step 1300 (second), step 1800 (second), step 1500. (Second), Step 1277-1 (Second), Step 1750 (Second), and Step 1450 (Second), that is, if the displayed symbol combination is normal in Step 1269, Step 1269 -1 (second), the CPUC 100 turns off the display determination abnormality flag in the second RAM area based on the data in the second ROM / RAM area, returns to the caller of the first ROM area, and returns to step 1269-3 ( Move to 2). On the other hand, if the combination of symbols displayed in step 1269 is not normal, in step 1269-2 (second), the CPUC 100 determines the display determination abnormality flag in the second RAM area based on the data in the second ROM / RAM area. Is turned on to return to the calling source of the first ROM area, and the flow proceeds to Step 1269-3 (second).

<第1ROM・RAM領域における処理>
次に、ステップ1269‐3(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2RAM領域内の表示判定異常フラグがオフであるか否かを判定する。ステップ1269‐3(第2)でYesの場合、ステップ1269‐4(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域の投入・払出エラーチェック処理を呼び出し、ステップ1500(第2)に移行する。他方、ステップ1269‐3(第2)でNoの場合には、ステップ1272(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、表示判定エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(表示判定エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
Next, in Step 1269-3 (second), the CPUC 100 determines whether or not the display determination abnormality flag in the second RAM area is off based on the data in the first ROM / RAM area. In the case of Yes in step 1269-3 (second), in step 1269-4 (second), the CPUC 100 calls the input / output error check processing of the second ROM area based on the data in the first ROM / RAM area, The process proceeds to step 1500 (second). On the other hand, if NO in step 1269-3 (second), in step 1272 (second), CPUC 100 sets a display determination error display based on the data in the first ROM / RAM area (for example, register Set the error number in the area). Next, in step 1300 (second), the CPUC 100 sets the above-described unrecoverable error processing based on the data in the first ROM / RAM area. As described above, in the second embodiment, the setting process of the non-recoverable error process and the non-recoverable error display (display determination error display) that has occurred is executed in the first ROM / RAM area. Yes.

<第2ROM・RAM領域における処理>
次に、ステップ1800(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、投入・払出エラーチェック処理を実行し、ステップ1270に移行する。尚、この第2ROM領域の投入・払出エラーチェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていた投入・払出エラーチェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
<Processing in the second ROM / RAM area>
Next, in step 1800 (second), the CPUC 100 executes input / withdrawal error check processing based on the data in the second ROM / RAM area, and proceeds to step 1270. The purpose of the second ROM area input / withdrawal error check process is that the game progress control process (loop process) and the timer interruption process (non-loop process) are separately implemented in this embodiment. -An example of a method for collectively implementing payout error check related processing in game progress control processing (loop processing).

<第1ROM・RAM領域における処理>
また、ステップ1270で第1ROM領域の呼び出し元に復帰した後、ステップ1500(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、投入・払出エラー検出処理を実行し、ステップ1274に移行する。尚、第2実施形態においては、投入・払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
After returning to the calling source of the first ROM area in step 1270, in step 1500 (second), the CPUC 100 executes the aforementioned input / out error detection process based on the data in the first ROM / RAM area. Then, the process proceeds to step 1274. In the second embodiment, the input / output error detection process is executed in the first ROM / RAM area.

他方、ステップ1277で第1払出センサH10s又は第2払出センサH20sがオンであった場合、ステップ1277‐1(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第2ROM領域のメダル払出チェック処理を呼び出し、ステップ1750(第2)に移行する。   On the other hand, if the first payout sensor H10s or the second payout sensor H20s is on in step 1277, the CPUC 100 determines in step 1277-1 (second) the second ROM area based on the data in the first ROM / RAM area. The medal payout check process is called, and the process proceeds to Step 1750 (second).

<第2ROM・RAM領域における処理>
次に、ステップ1750(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、メダル払出チェック処理を実行し、ステップ1284に移行する。尚、この第2ROM領域のメダル払出チェック処理の趣旨としては、本実施形態において、遊技進行制御処理(ループ処理)とタイマ割り込み時処理(非ループ処理)とで分けて実装されていたメダル払出チェック関連の処理を、遊技進行制御処理(ループ処理)にて纏めて実装する方法の一例を示すことにある。
<Processing in the second ROM / RAM area>
Next, in step 1750 (second), the CPUC 100 executes medal payout check processing based on the data in the second ROM / RAM area, and proceeds to step 1284. The purpose of the medal payout check process in the second ROM area is the medal payout check implemented separately in the game progress control process (loop process) and the timer interrupt process (non-loop process) in this embodiment. This is to show an example of a method for implementing related processes collectively in a game progress control process (loop process).

<第1ROM・RAM領域における処理>
また、ステップ1284で第1ROM領域の呼び出し元に復帰した後、ステップ1450(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、後述する、メダル払出エラー検出処理を実行し、ステップ1286に移行する。尚、第2実施形態においては、メダル払出エラー検出処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
After returning to the caller of the first ROM area in step 1284, in step 1450 (second), the CPUC 100 executes medal payout error detection processing, which will be described later, based on the data in the first ROM / RAM area. Control goes to step 1286. In the second embodiment, the medal payout error detection process is executed in the first ROM / RAM area.

<第1ROM・RAM領域における処理>
次に、図29は、第2実施形態における、図23、図24、図28及び図30のステップ1300(第2)のサブルーチンに係る、復帰不可能エラー処理のフローチャートである。本実施形態との相違点は、本サブルーチンの処理を、第1ROM・RAM領域における処理としていることである。即ち、本実施形態においては、復帰不可能エラー処理を実行する場合、第2ROM領域において実装された当該処理を呼び出していたのであるが、第2実施形態においては、当該処理が第1ROM領域において実装されており、第2ROM・RAM領域における各種エラー検出処理にてエラーが検出された場合には、エラーが検出された旨の情報を第1ROM領域において実装された当該処理へ引き渡して実行しているのである。このように構成した場合、復帰不可能な(即ち、回胴式遊技機Pを動作不能とする)状態へと移行させるという強制力をもった処理を、遊技性仕様を実装するためのプログラム(遊技進行を制御するためのプログラム)として実装することができる。
<Processing in the first ROM / RAM area>
Next, FIG. 29 is a flowchart of non-recoverable error processing according to the subroutine of step 1300 (second) in FIGS. 23, 24, 28, and 30 in the second embodiment. The difference from this embodiment is that the processing of this subroutine is processing in the first ROM / RAM area. That is, in the present embodiment, when executing the non-recoverable error process, the process implemented in the second ROM area is called. In the second embodiment, the process is implemented in the first ROM area. When an error is detected in various error detection processes in the second ROM / RAM area, information indicating that the error has been detected is transferred to the process implemented in the first ROM area and executed. It is. When configured in this way, a program for implementing a gameplay specification with a process having a forcible force to shift to a state in which it cannot be restored (that is, to make the spinning machine P inoperable) It can be implemented as a program for controlling the game progress.

<第2ROM・RAM領域における処理>
次に、図30は、第2実施形態におけるステップ1600のサブルーチンに係る、タイマ割り込み時処理のフローチャートである。本実施形態との相違点は、ステップ1648(第2)、ステップ1650(第2)及びステップ1654(第2)であり、即ち、ステップ1642で、内蔵乱数の更新状態が正常であった場合、ステップ1648(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の内蔵乱数異常フラグをオフにし、第1ROM領域の呼び出し元に復帰し、ステップ1654(第2)に移行する。他方、ステップ1640で、乱数更新用クロックの周波数が正常でなかった、又は、ステップ1642で、内蔵乱数の更新状態が正常でなかった場合に、ステップ1650(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域内の内蔵乱数異常フラグをオンにし、第1ROM領域の呼び出し元に復帰し、ステップ1654(第2)に移行する。
<Processing in the second ROM / RAM area>
Next, FIG. 30 is a flowchart of timer interruption processing according to the subroutine of step 1600 in the second embodiment. The difference from this embodiment is step 1648 (second), step 1650 (second), and step 1654 (second), that is, if the update state of the built-in random number is normal in step 1642, In step 1648 (second), the CPUC 100 turns off the built-in random number abnormality flag in the second RAM area based on the data in the second ROM / RAM area, and returns to the caller of the first ROM area. ). On the other hand, if the frequency of the random number update clock is not normal in step 1640, or if the update state of the internal random number is not normal in step 1642, in step 1650 (second), the CPUC 100 determines that the second ROM Based on the data in the RAM area, the built-in random number abnormality flag in the second RAM area is turned on, the process returns to the caller of the first ROM area, and the process proceeds to step 1654 (second).

<第1ROM・RAM領域における処理>
次に、ステップ1654(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内蔵乱数異常フラグがオフであるか否かを判定する。ステップ1654(第2)でYesの場合には、ステップ1636に移行し、Noの場合には、ステップ1648(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、内蔵乱数エラー表示をセットする(例えば、レジスタ領域内にエラー番号をセットする)。次に、ステップ1300(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、前述した、復帰不可能エラー処理をセットする。このように、第2実施形態においては、復帰不可能エラー処理及び発生している復帰不可能エラー表示(内蔵乱数エラー表示)のセット処理を、第1ROM・RAM領域にて実行するよう構成している。
<Processing in the first ROM / RAM area>
Next, in step 1654 (second), the CPUC 100 determines whether or not the internal random number abnormality flag is off based on the data in the first ROM / RAM area. In the case of Yes in step 1654 (second), the process proceeds to step 1636. In the case of No, in step 1648 (second), the CPUC 100 determines whether the built-in random number error is based on the data in the first ROM / RAM area. Set the display (for example, set the error number in the register area). Next, in step 1300 (second), the CPUC 100 sets the above-described unrecoverable error processing based on the data in the first ROM / RAM area. As described above, in the second embodiment, the non-recoverable error process and the set process of the generated non-recoverable error display (built-in random number error display) are executed in the first ROM / RAM area. Yes.

<第1ROM・RAM領域における処理>
次に、図31は、第2実施形態における、図30のステップ1900のサブルーチンに係る、電源断時処理のフローチャートである。本実施形態との相違点は、ステップ1905(第2)及びステップ1909(第2)であり、即ち、ステップ1904で、電源断処理済みフラグをオンにした後、ステップ1905(第2)で、CPUC100は、第1ROM・RAM領域内のデータに基づき、第1RAM領域の先頭アドレスから第1チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)を第1チェックサム領域にてセットする。次に、ステップ1906で、第2ROM領域のチェックサム算出処理を呼び出し、ステップ1909(第2)に移行する。
<Processing in the first ROM / RAM area>
Next, FIG. 31 is a flowchart of the power-off process according to the subroutine of Step 1900 of FIG. 30 in the second embodiment. The difference from the present embodiment is step 1905 (second) and step 1909 (second), that is, after turning on the power-off processing flag in step 1904, in step 1905 (second), The CPUC 100 calculates a checksum from the first address of the first RAM area to the address immediately before the first checksum area based on the data in the first ROM / RAM area, and information for error detection based on the calculated checksum (for example, The lower 1 byte of the calculated checksum or its complement) is set in the first checksum area. Next, in step 1906, the checksum calculation process of the second ROM area is called, and the process proceeds to step 1909 (second).

<第2ROM・RAM領域における処理>
次に、ステップ1909(第2)で、CPUC100は、第2ROM・RAM領域内のデータに基づき、第2RAM領域の先頭アドレスから第2チェックサム領域直前アドレスまでのチェックサムを算出し、当該算出したチェックサムに基づく誤り検出用情報(例えば、当該算出したチェックサムにおける下位1バイト、或いは、その補数となるもの)を第2チェックサム領域にてセットし、ステップ1910に移行する。前述したように、第2実施形態においては、チェックサム領域は第1チェックサム領域と第2チェックサム領域とに分かれており、同図下段に示されるように、第1チェックサム領域は第1RAM領域の最終アドレスに、第2チェックサム領域は第2RAM領域の最終アドレスに夫々存在している。また、第1RAM領域のチェックサム算出及びセットは第1ROM領域における処理が実行し、第2RAM領域のチェックサム算出及びセットは第2ROM領域における処理が実行するよう構成されている。
<Processing in the second ROM / RAM area>
Next, in step 1909 (second), the CPUC 100 calculates a checksum from the start address of the second RAM area to the immediately preceding address of the second checksum area based on the data in the second ROM / RAM area, and the calculation is performed. Error detection information based on the checksum (for example, the lower 1 byte of the calculated checksum or its complement) is set in the second checksum area, and the process proceeds to step 1910. As described above, in the second embodiment, the checksum area is divided into the first checksum area and the second checksum area. As shown in the lower part of FIG. The second checksum area exists at the final address of the area, and the second checksum area exists at the final address of the second RAM area. The checksum calculation and set of the first RAM area are executed in the first ROM area, and the checksum calculation and set of the second RAM area are executed in the second ROM area.

以上のように構成することで、第2実施形態に係る回胴式遊技機によれば、第1ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第2RAM領域を参照可能に構成し、且つ、第2ROM領域にて配置されているプログラムコードに基づくCPUC100の処理にて、第1RAM領域を参照可能に構成し、エラー検出等の遊技機に対して不正行為がなされる(例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等)ことを防御するための不正行為防止用のプログラムを第2ROM・RAM領域における処理にて実行し得るよう構成することで、遊技の進行に係る処理と領域を明確に分けることができ、本実施形態と同様に、当該不正行為防止用のプログラムの正当性を検証することが容易となる。   With the configuration as described above, according to the rotary type gaming machine according to the second embodiment, the second RAM area can be referred to by the processing of the CPUC 100 based on the program code arranged in the first ROM area. The first RAM area can be referred to by the processing of the CPUC 100 based on the program code that is configured and arranged in the second ROM area, and an illegal act is performed on the gaming machine such as error detection (for example, In the second ROM / RAM area, a program for preventing illegal acts is used to prevent unauthorized access to the game media slot and payout port to obtain game media by unauthorized means. By configuring so that it can be executed, the process and the area related to the progress of the game can be clearly separated, and the program for preventing illegal acts can be properly executed as in the present embodiment. It is easy to verify the sex.

(まとめ)
尚、以上の実施例において示した構成に基づき、以下のような概念を抽出(列記)することができる。但し、以下に列記する概念はあくまで一例であり、これら列記した概念の結合や分離(上位概念化)は勿論のこと、以上の実施例において示した更なる構成に基づく概念を、これら概念に付加してもよい。
(Summary)
The following concepts can be extracted (listed) based on the configuration shown in the above embodiments. However, the concepts listed below are merely examples, and the concepts based on the further configurations shown in the above embodiments are added to these concepts as well as the combination and separation (higher level conceptualization) of these listed concepts. May be.

はじめに、以上の実施例が解決しようとする課題について簡潔に述べる。遊技機の動作制御等を司るプログラム容量は、不正プログラムの混入防止(遊技機メーカーが提供するプログラムの正当性保障)の観点からその容量上限が厳しく規制されていると共に、遊技性仕様を実装するためのプログラムの他にも、遊技機に対して不正行為がなされる(例えば、遊技媒体の投入口や払出口に対して不正にアクセスして遊技媒体を不正な手段で得る、等)ことを防御するための不正行為防止用のプログラムも数多く実装されている。しかしながら、現状では、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとが混在してROM上に配置されていることが多く、その結果これらプログラムの正当性を検証することが困難となっているという課題が存在する。   First, the problems to be solved by the above embodiments will be briefly described. The program capacity for controlling the operation of gaming machines, etc., is strictly restricted from the viewpoint of preventing unauthorized program mixing (guaranteeing the legitimacy of programs provided by gaming machine manufacturers), and implements gaming specifications. In addition to a program for the purpose, an illegal act is performed on a gaming machine (for example, illegally accessing a game medium slot or payout port to obtain a game medium by an illegal means). A number of programs for preventing fraud are also implemented for protection. However, at present, a program for implementing the game playability specification and a program for preventing fraud are often mixed on the ROM, and as a result, it is difficult to verify the legitimacy of these programs. There is a problem of becoming.

本態様(1−1)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成されている
ことを特徴とする遊技機である。
The rotary type gaming machine according to this aspect (1-1)
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The gaming machine is configured to be divided into at least a second data area).

本態様(1−1)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the aspect (1-1), a program that exists in the first control area and is accessed from the CPU, and a program that exists in the second control area and is accessed from the CPU. Since they are arranged apart from each other on the memory map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or the dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(1−2)に係る回胴式遊技機は、
前記第二の終点アドレス値よりも大きく且つ前記第三の始点アドレス値よりも小さい一又は複数の前記アドレス値が存在し、当該一又は複数の前記アドレス値に対して、前記プログラム及び前記データのいずれともならない特殊情報が配置されている、本態様(1−1)の遊技機である。
The rotary type gaming machine according to this aspect (1-2)
There is one or more address values that are larger than the second end point address value and smaller than the third start point address value, and for the one or more address values, the program and the data This is a gaming machine according to the aspect (1-1) in which special information that cannot be used is arranged.

本態様(1−2)に係る回胴式遊技機によれば、前述した効果に加え、第一制御領域内に存在しCPUからアクセスされるプログラムと第一制御領域内に存在し読みだされるデータとを第一のブロックとし、第二制御領域内に存在しCPUからアクセスされるプログラムと第二制御領域内に存在し読みだされるデータとを第二のブロックとすると、第一のブロックと第二のブロックとの間には、CPUからアクセスされない特殊情報が配置されているので、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなって、双方のブロックの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一のブロック=遊技性仕様を実装するための制御ブロック、第二のブロック=不正行為防止用の制御ブロックとして配置することで、機能上性質の異なる双方の制御ブロックを、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方の制御ブロックの正当性を人為的に検証することが容易となる。   According to the rotary type gaming machine according to the aspect (1-2), in addition to the above-described effects, the program that exists in the first control area and is accessed by the CPU and the first control area are read out. The first block is the first block, and the program accessed in the second control area and accessed from the CPU and the data read and read in the second control area are the second block. Since special information that is not accessed by the CPU is arranged between the block and the second block, the special information is separated in the program source code or dump list, and the arrangement position of both blocks Can be clearly separated visually. As a result, for example, by arranging the first block as a control block for implementing the gaming specification and the second block as a control block for preventing fraud, both control blocks having different functional properties can be obtained. Since it is possible to clearly distinguish visually on the program source code or the dump list, it is easy to artificially verify the correctness of both control blocks.

本態様(1−3)に係る回胴式遊技機は、
前記特殊情報は、すべてのビットがゼロである、本態様(1−2)の遊技機である。
The rotary type gaming machine according to this aspect (1-3)
The special information is the gaming machine according to the aspect (1-2) in which all bits are zero.

本態様(1−3)に係る回胴式遊技機によれば、前述した効果に加え、第一のブロックと第二のブロックとの間に、CPUからアクセスされない特殊情報を配置するに際し、この特殊情報のすべてのビットがゼロであるため、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなる役割を好適に果たし、双方のブロックの配置位置を視覚上より明確に切り分けることができる。   According to the swivel type gaming machine according to the aspect (1-3), in addition to the above-described effects, the special information that is not accessed by the CPU is arranged between the first block and the second block. Since all bits of the special information are zero, the special information preferably serves as a delimiter in the program source code or dump list, and the arrangement positions of both blocks can be clearly separated visually. it can.

本態様(1−4)に係る回胴式遊技機は、
前記特殊情報は、予め定められたコード化手法により遊技機に関する情報がコード化されたビット列となる、本態様(1−2)の遊技機である。
The rotary type gaming machine according to this aspect (1-4)
The special information is the gaming machine according to the aspect (1-2), in which information relating to the gaming machine is coded by a predetermined coding method.

本態様(1−4)に係る回胴式遊技機によれば、前述した効果に加え、第一のブロックと第二のブロックとの間に、CPUからアクセスされない特殊情報を配置するに際し、この特殊情報が「遊技機に関する情報」となるため、プログラムソースコード上又はダンプリスト上において、この特殊情報が区切りとなる役割を果たすと共に、プログラムソースコードの出所を同時に示すことができるため、双方の制御ブロックの正当性を人為的に検証することが更に容易となる。   According to the swivel type gaming machine according to the present aspect (1-4), in addition to the above-described effects, when placing special information that is not accessed by the CPU between the first block and the second block, Since the special information becomes “information about the gaming machine”, the special information serves as a delimiter on the program source code or dump list, and the source of the program source code can be indicated at the same time. It becomes easier to artificially verify the validity of the control block.

本態様(1−5)に係る回胴式遊技機は、
前記第二制御領域にて配置されている全ての前記プログラムに係る総バイト数は、前記第一制御領域にて配置されている全ての前記プログラムに係る総バイト数よりも少なく、且つ、前記第二データ領域にて配置されている全ての前記データに係る総バイト数は、前記第一データ領域にて配置されている全ての前記データに係る総バイト数よりも少ない、本態様(1−1)の遊技機である。
The spinning machine according to this aspect (1-5)
The total number of bytes related to all the programs arranged in the second control area is smaller than the total number of bytes related to all the programs arranged in the first control area, and the first The total number of bytes related to all the data arranged in the two data areas is smaller than the total number of bytes related to all the data arranged in the first data area. ) Gaming machine.

本態様(1−5)に係る回胴式遊技機によれば、前述した効果に加え、第一のブロック=遊技性仕様を実装するための制御ブロック、第二のブロック=不正行為防止用の制御ブロックとして配置するよう構成した場合において、遊技性仕様を実装するためのデータ容量よりも不正行為防止用のデータ容量の方が小さくなる。ここで、不正行為防止用のデータは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、そのデータ容量を相対的に小さくして制限しておけば、不正行為防止用のデータの正当性を人為的に検証する労力を低減することが可能となる。   According to the swivel type gaming machine according to this aspect (1-5), in addition to the above-described effects, the first block = a control block for implementing the game play specification, and the second block = for preventing fraud In the case of being arranged as a control block, the data capacity for preventing fraud is smaller than the data capacity for implementing the game specification. Here, since the data for preventing fraud is likely to have different specifications for each gaming machine manufacturer, it is highly necessary to verify the validity artificially, but the data capacity is relatively small. If it is restricted, it is possible to reduce the labor for artificially verifying the validity of the data for preventing fraud.

本態様(2)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際には、前記第一データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第二データ領域にて配置されている前記データは読み出されないように構成されており、
前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際には、前記第二データ領域にて配置されている前記データが読み出されることが可能に構成され、前記第一データ領域にて配置されている前記データは読み出されないよう構成されている
ことを特徴とする遊技機である。
The rotary type gaming machine according to this aspect (2)
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When the CPU executes processing according to the program arranged in the first control area, the data arranged in the first data area can be read out, and the first The data arranged in two data areas is configured not to be read,
When the CPU executes processing according to the program arranged in the second control area, the data arranged in the second data area can be read out, and the first The gaming machine is configured such that the data arranged in one data area is not read out.

本態様(2)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the aspect (2), a program that exists in the first control area and is accessed by the CPU, and a program that exists in the second control area and is accessed by the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(2)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムは、第一制御領域内に存在し読みだされるデータに対してしかアクセスできず、第二制御領域内に存在しCPUからアクセスされるプログラムは、第二制御領域内に存在し読みだされるデータに対してしかアクセスできないため、第一制御領域内に存在しCPUからアクセスされるプログラムと第一制御領域内に存在し読みだされるデータとを第一のブロックとし、第二制御領域内に存在しCPUからアクセスされるプログラムと第二制御領域内に存在し読みだされるデータとを第二のブロックとすると、第一のブロックと第二のブロックとが機能上性質の異なる制御ブロックであることを担保容易となり、双方の制御ブロックの正当性を人為的に検証することが容易となる。   According to the rotary type gaming machine according to the aspect (2), the program that exists in the first control area and that is accessed from the CPU can be applied to the data that exists in the first control area and is read out. A program that can only be accessed and exists in the second control area and that is accessed by the CPU exists in the first control area because it can only access data that is present in the second control area and read. The program that is accessed from the CPU and the data that is present and read in the first control area is the first block, the program that is present in the second control area and is accessed from the CPU and is present in the second control area. If the data to be read is the second block, it is easy to ensure that the first block and the second block are control blocks having different functional properties. It is easy to artificially verify the validity.

本態様(3)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第二制御領域にて配置されている前記プログラムは、前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合に前記CPUによる処理が実行可能となるよう構成されている、
ことを特徴とする遊技機である。
The spinning machine according to the aspect (3) is
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
The program arranged in the second control area is configured to be able to execute processing by the CPU when there is a call instruction in the program arranged in the first control area. ,
It is a gaming machine characterized by this.

本態様(3)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the aspect (3), a program that exists in the first control area and is accessed from the CPU, and a program that exists in the second control area and is accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(3)に係る回胴式遊技機によれば、更に、第二制御領域内に存在しCPUからアクセスされるプログラムは、第一制御領域内に存在しCPUからアクセスされるプログラムにおける呼び出し命令があった場合においてのみCPUによる処理が実行可能となる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合にのみ限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となり、特に、不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (3), the program that exists in the second control area and is accessed by the CPU is called in the program that is present in the first control area and accessed by the CPU. Only when there is an instruction, processing by the CPU can be executed. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, the execution timing of the program for preventing fraud can be limited only when this call instruction is issued, so the execution timing of the program for preventing fraud can be determined on the program source code or dump list. It becomes clear visually, and in particular, it becomes easy to artificially verify the legitimacy of the program for preventing fraud. Here, the program for fraud prevention tends to have different specifications for each gaming machine manufacturer, so it is highly necessary to verify the validity artificially, but by configuring in this way, It is possible to reduce labor for verifying a program for preventing fraud.

本態様(4)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報(例えば、CPUC100内のレジスタで保持されている情報)を参照可能に構成されている
ことを特徴とする遊技機である。
The spinning machine according to the aspect (4) is
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When there is a call instruction in the program arranged in the first control area, and when the CPU executes processing according to the program arranged in the second control area, The gaming machine is configured to be able to refer to information (for example, information held in a register in the CPUC 100) stored at the time when a call instruction is issued.

本態様(4)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the spinning machine according to the aspect (4), a program that exists in the first control area and is accessed by the CPU, and a program that exists in the second control area and is accessed by the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not consecutive), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(4)に係る回胴式遊技機によれば、更に、第二制御領域内に存在しCPUからアクセスされるプログラムは、第一制御領域内に存在しCPUからアクセスされるプログラムにおける呼び出し命令があった場合においてCPUによる処理が実行可能となる。その際には、当該呼び出し命令があった時点で記憶されている情報として、例えば、CPU内のレジスタで保持されている情報(即ち、当該呼び出し命令がある直前に第一制御領域内に存在しCPUからアクセスされるプログラムで処理していた処理結果)を、第二制御領域内に存在しCPUからアクセスされるプログラムへと引き渡すことが可能となる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、主となる遊技性仕様を実装するためのプログラムの処理結果を引き継いで、従となる不正行為防止用のプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムの処理結果は、秘匿性の高い情報となり得るため、不正行為報知用の情報を外部出力し得る従となる不正行為防止用のプログラムへ無暗に引き渡してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の引き渡しタイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、(処理結果の引き渡しタイミングを含め)不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (4), the program that exists in the second control area and is accessed from the CPU is called in the program that is present in the first control area and accessed from the CPU. When there is an instruction, processing by the CPU can be executed. In this case, as information stored at the time when the call instruction is issued, for example, information held in a register in the CPU (that is, the information stored in the first control area immediately before the call instruction exists). The processing result processed by the program accessed from the CPU can be transferred to the program that exists in the second control area and is accessed from the CPU. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When deployed as a program, the master-slave relationship between the program for implementing the gameability specification and the program for preventing fraud can be established, and the processing result of the program for implementing the main gameability specification is taken over, It becomes possible to execute a program for preventing fraud. Here, since the processing result of the program for implementing the main gaming specification can be highly confidential information, the information for misconduct notification can be output externally to the subordinate fraud prevention program If it is handed over darkly, it may lead to a decrease in security, but the execution timing of the program for preventing fraud can be limited to this call instruction. In the list, the execution timing of the program for preventing fraud is clarified visually, and the delivery timing of the processing result is also clarified in the program source code or the dump list. Artificially verify the legitimacy of anti-fraud programs (including the timing of delivery) Theft is facilitated. Here, the program for fraud prevention tends to have different specifications for each gaming machine manufacturer, so it is highly necessary to verify the validity artificially, but by configuring in this way, It is possible to reduce labor for verifying a program for preventing fraud.

本態様(5)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報(例えば、CPUC100内のレジスタで保持されている情報)を当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理で更新可能に構成されている
ことを特徴とする遊技機である。
The spinning machine according to the aspect (5) is
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When there is a call instruction in the program arranged in the first control area, and when the CPU executes processing according to the program arranged in the second control area, Processing of the CPU according to the program arranged in the second control area based on the information stored in the call control instruction (for example, information held in a register in the CPUC 100) when the call instruction is issued The gaming machine is configured to be updatable.

本態様(5)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotating type gaming machine according to the aspect (5), a program that exists in the first control area and is accessed from the CPU, and a program that exists in the second control area and is accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(5)に係る回胴式遊技機によれば、更に、第二制御領域内に存在しCPUからアクセスされるプログラムは、第一制御領域内に存在しCPUからアクセスされるプログラムにおける呼び出し命令があった場合においてCPUによる処理が実行可能となる。その際には、当該呼び出し命令があった時点で記憶されている情報として、例えば、CPU内のレジスタで保持されている情報(即ち、当該呼び出し命令がある直前に第一制御領域内に存在しCPUからアクセスされるプログラムで処理していた処理結果)を、第二制御領域内に存在しCPUからアクセスされるプログラムで処理した処理結果で更新することが可能となる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、従となる不正行為防止用のプログラムの処理結果を引き継いで、主となる遊技性仕様を実装するためのプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムの処理結果は、秘匿性の高い情報となり得るため、不正行為報知用の情報を外部出力し得る従となる不正行為防止用のプログラムから無暗に更新してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の更新タイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、(処理結果の更新タイミングを含め)不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (5), the program that exists in the second control area and is accessed by the CPU is called in the program that exists in the first control area and is accessed by the CPU. When there is an instruction, processing by the CPU can be executed. In this case, as information stored at the time when the call instruction is issued, for example, information held in a register in the CPU (that is, the information stored in the first control area immediately before the call instruction exists). The processing result processed by the program accessed from the CPU) can be updated with the processing result processed by the program that exists in the second control area and is accessed from the CPU. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When deployed as a program, the master-slave relationship between the program for implementing the gameability specification and the program for preventing fraud can be established, and the processing result of the subordinate fraud prevention program is taken over to become the main game It becomes possible to execute a program for implementing the sex specification. Here, since the processing result of the program for implementing the main gaming specification can be highly confidential information, it is possible to output information for misconduct notification from a subsidiary program for preventing misconduct that can be output externally. If it is updated implicitly, there is a risk that security may be reduced, but the execution timing of the program for preventing fraud can be limited to the case where there is this call instruction. As a result of visually clarifying the execution timing of the program for preventing illegal acts on the dump list, the update timing of the processing result is also clarified on the program source code or the dump list. It is possible to artificially verify the legitimacy of anti-fraud programs (including the timing of updating results) To become. Here, the program for fraud prevention tends to have different specifications for each gaming machine manufacturer, so it is highly necessary to verify the validity artificially, but by configuring in this way, It is possible to reduce labor for verifying a program for preventing fraud.

本態様(6)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令に基づく前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理結果を、当該呼び出し命令から復帰した後で前記第一制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際において参照可能に構成されている
ことを特徴とする遊技機である。
The rotary type gaming machine according to the aspect (6)
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When there is a call instruction in the program arranged in the first control area, and when the CPU executes processing according to the program arranged in the second control area, After the CPU returns the processing result according to the program arranged in the second control area based on the call instruction, the CPU executes the program arranged in the first control area after returning from the call instruction. The gaming machine is configured to be able to refer to when executing the process.

本態様(6)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the aspect (6), the program that exists in the first control area and is accessed from the CPU, and the program that is present in the second control area and accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(6)に係る回胴式遊技機によれば、更に、第二制御領域内に存在しCPUからアクセスされるプログラムは、第一制御領域内に存在しCPUからアクセスされるプログラムにおける呼び出し命令があった場合においてCPUによる処理が実行可能となる。その際には、当該呼び出し命令から復帰した時点で記憶されている情報として、例えば、CPU内のレジスタで保持されている情報(即ち、当該呼び出し命令から復帰する直前に第二制御領域内に存在しCPUからアクセスされるプログラムで処理していた処理結果)を、第一制御領域内に存在しCPUからアクセスされるプログラムへ引き渡すことが可能となる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの主従関係を構築でき、従となる不正行為防止用のプログラムの処理結果を引き継いで、主となる遊技性仕様を実装するためのプログラムを実行可能となる。ここで、主となる遊技性仕様を実装するためのプログラムは、秘匿性の高い情報を処理し得るため、不正行為防止用の情報を外部から取り込み得る従となる不正行為防止用のプログラムの処理結果を無暗に引き渡してしまうと、セキュリティ性の低下に繋がってしまう恐れがあるが、不正行為防止用のプログラムの実行タイミングを、この呼び出し命令があった場合に限定できるため、プログラムソースコード上又はダンプリスト上において、不正行為防止用のプログラムの実行タイミングが視覚上明確となる結果、処理結果の引き渡しタイミングについても、プログラムソースコード上又はダンプリスト上において明確化されることにより、特に、(処理結果の引き渡しタイミングを含め)不正行為防止用のプログラムの正当性を人為的に検証することが容易となる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、このように構成しておくことで、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (6), the program that exists in the second control area and that is accessed by the CPU is called in the program that exists in the first control area and is accessed by the CPU. When there is an instruction, processing by the CPU can be executed. In that case, as information stored at the time of returning from the call instruction, for example, information held in a register in the CPU (that is, in the second control area immediately before returning from the call instruction) The processing result processed by the program accessed from the CPU) can be transferred to the program that exists in the first control area and is accessed from the CPU. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When deployed as a program, the master-slave relationship between the program for implementing the gameability specification and the program for preventing fraud can be established, and the processing result of the subordinate fraud prevention program is taken over to become the main game It becomes possible to execute a program for implementing the sex specification. Here, since the program for implementing the main gaming specifications can process highly confidential information, the processing of the secondary fraud prevention program that can take in the information for fraud prevention from the outside If the result is handed over implicitly, security may be reduced. However, the execution timing of the program for preventing fraud can be limited to this call instruction. Alternatively, on the dump list, the execution timing of the program for preventing fraud is clarified visually, and the delivery timing of the processing result is also clarified on the program source code or on the dump list. Artificially verify the legitimacy of anti-fraud programs (including the timing of delivery of processing results) It becomes easy to testify. Here, the program for fraud prevention tends to have different specifications for each gaming machine manufacturer, so it is highly necessary to verify the validity artificially, but by configuring in this way, It is possible to reduce labor for verifying a program for preventing fraud.

本態様(7)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、第1エラー(例えば、ステップ1208に示される、メダル払出装置Hが遊技メダルで満杯となった事象)を検出した場合に第1エラーに伴うエラー処理(例えば、ステップ1210に示される、メダル満杯エラー状態の制御処理)を実行可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、第2エラー(例えば、ステップ1044に示される、設定値に係るデータが正常範囲内でない事象)を検出した場合に第2エラーに伴うエラー処理(例えば、ステップ1048及びステップ1300に示される、復帰不可能エラー処理)を実行可能に構成されている
ことを特徴とする遊技機である。
The spinning machine according to the aspect (7) is
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
When a first error (for example, an event in which the medal payout device H is full of game medals shown in step 1208) is detected by the processing of the CPU according to the program arranged in the first control area. And an error process associated with the first error (for example, a medal full error state control process shown in step 1210) can be executed,
The second error (for example, an event in which the data related to the set value is not within the normal range shown in step 1044) is detected by the processing of the CPU according to the program arranged in the second control area. The gaming machine is configured to be capable of executing error processing associated with two errors (for example, non-recoverable error processing shown in steps 1048 and 1300).

本態様(7)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the present aspect (7), the program that exists in the first control area and is accessed from the CPU, and the program that is present in the second control area and accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(7)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムによって処理される第1エラーに伴うエラー処理と、第二制御領域内に存在しCPUからアクセスされるプログラムによって処理される第2エラーに伴うエラー処理とを、プログラムソースコード上又はダンプリスト上において、明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、第1エラーに伴うエラー処理を、遊技進行上において(即ち、不正行為がなされなくとも)発生し得るエラーとし、第2エラーに伴うエラー処理は、不正行為がなされた際において発生し得るエラーとし、両者のエラー処理が果たす役割が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、第2エラーに伴うエラー処理の必要性を、第1エラーに伴うエラー処理と対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (7), the error processing accompanying the first error processed by the program that exists in the first control area and is accessed from the CPU, and the second control area Can be clearly separated on the program source code or the dump list from the error processing associated with the second error processed by the program accessed by the CPU. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, the error handling associated with the first error is an error that can occur in the game progress (ie, even if no fraud is performed), and the error handling associated with the second error is It can be clarified that the roles of error processing are different from each other. Here, since the specification for the anti-fraud program is likely to be different for each gaming machine maker, it is highly necessary to verify the validity by hand, but the necessity of error processing associated with the second error Can be easily verified in comparison with the error processing associated with the first error, so that it is possible to reduce the labor for verifying the program for preventing fraud.

本態様(8)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記RAMは、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出(例えば、チェックサムチェックを行う手法)と前記第二情報格納領域に記憶された処理結果データに関する誤り検出用情報に基づく誤り検出(例えば、チェックサムチェックを行う手法)とを別々に行うよう構成されている
ことを特徴とする遊技機である。
The spinning machine according to the aspect (8) is
A gaming machine including a ROM (for example, built-in ROMC110), a RAM (for example, built-in RAMC120), and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
The RAM is
A first information storage area (for example, a first RAM area) for storing processing result data by the CPU according to the program arranged in the first control area;
A second information storage area (for example, a second RAM area) for storing processing result data by the CPU according to the program arranged in the second control area;
When performing error detection on the processing result data stored in the first information storage area and the processing result data stored in the second information storage area, the processing result data stored in the first information storage area Error detection based on error detection information (for example, a method for performing checksum check) and error detection based on error detection information regarding processing result data stored in the second information storage area (for example, a method for performing checksum check) ) And the game machine are characterized by being performed separately.

本態様(8)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the rotary type gaming machine according to the present aspect (8), the program that exists in the first control area and is accessed from the CPU, and the program that is present in the second control area and accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(8)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムによって処理される処理結果と、第二制御領域内に存在しCPUからアクセスされるプログラムによって処理される処理結果とを、別々の情報格納領域へ格納することができ、その際には、当該格納された処理結果の誤り検出を行う際に、夫々の情報格納領域に対して別々に誤り検出を行うことができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムによって処理される処理結果と不正行為防止用のプログラムによって処理される処理結果とが混在して格納されないことを担保でき、且つ、当該格納された処理結果が仮に破壊された場合、当該双方の処理結果のいずれが破壊されたのかを明確に知ることができる。よって、例えば、不正行為防止用のプログラムによって処理される処理結果の重要性が低い場合には、仮に不正行為防止用のプログラムによって処理される処理結果が破壊されてしまった場合であっても、遊技性仕様を実装するためのプログラムによって処理される処理結果が破壊されずに保持されていれば、処理を続行させるよう構成することも可能となる。   According to the rotary type gaming machine according to the aspect (8), the processing result processed by the program that is present in the first control area and accessed from the CPU, and the processing result that is present in the second control area from the CPU. The processing results processed by the accessed program can be stored in separate information storage areas. In that case, when performing error detection of the stored processing results, each information storage area On the other hand, error detection can be performed separately. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, it is possible to ensure that the processing result processed by the program for implementing the game playability specification and the processing result processed by the program for preventing fraud are not mixedly stored, and the storage If the processed result is destroyed, it is possible to clearly know which of the two processed results has been destroyed. Therefore, for example, when the importance of the processing result processed by the program for preventing fraud is low, even if the processing result processed by the program for preventing fraud is destroyed, If the processing result processed by the program for implementing the game playability specification is held without being destroyed, the processing can be continued.

本態様(9)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、RAM(例えば、内蔵RAMC120)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記RAMは、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第一情報格納領域(例えば、第1RAM領域)と、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUによる処理結果データを記憶する第二情報格納領域(例えば、第2RAM領域)と
を有し、
前記第一情報格納領域に記憶された処理結果データ及び前記第二情報格納領域に記憶された処理結果データの誤り検出を行う際には、前記第一情報格納領域に記憶された処理結果データと前記第二情報格納領域に記憶された処理結果データとを通算した誤り検出用情報に基づき誤り検出を行う(例えば、チェックサムチェックを行う手法)よう構成されている
ことを特徴とする遊技機である。
The spinning machine according to this aspect (9)
A gaming machine including a ROM (for example, built-in ROMC110), a RAM (for example, built-in RAMC120), and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
The RAM is
A first information storage area (for example, a first RAM area) for storing processing result data by the CPU according to the program arranged in the first control area;
A second information storage area (for example, a second RAM area) for storing processing result data by the CPU according to the program arranged in the second control area;
When error detection is performed on the processing result data stored in the first information storage area and the processing result data stored in the second information storage area, the processing result data stored in the first information storage area A gaming machine configured to perform error detection (for example, a method of performing a checksum check) based on error detection information added to the processing result data stored in the second information storage area is there.

本態様(9)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the swivel type gaming machine according to the present aspect (9), a program that exists in the first control area and is accessed by the CPU, and a program that exists in the second control area and is accessed by the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(9)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムによって処理される処理結果と、第二制御領域内に存在しCPUからアクセスされるプログラムによって処理される処理結果とを、別々の情報格納領域へ格納することができ、その際には、当該格納された処理結果の誤り検出を行う際に、夫々の情報格納領域を統合したものに対して誤り検出を行うことができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムによって処理される処理結果と不正行為防止用のプログラムによって処理される処理結果とが混在して格納されないことを担保でき、且つ、当該格納された処理結果が仮に破壊された場合、当該双方の処理結果のいずれかが破壊されたことを簡易的に知ることができる。よって、例えば、不正行為防止用のプログラムによって処理される処理結果の重要性が高い場合には、遊技性仕様を実装するためのプログラムによって処理される処理結果及び不正行為防止用のプログラムによって処理される処理結果のいずれもが破壊されていないことが簡易的に導出できた場合においてのみ、処理を続行させるよう構成することが可能となる。   According to the spinning machine according to the aspect (9), the processing result processed by the program that exists in the first control area and is accessed from the CPU, and the processing result that exists in the second control area and from the CPU. The processing results processed by the accessed program can be stored in separate information storage areas. In this case, when performing error detection of the stored processing results, the respective information storage areas are stored. Error detection can be performed on the integrated one. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, it is possible to ensure that the processing result processed by the program for implementing the game playability specification and the processing result processed by the program for preventing fraud are not mixedly stored, and the storage If the processed result is destroyed, it can be easily known that one of the two processed results is destroyed. Therefore, for example, when the importance of the processing result processed by the program for preventing fraud is high, the processing result processed by the program for implementing the gaming specifications and the program for preventing fraud are processed. It can be configured to continue the processing only when it can be easily derived that none of the processing results is destroyed.

本態様(10)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、所定のセンサ部(例えば、第1投入センサD20sや第2投入センサD30s)からの入力信号に基づき、所定の事象(例えば、ステップ1227に示される、遊技メダルを1枚受け付けた事象)の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、前記所定のセンサ部からの入力信号に基づき、遊技進行に係る異常な事象(例えば、ステップ1400のサブルーチンに示される、投入メダル逆流エラーや投入メダル滞留エラー等)の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
The spinning machine according to this aspect (10)
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
Based on an input signal from a predetermined sensor unit (for example, the first input sensor D20s or the second input sensor D30s) by the processing of the CPU according to the program arranged in the first control region, a predetermined event ( For example, it is configured to be able to determine whether or not the occurrence of an event that received one game medal (shown in step 1227) occurs,
Based on the input signal from the predetermined sensor unit by the processing of the CPU according to the program arranged in the second control area, an abnormal event related to game progress (for example, shown in a subroutine of step 1400, The gaming machine is configured to be able to determine whether or not an inserted medal backflow error or an inserted medal staying error has occurred.

本態様(10)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the spinning cylinder gaming machine according to the aspect (10), the program that exists in the first control area and is accessed from the CPU, and the program that exists in the second control area and is accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(10)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る正常な事象の発生有無を判定し、第二制御領域内に存在しCPUからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る異常な事象の発生有無を判定することができ、いずれの場合においても、同一のセンサ信号に基づく判定とすることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムにおいては、当該同一のセンサ信号を遊技進行上必要な入力信号として取り扱い、不正行為防止用のプログラムにおいては、当該同一のセンサ信号を不正行為防止上必要な入力信号として取り扱うことができるため、プログラムソースコード上又はダンプリスト上において、当該同一のセンサ信号の取り扱い方が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、当該同一のセンサ信号の取り扱い方に関する相違点を対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (10), the presence / absence of a normal event related to the game progress based on the sensor signal is further determined by a program that exists in the first control area and is accessed from the CPU. The presence or absence of an abnormal event related to the game progress based on the sensor signal can be determined by a program that exists in the second control area and is accessed by the CPU. In any case, the determination is based on the same sensor signal. It can be. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, the same sensor signal is handled as an input signal necessary for the progress of the game in the program for implementing the gameability specification, and the same sensor signal is illegal in the program for preventing illegal acts. Since it can be handled as an input signal necessary for preventing action, it can be clarified that the same sensor signal is handled differently on the program source code or on the dump list. Here, since the specification for the fraud prevention program is likely to be different for each gaming machine manufacturer, it is highly necessary to verify the validity artificially. Since it becomes easy to verify by comparing points, it is possible to reduce labor for verifying a program for preventing fraud.

本態様(11)に係る回胴式遊技機は、
ROM(例えば、内蔵ROMC110)と、CPU(例えば、CPUC100)とを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上(例えば、実施例において<メモリマップ>として示した主制御チップCのメモリマップの一例)において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域(例えば、第1ROM領域における第1制御領域)と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域(例えば、第1ROM領域における第1データ領域)と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域(例えば、第2ROM領域における第2制御領域)と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域(例えば、第2ROM領域における第2データ領域)と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、遊技媒体の払出しを指示する制御信号(例えば、ホッパモータ駆動信号)と所定のセンサ部(例えば、第1払出センサH10sや第2払出センサH20s)の非検出時間とに基づき、遊技進行に係る異常な事象である第一異常事象(例えば、ステップ1279に示される、ホッパ駆動後において遊技メダル1枚の払出動作が行われていない事象)の発生有無を判定可能に構成され、
前記第二制御領域にて配置されている前記プログラムに従う前記CPUの処理によって、前記所定のセンサ部の検出時間に基づき、遊技進行に係る異常な事象である第二異常事象(例えば、ステップ1450のサブルーチンに示される、払出メダル滞留エラー)の発生有無を判定可能に構成されている
ことを特徴とする遊技機である。
The spinning machine according to this aspect (11)
A gaming machine including a ROM (for example, built-in ROMC110) and a CPU (for example, CPUC100),
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order (for example, an example of the memory map of the main control chip C shown as <memory map> in the embodiment)
A first control area (for example, a first control area in the first ROM area) in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area (for example, in the first ROM area) in which the data is arranged with respect to the address value continuous from the second start address value larger than the first end address value to the second end address value. First data area),
A second control area (for example, in the second ROM area) in which the program is arranged for the address value continuous from a third start address value that is larger than the second end address value to a third end address value. Second control region),
A second data area (for example, in the second ROM area) in which the data is arranged with respect to the address value continuous from the fourth start point address value larger than the third end point address value to the fourth end point address value. The second data area), and
A control signal (for example, a hopper motor drive signal) for instructing payout of the game medium and a predetermined sensor unit (for example, the first payout sensor H10s or the like) by processing of the CPU according to the program arranged in the first control area Based on the non-detection time of the second payout sensor H20s), a payout operation for one game medal is performed after the hopper is driven, as shown in step 1279, which is an abnormal event related to game progress. It is possible to determine whether or not an event has occurred,
Based on the detection time of the predetermined sensor unit by the processing of the CPU according to the program arranged in the second control area, a second abnormal event (for example, step 1450) A gaming machine configured to be able to determine whether or not a payout medal retention error (shown in a subroutine) has occurred.

本態様(11)に係る回胴式遊技機によれば、第一制御領域内に存在しCPUからアクセスされるプログラムと、第二制御領域内に存在しCPUからアクセスされるプログラムとが、メモリマップ上において離隔して(アドレスが連続しない配置で)配置されているため、プログラムソースコード上又はダンプリスト上において、双方のプログラムの配置位置を視覚上明確に切り分けることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置することで、遊技性仕様を実装するためのプログラムと不正行為防止用のプログラムとの配置位置を、プログラムソースコード上又はダンプリスト上において視覚上明確に切り分けることができるため、双方のプログラムの正当性を人為的に検証することが容易となる。また、第一制御領域内に存在しCPUからアクセスされるプログラムの方が、第二制御領域内に存在しCPUからアクセスされるプログラムよりも若いアドレスに配置されているため、CPUが最初に実行するプログラムを第一制御領域内に存在しCPUからアクセスされるプログラム(即ち、遊技性仕様を実装するためのプログラム)に限定することが容易となる。   According to the spinning cylinder gaming machine according to the aspect (11), the program that exists in the first control area and is accessed from the CPU, and the program that is present in the second control area and accessed from the CPU are stored in the memory. Since they are arranged apart from each other on the map (in an arrangement in which addresses are not continuous), the arrangement positions of both programs can be clearly separated visually on the program source code or dump list. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud By arranging it as a program, it is possible to clearly distinguish the placement position of the program for implementing the game playability specification and the program for preventing fraud on the program source code or the dump list. It becomes easy to artificially verify the legitimacy of the program. In addition, since the program that exists in the first control area and is accessed by the CPU is located at a lower address than the program that exists in the second control area and is accessed by the CPU, the CPU executes first. It is easy to limit the program to be executed to a program that exists in the first control area and is accessed by the CPU (that is, a program for implementing game play specifications).

本態様(11)に係る回胴式遊技機によれば、更に、第一制御領域内に存在しCPUからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る「軽度となる」異常な事象の発生有無を判定し、第二制御領域内に存在しCPUからアクセスされるプログラムによってセンサ信号に基づく遊技進行に係る「重度となる」異常な事象の発生有無を判定することができ、いずれの場合においても、同一のセンサ信号に基づく判定とすることができる。その結果、例えば、第一制御領域内に存在しCPUからアクセスされるプログラム=遊技性仕様を実装するためのプログラム、第二制御領域内に存在しCPUからアクセスされるプログラム=不正行為防止用のプログラムとして配置した場合、遊技性仕様を実装するためのプログラムにおいては、当該同一のセンサ信号を通常の遊技進行上において発生し得るエラー検出に必要な入力信号として取り扱い、不正行為防止用のプログラムにおいては、当該同一のセンサ信号を不正行為防止上必要な(即ち、通常の遊技進行上においては発生し難いエラー検出に必要な)入力信号として取り扱うことができるため、プログラムソースコード上又はダンプリスト上において、当該同一のセンサ信号の取り扱い方が異なることを明確化することができる。ここで、不正行為防止用のプログラムは、遊技機メーカー毎に仕様が相違し易いため、正当性を人為的に検証する必要性が高いものとなるが、当該同一のセンサ信号の取り扱い方に関する相違点を対比して検証することが容易となることにより、不正行為防止用のプログラムについて検証するための労力を低減できる。   According to the swivel type gaming machine according to the aspect (11), there is further an event of an “exceptional” abnormal event related to a game progress based on a sensor signal by a program that exists in the first control area and is accessed from the CPU. The presence / absence of occurrence can be determined, and the presence / absence of a “serious” abnormal event related to the game progress based on the sensor signal can be determined by a program that exists in the second control area and is accessed by the CPU. The determination based on the same sensor signal can also be made. As a result, for example, a program that exists in the first control area and is accessed from the CPU = a program for implementing a game play specification, and a program that exists in the second control area and is accessed from the CPU = for preventing fraud When arranged as a program, in the program for implementing the gameability specification, the same sensor signal is handled as an input signal necessary for error detection that can occur during normal game progress, and in the program for preventing fraud Can handle the same sensor signal as an input signal necessary for preventing fraud (that is, necessary for error detection that is difficult to occur during normal game progression), and therefore can be used on program source code or dump list. , It can be clarified that the handling of the same sensor signal is different. . Here, since the specification for the fraud prevention program is likely to be different for each gaming machine manufacturer, it is highly necessary to verify the validity artificially. Since it becomes easy to verify by comparing points, it is possible to reduce labor for verifying a program for preventing fraud.

P 回胴式遊技機、DU 前扉(ドア)
D 扉基板、D10s 投入受付センサ
D20s 第1投入センサ、D30s 第2投入センサ
D40 停止ボタン、D41 左停止ボタン
D42 中停止ボタン、D43 右停止ボタン
D50 スタートレバー、D60 精算ボタン
D70 表示パネル、D80 扉スイッチ
D90 コインシュータ、D100 ブロッカ
D130 上パネル、D140 下パネル
D150 装飾ランプユニット、D160 リール窓
D170 メダル投入口、D180 操作状態表示灯
D190 払出数表示装置、D200 クレジット数表示装置
D210 投入数表示灯、D220 ベットボタン
D230 メダル受け皿、D240 放出口
D250 特別遊技状態表示装置、D260 鍵穴
M 主制御基板、M10 設定扉スイッチ
M20 設定キースイッチ、M30 設定/リセットボタン
C 主制御チップ、M50 リール
M51 左リール、M52 中リール
M53 右リール
S 副制御基板、S10 LEDランプ
S20 スピーカ、S30 回胴バックライト
S40 演出表示装置、SC 副制御チップ
E 電源基板、E10 電源スイッチ
H メダル払出装置、H10s 第1払出センサ
H20s 第2払出センサ、H40 ホッパ
H50 ディスク、H50a ディスク回転軸
H60 遊技メダル出口、H70 放出付勢手段
H80 ホッパモータ
K 回胴基板、K10 回胴モータ
K20 回胴センサ
IN 中継基板
P Cylinder type game machine, DU front door (door)
D Door board, D10s Input acceptance sensor D20s First input sensor, D30s Second input sensor D40 Stop button, D41 Left stop button D42 Middle stop button, D43 Right stop button D50 Start lever, D60 Checkout button D70 Display panel, D80 Door switch D90 coin shooter, D100 blocker D130 upper panel, D140 lower panel D150 decoration lamp unit, D160 reel window D170 medal slot, D180 operation status indicator D190 payout number display device, D200 credit number display device D210 insertion number indicator light, D220 bet Button D230 Medal tray, D240 Release port D250 Special game state display device, D260 Key hole M Main control board, M10 Setting door switch M20 Setting key switch, M30 Setting / reset button C Main Control chip, M50 reel M51 Left reel, M52 Middle reel M53 Right reel S Sub control board, S10 LED lamp S20 Speaker, S30 Revolving backlight S40 Production display device, SC Sub control chip E Power board, E10 Power switch H Medal payout Device, H10s first payout sensor H20s second payout sensor, H40 hopper H50 disc, H50a disc rotation shaft H60 game medal outlet, H70 discharge urging means H80 hopper motor K spinner board, K10 spinner motor K20 spinner sensor IN relay board

Claims (1)

ROMと、CPUとを備えた遊技機であって、
前記ROMには、アドレスが割り当てられ、前記CPUに対する命令を司るプログラムと、前記プログラムに従い読みだされるデータとが記憶され、
前記ROM内における前記アドレス値が昇順にて連続しているメモリマップ上において、
第一の始点アドレス値から第一の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第一制御領域と、
前記第一の終点アドレス値よりも大きい第二の始点アドレス値から第二の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第一データ領域と、
前記第二の終点アドレス値よりも大きい第三の始点アドレス値から第三の終点アドレス値まで連続する前記アドレス値に対して前記プログラムが配置されている第二制御領域と、
前記第三の終点アドレス値よりも大きい第四の始点アドレス値から第四の終点アドレス値まで連続する前記アドレス値に対して前記データが配置されている第二データ領域と
に少なくとも分かれるよう構成され、
前記第一制御領域にて配置されている前記プログラムにおける呼び出し命令があった場合であって、前記第二制御領域にて配置されている前記プログラムに従い前記CPUが処理を実行する際においては、当該呼び出し命令があった時点で記憶されている情報を参照可能に構成されている
ことを特徴とする遊技機。
A gaming machine comprising a ROM and a CPU,
In the ROM, an address is assigned, and a program for managing instructions to the CPU and data read according to the program are stored.
On the memory map in which the address values in the ROM are continuous in ascending order,
A first control area in which the program is arranged for the address value continuous from a first start point address value to a first end point address value;
A first data area in which the data is arranged with respect to the address value continuous from a second start point address value larger than the first end point address value to a second end point address value;
A second control area in which the program is arranged with respect to the address value continuous from a third start point address value larger than the second end point address value to a third end point address value;
It is configured to be divided at least into a second data area in which the data is arranged for the address value continuous from a fourth start point address value larger than the third end point address value to a fourth end point address value. ,
When there is a call instruction in the program arranged in the first control area, and when the CPU executes processing according to the program arranged in the second control area, A gaming machine configured to be able to refer to information stored when a call instruction is issued.
JP2014240656A 2014-11-27 2014-11-27 Game machine Active JP6592889B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014240656A JP6592889B2 (en) 2014-11-27 2014-11-27 Game machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014240656A JP6592889B2 (en) 2014-11-27 2014-11-27 Game machine

Publications (2)

Publication Number Publication Date
JP2016101278A true JP2016101278A (en) 2016-06-02
JP6592889B2 JP6592889B2 (en) 2019-10-23

Family

ID=56087782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014240656A Active JP6592889B2 (en) 2014-11-27 2014-11-27 Game machine

Country Status (1)

Country Link
JP (1) JP6592889B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016220746A (en) * 2015-05-27 2016-12-28 株式会社三共 Slot machine

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002000878A (en) * 2000-06-21 2002-01-08 Daiman:Kk Game machine
JP2003220264A (en) * 2002-01-29 2003-08-05 Fuji Shoji:Kk Pachinko game machine
JP2009090019A (en) * 2007-10-11 2009-04-30 Le Tekku:Kk Security chip and collator for game machine
JP2009136408A (en) * 2007-12-05 2009-06-25 Daito Giken:Kk Game machine
JP2009207609A (en) * 2008-03-03 2009-09-17 Takao Co Ltd Game machine
JP2010284442A (en) * 2009-06-15 2010-12-24 Kyoraku Sangyo Kk Performance control board, game machine, performance method, and performance control program
JP2014064753A (en) * 2012-09-26 2014-04-17 Sankyo Co Ltd Game machine and detecting device
JP2016087257A (en) * 2014-11-07 2016-05-23 株式会社三共 Game machine

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002000878A (en) * 2000-06-21 2002-01-08 Daiman:Kk Game machine
JP2003220264A (en) * 2002-01-29 2003-08-05 Fuji Shoji:Kk Pachinko game machine
JP2009090019A (en) * 2007-10-11 2009-04-30 Le Tekku:Kk Security chip and collator for game machine
JP2009136408A (en) * 2007-12-05 2009-06-25 Daito Giken:Kk Game machine
JP2009207609A (en) * 2008-03-03 2009-09-17 Takao Co Ltd Game machine
JP2010284442A (en) * 2009-06-15 2010-12-24 Kyoraku Sangyo Kk Performance control board, game machine, performance method, and performance control program
JP2014064753A (en) * 2012-09-26 2014-04-17 Sankyo Co Ltd Game machine and detecting device
JP2016087257A (en) * 2014-11-07 2016-05-23 株式会社三共 Game machine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016220746A (en) * 2015-05-27 2016-12-28 株式会社三共 Slot machine

Also Published As

Publication number Publication date
JP6592889B2 (en) 2019-10-23

Similar Documents

Publication Publication Date Title
JP6432310B2 (en) Game machine
JP6578653B2 (en) Game machine
JP6376034B2 (en) Game machine
JP6547325B2 (en) Gaming machine
JP6197826B2 (en) Game machine
JP6398775B2 (en) Game machine
JP6572611B2 (en) Game machine
JP6659939B2 (en) Gaming machine
JP6387808B2 (en) Game machine
JP6398776B2 (en) Game machine
JP6604027B2 (en) Game machine
JP6572613B2 (en) Game machine
JP6578652B2 (en) Game machine
JP6592889B2 (en) Game machine
JP6376033B2 (en) Game machine
JP6582399B2 (en) Game machine
JP6592888B2 (en) Game machine
JP6659940B2 (en) Gaming machine
JP6503705B2 (en) Gaming machine
JP6503706B2 (en) Gaming machine
JP6503704B2 (en) Gaming machine
JP6507593B2 (en) Gaming machine
JP6604028B2 (en) Game machine
JP6572614B2 (en) Game machine
JP6572612B2 (en) Game machine

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190408

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: 20190827

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190909

R150 Certificate of patent or registration of utility model

Ref document number: 6592889

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