JP4981852B2 - Game machine, authentication method, program - Google Patents
Game machine, authentication method, program Download PDFInfo
- Publication number
- JP4981852B2 JP4981852B2 JP2009153265A JP2009153265A JP4981852B2 JP 4981852 B2 JP4981852 B2 JP 4981852B2 JP 2009153265 A JP2009153265 A JP 2009153265A JP 2009153265 A JP2009153265 A JP 2009153265A JP 4981852 B2 JP4981852 B2 JP 4981852B2
- Authority
- JP
- Japan
- Prior art keywords
- control unit
- command
- authentication
- unit
- instruction code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Pinball Game Machines (AREA)
- Slot Machines And Peripheral Devices (AREA)
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では、図33に示すように、主制御部201と、主制御部201によって送信された制御コマンドに基づいて所定の処理を行なう周辺基板(演出制御部202a、賞球制御部203d)とを備えるパチンコ遊技機において、不正を防止する。すなわち、同図において、主制御部201の付加部312は、周辺基板に送信する制御コマンドが、抽選時の抽選結果がはずれの場合の処理を周辺基板に実行させるはずれコマンドである場合、主制御部201を認証するための認証データを制御コマンドに付加する。送信部314aは、制御コマンドを周辺基板に送信する。周辺基板の受信部321は、主制御部201から送信された制御コマンドを受信する。認証部322は、受信部321によって受信された制御コマンドを用いて主制御部201を認証する。
In Patent Document 1, as shown in FIG. 33, a
なお、主制御部201の制御コマンド格納部311は、周辺基板に送信する制御コマンドのデータ(制御コマンドデータ)を格納する。記録部313には、所定のプログラムコードが記録されている。
The control
報知信号出力部323は、認証部322によって主制御部が認証されなかった場合に、報知信号を出力する。周辺基板が演出制御部202aを有する場合、報知信号出力部323は、例えば、図柄表示部(不図示)やランプ制御部(不図示)に報知信号を出力する。
The notification signal output unit 323 outputs a notification signal when the
ところで、セキュリティの強度を大きくして主制御部201を認証しようとすると、認証データの容量が大きくなったり、複雑な演算処理が必要になったりする。認証データの容量を大きくしたり、複雑な演算処理が必要になったりすると、周辺基板の処理負荷が大きくなるので、好ましくない。そのため、従来の遊技機では、セキュリティの強度を大きくしようとすると設計上の制約を受けることになる。
一方、前述したように主制御部に対する不正に対しては、従来から様々な防止方法が提案されているが、周辺基板、特に演出に関する制御部に対してはその不正を防止するための有効な方法が提案されていない。
つまり、パチンコ機の場合、スピーカーや電飾ランプ、液晶ディスプレイなどを用いた多彩な演出が用意されているが、これら演出は、遊技機の開発者によってその遊技状態などに応じた最適なものとなるように設計、制作されている。そのため、第三者によってこの演出に関する制御部に対して、例えば大当たり抽選結果がはずれであるにもかかわらず、大当たり当選時に選択され易い演出が頻出するような不正が行われると、その遊技機に対する信頼性やその遊技機のメーカーへの信用が著しく失墜するおそれがある。
By the way, if it is attempted to authenticate the
On the other hand, as described above, various preventive methods have been proposed for fraud against the main control unit. However, it is effective for preventing frauds with respect to peripheral boards, particularly control units related to performance. No method has been proposed.
In other words, in the case of pachinko machines, a variety of presentations using speakers, lighting lamps, liquid crystal displays, etc. are prepared, but these presentations are optimal depending on the gaming state etc. by the game machine developer. Designed and produced to be For this reason, if a third party makes a fraudulent action that tends to be easily selected at the time of a big win, for example, despite the fact that the big win lottery result is out of play, Reliability and trust to the manufacturer of the gaming machine may be significantly lost.
本発明は、セキュリティの強度を従来よりも大きくしても設計上の制約を受けずに、主制御部が正当であるか否かを判断することができる遊技機、認証方法、プログラムを提供することを目的とする。また、本発明は、主に演出に関する周辺基板などに対する不正を防止できる遊技機、認証方法、プログラムを提供することを目的とする。 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. Another object of the present invention is to provide a gaming machine, an authentication method, and a program that can prevent fraud with respect to peripheral boards and the like mainly related to performance.
上記課題を解決し上記目的を達成するために、本発明の遊技機は、所定条件の成立を契機として抽選を行う抽選手段(例えば、図13のステップS312、S314、図14のステップS404、S406に対応)と、図柄表示手段(例えば、図1の図柄表示部104に対応)で図柄を変動表示する図柄変動手段(例えば、図14のステップS414に対応)と、前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段(例えば、図14のステップS410、S412、S424に対応)とを有する主制御部を備える遊技機であって、
前記主制御部は、
遊技に関する演出または前記演出の前処理もしくは後処理を制御するための制御コマンドと、自らが正当であることを認証させるための第1の認証データとを出力し、
さらに、
前記主制御部の出力を入力とし、前記制御コマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御するとともに、前記第1の認証データを出力する周辺部と、前記周辺部から出力される前記第1の認証データに基づいて前記主制御部が正当であるか否かを判断し、正当であると判断した場合には前記主制御部が正当であるか否かを判断するためのデータでありかつ前記第1の認証データよりも簡単な暗号化処理が施された第2の認証データを前記第1の認証データに基づいて生成し、前記第2の認証データを前記周辺部に出力する中間処理だけを行う認証部とを備え、前記周辺部は、前記第2の認証データに基づいて前記主制御部が正当であるか否かを判断すると共に、遊技に関するデータ処理を行うデータ処理装置(例えば、図3のCPU302に対応)と、前記データ処理装置によるアクセスを制御するアクセス制御装置とを備え、
前記データ処理装置は、
データ処理手段(例えば、図5のCPUコア303に対応)と、
前記データ処理手段が実行する命令に関する情報を外部に出力する出力手段(例えば、図5のIF312に対応)とを有し、
前記アクセス制御装置は、
前記データ処理を行うためのデータを記憶する記憶手段(例えば、図5のレジスタ334、336に対応)と、
前記命令に関する情報を前記出力手段から入力する入力手段(例えば、図5の入力部331に対応)と、
前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段(例えば、図4のアクセス制御部238に対応)とを有することを特徴とする。
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. 13 and steps S404 and S406 in FIG. 14) for performing lottery when a predetermined condition is satisfied. ), Symbol changing means (for example, corresponding to step S414 in FIG. 14) and a lottery result of the lottery means. Based on this, the gaming machine is provided with a main control unit having a special state generating means (for example, corresponding to steps S410, S412, and S424 in FIG. 14) for generating a special state after stopping the symbol in a predetermined manner. And
The main control unit
Outputting a game-related effect or a control command for controlling the pre-processing or post-processing of the effect, and first authentication data for authenticating that the player is valid,
further,
The output of the main control unit is used as an input, the execution of the presentation or the pre-processing or post-processing is controlled based on the control command, and the peripheral unit that outputs the first authentication data is output from the peripheral unit To determine whether or not the main control unit is valid based on the first authentication data, and to determine whether or not the main control unit is valid when it is determined to be valid Is generated based on the first authentication data, and the second authentication data is generated in the peripheral portion. And an authentication unit that performs only intermediate processing to be output to the peripheral unit, and the peripheral unit determines whether the main control unit is valid based on the second authentication data and performs data processing relating to the game Data processing device (example If, with the corresponding) to the CPU302 of FIG 3, and an access controller for controlling access by said data processor,
The data processing device includes:
Data processing means (for example, corresponding to the
Output means (for example, corresponding to
The access control device
Storage means for storing data for performing the data processing (for example, corresponding to the
Input means for inputting information related to the command from the output means (for example, corresponding to the
And an access control unit (for example, corresponding to the
このような構成によれば、周辺部とは別に認証部を設け、第1の認証データに基づいて主制御部を認証し、主制御部が正当であると判断した場合には、第2の認証データを認証部が生成し、この第2の認証データを用いて周辺部が主制御部をさらに認証するので、認証処理全てを周辺部で行う場合に比べて周辺部の負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行なったりしてセキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。また、周辺部のデータ処理手段であるCPUとアクセス制御装置とによって、その周辺部に接続される接続機器の接続機器認証を行うことができると共に、主にその周辺部の演出に対する不正を防止できる。 According to such a configuration, the authentication unit is provided separately from the peripheral unit, the main control unit is authenticated based on the first authentication data, and when the main control unit determines that it is valid, Since the authentication unit generates authentication data, and the peripheral unit further authenticates the main control unit using the second authentication data, the burden on the peripheral unit is reduced as compared with the case where all authentication processing is performed in the peripheral unit, It is possible to determine whether or not the main control unit is legitimate by increasing the strength of the security by increasing the capacity of the authentication data or performing complicated arithmetic processing. Further, the peripheral device data processing means CPU and access control device can perform connection device authentication of the connected device connected to the peripheral portion, and can mainly prevent fraud in the peripheral portion of the production. .
所定条件が成立すると、抽選手段により、これを契機として抽選が行われる。また、図柄変動手段により、図柄表示手段で図柄が変動表示される。そして、特賞状態発生手段により、抽選手段の抽選結果に基づいて、所定の態様で図柄が停止した後に特賞状態が発生する。また、特賞状態とは、遊技者に対して所定の遊技価値を付与可能な有利な状態をいい、例えば、大入賞口の開放動作等が含まれる。また、所定条件の成立としては、パチンコ機である場合は、例えば、始動入賞口に遊技球が入賞すること、パチスロ機である場合は、例えば、遊技開始を指示する操作レバーが操作されることが含まれる。 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 apparatus provided in the peripheral portion, the output means outputs information related to the command executed by the data processing means in the peripheral portion to the outside. 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.
また、この周辺部に設けられるデータ処理装置のアクセス制御手段は、前記入力手段で入力した命令に関する情報に基づいてアクセス許可条件が成立すると判定したときは、前記記憶手段へのアクセスを許可し、前記アクセス許可条件が成立しないと判定したときは、前記記憶手段へのアクセスを制限してもよい。このような構成であれば、アクセス制御装置では、アクセス制御手段により、入力された命令に関する情報に基づいてアクセス許可条件が成立すると判定されると、記憶手段へのアクセスが許可される。これに対し、入力された命令に関する情報に基づいてアクセス許可条件が成立しないと判定されると、記憶手段へのアクセスが制限される。 Further, the access control means of the data processing device provided in the peripheral portion permits access to the storage means when it is determined that the access permission condition is satisfied based on the information related to the command input by the input means. When it is determined that the access permission condition is not satisfied, access to the storage unit 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.
さらに、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列を出力し、前記アクセス許可条件は、前記入力手段で入力した命令コードまたは命令コード列が所定のコードまたはコード列であることを含んでもよい。このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列が出力される。アクセス制御装置では、入力手段により、命令コードまたは命令コード列が入力され、アクセス制御手段により、入力された命令コードまたは命令コード列が所定のコードまたはコード列であると判定されると、記憶手段へのアクセスが許可される。これにより、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。 Further, the output means outputs an instruction code or an instruction code string executed by the data processing means, and the access permission condition is that the instruction code or instruction code string input by the input means is a predetermined code or code string. It may include being. 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.
また、前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段(例えば、図5のROM304に対応)をさらに有し、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の前記命令コード記憶手段における記憶位置を示す記憶位置情報を出力し、前記アクセス許可条件は、前記入力手段で入力した記憶位置情報の記憶位置が所定の記憶位置であることを含んでもよい。
The data processing device includes:
The apparatus further includes an instruction code storage unit (for example, corresponding to the
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列の命令コード記憶手段における記憶位置を示す記憶位置情報が出力される。アクセス制御装置では、入力手段により、記憶位置情報が入力され、アクセス制御手段により、入力された記憶位置情報の記憶位置が所定の記憶位置であると判定されると、記憶手段へのアクセスが許可される。これにより、不正な位置に記憶された命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。 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.
ここで、命令コード列の記憶位置としては、例えば、命令コード列のうち先頭の命令コードの記憶位置、命令コード列のうち所定番目の命令コードの記憶位置、命令コード列に含まれる命令コードのそれぞれの記憶位置が含まれる。また、命令コード記憶手段は、あらゆる手段でかつあらゆる時期に命令コードを記憶可能なものを含み、命令コードをあらかじめ記憶してあるものであってもよいし、命令コードをあらかじめ記憶することなく、本遊技機の動作時に外部からの入力等によって命令コードを記憶するものであってもよい。 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.
さらに、前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算を行う演算手段(例えば、図23のチェック値算出部318に対応)とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含んでもよい。このような構成であれば、データ処理装置では、演算手段により、命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算が行われ、出力手段により、その演算結果が出力される。アクセス制御装置では、入力手段により、演算手段の演算結果が入力され、アクセス制御手段により、入力された演算結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。
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.
また、前記データ処理装置は、前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、前記命令コード記憶手段に記憶された所定の固定値を用いて所定の演算を行う演算手段(例えば、図23のチェック値算出部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, it corresponds to the check
The access permission condition may include that the calculation result input by the input unit is a predetermined 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.
前記周辺部は、前記主制御部が正当でないと判断された場合、その旨を報知するようにしてもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 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 peripheral unit may determine whether or not the main control unit is valid after the production based on the control command or a period during which the pre-processing or post-processing is executed. By determining whether or not the main control unit is valid after the period of the presentation based on the control command or the pre-processing or post-processing, the capacity of the authentication data is increased or the complicated arithmetic processing is performed. Even if the authentication processing is all performed in the peripheral portion, the burden on the peripheral portion 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.
前記周辺部と前記認証部との信号授受に用いられる単一の経路を備えていてもよい。認証データの授受が単一の経路で行われる場合であっても、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 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.
前記周辺部と前記認証部との信号授受に用いられる二本の経路を備え、前記周辺部が、前記経路の一方により前記第1の認証データを前記認証部に出力し、前記認証部が、前記経路の他方により前記第2の認証データを前記周辺部に出力するようにしてもよい。認証データの授受が二本の経路で行われる場合であっても、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 Provided with two paths used for signal exchange between the peripheral part and the authentication part, the peripheral part outputs the first authentication data to the authentication part by one of the paths, the authentication part, The second authentication data may be output to the peripheral portion through the other of the paths. 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.
本発明の認証方法は、請求項1記載の遊技機に適用され、遊技に関する演出または前記演出の前処理もしくは後処理を制御するための制御コマンドと、自らが正当であることを認証させるための第1の認証データとを出力する主制御部と、前記制御コマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御する周辺部とを備える遊技機において前記主制御部についての認証を行う認証方法であって、前記データ処理手段に接続された機器の認証を行う接続機器認証ステップ(例えば、図10のS104に対応)と、前記データ処理手段が実行する命令に関する情報を外部に出力する出力ステップと、前記命令に関する情報を前記出力手段から入力する入力ステップと、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップと、を含み、さらに、認証部が、前記第1の認証データを、前記周辺部を介して取得する取得ステップ(例えば、図26のS8、S10に対応)と、前記取得ステップにおいて取得した第1の認証データに基づいて前記主制御部が正当であるか否かを判断するステップ(例えば、図26のS12に対応)と、前記主制御部が正当であると判断した場合には前記主制御部が正当であるか否かを判断するためのデータでありかつ前記第1の認証データよりも簡単な暗号化処理が施された第2の認証データを前記第1の認証データに基づいて生成し、前記第2の認証データを前記周辺部に出力するステップ(例えば、図27のS18〜S21に対応)とを含み、前記主制御部が正当であるか否かを、前記第2の認証データに基づいて判断するようにした、中間処理だけを行うことを特徴とする。データ処理手段であるCPUとアクセス制御装置とによる接続機器認証を行うほか、周辺部を介して取得した第1の認証データに基づいて主制御部を認証し、主制御部が正当であると判断した場合には、第2の認証データを生成し、この第2の認証データを用いて周辺部が主制御部を認証するので、認証処理全てを周辺部で行う場合に比べて周辺部の負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行なったりしてセキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 The authentication method of the present invention is applied to the gaming machine according to claim 1, and is used for authenticating that a game-related effect or a control command for controlling pre-processing or post-processing of the effect and that it is valid. Authentication of the main control unit in a gaming machine comprising a main control unit that outputs first authentication data and a peripheral unit that controls execution of the presentation or the pre-processing or post-processing based on the control command An authentication method to be performed, wherein a connected device authentication step (for example, corresponding to S104 in FIG. 10) for authenticating a device connected to the data processing means and information related to a command executed by the data processing means are output to the outside Output step, an input step of inputting information related to the command from the output means, and an information related to the command input in the input step Includes an access control step of controlling access to said storage means by said data processing apparatus, further authentication unit, the first authentication data, acquiring via the peripheral portion (e.g., 26 (corresponding to S8 and S10 in FIG. 26) and a step of determining whether or not the main control unit is valid based on the first authentication data acquired in the acquisition step (for example, corresponding to S12 in FIG. 26). When the main control unit determines that the main control unit is legitimate, it is data for determining whether the main control unit is legitimate and is simpler than the first authentication data. Generating applied second authentication data based on the first authentication data, and outputting the second authentication data to the peripheral portion (for example, corresponding to S18 to S21 in FIG. 27). , Whether the main control unit is valid, and so is judged based on the second authentication data, and performs only intermediate processing. In addition to performing connection device authentication by the CPU and access control device as the data processing means, the main control unit is authenticated based on the first authentication data acquired via the peripheral unit, and the main control unit is determined to be valid. In this case, since the second authentication data is generated and the peripheral unit authenticates the main control unit using the second authentication data, the burden on the peripheral unit is larger than when all the authentication processing is performed in the peripheral unit. Therefore, it is possible to determine whether the main control unit is legitimate by increasing the security strength compared to the prior art by increasing the capacity of the authentication data or performing complicated arithmetic processing.
前記主制御部が正当でないと判断された場合、認証結果を報知するための信号を出力する報知信号出力ステップ(例えば、図26のS17、図27のS25に対応)をさらに含んでもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。 When it is determined that the main control unit is not valid, it may further include a notification signal output step (for example, corresponding to S17 in FIG. 26 and S25 in FIG. 27) for outputting a signal for notifying the authentication result. This makes it easier for employees and players of pachinko halls to recognize the state.
前記制御コマンドに基づく前記演出または前記前処理もしくは後処理が実行される期間の後に前記主制御部が正当であるか否かを判断してもよい。制御コマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、主制御部が正当であるか否かを判断することにより、認証データの容量が大きくなったり、複雑な演算処理を行なったりしても、周辺部の動作とは独立して第2の認証データを生成することができる。したがって、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。 It may be determined whether or not the main control unit is valid after the production based on the control command or the period during which the pre-processing or post-processing is executed. By determining whether or not the main control unit is valid after the period of the presentation based on the control command or the pre-processing or post-processing, the capacity of the authentication data is increased or the complicated arithmetic processing is performed. Alternatively, the second authentication data can be generated independently of the operation of the peripheral part. 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 performing connected device authentication by the peripheral CPU and access control device as data processing means, the main control unit is authenticated using authentication data acquired through the peripheral unit and the authentication unit, so all authentication processing is performed. Compared to the case where it is performed at the peripheral part, the burden on the peripheral part is reduced, the authentication data capacity is increased, or complicated calculation processing is performed to increase the security strength compared to the conventional case, and the main control part is legitimate. It can be determined whether or not there is. 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.
本発明によれば、主制御部からの制御コマンドを受信する周辺部とは別に設けた認証部においてその制御コマンドに付加された第1の認証データに基づいて主制御部を認証し、主制御部が正当であると判断した場合には、第2の認証データを生成し、この第2の認証データを用いて周辺部が主制御部をさらに認証するので、認証処理全てを周辺部で行う場合に比べて周辺部の負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行ったりしてセキュリティの強度を従来よりも大きくしても周辺部の処理負荷は大きくならず、設計上の制約を受けずに、主制御部が正当であるか否かを判断することができる。また、この周辺部に、さらに演出に関するデータ処理を行うデータ処理装置と、このデータ処理装置によるアクセスを制御するアクセス制御装置とを備えたことから、周辺部に接続される機器認証を行えると共に、主にその周辺部の演出に対する不正を防止できる。 According to the present invention, the main control unit is authenticated based on the first authentication data added to the control command in the authentication unit provided separately from the peripheral unit that receives the control command from the main control unit. If it is determined that the authentication unit is valid, the second authentication data is generated, and the peripheral unit further authenticates the main control unit using the second authentication data, so that all authentication processing is performed in the peripheral unit. Compared to the case, the burden on the peripheral part is reduced, and the processing load on the peripheral part does not increase even if the strength of security is increased by increasing the authentication data capacity or performing complex arithmetic processing. It is possible to determine whether or not the main control unit is valid without being restricted by design. In addition, since the peripheral portion is further provided with a data processing device that performs data processing related to the production and an access control device that controls access by the data processing device, it is possible to perform device authentication connected to the peripheral portion, It is possible to prevent fraud mainly for the production in the surrounding area.
以下に、本発明を実施するための形態について図面を参照して説明する。ここでは、本発明に係る遊技機、周辺基板、認証方法、プログラムを、パチンコ機に適用した場合について説明する。
〔遊技盤の構成〕
まず、パチンコ機における遊技盤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, peripheral board, authentication method, and 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が正当であることを認証させるための第1の認証データとを出力する手段である。
The
ここで、「演出」とは、例えば、抽選による大当たり演出である。また、「演出の前処理」は、例えば、図柄表示部が表示する図柄を変動させる際の、図柄を変動させるための値をレジスタに設定する処理、である。ただし、主制御部2aは、制御データを出力せず、制御コマンドと第1の認証データとを周辺部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からの第1の認証データを認証部3bに出力する手段である。
The
認証部3bは、周辺部3aの後段に設けられており、周辺部3aから出力される第1の認証データに基づいて主制御部2aが正当であるか否かを判断するための第2の認証データを生成し、それを周辺部3aに出力する手段である。周辺部とは別に、認証部を付加した構成を採用している。このため、主制御部および周辺部の一般的な構成で主制御部の認証を行っていない場合でも、認証部を付加すれば、周辺部の仕様変更を最小限に抑えつつ、主制御部の認証を行うことができるようになる。主制御部2aが正当でないと判断された場合、周辺部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の認証を行うための第2の認証データを生成し、それを周辺部3aに出力する認証部3bとが設けられている。演出制御部300は、図2における周辺部3aの一例である。賞球制御部400は、主制御部2aの制御により遊技球の払出制御を行う。
As shown in FIG. 3, the
A
主制御部2aは、遊技の主制御を行い、遊技の演出制御または遊技球の払出制御を行うための各種の制御コマンドを演出制御部300および賞球制御部400にそれぞれ送信する。主制御部2aには、
The
始動入賞口105に入賞した遊技球を検出する始動入賞口検出部280と、入賞ゲート106を通過した遊技球を検出するゲート検出部282と、普通入賞口107に入賞した遊技球を検出する普通入賞口検出部284と、大入賞口109に入賞した遊技球を検出する大入賞口検出部286とが接続されている。これらの検出部280〜286は、例えば、近接スイッチを用いて構成することができる。
A start winning
I/F210には、さらに、大当たり中に大入賞口109の開閉部材を開閉動作させる大入賞口開閉部288と、演出制御部300と、賞球制御部400とが接続されている。なお、演出制御部300との通信は、主制御部2aから演出制御部300への一方向となっている。これに対し、賞球制御部400との通信は、双方向となっている。
The I /
大入賞口開閉部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/F310には、主制御部2aと、図柄表示部104と、スピーカ380から音声を出力する音声制御を行う音声制御部382と、ランプ384を点灯させるランプ制御を行うランプ制御部386とが接続されている。
The I /
アクセス制御装置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から入力することができる。ここで、命令コード列のアドレスとは、命令コード列のうち先頭の命令コードのアドレスをいう。
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が接続されている。CPU302は、そのハードウェア構造上、バス316を介して送受信されるアドレス信号、データ信号および制御信号を外部に出力しない構成となっている。また、バス316の信号線がCPU302に内蔵されているので、アクセス制御装置330をバス316の信号線に直結することも改造を要し難しい。したがって、そのままの構成では、アクセス制御装置330は、CPUコア303が実行する命令に関する情報を取得することができない。そこで、この演出制御部300においても、CPUコア303が実行する命令に関する情報として、CPUコア303が実行する命令コード列、およびそのROM304におけるアドレスを、I/F312を介して出力する処理をCPUコア303に実行させる。この出力処理は、例えば、ROM304の制御プログラムの一処理として組み込んでおくことができる。これにより、アクセス制御装置330は、CPUコア303が実行する命令コード列およびそのアドレスをI/F312から入力することができる。
An
賞球制御部400は、CPU402、ROM404、RAM406およびI/F410のほか、遊技球の払出制御に必要な複数のデバイスからなる賞球関連デバイス群414を有して構成されている。
〔CPUコアおよびアクセス制御装置の構成〕
次に、図4に示した主制御部2aのCPUコア203とこの主制御部2a側に設けられたアクセス制御装置230、及び図5に示した演出制御部300のCPUコア303とその演出制御部300側に設けられたアクセス制御装置330の構成を説明する。
図6は、CPUコア203(303)およびアクセス制御装置230(330)の構成を示すブロック図である。なお、これら主制御部2aにおけるCPUコア203とアクセス制御装置230、及び演出制御部300におけるCPUコア303とアクセス制御装置330とは、いずれも同じ構成をしていることから、図6ではこれらを纏めて説明する。また、図6中及び以下の括弧書きで示す符号は、演出制御部300におけるCPUコア303とアクセス制御装置330を示している。また、図6では、説明の便宜上、構成の一部を省略している。
The prize
[Configuration of CPU core and access control device]
Next, the
FIG. 6 is a block diagram showing the configuration of the CPU core 203 (303) and the access control device 230 (330). Since the
同図に示すように、CPUコア203(303)は、ROM204(304)に記憶された命令コード列を読み出し(フェッチ)、読み出した命令コード列に従ってデータ処理を行う。CPUコア203(303)は、制御部203a(303a)、演算部203b(203b)およびレジスタ203c(303c)を有して構成されている。
制御部203a(303a)は、CPU202(302)全体の動作を制御し、命令コード列その他データの読出および書込を行うためにバス216(316)に制御信号を出力する。
演算部203b(303b)は、レジスタ203c(303c)に保持されたデータに対して演算を行う。
レジスタ203c(303c)は、ROM204(304)から読み出した命令コード列およびそのアドレス、並びに演算部203b(303b)で処理したデータを保持する。
As shown in the figure, the CPU core 203 (303) reads (fetches) the instruction code string stored in the ROM 204 (304), and performs data processing according to the read instruction code string. The CPU core 203 (303) includes a
The
The
The
アクセス制御装置230(303)は、遊技(演出)制御に用いる乱数や認証に必要な認証情報を生成するとともにCPUコア203(303)で処理したデータを保持する。アクセス制御装置230(330)は、入力部231(331)、演算部232(332)、レジスタ234(334)、236(336)およびアクセス制御部238(338)を有して構成されている。
入力部231(331)は、ラッチ回路等からなり、CPUコア203(303)が実行する命令コード列およびそのアドレスをI/F212(312)から入力する。
The access control device 230 (303) generates random numbers used for game (production) control and authentication information necessary for authentication and holds data processed by the CPU core 203 (303). The access control device 230 (330) includes an input unit 231 (331), a calculation unit 232 (332), registers 234 (334), 236 (336), and an access control unit 238 (338).
The input unit 231 (331) includes a latch circuit and the like, and inputs an instruction code string executed by the CPU core 203 (303) and its address from the I / F 212 (312).
演算部232(332)は、乱数生成器等からなり、遊技(演出)制御に用いる乱数と認証に必要な認証情報との少なくとも一方を生成する。遊技制御に用いる乱数としては、大当たり抽選に用いる乱数(大当たり決定乱数)、演出図柄の停止態様を決定するための乱数(停止図柄決定乱数)、演出図柄の変動パターンを決定するための乱数(変動パターン決定乱数)、その他遊技制御に用いる乱数がある。また、演出制御に用いる乱数としては、主制御部2aから送られてくる制御コマンドに対応する具体的な演出図柄を決定するための乱数、演出図柄による変動パターン演出と共に音声やランプ演出を決定するための乱数などがある。
レジスタ234(334)は、演算部232(332)で生成した乱数や認証情報を保持する。レジスタ234へのアクセスは、アクセス制御部238(338)により制御される。
レジスタ236(336)は、CPUコア203(303)で処理したデータを保持する。レジスタ236(336)へのアクセスは、アクセス制御部238(338)により制御される。
The calculation unit 232 (332) includes a random number generator or the like, and generates at least one of a random number used for game (production) control and authentication information necessary for authentication. Random numbers used for game control include random numbers used for jackpot lottery (big hit determined random numbers), random numbers for determining the stop mode of the effect symbols (stop symbol determined random numbers), random numbers for determining the change pattern of the effect symbols (variation) Pattern determination random number) and other random numbers used for game control. In addition, as random numbers used for effect control, a sound and a lamp effect are determined together with a random number for determining a specific effect symbol corresponding to a control command sent from the
The register 234 (334) holds the random number and authentication information generated by the calculation unit 232 (332). Access to the
The register 236 (336) holds data processed by the CPU core 203 (303). Access to the register 236 (336) is controlled by the access control unit 238 (338).
アクセス制御部238(338)は、レジスタ234(334)、236(336)に対するリード要求を入力したときは、そのリード要求に係るリード命令およびそのアドレスを入力部231(331)から入力し、入力したリード命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ234(334)、236(336)からのデータの読出を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ234(334)、236(336)からのデータの読出を禁止する。具体的には、入力部231(331)で入力した命令コード列が、あらかじめ許可されたコード列(以下、許可命令コード列という。)であり、かつ、その命令コード列のアドレスが、あらかじめ許可されたアドレス(以下、許可アドレスという。)であるときにのみ、レジスタ234(334)、236(336)からデータを読み出すことができる。 When the access control unit 238 (338) inputs a read request to the registers 234 (334) and 236 (336), it inputs a read command and its address related to the read request from the input unit 231 (331) and inputs them. When it is determined that the access permission condition is satisfied based on the read command and the address, the reading of data from the registers 234 (334) and 236 (336) is permitted. On the other hand, when it is determined that the access permission condition is not satisfied, reading of data from the registers 234 (334) and 236 (336) is prohibited. Specifically, the instruction code string input by the input unit 231 (331) is a code string permitted in advance (hereinafter referred to as a permitted instruction code string), and the address of the instruction code string is permitted in advance. The data can be read from the registers 234 (334) and 236 (336) only when the address is a registered address (hereinafter referred to as a permitted address).
アクセス制御部238(338)は、レジスタ236(336)に対するライト要求を入力したときは、そのライト要求に係るライト命令およびそのアドレスを入力部231(331)から入力し、入力したライト命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ236(336)へのデータの書込を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ236(336)へのデータの書込を禁止する。具体的には、入力部231(331)で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ236(336)にデータを書き込むことができる。
〔アクセス制御処理〕
次に、アクセス制御部238(338)で実行されるアクセス制御処理を説明する。
図7は、アクセス制御部238(338)で実行されるアクセス制御処理を示すフローチャートである。
アクセス制御部238(338)は、アクセス制御処理を実行すると、図7に示すように、まず、ステップSS10に移行する。
When a write request for the register 236 (336) is input, the access control unit 238 (338) inputs a write command and its address related to the write request from the input unit 231 (331), and the input write command and address When it is determined that the access permission condition is satisfied based on the above, writing of data to the register 236 (336) is permitted. On the other hand, when it is determined that the access permission condition is not satisfied, data writing to the register 236 (336) is prohibited. Specifically, the data is stored in the register 236 (336) only when the instruction code string input from the input unit 231 (331) is a permitted instruction code string and the address of the instruction code string is a permitted address. Can write.
[Access control processing]
Next, an access control process executed by the access control unit 238 (338) will be described.
FIG. 7 is a flowchart showing an access control process executed by the access control unit 238 (338).
When executing the access control process, the access control unit 238 (338) first proceeds to step SS10 as shown in FIG.
ステップSS10では、レジスタ234(334)、236(336)に対するリード要求をI/F212(312)から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS12に移行して、CPUコア203(303)が実行する命令コード列およびそのアドレスを入力部231(331)から入力し、ステップSS14に移行する。 In step SS10, it is determined whether or not a read request for the registers 234 (334) and 236 (336) is input from the I / F 212 (312). When it is determined that the read request is input (Yes), step SS12 is performed. Then, the instruction code string executed by the CPU core 203 (303) and its address are input from the input unit 231 (331), and the process proceeds to Step SS14.
ステップ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(334)、236(336)が保持しているデータを読み出し、ステップSS20に移行して、読み出したデータをI/F212(312)に出力する。出力されたデータは、I/F212(312)を介してCPUコア203(303)のレジスタ203c(303c)に保持される。
In step SS18, the data held in the registers 234 (334) and 236 (336) are read, the process proceeds to step SS20, and the read data is output to the I / F 212 (312). The output data is held in the
次いで、ステップSS22に移行して、レジスタ236(336)に対するライト要求をI/F212(312)から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS24に移行して、CPUコア203(303)が実行する命令コード列およびそのアドレスを入力部231(331)から入力し、ステップSS26に移行する。 Next, the process proceeds to step SS22 to determine whether or not a write request for the register 236 (336) is input from the I / F 212 (312). When it is determined that a write request is input (Yes), step SS24 is performed. Then, the instruction code string executed by the CPU core 203 (303) and its address are input from the input unit 231 (331), and the process proceeds to step SS26.
ステップ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(303)のレジスタ203c(303c)が保持しているデータをI/F212(312)から入力し、ステップSS32に移行して、入力したデータをレジスタ236(336)に書き込み、アクセス制御処理を終了する。
In step SS30, the data held in the
一方、ステップSS28で、許可アドレスでないと判定したとき(No)、ステップSS26で、許可命令コード列でないと判定したとき(No)、およびステップSS22で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ236(336)にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア203(303)は、アクセス制御装置230(330)からの通知を受け、不正が行われている可能性がある旨の通知(以下、不正通知という。)を行ってもよい。不正通知は、例えば、所定のメッセージ、マークまたは画像を図柄表示部104に表示したり、所定のメッセージ音や効果音をスピーカ380から出力したり、I/F210(310)を介してCPU202(302)の製造元、管理者または他の機器にエラーメッセージを送信したり、I/F210(310)を介して上記表示や音声出力を他の機器に行わせるための制御信号を送信したりすることにより行うことができる。これにより、主制御部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 register 236 (336). At this time, the CPU core 203 (303) may receive a notification from the access control device 230 (330), and may notify that there is a possibility of fraud (hereinafter referred to as fraud notification). . For the fraud notification, for example, a predetermined message, mark or image is displayed on the
一方、ステップSS16で、許可アドレスでないと判定したとき(No)、ステップSS14で、許可命令コード列でないと判定したとき(No)、およびステップSS10で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ234(334)、236(336)が保持しているデータをI/F212(312)に出力せずに、ステップSS22に移行する。このとき、CPUコア203(303)のレジスタ203c(303c)には、アクセス制御装置230からの出力がないので、「0000」や「1111」等の非正当値が保持される。非正当値を所定値にしておき、その値がレジスタ203c(303c)に保持された場合、CPUコア203(303)は、不正通知を行ってもよい。ここで、所定値とは、例えば、複数種類の固定値群や、あらかじめ変動規則を定めておいた変動値である。
〔ROMのメモリ構造〕
次に、主制御部2aのROM204及び演出制御部300のROM304のメモリ構造を説明する。
図8は、ROM204、304のメモリ構造を模式的に示した図である。
ROM204、304は、図8に示すように、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 registers 234 (334) and 236 (336) is not output to the I / F 212 (312), and the process proceeds to step SS22. At this time, since there is no output from the
[ROM memory structure]
Next, the memory structures of the
FIG. 8 is a diagram schematically showing the memory structure of the
As shown in FIG. 8, the
ROM204、304の各記憶領域204a、304aには、所定領域ごと(例えば、1バイトごと)にアドレスが割り当てられている。図8の例では、記憶領域204a、304aに対してアドレス「0x000」〜「0xNNN」が割り当てられており、各アドレスは1バイト分の領域を示している。例えば、アドレス「0x100」〜「0x103」には、命令コード列「0xABCDEFGH」(リード命令)が格納されている。また、アドレス「0x104」〜「0x107」には、命令コード列「0xJKLMNOPQ」(ライト命令)が格納されている。
〔制御コマンドなどのデータ構造〕
次に、主制御部2aから演出制御部300などへ送信される制御コマンドなどのデータ構造を説明する。
図9は、制御コマンドなどのデータ構造を示す図である。
Addresses are assigned to the
[Data structure of control commands, etc.]
Next, a data structure such as a control command transmitted from the
FIG. 9 is a diagram illustrating a data structure such as a control command.
通常の制御コマンド500の場合は、図9(a)に示すように、制御データ501が付加されている。これに対し、認証データ付き制御コマンドの場合は、図9(b)に示すように、制御データ501が付加され、さらに第1の認証データである暗号化認証データ502が付加された構成になっている。このように、第1の認証データを制御コマンドに付加して主制御部2aから送信することにより、認証データ単体で送信する場合と比較して、主制御部2aと周辺部3aとの間の通信負荷の増大を抑えることができる。また、第1の認証データを制御コマンドに付加して主制御部2aから送信することにより、認証データ単体で送信する場合と比較して、通信データ中から認証データが抽出され、解析されてしまう危険性を低減することができる。さらに、認証処理は、第1の認証データが付加された制御コマンドを送信する場合にのみ行われるため、認証処理による主制御部2aの処理負荷が認証処理によって増大する割合を抑えることができる。
In the case of a
なお、制御コマンド500に対する、制御データ501、第1の認証データ502の配置の順序は、図9(b)の場合に限定されるものではない。すなわち、図9(c)に示すように、制御コマンド500の先頭に第1の認証データ502を付加した配置としたり、図9(d)に示すように、制御コマンド500と制御データ501との間に第1の認証データ502を挿入した配置としたりしてもよい。また、制御コマンド500と制御データ501とは別個に第1の認証データを送信することとしてもよい。例えば、制御コマンドの1つである大当たりコマンドおよびその制御データを送信した後、3回目の制御コマンド送信時に第1の認証データを付加して送信する、などとしてもよい。
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で実行される遊技制御処理について説明する。
These control commands are merely representative, and various other control commands are defined. Among these control commands, encryption authentication data is added to predetermined ones.
[Game control processing]
Next, the game control process executed by the
CPU202は、所定の動作クロック(例えば、4[ms])で1サイクルを実行可能な制御プログラムをROM204から読み出し、読み出した制御プログラムに従って、図10のフローチャートに示す遊技制御処理を実行する。
図10は、遊技制御処理を示すフローチャートである。
遊技制御処理は、CPU202において実行されると、図10に示すように、まず、ステップS100に移行する。
The
FIG. 10 is a flowchart showing the game control process.
When the game control process is executed by 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 contents of 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に移行する。図10においては、接続機器認証処理(ステップS104)を実行した後、入賞判定処理(ステップS106)などの処理に移行しているが、これに限定されない。すなわち、入賞判定処理以降の処理の途中に接続機器認証処理が行われてもよく、処理の順序は問わない。
In step S116, it is determined whether or not the power is turned off. When it is determined that the power is turned off (Yes), the process proceeds to step S118, and the
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. 10, 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」)で循環的にカウントを行う。
〔接続機器認証処理〕
次に、図10のステップ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. 10 will be described.
CPU202には、各種の機器の接続が可能であるが、ユーザやメーカが承認していない機器が不正に接続され、CPU202の誤動作を発生させたり、ROM204のデータが改ざんされたり、盗まれたりする恐れがある。これを防止するため、CPU202は、接続機器の認証を行う。なお、接続機器認証処理の実行にはアクセス制御装置230も密接に関係するため、ここでは、接続機器認証処理の実行に伴うCPUコア203およびアクセス制御装置230の動作を説明する。
図11は、接続機器認証処理の実行に伴うCPUコア203およびアクセス制御装置230の動作を示すフローチャートである。
Various devices can be connected to the
FIG. 11 is a flowchart showing the operations of the
CPUコア203は、図11に示すように、まず、ステップS40、S42を経て、接続機器から認証用データを取得し、I/F212を介して、取得した認証用データを用いて検証値Vの生成要求を出力する。検証値Vは、接続機器を認証するために用いる値である。なお、ステップS40で取得した認証用データをそのまま検証値Vとしてもよい。
アクセス制御装置230は、検証値Vの生成要求を入力すると、ステップS44を経て、演算部232で検証値Vを生成し、レジスタ234に保持する。
As shown in FIG. 11, 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は、不正通知を行ったり接続機器との接続を切断したりする。
〔制御コマンド送信処理〕
次に、図10で示すステップS114の制御コマンド送信処理を説明する。
図12は、制御コマンド送信処理を示すフローチャートである。
制御コマンド送信処理は、図10で示すステップS114において実行されると、図12に示すように、まず、ステップ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. 10 will be described.
FIG. 12 is a flowchart showing the control command transmission process.
When the control command transmission process is executed in step S114 shown in FIG. 10, first, the process 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 to determine whether or not the read control command is a predetermined command, and when it is determined that the control command is a predetermined command ( If Yes, the process proceeds to step S204.
ステップS204では、ROM204の制御プログラムのデータに基づいて第1の認証データを生成する。第1の認証データは、演出制御部300で主制御部2aを認証するためのデータであって、例えば、制御プログラムの一部または全部のデータに対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査(CRC(Cyclic Redundancy
Check))またはチェックサム等の誤り検出演算を行って得られた値を検証値として含む。このように、検証値は、ROM204に実際に記憶されている制御プログラムのデータから算出される。したがって、検証値を用いて認証を行うことにより、正規の主制御基板を不正な主制御基板に取り替えたり、ROM204の制御プログラムを改ざんしたりといった不正行為を検出することができる。
次いで、ステップS206に移行して、所定の暗号化アルゴリズムにより、生成した第1の認証データを暗号化する暗号化処理を実行する。
In step S204, first 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 first 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 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 predetermined command (No), the process proceeds to step S210, and the control command read in step S200 is transmitted to the
なお、電源オンコマンドおよび電源オフコマンドの送信(ステップS102、S118)についても、図12のフローチャートに示す制御コマンド送信処理と同様の処理を行う。
〔入賞判定処理〕
次に、図10に示すステップS106の入賞判定処理を説明する。
図13は、入賞判定処理を示すフローチャートである。
入賞判定処理は、図10に示すステップS106において実行されると、図13に示すように、まず、ステップS300に移行する。
ステップS300では、保留球数が「0」であるか否かを判定し、保留球数が「0」であると判定したとき(Yes)は、ステップS302に移行する。
Note that the transmission of the power-on command and the power-off command (steps S102 and S118) is similar to the control command transmission process shown in the flowchart of FIG.
[Winning determination process]
Next, the winning determination process in step S106 shown in FIG. 10 will be described.
FIG. 13 is a flowchart showing a winning determination process.
When the winning determination process is executed in step S106 shown in FIG. 10, first, the process 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に移行する。
〔大当たり判定処理〕
次に、図10に示すステップS108の大当たり判定処理を説明する。
図14は、大当たり判定処理を示すフローチャートである。
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. 10 will be described.
FIG. 14 is a flowchart showing the jackpot determination process.
大当たり判定処理は、所定確率で大当たりを発生させるために、大当たり決定乱数がとり得る所定の数値範囲(例えば、「0」〜「400」)に1個の大当たり値を設定し、始動入賞口105に遊技球が入賞した入賞タイミングで大当たり決定乱数を取得し、取得した乱数値と大当たり値とが一致しているときに大当たりを発生させる処理であって、図10に示すステップS108において実行されると、図14に示すように、まず、ステップ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または複数の特定の変動パターン決定テーブルにのみ登録されているので、リーチ決定乱数に基づくこの選択は、リーチ演出を行うか否かを決定することになる。そして、変動パターン決定乱数を乱数カウンタから取得し、取得した乱数値の順位の変動パターン番号を、読み出した変動パターン決定テーブルから取得し、取得した変動パターン番号を示す変動パターンコマンドを送信バッファに格納する。これにより、ステップS114の制御コマンド送信処理では、大当たりリーチコマンドその他大当たり時に選択される変動パターンコマンドが演出制御部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. Thereby, in the control command transmission process of step S114, the fluctuation pattern command selected at the time of the deviation non-reach command, the deviation reach command or the like is 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)はいずれも、一連の処理を終了して元の処理に復帰させる。
〔電動役物制御処理〕
次に、図10に示すステップS110の電動役物制御処理を説明する。
図15は、電動役物制御処理を示すフローチャートである。
電動役物制御処理は、図10に示すステップS110において実行されると、図15に示すように、まず、ステップ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. 10 will be described.
FIG. 15 is a flowchart showing the electric accessory control process.
When the electric accessory control process is executed in step S110 shown in FIG. 10, the process first 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から読み出し、読み出した制御プログラムに従って、図16のフローチャートに示す演出制御処理を実行する。
図16は、演出制御処理を示すフローチャートである。
演出制御処理は、CPU302において実行されると、図16に示すように、まず、ステップS600aの接続機器認証処理に移行する。
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. 16 is a flowchart showing the effect control process.
When the effect control process is executed by the
〔接続機器認証処理〕
ステップS600aでは、接続機器認証処理を実行する。つまり前述した主制御部2aのCPU202と同様に、演出制御部300のCPU302にも、図柄表示部104や音声制御部382およびランプ制御部386などといった各種の機器の接続が可能である。そのため、ユーザやメーカが承認していない機器が不正に接続され、CPU302の誤動作を発生させたり、ROM304のデータが改ざんされたり、盗まれたりする恐れがある。例えば、大当たり時に選択されやすい演出をメーカー側が予め設定した頻度よりも極端に多く出現させたり、あるいは一切出現させないなどの不正を防止するため、CPU302は接続機器の認証を行う。
ここで、この演出制御部300における接続機器認証処理の実行にはアクセス制御装置330が密接に関係するが、その動作は図11に示したように主制御部2aにおけるアクセス制御装置230とほぼ同様である。
すなわち、演出制御部300のCPUコア303は、図11に示すように、まず、ステップS40、S42を経て、接続機器から認証用データを取得し、I/F312を介して、取得した認証用データを用いて接続機器を認証するために用いる検証値Vの生成要求を出力する。なお、ステップS40で取得した認証用データをそのまま検証値Vとしてもよい。
アクセス制御装置330は、検証値Vの生成要求を入力すると、ステップS44を経て、演算部332で検証値Vを生成し、レジスタ334に保持する。
[Device / PLC authentication processing]
In step S600a, a connected device authentication process is executed. That is, various devices such as the
Here, the
That is, as shown in FIG. 11, the
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
このような演出制御部300に対する接続機器の認証処理が終了したなら次にステップS600に移行する。
If the connected device authentication process for the
ステップS600では、主制御部2aから制御コマンドを受信する制御コマンド受信処理を実行し、ステップS602に移行して、受信した制御コマンドのうち変動パターンコマンドを処理する変動パターンコマンド処理を実行し、ステップS604に移行する。
In step S600, a control command reception process for receiving a control command from the
ステップS604では、受信した制御コマンドのうち大当たりコマンドを処理する大当たりコマンド処理を実行し、ステップS606に移行して、受信した制御コマンドのうち変動パターンコマンドおよび大当たりコマンド以外のものを処理するその他コマンド処理を実行し、ステップS600に移行する。
〔制御コマンド受信処理〕
次に、ステップS600の制御コマンド受信処理を説明する。
図17は、制御コマンド受信処理を示すフローチャートである。
制御コマンド受信処理は、ステップS600において実行されると、図17に示すように、まず、ステップ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. 17 is a flowchart showing control command reception processing.
When the control command receiving 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に移行して、受信した制御コマンドに付加されている暗号化認証データを取得し、ステップS706に移行する。 In step S702, it is determined whether or not the received control command is a predetermined command. When it is determined that the received control command is a predetermined command (Yes), the process proceeds to step S704 and the received control command is received. The encrypted authentication data added to is acquired, and the process proceeds to step S706.
ステップS706では、主制御部2aが使用する所定の暗号化アルゴリズムに対応する復号化アルゴリズムにより、取得した暗号化認証データを復号化する復号化処理を実行する。
In step S706, 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
次いで、ステップS708に移行して、ROM304から期待値を読み出し、ステップS710に移行して、復号化して得られた検証値が、読み出した期待値と一致するか否かを判定し、期待値と一致すると判定したとき(Yes)は、ステップS712に移行する。
ステップS712では、ステップS700で受信した制御コマンドをRAM306の受信バッファに格納し、一連の処理を終了して元の処理に復帰させる。
一方、ステップS710で、検証値が期待値と一致しないと判定したとき(No)は、ステップS716に移行する。
ステップS716では、ステップS700で受信した制御コマンドを破棄し、ステップS718に移行する。
Next, the process proceeds to step S708, the expected value is read from the
In step S712, 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 S710 that the verification value does not match the expected value (No), the process proceeds to step S716.
In step S716, the control command received in step S700 is discarded, and the process proceeds to step S718.
ステップS718では、図柄表示部104、音声制御部382およびランプ制御部386に対して、不正通知を行う不正通知演出を指定するための制御コマンド(不正通知演出コマンド)をそれぞれ送信する不正通知処理を実行する。図柄表示部104、音声制御部382およびランプ制御部386では、不正通知演出コマンドを受信すると、不正通知演出を行う。不正通知演出では、例えば、図柄表示部104に通常出現しないキャラクタを出現させたり、キャラクタを通常とは異なる方法で出現させたりする。また、図柄表示部104の輝度や色を変えたり、所定の点滅パターンでランプ384を点滅させたりして通知してもよい。これにより、パチンコホールの従業員がその状態を認識しやすい。また、不正通知演出は、遊技者がその状態を認識しにくい態様で行ってもよいし、逆に、遊技者が認識しやすい態様で行ってもよい。遊技者が認識しやすい態様で行えば、不正行為を中止することが期待できる。
ステップS718の処理が終了すると、一連の処理を終了して元の処理に復帰させる。
In step S718, a fraud notification process for transmitting a control command (fault notification effect command) for designating a fraud notification effect for performing a fraud notification to the
When the process of step S718 ends, the series of processes ends and the original process is restored.
一方、ステップS702で、受信した制御コマンドが予め定められたコマンドでないと判定したとき(No)は、ステップS720に移行して、ステップS700で受信した制御コマンドを受信バッファに格納し、一連の処理を終了して元の処理に復帰させる。
〔変動パターンコマンド処理〕
次に、ステップS602の変動パターンコマンド処理を説明する。
図18は、変動パターンコマンド処理を示すフローチャートである。
変動パターンコマンド処理は、ステップS602において実行されると、図18に示すように、まず、ステップS800に移行する。
On the other hand, when it is determined in step S702 that the received control command is not a predetermined command (No), the process proceeds to step S720, the control command received in step S700 is stored in the reception buffer, and a series of processes is performed. To return to the original process.
[Variation pattern command processing]
Next, the variation pattern command process in step S602 will be described.
FIG. 18 is a flowchart showing the variation pattern command processing.
When the variation pattern command process is executed in step S602, the process first proceeds to step S800 as shown in FIG.
ステップ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の大当たりコマンド処理を説明する。
図18は、大当たりコマンド処理を示すフローチャートである。
大当たりコマンド処理は、ステップS604において実行されると、図18に示すように、まず、ステップ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. 18 is a flowchart showing the 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.
図10に示すように、まず、パチンコ機に電源が投入されると、主制御部2aでは、ステップS102を経て、初期化処理が実行される。初期化処理では、電源オンコマンドが送信される。電源オンコマンドが予め定められたコマンドでない場合、図12に示すようにステップS210を経て、暗号化認証データが付加されることなく演出制御部300および賞球制御部400にそのまま送信される。
As shown in FIG. 10, first, when power is turned on to the pachinko machine, the
演出制御部300では、電源オンコマンドを受信すると、図16に示すようにステップS600aに移行して接続機器認証処理が行われる。接続機器認証処理では、図11に示すステップS40〜S82を経て、アクセス制御装置230により接続機器の認証が行われる。この認証処理において不正な機器が接続されていないと判断したときは、図柄表示部104、音声制御部382およびランプ制御部386に対して、電源オン時の演出用の制御コマンド(具体的には、デモ画面の表示、ランプ384の点灯、音声の出力を指定するための制御コマンド)がそれぞれ送信される。一方、この認証処理において不正な機器が接続されていると判断したときは、図柄表示部104、音声制御部382およびランプ制御部386に対して、不正を報知するための制御コマンド(具体的には、デモ画面の表示、ランプ384の点灯、音声の出力を指定するための制御コマンド)がそれぞれ送信される。これによって、電源投入時において演出制御部300に対する接続機器の正当性を認証することができると共に、不正な機器が接続された場合直ちにこれを報知することができる。
しかしながら、例えば、悪意を有する第三者によって、不正な機器が認証されるように接続機器認証処理を改ざんされてしまう場合がある。
When the
However, for example, a connected device authentication process may be falsified by a malicious third party so that an unauthorized device is authenticated.
例えば、図11に示すステップS58では、アクセス制御装置330のレジスタ336に対して検証値Vが書き込まれている。このとき、レジスタ336に書き込まれるのは、本来、演出制御部300のCPUコア303のレジスタ303cに保持されている検証値Vである。しかしながら、不正な命令コード列によって、レジスタ336に書き込む値をレジスタ303c以外の場所(または、レジスタ303cのうち検証値Vが保持されている領域以外の領域)に記憶された値とすることが可能となる。
For example, in step S <b> 58 shown in FIG. 11, the verification value V is written in the
また、例えば、図11に示すステップS50では、アクセス制御装置330のレジスタ334から検証値Vが読み出されている。このとき、読み出す値をレジスタ334以外の場所(または、レジスタ334のうち検証値Vが保持されている領域以外の領域)に記憶された値とすることが可能となる。
For example, in step S50 shown in FIG. 11, 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
図20は、アクセス制御部338が行うアクセス制御の概要を示す説明図である。なお、図20では、説明の便宜上、構成の一部を省略している。
FIG. 20 is an explanatory diagram showing an outline of access control performed by the
図20に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「0xJKLMNOPQ」(ライト命令)およびアドレス「0x104」であるとする。このとき、正規のROM304には、アドレス「0x104」〜「0x107」に命令コード列「0xJKLMNOPQ」(ライト命令)が記憶されている。
As illustrated in FIG. 20, for example, it is assumed that the permitted instruction code sequence and the permitted address are an instruction code sequence “0xJKLMNOPQ” (write command) 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
図21は、アクセス制御部338が行うアクセス制御の概要を示す説明図である。
FIG. 21 is an explanatory diagram showing an outline of access control performed by the
図21に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「0xABCDEFGH」(リード命令)およびアドレス「0x100」、並びに、命令コード列「0xABCDEFGI」(ライト命令)およびアドレス「0x104」であるとする。このとき、正規のROM304には、アドレス「0x100」〜「0x103」に命令コード列「0xABCDEFGH」(リード命令)が記憶されている。
As illustrated in FIG. 21, for example, the permitted instruction code string and the permitted address include an instruction code string “0xABCDEFGH” (read instruction) and an address “0x100”, and an instruction code string “0xABCDEFGI” (write instruction) and an address “0x104”. ”. At this time, the
CPUコア303が命令コード列を読み出す際、命令コード列にビットエラー(例えば、「1」が「0」となる。)が発生してしまう場合がある。その結果、CPUコア203がアドレス「0x100」〜「0x103」から読み出した命令コード列「0xABCDEFGH」(リード命令)が、例えば、命令コード列「0xABCDEFGI」(ライト命令)に置き換わってしまう場合がある(矢印δ)。この場合、CPUコア303が命令コード列「0xABCDEFGI」(ライト命令)を実行すると、アクセス制御装置330のデータが予期しない形で書き換えられてしまう可能性がある。
When the
しかしながら、このようなライト命令が実行されたとしても(矢印ε)、命令コード列のアドレスが許可アドレスではないので、アクセス制御部338は、レジスタ336へのデータの書込を禁止する(ライト命令を拒否)。
これらの初期化処理が終了すると、主制御部2aでは、ステップS104を経て、次は主制御部2a自身に対する接続機器認証処理が実行される。
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
When these initialization processes are completed, the
この主制御部2aに対する接続機器認証処理も図11に示すステップS40〜S82を経て、アクセス制御装置230により接続機器の認証が行われる。これにより、接続機器の正当性を認証することができる。
そして、この主制御部2aにおいても演出制御部300と同様に悪意を有する第三者によって不正な機器が認証されるように接続機器認証処理を改ざんしようとした場合には、演出制御部300におけるアクセス制御装置330と同様にその主制御部2aのアクセス制御装置230がその不正を検出して回避することができる。
In the connected device authentication process for the
In the
次に、パチンコ機で遊技を行う場合を説明する。 Next, a case where a game is played with a pachinko machine will be described.
主制御部2a側においても接続機器が認証されると、図10に示すように、主制御部2aにより、ステップS106〜S114を経て、入賞判定処理、大当たり判定処理、電動役物制御処理および制御コマンド送信処理が所定周期で繰り返し実行される。これにより、パチンコ機は、遊技可能な状態となる。遊技者は、貸し出しを受けた遊技球をパチンコ機に装填し、発射部482を操作して遊技球を遊技盤101に発射することにより遊技を行うことができる。
When the connected device is also authenticated on the
遊技者により発射された遊技球が始動入賞口105に入賞すると、主制御部2aでは、図13に示すステップS306、S312を経て、その入賞タイミングでアクセス制御装置230から大当たり決定乱数が読み出される。この大当たり決定乱数も、上記接続機器認証処理の場合と同様に、アクセス制御装置230によりアクセスが許可された場合にのみ、読み出すようにしてもよい。すなわち、大当たり決定乱数の読出に関する命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、読み出すようにしてもよい。その他遊技制御に用いる乱数についても同様である。そして、図14に示すステップS404、S406を経て、取得された乱数値が大当たり値と一致していれば、大当たりとなる。
When the game ball launched by the player wins the
大当たりとなると、図14に示すステップS410、S412を経て、大当たり時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、大当たり図柄を指定するための図柄指定コマンドおよび大当たりリーチコマンドが送信される。大当たりリーチコマンドが予め定められたコマンドでない場合、図12に示すステップS210を経て、暗号化認証データが付加されることなく演出制御部300にそのまま送信される。
When the jackpot is reached, the stop symbol mode and the variation pattern at the jackpot are determined through steps S410 and S412 shown in FIG. 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. If the jackpot reach command is not a predetermined command, it passes through step S210 shown in FIG. 12 and is transmitted as it is to the
演出制御部300では、大当たりリーチコマンドを受信すると、図18に示すステップS802〜S812を経て、受信した大当たりリーチコマンドに基づいて大当たりリーチ変動時の処理が実行される。
When receiving the jackpot reach command, the
主制御部2aでは、図14に示すステップS414、S424を経て、所定の変動パターンで演出図柄を変動表示させ、演出図柄の一部をリーチ図柄で停止させた後に大当たり図柄で演出図柄を停止させる。演出図柄が停止すると、制御コマンド送信処理では、大当たり開始コマンドが送信される。大当たり開始コマンドが予め定められたコマンドでない場合、図12に示すステップS210を経て、暗号化認証データが付加されることなく演出制御部300にそのまま送信される。
In the
演出制御部300では、大当たり開始コマンドを受信すると、図19に示すステップS902を経て、受信した大当たり開始コマンドに基づいて大当たり演出開始時の処理が実行される。
In the
大当たり中は、最大ラウンド数を上限として所定条件を満たすまでラウンドが継続される。制御コマンド送信処理では、ラウンドの開始時および終了時に大当たりコマンドが送信される。大当たりコマンドが予め定められたコマンドでない場合、図12に示すステップ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. If the jackpot command is not a predetermined command, the encrypted authentication data is transmitted to the
また、大当たり中は、大入賞口109が所定の開閉パターンで開放し、大入賞口109に遊技球が入賞すると、遊技球1個につき所定数の遊技球が賞球として払い出される。
In addition, during the big hit, the big winning
そして、最終ラウンドが終了すると、制御コマンド送信処理では、大当たり終了コマンドが送信される。大当たり終了コマンドが予め定められたコマンドでない場合、図12に示すステップS210を経て、暗号化認証データが付加されることなく演出制御部300にそのまま送信される。 When the final round ends, a jackpot end command is transmitted in the control command transmission process. If the jackpot end command is not a predetermined command, it passes through step S210 shown in FIG.
演出制御部300では、大当たり終了コマンドを受信すると、図19に示すステップS914を経て、受信した大当たり終了コマンドに基づいて大当たり演出終了時の処理が実行される。
一方、図14に示すステップS404、S406を経て、取得された乱数値が大当たり値と一致しなければ、はずれとなる。
In the
On the other hand, if the acquired random number value does not match the jackpot value through steps S404 and S406 shown in FIG.
はずれとなると、ステップS418、S420を経て、はずれ時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、はずれ図柄(または、はずれ図柄となる旨)を指定するための図柄指定コマンドおよびはずれリーチコマンドが送信される。これに対し、リーチ演出を行わないことが決定されると、制御コマンド送信処理では、同図柄指定コマンドおよびはずれ非リーチコマンドが送信される。はずれリーチコマンドまたははずれ非リーチコマンドが予め定められたコマンドでない場合、図12に示すステップ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. If the loss reach command or the loss non-reach command is not a predetermined command, the encrypted authentication data is not added to the
演出制御部300では、はずれリーチコマンドまたははずれ非リーチコマンドを受信すると、図18に示すステップS802〜S812を経て、受信したはずれリーチコマンドまたははずれ非リーチコマンドに基づいてはずれ変動時の処理が実行される。
When the
一方、遊技が中断されると、主制御部2aでは、客待ちデモ実行処理が実行される。そして、制御コマンド送信処理では、客待ちデモ開始コマンドが送信される。客待ちデモ開始コマンドが予め定められたコマンドでない場合、図12に示すステップS210を経て、暗号化認証データが付加されることなく演出制御部300にそのまま送信される。
On the other hand, when the game is interrupted, the
演出制御部300では、客待ちデモ開始コマンドを受信すると、客待ちデモ開始時の処理として、図柄表示部104、音声制御部382およびランプ制御部386に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
When the
その後、遊技が再開されると、制御コマンド送信処理では、客待ちデモ停止コマンドが送信される。客待ちデモ停止コマンドが予め定められたコマンドでない場合、図12に示すステップS210を経て、暗号化認証データが付加されることなく演出制御部300にそのまま送信される。
Thereafter, when the game is resumed, a customer waiting demonstration stop command is transmitted in the control command transmission process. If the customer waiting demonstration stop command is not a predetermined command, the encrypted authentication data is not added to the
演出制御部300では、客待ちデモ停止コマンドを受信すると、客待ちデモ終了時の処理として、図柄表示部104、音声制御部382およびランプ制御部386に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
When the
なお、以上は、予め定められたコマンドでない場合、暗号化認証データを付加されることなくそのまま送信する場合について説明したが、暗号化認証データの代わりにダミー値のデータを付加して送信してもよい。この場合、認証部は、周辺部を介して、ダミー値のデータが付加された制御コマンドを受信する。それを受信した認証部では、ダミー値のデータをそのまま周辺部へ送信してもよいし、さらに別のダミー値のデータを生成してそれを周辺部へ送信してもよい。 In the above description, when the command is not a predetermined command, the case where the encrypted authentication data is transmitted without being added has been described. However, instead of the encrypted authentication data, dummy value data is added and transmitted. Also good. In this case, the authentication unit receives the control command to which the dummy value data is added via the peripheral unit. The authentication unit that has received it may transmit the dummy value data as it is to the peripheral unit, or may generate another dummy value data and transmit it to the peripheral unit.
以上の動作において、制御コマンドが予め定められたコマンドである場合、図12に示すステップS204〜S208を経て、暗号化認証データが付加されて周辺部3aの一例である演出制御部300に送信される。
〔アクセス制御装置を設けることによる効果〕
In the above operation, when the control command is a predetermined command, encrypted authentication data is added and transmitted to the
[Effects of providing an access control device]
このようにして、本実施の形態では、演出制御部300のアクセス制御装置330は、レジスタ334、336と、演出制御部300のCPUコア303が実行する命令コード列およびそのアドレスをI/F312から入力する入力部331と、入力部331で入力した命令コード列およびアドレスに基づいて、CPU302によるレジスタ334、336へのアクセスを制御するアクセス制御部338とを備える。
In this way, in the present embodiment, the
これにより、レジスタ334、336のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、演出制御部300による演出に関する不正行為やエラーに起因する不正動作が行われる可能性を低減することができる。また、CPU302とは別体のアクセス制御装置330がアクセス制御機能を実現するので、CPUコア303自体が不正動作検出処理を行う必要がなく、従来に比して、開発や設計の難易度が高くなることを抑制することができる。さらに、命令コード列およびそのアドレスに基づいてアクセスが制御されるので、ROM304と同等容量のテーブルを用意する必要がなく、従来に比して、データ容量が増大することを抑制することができる。
As a result, the possibility that the data in the
さらに、DIP等からなるワンチップ型のマイクロプロセッサである演出制御部300のCPU302を採用する場合において、演出制御部300のCPUコア303が不正動作検出処理を行う構成では、CPU302が丸ごと交換されるような不正行為が行われると、CPUコア303自体が交換されてしまうことになるので、CPU302の正当性を認証することはできない。これに対し、本実施の形態は、アクセス制御装置330がCPU302とは別体に設けられているので、そのような不正行為が行われても、CPU302の正当性を認証することができる。
Further, in the case where the
さらに、DIP等からなるワンチップ型のマイクロプロセッサである演出制御部300のCPU302を採用する場合において、アクセス制御装置330のアクセス制限機能を実現する回路等を演出制御部300のCPU302に内蔵する構成では、CPU302を新たに開発、設計等しなければならず、既存のCPUには適用することができない。これに対し、本実施の形態では、アクセス制御装置330を演出制御部300のCPU302に接続するだけでよいので、既存のCPUにも適用することができる。
Further, in the case where the
さらに、本実施の形態では、アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ334、336へのアクセスを許可する。
Furthermore, in the present embodiment, the
これにより、不正に書き換えられた命令コード列、ビットエラーによって内容が変化した命令コード列、または不正なアドレスに記憶された命令コード列が実行されることにより、レジスタ334、336のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
さらに、本実施の形態では、アクセス制御装置330によるアクセス制御の状況に応じて不正通知を行う。
これにより、演出制御部300に対して不正動作が行われた可能性があることを把握することができる。なお、本実施の形態では、演出制御部300と共に、主制御部2aにもアクセス制御装置230を設けたため、演出制御部300のみならず、主制御部2aのCPU202が不正動作する可能性も低減することができるが、他の構成により主制御部2aの不正動作を回避できれば、この主制御部2a側のアクセス制御装置230を省略しても良い。
〔第2の実施の形態〕
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
Further, in the present embodiment, fraud notification is performed according to the status of access control by the
As a result, it is possible to grasp that there is a possibility that an illegal operation has been performed on the
[Second Embodiment]
次に、本発明の第2の実施の形態を図面を参照しながら説明する。図22ないし図25は、本発明に係る遊技機およびアクセス制御プログラム、並びに遊技制御方法の第2の実施の形態を示す図である。 Next, a second embodiment of the present invention will be described with reference to the drawings. 22 to 25 are diagrams showing a gaming machine, an access control program, and a game control method according to a second embodiment of the present invention.
本実施の形態は、上記第1の実施の形態に対して、主制御部2a及び演出制御部300のアクセス制御装置230,330の各アクセス制御部238、338が、各CPUコア203、303が実行する命令コード列およびそのアドレスに加えて、命令コード列から算出されたチェック値に基づいてアクセスを制御する点が異なる。なお、以下、上記第1の実施の形態と異なる部分についてのみ説明し、上記第1の実施の形態と重複する部分については同一の符号を付して説明を省略する。
〔主制御部の構成〕
まず、主制御部2aの構成を説明する。
図22は、主制御部2aの構成を示すブロック図である。
This embodiment is different from the first embodiment in that the
[Configuration of main controller]
First, the configuration of the
FIG. 22 is a block diagram showing a configuration of the
主制御部2aのCPU202は、図22に示すように、CPUコア203、ROM204、RAM206、セキュリティ検査回路208、I/F210、212およびタイマ214のほか、命令コード列からチェック値を算出するチェック値算出部218を有して構成されている。これらは、バス216を介して相互に接続されている。
As shown in FIG. 22, 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
一方、図23は、演出制御部300の構成を示すブロック図である。
On the other hand, FIG. 23 is a block diagram showing a configuration of the
演出制御部300のCPU302は、図23に示すように、CPUコア303、ROM304、RAM306、I/F310、312のほか、主制御部2aと同様に命令コード列からチェック値を算出するチェック値算出部318を有して構成されている。これらは、バス316を介して相互に接続されている。
As shown in FIG. 23, the
チェック値算出部318は、命令コード列をROM304から取得する。そして、取得した命令コード列から、命令コード列の正当性を検査するチェック値を算出する。チェック値は、アクセス制御部338によるアクセス制御に用いられる。ここで、チェック値とは、主制御部2aのそれと同様に、ROM304に記憶された一部若しくはすべての命令コード若しくは命令コード列、1つの命令コードの一部またはそれらの組み合わせから算出される値である。チェック値算出部318は、例えば、ROM304に記憶されたすべての命令コード列に対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査(CRC(Cyclic Redundancy
Check))またはチェックサム等の誤り検出演算を行ってチェック値を算出する。このように、チェック値は、ROM304に実際に記憶されている命令コード列から算出される。したがって、チェック値を用いて照合を行うことにより、ROM304に記憶された命令コード列の不正な書き換えや、ROM304の不正な差し替え等を検出することができる。
The check
Check)) or error detection calculation such as checksum is performed to calculate a check value. In this way, the check value is calculated from the instruction code string actually stored in the
入力部331は、CPUコア303が実行する命令コード列およびそのアドレス、並びにチェック値算出部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に、あらかじめ期待値を記憶させずに、他の構成部から入力することとすれば、ROM304のチェック値を後発的に変更することが可能となる。
The expected value that the
〔チェック値算出処理〕
次に、これら各チェック値算出部218、318で実行されるチェック値算出処理を説明する。
図24は、チェック値算出処理を示すフローチャートである。
チェック値算出部218、318は、それぞれチェック値算出処理を実行すると、図24に示すように、まず、ステップSS600に移行する。
[Check value calculation processing]
Next, a check value calculation process executed by each of these check
FIG. 24 is a flowchart showing the check value calculation process.
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、304から命令コード列を読み出し、ステップSS604に移行して、読み出した命令コード列に対して上記誤り検出演算を行ってチェック値を算出し、ステップSS606に移行して、算出したチェック値をアクセス制御部238、338に送信し、チェック値算出処理を終了する。
〔アクセス制御処理〕
次に、各アクセス制御部238、338で実行されるアクセス制御処理を説明する。
図25は、アクセス制御処理を示すフローチャートである。
アクセス制御部238、338は、アクセス制御処理を実行すると、図25に示すように、まず、ステップSS700に移行する。
In step SS602, instruction code strings are read from the
[Access control processing]
Next, access control processing executed by the
FIG. 25 is a flowchart showing the access control process.
When executing the access control process, the
ステップSS700では、レジスタ234、334、236、336に対するリード要求をI/F212、312から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップSS702に移行して、CPUコア203、303が実行する命令コード列およびそのアドレスを入力部231、331から入力し、ステップSS704に移行する。
In step SS700, it is determined whether 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、318に送信し、ステップSS710に移行して、その応答としてチェック値を入力部231、331から入力し、ステップSS712に移行する。
In step SS708, a check value acquisition request is transmitted to the check
ステップSS712では、それぞれアクセス制御部238、338に記憶されている期待値を読み出したり、CPUコア203、303や期待値算出部が生成した期待値を受信したりすることによりチェック値の期待値を取得し、ステップSS714に移行する。
In step SS712, the expected values 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、334、236、336が保持しているデータを読み出し、ステップSS718に移行して、読み出したデータをI/F212、312に出力する。出力されたデータは、I/F212、312を介してCPUコア203、303のレジスタ203c、303cに保持される。
In step SS716, the data held in the
次いで、ステップSS720に移行して、レジスタ236、336に対するライト要求をI/F212、312から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップSS722に移行して、CPUコア203、303が実行する命令コード列およびそのアドレスを入力部231、331から入力し、ステップSS724に移行する。
Next, the process proceeds to step SS720, where it is determined whether a write request for the
ステップSS724では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップSS726に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップSS728に移行する。
ステップSS728〜SS732では、ステップSS708〜SS712と同様の処理を実行し、ステップSS734に移行する。
In step SS724, 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 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.
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、303のレジスタ203c、303cが保持しているデータをI/F212、312から入力し、ステップSS738に移行して、入力したデータをレジスタ236に書き込み、アクセス制御処理を終了する。
In step SS736, the data held in the
一方、ステップSS734で、チェック値が期待値と一致していないと判定したとき(No)、ステップSS726で、許可アドレスでないと判定したとき(No)、ステップSS724で、許可命令コード列でないと判定したとき(No)、およびステップSS720で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ236、336にデータを書き込まずに、アクセス制御処理を終了する。このとき、CPUコア203、303は、アクセス制御装置230、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)はいずれも、レジスタ234、334、236、336が保持しているデータをI/F212、312に出力せずに、ステップSS720に移行する。このとき、CPUコア203、303のレジスタ203c、303cに非正当値が保持されるが、その値が所定値である場合、CPUコア203、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. The data held in the
[Effect of this embodiment]
このようにして、本実施の形態では、演出制御部300のCPU302は、ROM304に記憶された命令コード列からチェック値を算出するチェック値算出部318を備え、アクセス制御部338は、入力部331で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部331で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ334、336へのアクセスを許可する。
As described above, in the present embodiment, the
これにより、ROM304に記憶された命令コード列が不正に書き換えられたことを検出することができる。また、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、不正動作が行われる可能性をさらに低減することができる。なお、チェック値の照合は、命令コード列およびアドレスの照合と組み合わせて行うので、チェック値の算出に比較的処理負荷が軽い誤り検出演算(例えば、パリティチェック)を用いても、一定の精度を得ることができる。
なお、本実施の形態では、演出制御部300と共に、主制御部2aにもアクセス制御装置230を設けると共に、それぞれにチェック値算出部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
[Other Embodiments]
上記第2の実施の形態において、アクセス制御装置330は、命令コード列からチェック値を算出するように構成したが、これに限らず、次の3つの構成を採用することができる。
(1)第1の構成
In the second embodiment, the
(1) First configuration
第1の構成は、命令コード列に代えて、ROM304に記憶されたデータ(以下、第1算出基礎データという。)からチェック値を算出する。第1算出基礎データとは、例えば、ROM304に記憶された所定の固定値である。なお、第1算出基礎データは、固定値に限らず、変動前後のデータ値を正確に予測可能な変動データであってもよい。変動前後のデータ値を正確に予測可能とは、具体的には、例えば、変動範囲が定まっている場合や変動規則が定まっている場合をいう。
チェック値算出部318は、第1算出基礎データをROM304から読み出し、読み出した第1算出基礎データからチェック値を算出する。
In the first configuration, a check value is calculated from data stored in the ROM 304 (hereinafter referred to as first calculation basic data) instead of the instruction code string. The first calculation basic data is, for example, a predetermined fixed value stored in the
The check
アクセス制御部338は、あらかじめ第1算出基礎データの期待値を記憶している。アクセス制御部338は、期待値からチェック値を算出し、入力部331で入力したチェック値が、算出したチェック値と所定関係にあるか否かを判定する。その他、入力部331で入力したチェック値が期待値と所定関係にあるか否かを判定してもよい。なお、命令コード列から算出したチェック値と、第1算出基礎データから算出したチェック値の両方に基づいてアクセス制御を行ってもよい。
これにより、ROM304が不正なものに交換されたことを検出することができる。
(2)第2の構成
The
As a result, it is possible to detect that the
(2) Second configuration
第2の構成は、命令コード列に代えて、CPUコア303が実行する命令コード列の実行結果(以下、第2算出基礎データという。)からチェック値を算出する。第2算出基礎データとは、例えば、CPUコア303のフラグレジスタの値である。なお、第2算出基礎データは、フラグレジスタの値に限らず、命令コード列が正しく実行されたときに第1の値を返し、それ以外は第2の値を返す関数の戻り値であってもよい。
チェック値算出部318は、第2算出基礎データをフラグレジスタ等から取得し、取得した第2算出基礎データからチェック値を算出する。
In the second configuration, instead of the instruction code string, a check value is calculated from the execution result of the instruction code string executed by the CPU core 303 (hereinafter referred to as second calculation basic data). The second calculation basic data is, for example, the value of the flag register of the
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のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
(3)第3の構成
第3の構成は、命令コード列に代えて、命令コード列のアドレス(以下、第3算出基礎データという。)からチェック値を算出する。
チェック値算出部318は、第3算出基礎データをバス316等から取得し、取得した第3算出基礎データからチェック値を算出する。
As a result, there is a possibility that the data in the
(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.
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の実施の形態において、アクセス制御部338は、レジスタ334、336へのアクセスを制御するように構成したが、これに限らず、レジスタ234、236のうち特定のアドレス空間へのアクセスを制御するように構成することもできる。
In the first and second embodiments, the
これにより、レジスタ334、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.
また、上記第2の実施の形態において、チェック値算出部218、318は、チェック値の取得要求に応じてチェック値を算出するように構成したが、これに限らず、所定条件が成立したときにチェック値を算出し、算出したチェック値をアクセス制御部238、338に送信するように構成することもできる。
In the second embodiment, the check
また、上記第1および第2の実施の形態において、CPU202、302は、それぞれ2つのI/F210、212、310、312を設けて構成したが、これに限らず、1つのI/Fのみを設けて構成してもよいし、さらに多数のI/Fを設けて構成してもよい。
In the first and second embodiments, each of the
また、上記第1および第2の実施の形態において、CPU202、302は、制御コマンドとは独立に、命令コード列およびそのアドレスを出力するように構成したが、これに限らず、命令コード列およびそのアドレスを制御コマンドに付加して出力するように構成することもできる。この場合、入力部231、331は、制御コマンドを入力し、入力した制御コマンドに付加されている命令コード列およびそのアドレスを入力する。命令コード列およびそのアドレスは、任意または特定の制御コマンドに付加することができる。
In the first and second embodiments, the
制御コマンドに付加する構成において、アクセス制御装置230、330のレジスタ234、334から乱数を読み出す場合、制御コマンドの種類によっては、命令コード列およびそのアドレスの出力タイミングと、乱数の読出タイミングとが一致しないことがある。例えば、大当たり中に送信される大当たりコマンドに付加する場合、命令コード列およびそのアドレスは大当たり中に出力されるのに対し、大当たり決定乱数は大当たりの発生前に読み出さなければならない。そこで、アクセス制御装置230、330の構成として、例えば、次の2つの構成を採用することができる。
When a random number is read from the
第1の構成は、制御コマンドの送信時に認証が得られたときは、所定許可回数のアクセスに限り認証を行わない。所定許可回数は、認証が得られた後最初のアクセスから計数を開始してもよいし、認証が得られた後所定回数のアクセスを待って計数を開始してもよい。後者の場合、計数開始前のアクセスは禁止される。したがって、認証後に所定回数のダミーアクセスが必要となり、この回数が分からなければ、認証が得られてもレジスタ234、236へのアクセスができないので、不正動作が行われる可能性を低減することができる。
In the first configuration, when authentication is obtained at the time of transmission of the control command, authentication is not performed only for access of a predetermined 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. 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の実施の形態において、図10ないし図15のフローチャートに示す遊技制御処理を実行するにあたってはいずれも、ROM304にあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをRAM206に読み込んで実行するようにしてもよい。図24および図25のフローチャートに示す処理についても同様である。
In the first and second embodiments described above, 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 media, including any storage media that can be read by a computer regardless of electronic, magnetic, optical, or other reading methods.
図26および図27は、パチンコ機の認証動作のシーケンスを示す図である。制御コマンドが予め定められたコマンドである場合、暗号化認証データが付加された後、主制御部2aから送信される。
26 and 27 are diagrams showing a sequence of authentication operations of the pachinko machine. When the control command is a predetermined command, the encrypted authentication data is added and then transmitted from the
制御コマンドが格納され(S1)、その制御コマンドが予め定められたコマンドである場合、検証値を含む第1の認証データが生成される(S2)。生成された第1の認証データは、所定の暗号化アルゴリズムにより暗号化される(S3)。そして、第1の認証データが付加された制御コマンドは、主制御部2aから周辺部3aへ送信される(S4、S5)。
When a control command is stored (S1) and the control command is a predetermined command, first authentication data including a verification value is generated (S2). The generated first authentication data is encrypted by a predetermined encryption algorithm (S3). Then, the control command to which the first authentication data is added is transmitted from the
第1の認証データが付加された制御コマンドは周辺部によって受信される(S6)。すると、第1の認証データが付加された制御コマンドは、バス3cを介して周辺部3aから認証部3bへ送信される(S7、S8)。
また、制御コマンドに基づく処理が、周辺部3aにおいて行われる(S9)。
The control command to which the first authentication data is added is received by the peripheral part (S6). Then, the control command to which the first authentication data is added is transmitted from the
Further, processing based on the control command is performed in the
第1の認証データが付加された制御コマンドは、認証部3bによって受信される(S10)。認証部3bでは、復号化処理が行われた後、第1の認証データを用いた認証処理が行われる(S11)。認証OKの場合、そのまま処理が継続される。
認証OKでない場合(S13においてNo)、バス3cを介して報知信号が出力される(S14、S15)。この報知信号は、周辺部3aによって受信される(S16)。そして、主制御部2aが正当でないことが報知される(S17)。
図25に移行し、認証部3bでは、第1の認証データに基づき、第2の認証データを生成する(S18)。生成された第2の認証データは認証部3bから周辺部3aへ送信される(S19、S20)。第2の認証データは周辺部3aによって受信される(S21)。周辺部3aでは、復号化処理が行われた後(S22)、第2の認証データを用いた認証処理が行われる(S23)。認証OKの場合、そのまま処理が継続される(S24においてYes)。
認証OKでない場合(S24においてNo)、主制御部2aが正当でないことが報知される(S25)。
The control command to which the first authentication data is added is received by the
If the authentication is not OK (No in S13), a notification signal is output via the
Moving to FIG. 25, the
If the authentication is not OK (No in S24), it is notified that the
ここで、認証部3bまたは周辺部3aにおける認証処理について、より詳細に説明する。例えば、検証値が「0x12」である場合において、所定の暗号化アルゴリズムにより、下式(1)のように暗号化認証データ「0x21」が得られる。
0x21 = 0x12 xor 0x33 …(1)
Here, the authentication process in the
0x21 = 0x12 xor 0x33 (1)
演出制御部300では、予め定められたコマンドを受信すると、図25に示すステップS704、S706を経て、受信したコマンドに付加されている暗号化認証データが取得され、取得された暗号化認証データが所定の復号化アルゴリズムにより復号化される。
上式(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)
検証値が得られると、ステップS708を経て、主制御部200で生成された検証値と同一の値となる期待値「0x12」が読み出される。そして、ステップS710を経て、復号化して得られた検証値が期待値と照合される。このとき、上式(2)で得られた検証値「0x12」は期待値「0x12」と一致するので、認証が得られ、ステップS712を経て、制御コマンドが受信バッファに格納される。そして、受信した制御コマンドに基づいて処理が実行される。
When the verification value is obtained, an expected value “0x12” that is the same value as the verification value generated by the
これに対し、主制御基板と演出制御基板との間に不正な制御基板が接続されるといった不正行為が行われた場合は、不正な制御基板が制御コマンドを演出制御基板に送信しても、演出制御部300では、受信したコマンドに暗号化認証データが付加されていないので、検証値が期待値と一致せず、認証が得られない可能性が高い。その結果、ステップS716、S718を経て、受信した制御コマンドが破棄され、不正通知処理が実行される(つまり、主制御部が正当でないことが報知される)。
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
なお、周辺部における上記制御コマンドの認証部への送信、周辺部における上記制御コマンドに基づく処理について、処理が行われる順序は問わない。すなわち、図26に示すように、上記制御コマンドの認証部への送信が先に行なわれ、その後に上記制御コマンドに基づく処理が行なわれるという順序でも良いし、その逆に、上記制御コマンドに基づく処理が先に行なわれ、その後に上記制御コマンドの認証部への送信が行なわれるという順序でも良い。 It should be noted that the order in which the processes are performed is not limited for the transmission of the control command to the authentication unit in the peripheral part and the process based on the control command in the peripheral part. That is, as shown in FIG. 26, the control command may be transmitted to the authentication unit first, and then the process based on the control command may be performed, or 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.
同様に、周辺部における上記制御コマンドに基づく処理、周辺部における上記第2の認証データを用いた認証処理、についても、処理が行われる順序は問わない。すなわち、上記制御コマンドに基づく処理が先に行なわれ、その後に上記第2の認証データを用いた認証処理が行なわれるという順序でも良いし、その逆の順序でも良い。
〔認証動作のタイミング〕
Similarly, the order in which processing is performed does not matter for the processing based on the control command in the peripheral portion and the authentication processing using the second authentication data in the peripheral portion. In other words, the processing based on the control command may be performed first, and then the authentication processing using the second authentication data may be performed, or vice versa.
[Timing of authentication operation]
ところで、主制御部2aは、通常、複数の制御コマンドを、間隔を置いて出力する。以下では、主制御部2aが制御コマンドAを出力した後に、制御コマンドBを出力する場合を例に挙げて、主制御部2aが複数の制御コマンドを、間隔を置いて出力する場合の認証動作のタイミングについて、図28および図29を用いて説明する。
Incidentally, the
図28は、主制御部2aが制御コマンドAを出力した後に、制御コマンドBを出力する場合の、演出または前処理もしくは後処理が実行されるタイミングと、周辺部3aが認証処理を行なうタイミングとを示す第1の図である。図29は、主制御部2aが制御コマンドAを出力した後に、制御コマンドBを出力する場合の、演出または前処理もしくは後処理が実行されるタイミングと、周辺部3aが認証処理を行なうタイミングとを示す第2の図である。
FIG. 28 shows the timing when the production or pre-processing or post-processing is executed when the
主制御部2aは、制御コマンドAを出力する際、それとともに制御コマンドAに関連付けられている第1の認証データを出力する。また、主制御部2aは、制御コマンドBを出力する際、それとともに制御コマンドBに関連付けられている第1の認証データを出力する。
When the
このとき、制御コマンドAに関連付けられている第1の認証データに基づいて生成された第2の認証データについての認証動作が行なわれた後に、主制御部2aから制御コマンドBが出力される場合がある。例えば、図28に示すように、制御コマンドAに基づく演出または前処理もしくは後処理の実行期間t41の後に、制御コマンドAに対応する第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t42において判断される。その後、制御コマンドBに基づく演出または前処理もしくは後処理の実行期間t43の後に、制御コマンドBに対応する第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t44において判断される。
At this time, when the control command B is output from the
それに対して、主制御部2aは、制御コマンドAに関連付けられている第2の認証データについての認証動作が行なわれる前に、主制御部2aから制御コマンドBが出力される場合がある。その場合、図29に示すように、制御コマンドBに基づく演出または前処理もしくは後処理の実行期間t42’の後に、制御コマンドAに対応する第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t43’において判断される。その後、制御コマンドBに対応する第2の認証データに基づいて主制御部2aが正当であるか否かについて期間t44’において判断される。
On the other hand, the
いずれにしても、図28および図29から明らかなように、周辺部3aは、制御コマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、その制御コマンドに対応する第2の認証データに基づいて主制御部2aが正当であるか否かを判断する。
In any case, as is clear from FIGS. 28 and 29, the
上述したように、本実施の形態のパチンコ機は、周辺部3aとは別に、主制御部2aが正当であるか否かを判断するために用いる第2の認証データを生成する認証部3bを有するので、周辺部3aの負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行なったりしてセキュリティの強度を従来よりも大きくして主制御部2aが正当であるか否かを判断することができる。
As described above, the pachinko machine according to the present embodiment includes the
また、周辺部3aは、制御コマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、その制御コマンドとともに主制御部2aから出力される第1の認証データに基づいて生成された第2の認証データにより、主制御部2aが正当であるか否かを判断する。そのため、認証データの容量が大きくなったり、複雑な演算処理を行なったりしても、認証部3bは、周辺部3aの動作とは独立して第2の認証データを生成することができる。したがって、本実施の形態のパチンコ機は、セキュリティの強度を従来よりも大きくして主制御部2aが正当であるか否かを判断することができる。
Further, the
なお、上述した実施の形態では、周辺基板3は、周辺部3aと認証部3bとの間の信号授受に用いられる唯一の通信経路であるバス3cを有している。しかしながら、図28に示すように、周辺基板3は、バス3cを有するのではなく、周辺部3aと認証部3bとの間の信号授受に用いられる二本の通信経路であるバス3dとバス3eとを有していてもよい。その場合、周辺部3aは第1の認証データを通信経路の一方(例えばバス3d)を介して認証部3bに出力し、認証部3bは、主制御部2aが正当であるか否かについての判断するために用いる第2の認証データを通信経路の他方(例えばバス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]
上述した遊技機においては、以下のような認証方法が採用されている。すなわち、上記遊技機に適用され、遊技に関する演出または前記演出の前処理もしくは後処理を制御するための制御コマンドと、自らが正当であることを認証させるための第1の認証データとを出力する主制御部と、前記制御コマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御する周辺部とを備える遊技機における認証方法であって、前記データ処理手段に接続された機器の認証を行う接続機器認証ステップ(例えば、図10のS104に対応)と、前記データ処理手段が実行する命令に関する情報を外部に出力する出力ステップと、前記命令に関する情報を前記出力手段から入力する入力ステップと、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップと、を含み、さらに、認証部が、前記第1の認証データを、前記周辺部を介して取得する取得ステップ(例えば、図26のS8、S10に対応)と、前記取得ステップにおいて取得した第1の認証データに基づいて前記主制御部が正当であるか否かを判断するステップ(例えば、図26のS12に対応)と、前記主制御部が正当であると判断した場合には前記主制御部が正当であるか否かを判断するためのデータでありかつ前記第1の認証データよりも簡単な暗号化処理が施された第2の認証データを前記第1の認証データに基づいて生成し、前記第2の認証データを前記周辺部に出力するステップ(例えば、図27のS18〜S21に対応)とを含み、前記主制御部が正当であるか否かを、前記第2の認証データに基づいて判断する、中間処理だけを行うようにした認証方法が採用されている。この認証方法を採用する場合、データ処理手段であるCPUとアクセス制御装置とによる接続機器認証を行うほか、周辺部とは別に認証部を設け、第1の認証データに基づいて主制御部を認証し、主制御部が正当であると判断した場合には、第2の認証データを生成し、この第2の認証データを用いて周辺部が主制御部をさらに認証するので、認証処理全てを周辺部で行う場合に比べて周辺部の負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行なったりしてセキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。また、前記周辺部が、前記主制御部が正当でないと判断された場合、その旨を報知するステップ(例えば、図26のS17、図27のS25に対応)をさらに含むことにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。
In the gaming machine described above, the following authentication method is employed. That is, it is applied to the gaming machine, and outputs a control command for controlling a game-related effect or pre-processing or post-processing of the effect, and first authentication data for authenticating itself. An authentication method in a gaming machine comprising a main control unit and a peripheral unit that controls execution of the effect or the pre-processing or post-processing based on the control command, and authentication of a device connected to the data processing means Connected device authentication step (for example, corresponding to S104 in FIG. 10), an output step for outputting information related to a command executed by the data processing means to the outside, and an input step for inputting information related to the command from the output means And access to the storage means by the data processing device based on information about the command input in the input step It includes an access control step of controlling, the further authentication unit, the first authentication data, and acquiring through the peripheral portion (e.g., corresponding to S8, S10 in FIG. 26), the acquisition A step (for example, corresponding to S12 in FIG. 26) for determining whether or not the main control unit is valid based on the first authentication data acquired in the step, and a determination that the main control unit is valid In this case, the second authentication data which is data for determining whether or not the main control unit is valid and which has been subjected to a simpler encryption process than the first authentication data is used as the first authentication data. Generating based on authentication data and outputting the second authentication data to the peripheral part (for example, corresponding to S18 to S21 in FIG. 27), and whether or not the main control part is valid , The second authentication Determined based on the over data, authentication method to perform only intermediate processing is employed. When this authentication method is adopted, connected device authentication is performed by the CPU as the data processing means and the access control device, and an authentication unit is provided separately from the peripheral unit, and the main control unit is authenticated based on the first authentication data. However, if the main control unit determines that it is valid, the second authentication data is generated, and the peripheral unit further authenticates the main control unit using the second authentication data. Compared to the case where it is performed at the peripheral part, the burden on the peripheral part is reduced, the authentication data capacity is increased, or complicated arithmetic processing is performed to increase the security strength compared to the conventional one, and the main control part is valid. It can be determined whether or not there is. In addition, the peripheral portion further includes a step (for example, corresponding to S17 in FIG. 26 and S25 in FIG. 27) of notifying that when the main control portion is not valid, Employees and players can easily recognize the status.
そして、前記制御コマンドに基づく前記演出または前記前処理もしくは後処理が実行される期間の後に前記主制御部が正当であるか否かを判断するようにしてもよい。制御コマンドに基づく演出または前処理もしくは後処理が実行される期間の後に、主制御部が正当であるか否かを判断することにより、認証データの容量が大きくなったり、複雑な演算処理を行なったりしても、周辺部の動作とは独立して第2の認証データを生成することができる。したがって、セキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。
〔プログラム〕
And it may be made to judge whether the main control part is right after the period based on the production based on the control command, or the pre-processing or post-processing. By determining whether or not the main control unit is valid after the period of the presentation based on the control command or the pre-processing or post-processing, the capacity of the authentication data is increased or the complicated arithmetic processing is performed. Alternatively, the second authentication data can be generated independently of the operation of the peripheral part. 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とアクセス制御装置とによる接続機器認証を行うほか、認証部において、周辺部を介して取得した第1の認証データに基づいて主制御部を認証し、主制御部が正当であると判断した場合には、第2の認証データを生成し、この第2の認証データを用いて周辺部が主制御部を認証するので、認証処理全てを周辺部で行う場合に比べて周辺部の負担が小さくなり、認証データの容量を大きくしたり、複雑な演算処理を行なったりしてセキュリティの強度を従来よりも大きくして主制御部が正当であるか否かを判断することができる。前記認証ステップにおいて前記主制御部が正当でないと判断された場合、認証結果を報知するための信号を出力する報知信号出力ステップをさらに含んでもよい。これにより、パチンコホールの従業員や遊技者がその状態を認識しやすくなる。
〔変形例〕
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 as the data processing means and the access control device, and in the authentication unit, the main control unit is based on the first authentication data acquired via the peripheral unit. If the main control unit determines that the main control unit is valid, the second authentication data is generated, and the peripheral unit authenticates the main control unit using the second authentication data. The load on the peripheral part is reduced compared to the case where it is performed in the peripheral part, the authentication data capacity is increased, and complicated calculation processing is performed to increase the security strength compared to the conventional control unit. It can be determined whether or not. 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が行う場合について説明したが、認証部3bが周辺部3aの代わりに報知を行ってもよい。また、主制御部2aが正当でない旨の報知を行う報知部を設けておき、その報知部が周辺部3aの代わりに報知を行ってもよい。例えば、図31や図32に示すように、主制御部2aが正当でない旨を報知する報知部4を、周辺部3aとは別に設けてもよい。この報知部4は、主制御部2aが正当でないことを示す信号を周辺部3aから受け取った場合に、その旨をパチンコ機の外部に報知する。
In the above-described embodiment, the case where the
なお、図31は、図2に示す構成に、報知部4を追加した構成を示す図である。また、図32は、図30に示す構成に、報知部4を追加した構成を示す図である。図31および図32のいずれの場合においても、報知部4は、液晶(不図示)に表示させて報知を行ったり、ランプ等を点灯させたりして通知することによる報知を行ったりする。液晶表示やランプ等を点灯させたり点滅させることによる視覚的報知に限らず、スピーカ(不図示)から音を出力することによる聴覚的報知、バイブレータ(不図示)を振動させることによる触覚的報知を行ってもよい。また、これらの報知を組み合わせて行ってもよい。
また、周辺部3aは、主制御部2aからの第1の認証データを受け取ることなく単に通過させて認証部3bに受け取らせてもよい。
また、主制御部から周辺部を介して認証部へ送信される第1の認証データは複雑な暗号化処理が施されたものとし、認証部で暗号化処理を解除した後に認証部から周辺部へ送信される第2の認証データは複雑ではない暗号化処理(第1の認証データよりも簡単な暗号化処理)が施されたものとしてもよい。このようにすれば、主制御部から周辺部を介して認証部へ送信される第1の認証データに複雑な暗号化処理を採用した場合でも、周辺部は複雑ではない暗号化処理を採用した第2の認証データを用いて認証することになるので、周辺部の負荷を軽減することができる。
FIG. 31 is a diagram showing a configuration in which a
Further, the
Further, the first authentication data transmitted from the main control unit to the authentication unit via the peripheral unit is subjected to complicated encryption processing, and after the encryption processing is canceled by the authentication unit, the first authentication data is transferred from the authentication unit to the peripheral unit. The second authentication data to be transmitted to may be subjected to a non-complex encryption process (encryption process simpler than the first authentication data). In this way, even when a complicated encryption process is adopted for the first authentication data transmitted from the main control part to the authentication part via the peripheral part, the peripheral part adopts an uncomplicated encryption process. Since the authentication is performed using the second authentication data, the load on the peripheral portion can be reduced.
更に、上述した実施の形態では、パチンコ機を例に挙げて本発明の遊技機について説明した。しかしながら、本発明の遊技機はパチンコ機であるとは限定されない。本発明の遊技機の例には、遊技に関する演出を実行する実行部を有するパチスロ機およびアミューズメントゲーム機等が含まれる。その場合、パチスロ機およびアミューズメントゲーム機等の遊技機は、主制御部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)
前記主制御部は、
遊技に関する演出または前記演出の前処理もしくは後処理を制御するための制御コマンドと、自らが正当であることを認証させるための第1の認証データとを出力し、
さらに、
前記主制御部の出力を入力とし、前記制御コマンドに基づいて前記演出または前記前処理もしくは後処理の実行を制御するとともに、前記第1の認証データを出力する周辺部と、
前記周辺部から出力される前記第1の認証データに基づいて前記主制御部が正当であるか否かを判断し、正当であると判断した場合には前記主制御部が正当であるか否かを判断するためのデータでありかつ前記第1の認証データよりも簡単な暗号化処理が施された第2の認証データを前記第1の認証データに基づいて生成し、前記第2の認証データを前記周辺部に出力する中間処理だけを行う認証部とを備え、
前記周辺部は、前記第2の認証データに基づいて前記主制御部が正当であるか否かを判断すると共に、遊技に関するデータ処理を行うデータ処理装置と、前記データ処理装置によるアクセスを制御するアクセス制御装置とを備え、
前記データ処理装置は、
データ処理手段と、前記データ処理手段が実行する命令に関する情報を外部に出力する出力手段とを有し、
前記アクセス制御装置は、
前記データ処理を行うためのデータを記憶する記憶手段と、前記命令に関する情報を前記出力手段から入力する入力手段と、前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有することを特徴とする遊技機。 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
Outputting a game-related effect or a control command for controlling the pre-processing or post-processing of the effect, and first authentication data for authenticating that the player is valid,
further,
With the output of the main control unit as an input, a peripheral unit that controls execution of the effect or the pre-processing or post-processing based on the control command, and outputs the first authentication data;
It is determined whether or not the main control unit is valid based on the first authentication data output from the peripheral portion. If it is determined that the main control unit is valid, whether or not the main control unit is valid. Is generated based on the first authentication data, and the second authentication data is encrypted based on the first authentication data. An authentication unit that performs only intermediate processing for outputting data to the peripheral unit,
The peripheral unit determines whether or not the main control unit is valid based on the second authentication data, and controls a data processing device that performs data processing relating to a game, and access by the data processing device An access control device,
The data processing device includes:
Data processing means, and output means for outputting information relating to instructions executed by the data processing means to the outside,
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,
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 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ないし10のいずれか1項に記載の遊技機。 The said peripheral part judges whether the said main control part is valid after the period based on the said presentation based on the said control command, or the said pre-processing or post-processing. The gaming machine according to any one of the above.
ことを特徴とする請求項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 portion and the authentication portion.
前記周辺部は、前記経路の一方により前記第1の認証データを前記認証部に出力し、
前記認証部は、前記経路の他方により前記第2の認証データを前記周辺部に出力することを特徴とする請求項1ないし12のいずれか1項に記載の遊技機。 Provided with two paths used for signal exchange between the peripheral part and the authentication part,
The peripheral part outputs the first authentication data to the authentication part through one of the paths,
The gaming machine according to any one of claims 1 to 12, wherein the authentication unit outputs the second authentication data to the peripheral unit through the other of the paths.
前記データ処理手段に接続された機器の認証を行う接続機器認証ステップと、前記データ処理手段が実行する命令に関する情報を外部に出力する出力ステップと、
前記命令に関する情報を前記出力手段から入力する入力ステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップと、
を含み、
さらに、認証部が、
前記第1の認証データを、前記周辺部を介して取得する取得ステップと、
前記取得ステップにおいて取得した第1の認証データに基づいて前記主制御部が正当であるか否かを判断するステップと、
前記主制御部が正当であると判断した場合には前記主制御部が正当であるか否かを判断するためのデータでありかつ前記第1の認証データよりも簡単な暗号化処理が施された第2の認証データを前記第1の認証データに基づいて生成し、前記第2の認証データを前記周辺部に出力するステップと、
前記主制御部が正当であるか否かを、前記第2の認証データに基づいて判断するステップと、
からなる中間処理だけを行うことを特徴とする認証方法。 A control command that is applied to the gaming machine according to claim 1 and that controls a game-related effect or pre-processing or post-processing of the effect, and first authentication data for authenticating itself. An authentication method for authenticating the main control unit in a gaming machine comprising a main control unit for output and a peripheral unit for controlling execution of the effect or the pre-processing or post-processing based on the control command,
A connected device authentication step for authenticating a device connected to the data processing means, and an output step for outputting information relating to a command executed by the data processing means to the outside;
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;
Including
Furthermore, the authentication unit
Obtaining the first authentication data via the peripheral part; and
Determining whether the main control unit is valid based on the first authentication data acquired in the acquiring step;
When the main control unit determines that the main control unit is valid, it is data for determining whether or not the main control unit is valid and is subjected to a simpler encryption process than the first authentication data. Generating the second authentication data based on the first authentication data, and outputting the second authentication data to the peripheral portion;
Determining whether the main control unit is valid based on the second authentication data ;
An authentication method characterized by performing only intermediate processing consisting of :
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153265A JP4981852B2 (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method, program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153265A JP4981852B2 (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method, program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011005107A JP2011005107A (en) | 2011-01-13 |
JP4981852B2 true JP4981852B2 (en) | 2012-07-25 |
Family
ID=43562492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009153265A Expired - Fee Related JP4981852B2 (en) | 2009-06-29 | 2009-06-29 | Game machine, authentication method, program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4981852B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011005108A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005110A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005113A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005116A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005114A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005112A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4359823B2 (en) * | 2003-07-01 | 2009-11-11 | 株式会社大一商会 | Game machine |
JP4448967B2 (en) * | 2006-08-08 | 2010-04-14 | 京楽産業.株式会社 | Authentication method, authentication program, and electronic device |
JP2008279037A (en) * | 2007-05-10 | 2008-11-20 | Kyoraku Sangyo Kk | Pachinko game machine, main control board, peripheral board, authentication method, and authentication program |
JP2008279042A (en) * | 2007-05-10 | 2008-11-20 | Kyoraku Sangyo Kk | Pachinko game machine, main control board, peripheral board, authentication method, and authentication program |
JP4562759B2 (en) * | 2007-09-03 | 2010-10-13 | 京楽産業.株式会社 | Access control apparatus, access control method, and access control program |
JP2011005108A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005110A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005113A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005116A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005114A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
JP2011005112A (en) * | 2009-06-29 | 2011-01-13 | Kyoraku Sangyo Kk | Game machine, authentication method and program |
-
2009
- 2009-06-29 JP JP2009153265A patent/JP4981852B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011005107A (en) | 2011-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011005139A (en) | Game machine, authentication method and program | |
JP4981852B2 (en) | Game machine, authentication method, program | |
JP5150938B2 (en) | Game machine, authentication method, program | |
JP5156985B2 (en) | Game machine, authentication method, program | |
JP2011005116A (en) | Game machine, authentication method and program | |
JP4981851B2 (en) | Game machine, authentication method, program | |
JP2011005114A (en) | Game machine, authentication method and program | |
JP2011005108A (en) | Game machine, authentication method and program | |
JP2011005112A (en) | Game machine, authentication method and program | |
JP2011005113A (en) | Game machine, authentication method and program | |
JP2011005110A (en) | Game machine, authentication method and program | |
JP2011005099A (en) | Game machine, authentication method and program | |
JP2011005105A (en) | Game machine, authentication method and program | |
JP2011005104A (en) | Game machine, authentication method and program | |
JP2011005100A (en) | Game machine, authentication method and program | |
JP2011005101A (en) | Game machine, authentication method and program | |
JP2011005106A (en) | Game machine, authentication method and program | |
JP2011005140A (en) | Game machine, authentication method and program | |
JP2011005144A (en) | Game machine, authentication method and program | |
JP2011005142A (en) | Game machine, authentication method and program | |
JP4933586B2 (en) | Game machine, authentication method, program | |
JP4976456B2 (en) | Game machine, authentication method, program | |
JP5315511B2 (en) | Game machine, authentication method, program | |
JP4933592B2 (en) | Game machine, authentication method, program | |
JP4976455B2 (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: 20111020 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111025 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120323 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120410 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120420 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150427 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150427 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150427 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |