JP2011005121A - Game machine, authentication method and program - Google Patents
Game machine, authentication method and program Download PDFInfo
- Publication number
- JP2011005121A JP2011005121A JP2009153329A JP2009153329A JP2011005121A JP 2011005121 A JP2011005121 A JP 2011005121A JP 2009153329 A JP2009153329 A JP 2009153329A JP 2009153329 A JP2009153329 A JP 2009153329A JP 2011005121 A JP2011005121 A JP 2011005121A
- Authority
- JP
- Japan
- Prior art keywords
- command
- control unit
- authentication
- instruction code
- unit
- 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.)
- Withdrawn
Links
Images
Landscapes
- Pinball Game Machines (AREA)
Abstract
Description
本発明は、パチンコ機等の遊技機に関する。 The present invention relates to a gaming machine such as a pachinko machine.
従来、各種の電子機器に搭載された制御基板に対する不正を防止するための技術が提案されている。制御基板には、パチンコ遊技機などの電子機器全体の動作を司る主制御基板と、電子機器の各部の動作を行なう被制御基板(周辺基板)がある。主制御基板は、周辺基板に制御コマンドを含む制御信号を出力する。周辺基板は、主制御基板から送信された制御信号に従って動作を実行する。 2. Description of the Related Art Conventionally, techniques for preventing fraud with respect to control boards mounted on various electronic devices have been proposed. The control board includes a main control board that controls the operation of the entire electronic device such as a pachinko game machine, and a controlled board (peripheral board) that operates each part of the electronic device. The main control board outputs a control signal including a control command to the peripheral board. The peripheral board performs an operation according to the control signal transmitted from the main control board.
制御基板に対する不正には、例えば、正規の主制御基板を不正な制御基板に取り替えたり、正規な主制御用基板と被制御基板との間に不正な制御基板を接続するなどの方法がある。このような不正を防止するため、制御コマンドに、主制御基板を認証するための認証データを付加しておき、それを用いて主制御基板を認証する技術が提案されている(例えば、特許文献1参照)。 Examples of frauds with respect to the control board include a method of replacing a regular main control board with an unauthorized control board, or connecting an unauthorized control board between a regular main control board and a controlled board. In order to prevent such injustice, a technique has been proposed in which authentication data for authenticating the main control board is added to the control command, and the main control board is authenticated using the authentication data (for example, Patent Documents). 1).
特許文献1では、図37に示すように、主制御部201と、主制御部201によって送信された制御コマンドに基づいて所定の処理を行なう周辺基板(演出制御部202a、賞球制御部203d)とを備えるパチンコ遊技機において、不正を防止する。すなわち、同図において、主制御部201の付加部312は、周辺基板に送信する制御コマンドが、抽選時の抽選結果がはずれの場合の処理を周辺基板に実行させるはずれコマンドである場合、主制御部201を認証するための認証データを制御コマンドに付加する。送信部314aは、制御コマンドを周辺基板に送信する。周辺基板の受信部321は、主制御部201から送信された制御コマンドを受信する。認証部322は、受信部321によって受信された制御コマンドを用いて主制御部201を認証する。
In Patent Document 1, as shown in FIG. 37, a
なお、主制御部201の制御コマンド格納部311は、周辺基板に送信する制御コマンドのデータ(制御コマンドデータ)を格納する。記録部313には、所定のプログラムコードが記録されている。
The control
報知信号出力部323は、認証部322によって主制御部が認証されなかった場合に、報知信号を出力する。周辺基板が演出制御部202aを有する場合、報知信号出力部323は、例えば、図柄表示部(不図示)やランプ制御部(不図示)に報知信号を出力する。
The notification signal output unit 323 outputs a notification signal when the
ところで、セキュリティの強度を大きくして主制御部201を認証しようとすると、認証データの容量が大きくなる。認証データの容量を大きくすると、周辺基板の処理負荷が大きくなるので、好ましくない。そのため、従来の遊技機では、セキュリティの強度を大きくしようとすると設計上の制約を受けることになる。
また、主制御部のCPUが物理的に解析され、例えばROM内の制御プログラムを不正な内容に差し替えて製造された不正なCPUが主制御部に実装されるような場合がある。そのような場合について、遊技動作に影響が無く、かつ、比較的簡易な構成でありながら、効果的にチェックを行うことで、不正を有効に防止できる方法が提案されていない。
By the way, if the strength of security is increased and authentication of the
In some cases, the CPU of the main control unit is physically analyzed, and for example, an unauthorized CPU manufactured by replacing the control program in the ROM with an unauthorized content is mounted on the main control unit. In such a case, no method has been proposed that can effectively prevent fraud by effectively checking the game operation without affecting the game operation and having a relatively simple configuration.
本発明は、セキュリティの強度を従来よりも大きくしても設計上の制約を受けずに、主制御部が正当であるか否かを判断することができる遊技機、認証方法、プログラムを提供することを目的とする。また、本発明は、主制御部のCPUに対する不正を防止できる遊技機、認証方法、プログラムを提供することを目的とする。 The present invention provides a gaming machine, an authentication method, and a program that can determine whether or not a main control unit is valid without being restricted by design even when the strength of security is increased as compared with the prior art. For the purpose. It is another object of the present invention to provide a gaming machine, an authentication method, and a program that can prevent fraud against the CPU of the main control unit.
上記課題を解決し上記目的を達成するために、本発明の遊技機は、所定条件の成立を契機として抽選を行う抽選手段(例えば、図15のステップS312、S314、図16のステップS404、S406に対応)と、図柄表示手段(例えば、図1の図柄表示部104に対応)で図柄を変動表示する図柄変動手段(例えば、図16のステップS414に対応)と、前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段(例えば、図16のステップS410、S412、S424に対応)とを有する主制御部を備える遊技機であって、
前記主制御部は、
遊技に関するデータの処理を行うデータ処理手段(例えば、図4のCPU202に対応)と、
前記データ処理手段が実行する命令に関する情報を外部に出力する出力手段(例えば、図4のIF210に対応)とを備え、
大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための大当たりリーチコマンドと、自らが正当であることを認証させるための認証データとを出力し、
さらに、
前記主制御部の出力を入力とし、前記大当たりリーチコマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御するとともに、前記認証データを出力する周辺部と、
前記周辺部から出力される前記認証データに基づいて前記主制御部が正当であるか否かを判断する認証部とを備え、
前記周辺部は、さらに演出に関するデータ処理を行うデータ処理装置と、前記データ処理装置によるアクセスを制御するアクセス制御装置とを備え、
前記アクセス制御装置は、前記データ処理を行うためのデータを記憶する記憶手段(例えば、図5のレジスタ334、336に対応)と、前記命令に関する情報を前記出力手段から入力する入力手段(例えば、図5の入力部331に対応)と、前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段(例えば、図5のアクセス制御部338に対応)とを有することを特徴とする。
In order to solve the above problems and achieve the above object, the gaming machine of the present invention is a lottery means (for example, steps S312 and S314 in FIG. 15 and steps S404 and S406 in FIG. 16) for performing a lottery upon establishment of a predetermined condition. ), Symbol changing means for variably displaying symbols (for example, corresponding to step S414 in FIG. 16) by symbol display means (for example, corresponding to the
The main control unit
Data processing means (for example, corresponding to the
Output means (for example, corresponding to IF210 in FIG. 4) that outputs information related to instructions executed by the data processing means to the outside;
Output a jackpot reach command for specifying a variation pattern for performing a reach effect among the variation patterns selected at the time of the jackpot, and authentication data for authenticating that it is valid,
further,
With the output of the main control unit as an input, and controlling the execution of the effect or the pre-processing or post-processing based on the jackpot reach command, and a peripheral unit that outputs the authentication data;
An authentication unit that determines whether the main control unit is valid based on the authentication data output from the peripheral unit;
The peripheral portion further includes a data processing device that performs data processing related to the effect, and an access control device that controls access by the data processing device,
The access control device includes storage means for storing data for performing the data processing (for example, corresponding to the
このような構成によれば、周辺部とは別に、主制御部が正当であるか否かを判断する認証部を有するので、周辺部の負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。また、主制御部のデータ処理手段であるCPUと周辺部のアクセス制御装置とによって、主制御部と周辺部との接続状態についての接続機器認証を行うことができる。また、数多い制御コマンドのうち、大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための大当たりリーチコマンドに認証データを付加して出力するため、認証データが盗聴される可能性を小さくすることができる。 According to such a configuration, since the main control unit has an authentication unit that determines whether or not the main control unit is legitimate, the burden on the peripheral unit is reduced, and the security strength is increased compared to the related art. Thus, it can be determined whether or not the main control unit is valid. Further, the connected device authentication for the connection state between the main control unit and the peripheral unit can be performed by the CPU as the data processing means of the main control unit and the peripheral access control device. Also, among the many control commands, the authentication data is added to the jackpot reach command for specifying the variation pattern for performing the reach effect among the variation patterns selected at the jackpot, and the authentication data may be wiretapped. Can be reduced.
所定条件が成立すると、抽選手段により、これを契機として抽選が行われる。また、図柄変動手段により、図柄表示手段で図柄が変動表示される。そして、特賞状態発生手段により、抽選手段の抽選結果に基づいて、所定の態様で図柄が停止した後に特賞状態が発生する。また、特賞状態とは、遊技者に対して所定の遊技価値を付与可能な有利な状態をいい、例えば、大入賞口の開放動作等が含まれる。また、所定条件の成立としては、パチンコ機である場合は、例えば、始動入賞口に遊技球が入賞すること、パチスロ機である場合は、例えば、遊技開始を指示する操作レバーが操作されることが含まれる。 When the predetermined condition is established, the lottery means performs lottery with this as a trigger. Further, the symbol changing means displays the symbols in a variable manner by the symbol display means. Then, the special prize state is generated by the special prize state generating means after the symbol is stopped in a predetermined manner based on the lottery result of the lottery means. Further, the special prize state means an advantageous state in which a predetermined game value can be given to the player, and includes, for example, an opening operation of a special prize opening. In addition, as for the establishment of the predetermined condition, for a pachinko machine, for example, a game ball wins a start winning opening, and for a pachislot machine, for example, an operation lever that instructs a game start is operated. Is included.
周辺部に設けられるデータ処理装置では、主制御部のデータ処理手段が実行する命令に関する情報(以下、適宜、命令情報と呼ぶ)を取得する。同じく周辺部に設けられるアクセス制御装置では、入力手段により、命令に関する情報が入力され、アクセス制御手段により、入力された命令に関する情報に基づいて、データ処理装置による記憶手段へのアクセスが制御される。これにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。 In the data processing device provided in the peripheral portion, information related to commands executed by the data processing means of the main control unit (hereinafter referred to as command information as appropriate) is acquired. Similarly, in the access control device provided in the peripheral portion, information relating to an instruction is input by the input means, and access to the storage means by the data processing device is controlled by the access control means based on the information relating to the input instruction. . This reduces the possibility that the data in the storage means will be illegally rewritten or read out.
ここで、命令に関する情報としては、例えば、(1)命令コード若しくは命令コード列、(2)命令コード若しくは命令コード列の記憶位置を示す記憶位置情報(例えば、アドレス)、(3)命令コード若しくは命令コード列の実行結果を示す実行結果情報(例えば、フラグレジスタの値)、または(4)それら情報のうち1若しくは複数の情報に基づき得られる2次情報(例えば、演算等により得られる演算情報)が含まれる。 Here, as the information regarding the instruction, for example, (1) instruction code or instruction code string, (2) storage position information (for example, address) indicating the storage position of the instruction code or instruction code string, (3) instruction code or Execution result information indicating the execution result of the instruction code string (for example, the value of the flag register), or (4) secondary information obtained based on one or a plurality of pieces of information (for example, operation information obtained by operation or the like) ) Is included.
また、記憶手段は、あらゆる手段でかつあらゆる時期にデータを記憶可能なものを含み、所定のデータをあらかじめ記憶してあるものであってもよいし、所定のデータをあらかじめ記憶することなく、本遊技機の動作時に外部からの入力等によって所定のデータを記憶するものであってもよい。 The storage means may include any means that can store data at any time, and may store predetermined data in advance, or may store the present data without storing the predetermined data in advance. Predetermined data may be stored by an external input or the like during operation of the gaming machine.
また、アクセスの「制御」については、例えば、(1)命令に関する情報または当該情報に基づき得られる2次情報に基づいてアクセス許可条件が成立すると判定したときは、アクセスの一部または全部を許可し、アクセス許可条件が成立しないと判定したときは、アクセスの一部または全部を制限すること、(2)命令に関する情報または当該情報に基づき得られる2次情報に基づいてアクセス制限条件が成立すると判定したときは、アクセスの一部または全部を制限し、アクセス制限条件が成立しないと判定したときは、アクセスの一部または全部を許可することが含まれる。アクセス許可条件またはアクセス制限条件としては、例えば、(1)命令に関する情報または当該情報に基づき得られる2次情報が所定の値、内容または範囲内であること、(2)命令に関する情報または当該情報に基づき得られる2次情報が所定の値、内容または範囲内でないことが含まれる。また、アクセスの「制限」については、例えば、(1)アクセスの一部または全部を禁止すること、(2)アクセス要求に応じたアクセス結果が得られないように制御すること(例えば、アクセス要求に係るデータとは異なるデータを読み出させまたは書き込ませること)が含まれる。 As for “control” of access, for example, (1) when it is determined that an access permission condition is established based on information on an instruction or secondary information obtained based on the information, a part or all of the access is permitted. If it is determined that the access permission condition is not satisfied, the access restriction condition is satisfied based on information related to the instruction or secondary information obtained based on the information, or (2) restricting part or all of the access. When it is determined, part or all of the access is restricted, and when it is determined that the access restriction condition is not satisfied, permitting part or all of the access is included. As the access permission condition or the access restriction condition, for example, (1) information related to the instruction or secondary information obtained based on the information is within a predetermined value, content, or range, and (2) information related to the instruction or the information It is included that the secondary information obtained based on is not within a predetermined value, content or range. As for “restriction” of access, for example, (1) prohibiting a part or all of access, and (2) controlling so that an access result corresponding to the access request cannot be obtained (for example, access request Read or write data different from the related data).
また、命令に関する情報における当該命令と、アクセスの制御との関係については、例えば、(1)記憶手段へのアクセスのためにデータ処理手段が実行する命令に関する情報に基づいて、当該命令に係るアクセスを制御すること、(2)データ処理手段が実行する命令に関する情報に基づいて、当該命令よりも前または後に、記憶手段へのアクセスのためにデータ処理手段が実行する命令に係るアクセスを制御することが含まれる。(2)の場合は、因果関係が分かりにくく、不正行為が行われる可能性をさらに低減することができる。 Regarding the relationship between the instruction in the information related to the instruction and the access control, for example, (1) based on the information related to the instruction executed by the data processing means for accessing the storage means, the access related to the instruction (2) Based on the information related to the instruction executed by the data processing means, the access related to the instruction executed by the data processing means for accessing the storage means is controlled before or after the instruction. It is included. In the case of (2), the causal relationship is difficult to understand, and the possibility of fraudulent acts can be further reduced.
また、前記アクセス制御手段は、前記入力手段で入力した命令に関する情報に基づいてアクセス許可条件が成立すると判定したときは、前記記憶手段へのアクセスを許可し、前記アクセス許可条件が成立しないと判定したときは、前記記憶手段へのアクセスを制限してもよい。このような構成であれば、アクセス制御装置では、アクセス制御手段により、入力された命令に関する情報に基づいてアクセス許可条件が成立すると判定されると、記憶手段へのアクセスが許可される。これに対し、入力された命令に関する情報に基づいてアクセス許可条件が成立しないと判定されると、記憶手段へのアクセスが制限される。 In addition, when the access control unit determines that the access permission condition is satisfied based on the information related to the command input by the input unit, the access control unit determines that the access to the storage unit is permitted and the access permission condition is not satisfied. In such a case, access to the storage means may be restricted. With such a configuration, in the access control device, when it is determined by the access control means that the access permission condition is satisfied based on the information related to the input command, access to the storage means is permitted. On the other hand, if it is determined that the access permission condition is not satisfied based on the information related to the input command, access to the storage unit is restricted.
さらに、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列を、前記大当たりリーチコマンドと共に出力し、前記アクセス許可条件は、前記入力手段で入力した命令コードまたは命令コード列が所定のコードまたはコード列であることを含んでもよい。このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列が出力される。アクセス制御装置では、入力手段により、命令コードまたは命令コード列が入力され、アクセス制御手段により、入力された命令コードまたは命令コード列が所定のコードまたはコード列であると判定されると、記憶手段へのアクセスが許可される。これにより、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
また、前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段(例えば、図4のROM204に対応)をさらに有し、
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の前記命令コード記憶手段における記憶位置を示す記憶位置情報を出力し、前記アクセス許可条件は、前記入力手段で入力した記憶位置情報の記憶位置が所定の記憶位置であることを含んでもよい。
Furthermore, the output means outputs an instruction code or an instruction code string executed by the data processing means together with the jackpot reach command, and the access permission condition is determined by the instruction code or instruction code string input by the input means. Or a code string. With such a configuration, in the data processing apparatus, the output unit outputs an instruction code or an instruction code string executed by the data processing unit. In the access control device, an instruction code or an instruction code string is input by the input means, and when the access control means determines that the input instruction code or instruction code string is a predetermined code or code string, the storage means Access to is allowed. As a result, an illegally rewritten instruction code or instruction code string, or an instruction code or instruction code string whose contents have changed due to a bit error, is executed, so that the data in the storage means can be illegally rewritten or read. The possibility of doing is reduced.
The data processing device includes:
Further comprising instruction code storage means (for example, corresponding to the
The output means outputs storage position information indicating a storage position in the instruction code storage means of an instruction code or instruction code string executed by the data processing means, and the access permission condition is a storage position input by the input means The information storage position may include a predetermined storage position.
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列の命令コード記憶手段における記憶位置を示す記憶位置情報が出力される。アクセス制御装置では、入力手段により、記憶位置情報が入力され、アクセス制御手段により、入力された記憶位置情報の記憶位置が所定の記憶位置であると判定されると、記憶手段へのアクセスが許可される。これにより、不正な位置に記憶された命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。 With such a configuration, in the data processing apparatus, the output means outputs storage position information indicating the storage position in the instruction code storage means of the instruction code or instruction code string executed by the data processing means. In the access control device, storage position information is input by the input means, and access to the storage means is permitted when the access control means determines that the storage position of the input storage position information is a predetermined storage position. Is done. As a result, the possibility that the data in the storage means is illegally rewritten or read out by executing the instruction code or the instruction code string stored in the illegal position is reduced.
ここで、命令コード列の記憶位置としては、例えば、命令コード列のうち先頭の命令コードの記憶位置、命令コード列のうち所定番目の命令コードの記憶位置、命令コード列に含まれる命令コードのそれぞれの記憶位置が含まれる。また、命令コード記憶手段は、あらゆる手段でかつあらゆる時期に命令コードを記憶可能なものを含み、命令コードをあらかじめ記憶してあるものであってもよいし、命令コードをあらかじめ記憶することなく、本遊技機の動作時に外部からの入力等によって命令コードを記憶するものであってもよい。
さらに、前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算を行う演算手段(例えば、図26のチェック値算出部318に対応)とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含んでもよい。このような構成であれば、データ処理装置では、演算手段により、命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算が行われ、出力手段により、その演算結果が出力される。アクセス制御装置では、入力手段により、演算手段の演算結果が入力され、アクセス制御手段により、入力された演算結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。
Here, as the storage position of the instruction code string, for example, the storage position of the first instruction code in the instruction code string, the storage position of the predetermined instruction code in the instruction code string, the instruction code included in the instruction code string, Each storage location is included. In addition, the instruction code storage means includes a means capable of storing the instruction code at any time and at any time, and may store the instruction code in advance, or without storing the instruction code in advance, An instruction code may be stored by an external input or the like during operation of the gaming machine.
Furthermore, the data processing device comprises:
Instruction code storage means for storing an instruction code executed by the data processing means;
Arithmetic means (for example, corresponding to the check
The output means outputs a calculation result of the calculation means;
The access permission condition may include that the calculation result input by the input unit is a predetermined result. In such a configuration, in the data processing apparatus, the calculation means performs a predetermined calculation using at least a part of the instruction code or the instruction code string stored in the instruction code storage means, and the output means performs the calculation. The calculation result is output. In the access control device, the calculation result of the calculation means is input by the input means, and when the access control means determines that the input calculation result is a predetermined result, access to the storage means is permitted.
また、前記データ処理装置は、前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、前記命令コード記憶手段に記憶された所定の固定値を用いて所定の演算を行う演算手段(例えば、図26のチェック値算出部318に対応)とをさらに有し、前記出力手段は、前記演算手段の演算結果を出力し、前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含んでもよい。 The data processing apparatus includes: an instruction code storage unit that stores an instruction code executed by the data processing unit; and an operation unit that performs a predetermined operation using a predetermined fixed value stored in the instruction code storage unit. For example, the output means outputs the calculation result of the calculation means, and the access permission condition is that the calculation result input by the input means is a predetermined value. May be included as a result.
このような構成であれば、データ処理装置では、演算手段により、命令コード記憶手段に記憶された所定の固定値を用いて所定の演算が行われ、出力手段により、その演算結果が出力される。アクセス制御装置では、入力手段により、演算手段の演算結果が入力され、アクセス制御手段により、入力された演算結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。 With such a configuration, in the data processing apparatus, the calculation unit performs a predetermined calculation using a predetermined fixed value stored in the instruction code storage unit, and the output unit outputs the calculation result. . In the access control device, the calculation result of the calculation means is input by the input means, and when the access control means determines that the input calculation result is a predetermined result, access to the storage means is permitted.
さらに、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報を出力し、前記アクセス許可条件は、前記入力手段で入力した実行結果情報の実行結果が所定の結果であることを含んでもよい。 Further, the output means outputs execution result information indicating an execution result of an instruction code or an instruction code sequence executed by the data processing means, and the access permission condition is an execution result of the execution result information input by the input means. May be a predetermined result.
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報が出力される。アクセス制御装置では、入力手段により、実行結果情報が入力され、アクセス制御手段により、入力された実行結果情報の実行結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。これにより、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。 With such a configuration, in the data processing apparatus, the output means outputs execution result information indicating the execution result of the instruction code or the instruction code string executed by the data processing means. In the access control device, when the execution result information is input by the input unit, and the access control unit determines that the execution result of the input execution result information is a predetermined result, access to the storage unit is permitted. The As a result, an illegally rewritten instruction code or instruction code string, or an instruction code or instruction code string whose contents have changed due to a bit error, is executed, so that the data in the storage means can be illegally rewritten or read. The possibility of doing is reduced.
また、前記アクセス制御手段は、前記記憶手段のうち特定のアドレス空間へのアクセスを制御してもよい。このような構成であれば、アクセス制御装置では、アクセス制御手段により、記憶手段のうち特定のアドレス空間へのアクセスが制御される。これにより、記憶手段のうち、機密情報等の重要な情報が記憶されたアドレス空間へのアクセスを制御することにより、重要な情報が不正に書き換えられたり読み出されたりする可能性が低減する。 The access control means may control access to a specific address space in the storage means. With such a configuration, in the access control device, access to a specific address space in the storage means is controlled by the access control means. Thereby, by controlling access to the address space in which important information such as confidential information is stored in the storage means, the possibility that the important information is illegally rewritten or read is reduced.
さらに、前記アクセス制御手段によるアクセス制御の状況を通知する制御状況通知手段をさらに備えていてもよい。このような構成であれば、制御状況通知手段により、アクセス制御手段によるアクセス制御の状況が通知される。 Furthermore, a control status notifying unit that notifies the status of access control by the access control unit may be further provided. With such a configuration, the status of access control by the access control means is notified by the control status notification means.
ここで、制御状況通知手段は、通知対象が認識可能な方法により通知を行えばよく、通知対象が人である場合は、例えば、表示、音声出力、振動その他五感で知覚可能な方法により行うことができる。通知対象がコンピュータ等である場合は、信号出力、データ送信その他コンピュータ等が認識可能な方法により行うことができる。 Here, the control status notification means may be notified by a method capable of recognizing the notification target, and when the notification target is a person, for example, display, sound output, vibration, or other methods perceivable by the five senses. Can do. When the notification target is a computer or the like, signal output, data transmission, or other methods that can be recognized by the computer or the like can be performed.
さらに、前記周辺部は、前記主制御部が正当でないと判断された場合、その旨を報知するようにしてもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 Further, when it is determined that the main control unit is not valid, the peripheral unit may notify the fact. This makes it easier for employees and players of pachinko halls to recognize the state.
前記認証部は、前記大当たりリーチコマンドに基づく前記演出または前記前処理もしくは後処理が実行される期間の後に前記主制御部が正当であるか否かを判断してもよい。大当たりリーチコマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、主制御部が正当であるか否かを判断することにより、認証データの容量が大きくても、周辺部の動作とは独立して認証動作を行なうことができる。したがって、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 The authentication unit may determine whether the main control unit is valid after the presentation based on the jackpot reach command or a period during which the pre-processing or post-processing is executed. Even if the capacity of the authentication data is large by determining whether the main control unit is legitimate after the period based on the jackpot reach command or the period in which pre-processing or post-processing is executed, Can perform the authentication operation independently. Therefore, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the conventional case.
前記周辺部と前記認証部との信号授受に用いられる単一の経路を備えていてもよい。認証データの授受が単一の経路で行われる場合であっても、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 You may provide the single path | route used for signal transmission / reception with the said peripheral part and the said authentication part. Even when the authentication data is exchanged through a single route, it is possible to determine whether the main control unit is valid by increasing the strength of security compared to the conventional case.
前記周辺部と前記認証部との信号授受に用いられる二本の経路を備え、前記周辺部が、前記経路の一方により前記認証データを前記認証部に出力し、前記認証部が、前記経路の他方により前記主制御部が正当であるか否かについての判断の結果を前記周辺部に出力するようにしてもよい。認証データの授受が二本の経路で行われる場合であっても、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 Two paths used for signal exchange between the peripheral part and the authentication part are provided, the peripheral part outputs the authentication data to the authentication part by one of the paths, and the authentication part On the other hand, the result of determination as to whether or not the main control unit is valid may be output to the peripheral unit. Even when authentication data is exchanged through two routes, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the conventional case.
本発明の認証方法は、上記遊技機に適用され、大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための大当たりリーチコマンドと、自らが正当であることを認証させるための認証データとを出力する主制御部と、前記大当たりリーチコマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御する周辺部とを備える遊技機において前記主制御部についての認証を行う認証方法であって、
前記データ処理手段が実行する命令に関する情報を取得するステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップと、
前記命令に関する情報に基づいて、前記データ処理手段の接続状態の認証を行う接続機器認証ステップと、
前記認証データを、前記周辺部を介して前記認証部が取得する取得ステップと、
前記取得ステップにおいて取得した認証データを用いて、前記主制御部が正当であるか否かを前記認証部が判断する認証ステップとを含むことを特徴とする。このように本発明の認証方法は、主制御部と周辺部との接続状態を認証するほか、周辺部を介して取得した認証データを用いて、主制御部を認証するので、周辺部の負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。
The authentication method of the present invention is applied to the above gaming machine, and is used to authenticate that the jackpot reach command for designating the variation pattern for performing the reach effect among the variation patterns selected at the time of the jackpot, and that it is legitimate. Authentication for authenticating the main control unit in a gaming machine comprising: a main control unit that outputs authentication data; and a peripheral unit that controls execution of the effect or the pre-processing or post-processing based on the jackpot reach command A method,
Obtaining information relating to instructions executed by the data processing means;
An access control step for controlling access to the storage means by the data processing device based on information relating to the instruction input in the input step;
A connected device authentication step for authenticating a connection state of the data processing means based on the information related to the command;
An acquisition step in which the authentication unit acquires the authentication data via the peripheral unit;
An authentication step in which the authentication unit determines whether or not the main control unit is valid using the authentication data acquired in the acquisition step. As described above, the authentication method of the present invention authenticates the connection state between the main control unit and the peripheral unit, and also authenticates the main control unit using the authentication data acquired through the peripheral unit. Therefore, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the prior art.
前記認証ステップにおいて前記主制御部が正当でないと判断された場合、認証結果を報知するための信号を出力する報知信号出力ステップをさらに含んでもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 When it is determined in the authentication step that the main control unit is not valid, it may further include a notification signal output step of outputting a signal for notifying the authentication result. This makes it easier for employees and players of pachinko halls to recognize the state.
前記認証ステップにおいて、前記大当たりリーチコマンドに基づく前記演出または前記前処理もしくは後処理が実行される期間の後に前記主制御部が正当であるか否かを判断してもよい。大当たりリーチコマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、主制御部が正当であるか否かを判断することにより、認証データの容量が大きくても、周辺部の動作とは独立して認証動作を行なうことができる。したがって、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 In the authentication step, it may be determined whether or not the main control unit is valid after the presentation based on the jackpot reach command or the period during which the pre-processing or post-processing is executed. Even if the capacity of the authentication data is large by determining whether the main control unit is legitimate after the period based on the jackpot reach command or the period in which pre-processing or post-processing is executed, Can perform the authentication operation independently. Therefore, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the conventional case.
本発明のプログラムは、上記認証方法の各ステップを、コンピュータに実行させることを特徴とする。データ処理手段である周辺部のCPUとアクセス制御装置とによる接続機器認証を行うほか、周辺部を介して取得した認証データを用いて、主制御部を認証するので、周辺部の負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。また、認証結果を報知するための信号を出力することにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 A program according to the present invention causes a computer to execute each step of the authentication method. In addition to authenticating connected devices by the peripheral CPU and access control device, which is a data processing means, and authenticating the main control unit using authentication data acquired via the peripheral unit, the burden on the peripheral unit is reduced. Therefore, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the conventional case. Further, by outputting a signal for informing the authentication result, it becomes easier for employees and players of the pachinko hall to recognize the state.
本発明によれば、主制御部からの制御コマンドを受信する周辺部とは別に設けた認証部において大当たりリーチコマンドに付加された認証データの認証を行うため、認証データの容量を大きくしてセキュリティの強度を従来よりも大きくしても周辺部の処理負荷は大きくならず、設計上の制約を受けずに、主制御部が正当であるか否かを判断することができる。また、この周辺部に、さらに、主制御部のデータ処理手段の接続状態を認証するアクセス制御装置を備えることにより、このアクセス制御装置を追加するだけで、主制御部に大幅な変更を加えることなく、大当たりリーチコマンドに付加された命令情報を用いて、主制御部と周辺部との接続状態を認証するので、主制御部のCPUが物理的に解析され、例えばROM内の制御プログラムを不正な内容に差し替えて製造された不正なCPUが主制御部に実装されるような場合でも、その不正を検出できる。また、主制御部から認証部への接続経路の途中に、いわゆるぶら下がり回路構成などによる不正が行われている場合でもそれを検出することができる。さらに、周辺部に追加するアクセス制御装置には、主制御部に設けているものと同じものを用いることができるので、装置の量産が可能であり、装置の製造や開発の費用の増加を抑えることができる。 According to the present invention, the authentication data added to the jackpot reach command is authenticated by the authentication unit provided separately from the peripheral unit that receives the control command from the main control unit. Even if the strength of the main control unit is increased, the processing load on the peripheral portion does not increase, and it is possible to determine whether or not the main control unit is valid without being restricted by design. In addition, by adding an access control device for authenticating the connection state of the data processing means of the main control unit to this peripheral unit, the main control unit can be significantly changed only by adding this access control device. The command information added to the jackpot reach command is used to authenticate the connection state between the main control unit and the peripheral unit, so the CPU of the main control unit is physically analyzed, for example, the control program in the ROM is illegal. Even when an unauthorized CPU manufactured by replacing the contents is mounted on the main control unit, the fraud can be detected. Further, even when fraud due to a so-called hanging circuit configuration is performed in the middle of the connection path from the main control unit to the authentication unit, it can be detected. Furthermore, since the same access control device as that provided in the main control unit can be used for the peripheral control unit, the device can be mass-produced, and the increase in manufacturing and development costs can be suppressed. be able to.
以下に、本発明を実施するための形態について図面を参照して説明する。ここでは、本発明に係る遊技機、認証方法、プログラムを、パチンコ機に適用した場合について説明する。
〔遊技盤の構成〕
まず、パチンコ機における遊技盤1の構成について説明する。
図1は、遊技盤1の正面図である。
EMBODIMENT OF THE INVENTION Below, the form for implementing this invention is demonstrated with reference to drawings. Here, a case where the gaming machine, the authentication method, and the program according to the present invention are applied to a pachinko machine will be described.
[Composition of game board]
First, the configuration of the game board 1 in the pachinko machine will be described.
FIG. 1 is a front view of the game board 1.
図1において、遊技盤1の左側には、円弧を描いて上方に延長する2つのレール102a、102bが設けられている。遊技領域101には、遊技球の落下軌跡を変則的にするための複数の釘(不図示)が設けられ、落下途中の位置には、遊技球の落下方向を変化させる風車や入賞口が設けられている。遊技球は、遊技盤1の下部位置に配置された発射部(不図示)により発射され、レール102a、102b間を上昇して遊技盤1の上部位置に達した後、遊技領域101内を落下する。
In FIG. 1, two
遊技盤1の中央部には、3つの領域にそれぞれ演出図柄を独立に変動させながら表示する図柄表示部104が設けられている。図柄表示部104は、例えば、液晶表示器(LCD(Liquid Crystal Display))またはCRT(Cathode Ray Tube)ディスプレイ等の可変表示装置、7セグメントLED、ドットマトリクス表示装置、モータの回転により可変表示するドラム等であり、複数の数字や図柄等からなる演出図柄を変動表示する。
In the center of the game board 1, there is provided a
図柄表示部104の下方には、遊技球を入賞可能な始動入賞口105が設けられている。また、図柄表示部104の左右両側には、それぞれ入賞ゲート106が設けられている。入賞ゲート106を遊技球が通過すると、所定の抽選が行われ、これに当選すると、始動入賞口105が所定時間だけ開放する。
Below the
始動入賞口105の左右両側には、それぞれ普通入賞口107が設けられている。普通入賞口107に遊技球が入賞すると、遊技球1個につき所定数(例えば、10個)の遊技球が賞球として払い出される。
A
始動入賞口105の下方には、通常時は閉止状態であるが図柄表示部104の演出図柄が大当たり図柄(例えば、「777」)となったときは、開放状態となって遊技球を入賞可能とする大入賞口109が設けられている。大当たり抽選で「大当たり」(以下、単に「大当たり」という。)となったときは、大入賞口109の全面に設置された開閉部材が開閉動作を繰り返す。開閉部材が開放中は、多数の遊技球の入賞を受け付ける。大入賞口109に遊技球が入賞すると、遊技球1個につき所定数(例えば、10個)の遊技球が賞球として払い出される。大入賞口109の開放は、所定時間(例えば、30秒)経過するか、所定数(例えば、10個)の遊技球が入賞するまで継続する。大入賞口109の1回の開放期間をラウンドと呼び、ラウンドは、最大で所定回数(以下、最大ラウンド数という。)継続する。
遊技領域101の最下方には、いずれの入賞口にも入賞しなかった遊技球を回収するための回収口108が設けられている。
〔遊技機の全体構成〕
Below the
At the lowermost part of the
[Overall configuration of gaming machine]
図2は本実施の形態の遊技機の全体構成を示すブロック図である。図2に示すように、遊技機は、遊技盤1と、主制御基板2と、周辺基板3とを有する。主制御基板2および周辺基板3によって、遊技機制御装置100が構成される。
FIG. 2 is a block diagram showing the overall configuration of the gaming machine of the present embodiment. As shown in FIG. 2, the gaming machine has a game board 1, a
主制御基板2は主制御部2aを有する基板である。主制御部2aは、遊技盤1が実行する遊技に関する演出またはその演出の前処理もしくは後処理を制御するための制御コマンドと、主制御部2aが正当であることを認証させるための認証データや命令情報とを出力する手段である。
The
ここで、「演出」とは、例えば、抽選による大当たり演出である。また、「演出の前処理」は、例えば、図柄表示部が表示する図柄を変動させる際の、図柄を変動させるための値をレジスタに設定する処理、である。ただし、主制御部2aは、制御データを出力せず、制御コマンドと認証データや命令情報とを周辺部3aに出力することもある。例えば、パチンコ機の電源がオンされようとする場合等、制御の内容が明らかである場合には制御データは出力されない。この場合、演出の前処理として、パチンコ機の電源がオンされることになる。なお、「演出の後処理」は、例えば、演出後に、後述するRAMの内容を初期化する処理、である。
Here, “production” is, for example, a jackpot production by lottery. “Pre-production of the effect” is, for example, a process of setting a value for changing the symbol in the register when the symbol displayed by the symbol display unit is changed. However, the
周辺基板3は、周辺部3aと、認証部3bと、バス3cと、を有する基板である。周辺部3aは、主制御部2aの出力を入力とし、主制御部2aからの制御コマンドに基づいて演出または演出の前処理もしくは後処理の実行を制御するとともに、主制御部2aからの認証データを認証部3bに出力する手段である。
The
認証部3bは、周辺部3aの後段に設けられており、周辺部3aから出力される認証データに基づいて主制御部2aが正当であるか否かを判断する手段である。周辺部とは別に、認証部を付加した構成を採用している。このため、主制御部および周辺部の一般的な構成で主制御部の認証を行っていない場合でも、認証部を付加すれば、周辺部の仕様変更を最小限に抑えつつ、主制御部の認証を行うことができるようになる。主制御部2aが正当でないことが認証部3bによって判断された場合、周辺部3aは、主制御部2aが正当でない旨を報知するための制御を行う。主制御部2aが正当でない旨を報知する場合、周辺部3aの制御により、遊技機に設けられている液晶(不図示)に表示させたり、ランプ等を点灯させたりして通知することによる報知が行われる。液晶やランプを用いた通知については後に詳述する。
The
液晶表示やランプ等の点灯による視覚的報知に限らず、スピーカ(不図示)から音を出力することによる聴覚的報知、バイブレータ(不図示)を振動させることによる触覚的報知を行ってもよい。また、上記報知を組み合わせて行ってもよい。バス3cは、周辺部3aと認証部3bとの間の信号授受に用いられる唯一の通信経路である。周辺部3aと認証部3bとの間に設けられている単一のバス3cは、双方向の通信経路として用いられる。
〔遊技制御装置の構成〕
次に、パチンコ機における遊技制御装置の構成について説明する。
図3は、遊技制御装置100の構成を示すブロック図である。
Not only visual notification by lighting a liquid crystal display or a lamp, but also auditory notification by outputting sound from a speaker (not shown) or tactile notification by vibrating a vibrator (not shown) may be performed. Moreover, you may perform combining the said alert | report. The
[Configuration of game control device]
Next, the configuration of the game control device in the pachinko machine will be described.
FIG. 3 is a block diagram showing a configuration of the
遊技制御装置100は、図3に示すように、主制御基板2と、周辺基板3と、賞球制御部400とを有して構成されている。本例では、主制御基板2に、遊技の主制御を行う主制御部2aが設けられている。主制御部2aには、DIP(Dual Inline
Package)等からなるワンチップ型のマイクロプロセッサであるCPU202と、このCPU202へのアクセスを制御するアクセス制御装置230とが設けられている。また、周辺基板3には、主制御部2aの制御により遊技の演出制御を行う演出制御部300と、主制御部2aの認証を行う認証部3bとが設けられている。演出制御部300は、図2における周辺部3aの一例である。賞球制御部400は、主制御部2aの制御により遊技球の払出制御を行う。
As shown in FIG. 3, the
A
主制御部2aは、遊技の主制御を行い、遊技の演出制御または遊技球の払出制御を行うための各種の制御コマンドを演出制御部300および賞球制御部400にそれぞれ送信する。
The
主制御部2aには、始動入賞口105に入賞した遊技球を検出する始動入賞口検出部280と、入賞ゲート106を通過した遊技球を検出するゲート検出部282と、普通入賞口107に入賞した遊技球を検出する普通入賞口検出部284と、大入賞口109に入賞した遊技球を検出する大入賞口検出部286とが接続されている。これらの検出部280〜286は、例えば、近接スイッチを用いて構成することができる。
The
主制御部2aには、さらに、大当たり中に大入賞口109の開閉部材を開閉動作させる大入賞口開閉部288と、演出制御部300と、賞球制御部400とが接続されている。なお、演出制御部300との通信は、主制御部2aから演出制御部300への一方向となっている。これに対し、賞球制御部400との通信は、双方向となっている。
The
大入賞口開閉部288は、例えば、ソレノイドを用いて構成することができる。大当たりは、大当たり決定乱数に基づいて所定確率(例えば、1/300)で発生するよう予めプログラムされている。
The big prize opening opening /
演出制御部300は、主制御部2aから制御コマンドを受信し、受信した制御コマンドに基づいて遊技の演出制御を行う。演出制御部300は、制御プログラムを記憶したROM304と、ROM304の制御プログラムに従って演出制御処理を実行するCPU302と、CPU302の演算処理時におけるデータのワークエリアとして機能するRAM306と、図柄表示部104に表示させる画像データを書き込むVRAM308と、外部装置との入出力を行うI/F310、312と、CPU302へのアクセスを制御するアクセス制御装置330とを有して構成されている。
ROM304は、検証値と照合するための期待値を記憶する。検証値は、主制御部2aを認証するためのものであり、期待値は、検証値と同一の値となる。
The
The
RAM306は、主制御部2aからの入力データ、演算処理のためのデータ、乱数を生成するための乱数カウンタその他各種のカウンタ、および各種のフラグを記憶する。
The
I/F(インタフェース)310には、主制御部2aと、図柄表示部104と、スピーカ380から音声を出力する音声制御を行う音声制御部382と、ランプ384を点灯させるランプ制御を行うランプ制御部386とが接続されている。
The I / F (interface) 310 includes a
アクセス制御装置330は、I/F(インタフェース)312を介してCPU302に接続されており、CPU302からのアクセスを制御するものである。その詳細については後述する。
The
賞球制御部400は、主制御部2aから制御コマンドを受信し、受信した制御コマンドに基づいて遊技球の払出制御を行う。賞球制御部400は、制御プログラムを記憶したROM404と、ROM404の制御プログラムに従って払出制御処理を実行するCPU402と、CPU402の演算処理時におけるデータのワークエリアとして機能するRAM406と、外部装置との入出力を行うI/F410とを有して構成されている。
The award
I/F410には、主制御部2aと、遊技球の貯留部から所定数の遊技球を払い出す払出部480と、遊技球を遊技盤1に発射する発射部482とが接続されている。
Connected to the I /
賞球制御部400は、払出部480に対して、各入賞口(始動入賞口105、普通入賞口107、大入賞口109)への入賞に応じて所定数の遊技球を払い出す制御を行う。また、発射部482に対する操作を検出し、遊技球の発射を制御する。
The award
発射部482は、遊技者による操作を検出するセンサ(不図示)と、遊技球を発射させるソレノイド(不図示)とを有して構成されている。賞球制御部400は、発射部482のセンサにより操作を検出すると、その操作量に応じてソレノイドを駆動させて遊技球を間欠的に発射する。
The
なお、主制御部2a、演出制御部300および賞球制御部400は、それぞれ異なるプリント基板に設けられているが、これに限らず、賞球制御部400は、主制御部2aと同一のプリント基板に設けることもできる。
〔主制御部及び演出制御部の構成〕
次に、主制御部2a及び演出制御部300の構成を説明する。
図4及び図5は、それぞれ主制御部2a及び演出制御部300などのより詳細な構成を示すブロック図である。
The
[Configuration of main control unit and production control unit]
Next, the configuration of the
4 and 5 are block diagrams showing more detailed configurations of the
先ず、図4に示すように主制御部2aは、DIP等からなるワンチップ型のマイクロプロセッサであるCPU202と、CPU202によるアクセスを制御するアクセス制御装置230と、パチンコ機の検定試験に用いられる検査ポート240とを有して構成されている。
First, as shown in FIG. 4, the
CPU202は、制御プログラムを記憶したROM204と、ROM204の制御プログラムに従って遊技制御処理を実行するCPUコア203と、CPUコア203の演算処理時におけるデータのワークエリアとして機能するRAM206と、検査ポート240を介してCPUコア203が実行する命令コード列その他の検査データを出力するセキュリティ検査回路208とを有して構成されている。
The
CPU202は、さらに、外部装置との入出力を行うI/F210、212と、時間を計測するタイマ214とを有して構成されている。そして、CPUコア203、ROM204、RAM206、セキュリティ検査回路208、I/F210、212およびタイマ214は、バス216を介して相互に接続されている。
The
RAM206は、主制御部2aに対する入出力データ、演算処理のためのデータ、各種のカウンタ、大当たりフラグその他各種のフラグ、および保留球数を記憶する。ここで、保留球数とは、始動入賞口105に入賞した遊技球の数であって大当たり抽選が行われていない分をいう。
The
I/F212には、アクセス制御装置230が接続されている。CPU202は、そのハードウェア構造上、バス216を介して送受信されるアドレス信号、データ信号および制御信号を外部に出力しない構成となっている。また、バス216の信号線がCPU202に内蔵されているので、アクセス制御装置230をバス216の信号線に直結することも改造を要し難しい。したがって、そのままの構成では、アクセス制御装置230は、CPUコア203が実行する命令に関する情報を取得することができない。そこで、本実施の形態では、CPUコア203が実行する命令に関する情報として、CPUコア203が実行する命令コード列、およびそのROM204におけるアドレス(以下、単にアドレスという。)を、I/F212を介して出力する処理をCPUコア203に実行させる。この出力処理は、例えば、ROM204の制御プログラムの一処理として組み込んでおくことができる。これにより、アクセス制御装置230は、CPUコア203が実行する命令コード列およびそのアドレスをI/F212から入力することができる。また、演出制御部300のアクセス制御装置330は、制御コマンドに付加された命令コード列およびそのアドレスを取得することができる。ここで、命令コード列のアドレスとは、命令コード列のうち先頭の命令コードのアドレスをいう。
An
一方、演出制御部300は、図5に示すように、DIP等からなるワンチップ型のマイクロプロセッサであるCPU302と、CPU302によるアクセスを制御するアクセス制御装置330とを有して構成されている。
On the other hand, as shown in FIG. 5, the
CPU302は、主に演出用の制御プログラムを記憶したROM304と、このROM304の制御プログラムに従って演出制御処理を実行するCPUコア303と、このCPUコア303の演算処理時におけるデータのワークエリアとして機能するRAM306と、演出関連デバイス314と、この演出関連デバイス314の1つである図柄表示部104に表示させる画像データを書き込むVRAM308とを有して構成されている。
The
CPU302は、さらに、主制御部2aや賞球制御部400などの外部装置との入出力を行うI/F310、312とを有して構成されている。そして、CPUコア303、ROM304、RAM306、VRAM308、I/F310、312、演出関連デバイス314は、バス316を介して相互に接続されている。
The
I/F312には、アクセス制御装置330が接続されている。演出制御部300においても、主制御部2aのCPUコア203が実行する命令に関する情報として、CPUコア203が実行する命令コード列、およびそのROM204におけるアドレスを、取得する処理をCPUコア303に実行させる。命令情報は、あらかじめ定められた制御コマンドに付加されているので、その制御コマンドを受信した演出制御部300は命令情報を取得することができる。これにより、アクセス制御装置330は、CPUコア203が実行する命令コード列およびそのアドレスを取得することができる。
An
賞球制御部400は、CPU402、ROM404、RAM406およびI/F410のほか、遊技球の払出制御に必要な複数のデバイスからなる賞球関連デバイス群414を有して構成されている。
The prize
〔CPUコアおよびアクセス制御装置の構成〕
次に、図4に示した主制御部2aのCPUコア203とこの主制御部2a側に設けられたアクセス制御装置230、及び図5に示した演出制御部300のCPUコア303とその演出制御部300側に設けられたアクセス制御装置330の構成を説明する。
図6は、CPUコア203およびアクセス制御装置230の構成を示すブロック図である。また、図6では、説明の便宜上、構成の一部を省略している。
[Configuration of CPU core and access control device]
Next, the
FIG. 6 is a block diagram showing the configuration of the
同図に示すように、CPUコア203は、ROM204に記憶された命令コード列を読み出し(フェッチ)、読み出した命令コード列に従ってデータ処理を行う。CPUコア203は、制御部203a、演算部203bおよびレジスタ203cを有して構成されている。
制御部203aは、CPU202全体の動作を制御し、命令コード列その他データの読出および書込を行うためにバス216に制御信号を出力する。
演算部203bは、レジスタ203cに保持されたデータに対して演算を行う。
レジスタ203cは、ROM204から読み出した命令コード列およびそのアドレス、並びに演算部203bで処理したデータを保持する。
As shown in the figure, the
The control unit 203a controls the overall operation of the
The
The register 203c holds the instruction code string read from the
アクセス制御装置230は、遊技制御に用いる乱数や認証に必要な認証情報を生成するとともにCPUコア203で処理したデータを保持する。アクセス制御装置230は、入力部231、演算部232、レジスタ234、236およびアクセス制御部238を有して構成されている。
入力部231は、ラッチ回路等からなり、CPUコア203が実行する命令コード列およびそのアドレスをI/F212から入力する。
The
The
演算部232は、乱数生成器等からなり、遊技制御に用いる乱数と認証に必要な認証情報との少なくとも一方を生成する。遊技制御に用いる乱数としては、大当たり抽選に用いる乱数(大当たり決定乱数)、演出図柄の停止態様を決定するための乱数(停止図柄決定乱数)、演出図柄の変動パターンを決定するための乱数(変動パターン決定乱数)、その他遊技制御に用いる乱数がある。また、演出制御に用いる乱数としては、主制御部2aから送られてくる制御コマンドに対応する具体的な演出図柄を決定するための乱数、演出図柄による変動パターン演出と共に音声やランプ演出を決定するための乱数などがある。
レジスタ234は、演算部232で生成した乱数や認証情報を保持する。レジスタ234へのアクセスは、アクセス制御部238により制御される。
レジスタ236は、CPUコア203で処理したデータを保持する。レジスタ236へのアクセスは、アクセス制御部238により制御される。
The
The
The
アクセス制御部238は、レジスタ234、236に対するリード要求を入力したときは、そのリード要求に係るリード命令およびそのアドレスを入力部231から入力し、入力したリード命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ234、236からのデータの読出を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ234、236からのデータの読出を禁止する。具体的には、入力部231で入力した命令コード列が、あらかじめ許可されたコード列(以下、許可命令コード列という。)であり、かつ、その命令コード列のアドレスが、あらかじめ許可されたアドレス(以下、許可アドレスという。)であるときにのみ、レジスタ234、236からデータを読み出すことができる。
When the
アクセス制御部238は、レジスタ236に対するライト要求を入力したときは、そのライト要求に係るライト命令およびそのアドレスを入力部231から入力し、入力したライト命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ236へのデータの書込を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ236へのデータの書込を禁止する。具体的には、入力部231で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ236にデータを書き込むことができる。
When the
次に、演出制御部300におけるアクセス制御装置330の動作について、図7を参照して説明する。
同図に示すように、CPUコア303は、ROM304に記憶された命令コード列を読み出し(フェッチ)、読み出した命令コード列に従ってデータ処理を行う。CPUコア303は、制御部303a、演算部303bおよびレジスタ303cを有して構成されている。
制御部303aは、CPU302全体の動作を制御し、命令コード列その他データの読出および書込を行うためにバス316に制御信号を出力する。
演算部303bは、レジスタ303cに保持されたデータに対して演算を行う。
レジスタ303cは、ROM304から読み出した命令コード列およびそのアドレス、並びに演算部303bで処理したデータを保持する。
Next, the operation of the
As shown in the figure, the
The control unit 303a controls the operation of the
The
The register 303c holds the instruction code string read from the
アクセス制御装置330は、演出制御に用いる乱数や認証に必要な認証情報を生成するとともにCPUコア303で処理したデータを保持する。アクセス制御装置330は、入力部331、演算部332、レジスタ334、336およびアクセス制御部338を有して構成されている。
入力部331は、ラッチ回路等からなり、CPUコア303が実行する命令コード列およびそのアドレスをI/F312から入力する。
The
The
演算部332は、乱数生成器等からなり、演出制御に用いる乱数と認証に必要な認証情報との少なくとも一方を生成する。演出制御に用いる乱数としては、主制御部2aから送られてくる制御コマンドに対応する具体的な演出図柄を決定するための乱数、演出図柄による変動パターン演出と共に音声やランプ演出を決定するための乱数などがある。
レジスタ334は、演算部332で生成した乱数や認証情報を保持する。レジスタ334へのアクセスは、アクセス制御部338により制御される。
レジスタ336は、CPUコア303で処理したデータを保持する。レジスタ336へのアクセスは、アクセス制御部338により制御される。
The
The
The
アクセス制御部338は、レジスタ324、336に対するリード要求を入力したときは、そのリード要求に係るリード命令およびそのアドレスを入力部331から入力し、入力したリード命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ334、336からのデータの読出を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ334、336からのデータの読出を禁止する。具体的には、入力部331で入力した命令コード列が、許可命令コード列であり、かつ、その命令コード列のアドレスが、あらかじめ許可されたアドレスであるときにのみ、レジスタ334、336からデータを読み出すことができる。
When the
アクセス制御部338は、レジスタ336に対するライト要求を入力したときは、そのライト要求に係るライト命令およびそのアドレスを入力部331から入力し、入力したライト命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ336へのデータの書込を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ336へのデータの書込を禁止する。具体的には、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ336にデータを書き込むことができる。
ところで、主制御部2aのCPU202が実行する命令に関する情報が演出制御部300によって取得された場合、演出制御部300のアクセス制御装置330とCPU302とによって、後述するように接続機器認証処理が行われる。CPU202が実行する命令に関する情報は、後述するように、制御コマンドに付加されて、主制御部2aから送信されることにより、演出制御部300によって取得される。
When the
By the way, when information related to a command executed by the
〔アクセス制御処理〕
次に、アクセス制御部238で実行されるアクセス制御処理について図8を参照して説明する。
図8は、アクセス制御部238で実行されるアクセス制御処理を示すフローチャートである。
アクセス制御部238は、アクセス制御処理を実行すると、図8に示すように、まず、ステップSS10に移行する。
[Access control processing]
Next, access control processing executed by the
FIG. 8 is a flowchart showing an access control process executed by the
When executing the access control process, the
ステップSS10では、レジスタ234、236に対するリード要求をI/F212から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS12に移行して、CPUコア203が実行する命令コード列およびそのアドレスを入力部231から入力し、ステップSS14に移行する。
In step SS10, it is determined whether or not a read request for the
ステップSS14では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS16に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS18に移行する。 In step SS14, it is determined whether or not the input instruction code string is a permitted instruction code string. If it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS16 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS18.
ステップSS18では、レジスタ234、236が保持しているデータを読み出し、ステップSS20に移行して、読み出したデータをI/F212に出力する。出力されたデータは、I/F212を介してCPUコア203のレジスタ203cに保持される。
In step SS18, the data held in the
次いで、ステップSS22に移行して、レジスタ236に対するライト要求をI/F212から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS24に移行して、CPUコア203が実行する命令コード列およびそのアドレスを入力部231から入力し、ステップSS26に移行する。
Next, the process proceeds to step SS22, where it is determined whether or not a write request for the
ステップSS26では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS28に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS30に移行する。 In step SS26, it is determined whether or not the input instruction code string is a permitted instruction code string. When it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS28 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS30.
ステップSS30では、CPUコア203のレジスタ203cが保持しているデータをI/F212から入力し、ステップSS32に移行して、入力したデータをレジスタ236に書き込み、アクセス制御処理を終了する。
In step SS30, the data held in the register 203c of the
一方、ステップSS28で、許可アドレスでないと判定したとき(No)、ステップSS26で、許可命令コード列でないと判定したとき(No)、およびステップSS22で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ236にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア203は、アクセス制御装置230からの通知を受け、不正が行われている可能性がある旨の通知(以下、適宜、不正通知という。)を行ってもよい。不正通知は、例えば、所定のメッセージ、マークまたは画像を図柄表示部104に表示したり、所定のメッセージ音や効果音をスピーカ380から出力したり、I/F210を介してCPU202の製造元、管理者または他の機器にエラーメッセージを送信したり、I/F210を介して上記表示や音声出力を他の機器に行わせるための制御信号を送信したりすることにより行うことができる。これにより、主制御部2a及び演出制御部300に不正が行われた可能性があることをユーザ等に認識させ、調査や修理等の措置を講じさせることができる。
On the other hand, when it is determined in step SS28 that it is not a permitted address (No), when it is determined in step SS26 that it is not a permitted instruction code string (No), and when it is determined in step SS22 that a write request is not input (No) ) Terminates the access control process without writing data to the
一方、ステップSS16で、許可アドレスでないと判定したとき(No)、ステップSS14で、許可命令コード列でないと判定したとき(No)、およびステップSS10で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ234、236が保持しているデータをI/F212に出力せずに、ステップSS22に移行する。このとき、CPUコア203のレジスタ203cには、アクセス制御装置230からの出力がないので、「0000」や「1111」等の非正当値が保持される。非正当値を所定値にしておき、その値がレジスタ203cに保持された場合、CPUコア203は、不正通知を行ってもよい。ここで、所定値とは、例えば、複数種類の固定値群や、あらかじめ変動規則を定めておいた変動値である。
次に、アクセス制御部338で実行されるアクセス制御処理について図9を参照して説明する。
図9は、アクセス制御部338で実行されるアクセス制御処理を示すフローチャートである。
アクセス制御部338は、アクセス制御処理を実行すると、図9に示すように、まず、ステップSS10に移行する。
On the other hand, when it is determined in step SS16 that it is not a permitted address (No), when it is determined in step SS14 that it is not a permitted instruction code string (No), and when it is determined in step SS10 that a read request is not input (No) In both cases, the data held in the
Next, access control processing executed by the
FIG. 9 is a flowchart showing an access control process executed by the
When executing the access control process, the
ステップSS10では、レジスタ334、336に対するリード要求をI/F312から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS12aに移行して、CPUコア203が実行する命令コード列およびそのアドレスを入力部331から入力して取得し、ステップSS14に移行する。この命令コード列およびそのアドレスは、制御コマンドに付加されて主制御部2aから送信され、演出制御部300によって取得されたものである。
In step SS10, it is determined whether or not a read request for the
ステップSS14では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS16に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS18に移行する。 In step SS14, it is determined whether or not the input instruction code string is a permitted instruction code string. If it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS16 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS18.
ステップSS18では、レジスタ334、336が保持しているデータを読み出し、ステップSS20に移行して、読み出したデータをI/F312に出力する。出力されたデータは、I/F312を介してCPUコア303のレジスタ303cに保持される。
In step SS18, the data held in the
次いで、ステップSS22に移行して、レジスタ336に対するライト要求をI/F312から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS24aに移行して、CPUコア203が実行する命令コード列およびそのアドレスを入力部331から入力して取得し、ステップSS26に移行する。この命令コード列およびそのアドレスは、制御コマンドに付加されて主制御部2aから送信され、演出制御部300によって取得されたものである。
Next, the process proceeds to step SS22, where it is determined whether a write request for the
ステップSS26では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS28に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS30に移行する。 In step SS26, it is determined whether or not the input instruction code string is a permitted instruction code string. When it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS28 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS30.
ステップSS30では、CPUコア303のレジスタ303cが保持しているデータをI/F312から入力し、ステップSS32に移行して、入力したデータをレジスタ336に書き込み、アクセス制御処理を終了する。
In step SS30, the data held in the register 303c of the
一方、ステップSS28で、許可アドレスでないと判定したとき(No)、ステップSS26で、許可命令コード列でないと判定したとき(No)、およびステップSS22で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ336にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア303は、アクセス制御装置330からの通知を受け、不正が行われている可能性がある旨の通知(すなわち、不正通知を行ってもよい。不正通知は、例えば、所定のメッセージ、マークまたは画像を図柄表示部104に表示したり、所定のメッセージ音や効果音をスピーカ380から出力したり、I/F310を介してCPU202の製造元、管理者または他の機器にエラーメッセージを送信したり、I/F310を介して上記表示や音声出力を他の機器に行わせるための制御信号を送信したりすることにより行うことができる。これにより、主制御部2aに不正が行われた可能性があることをユーザ等に認識させ、調査や修理等の措置を講じさせることができる。
On the other hand, when it is determined in step SS28 that it is not a permitted address (No), when it is determined in step SS26 that it is not a permitted instruction code string (No), and when it is determined in step SS22 that a write request is not input (No) ) Terminates the access control process without writing data to the
一方、ステップSS16で、許可アドレスでないと判定したとき(No)、ステップSS14で、許可命令コード列でないと判定したとき(No)、およびステップSS10で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ334、336が保持しているデータをI/F312に出力せずに、ステップSS22に移行する。このとき、CPUコア303のレジスタ303cには、アクセス制御装置330からの出力がないので、「0000」や「1111」等の非正当値が保持される。非正当値を所定値にしておき、その値がレジスタ303cに保持された場合、CPUコア303は、不正通知を行ってもよい。ここで、所定値とは、例えば、複数種類の固定値群や、あらかじめ変動規則を定めておいた変動値である。
〔ROMのメモリ構造〕
次に、主制御部2aのROM204及び演出制御部300のROM304のメモリ構造を説明する。
図10は、ROM204、304のメモリ構造を模式的に示した図である。
ROM204、304は、図10に示すように、それぞれCPUコア203、303が実行する命令コード列を記憶する。
On the other hand, when it is determined in step SS16 that it is not a permitted address (No), when it is determined in step SS14 that it is not a permitted instruction code string (No), and when it is determined in step SS10 that a read request is not input (No) In both cases, the data held in the
[ROM memory structure]
Next, the memory structures of the
FIG. 10 is a diagram schematically showing the memory structure of the
As shown in FIG. 10, the
ROM204、304の各記憶領域204a、304aには、所定領域ごと(例えば、1バイトごと)にアドレスが割り当てられている。図10の例では、記憶領域204a、304aに対してアドレス「0x000」〜「0xNNN」が割り当てられており、各アドレスは1バイト分の領域を示している。例えば、アドレス「0x100」〜「0x103」には、命令コード列「0xABCDEFGH」(リード命令)が格納されている。また、アドレス「0x104」〜「0x107」には、命令コード列「0xJKLMNOPQ」(ライト命令)が格納されている。
〔制御コマンドなどのデータ構造〕
次に、主制御部2aから演出制御部300などへ送信される制御コマンドなどのデータ構造を説明する。
図11は、制御コマンドなどのデータ構造を示す図である。
Addresses are assigned to the
[Data structure of control commands, etc.]
Next, a data structure such as a control command transmitted from the
FIG. 11 is a diagram illustrating a data structure such as a control command.
通常の制御コマンド500の場合は、図11(a)に示すように、制御データ501が付加されている。これに対し、認証データ付き制御コマンドの場合は、図11(b)に示すように、制御データ501が付加され、さらに暗号化認証データ502および命令情報503が付加された構成になっている。このように、認証データや命令情報を制御コマンドに付加して主制御部2aから送信することにより、認証データ単体または命令情報単体で送信する場合と比較して、主制御部2aと周辺部3aとの間の通信負荷の増大を抑えることができる。また、認証データを制御コマンドに付加して主制御部2aから送信することにより、認証データ単体で送信する場合と比較して、通信データ中から認証データが抽出され、解析されてしまう危険性を低減することができる。さらに、認証処理は、認証データが付加された制御コマンドを送信する場合にのみ行われるため、認証処理による主制御部2aの処理負荷が認証処理によって増大する割合を抑えることができる。
In the case of a
なお、制御コマンド500に対する、制御データ501、認証データ502、命令情報503の配置の順序は、図11(b)の場合に限定されるものではない。すなわち、図11(c)に示すように、制御コマンド500の先頭に認証データ502および命令情報503を付加した配置としたり、図11(d)に示すように、制御コマンド500と制御データ501との間に認証データ502および命令情報503を挿入した配置としたりしてもよい。また、制御コマンド500および制御データ501に対し、認証データ502だけを、それらの先頭もしくは後段に付加したり、それらの間に付加したりしてもよい。同様に、制御コマンド500および制御データ501に対し、命令情報503だけを、それらの先頭もしくは後段に付加したり、それらの間に付加したりしてもよい。さらに、制御コマンド500と制御データ501とは別個に認証データや命令情報を送信することとしてもよい。例えば、制御コマンドの1つである大当たりコマンドおよびその制御データを送信した後、3回目の制御コマンド送信時に認証データや命令情報を付加して送信する、などとしてもよい。
Note that the arrangement order of the
ここで、主制御部2aから演出制御部300などへ送信される制御コマンドには、電源オンコマンド、電源オフコマンド、客待ちデモ開始コマンド、客待ちデモ停止コマンド、変動パターンコマンド、大当たり開始コマンド、大当たり終了コマンドおよび大当たりコマンドなどがある。
電源オンコマンドは、電源の投入を指定するための制御コマンドであって、電源投入時に演出制御部300および賞球制御部400に送信される。
電源オフコマンドは、電源の遮断を指定するための制御コマンドであって、電源遮断時に演出制御部300および賞球制御部400に送信される。
Here, the control commands transmitted from the
The power-on command is a control command for designating power-on, and is transmitted to the
The power-off command is a control command for designating power-off, and is transmitted to the
客待ちデモ開始コマンドは、遊技客を誘致するためのデモンストレーション演出(以下、客待ちデモという。)の開始を指定するための制御コマンドであって、遊技中断時に演出制御部300に送信される。
客待ちデモ停止コマンドは、客待ちデモの終了を指定するための制御コマンドであって、遊技再開時に演出制御部300に送信される。
The customer waiting demonstration start command is a control command for designating the start of a demonstration effect (hereinafter referred to as a customer waiting demo) for attracting a player, and is transmitted to the
The customer waiting demo stop command is a control command for designating the end of the customer waiting demo, and is transmitted to the
変動パターンコマンドは、演出図柄の変動パターンを指定するための制御コマンドであって、演出図柄の変動開始時に演出制御部300に送信される。変動パターンコマンドには、はずれ非リーチコマンド、はずれリーチコマンド、大当たりリーチコマンドがある。
The variation pattern command is a control command for designating the variation pattern of the effect symbol, and is transmitted to the
はずれ非リーチコマンドは、大当たり抽選で「はずれ」(以下、単に「はずれ」という。)となったときに選択される変動パターンのうちリーチ演出を行わない変動パターンを指定するための制御コマンドである。 The non-reach non-reach command is a control command for designating a change pattern that does not perform reach among the change patterns that are selected when the big hit lottery results in “out” (hereinafter, simply referred to as “out”). .
はずれリーチコマンドは、はずれ時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための制御コマンドである。演出制御部300では、はずれリーチコマンドまたははずれ非リーチコマンドに基づいてはずれであることを判定することができる。
The detachment reach command is a control command for designating a variation pattern for performing a reach effect among the variation patterns selected at the time of detachment. The
大当たりリーチコマンドは、大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための制御コマンドである。演出制御部300では、大当たりリーチコマンドに基づいて大当たりであることを判定することができる。
大当たり開始コマンドは、大当たり演出の開始を指定するための制御コマンドであって、大当たり演出の開始時に演出制御部300に送信される。
The jackpot reach command is a control command for designating a variation pattern for performing a reach effect among the variation patterns selected at the time of the jackpot. The
The jackpot start command is a control command for designating the start of the jackpot effect, and is transmitted to the
大当たり終了コマンドは、大当たり演出の終了を指定するための制御コマンドであって、大当たり演出の終了時(最終ラウンドの終了時)に演出制御部300に送信される。
大当たりコマンドは、大当たりを指定するための制御コマンドであって、これには、ラウンド開始コマンドおよびラウンド終了コマンドがある。
The jackpot end command is a control command for designating the end of the jackpot effect, and is transmitted to the
The jackpot command is a control command for designating a jackpot, and includes a round start command and a round end command.
ラウンド開始コマンドは、ラウンドの開始を指定するための制御コマンドであって、ラウンドの開始時に演出制御部300に送信される。ラウンド開始コマンドは、各ラウンドごとに設定されている。例えば、最大ラウンド数が15回である場合は、15種類のラウンド開始コマンドが設定される。したがって、ラウンドが2回以上継続する場合は、大当たり中にラウンド開始コマンドが複数回にわたって送信されることになる。
The round start command is a control command for designating the start of a round, and is transmitted to the
ラウンド終了コマンドは、ラウンドの終了を指定するための制御コマンドであって、最終ラウンドを除くラウンドの終了時に演出制御部300に送信される。ラウンド終了コマンドは、最終ラウンドを除く各ラウンドごとに設定されている。例えば、最大ラウンド数が15回である場合は、14種類のラウンド終了コマンドが設定される。したがって、ラウンドが3回以上継続する場合は、大当たり中にラウンド終了コマンドが複数回にわたって送信されることになる。
The round end command is a control command for designating the end of the round, and is transmitted to the
なお、これら制御コマンドは、あくまで代表的なものであり、その他にも各種の制御コマンドが規定されている。これら制御コマンドのうち、予め定められたものについては、暗号化認証データや命令情報が付加される。本実施形態では、大当たりリーチコマンドに、暗号化認証データや命令情報が付加される。
〔遊技制御処理〕
次に、主制御部2aのCPUコア203で実行される遊技制御処理を説明する。
These control commands are merely representative, and various other control commands are defined. Of these control commands, encryption authentication data and command information are added to predetermined ones. In this embodiment, encrypted authentication data and command information are added to the jackpot reach command.
[Game control processing]
Next, game control processing executed by the
CPUコア203は、所定の動作クロック(例えば、4[ms])で1サイクルを実行可能な制御プログラムをROM204から読み出し、読み出した制御プログラムに従って、図11のフローチャートに示す遊技制御処理を実行する。
図12は、遊技制御処理を示すフローチャートである。
遊技制御処理は、CPUコア203において実行されると、図12に示すように、まず、ステップS100に移行する。
The
FIG. 12 is a flowchart showing the game control process.
When the game control process is executed in the
ステップS100では、電源がオンになったか否かを判定し、電源がオンになったと判定したとき(Yes)は、ステップS102に移行するが、そうでないと判定したとき(No)は、電源がオンになるまでステップS100で待機する。 In step S100, it is determined whether or not the power is turned on. When it is determined that the power is turned on (Yes), the process proceeds to step S102, but when it is determined that it is not (No), the power is turned on. It waits in step S100 until it turns on.
ステップS102では、RAM206の内容を初期化し、I/F210を介して、電源の投入を指定するための制御コマンドを演出制御部300および賞球制御部400に送信する初期化処理を実行する。初期化処理では、電源オンコマンドが送信される。電源オンコマンドは予め定められたコマンドすなわち大当たりリーチコマンドではないため、ステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300および賞球制御部400にそのまま送信される。
In step S102, the
演出制御部300では、電源オンコマンドを受信すると、図柄表示部104、ランプ制御部386および音声制御部382に対して、電源オン時の演出用の制御コマンド(具体的には、デモ画面の表示、ランプの点灯、音声の出力を指定するための制御コマンド)がそれぞれ送信される。
When the
次いで、ステップS104に移行して、CPU202に接続された機器(以下、接続機器という。)の認証を行う接続機器認証処理を実行し、ステップS106に移行して、始動入賞口105に遊技球が入賞したことを判定する入賞判定処理を実行し、ステップS108に移行する。
Next, the process proceeds to step S104, and a connected device authentication process for authenticating a device connected to the CPU 202 (hereinafter referred to as a connected device) is executed. The process proceeds to step S106, and a game ball is placed in the
ステップS108では、大当たりの判定を行うとともに演出図柄の変動パターンを決定する大当たり判定処理を実行し、ステップS110に移行して、大入賞口109の開閉部材を所定パターンで開放させる電動役物制御処理を実行し、ステップS112に移行する。
In step S108, the jackpot determination process for determining the jackpot and determining the variation pattern of the effect symbol is executed, and the process proceeds to step S110 to open the opening / closing member of the
ステップS112では、賞球制御部400に対して遊技球の払出を指定するための制御コマンド(払出制御コマンド)をRAM206の送信バッファに格納する賞球払出制御処理を実行し、ステップS114に移行して、I/F210を介して、送信バッファに格納された制御コマンドを演出制御部300または賞球制御部400に送信する制御コマンド送信処理を実行し、ステップS116に移行する。
In step S112, a prize ball payout control process for storing in the transmission buffer of the RAM 206 a control command (payout control command) for designating the payout of game balls to the prize
ステップS116では、電源がオフになったか否かを判定し、電源がオフになったと判定したとき(Yes)は、ステップS118に移行して、I/F210を介して、電源の遮断を指定するための制御コマンド(電源オフコマンド)を演出制御部300および賞球制御部400に送信する終了処理を実行し、遊技制御処理を終了する。
一方、ステップS116で、電源がオフになっていないと判定したとき(No)は、ステップS106に移行する。図12においては、接続機器認証処理(ステップS104)を実行した後、入賞判定処理(ステップS106)などの処理に移行しているが、これに限定されない。すなわち、入賞判定処理以降の処理の途中に接続機器認証処理が行われてもよく、処理の順序は問わない。
In step S116, it is determined whether or not the power has been turned off. When it is determined that the power has been turned off (Yes), the process proceeds to step S118, and the power is turned off via the I /
On the other hand, when it is determined in step S116 that the power is not turned off (No), the process proceeds to step S106. In FIG. 12, after the connected device authentication process (step S104) is executed, the process proceeds to a winning determination process (step S106). However, the present invention is not limited to this. That is, the connected device authentication process may be performed in the middle of the process after the winning determination process, and the order of the processes is not limited.
なお、乱数カウンタは、上記動作クロックの1周期(例えば、4[ms])のうち各処理を実行した残余時間を利用して更新される。またその他、遊技制御処理と並列に実行される乱数更新処理で更新することもできる。乱数カウンタは、例えば、「0」から順に「1」ずつカウントアップを行っていき、カウント値が最大値(例えば、「999」)を超えたときに「0」に戻すことにより、所定の数値範囲(例えば、「0」〜「999」)で循環的にカウントを行う。
〔接続機器認証処理〕
次に、図12のステップS104の接続機器認証処理について説明する。
Note that the random number counter is updated using the remaining time during which each process is executed in one cycle (for example, 4 [ms]) of the operation clock. In addition, it can be updated by a random number update process executed in parallel with the game control process. For example, the random number counter counts up by “1” sequentially from “0”, and returns to “0” when the count value exceeds the maximum value (for example, “999”). Counting is performed cyclically in a range (for example, “0” to “999”).
[Device / PLC authentication processing]
Next, the connected device authentication process in step S104 of FIG. 12 will be described.
CPU202には、各種の機器の接続が可能であるが、ユーザやメーカが承認していない機器が不正に接続され、CPU202の誤動作を発生させたり、ROM204のデータが改ざんされたり、盗まれたりする恐れがある。これを防止するため、CPU202は、接続機器の認証を行う。なお、接続機器認証処理の実行にはアクセス制御装置230も密接に関係するため、ここでは、接続機器認証処理の実行に伴うCPUコア203およびアクセス制御装置230の動作を説明する。
図13は、接続機器認証処理の実行に伴うCPUコア203およびアクセス制御装置230の動作を示すフローチャートである。
Various devices can be connected to the
FIG. 13 is a flowchart showing the operations of the
CPUコア203は、図13に示すように、まず、ステップS40、S42を経て、接続機器から認証用データを取得し、I/F212を介して、取得した認証用データを用いて検証値Vの生成要求を出力する。検証値Vは、接続機器を認証するために用いる値である。なお、ステップS40で取得した認証用データをそのまま検証値Vとしてもよい。
アクセス制御装置230は、検証値Vの生成要求を入力すると、ステップS44を経て、演算部232で検証値Vを生成し、レジスタ234に保持する。
As shown in FIG. 13, the
Upon receiving the verification value V generation request, the
次いで、CPUコア203は、ステップS46を経て、アクセス制御装置230のレジスタ234から検証値Vを読み出すリード命令をROM204から読み出し、読み出したリード命令を実行することにより、I/F212を介してレジスタ234に対するリード要求を出力する。また、ステップS48を経て、I/F212を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置230は、リード要求を入力すると、ステップS50を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ234が保持している検証値Vを読み出し、読み出した検証値VをI/F212に出力する。
When the read request is input, the
CPUコア203は、検証値Vを入力すると、ステップS52を経て、入力した検証値Vをレジスタ203cに保持する。そして、CPUコア203は、ステップS54を経て、アクセス制御装置230のレジスタ236に検証値Vを書き込むライト命令をROM204から読み出し、読み出したライト命令を実行することにより、I/F212を介してレジスタ236に対するライト要求を出力する。また、ステップS56を経て、I/F212を介して、読み出したライト命令およびそのアドレス並びに検証値Vを出力する。
When the verification value V is input, the
アクセス制御装置230は、ライト要求を入力すると、ステップS58を経て、ライト命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、検証値Vを入力し、入力した検証値Vをレジスタ236に書き込む。
When the write request is input, the
次いで、CPUコア203は、ステップS60を経て、I/F212を介して期待値Pの生成要求を出力する。期待値Pは、検証値Vを照合するために用いる値である。
アクセス制御装置230は、期待値Pの生成要求を入力すると、ステップS62を経て、演算部232で期待値Pを生成し、レジスタ234に保持する。
Next, the
When the
次いで、CPUコア203は、ステップS64を経て、アクセス制御装置230のレジスタ234から期待値Pを読み出すリード命令をROM204から読み出し、読み出したリード命令を実行することにより、I/F212を介してレジスタ234に対するリード要求を出力する。また、ステップS66を経て、I/F212を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置230は、リード要求を入力すると、ステップS68を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ234が保持している期待値Pを読み出し、読み出した期待値PをI/F212に出力する。
When the read request is input, the
次いで、CPUコア203は、ステップS70を経て、アクセス制御装置230のレジスタ236から検証値Vを読み出すリード命令をROM204から読み出し、読み出したリード命令を実行することにより、I/F212を介してレジスタ236に対するリード要求を出力する。また、ステップS72を経て、I/F212を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置230は、リード要求を入力すると、ステップS74を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ236が保持している検証値Vを読み出し、読み出した検証値VをI/F212に出力する。
When the read request is input, the
CPUコア203は、検証値Vおよび期待値Pを入力すると、ステップS76、S78を経て、検証値Vと期待値Pとを照合し、照合結果が正しいか否かを判定する。照合結果が正しいか否かは、例えば、検証値Vが期待値Pと所定関係にあるか否かにより判定する。所定関係とは、例えば、検証値Vが期待値Pと一致していること、検証値Vおよび期待値Pの一方を所定の演算方法により演算した演算値が他方と一致していること、検証値Vおよび期待値Pに大小関係その他の相関関係があることをいう。
When the verification value V and the expected value P are input, the
照合結果が正しいと判定したとき(Yes)は、CPUコア203は、ステップS80を経て、接続機器を認証し、接続機器認証処理を終了する。一方、照合結果が正しくないと判定したとき(No)は、CPUコア203は、ステップS82を経て、接続機器を認証せず、接続機器認証処理を終了する。接続機器を認証しなかった場合、CPUコア203は、不正通知を行ったり接続機器との接続を切断したりする。
〔制御コマンド送信処理〕
次に、図12で示すステップS114の制御コマンド送信処理を説明する。
図14は、制御コマンド送信処理を示すフローチャートである。
制御コマンド送信処理は、図12に示すステップS114において実行されると、図14に示すように、まず、ステップS200に移行する。
When it is determined that the collation result is correct (Yes), the
[Control command transmission processing]
Next, the control command transmission process in step S114 shown in FIG. 12 will be described.
FIG. 14 is a flowchart showing the control command transmission process.
When the control command transmission process is executed in step S114 shown in FIG. 12, the process first proceeds to step S200 as shown in FIG.
ステップS200では、制御コマンドを送信バッファから読み出し、ステップS202に移行して、読み出した制御コマンドが予め定められたコマンド(すなわち大当たりリーチコマンド)であるか否かを判定し、大当たりリーチコマンドであると判定したとき(Yes)は、ステップS204に移行する。 In step S200, the control command is read from the transmission buffer, and the process proceeds to step S202, where it is determined whether or not the read control command is a predetermined command (ie, jackpot reach command), and is a jackpot reach command. When it determines (Yes), it transfers to step S204.
ステップS204では、ROM204の制御プログラムのデータに基づいて認証データを生成する。認証データは、演出制御部300で主制御部2aを認証するためのデータであって、例えば、制御プログラムの一部または全部のデータに対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査(CRC(Cyclic Redundancy
Check))またはチェックサム等の誤り検出演算を行って得られた値を検証値として含む。このように、検証値は、ROM204に実際に記憶されている制御プログラムのデータから算出される。したがって、検証値を用いて認証を行うことにより、正規の主制御基板を不正な主制御基板に取り替えたり、ROM204の制御プログラムを改ざんしたりといった不正行為を検出することができる。
次いで、ステップS206に移行して、所定の暗号化アルゴリズムにより、生成した認証データを暗号化する暗号化処理を実行する。
In step S204, authentication data is generated based on the data of the control program stored in the
Check)) or a value obtained by performing an error detection operation such as a checksum is included as a verification value. Thus, the verification value is calculated from the data of the control program actually stored in the
Next, the process proceeds to step S206, and an encryption process for encrypting the generated authentication data is executed by a predetermined encryption algorithm.
この暗号化処理には、例えば、暗号鍵(例えば、「0x33」)との排他的論理和(XOR)を演算する暗号化アルゴリズムが用いられる。この場合、暗号化アルゴリズムに対応する復号化アルゴリズムは、同一のものとなる。
そして、この暗号化アルゴリズムにより、実行された暗号化処理によって得られた演算値を暗号化認証データとする。
In this encryption process, for example, an encryption algorithm that calculates an exclusive OR (XOR) with an encryption key (for example, “0x33”) is used. In this case, the decryption algorithm corresponding to the encryption algorithm is the same.
Then, with this encryption algorithm, the operation value obtained by the executed encryption process is used as encrypted authentication data.
次いで、ステップS208に移行して、ステップS200で読み出した制御コマンドを、暗号化した暗号化認証データや命令情報を付加して演出制御部300に送信し、一連の処理を終了して元の処理に復帰させる。
Next, the process proceeds to step S208, and the control command read out in step S200 is transmitted to the
一方、ステップS202で、大当たりリーチコマンドでないと判定したとき(No)は、ステップS210に移行して、ステップS200で読み出した制御コマンドをそのまま演出制御部300または賞球制御部400に送信し、一連の処理を終了して元の処理に復帰させる。
On the other hand, when it is determined in step S202 that the command is not a jackpot reach command (No), the process proceeds to step S210, and the control command read in step S200 is transmitted to the
なお、電源オンコマンドおよび電源オフコマンドの送信(ステップS102、S116)についても、図14のフローチャートに示す制御コマンド送信処理と同様の処理を行う。
〔入賞判定処理〕
次に、図12に示すステップS106の入賞判定処理を説明する。
図15は、入賞判定処理を示すフローチャートである。
入賞判定処理は、図12に示すステップS106において実行されると、図15に示すように、まず、ステップS300に移行する。
ステップS300では、保留球数が「0」であるか否かを判定し、保留球数が「0」であると判定したとき(Yes)は、ステップS302に移行する。
For the transmission of the power-on command and the power-off command (steps S102 and S116), the same process as the control command transmission process shown in the flowchart of FIG. 14 is performed.
[Winning determination process]
Next, the winning determination process in step S106 shown in FIG. 12 will be described.
FIG. 15 is a flowchart showing a winning determination process.
When the winning determination process is executed in step S106 shown in FIG. 12, the process first proceeds to step S300 as shown in FIG.
In step S300, it is determined whether or not the number of reserved balls is “0”, and when it is determined that the number of reserved balls is “0” (Yes), the process proceeds to step S302.
ステップS302では、タイマ(不図示)を用いて始動入賞口105への最後の入賞から所定時間(例えば、10分)が経過したか否かを判定し、所定時間が経過したと判定したとき(Yes)は、ステップS304に移行する。
In step S302, a timer (not shown) is used to determine whether or not a predetermined time (for example, 10 minutes) has elapsed since the last winning to the start winning
ステップS304では、客待ちデモを行う客待ちデモ実行処理を実行する。客待ちデモ実行処理では、客待ちデモ開始コマンドを送信バッファに格納することにより客待ちデモを開始する。また、始動入賞口105への入賞、発射部482に対する操作等を契機として遊技の再開を検出したときは、客待ちデモ停止コマンドを送信バッファに格納することにより客待ちデモを終了する。これにより、ステップS114の制御コマンド送信処理では、客待ちデモ開始コマンドまたは客待ちデモ停止コマンドが演出制御部300に送信される。
In step S304, a customer waiting demo execution process for performing a customer waiting demo is executed. In the customer waiting demo execution process, the customer waiting demo is started by storing the customer waiting demo start command in the transmission buffer. Further, when the resumption of the game is detected in response to winning at the
次いで、ステップS306に移行して、I/F210を介して始動入賞口検出部280からのセンサ信号を読み込み、読み込んだセンサ信号に基づいて始動入賞口105に遊技球が入賞したことを検出したか否かを判定し、遊技球の入賞を検出したと判定したとき(Yes)は、ステップS308に移行する。
Next, the process proceeds to step S306, where the sensor signal from the start winning
ステップS308では、保留球数が「4」以上であるか否かを判定し、保留球数が「4」未満であると判定したとき(No)は、ステップS310に移行して、保留球数に「1」を加算し、ステップS312に移行する。 In step S308, it is determined whether or not the number of retained balls is “4” or more, and when it is determined that the number of retained balls is less than “4” (No), the process proceeds to step S310 and the number of retained balls is determined. “1” is added to, and the process proceeds to step S312.
ステップS312では、大当たり決定乱数、停止図柄決定乱数その他遊技制御に用いる乱数を乱数カウンタから取得し、ステップS314に移行して、取得した各乱数を、保留球数に対応したRAM206の所定領域にそれぞれ格納し、一連の処理を終了して元の処理に復帰させる。
In step S312, the jackpot determined random number, stop symbol determined random number and other random numbers used for game control are acquired from the random number counter, and the process proceeds to step S314, where each acquired random number is stored in a predetermined area of the
一方、ステップS308で、保留球数が「4」以上であると判定したとき(Yes)、およびステップS306で、遊技球の入賞を検出しないと判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。 On the other hand, when it is determined in step S308 that the number of held balls is “4” or more (Yes) and when it is determined in step S306 that no winning of a game ball is detected (No), a series of processes To return to the original process.
一方、ステップS302で、所定時間が経過していないと判定したとき(No)、およびステップS300で、保留球数が「0」でないと判定したとき(No)はいずれも、ステップS306に移行する。
〔大当たり判定処理〕
次に、図12に示すステップS108の大当たり判定処理を説明する。
図16は、大当たり判定処理を示すフローチャートである。
On the other hand, when it is determined in step S302 that the predetermined time has not elapsed (No) and when it is determined in step S300 that the number of reserved balls is not “0” (No), the process proceeds to step S306. .
[Big hit judgment processing]
Next, the jackpot determination process in step S108 shown in FIG. 12 will be described.
FIG. 16 is a flowchart showing the jackpot determination process.
大当たり判定処理は、所定確率で大当たりを発生させるために、大当たり決定乱数がとり得る所定の数値範囲(例えば、「0」〜「400」)に1個の大当たり値を設定し、始動入賞口105に遊技球が入賞した入賞タイミングで大当たり決定乱数を取得し、取得した乱数値と大当たり値とが一致しているときに大当たりを発生させる処理であって、図12に示すステップS108において実行されると、図16に示すように、まず、ステップS400に移行する。
In the jackpot determination process, in order to generate a jackpot with a predetermined probability, one jackpot value is set in a predetermined numerical range (for example, “0” to “400”) that can be taken by the jackpot determination random number, and the start winning
ステップS400では、図柄表示部104において演出図柄が変動中か否かを判定し、演出図柄が変動中でないと判定したとき(No)は、ステップS402に移行して、保留球数が「1」以上であるか否かを判定し、保留球数が「1」以上であると判定したとき(Yes)は、ステップS404に移行する。
In step S400, it is determined whether or not the effect symbol is changing in the
ステップS404では、保留球数に対応したRAM206の所定領域から大当たり決定乱数を読み出し、ステップS406に移行して、読み出した乱数値が大当たり値と一致しているか否かを判定し、大当たり値と一致していると判定したとき(Yes)は、ステップS408に移行して、大当たりフラグをセットし、ステップS410に移行する。
In step S404, the jackpot determination random number is read from a predetermined area of the
ステップS410では、大当たり時に停止させる演出図柄の態様を決定する大当たり時停止図柄決定処理を実行する。大当たり時停止図柄決定処理では、例えば、大当たり用の停止図柄決定テーブルをROM204から読み出す。そして、保留球数に対応したRAM206の所定領域から停止図柄決定乱数を読み出し、読み出した乱数値の順位の停止図柄番号を、読み出した停止図柄決定テーブルから取得し、取得した停止図柄番号を示す制御コマンド(図柄指定コマンド)を送信バッファに格納する。
In step S410, a big-hit stop symbol determination process is executed to determine the aspect of the effect symbol to be stopped at the big-hit. In the jackpot stop symbol determination process, for example, a jackpot stop symbol determination table is read from the
次いで、ステップS412に移行して、大当たり時に変動表示する演出図柄の変動パターンを決定する大当たり時変動パターン決定処理を実行する。大当たり時変動パターン決定処理では、例えば、リーチ決定乱数を乱数カウンタから取得し、取得した乱数値に対応する大当たり用の変動パターン決定テーブルをROM204から読み出す。大当たりリーチコマンドは、1または複数の特定の変動パターン決定テーブルにのみ登録されているので、リーチ決定乱数に基づくこの選択は、リーチ演出を行うか否かを決定することになる。そして、変動パターン決定乱数を乱数カウンタから取得し、取得した乱数値の順位の変動パターン番号を、読み出した変動パターン決定テーブルから取得し、取得した変動パターン番号を示す変動パターンコマンドを送信バッファに格納する。これにより、ステップS112の制御コマンド送信処理では、大当たりリーチコマンドその他大当たり時に選択される変動パターンコマンドが演出制御部300に送信される。
Next, the process proceeds to step S412, and the big hit hour fluctuation pattern determination process is executed for determining the fluctuation pattern of the effect symbol to be displayed in a variable manner at the big hit. In the jackpot variation pattern determination process, for example, a reach determination random number is acquired from a random number counter, and a variation pattern determination table for jackpot corresponding to the acquired random number value is read from the
次いで、ステップS414に移行して、演出制御部300に対して演出図柄の変動開始を指定するための制御コマンド(変動開始コマンド)を送信バッファに格納する図柄変動開始処理を実行し、ステップS416に移行して、保留球数から「1」を減算し、一連の処理を終了して元の処理に復帰させる。
Next, the process proceeds to step S414, and a symbol variation start process for storing in the transmission buffer a control command (variation start command) for designating the effect symbol variation start to the
一方、ステップS406で、大当たり値と一致しないと判定したとき(No)は、ステップS418に移行して、はずれ時に停止させる演出図柄の態様を決定するはずれ時停止図柄決定処理を実行する。はずれ時停止図柄決定処理は、ステップS410と同様に構成される。ステップS410と異なるのは、はずれ用の停止図柄決定テーブルを用いる点である。 On the other hand, when it is determined in step S406 that it does not coincide with the jackpot value (No), the process proceeds to step S418, and the off-time stop symbol determining process is executed to determine the mode of the effect symbol to be stopped at the time of loss. The off-time stop symbol determination process is configured in the same manner as in step S410. The difference from step S410 is that a stop symbol determination table for detachment is used.
次いで、ステップS420に移行して、はずれ時に変動表示する演出図柄の変動パターンを決定するはずれ時変動パターン決定処理を実行する。はずれ時変動パターン決定処理は、ステップS412と同様に構成される。ステップS412と異なるのは、はずれ用の変動パターン決定テーブルを用いる点である。これにより、ステップS114の制御コマンド送信処理では、はずれ非リーチコマンド、はずれリーチコマンドその他はずれ時に選択される変動パターンコマンドが演出制御部300に送信される。
ステップS420の処理が終了すると、ステップS414に移行する。
一方、ステップS400で、図柄表示部104において演出図柄が変動中であると判定したとき(Yes)は、ステップS422に移行する。
Next, the process proceeds to step S420, and a variation pattern determination process at the time of detachment is performed to determine a variation pattern of the effect symbol that is variably displayed at the time of the detachment. The deviation variation pattern determination process is configured in the same manner as in step S412. The difference from step S412 is that a deviation variation pattern determination table is used. As a result, in the control command transmission process of step S114, the variation non-reach command, the deviation reach command, and other variation pattern commands selected at the time of deviation are transmitted to the
When the process of step S420 ends, the process proceeds to step S414.
On the other hand, when it is determined in step S400 that the effect symbol is changing in the symbol display unit 104 (Yes), the process proceeds to step S422.
ステップS422では、演出図柄の変動を開始してから所定時間(例えば、30秒)が経過したか否かを判定し、所定時間が経過したと判定したとき(Yes)は、ステップS424に移行して、演出制御部300に対して演出図柄の停止を指定するための制御コマンド(図柄停止コマンド)を送信バッファに格納する図柄停止処理を実行し、一連の処理を終了して元の処理に復帰させる。
In step S422, it is determined whether or not a predetermined time (for example, 30 seconds) has elapsed since the start of the change in the effect design. If it is determined that the predetermined time has elapsed (Yes), the process proceeds to step S424. The symbol stop process for storing in the transmission buffer a control command (design stop command) for designating the stop of the effect symbol to the
一方、ステップS422で、所定時間が経過していないと判定したとき(No)、およびステップS402で、保留球数が「0」であると判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
〔電動役物制御処理〕
次に、図12に示すステップS110の電動役物制御処理を説明する。
図17は、電動役物制御処理を示すフローチャートである。
電動役物制御処理は、図12に示すステップS110において実行されると、図17に示すように、まず、ステップS500に移行する。
On the other hand, when it is determined at step S422 that the predetermined time has not elapsed (No) and when it is determined at step S402 that the number of reserved balls is “0” (No), a series of processing is performed. End and return to the original process.
[Electric character control processing]
Next, the electric accessory control process in step S110 shown in FIG. 12 will be described.
FIG. 17 is a flowchart showing the electric accessory control process.
When the electric accessory control process is executed in step S110 shown in FIG. 12, first, the process proceeds to step S500 as shown in FIG.
ステップS500では、大当たりフラグに基づいて大当たりか否かを判定し、大当たりフラグがセットされていることにより大当たりであると判定したとき(Yes)は、ステップS502に移行する。 In step S500, it is determined whether or not the jackpot is based on the jackpot flag, and if it is determined that the jackpot is set by setting the jackpot flag (Yes), the process proceeds to step S502.
ステップS502では、大当たり演出を開始するタイミングであるか否かを判定し、大当たり演出を開始するタイミングであると判定したとき(Yes)は、ステップS504に移行する。 In step S502, it is determined whether or not it is time to start the jackpot effect. If it is determined that it is time to start the jackpot effect (Yes), the process proceeds to step S504.
ステップS504では、大当たり開始コマンドを送信バッファに格納する大当たり演出開始処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップS114の制御コマンド送信処理では、大当たり開始コマンドが演出制御部300に送信される。
In step S504, a jackpot presentation start process for storing the jackpot start command in the transmission buffer is executed, and a series of processes is terminated and the process returns to the original process. Thereby, in the control command transmission process of step S114, the big hit start command is transmitted to the
一方、ステップS502で、大当たり演出を開始するタイミングでないと判定したとき(No)は、ステップS506に移行して、ラウンドを開始するタイミングであるか否かを判定し、ラウンドを開始するタイミングであると判定したとき(Yes)は、ステップS508に移行する。 On the other hand, when it is determined in step S502 that it is not the timing to start the jackpot effect (No), the process proceeds to step S506, where it is determined whether it is the timing to start the round, and the timing to start the round. (Yes), the process proceeds to step S508.
ステップS508では、ラウンド開始コマンドを送信バッファに格納するラウンド開始処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップS114の制御コマンド送信処理では、ラウンド開始コマンドが演出制御部300に送信される。
In step S508, a round start process for storing the round start command in the transmission buffer is executed, a series of processes are terminated, and the original process is restored. Thereby, in the control command transmission process of step S114, a round start command is transmitted to the
一方、ステップS506で、ラウンドを開始するタイミングでないと判定したとき(No)は、ステップS510に移行して、ラウンドが継続中であるか否かを判定し、ラウンドが継続中であると判定したとき(Yes)は、ステップS512に移行する。 On the other hand, when it is determined in step S506 that it is not the timing to start the round (No), the process proceeds to step S510, where it is determined whether the round is continuing, and it is determined that the round is continuing. If (Yes), the process proceeds to step S512.
ステップS512では、大入賞口開閉部288により大入賞口109の開閉を制御する大入賞口開閉制御処理を実行し、一連の処理を終了して元の処理に復帰させる。
In step S512, a special prize opening / closing control process for controlling the opening / closing of the
一方、ステップS510で、ラウンドが継続中でないと判定したとき(No)は、ステップS514に移行して、ラウンドを終了するタイミングであるか否かを判定し、ラウンドを終了するタイミングであると判定したとき(Yes)は、ステップS516に移行する。 On the other hand, when it is determined in step S510 that the round is not continuing (No), the process proceeds to step S514, where it is determined whether it is time to end the round, and it is determined that it is time to end the round. If yes (Yes), the process proceeds to step S516.
ステップS516では、ラウンド回数に「1」を加算し、ステップS518に移行して、ラウンド回数が最大ラウンド数(例えば、15回)を超えたか否かを判定し、最大ラウンド数を超えていないと判定したとき(No)は、ステップS520に移行する。 In step S516, “1” is added to the number of rounds, and the process proceeds to step S518 to determine whether or not the number of rounds exceeds the maximum number of rounds (for example, 15 times). When it determines (No), it transfers to step S520.
ステップS520では、ラウンド終了コマンドを送信バッファに格納するラウンド終了処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップS114の制御コマンド送信処理では、ラウンド終了コマンドが演出制御部300に送信される。
一方、ステップS518で、ラウンド回数が最大ラウンド数を超えていると判定したとき(Yes)は、ステップS522に移行する。
In step S520, a round end process for storing the round end command in the transmission buffer is executed, and a series of processes are ended to return to the original process. Thereby, in the control command transmission process of step S114, the round end command is transmitted to the
On the other hand, when it is determined in step S518 that the number of rounds exceeds the maximum number of rounds (Yes), the process proceeds to step S522.
ステップS522では、大当たり終了コマンドを送信バッファに格納する大当たり演出終了処理を実行する。これにより、ステップS114の制御コマンド送信処理では、大当たり終了コマンドが演出制御部300に送信される。
次いで、ステップS524に移行して、大当たりフラグをリセットし、一連の処理を終了して元の処理に復帰させる。
In step S522, a jackpot presentation end process for storing the jackpot end command in the transmission buffer is executed. Thereby, in the control command transmission process of step S114, the big hit end command is transmitted to the
Next, the process proceeds to step S524, where the jackpot flag is reset, a series of processes are terminated, and the original process is restored.
一方、ステップS514で、ラウンドを終了するタイミングでないと判定したとき(No)、およびステップS500で、大当たりフラグがリセットされていることにより大当たりでないと判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
〔演出制御処理〕
次に、演出制御部300で実行される演出制御処理を説明する。
演出制御部300のCPU302は、制御プログラムをROM304から読み出し、読み出した制御プログラムに従って、図18のフローチャートに示す演出制御処理を実行する。
図18は、演出制御処理を示すフローチャートである。
演出制御処理は、CPU302において実行されると、図18に示すように、まず、ステップS600に移行する。
On the other hand, when it is determined at step S514 that it is not the timing to end the round (No), and when it is determined at step S500 that the big hit flag is not reset because the big hit flag is reset (No), a series of processing To return to the original process.
[Production control processing]
Next, the effect control process executed by the
The
FIG. 18 is a flowchart showing the effect control process.
When the effect control process is executed by the
ステップS600では、主制御部2aから制御コマンドを受信する制御コマンド受信処理を実行し、ステップS602に移行して、受信した制御コマンドのうち変動パターンコマンドを処理する変動パターンコマンド処理を実行し、ステップS604に移行する。
In step S600, a control command reception process for receiving a control command from the
ステップS604では、受信した制御コマンドのうち大当たりコマンドを処理する大当たりコマンド処理を実行し、ステップS606に移行して、受信した制御コマンドのうち変動パターンコマンドおよび大当たりコマンド以外のものを処理するその他コマンド処理を実行し、ステップS600に移行する。
〔制御コマンド受信処理〕
次に、ステップS600の制御コマンド受信処理を説明する。
図19は、制御コマンド受信処理を示すフローチャートである。
制御コマンド受信処理は、ステップS600において実行されると、図19に示すように、まず、ステップS700に移行する。
In step S604, a jackpot command process for processing the jackpot command among the received control commands is executed, and the process proceeds to step S606, and other command processes for processing the received control command other than the variation pattern command and the jackpot command. And the process proceeds to step S600.
[Control command reception processing]
Next, the control command reception process in step S600 will be described.
FIG. 19 is a flowchart showing control command reception processing.
When the control command reception process is executed in step S600, the process first proceeds to step S700 as shown in FIG.
ステップS700では、I/F310を介して主制御部2aから制御コマンドを受信したか否かを判定し、制御コマンドを受信したと判定したとき(Yes)は、ステップS702に移行するが、そうでないと判定したとき(No)は、制御コマンドを受信するまでステップS700で待機する。
In step S700, it is determined whether or not a control command has been received from the
ステップS702では、受信した制御コマンドが大当たりリーチコマンドであるか否かを判定し、大当たりリーチコマンドであると判定したとき(Yes)は、ステップS704に移行して、命令情報を取得したか判定し、命令情報を取得した場合(Yes)は、ステップS706に移行して接続機器認証処理を行う。ステップS704において、命令情報を取得していない場合(No)は、ステップS708に移行して、受信した制御コマンドに付加されている暗号化認証データを取得し、ステップS710に移行する。 In step S702, it is determined whether or not the received control command is a jackpot reach command. If it is determined that the command is a jackpot reach command (Yes), the process proceeds to step S704 to determine whether command information has been acquired. If the command information is acquired (Yes), the process proceeds to step S706 and the connected device authentication process is performed. In step S704, when the command information is not acquired (No), the process proceeds to step S708, the encrypted authentication data added to the received control command is acquired, and the process proceeds to step S710.
ステップS710では、主制御部2aが使用する所定の暗号化アルゴリズムに対応する復号化アルゴリズムにより、取得した暗号化認証データを復号化する復号化処理を実行する。
In step S710, a decryption process for decrypting the obtained encrypted authentication data is executed by a decryption algorithm corresponding to a predetermined encryption algorithm used by the
復号化アルゴリズムとしては、例えば、復号鍵(例えば、「0x33」)との排他的論理和を演算する復号化アルゴリズムが用いられる。ここで、復号化アルゴリズムは、暗号化アルゴリズムにより暗号化した暗号化結果を復号化可能なものである。 As the decryption algorithm, for example, a decryption algorithm that calculates an exclusive OR with a decryption key (for example, “0x33”) is used. Here, the decryption algorithm is capable of decrypting the encrypted result encrypted by the encryption algorithm.
したがって、復号化処理では、復号化アルゴリズムにより暗号化認証データを復号化して検証値を得ることになる。この検証値は、主制御部2aで生成した検証値(すなわち、期待値)と一致する。
Therefore, in the decryption process, the verification value is obtained by decrypting the encrypted authentication data by the decryption algorithm. This verification value matches the verification value (that is, the expected value) generated by the
次いで、ステップS712に移行して、ROM304から期待値を読み出し、ステップS714に移行して、復号化して得られた検証値が、読み出した期待値と一致するか否かを判定し、期待値と一致すると判定したとき(Yes)は、ステップS716に移行する。
ステップS716では、ステップS700で受信した制御コマンドをRAM306の受信バッファに格納し、一連の処理を終了して元の処理に復帰させる。
一方、ステップS714で、検証値が期待値と一致しないと判定したとき(No)は、ステップS718に移行する。
ステップS718では、ステップS700で受信した制御コマンドを破棄し、ステップS720に移行する。
Next, the process proceeds to step S712, and the expected value is read from the
In step S716, the control command received in step S700 is stored in the reception buffer of the
On the other hand, when it is determined in step S714 that the verification value does not match the expected value (No), the process proceeds to step S718.
In step S718, the control command received in step S700 is discarded, and the process proceeds to step S720.
ステップS720では、図柄表示部104、音声制御部382およびランプ制御部386に対して、不正通知を行う不正通知演出を指定するための制御コマンド(不正通知演出コマンド)をそれぞれ送信する不正通知処理を実行する。図柄表示部104、音声制御部382およびランプ制御部386では、不正通知演出コマンドを受信すると、不正通知演出を行う。不正通知演出では、例えば、図柄表示部104に通常出現しないキャラクタを出現させたり、キャラクタを通常とは異なる方法で出現させたりする。また、図柄表示部104の輝度や色を変えたり、所定の点滅パターンでランプ384を点滅させたりして通知してもよい。これにより、パチンコホールの従業員がその状態を認識しやすい。また、不正通知演出は、遊技者がその状態を認識しにくい態様で行ってもよいし、逆に、遊技者が認識しやすい態様で行ってもよい。遊技者が認識しやすい態様で行えば、不正行為を中止することが期待できる。
ステップS720の処理が終了すると、一連の処理を終了して元の処理に復帰させる。
In step S720, a fraud notification process for transmitting a control command (fraud notification effect command) for designating a fraud notification effect for performing fraud notification to the
When the process of step S720 ends, the series of processes ends and the process returns to the original process.
一方、ステップS702で、受信した制御コマンドが大当たりリーチコマンドでないと判定したとき(No)は、ステップS722に移行して、ステップS700で受信した制御コマンドを受信バッファに格納し、一連の処理を終了して元の処理に復帰させる。 On the other hand, when it is determined in step S702 that the received control command is not a jackpot reach command (No), the process proceeds to step S722, the control command received in step S700 is stored in the reception buffer, and the series of processing ends. To return to the original process.
〔接続機器認証処理〕
ここで、図19のステップS706において実行される接続機器認証処理について説明する。この場合、主制御部2aから出力された大当たりリーチコマンドに付加されている命令情報を取得し、接続機器認証処理を実行する。主制御部2aのCPU202が物理的に解析され、例えばROM内の制御プログラムを不正な内容に差し替えて製造された不正なCPUが主制御部2aに実装されている場合でも、主制御部2aと演出制御部300との接続状態を認証することにより、それを検出することができる。この接続機器認証処理は、演出制御部300のCPU302によって行なわれる。
ここで、この演出制御部300における接続機器認証処理の実行にはアクセス制御装置330が密接に関係するが、その動作は図13に示したように主制御部2aにおけるアクセス制御装置230とほぼ同様である。
すなわち、演出制御部300のCPUコア303は、図20に示すように、まず、ステップS40aにおいて、主制御部2aから出力された命令情報を取得する。この命令情報は、上述したように、例えば、大当たりリーチコマンドに付加されているので、その大当たりリーチコマンドを主制御部2aから受信したときに取得することができる。
次に、ステップS42を経て、接続機器から認証用データを取得し、I/F312を介して、取得した認証用データを用いて接続機器を認証するために用いる検証値Vの生成要求を出力する。なお、ステップS40で取得した認証用データをそのまま検証値Vとしてもよい。
アクセス制御装置330は、検証値Vの生成要求を入力すると、ステップS44を経て、演算部332で検証値Vを生成し、レジスタ334に保持する。
[Device / PLC authentication processing]
Here, the connected device authentication process executed in step S706 of FIG. 19 will be described. In this case, the command information added to the jackpot reach command output from the
Here, although the
That is, as shown in FIG. 20, the
Next, through step S42, authentication data is acquired from the connected device, and a request for generating a verification value V used to authenticate the connected device using the acquired authentication data is output via the I /
Upon receiving the verification value V generation request, the
次いで、演出制御部300のCPUコア303は、ステップS46を経て、アクセス制御装置330のレジスタ334から検証値Vを読み出すリード命令をROM304から読み出し、読み出したリード命令を実行することにより、I/F312を介してレジスタ334に対するリード要求を出力する。また、ステップS48を経て、I/F312を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置330は、リード要求を入力すると、ステップS50を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ334が保持している検証値Vを読み出し、読み出した検証値VをI/F312に出力する。
When the read request is input, the
演出制御部300のCPUコア303は、検証値Vを入力すると、ステップS52を経て、入力した検証値Vをレジスタ303cに保持する。そして、CPUコア303は、ステップS54を経て、アクセス制御装置330のレジスタ336に検証値Vを書き込むライト命令をROM304から読み出し、読み出したライト命令を実行することにより、I/F312を介してレジスタ336に対するライト要求を出力する。また、ステップS56を経て、I/F312を介して、読み出したライト命令およびそのアドレス並びに検証値Vを出力する。
When the verification value V is input, the
アクセス制御装置330は、ライト要求を入力すると、ステップS58を経て、ライト命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、検証値Vを入力し、入力した検証値Vをレジスタ336に書き込む。
When the write request is input, the
次いで、CPUコア303は、ステップS60を経て、I/F312を介して期待値Pの生成要求を出力する。期待値Pは、検証値Vを照合するために用いる値である。
アクセス制御装置330は、期待値Pの生成要求を入力すると、ステップS62を経て、演算部332で期待値Pを生成し、レジスタ334に保持する。
Next, the
When the
次いで、CPUコア303は、ステップS64を経て、アクセス制御装置330のレジスタ334から期待値Pを読み出すリード命令をROM304から読み出し、読み出したリード命令を実行することにより、I/F312を介してレジスタ334に対するリード要求を出力する。また、ステップS66を経て、I/F312を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置330は、リード要求を入力すると、ステップS68を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ334が保持している期待値Pを読み出し、読み出した期待値PをI/F312に出力する。
When the read request is input, the
次いで、演出制御部300のCPUコア303は、ステップS70を経て、アクセス制御装置330のレジスタ336から検証値Vを読み出すリード命令をROM304から読み出し、読み出したリード命令を実行することにより、I/F312を介してレジスタ336に対するリード要求を出力する。また、ステップS72を経て、I/F312を介して、読み出したリード命令およびそのアドレスを出力する。
Next, the
アクセス制御装置330は、リード要求を入力すると、ステップS74を経て、リード命令およびそのアドレスを入力し、許可命令コード列および許可アドレスであれば、レジスタ336が保持している検証値Vを読み出し、読み出した検証値VをI/F312に出力する。
When the read request is input, the
演出制御部300のCPUコア303は、検証値Vおよび期待値Pを入力すると、ステップS76、S78を経て、検証値Vと期待値Pとを照合し、照合結果が正しいか否かを判定する。照合結果が正しいか否かは、例えば、検証値Vが期待値Pと所定関係にあるか否かにより判定する。所定関係とは、例えば、検証値Vが期待値Pと一致していること、検証値Vおよび期待値Pの一方を所定の演算方法により演算した演算値が他方と一致していること、検証値Vおよび期待値Pに大小関係その他の相関関係があることをいう。
When the verification value V and the expected value P are input, the
照合結果が正しいと判定したとき(Yes)は、CPUコア303は、ステップS80を経て、接続機器を認証し、接続機器認証処理を終了する。一方、照合結果が正しくないと判定したとき(No)は、CPUコア303は、ステップS82を経て、接続機器を認証せず、接続機器認証処理を終了する。接続機器を認証しなかった場合、CPUコア303は、不正通知を行ったり接続機器との接続を切断したりする。
When it is determined that the collation result is correct (Yes), the
〔変動パターンコマンド処理〕
次に、ステップS602の変動パターンコマンド処理を説明する。
図21は、変動パターンコマンド処理を示すフローチャートである。
変動パターンコマンド処理は、ステップS602において実行されると、図21に示すように、まず、ステップS800に移行する。
[Variation pattern command processing]
Next, the variation pattern command process in step S602 will be described.
FIG. 21 is a flowchart showing the variation pattern command processing.
When the variation pattern command process is executed in step S602, as shown in FIG. 21, first, the process proceeds to step S800.
ステップS800では、受信バッファの制御コマンドに基づいて変動パターンコマンドを受信したか否かを判定し、変動パターンコマンドを受信したと判定したとき(Yes)は、ステップS802に移行するが、そうでないと判定したとき(No)は、変動パターンコマンドを受信するまでステップS800で待機する。 In step S800, it is determined whether or not a variation pattern command has been received based on the control command of the reception buffer. When it is determined that the variation pattern command has been received (Yes), the process proceeds to step S802. When it is determined (No), the process waits in step S800 until a variation pattern command is received.
ステップS802では、乱数カウンタから乱数を取得し、ステップS804に移行して、取得した乱数に基づいて、受信した変動パターンコマンドに対応する複数の変動演出のなかからいずれかを選択し、ステップS806に移行する。 In step S802, a random number is acquired from a random number counter, the process proceeds to step S804, and one of a plurality of variation effects corresponding to the received variation pattern command is selected based on the acquired random number, and the process proceeds to step S806. Transition.
ステップS806では、図柄表示部104、音声制御部382およびランプ制御部386に対して、選択した変動演出の開始を指定するための制御コマンド(変動演出開始コマンド)をそれぞれ送信する変動演出開始処理を実行する。
In step S806, a variation effect start process for transmitting a control command (variation effect start command) for designating the start of the selected variation effect to the
次いで、ステップS808に移行して、変動演出開始コマンドを送信してから所定時間(例えば、30秒)が経過したか否かを判定し、所定時間が経過していないと判定したとき(No)は、ステップS810に移行して、受信バッファの制御コマンドに基づいて図柄停止コマンドを受信したか否かを判定し、図柄停止コマンドを受信したと判定したとき(Yes)は、ステップS812に移行する。 Next, the process proceeds to step S808, where it is determined whether or not a predetermined time (for example, 30 seconds) has elapsed since the transmission of the change effect start command, and when it is determined that the predetermined time has not elapsed (No). Shifts to step S810 to determine whether or not a symbol stop command has been received based on the control command of the reception buffer, and when it is determined that a symbol stop command has been received (Yes), shifts to step S812. .
ステップS812では、図柄表示部104、音声制御部382およびランプ制御部386に対して、変動演出の終了を指定するための制御コマンド(変動演出終了コマンド)をそれぞれ送信する変動演出終了処理を実行する。
ステップS812の処理が終了すると、一連の処理を終了して元の処理に復帰させる。
一方、ステップS810で、図柄停止コマンドを受信しないと判定したとき(No)は、ステップS808に移行する。
一方、ステップS808で、所定時間が経過したと判定したとき(Yes)は、ステップS812に移行する。
In step S812, a variation effect end process is performed in which a control command (variation effect end command) for designating the end of the variation effect is transmitted to the
When the process of step S812 ends, the series of processes ends and the original process is restored.
On the other hand, when it determines with not receiving a symbol stop command by step S810 (No), it transfers to step S808.
On the other hand, when it is determined in step S808 that the predetermined time has elapsed (Yes), the process proceeds to step S812.
なお、乱数カウンタの更新は、主制御部2aで採用される上記方法により行うことができる。ただし、更新方法は、主制御部2aとは必ずしも同一でなくてもよい。
〔大当たりコマンド処理〕
次に、ステップS604の大当たりコマンド処理を説明する。
図22は、大当たりコマンド処理を示すフローチャートである。
大当たりコマンド処理は、ステップS604において実行されると、図22に示すように、まず、ステップS900に移行する。
The random number counter can be updated by the above method employed by the
[Big hit command processing]
Next, the jackpot command processing in step S604 will be described.
FIG. 22 is a flowchart showing jackpot command processing.
When the jackpot command process is executed in step S604, the process first proceeds to step S900 as shown in FIG.
ステップS900では、受信バッファの制御コマンドに基づいて大当たり開始コマンドを受信したか否かを判定し、大当たり開始コマンドを受信したと判定したとき(Yes)は、ステップS902に移行する。 In step S900, it is determined whether or not a jackpot start command has been received based on the control command of the reception buffer. If it is determined that a jackpot start command has been received (Yes), the process proceeds to step S902.
ステップS902では、図柄表示部104、音声制御部382およびランプ制御部386に対して、大当たり演出の開始を指定するための制御コマンド(大当たり演出開始コマンド)をそれぞれ送信する大当たり演出開始処理を実行する。
In step S902, a jackpot effect start process for transmitting a control command (a jackpot effect start command) for designating the start of a jackpot effect to the
次いで、ステップS904に移行して、受信バッファの制御コマンドに基づいてラウンド開始コマンドを受信したか否かを判定し、ラウンド開始コマンドを受信したと判定したとき(Yes)は、ステップS906に移行する。 Next, the process proceeds to step S904, where it is determined whether a round start command is received based on the control command of the reception buffer. When it is determined that the round start command is received (Yes), the process proceeds to step S906. .
ステップS906では、図柄表示部104、音声制御部382およびランプ制御部386に対して、ラウンド演出の開始を指定するための制御コマンド(ラウンド演出開始コマンド)をそれぞれ送信するラウンド演出開始処理を実行する。
In step S906, a round effect start process for transmitting a control command (round effect start command) for designating the start of the round effect to the
次いで、ステップS908に移行して、受信バッファの制御コマンドに基づいてラウンド終了コマンドを受信したか否かを判定し、ラウンド終了コマンドを受信したと判定したとき(Yes)は、ステップS910に移行する。 Next, the process proceeds to step S908, where it is determined whether a round end command has been received based on the control command of the reception buffer. When it is determined that a round end command has been received (Yes), the process proceeds to step S910. .
ステップS910では、図柄表示部104、音声制御部382およびランプ制御部386に対して、ラウンド演出の終了を指定するための制御コマンド(ラウンド演出終了コマンド)をそれぞれ送信するラウンド演出終了処理を実行し、ステップS904に移行する。
In step S910, a round effect end process for transmitting a control command (round effect end command) for designating the end of the round effect to the
一方、ステップS908で、ラウンド終了コマンドを受信しないと判定したとき(No)は、ステップS912に移行して、受信バッファの制御コマンドに基づいて大当たり終了コマンドを受信したか否かを判定し、大当たり終了コマンドを受信したと判定したとき(Yes)は、ステップS914に移行する。 On the other hand, when it is determined in step S908 that the round end command is not received (No), the process proceeds to step S912, where it is determined whether or not the jackpot end command is received based on the control command of the reception buffer. When it is determined that the end command has been received (Yes), the process proceeds to step S914.
ステップS914では、図柄表示部104、音声制御部382およびランプ制御部386に対して、大当たり演出の終了を指定するための制御コマンド(大当たり演出終了コマンド)をそれぞれ送信する大当たり演出終了処理を実行し、一連の処理を終了して元の処理に復帰させる。
一方、ステップS912で、大当たり終了コマンドを受信しないと判定したとき(No)は、ステップS908に移行する。
In step S914, a big hit effect ending process is executed for transmitting a control command (big hit effect end command) for designating the end of the big win effect to the
On the other hand, when it is determined in step S912 that the jackpot end command is not received (No), the process proceeds to step S908.
一方、ステップS904で、ラウンド開始コマンドを受信しないと判定したとき(No)は、ラウンド開始コマンドを受信するまでステップS904で待機する。 On the other hand, when it is determined in step S904 that the round start command is not received (No), the process waits in step S904 until the round start command is received.
一方、ステップS900で、大当たり開始コマンドを受信しないと判定したとき(No)は、大当たり開始コマンドを受信するまでステップS900で待機する。
〔本実施の形態の動作〕
次に、本実施の形態の動作を説明する。
On the other hand, when it is determined in step S900 that the jackpot start command is not received (No), the process waits in step S900 until the jackpot start command is received.
[Operation of the present embodiment]
Next, the operation of the present embodiment will be described.
図12に示すように、まず、パチンコ機に電源が投入されると、主制御部2aでは、ステップS102を経て、初期化処理が実行される。初期化処理では、電源オンコマンドが送信される。電源オンコマンドは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すようにステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300および賞球制御部400にそのまま送信される。
As shown in FIG. 12, first, when the power is turned on to the pachinko machine, the
演出制御部300では、電源オンコマンドを受信すると、図柄表示部104、音声制御部382およびランプ制御部386に対して、電源オン時の演出用の制御コマンド(具体的には、デモ画面の表示、ランプ384の点灯、音声の出力を指定するための制御コマンド)がそれぞれ送信される。
When the
初期化処理が終了すると、主制御部2aでは、ステップS104を経て、接続機器認証処理が実行される。
When the initialization process is completed, the
接続機器認証処理では、ステップS40〜S82を経て、アクセス制御装置230により接続機器の認証が行われる。これにより、接続機器の正当性を認証することができる。しかしながら、例えば、悪意を有する第三者によって、不正な機器が認証されるように接続機器認証処理を改ざんされてしまう場合がある。
In the connected device authentication process, the
例えば、図13に示すステップS58では、アクセス制御装置330のレジスタ336に対して検証値Vが書き込まれている。このとき、レジスタ336に書き込まれるのは、本来、演出制御部300のCPUコア303のレジスタ303cに保持されている検証値Vである。しかしながら、不正な命令コード列によって、レジスタ336に書き込む値をレジスタ303c以外の場所(または、レジスタ303cのうち検証値Vが保持されている領域以外の領域)に記憶された値とすることが可能となる。
For example, in step S58 shown in FIG. 13, the verification value V is written in the
また、例えば、図13に示すステップS50では、アクセス制御装置330のレジスタ334から検証値Vが読み出されている。このとき、読み出す値をレジスタ334以外の場所(または、レジスタ334のうち検証値Vが保持されている領域以外の領域)に記憶された値とすることが可能となる。
For example, in step S50 shown in FIG. 13, the verification value V is read from the
これらの不正は、例えば、不正なパッチ等によってCPUコア303の処理を分岐させることにより可能となる。
These frauds can be made, for example, by branching the processing of the
このような不正行為が行われると、正しい接続機器認証処理が行えず、不正な機器の接続が可能となってしまう。そのため、演出制御部300にも、アクセス制御装置330を設け、演出制御部300のCPU302によるレジスタ334、336へのアクセスを制御する。これにより、不正な命令コード列の実行により不正な機器が認証されてしまう可能性を低減することができる。
If such an illegal act is performed, a correct connection device authentication process cannot be performed, and an unauthorized device can be connected. Therefore, the
図23は、アクセス制御部338が行うアクセス制御の概要を示す説明図である。なお、図23では、説明の便宜上、構成の一部を省略している。
FIG. 23 is an explanatory diagram showing an outline of access control performed by the
図23に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「0xJKLMNOPQ」(ライト命令)およびアドレス「0x104」であるとする。このとき、正規のROM304には、アドレス「0x104」〜「0x107」に命令コード列「0xJKLMNOPQ」(ライト命令)が記憶されている。
As shown in FIG. 23, for example, it is assumed that the permitted instruction code string and the permitted address are an instruction code string “0xJKLMNOPQ” (write instruction) and an address “0x104”. At this time, the
演出制御部300のCPUコア303が、アドレス「0x104」〜「0x107」から命令コード列「0xJKLMNOPQ」を読み出して実行する場合(矢印α)、アクセス制御部338は、レジスタ336へのデータの書込を許可する。
When the
ところが、例えば、不正例1のように、アドレス「0x200」〜「0x203」に不正な命令コード列「0xPOIUYTRE」(ライト命令)が書き込まれてしまったとする。この場合、CPUコア203が、アドレス「0x200」〜「0x203」から命令コード列「0xPOIUYTRE」を読み出して実行しても(矢印β)、命令コード列のアドレスが許可アドレスではないので、アクセス制御部338は、レジスタ336へのデータの書込を禁止する(ライト命令を拒否)。
However, suppose that an illegal instruction code string “0xPOIYUTRE” (write instruction) has been written to addresses “0x200” to “0x203” as in unauthorized example 1, for example. In this case, even if the
また、例えば、不正例2のように、アドレス「0x080」〜「0x083」に不正な命令コード列「0xLKJHGFDS」が挿入されてしまったとする。この不正な命令コード列は、例えば、レジスタ336に書き込む値を変更する命令コード列である。しかしながら、この不正な命令コード列が挿入されたことにより、本来実行が許可される命令コード列「0xJKLMNOPQ」(ライト命令)のアドレスが「0x108」〜「0x10B」となってしまっている。
Further, for example, it is assumed that an illegal instruction code string “0xLKJHGFDS” is inserted into addresses “0x080” to “0x083” as in the illegal example 2. This illegal instruction code string is, for example, an instruction code string that changes a value written to the
そのため、演出制御部300のCPUコア303が、アドレス「0x108」〜「0x10B」から命令コード列「0xJKLMNOPQ」を読み出して実行しても(矢印γ)、命令コード列のアドレスが許可アドレスではないので、アクセス制御部338は、レジスタ336へのデータの書込を禁止する(ライト命令を拒否)。このとき、CPUコア303は、アクセス御装置330からの通知を受け、不正通知を行ってもよい。これにより、不正な命令コード列「0xLKJHGFDS」の実行により書き込み値が変更されたとしても、その値がレジスタ336に書き込まれないので、不正行為が行われる可能性を低減することができる。
Therefore, even if the
一方、アクセス制御部338は、上記不正行為のほか、ビットエラーによりCPU302が誤動作する可能性を低減することもできる。
On the other hand, the
図24は、アクセス制御部338が行うアクセス制御の概要を示す説明図である。
FIG. 24 is an explanatory diagram showing an outline of access control performed by the
図24に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「0xABCDEFGH」(リード命令)およびアドレス「0x100」、並びに、命令コード列「0xABCDEFGI」(ライト命令)およびアドレス「0x104」であるとする。このとき、正規のROM304には、アドレス「0x100」〜「0x103」に命令コード列「0xABCDEFGH」(リード命令)が記憶されている。
As shown in FIG. 24, for example, the permission instruction code string and the permission address are the instruction code string “0xABCDEFGH” (read instruction) and address “0x100”, and the instruction code string “0xABCDEFGI” (write instruction) and address “0x104”. ”. At this time, the
CPUコア303が命令コード列を読み出す際、命令コード列にビットエラー(例えば、「1」が「0」となる。)が発生してしまう場合がある。その結果、CPUコア203がアドレス「0x100」〜「0x103」から読み出した命令コード列「0xABCDEFGH」(リード命令)が、例えば、命令コード列「0xABCDEFGI」(ライト命令)に置き換わってしまう場合がある(矢印δ)。この場合、CPUコア303が命令コード列「0xABCDEFGI」(ライト命令)を実行すると、アクセス制御装置330のデータが予期しない形で書き換えられてしまう可能性がある。
When the
しかしながら、このようなライト命令が実行されたとしても(矢印ε)、命令コード列のアドレスが許可アドレスではないので、アクセス制御部338は、レジスタ336へのデータの書込を禁止する(ライト命令を拒否)。
However, even if such a write instruction is executed (arrow ε), the address of the instruction code string is not a permission address, so that the
次に、パチンコ機で遊技を行う場合を説明する。 Next, a case where a game is played with a pachinko machine will be described.
接続機器が認証されると、図12に示すように、主制御部2aにより、ステップS106〜S114を経て、入賞判定処理、大当たり判定処理、電動役物制御処理および制御コマンド送信処理が所定周期で繰り返し実行される。これにより、パチンコ機は、遊技可能な状態となる。遊技者は、貸し出しを受けた遊技球をパチンコ機に装填し、発射部482を操作して遊技球を遊技盤101に発射することにより遊技を行うことができる。
When the connected device is authenticated, as shown in FIG. 12, the
遊技盤101に発射された遊技球が始動入賞口105に入賞すると、主制御部2aでは、図15に示すステップS306、S312を経て、その入賞タイミングでアクセス制御装置230から大当たり決定乱数が読み出される。この大当たり決定乱数も、上記接続機器認証処理の場合と同様に、アクセス制御装置230によりアクセスが許可された場合にのみ、読み出すようにしてもよい。すなわち、大当たり決定乱数の読出に関する命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、読み出すようにしてもよい。その他遊技制御に用いる乱数についても同様である。そして、図16に示すステップS404、S406を経て、読み出された乱数値が大当たり値と一致していれば、大当たりとなる。
When the game ball launched on the
大当たりとなると、ステップS410、S412を経て、大当たり時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、大当たり図柄を指定するための図柄指定コマンドおよび大当たりリーチコマンドが送信される。大当たりリーチコマンドは予め定められたコマンドであるため、ステップS204〜S208を経て、暗号化認証データが付加されて周辺部3aの一例である演出制御部300に送信される。
When the jackpot is reached, the stop symbol mode and the variation pattern at the jackpot are determined through steps S410 and S412. At this time, when it is determined to perform the reach effect, in the control command transmission process, a symbol designation command for designating a jackpot symbol and a jackpot reach command are transmitted. Since the jackpot reach command is a predetermined command, encrypted authentication data is added through steps S204 to S208 and transmitted to the
演出制御部300では、大当たりリーチコマンドを受信すると、図21に示すステップS802〜S812を経て、受信した大当たりリーチコマンドに基づいて大当たりリーチ変動時の処理が実行される。
Upon receiving the jackpot reach command, the
主制御部2aでは、図16に示すステップS414、S424を経て、所定の変動パターンで演出図柄を変動表示させ、演出図柄の一部をリーチ図柄で停止させた後に大当たり図柄で演出図柄を停止させる。演出図柄が停止すると、制御コマンド送信処理では、大当たり開始コマンドが送信される。大当たり開始コマンドは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300にそのまま送信される。
In the
演出制御部300では、大当たり開始コマンドを受信すると、図22に示すステップS902を経て、受信した大当たり開始コマンドに基づいて大当たり演出開始時の処理が実行される。
In the
大当たり中は、最大ラウンド数を上限として所定条件を満たすまでラウンドが継続される。制御コマンド送信処理では、ラウンドの開始時および終了時に大当たりコマンドが送信される。大当たりコマンドは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300に送信される。
During the big hit, the round continues until the predetermined condition is satisfied with the maximum number of rounds as the upper limit. In the control command transmission process, a jackpot command is transmitted at the start and end of a round. Since the jackpot command is not a predetermined command (ie, jackpot reach command), the encrypted authentication data and the command information are not added to the
また、大当たり中は、大入賞口109が所定の開閉パターンで開放し、大入賞口109に遊技球が入賞すると、遊技球1個につき所定数の遊技球が賞球として払い出される。
In addition, during the big hit, the big winning
そして、最終ラウンドが終了すると、制御コマンド送信処理では、大当たり終了コマンドが送信される。大当たり終了コマンドは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300にそのまま送信される。
When the final round ends, a jackpot end command is transmitted in the control command transmission process. Since the jackpot end command is not a predetermined command (that is, jackpot reach command), the encrypted authentication data and the command information are not added to the
演出制御部300では、大当たり終了コマンドを受信すると、図22に示すステップS914を経て、受信した大当たり終了コマンドに基づいて大当たり演出終了時の処理が実行される。
一方、図16に示すステップS404、S406を経て、取得された乱数値が大当たり値と一致しなければ、はずれとなる。
When the
On the other hand, if the acquired random value does not match the jackpot value through steps S404 and S406 shown in FIG.
はずれとなると、ステップS418、S420を経て、はずれ時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、はずれ図柄(または、はずれ図柄となる旨)を指定するための図柄指定コマンドおよびはずれリーチコマンドが送信される。これに対し、リーチ演出を行わないことが決定されると、制御コマンド送信処理では、同図柄指定コマンドおよびはずれ非リーチコマンドが送信される。はずれリーチコマンドまたははずれ非リーチコマンドは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300にそのまま送信される。
When it comes off, through steps S418 and S420, the mode and variation pattern of the stop symbol at the time of loss are determined. At this time, when it is determined to perform the reach effect, in the control command transmission process, a symbol designating command and a missed reach command for designating a missed symbol (or an effect of becoming a missed symbol) are transmitted. On the other hand, when it is determined not to perform the reach effect, the symbol designation command and the off-reach non-reach command are transmitted in the control command transmission process. Since the outlier reach command or the outlier non-reach command is not a predetermined command (that is, jackpot reach command), through step S210 shown in FIG. 14, the
演出制御部300では、はずれリーチコマンドまたははずれ非リーチコマンドを受信すると、図21に示すステップS802〜S812を経て、受信したはずれリーチコマンドまたははずれ非リーチコマンドに基づいてはずれ変動時の処理が実行される。
When the
一方、遊技が中断されると、主制御部2aでは、客待ちデモ実行処理が実行される。そして、制御コマンド送信処理では、客待ちデモ開始コマンドが送信される。客待ちデモ開始コマンドまたは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300にそのまま送信される。
On the other hand, when the game is interrupted, the
演出制御部300では、客待ちデモ開始コマンドを受信すると、客待ちデモ開始時の処理として、図柄表示部104、音声制御部382およびランプ制御部386に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
When the
その後、遊技が再開されると、制御コマンド送信処理では、客待ちデモ停止コマンドが送信される。客待ちデモ停止コマンドまたは予め定められたコマンド(すなわち大当たりリーチコマンド)ではないため、図14に示すステップS210を経て、暗号化認証データや命令情報が付加されることなく演出制御部300にそのまま送信される。 Thereafter, when the game is resumed, a customer waiting demonstration stop command is transmitted in the control command transmission process. Since it is not a customer waiting demonstration stop command or a predetermined command (that is, jackpot reach command), it passes through step S210 shown in FIG. Is done.
演出制御部300では、客待ちデモ停止コマンドを受信すると、客待ちデモ終了時の処理として、図柄表示部104、音声制御部382およびランプ制御部386に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
When the
なお、以上は、予め定められたコマンドでない場合、暗号化認証データや命令情報を付加されることなくそのまま送信する場合について説明したが、暗号化認証データや命令情報の代わりにダミー値のデータを付加して送信してもよい。 In the above, the case where the command is not a predetermined command and the encrypted authentication data and the command information are transmitted without being added has been described. However, instead of the encrypted authentication data and the command information, dummy value data is used. You may add and transmit.
〔アクセス制御装置を設けることによる効果〕
このようにして、本実施の形態では、演出制御部300のアクセス制御装置330は、レジスタ334、336と、主制御部2aのCPUコア203が実行する命令情報すなわち命令コード列およびそのアドレスをI/F312から入力する入力部331と、入力部331で入力して取得した命令コード列およびアドレスに基づいて、CPU302によるレジスタ334、336へのアクセスを制御するアクセス制御部338とを備える。
[Effects of providing an access control device]
In this manner, in the present embodiment, the
これにより、レジスタ334、336のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正行為やエラーに起因する不正動作が行われる可能性を低減することができる。また、CPU202とは別体のアクセス制御装置330がアクセス制御機能を実現するので、CPUコア203自体が不正動作検出処理を行う必要がなく、従来に比して、開発や設計の難易度が高くなることを抑制することができる。さらに、命令コード列およびそのアドレスに基づいてアクセスが制御されるので、ROM204と同等容量のテーブルを用意する必要がなく、従来に比して、データ容量が増大することを抑制することができる。
This can reduce the possibility that the data in the
さらに、DIP等からなるワンチップ型のマイクロプロセッサであるCPU202を採用する場合において、CPUコア203が不正動作検出処理を行う構成では、CPU202が丸ごと交換されるような不正行為が行われると、CPUコア203自体が交換されてしまうことになるので、CPU202の正当性を認証することはできない。これに対し、本実施の形態は、アクセス制御装置330がCPU202とは別体に設けられているので、そのような不正行為が行われても、CPU202の正当性を認証することができる。
Further, in the case of adopting the
さらに、DIP等からなるワンチップ型のマイクロプロセッサであるCPU202を採用する場合において、アクセス制御装置のアクセス制限機能を実現する回路等をCPU202に内蔵する構成では、CPU202を新たに開発、設計等しなければならず、既存のCPUには適用することができない。これに対し、本実施の形態では、アクセス制御装置を演出制御部300に設けるだけでよいので、既存のCPUにも適用することができる。
Furthermore, when the
さらに、本実施の形態では、アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ334、336へのアクセスを許可する。
Furthermore, in the present embodiment, the
これにより、不正に書き換えられた命令コード列、ビットエラーによって内容が変化した命令コード列、または不正なアドレスに記憶された命令コード列が実行されることにより、レジスタ334、336のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
As a result, an illegally rewritten instruction code string, an instruction code string whose contents have been changed due to a bit error, or an instruction code string stored at an illegal address is executed, whereby the data in the
さらに、本実施の形態では、アクセス制御装置330によるアクセス制御の状況に応じて不正通知を行う。
Further, in the present embodiment, fraud notification is performed according to the status of access control by the
これにより、演出制御部300に対して不正動作が行われた可能性があることを把握することができる。なお、本実施の形態では、演出制御部300、主制御部2aにアクセス制御装置230、330を設けているが、他の構成により主制御部2aの不正動作を回避できれば、この主制御部2a側のアクセス制御装置230を省略しても良い。
As a result, it is possible to grasp that there is a possibility that an illegal operation has been performed on the
〔第2の実施の形態〕
次に、本発明の第2の実施の形態を図面を参照しながら説明する。図25ないし図28は、本発明に係る遊技機およびアクセス制御プログラム、並びに遊技制御方法の第2の実施の形態を示す図である。
[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to the drawings. 25 to 28 are diagrams showing a second embodiment of the gaming machine, the access control program, and the game control method according to the present invention.
本実施の形態は、上記第1の実施の形態に対して、主制御部2a及び演出制御部300のアクセス制御装置230、330の各アクセス制御部238、338が、CPUコア203が実行する命令コード列およびそのアドレスに加えて、命令コード列から算出されたチェック値に基づいてアクセスを制御する点が異なる。なお、以下、上記第1の実施の形態と異なる部分についてのみ説明し、上記第1の実施の形態と重複する部分については同一の符号を付して説明を省略する。
In this embodiment, in contrast to the first embodiment, the
〔主制御部の構成〕
まず、主制御部2aの構成を説明する。
[Configuration of main controller]
First, the configuration of the
図25は、主制御部2aの構成を示すブロック図である。
FIG. 25 is a block diagram showing a configuration of the
主制御部2aのCPU202は、図25に示すように、CPUコア203、ROM204、RAM206、セキュリティ検査回路208、I/F210、212およびタイマ214のほか、命令コード列からチェック値を算出するチェック値算出部218を有して構成されている。これらは、バス216を介して相互に接続されている。
As shown in FIG. 25, the
チェック値算出部218は、命令コード列をROM204から取得する。そして、取得した命令コード列から、命令コード列の正当性を検査するチェック値を算出する。チェック値は、アクセス制御部238によるアクセス制御に用いられる。ここで、チェック値とは、ROM204に記憶された一部若しくはすべての命令コード若しくは命令コード列、1つの命令コードの一部またはそれらの組み合わせから算出される値である。チェック値算出部218は、例えば、ROM204に記憶されたすべての命令コード列に対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査(CRC(Cyclic Redundancy
Check))またはチェックサム等の誤り検出演算を行ってチェック値を算出する。このように、チェック値は、ROM204に実際に記憶されている命令コード列から算出される。したがって、チェック値を用いて照合を行うことにより、ROM204に記憶された命令コード列の不正な書き換えや、ROM204の不正な差し替え等を検出することができる。
The check
Check)) or error detection calculation such as checksum is performed to calculate a check value. As described above, the check value is calculated from the instruction code string actually stored in the
入力部231は、CPUコア203が実行する命令コード列およびそのアドレス、並びにチェック値算出部218で算出したチェック値をI/F212から入力する。このとき、チェック値を複数に分割して入力してもよい。この場合、各分割データを結合することによりチェック値を複合する。
The
アクセス制御部238は、入力部231で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部231で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ234、236へのアクセスを許可する。所定関係とは、例えば、チェック値が期待値と一致していること、チェック値および期待値の一方を所定の演算方法により演算した演算値が他方と一致していること、チェック値および期待値に大小関係その他の相関関係があることをいう。このように、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、不正動作が行われる可能性をさらに低減することができる。
In the
アクセス制御部238が照合に用いる期待値は、例えば、あらかじめ(製造時等)アクセス制御部238に記憶させておく。また、アクセス制御部238が照合に用いる期待値を、他の構成部からアクセス制御部238に送信してもよい。他の構成部とは、例えば、CPUコア203やチェック値の期待値を生成するための専用の処理部(以下、期待値算出部という。)である。CPUコア203や期待値算出部は、あらかじめ記憶されている期待値をアクセス制御部238に送信してもよいし、照合処理ごとに期待値を生成してもよい。また、I/F210を介して、外部の機器からCPUコア203や期待値算出部に期待値を算出するために必要な係数等を受信してもよい。このように、アクセス制御部238に、あらかじめ期待値を記憶させずに、他の構成部から入力することとすれば、ROM204のチェック値を後発的に変更することが可能となる。
The expected value used by the
一方、図26は、演出制御部300の構成を示すブロック図である。
On the other hand, FIG. 26 is a block diagram showing a configuration of the
演出制御部300のCPU302は、図26に示すように、CPUコア303、ROM304、RAM306、I/F310、312のほか、主制御部2aと同様に命令コード列からチェック値を算出するチェック値算出部318を有して構成されている。これらは、バス316を介して相互に接続されている。
As shown in FIG. 26, the
チェック値算出部318は、主制御部2aから出力される命令コード列を、IF210、310を介して取得する。そして、取得した命令コード列から、命令コード列の正当性を検査するチェック値を算出する。チェック値は、アクセス制御部338によるアクセス制御に用いられる。ここで、チェック値とは、主制御部2aのそれと同様に、ROM204に記憶された一部若しくはすべての命令コード若しくは命令コード列、1つの命令コードの一部またはそれらの組み合わせから算出される値である。チェック値算出部318は、例えば、ROM204に記憶されたすべての命令コード列に対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査(CRC(Cyclic Redundancy
Check))またはチェックサム等の誤り検出演算を行ってチェック値を算出する。このように、チェック値は、ROM204に実際に記憶されている命令コード列から算出される。したがって、チェック値を用いて照合を行うことにより、ROM204に記憶された命令コード列の不正な書き換えや、ROM204の不正な差し替え等を検出することができる。
The check
Check)) or error detection calculation such as checksum is performed to calculate a check value. As described above, the check value is calculated from the instruction code string actually stored in the
入力部331は、CPUコア203が実行する命令コード列およびそのアドレス、並びにチェック値算出部318で算出したチェック値をI/F312から入力する。このとき、チェック値を複数に分割して入力してもよい。この場合、各分割データを結合することによりチェック値を複合する。
The
アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部331で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ334、336へのアクセスを許可する。所定関係とは、例えば、チェック値が期待値と一致していること、チェック値および期待値の一方を所定の演算方法により演算した演算値が他方と一致していること、チェック値および期待値に大小関係その他の相関関係があることをいう。このように、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、演出制御部300に対する不正動作が行われる可能性をさらに低減することができる。
In the
アクセス制御部338が照合に用いる期待値は、例えば、あらかじめ(製造時等)アクセス制御部238に記憶させておく。また、アクセス制御部338が照合に用いる期待値を、他の構成部からアクセス制御部238に送信してもよい。他の構成部とは、例えば、CPUコア303やチェック値の期待値を生成するための専用の処理部(以下、期待値算出部という。)である。CPUコア303や期待値算出部は、あらかじめ記憶されている期待値をアクセス制御部338に送信してもよいし、照合処理ごとに期待値を生成してもよい。また、I/F310を介して、外部の機器からCPUコア303や期待値算出部に期待値を算出するために必要な係数等を受信してもよい。このように、アクセス制御部338に、あらかじめ期待値を記憶させずに、他の構成部から入力することとすれば、ROM204のチェック値を後発的に変更することが可能となる。
The expected value that the
〔チェック値算出処理〕
次に、これら各チェック値算出部218、318で実行されるチェック値算出処理を説明する。
[Check value calculation processing]
Next, a check value calculation process executed by each of these check
図27は、チェック値算出処理を示すフローチャートである。 FIG. 27 is a flowchart showing a check value calculation process.
チェック値算出部218、318は、それぞれチェック値算出処理を実行すると、図27に示すように、まず、ステップSS600に移行する。
When the check
ステップSS600では、それぞれアクセス制御部238、338からチェック値の取得要求を受信したか否かを判定し、チェック値の取得要求を受信したと判定したとき(Yes)は、ステップSS602に移行するが、そうでないと判定したとき(No)は、チェック値の取得要求を受信するまでステップSS600で待機する。
In step SS600, it is determined whether or not a check value acquisition request has been received from each of the
ステップSS602では、それぞれROM204から命令情報である命令コード列を取得し、ステップSS604に移行して、その取得した命令コード列に対して上記誤り検出演算を行ってチェック値を算出し、ステップSS606に移行して、算出したチェック値をアクセス制御部238、338に送信し、チェック値算出処理を終了する。
In step SS602, an instruction code string which is instruction information is obtained from each
〔アクセス制御処理〕
次に、各アクセス制御部238で実行されるアクセス制御処理を説明する。
[Access control processing]
Next, an access control process executed by each
図28は、アクセス制御処理を示すフローチャートである。 FIG. 28 is a flowchart showing the access control process.
アクセス制御部238は、アクセス制御処理を実行すると、図28に示すように、まず、ステップSS700に移行する。
When executing the access control process, the
ステップSS700では、レジスタ234、236に対するリード要求をI/F212から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS702に移行して、CPUコア203が実行する命令に関する情報である命令コード列およびそのアドレスを入力部231から入力し、ステップSS704に移行する。
In step SS700, it is determined whether or not a read request for the
ステップSS704では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS706に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS708に移行する。 In step SS704, it is determined whether or not the input instruction code string is a permitted instruction code string. When it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS706 and the input address is permitted. It is determined whether the address is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS708.
ステップSS708では、チェック値の取得要求をチェック値算出部218に送信し、ステップSS710に移行して、その応答としてチェック値を入力部231から入力し、ステップSS712に移行する。
In step SS708, a check value acquisition request is transmitted to the check
ステップSS712では、アクセス制御部238に記憶されている期待値を読み出したり、CPUコア203や期待値算出部が生成した期待値を受信したりすることによりチェック値の期待値を取得し、ステップSS714に移行する。
In step SS712, the expected value of the check value is acquired by reading the expected value stored in the
ステップSS714では、入力したチェック値が、入力した期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップSS716に移行する。 In step SS714, it is determined whether or not the input check value matches the input expected value. If it is determined that the check value matches the expected value (Yes), the process proceeds to step SS716.
ステップSS716では、レジスタ234、236が保持しているデータを読み出し、ステップSS718に移行して、読み出したデータをI/F212に出力する。出力されたデータは、I/F212を介してCPUコア203のレジスタ203cに保持される。
In step SS716, the data held in the
次いで、ステップSS720に移行して、レジスタ236に対するライト要求をI/F212から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS722に移行して、CPUコア203が実行する命令情報である命令コード列およびそのアドレスを入力部231から入力し、ステップSS724に移行する。
Next, the process proceeds to step SS720, where it is determined whether a write request for the
ステップSS724では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS726に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS728に移行する。 In step SS724, it is determined whether or not the input instruction code string is a permitted instruction code string. If it is determined that the input instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS726 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS728.
ステップSS728〜SS732では、ステップSS708〜SS712と同様の処理を実行し、ステップSS734に移行する。 In steps SS728 to SS732, processing similar to that in steps SS708 to SS712 is executed, and the process proceeds to step SS734.
ステップSS734では、チェック値が期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップSS736に移行する。 In step SS734, it is determined whether or not the check value matches the expected value. If it is determined that the check value matches the expected value (Yes), the process proceeds to step SS736.
ステップSS736では、CPUコア203のレジスタ203cが保持しているデータをI/F212から入力し、ステップSS738に移行して、入力したデータをレジスタ236に書き込み、アクセス制御処理を終了する。
In step SS736, the data held in the register 203c of the
一方、ステップSS734で、チェック値が期待値と一致していないと判定したとき(No)、ステップSS726で、許可アドレスでないと判定したとき(No)、ステップSS724で、許可命令コード列でないと判定したとき(No)、およびステップSS720で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ236にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア203は、アクセス制御装置230からの通知を受け、不正通知を行ってもよい。
On the other hand, when it is determined at step SS734 that the check value does not match the expected value (No), when it is determined at step SS726 that it is not a permitted address (No), it is determined at step SS724 that it is not a permitted instruction code string. When it is determined (No) and when it is determined in Step SS720 that the write request is not input (No), the access control process is terminated without writing data to the
一方、ステップSS714で、チェック値が期待値と一致していないと判定したとき(No)、ステップSS706で、許可アドレスでないと判定したとき(No)、ステップSS704で、許可命令コード列でないと判定したとき(No)、およびステップSS700で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ234、236が保持しているデータをI/F212に出力せずに、ステップSS720に移行する。このとき、CPUコア203のレジスタ203cに非正当値が保持されるが、その値が所定値である場合、CPUコア203は、不正通知を行ってもよい。
次に、各アクセス制御部338で実行されるアクセス制御処理を説明する。
On the other hand, when it is determined at step SS714 that the check value does not match the expected value (No), when it is determined at step SS706 that it is not a permitted address (No), it is determined at step SS704 that it is not a permitted instruction code string. (No) and when it is determined in step SS700 that no read request is input (No), the data held in the
Next, an access control process executed by each
図29は、アクセス制御処理を示すフローチャートである。 FIG. 29 is a flowchart showing the access control process.
アクセス制御部338は、アクセス制御処理を実行すると、図29に示すように、まず、ステップSS700に移行する。
When executing the access control process, the
ステップSS700では、レジスタ334、336に対するリード要求をI/F312から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS702aに移行して、CPUコア203が実行する命令に関する情報である命令コード列およびそのアドレスを入力部331から取得し、ステップSS704に移行する。この命令コード列およびそのアドレスは、制御コマンドに付加されて主制御部2aから送信され、演出制御部300によって取得されたものである。
In step SS700, it is determined whether or not a read request for the
ステップSS704では、取得した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS706に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS708に移行する。 In step SS704, it is determined whether or not the acquired instruction code string is a permitted instruction code string. If it is determined that the acquired instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS706 and the input address is permitted. It is determined whether the address is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS708.
ステップSS708では、チェック値の取得要求をチェック値算出部318に送信し、ステップSS710に移行して、その応答としてチェック値を入力部331から入力し、ステップSS712に移行する。
In step SS708, a check value acquisition request is transmitted to the check
ステップSS712では、それぞれアクセス制御部338に記憶されている期待値を読み出したり、CPUコア303や期待値算出部が生成した期待値を受信したりすることによりチェック値の期待値を取得し、ステップSS714に移行する。
In step SS712, the expected value of the check value is acquired by reading the expected value stored in the
ステップSS714では、入力したチェック値が、入力した期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップSS716に移行する。 In step SS714, it is determined whether or not the input check value matches the input expected value. If it is determined that the check value matches the expected value (Yes), the process proceeds to step SS716.
ステップSS716では、レジスタ334、336が保持しているデータを読み出し、ステップSS718に移行して、読み出したデータをI/F212、312に出力する。出力されたデータは、I/F312を介してCPUコア303のレジスタ303cに保持される。
In step SS716, the data held in the
次いで、ステップSS720に移行して、レジスタ336に対するライト要求をI/F312から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS722aに移行して、CPUコア203が実行する命令情報である命令コード列およびそのアドレスを入力部331から取得し、ステップSS724に移行する。この命令コード列およびそのアドレスは、制御コマンドに付加されて主制御部2aから送信され、演出制御部300によって取得されたものである。
Next, the process proceeds to step SS720, where it is determined whether a write request for the
ステップSS724では、取得した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS726に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS728に移行する。 In step SS724, it is determined whether or not the acquired instruction code string is a permitted instruction code string. When it is determined that the acquired instruction code string is a permitted instruction code string (Yes), the process proceeds to step SS726 and the input address is permitted. It is determined whether or not it is an address, and when it is determined that the address is a permitted address (Yes), the process proceeds to step SS728.
ステップSS728〜SS732では、ステップSS708〜SS712と同様の処理を実行し、ステップSS734に移行する。 In steps SS728 to SS732, processing similar to that in steps SS708 to SS712 is executed, and the process proceeds to step SS734.
ステップSS734では、チェック値が期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップSS736に移行する。 In step SS734, it is determined whether or not the check value matches the expected value. If it is determined that the check value matches the expected value (Yes), the process proceeds to step SS736.
ステップSS736では、CPUコア303のレジスタ303cが保持しているデータをI/F312から入力し、ステップSS738に移行して、入力したデータをレジスタ336に書き込み、アクセス制御処理を終了する。
In step SS736, the data held in the register 303c of the
一方、ステップSS734で、チェック値が期待値と一致していないと判定したとき(No)、ステップSS726で、許可アドレスでないと判定したとき(No)、ステップSS724で、許可命令コード列でないと判定したとき(No)、およびステップSS720で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ336にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア303は、アクセス制御装置330からの通知を受け、不正通知を行ってもよい。
On the other hand, when it is determined at step SS734 that the check value does not match the expected value (No), when it is determined at step SS726 that it is not a permitted address (No), it is determined at step SS724 that it is not a permitted instruction code string. When it is determined (No) and when it is determined in Step SS720 that the write request is not input (No), the access control process is terminated without writing data to the
一方、ステップSS714で、チェック値が期待値と一致していないと判定したとき(No)、ステップSS706で、許可アドレスでないと判定したとき(No)、ステップSS704で、許可命令コード列でないと判定したとき(No)、およびステップSS700で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ334、336が保持しているデータをI/F312に出力せずに、ステップSS720に移行する。このとき、CPUコア303のレジスタ303cに非正当値が保持されるが、その値が所定値である場合、CPUコア303は、不正通知を行ってもよい。
On the other hand, when it is determined at step SS714 that the check value does not match the expected value (No), when it is determined at step SS706 that it is not a permitted address (No), it is determined at step SS704 that it is not a permitted instruction code string. (No) and when it is determined in step SS700 that the read request is not input (No), the data held in the
〔本実施の形態の効果〕
このようにして、本実施の形態では、演出制御部300のCPU302は、主制御部2aから取得した命令コード列からチェック値を算出するチェック値算出部318を備え、アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部331で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ334、336へのアクセスを許可する。
[Effect of this embodiment]
In this way, in the present embodiment, the
これにより、主制御部2aのROM204に記憶された命令コード列が不正に書き換えられたことを検出することができる。また、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、不正動作が行われる可能性をさらに低減することができる。なお、チェック値の照合は、命令コード列およびアドレスの照合と組み合わせて行うので、チェック値の算出に比較的処理負荷が軽い誤り検出演算(例えば、パリティチェック)を用いても、一定の精度を得ることができる。
なお、本実施の形態では、演出制御部300、主制御部2aにアクセス制御装置230、330を設けると共に、それぞれにチェック値算出部218、318を設けた例で説明したが、主制御部2a側のアクセス制御装置230が設けられていない場合などには、その主制御部2aのチェック値算出部218を省略しても良い。
Thereby, it is possible to detect that the instruction code string stored in the
In the present embodiment, the
〔他の実施の形態〕
上記第2の実施の形態において、アクセス制御装置330は、命令コード列からチェック値を算出するように構成したが、これに限らず、次の3つの構成を採用することができる。
(1)第1の構成
第1の構成は、命令コード列に代えて、ROM204に記憶されたデータ(以下、第1算出基礎データという。)からチェック値を算出する。第1算出基礎データとは、例えば、ROM204に記憶された所定の固定値である。なお、第1算出基礎データは、固定値に限らず、変動前後のデータ値を正確に予測可能な変動データであってもよい。変動前後のデータ値を正確に予測可能とは、具体的には、例えば、変動範囲が定まっている場合や変動規則が定まっている場合をいう。
[Other Embodiments]
In the second embodiment, the
(1) First Configuration In the first configuration, a check value is calculated from data stored in the ROM 204 (hereinafter referred to as first calculation basic data) instead of an instruction code string. The first calculation basic data is, for example, a predetermined fixed value stored in the
チェック値算出部318は、第1算出基礎データを取得し、取得した第1算出基礎データからチェック値を算出する。
The check
アクセス制御部338は、あらかじめ第1算出基礎データの期待値を記憶している。アクセス制御部338は、期待値からチェック値を算出し、入力部331で入力したチェック値が、算出したチェック値と所定関係にあるか否かを判定する。その他、入力部331で入力したチェック値が期待値と所定関係にあるか否かを判定してもよい。なお、命令コード列から算出したチェック値と、第1算出基礎データから算出したチェック値の両方に基づいてアクセス制御を行ってもよい。これにより、ROM204が不正なものに交換されたことを検出することができる。
The
(2)第2の構成
第2の構成は、命令コード列に代えて、CPUコア203が実行する命令コード列の実行結果(以下、第2算出基礎データという。)からチェック値を算出する。第2算出基礎データとは、例えば、CPUコア203のフラグレジスタの値である。なお、第2算出基礎データは、フラグレジスタの値に限らず、命令コード列が正しく実行されたときに第1の値を返し、それ以外は第2の値を返す関数の戻り値であってもよい。
(2) Second Configuration In the second configuration, a check value is calculated from an execution result of an instruction code sequence executed by the CPU core 203 (hereinafter referred to as second calculation basic data) instead of an instruction code sequence. The second calculation basic data is, for example, the value of the flag register of the
チェック値算出部318は、第2算出基礎データをフラグレジスタ等から取得し、取得した第2算出基礎データからチェック値を算出する。
The check
アクセス制御部338は、第1の構成の場合と同様に構成することができる。なお、第1算出基礎データから算出したチェック値にさらに基づいてアクセス制御を行ってもよい。
The
また、第2算出基礎データからチェック値を算出せず、第2算出基礎データをそのまま用いてもよい。すなわち、アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、第2算出基礎データが所定値であるときにのみ、アクセスを許可する。
Further, the second calculation basic data may be used as it is without calculating the check value from the second calculation basic data. That is, the
これにより、不正に書き換えられた命令コード列や、ビットエラーによって内容が変化した命令コード列が実行されることにより、レジスタ334、336のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
As a result, there is a possibility that the data in the
(3)第3の構成
第3の構成は、命令コード列に代えて、命令コード列のアドレス(以下、第3算出基礎データという。)からチェック値を算出する。
(3) Third Configuration In the third configuration, a check value is calculated from the address of the instruction code string (hereinafter referred to as third calculation basic data) instead of the instruction code string.
チェック値算出部318は、第3算出基礎データをバス316等から取得し、取得した第3算出基礎データからチェック値を算出する。
The check
アクセス制御部338は、第1の構成の場合と同様に構成することができる。なお、第1算出基礎データおよび第2算出基礎データの一方または両方から算出したチェック値にさらに基づいてアクセス制御を行ってもよい。
The
また、上記第2の実施の形態において、アクセス許可条件は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部331で入力したチェック値がチェック値の期待値と所定関係にあることとしたが、これに限らず、(1)入力部331で入力した命令コード列が許可命令コード列であること、(2)その命令コード列のアドレスが許可アドレスであること、(3)入力部331で入力したチェック値がチェック値の期待値と所定関係にあることのうちいずれか1つまたは任意の2つの組み合わせとすることもできる。第1算出基礎データまたは第2算出基礎データを用いる場合も、(1)〜(3)との任意の組み合わせでアクセス許可条件を設定することができる。また、上記第1の実施の形態においても、(1)または(2)でアクセス許可条件を設定することができる。
In the second embodiment, the access permission condition is that the instruction code string input by the
また、上記第1および第2の実施の形態において、アクセス制御部238、338は、レジスタ234、334、236、336へのアクセスを制御するように構成したが、これに限らず、レジスタ234、334、236、336のうち特定のアドレス空間へのアクセスを制御するように構成することもできる。
In the first and second embodiments, the
これにより、レジスタ234、334、236、336のうち、機密情報等の重要な情報が記憶されたアドレス空間へのアクセスを制御することにより、重要な情報が不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
As a result, by controlling access to the address space in which important information such as confidential information is stored in the
また、上記第1および第2の実施の形態においては、命令コード列の単位で読出、実行、判定その他の処理を行うように構成したが、これに限らず、命令コードの単位で読出、実行、判定その他の処理を行うように構成することもできる。これは、上記他の実施の形態についても同様である。代表例として、入力した命令コードが、あらかじめ許可されたコードであり、かつ、その命令コードのアドレスが許可アドレスであるときにのみ、アクセスを許可する。アクセス許可条件の組み合わせについては、命令コード列の場合と同様の組み合わせを採用することができる。 In the first and second embodiments, the read, execute, determination and other processes are performed in units of instruction code strings. However, the present invention is not limited to this, and read and execute in units of instruction codes. Further, it can be configured to perform determination and other processing. The same applies to the other embodiments described above. As a representative example, access is permitted only when the input instruction code is a previously permitted code and the address of the instruction code is a permitted address. For the combination of access permission conditions, the same combination as in the case of the instruction code string can be adopted.
また、上記第1および第2の実施の形態においては、アクセス制御装置230を演出制御部に設けたが、これに限らず、認証部に設けたり、賞球制御部に設けたりしてもよい。
Moreover, in the said 1st and 2nd embodiment, although the
また、上記第2の実施の形態において、チェック値算出部218、318は、チェック値の取得要求に応じてチェック値を算出するように構成したが、これに限らず、所定条件が成立したときにチェック値を算出し、算出したチェック値をアクセス制御部238、338に送信するように構成することもできる。
In the second embodiment, the check
また、上記第1および第2の実施の形態において、CPU202、302は、それぞれ2つのI/F210、310、212、312を設けて構成したが、これに限らず、1つのI/Fのみを設けて構成してもよいし、さらに多数のI/Fを設けて構成してもよい。
In the first and second embodiments, the
ところで、命令コード列およびそのアドレスは、任意または特定の制御コマンドに付加することができる。 By the way, the instruction code string and its address can be added to an arbitrary or specific control command.
制御コマンドに命令コード列およびそのアドレスを付加すると、アクセス制御装置230、330のレジスタ234、334から乱数を読み出す場合、制御コマンドの種類によっては、命令コード列およびそのアドレスの出力タイミングと、乱数の読出タイミングとが一致しないことがある。例えば、大当たり中に送信される大当たりコマンドに付加する場合、命令コード列およびそのアドレスは大当たり中に出力されるのに対し、大当たり決定乱数は大当たりの発生前に読み出さなければならない。そこで、アクセス制御装置230、330の構成として、例えば、次の2つの構成を採用することができる。
When an instruction code string and its address are added to the control command, when a random number is read from the
第1の構成は、制御コマンドの送信時に認証が得られたときは、所定許可回数のアクセスに限り認証を行わない。所定許可回数は、認証が得られた後最初のアクセスから計数を開始してもよいし、認証が得られた後所定回数のアクセスを待って計数を開始してもよい。後者の場合、計数開始前のアクセスは禁止される。したがって、認証後に所定回数のダミーアクセスが必要となり、この回数が分からなければ、認証が得られてもレジスタ234、334、236、336へのアクセスができないので、不正動作が行われる可能性を低減することができる。
In the first configuration, when authentication is obtained at the time of transmission of the control command, authentication is not performed only for the access of a predetermined permitted number of times. The predetermined permission count may start counting from the first access after the authentication is obtained, or may start counting after a predetermined number of accesses after the authentication is obtained. In the latter case, access before the start of counting is prohibited. Therefore, a predetermined number of dummy accesses are required after authentication, and if this number is not known, access to the
第2の構成は、制御コマンドの送信時に認証が得られたときは、所定許可期間内に限り認証を行わない。所定許可期間は、認証が得られた直後から開始してもよいし、認証が得られた後所定時間経過を待って開始してもよい。後者の場合、開始前のアクセスは禁止される。また、開始前にアクセスがあったときは、その後のアクセスを禁止してもよい。したがって、認証後に所定時間の待機が必要となり、この時間が分からなければ、認証が得られてもレジスタ234、334、236、336へのアクセスができないので、不正動作が行われる可能性を低減することができる。
In the second configuration, when authentication is obtained when the control command is transmitted, authentication is not performed only within a predetermined permission period. The predetermined permission period may be started immediately after the authentication is obtained, or may be started after a predetermined time elapses after the authentication is obtained. In the latter case, access before starting is prohibited. Further, when there is an access before the start, subsequent access may be prohibited. Therefore, it is necessary to wait for a predetermined time after the authentication. If this time is not known, the
また、上記第1および第2の実施の形態において、命令コード、および、命令コード列の少なくとも一方を暗号化して用いてもよい。 In the first and second embodiments, at least one of the instruction code and the instruction code string may be encrypted and used.
また、上記第1および第2の実施の形態において、図12ないし図17のフローチャートに示す遊技制御処理を実行するにあたってはいずれも、ROM204にあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをRAM206に読み込んで実行するようにしてもよい。図27および図28のフローチャートに示す処理についても同様である。
In the first and second embodiments, the case where the control program stored in advance in the
ここで、記憶媒体とは、RAM、ROM等の半導体記憶媒体、FD、HD等の磁気記憶型記憶媒体、CD、CDV、LD、DVD等の光学的読取方式記憶媒体、MO等の磁気記憶型/光学的読取方式記憶媒体であって、電子的、磁気的、光学的等の読み取り方法のいかんにかかわらず、コンピュータで読み取り可能な記憶媒体であれば、あらゆる記憶媒体を含むものである。 Here, the storage medium is a semiconductor storage medium such as RAM or ROM, a magnetic storage type storage medium such as FD or HD, an optical reading type storage medium such as CD, CDV, LD, or DVD, or a magnetic storage type such as MO. / Optical reading type storage medium, including any storage medium that can be read by a computer regardless of electronic, magnetic, optical, or other reading methods.
図30は、大当たりリーチコマンドに基づくパチンコ機の主制御部2aの認証動作のシーケンスを示す図である。制御コマンドが予め定められたコマンド(すなわち大当たりリーチコマンド)である場合、暗号化認証データや命令情報が付加された後、主制御部2aから送信される。
FIG. 30 is a diagram showing an authentication operation sequence of the
制御コマンドが格納され(S1)、その制御コマンドが大当たりリーチコマンドである場合、検証値を含む認証データが生成される(S2)。生成された認証データは、所定の暗号化アルゴリズムにより暗号化される(S3)。そして、認証データや命令情報が付加された大当たりリーチコマンドは、主制御部2aから周辺部3aへ送信される(S4、S5)。
When a control command is stored (S1) and the control command is a jackpot reach command, authentication data including a verification value is generated (S2). The generated authentication data is encrypted by a predetermined encryption algorithm (S3). Then, the jackpot reach command to which the authentication data and the command information are added is transmitted from the
認証データや命令情報が付加された大当たりリーチコマンドは周辺部によって受信される(S6)。すると、認証データや命令情報が付加された大当たりリーチコマンドは、バス3cを介して周辺部3aから認証部3bへ送信される(S7、S8)。このとき、認証データや命令情報が付加された大当たりリーチコマンドをそのまま認証部3bへ送信してもよいし、周辺部3aによって取得した命令情報を削除し、認証データだけが付加された状態の大当たりリーチコマンドを認証部3bへ送信してもよい。
また、大当たりリーチコマンドに基づく処理が、周辺部3aにおいて行われる(S9)。ここで、大当たりリーチコマンドに命令情報が付加されていた場合は、その命令情報が周辺部3aにおいて取得される(S9a)。そして、取得された命令情報に基づき、主制御部2aのCPUについての接続機器認証処理が行われる(S9b)。なお、大当たりリーチコマンドに基づく処理(S9)が行われるより前に、命令情報取得(S9a)および接続機器認証処理(S9b)が行われてもよい。
The jackpot reach command to which the authentication data and the command information are added is received by the peripheral part (S6). Then, the jackpot reach command to which the authentication data and the command information are added is transmitted from the
Further, processing based on the jackpot reach command is performed in the
認証データが付加された大当たりリーチコマンドは、認証部3bによって受信される(S10)。認証部3bでは、復号化処理が行われた後、認証データを用いた認証処理が行われる(S11)。認証OKの場合、そのまま処理が継続される。
The jackpot reach command to which the authentication data is added is received by the
認証OKでない場合(S13においてNo)、バス3cを介して報知信号が出力される(S14、S15)。この報知信号は、周辺部3aによって受信される(S16)。そして、主制御部2aが正当でないことが報知される(S17)。
If the authentication is not OK (No in S13), a notification signal is output via the
ここで、認証部3bにおける認証処理について、より詳細に説明する。例えば、検証値が「0x12」である場合において、所定の暗号化アルゴリズムにより、下式(1)のように暗号化認証データ「0x21」が得られる。
0x21 = 0x12 xor 0x33 …(1)
Here, the authentication process in the
0x21 = 0x12 xor 0x33 (1)
演出制御部300では、大当たりリーチコマンドを受信すると、図19に示すステップS708、S710を経て、受信したコマンドに付加されている暗号化認証データが取得され、取得された暗号化認証データが所定の復号化アルゴリズムにより復号化される。
上式(1)で得られた暗号化認証データ「0x21」を所定の復号化アルゴリズムにより復号化した場合は、下式(2)により検証値「0x12」が得られる。
0x12 = 0x21 xor 0x33 …(2)
When the
When the encrypted authentication data “0x21” obtained by the above equation (1) is decrypted by a predetermined decryption algorithm, the verification value “0x12” is obtained by the following equation (2).
0x12 = 0x21 xor 0x33 (2)
検証値が得られると、ステップS712を経て、主制御部2aで生成された検証値と同一の値となる期待値「0x12」が読み出される。そして、図19に示すステップS714を経て、復号化して得られた検証値が期待値と照合される。このとき、上式(2)で得られた検証値「0x12」は期待値「0x12」と一致するので、認証が得られ、ステップS716を経て、制御コマンドが受信バッファに格納される。そして、受信した大当たりリーチコマンドに基づいて処理が実行される。
When the verification value is obtained, an expected value “0x12” that is the same value as the verification value generated by the
これに対し、主制御基板と演出制御基板との間に不正な制御基板が接続されるといった不正行為が行われた場合は、不正な制御基板が制御コマンドを演出制御基板に送信しても、演出制御部300では、受信したコマンドに暗号化認証データが付加されていないので、検証値が期待値と一致せず、認証が得られない可能性が高い。その結果、図19に示すステップS718、S720を経て、受信した制御コマンドが破棄され、不正通知処理が実行される(つまり、主制御部が正当でないことが報知される)。
On the other hand, if an unauthorized act such as an unauthorized control board is connected between the main control board and the production control board, even if the unauthorized control board sends a control command to the production control board, In the
また、不正な制御基板が何らかの認証データを付加して制御コマンドを演出制御基板に送信しても、演出制御部300では、適切な検証値が得られないので、検証値が期待値と一致せず、認証が得られない可能性が高い。
Even if an unauthorized control board adds some authentication data and transmits a control command to the production control board, the
なお、周辺部における上記制御コマンドの認証部への送信、周辺部における上記制御コマンドに基づく処理、命令情報に基づく接続機器認証処理、について、処理が行われる順序は問わない。すなわち、図30に示すように、上記制御コマンドの認証部への送信が先に行なわれ、その後に上記制御コマンドに基づく処理が行なわれるという順序でも良いし、その逆に、上記制御コマンドに基づく処理が先に行なわれ、その後に上記制御コマンドの認証部への送信が行なわれるという順序でも良い。さらに、周辺部における上記制御コマンドに基づく処理、命令情報に基づく接続機器認証処理、についても、処理が行われる順序は問わない。 Note that the order in which the processing is performed is not limited for the transmission of the control command to the authentication unit in the peripheral part, the process based on the control command in the peripheral part, and the connected device authentication process based on the command information. That is, as shown in FIG. 30, the order in which the control command is transmitted to the authenticating unit may be performed first, and then the processing based on the control command may be performed, and conversely, based on the control command. The order may be such that the processing is performed first and then the control command is transmitted to the authentication unit. Furthermore, the processing order of the processing based on the control command and the connected device authentication processing based on the command information in the peripheral portion is not limited.
同様に、周辺部における上記制御コマンドに基づく処理、認証部における上記認証データを用いた認証処理、についても、処理が行われる順序は問わない。すなわち、上記制御コマンドに基づく処理が先に行なわれ、その後に上記認証データを用いた認証処理が行なわれるという順序でも良いし、その逆の順序でも良い。 Similarly, the order in which the processing is performed is not limited for the processing based on the control command in the peripheral portion and the authentication processing using the authentication data in the authentication portion. In other words, the processing based on the control command may be performed first, and then the authentication processing using the authentication data may be performed, or vice versa.
図31は、大当たりリーチコマンド以外の制御コマンドに基づく動作を示すシーケンス図である。図31に示すように、大当たりリーチコマンド以外の制御コマンドが格納されると(S151)、認証データが付加されていない通常の制御コマンドが主制御部2aから周辺部3aへ送信される(S152、S153)。その制御コマンドは周辺部によって受信され(S154)、その制御コマンドに基づく処理が行われる(S155)。大当たりリーチコマンド以外の制御コマンドは、周辺部3aから認証部3bへ送信されることは無い。
〔認証動作のタイミング〕
FIG. 31 is a sequence diagram illustrating an operation based on a control command other than the jackpot reach command. As shown in FIG. 31, when a control command other than the jackpot reach command is stored (S151), a normal control command to which no authentication data is added is transmitted from the
[Timing of authentication operation]
ところで、主制御部2aは、通常、複数の制御コマンドを、間隔を置いて出力する。以下では、主制御部2aが第1の大当たりリーチコマンドを出力した後に、第2の大当たりリーチコマンドを出力する場合を例に挙げて、主制御部2aが複数の大当たりリーチコマンドを、間隔を置いて出力する場合の認証動作のタイミングについて、図32および図33を用いて説明する。
Incidentally, the
図32は、主制御部2aが第1の大当たりリーチコマンドを出力した後に、第2の大当たりリーチコマンドを出力する場合の、演出または前処理もしくは後処理が実行されるタイミングと、認証部3bが認証処理を行なうタイミングとを示す第1の図である。図33は、主制御部2aが第1の大当たりリーチコマンドを出力した後に、第2の大当たりリーチコマンドを出力する場合の、演出または前処理もしくは後処理が実行されるタイミングと、認証部3bが認証処理を行なうタイミングとを示す第2の図である。
FIG. 32 shows the timing when the presentation or pre-processing or post-processing is executed when the
主制御部2aは、第1の大当たりリーチコマンドを出力する際、それとともに第1の大当たりリーチコマンドに関連付けられている第1の認証データを出力する。また、主制御部2aは、第2の大当たりリーチコマンドを出力する際、それとともに第2の大当たりリーチコマンドに関連付けられている第2の認証データを出力する。
When the
このとき、第1の大当たりリーチコマンドに関連付けられている第1の認証データについての認証動作が行なわれた後に、主制御部2aから第2の大当たりリーチコマンドが出力される場合がある。例えば、図32に示すように、認証部3bは、第1の大当たりリーチコマンドに基づく演出または前処理もしくは後処理の実行期間t41の後に、第1の認証データに基づいて主制御部2aが正当であるか否かについて期間t42において判断される。その後、第2の大当たりリーチコマンドに基づく演出または前処理もしくは後処理の実行期間t43の後に、第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t44において判断される。
At this time, the second jackpot reach command may be output from the
それに対して、主制御部2aは、第1の大当たりリーチコマンドに関連付けられている第1の認証データについての認証動作が行なわれる前に、主制御部2aから第2の大当たりリーチコマンドが出力される場合がある。その場合、図33に示すように、認証部3bは、第2の大当たりリーチコマンドに基づく演出または前処理もしくは後処理の実行期間t42’の後に、第1の認証データに基づいて主制御部2aが正当であるか否かについて期間t43’において判断される。その後、第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t44’において判断される。
In contrast, the
いずれにしても、図32および図33から明らかなように、認証部3bは、大当たりリーチコマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、その大当たりリーチコマンドに関連付けられている認証データに基づいて主制御部2aが正当であるか否かを判断する。
In any case, as is clear from FIG. 32 and FIG. 33, the
上述したように、本実施の形態のパチンコ機は、周辺部3aとは別に、主制御部2aが正当であるか否かを判断する認証部3bを有するので、周辺部3aの負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部2aが正当であるか否かを判断することができる。
As described above, the pachinko machine according to the present embodiment includes the
また、認証部3bは、大当たりリーチコマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、その大当たりリーチコマンドとともに主制御部2aから出力される認証データに基づいて主制御部2aが正当であるか否かを判断する。そのため、認証データの容量が大きくても、認証部3bは、周辺部3aの動作とは独立して認証動作を行なうことができる。したがって、本実施の形態のパチンコ機は、セキュリティの強度を従来よりも大きくして主制御部2aが正当であるか否かを判断することができる。
In addition, the
なお、上述した実施の形態では、周辺基板3は、周辺部3aと認証部3bとの間の信号授受に用いられる唯一の通信経路であるバス3cを有している。しかしながら、図34に示すように、周辺基板3は、バス3cを有するのではなく、周辺部3aと認証部3bとの間の信号授受に用いられる二本の通信経路であるバス3dとバス3eとを有していてもよい。その場合、周辺部3aは認証データを通信経路の一方(例えばバス3d)を介して認証部3bに出力し、認証部3bは、主制御部2aが正当であるか否かについての判断の結果を通信経路の他方(例えばバス3e)を介して周辺部3aに出力する。
In the embodiment described above, the
また、主制御部2aの機能をコンピュータに実現させるためのプログラムを有するメモリとそのプログラムを実行するコンピュータとを主制御基板2に設けてもよい。この場合、そのコンピュータがそのプログラムを実行することによって主制御部2aの機能が実現される。
Further, a memory having a program for causing a computer to realize the functions of the
周辺部3aの機能をコンピュータに実現させるためのプログラムを有するメモリとそのプログラムを実行するコンピュータとを周辺基板3に設けてもよい。この場合、そのコンピュータがそのプログラムを実行することによって周辺部3aの機能が実現される。
A memory having a program for causing the computer to realize the functions of the
認証部3bの機能をコンピュータに実現させるためのプログラムを有するメモリとそのプログラムを実行するコンピュータとを周辺基板3に設けてもよい。この場合、そのコンピュータがそのプログラムを実行することによって認証部3bの機能が実現される。
〔認証方法〕
A memory having a program for causing the computer to realize the function of the
[Authentication method]
上述した遊技機においては、以下のような認証方法が採用されている。すなわち、上記遊技機に適用され、大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための大当たりリーチコマンドと、自らが正当であることを認証させるための認証データとを出力する主制御部と、前記大当たりリーチコマンドに基づく演出または前記演出の前処理もしくは後処理の実行を制御する周辺部とを備える遊技機において前記主制御部についての認証を行う認証方法であって、前記データ処理手段が実行する命令に関する情報を取得するステップ(例えば、図9のSS12a、SS24aに対応)と、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップ(例えば、図9のSS14、SS16、SS26、SS28に対応)と、前記命令に関する情報に基づいて、前記データ処理手段の接続状態の認証を行う接続機器認証ステップ(図19のS706に対応)と、前記認証データを、前記周辺部を介して前記認証部が取得する取得ステップ(図30のS8、S10に対応)と、前記取得ステップにおいて取得した認証データを用いて、前記主制御部が正当であるか否かを前記認証部が判断する認証ステップ(図30のS12に対応)とを含む認証方法が採用されている。この認証方法を採用する場合、主制御部のデータ処理手段であるCPUと演出制御部のアクセス制御装置とによる接続機器認証を行うほか、主制御部が正当であるか否かを判断する認証部において認証を行なうので、周辺部の負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。また、前記認証ステップにおいて前記主制御部が正当でないと判断された場合、認証結果を報知するための信号を出力する報知信号出力ステップ(図30のS14〜S18に対応)をさらに含むことにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 In the gaming machine described above, the following authentication method is employed. In other words, a jackpot reach command for specifying a variation pattern for performing a reach effect among the variation patterns selected for the jackpot and outputting authentication data for authenticating itself is output. An authentication method for authenticating the main control unit in a gaming machine comprising a main control unit that performs and an effect based on the jackpot reach command or a peripheral unit that controls execution of pre-processing or post-processing of the effect, Based on the information related to the command input in the input step based on the step (for example, corresponding to SS12a and SS24a in FIG. 9) of acquiring the information related to the command executed by the data processing unit, to the storage unit by the data processing device Access control step (for example, SS14, SS16, S in FIG. 26, corresponding to SS28), a connected device authentication step (corresponding to S706 in FIG. 19) for authenticating the connection state of the data processing means based on the information related to the command, the authentication data, and the peripheral portion The authentication unit determines whether the main control unit is valid using the acquisition step (corresponding to S8 and S10 in FIG. 30) acquired by the authentication unit and the authentication data acquired in the acquisition step. An authentication method including an authentication step for determination (corresponding to S12 in FIG. 30) is employed. When this authentication method is adopted, in addition to performing connected device authentication by the CPU that is the data processing means of the main control unit and the access control device of the effect control unit, an authentication unit that determines whether the main control unit is valid In this case, the burden on the peripheral portion is reduced, and it is possible to determine whether or not the main control portion is legitimate by increasing the strength of security compared to the conventional case. Further, by further including a notification signal output step (corresponding to S14 to S18 in FIG. 30) that outputs a signal for notifying the authentication result when it is determined in the authentication step that the main control unit is not valid, Pachinko hall employees and players can easily recognize the situation.
そして、前記認証ステップにおいて、前記大当たりリーチコマンドに基づく前記演出または前記前処理もしくは後処理が実行される期間の後に前記主制御部が正当であるか否かを判断するようにしてもよい。大当たりリーチコマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、主制御部が正当であるか否かを判断することにより、認証データの容量が大きくても、周辺部の動作とは独立して認証動作を行なうことができる。したがって、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。
〔プログラム〕
In the authentication step, it may be determined whether or not the main control unit is valid after the period based on the presentation based on the jackpot reach command or the pre-processing or post-processing. Even if the capacity of the authentication data is large by determining whether the main control unit is legitimate after the period based on the jackpot reach command or the period in which pre-processing or post-processing is executed, Can perform the authentication operation independently. Therefore, it is possible to determine whether or not the main control unit is legitimate by increasing the strength of security compared to the conventional case.
〔program〕
また、前記認証方法を実現するため、上記認証方法の各ステップを含むプログラムをコンピュータに実行させてもよい。このプログラムをコンピュータに実行させる場合、データ処理手段であるCPUとアクセス制御装置とによる接続機器認証を行うほか、主制御部が正当であるか否かを判断する認証部において認証を行なうので、周辺部の負担が小さくなり、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。前記認証ステップにおいて前記主制御部が正当でないと判断された場合、認証結果を報知するための信号を出力する報知信号出力ステップをさらに含んでもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。
〔変形例〕
Moreover, in order to implement | achieve the said authentication method, you may make a computer run the program containing each step of the said authentication method. When this program is executed by a computer, connected device authentication is performed by the CPU that is the data processing means and the access control device, and authentication is performed by the authentication unit that determines whether the main control unit is valid. It is possible to determine whether or not the main control unit is legitimate by reducing the burden on the unit and increasing the strength of security compared to the conventional one. When it is determined in the authentication step that the main control unit is not valid, it may further include a notification signal output step of outputting a signal for notifying the authentication result. This makes it easier for employees and players of pachinko halls to recognize the state.
[Modification]
また、上述した実施の形態では、主制御部2aが正当でない旨の報知を周辺部3aが行う場合について説明したが、その報知のための報知部を設けておき、その報知部が周辺部3aの代わりに報知を行ってもよい。例えば、図35や図36に示すように、主制御部2aが正当でない旨を報知する報知部4を、周辺部3aとは別に設けてもよい。この報知部4は、主制御部2aが正当でないことを示す信号を周辺部3aから受け取った場合に、その旨をパチンコ機の外部に報知する。
Further, in the embodiment described above, the case where the
なお、図35は、図2に示す構成に、報知部4を追加した構成を示す図である。また、図36は、図34に示す構成に、報知部4を追加した構成を示す図である。図35および図36のいずれの場合においても、報知部4は、液晶(不図示)に表示させて報知を行ったり、ランプ等を点灯させたりして通知することによる報知を行ったりする。液晶表示やランプ等を点灯させたり点滅させることによる視覚的報知に限らず、スピーカ(不図示)から音を出力することによる聴覚的報知、バイブレータ(不図示)を振動させることによる触覚的報知を行ってもよい。また、これらの報知を組み合わせて行ってもよい。
また、周辺部3aは、主制御部2aからの認証データを受け取ることなく単に通過させて認証部3bに受け取らせてもよい。
FIG. 35 is a diagram showing a configuration in which a
Further, the
更に、上述した実施の形態では、パチンコ機を例に挙げて本発明の遊技機について説明した。しかしながら、本発明の遊技機はパチンコ機であるとは限定されない。本発明の遊技機の例には、遊技に関する演出を実行する実行部を有するパチスロ機およびアミューズメントゲーム機等が含まれる。その場合、パチスロ機およびアミューズメントゲーム機等の遊技機は、主制御部2a、周辺部3a、および認証部3bを有する。
Further, in the above-described embodiment, the gaming machine of the present invention has been described by taking a pachinko machine as an example. However, the gaming machine of the present invention is not limited to a pachinko machine. Examples of the gaming machine of the present invention include a pachislot machine, an amusement game machine, and the like having an execution unit that executes an effect relating to a game. In that case, a gaming machine such as a pachislot machine or an amusement game machine has a
1 遊技盤
2 主制御基板
2a 主制御部
3 周辺基板
3a 周辺部
3b 認証部
3c〜3e バス
4 報知部
100 遊技制御装置
101 遊技領域
102a、102b レール
104 図柄表示部
105 始動入賞口
106 入賞ゲート
107 普通入賞口
108 回収口
109 大入賞口
201 主制御部
202 CPU
202a 演出制御部
203 CPUコア
203a 制御部
203b 演算部
203c レジスタ
203d 賞球制御部
204 ROM
206 RAM
210 I/F
216 バス
218 チェック値算出部
230 アクセス制御装置
231 入力部
232 演算部
234、236 レジスタ
238 アクセス制御部
280 始動入賞口検出部
282 ゲート検出部
284 普通入賞口検出部
286 大入賞口検出部
288 大入賞口開閉部
300 演出制御部
302 CPU
304 ROM
306 RAM
308 VRAM
310 I/F
311 制御コマンド格納部
312 付加部
313 記録部
314 演出関連デバイス群
314a 送信部
318 チェック値算出部
321 受信部
322 認証部
323 報知信号出力部
330 アクセス制御部
331 入力部
332 演算部
334、336 レジスタ
338 アクセス制御部
380 スピーカ
382 音声制御部
384 ランプ
386 ランプ制御部
400 賞球制御部
402 CPU
404 ROM
406 RAM
410 I/F
414 賞球関連デバイス群
480 払出部
482 発射部
500 制御コマンド
501 制御データ
502 認証データ
DESCRIPTION OF SYMBOLS 1
202a
206 RAM
210 I / F
304 ROM
306 RAM
308 VRAM
310 I / F
311 Control
404 ROM
406 RAM
410 I / F
414 Prize ball-related
Claims (17)
前記主制御部は、
遊技に関するデータの処理を行うデータ処理手段と、
前記データ処理手段が実行する命令に関する情報を外部に出力する出力手段とを備え、
大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための大当たりリーチコマンドと、自らが正当であることを認証させるための認証データとを出力し、
さらに、
前記主制御部の出力を入力とし、前記大当たりリーチコマンドに基づく演出または前記演出の前処理もしくは後処理の実行を制御するとともに、前記認証データを出力する周辺部と、
前記周辺部から出力される前記認証データに基づいて前記主制御部が正当であるか否かを判断する認証部とを備え、
前記周辺部は、
さらに演出に関するデータ処理を行うデータ処理装置と、前記データ処理装置によるアクセスを制御するアクセス制御装置とを備え、
前記アクセス制御装置は、
前記データ処理を行うためのデータを記憶する記憶手段と、前記命令に関する情報を前記出力手段から入力する入力手段と、前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有することを特徴とする遊技機。 A lottery means for performing a lottery upon establishment of a predetermined condition, a symbol changing means for variably displaying a symbol by a symbol display means, and a special prize after the symbol is stopped in a predetermined manner based on a lottery result of the lottery means A gaming machine comprising a main control unit having a special prize state generating means for generating a state,
The main control unit
Data processing means for processing data relating to the game;
Output means for outputting information relating to instructions executed by the data processing means to the outside,
Output a jackpot reach command for specifying a variation pattern for performing a reach effect among the variation patterns selected at the time of the jackpot, and authentication data for authenticating that it is valid,
further,
With the output of the main control unit as an input, controlling the performance based on the jackpot reach command or the pre-processing or post-processing of the performance, and a peripheral section that outputs the authentication data;
An authentication unit that determines whether the main control unit is valid based on the authentication data output from the peripheral unit;
The peripheral portion is
Furthermore, a data processing device that performs data processing related to effects, and an access control device that controls access by the data processing device,
The access control device
Storage means for storing data for performing the data processing; input means for inputting information related to the command from the output means; and the storage by the data processing device based on information related to the command input by the input means An access control means for controlling access to the means.
前記アクセス制御手段は、前記入力手段で入力した命令に関する情報に基づいてアクセス許可条件が成立すると判定したときは、前記記憶手段へのアクセスを許可し、前記アクセス許可条件が成立しないと判定したときは、前記記憶手段へのアクセスを制限することを特徴とする遊技機。 In claim 1,
When the access control means determines that the access permission condition is satisfied based on the information related to the command input by the input means, the access control means permits access to the storage means and determines that the access permission condition is not satisfied Is a game machine that restricts access to the storage means.
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列を、前記大当たりリーチコマンドと共に出力し、
前記アクセス許可条件は、前記入力手段で入力した命令コードまたは命令コード列が所定のコードまたはコード列であることを含むことを特徴とする遊技機。 In claim 2,
The output means outputs an instruction code or an instruction code string executed by the data processing means together with the jackpot reach command,
The gaming machine characterized in that the access permission condition includes that the instruction code or instruction code string input by the input means is a predetermined code or code string.
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段をさらに有し、
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の前記命令コード記憶手段における記憶位置を示す記憶位置情報を出力し、
前記アクセス許可条件は、前記入力手段で入力した記憶位置情報の記憶位置が所定の記憶位置であることを含むことを特徴とする遊技機。 In any one of Claim 2 and 3,
The data processing device includes:
Further comprising instruction code storage means for storing an instruction code executed by the data processing means;
The output means outputs storage position information indicating a storage position in the instruction code storage means of an instruction code or an instruction code sequence executed by the data processing means;
The gaming machine characterized in that the access permission condition includes that the storage position of the storage position information input by the input means is a predetermined storage position.
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算を行う演算手段とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含むことを特徴とする遊技機。 In any one of Claim 2 and 3,
The data processing device includes:
Instruction code storage means for storing an instruction code executed by the data processing means;
An arithmetic means for performing a predetermined operation using at least a part of the instruction code or the instruction code string stored in the instruction code storage means;
The output means outputs a calculation result of the calculation means;
The gaming machine according to claim 1, wherein the access permission condition includes that the calculation result input by the input means is a predetermined result.
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された所定の固定値を用いて所定の演算を行う演算手段とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含むことを特徴とする遊技機。 In any one of Claim 2 and 3,
The data processing device includes:
Instruction code storage means for storing an instruction code executed by the data processing means;
A calculation unit that performs a predetermined calculation using a predetermined fixed value stored in the instruction code storage unit;
The output means outputs a calculation result of the calculation means;
The gaming machine according to claim 1, wherein the access permission condition includes that the calculation result input by the input means is a predetermined result.
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報を出力し、
前記アクセス許可条件は、前記入力手段で入力した実行結果情報の実行結果が所定の結果であることを含むことを特徴とする遊技機。 In any one of Claims 2 thru | or 6,
The output means outputs execution result information indicating an execution result of an instruction code or an instruction code sequence executed by the data processing means;
The gaming machine characterized in that the access permission condition includes that the execution result of the execution result information input by the input means is a predetermined result.
前記アクセス制御手段は、前記記憶手段のうち特定のアドレス空間へのアクセスを制御することを特徴とする遊技機。 In any one of Claims 1 thru | or 7,
The access control means controls access to a specific address space in the storage means.
前記アクセス制御手段によるアクセス制御の状況を通知する制御状況通知手段をさらに備えることを特徴とする遊技機。 In any one of Claims 1 thru | or 8,
A gaming machine, further comprising a control status notification means for notifying a status of access control by the access control means.
ことを特徴とする請求項1ないし9のいずれか1項に記載の遊技機。 The gaming machine according to any one of claims 1 to 9, wherein when the main control unit determines that the peripheral unit is not valid, the peripheral unit notifies the fact.
ことを特徴とする請求項1ないし10のいずれか1項に記載の遊技機。 The said authentication part judges whether the said main control part is valid after the period based on the said presentation based on the said jackpot reach command, or the said pre-processing or post-processing. The gaming machine according to any one of 10.
ことを特徴とする請求項1ないし11のいずれか1項に記載の遊技機。 The gaming machine according to any one of claims 1 to 11, further comprising a single path used for signal exchange between the peripheral unit and the authentication unit.
前記周辺部は、前記経路の一方により前記認証データを前記認証部に出力し、
前記認証部は、前記経路の他方により前記主制御部が正当であるか否かについての判断の結果を前記周辺部に出力する
ことを特徴とする請求項1ないし12のいずれか1項に記載の遊技機。 Provided with two paths used for signal exchange between the peripheral part and the authentication part,
The peripheral unit outputs the authentication data to the authentication unit through one of the paths,
The said authentication part outputs the result of the judgment about whether the said main control part is valid by the other of the said path | route to the said peripheral part. The one of Claim 1 thru | or 12 characterized by the above-mentioned. Game machines.
前記データ処理手段が実行する命令に関する情報を取得するステップと、
前記命令に関する情報を前記出力手段から入力する入力ステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップと、
前記命令に関する情報に基づいて、前記データ処理手段の接続状態の認証を行う接続機器認証ステップと、
前記認証データを、前記周辺部を介して前記認証部が取得する取得ステップと、
前記取得ステップにおいて取得した認証データを用いて、前記主制御部が正当であるか否かを前記認証部が判断する認証ステップとを含むことを特徴とする認証方法。 A jackpot reach command that is applied to the gaming machine according to claim 1 and designates a variation pattern for performing a reach effect among variation patterns selected at the time of a jackpot, and authentication data for authenticating that the player is valid Is an authentication method for authenticating the main control unit in a gaming machine comprising an output based on the jackpot reach command and a peripheral unit that controls execution of pre-processing or post-processing of the effect. And
Obtaining information relating to instructions executed by the data processing means;
An input step of inputting information relating to the command from the output means;
An access control step for controlling access to the storage means by the data processing device based on information relating to the instruction input in the input step;
A connected device authentication step for authenticating a connection state of the data processing means based on the information related to the command;
An acquisition step in which the authentication unit acquires the authentication data via the peripheral unit;
And an authentication step in which the authentication unit determines whether or not the main control unit is valid using the authentication data acquired in the acquisition step.
ことを特徴とする請求項14および15のいずれか1項に記載の認証方法。 The said authentication step WHEREIN: It is judged whether the said main control part is valid after the period based on the said presentation based on the said jackpot reach command, or the said pre-processing or post-processing. The authentication method according to any one of 15.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153329A JP2011005121A (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153329A JP2011005121A (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011005121A true JP2011005121A (en) | 2011-01-13 |
Family
ID=43562505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009153329A Withdrawn JP2011005121A (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011005121A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007305074A (en) * | 2006-05-15 | 2007-11-22 | Sony Corp | Communication system and authentication method, information processor and information processing method, and battery |
JP2008279039A (en) * | 2007-05-10 | 2008-11-20 | Kyoraku Sangyo Kk | Pachinko game machine, main control board, peripheral board, authentication method, and authentication program |
JP2009059303A (en) * | 2007-09-03 | 2009-03-19 | Kyoraku Sangyo Kk | Access control device, access control method, and access control program |
-
2009
- 2009-06-29 JP JP2009153329A patent/JP2011005121A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007305074A (en) * | 2006-05-15 | 2007-11-22 | Sony Corp | Communication system and authentication method, information processor and information processing method, and battery |
JP2008279039A (en) * | 2007-05-10 | 2008-11-20 | Kyoraku Sangyo Kk | Pachinko game machine, main control board, peripheral board, authentication method, and authentication program |
JP2009059303A (en) * | 2007-09-03 | 2009-03-19 | Kyoraku Sangyo Kk | Access control device, access control method, and access control program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011005139A (en) | Game machine, authentication method and program | |
JP5156985B2 (en) | Game machine, authentication method, program | |
JP2011005116A (en) | Game machine, authentication method and program | |
JP2011005140A (en) | Game machine, authentication method and program | |
JP2011005144A (en) | Game machine, authentication method and program | |
JP2011005141A (en) | Game machine, authentication method and program | |
JP2011005143A (en) | Game machine, authentication method and program | |
JP2011005106A (en) | Game machine, authentication method and program | |
JP2011005101A (en) | Game machine, authentication method and program | |
JP2011005099A (en) | Game machine, authentication method and program | |
JP2011005075A (en) | Game machine, authentication method and program | |
JP2011005110A (en) | Game machine, authentication method and program | |
JP2011005100A (en) | Game machine, authentication method and program | |
JP2011005112A (en) | Game machine, authentication method and program | |
JP2011005077A (en) | Game machine, authentication method and program | |
JP2011005113A (en) | Game machine, authentication method and program | |
JP2011005104A (en) | Game machine, authentication method and program | |
JP2011005142A (en) | Game machine, authentication method and program | |
JP4933586B2 (en) | Game machine, authentication method, program | |
JP5315511B2 (en) | Game machine, authentication method, program | |
JP4933592B2 (en) | Game machine, authentication method, program | |
JP4933589B2 (en) | Game machine, authentication method, program | |
JP4933591B2 (en) | Game machine, authentication method, program | |
JP4933588B2 (en) | Game machine, authentication method, program | |
JP4933587B2 (en) | Game machine, authentication method, program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111202 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20120720 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20120724 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120918 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20121109 |